学习海康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):拟合方式:提供了三个拟合算法,三种拟合算法权重的计算方式有些差异

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

相关推荐
一隅论数智4 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
AI的探索之旅4 天前
97 个 OpenCV 实例(三十):双目立体,从标定到点云
人工智能·opencv·计算机视觉
XiHongShi20164 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
美狐美颜SDK开放平台4 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
爱吃苹果的日记本4 天前
离散数学第六课
学习·离散数学
AI职业加油站4 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
旖旎夜光4 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
奇思妙想聪明勤奋的小羊4 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
霍霍的袁4 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio