基于LabVIEW的机器视觉实验系统开发
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于LabVIEW的机器视觉实验系统开发
针对精密测控技术与仪器实验室的虚拟仪器实践平台,对其嵌入式测控系统的图像处理功能进行再开发。为虚拟仪器课程设计提供技术支持,开发一套集表现性、可欣赏性、实用性和应用性与一体的视觉平台。针对以上要求,本平台以电子芯片表面为处理对像,以图像处理的手段实现不同芯片的识别功能,平台的实现具体应包括以下几个部分:
1)硬件平台搭建,包括摄像头、CCD、图像采集卡等。
2)软件平台搭建,包括:
a)图像处理程序,包括视觉系统基本功能模块的搭建;
b)平台交互界面,在Labview环境下调用所采集图像与图像处理的功
能模块,完成对图像的处理等功能。
1系统介绍
图1 机器视觉实验平台流程
该系统主要由图像获取和图像处理平台组成,系统流程如图1所示。
1.1硬件平台的搭建
硬件部分主要包括成像CCD及摄像头、图像采集卡、数据传输线和计算机
等,其实物如图2所示。
图2 机器视觉系统硬件
1.1.1 相机(成像CCD 和摄像头)的选择
本系统是一个视觉系统的演示平台,以电子芯片表面为处理对象,为了应用在更多其它对象上,所以假定视觉范围为100×100mm2,对于芯片表面的字符要求能检测出0.2mm 大小的线条或瑕疵。
根据以上条件,可以将0.2mm 假定为理论像素值。也就是说,只要像素值能达到0.2mm ,就可以满足测量精度方面要求。根据上面计算相机X 方向或Y 方向的分辨率公式为:
100(X/Y 方向视野范围)÷0.2(X/Y 方向理论像素值)=200(X/Y 方向分辨率)
可知,只要相机的分辨率高于200×200,就是适合此系统的相机。通过调查市场现有相机参数,同时考虑到成本,本系统的相机CCD 采用奥尼克斯的MBC-5050,其主要参数为:
成像器件:1/3英寸CCD 信号系统:CCIR 黑白制式
CCD
摄像头
PXI-1409图像采集卡
数据传输线
有效像素:500×582
水平分辨率:420电视线
最小照度:0.03Lux
信噪比:≧48dB
功率:3.5W
摄像头采用厂家的computar配套摄像头,CCD及摄像头实物如图3所示。
图3 MBC-5050成像CCD及配套摄像头
1.1.2图像采集卡的选择
图像采集卡采用Ni的PXI-1409,如图4所示。该卡最多可以支持4个标准(RS-170,CCIR)或非标准相机,可进行高分辨率测量级图像采集和科学图像开发。选择采集卡时,要考虑和所选相机的是否匹配。
其它设备有计算机、电源、摄像头支架等。
图4 PXI-1409图像采集卡
1.2软件平台的搭建
软件平台主要完成从硬件获取图像、处理原始图像、显示处理结果等功能。软件平台使用LabVIEW 7.1、IMAQ Vision 8.0(试用版)等软件进行系统开发。
LabVIEW特有的数据流式编程和IMAQ Vision 强大的图像处理能力极大地缩短了系统的开发周期、降低了成本。系统软件的交互界面如图5所示。
图5 机器视觉实验平台交互界面
1.2.1图像获取
该部分主要用来获取原始图像以进行后面的图像处理,labview中既可以方便地对现有图像进行处理,也可以从硬件设备(照相机)获取图像进行实时处理。本软件中同时提供了这两种图像获取方式,如图6所示。
图6 选择原始图像来源
图7为从硬件获取图像并将其显示的labview代码。
图7 从相机获取图像程序代码
1.2.2图像几何变换
该部分主要是对原始图像进行镜像、缩放、旋转等几何变换,图8 是对原始图像进行旋转变换的效果图。
图8 图像旋转变换
在对一些诸如环形条形码识别的图像处理中,需要将环状的图像转换为矩形,该软件中的“曲边拉直”提供了这样的功能,使用时需要先设定环形的中心坐标、内外半径以及参与变换的起始角度,就能得到变换结果,图9中将一个简单的环形文字变换为易识别易处理得线条状。
图9 将环形图像变换为矩形图像
1.2.3图像点处理
这部分是各种图像处理中经常用到的预处理功能,主要包括图像反色、阈值变换等。
在阈值变换中,提供了两种选取阈值的方法,一种是直接输入阈值,另一种是基于迭代法的阈值计算。该方法是先根据经验改定一个阈值T1,然后对图像中小于T1与大于T1的像素点进行统计,从而得到另一个阈值T2,具体计算公式如下:
∑∑∑∑+=+
==
=⋅+
⋅=
255
1
255
10
02111
1
T i i
T i i
T i i
T i i
n
i
n n
i n T
其中,ni 为图像中阈值为i 的像素点个数。
用上面的公式得到阈值T 2 后,付给T 1,代回公式继续进行迭代,直到最后的T 2=T 1。利用该公式对图8中原始图像进行图像二值化,得到的结果如图10所示,其中初始阈值为127,计算阈值为185,图10右图为左图的反色变换。
图10 图像阈值变换与反色变换
上面的公式也有可能不收敛,因此使用该方法进行计算时有可能得不到正确的阈值,但对于直方图形如图11所示的图像,其特征是背景色与物体的像素值相差较大,且两者之间有明显的低谷,对于这样的图像,上面的公式是有效的。
图11 图8中原始图像的直方图
1.2.4 图像滤波
这部分主要实现图像的各种滤波功能,在图像处理中,可以根据检测对象的
背景像素点
芯片像素点