TA的每日心情 | 怒 11 小时前 |
---|
签到天数: 3384 天 连续签到: 6 天 [LV.Master]2000FPS
|
发表于 2016-5-26 10:26:48
|
显示全部楼层
|阅读模式
来自:广东省东莞市 电信
注册登陆后可查看附件和大图,以及购买相关内容
您需要 登录 才可以下载或查看,没有账号?注册会员
x
本帖最后由 石鑫华视觉 于 2016-6-15 12:44 编辑
NI LabVIEW Vision 自定义找圆算法
NI Vision Find Circle与石鑫华自定义找圆效果对比
我们知道NI Vision中有一个现成的找圆函数Find Circle,用于找圆。可以测量圆的直径、半径、圆度、信噪比等:
这个找圆函数,用于一些圆轮廓质量非常好的项目中还是非常好的,不过只要图像质量差一点,它就显得有点力不从心了。如圆度就不能很好解决,图像明显不圆,输出的圆度值却非常小(小表示很圆);如果找圆时只有少量的边缘点,也会自动拟合出一个圆。这些问题,都是现有的函数不能解决的。因此石鑫华利用NI Vision的其它函数,进行了一些优化,可以得到更理想的测圆函数。下面先来看一些图像,首先使用NI的VBAI来看一下效果(VBAI就是NI Vision中自带的找圆函数):
找圆参数设置为方向是由里向外;边缘极性是黑到白;查找对象是第一边缘点;最小边缘对比度为50;内核尺寸为15;投影宽度为15;搜索线间距是5。
判断标准为圆的直径与圆度以及很差的图像上是不是能正常识别圆:
对于图像1,可以看到上面有内弧(是产品上的一个鼓簧露出引起的),但是VBAI给出的偏差只有1.29像素?真的只有1.29像素吗?有这么好?
图像2是一个变形的产品,可以看到其中的圆右边是往里陷的,这样测量的圆度也只有1.77,根本是无法测量的意思呀。
对于图像3,可以看到,右上角位置的鼓簧露出明显,边缘都在内部的鼓簧上,但是测量出来的圆度只有2.03像素,这种小几个像素的值根本无法判断其OK与否。
图像4效果
图像5效果
图像6效果
图像7效果
图像8效果
图像9效果
图像9比较理想的一个产品,可以看到圆度偏差值很小。
图像10效果
图像11效果
图像12效果
图像13效果
图像14效果
图像15是一个没有放置产品的图像,但是因为ROI靠近治具边缘,也得到了一个圆,虽然其直径变大了,但是看其圆度仍然只有2.99。这种错误应该是不可接受的。对于这种情况,肯定是不能认为其中有圆的。
下面我们再来看一下石鑫华自定义的找圆函数的效果,首先要看一下干扰系数为1时的效果。本效果中,函数边缘对比度也设置为50,搜索线间距也是5,方向里外到,边缘极性黑到白,内核大小15,投影宽度15,最小边缘点数为20:
图像上的圆度方差为58.14(圆度方差为圆度标准差的平方,可以只看方差,这样拉开的距离会更远),圆度标准差为7.63。在VBAI中,这个图像的圆度差是1.29像素。从这数据可以看到,二者的差别非常大。但是后面那些比较好的图像,其实差别比较小。请接着往下看:
图像2中的圆度方差达到了149.09,这个值已经远远的超过了VBAI中的1.77,甚至圆度标准差12.21都比VBAI中的要大。这样拉开距离,才能更利于判断其是否圆。
图像3效果
图像4效果
图像5效果
图像6效果
图像7效果
图像8效果
图像9效果
图像9中看到,比较理想的圆时,圆度方差仅为5.62,标准差为2.37,这个理VBAI中的0.32值差距比较小。这样说明如果要判断圆度,可以将圆度标准差设置在几十或一百多的样子,这样不圆的都可以测量,而比较圆的图像圆度方差只有几或几十的话,是可以通过测量的。
图像10效果
图像11效果
图像12效果
图像13效果-圆度方差只有3.93-VBAI中为0.26
图像14效果-圆度方差为2.51-VBAI中圆度差为0.18
图像15效果
图像15中的效果,在自定义找圆函数中,则没有找到圆。在VBAI中是可以找到一个错误圆的。自定义算法有其更强大的地方。下面我们再把干扰系数降低到0.9,这样可以避免掉10%的干扰点,圆度方差和圆度标准差会更小:
降低干扰系数后,圆度方差为43.47,而未也不降低前为58.14,降幅比较明显。
图像2中的虽然降低了近50的方差,但是仍然有超过100,所以这种产品仍然会是不良产品(当设置的方差大于100时就可以检测出来)。
图像3效果
图像4效果
图像5效果
图像6效果
图像7效果
图像8效果
图像9效果-圆度方差降为4.1
图像10效果
图像11效果
图像12效果
图像13效果
图像14效果
图像15效果-仍然未找到圆
图像15将最小边缘点数设置为17时,可以找到一个错误的圆
如上图所示,当将最小边缘点数设置的比较小时,也是会找到错误的圆的。所以这个最小边缘点数的设定,不能太过小,太小很容易出错。但是NI的找圆函数中,则没有相关的参数可以选择,只要有三个点就可以拟合出一个圆,而对于拟合出来的圆到底对不对,NI则不负责的。
所以从以上效果来看,本算法还是有一定的优势的。本算法已经成功应用于上图中的产品的内径测量,最开始也是使用NI Vision中的找圆算法,但是很多问题确实无法解决,就是因为其圆度的表述非常有问题。明明不圆的产品,其圆度也只有两三个像素。根本无法区别开来OK、NG产品,所以才自己定义找圆函数的。
算法仅售200元,购买地址:
NI LabVIEW Vision 自定义找圆算法_源代码_图像处理_机器视觉商城_LED光源_控制器_工业相机_镜头_图像采集卡_视觉配件_方案_系统_图像处理源代码_培训教程_论坛_机器视觉论坛_石鑫华视觉
http://visionbbs.com
淘宝店铺购买:
https://item.taobao.com/item.htm?id=524577015039
或者购买本帖附件:
LabVIEW Vision 自定义找圆算法.rar
(2.2 MB, 下载次数: 18, 售价: 200 元)
|
|