发明内容
本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种基于视频流的远光灯检测方法,其方法步骤简单、设计合理且使用效果好,通过对道路交通视频流中每帧道路交通图像进行远光灯区域检测,能有效地、准确地、实时地检测汽车是否开远光灯,且及时获取汽车开远光灯驾驶的证据。
为解决上述技术问题,本发明采用的技术方案是:一种基于视频流的远光灯检测方法,其特征在于该方法包括以下步骤:
步骤一、视频流的获取及解码:摄像头实时拍摄获取道路交通视频流,并将获取的道路交通视频流输出至数据处理器,所述数据处理器对接收到的道路交通视频流进行解码,得到多帧道路交通图像;其中,多帧所述道路交通图像按照拍摄时间先后顺序进行排列,所述道路交通图像为YUV图像,所述摄像头与数据处理器相接;
步骤二、远光灯区域的检测:采用所述数据处理器按照拍摄时间先后顺序对步骤一中多帧所述道路交通图像分别进行远光灯区域检测,得到多帧所述道路交通图像中是否存在远光灯区域,且对多帧所述道路交通图像进行远光灯区域检测的方法均相同,对步骤一中任一帧所述道路交通图像进行远光灯区域检测时,包括以下步骤:
步骤201、道路交通灰度图像的获取:采用所述数据处理器调取Y分量提取模块对当前所述道路交通图像进行Y分量提取,获得道路交通灰度图像;所述道路交通灰度图像的大小为h×l个像素点,h表示所述道路交通灰度图像的行数,l表示所述道路交通灰度图像的列数;
步骤202、道路交通灰度图像的预处理:采用所述数据处理器对步骤201中得到的道路交通灰度图像中大于预设的第一灰度阈值T1的图像区域进行预处理,得到预处理后的灰度图像;
步骤203、建立背景图像:采用所述数据处理器建立背景图像,所述背景图像的大小与所述道路交通灰度图像的大小相同,且所述背景图像中每一个像素点的灰度值均为零;
步骤204、二值化特征图像的获取:采用所述数据处理器对步骤202中得到的预处理后的灰度图像l列像素点的灰度值分别从上向下进行一次扫描判断,然后对所述预处理后的灰度图像l列像素点的灰度值从下向上进行二次扫描判断,在一次扫描判断和二次扫描判断的过程中,当所述预处理后的灰度图像中l列像素点的灰度值均不满足特征提取条件时,开始对下一帧所述道路交通图像进行远光灯区域检测,从步骤201开始执行;当所述预处理后的灰度图像中像素点的灰度值满足特征提取条件时,将步骤203中所述背景图像对应位置处的像素点的灰度值均置于255,获得在所述背景图像上的二值化特征图像;
步骤205、判断是否存在远光灯区域:采用所述数据处理器对步骤204中得到的二值化特征图像进行连通区域标记,获得所述二值化特征图像中n个连通区域,通过对所述二值化特征图像中n个连通区域进行判断以得到所述二值化特征图像中是否存在远光灯区域,从而得到所述道路交通图像中是否存在远光灯区域,完成当前所述道路交通图像的远光灯区域检测,开始对下一帧所述道路交通图像进行远光灯区域检测,从步骤201开始执行。
步骤三、判断是否采集汽车开远光灯图像:采用所述数据处理器判断连续t帧所述道路交通图像中是否存在远光灯区域;当连续t帧所述道路交通图像中都存在远光灯区域时,说明汽车远光灯打开,所述数据处理器控制摄像头进行拍摄,获取汽车开远光灯图像作为违规使用远光灯证据;否则,说明汽车远光灯未打开,开始对下一段道路交通视频流进行检测。
上述的一种基于视频流的远光灯检测方法,其特征在于:步骤202中道路交通灰度图像的预处理,其具体过程如下:
步骤2021、所述数据处理器采用区域生长法对步骤201中得到的道路交通灰度图像中大于预设的第一灰度阈值T1的图像区域进行连通区域标记,当所述道路交通灰度图像中大于预设的第一灰度阈值T1的图像区域不存在连通区域时,则将所述道路交通灰度图像称为预处理后的灰度图像;当所述道路交通灰度图像中大于预设的第一灰度阈值T1的图像区域存在连通区域且所述连通区域的数量为N个时,执行步骤2022至步骤2026;
步骤2022、采用所述数据处理器对第m个连通区域的像素点个数进行计算,得到第m个连通区域的像素点个数Cm;并采用所述数据处理器得到第m个连通区域中各个像素点在图像坐标系中的坐标,采用所述数据处理器将第m个连通区域中像素点的坐标按照横坐标从小到大的顺序排列,获得第m个连通区域中像素点的最小横坐标值lmmin和第m个连通区域中像素点的最大横坐标值lmmax;采用所述数据处理器将第m个连通区域中像素点的纵坐标按照纵坐标从小到大的顺序排列,获得第m个连通区域中像素点的最小纵坐标值hmmin和第m个连通区域中像素点的最大纵坐标值hmmax;采用所述数据处理器根据公式得到第m个连通区域的纵向像素点个数与横向像素点个数的比值Bm;其中,m为整数,且m的取值范围为1~N,N为不小于1的正整数;
步骤2023、采用所述数据处理器将步骤2022中得到的Cm与预设的T2进行比较,采用所述数据处理器将步骤2022中得到的Bm与预设的T3进行比较,如果Cm>T2或者Bm>T3成立,则执行步骤2024;否则,当Cm≤T2且Bm≤T3时,执行步骤2025;其中,T2表示单个连通区域的像素点个数阈值,T3表示单个连通区域的纵向像素点个数与横向像素点个数的比值阈值;
步骤2024、当Cm>T2或者Bm>T3成立时,采用所述数据处理器对所述第m个连通区域进行预处理,即将第m个连通区域的像素点的灰度值均置为第一灰度阈值T1;
步骤2025、当Cm≤T2且Bm≤T3时,所述第m个连通区域的像素点的灰度值不变;
步骤2026、重复步骤2022至步骤2025所述的方法,对第m+1个连通区域进行判断,直至m=N时,完成N个所述连通区域的预处理,得到预处理后的灰度图像。
上述的一种基于视频流的远光灯检测方法,其特征在于:步骤204中二值化特征图像的获取,其具体过程如下:
步骤2041、采用所述数据处理器调取灰度值计算模块对步骤202中所述预处理后的灰度图像进行灰度值计算处理,得到所述预处理后的灰度图像中各个像素点的灰度值,并采用所述数据处理器设定特征提取条件即第二灰度阈值T4;其中,所述预处理后的灰度图像的大小为h×l个像素点;
步骤2042、采用所述数据处理器对所述预处理后的灰度图像中第j列像素点的灰度值从上向下进行一次扫描,并与预设的第二灰度阈值T4进行比较,如果Y(j,s)<T4,且Y(j,s+1)~Y(j,s+L)均不小于第二灰度阈值T4,则将所述背景图像中Z(j,s+1)~Z(j,s+L)均置为255;否则,所述背景图像中Z(j,s+1)~Z(j,s+L)均不变,直至所述预处理后的灰度图像中l列像素点的灰度值均扫描判断完毕,获得在所述背景图像上的初始二值化特征图像;当所述预处理后的灰度图像中l列像素点的灰度值均不满足特征提取条件时,开始对下一帧所述道路交通图像进行远光灯区域检测,从步骤201开始执行;其中,Y(j,s)表示所述预处理后的灰度图像中坐标(j,s)处像素点的灰度值,Y(j,s+1)表示所述预处理后的灰度图像中坐标(j,s+1)处像素点的灰度值,Y(j,s+L)表示所述预处理后的灰度图像中坐标(j,s+L)处像素点的灰度值,Z(j,s+1)表示所述背景图像中坐标(j,s+1)处像素点的灰度值,Z(j,s+L)表示所述背景图像中坐标(j,s+L)处的像素点的灰度值,s表示所述一次扫描的行数,1≤s≤h-L且s为整数,所述初始二值化特征图像的大小为h×l个像素点,L为常数,j为正整数,且j=1、2、...、l;
步骤2043、采用所述数据处理器对所述预处理后的灰度图像中第j列像素点的灰度值从下向上进行二次扫描,并与预设的第二灰度阈值T4进行比较,如果Y(j,p)<T4,且Y(j,p-1)~Y(j,p-L)均不小于第二灰度阈值T4,则将步骤2042得到的初始二值化特征图像中Z′(j,p-1)~Z′(j,p-L)均置为255;否则,所述初始二值化特征图像中Z′(j,p-1)~Z′(j,p-L)均不变,直至所述预处理后的灰度图像中l列像素点的灰度值均扫描判断完毕,获得二值化特征图像;其中,Y(j,p)表示所述预处理后的灰度图像中坐标(j,p)处像素点的灰度值,Y(j,p-1)表示所述预处理后的灰度图像中坐标(j,p-1)处像素点的灰度值,Y(j,p-L)表示所述预处理后的灰度图像中坐标(j,p-L)处像素点的灰度值,Z′(j,p-1)表示所述初始二值化特征图像中坐标(j,p-1)处像素点的灰度值,Z′(j,p-L)表示所述初始二值化特征图像中坐标(j,p-L)处的像素点的灰度值,p表示所述二次扫描的行数,L≤p≤h,且p为整数,所述二值化特征图像的大小为h×l个像素点。
上述的一种基于视频流的远光灯检测方法,其特征在于:步骤205中采用所述数据处理器判断步骤204中获得的二值化特征图像是否存在远光灯区域,其具体过程如下:
步骤2051、所述数据处理器采用区域生长法对步骤204中得到的二值化特征图像进行连通区域标记,获取所述二值化特征图像中n个连通区域,并将所述二值化特征图像中n个连通区域称作n个二值化图像连通区域,n为不小于1的正整数;
步骤2052、采用所述数据处理器对第M个二值化图像连通区域的像素点个数进行计算,得到第M个二值化图像连通区域的像素点个数C′M;并采用所述数据处理器得到第M个二值化图像连通区域中各个像素点在图像坐标系中的坐标,采用所述数据处理器将第M个二值化图像连通区域中像素点的坐标按照横坐标从小到大的顺序排列,获得第M个二值化图像连通区域中像素点的最小横坐标值l′Mmin和第M个二值化图像连通区域中像素点的最大横坐标值l′Mmax;采用所述数据处理器将第M个二值化图像连通区域中像素点的坐标按照纵坐标从小到大的顺序排列,获得第M个二值化图像连通区域中像素点的最小纵坐标值h′Mmin和第M个二值化图像连通区域中像素点的最大纵坐标值h′Mmax;采用所述数据处理器根据公式得到第M个二值化图像连通区域的纵向像素点个数与横向像素点个数的比值B′M;采用所述数据处理器对第M个二值化图像连通区域包围的区域中灰度值为零的像素点个数进行计算,得到第M个二值化图像连通区域包围的区域中灰度值为零的像素点个数GM;其中,M为正整数,且M的取值范围为1~n;
步骤2053、采用所述数据处理器将步骤2052中得到的C′M与预设的T5进行比较,采用所述数据处理器将步骤2052中得到的B′M与预设的T6进行比较,采用所述数据处理器将步骤2052中得到的GM与预设的T7进行比较,如果成立,则执行步骤2054;否则,执行步骤2055;其中,T5表示单个二值化图像连通区域的像素点个数阈值,T6表示单个二值化图像连通区域的纵向像素点个数与横向像素点个数的比值阈值,T7表示单个二值化图像连通区域包围的区域中灰度值为零的像素点个数阈值;
步骤2054、当成立时,采用所述数据处理器将第M个二值化图像连通区域标记为远光灯区域,说明所述二值化特征图像中存在远光灯区域,即当前所述道路交通图像中存在远光灯区域;
步骤2055、当不成立时,说明第M个二值化图像连通区域不是远光灯区域;
步骤2056、重复步骤2052至步骤2055所述的方法,对第M+1个二值化图像连通区域进行判断,直至M=n时,得到所述二值化特征图像中是否存在远光灯区域,从而得到所述道路交通图像中是否存在远光灯区域,完成当前所述道路交通图像的远光灯区域检测,开始对下一帧所述道路交通图像进行远光灯区域检测。
上述的一种基于视频流的远光灯检测方法,其特征在于:步骤2021中所述第一灰度阈值T1的取值范围为180~200,步骤2023中所述单个连通区域的像素点个数阈值T2的取值范围为3000~4000,所述单个连通区域的纵向像素点个数与横向像素点个数的比值阈值T3的取值范围为1.2~1.5。
上述的一种基于视频流的远光灯检测方法,其特征在于:步骤2041至步骤2043中所述第二灰度阈值T4的取值为T1+20,所述常数L的取值范围为8~12。
上述的一种基于视频流的远光灯检测方法,其特征在于:步骤2053中所述单个二值化图像连通区域的像素点个数阈值T5的取值范围为300~500,所述单个二值化图像连通区域的纵向像素点个数与横向像素点个数的比值阈值T6的取值范围为0.7~1,所述单个二值化图像连通区域包围的区域中灰度值为零的像素点个数阈值T7的取值范围为20~40。
上述的一种基于视频流的远光灯检测方法,其特征在于:所述连续判断的帧数t的取值范围为2~6。
本发明与现有技术相比具有以下优点:
1、方法步骤简单、设计合理且投入成本较低。
2、操作简便且实现方便,主要包括视频流的获取及解码、远光灯区域的检测和判断是否采集汽车开远光灯图像三个步骤,通过对道路交通视频流中每帧道路交通图像进行远光灯区域检测,能有效地、准确地、实时地检测汽车是否开远光灯,且当检测到汽车开远光灯时能及时获取汽车开远光灯驾驶的证据。实际检测过程中,对道路交通视频流解码得到每帧道路交通图像,再对每帧道路交通图像进行远光灯区域检测,得到每帧道路交通图像中是否存在远光灯区域;之后,当连续多帧图像中都存在远光灯区域时,说明汽车远光灯打开,则获取汽车开远光灯图像作为违规使用远光灯证据;否则,说明汽车远光灯未打开,开始对下一段道路交通视频流进行检测。
3、使用效果好且实用价值高,本发明提出一种基于视频流的远光灯检测方法,通过对道路交通视频流处理,能检测到汽车是否开远光灯,且能够在距离道路卡口视频监控系统10-40米距离内,准确检测夜间开启的远光灯,并为视频监控系统抓拍取证提供触发信息,检测准确,准确率高且检测过程简单,实现对汽车远光灯的实时监控,并有助于交警调查取证。
4、适用面广且推广应用前景广泛,对远光灯的检测,能避免驾驶员违规开远光灯,同时,能减少汽车远光灯对交通安全造成的危害,提高驾驶安全性。
综上所述,本发明方法步骤简单、设计合理且使用效果好,通过对道路交通视频流中每帧道路交通图像进行远光灯区域检测,能有效地、准确地、实时地检测汽车是否开远光灯,且及时获取汽车开远光灯驾驶的证据。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
具体实施方式
如图1和图2所示的一种基于视频流的远光灯检测方法,包括以下步骤:
步骤一、视频流的获取及解码:摄像头2实时拍摄获取道路交通视频流,并将获取的道路交通视频流输出至数据处理器1,所述数据处理器1对接收到的道路交通视频流进行解码,得到多帧道路交通图像;其中,多帧所述道路交通图像按照拍摄时间先后顺序进行排列,所述道路交通图像为YUV图像,所述摄像头2与数据处理器1相接;
步骤二、远光灯区域的检测:采用所述数据处理器1按照拍摄时间先后顺序对步骤一中多帧所述道路交通图像分别进行远光灯区域检测,得到多帧所述道路交通图像中是否存在远光灯区域,且对多帧所述道路交通图像进行远光灯区域检测的方法均相同,对步骤一中任一帧所述道路交通图像进行远光灯区域检测时,包括以下步骤:
步骤201、道路交通灰度图像的获取:采用所述数据处理器1调取Y分量提取模块对当前所述道路交通图像进行Y分量提取,获得道路交通灰度图像;所述道路交通灰度图像的大小为h×l个像素点,h表示所述道路交通灰度图像的行数,l表示所述道路交通灰度图像的列数;
步骤202、道路交通灰度图像的预处理:采用所述数据处理器1对步骤201中得到的道路交通灰度图像中大于预设的第一灰度阈值T1的图像区域进行预处理,得到预处理后的灰度图像;
步骤203、建立背景图像:采用所述数据处理器1建立背景图像,所述背景图像的大小与所述道路交通灰度图像的大小相同,且所述背景图像中每一个像素点的灰度值均为零;
步骤204、二值化特征图像的获取:采用所述数据处理器1对步骤202中得到的预处理后的灰度图像l列像素点的灰度值分别从上向下进行一次扫描判断,然后对所述预处理后的灰度图像l列像素点的灰度值从下向上进行二次扫描判断,在一次扫描判断和二次扫描判断的过程中,当所述预处理后的灰度图像中l列像素点的灰度值均不满足特征提取条件时,开始对下一帧所述道路交通图像进行远光灯区域检测,从步骤201开始执行;当所述预处理后的灰度图像中像素点的灰度值满足特征提取条件时,将步骤203中所述背景图像对应位置处的像素点的灰度值均置于255,获得在所述背景图像上的二值化特征图像;
步骤205、判断是否存在远光灯区域:采用所述数据处理器1对步骤204中得到的二值化特征图像进行连通区域标记,获得所述二值化特征图像中n个连通区域,通过对所述二值化特征图像中n个连通区域进行判断以得到所述二值化特征图像中是否存在远光灯区域,从而得到所述道路交通图像中是否存在远光灯区域,完成当前所述道路交通图像的远光灯区域检测,开始对下一帧所述道路交通图像进行远光灯区域检测,从步骤201开始执行。
步骤三、判断是否采集汽车开远光灯图像:采用所述数据处理器1判断连续t帧所述道路交通图像中是否存在远光灯区域;当连续t帧所述道路交通图像中都存在远光灯区域时,说明汽车远光灯打开,所述数据处理器1控制摄像头2进行拍摄,获取汽车开远光灯图像作为违规使用远光灯证据;否则,说明汽车远光灯未打开,开始对下一段道路交通视频流进行检测。
本实施例中,摄像头2设置在道路卡口视频监控系统中,通过摄像头2对距离道路卡口视频监控系统10-40米距离内的道路交通图像进行实时采集并获得交通视频流。
本实施例中,所述道路交通图像为YUV图像,即所述道路交通图像为YUV格式的道路交通图像。
本实施例中,步骤202中采用所述数据处理器1对所述道路交通灰度图像中大于预设的第一灰度阈值T1的图像区域中连通区域的像素点的灰度值进行预处理,其目的是抑制拍摄外界环境中大面积光团以及地面反射,避免外界环境中大面积光团以及地面反射对远光灯检测的干扰。
本实施例中,步骤203中建立背景图像,是为了当所述预处理后的灰度图像中满足特征提取条件时,将所述背景图像对应位置处的像素点的灰度值均置于255,使所述预处理后的灰度图像中满足特征提取条件的区域提取到背景图像中,获得在所述背景图像上的二值化特征图像,这样当所述预处理后的灰度图像中存在远光灯区域时尽可能地仅提取远光灯区域,避免对所述道路交通图像直接进行二值化处理得到其他干扰区域,从而避免干扰区域造成远光灯区域检测不准确。
本实施例中,因为当所述预处理后的灰度图像中存在远光灯区域时,所述预处理后的灰度图像中的远光灯区域包围的灰度值大于所述预处理后的灰度图像中其他区域的灰度值,这样对所述预处理后的灰度图像中列方向上的像素点的灰度值无论从上向下扫描判断或者从下向上扫描判断,都不能一次获取所述预处理后的灰度图像中整个远光灯区域,因此,步骤204中采用所述数据处理器1对预处理后的灰度图像中列方向上的像素点的灰度值从上向下进行一次扫描判断,当满足特征提取条件时,将所述背景图像对应位置处的像素点的灰度值均置于255,从而获得在所述背景图像上的远光灯区域(即光晕区域)的上半区域特征;并采用所述数据处理器1对预处理后的灰度图像中的灰度值从下向上进行二次扫描判断,当满足特征提取条件时,将所述初始二值化特征图像对应位置处的像素点的灰度值均置于255,是为了获得远光灯区域(即光晕区域)的下半区域特征,获得在所述具有远光灯区域(即光晕区域)的上半区域和下半区域的二值化特征图像,最终获得在所述背景图像上具有远光灯区域特征的二值化特征图像,两次扫描后得到所述二值化特征图像中灰度值为255的区域为远光灯区域(即光晕区域)特征。
本实施例中,步骤204中获得二值化特征图像中后,则需要进行步骤205通过对所述二值化特征图像中二值化图像连通区域的像素点个数、二值化图像连通区域的纵向像素点个数与横向像素点个数的比值、二值化图像连通区域包围的灰度值为零的像素点个数判断,从而确定是二值化特征图像否存在远光灯区域,通过进一步判断提高远光灯区域检测的准确性。
本实施例中,采用所述数据处理器1根据经过对远光灯区域大量实际测试得到的判断条件对所述二值化特征图像中是否存在远光灯区域进行判断,以确定所述二值化特征图像中是否存在远光灯区域,因为所述二值化特征图像是根据所述道路交通图像获得,从而能得到所述道路交通图像中是否存在远光灯区域,避免对所述道路交通图像直接进行二值化处理得到远光灯区域检测的不准确性。
步骤202中道路交通灰度图像的预处理,其具体过程如下:
步骤2021、所述数据处理器(1)采用区域生长法对步骤201中得到的道路交通灰度图像中大于预设的第一灰度阈值T1的图像区域进行连通区域标记,当所述道路交通灰度图像中大于预设的第一灰度阈值T1的图像区域不存在连通区域时,则将所述道路交通灰度图像称为预处理后的灰度图像;当所述道路交通灰度图像中大于预设的第一灰度阈值T1的图像区域存在连通区域且所述连通区域的数量为N个时,执行步骤2022至步骤2026;
步骤2022、采用所述数据处理器(1)对第m个连通区域的像素点个数进行计算,得到第m个连通区域的像素点个数Cm;并采用所述数据处理器(1)得到第m个连通区域中各个像素点在图像坐标系中的坐标,采用所述数据处理器(1)将第m个连通区域中像素点的坐标按照横坐标从小到大的顺序排列,获得第m个连通区域中像素点的最小横坐标值lmmin和第m个连通区域中像素点的最大横坐标值lmmax;采用所述数据处理器(1)将第m个连通区域中像素点的纵坐标按照纵坐标从小到大的顺序排列,获得第m个连通区域中像素点的最小纵坐标值hmmin和第m个连通区域中像素点的最大纵坐标值hmmax;采用所述数据处理器(1)根据公式得到第m个连通区域的纵向像素点个数与横向像素点个数的比值Bm;其中,m为整数,且m的取值范围为1~N,N为不小于1的正整数;
步骤2023、采用所述数据处理器(1)将步骤2022中得到的Cm与预设的T2进行比较,采用所述数据处理器(1)将步骤2022中得到的Bm与预设的T3进行比较,如果Cm>T2或者Bm>T3成立,则执行步骤2024;否则,当Cm≤T2且Bm≤T3时,执行步骤2025;其中,T2表示单个连通区域的像素点个数阈值,T3表示单个连通区域的纵向像素点个数与横向像素点个数的比值阈值;
步骤2024、当Cm>T2或者Bm>T3成立时,采用所述数据处理器(1)对所述第m个连通区域进行预处理,即将第m个连通区域的像素点的灰度值均置为第一灰度阈值T1;
步骤2025、当Cm≤T2且Bm≤T3时,所述第m个连通区域的像素点的灰度值不变;
步骤2026、重复步骤2022至步骤2025所述的方法,对第m+1个连通区域进行判断,直至m=N时,完成N个所述连通区域的预处理,得到预处理后的灰度图像。
本实施例中,步骤204中二值化特征图像的获取,其具体过程如下:
步骤2041、采用所述数据处理器1调取灰度值计算模块对步骤202中所述预处理后的灰度图像进行灰度值计算处理,得到所述预处理后的灰度图像中各个像素点的灰度值,并采用所述数据处理器1设定特征提取条件即第二灰度阈值T4;其中,所述预处理后的灰度图像的大小为h×l个像素点;
步骤2042、采用所述数据处理器1对所述预处理后的灰度图像中第j列像素点的灰度值从上向下进行一次扫描,并与预设的第二灰度阈值T4进行比较,如果Y(j,s)<T4,且Y(j,s+1)~Y(j,s+L)均不小于第二灰度阈值T4,则将所述背景图像中Z(j,s+1)~Z(j,s+L)均置为255;否则,所述背景图像中Z(j,s+1)~Z(j,s+L)均不变,直至所述预处理后的灰度图像中l列像素点的灰度值均扫描判断完毕,获得在所述背景图像上的初始二值化特征图像;当所述预处理后的灰度图像中l列像素点的灰度值均不满足特征提取条件时,开始对下一帧所述道路交通图像进行远光灯区域检测,从步骤201开始执行;其中,Y(j,s)表示所述预处理后的灰度图像中坐标(j,s)处像素点的灰度值,Y(j,s+1)表示所述预处理后的灰度图像中坐标(j,s+1)处像素点的灰度值,Y(j,s+L)表示所述预处理后的灰度图像中坐标(j,s+L)处像素点的灰度值,Z(j,s+1)表示所述背景图像中坐标(j,s+1)处像素点的灰度值,Z(j,s+L)表示所述背景图像中坐标(j,s+L)处的像素点的灰度值,s表示所述一次扫描的行数,1≤s≤h-L且s为整数,所述初始二值化特征图像的大小为h×l个像素点,L为常数,j为正整数,且j=1、2、...、l;
步骤2043、采用所述数据处理器1对所述预处理后的灰度图像中第j列像素点的灰度值从下向上进行二次扫描,并与预设的第二灰度阈值T4进行比较,如果Y(j,p)<T4,且Y(j,p-1)~Y(j,p-L)均不小于第二灰度阈值T4,则将步骤2042得到的初始二值化特征图像中Z′(j,p-1)~Z′(j,p-L)均置为255;否则,所述初始二值化特征图像中Z′(j,p-1)~Z′(j,p-L)均不变,直至所述预处理后的灰度图像中l列像素点的灰度值均扫描判断完毕,获得二值化特征图像;其中,Y(j,p)表示所述预处理后的灰度图像中坐标(j,p)处像素点的灰度值,Y(j,p-1)表示所述预处理后的灰度图像中坐标(j,p-1)处像素点的灰度值,Y(j,p-L)表示所述预处理后的灰度图像中坐标(j,p-L)处像素点的灰度值,Z′(j,p-1)表示所述初始二值化特征图像中坐标(j,p-1)处像素点的灰度值,Z′(j,p-L)表示所述初始二值化特征图像中坐标(j,p-L)处的像素点的灰度值,p表示所述二次扫描的行数,L≤p≤h,且p为整数,所述二值化特征图像的大小为h×l个像素点。
本实施例中,步骤205中采用所述数据处理器1判断步骤204中获得的二值化特征图像是否存在远光灯区域,其具体过程如下:
步骤2051、所述数据处理器1采用区域生长法对步骤204中得到的二值化特征图像进行连通区域标记,获取所述二值化特征图像中n个连通区域,并将所述二值化特征图像中n个连通区域称作n个二值化图像连通区域,n为不小于1的正整数;
步骤2052、采用所述数据处理器1对第M个二值化图像连通区域的像素点个数进行计算,得到第M个二值化图像连通区域的像素点个数C′M;并采用所述数据处理器1得到第M个二值化图像连通区域中各个像素点在图像坐标系中的坐标,采用所述数据处理器1将第M个二值化图像连通区域中像素点的坐标按照横坐标从小到大的顺序排列,获得第M个二值化图像连通区域中像素点的最小横坐标值l′Mmin和第M个二值化图像连通区域中像素点的最大横坐标值l′Mmax;采用所述数据处理器1将第M个二值化图像连通区域中像素点的坐标按照纵坐标从小到大的顺序排列,获得第M个二值化图像连通区域中像素点的最小纵坐标值h′Mmin和第M个二值化图像连通区域中像素点的最大纵坐标值h′Mmax;采用所述数据处理器1根据公式得到第M个二值化图像连通区域的纵向像素点个数与横向像素点个数的比值B′M;采用所述数据处理器1对第M个二值化图像连通区域包围的区域中灰度值为零的像素点个数进行计算,得到第M个二值化图像连通区域包围的区域中灰度值为零的像素点个数GM;其中,M为正整数,且M的取值范围为1~n;
步骤2053、采用所述数据处理器1将步骤2052中得到的C′M与预设的T5进行比较,采用所述数据处理器1将步骤2052中得到的B′M与预设的T6进行比较,采用所述数据处理器1将步骤2052中得到的GM与预设的T7进行比较,如果成立,则执行步骤2054;否则,执行步骤2055;其中,T5表示单个二值化图像连通区域的像素点个数阈值,T6表示单个二值化图像连通区域的纵向像素点个数与横向像素点个数的比值阈值,T7表示单个二值化图像连通区域包围的区域中灰度值为零的像素点个数阈值;
步骤2054、当成立时,采用所述数据处理器1将第M个二值化图像连通区域标记为远光灯区域,说明所述二值化特征图像中存在远光灯区域,即当前所述道路交通图像中存在远光灯区域;
步骤2055、当不成立时,说明第M个二值化图像连通区域不是远光灯区域;
步骤2056、重复步骤2052至步骤2055所述的方法,对第M+1个二值化图像连通区域进行判断,直至M=n时,得到所述二值化特征图像中是否存在远光灯区域,从而得到所述道路交通图像中是否存在远光灯区域,完成当前所述道路交通图像的远光灯区域检测,开始对下一帧所述道路交通图像进行远光灯区域检测。
本实施例中,所述区域生长法为八邻域连通区域标记法。
本实施例中,所述图像坐标系的坐标原点为图像左上角的第一个像素点的坐标,所述图像坐标系的横轴为图像行方向,所述图像坐标系的纵轴为图像列方向。
本实施例中,步骤2021中所述第一灰度阈值T1的取值范围为180~200,步骤2023中所述单个连通区域的像素点个数阈值T2的取值范围为3000~4000,所述单个连通区域的纵向像素点个数与横向像素点个数的比值阈值T3的取值范围为1.2~1.5。
本实施例中,因为所述道路交通灰度图像中像素点的灰度值取值范围为0~255,由于如果所述道路交通灰度图像中存在远光灯区域,所述道路交通灰度图像中远光灯区域为高亮区,远光灯区域的像素点的灰度值一般不小于180,且经对存在远光灯区域的道路交通灰度图像大量实际测试,选择所述第一灰度阈值T1的取值范围为180~200。
本实施例中,为了提取所述道路交通灰度图像中不是远光灯区域的高亮区,且经过大量实际测试得到的如果所述道路交通灰度图像中存在远光灯区域,则所述道路交通灰度图像中远光灯区域的像素点个数不大于3000。因此,所述单个连通区域的像素点个数阈值T2的取值范围为3000~4000,是为了除去所述道路交通灰度图像中因为拍摄外界环境中存在大面积光团以及地面反射而引起的不是远光灯区域的高亮区域。
本实施例中,为了除去地面上大面积强反射光干扰,且由于地面上部分强反射光呈现长条带状,该长条带在图像上纵向像素点个数与横向像素点个数的比值大于1,因此,所述单个连通区域的纵向像素点个数与横向像素点个数的比值阈值T3的取值范围为1.2~1.5。
本实施例中,步骤2041至步骤2043中所述第二灰度阈值T4的取值为T1+20,所述常数L的取值范围为8~12。
本实施例中,所述第二灰度阈值T4的取值为T1+20,是因为如果所述道路交通灰度图像中存在远光灯区域,则所述预处理后的灰度图像中远光灯区域的灰度值比所述预处理后的灰度图像中其他区域的灰度值均大,为了提取所述预处理后的灰度图像中远光灯区域(即光晕区域)采用第二灰度阈值T4。
本实施例中,所述常数L的取值范围为8~12,是因为经大量实际测试,如果所述道路交通灰度图像中存在远光灯区域,所述预处理后的灰度图像中远光灯区域(即光晕区域)L的范围为8~12。
本实施例中,步骤2053中所述单个二值化图像连通区域的像素点个数阈值T5的取值范围为300~500,所述单个二值化图像连通区域的纵向像素点个数与横向像素点个数的比值阈值T6的取值范围为0.7~1,所述单个二值化图像连通区域包围的区域中灰度值为零的像素点个数阈值T7的取值范围为20~40。
本实施例中,因为经大量实际测试,远光灯区域(即光晕区域)的像素点个数不小于300,且故所述单个二值化图像连通区域的像素点个数阈值T5的取值范围为300~500,是为了便于调整,提高检测的准确性。
本实施例中,如果所述道路交通灰度图像中存在远光灯区域,则预处理后的灰度图像中远光灯区域形状似扁椭圆形,远光灯区域的纵向像素点个数与横向像素点个数的比值不大于1,且经过大量实际测试远光灯区域的纵向像素点个数与横向像素点个数的比值一般不小于0.7,因此,所述单个二值化图像连通区域的纵向像素点个数与横向像素点个数的比值阈值T6的取值范围为0.7~1;
本实施例中,由于经大量实际测试,远光灯区域(即光晕区域)包围的灰度值为零的像素点个数不小于20,因此,所述单个二值化图像连通区域包围的区域中灰度值为零的像素点个数阈值T7取值范围20~40,是为了便于调整,提高检测的准确性。
本实施例中,所述连续判断的帧数t的取值范围为2~6,是为了提高远光灯检测的准确性。
实际检测过程中,可根据检测需求对所述第一灰度阈值T1、所述单个连通区域的像素点个数阈值T2、所述单个连通区域的纵向像素点个数与横向像素点个数的比值阈值T3、所述第二灰度阈值T4、所述常数L、所述单个二值化图像连通区域的像素点个数阈值T5、所述单个二值化图像连通区域的纵向像素点个数与横向像素点个数的比值阈值T6和所述单个二值化图像连通区域包围的区域中灰度值为零的像素点个数阈值T7的取值进行适当调整,以提高检测的准确性。
本实施例中,所述数据处理器1为计算机、ARM微控制器或者DSP微控制器等。
本实施例中,由于远光灯相对于近光灯不仅照射范围大、光强值高,而且中心光源被高亮度的光晕包围,基于此物理特性在中心光源区域检测基础上提取光晕区域,根据光晕区域的封闭性、像素点个数、纵向像素点个数与横向像素点个数的比值特征可综合判别车灯属性。当一帧所述道路交通图中存在远光灯区域时,经过本方法处理,得到道路交通灰度图像、预处理后的灰度图像和二值化特征图像,分别如图3、图4和图5所示。如图5所示,所述二值化特征图像中大椭圆和小椭圆边界包围区为远光灯区域(即光晕区)。
综上所述,本发明方法步骤简单、设计合理且使用效果好,通过对道路交通视频流中每帧道路交通图像进行远光灯区域检测,能有效地、准确地、实时地检测汽车是否开远光灯,且及时获取汽车开远光灯驾驶的证据。
以上所述,仅是本发明的较佳实施例,并非对本发明作任何限制,凡是根据本发明技术实质对以上实施例所作的任何简单修改、变更以及等效结构变化,均仍属于本发明技术方案的保护范围内。