学习海康VisionMaster之平行线查找

一:进一步学习了

今天学习下VisionMaster中的平行线查找,这个还是拟合直线的衍生应用,可以同时测量两条线段,输出中线

二:开始学习

1:什么是平行线查找?

按照传统的算法,必须是开两个窗口,每一个窗口检测一条边,然后计算两条直线的中线,为后续的应用场景输出中线,这样就比较麻烦,现在一个窗口直接搞定,简单直接快速

2:应用场景:这个应用场景其实在机器视觉的场景下应用还是非常广泛的

(1)在精密制造中,平行线检测常用于评估零件的加工精度。例如,检测金属板材、玻璃面板或机械部件的平行边缘是否满足工艺要求

(2)在PCB板检测中,需确保元件的引脚排列平行且间距一致

三:直接上案例

1:先导入需要测试的图片集合

2:使用轮廓定位,把两个组件的线连起来,这里是需要设定模版匹配功能,这样图像不管怎么旋转都能准确定位图像位置,具体操作步骤可以参考前面课程

3:拖入位置修正功能:这个非常重要,这里也不提了,可以参考上一篇笔记

4:拖入平行线查找模块

5:双击组件,开始设定参数

(1):首先得先画ROI: 这里在需要测量的地方画一个矩形,比如现在需要测量PIN角的最大距离,就可以把需要测量的区域框起来

(2):接下来需要设定参数了:参数核心含义其实还是和拟合直线是一致的,当然个别参数有点区别,下面说明下参数含义

1):边缘对类型:

最宽:检测ROI内间距最大的边缘对

最窄:检测ROI内间距最小的边缘对。

最强:检测ROI内边缘对平均梯度最大的边缘对

最弱:检测ROI内梯度最小的边缘对

第一对:检测ROI内边缘对中心与搜索起始点最近的边缘对

最后一对:检测ROI内边缘对中心与搜索起始点最远的边缘对

最接近:检测ROI内和理想宽度最接近的边缘对集合

最不接近:检测扫ROI内和理想宽度最不接近的边缘对集合

2):边缘极性:从黑到白:就是梯度变化是黑色像素向白色像素过渡的边缘点

从白到黑:就是梯度变化是白色像素向黑色像素过渡的边缘点

任意:只要有梯度变化并且满足条件的点

3):边缘阈值:边缘梯度,只有实际的边缘梯度数值大于这个设定值,才会有效检测到边缘

4):卡尺数量:定义卡尺的数量,相当于每个卡尺检测一个点

5):最大角度差:两条目标直线的角度差小于该值时才会被判定为平行线

6):剔除点数,剔除距离:和剔除距离配合使用,允许坐标点到对应拟合直线的最大距离(像素)

7):滤波尺寸:设定边缘的清晰程度条件,边缘如果越清晰,这个数值就要减小

8):投影宽度:类似于ROI宽度,就是每一个小检测框的宽度,数值越大,可以相对获取更加稳定一点的坐标点

9):初始拟合:局部:按照局部的特征点来拟合

全局:以查找到的全局特征点进行直线拟合

10):拟合方式:提供了三个拟合算法,三种拟合算法权重的计算方式有些差异

四:实测:上述设定好参数,开始实际测量看看效果,不同的检测模式下的检测效果

相关推荐
知舟不叙15 分钟前
使用OpenCV 和 Dlib 实现人脸融合技术
人工智能·opencv·计算机视觉·人脸融合
缘友一世1 小时前
深度学习系统学习系列【3】之血液检测项目
人工智能·深度学习·学习
摆烂仙君2 小时前
Sat2Density论文详解——卫星-地面图像生成
人工智能·计算机视觉
xiufeia2 小时前
记录学习的第三十五天
学习
夏季疯2 小时前
学习笔记:黑马程序员JavaWeb开发教程(2025.3.29)
java·笔记·学习
xixixiLucky3 小时前
Selenium Web自动化测试学习笔记(一)
笔记·学习·selenium
虾球xz4 小时前
游戏引擎学习第263天:添加调试帧滑块
c++·学习·游戏引擎
szxinmai主板定制专家4 小时前
基于RK3568多功能车载定位导航智能信息终端
大数据·arm开发·人工智能·计算机视觉·fpga开发
江畔柳前堤4 小时前
信息论12:从信息增益到信息增益比——决策树中的惩罚机制与应用
运维·深度学习·算法·决策树·机器学习·计算机视觉·docker
qianqianaao4 小时前
实验六 基于Python的数字图像压缩算法
开发语言·图像处理·python·opencv·计算机视觉·自然语言处理·php