
3.2 高性能物联网终端
到目前为止,我们已经研究了一些简单的传感器,它们只是以二进制或模拟形式返回必须采样的信息。然而,物联网设备和传感器对其所承担的任务具有强大的处理能力和性能。智能传感器包括摄像机和视觉系统等设备。智能传感器可以包括大量的处理能力,包括高端处理器、数字信号处理器、FPGA和定制ASIC。在本节中,我们将探讨智能传感器的一种形式:视觉系统。
3.2.1 视觉系统
与之前探索的简单传感器相比,视觉系统要复杂得多,它需要大量的硬件、光学元件和成像硅。视觉系统从观察场景的透镜开始。透镜提供聚焦功能,但也为传感元件提供更多的光饱和度。在现代视觉系统中,我们使用两种类型的传感元件之一:电荷耦合设备(Charge-Coupled Device,CCD)或互补金属氧化物半导体(Complementary Metal-Oxide Semiconductor,CMOS)设备。CCD和CMOS的区别可以概括如下:
- CCD:电荷从传感器传输到芯片边缘,通过模数转换器按顺序采样。CCD可以产生高分辨率和低噪声的图像。它们消耗相当大的功率(是CMOS的100倍)。它们还需要独特的制造工艺。
- CMOS:单个像素包含晶体管来对电荷进行采样,并允许单独读取每个像素。CMOS更容易受噪声影响,但功耗很小。
目前市场上大多数传感器都是用CMOS制造的。一个CMOS传感器集成到一个硅芯片中,该芯片显示为一个二维晶体管阵列,排列在硅衬底上。每一个红色、绿色或蓝色的传感器上都会有一系列微透镜,将附带的光线聚焦到晶体管元件上。这些微透镜中的每一个都会将特定的颜色衰减到一组特定的光电二极管(R、G或B),这些光电二极管对光照强度做出响应。然而,透镜并不完美。它们会增加色差,不同波长的折射率不同,从而导致不同的焦距和模糊。透镜也可以扭曲图像,造成针垫现象。
接下来将进行一系列步骤来过滤、规范化图像,经过多次转换,使其成为可用的数字图像。这是图像信号处理器(Image Signal Processor,ISP)的核心可以按照图3-13所示的顺序执行步骤。

