机器视觉系统由众多部件组成,其中包括相机、图像采集卡、照明单元、光学元件与镜头、处理器、软件及显示设备等。简单的机器视觉系统可以识别2D或3D条形码,更复杂的系统可以确保检测的元件满足特定的容差要求、组装正确、没有缺陷。 
     很多机器视觉系统配备了采用不同类型图像传感器的相机。为了确定相机可获得的分辨率,重要的是理解这些传感器可以分辨的每毫米线对数,而不是有效的像素点数。

        例如,在一个典型的2588×1958像素、500万像素成像器中,大小为1.4µm2的像素可提供357lp/mm的分辨率;而一个640×480像素的VGA成像器,其像素大小为5.7µm2,可实现88lp/mm的分辨率。对于具有相同尺寸的成像器而言,像素越小,每毫米中就可分辨更多的线对数。 
        选择相机 
        通常,机器视觉系统中使用的相机,可以通过USB3.0、以太网、FireWire、Camera Link及CoaXPress等接口将相机中捕捉到的图像传输到PC系统中。 
        目前,集成机器视觉照明、图像捕捉及处理等功能的智能相机,正在为阅读条形码或检测部件缺陷等自动化视觉任务提供经济型解决方案。尽管智能相机的处理器性能或许足以满足这些任务的需求,但是更复杂或要求更高速度的任务则需要功能全面的视觉检测软件来配合视觉硬件。 
        照明元件 
        通过配备正确的机器视觉照明系统,能以高对比度重复捕捉图像特征。如果照明的配备不正确,机器视觉系统的成功性、可靠性、可重复性和易用性都处于较大的风险中。为了确保机器视觉系统配备正确的照明元件,工程师需要借助图像照明实验室检测不同的照明选项。 
        LED照明正在开始替代目前常用于机器视觉系统中的荧光灯、光纤卤素灯及氙气闪光灯光源,因为LED照明具有更高的一致性、更长的使用寿命和更好的稳定性。LED照明可以提供各种各样的色彩并能选通发光,这一特性在高速机器视觉应用中非常有用。 
        除了照明类型,另一个决定图像成像的重要因素是光照到待测物体上的角度。两种最常用的为物体提供照明的方式是:暗场照明和亮场照明。  

        暗场照明从较低角度照明物体,在一个非常平滑的如镜面般的物体表面上,反射的光将超出相机的视野范围。物体的表面将呈现为黑色,而通过相机捕捉到的物体表面发光的部分,就对应着表面的缺陷或划痕。 
        亮场照明与暗场照明相反,亮场照明是在成像物体的上方打光,因此物体反射的光将处于相机的视场范围内。亮场照明配置中,物体表面上任何不连续处反射的光均无法被相机接收而显示黑色。因此,该技术被用于为漫发射的非反射性物体提供照明。 
        色彩效应 
        如果某个应用要求使用彩色相机,则需要白光照明待检测的元件。如果需要区分待检测元件的颜色,则白光需要在整个波长范围内产生平等光谱,以便分析图片中的颜色。 
  通过黑白单色相机也可以识别图像中的颜色,这种方法需要选择合适的灯光照明图像。图中上面一行图片是人眼观察到的图像效果,而下面一行的图像则显示了单色相机呈现出的图像效果。  

        图像处理算法  
        当应用算法处理图像时,请考虑开发人员和终端用户的技能及具体的视觉系统任务要求。 
        易菲特提供了图形化视觉检测平台(EMVP),使用户通过简单的培训便可以从中拖取设计好的功能,根据自身需求实现定制化视觉算法。 
        算法类别 
        图像处理算法可以分为不同的类别,用于满足不同的应用需求。 
        通过图像数据的预处理,可以提取出图像的特性。图像阈值是图像分割算法中最简单的方法之一,该方法可用于从灰度图像中生成二进制图像,从而让物体能够从背景中分离出来。 
        其他的运算符,如图像滤镜可以令图像锐化、降低图像噪音;而直方图均衡可以增强图像的对比度。预处理同样涉及图像分割,以定位图像中具有相似属性的物体或物体边界,如颜色、亮度或材质等。 
        算法的应用 
        在众多视觉系统中,决定一个元件或元件的某个特性是否存在非常重要。尺寸、形状或颜色等属性可以用于识别元件。对比分析、blob分析、模型匹配或几何搜索工具可以在图像上识别元件。 
        为了将一个元件从其他元件中区分出来,可以使用相对简单的功能,如边缘检测算子。如果需要精确地检测出元件的位置,则需要执行几何搜索或blob分析。 
  为了高速检测元件或web上的缺陷,需要用到对比分析或模型图像匹配算子。如果需要将缺陷归类并检测,blob分析或边缘分析可以测量缺陷参数,并将其与已知的正常参数进行比较。 
        在一些图像检测应用中,可以利用超过图像标准像素分辨率的精度,测量图像中的线、点或边缘的位置,获得子像素分辨率。这可以通过对比物体边缘像素的灰度级别与物体每个边上的像素灰度级别来实现。