透明玻璃珠进行自动快速计数
2016-11-19 18:40
204 查看
本文描述如何对毫不起眼的透明小玻璃珠进行自动计数,或许有人说使用机器视觉大师对这些
价值不大的小东西自动计数没有实际意义,有辱大师名号。是的,确实没有什么意义,除非
读者身边有价值比较大的产品如珠宝,珍珠,精密小零件等,这些产品在交易的时候不是论斤
卖的,而是论颗或粒卖的,不过,这些产品太小了,如果数量多的话,人工用肉眼来数,还真是
费神费眼。笔者本人没有什么贵重珠宝,所以使用透明小玻璃珠来说明如何使用模板识别算子
进行类似产品自动计数,希望对读者能起到抛砖引玉的作用。
下图是用圆形无底物品围在工作台上做测试的玻璃珠图。
从上图可以看出,玻璃珠是圆形的,翡翠绿,很像珠宝,紧挨在一起,乍看之下,
很多读者可能会不由自主地想到使用BLOB算子进行计数。然而,由于玻璃珠相互紧靠
在一起,使用BLOB算子在分离的时候,不是那么可靠,容易少计。笔者使用模板识别
算子可靠地对这些产品进行计数。下面将详细介绍具体的实现过程。
为了节省篇幅,笔者对机器视觉大师的一些基本操作不再介绍,直接进入相关的操作环节。
添加模板识别算子
假设机器视觉大师已经切换到”实时测量”模式。下面是建立模板识别算子进行玻璃珠计数
的操作过程。
一、点击菜单”控件” ->”定位类”->”模板查找”添加到视场,将算子拖动到适当位置。
二、双击该算子,进行参数设置和模板学习。显示参数设置窗口。
选择模板区形状为圆形,并且选择对称方式调整大小。关闭后,重新调整模板和搜索区
大小。如下图:
注意:将搜索区覆盖所有玻璃珠出现的区域。看到模板区没有,比实际玻璃珠图像要小。
三、在“学习”页,点击”学习模板”进行学习。
四、在”识别”页,选择”绝对差”识别方法,最小分数设置为0.93以上。初始分数设置0.6左右。
最多实例数设置了100(假设,视场里面最多不超过100颗玻璃珠)。这些参数请根据实际视场
的图像进行合适设置。
编写脚本
点击菜单”模式”->”编辑脚本”, 弹出”编辑脚本”对话框。选择测量类型为“产品点数”。
上面的语句解释如下:
将视场sight1的模板识别算子pfind1的计数结果赋值给count变量。
虽然笔者在脚本里面仅使用了一个变量,实际上产品计数类任务支持3个系统变量:
count,want和diff,具体说明如下:
检测运行
点击菜单”相机”->”测量运行”,进入检测状态。倒入任意数量的玻璃珠,然后点击”下一个”
按钮完成一次自动测量。
实际应用建议
本文描述的视场相机使用了130万分辨率彩色相机,背光,由于分辨率不是很高,所以视场
范围不是很大。相机分辨率高,计数的视场范围应该越大。需要强调的是,不同的产品进行
计数的时候,识别参数一定要根据具体的图像进行设置,否则可能引起计数结果错误。
本文测试使用的机器视觉大师版本为4.1.161115
最新版多多摄像头大师(机器视觉大师)下载地址:http://www.hdy.net.cn/softshare/ddcam.htm
技术交流QQ群: 295860595 该群文件空间即时更新多多摄像头大师最新版本,下载速度更快
价值不大的小东西自动计数没有实际意义,有辱大师名号。是的,确实没有什么意义,除非
读者身边有价值比较大的产品如珠宝,珍珠,精密小零件等,这些产品在交易的时候不是论斤
卖的,而是论颗或粒卖的,不过,这些产品太小了,如果数量多的话,人工用肉眼来数,还真是
费神费眼。笔者本人没有什么贵重珠宝,所以使用透明小玻璃珠来说明如何使用模板识别算子
进行类似产品自动计数,希望对读者能起到抛砖引玉的作用。
下图是用圆形无底物品围在工作台上做测试的玻璃珠图。
从上图可以看出,玻璃珠是圆形的,翡翠绿,很像珠宝,紧挨在一起,乍看之下,
很多读者可能会不由自主地想到使用BLOB算子进行计数。然而,由于玻璃珠相互紧靠
在一起,使用BLOB算子在分离的时候,不是那么可靠,容易少计。笔者使用模板识别
算子可靠地对这些产品进行计数。下面将详细介绍具体的实现过程。
为了节省篇幅,笔者对机器视觉大师的一些基本操作不再介绍,直接进入相关的操作环节。
添加模板识别算子
假设机器视觉大师已经切换到”实时测量”模式。下面是建立模板识别算子进行玻璃珠计数
的操作过程。
一、点击菜单”控件” ->”定位类”->”模板查找”添加到视场,将算子拖动到适当位置。
二、双击该算子,进行参数设置和模板学习。显示参数设置窗口。
选择模板区形状为圆形,并且选择对称方式调整大小。关闭后,重新调整模板和搜索区
大小。如下图:
注意:将搜索区覆盖所有玻璃珠出现的区域。看到模板区没有,比实际玻璃珠图像要小。
三、在“学习”页,点击”学习模板”进行学习。
四、在”识别”页,选择”绝对差”识别方法,最小分数设置为0.93以上。初始分数设置0.6左右。
最多实例数设置了100(假设,视场里面最多不超过100颗玻璃珠)。这些参数请根据实际视场
的图像进行合适设置。
编写脚本
点击菜单”模式”->”编辑脚本”, 弹出”编辑脚本”对话框。选择测量类型为“产品点数”。
上面的语句解释如下:
将视场sight1的模板识别算子pfind1的计数结果赋值给count变量。
虽然笔者在脚本里面仅使用了一个变量,实际上产品计数类任务支持3个系统变量:
count,want和diff,具体说明如下:
变量名 | 说明 | 类型 |
count | 实际的计数 | 整数 |
want | 目标数 | 整数 |
diff | 差额 | 整数 |
检测运行
点击菜单”相机”->”测量运行”,进入检测状态。倒入任意数量的玻璃珠,然后点击”下一个”
按钮完成一次自动测量。
实际应用建议
本文描述的视场相机使用了130万分辨率彩色相机,背光,由于分辨率不是很高,所以视场
范围不是很大。相机分辨率高,计数的视场范围应该越大。需要强调的是,不同的产品进行
计数的时候,识别参数一定要根据具体的图像进行设置,否则可能引起计数结果错误。
本文测试使用的机器视觉大师版本为4.1.161115
最新版多多摄像头大师(机器视觉大师)下载地址:http://www.hdy.net.cn/softshare/ddcam.htm
技术交流QQ群: 295860595 该群文件空间即时更新多多摄像头大师最新版本,下载速度更快
相关文章推荐
- 自动光学检查(AOI) 的核心——快速准确对目标进行定位配准
- 批处理-快速格式化硬盘(全自动进行)
- 通过FAI进行全自动安装
- 用InstallShield 进行 ASP 软件的打包和自动安装
- 如何使用ANT自动进行数据库的相关操作
- [原创]给DataGrid快速添加自动编号
- 页面过长自动进行分页(转)
- ASP.NET2.0 快速入门 ----使用主题对站点进行自定义
- 快速对图片进行滤光处理
- 中国搜 为人民服务 整合本地搜索引擎 出差旅游搜索国外国内当地服务网站 快速进行本地资源查找利用
- 实现Weblogic应用的灵活、自动、快速部署:使用wlst+ant+jython+xbean
- 利用VB驱动pcAnyWhere进行自动文件传输
- 在 Linux 上进行自动备份
- mp3的自动连续播放以及探测是否可以播放、并对可以播放的结果进行保存
- [原创]给DataGrid快速添加自动编号
- Rational Robot中自动进行100次操作
- 用IS6 进行 ASP 软件的打包和自动安装
- 服务开启时用servlet自动进行初始化
- asp.net中用C#自动生成透明的GIF图片
- http://sourceforge.net/projects/easymock/ ant结合junit进行软件自动测试