目前关注较多的是机器视觉系统的硬件部分,而机器视觉软件部分关注较少,一个先进的机器视觉系统除了具有高性能的硬件外,还需要有高性能的软件,虽然说许多常见的开发软件例如Mircosoft的VisualStudio、NI的LabWindows\CVI等等都可以开发机器视觉系统,但是开发周期比较长,针对性较弱,程序的复杂程度较高。而采用HALCON作为机器视觉和图像处理核心软件,不仅大大缩短了开发周期,降低了开发难度,而且可以参考HALCON提供的众多机器视觉和图像处理例程来针对具体的任务做具体开发。
文章的第一章研究了机器视觉系统的组成、应用现状和发展,并且对机器视觉软件HALCON做了概述。第二章根据相关要求,选择合适的硬件单元,设计和搭建了VS-ZM1200机器视觉实验平台。第三章研究了机器视觉中常用的一些图像处理技术,重点讨论了在弹簧片检测任务中所采用的图像处理技术和算法,如图像的增强,分割,边缘检测等。第四章研究了机器视觉软件,重点研究了HALCON,并且对在VisualC++开发环境下如何使用HALCON编写的程序做了讨论。第五章介绍了在VS-ZM1200机器视觉实验平台上,使用HALCON和Visual C++开发的一套弹簧片检测系统,该系统完成关于弹簧片的尺寸参数测量和外观参数判别。相机的选择除了考虑选择黑白/彩色、数字/模拟、面陶线阵、精度、速度外,还要考虑的因素有:相机与图像采集卡之间的数据输出接口、相机与镜头之间的联接接口等。数据输出接口主要有视频制式模拟信号、CameraLink, LIDS ,IEEE1394. USB等。在系统的硬件选择时要注意相机和图像采集卡之间的接口的类型,尽量选用相同接口,如果接口不同要考虑相机和图像采集卡之间的接口转换问题;根据相机和镜头间的联接支座的螺纹的不同可以分为C接口和CS接口。
目前工业用相机主要有CCD和CMOS两种。CMOS相机起步较晚,所摄取的画面质量也不是很好,所以主要用在图像品质要求不是很高的产品上,而工业上应用较为普遍的是CCD相机。CCD(Charge Coupled Device)是美国人Boyle发明的一种半导体光学器件。该器件具有光电转换、信息存储和延时等功能,并且集成度高、能耗小,故一出现就在固体图像传感、信息存储和处理等方面得到广泛应用iii。在选择相机时,主要有以下几个方面的问题要考虑 传感器类型 | 逐行扫描CCD |
分辨率 | NTSC:768(H)X494(V)PAL:752(H)X582V() |
像素尺寸 | EIA: 8.4um(H)*9.8um(V) CCIR: 8.6um(H)*8.3um(V) |
扫描方式 | 2:1隔行扫描 |
同步方式 | 外触发 |
视频输出 | composite video,1.0Vp-p,75欧姆Unbalanced |
Resolution (Horizontal)线素 | 570line 570行 |
Minimum Illumination最低照度 | 0.0003 lux., F1.4(AGC High) / 0.002 lx., F1.4(AGC Low) |
相机校正 | 0.45 |
自动增益控制 | High:5~50dB, Low: 5~32dB |
信噪比 | 46dB(AGC off) |
自动电子快门 | EIA: OFF=1/60,1/60~1/100,000sec. CCIR: OFF=1/50,1/50~1/100,000sec |
背光补偿 | 开启 |
镜头接口 | CS-mount/C-mount(30CMA-R) |
自动光圈镜头 | Video |
供电电压 | DC+12V (-+10%) |
供电电流 | max.160mA |
运行温度 | -10°~+40°C |
保存温度 | -30°~+70°C |
尺寸 | 35.5(w)*36.0(h)*58.0(d) |
最大重量 | 90克 |
彩色/黑白 | 彩色 |
有效像素 | 1.3Megapixels |
像元尺寸 | 5.2μm×5.2μm |
动态范围 | 62dB |
帧率 | 1280×1024 14fps |
清晰度 | 水平:600线 垂直:550线 |
信噪比 | > 45dB |
工作温度 | 0~50℃ |
感光芯片 | 1/2-inch,逐行扫描 |
白平衡 | 自动/手动白平衡 |
曝光 | 手动/自动曝光操作,曝光时间可调(1~500ms) |
扩展功能 | 闪光灯控制输出 |
镜头接口 | C_MOUNT 标准镜头及用户定制镜头 |
供电方式 | 即插即用和自动电源控制,通过USB2.0接口供电,USB2.0电缆可长达5米 |
功能 | 支持TWAIN接口,支持WIN2K,WINXP操作系统。提供完整的SDK开发包 |
边缘检测算法的基本步骤如下:(贾云得,机器视觉,北京:科学出版社,2000.4)
1,滤波:边缘检测算法主要是基于图象强度的一阶和二阶导数,但导数的计算对噪声很敏感,因此必须使用滤波器来改善与噪声有关的边缘检测器的性能。分水岭算法就是将梯度图像看成是假想的地形表而,而每个像素的梯度值则代表该点的海拔高度。因为一般待分割图像的边缘像素通常有较大的梯度值,故它对应于地表上的“分水岭线”,而每个区域的内部像素通常有较小的梯度值,故可对应于地表上的“集水盆地”。这种“分水岭线”将梯度图像分割成若干个不同的“集水盆地”,这些“集水盆地”则分别对应于待分割图像中的均匀一致区域。([ 3]罗慧韬.章毓晋.一个图像分割评价事例及讨论[[ J]数据采集与处理]., 1997, 12 (1): 18 22.)
3.4 图像匹配匹配是指降观察到的图像与模型进行匹配,以及图像之间的匹配。匹配的结果表示对景物的一种解释,也就是说它将两种表达式对应起来,具有如下特征:在整个机器视觉系统软件设计中,图像处理模块所包含的内容众多,、范围广泛。根据具体的要求设计相应的算法和程序。在本文中,图像处理模块是使用机器视觉软件HALCON,在其开发环境Hdevelop中编制对应的程序,然后输出C++代码,并将输出的C++代码文件放到VisualC++环境下进一步发展和完善。
由于弹簧片的图像比较复杂,要求精度较高针对其要求的不同进行分块程序设计,大概可以分为两个部分,第一部分是设计尺寸测量的HALCON程序,其中包括测量外圆半径、中心圆孔半径、连结点间距和双耳之间外切圆半径。第二部分是针对弹簧片的外观进行检测,是否有毛刺和蚀坑。设计其尺寸测量部分的HALCON程序,流程图如下:欢迎光临 工控编程吧 (https://www.gkbc8.com/) | Powered by Discuz! X3.4 |