辅助驾驶:基于图像传感器的汽车全景环视系统
背景1.1概述
汽车是现代社会最为有效、使用最为广泛的交通工具之一,是维持人们正常生活工作所不可或缺的一部分。然而,汽车的大量涌现,日益频繁的交通堵塞和交通事故,严重影响到人们日常生活的方便和工作的效率,甚至危害到人们的生命安全。研究分析表明,每个交通事故均不同程度地涉及到驾驶员、汽车和道路环境因素,而与驾驶员因素有关的事故约占九成,驾驶员的人为失误已经被公认为是交通事故的主要原因。如何减少“人”在交通系统中发挥的不确定因素,已经成为汽车安全领域研究的重点。通过先进的技术手段增强驾驶员感知能力,甚至替代部分驾驶任务,为车辆提供日益完善的安全预警和辅助驾驶功能,逐步实现车辆的智能化,并最终走向完全无人驾驶的智能车辆,必将是解决交通安全问题的根本途径。
随着图像处理和计算机视觉的快速发展,越来越多的先进技术被应用到汽车电子领域,传统的基于图像的辅助驾驶只在汽车车尾安装倒车摄像头,只能覆盖汽车周围的有限区域,而车两侧和前方的视觉盲区无疑增加了安全驾驶的隐患。
我们具有自主知识产权的车载全景视觉技术是将分布安装于车辆周边的图像传感器捕捉的图像进行合成和投影,在人机界面虚拟一个单一的全景图像,并且这个图像时无盲区的,能够360°的观察车身周边的状况。同时,这个图像经过合成和投影,形成符合人的思维习惯的全景图像。
1.2研究现状
车载传感器类型如表1所示,在这其中,全景视觉传感器技术受到越来越多的关注,并成为车载电子装置未来发展的主要方向。属于视觉感知技术之一的全景视觉传感器技术是智能感知交通环境重要的技术手段,它可以全方位、全天候、全时段地监视、分析和记录车内外的情况,为报警系统、控制系统和安全避让系统提供最直观的状态信息,也为车辆和乘员的安全保护提供了事前告之、过程记录和事后重现的技术手段。特别是在复杂的道路环境下,通过全面的视觉技术,可以使驾驶者的观察得以延伸和扩大,真正做到“眼观六路”,掌控全局。
车载全景视觉传感器分为两种,即把拍摄的图像提供给驾驶者观看的“显示用视觉传感器”,以及把拍摄的图像传送至计算机进行处理的“处理用视觉传感器”。 车载全景视觉传感器今后的发展趋势有如下几个方面:
(1)处理用视觉传感器的迅速普及;
(2)处理用视觉传感器的多功能化;
(3)显示用视觉传感器和处理用视觉传感器的融合。
表1:各种行驶传感技术的比较
行驶传感技术
技术特点
缺点
探测范围
超声波
成本低、探测精确。
范围小、受雨雪影响。
<5m
脉冲雷达
测量距离远、精确。
波束窄,只适合前后盲区探测。
>100m
多普勒雷达
测量距离远、测量精确、可多天线矩阵配合使用。
系统复杂、成本高。
>100m
射频标识
互相通知位置、成本低,系统可靠。
必须为每个设备、人装备发射标识,使用不方便。
>100m
全景系统
360度全景、直观(非量化信息)有效性高、有良好的人机界面、便于再现重放。
>100m
在BMW和NISSAN的高端车型上,已经开始使用多个摄像头来辅助驾驶员的操作和泊车,在VOLVO的XC60,XC90等概念车型上,已经开始使用图像识别技术来辅助驾驶人员的并线和巡航操作。在LEXUS的部分概念车型上,也有使用单目摄像头来进行简单的自动泊车的演示系统。
根据第三方的市场研究公司 Techno Systems Research (TSR) 的研究指出,在 2008 年时约有 20% 的新车配备整合式摄影机,而到了 2012 年时预计将增加到接近 70%,并且会有很大比例新车安装至少2个以上摄像机,车用视频装置即将成为各类车辆的主流配置。
表2:已采用视觉感知技术的汽车领域应用比较
形态
厂商
功能
技术含量
备注
低端产品
倒车后视镜
众多小品牌
后方视频
低
产品成熟
中低端
产品
倒车可视系统
国内的银声、
合正等
后方视频
雷达测距
GPS
低
产品成熟
中高端
产品
倒车可视系统
车载多媒体
常见于高端车型
后方视频(侧方视频)
多媒体功能
GPS
低
产品成熟
研发类
产品
夜视和行人检测
丰田
夜视摄像头提供红外图像,通过红外摄像头头实现行人,动物检测
较高
研发阶段
可视全景系统
日产汽车
松下电器
三洋电机
多摄像头实时视频合成无盲区全景俯视图
高
研发阶段
主动驾驶辅助系统
富士重工
通过双目摄像头主动探测前方行人,车辆,障碍的距离,以摄像头模拟人眼。
高
研发阶段
图像能够提供给使用者最直观高效的辅助信息。人类大脑的模糊思维和判断能力决定了,人随意扫视图像所获得的信息量和信息准确性远远大于费力地观察若干仪表所能得到的信息量和信息准确性,并且图像方式得到的信息更加直观可靠。如表2所示,可以预见在不远的将来,基于全景视觉传感器技术和图像识别技术来实现辅助驾驶和安全功能的系统将广泛应用于各类车辆,进而成为无人驾驶汽车和智能导航系统的关键技术。
本设计的最终目标就是要给出基于FPGA技术来构架SOC实现的以全景视觉处理为基础的汽车环视系统。通过4路广角摄像头实时采集数据,并将采集到的4路视频数据进行预处理和配准拼接等一系列处理实现360度的实时全景视觉图像,并通过VGA显示器进行显示。
研究方法和技术路线
在系统构成方面,系统主要分为三个部分,图像采集、图像处理及显示。图像的采集是使用4路模拟摄像头,通过自行设计的视频采集电路板接入图像,并通过DMA将实时图像数据搬到存储器中。这里采用了NTSC制式的模拟摄像头,摄像头的性能和显示效果一般。我们的研究重点是采用更加高效的算法和设计思路,在目前有限的资源条件下,最大限度的利用资源以达到最佳的设计和显示效果。
图像处理部分是采用基于区域匹配的图像合成算法,将采集到的图像数据进行相关的算法操作,并最终通过显示部分呈现出经过合成算法处理后的全景图像。在对现有算法的研究基础之上,我们对现有算法进行了改进,设计出了适合现有设计平台及资源的更加高效的算法,并且还对算法较为耗时的部分进行了硬件化处理,使图像处理部分的性能达到最高。
本系统对显示部分采用了硬件实现,直接将图像的显示通过硬件直接处理,为耗时更多的图像处理部分节约出更多的CPU资源,以使整个系统的效能达到最优。
系统的实现是在实验室环境下,使用了xilinx公司的Vertex-5 FPGA平台,充分利用和发挥其资源以及FPGA在硬件开发方面的优势,在小车模型基础上进行视频合成,图像分析的研究和实现,并搭建相应的模拟仿真环境,进行图像处理和分析算法的设计和验证,对获取的图像和视频进行进一步的学习和分类,并根据分类的结果对算法的参数进行分类和调整,在实际应用过程中,系统将根据实际条件自动调节算法的参数,分路况对系统进行测试,并根据实际测试的结果不断反馈,从而继续改进和优化算法,直到系统达到最终的效果。
设计结构
图1系统整体设计结构图
系统的原理主要根据系统的整体结构进行划分,如图1所示,系统整体分为图像采集部分、图像处理部分和显示控制部分。
图像采集部分
图像采集部分采用自行设计的视频采集电路板,视频数据通过Vertex-5的GPIO接口接入,通过一个自行设计的硬件BT656解码器,将图像数据帧的纯数据提取出来,然后由DMA将其搬入到Vertex-5平台的DDR2 SDRAM中。整个采集过程是由硬件独立完成,仅在系统的上电初始化阶段由CPU参与,在后续的图像传输过程中数据流可以独立运行。
图2视频采集结构图
接入FPGA后的数据处理如图3所示,经过转化和解码后的视频数据首先接入FIFO中,并由DMA从已经自行设计的流接口控制模块将FIFO中数据搬入DDR2_SDRAM中,后面将由Macroblaze软核对图像数据进行处理。
图像处理部分
图像处理部分基于Macroblaze软核并结合用户自定义设计模块进行。图像处理的工作主要由自定义设计的模块完成,本设计中,由于涉及到多路图像的处理操作,数据吞吐量和处理工作都比较巨大,仅靠Macroblaze处理器很难完成预定的运算量,因此,本设计的一个特点在于,将定制大规模的图像加速处理自定义硬件模块,以完成对图像处理的操作。
其中Macroblaze主要负责进行外设的管理配置,数据流控制,以及显示交互控制。图像的采集、预处理部分的工作,需要将视频视频解码并由DMA将传输入视频数据搬入DDR2 SDRAM中。
图3. 系统软件流程图
如图3所示为系统的软件流程图,其中标红的部分为待选择完成的内容,今后将对这几部分进行实现,视频的合成算法研究是本系统最终实现的部分。图像的合成算法采用了基于区域匹配的合成算法,本算法在对两幅图像之间的边缘处理上具有很高的拟合特性,与基于特征点匹配的合成算法相比,图像的边缘痕迹更加的淡化,图像的合成效果更佳。
显示控制部分
图4 通过PC模拟算法的显示效果
图4为在PC机上执行算法后的图像显示效果。图像最终通过Vertex-5的DVI转接VGA接出,后续的工作还将采用触屏VGA显示器,以提高产品人机交互的易用性和友好性。
系统实施与测试
视频采集部分
1、视频采集部分的PCB设计
视频采集电路板的设计工具为Cadence 16.3,主芯片采用了TVP5150,电路板接入了六路模拟视频图像,我们在本系统中仅使用了其中的4路,另外的两路是本系统在针对大型作业车辆而设计增加的额外的摄像头。下图为采集板的设计原理图:
图5 视频采集电路板原理图
视频的A/D转换部分
此部分选用了六个TVP5150芯片进行视频解码。由于其使用简易,超低功耗,并且封装极小,因此被广泛使用。
此部分的设计原理图如下:
图6 TVP5150解码芯片原理图
电源部分
电源部分的供电主要有3.3V和1.8V。电源芯片采用了X1117芯片,原因上面已经讲过了,在这里就不再赘述了。原理图如下:
图7 电源芯片
外围接口及时钟
根据TVP5150芯片资料,时钟采用了14.31818MHz的时钟芯片。为了保证芯片的时钟供应的稳定性,设计中采用了3片时钟芯片,每两片共用一个时钟芯片,以保证芯片的工作稳定性。
外围接口和时钟原理图如下:
图8 时钟芯片原理图
图9 与Vertex-5平台连接接口定义原理图
本系统的电路板采用了4层板设计,布局布线后的效果如图6所示。
图10 视频采集电路板布局、布线图
最终电路板的实物图如图7所示。
图11视频采集电路板实物图
2、频数据的采集
这个部分又可以分为两部分:1、视频采集电路、数据格式转换及缓冲区的设置。2、Microblaze软核,具体的Microblaze系统结构如图12所示。
图12. Microblaze系统结构图
如图4所示,摄像头采集到的数据首先通过A/D芯片,将模拟信号转换为BT656标准的数字信号,这里的信号主要有8位数据线、27MHz的输出时钟、行同步信号(HS)和场同步信号(VS)。经过转换模块将数据转换为去消隐后的BT656标准的数据,这里的输出信号为16位数据信号和写使能信号。
图13. TVP5150芯片视频编码格式
图14. ITU-656视频格式
然后写入到读写时钟异步的FIFO中,FIFO与流控模块FIFO_ST相连。后续的数据搬移操作就由DMA来进行了。
数据的采集处理方式,采用了DMA + FIFO的方式,由于视频采集的数据量较大,这里更适合采用流传输模式。因此,此部分使用了适合进行流数据传输和搬移的DMA。
图像处理与显示
由于Microblaze软核的主频运行速率最快只能达到200MHz,在其上运行视频合成算法每秒不到1帧,因此,我们将原有的算法在PC机上运行,并生成相应的数据合成映射表,为了提高查表效率,还将大表分解为小表,使查表速率得到了一定的提升。但是此时系统的运行速率依然不能满足显示要求,所以,我们充分发挥了FPGA的优势,将查表模块进行了硬件化实现,最终达到了显示的要求。
结论
本系统按照预期的计划,完成了既定的任务和目标。充分发挥了FPGA平台的优势,并且在这个过程中我们也解决了很多技术难题:通过自行设计的视频采集电路板,解决了Vertex-5的多路视频接入的问题;解决了大量数据的搬移和处理问题;设计改进了现有的图像合成算法,并加以硬件实现提高了系统的性能。但在显示效果和运行速率上仍然有提升空间,在后续的工作中我们还将加入车道线识别、并线辅助、自动刹车等功能,不仅如此,还有可能对现有设备再进行进一步的升级,将原有的模拟摄像头更换为数字摄像头,以达到更好的效果。
页:
[1]