视觉检测方案(2)

一、视觉系统原理描述

机器视觉就是用机器代替人眼来做测量和判断。机器视觉系统是指通过机器视觉产品(即图像摄取装置,分 CMOS 和CCD 两种)将被摄取目标转换成图像信号,传送给专用的图像处理系统,根据像素分布和亮度、颜色等信息,转变成数字化信号;图像系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来控制现场的设备动作。

二、视觉系统组成部分

视觉系统主要由以下部分组成

1.照明光源

2.镜头

3.工业摄像机

4.图像采集/处理卡

5.图像处理系统

6.其它外部设备

三、相机篇

1 详细介绍

工业相机又俗称摄像机,相比于传统的民用相机(摄像机)而言,它具有高的图像稳定性、高传输能力和高抗干扰能力等,目前市面上的工业相机大多是基于CCD(Charge

Coupled Device)或CMOS(Complementary Metal Oxide Semiconductor)芯片的相机。

CCD是目前机器视觉最为常用的图像传感器。它集光电转换及电荷存贮、电荷转移、信号读取于一体,是典型的固体成像器件。CCD的突出特点是以电荷作为信号,而不同于其它器件是以电流或者电压为信号。这类成像器件通过光电转换形成电荷包,而后在驱动脉冲的作用下转移、放大输出图像信号。典型的CCD相机由光学镜头、时序及同步信号发生器、垂直驱动器、模拟/数字信号处理电路组成。CCD作为一种功能器件,与真空管相比,具有无灼伤、无滞后、低电压工作、低功耗等优点。

CMOS图像传感器的开发最早出现在20世纪70 年代初,90 年代初期,随着超大规模集成电路 (VLSI) 制造工艺技术的发展,CMOS图像传感器得到迅速发展。CMOS图像传感器将光敏元阵列、图像信号放大器、信号读取电路、模数转换电路、图像信号处理器及控制器集成在一块芯片上,还具有局部像素的编程随机访问的优点。目前,CMOS图像传感器以其良好的集成性、低功耗、高速传输和宽动态范围等特点在高分辨率和高速场合得到了广泛的应用。

2 分类

任何东西分类一定有它自己的分类标准,工业相机也不例外,按照芯片类型可以分为CCD相机、CMOS相机;按照传感器的结构特性可以分为线阵相机、面阵相机;按照扫描方式可以分为隔行扫描相机、逐行扫描相机;按照分辨率大小可以分为普通分辨率相机、高分辨率相机;按照输出信号方式可以分为模拟相机、数字相机;按照输出色彩可以分为单色(黑白)相机、彩色相机;按照输出信号速度可以分为普通速度相机、高速相机;按照响应频率范围 可以分为可见光(普通)相机、红外相机、紫外相机等。

3 区别

1、工业相机的性能稳定可靠易于安装,相机结构紧凑结实不易损坏,连续工作时间长,可在较差的环境下使用,一般的数码相机是做不到这些的。例如:让民用数码相机一天工作24小时或连续工作几天肯定会受不了的。

2、工业相机的快门时间非常短,可以抓拍高速运动的物体。

例如,把名片贴在电风扇扇叶上,以最大速度旋转,设置合适的快门时间,用工业相机抓拍一张图像,仍能够清晰辨别名片上的字体。用普通的相机来抓拍,是不可能达到同样效果的。

3、工业相机的图像传感器是逐行扫描的,而普通的相机的图像传感器是隔行扫描的, 逐行扫描的图像传感器生产工艺比较复杂,成品率低,出货量少,世界上只有少数公司能够提供这类产品,例如Dalsa、Sony,而且价格昂贵。

4、工业相机的帧率远远高于普通相机。

工业相机每秒可以拍摄十幅到几百幅图片,而普通相机只能拍摄2-3幅图像,相差较大。

5、工业相机输出的是裸数据(raw data),其光谱范围也往往比较宽,比较适合进行高质量的图像处理算法,例如机器视觉(Machine Vision)应用。而普通相机拍摄的图片,其光谱范围只适合人眼视觉,并且经过了mjpeg压缩,图像质量较差,不利于分析处理。

6、工业相机(Industrial Camera)相对普通相机(DSC)来说价格较贵。

4 如何选择

1、根据应用的不同分别选用CCD或CMOS相机

