石鑫华视觉论坛

 找回密码
 注册会员
查看: 6322|回复: 0

[有偿] NI LabVIEW Vision 自定义找圆算法

[复制链接]
  • TA的每日心情

    12 小时前
  • 签到天数: 3384 天

    连续签到: 6 天

    [LV.Master]2000FPS

    发表于 2015-11-25 17:15:54 | 显示全部楼层 |阅读模式 来自:广东省东莞市 电信

    注册登陆后可查看附件和大图,以及购买相关内容

    您需要 登录 才可以下载或查看,没有账号?注册会员

    x
    NI LabVIEW Vision 自定义找圆算法

                                   
    登录/注册后可看大图

    NI Vision Find Circle与石鑫华自定义找圆效果对比

    我们知道NI Vision中有一个现成的找圆函数Find Circle,用于找圆。可以测量圆的直径、半径、圆度、信噪比等:

                                   
    登录/注册后可看大图

    NI Vision自带的找圆函数

    这个找圆函数,用于一些圆轮廓质量非常好的项目中还是非常好的,不过只要图像质量差一点,它就显得有点力不从心了。如圆度就不能很好解决,图像明显不圆,输出的圆度值却非常小(小表示很圆);如果找圆时只有少量的边缘点,也会自动拟合出一个圆。这些问题,都是现有的函数不能解决的。因此石鑫华利用NI Vision的其它函数,进行了一些优化,可以得到更理想的测圆函数。下面先来看一些图像,首先使用NI的VBAI来看一下效果(VBAI就是NI Vision中自带的找圆函数):

                                   
    登录/注册后可看大图

    VBAI中找圆函数


                                   
    登录/注册后可看大图

    找圆参数

    找圆参数设置为方向是由里向外;边缘极性是黑到白;查找对象是第一边缘点;最小边缘对比度为50;内核尺寸为15;投影宽度为15;搜索线间距是5。

                                   
    登录/注册后可看大图

    判断的值为直径和圆度偏差

    判断标准为圆的直径与圆度以及很差的图像上是不是能正常识别圆:

                                   
    登录/注册后可看大图

    图像1效果

    对于图像1,可以看到上面有内弧(是产品上的一个鼓簧露出引起的),但是VBAI给出的偏差只有1.29像素?真的只有1.29像素吗?有这么好?

                                   
    登录/注册后可看大图

    图像2效果

    图像2是一个变形的产品,可以看到其中的圆右边是往里陷的,这样测量的圆度也只有1.77,根本是无法测量的意思呀。

                                   
    登录/注册后可看大图

    图像3效果

                                   
    登录/注册后可看大图

    图像3边缘细节

    对于图像3,可以看到,右上角位置的鼓簧露出明显,边缘都在内部的鼓簧上,但是测量出来的圆度只有2.03像素,这种小几个像素的值根本无法判断其OK与否。

                                   
    登录/注册后可看大图

    图像4效果

                                   
    登录/注册后可看大图

    图像5效果

                                   
    登录/注册后可看大图

    图像6效果

                                   
    登录/注册后可看大图

    图像7效果

                                   
    登录/注册后可看大图

    图像8效果

                                   
    登录/注册后可看大图

    图像9效果

    图像9比较理想的一个产品,可以看到圆度偏差值很小。

                                   
    登录/注册后可看大图

    图像10效果

                                   
    登录/注册后可看大图

    图像11效果

                                   
    登录/注册后可看大图

    图像12效果

                                   
    登录/注册后可看大图

    图像13效果

                                   
    登录/注册后可看大图

    图像14效果


                                   
    登录/注册后可看大图

    图像15效果

    图像15是一个没有放置产品的图像,但是因为ROI靠近治具边缘,也得到了一个圆,虽然其直径变大了,但是看其圆度仍然只有2.99。这种错误应该是不可接受的。对于这种情况,肯定是不能认为其中有圆的。
    下面我们再来看一下石鑫华自定义的找圆函数的效果,首先要看一下干扰系数为1时的效果。本效果中,函数边缘对比度也设置为50,搜索线间距也是5,方向里外到,边缘极性黑到白,内核大小15,投影宽度15,最小边缘点数为20:

                                   
    登录/注册后可看大图

    图像1效果

    图像上的圆度方差为58.14(圆度方差为圆度标准差的平方,可以只看方差,这样拉开的距离会更远),圆度标准差为7.63。在VBAI中,这个图像的圆度差是1.29像素。从这数据可以看到,二者的差别非常大。但是后面那些比较好的图像,其实差别比较小。请接着往下看:

                                   
    登录/注册后可看大图

    图像2效果

    图像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%的干扰点,圆度方差和圆度标准差会更小:

                                   
    登录/注册后可看大图

    图像1效果

    降低干扰系数后,圆度方差为43.47,而未也不降低前为58.14,降幅比较明显。

                                   
    登录/注册后可看大图

    图像2效果

    图像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 HALCON图像处理入门教程(24.09)
    石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
    《LabVIEW Vision函数实例详解2020-2024》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23/24

    QQ|石鑫华视觉论坛 |网站地图

    GMT+8, 2024-11-22 20:29

    Powered by Discuz! X3.4

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表