文献标识码:A
DOI:10.16157/j.issn.0258-7998.181149
中文引用格式:缪诚钰,李鹏,张精榕,等. 一种机器视觉距离补偿路面破损位置定位方法[J].电子技术应用,2018,44(10):68-72,77.
英文引用格式:Miao Chengyu,Li Peng,Zhang Jingrong,et al. A pavement damage location algorithm based on machine vision distance compensation[J]. Application of Electronic Technique,2018,44(10):68-72,77.
0 引言
我国高等级公路网的建设已跻身于世界领先水平[1]。高性能、高可靠性、高效率和多信息化的路面检测装备已经成为路面检测部门的迫切需要。传统的人工检测算法效率低、精度差、劳动强度大和安全性差已无法满足道路养护作业需求。随着图像处理技术和人工视觉技术的快速发展,基于机器视觉路面检测识别系统得以发展。同时为检测载体在快速行驶下准确的识别路面破损类型以及确定高精度路面破损位置提出了更高的要求。
20世纪90年代,美国的Earth公司研制出PCES系统,瑞典一家公司推出PAVUE系统,但是这两个系统实时性较差,同时对于裂缝的定位精度较低[2]。我国在路面破损的自动检测识别研究方面起步较晚。长安大学的徐志刚、赵祥模等人一直在对路面裂缝的识别与检测系统进行研究,同时实现对图像中有裂缝部分的精确定位[3]。
高速载体运动下的导航定位精度是卫星导航领域下的热点问题,同时实现路面破损的高精度定位一直是路面破损智能识别与检测系统的重点研究方向之一。近年来,我国全球北斗定位系统的快速发展,为实现路面破损的智能、快速、高精度的定位提供了有效的手段。虽然目前差分技术、组合导航的技术可以有效地提高定位精度,但是实用性不强且成本较高。本文结合基于FPGA的路面破损的智能识别和检测系统,提出了一种基于机器视觉距离补偿的北斗路面破损智能识别定位算法,提高了在高速运动情况下路面破损定位的精度。
1 路面破损识别检测系统和高精度定位的实现
1.1 基于FPGA的路面破损监测系统
基于FPGA的路面破损识别检测系统[4]的实现包括路面信息的采集、路面破损检测算法、硬件系统的设计、北斗定位、无线传输五大部分组成。系统的结构见图1。
减少由于光线不均匀的照射和传感器的感光问题带来的误差噪声。同时对CMOS摄像头进行初始化配置:从设备操作视频图像为每秒30帧、输出高8 bit的RAW RGB格式视频信号,默认采取VGA分辨率输出、开启自动增益AGC功能、开启自动白平衡AWB功能、开启自动曝光AEC功能以及亮度值补偿功能等。
工作流程为首先提出一种基于公路路面图像特征提取和分析的路面破损检测方法[5],并用FPGA构建硬件系统进行处理,然后将处理结果通过SDRAM进行缓存然后进行VGA显示,当判定有破损时会向定位模块获取定位信息,并将进行运动补偿后的破损定位信息在LCD上进行显示,最后通过无线传输模块把获取到的图像信息和破损位置信息发送至后台服务器显示并存储。
1.2 高精度破损定位算法的实现
实现高精度的路面裂破损定位的流程如图2所示。首先对北斗定位原始数据进行扩展卡尔曼滤波[6]处理,消除车载北斗信号容易受到遮挡和干扰的影响。消除误差之后将车载北斗接收机接收到的经纬度信息经过高斯投影坐标转换到平面坐标系。对CMOS相机采集的图像帧数据进行数字图像处理,得到裂缝的在实际中的物理距离,最后进行FPGA运算耗时的运动补偿,进行坐标转换得到裂缝的经纬度。
2 基于EKF的北斗高精度的定位数据的获取
本系统首先通过扩展卡尔曼滤波(EKF)将北斗接收机接收到的数据进行滤波处理[7],建立系统模型消除由于高楼建筑物和树木遮挡导致定位精度偏差和数据丢失的问题。
假设车辆在行驶过程中是一个二维运动,则车辆运动的轨迹、实时速度都可以通过加速度的运动来推算出来,从而建立系统的运动状态模型。因此,只需要将加速度变化的模型建立出来就可以表示运动载体当前的运动状态[8]。
2.1 加速度模型的建立
由于汽车在做加速运动时,它的下一瞬间的加速度的值是在一个有限范围内的,也就是在当前加速度的领域内。用一阶马尔科夫过程表示加速度的变化:
2.2 状态方程
2.3 观测方程的建立
将北斗接收机接收到的数据东向位置信息ze、北向位置信息zn、实时速度v和方向角θ建立观测方程,离散化可得:
由于该方程是非线性的,采用EKF进行线性化,即将预测值处泰勒级数展开,保留一阶项。
通过EKF来对裂缝识别车在行驶过程中由于树木或者高楼引起的多径效应的误差进行修正,来得到更加精确的识别车的定位精度。
3 距离补偿定位校正
3.1 FPGA图像处理的运算时间补偿
考虑到裂缝种类的特殊性,因此在裂缝判定分类时应该根据收集的大量不同裂缝图像的投影特征,设定不同的阈值标准且安排一定的顺序,设定阈值较高的应该事先判定分类,具体的设置方法在这里就不再赘述。
整个系统的图像处理设计流程如图3所示。
为得到FPGA图像处理得到的运算时间,对图像处理过程通过ModelSim-Altera仿真软件进行功能性仿真,得到完成中值滤波耗时t1=1.200 ms,边缘检测耗时t2=1.205 ms,膨胀算法耗时t3=1.278 ms,腐蚀算法耗时t4=1.126 ms和计算裂缝物理距离耗时t5=1.002 ms,通过仿真,可以知道该系统的实时性较好。但是考虑到本系统的使用场景,当裂缝识别车在高速运动时,FPGA进行图像处理时的计算速度造成的定位延时,需要对经纬度的信息进行误差运动补偿。
北斗接收机可以实时地提供裂缝识别车的运动速度,在1 s内将车行驶的速度近似为匀速运动。通过经过滤波后的速度v,与FPGA进行图像处理的时间总和t,计算公式如下:
3.2 基于机器视觉的误差校正
本系统采用的是OV7725摄像头进行图像采集,采集速度为30 f/s,采集的图像大小是640×480。采集系统模型如图4所示。
由于摄像头固定在车的顶部位置,对OV7725摄像机进行定标处理后[9],仅需要对特征提取裂缝图像后的二值化图像帧数据进行运算,计算裂缝A点位置裂缝在这一帧图像中的距离。
当OV7725摄像头固定在汽车上时,裂缝识别车到摄像头采集到的视角的边距S1是固定值为2 m,由于物距是固定的,经过大量的统计测量可以得到单位长度对应的像素数为σ,通过对二值化后的裂缝像素点在图像坐标系中坐标(u,v)进行差分,并迭代相加,统计出像素点的个数n,最后转换为物理距离,计算公式如下:
图5是经过FPGA图像处理后二值化图像进行物理距离的运算,与实际的测量距离比较得到误差值如表1所示。
4 北斗数据的转换
由于北斗接收机输出数据采用的是2000国家大地坐标系,因此需要运用CGCS2000坐标系进行高斯投影坐标正反转换计算[10]。本系统采用的是6°带投影算法。南京地区中央子午线为117°,建立高斯投影平面坐标。
CGCS2000坐标(B,L)转换成平面直角坐标(x,y)的高斯投影坐标正算公式为:
5 算法测试与实验结果分析
为了验证该算法的有效性和实时性,本课题组于2017年12月20日在南京信息工程大学进行路面破损采集定位测试。试验设备是由泰斗D303北斗芯片接收数据,在一定时间内进行定位数据的采集,如时间、纬度、经度、速度、航向和方位角等。采样频率为1 Hz。图6是经纬度运动轨迹,图7是速度的变化量.
图8是滤波后的纬度和滤波前的纬度比较,图9是滤波后的经度和滤波前的经度比较。以经度为118.425 123°,纬度为32.125 222°坐标为起始位置,从图中可以看出由于实验过程中学校内部的高楼和树木较多,导致系统的误差较大。通过EKF滤波后经纬度值更加接近真实值。
在运动过程中对路面上破损进行实时采集和运动补偿,对该路段进行了3次裂缝采集,并将本系统采集的路面裂缝的编号和误差进行作图分析。表2给出了在第一次测试采集裂缝的个数、编号、实时速度和定位误差。图10给出了3次重复采集的裂缝误差信息。表3是3次测试误差的统计结果。
实验结果可以看出,本文提出的基于运动补偿的北斗路面破损定位算法具有较高的精度,通过机器视觉的补偿将路面破损定位算法误差降低到2 m左右。但是在车速较快时,误差有较小的波动。精度满足本系统的设计要求。
6 结论
本文针对基于FPGA的北斗路面破损识别系统提出了一种基于机器视觉距离补偿的路面破损高精度定位算法,对破损信息的经纬度的提取具有较高的精度和较好的实时性。扩展卡尔曼滤波很好地降低了北斗芯片在定位过程中的误差干扰问题,并采用了机器视觉距离补偿修正算法,很好地提高了基于FPGA的路面破损定位系统的实用性和可靠性。
参考文献
[1] 杨爱国.《公路交通“十二五”发展规划》解读[J].中国公路,2012:56-58.
[2] HARIS N,SANHOURI K,DOWNEY A B.Analysis of segmentation algorithms for pavement distress images[J].Journal of Transportation Engineer,1993,119(6):391-394.
[3] WEI N,ZHAO X M,WANG T.Mathematical morphology based as phalt pavement crack detection[C].Proceedings of the Second International Conference on Transportation Engineering,2009:3883-3887.
[4] 李鹏,杜敏,赵芬芬.基于FPGA的图像分析的路面破损检测系统的研究与实现[J].微电子学与计算机,2017,34(3):100-104.
[5] 李鹏,赵芬芬,杜敏.基于双树复小波的直方图路面裂缝检测算法[J].安徽大学学报(自然科学版),2018,42(1):38-44.
[6] 韩春雷,陈赤联,宋明,等.卡尔曼滤波在被动目标跟踪系统中的应用[J].电子科技,2012,22(4):47-53.
[7] 刘玉杰.基于扩展卡尔曼滤波算法的融合室内定位系统研究与实现[D].南京:南京邮电大学,2016.
[8] YANG L,HILL C,MENG X.Evaluation of network RTK GPS correction transmission delay and loss[C].ENC GNSS2008,Toulouse,France,2008.
[9] 孙俊阳,孙俊,许传龙,等.一种基于光场图像的聚焦光场相机标定方法[J].光学学报,2017(5):176-186.
[10] 王爱生,徐生,张棋,等.基于CGCS2000椭球的大地测量实用公式[J].导航定位学报,2015,3(3):105-109.
作者信息:
缪诚钰1,2,3,李 鹏1,2,3,张精榕1,2,3,顾彬彬1,2,3,蒋 威1,2,3
(1.南京信息工程大学 江苏省大气环境与装备技术协同创新中心,江苏 南京210044;
2.南京信息工程大学 江苏省气象传感网技术工程中心,江苏 南京210044;
3.南京信息工程大学 江苏省气象探测与信息处理重点实验室,江苏 南京210044)