CCD工业相机主要应用在运动物体的图像提取,如贴片机机器视觉,当然随着CMOS技术的发展,许多贴片机也在选用CMOS工业相机。用在视觉自动检查的方案或行业中一般用CCD工业相机比较多。CMOS工业相机由成本低,功耗低也应用越来越广泛。

2、分辨率的选择

首先考虑待观察或待测量物体的精度,根据精度选择分辨率。相机像素精度=单方向视野范围大小/相机单方向分辨率。则相机单方向分辨率=单方向视野范围大小/理论精度。

若单视野为5mm长,理论精度为0.02mm,则单方向分辨率=5/0.02=250。然而为增加系统稳定性,不会只用一个像素单位对应一个测量/观察精度值,一般可以选择倍数4或更高。这样该相机需求单方向分辨率为1000,选用130万像素已经足够。

其次看工业相机的输出,若是体式观察或机器软件分析识别 ,分辨率高是有帮助的;若是VGA输出或USB输出,在显示器上观察,则还依赖于显示器的分辨率,工业相机的分辨率再高,显示器分辨率不够,也是没有意义的;利用存储卡或拍照功能,工业相机的分辨率高也是有帮助的。

3、与镜头的匹配

传感器芯片尺寸需要小于或等于镜头尺寸,C或CS安装座也要匹配(或者增加转接口);

4、相机帧数选择

当被测物体有运动要求时,要选择帧数高的工业相机。但一般来说分辨率越高,帧数越低。

 

四、镜头篇

镜头的基本功能就是实现光束变换(调制),在机器视觉系统中,镜头的主要作用是将成像目标在图像传感器的光敏面上。镜头的质量直影响到机器视觉系统的整体性能,合理地选择和安装镜头,是机器视觉系统设计的重要环节。

基础知识

1 镜头匹配

大家如何选择合适镜头,镜头选配时需要选择与摄像机接口和CCD的尺寸相匹配的镜头。镜头C和CS的接口方式占主流。小型的安防用的CS接口摄像机得到普及、FA行业则大部分是C接口的摄像机与镜头的组合。对应的CCD尺寸、市场上一般根据用途使用2/3寸到1/3寸的产品。

2 互换性

C接口镜头可以与C接口摄像机、CS接口摄像机互用;

CS接口镜头不可以应用在C接口摄像机,只可以应用在CS接口摄像机。

3 KERARE

摄像机如果使用配备小CCD尺寸的镜头,那么周边没有摄取到图像的部分呈现出黑色,我们称其为KERARE。

4 镜头的作用

将折射率不同的各种硝材通过研磨,加工成高精度的曲面、把这些镜头进行组合,就是设计镜头。从伽利略时代开始使用的普遍技术是其基本原理。为得到更清晰的图像,一直在研究开发试制新的硝材和非球面镜片。

 

五、光源篇

LED光源、卤素灯(光纤光源)、高频荧光灯。目前LED光源最常用,主要有如下几个特点:

·可制成各种形状、尺寸及各种照射角度;

·可根据需要制成各种颜色,并可以随时调节亮度;

·通过散热装置,散热效果更好,光亮度更稳定;

·使用寿命长;

·反应快捷,可在10微秒或更短的时间内达到最大亮度;

·电源带有外触发,可以通过计算机控制,起动速度快,可以用作频闪灯;

·运行成本低、寿命长的LED,会在综合成本和性能方面体现出更大的优势;

·可根据客户的需要,进行特殊设计。

LED光源按形状分类

1 环形光源

环形光源提供不同照射角度、不同颜色组合,更能突出物体的三维信息;高密度LED阵列,高亮度;多种紧凑设计,节省安装空间;解决对角照射阴影问题;可选配漫射板导光,光线均匀扩散。应用领域:PCB基板检测,IC元件检测,显微镜照明,液晶校正,塑胶容器检测等。

2 背光源

用高密度LED阵列面提供高强度背光照明,能突出物体。的外形轮廓特征,尤其适合作为显微镜的载物台。红白两用背光源、红蓝多用背光源,能调配出不同颜色,满足不同被测物多色要求。应用领域:机械零件尺寸的测量,电子元件、IC的外型检测,胶片污点检测,透明物体划痕检测等。

3 条形光源

条形光源是较大方形结构被测物的首选光源;颜色可根据需求搭配,自由组合;照射角度与安装随意可调。应用领域:金属表面检查,图像扫描,表面裂缝检测,LCD面板检测等。

4 同轴光源

