1.障碍物检测技术综述
按照现有技术,障碍物检测技术可分为主动检测和被动检测两种。
主动检测的检测设备一般分为发射和接收两部分,即需要通过发射器向待检测区域发射某种信号,通过接收部分收集反射信号,进行信号处理从而得到待检测区域的相关信息。主动检测技术需要对外释放一定功率的电磁波,而雷达技术就是一种典型的主动检测技术。根据所发射的电磁波种类的不同,雷达可细分为不同的种类,常见的有激光雷达、微波雷达、毫米波雷达、超声波雷达等。
被动检测的检测设备直接从环境中接收信息,并通过相关算法处理得出感兴趣的数据。被动检测是非侵犯式检测,不增加环境噪声,功耗低,获取信息量大,但其信息来源完全依靠外界,在恶劣环境如夜晚或大风、雨、雪、雾等条件下基本失效。被动检测主要指图像检测,其算法计算量较大,较主动检测技术不易实现,但随着计算机技术的快速发展,被动检测的难度也在迅速降低。常用的图像检测方式有单目视觉/立体视觉、黑白/彩色图像等。表3-1对比了目前障碍物检测领域常用的几种检测器的各项指标。
表3-1 各类障碍物检测技术特性对比
从表3-1中可以看出,雷达类检测器具有较为稳定的性能,其中毫米波雷达各项指标尤为突出;雷达算法相比视觉检测算法简单;视觉检测也具有较大潜力。
2.雷达检测关键技术
雷达技术从第二次世界大战开始就已被应用在军事领域,经过80多年的发展,使其具有了很高的可用性以及可靠性。目前,雷达技术在民用领域也得到了广泛发展,尤其在航空领域以及汽车领域,已有较多比较成熟的研究。但是在轨道交通领域,雷达的使用并不广泛。
一般雷达的结构包括:发射机、发射天线、接收机、接收天线、信号处理设备以及显示器。另外还有电源设备、数据录取设备、抗干扰设备等辅助设备。其原理是雷达设备的发射机通过天线把电磁波能量射向空间某一方向,处在此方向上的物体反射碰到的电磁波,雷达天线接收这些反射波,送至信号处理设备进行处理,提取有关该物体的某些信息(目标物体至雷达的距离,距离变化率或径向速度、方位、高度等)。目前,无论是军用雷达还是民用雷达,基本都能够较为精确地检测目标类型、目标相对位置和目标相对速度。
根据雷达所使用电磁波种类,大体分为激光雷达、微波雷达、毫米波雷达、超声波雷达等,不同类型的电磁波雷达具有各自的特点。
一般雷达分为天线、收发前端、信号处理模块等部分。图3-14简要表述了超外差式接收机的雷达系统结构。其中,雷达发射机将按照一定规律调制的电磁波信号经由发射天线发出,其中一部分通过混频器与接收机接收到的信号进行混频,并根据混频获得的中频信号进行目标距离、速度等信息的获取。
目前较为成熟且容易实现的算法主要是通过快速傅立叶变换(FFT),针对单目标情况,能够一次性获得目标距离及速度信息。在多目标环境下,由于雷达特性会出现距离-速度耦合的现象,针对此问题,提出了MTD频域配对法、MTD速度配对法、质心凝聚法等算法;对于目标角度的测量,有MUSIC算法等。由于雷达会接收到一些非障碍物目标的回波,称为环境噪声,常用的环境噪声去除算法有匹配滤波、固定门限、自适应阈值(CFAR)等。
一般情况下,雷达在一个探测周期内的信号处理流程如下:
(1)接收目标区域的回波;
(2)对回波进行门限设定,噪声去除;
(3)将回波进行分组;
图3-14 超外差式接收机的雷达系统结构
(4)对回波进行速度-距离二维处理,完成多目标速度距离匹配;
(5)对获得的目标信息进行角度计算。
目前,雷达算法的实现一般使用基于FPGA或DSP芯片。
3.视觉检测关键技术
视觉检测技术等同于图像识别技术,通过摄像机或照相机从检测环境中收集图像信息,并利用一定的算法从中提取所需要的特征,输出需要的数据。视觉检测在无人车研究领域应用广泛,除了能够进行目标检测,还能进行信号灯、道路接线、车道等的识别。视觉检测的一般流程如图3-15所示。
视频采集即是通过设备收集待检测区域的信息,在检测设备的布设方面,一般使用高清摄像机,在目前的智能车视觉识别系统中,有单摄像机、双摄像机及多摄像机三种布设方式。其中,单摄像机的系统和处理算法都较为简单,实时性最高,但其获得的信息量有限;双摄像机系统类似于人眼,能够检测到更多三维空间的信息,但其计算量和算法的难度也较单摄像机系统有较大提升;多摄像机系统能够全方位地收集待测区域的空间信息,并能够通过相应算法进行还原和建模,其功能类似于激光成像雷达,但算法非常复杂。
图3-15 视觉检测流程
在实际检测中,可以使用彩色或黑白摄像机,彩色摄像机获得的数据量更加庞大,同时受外界光线的影响也比黑白摄像机要大。在光线不是特别充足的环境下,可以直接使用黑白摄像机,黑白摄像机由于只记录灰度数据,抗干扰能力要强于彩色摄像机。彩色摄像机的图像经过图像灰度化处理能够转化为黑白图像,也称为灰度图像。
图像数据预处理一般包括图像灰度化、去除噪声等过程。图像灰度化即利用改变RGB几个分量的数值来进行,图像灰度化会降低图像所包含的信息量,但也相应地降低了算法的计算量。针对图像在采集、传输过程中由于抖动等外部不利环境因素形成的噪声,一般采用邻域平均法、中值滤波法等算法进行处理。
感兴趣区域指目标出现的区域,道路交通视觉识别中需要把道路或相关车道区域分割出来,轨道交通视觉识别中需要将轨道限界识别出来,处理轨道限界内的目标信息。一般图像分割采取阈值分割法,其基本原理是根据图像的灰度数据,将图像分割成与实际物体相对应的区域,分割后的每个区域具有均匀的灰度值,但各区域之间却不同,阈值的选取一般根据实际应用环境会有所不同,常用的方法有直方图法、迭代法等。另外,基于区域生长的分割方法有利用将选取的“种子”作为区域生长起点,再将邻域中特征相近的像素点合并,最终完成分区。
障碍物识别方面,利用图像形态学相关算法,主要包括开运算、闭运算、腐蚀以及膨胀,通过障碍物特征参数与背景区域的不同来提取目标障碍物。针对运动障碍物的检测方面,有光流法等算法。
障碍物距离的估测,一般应用从CCD相机坐标系到空间坐标系的转化方法,以单目摄像机为例,如图3-16所示,摄像机通过镜头将三维空间的点投影到二维的图像平面上,每个像素点与实际目标点三维坐标之间有对应关系。
取CCD焦距为f,du与dv为一个图像像素点的物理宽/高,空间点(Xc,Yc,Zc)在摄像机图像平面的投影点为(u,v),二者之间有如下关系:
图3-16 摄像机投影点与实际点关系
根据逆投影变换规律,可以通过投影点与空间点的关系获得障碍物基于CCD坐标系的距离信息。
基于视觉识别的技术不仅能够在一定程度上检测障碍物及其相关参数,更多比较成熟的算法及技术被应用于车牌识别、信号灯识别等领域。
行人识别技术以及机器学习相关的算法也是视觉识别技术未来发展的方向,希望能够通过相关算法完成更多任务。
视觉检测由于是一种被动检测手段,所获取的信息完全依赖于外界被检测目标与被检测区域,受外界环境影响较大,在一些恶劣天气条件下将失去作用。因此,视觉检测一般与其他检测器配合使用,作为主要检测器或者辅助检测器出现。
通常选取两种甚至多种检测器协同工作,需要对各种检测器获取的数据进行数据融合。常用方法是可以选取某检测器坐标为基准,将其他检测器所检测到的信息(目标位置、速度等)转换到基准坐标系中,然后再进行后续算法。也可以将所有检测器的数据转换到车辆坐标系中统一运算。常用的检测器数据融合算法有加权平均法、卡尔曼滤波法、贝叶斯估计法等,都是从数据层面对来自不同检测器的数据进行整合。
1)机器视觉简介
基于机器视觉的辅助驾驶是目前图像研究领域的一个热点研究方向。机器视觉是指用计算机来实现人的视觉功能,采用机器视觉代替肉眼进行障碍物的探测,具有解决实际困难和探索全自动探测系统的设计方法的双重意义。
用计算机来实现对客观世界的识别,设计一套以图像特征提取和特征分析为支撑的有轨电车辅助驾驶系统,由机器视觉代替肉眼来实现对路轨表面状况的探测识别,帮助驾驶员安全运行车辆,这有助于完善整个系统的自动探测功能,最终完全实现机器探测,甚至无人驾驶。(www.xing528.com)
有轨电车的运行特殊性,决定了它与高速铁路轨道检测和公路车道线检测相比,存在以下检测难度:①复杂多变的背景;②弯道、上下坡路段众多;③高楼、电线杆、接触网造成的阴影严重。另外,雾霾、雨雪、夜晚等天气变化和光照角度的变化也会对轨道的识别产生严重影响。因此,设计的视觉系统必须要适用于各种不同的场景,且具有较强的抗干扰性识别能力。图3-17—图3-19分别是高速铁路轨道、公路车道线和有轨电车轨道。
图3-17 高速铁路轨道
图3-18 公路车道线
图3-19 有轨电车轨道
根据现代有轨电车的特点,有轨电车机器视觉系统的硬件部分是将CCD摄像机架设在电车前方驾驶室中,实时动态采集电车行驶前方的图像画面,应用机器视觉和图像处理技术对图像进行特征提取和分析,实现对轨道、障碍物等的准确识别和动态追踪,完成对电车的辅助驾驶,提高安全性。有轨电车机器视觉系统流程如图3-20所示。
图3-20 有轨电车机器视觉系统流程
2)两种机器视觉检测系统
(1)现代有轨电车限界识别及实时动态追踪系统
在智能交通领域,真正具有实际应用价值的图像视觉系统应当是对采集到的图像能够进行实时处理和动态追踪。而采集到的图像往往包含大量无关信息,这势必会导致检测效率及准确度的降低,无法达到实时性。因此,有轨电车的视频限界识别及实时动态追踪在机器视觉辅助驾驶系统建设中具有重要的参考价值和现实意义。
对于单帧图像有轨电车限界识别,主要包括图像预处理、限界区域分割、限界特征点提取、限界模型构建等方面,如图3-21所示。
图3-21 单帧识别方法研究流程
图3-22为各种不同场景下的实验结果,包括左侧原始图像、中间多阈值分割二值图和右侧限界ROI区域。限界系统不仅要求能对直道铁轨进行准确识别,对于弯道、上下坡等不同走向的铁轨也能取得良好的效果;不仅能够应用于普通光照下的一般场景,对于雨雾、夜晚等特殊场景也有很好的适用性。
图3-22 各种不同场景下的实验结果图
在有轨电车的车头驾驶台上安装摄像机,实时采集前方的行进图像并进行处理。当摄像机帧率确定以后,系统每隔一定时间都会获取到一帧图像,比如当帧率为10fps时,每隔100ms会获取到一帧图像。如果能够确定单帧轨道识别的算法耗时小于100ms,就能实现实时检测、实时追踪。一方面,在实际情况中,场景不同、背景干扰不同使得算法的复杂度也不尽相同,背景简单、光照均衡的场景算法耗时较短,背景复杂、天气恶劣的场景算法耗时较长;另一方面,相同算法在不同的硬件环境下运行,耗时也不一样。
如上所述,这就需要引入线程池,以动态增减工作线程的方式处理获取到的图像帧。系统的流程图如图3-23所示,首先对主线程和线程池内的核心工作线程进行初始化,核心工作线程一直存在,不会随着每一帧图像识别过程的结束而释放。线程池内核心工作线程的初始个数根据一般场景下单帧图像识别方法的耗时长短来确定,在本书使用到的硬件测试条件下,耗时一般集中在100~200ms之间,所以首先初始化两个核心工作线程。主线程每隔一定时间获取图像帧,向线程池提出分发请求,线程池在接收到请求后,查询已存在的核心工作线程是否处于忙碌状态,如果不忙碌,则将图像帧发送给相应的核心工作线程;如果核心工作线程正处于忙碌状态,则创建新的工作线程并将图像帧传入,待处理完成后销毁新建的工作线程。工作线程在接收到图像帧后,将自身状态置为忙碌,执行单帧图像处理算法来进行轨道识别,待识别完成后,更新线程内的部分参数(主要更新左右两侧轨道新的起始点位置),处理完成后将工作线程状态置为空闲,并进行相应资源的释放。
图3-23 系统流程图
单一工作线程内部的单帧轨道识别算法,也可以通过多线程并行处理的方式减少算法耗费的时间。左右两侧轨道的识别算法大体一致,相互独立,可以建立两个线程并行进行轨道识别,如图3-24所示。首先对获取到的图像进行预处理,主要包括灰度化和高斯滤波。其次,将预处理后的灰度图发送给两个线程,线程1对左侧轨道进行识别,线程2对右侧轨道进行识别。单个线程内部依然按照先确定轨道阈值分割参数,之后分割轨道区域,最后提取轨道特征点构建轨道模型的过程进行一侧轨道识别。轨道识别完成后,左右延拓,划定限界区域。
图3-24 双线程并行轨道识别算法
(2)现代有轨电车障碍物识别系统
基于机器视觉的障碍物检测技术主要依靠安装在车辆上的摄像头获取车辆行驶前方的图像信息,并运用数字图像处理技术来检测障碍物。与其他障碍物检测技术相比,基于机器视觉的障碍物检测技术有以下优点:
①与雷达传感器相比,摄像头安装更加方便,调试设备也相对简单;
②摄像头获取到的信息比其他传感器更多,除了视野更加开阔外,还可以获取车道线、交通标志线等信息,同时可以准确地对目标进行区分;
③与雷达传感器、激光传感器相比,图像采集传感器性价比更高。
因此,机器视觉能够提供给驾驶员大部分人眼能够提供的驾驶信息,特别是近年来,随着计算机硬件性能的不断提高,基于机器视觉的障碍物检测技术逐渐成为一种主流发展技术。有轨电车由于其相比火车、地铁的道路开放性,所面临的情况更为复杂,实用性也更强,图3-25为有轨电车拍摄到的车辆和行人横穿轨道的场景。
图3-25 有轨电车所拍摄到的行人和车辆的视频截图
有轨电车障碍物识别系统安装在有轨电车的车头微型工控计算机上,通过安装在车头的摄像头实时采集车辆行驶前方的图像帧序列,并将这些数据传输给后台计算机进行实时处理。基于机器视觉的有轨电车障碍物识别系统软件主要包括六个功能模块:视频采集、日志记录、本地文件读取、数据库访问、障碍物识别及识别参数设置、语音报警。
视频采集模块可以通过摄像机将实时获取到的视频存储在本地计算机中。日志记录模块可以在系统软件运行的过程中得到各种软件状态信息,比如视频采集成功提示语,障碍物检测提示语等。本地文件读取模块可以将以往已经录制好并存储在计算机中的视频重新播放,也可在障碍物识别系统中运行。障碍物识别及识别参数设置模块是本系统的主要功能模块,用于对视频中的障碍物进行检测并分类,并且在不同的路况和天气下,通过参数调整可以实现全路况的障碍物检测。数据库访问模块主要用于记录存储在服务器上的视频文件,并可通过服务器将文件下载到本地播放。语音报警模块是在障碍物出现时播放音频,提示有障碍物出现。
整个系统中最主要的部分,即障碍物识别模块的工作流程如图3-26所示。
图3-26 障碍物识别模块的工作流程
针对摄像机的实时图像帧率10帧/s,需要通过线程池采用多线程机制来使系统在0.1s内处理完一帧图像,以保证不漏帧和不丢帧。
系统运行过程中出现障碍物时的画面如图3-27所示。当图像中出现行人、车辆等障碍物时,系统会在窗口右上角标出障碍物种类,并用醒目的颜色在图像上标记出来(障碍物面积不同所标注的颜色也不同),同时发出刺耳的声音来提醒驾驶员注意前方道路,从而保障行驶安全。
图3-27 障碍物识别预警系统
有轨电车上的机器视觉的应用有助于辅助驾驶员目测判断前方路况,提前给出对于前方路况的初步判断,使有轨电车能够更加安全可靠地运行。然而,如何应对复杂多变的天气道路、种类繁多的障碍物等则是对有轨电车中的机器视觉系统的一个重要的考验。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。