学习海康VisionMaster之边缘交点

一:进一步学习了

今天学习下VisionMaster中的边缘交点,这个还是拟合直线的衍生应用,可以同时测量两条直线并且输出交点或者判定是否有交点

二:开始学习

1:什么是边缘交点?

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

2:应用场景:

  • 电子元件装配(如PCB板焊盘与元件的对位)

    • 玻璃面板与边框的贴合

    • 机械零件的孔位对齐

  • 作用

    通过检测边缘交点(如十字标记、L型角点)确定物体的精确位置和角度,引导机械臂或平台进行微调,确保装配精度(可达亚像素级)

三:直接上案例

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

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

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

4:拖入边缘交点模块

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

(1):首先得先画ROI: 这里其实也做了两种模式,一个是一个框同时检测两个方向的边缘,另外一种是两个框分开画(可能考虑到有些应用场景必须两个分开画,这个就比较方便灵活了),在形状那一栏,可以选择

(2):然后开始设定参数:具体的参数其实是和之前的直线查找是一样的,因为底层算法其实还是拟合直线算法,相当于做了一个封装

1):边缘1,2类型:最强:在边缘检测方向上查找梯度变化最大的边缘点,并将其拟合为直线。

第一条:查找边缘方向上寻找到的第一个点组合成点集合

最后一条:查找边缘方向上寻找到的最后一个点组合成点集合

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

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

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

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

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

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

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

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

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

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

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

四:实测:上述设定好参数,开始实际测量看看效果

相关推荐
Slow菜鸟31 分钟前
AI学习篇(五) | awesome-design-md 使用说明
人工智能·学习
狐狐生风1 小时前
LangChain 向量存储:Chroma、FAISS
人工智能·python·学习·langchain·faiss·agentai
狐狐生风1 小时前
LangChain RAG 基础
人工智能·python·学习·langchain·rag·agentai
向量引擎4 小时前
向量引擎接入 GPT Image 2 和 deepseek v4:一个 api key 把热门模型串起来,开发者终于不用深夜修接口了
人工智能·gpt·计算机视觉·aigc·api·ai编程·key
努力努力再努力FFF4 小时前
医生对AI辅助诊断感兴趣,作为临床人员该怎么了解和学习?
人工智能·学习
格林威5 小时前
工业视觉项目:如何与客户有效沟通验收标准?
人工智能·数码相机·计算机视觉·视觉检测·机器视觉·工业相机·视觉项目
sakiko_5 小时前
UIKit学习笔记5-使用UITableView制作聊天页面
笔记·学习·swift·uikit
Alice-YUE6 小时前
【js高频八股】防抖与节流
开发语言·前端·javascript·笔记·学习·ecmascript
北山有鸟7 小时前
修改源码法和插件法
嵌入式硬件·学习
richxu202510017 小时前
嵌入式学习之路->stm32篇->(14)通用定时器(上)
stm32·单片机·嵌入式硬件·学习