汽车雷达全频目标识别算法与FPGA实现

李瀚超+陈章进+姜鹏程
摘 要: 提出一种用于汽车雷达防撞技术的全频目标识别(FSTR)算法,该方案采用24 GHz毫米波雷达,在FPGA平台上进行信号处理。通过python软件实现算法并进行仿真,仿真结果和FPGA实际运行的结果一致。该方案的雷达扫频信号为100 Hz的锯齿波,采样频率为480 kHz,离散傅里叶变换(DFT)点数为4 096点,每一帧数据的时间间隔为10 ms,满足车辆行驶实时性的要求。通过对道路行驶测得的数据比较,相比主流的恒虚警率(CFAR)算法,本算法抗干扰能力更强,精确度更高。
关键词: 雷达; 汽车防撞; 全频; 离散傅里叶变换
中图分类号: TN911.72?34 文献标识码: A 文章编号: 1004?373X(2017)23?0171?04
Abstract: A full spectrum target recognition (FSTR) algorithm used for collision avoidance technology of automotive radar is proposed. A 24 GHz millimeter?wave radar is used in the scheme to process the signal on FPGA platform. The FSTR algorithm is realized with the python software, and its simulation result is consistent with the actual running result processed by FPGA. The items of the scheme can meet the real?time requirement of vehicle travel, which includes that the radar sweet?frequency signal is the 100 Hz sawtooth wave, the sampling frequency is 480 kHz, the discrete Fourier transform (DFT) count is 4 096, and the time interval of each frame data is 10 ms. The comparison result of the data measured in vehicle travelling shows that, in comparison with the constant false?alarm rate (CFAR) algorithm, the FSTR algorithm has stronger anti?interference ability and higher accuracy.
Keywords: radar; automobile collision avoidance; full spectrum; DFT
0 引 言
经济的发展提高了人们的生活质量。随着汽车数量的增多,交通事故的数量也增加了。根据美国各州公路工作者协会资料显示,司机从感知、判断到制动产生效果需要[1]3 s,当前大部分科研工作者把精力放在减少司机感知的时间上。主流的汽车防撞预警技术以图像识别和红外等为主[2?3],但这些技术受环境影响很大,恶劣环境下,往往不能减少司机感知的时间。图像识别技术在白天的准确率很高,但在晚上和雾天,准确率大大下降[2]。红外识别技术受到雨滴的影响,在雨天效果很差[3]。基于毫米波雷达的汽车防撞预警技术具有不受天气环境影响的优点,可以适应各种环境。本方案采用24 GHz毫米波雷达,在FPGA平台上进行信号处理,通过python软件实现算法并进行仿真。本方案提出的全频目标识别(Full Spectrum Target Recognition,FSTR)算法与主流的恒虚警率(Constant False?Alarm Rate,CFAR)算法[4]比较,FSTR算法的虚警率更低,抗干扰的能力更强,更加适应复杂的路况环境。
1 雷达测距原理
本文方案使用的是载波频率为24 GHz毫米波雷达。调制信号[Tramp]是100 Hz的锯齿波,调制宽度[BSW=]150 MHz,雷达载波频率[fc=24] GHz,在低速环境下,多普勒效应对距离的误差[5]小于0.1 m。因而本方案忽略多普勒效应,使用一次DFT计算得到距离信息。
2 全频目标识别算法与FPGA实现
雷达测距的表现与目标物的反射面积、目标物的材质有关,金属之类反射率比较高的材料在雷达测距上的表现更好。雷达在汽车行驶时,可以测到多个目标,但在安全层面,只有最近的目标物才是影响汽车安全的关键,因而用以预警的目标物在频谱上应该满足两个条件:相对在整个频谱上,幅值足够大;在量测到多个目标物时,应取距离最近的目标用以预警。针对这两点,本文提出一种全频目标识别算法,该算法可以分为两部分:第一部分提取频谱上所有目标物的频率;第二部分选取最近的可能目标频率用以预警。本文采用的是4 096点DFT基2算法,因为DFT具有对称性,前2 048个数据已能满足实验要求。
2.1 所有目标物提取算法
根据式(13)得到频率和DFT序号之间的关系,由每一个数据序号对应的幅值大小判断其是否是一个可能的目标。首先,求得2 048个数据中的最大值[Gmax,]然后将2 048个数据按照序号分成[N=256]组,每组[M=2 048N=]8个元素,例如数据1~8为一组,9~16为第二组,以此类推。在多次实验比较中,[N=256]是一个较合适的参数。经过计算得到64组中每组数据的最大值[Gk,][k=1,2,…,255,256]和[Gk]对应的序号[nk,]从而得到两个集合[G=G1,G2,…,G255,G256,][n=n1,n2,…,n255,n256]。
考虑到目标物应满足在频谱上的幅值足够大的条件,设定阈值[F1=0.6Gmax,]若[Gk,][k=1,2,…,255,256]大于阈值[F1,]则认为存在一个目标,将[Gk]存入集合[T,]将[nk]存入集合[T_n。]
2.2 最近目标识别算法
集合[T]已包含所有可能的目标物的幅值大小,[T_n]包含目标物对应的序号。在安全层面,只有最近的目标物才需要预警,但由于路面环境复杂,频谱会出现一些干扰信号,这些干扰信号会造成虚警。雷达测距的好坏和目标物的面积有关,一个良好目标物在频谱上往往表现成一个主峰和一些次峰的叠加,只有主峰才是准确的目标信息。FSTR的第二部分用于准确地识别最近的目标距离。
设定阈值[F2=0.8Gmax,]用以区分同一目标内多个波峰的主峰。最近目标识别算法流程如图2所示。
2.3 FPGA架构
本文方案采用DE2?115FPGA开发板,主频为50 MHz,数据位为32位,地址位为12位。FPGA架构见图3。DFT模块输出使能信号AvEn,数据信号Avdata和地址信号AvEn,Max Group将DFT的输出经过处理后输出256组数据中的最大值到RAM中,当DFT输出2 048个数据后,FSTR开始读RAM的数据进行运算,最后输出目标物的幅值Target和序号Target_n。
3 实验结果比较
本文使用的是载波频率为24 GHz毫米波雷达。调制信号[Tramp]是100 Hz的锯齿波,调制宽度[BSW=]150 MHz,雷达载波频率[fc=]24 GHz,采样频率是480 kHz,DFT点数为4 096。根据式(13),式(14),本方案距离的分辨率是1 m,能测到的最远距离是300 m。
3.1 不同算法实验数据比较
雷达的准确度和环境的复杂程度成反比,环境越是复杂,雷达受到的干扰越多。经过大量测试发现频谱的干扰主要来自两方面;一个是毛刺信号,另一个是环境干扰。毛刺信号见图4(b)。图4(a)是卡车距离19 m拍到的图片,图4(b)是该图片对应的频谱。在频谱图里,实线表示频率大小,虚线表示CFAR的阈值,实线大于虚线表示识别出目标。圆点表示FSTR识别出的目标。从图4(b)可以看到,CFAR和FSTR都识别出卡车,但CFAR在3 m附近将毛刺信号也认作是目标,这就是毛刺虚警。由于毛刺虚警显示的距离比实际距离小,若驾驶员根据毛刺虚警制动就会产生与后车碰撞的危险。FSTR因为以全频谱的最大值作为判断参考,因此不会出现毛刺虚警。
环境虚警是由于复杂环境导致雷达信号出现干扰,距离计算出现偏差。图5(b)是卡车行驶至测试车30 m前的频谱图,在目标卡车的右侧车道还有一辆卡车,因此频谱更复杂。此时CFAR认为频谱内没有目标物,严重出错,FSTR计算的结果更符合实际情况。对该卡车测得的165帧数据进行FSTR和CFAR比较,结果见表1,可见FSTR在准确率上高于CFAR。
3.2 FPGA与仿真结果比较
图6(a)中,AvData输出的是整个频谱,肉眼可以判断的目标序号是828,幅值大小是49 836,与Target和Target_n的输出相同。图6(b)中可以看出在DFT输出最后一个数据后,整个FSTR的运行时间约为300 ps,运算时间足够快。
3.3 目标时域分析
图9是目标卡车在30 s中的距离变化,可以看到卡车的距离从20 m逐渐增加到53 m,距离随时间的变化有许多小毛刺,毛刺的产生有两个原因:卡车与测试车的速度变化大;环境干扰。这表明单凭1帧的数据判断距离仍然会有误差。图9在20 s左右的时候出现了161 m的数据,经检查,应该是测试环境出现问题或者开发板受到干扰所致。
4 结 论
本文提出一种应用于雷达汽车防撞技术的FSTR算法。通过路上测试发现该算法可以有效识别出目标物。相比主流的CFAR算法,FSTR算法可以避免毛刺虚警,不会出现严重的误判。由于雷达本身的准确度和环境的干扰问题,只凭1帧的数据识别目标距离的准确度还是较低,如果结合前后几帧的数据进行目标识别可以提高目标的准确度。
参考文献
[1] AASHTO. A policy on geometric design of highways and streets [R]. Washington, DC: American Association of State Highway and Transportation Officials, 2001.
[2] 伍宗富,陈日新,朱明旱.基于图像识别的汽车智能防撞系统研究与实现[J].机械与电子,2008(9):56?60.
[3] 蒋晓玲,孟志强,陈燕东,等.汽车追尾防撞红外测距系统[J].光电子技术,2011,31(1):67?72.
[4] 蒋铁珍,武虎,吴凯,等.毫米波汽车防撞雷达恒虚警率门限设定方法[J].红外与毫米波学报,2005,24(3):217?220.
[5] SONG M, LIM J, SHIN D J. The velocity and range detection using the 2D?FFT scheme for automotive radars [C]// Proceedings of 2014 the 4th IEEE International Conference on Network Infrastructure and Digital Content. [S.l.]: IEEE, 2014: 507?510.
[6] PETER T.雷达目标识别导论[M].北京:電子工业出版社,2013.