同轴光源可以消除物体表面不平整引起的阴影,从而减少干扰;部分采用分光镜设计,减少光损失,提高成像清晰度,均匀照射物体表面。

应用领域:系列光源最适宜用于反射度极高的物体,如金属、玻璃、胶片、晶片等表面的划伤检测,芯片和硅晶片的破损检测,Mark点定位,包装条码识别。

5 AOI专用光

不同角度的三色光照明,照射凸显焊锡三维信息;外加漫射板导光,减少反光;不同角度组合;应用领域:用于电路板焊锡检测。

6 球积分光源

具有积分效果的半球面内壁,均匀反射从底部360度发射出的光线,使整个图像的照度十分均匀。应用领域:合于曲面,表面凹凸,弧形表面检测,或金属、玻璃表面反光较强的物体表面检测。

7 线性光源

超高亮度,采用柱面透镜聚光,适用于各种流水线连续检测场合。应用领域:阵相机照明专用,AOI专用。

8 点光源

大功率LED,体积小,发光强度高;光纤卤素灯的替代品,尤其适合作为镜头的同轴光源等;高效散热装置,大大提高光源的使用寿命。应用领域:适合远心镜头使用,用于芯片检测,Mark点定位,晶片及液晶玻璃底基校正。

9 组合条形光源

四边配置条形光,每边照明独立可控;可根据被测物要求调整所需照明角度,适用性广。应用案例:CB基板检测,IC元件检测,焊锡检查,Mark点定位,显微镜照明,包装条码照明,球形物体照明等。

10 对位光源

对位速度快;视场大;精度高;体积小,便于检测集成;亮度高,可选配辅助环形光源。应用领域:VA系列光源是全自动电路板印刷机对位的专用光源。

光源的选型

1 前提信息

1、检测内容

外观检查、OCR、尺寸测定、定位

2、对象物

①想看什么?(异物、伤痕、缺损、标识、形状等)

②表面状态(镜面、糙面、曲面、平面)

③立体?平面?

④材质、表面颜色

⑤视野范围?

⑥动态还是静态(相机快门速度)

3、限制条件

①工作距离(镜头下端到被测物表面距离)

②设置条件(照明的大小、照明下端到被测物表面的距离、反射型or透射型)

③周围环境(温度、外乱光)

④相机的种类,面阵or线阵

2 简单的预备知识

1.因材质和厚度不同、对光的透过特性(透明度)各异。

2.光根拠其波长之长短、对物质的穿透能力(穿透率)各异。

3.光的波长越长、对物质的透过力越强,光的波长越短、在物质表面的拡散率越大。

4.透射照明、即是使光线透射对象物、并観察其透过光之照明手法。

3 光源

1.穏定均匀的光源极其重要

2.目的:将被测物与背景尽量明顕区分

3.摂取图像时、最重要之处是如何鲜明地获得:被测物与背景的浓淡差

4.目前、在图像处理领域中最广范的技术手法是:二值化(白黒)处理

为了能够突出特征点,将特征图像突出出来,在打光手法上,常用的包括有明视野与暗视野。

明视野:用直射光来観察对象物整体(散乱光呈黒色)

暗视野:用散乱光来観察对象物整体(直射光呈白色)

具体的光源选取方法还在于试验的实践经验。

4.算法分析https://www.cnblogs.com/xyf327/p/14863873.html

一、算法(预处理算法、检测算法)
在采集完图像后,首先会对图像进行预处理操作。保证图像的对比度清晰,水平。方便后续图像处理。

常用的图像处理算法:

1,图像变换:(空域与频域、几何变换、色度变换、尺度变换)

几何变换:图像平移、旋转、镜像、转置;
尺度变换:图像缩放、插值算法(最近邻插值、线性插值、双三次插值);
空间域与频域间变换:由于图像阵列很大,直接在空间域中进行处理,涉及计算量很大。因此,有时候需要将空间域变换到频域进行处理。例如:傅立叶变换、沃尔什变换、离散余弦变换等间接处理技术,将空间域的处理转换为频域处理,不仅可减少计算量,而且可获得更有效的处理(如傅立叶变换可在频域中进行数字滤波处理)。
2、图像增强:

图像增强不考虑图像降质的原因,突出图像中所感兴趣的部分。如强化图像高频分量,可使图像中物体轮廓清晰,细节明显;如强化低频分量可减少图像中噪声影响。

