2

上位机图像处理和嵌入式模块部署(qmacvisual模板匹配)

 1 month ago
source link: https://blog.csdn.net/feixiaoxing/article/details/136933259
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        模板匹配是图像中经常使用到的功能。我看过很多现场配置部署的同学,虽然他们使用的是类似于vision master、visio pro这样的专业机器视觉软件,但是大家会使用的功能也集中在模板匹配上面。来一个零件,匹配一次。如果零件的数量非常大,就变成了体力活。所以,这从另外一个方面也说明了,模板匹配本身是非常好用,但是也不要滥用。

1、创建工程和创建流程

        创建工程和创建流程是基础。这是做项目必不可少的部分。

2、引入模板匹配的控件

        模板匹配的控件位于【对位工具】下面的【灰度匹配】。要使用好这个控件,需要有两个步骤。第一步,配置好模板。

f2525f475381430b8a07022193175b43.png

        第二步,设置好配置参数,尤其是搜索角度范围。

e0a10f5af39646feb1d0973963af3f70.png

        如果是配置模板,那么需要先选择模板区域,然后单击添加按钮,这个时候右侧的图像区域就会选择一个选择框,我们调整一下选择框。最后单击创建模板这个按钮,模板就创建好了。

        使用模板则稍微复杂一点,刚才的模板既然已经创建好了,下面就是配置算法参数。参数一般采用默认的数值,需要调整的只有匹配个数和搜索角度范围。前者一般是1,后者一般是180度。大家可以针对自己的情况稍作调整。应用的时候,最好选择不一样的图片进行确认和测试。注意的是,这里的执行是模板使用,不是模板创建,两者不一样。

a0290d10f3e442eaa9062208a1f3824c.png

        没啥问题的话,我们就可以在输出显示中看到对应的结果信息。如图所示,它告诉我们匹配了一个模板,匹配的中心是612、613,角度是138.9度,匹配的分数是0.98。

3、设计测试流程

        整个测试流程需要考虑到图像读取和显示。图像读取需要两个,一个是做模板使用的,一个是做测试使用的。美中不足的,这个参数模板的输入框被设置成了只读属性。如果之前模板已经匹配好了,这么做其实是不合适的。另外也需要两个显示,一个是显示模板的图片,一个是显示获取检测结果之后的图片。

8c63ffd9fa014c8a81be711f6447979f.png

        流程设置好了,不出意外,单机下Once按钮就可以让我们看到相应的效果了。除了这一点,我们还可以观察下每个插件执行的时间是多少。两个获取图像花费的时间,一个是22ms,一个是30ms,两者差别不大。但是第三个插件,也是本次学习的重点,灰度匹配则花费了较多的时间,长度上接近了1s。所以对于模板的全局查找,固然从算法和实际应用的状况来看都是可行的,但是这个效率上面要弱很多,这是需要注意的。最后两个图像显示,两者花费的时间都是3ms,说明这部分基本上可以忽略不计。

5e752b55959c4ac5996775746698883b.png

        所以借助于光源和模板去解决客户的问题,如果检测效率不做要求,其实还是非常好的一个办法。但是如果客户对于采集处理的时间要求特别高,这个时候就要自己去识别和挖掘特征了。挖掘的过程就类似于把自己的技术知识和客户的行业知识结合起来,这样成功率更高一点。单纯使用模板本身,忽略其他方法,这有点一刀切了。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK