机器的图像和实时视频处理功能分析

描述

人脑是我们所知道的最先进的紧凑型处理单元;但是,由于采用了新的处理器,工具,架构和软件,图像处理方面的改进可能会很快超过我们。新技术及其快速采用率为工业制造和检验,以及医药,消费电子/游戏,当然还有机器人技术提供了巨大潜力。

目前,我们正在开展先进的功能,如当执行诸如填充水的简单任务时,比例,积分和微分(PID)功能。事实上,我们进行了如此复杂的运动控制和平衡,机器人可能很快就会羡慕我们。然而,我们出色的能力之一就是我们能够在视野中挑选模式,执行物体识别,深度感知,轨道运动和测量相对速度甚至加速度,使我们与大多数机器区别开来。

早期的图像处理主要集中在澄清静止图像上,许多边缘增强算法和细微的细节都没有在快速帧率和高度刚性图像上进行。处理器更简单,更慢,并且执行DSP功能的能力更低,因此结果粗略,获取速度慢,并且远不如辨别人眼和大脑那么可靠。

然而,随着我们改进机器,我们开始为它们提供我们无法比拟的卓越功能,图像和实时视频处理是我们未来的机器(霸主?)将拥有的这些功能之一。这要归功于处理器,工具,算法和我们现在正在制定的启发式方法,我们能够为机器提供这些功能,这些功能可能很快就会超出我们自己的能力。

内存和架构问题

视频信息在数字域,因此无论图像来自NTSC,PAL,RGB,YUB,分量还是隔行扫描或非隔行扫描的HD源都无关紧要。前端同步和解码器芯片和硬件阶段可以很好地捕获图像像素并将它们填充到内存阵列中,通常作为光栅化扫描线。

内存架构和拓扑结构很重要,但是,因为它们会影响处理器访问和操作数据的方式。例如,您可以以线性方式将图像数据压缩到存储器中,但这可能意味着相邻帧不会在位可寻址存储器边界处排列。例如,使帧的扫描线的第一行在二进制计数器的零点处对齐更快更容易。比较连续帧数据变得更容易访问和获得,如果不需要复杂的寻址方案来索引和逐帧地观察视野的相同部分。

另一个与记忆相关的因素可以简化视频处理和信息提取与位平面分离有关,特别是随着像素分辨率和调色板深度的增加。当发生这种情况时,以最高有效位(MSB)到最低有效位(LSB)方式查看单色图像的能力允许边界和边缘突出(图1)。仅查看MSB渲染图像时会出现最大的对比。可以提取一些深度和灰度信息,查看连续不太重要的位渲染图像。

处理器

图1:位平面分离允许边缘更清晰地突出,因为最高有效位(MSB)显示出比最低有效位更多的对比度(最低有效位)。这意味着需要对并行视频数据进行抽取,并将位大小分成单独的单色存储器平面。 (来源:Digi-Key)

这意味着必须将图像数据实时分离为面向比特的高效内存块,处理器可以将其编入索引并快速检查。这是硬件架构发挥作用的地方。

并行与流水线

可以使用两种主要的架构方法来完成实时视频处理任务。第一种是使用多个处理器并为每个处理器分配问题的一部分,可以是并行,串行或两者。例如,每个检查位平面分离的存储器块的24个处理器的阵列可以比必须一次检查每个块的单个处理器快24倍地辨别边缘和边界。任务执行处理器将任务委派给每个单独的处理器,并以部分“消化”的形式检查压缩结果。这使得下一阶段决策处理器能够以更加灵敏的方式对数据采取行动。

当涉及立体视觉处理时,这一点尤为重要,因为深度感知更容易实现。位平面分离的图像可以显示边缘,但是,每个相机的存储块的不同部分中的相同边缘的位置将是用于从数字三角测量算法确定深度的位置。由于这些边缘在两个相机的存储块之间逐帧移动,处理器可以比使用逐帧彩色像素尝试更快地提取距离,速度和方向数据(图2)。 p>

监视各个位平面的各个处理器可以容纳着色,光源,甚至可以识别被跟踪对象的部分模糊边缘,因为它在视野中的其他移动或静止物体的前方和后方移动。

处理器

图2:立体成像可以通过检查检测到的存储器阵列中的位置来利用位平面分离带来的对比度作为每个相对图像的失真。当物体在连续帧中移动时,这些可用于确定深度以及相对运动。 (来源:Digi-Key)

同样重要的是要注意可以使用抽取的像素和调色板分辨率。并非每一位24或36位A/D转换的彩色像素都需要提取所需的信息。环境光级别和着色可用作算法的一部分,以确定分辨率的最佳抽取。

简单与复杂架构

术语处理器可在此处有所不同。它可以是相当高功率,快速时钟的CISC DSP类型的功能,或基于硬件的功能RISC模块,或介于两者之间的任何位置。这是设计工程师可以做出的另一种架构选择。

我们是使用具有复杂架构和信号处理功能的多处理器还是多核处理器,还是使用在分立硬件中实现的专用逻辑块像FPGA结构?两者都是有效的方法,并且都带有它们的特征和好处。此外,它们不是相互排斥的:它们可以一起用于为手头的任务创建最佳解决方案。