灰度变换增强(线性灰度变换、分段线性灰度变换、非线性灰度变换);
直方图增强(直方图统计、直方图均衡化);
图像平滑/降噪(邻域平均法、加权平均法、中值滤波、非线性均值滤波、高斯滤波、双边滤波);
图像(边缘)锐化:梯度锐化,Roberts算子、Laplace算子、Sobel算子等;
3、纹理分析(取骨架、连通性);

4、图像分割:

图像分割是将图像中有意义的特征部分提取出来,其有意义的特征有图像中的边缘、区域等,这是进一步进行图像识别、分析和理解的基础。

(1)阈值分割(固定阈值分割、最优/OTSU阈值分割、自适应阈值分割);

(2)基于边界分割(Canny边缘检测、轮廓提取、边界跟踪);

(3)Hough变换(直线检测、圆检测);

(4)基于区域分割(区域生长、区域归并与分裂、聚类分割);

(5)色彩分割;

(6)分水岭分割;

5、图像特征:

(1)几何特征(位置与方向、周长、面积、长轴与短轴、距离(欧式距离、街区距离、棋盘距离));

(2)形状特征(几何形态分析(Blob分析):矩形度、圆形度、不变矩、偏心率、多边形描述、曲线描述);

(3)幅值特征(矩、投影);

(4)直方图特征(统计特征):均值、方差、能量、熵、L1范数、L2范数等;直方图特征方法计算简单、具有平移和旋转不变性、对颜色像素的精确空间分布不敏感等,在表面检测、缺陷识别有不少应用。

(5)颜色特征(颜色直方图、颜色矩)

(6)局部二值模式( LBP)特征:LBP对诸如光照变化等造成的图像灰度变化具有较强的鲁棒性,在表面缺陷检测、指纹识别、光学字符识别、人脸识别及车牌识别等领域有所应用。由于LBP 计算简单,也可以用于实时检测。

6、图像/模板匹配:

轮廓匹配、归一化积相关灰度匹配、不变矩匹配、最小均方误差匹配

7、色彩分析:
色度、色密度、光谱、颜色直方图、自动白平衡

8、图像数据编码压缩和传输:
图像编码压缩技术可减少描述图像的数据量(即比特数),以便节省图像传输、处理时间和减少所占用的存储器容量。压缩可以在不失真的前提下获得,也可以在允许的失真条件下进行。编码是压缩技术中最重要的方法,它在图像处理技术中是发展最早且比较成熟的技术。

9、表面缺陷目标识别算法:
传统方法:贝叶斯分类、K最近邻(KNN)、人工神经网络(ANN)、支持向量机(SVM)、K-means等;

10、图像分类(识别):
图像分类(识别)属于模式识别的范畴,其主要内容是图像经过某些预处理(增强、复原、压缩)后,进行图像分割和特征提取,从而进行判决分类。

11、图像复原:

图像复原要求对图像降质的原因有一定的了解,一般讲应根据降质过程建立“降质模型”,再采用某种滤波方法,恢复或重建原来的图像。

二、现有的视觉检测软件/库

1、做工业视觉检测的公司有哪些?
比较出名的有:大恒图像(亚洲Halcon最大代理商)、凌云光技术(VisionPro视觉平台:印刷、3C电子、显示屏、玻璃、线路板检测)、大族激光(振静系统:视觉激光焊接,定视觉位、缺陷检测)、康耐视、基恩士、深圳精锐视觉、深圳市视觉龙科技有限公司、广州超音速、深圳市创科自动化等等。

可二次开发的视觉系统:Labview、DVT、Halcon、OpenCV等。

2、常用的视觉检测软件/库
视觉开发软件工具 Halcon、VisionPro、LabView、OpenCV, 还有eVision、Mil、Sapera等。

(一)、Halcon:底层功能算法多,运算性能快,功能齐全,容易上手,开发项目周期短。非开源项目,商用收费,价格较贵。

         Halcon:Halcon是德国MVtec公司开发的一套完善的标准的机器视觉算法包,拥有应用广泛的机器视觉集成开发环境。它是一套image processing library,由一千多个各自独立的函数,以及底层的数据管理核心构成。其中包含了各类滤波,色彩以及几何,数学转换,型态学计算分析,校正,分类辨识,形状搜寻等等基本的几何以及影像计算功能。整个函数库可以用C,C++,C#,Visual basic和Delphi等多种普通编程语言访问。 Halcon为大量的图像获取设备提供接口,保证了硬件的独立性。

