您的位置 首页 动态

嵌入式视觉的概念及关键因素

基于视觉的系统在很多行业和应用领域中已变得非常普遍。实际上,我们中的很多人每天就携着一个嵌入式视觉系统,比如在我们的智能手机中。这些智能设备不仅能够捕获图像和录制视频,而且还能执行增强现实的应用,

  依据视觉的体系在许多职业和运用范畴中已变得十分遍及。实践上,咱们中的许多人每天就携着一个嵌入式视觉体系,比如在咱们的智能手机中。这些智能设备不只可以捕获图画和录制视频,而且还能履行增强实践的运用,这些都展现了嵌入式视觉技能是怎么被遍及地广为承受。

  处理才能、存储器密度和体系集成度的进步,促进了嵌入式视觉在传统和新式运用范畴( 图 1所示实例)的添加。这也使得嵌入式视觉在消费类、工业和政府范畴被广泛承受,因此将在十年内完结明显添加。表 1 列出了一些嵌入式视觉的高添加范畴,其间有一些清楚明了,有些则不是很明显。

  图 1 常见的嵌入式视觉运用。

  表 1 预期的嵌入式视觉高添加范畴

  什么是嵌入式视觉?

  嵌入式视觉体系包括从所选成像传感器接纳光到体系输出的整个信号链。体系输出是指从图画中提取的经过处理或未经处理的图画或信息,并供给应下流体系。当然,嵌入式体系架构师担任依据体系要求保证端到端功用。

  为此,嵌入式视觉体系架构师需求了解与传感器和后处理体系有关的各种概念和技能。本文作为高档入门手册,旨在让读者对这些技能和概念有一个根本了解。

  首要需求了解电磁波谱以及期望体系运转的光谱域。人眼只能看到 390nm(蓝光)至 700nm(红光)波长之间的光谱,也便是一般所指的可见光谱;成像设备凭仗所选用的技能,则能捕获到更广泛波长的图画,包括 X 光、紫外线、红外线以及可见光谱。

  在近红外光谱及以下规模,咱们可以运用电荷耦合器材(CCD)或 CMOS[1](互补金属氧化物半导体)图画传感器 (CIS);到了红外光谱规模,需求运用专用的红外检测器。红外光谱规模之所以需求专用传感器,部分原因在于芯片成像器(如 CCD 或 CIS)需求的激起能。这些器材一般需求 1eV 的光子能量来激起一个电子,可是在红外规模,光子能量介于 1.7eV-1.24meV 之间,因此红外成像器应依据 HgCdTe 或 InSb。这些器材需求更低的激起能量,常常与 CMOS 读出 IC(即 RO%&&&&&%)合作运用,以操控和读出传感器。

  最常见的两种检测器技能分别是 CCD 和 CIS

  · 电荷耦合器材被视为模仿器材,因此要集成到数字体系中就需求运用片外 ADC 以及所需模仿电压电平下的时钟生成功用。每个像素存储由光子发生的电荷。大多数情况下将像素排列成 2D 阵列,组成多个行,每行包括多个像素。读出 CCD 时经过行传输将每行并行传递到读出寄存器,再经过读出寄存器将每行串行读出。这个寄存器读出过程中,电荷转化为电压。

  · CMOS 成像传感器能完结更严密布成,使 ADC、偏置和驱动电路都集成在同一晶片上。这大大下降了体系集成要求,一起也进步了 CIS 规划的杂乱性。CIS 的中心是有源像素传感器 (APS),其间每个像素一起包括光电二极管和读出放大器,因此,与 CCD 不同,CIS 可以读出阵列中的恣意像素地址。

  虽然大多数嵌入式视觉都选用 CIS 器材,可是 CCD 仍用于十分重视功用的高端科研运用范畴。本文的关键内容适用于这两种成像技能。

  传感器考虑要素

  挑选正确的传感器需求了解体系要求,为此,有必要从器材的几个方面加以考虑。

  第一个要求是咱们有必要确认所需的分辨率,也便是每行有多少个像素,检测器需求多少行。终究运用对此起决议作用,例如,科研用的天文学运用或许需求高分辨率的 2D 器材,而工业查看成像或许仅需求行扫描计划。

  · 行扫描器材在 X 方向上包括单行(有时是几行)像素。假如经过相机或方针的移动生成 Y 方向上的图画,一般选用这类器材。它们用于查看或光学字符识别 (OCR) 范畴。有些范畴需求选用时域积分 (TDI) 线扫描传感器。这类传感器在 X 方向包括多行,跟着方针移动,像素值也从一个向下一个移动,跟着电荷在时刻上积分,可完结更活络的检测。不过,TDI 需求内行传输与方针移动之间进行同步,以防呈现含糊和图画缺点。因为只要几行需求读出,因此帧率可以十分高。

  · 2D 阵列包括多个行,每行有多个像素,阵列巨细是决议传感器最大帧率的一个要素。一般,为了完结更高的帧速率,2D 器材并行读出多个像素。2D 器材还能履行窗口操作(有时称为爱好区域),即只读出特定的感爱好区域,以取得更高帧速率。这类器材可用于许多范畴,而且信息包括在 2D 图画中,例如高档驾驶员辅佐体系 (ADAS)、监控或科研范畴。

  确认成像器格局以及所需分辨率之后,咱们还有必要考虑像素距离。像素距离界说像素的巨细,决议能搜集多少入射光子发生的电荷。因此,较小的像素距离意味着在积分周期内(传感器暴露在图画中的时刻)搜集较少的电荷。假如像素距离较小,意味着捕捉图画需求更长的积分时刻,这会影响传感器捕捉快速移动图画的才能,并下下降光摄影功用。

  确认传感器格局后,咱们有必要考虑运用哪种技能,CCD、CMOS 仍是更为专业的技能。这儿的重要参数是量子功率 (QE);该参数是器材经过光子发生电子的功率。一般,咱们期望在有用光谱上完结尽或许高的 QE,这关于低光运用也具有重要意义。影响器材 QE 的要素有三个:吸收、反射和透射。QE 下降的一个主因是器材结构。器材结构或许导致像素被传感器中的电路屏蔽,例如金属线或多晶硅栅极电路等。这些结构会吸收或反射光子,然后下降 QE,因此要选好传感器。

  · 前照式 — 关于这类器材,光子以上面的介绍的传统办法照耀器材的前面,像素或许被遮盖,QE 相应下降。

  · 背照式 — 这些器材经过后期处理,将器材的后部削薄,以便在后面接纳光照,然后不受其他规划元件的阻挠。薄型背照式器材能完结最佳 QE。

  咱们还有必要考虑图画传感器中所答应的噪声;有三个首要方面需求考虑。

  · 器材噪声 — 这在本质上讲是暂时的,包括散射噪声以及输出放大器和复位电路发生的噪声。

  · 固定图形噪声(FPN) — 呈空间散布,由相同光照强度下像素的不同呼应引起。FPN 一般由每个像素的不同偏移和增益呼应引起;偏移部分一般称为暗信号呼应非均匀性 (DSNU),增益部分称为图画呼应非均匀性 (PRNU)。有多种办法可以补偿 FPN,最常见的办法是输出信号的相关双采样法。

  · 暗电流 — 这由图画传感器中的热噪声引起,甚至在无光照情况下也会呈现。暗信号对终究图画质量的影响取决于帧速率;较高帧速率下影响不大,可是,跟着帧速率下降(如科研运用)影响会很明显。因为暗电流与温度有关,因此在需求下降暗电流的情况下,一般做法是运用冷却器材(例如 Peltier)来下降成像器材的工作温度。

  理解了成像器的噪声方法后,咱们就能确认能完结多大的信噪比 (SNR)。

  确认器材的噪声功用后,就可以确认图画传感器所需的动态规模。动态规模代表传感器捕获光照强度规模较大的图画的才能,单位是 dB 或以比率方法给出。这意味着图画一起包括高照度区和暗区。

  传感器的实践动态规模由像素的满井容量决议,也便是像素饱满前所能承载的电子数量。将容量除以读出噪声,能方便地将比率转化为以 dB 为单位的值。

  一般运用光子转化曲线测试法来确认动态规模,画出噪声与容量的联系曲线。

  假如器材具有数字输出,可经过下面的公式运用输出端比特数核算该值。

  可是,这并不能保证器材可以完结这样的动态规模;仅仅阐明总线宽度所能代表的潜在规模,而没有考虑传感器功用要素。

  IO 规范也很重要,不只用来输出像素数据,还用来输出指令和操控接口。这与帧速率有关,例如 LVCMOS 接口不适宜高帧速率运用,但可用于简略的监控摄像头。跟着帧速率、分辨率和每像素比特数的添加,成像器材的趋势正朝着选用 LVDS 系列或 SERDES 技能的专用高速串行链路开展。

  现在咱们现已介绍了图画传感器的多个重要方面,另一个没有考虑的要素是成像器是五颜六色仍是单色传感器。不管挑选哪种,都取决于运用场合。

  · 五颜六色传感器 — 需求在每个像素上运用贝尔图形,在一条线上替换改换赤色和绿色,下一条线上替换蓝色和绿色(绿色用得多是因为人眼对绿颜色波长更灵敏)。这意味着要对接纳到的光子进行滤波处理,使每个像素只接纳具有所需波长的光子。咱们可对图画进行后处理,用不同颜色环绕像素以重构每个像素上的颜色,然后确认像素颜色,而且不会下降图画分辨率。五颜六色传感器会使重构和输出图画所需的图画处理链变得杂乱化。贝尔图形的确会导致分辨率下降,可是没有幻想的那么差,一般降幅为 20%。

  · 单色 — 因为图画阵列上没有贝尔图形,因此每个像素能接纳一切光子。这样可增大图画活络度,使图画的读出更简略,因为不存在颜色重建所需的去马赛克效应。

  经挑选咱们决议运用 CIS 器材,而实践上这些归于杂乱的专用片上体系。因此,咱们还有必要考虑以下关于读出方法和积分时刻的问题。

  · 积分时刻 — 这是读出之前像素的曝光时刻。在比较简略的 CCD 体系上,需求挨近电子设备在器材外履行该时序。可是关于 CIS 器材,积分时刻可经过指令接口由寄存器来装备,然后 CIS 器材针对常用的两种读出方法精确地履行积分时刻。

  · 大局快门方法 — 这种方法下,一切像素一起承受光照,然后读出。此方法下因为一切像素一起读出,因此会增大读出噪声。假如要对快速运动物体拍照快照,适宜运用该方法。

  · 翻滚快门方法 — 这种方法下,进行逐行曝光和读出。这种方法的读出噪声较小,可是,在捕获快速运动物体方面不如大局快门方法。

  体系开发

  挑选了适宜的传感器之后,在进行体系开发的过程中还需求考虑和处理许多应战。

  除了技能应战以外,开发体系时还会面临时刻压力,保证在既定时限内将产品推向商场。咱们要依据时刻约束,要点弄清楚开发过程中的哪部分活动能完结附加价值,然后做出正确挑选,辨明哪部分应该自己开发(增值活动),哪部分可以购买商用现成产品 (COTS) 或许分包出去。要点重视增值活动并运用硬件、软件和 FPGA 层面的 IP 模块,是满意上市时刻要求的重要促进要素之一。

  除了上市时刻要求,嵌入式视觉体系开发过程中还要常常考虑尺度、分量、功耗和本钱 (SWAP-C) 要求。终究哪种要求占主导,取决于详细运用范畴,例如手持设备在功耗方面就要比驾驶员辅佐体系更为严厉。可是,关于高档驾驶员辅佐体系来说,因为要出产几百万台,因此计划本钱就成了主导要素。

  要在尺度、分量、功耗和本钱方面取得很好的作用,应该在传感器和处理体系中完结更为严密的体系集成,即运用数量更少但功用更强的集成组件。

  每种运用范畴都具有不同增值点以及不同的尺度、分量、功耗和本钱考量,因此简直一切嵌入式视觉体系都需求咱们完结所谓的图画处理流水线。这种流水线可与所选的传感器树立接口衔接,而且履行所需的操作以生成适宜进一步加工或直接在网络上传输的图画。根本的图画处理流水线包括

  · 照相机接口 — 接纳来自传感器的原始图画

  · 颜色滤波阵列 — 重建像素颜色

  · 颜色空间转化 — 转化成针对编解码器的正确颜色空间。

  · 输出格局化 — 与输出介质进行接口衔接

  在图画处理流水线中对接纳的图画履行和运用算法。所完结运用不同,算法也会不同;不过,有一些常用的图画处理算法可用来进步对比度,检测图画中的特性、方针或运动,或许校对含糊图画。

  应该在一个结构中开发这些算法,以便咱们以最短时刻将产品推向商场,并鼓舞重复运用,下降非重复性和重复性工程本钱。有几种现成的结构咱们可以考虑运用。

  · OpenVX — 用于开发图画处理运用的开源运用程序。

  · OpenCV[1] — 开源核算机视觉,多个面向实时核算机视觉的库,依据 C/C++

  · OpenCL — 依据 C++ 的开源核算机语言,用于开发 GPU、FPGA 等器材中常见的并行处理运用。

  · SDSoC — 赛灵思的一款规划环境,凭借该环境开发人员可在 Zynq 或 UltraScale+ MPSoC 器材的 ARM 处理体系中开始完结用 C/C++ 编写的算法,剖析代码库特性以找出功用瓶颈,然后运用赛灵思高层次归纳功用将这些瓶颈转化到硬件支撑的 IP 核,并在器材的可编程逻辑 (PL) 部分运转。

  选用 FPGA 或 All Programmable SoC 计划时,将这些结构与 HLS 结合运用,可以高效开宣布嵌入式视觉运用,并经过硬件在闭环中快速演示。

  图画经过处理流水线后,数据从体系的输出办法也很重要,咱们有三种挑选。

  · 运用视频图形阵列 (VGA)、高清多媒体接口 (HDMI)、串行数字接口 (SDI) 或 DisplayPort 等规范将图画输出到显现器。许多电动车选用触摸式显现屏对体系进行操控和装备。

  · 将图画或从图画中提取的信息传送到另一个体系,该体系像云处理运用那样运用图画或提取出的信息

  · 将图画存储在非易失存储介质中,供今后拜访。

  关于绝大多数办法而言,在完结成像链后,咱们都需求确认图画格局化办法,以便运用。此刻,咱们需求决议是否运用比如 H.264(MPEG-4 Part 10 高档视频编码)或 H.265(高功率视频编码)等职业规范图画/视频压缩算法对图画进行编码,这些完结计划一般称为编解码器。编解码器能进步通讯和网络带宽的运用功率,或下降完结高保真度所需的存储空间,因为编码一般存在较大失真[2]。假如因运用编解码器导致失真度无法承受,还可以按原始格局发送和存储图画,或许以无损格局进行编码。

  大多数编解码器所运用的颜色空间都与图画传感器输出的颜色空间(条件是体系运用五颜六色器材)不同。嵌入式视觉中常用的颜色空间是:

  · 红、绿、蓝 — 包括 RGB 信息作为图画传感器的输出,常用作 VGA 等简略接口的输出

  · YUV — 包括亮度 (Y) 和色度 (U 和 V),该颜色空间用于大多数编解码器和一些显现规范。常用的 YUV 格局为 YUV4:4:4 和 YUV4:2:2。两种格局的差异在于:4:4:4 格局下,每像素由 8 位表明,得到 24 位像素。在 4:2:2 格局下,U 值和 V 值在像素之间同享,得到 16 位像素,可节约存储空间。

  另一个对图画处理链和 SWAP-C 具有很大影响的决议计划是:大部分图画处理链应该在哪完结:

  · 在边际,即在嵌入式视觉体系之内。这样会进步体系的功耗和处理/存储要求,但可以完结更快的呼应。在边际处理将在大部分嵌入式运用(例如高档驾驶员辅佐、机器视觉等)中成为主导。

  · 在云中,这需求嵌入式视觉体系捕获图画,而且运用网络技能将图画发送到云。可在云中处理的典型运用包括医疗成像或科研运用。这类运用中,处理十分密布,且不需求实时成果。

  为完结处理链,处于嵌入式视觉体系中心的处理内核不只要能操控所选的图画传感器,还要能接纳和完结图画处理流水线,并经过指定网络基础设施传送图画或发送到选定的显现器。考虑到这些苛刻要求,因此常常要挑选 FPGA,或许越来越多的情况下需求运用 All Programmable 片上体系,例如 Zynq 器材。

  Zynq 器材将两个高功用 ARM A9 处理器与 FPGA 架构相结合。这样使得处理体系 (PS) 可用来经过 GigE、PCIe 或 CAN 等接口与主机体系通讯,一起履行体系的一般办理和日常业务。器材的另一半,即可编程逻辑 (PL) 可用来接纳和处理图画,充分运用 FPGA 架构的并行处理特性。假如要求经过网络基础设施传送图画,那么可运用 Zynq 中的直接存储器拜访 (DMA) 操控器高效地将图画数据从 PL 移动到 PS DDR 存储器。图画到了 PS DDR 存储器内,可运用所选传输介质的 DMA 操控器进一步拜访。

  当然,一旦图画处在 PS DDR,高功用 A9 处理器也可供给进一步的处理操作。Zynq 架构的特色在于还可将处理后的图画从 PS DDR 移回 PL 中的图画流水线。

  传感器交融

  许多嵌入式视觉体系还要求可以集成更多传感器数据以更好地感知环境。这包括运用许多同类传感器(同类传感器交融)扩展视场,例如高档驾驶员辅佐体系的全景功用;或许整合多个不同类型的传感器(异构传感器交融)供给可见光谱下无法看到的视觉内容,例如在惯例图画传感器数据上叠加红外信息。

  许多情况下,需求将嵌入式视觉运用的输出与其他传感器数据进行交融,使发生的图画包括多个不同传感器的信息。最简略的传感器交融运用是将不同频谱的图画相结合,例如可见光与红外线交融以完结更好的夜视作用。

  传感器交融的另一个更为杂乱的用处是将成像体系、全球导航卫星体系 (GNSS)、数字地图信息以及不同波长下运转的其他传感器(例如雷达)进行交融,以确认另一辆轿车的相对方位,然后完结避撞功用。

  因为要将不同体系交融在一起,并提取信息,因此传感器交融对处理器的要求会十分高。All Programmable 片上体系处理计划可以与多个传感器树立接口衔接,并行处理信息,增大数据吞吐量,因此具有多种明显优势。

  定论

  嵌入式视觉已变得十分遍及,其商场浸透率和运用规模将在下个十年里只增不减。

  在传感器和体系层面,有多个要素有必要加以考虑。有多种技能、结构和器材可用来完结嵌入式视觉体系。

  [1] 请见 XAPP 1167 http://china.xilinx.com/support/documentation/application_notes/xapp1167.pdf

  [2] 有或许创立无损的编码运用

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/dongtai/209082.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部