zoukankan      html  css  js  c++  java
  • 机器视觉(4)——视觉系统基本组成

      从视觉软件进入机器视觉行业,有必要全局认识一下机器视觉系统组成。

    图 1

      典型的机器视觉系统可以分为:图像采集部分、图像处理部分和运动控制部分。基于PC的视觉系统具体由如图1所示的几部分组成
      ①工业相机与工业镜头——这部分属于成像器件,通常的视觉系统都是由一套或者多套这样的成像系统组成,如果有多路相机,可能由图像卡切换来获取图像数据,也可能由同步控制同时获取多相机通道的数据。根据应用的需要相机可能是输出标准的单色视频(RS-170/CCIR)、复合信号(Y/C)、RGB信号,也可能是非标准的逐行扫描信号、线扫描信号、高分辨率信号等。

      ②光源——作为辅助成像器件,对成像质量的好坏往往能起到至关重要的作用,各种形状的LED灯、高频荧光灯、光纤卤素灯等都容易得到。

      ③传感器——通常以光纤开关、接近开关等的形式出现,用以判断被测对象的位置和状态,告知图像传感器进行正确的采集。

      ④图像采集卡——通常以插入卡的形式安装在PC中,图像采集卡的主要工作是把相机输出的图像输送给电脑主机。它将来自相机的模拟或数字信号转换成一定格式的图像数据流,同时它可以控制相机的一些参数,比如触发信号,曝光/积分时间,快门速度等。图像采集卡通常有不同的硬件结构以针对不同类型的相机,同时也有不同的总线形式,比如PCI、PCI64、Compact PCI,PC104,ISA等。

      ⑤PC平台——电脑是一个PC式视觉系统的核心,在这里完成图像数据的处理和绝大部分的控制逻辑,对于检测类型的应用,通常都需要较高频率的CPU,这样可以减少处理的时间。同时,为了减少工业现场电磁、振动、灰尘、温度等的干扰,必须选择工业级的电脑。

      ⑥视觉处理软件——机器视觉软件用来完成输入的图像数据的处理,然后通过一定的运算得出结果,这个输出的结果可能是PASS/FAIL信号、坐标位置、字符串等。常见的机器视觉软件以C/C++图像库,ActiveX控件,图形式编程环境等形式出现,可以是专用功能的(比如仅仅用于LCD检测,BGA检测,模版对准等),也可以是通用目的的(包括定位、测量、条码/字符识别、斑点检测等)。

      ⑦控制单元(包含I/O、运动控制、电平转化单元等)——一旦视觉软件完成图像分析(除非仅用于监控),紧接着需要和外部单元进行通信以完成对生产过程的控制。简单的控制可以直接利用部分图像采集卡自带的I/O,相对复杂的逻辑/运动控制则必须依靠附加可编程逻辑控制单元/运动控制卡来实现必要的动作。

      一个完整的机器视觉系统的主要工作过程如下:

      1、工件定位检测器探测到物体已经运动至接近摄像系统的视野中心,向图像采集部分发送触发脉冲。

      2、图像采集部分按照事先设定的程序和延时,分别向摄像机和照明系统发出启动脉冲。 

      3、摄像机停止目前的扫描,重新开始新的一帧扫描,或者摄像机在启动脉冲来到之前处于等待状态,启动脉冲到来后启动一帧扫描。 

      4、摄像机开始新的一帧扫描之前打开曝光机构,曝光时间可以事先设定。

      5、另一个启动脉冲打开灯光照明,灯光的开启时间应该与摄像机的曝光时间匹配。 

        6、摄像机曝光后,正式开始一帧图像的扫描和输出。 

      7、图像采集部分接收模拟视频信号通过A/D将其数字化,或者是直接接收摄像机数字化后的数字视频数据。 

      8、图像采集部分将数字图像存放在处理器或计算机的内存中。 

      9、处理器对图像进行处理、分析、识别,获得测量结果或逻辑控制值。

      10、处理结果控制流水线的动作、进行定位、纠正运动的误差等。

    来源于CSDN->小熊之家

  • 相关阅读:
    微信java封装
    解决PowerDesigner 生成Sql2005-2012 找不到sysproperties表的问题
    ASP.net解析JSON例子
    c# 遍历子控件,比如Form下的group,或者panel
    修改sql2005字段
    清除grid内容的列
    sql 2000以及2005以上获取数据库中所有的表(不包括系统表)
    获取SqlServer2005表结构(字段,主键,外键,递增,描述)
    SQL SERVER 数据库实用SQL语句
    查找所有页面中的按钮
  • 原文地址:https://www.cnblogs.com/yssongest/p/4524472.html
Copyright © 2011-2022 走看看