LabVIEW视觉

 找回密码
 注册会员
查看: 1357|回复: 0

[原创] LabVIEW调用Halcon的引用默认值不能使用LabVIEW的默认值必须新建引用

[复制链接]
 楼主| 发表于 2025-6-4 09:17:14 | 显示全部楼层 |阅读模式

注册登陆后可查看附件和大图,以及购买相关内容

您需要 登录 才可以下载或查看,没有账号?注册会员

x
LabVIEW调用Halcon的引用默认值不能使用LabVIEW的默认值必须新建引用
在使用LabVIEW编程时,经常会使用到条件结构,有一些输出控件,不满足条件时,则使用默认值:
image1.png
满足条件时使用确定值
image2.png
不满足条件时使用默认值
那么在使用LabVIEW调用Halcon算子时,同样会面临这样的情况。满足条件时,调用相应的算子,返回的是Halcon的元组输出。而不满足条件时,则不调用Halcon算子。当然,这时的输出控件可以直接放在条件结构的里面,这样在不满足条件时,就不会输出。但是,如果必须要将输出控件放在条件结构外面时,则不满足条件时,也必须要使用一个默认值。但是这个时候,就不能将Halcon的元组输出控件使用.NET引用的默认值,而必须要创建一个新的引用:
image3.png
.NET引用使用LabVIEW默认值
image4.png
.NET引用创建一个新的值作为默认值
       上面的两种情况,如果直接在.NET引用中使用LabVIEW的默认值,则会报错:
image5.png
条件T时,使用.NET的默认值时运行报错
       当使用.NET引用的LabVIEW默认值时,执行时报错,提示键不能为空。这里如果在元组输出引用中加探针可以知道,引用输出的实际是上0000的空值:
image6.png
空引用
       而当条件为F时,则创建了一个新的.NET引用,这个引用则是有效的,只不过元组的类型空,没有给该元组赋值罢了:
image7.png
条件为假时可正常执行元组类型是EMTPY空类型
       因此在使用LabVIEW调用Halcon算子时,如果遇到这种条件结构外包含输出的,而某些条件结构中,又没有相应的输出变量无法赋值时,不要使用LabVIEW的默认值,必须要新建一个引用才可以正常运行。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

LabVIEW HALCON图像处理入门教程(25.08)
石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
《LabVIEW Vision函数实例详解2020-2024》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23/24

QQ|LabVIEW视觉

GMT+8, 2026-4-8 13:29

Powered by Discuz! X3.4

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表