halcon机器视觉试验平台设计方案与研究报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
封面
作者:PanHongliang
仅供个人学习
基于HALCON的机器视觉系统的研究与实现
摘要
近年来,机器视觉系统以其高效率、高可靠、低成本的特点在国外取得了广泛的应用。机器视觉系统适用于众多领域,例如工业自动化、医药业、制造业、农业等,弥补了人类视觉的很多不足。本文采用德国MVTec公司的专业机器视觉软件HALCON来开发机器视觉系统,提出了相关机器视觉实现方法,
并且在机器视觉实验平台上完成了一个弹簧片检测任务。
目前关注较多的是机器视觉系统的硬件部分,而机器视觉软件部分关注较少,一个先进的机器视觉系统除了具有高性能的硬件外,还需要有高性能的软件,虽然说许多常见的开发软件例如Mircosoft的Visual Studio、NI的LabWindows\CVI等等都可以开发机器视觉系统,但是开发周期比较长,针对性较弱,程序的复杂程度较高。而采用HALCON作为机器视觉和图像处理核心软件,不仅大大缩短了开发周期,降低了开发难度,而且可以参考HALCON 提供的众多机器视觉和图像处理例程来针对具体的任务做具体开发。
文章的第一章研究了机器视觉系统的组成、应用现状和发展,并且对机器视觉软件HALCON做了概述。第二章根据相关要求,选择合适的硬件单元,设计和搭建了VS-ZM1200机器视觉实验平台。第三章研究了机器视觉中常用的一些图像处理技术,重点讨论了在弹簧片检测任务中所采用的图像处理技术和算法,如图像的增强,分割,边缘检测等。第四章研究了机器视觉软件,重点研究了HALCON,并且对在Visual C++开发环境下如何使用HALCON编写的程序做了讨论。第五章介绍了在VS-ZM1200机器视觉实验平台上,使用HALCON和Visual C++开发的一套弹簧片检测系统,该系统完成关于弹簧片的尺寸参数测量和外观参数判别的任务。
第一章:绪论
1.1机器视觉概述
人类在征服自然、改造自然和推动社会进步的过程中,为了克服自身能力、能量的局限性,发明和创造了许多机器来辅助或代替人类完成任务。这类机器,我们通常称为智能机器,它能模拟人类的功能,能感知外部世界并有效地解决人所希望解决的问题。人类感知外部世界主要是通过视觉、触觉、听觉和嗅觉等感觉器官,而视觉,是人类最重要的感觉功能。视,就是看。觉,就是感觉、感知。通过看来感知外部世界丰富多采的信息。“百闻不如一见”,这句话生动地说明了视觉对获得客观世界信息的重要性。据统计,人所感知的外界信息有80%以上是由视觉得到的[1],通过视觉,我们可以感受到物体的位置,亮度以及物体之间的相互关系等。因此,对于智能机器来说,赋予机器人类的视觉功能对发展智能机器是极其重要的,由此形成了
一门新的学科———机器视觉。
机器视觉,就是用机器(通常是数字计算机)代替人眼来做测量及判断,对图像进行自动处理并报告“图像中有什么”的过程。美国制造工程师协会(SME Society of Manufacturing Engineers)机器视觉分会和美国机器人工业协会(RIA Robotic Industries Association)的自动化视觉分会对机器视觉下的定义为:“机器视觉是通过光学的装置和非接触的传感器自动地接收和处理一个真实物体的图像,以获得所需信息或用于控制机器人运动的装置”。具体来讲,是指通过镜头将被测目标转化为图像信号,投射至影像接受器件(一般为 CCD 元件)上再通过数字计算机进行分析处理。CCD是英文(Charge Coupling Device)的缩写,其中文含义为电荷耦合组件。当不同强度的光线照射在CCD表面,CCD
即发生光电效应,产生对应分布的电荷量。通过模数转换即可得到对应的数字量。由于一般均采用8位模数转换,则最低强度光线(黑)到最高强度光线(白)分成256等分(0~255),专业术语称之为灰阶或灰度
随着信息时代的到来,用计算机处理各种信息的需求越来越多。多媒体信息处理技术已经成为日常生活各个领域的迫切需要,而人们就更希望能用计算机来处理视觉问题,例如利用人脸、虹膜、指纹等识别技术来处理与个人有关的一切事务。利用自动识别技术帮助盲人,利用视觉自动监控系统监视环境中发生的非常事件,如陌生人的侵入、老年人的异常行动等。在如智能交通管理系统、视频检索、用于军事目的的自动目标检测等,都需要应用机器视觉技术来解决问题。正如视觉是人类在自然环境与社会环境生存不可缺少的最重要感知器官,机器视觉技术也是信息技术中一门不可缺少的技术,因此它成为计算机学科中不可或缺的一们学科。
1.1.1 机器视觉组成
图1-1 机器视觉系统的组成框图
图1-1用图的方式表示了一个机器视觉系统在最基本层次上的组成。首先对未知物体进行度量,并确定一组特征的度量值。在工业应用中,这些特征包括被度量零件在图像中的长,宽和面积。一旦特征经过度量后,其数值就被送到一个实现决策规则的过程中去。这种决策的规则一般用一个子程序实现。它对度量值进行计算,并根据所度量的值确定物体最可能属于的类别。
典型的机器视觉系统一般包括:光源,光学镜头,摄像机,传感器,图像分析处理软件,通讯接口等组成的。
图1-2:机器视觉基本结构
如图1-2所示
光源:在目前的机器视觉应用系统中,好的光源与照明方案往往是整个系统成败的关键,光源与照明方案的配合应尽可能地突出物体特征量,在物体需要检测的部分与那些不重要部份之间应尽可能地产生明显的区别。其中 LED 光源凭借其诸多的优点在现代机器视觉系统中得到越来越多的应用
光学镜头:光学镜头相当于人眼的晶状体,在机器视觉系统中非常重要。镜头的主要性能指标有焦距、光阑系数、倍率、接口等。
相机:相机是机器视觉系统获取原始信息的最主要部分,目前主要使用的CMOS相机和CCD相机。目前CCD 摄像机以其小巧、可靠、清晰度高等特点在商用与工业领域都得到了广泛地使用。
图像采集卡:在基于PC 机的机器视觉系统中,图像采集卡是控制摄像机拍照,完成图像采集与数字化,协调整个系统的重要设备。
视觉传感器:基于PC 机的机器视觉系统结构没有模块化,安装不方便,可移植性差,特别是与工业广泛使用的PLC 接口比较麻烦。从软件和硬件开发两个方面来考虑,都需要一种更适合工业需求的机器视觉组件。目前国外已经开发出了一种叫做视觉传感器的模块化部件,图2 为实物图。这种视觉传感器集成了光源、摄像头、图像处理器、标准的控制与通讯接口,自成为一个智能图像采集与处理单元,内部程序存储器可存储图像处理算法,并能使用PC 机,利