机器视觉基础(1)--工业相机
一:工业相机概述
相机的主要功能是采集图像。早期的相机一般为模拟相机,需要配合图像采集卡使用,通过采集卡将模拟电信号转换成数字电信号,再传送至电脑。随着lEEE1394、GigE、10GigE、USB、Camera Link、 CoaXPress等数字接口技术的发展和普及,模拟相机逐渐被数字相机所取代。数字相机遵从一定的通信协议,能够直接将采集到的模拟信号转成数字信号,已成为机器视觉系统中的主流相机。
二:相机组成与工作原理
(1)CCD传感器
电荷耦合器件(Charge-Coupled Device)是一种半导体成像元器件,能感应光线,并将光信号转换成电信号,具有灵敏度高、体积小、寿命长等优点。在CCD传感器中,光敏像素的电荷发生移位并被转化为信号。像素电荷产生于对半导体的曝光,在许多非常小的移位操作(垂直和水平移位寄存器)的支持下(类似于"斗链"),被传输到中央模数转换器。由芯片的电极所产生的电场推动电荷传输。
(2)CCD相机的工作原理
被摄物体一方的光线经过光学镜头聚焦至CCD芯片上,光电二极管受到光线的激发释放出电荷,CCD控制芯片利用感光元件中的控制信号线路对光电二极管产生的电流进行控制,由电流传输电路输出,CCD会将一次成像产生的电信号收集起来,统一输出到放大器。
在CCD传感器中,每一行中每一个像素的电荷数据都会依次传送到下一行像素中,由最底端部分输出,再经由传感器边缘的放大器进行放大,因此信号的输出一致性好;信号处理电路接收来自CCD 的电信号,并进行采样保持、相关双采样、自动增益控制等预处理, 然后进行视频信号合成,即将CCD输出的电信号转换为所需要的视频格式输出。


(3)CMOS传感器
CMOS是Complementary Metal-Oxide-Semiconductor (互补金属氧化物半导体)的缩写 。它本是计算机系统内一种重要的芯片,保存了系统引导最基本的资料。
CMOS的制造技术和一般计算机芯片没什么差别,主要是利用硅和锗这两种元素所做成的半导体,使其在CMOS上共存着带N(带-电)和 P(带+电)级的半导体,这两个互补效应所产生的电流即可被处理芯片记录和解读成影像。后来发现CMOS经过加工也可以作为数码摄影中的图像传感器,CMOS传感器也可细分为被动式像素传感器(Passive Pixel Sensor CMOS)与主动式像素传感器(Active Pixel Sensor CMOS)。
CMOS技术将图像传感器阵列、驱动和控制电路、信号处理电路、模/数转换器等完全集成在一起,从而提高了CMOS相机的集成度与设计的灵活性。
在CMOS传感器中, 并行于每个像素放置了存储电荷的电容。当每个像素曝光时,这个电容器被光电电流充电。电容器中产生的电压与光源亮度和曝光时间成正比。不同于CCD,因芯片曝光而由电容捕获的电子不会移位到单个输出放大器,而是会通过每个像素自己的关联电子电路直接转化为可测量的电压。然后,这个电压可用于模拟信号处理器。通过使用每像素额外的电子电路,而无需CCD中的电荷移位。
由此,对图像信息的读取速度远高于CCD芯片,且因光晕和拖尾等过度曝光而产生的非自然现象的发生频率要低得多,也可能根本不会发生。
(4)CMOS相机的工作原理
在光电转换这个过程中,CMOS相机的工作流程与CCD相机相似, 都是利用光电二极管进行光电转换。两者的主要差异是图像数据传送的方式不同。在CMOS传感器中,每个像素单元都会集成一个放大器及模/数转换电路,CMOS传感器可以直接输出数字信号,大部分CMOS相机设计直接加DSP处理模块,可对图像数据进行滤波、校正等预处理。


(5)CDD与CMOS传感器对比
1、 成像过程
CCD 与CMOS 图像传感器光电转换的原理相同,他们最主要的差别在于信号的读出过程不同;由于CCD仅有一个(或少数几个)输出节点统一读出,其信号输出的一致性非常好;而CMOS 芯片中,每个像素都有各自的信号放大器,各自进行电荷-电压的转换,其信号输出的一致性较差。但是CCD 为了读出整幅图像信号,要求输出放大器的信号带宽较宽,而在CMOS 芯片中,每个像元中的放大器的带宽要求较低,大大降低了芯片的功耗,这就是CMOS芯片功耗比CCD 要低的主要原因。尽管降低了功耗,但是数以百万的放大器的不一致性却带来了更高的固定噪声,这又是CMOS 相对CCD 的固有劣势。
2、 集成性
从制造工艺的角度看,CCD 中电路和器件是集成在半导体单晶材料商,工艺较复杂,世界上只有少数几家厂商能够生产CCD 晶元,如DALSA、SONY、松下等。CCD 仅能输出模拟电信号,需要后续的地址译码器、模拟转换器、图像信号处理器处理,并且还需要提供三组不同电压的电源同步时钟控制电路,集成度非常低。而CMOS是集成在被称作金属氧化物的版单体材料上,这种工艺与生产数以万计的计算机芯片和存储 设备等半导体集成电路的工艺相同,因此声场CMOS 的成本相对CCD 低很多。同时CMOS 芯片能将图像信号放大器、信号读取电路、A/D 转换电路、图像信号处理器及控制器等集成到一块芯片上,只需一块芯片就可以实现相机的所有基本功能,集成度很高,芯片级相机概念就是从这产生的。随着CMOS 成像技术的不断发展,有越来越多的公司可以提供高品质的CMOS 成像芯片,包括:Micron、 CMOSIS、Cypress等。
3、 速度
CCD 采用逐个光敏输出,只能按照规定的程序输出,速度较慢。CMOS 有多个电荷-电压转换器和行列开关控制,读出速度快很多,目前大部分500fps 以上的高速相机都是CMOS 相机。此外CMOS 的地址选通开关可以随机采样,实现子窗口输出,在仅输出子窗口图像时可以获得更高的速度。
4、噪声
CCD 技术发展较早,比较成熟,采用PN 结或二氧化硅(SiO2)隔离层隔离噪声,成像质量相对CMOS 光电传感器有一定优势。由于CMOS 图像传感器集成度高,各元件、电路之间距离很近,干扰比较严重,噪声对图像质量影响很大。近年,随着CMOS 电路消噪技术的不断发展,为生产高密度优质的CMOS 图像传感器提供了良好的条件。
随着CMOS图像传感器的技术日趋进步,同时具有成像速度快,功耗少,成本低的优势,所以现在市面上的工业相机大部分使用的都是CMOS的图像传感器。

三:相机的分类
(1)按芯片工艺类型
目前市场上的CMOS分为两种结构:前照式(FSI)、背照式(BSI)。

(2)按传感器类型(像素排列方式)

(3)按图像模式

黑白相机直接将光强信号转换成图像灰度值,生成的是灰度图像。
彩色相机Sensor表面覆盖一个红、绿、蓝三色的马赛克滤镜,对输出信号进行算法处理,输出彩色图像数字信号。这个设计理念最初由拜尔(Bayer)先生提出,所以这种滤镜也被称作拜尔滤镜。彩色相机能够提供比黑白相机更多的图像信息。图像深度决定彩色图像的每个像素可能有的颜色数。图像中红、绿、蓝三个颜色通道中每种颜色为N位,总的色彩位数则为3N,色彩深度也就是设备所能上辨析的色彩范围。彩色相机能够提供比黑白相机更多的图像信息。
(4)按信号输出方式

(5)其他分类方式

