LabVIEW Vision之Overlay Feature Points覆盖特征点(靶型)
在文章“LabVIEWVision之Overlay-Point覆盖点http://labviewvision.com/thread-9441-1-1.html”中,我们介绍了如何覆盖点。但是这样的仅仅只会覆盖一个点或一组点。而要想实现如视觉助手、VBAI中的靶心型特征点-十字正交线与圆,还得要改造一下才可以。目标效果如下:
靶心形特征点
从Overlay的形状可以看到,其实这个靶心型的特征点是由两条直线和一个圆(或椭圆)组合而成的,因此要想覆盖出这样的一个特征点,只需要根据已知的特征中心点坐标,进行相应的算术运算,再通过Overlay Line和Overlay Oval就可以得到。
LabVIEW Vision之Overlay-Line覆盖线
http://labviewvision.com/thread-9446-1-2.html
LabVIEW Vision之Overlay Oval覆盖椭圆和覆盖圆
http://labviewvision.com/thread-9464-1-2.html
效果就如上图所示,下面来看一下程序框图。
连续采集图像并覆盖靶型特征点
这里的覆盖靶型特征点函数Overlay Feature Points,是自定义的一个函数。打开其函数界面,可以看一下其前面板与程序框图:
覆盖靶型特征点函数Overlay Feature Points前面板
覆盖靶型特征点函数Overlay Feature Points程序框图
覆盖靶型特征点函数Overlay Feature Points其实是由三个基本的覆盖函数组成的,一个覆盖椭圆函数、两个覆盖直线函数。椭圆函数覆盖靶型特征点的圆,直线函数覆盖靶型特征点的两条直线。至于靶型的圆多大、十字直线多长,则由常量来指定。根据指定的点坐标(X、Y)再利用一些簇的加减法即可得到想要的特征点。
下面还可以对覆盖靶型特征点函数进行优化,可以在用户界面中指定靶心圆大小与线段长度。
覆盖靶型特征点函数2 Overlay Feature Points2前面板
覆盖靶型特征点函数2 Overlay Feature Points2程序框图
调用覆盖靶型特征点函数2 Overlay Feature Points2函数程序框图
调用覆盖靶型特征点函数2 Overlay Feature Points2函数效果
调用覆盖靶型特征点函数2 Overlay Feature Points2函数效果
在用户界面可以改变靶型尺寸大小,这个对于一些高分辨率的图像,是非常有用的。因为高分辨率的图像在一个图像显示控件中一般都是缩小显示的,所以如果使用默认的值进行显示靶心,会非常的小。这时指定更大尺寸的靶型,则可以显示的更明显。