嵌入式视觉的概念及关键因素
基于视觉的系统在很多行业和应用领域中已变得非常普遍。实际上,我们中的很多人每天就携着一个嵌入式视觉系统,比如在我们的智能手机中。这些智能设备不仅能够捕获图像和录制视频,而且还能执行增强现实的应用,这些都展示了嵌入式视觉技术是如何被普遍地广为接受。
处理能力、存储器密度和系统集成度的提升,促进了嵌入式视觉在传统和新兴应用领域( 图 1所示实例)的增长。这也使得嵌入式视觉在消费类、产业和政府领域被广泛接受,因而将在十年内实现显著增长。表 1 列出了一些嵌入式视觉的高增长领域,其中有一些显而易见,有些则不是很明显。
图 1 常见的嵌入式视觉应用。
表 1 预期的嵌入式视觉高增长领域
什么是嵌入式视觉?
嵌入式视觉系统包含从所选成像传感器接收光到系统输出的整个信号链。系统输出是指从图像中提取的经过处理或未经处理的图像或信息,并提供给下游系统。当然,嵌入式系统架构师负责根据系统要求确保端到端性能。
为此,嵌入式视觉系统架构师需要熟悉与传感器和后处理系统有关的各种概念和技术。本文作为高级入门手册,旨在让读者对这些技术和概念有一个基本了解。
首先需要熟悉电磁波谱以及希望系统运行的光谱域。人眼只能看到 390nm(蓝光)至 700nm(红光)波长之间的光谱,也就是通常所指的可见光谱;成像设备凭借所采用的技术,则能捕获到更宽泛波长的图像,包括 X 光、紫外线、红外线以及可见光谱。
在近红外光谱及以下范围,我们可以使用电荷耦合器件(CCD)或 CMOS[1](互补金属氧化物半导体)图像传感器 (CIS);到了红外光谱范围,需要使用专用的红外检测器。红外光谱范围之所以需要专用传感器,部分原因在于芯片成像器(如 CCD 或 CIS)需要的激发能。这些器件通常需要 1eV 的光子能量来激发一个电子,然而在红外范围,光子能量介于 1.7eV-1.24meV 之间,因此红外成像器应基于 HgCdTe 或 InSb。这些器件需要更低的激发能量,经常与 CMOS 读出 IC(即 ROIC)配合使用,以控制和读出传感器。
最常见的两种检测器技术分别是 CCD 和 CIS
· 电荷耦合器件被视为模拟器件,因此要集成到数字系统中就需要使用片外 ADC 以及所需模拟电压电平下的时钟生成功能。每个像素存储由光子产生的电荷。大多数情况下将像素排列成 2D 阵列,组成多个行,每行包含多个像素。读出 CCD 时通过行传输将每行并行传递到读出寄存器,再通过读出寄存器将每行串行读出。这个寄存器读出过程中,电荷转换为电压。
· CMOS 成像传感器能实现更紧密集成,使 ADC、偏置和驱动电路都集成在同一晶片上。这大大降低了系统集成要求,同时也提高了 CIS 设计的复杂性。CIS 的核心是有源像素传感器 (APS),其中每个像素同时包含光电二极管和读出放大器,因此,与 CCD 不同,CIS 能够读出阵列中的任意像素地址。
尽管大多数嵌入式视觉都采用 CIS 器件,但是 CCD 仍用于非常注重性能的高端科研应用领域。本文的要点内容适用于这两种成像技术。
传感器考虑因素
选择正确的传感器需要了解系统要求,为此,必须从器件的几个方面加以考虑。
第一个要求是我们必须确定所需的分辨率,也就是每行有多少个像素,检测器需要多少行。最终应用对此起决定作用,例如,科研用的天文学应用可能需要高分辨率的 2D 器件,而工业检查成像可能仅需要行扫描方案。
· 行扫描器件在 X 方向上包含单行(有时是几行)像素。如果通过相机或目标的移动生成 Y 方向上的图像,通常采用这类器件。它们用于检查或光学字符识别 (OCR) 领域。有些领域需要采用时域积分 (TDI) 线扫描传感器。这类传感器在 X 方向包含多行,随着目标移动,像素值也从一个向下一个移动,随着电荷在时间上积分,可实现更灵敏的检测。不过,TDI 需要在行传输与目标移动之间进行同步,以防出现模糊和图像缺陷。由于只有几行需要读出,因此帧率可以非常高。
· 2D 阵列包含多个行,每行有多个像素,阵列大小是决定传感器最大帧率的一个因素。通常,为了实现更高的帧速率,2D 器件并行读出多个像素。2D 器件还能执行窗口操作(有时称为兴趣区域),即只读出特定的感兴趣区域,以获得更高帧速率。这类器件可用于众
- CEVA-CV:实现嵌入式视觉应用(01-18)
- 高性能DSP的嵌入式视觉应用:借机器一双慧眼(03-05)
- ADI技术市场经理畅谈嵌入式系统发展(02-26)
- 基于DSP的自动避障小车(04-05)
- 双口RAM在DSP与ICCD通信系统中的应用(02-09)
- 基于单片机的线阵CCD实时检测系统的开发(03-28)