线阵ccd摄像机序列图像灰度特征识别车辆存在的方法

文档序号:6458546阅读:217来源:国知局
专利名称:线阵ccd摄像机序列图像灰度特征识别车辆存在的方法
技术领域
本发明属于视频检测领域,特别涉及一种线阵CCD摄像机序列图像灰度 特征识别车辆存在的方法。技术背景在高速路车辆监控系统中识别车辆的存在性是很关键的一步。目前的车 辆存在的识别方法有地感线圈检测识别,面阵CCD视频检测识别。其中,地感线圈触发方法比较经典,易于掌握,检测效果也不错,但是 该检测方法的缺点是1、 地感线圈在安装或维护时必须直接埋入车道,这样交通会暂时受到 阻碍。2、 切割路面面积比较大,埋置线圈的切缝软化了路面,路面被雨水浸 泡后容易出现路面下陷,使路基遭到破坏,容易造成整个路面的下陷。3、 感应线圈易受冰冻、路基下沉、盐碱等自然环境的影响,容易损坏, 使用寿命短。4、 感应线圈由于自身的测量原理所限制,当车流拥堵,车间距小于3m 的时候,其检测精度大幅度降低,甚至无法检测。面阵CCD的视频检测方法是在道路上方架设摄像头,通过对摄像头采集 的连续帧图像进行分析判断有无车辆,该方法需要形成一帧图像后,判断该 帧图像内有无车辆,由于受到面阵CCD的帧速率的限制,不能实现高实时, 高精度的车辆检测。发明内容为了解决上述问题,本发明的目的在于,提供一种线阵CCD摄像机序列 图像灰度特征识别车辆存在的方法,该方法对于线阵CCD摄像机的视频每次产生的线图像,对每一线图像数据进行处理,判断是否存在车辆,该方法能 有效抑制车灯对车辆检测的干扰,实现车辆的实时准确定位。 为了实现上述任务,本发明采取如下的技术解决方案 一种线阵CCD摄像机序列图像灰度特征识别车辆存在的方法,其特征在于,该方法包括基于线序列图像灰度特征的二值化和车辆目标提取两部分,对于线阵CCD摄像机的视频每次产生的线图像,对每一线图像数据进行处理,判断是否存在车辆,具体包括下列步骤1)对CCD摄像机序列图像灰度特征进行二值化,具体步骤如下 步骤一,初始化找到背景标志bFindBack=false;有可疑目标标志isData=false;统计连 续10行内目标点个数的计数器置为0; 步骤二,从内存中逐行读取数据;步骤三,从读取的第2行数据开始处理,用1x2的模板(-1, 1)与当 前行数据和上一行数据相乘,把结果中的每个数与设定的阈值T进行比较, 其中,T=20,如果像素点的值大于阈值T则将其值置为1,小于阈值T则 将其值置为0;步骤四,二值化数据连续累加IO行后,将该数据分为3部分并分别求 每一部分的和,如果连续200行数据的3部分和都为零,则取这200行数据 中的第100行数据作为背景,以后每找到这样的200行数据就更新一次背景, 即bFindBack=True,如果找到背景则转至下一步,否则返回步骤二,步骤五,如果10行累加和中某段的目标点个数大于20,那么该段数据 的后续区阈可能存在目标isData- True,接下来对该段数据后续区域按照步 骤六进行处理,否则重复步骤二,步骤三和步骤五;步骤六,首先将该段数据与背景的对应段数据相减,如果差值的绝对值 大于阈值T1,取丁1=40,并且该部分数据的灰度值大于T2,取T2-90或者小于255-T2,那么该点被认为是目标点,将其值置为255,否则置为0; 步骤七,将二值化的数据进行处理如果二值化后一行数据含有1024个点,先将它分为128段,每段8个 点,判断每段中像素值大于255的点的个数,如果超过4个,那么将该段内 所有的像素点值都置为255,否则全部置为0;再将该行数据分为64段,每 段16个点,判断每段中像素值大于255的点的个数,如果超过9个则将该 段内所有像素值置为255,否则全部置为0;步骤八,如果收到结束指令,则停止数据处理,否则转步骤二;2)车辆目标提取具体步骤如下步骤一,将每个车道的触发标志置为false,将空行计数器、目标左边 界、右边界、目标开始行号、目标结束行号、目标水平投影计数器置为0, 预触发水平投影行数置为10,累加和阈值置为20,确认触发水平投影行数 置为20及累加和阈值40,确认目标结束的空行数置为100,确认触发的目 标宽度置为150;步骤二,读取二值化处理中步骤三的结果;步骤三,对连续10行二值化的数据中目标点的个数进行统计,将统计 结果分成3段,判断各段内目标点的个数,如果某段内目标点的个数大于 20,则在刚才累加的基础上继续累加IO数据,如果此时该段内目标点的个 数大于40,那么该段内肯定存在目标。否则转步骤二;步骤四,找出被认为有目标的段中目标的左右边界计算出该段内目标的 宽度,以及目标的中心位置,如果宽度大于150,并且其余2段中没有发现 目标数据,则车辆存在于数据中心所落的车道;如果宽度小于150,并且其 余2段中没有发现目标数据,则不触发;如果其余2段中发现目标数据,需 要求相邻段中目标数据中心之间的距离,如果距离小于阈值200,则合并目 标数据段,合并完后重新计算新数据段的左右边界及中心,如果合并后的数据段不止一个并且每个数据段的宽度都大于150,那么就认为同时有多辆车存在,根据数据段的中心位置在相应的车道触发;根据确认触发的行数减去20可以得到实际的车辆开始位置;步骤五,从车辆触发开始对后续数据按列累加,直到确认车辆结束; 步骤六,确认车辆开始后尚未确认结束出现的后续目标数据,需要根据距离判断能否与己触发车辆合并,如果水平距离超过200,垂直距离超过100行不合并,不能合并则为新的车辆目标;步骤七,如果连续的空行数大于100,则确认该辆车结束,以当前行数减去100即为车辆的实际结束位置;步骤八,根据从确认车辆触发开始到确认车辆结束的垂直投影信息,确定车辆目标的左、右边界位置;步骤十,如果收到终止指令,则停止数据处理,否则转至步骤二。 由于线图像的产生速率远高于面阵CCD摄像机的帧速率,所以该方法具有很高的实时性。按照这种方法对每一行数据进行二值化,根据二值化的信息(目标点的个数)确定车的开始位置,结束位置,根据垂直投影确定车辆的左右边界。