四:面阵相机的参数及说明
(1)传感器尺寸
即靶面尺寸,小面阵相机以芯片的对角线长度来度量 ; 线阵相机以芯片的横向长度来度量。工业上,面阵相机常用的传感器尺寸如下表(工业图像传感器1"对角线:16mm),实际尺寸略有差异。


(2)像素
像素是图像的最小组成单元。如下图,将原图局部放大,每一小格表示一个像素,其中每一个像素对应一个灰度值。

(3)象元
像元是相机芯片上的最小感光单元,每个像元对应图像上的一个灰度值。
(4)象元尺寸
像元尺寸是相机芯片每个像元的实际物理尺寸,面阵相机常见有:2.4 um、3.2 um、3.45 m、4.5 m、5.5 um、6.9 um、6.9 um等,线阵相机常见有:3.5um、5um、7um、14um等。相同尺寸的芯片,外部光照环境及相机参数设置相同时,像元尺寸越大,接收的光子数量越多,感光性越好,即所成图像越亮。
(5)象元深度
在工业机器视觉中,像素深度(通常也称为“位深度”或“灰度分辨率”)是决定图像质量、数据传输量以及后续处理复杂度的核心参数。
1.核心定义
像素深度是指用于存储每个像素的亮度(灰度值)信息所占用的比特位数。
-
物理意义: 它量化了相机能够分辨的灰阶数量(如果是彩色相机,则是指每个通道的灰阶数量)。
-
单位: 通常用 bit(比特)来表示。
2.灰度级与数据量的关系
像素深度直接决定了图像的对比度分辨率:
- 公式: 灰度级数=2像素深度灰度级数=2像素深度
- 举例:
- 8bit: 28=25628=256 级灰度(0表示黑,255表示白)。
- 10bit: 210=1024210=1024 级灰度。
- 12bit: 212=4096212=4096 级灰度。
重要推论: 深度越深,图像包含的细节信息越丰富,对光照变化的解析能力越强,但同时产生的数据量也越大(例如,同样分辨率下,12bit图像的大小是8bit图像的1.5倍)。
3. 像素深度与动态范围的关系
这是工业相机选型中最重要的关联概念:
- 动态范围 指的是相机能同时捕捉的场景中最亮和最暗部分的比率(通常用dB或倍数表示)。
- 像素深度是动态范围的数字化表现上限: 如果传感器的物理动态范围很高(例如信噪比很高),但输出的像素深度很低(如8bit),那么高动态范围的信息会被截断或丢失,导致图像亮部过曝或暗部死黑。
- 反之: 如果传感器动态范围一般,即使使用12bit或16bit输出,也只能得到放大的噪声。
结论: 高像素深度是为了匹配和承载高动态范围的传感器数据。
4.常见的像素深度标准
工业相机通常支持以下模式:
- 8bit: 通用标准,传输速度快,兼容所有图像处理库(OpenCV, Halcon等),适合光照均匀、对比度高的场景。
- 10bit / 12bit: 常见于科学级CMOS或CCD相机,用于保留微弱信号或高亮区域的细节(如缺陷检测中的轻微划痕、光照不均的校正)。
- 16bit: 通常用于医学成像、天文观测或需要极高量化精度的科研领域。需要注意的是,许多工业相机的16bit实际上是基于12bit或14bit的ADC(模数转换器)数据填充而来。
5.对系统设计的影响(选型考量)
在选择像素深度时,需要权衡以下几个方面:
- 存储与带宽:
- 接口压力: 例如USB3.0的带宽是固定的。如果提高像素深度(如从8bit切换到12bit),在分辨率不变的情况下,帧率可能会下降(因为单位时间内传输的数据量变大了)。
- 存储成本: 长时间采集12bit原始数据需要更大的硬盘空间。
- 处理速度:
- 算法处理16bit图像通常比8bit图像更耗费CPU/GPU资源。如果不需要高精度(例如简单的有无判断),强制转换为8bit可以提升处理速度。
- 图像校正:
- 为了提高最终8bit显示或处理的图像质量,通常会使用12bit采集,在进行完复杂的图像校正(如坏点校正、LUT(查找表)调整、白平衡)后,再通过伽马校正或映射压缩到8bit输出,这样可以保留更多的中间过渡细节。
6.总结
- 像素深度 = 测量亮度的尺子的精细度(尺子上的刻度数量)。
- 高像素深度的优势: 更多的灰度细节、更好的后期处理宽容度(如对比度拉伸)、适合复杂光照环境。
- 高像素深度的代价: 数据量大、传输帧率可能受限、处理速度变慢。
- 选型建议:
- 一般工业检测(如印刷品、有无检测):8bit 足够。
- 低对比度缺陷检测(如划痕、脏污)、光照较差场景、需要精确计量的应用:建议选择 10bit / 12bit 相机。

(6)分辨率 与 单像素精度
在工业机器视觉领域,分辨率通常包含两个层面的含义:一个是相机的传感器分辨率(多少像素),另一个是系统的空间分辨率(实际能看清多小的物体)。理解这两者的关系至关重要。
1.核心定义
- 传感器分辨率: 指相机的传感器芯片上像元(像素)的总数量。
- 表示方式: 通常表示为 水平像素数 ×× 垂直像素数 (如 2448 ×× 2048),或简称总像素值(如 500万像素)。
- 物理结构: 它是由芯片上紧密排列的光敏元件(像元)构成的矩阵。
2.分辨率与像元尺寸的绑定关系
提到分辨率,必须同时考虑像元尺寸(Pixel Size),两者共同决定了相机的物理捕捉能力。
- 规律:
- 高分辨率 + 小像元尺寸: 可以在小尺寸芯片上集成极高像素,适合对空间有限但对细节要求高的场景,但通常弱光性能稍差(进光量少)。
- 低分辨率 + 大像元尺寸: 每个像素感光面积大,灵敏度高,动态范围宽,适合光照不足或需要高信噪比的场景(如低照度监控、荧光成像)。
- 分辨率固定时: 像元尺寸越大,芯片靶面尺寸通常也越大。
3.空间分辨率:实际能看多细?
即一个像素代表现实世界中的多大尺寸(单像素精度)。
- 概念: 也称为光学分辨率或物体分辨率。它由相机分辨率、镜头和物距共同决定。
- 计算公式:
-
- 即:如果你用一个 500万像素(2448 * 2048) 的相机拍摄 100mm 宽的视野,那么每个像素代表的实际宽度约为 100mm/2448≈0.04mm=40μm。
-
重要提醒: 这只是理论像素当量。在机器视觉算法中,要稳定可靠地检测一个缺陷或特征,通常需要该特征覆盖 3~4个像素(甚至更多),而不是1个像素。
4.分辨率对系统设计的影响
-
视野与精度的平衡:
- 需求: 想看清小东西(精度高),但又要看大范围(视野大)。
- 解决方案: 必须提高相机分辨率。如果视野翻倍,要保持精度不变,分辨率需要提升4倍(因为面积是平方关系)。
-
数据处理压力:
- 帧率下降: 在相同接口(如千兆网)下,分辨率越高,传输的数据量越大,相机的最高帧率通常会降低。
- 算法耗时: 处理 1200万像素的图像比处理 200万像素的图像要耗费多得多的CPU/GPU时间和内存。
-
镜头匹配:
- 高分辨率的相机必须搭配高分辨率(高百万像素)的镜头。如果用老旧的低分辨率镜头搭配现代高分辨率相机,图像中心可能还行,但边缘会模糊,无法发挥相机的全部潜力。镜头的分辨率需要用 MTF(调制传递函数) 来衡量。
5.常见的工业相机分辨率分类
- VGA (30万像素, ): 老旧标准,现主要用于非常简单的定位或低速视觉。
- 130万~200万像素 (): 最常用的入门级别,性价比高,处理速度快。
- 500万像素 (): 工业检测中的主流选择,兼顾了视野覆盖和精度。
- 1000万~1200万像素 (): 用于大尺寸面板检测、高端文档扫描、需要大视野高精度的场合。
- 线阵相机分辨率: 对于连续运动的物体(如卷材、印刷品),分辨率通常指线阵相机的线宽(如 2k, 4k, 8k, 16k 像素)。它没有“高度”像素,而是在运动中逐行扫描拼接成二维图像。
6.彩色分辨率:拜耳阵列的影响
彩色工业相机通常只有一个传感器,前面覆盖了拜耳滤色阵列(一个像素只能感知红、绿、蓝中的一种颜色)。
- 实际效果: 虽然传感器分辨率是500万像素,但通过去马赛克算法插值出的彩色图像,其色彩分辨率(色度分辨率) 低于 亮度分辨率。如果对色彩细节要求极高(如检测精细的颜色变化),可能需要考虑3CCD(3片传感器)相机或特殊彩色成像技术。
7.总结
- 传感器分辨率 = 相机有多少个感光点。
- 系统空间分辨率 = 传感器分辨率 × 镜头质量 ×视野/物距的配合。
- 高分辨率的优势: 允许更大的视野(检测更大产品) 或 检测更小的缺陷(替代显微镜或放大镜头)。
- 高分辨率的代价: 数据量大(降帧率、占带宽)、处理慢、需要更贵的镜头、对光源均匀性要求更高。
- 选型建议:
- 大视野大物体: 选高分辨率。
- 极小物体(如芯片内部): 不一定需要极高分辨率相机,而是需要高光学放大倍率的镜头,此时分辨率只要匹配镜头放大的像即可。
- 运动抓拍: 在分辨率和帧率之间找平衡,或使用全局快门传感器。
(7)帧率(针对面阵相机)与行频(针对线阵相机)
这个参数直接决定了相机的采集速度,即单位时间内能拍摄多少张图片,这对于捕捉高速运动的物体至关重要。
1.核心定义
-
帧率(FPS, Frames Per Second):
- 适用对象: 面阵相机。
- 定义: 相机每秒能够采集并传输的完整帧图像数量。单位是 帧/秒 (fps)。
- 物理意义: 可以理解为相机的“抓拍速度”。30fps表示一秒能拍30张照片。
-
行频(Line Rate):
- 适用对象: 线阵相机。
- 定义: 相机每秒能够采集并传输的行数。单位是 千赫兹 (kHz)(即每秒几千行)或 行/秒。
- 物理意义: 对于线阵相机,物体是连续运动的,相机像扫描仪一样逐行扫描。行频决定了扫描速度。例如 80kHz 表示一秒能扫 80000 行。
2.理论最大值的限制因素
相机的标称帧率(如 500万像素下 70fps)通常是在最佳条件下测得的理论最大值。在实际使用中,它受到以下三个硬件的“木桶效应”制约:
A. 传感器读出速度
- 传感器本身有物理极限。像素越多,读出数据所需的时间通常越长。一般来说,分辨率越高,帧率越低。
- 现代传感器通过更先进的架构(如背照式、多通道读出)来提高读出速度。
B. 数据传输接口
这是最常见的瓶颈。
- 公式:
- 单帧数据量: 分辨率 × 像素深度。
- 举例:
- 用 500万像素(500万 Bytes,假设8bit)的相机,通过 千兆网(理论带宽 125MB/s) 传输。
- 理论最大帧率≈125MB/s÷5MB=25fps理论最大帧率≈125MB/s÷5MB=25fps。
- 即使传感器能输出 50fps,由于网口带宽限制,实际也只能跑到 25fps 左右。
C. 曝光时间
这是一个常被忽略的因素。
- 原理: 如果设置的曝光时间过长(例如需要长曝光捕捉微光图像),那么即使传感器和传输带宽都很快,相机也必须等待曝光结束才能开始下一帧。
- 极限: 。如果曝光时间需要 50毫秒,那么帧率必然低于 20fps。
3.帧率与分辨率、像素深度的联动关系
这三个参数是“不可能三角”中的相关方,需要权衡:
- 降低分辨率以提高帧率: 几乎所有工业相机都支持 ROI(感兴趣区域) 功能。如果你只需要看画面的中间一小块,可以只输出这一块的像素,帧率可以大幅提升(因为数据量变小了)。
- 降低像素深度以提高帧率: 将 12bit 输出改为 8bit 输出,单帧数据量减少,在带宽不变的情况下,帧率可以提升(例如从 50fps 提升到 75fps)。
- 合并像素以提高帧率: 某些相机支持 Binning(像素合并) 或 抽点 模式,通过牺牲分辨率来提高灵敏度和帧率。
4.实际应用中的计算(选型重点)
在选型时,帧率/行频必须满足产线的运动速度要求。
面阵相机场景:
- 需求: 物体在运动,需要在运动模糊可接受的范围内抓拍。
- 公式: 需要确保在相机采集的瞬间,物体移动距离小于一个像素代表的实际尺寸(或允许的模糊范围)。
- 通常需要帧率远高于被抓拍物体的运动速度/频率。
线阵相机场景(需要精确计算):
-
需求: 物体以速度 VV(米/秒)运动,你要在运动方向上达到精度 AA(米/像素)。
-
公式: 。
-
举例:
- 物体运动速度 V=1V=1 米/秒(1000 mm/s)。
- 运动方向精度要求 A=0.1A=0.1 毫米/像素。
- 所需行频=1000mm/s÷0.1mm=10000行/秒=10kHz所需行频=1000mm/s÷0.1mm=10000行/秒=10kHz。
- 选用的线阵相机行频必须大于等于 10kHz,且要留有余量。
5.对系统设计的影响
- 触发与同步: 高帧率下,相机通常处于连续采集模式或外部触发模式。需要确保触发信号(如编码器信号)足够快且无抖动,否则会造成丢帧或图像变形(对于线阵尤其重要)。
- 光源频闪: 如果帧率很高(如 1000fps),光源必须工作在频闪模式,且光源控制器必须支持极短的脉宽和足够高的触发频率,否则光源亮度会跟不上或直接烧坏(如果是常亮高功率)。
- 处理器压力: 高帧率意味着单位时间内涌入电脑的图像数据量巨大,对CPU/GPU的实时处理能力、硬盘的写入速度(RAID(磁盘阵列)或多块SSD)都是考验。
6.总结
- 帧率(面阵) = 每秒能拍多少张完整照片。
- 行频(线阵) = 每秒能扫多少行像素。
- 物理上限公式: 实际达到的帧率受限于 传感器能力、接口带宽、曝光时间 这三者中最慢的那个环节。
- 系统匹配: 高帧率需要配合高速镜头(进光量足)、高速光源(频闪)、高速处理平台,否则高帧率相机无法发挥效用。
- 选型建议:
- 静止或慢速物体检测: 普通帧率(30fps-60fps)即可,重点考虑分辨率和画质。
- 高速在线检测(如飞拍): 需要高帧率(如 100fps+),并配合 ROI 缩小视野来换取速度,或者选择线阵相机。
- 连续运动物体(卷材/印刷): 必须用线阵相机,并根据产线速度 VV 和所需精度 AA 精确计算所需的最小行频。
(8)增益
增益是控制图像亮度的三大手段之一(另外两个是曝光时间和光圈),但它是一把“双刃剑”:提高增益可以增亮图像,但也会放大噪声。
1.核心定义
- 定义: 增益是指对相机传感器输出的电信号(电压)进行放大的过程。它本质上是一个电子放大器。
- 作用: 当物理进光量不足(曝光时间已达上限、光圈已最大)导致图像太暗时,通过增益可以电子性地提高图像的亮度。
- 单位:
- 倍数(dB,分贝): 工业相机通常用 dB 表示。计算公式为 。例如,6dB 对应 2倍放大,20dB 对应 10倍放大。
- 模拟增益与数字增益: 某些相机区分这两者,模拟增益是在信号数字化之前放大,数字增益是在数字化之后通过算法调整。
2.增益的类型:模拟增益 vs. 数字增益
理解两者的区别对于优化图像质量至关重要。
A. 模拟增益
- 发生位置: 在传感器的模拟信号通过 ADC(模数转换器)之前。
- 原理: 直接放大从光电二极管收集到的原始电荷转换成的电压。
- 特点:
- 信噪比影响较小: 虽然它也放大了噪声,但因为是信号链前端的放大,信号和噪声被一起放大,信号被放大的同时,后续电路引入的固定噪声(读噪声)相对影响变小。
- 通常更优质: 是首选的增益方式,能更好地保留图像细节。
B. 数字增益
- 发生位置: 在信号已经数字化(变成数字值)之后。
- 原理: 对数字图像进行乘法运算(例如每个像素值乘以1.5)。
- 特点:
- 信噪比恶化明显: 它会把数字化时产生的量化噪声和已有的噪声同样放大,但不会增强任何实际信号细节。
- 可能导致灰阶丢失: 比如将 8bit 图像做数字增益,原本 0-255 的灰度范围会被拉伸,导致某些灰度级出现断层,图像出现“伪轮廓”。
总结: 在需要提升亮度时,应优先使用模拟增益;只有模拟增益用尽后,才考虑数字增益,或者后期在软件中调整亮度。
3.增益与噪声、动态范围的关系
这是增益最核心的权衡点:
-
提高增益 = 提高亮度 + 提高噪声:
- 增益放大器本身是有源器件,在放大信号的同时,不可避免地会放大传感器自身的暗电流噪声、读出噪声等。
- 结果是图像变亮了,但画质变粗糙了,信噪比(SNR)下降。
-
对动态范围的影响:
- 动态范围 = 饱和信号 / 噪声底。
- 提高增益时,噪声底被抬高,虽然饱和信号可能不变(如果未饱和),但比值减小,因此动态范围降低。高增益下,图像亮部容易过曝,暗部噪声明显。
-
增益与“曝光三角”的平衡:
- 曝光时间: 优先增加曝光时间(只要物体静止或运动模糊可接受),因为这不引入额外噪声。
- 光圈: 其次加大光圈(F值减小),但可能影响景深。
- 增益: 最后才提高增益(当曝光时间和光圈都无法再调整时)。
4.自动增益控制(AGC)
- 定义: 相机根据场景亮度自动调整增益的功能。
- 应用场景: 光照条件不稳定的环境(如户外)、或者需要快速部署无需手动调试的场合。
- 工业应用中的注意点:
- 尽量关闭: 在精确的机器视觉检测中,通常建议关闭 AGC,使用手动固定增益。因为 AGC 会导致图像亮度忽明忽暗,影响后续阈值分割、特征提取的稳定性。
- 如果必须用: 需要设置合理的增益上限,防止因过度增益导致图像噪声过大。
5.对系统设计的影响
- 图像处理: 高增益带来的高噪声需要进行额外的降噪处理(如滤波),这会增加算法的复杂度和耗时。
- 照明设计: 如果系统设计过度依赖增益来提亮,说明光源亮度不足或曝光时间不够。合理的设计应该是:提供足够强的光源,使相机能在低增益(甚至 0dB)下获得清晰图像,从而保证最佳信噪比。
- 彩色相机的影响: 增益还会影响色彩还原。不同颜色通道的增益可能需要独立调整(即白平衡的一部分)。过高的增益会导致色彩噪声(彩噪)非常明显。
6.常见工业相机的增益范围
- 通常工业相机的增益范围在 0dB 到 48dB 之间(具体取决于传感器和型号)。
- 0dB: 信号未经放大,直接输出,信噪比最佳。
- 中低增益(6dB - 12dB): 轻微放大,噪声尚可接受,用于补充微小光线不足。
- 高增益(>20dB): 图像亮度显著提升,但噪点明显,仅用于对画质要求不高的场合或仅仅是预览。
7.总结
- 增益的本质 = 电子信号放大器。
- 作用 = 在进光量不足时“强行”提亮图像。
- 代价 = 放大噪声、降低动态范围、降低图像信噪比。
- 使用原则:
- 优先物理手段: 先加光、加曝光时间、开大光圈。
- 优选模拟增益: 如果必须加增益,先加模拟增益,后加数字增益。
- 固定手动: 在机器视觉应用中,尽量使用手动固定增益,避免 AGC 导致的不一致性。
- 留有余量: 在选型计算时,应假设在最低环境光下,使用中低增益(如 <12dB)也能达到所需亮度,而不是依赖高增益去弥补光源设计的不足。
(9)曝光时间/曝光方式
这两个参数决定了相机何时开始捕捉光线以及捕捉多长时间的光线,直接影响图像的亮度、清晰度以及对运动物体的还原能力。
1.核心定义
-
曝光时间(也称快门速度或积分时间):
- 定义: 相机传感器上的感光单元从复位清零到停止感光所经历的时间长度。在这段时间内,像素持续收集光子并将其转换为电荷。
- 单位: 通常用 微秒(μsμs)、毫秒(ms) 或 秒(s) 表示。
- 物理意义: 曝光时间越长,进入传感器的光能量越多,图像越亮;反之越暗。
-
曝光方式(快门类型):
- 定义: 传感器控制所有像素开始和结束曝光的时序机制。
- 主要分类: 全局快门 与 卷帘快门。
2.曝光方式的分类与对比
A. 全局快门
- 工作原理: 所有像素在同一时刻开始感光,并在同一时刻结束感光。曝光结束后,电荷被立即转移到像素旁的存储区域,然后逐行读出。
- 特点:
- 优点: 拍摄高速运动物体时,图像不会发生几何变形(无“果冻效应”)。能够配合极短的曝光时间(如微秒级)冻结运动。
- 缺点: 像素设计复杂,每个像素需要额外的存储单元,导致满阱容量相对较小,噪声略高,成本也较高。
- 适用场景: 高速运动物体抓拍(如飞拍定位、运动中的缺陷检测)、需要精确计量的场合。
B. 卷帘快门
- 工作原理: 像素逐行进行曝光。第一行开始曝光,稍后第一行结束并开始读出,同时第二行开始曝光,依次类推。整个图像的曝光存在时间差。
- 特点:
- 优点: 像素结构简单,满阱容量可以做得更大,噪声通常更低,成本也较低。在光照充足、静止场景下图像质量优异。
- 缺点: 拍摄高速运动物体时,由于各行曝光时刻不同,会导致图像出现倾斜、拉伸或部分曝光等变形(即“果冻效应”)。另外,在使用频闪光源时,如果脉冲与曝光行不匹配,可能导致图像亮度不均。
- 适用场景: 静止物体检测、低噪声需求(如科研、荧光)、对成本敏感的场合。
工业选型铁律: 如果物体在成像过程中有明显的相对运动,必须选择全局快门相机。
3.曝光时间对图像质量的影响
曝光时间的选择是图像亮度与清晰度之间的权衡:
- 曝光不足: 时间过短,光子收集不足,图像偏暗,信噪比低,暗部噪声明显。
- 曝光过度: 时间过长,像素饱和(电荷溢满),图像亮部全白(过曝),丢失细节。
- 运动模糊: 在曝光时间内,如果物体在传感器上的投影移动了超过一个像素的距离,图像就会产生拖影或模糊。运动模糊量 = 物体运动速度 × 光学放大倍率 × 曝光时间。
- 准则: 为了得到清晰图像,通常需要控制运动模糊小于 0.5 个像素
4.曝光时间与系统参数的关联
- 与帧率的关系:
- 公式:
- 影响: 如果曝光时间过长,即使传感器和接口带宽支持高速传输,实际帧率也会被曝光时间锁死。
- 与增益的关系:
- 互补关系: 在光圈固定时,为了达到目标亮度,如果曝光时间受限于运动模糊不能延长,就必须提高增益。这会在增亮的同时放大噪声。
- 与光源的关系:
- 连续光: 曝光时间内光源一直点亮,适合长曝光。
- 频闪光: 配合极短曝光时间(如 <100 μsμs)时,需要光源在曝光瞬间提供极高亮度的脉冲光,以“冻结”运动并保证亮度。
- 与触发信号的关系:
- 在外部触发模式下,触发信号的上升沿(或下降沿)通常控制曝光的开始。曝光时间可能由相机的预设值决定,也可能由触发信号的脉宽控制(脉宽控制曝光)。
5.曝光控制方式
- 手动曝光: 用户固定设置曝光时间。工业应用中最常用,保证时序一致性和可重复性。
- 自动曝光(AE): 相机根据场景亮度自动调整曝光时间。在光照变化环境中有用,但在精密检测中应慎用,以免图像亮度波动影响算法稳定性。
- 外部触发控制曝光:
- 边沿触发模式: 触发信号到来后,相机按预设的曝光时间进行曝光。
- 脉宽控制模式: 曝光时间等于触发信号的脉冲宽度。这种方式可以灵活地与外部编码器信号同步,实现“变速度下的恒定空间分辨率”。
6.特殊概念:电子快门与全局复位
- 电子快门: 工业相机基本都是电子快门,通过电路控制像素的复位和读出,没有机械叶片。
- 全局复位: 即使在使用卷帘快门的相机中,也可以实现一种伪全局曝光:通过一个信号让所有像素同时复位,但曝光结束仍按行顺序进行。这种方式可以减少某些情况下的变形,但不能完全消除。
7.总结
| 参数 | 核心要点 | 选型/使用建议 |
|---|---|---|
| 曝光时间 | 决定图像亮度和运动模糊的“光积分时长”。 | 在允许运动模糊的范围内尽量长(以提高信噪比);若需冻结高速运动,则必须短(微秒级)。 |
| 全局快门 | 所有像素同时曝光,无变形,适合高速抓拍。 | 运动物体必选。注意传感器噪声略高,满阱较小。 |
| 卷帘快门 | 逐行曝光,成本低、噪声小,但有果冻效应。 | 只适用于静止或极慢运动物体,或配合频闪光源且物体运动可忽略。 |
| 自动/手动 | 手动保证稳定性,自动适应光照变化。 | 机器视觉首选手动;自动曝光需谨慎使用,最好设置曝光范围限制。 |
| 运动模糊控制 | 物体在曝光时间内移动不超过半个像素。 | 根据物体速度和精度要求,反推最大允许曝光时间。 |
- 终极权衡: 在运动场景中,必须平衡足够的亮度(需要长曝光)和清晰的边缘(需要短曝光)。如果无法通过增加光源或开大光圈来解决,只能接受一定的增益噪声或选用更灵敏的传感器。
(10) 伽马矫正
伽马矫正起源于显示设备的非线性特性,在现代工业相机中作为一项重要的图像预处理功能,用于调整图像的灰度分布,从而影响视觉效果或后续处理的准确性。
1.核心定义
- 伽马(γ): 描述输入信号(如相机捕捉的亮度)与输出信号(如显示器的亮度)之间关系的幂律指数。数学形式为:。
- 伽马矫正: 对图像灰度值进行的非线性变换,目的是补偿显示设备的非线性响应,或根据人眼视觉特性调整图像的对比度分布。
- 本质: 它改变了图像灰度级的映射关系,使原本线性的光电转换关系变得非线性。
2.来源与原理
- 历史起源: 阴极射线管(CRT)显示器的亮度与输入电压之间呈指数关系(通常 γ ≈ 2.2)。为了在显示器上正确还原图像,需要在发送图像前进行逆矫正(即乘以 1/2.2 ≈ 0.45)。
- 人眼特性: 人眼对暗部的变化更敏感,对亮部的变化较迟钝。通过伽马矫正,可以在有限的比特深度内更有效地分配灰度级,使暗部细节得到更多区分。
- 数学关系:
- γ<1: 图像整体变亮,尤其是暗部被拉伸,对比度提升。
- γ=1: 线性关系,图像不变。
- γ>1: 图像整体变暗,暗部被压缩,亮部拉伸,对比度增强(但暗部细节可能丢失)。
3.在工业相机中的表现形式
工业相机通常内置伽马矫正功能,作为图像信号处理(ISP)的一部分。常见选项包括:
- 关闭(γ=1): 输出原始线性数据。
- 预设值(如 γ=0.45): 这是相机端常见的矫正值,目的是使图像在标准显示器(γ=2.2)上呈现线性视觉效果。
- 可调范围(如 0.1 ~ 5.0): 允许用户自定义伽马值,以调整图像对比度。
4.对图像质量与视觉的影响
| 伽马值 | 视觉效果 | 应用场景 |
|---|---|---|
| γ < 1 | 图像变亮,暗部细节更明显,对比度降低(整体偏灰) | 低光照场景、需要突出暗部细节的预览 |
| γ = 1 | 无变化,保持线性原始数据 | 定量测量、高精度算法、需要真实亮度信息的场合 |
| γ > 1 | 图像变暗,亮部对比度增强,暗部更暗 | 高对比度场景、改善图像“发雾”感、增强视觉冲击 |
5.对机器视觉算法的影响
伽马矫正是一把双刃剑,在使用时必须谨慎:
-
非线性带来的问题:
- 灰度测量失真: 如果开启了伽马矫正,图像的灰度值不再与场景亮度成正比。对于需要精确亮度测量的应用(如色选、光度立体、3D重建),必须使用 γ=1 的线性图像。
- 阈值分割偏差: 非线性的灰度分布可能导致基于固定阈值的分割不稳定,因为暗部和亮部的相对距离被改变了。
- 颜色还原: 彩色相机的每个通道都经过伽马矫正,会影响色彩的真实性。若需精确颜色测量,应关闭伽马并配合线性色彩校正。
-
好处:
- 增强对比度: 在某些缺陷检测中,适当的伽马矫正(γ<1)可以使原本不明显的暗部缺陷变得更明显,便于肉眼观察或算法提取。
- 压缩动态范围: 对于高动态范围场景,通过 γ<1 的矫正可以将亮度范围压缩到有限的灰度级内,避免饱和。
6.与像素深度的关系
- 伽马矫正通常在图像数字化之后进行(即 8bit、12bit 数据)。
- 需要注意: 伽马矫正是一种非线性映射,它可能会改变灰度级的分布,导致某些灰度级合并(尤其是暗部),从而降低了有效灰度级数。例如,12bit 线性数据经过 γ=0.45 矫正并量化到 8bit 后,暗部可能保留了更多细节,但亮部细节可能因压缩而损失。
7.工业应用中的使用建议
- 定量分析场景(尺寸测量、表面缺陷检测、颜色分析):
- 建议关闭伽马矫正(设置 γ=1),使用原始线性数据进行算法处理。如果最终需要显示,可以在显示时进行伽马矫正,而不影响原始数据。
- 人工目检/监控场景:
- 可以开启伽马矫正,并设置为合适的值(如 γ=0.45),使图像在显示器上看起来自然、舒适,便于操作员观察。
- 作为图像增强工具:
- 如果算法需要增强特定区域的对比度,可以适当调整伽马值。但务必注意这可能会改变图像的绝对灰度值,需根据具体需求评估。
- 与增益、曝光的配合:
- 伽马矫正通常在增益、曝光之后进行。在低光照、高增益情况下,伽马矫正可能会放大暗部噪声,需配合降噪处理。
8.总结
- 伽马矫正的本质: 一种非线性灰度映射,用于调整图像的亮度和对比度分布。
- 主要作用: 补偿显示设备非线性、适应人眼视觉特性、改善图像观感或增强特定区域的对比度。
- 工业视觉中的关键点:
- 测量必须线性: 对于需要基于亮度进行精确测量的应用,必须关闭伽马(γ=1),使用原始线性数据。
- 显示可调: 仅用于显示或人工观察时,可以启用适当的伽马矫正。
- 注意非线性影响: 伽马矫正会改变灰度间的相对关系,影响阈值、特征提取等算法的稳定性。
理解并合理运用伽马矫正,能够帮助你在工业成像中平衡视觉效果与算法精度之间的关系。
(11)动态范围
动态范围决定了相机能否在同一幅图像中同时呈现极亮和极暗区域的细节,是评估传感器性能的关键参数之一。
1.核心定义
- 定义: 动态范围是指相机传感器能同时探测到的最大非饱和信号与最小可探测信号(即噪声底)之比。
- 数学表达:
(单位:dB)
或者用倍数/比特表示。 - 物理意义: 它描述了传感器能够容纳的场景亮度反差大小。动态范围越高,传感器在亮部不过曝、暗部不淹没在噪声中的能力越强。
2.物理构成
动态范围由传感器的物理特性和读出电路决定:
- 饱和容量(Full Well Capacity): 每个像素能容纳的最大电子数。容量越大,能捕捉的强光信号越强。
- 噪声底(Noise Floor): 无光照时传感器输出的噪声水平(主要是读出噪声和暗噪声)。噪声底越低,能探测的微弱信号越弱。
推论: 动态范围 = 满阱容量(dB) - 噪声底(dB)。提高满阱容量或降低读出噪声都可以提升动态范围。
3.影响因素
- 像元尺寸: 通常,像元越大,满阱容量越大,动态范围越高。小像元虽然分辨率高,但满阱小,动态范围受限。
- 增益: 增益提高时,信号和噪声被同时放大,但通常噪声底增加得更明显,因此动态范围随增益升高而降低。
- 曝光时间: 长曝光会增加暗噪声和热噪声,可能抬高噪声底,从而降低动态范围(尤其是未制冷的传感器)。
- 传感器技术: 科学级sCMOS或CCD通常采用低噪声读出和大阱深设计,动态范围可达 90dB 以上;普通工业CMOS通常在 60-70dB 左右。
4.动态范围与像素深度的关系
这是最容易混淆的概念,需要明确区分:
- 动态范围是传感器的物理能力,反映了它能捕捉的真实亮度范围。
- 像素深度是ADC量化后的数字表示精度,决定了能用多少级灰度去描述这个范围。
- 匹配原则: 像素深度必须足够大,才能完整量化传感器的动态范围。例如,一个 70dB 的动态范围(约 3162 倍),需要至少 bit,即 12bit 的像素深度才能不丢失信息。如果用 8bit 输出,则会将高动态范围压缩到 256 级灰度中,导致亮部或暗部细节丢失。
5.对机器视觉系统的影响
- 高动态范围的优势:
- 适应复杂光照: 例如同时拍摄金属高光面和黑色橡胶件,能同时保留两者的纹理细节。
- 减少打光难度: 无需复杂的多角度光源来平衡亮度差,简化照明设计。
- 提升测量精度: 边缘检测更准确,因为不会因过曝或欠曝导致边缘偏移。
- 低动态范围的局限:
- 容易过曝/欠曝: 场景中若有高反光区域或阴影,细节会丢失。
- 需要HDR技术: 需采用多帧合成(如多次曝光)来扩展动态范围,但这会降低帧率且不适合运动物体。
6.高动态范围(HDR)技术
当单次曝光无法覆盖场景亮度范围时,可使用HDR技术:
- 多次曝光合成: 连续采集多帧不同曝光时间的图像,将亮部来自短曝光、暗部来自长曝光的区域融合成一幅宽动态图像。缺点是帧率低,且只适合静止物体。
- 多增益/线性度: 一些传感器内置多重增益路径,同时输出高增益(暗部)和低增益(亮部)信号,实时合成高动态图像。
- 对数响应传感器: 少数传感器具有对数响应特性,天生具有超高动态范围(>120dB),但线性度差,不适合精确光度测量。
7.常见数值参考
| 应用领域 | 典型动态范围 | 说明 |
|---|---|---|
| 普通工业检测 | 60 - 70 dB | 一般CMOS相机,适合常规光照场景 |
| 高端工业/交通 | 70 - 80 dB | 带HDR功能的CMOS,可应对逆光、强反光 |
| 科学级/sCMOS | 80 - 95 dB | 低噪声、大阱深,用于科研、荧光成像 |
| 人眼视觉 | 约 100 dB | 人眼能适应极大亮度范围,但单次无法同时覆盖 |
| 对数CMOS | >120 dB | 特殊传感器,用于极端光照如车载、安防 |
8.总结
- 动态范围 = 传感器能捕获的最亮与最暗之比。
- 它与像素深度无关,但需用足够比特深度来量化。
- 高动态范围带来的好处: 更丰富的明暗细节、更强的环境适应性、更少的打光要求。
- 选型建议:
- 如果场景亮度均匀(如背光测量),普通动态范围即可。
- 如果场景同时包含高反光和暗部细节(如PCB检测、金属表面),应优先选择高动态范围相机,并确保像素深度 ≥ 12bit。
- 若需HDR,注意运动物体只能使用单次曝光的HDR技术(如多增益读出),而非多次曝光合成。
理解动态范围有助于你在面对复杂光照场景时,选择能真正捕捉到所需细节的相机,避免因动态不足导致的缺陷漏检。
(12)噪声
噪声是图像质量的“天敌”,它限制了相机的实际性能,尤其是在弱光或高增益环境下。理解噪声的来源和特性,对于优化成像系统和提高检测稳定性至关重要。
1.核心定义
- 定义: 噪声是指图像中不必要的随机波动,即实际采集到的灰度值与理想无噪声信号之间的偏差。它是传感器光电转换和读出过程中不可避免的物理现象。
- 本质: 噪声是随机信号,通常用其统计特性(如均方根值、标准差)来衡量。它叠加在真实图像上,降低图像的清晰度和信息质量。
- 信噪比(SNR, Signal-to-Noise Ratio): 衡量信号强度与噪声强度的比值,是评价图像质量的核心指标。dB。信噪比越高,图像越干净。
2.噪声的主要分类与来源
根据产生机制和表现形式,工业相机噪声可分为以下几类:
A. 光子散粒噪声
- 来源: 光的量子特性。光子在时间上和空间上随机到达传感器,导致即使均匀光照下,每个像素收集的光子数也有统计涨落。
- 特性: 服从泊松分布。其标准差等于信号电子数的平方根()。
- 特点: 无法消除,是物理极限。信号越强,散粒噪声的绝对值越大,但相对值(噪声/信号)反而减小。因此,在光照充足时,信噪比主要由散粒噪声决定。
B. 读出噪声
- 来源: 将像素中的电荷转换为电压并数字化过程中,由读出电路(放大器、模数转换器等)引入的噪声。
- 特性: 与信号强度无关,即使在完全黑暗(无光照)下也存在。它决定了传感器的噪声底。
- 组成: 包括复位噪声、源跟随器噪声、量化噪声等。现代科学级传感器通过低噪声设计,可将读出噪声降至极低水平(1-2个电子甚至更低)。
C. 暗噪声(暗电流噪声)
- 来源: 传感器本身的热运动产生电子-空穴对,即使无光照也会积累电荷,即暗电流。暗电流本身不是噪声,但其随机涨落(暗电流散粒噪声)成为噪声。
- 特性: 与曝光时间和温度强相关。曝光时间越长、温度越高,暗噪声越严重。通常每升高 6-8°C,暗电流翻倍。
- 抑制: 通过制冷(如科研级相机使用半导体制冷)可大幅降低暗噪声。
D. 固定模式噪声
- 来源: 传感器制造工艺的不一致性导致每个像素对光的响应略有差异(光响应非均匀性,PRNU)以及暗电流的差异(暗信号非均匀性,DSNU)。
- 特性: 空间固定,不随时间变化(或变化缓慢),表现为图像上的固定图案(如条纹、网格)。CMOS传感器通常比CCD更明显。
- 校正: 可以通过平场校正(两点校正)来消除。即采集一张均匀光照的亮场图像和一张暗场图像,通过像素级校准来补偿差异。
E. 其他噪声
- 量化噪声: 模数转换(ADC)过程中,由于有限比特位导致的舍入误差。增加像素深度可降低相对量化噪声。
- 随机电报噪声: 某些CMOS工艺中出现的随机跳动噪声,表现为像素值在两个或多个电平间随机跳变。
3.噪声对图像质量与系统性能的影响
- 降低对比度与细节: 噪声掩盖了微弱的真实信号,使原本可见的缺陷(如细微划痕)变得难以分辨。
- 干扰阈值分割: 噪声导致灰度值波动,使固定阈值分割不稳定,产生误检(将噪声误认为缺陷)或漏检。
- 影响测量精度: 边缘定位时,噪声会使边缘抖动,降低尺寸测量的重复性和精度。
- 限制动态范围: 噪声底越高,能探测到的最小信号越强,动态范围的下限被抬高,导致动态范围变窄。
- 压缩可用增益范围: 噪声大的相机,提高增益后图像迅速劣化,限制了在弱光下的使用。
4.噪声与相关参数的关联
- 增益: 增益同时放大信号和噪声。尤其是读出噪声和暗噪声会被成倍放大,导致信噪比恶化。因此,应尽可能在低增益下成像。
- 曝光时间: 长曝光会积累暗噪声,降低信噪比。对于需要长曝光的应用,必须考虑传感器制冷或选择暗电流极低的传感器。
- 温度: 温度是暗噪声的关键因素。工业现场环境温度高,可能使相机内部升温,导致噪声显著增加。一些高端相机内置温度传感器和制冷功能。
- 像素尺寸: 通常,大像元的满阱容量大,收集的光子多,光子散粒噪声的相对值小;同时,大像元的读出噪声往往也能设计得更低。因此,大像元相机的信噪比通常优于小像元高分辨率相机。
5.噪声的评估与抑制方法
评估指标:
- 信噪比(SNR): 直接反映图像质量。
- 绝对灵敏度阈值(AST): 最低可探测信号。
- 暗噪声(e-, 电子数): 以电子数为单位的读出噪声,便于比较不同像素尺寸的传感器。
- 动态范围: 实际是满阱容量与噪声底的比值,受噪声直接影响。
抑制方法(从硬件到软件):
-
硬件层面:
- 选用低噪声传感器: 科学级或高端工业传感器采用低噪声设计。
- 传感器制冷: 大幅降低暗电流。
- 优化电路设计: 减少电磁干扰,良好的电源滤波。
- 足够的光源: 最有效的降噪方法是提供充足的光照,使光子散粒噪声成为主导,而其他噪声相对变小。信噪比随光照强度的平方根增加。
-
相机设置层面:
- 关闭不必要的数字增益: 尽量使用模拟增益或提高曝光时间。
- 开启降噪功能: 许多相机内置空间降噪或时域降噪,但要注意可能平滑掉细节。
- 使用相关双采样(CDS): 大多数CMOS和CCD都采用CDS技术消除复位噪声。
-
图像处理层面:
- 空间滤波: 中值滤波、高斯滤波等可以平滑噪声,但可能模糊边缘。
- 时域平均: 对静止场景采集多帧图像取平均,可有效降低随机噪声,但会降低帧率。
- 频域滤波: 利用噪声与信号的频率差异进行分离。
- 平场校正: 消除固定模式噪声。
6.工业应用中的实践建议
- 优先保证光照: 在系统设计时,应确保足够强的光源,使相机能在较低增益和适中曝光时间下获得良好信噪比。这是最根本的降噪方法。
- 关注环境温度: 如果现场环境温度高且需长曝光,应考虑带制冷的相机或加装散热措施。
- 评估噪声对检测的影响: 在选型阶段,应测试相机在目标光照条件下的实际噪声水平(通过采集暗场和均匀场),评估是否满足检测灵敏度要求。
- 权衡分辨率与噪声: 对于弱光应用,可能需要牺牲分辨率(选择大像元相机)来换取更高的信噪比。
- 算法适应性: 设计算法时,应考虑噪声的统计特性,采用鲁棒的阈值和特征提取方法,避免被噪声干扰。
7.总结
- 噪声的本质: 物理世界的随机波动和电子电路的固有瑕疵,无法消除,只能抑制。
- 主要类型: 光子散粒噪声(物理极限)、读出噪声(电路底噪)、暗噪声(热效应)、固定模式噪声(工艺差异)。
- 关键关系:
- 高增益 → 噪声放大 → 信噪比下降。
- 长曝光/高温 → 暗噪声增加 → 信噪比下降。
- 充足光照 → 光子信号主导 → 相对噪声减小 → 信噪比提升。
- 降噪策略: 硬件设计为主,相机设置为辅,图像处理为补充。 其中,提供足够的光照是最有效、最经济的手段。
- 选型启示: 在弱光、高增益、长曝光或高温环境下,必须仔细评估相机的噪声性能(尤其是读出噪声和暗电流),选择适合的传感器技术(如科学级CMOS、制冷CCD),并预留足够的信噪比余量。
(13)像素格式
像素格式决定了每个像素的数据如何表示和存储,直接影响图像的色彩还原、数据量大小以及后续处理的复杂度。
1.核心定义
- 定义: 像素格式定义了相机输出的每个像素所包含的颜色信息及其在内存中的数据结构。
- 包含信息:
- 颜色空间: 是单色(Mono)还是彩色(RGB、YUV等)。
- 像素深度: 每个通道用多少比特表示(如8bit、10bit、12bit)。
- 像素排列: 彩色像素的通道顺序(如RGB、BGR)或拜耳模式(如RGGB、BGGR)。
- 作用: 它规定了图像数据从相机传输到主机后的解释方式,只有正确解析像素格式,才能还原出正确的图像。
2.常见像素格式分类
A. 单色格式(Mono)
- Mono8: 每个像素占8位(1字节),灰度级0-255。最常用,兼容性好,带宽占用低。
- Mono10 / Mono12: 每个像素占10位或12位,通常用16位(2字节)存储(高位对齐或低位对齐)。用于高精度灰度测量。
- Mono16: 每个像素占16位,通常用于深度图或原始传感器数据(如12bit数据填充到16bit)。
B. 拜尔格式(Bayer)
-
定义: 彩色相机传感器表面覆盖了彩色滤光片阵列(最常见的是拜耳阵列),每个像素只能感应红、绿、蓝中的一种颜色。相机直接输出这种原始数据,即拜耳格式。
-
命名规则: 拜耳格式 + 像素深度 + 颜色顺序。例如:
-
BayerRG8: 拜耳阵列,第一行红绿交替,第二行绿蓝交替,每个颜色8bit。
-
BayerGB12: 第一行绿蓝,第二行蓝绿?实际上常见顺序有 RG、GB、BG、GR。需要根据相机手册确定。
-
特点: 数据量小(与Mono相同),但需要经过**去马赛克(Debayer)**插值算法才能变成彩色图像,会消耗CPU/GPU资源,且可能引入伪彩色。
-
C. RGB格式
- 定义: 经过插值和色彩校正后,每个像素包含完整的红、绿、蓝三个通道的信息。
- RGB8: 每个通道8bit,每个像素3字节(24bit)。色彩丰富,但数据量大。
- RGB10 / RGB12 / RGB16: 高位深RGB,用于专业级色彩处理。
- 打包格式: 如 RGB565(R-5bit,G-6bit,B-5bit,共16bit),常用于嵌入式系统,节省带宽。
D. YUV / YCbCr 格式
- 定义: 将亮度(Y)和色度(U、V)分离的编码方式。人眼对亮度更敏感,因此可以对色度进行压缩(色度采样),减少数据量。
- 常见子格式:
- YUV422: 每两个像素共享一对UV分量,数据量比RGB8减少1/3。
- YUV411、YUV444等。
- 应用: 视频传输、监控等领域常见,工业相机中较少直接用于检测(因其有损压缩性质),但用于预览或视频流。
E. 其他特殊格式
- BGR 格式: RGB的变种,通道顺序为蓝、绿、红。某些图像库(如OpenCV默认BGR)使用此顺序。
- RGBA / BGRA: 增加了Alpha通道(透明度),通常占4字节,用于图形叠加。
- JPEG / H.264 压缩格式: 部分工业相机支持板载压缩,直接输出压缩码流,极大降低带宽,但可能损失细节,不适合高精度测量。
3.像素格式与色彩信息的关系
| 格式类型 | 色彩信息 | 是否需要处理 | 数据量 | 适用场景 |
|---|---|---|---|---|
| Mono | 亮度 | 无需 | 小 | 黑白检测、尺寸测量、OCR |
| Bayer | 原始彩色 | 需Debayer | 中 | 需要彩色的原始数据,希望自己控制插值算法 |
| RGB | 全彩 | 无需 | 大 | 直接获取彩色图像,色彩要求高,可接受大带宽 |
| YUV | 压缩彩色 | 需转换 | 中 | 视频监控、传输带宽受限 |
4.与像素深度、数据量的关系
-
数据量公式: 图像大小=宽度×高度×像素格式的字节数
- Mono8:1 字节/像素
- Bayer8:1 字节/像素
- Mono12(打包格式,如12-bit packed)可能每两个像素占3字节,平均1.5字节/像素;若是Mono12 unpacked(16bit),则2字节/像素。
- RGB8:3 字节/像素
- RGB10:如果每个通道16bit对齐,则6字节/像素;如果打包则可能5字节?具体看标准。
-
对帧率的影响: 在相同接口带宽下,像素格式的数据量越大,能达到的帧率越低。
- 例如:同样分辨率下,RGB8的帧率约为Mono8的1/3。
5.对系统设计的影响
- 带宽要求: 选择高比特深度或RGB格式会显著增加数据量,可能超过接口带宽(需检查带宽占用)。
- 存储成本: 高数据量意味着需要更大的存储空间和更快的写入速度。
- 处理复杂度:
- 拜耳格式需要Debayer,增加CPU/GPU负载。
- YUV格式可能需要转换到RGB才能用常规算法处理。
- 高比特深度(12bit/16bit)图像需要算法支持,且处理速度可能慢于8bit。
- 算法兼容性: 确保使用的图像处理库(如OpenCV、Halcon)支持所选的像素格式。OpenCV默认BGR顺序,如果相机输出RGB,需要转换。
6.工业应用中的选型建议
- 黑白检测、尺寸测量、二维码读取: 首选 Mono8。数据量小,处理快,足够满足大部分需求。
- 彩色检测、颜色识别:
- 如果希望自行控制插值质量,或需要原始数据,可选 Bayer 格式,配合高性能Debayer算法(如双线性、边缘定向插值)。
- 如果系统处理能力足够,希望即拿即用,可选 RGB8。但需注意带宽压力。
- 高精度灰度分析(如表面缺陷检测): 可选 Mono10 / Mono12(使用16bit存储),保留传感器的高动态范围。
- 传输带宽受限的彩色视频流: 可考虑 YUV422 或带压缩的格式(如H.264),但需评估压缩对检测的影响。
- 色彩保真度要求极高(如印刷品色差检测): 应选用 RGB10 / RGB12,并关闭相机内部的非线性处理(如伽马、饱和度),使用线性数据。
7.总结
- 像素格式的本质: 图像数据在内存中的排列方式,定义了如何解读每个像素的亮度和颜色。
- 核心权衡: 信息丰富度(彩色、高深度) vs. 数据量(带宽、存储、处理速度)。
- Mono8 是工业检测的“万金油”,兼顾速度与实用性。
- Bayer 格式 是彩色相机输出的原始格式,保留了传感器完整信息,但需要后期处理。
- RGB 格式 是经过处理的全彩色,方便直接使用,但数据量大。
- 选型要点: 根据应用需求(是否需要彩色、精度要求、系统资源)选择合适的格式,并确保相机输出与处理流程匹配(包括颜色顺序、位对齐等)。
理解像素格式有助于合理配置相机参数,避免因格式选择不当导致带宽溢出、处理延迟或图像信息丢失。
(14)触发与信号输入输出
在机器视觉系统中,相机不是孤立工作的,它需要与外部设备(如传感器、PLC、光源、运动控制系统)协同工作。触发与信号 I/O 正是实现这一协同的桥梁。
1.核心定义
- 触发(Trigger): 一种外部或内部信号,用于精确控制图像采集的起始时刻。它决定了相机“什么时候”开始曝光。
- 信号输入输出(I/O): 相机提供的物理接口,用于接收外部触发信号(输入)和输出状态信号(输出),以实现与外部设备的同步。
2.触发模式分类
A. 内部触发(自由运行模式)
- 原理: 相机按照设定的帧率自动连续采集图像,无需外部信号。
- 适用场景: 连续监控、简单视觉应用(如流水线速度恒定且无严格要求同步)。
- 缺点: 无法精确与运动位置同步,可能导致图像位置不稳定或运动模糊。
B. 外部硬件触发
- 原理: 通过相机的 I/O 接口接收外部传感器(如光电开关、编码器)发出的电信号,每收到一个有效信号,相机采集一帧图像。
- 优点: 可实现精确的位置同步(如物体到达指定位置时拍照)。
- 类型:
- 边沿触发: 触发信号的上升沿或下降沿启动一次采集。曝光时间由相机内部预设值决定。
- 脉宽控制触发: 触发信号的高电平持续时间直接决定曝光时间。这种方式可以与编码器配合,实现“变速度下的恒定空间分辨率”(即物体移动越快,曝光时间越短,但覆盖的空间距离固定)。
C. 软件触发
- 原理: 通过主机发送软件命令(如通过 SDK 调用)来启动一次图像采集。
- 适用场景: 测试、低速应用、或由上位机算法决定拍照时刻。
- 缺点: 响应时间受操作系统和通信延迟影响,不适合高精度时序控制。
3.信号输入输出接口
A. 物理接口类型
- 光耦隔离 I/O: 工业相机最常用的 I/O 形式。输入/输出信号通过光电耦合器隔离,抗干扰能力强,适合长距离传输和恶劣工业环境。
- 直接 I/O(非隔离): 电平直接连接,速度快但抗干扰差,通常用于短距离或实验室环境。
- 差分 I/O(如 RS-422): 抗干扰能力强,适合高速、长距离。
- 编码器输入: 部分高端相机支持直接接入正交编码器信号(A、B、Z相),用于精确跟踪运动位置。
B. 输入信号特点
- 电压范围: 常见 5V-24V,需注意相机的逻辑电平(如高电平有效电压范围)。
- 最小脉宽: 触发信号必须保持一定宽度(如 > 10μs),才能被相机可靠检测到。
- 去抖动: 工业相机 I/O 通常有硬件去抖动或可配置滤波,避免机械开关抖动产生误触发。
C. 输出信号特点
- 闪光灯同步输出(Strobe): 最常用的输出功能。在曝光开始或结束的时刻,相机输出一个脉冲信号,用于控制光源点亮(通常为频闪模式),以保证足够亮度并节省光源寿命。
- 曝光状态指示: 输出信号指示相机正在曝光,可用于与其他设备同步。
- 触发确认输出: 当相机接收到有效触发并开始采集时,输出一个脉冲,用于下游设备(如剔除器)的动作时序参考。
4.触发时序与同步
- 触发延迟: 从触发信号到达相机到曝光实际开始之间的时间。工业相机通常具有极低的延迟(微秒级),且固定不变,便于精确同步。
- 触发抖动: 触发响应的微小时间变化。高质量相机抖动极小(纳秒级),确保重复性。
- 多相机同步:
- 硬件同步: 将同一触发信号并联接入多台相机,可实现多相机同时曝光(如用于 3D 重建或多视角检测)。
- 主从同步: 一台相机作为主设备输出同步信号,其他相机作为从设备接收该信号进行曝光。
- 外接同步盒: 专用设备分发高精度触发信号,保证多相机严格同步。
5.触发与相关参数的配合
- 曝光模式: 触发信号控制曝光的开始,但曝光时间可由内部预设(边沿触发)或信号脉宽决定(脉宽控制)。
- 帧率限制: 外部触发的频率不能超过相机的最小触发周期(曝光时间 + 读出时间 + 准备时间),否则会丢帧。
- 光源控制: 输出信号(Strobe)必须与曝光时间精确匹配,确保光源在曝光期间点亮,且脉宽足够短以避免发热。
6.典型应用场景
- 飞拍定位: 物体在运动过程中,当光电开关检测到物体到达指定位置,立即触发相机拍照,结合运动控制系统实现“停稳前抓拍”。
- 线阵相机行触发: 线阵相机通常由编码器信号触发每一行采集,确保图像在运动方向上的几何比例与物体实际尺寸一致(无拉伸或压缩)。
- 多工位检测: 一个触发信号同时触发多台相机从不同角度拍摄同一物体。
- 不良品剔除: 相机检测到缺陷后,通过输出信号驱动气枪或推杆,在精确的时间点将不良品剔除(需考虑传输延迟和运动距离)。
7.系统设计注意事项
- 信号电平匹配: 确保外部设备输出的电压范围在相机 I/O 允许范围内,必要时加转换电路。
- 线缆与干扰: 触发信号线应使用屏蔽双绞线,远离动力线,避免电磁干扰导致误触发。
- 去抖动处理: 机械触点传感器(如限位开关)需在软件或硬件上进行去抖动。
- 时序验证: 用示波器检查触发信号、曝光信号和光源脉冲的时序关系,确保满足相机要求。
- 触发频率上限: 确认相机的最大触发速率(通常与帧率相关),避免信号过密导致相机忽略部分触发。
8.总结
- 触发的本质: 图像采集的“开关”信号,确保相机在正确的时间点抓拍。
- 信号 I/O 的作用: 将相机融入自动化系统,实现与传感器、光源、执行器的无缝协同。
- 触发类型选择:
- 连续运动、精确同步 → 外部硬件触发 + 脉宽控制
- 位置到达拍照 → 外部边沿触发
- 低速或测试 → 软件触发
- 关键参数: 触发延迟、最小触发脉宽、I/O 电平、输出脉冲宽度。
- 设计要点: 保证信号质量、验证时序、考虑多设备同步需求。
掌握触发与信号 I/O 的配置,是将相机从一个独立的图像采集器升级为自动化系统一部分的关键。合理设计触发方案,可以显著提高检测精度、重复性和效率。
五:相机软件/硬件接口标准
工业相机的接口体系是一个严谨的分层架构,它由物理层的硬件传输接口和逻辑层的软件接口标准共同构成。这种“硬件定义管道,软件统一语言”的设计,确保了不同厂商的组件能够无缝协作,是机器视觉系统互操作性的基石 。
1.第一层:相机硬件传输接口
硬件传输接口定义了图像数据从相机传输到主机(通常是计算机或采集卡)的物理连接方式、电气特性以及底层传输协议。它们是数据流的物理通道。
以下是主流的工业相机硬件传输接口标准:
2.第二层:相机软件接口标准
软件接口标准运行于硬件之上,它定义了主机软件如何发现、控制相机以及解析图像数据。其核心目标是实现软件与硬件的解耦,让同一套应用程序能无缝操作不同接口、不同厂商的相机。
核心元标准:GenICam (通用相机接口)
GenICam 由欧洲机器视觉协会(EMVA)主导制定,它并非一个传输层标准,而是一个为所有相机提供统一、通用编程接口的核心理念 。它是GigE Vision、USB3 Vision、CoaXPress等现代高速视频标准的共同基础 。
GenICam 标准族由多个关键模块组成:
-
GenApi:核心机制。它规定使用XML文件来描述相机内部所有可配置功能(如增益、曝光时间)的访问方式和属性。主控软件通过解析这个XML文件,即可动态生成控制界面,无需针对特定相机型号编写专用代码 。
-
SFNC (标准功能命名约定):解决“同名异义”或“异名同义”的问题。它标准化了300多种常用相机功能的名称、数据类型和行为。例如,所有符合SFNC标准的相机,其控制图像宽度的功能都会被统一命名为“Width” 。
-
PFNC (像素格式命名约定):标准化了像素数据的编码格式命名,确保软件能准确识别数据流中的像素是Bayer RG8、RGB10p1还是YUV422格式 。
-
GenTL (通用传输层接口):提供了一个硬件无关的软件层,用于连接图像采集设备(相机/采集卡)和图像处理应用。它允许软件通过统一的API发现设备、传输数据流,而无需关心底层是USB、GigE还是Camera Link硬件 。
-
GenCP (通用控制协议):定义了一个通用的点对点控制协议,作为USB3 Vision、CoaXPress等新标准的基础,避免了协议重复开发 。
-
CLProtocol:一个附加软件层,用于将传统的Camera Link相机连接到基于GenICam的现代应用框架中,使其融入新生态 。
传输层标准与GenICam的关系
如前所述,现代主要的硬件传输层标准(GigE Vision, USB3 Vision, CoaXPress)都强制要求兼容GenICam规范。这意味着,无论您使用的是GigE还是USB3相机,只要它们符合标准,您的应用软件就能通过GenICam提供的统一接口(如读写ExposureTime寄存器)来控制它们,而无需关心底层的寄存器地址或通信协议 。
总结:分层架构的逻辑
工业相机的接口体系通过清晰的分层实现了强大的互操作性:
-
应用层:用户软件通过GenICam的GenApi接口,使用SFNC定义的通用名称(如
ExposureTime)向相机发出指令。 -
抽象层 (GenICam):GenTL负责寻找设备并建立连接,GenApi解析相机的XML描述文件,将对
ExposureTime的调用转换为特定于该相机硬件寄存器的读写指令。 -
传输层 (GigE Vision/USB3 Vision/CXP):将上述指令封装成符合物理接口规范的数据包(如GVSP包、USB bulk传输),通过硬件接口(网线、USB线、同轴线缆)发送给相机,并接收图像数据。
这种硬件定义通道、软件统一语言的严谨架构,使得机器视觉系统的设计者可以自由组合不同厂商的“最佳”组件,而无需被锁定在专有生态中,极大地推动了整个行业的发展。
表格:关键硬件接口指标速查