本发明属于夜间目标检测方法技术领域,具体涉及一种基于单目视觉的夜间前方车辆检测方法。
背景技术:
汽车的飞跃式增长,加剧了道路交通事故的发生,特别是夜间交通事故的频发,给人们的生命财产带来巨大的损失。基于视觉的目标检测技术为夜间交通场景目标检测提供了可能,由于多目(包含双目)视觉系统相邻帧间特征点匹配计算量大,当车辆数目较多时,实时性差,所以基于单目视觉的车辆检测技术应运而生。然而,现有的基于单目视觉的车辆检测技术大多适应于白天交通环境,由于夜间驾驶环境变差导致夜间交通事故较白天更为频发,因此,研究基于单目视觉的夜间前方车辆检测方法对于改善驾驶环境,减少交通事故具有重要的意义。
夜晚光照条件差,车辆的外形特征很难被检测到,夜间车辆最显著的特征是高亮度的车灯,因此,大多夜间车辆检测方法都是通过检测车灯从而检测车辆的。Junbin Guo等人统计300幅不同环境下尾灯亮度的分布,使用最大类间方差法(Otsu)确定最佳分割阈值,并根据HSV颜色空间的红色阈值剔除非尾灯目标,最后进行基于位置、面积等先验知识的尾灯配对。
Wei Zhang等人基于光散射衰减模型得出车头灯的反射灰度图和反射抑制图,作为马尔科夫随机场的输入向量,但是如果车辆距离摄像头很近,反射系数很难计算。
Jiann-Der Lee等人使用LoG算子和光散射模型得出车灯区域并使用光流法对车辆进行跟踪,使用LoG算子,解决了近距离车辆难检测的问题。
O’Malley等人基于HSV颜色空间提出红色阈值分割方法,并根据互相关性系数验证车灯的对称性及使用卡尔曼滤波进行跟踪,但是只根据互相关性系数进行车灯配对,误差较大。
Naoya Kosaka等人采用双层中心环绕滤波器来近似LoG算子,筛选出响应值高的特征点,再对特征点使用支持向量机(SVM)进行分类,并通过车道线检测及运动轨迹排除噪声点,检测出车灯正确率高,但进行配对时只根据滤波器响应值一致的原则,致使配对误差较大。
Hulin Kuang等人使用EdgeBoxes寻找多尺度Retinex增强后图像中得分较高的感兴趣区域(ROI),提取ROI5个特征后,由SVM训练每个特征的权重,修改最终得分,得分高的ROI则为车辆。该方法不需要进行车灯配对,减少了一些误差,但是对于昏暗的交通场景,增强算法不是很有效,得出的ROI准确度也随之下降。
技术实现要素:
本发明的目的是提供一种基于单目视觉的夜间前方车辆检测方法,解决了现有夜间车辆检测方法中,配对误差较大,检测目标不准确的问题。
本发明一种基于单目视觉的夜间前方车辆检测方法所采用的技术方案是,包括以下步骤:
步骤1,采集图像,基于CenSurE算子对夜间前方车辆进行车灯检测,得到强角点;
步骤2,基于车灯颜色信息进行夜间前方车辆的分割,得到分割区域;
步骤3,选择步骤2的分割区域中占有步骤1的强角点最多的区域,得到检测区域;
步骤4,对步骤3中的检测区域进行车灯配对,确定目标车辆的位置。
本发明的特征还在于,
步骤1的操作步骤具体为:
步骤1.1,拍照采集图像,根据采集图像计算对应的积分图的值,积分图中任一点I(x,y)的值均为原图像中对应位置左上角区域所有值的总和,如式(1),
步骤1.2,构造CenSurE滤波器对积分图进行对数尺度采样,
将任一点I(x,y)的值表示的尺度空间分成三组,其中,第一组中每层的CenSurE滤波器内核大小依次增加2,第二组中每层的CenSurE滤波器内核大小依次增加4,第三组中每层的CenSurE滤波器内核大小依次增加8,每一组中均选择5层尺度图像,CenSurE滤波器外核大小也按照上述方式进行计算;
即CenSurE滤波器的内核尺寸应满足(2n+1)×(2n+1),外核尺寸应满足(4n+1)×(4n+1),为了使滤波器的DC响应为零,对尺度空间归一化,则内核的权重系数In应满足式(2),
外核的权重系数On应满足式(3)
当外核包含的像素值总和为out_value,内核包含的像素值总和为in_value,则像素滤波响应值L满足式(4),
L=On·out_value-In·in_value, (4)
步骤1.3,对步骤1.2中的尺度空间进行极值检测,
将经过步骤1.2处理的图像,按照式(4)计算图像中每个尺度空间的像素滤波响应值,然后在尺度空间上进行进行非极大值抑制,并记录极值点;
步骤1.4,对步骤1.3中的极值点进行滤除不稳定特征点,
Lx和Ly为像素滤波响应值L在x和y方向的偏导,对Lx、Ly、LxLy进行高斯滤波,获得Harris矩阵特征值,如果较小的特征值大于自适应阈值t,则得到强角点。
步骤2的操作步骤具体为,将步骤1采集的图像由RGB空间转换到HSV颜色空间,使用红色阈值分割出的所有区域,使用白色阈值分割出的所有区域中位于左侧1/3的区域,共同作为HSV颜色空间分割的结果,
H表示色调,其中红色阈值的H≥340°或H≤30°,白色阈值的H为0°~360°;S表示饱和度,红色阈值的S≤30,白色阈值的S≤20;V表示色彩的明度,红色阈值和白色阈值均取80≤V≤100。
步骤4的车灯配对的操作步骤具体为,假设Li、Lj为两候选车灯,面积分别为Ai、Aj,车灯中心的图像坐标为(xi,yi)、(xj,yj),配对约束条件如下:
a.当两候选车灯高度一致,既两车灯纵坐标应满足式(5)
|yi-yj|<Δh, (5)
b.当两候选车灯水平方向距离在一定范围内,应满足式(6)
Δw1<|xi-xj|<Δw2, (6)
c.当两候选车灯面积一致,应满足式(7)
|Ai-Aj|<ΔA, (7)
式(5)中Δh为高度差阈值,式(6)中Δw1和Δw2为水平差阈值,式(7)中ΔA为面积差阈值,满足配对约束条件,配对完成后得到车灯对应的外接矩形框应满足宽高比在一定范围内,满足式(8),
其中,xi,left、xj,right分别为区域的最左边和最右边坐标,yi,top、yj,bottom为区域的最上边和最下边坐标,Δration为框的宽高比阈值。
步骤1.3中的非极大值抑制的具体步骤为:尺度空间中的每个点与其26个相邻点,其中26个相邻点包括位于中间的检测点和其同尺度的8个相邻点,以及上下相邻尺度对应的9×2个点进行比较,然后记录极值点。
步骤1.4中的自适应阈值使用多级Otsu方法获取,其具体步骤为:
在灰度直方图中,设fi为灰度级为i的像素点个数,N为像素点总数,则N满足式(9)
N=f0+f1+…+fl-1, (9)
其中l为直方图个数,l=1,2,3,4……,
则灰度级为i的像素点个数fi的分布概率Pi为式(10),
使用k个阈值T={t1,…,tn,…,tk},将图像分为k+1个类别,类间方差VBC(T)为式(11)
其中,式(11)μn为k=n时的灰度均值,μT为总体的灰度均值,wn和μn的值如式(12),
类内方差vWC(T)为式(13)
其中,式(13)中σn为k=n时的灰度方差,wn和σn的值如式(14)
将式(9)~式(14)联合,得出图像的总方差vT和图像的总均值μT,为式(15)
定义图像的分割因子SF为式(16),
当SF>0.9时,停止分类,取此时的tk为自适应阈值。
本发明的有益效果是:本发明一种基于单目视觉的夜间前方车辆检测方法通过采用计算多尺度下的CenSurE算子,然后检测其结果,可进行车辆配对的运算,不仅解决了夜间车辆车灯检测方法中,配对误差较大,检测目标不准确的问题,又很好的应用价值。
附图说明
图1是本发明CenSurE滤波器的内核和外核的结构图;
图2是区域像素和计算示意图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明一种基于单目视觉的夜间前方车辆检测方法,包括以下步骤:
步骤1,采集图像,基于CenSurE算子对夜间前方车辆进行车灯检测,得到强角点;
步骤2,基于车灯颜色信息进行夜间前方车辆的分割,得到分割区域;
步骤3,选择步骤2的分割区域中占有步骤1的强角点最多的区域,得到检测区域;
步骤4,对步骤3中的检测区域进行车灯配对,确定目标车辆的位置。
步骤1的操作步骤具体为:
步骤1.1,拍照采集图像,根据采集图像计算对应的积分图的值,积分图中任一点I(x,y)的值均为原图像中对应位置左上角区域所有值的总和,如式(1),
步骤1.2,构造CenSurE滤波器,对积分图进行对数尺度采样,目的是为了提高局部极值点的稳定性,如图1所示,CenSurE滤波器采用正方形核,正方形核计算效率最高,满足了实时性要求,积分图构造好后,图像中任何矩阵区域的像素累加和都可以通过简单运算得到,如图2所示,
将任一点I(x,y)的值表示的尺度空间分成三组,每一组中均选择5层尺度图像,其中,第一组中每层的CenSurE滤波器内核大小依次增加2,选取滤波器内核,其大小依次为3×3、5×5、7×7、9×9和11×11,第二组中每层的CenSurE滤波器内核大小依次增加4,选取滤波器内核,其大小依次为7×7、11×11、15×15、19×19和23×23,第三组中每层的CenSurE滤波器内核大小依次增加8,选取滤波器内核,其大小依次为15×15、23×23、31×31、39×39、47×47,CenSurE滤波器外核大小也按照上述方式进行计算;
即CenSurE滤波器的内核尺寸应满足(2n+1)×(2n+1),外核尺寸应满足(4n+1)×(4n+1),为了使滤波器的DC响应为零,对尺度空间归一化,则内核的权重系数In应满足式(2),
外核的权重系数On应满足式(3)
当外核包含的像素值总和为out_value,内核包含的像素值总和为in_value,则像素滤波响应值L满足式(4),
L=On·out_value-In·in_value, (4)
步骤1.3,对步骤1.2中的尺度空间进行极值检测,
将经过步骤1.2处理的图像,按照式(4)计算图像中每个尺度空间的像素滤波响应值,然后在尺度空间上进行非极大值抑制,并记录极值点;
步骤1.4,对步骤1.3中的极值点进行滤除不稳定特征点,
为了得到稳定的特征点,只根据阈值滤除弱响应点是不够的,因为滤波器对图像边缘有比较强的响应值,一旦特征点落在图像的边缘上,这些点就很不稳定。由于边缘或线上的特征点在平行方向上具有较大主曲率而在垂直方向上具有较小主曲率,利用尺度自适应的Harris方法计算主曲率比例H去除不稳定响应点,如下式所示,
Lx和Ly为像素滤波响应值L在x和y方向的偏导,对主曲率比例H进行高斯滤波,获得Harris矩阵特征值,如果较小的特征值大于自适应阈值t,则得到强角点。
由于车头灯和车尾灯分别高亮白色和红色,因此需分割出图像的红色和白色区域,则步骤2的操作步骤具体为,将步骤1采集的图像由RGB空间转换到HSV颜色空间,使用阈值分割红色和白色区域,由经验可知,相向而来的车辆,一般出现在图像的左侧,检测车头灯,同向行驶的车辆检测车尾灯,将红色阈值分割出的所有区域,白色阈值分割出的所有区域中位于左侧1/3的区域,共同作为HSV颜色空间分割的结果,
H表示色调,其中红色阈值的H≥340°或H≤30°,白色阈值的H为0°~360°;S表示饱和度,红色阈值的S≤30,白色阈值的S≤20;V表示色彩的明度,红色阈值和白色阈值均取80≤V≤100。
步骤4的车灯配对的操作步骤具体为,假设Li、Lj为两候选车灯,面积分别为Ai、Aj,车灯中心的图像坐标为(xi,yi)、(xj,yj),配对约束条件如下:
a.当两候选车灯高度一致,既两车灯纵坐标应满足式(5)
|yi-yj|<Δh, (5)
b.当两候选车灯水平方向距离在一定范围内,应满足式(6)
Δw1<|xi-xj|<Δw2, (6)
c.当两候选车灯面积一致,应满足式(7)
|Ai-Aj|<ΔA, (7)
式(5)中Δh为高度差阈值,式(6)中Δw1和Δw2为水平差阈值,式(7)中ΔA为面积差阈值,满足配对约束条件,配对完成后得到车灯对应的外接矩形框应满足宽高比在一定范围内,满足式(8),
其中,xi,left、xj,right分别为区域的最左边和最右边坐标,yi,top、yj,bottom为区域的最上边和最下边坐标,Δration为框的宽高比阈值。
式(7)~(8)中,由于日常生活经验,将Δh取10像素,Δw1取20像素,Δw2取50像素,ΔA取30像素,Δration取10像素进行运算配对。
步骤1.3中的非极大值抑制的具体步骤为:尺度空间中的每个点与其26个相邻点,其中26个相邻点包括位于中间的检测点和其同尺度的8个相邻点,以及上下相邻尺度对应的9×2个点进行比较,然后记录极值点。
步骤1.4中的自适应阈值使用多级Otsu方法获取,其具体步骤为:
在灰度直方图中,设fi为灰度级为i的像素点个数,N为像素点总数,则N满足式(9)
N=f0+f1+…+fl-1, (9)
其中l为直方图个数,l=1,2,3,4……,
则灰度级为i的像素点个数fi的分布概率Pi为式(10),
使用k个阈值T={t1,…,tn,…,tk},将图像分为k+1个类别,类间方差VBC(T)为式(11)
其中,式(11)μn为k=n时的灰度均值,μT为总体的灰度均值,wn和μn的值如式(12),
类内方差vWC(T)为式(13)
其中,式(13)中σn为k=n时的灰度方差,wn和σn的值如式(14)
将式(9)~式(14)联合,得出图像的总方差vT和图像的总均值μT,为式(15)
定义图像的分割因子SF为式(16),
当SF>0.9时,停止分类,取此时的tk为自适应阈值。
本发明的有益效果是:本发明通过采用计算多尺度下的CenSurE算子,然后检测其结果,可进行车辆配对的运算,不仅解决了夜间车辆车灯检测方法中,配对误差较大,检测目标不准确的问题,又很好的应用价值。