(二)OpenCV:功能算法相对较多(比Halcon少),开源,可用于商用,开发周期较长(比Halcon长),有些算法要自己写。

        OpenCV是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。其核心轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV用C++语言编写,它的主要接口也是C++语言。该库也有大量的Python, Java and MATLAB/OCTAVE的接口,如今也提供对于C#, Ruby的支持。OpenCV可以在 Windows, Android, Maemo, FreeBSD, OpenBSD, iOS,Linux 和Mac OS等平台上运行。

OpenCV出身:OpenCV是Intel开源计算机视觉库。 其核心由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法。 OpenCV 的特点拥有包括300多个C函数的跨平台的中、高层 API 跨平台:Windows, Linux; 免费(FREE):无论对非商业应用和商业应用;速度快;使用方便。

OpenCV具有以下的特征: (1)开源计算机视觉采用C/C++编写。 (2)使用目的是开发实时应用程序。 (3)独立与操作系统、硬件和图形管理器。 (4)具有通用的图象/视频载入、保存和获取模块。 (5)具有底层和高层的应用开发包。

应用OpenCV能够实现以下功能: (1)对图象数据的操作,包括分配、释放、复制和转换数据。 (2)对图象和视频的输入输出,指文件和摄像头作为输入,图象和视频文件作为输出。 (3)具有对距陈和向量的操作以及线性代数的算法程序,包括距阵、解方程、特征值以及奇异值。 (4)可对各种动态数据结构,如列表、队列、集合、树和图等进行操作。 (5)具有基本的数字图象处理能力,如可进行滤波、边缘检测、角点检测、采样与差值、色彩转换、形态操作、直方图和图象金字塔等操作。

(6)可对各种结构进行分析,包括连接部件分析、轮廓处理、距离变换、各种距的计算、模板匹配、Hongh变换、多边形逼近、直线拟合、椭圆拟合和Delaunay三角划分等。 (7)对摄像头的定标,包括发现与跟踪定标模式、定标、基本矩阵估计、齐次矩阵估计和立体对应。 (8)对运动的分析,如对光流、运动分割和跟踪的分析。 (9)对目标的识别,可采用特征法和隐马尔科夫模型(HMM)法。 (10)具有基本的GUI功能,包括图像与视频显示、键盘和鼠标事件处理及滚动条等。 (11)可对图像进行标注,如对线、二次曲线和多边形进行标注,还可以书写文字(目前之支持中文)。

(三)VisionPro
         VisionPro是美国康耐视Cognex公司提供全套视觉解决方案。VisionPro提供多种开发工具拖放式界面、简单指令码和编程方式等,全面支持所有模式的开发。用户利用VisionPro QuickBuild™可以无需编程配置读取、选择并优化视觉工具,决定产品是否合格。用户也可以利用C++、C#、VB及.NET开发管理应用程序。Vision Pro提供的.NET程序接口允许用户采用面向对象的高级语言编程访问所有工具,以高效开发客户的专用视觉方案。

(四)LabView

         LabView是一种程序开发环境,由美国国 家仪器(NI)公司研制开发,使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。 LabView软件是NI设计平台的核心,也是开发测量或控制系统的理想选择。 LabView开发环境集成了工程师和科学家快速构建各种应用所需的所有工具,旨在帮助工程师和科学家解决问题、提高生产力和不断创新。

三,HSV颜色识别-HSV基本颜色分量范围
一般对颜色空间的图像进行有效处理都是在HSV空间进行的,然后对于基本色中对应的HSV分量需要给定一个严格的范围,下面是通过实验计算的模糊范围(准确的范围在网上都没有给出)。

H:  0 — 180

S:  0 — 255

V:  0 — 255

HSV(色度/饱和度/亮度)颜色空间是表示类似于RGB颜色模型的颜色空间的模型。根据色度通道(Channel)对颜色类型进行建模,因此在需要根据颜色对对象进行分割的图像处理任务中非常有用。饱和度的变化代表颜色成分的多少。亮度通道描述颜色的亮度。机器视觉工业缺陷检测的那些事(四、常用算法与库)_OliverH-yishuihanq的博客-CSDN博客

 项目方案模板,就不要带着具体项目的内容,而是概括性的框架,可以用来指导创建具体视觉项目方案

 

 

 

  • 28
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值