图1是本发明基于线阵图像灰度特征的二值化算法流程图; 图2是本发明车辆目标提取算法流程图;图3是处理效果图,其中,图(a)是釆集的原始ccd图像;图(b)是 二值化效果图;图(c)是目标提取结果图;图4是处理效果图,其中,图(a)是晚上采集的原始ccd图像,经过 补光后,还有部分灯光存在;(b)是二值化效果图,图(c)是目标提取结 果图。下面结合附图对本发明的内容作进一步详细说明。
具体实施方式
本发明的线阵CCD摄像机序列图像灰度特征识别车辆存在的方法,包括 基于线序列图像灰度特征的二值化和车辆目标提取两部分。对于线阵CCD摄 像机的视频每次产生的线图像,对每一线图像数据进行处理,判断是否存在 车辆。车辆分割是将线阵CCD视场按照近景摄像机视场划分成三个逻辑车道 (对应于被监控的两个物理车道),每个车道包含若干信息预触发标志、 确认触发标志、空行计数器、目标存在计数器、目标左边界、目标右边界、 目标开始行号、目标结束行号、预触发中点位置、目标水平投影计数器、触 发的确切行数。参看图l,对线阵CCD摄像机序列图像灰度特征进行二值化,具体实现 步骤如下1 )初始化找到背景标志bFindBack=false;有可疑目标标志isData=false; 统计连续10行内目标点个数的计数器置为0。2) 从内存中逐行读取数据。3) 从读取的第2行数据开始处理,用lx2的模板(-1, 1)与当前行数 据和上一行数据相乘,把结果中的每个数与阈值T (T=20)进行比较,如果 像素点的值大于阈值T则将其值置为1,小于阈值T则将其值置为O。4) 二值化数据连续累加IO行后,将该数据分为3部分分别求每一部分 的和,如果连续200行数据的3部分和都为零,那么取这200行数据中的第 100行数据作为背景(以后每找到这样的200行数据就更新一次背景, bFindBack-True)。如果找到背景转步骤5),否则转步骤2)。5) 如果10行累加和中某段的目标点个数(累加和被分为3段)大于 20,那么该段数据的后续区阈可能存在目标(isData-True),接下来对该段 数据后续区域按照步骤6)进行处理,否则重复步骤2),步骤3)和步骤5)。6) 首先将该段数据与背景的对应段数据相减,如果差值的绝对值大于 阈值Tl (Tl=40),并且该部分数据的灰度值大于T2 (T2-90)或者小于 255-T2,那么该点被认为是目标点,将其值置为255,否则置为0。7) 将二值化的数据进行处理。如果二值化后一行数据含有1024个点, 先将它分为128段,每段8个点,判断每段中像素值大于255的点的个数, 如果超过4个,那么将该段内所有的像素点值都置为255,否则全部置为O。 在将该行数据分为64段,每段16个点,判断每段中像素值大于255的点的 个数,如果超过9个则将该段内所有像素值置为255,否则全部置为O。8) 如果收到结束指令,则停止数据处理,否则转步骤2)。 参看图2,车辆目标提取具体步骤如下1) 初始化将每个车道的触发标志置为false,将空行计数器、目标左边界、右边 界、目标开始行号、目标结束行号、目标水平投影计数器置为O,预触发水 平投影行数置为10,累加和阈值置为20,确认触发水平投影行数置为20 及累加和阈值40,确认目标结束的空行数置为100,确认触发的目标宽度置 为150;2) 读取二值化处理中步骤3)的结果;3) 对连续IO行二值化的数据中目标点的个数进行统计,将统计结果分 成3段,判断各段内目标点的个数,如果某段内目标点的个数大于20,则 在刚才累加的基础上继续累加IO数据,如果此时该段内目标点的个数大于 40,那么该段内肯定存在目标。否则转步骤2)。4) 找出被认为有目标的段中目标的左右边界计算出该段内目标的宽度, 以及目标的中心位置,如果宽度大于150,并且其余2段中没有发现目标数 据,则车辆存在于数据中心所落的车道。如果宽度小于150,并且其余2段 中没有发现目标数据,则不触发;如果其余2段中发现目标数据,需要求相邻段中目标数据中心之间的距离,如果距离小于阈值200,则合并目标数据 段,合并完后重新计算新数据段的左右边界及中心,如果合并后的数据段不 止一个并且每个数据段的宽度都大于150,那么就说明同时有多辆车存在, 根据数据段的中心位置在相应的车道触发。根据确认触发的行数减去20可 以得到实际的车辆开始位置。5) 从车辆触发开始对后续数据按列累加,直到确认车辆结束。6) 确认车辆开始后(未确认结束)出现的后续目标数据,需要根据距 离判断能否与己触发车辆合并(水平距离超过200,垂直距离超过100行不 合并),如果不能合并则为新的车辆目标。7) 如果连续的空行数大于100,则确认该辆车结束,当前行数减去100 即为车辆的实际结束位置。8) 根据从确认车辆触发开始到确认车辆结束的垂直投影信息,确定车 辆目标的左、右边界位置。9) 如果收到终止指令,则停止数据处理,否则转步骤2)。 以下是发明人给出的具体实施例。实施例l:参照图3所示,图(a)为采集的线阵CCD图像。采用基于线阵序列图 像灰度特征的二值化处理效果如图(b)所示,图(c)为车辆目标提取结果, 可见本发明可以有效的检测出车辆并进行车辆目标提取,识别车辆的存在位 置。实施例2:参照图4所示,图(a)为采集的线阵CCD图像,经过补光后,图像中 仍然存在车灯。采用基于线阵序列图像灰度特征的二值化处理效果如图(b) 所示,去除了灯光干扰,图(c)为车辆目标提取结果,可见本发明可以有 效抑制车灯对车辆检测及车辆目标提取的影响。
权利要求
1.一种线阵CCD摄像机序列图像灰度特征识别车辆存在的方法,其特征在于,该方法基于线序列图像灰度特征的二值化和车辆目标提取处理两部分,对于线阵CCD摄像机的视频每次产生的线图像,对每一线图像数据进行处理,判断是否存在车辆,具体包括下列步骤1)对CCD摄像机序列图像灰度特征进行二值化,具体步骤如下步骤一,初始化找到背景标志bFindBack=false;有可疑目标标志isData=false;统计连续10行内目标点个数的计数器置为0;步骤二,从内存中逐行读取数据;步骤三,从读取的第2行数据开始处理,用1×2的模板(-1,1)与当前行数据和上一行数据相乘,把结果中的每个数与设定的阈值T进行比较,其中,T=20,如果像素点的值大于阈值T则将其值置为1,小于阈值T则将其值置为0;步骤四,二值化数据连续累加10行后,将该数据分为3部分并分别求每一部分的和,如果连续200行数据的3部分和都为零,则取这200行数据中的第100行数据作为背景,以后每找到这样的200行数据就更新一次背景,即bFindBack=True,如果找到背景则转至下一步,否则返回步骤二,步骤五,如果10行累加和中某段的目标点个数大于20,那么该段数据的后续区阈可能存在目标isData=True,接下来对该段数据后续区域按照步骤六进行处理,否则重复步骤二,步骤三和步骤五;步骤六,首先将该段数据与背景的对应段数据相减,如果差值的绝对值大于阈值T1,取T1=40,并且该部分数据的灰度值大于T2,取T2=90或者小于255-T2,那么该点被认为是目标点,将其值置为255,否则置为0;步骤七,将二值化的数据进行处理如果二值化后一行数据含有1024个点,先将它分为128段,每段8个点,判断每段中像素值大于255的点的个数,如果超过4个,那么将该段内所有的像素点值都置为255,否则全部置为0;再将该行数据分为64段,每段16个点,判断每段中像素值大于255的点的个数,如果超过9个则将该段内所有像素值置为255,否则全部置为0;步骤八,如果收到结束指令,则停止数据处理,否则转步骤二;2)车辆目标提取具体步骤如下步骤一,将每个车道的触发标志置为false,将空行计数器、目标左边界、右边界、目标开始行号、目标结束行号、目标水平投影计数器置为0,预触发水平投影行数置为10,累加和阈值置为20,确认触发水平投影行数置为20及累加和阈值40,确认目标结束的空行数置为100,确认触发的目标宽度置为150;步骤二,读取二值化处理中步骤三的结果;步骤三,对连续10行二值化的数据中目标点的个数进行统计,将统计结果分成3段,判断各段内目标点的个数,如果某段内目标点的个数大于20,则在刚才累加的基础上继续累加10数据,如果此时该段内目标点的个数大于40,那么该段内肯定存在目标。否则转步骤二;步骤四,找出被认为有目标的段中目标的左右边界计算出该段内目标的宽度,以及目标的中心位置,如果宽度大于150,并且其余2段中没有发现目标数据,则车辆存在于数据中心所落的车道;如果宽度小于150,并且其余2段中没有发现目标数据,则不触发;如果其余2段中发现目标数据,需要求相邻段中目标数据中心之间的距离,如果距离小于阈值200,则合并目标数据段,合并完后重新计算新数据段的左右边界及中心,如果合并后的数据段不止一个并且每个数据段的宽度都大于150,那么就认为同时有多辆车存在,根据数据段的中心位置在相应的车道触发;根据确认触发的行数减去20可以得到实际的车辆开始位置;步骤五,从车辆触发开始对后续数据按列累加,直到确认车辆结束;步骤六,确认车辆开始后尚未确认结束出现的后续目标数据,需要根据距离判断能否与已触发车辆合并,如果水平距离超过200,垂直距离超过100行不合并,不能合并则为新的车辆目标;步骤七,如果连续的空行数大于100,则确认该辆车结束,以当前行数减去100即为车辆的实际结束位置;步骤八,根据从确认车辆触发开始到确认车辆结束的垂直投影信息,确定车辆目标的左、右边界位置;步骤十,如果收到终止指令,则停止数据处理,否则转至步骤二。
全文摘要
本发明公开了一种线阵CCD摄像机序列图像灰度特征识别车辆存在的方法,该方法基于线序列图像灰度特征的二值化和车辆目标提取处理两部分,对于线阵CCD摄像机的视频每次产生的线图像,对每一线图像数据进行处理,判断是否存在车辆,由于线图像的产生速率远高于面阵CCD摄像机的帧速率,所以该方法具有很高的实时性。按照这种方法对每一行数据进行二值化,根据二值化的信息(目标点的个数)确定车的开始位置,结束位置,根据垂直投影确定车辆的左右边界。
文档编号G06K9/46GK101216892SQ20081001728
公开日2008年7月9日 申请日期2008年1月11日 优先权日2008年1月11日
发明者刘占文, 宋焕生, 涛 徐, 徐志刚, 娜 李, 李卫江, 梁敏建, 王国强, 赵祥模, 郑贵桢 申请人:长安大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1