例如,用于质量控制检查应用程序等应用程序的视觉系统可以使用类似快照的检查算法,查看焊接连续性,焊盘完整性,电路板走线一致性和结构缺陷等特定事项。当电路板移动通过静止视野时,或者当摄像机使用机器人机制移动时,就会发生这种情况。

像NXP i.MX 6DualPlus和i.MX 6QuadPlus这样的多核处理器系列应用处理器专为图形密集型应用而设计。该系列具有1.2 GHz ARM Cortex-A9处理器,具有高级内存管理和64位DDR3接口或与内部L2高速缓存RAM集成的双通道32位LPDDR2内存。

此背景是使用四维720-MHz着色器的3D图形加速,可以使用专用硬件提供高性能图形。特殊部件,如四核32位MCIMX6QP5EYM1AA支持 - 硬件 - 高达1920 x 1200(HD)分辨率的双显示器,这意味着帧存储器和刷新本质上支持图像采集和显示(对于调试和测试非常有用) out算法),以及图像处理。

硬件大小调整和反交错简化了视频数据格式化和索引,以允许更多编码资源用于图像数据处理和覆盖到显示数据上。这种重叠的示例包括调整大小的图像,其可以查看数据帧的特定部分以减少处理时间。另一个例子是使用着色器,不仅可以使图像更加突出人眼,还可以在要处理的图像中显示细节。

示例代码和硬件设计也是此外,还使用恩智浦MCIMX6QP-SDB开发平台,该平台包括完整的硬件设计文件,并直接支持Android,Linux和FreeRTOS操作环境。为了简化接口,HDMI连接以及LVDS连接和支持两个1 GHz MIPI DSI数据通道,以及相机MIPI CSI端口(图3)。

图3.恩智浦MCIMX6QP-SDB开发平台的多核处理器可以实时渲染和处理图像数据,如开发环境工具包和演示软件所示。 (来源:恩智浦)

这些处理器本身可以编码,以便在单个高分辨率立体快照帧中查看许多焊点的圆锥形状,例如,根据需要应用于印制电路板质量检测视频处理。

此外,可以级联多个处理器以扩展功能。但是,当软件仍然太慢时,专用硬件本身或与这些高端类型的处理器结合使用可以将性能提升到最高水平。

基于硬件的算法

流水线硬件逻辑序列发生器总是比基于软件的处理器执行得更快。管道填充可能需要几个周期,但是一旦填满,每个时钟周期都会提供处理和消化的信息,而不是编码方法可能需要的多个时钟周期才能达到相同的交付水平。

虽然检测机可能不需要基于硬件加速的超快速度,但许多应用都会。与敌方野战炮兵机器人作战的野战炮兵机器人只有在其目标获取,动作控制和准确性优越的情况下才能获胜。最快,最简化的硬件将继续存在。

现代逻辑阵列具有密度,速度和深度,以及内存和外设接口,可以适应非常复杂的任务,包括实时视频。大规模逻辑阵列的多门级架构在很大程度上已被查找表(LUT)逻辑元件所取代,这些逻辑元件能够在单个同步时钟周期内输出每个逻辑块的结果。请记住,现代逻辑阵列的时钟频率可以达到GHz。

要使用FPGA开发视频处理算法,您需要使用实现目标部件的平台,处理逻辑代码模式的上传,提供对I/O的访问,具有干净的时钟源,并包括针对特定需求的良好混合片上硬宏,例如锁相环(PLL)和高速存储器接口。一旦您确定了制造商和零件系列,开发平台就会落实到位。

例如,采用National Instruments的Digilent Nexys视频FPGA板,采用Xilinx高密度,高性能的Artix FPGA系列(图4)。它们的范围从1300到16,825个逻辑单元和45到740个DSP切片功能块。一个关键特性是双端口RAM速度高达509 MHz,允许通过独立的逻辑阶段进行并发访问和修改。

图4.使用开发平台(例如National Instruments的Digilent Nexys视频FPGA板)大大简化了使用FPGA开发流水线视频算法,其中包括视频处理输入和输出提供性能最高的高密度FPGA(在本例中来自Xilinx。)(来源:Nexys,一家美国国家仪器公司)

National Instruments主板采用低功耗1 V内核,具有四通道功能SPI Flash和DDR3存储器接口分别用于直接访问非易失性和易失性存储器的外部池。 HDMI和DVI接口也包括使用最小化转换差分信令(TMDS)标准。

虽然开发平台是在相对较快的时间范围内评估和设计风险相对较低的好方法,但最终,您我们想要开发自己的主板并使用自己的测试和开发平台。幸运的是,Xilinx Vivado工具套件受免费的Webpack许可证支持,该许可证包括能够创建Microblaze软核处理器,可以在FPGA内部用作流程引擎来指导和管理基于逻辑的流水线架构的可编程性。可以在Nexys站点下载设计资源,示例项目,数据表和教程。

结论

采用低功耗,高性能半导体和正确的工具,架构和算法,机器将在我们曾经认为我们远远优越的领域迅速超越人类,例如模式识别,物体识别,深度感知,运动跟踪以及测量相对速度甚至加速度的能力。

不只有这样才能实现工业控制和医疗领域的新应用,还能实现消费电子,游戏,当然还有机器人技术。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分