海康视觉平台VisionMaster 算子工具学习--01

海康VisionMaster 以后简称VM。

我认为,VM设计的很不错。但是VM的帮助文档,例程。是相当的草率。完全是应付的结果。

所有我在这里,开一个系列,对一下常用的算子,进行讲解,以及应用场景的介绍。

VM 合计100多个算子工具。我会按照我的理解。进行分类讲解。

1) 通信类: 数据接收,数据发送,协议解析,通信管理,触发工具。

2) 逻辑流程类: 条件检测,分支模块,条件分支,循环。

3) 定位类:匹配,位置修正。

4) 找点找边缘类:找圆,找直线等 

5) 计算类: 点点,电线,线线 等测量。直线,圆拟合。角平分线,垂线计算。旋转计算。

6) 标定:N点标定,标定板标定。

7)辅助类:格式化,几何创建,以及渲染显示设置。

扫描二维码关注公众号,回复: 15445341 查看本文章

8) 独立工具类:条码检测,字符缺陷检测。还有深度学习也属于这一类

9) 图像处理类:图像运算,颜色, 形态学 等。


1)通信类:这类算子无关图像处理,我觉得关键是要理解二进制。理解了二进制,通信方面的各种问题都好理解。我在以前的帖子,写过。这里就不重复了。下面哟链接。

3 海康视觉平台VisionMaster 上手系列:通讯_HuangGong2022的博客-CSDN博客

2) 逻辑流程类:指的是,你花逻辑流程图的时候,需要用到:顺序执行,条件执行,循环执行。对应算子。这类算子,也无关图像处理。但是很重要。做个比喻,通信,逻辑工具就是用来搭建视觉程序骨架的。它是程序的最基础。各种巧妙的图像算法,属于皮囊,外表。骨架出了问题,再好的皮囊。也终究是残疾。所以,一定不要看不上,这些基础。

我认为VM设计的好。很重要一点,就是VM搭建通信,逻辑流程很方便。编写程序流程,就像编写详细ppt的流程图,一模一样。

a,顺序执行:VM的模块执行顺序,是根据箭头方向来的,直接就可以看出来,非常直观。

b,条件执行:就是流程图的判读(ppt的流程图中的 菱形),根据条件是否成立,让流程往不通的方向走。如下图1所示 通过 <条件检测> 这个工具模块,可以对多条件进行 与,或,非,条件汇总。

 如下图所示, 使用<分支模块> 可以根据前面 <条件检测>的结果,进行多分支选择。

 以上,就是对条件执行的,最基础的使用。

c,循环执行:如下图所示,VM循环是通过gruop来实现的。对应的工具<Group>

点击小扳手图标,可以设置 循环使能。 可以设置循环条件。

双击Group图标,可以进入编辑循环内容。循环内,是一个完整的流程。可以编辑任意流程。

我对循环使用的建议是,能不用循环,就不用循环。原因是Group模块有bug。

其一,group开启循环后,无法进行单步调试。 对调试非常不友好。

其二,单group内部异常,导致无法终止循环的时候,程序就卡死了。不能在外面强制终止循环。只能强制退出程序。

在大部分情况下,可以用流程自己触发自己的方式,实现循环。

只有一种情况下,必须使用循环:模板匹配多个对象,要对多个对象做相同的处理时候。

只有这个情况下,必须使用group循环。建议,调试的时候把循环关了。手动传入模板对象的序号来调试。


以上就是本贴的全部内容。下一贴继续。

PS:

通信,逻辑流程,是视觉程序的骨架。一定要掌握牢固。不要因为简单而看不上。结果就是做项目的时候,浪费大量时间排查流程逻辑,通信异常。

就像是小学生学习数学,先把四则运算,99乘法表掌握。不要留个尾巴。别等学解方程式的时候,还老是运算错误。

猜你喜欢

转载自blog.csdn.net/HuangGong2022/article/details/131223472