在这里插入图片描述
如上图,要定位每个USB口的位置,用PMAlign工具可以很容易实现。

但是存在一些不美的问题:

如果把ROI放大到整张图像,数据不太容易进一步使用。
如果把ROI框一个一个的拉出来,有点无聊。并且如果产品数量变化,需要重新做一个检测程序。
利用VisionPro提供的脚本功能对付这种规律分布的产品非常有效。可以在一定程度上实现程序的封闭,维护、扩展更加方便。
在这里插入图片描述
在这里插入图片描述

使用c#脚本配合模板定位即可以实现测量和显示功能。

思路是:从左到右逐个检测;一次检测一个重复区域;利用脚本改变ROI的位置,每次将新的ROI更新到PMAlign工具中。

代码示例,在作业脚本的GroupRun方法中做以下更改即可。

CogRectangle roi; //搜索区域

CogPMAlignTool toolPM= newCogPMAlignTool; //模板工具

toolPM = toolGroup.Tools ["CogPMAlignTool1"]asCogPMAlignTool;

for( inti= 0;i < 16;i++) //16是检测目标的数量,改成变量替代比较好

{

/*

ROI是矩形框

实例化ROI

定义矩形框的位置和大小

此处,ROI的X方向的位置是变化的

改成变量做到外边比较好

*/

roi = newCogRectangle;

//roi.X = 21;

roi.Y = 16;

roi.Width = 118;

roi.Height = 525;

roi.Color = CogColorConstants.Blue;

roi.X = 21+ i * 122.5;

toolPM.SearchRegion = roi;

toolPM. Run;

if(toolPM.Results.Count > 0)

{

//显示匹配到的目标

CogCompositeShape myGraphic = newCogCompositeShape;

myGraphic = toolPM.Results [0]. CreateResultGraphics(CogPMAlignResultGraphicConstants.All);

myGraphics. Add(myGraphic);

}

//显示ROI

myGraphics2. Add(roi);

}

以上案例是针对PMAlign工具的,同样的方法可以移植到卡尺等其他工具。

GitHub 加速计划 / vi / vision
36
0
下载
pytorch/vision: 一个基于 PyTorch 的计算机视觉库,提供了各种计算机视觉算法和工具,适合用于实现计算机视觉应用程序。
最近提交(Master分支:4 个月前 )
1e53952f 7 天前
269805e1 Co-authored-by: Nicolas Hug <nh.nicolas.hug@gmail.com> 8 天前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