起因
之前按摸过Halcon、opencv、还有款国产的叫sci什么的图形化的视觉软件,大名鼎鼎的VisionPro还没摸过,于是,学一下,记个笔记。
PMAlignTOOL
CogPMAlignTool
这个名称是几个英文单词缩写组合而成,下表是它的完整形式解析:
缩写部分 | 对应的完整英文单词 | 含义说明 |
---|---|---|
Cog | Cognex | 指开发该软件的公司的名称,即 康耐视(Cognex Corporation)。这是其VisionPro视觉软件中工具的统一前缀。 |
PM | Pattern Match | 模式匹配或模板匹配。这是该工具的核心功能,指在图像中搜索和定位与预先训练好的模板(Pattern)相匹配的目标。 |
Align | Align | 对准或定位。这强调了该工具不仅能找到目标,还能精确地报告其位置(X, Y)、旋转角度和缩放比例,实现精确对准。 |
Tool | Tool | 工具。这是VisionPro软件中对各种视觉功能模块的统称。 |
所以,CogPMAlignTool 的完整含义是 康耐视模式匹配定位工具。
🔍 核心功能与特点
- 核心任务:它的核心任务是在一张新的(运行时)图像中,快速、准确地找到一个或多个与预先训练好的“模板”图像相同或相似的图形。
- 技术优势:与传统的基于像素灰度的匹配方式不同,CogPMAlignTool 采用的是基于几何特征(主要是边缘轮廓)的匹配技术(如康耐视著名的 PatMax 算法)。这使得它对光线变化、部分遮挡以及目标的旋转和缩放都有更好的适应能力,更加鲁棒和精确。
相关配置-参照VisionPro联机文档
选取模板
抓取图像
双击打开CogPMAlignTool配置页面,在训练参数
(Train Params)页,点击抓取训练图像
(Grab Train Image)按钮。
选取模板
点击菜单页切换到在训练区域与原点
页面.
选择图像源
将显示区上方的图像源设置为Current TrainImage
。
选择区域模式Region Mode
有两个选项像素配对限定框调整掩膜
和像素配对限定框
。
单看帮助文档的说明不是太容易理解,于是我咨询了AI。
** Pixel Aligned Bounding Box ** 将已定义区域包围在矩形内。这表示包含位于已定义区域之外但位于限定矩形之内的图像部分。
** Pixel Aligned Bounding Box Adjust Mask ** 将已定义区域包围在矩形内,但会遮盖区域以外、外围矩形以内的图像部分,因此已定义区域更靠近您指定的区域。
**Pixel Aligned Bounding Box(像素配对限定框)**:就像用一个长方形的画框去装一幅不规则形状的画。画框会紧紧贴着画的最上、最下、最左、最右边,把整幅画都包进去。但画框里除了画本身,还会露出一些画布或背景。
**Pixel Aligned Bounding Box Adjust Mask(像素配对限定框调整掩膜)**:同样是装那幅画,但这次不仅用了画框,还按照画的精确形状,把画框里露出来的多余画布或背景用卡纸遮住了。最后看到的,就只有画本身的形状,背景是卡纸的颜色(通常是黑色或透明)。
所以此处选择 像素配对限定框调整掩膜
,这样不考虑图像背景内容.
设置区域形状并设置区域
文档说明是选CogRectangle
,但因为是选的硬币作为模板,所以选CogCircle
也是可以的。
再到图像显示区,可以找到有个浅蓝色的圆圈或方框,取决于上一步选择的区域形状。然后鼠标拖放这个模板选取框,让它正好把模板图案(硬币)圈住。然后切回训练参数页。
训练
到训练参数
页,点击训练
按钮,可以在左侧模式
区域,看到选取的模板。
运行
然后,点击左上角运行按键,可以看到右侧显示区实现的模板匹配结果。
同时,作业窗口选到结果
页面,可以看到运行结果。