图3-13 图像传感器:用于彩色视频的典型图像信号处理器管道
请注意,对于图像中的每个像素,流水线的每个阶段都要进行多次转换和处理。数据和处理的数量需要大量的定制硅或数字信号处理器。以下列出了管道中的功能块职责:
- 模数转换:传感器信号放大后转换成数字形式(10位)。数据从光电二极管传感器阵列中被读取,以扁平化的系列行/列代表刚刚捕获的图像。
- 光学夹:消除由于传感器黑电平引起的传感器偏置效应。
- 白平衡:模拟不同色温下眼睛的色度显示。中性色调显示为中性。这是使用矩阵转换来执行的。
- 死点校正:识别死像素并使用插值补偿其损失。死像素被替换为相邻像素的平均值。
- Debayer滤波和去马赛克:Debayer滤波可分离RGB数据,使绿色饱和度超过红色和蓝色内容,以进行亮度灵敏度调整。它还从传感器隔行扫描的内容创建图像的平面格式,用更先进的算法保留图像的边缘。
- 降噪:传感器会由于混叠效应、模数转换等原因产生噪声。噪声可能与晶体管级像素灵敏度的不均匀性或光电二极管的泄漏有关,从而暴露出暗区。其他形式的噪声也存在。这个相位通过一个中值滤波器(3×3阵列)在所有像素上去除图像捕获中引入的白噪声和相干噪声。或者,可以使用去斑点滤波器,它需要对像素进行排序。其他方法也存在。然而,它们都在像素矩阵中运动。
- 锐化:使用矩阵乘法对图像进行模糊处理,然后将模糊与内容区域中的细节相结合,以创建锐化效果。
- 颜色空间转换3×3:颜色空间转换为RGB特定处理的RGB数据。
- 伽马校正:校正CMOS图像传感器对不同辐照度下RGB数据的非线性响应。伽马校正使用查找表(LookUp Table,LUT)插值并校正图像。
- 颜色空间转换3×3:从RGB到Y'CbCr格式的附加颜色空间转换。选择YCC是因为Y可以用比CbCr更高的分辨率存储而不会损失视觉质量。它还使用4:2:2位表示(4位Y、2位Cb和2位Cr)。
- 色度子采样:由于RGB色调的非线性为了色调匹配和质量,校正图像以模拟其他介质(如胶片)。
- JPEG编码器:标准JPEG压缩算法。
这里应该强调的是,这是一个很好的例子,说明了传感器有多复杂,以及有多少数据、硬件和复杂性可以整合为一个简单的视觉系统。在1080p分辨率下,以每秒60帧的保守速度通过视觉系统或相机的数据量是巨大的。
所有的阶段(除了JPEG压缩)在一个固定功能硅片(如ASIC)的ISP中一次移动一个周期。每秒处理的数据总量为1.368 GB。考虑到JPEG压缩作为最后一步,通过定制的硅片和CPU/DSP内核,处理的数据量远远超过2 GB/s。我们永远不会将原始的拜耳图像视频流送到云端进行处理——这项工作必须尽可能靠近视频传感器。
3.2.2 传感器融合
本章所述的所有传感器设备需要考虑的一个方面是传感器融合的概念。传感器融合是将几种不同类型的传感器数据结合起来,以揭示比单个传感器所能提供的更多关于情景信息的过程。这在物联网领域很重要,因为单个热传感器不知道是什么导致温度快速变化。然而,当结合来自附近其他传感器的数据(这些传感器观察PIR运动检测和光照强度)时,物联网系统可以识别出:在阳光明媚的时候,大量的人聚集在某个区域,然后可以决定增加智能建筑内的空气流通。一个简单的热传感器只记录当前的温度值,没有与情景相关的认知能够意识到由于人们的聚集和阳光的照射,热量正在上升。
利用来自多个传感器(边缘和云)的时间相关数据,处理系统可以根据更多的数据做出更好的决策。这就是大量数据从传感器涌入云端的原因之一,这也正导致了大数据增长。随着传感器变得更便宜、更容易集成,就像TI SensorTag一样,我们将看到更多的传感组合提供情境感知。
传感器融合有两种模式:
- 集中式:将原始数据传输并聚合到中央服务,并在那里进行融合(例如,基于云的融合)
- 分散式:在传感器处进行数据关联
传感器相关数据的基础通常通过中心极限定理表示,其中两个传感器测量值x1和x2结合起来,根据组合的方差显示相关测量值x3。这只需将两个度量值相加,然后用方差加权求和:

其他的传感器融合方法是卡尔曼滤波和贝叶斯网络。
第8章将深入讨论边缘计算,并举例说明“传感器融合”的例子,这将强化这样的技术对资源和处理的要求,它已经超越了简单的传感器电子技术。
3.2.3 输出设备
物联网生态圈中的输出设备几乎可以是任何东西,从简单的LED到完整的视频系统。其他类型的输出包括执行器、步进电机、扬声器和音频系统、工业阀门等。毫无疑问,这些设备需要不同复杂度的各种控制系统。根据输出的类型和它们所服务的用例,也应该预料到大部分控制和处理需要位于边缘,或者靠近设备(而不是在云中完全控制)。例如,一个视频系统可以从云提供商处获得传输数据流,但需要在边缘提供输出硬件和缓冲能力。
一般来说,输出系统需要大量的能量来转换成机械运动、热能,甚至光。一个小的业余级控制流体或气流的螺线管,需要9~24伏直流电压和100毫安的电流才能可靠地工作并产生5牛顿的力,而工业级螺线管的工作电压一般为数百伏。