欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 交通监控摄像头晃动检测方法及装置独创技术37115字

交通监控摄像头晃动检测方法及装置

2021-02-28 17:52:50

交通监控摄像头晃动检测方法及装置

  技术领域

  本发明属于智能交通技术领域,尤其涉及一种交通监控摄像头晃动检测方法及装置。

  背景技术

  目前,交通车辆日益增多,交通情况也变得越来越复杂。设置在交通路口的摄像头作为电子警察时刻监控着复杂多变的交通情况,例如对违章车辆和肇事逃逸车辆进行监控,以及车牌拍摄。

  摄像头因安装松动、外部强烈震动等原因导致抖动是监控摄像头常见的异常之一。在抓拍违章以及肇事逃逸车辆时,如果摄像头抖动则会造成车辆的车牌拍摄不清晰或者不完全,从而很难识别出摄像头拍摄的视频中的车牌。另一方面,随着交通路口摄像机数量的不断增加,监控的时间不断延长,给视频监控系统特别是摄像头的维护工作带来了新的挑战。若摄像头不能得到及时维护,其监控作用将得不到正常发挥,从而影响其安全保障作用。

  传统的摄像头晃动检测方法通过人工排查的方式,费时费力,成本高,而且实时性差。因此,亟需提供新的交通监控摄像头晃动检测方法。

  发明内容

  为克服上述现有的摄像头晃动检测方法费时费力,成本高,而且实时性差的问题或者至少部分地解决上述问题,本发明实施例提供一种交通监控摄像头晃动检测方法及装置。

  根据本发明实施例的第一方面,提供一种交通监控摄像头晃动检测方法,包括:

  对于交通监控摄像头拍摄的交通视频中进行摄像头换晃动检测的当前帧,基于NCC匹配算法计算所述当前帧中车道的每个检测区域和紧邻所述当前帧的后一帧中车道的相应检测区域之间的相关系数,并将所述车道的匹配总次数加1;其中,经过所述车道的车辆不覆盖所述车道的所有检测区域;

  若所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数的绝对值均大于预设阈值,则获知所述车道的所有检测区域均匹配失败,将所述车道的匹配失败次数加1;

  将所述后一帧作为下一个进行摄像头换晃动检测的当前帧,直到所述匹配总次数达到第一预设最大匹配总次数;

  若所述车道的匹配失败次数大于预设最大匹配失败次数,则确定所述交通监控摄像头发生了晃动。

  具体地,基于NCC匹配算法计算所述当前帧中车道的每个检测区域和紧邻所述当前帧的后一帧中车道的相应检测区域之间的相关系数的步骤包括:

  计算所述当前帧和所述后一帧中车道的每个检测区域的灰度均值;

  根据所述当前帧中车道的每个检测区域的灰度均值,计算所述当前帧中车道的每个检测区域的灰度方差;

  根据所述后一帧中车道的每个检测区域的灰度均值,计算所述后一帧中车道的每个检测区域的灰度方差;

  根据所述当前帧和所述后一帧中车道的每个检测区域的灰度均值,计算所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的灰度协方差;

  根据所述当前帧和所述后一帧中车道的每个检测区域的灰度方差,以及所述灰度协方差,计算所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数。

  具体地,通过以下公式计算所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数:

  

  其中,ρ(s,g)表示当前帧中车道的任一所述检测区域s和所述后一帧中车道的相应检测区域g之间的相关系数,m和n分别表示当前帧中车道的任一检测区域的宽和高,s(i,j)表示s中坐标(i,j)处像素的灰度值,g(i,j)表示g中坐标(i,j)处像素的灰度值,表示s的灰度均值,表示g的灰度均值。

  具体地,所述车道的检测区域的个数为满足如下条件的最小值:

  (N+1)*L1+(N-1)L2>L3;

  其中,N为所述车道的检测区域的个数,L1为所述车道的检测区域的宽度最小值,L2为相邻两个所述检测区域之间的间距最小值,L3为经过所述车道的车辆的长度最大值。

  具体地,若所述车道的匹配失败次数大于预设最大匹配失败次数,则确定所述交通监控摄像头发生了晃动的步骤之前还包括:

  使用正常的没有晃动的交通监控摄像头采集不同天气环境下的交通视频样本;

  基于NCC匹配算法根据每种天气环境下的交通视频样本中车道的检测区域,计算每种天气环境对应的匹配失败次数;

  获取所有种天气环境对应的匹配失败次数的平均值,根据所述平均值计算所有种天气环境对应的匹配失败次数的方差;

  将所述平均值加上所述方差的结果作为所述预设最大匹配失败次数。

  具体地,基于NCC匹配算法根据每种天气环境下的交通视频样本中车道的检测区域,计算每种天气环境对应的匹配失败次数的步骤包括:

  计算每种天气环境下的交通视频样本中当前帧样本中车道的每个检测区域和紧邻所述当前帧的后一帧样本中车道的相应检测区域之间的相关系数;

  若所述当前帧样本中车道的每个检测区域和所述后一帧样本中车道的相应检测区域之间的相关系数的绝对值均大于预设阈值,则获知所述当前帧样本与后一帧样本中车道的所有检测区域均匹配失败,将所述当前帧样本与后一帧样本中车道的匹配失败次数加1;

  将所述后一帧样本作为下一个进行摄像头换晃动检测的当前帧样本,直到所述检测区域匹配的总次数达到第一预设最大匹配总次数。

  具体地,若所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数的绝对值均大于预设阈值,则获知所述车道的所有检测区域均匹配失败的步骤之前包括:

  将正常的交通监控摄像头每隔预设时长转动预设角度,在所述交通监控摄像头转动的过程中使用所述交通监控摄像头采集交通视频样本;

  基于NCC匹配算法计算所述交通视频样本中当前帧样本中车道的每个检测区域和紧邻所述当前帧的后一帧样本中车道的相应检测区域之间的相关系数,直到所述检测区域匹配的总次数达到第二预设最大匹配总次数;

  将所述相关系数中的最大值作为所述预设阈值。

  根据本发明实施例第二方面提供一种交通监控摄像头晃动检测装置,包括:

  匹配模块,用于对于交通监控摄像头拍摄的交通视频中进行摄像头换晃动检测的当前帧,基于NCC匹配算法计算所述当前帧中车道的每个检测区域和紧邻所述当前帧的后一帧中车道的相应检测区域之间的相关系数,并将所述车道的匹配总次数加1;其中,经过所述车道的车辆不覆盖所述车道的所有检测区域;

  计数模块,用于若所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数的绝对值均大于预设阈值,则获知所述车道的所有检测区域均匹配失败,将所述车道的匹配失败次数加1;

  迭代模块,用于将所述后一帧作为下一个进行摄像头换晃动检测的当前帧,直到所述匹配总次数达到第一预设最大匹配总次数;

  确定模块,用于若所述车道的匹配失败次数大于预设最大匹配失败次数,则确定所述交通监控摄像头发生了晃动。

  根据本发明实施例的第三个方面,还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器调用所述程序指令能够执行第一方面的各种可能的实现方式中任一种可能的实现方式所提供的交通监控摄像头晃动检测方法。

  根据本发明实施例的第四个方面,还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面的各种可能的实现方式中任一种可能的实现方式所提供的交通监控摄像头晃动检测方法。

  本发明实施例提供一种交通监控摄像头晃动检测方法及装置,该方法通过基于NCC匹配算法判断车道中多个检测区域内的像素值是否同时发生变化来判断摄像头是否发生抖动,并对多次匹配中的匹配失败次数进行统计,根据匹配失败次数的统计结果进一步判断摄像头是否晃动,从而减少环境或其他因素对摄像头晃动检测的影响,实现了摄像头晃动的自动检测,提高了摄像头晃动检测的精度。

  附图说明

  为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

  图1为本发明实施例提供的交通监控摄像头晃动检测方法整体流程示意图;

  图2为本发明实施例提供的交通监控摄像头晃动检测方法中车辆覆盖车道中所有检测区域的场景示意图;

  图3为本发明实施例提供的交通监控摄像头晃动检测方法中车辆覆盖车道中部分检测区域的场景示意图;

  图4为本发明实施例提供的交通监控摄像头晃动检测方法完整流程示意图;

  图5为本发明实施例提供的交通监控摄像头晃动检测装置整体结构示意图;

  图6为本发明实施例提供的电子设备整体结构示意图。

  具体实施方式

  为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

  在本发明的一个实施例中提供一种交通监控摄像头晃动检测方法,图1为本发明实施例提供的交通监控摄像头晃动检测方法整体流程示意图,该方法包括:S101,对于交通监控摄像头拍摄的交通视频中进行摄像头换晃动检测的当前帧,基于NCC匹配算法计算所述当前帧中车道的每个检测区域和紧邻所述当前帧的后一帧中车道的相应检测区域之间的相关系数,并将所述车道的匹配总次数加1;其中,经过所述车道的车辆不覆盖所述车道的所有检测区域;

  其中,NCC(Normalized Cross Correlation,归一化互相关)匹配算法是一种基于统计学计算两组样本数据相关性的算法,其取值范围为[-1,1]。对于图像来说,每个像素点的灰度值可以看成是一个数值,这样整幅图像就可以看成是一个样本数据的集合。如果它有一个子集与另外一个样本数据相互匹配则它的相关系数为1,表示相关性很高,如果是-1则表示完全不相关。

  本实施例从交通路面中选择一个车道,在该车道上绘制多个检测区域,该车道上行驶的车辆会依次经过这些检测区域。如图2所示,某个车道上有三个矩形的检测区域,当车辆经过检测区域时,车辆的车身覆盖了所有的检测区域,此时所有检测区域中的像素值均发生了变化。无法确定是由于摄像头的晃动导致了所有检测区域中像素值发生变化,还是由于车身覆盖了所有的检测区域导致了所有检测区域中像素值发生变化,从而影响交通监控摄像头晃动的判断效果。如图3所示,在图2的基础上,该车道增加了两个检测区域,当车辆经过检测区域时,车辆的车身不会覆盖所有的检测区域,此时如果摄像头没有晃动的情况下只有部分检测区域中的像素值发生了变化。如果所有检测区域中的像素值均发生变化,则说明摄像头有晃动。

  以车道上有三个检测区域为例,计算当前帧和后一帧中的第一个检测区域之间的相关系数,计算当前帧和后一帧中第二个检测区域之间的相关系数,计算当前帧和后一帧中第三个检测区域之间的相关系数。

  S102,若所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数的绝对值均大于预设阈值,则获知所述车道的所有检测区域均匹配失败,将所述车道的匹配失败次数加1;

  将前后帧内的每个检测区域中每个像素点的灰度值进行对比,利用NCC匹配算法进行匹配。当前帧中车道的任一检测区域s和紧邻当前帧的后一帧中车道的相应检测区域g之间的相关系数|ρ(s,g)|≤1,此时预设阈值P设为1,则该检测区域匹配成功,否则匹配失败。

  如果所有检测区域对应的相关系数的绝对值均大于预设阈值,即所有检测区域的像素值均发生变化,由于经过车道的车辆不覆盖车道的所有检测区域,说明部分检测区域的像素值变化可能是由经过车道的车辆引起的,其他没被车辆覆盖的像素值也发生了变化,说明交通监控摄像头发生抖动,导致所有检测区域匹配失败,将匹配失败次数K加1,K的初始值设为0。

  S103,将所述后一帧作为下一个进行摄像头换晃动检测的当前帧,直到所述匹配总次数达到第一预设最大匹配总次数;

  考虑到其他因素带来的误差,将所有检测区域进行多次匹配,统计多次匹配中匹配失败次数。

  S104,若所述车道的匹配失败次数大于预设最大匹配失败次数,则确定所述交通监控摄像头发生了晃动。

  如果多次匹配中匹配失败次数较多,则说明所有检测区域的像素值变化不是由于背景的偶尔变化等其他因素引起的,而是由于交通监控摄像头的一直晃动引起的,从而更加准确的检测交通监控摄像头的晃动。因此,再定义一个预设最大匹配失败次数N,计算M次匹配中所有检测区域均匹配失败的次数K,如果K大于N,则说明摄像头发生晃动,否则说明摄像头未发生晃动。如20次匹配中有15次匹配失败,N为10,K为15,大于N,说明摄像头发生晃动。

  检测摄像头晃动的完整流程图如图4所示。其中,变量K在所有检测区域均匹配失败的情况下加1,N的设置是为了消除环境或其他因素所造成的误差。虚线框的个数根据实际情况进行确定。变量I用于对匹配总次数进行计数,如果I小于M,则继续进行前后帧中检测区域的灰度值的比较。

  本实施例通过基于NCC匹配算法判断车道中多个检测区域内的像素值是否同时发生变化来判断摄像头是否发生抖动,并对多次匹配中的匹配失败次数进行统计,根据匹配失败次数的统计结果进一步判断摄像头是否晃动,从而减少环境或其他因素对摄像头晃动检测的影响,实现了摄像头晃动的自动检测,提高了摄像头晃动检测的精度,便于工作人员及时发现摄像头晃动问题,并对摄像头采取相应的措施消除晃动。

  在上述实施例的基础上,本实施例中基于NCC匹配算法计算所述当前帧中车道的每个检测区域和紧邻所述当前帧的后一帧中车道的相应检测区域之间的相关系数的步骤包括:计算所述当前帧和所述后一帧中车道的每个检测区域的灰度均值;

  在计算灰度均值前,如果当前帧和后一帧为RGB彩色图像,则将RGB彩色图像转换为灰度图像,即根据彩色图像中每个像素的RGB值计算每个像素的灰度值。

  根据所述当前帧中车道的每个检测区域的灰度均值,计算所述当前帧中车道的每个检测区域的灰度方差;

  

  其中,Ds为当前帧中车道的任一所述检测区域s的灰度方差,m和n分别表示当前帧中车道的任一检测区域的宽和高,s(i,j)表示s中坐标(i,j)处像素的灰度值,表示s的灰度均值。

  根据所述后一帧中车道的每个检测区域的灰度均值,计算所述后一帧中车道的每个检测区域的灰度方差;

  

  其中,Dg为后一帧中车道的任一所述检测区域g的灰度方差,g(i,j)表示g中坐标(i,j)处像素的灰度值,表示g的灰度均值。

  根据所述当前帧和所述后一帧中车道的每个检测区域的灰度均值,计算所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的灰度协方差;

  根据所述当前帧和所述后一帧中车道的每个检测区域的灰度方差,以及所述灰度协方差,计算所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数。

  

  其中,σ(s,g)为s和g的协方差,ρ(s,g)为s和g的相关系数。

  在上述实施例的基础上,本实施例中通过以下公式计算所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数:

  

  其中,ρ(s,g)表示当前帧中车道的任一所述检测区域s和所述后一帧中车道的相应检测区域g之间的相关系数,m和n分别表示当前帧中车道的任一检测区域的宽和高,s(i,j)表示s中坐标(i,j)处像素的灰度值,g(i,j)表示g中坐标(i,j)处像素的灰度值,表示s的灰度均值,表示g的灰度均值。

  在上述实施例的基础上,本实施例中所述车道的检测区域的个数为满足如下条件的最小值:

  (N+1)*L1+(N-1)L2>L3;

  其中,N为所述车道的检测区域的个数,L1为所述车道的检测区域的宽度最小值,L2为相邻两个所述检测区域之间的间距最小值,L3为经过所述车道的车辆的长度最大值。

  具体地,本实施例通过多个检测区域的像素值变化来判断摄像头的抖动情况,检测区域的个数也是影响判断准确率的一个重要因素。为了提高判断摄像头晃动的准确率,得到一个最优的检测区域个数尤为重要。

  如果检测区域的个数太少,当车辆经过检测区域时,车身会覆盖所有的检测区域,车辆通行时会造成所有检测区域的像素值生变化,从而影响摄像头晃动判断的效果。如果在车道上画的检测区域数量太多,一方面使计算的时间变长,另一方面会造成资源的浪费。

  本实施例通过上式确定最优的检测区域的个数。其中,经过车道的车辆的长度最大值通过查找资料确定城市路段最长车辆的长度L3获取,最长车辆一般为公交。同时规定检测区域的最小宽度L1以及相邻两个检测区域的最小间距L2。通过上述条件求出最优的检测区域的个数N。

  在上述各实施例的基础上,本实施例中,若所述车道的匹配失败次数大于预设最大匹配失败次数,则确定所述交通监控摄像头发生了晃动的步骤之前还包括:使用正常的没有晃动的交通监控摄像头采集不同天气环境下的交通视频样本;基于NCC匹配算法根据每种天气环境下的交通视频样本中车道的检测区域,计算每种天气环境对应的匹配失败次数;获取所有种天气环境对应的匹配失败次数的平均值,根据所述平均值计算所有种天气环境对应的匹配失败次数的方差;将所述平均值加上所述方差的结果作为所述预设最大匹配失败次数。

  具体地,因为环境或者其他因素也可能造成所有检测区域的像素值同时出现变化,为了消除这种误差带来的影响,有必要确定一个预设最大匹配失败次数来提高判断摄像头晃动的准确性。选取正常的摄像头进行测试,具体得到预设最大匹配失败次数的步骤如下:

  (1)使用正常的没有晃动情况的摄像头,利用上述得到的最优个数的检查区域进行测试,在不同的天气环境下,例如正常情况,以及雨雪、大雾等极端天气下的k种天气的交通视频均采用NCC匹配算法进行M次匹配,得到每种天气对应的匹配失败次数为n1,n2,...nk。

  (2)对得到的多种天气对应的匹配失败次数求均值,即

  n=∑nk/k。

  (3)对得到的多种天气对应的匹配失败次数求方差,即

  F=((n-n1)2+(n-n2)2+...+(n-nk)2)/k。

  (4)得到误差范围(n-F,n+F),在这里选取误差范围的上限n+F作为预设最大匹配失败次数。

  本实施例通过对正常摄像头的异常抖动进行实验分析,得出最优的预设最大匹配失败次数,一方面,使得摄像头晃动检测具有一定的精准性;另一方面,提高了摄像头晃动检测的鲁棒性,对环境的适应性强,针对雨雪、大雾、反光等恶劣环境判断摄像头的抖动也具有良好的效果。

  在上述实施例的基础上,本实施例中基于NCC匹配算法根据每种天气环境下的交通视频样本中车道的检测区域,计算每种天气环境对应的匹配失败次数的步骤包括:

  计算每种天气环境下的交通视频样本中当前帧样本中车道的每个检测区域和紧邻所述当前帧的后一帧样本中车道的相应检测区域之间的相关系数;

  若所述当前帧样本中车道的每个检测区域和所述后一帧样本中车道的相应检测区域之间的相关系数的绝对值均大于预设阈值,则获知所述当前帧样本与后一帧样本中车道的所有检测区域均匹配失败,将所述当前帧样本与后一帧样本中车道的匹配失败次数加1;

  将所述后一帧样本作为下一个进行摄像头换晃动检测的当前帧样本,直到所述检测区域匹配的总次数达到第一预设最大匹配总次数。

  在上述实施例的基础上,本实施例中若所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数的绝对值均大于预设阈值,则获知所述车道的所有检测区域均匹配失败的步骤之前包括:将正常的交通监控摄像头每隔预设时长转动预设角度,在所述交通监控摄像头转动的过程中使用所述交通监控摄像头采集交通视频样本;基于NCC匹配算法计算所述交通视频样本中当前帧样本中车道的每个检测区域和紧邻所述当前帧的后一帧样本中车道的相应检测区域之间的相关系数,直到所述检测区域匹配的总次数达到第二预设最大匹配总次数;将所述相关系数中的最大值作为所述预设阈值。

  具体地,预设阈值通过如下步骤获取:

  (1)将正常的摄像头进行微小的转动,该摄像头能转动或者可以通过人工轻微转动。在摄像头转动的过程中进行拍摄,将拍摄好的交通视频进行分帧。

  (2)利用NCC匹配算法对比前后帧检测区域中像素值的变化,得到每次匹配的相关系数,即p1,p2...pm。第二预设最大匹配总次数应尽量取多。

  (3)选取所有次匹配中的最大相关系数作为预设阈值P。

  在本发明的另一个实施例中提供一种交通监控摄像头晃动检测装置,该装置用于实现前述各实施例中的方法。因此,在前述交通监控摄像头晃动检测方法的各实施例中的描述和定义,可以用于本发明实施例中各个执行模块的理解。图5为本发明实施例提供的交通监控摄像头晃动检测装置整体结构示意图,该装置包括匹配模块501、计数模块502、迭代模块503和确定模块504;其中:

  匹配模块501用于对于交通监控摄像头拍摄的交通视频中进行摄像头换晃动检测的当前帧,基于NCC匹配算法计算所述当前帧中车道的每个检测区域和紧邻所述当前帧的后一帧中车道的相应检测区域之间的相关系数,并将所述车道的匹配总次数加1;其中,经过所述车道的车辆不覆盖所述车道的所有检测区域;

  从交通路面中选择一个车道,在该车道上绘制多个检测区域,该车道上行驶的车辆会依次经过这些检测区域。当车辆经过检测区域时,车辆的车身不会覆盖所有的检测区域,此时如果摄像头没有晃动的情况下只有部分检测区域中的像素值发生了变化。如果所有检测区域中的像素值均发生变化,则说明摄像头有晃动。

  以车道上有三个检测区域为例,匹配模块501计算当前帧和后一帧中的第一个检测区域之间的相关系数,计算当前帧和后一帧中第二个检测区域之间的相关系数,计算当前帧和后一帧中第三个检测区域之间的相关系数。

  计数模块502用于若所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数的绝对值均大于预设阈值,则获知所述车道的所有检测区域均匹配失败,将所述车道的匹配失败次数加1;

  如果所有检测区域对应的相关系数的绝对值均大于预设阈值,即所有检测区域的像素值均发生变化,由于经过车道的车辆不覆盖车道的所有检测区域,说明部分检测区域的像素值变化可能是由经过车道的车辆引起的,其他没被车辆覆盖的像素值也发生了变化,说明交通监控摄像头发生抖动,导致所有检测区域匹配失败,计数模块502将匹配失败次数加1。

  迭代模块503用于将所述后一帧作为下一个进行摄像头换晃动检测的当前帧,直到所述匹配总次数达到第一预设最大匹配总次数;

  考虑到其他因素带来的误差,迭代模块503将所有检测区域进行多次匹配,统计多次匹配中匹配失败次数。

  确定模块504用于若所述车道的匹配失败次数大于预设最大匹配失败次数,则确定所述交通监控摄像头发生了晃动。

  如果多次匹配中匹配失败次数较多,则说明所有检测区域的像素值变化不是由于背景的偶尔变化等其他因素引起的,而是由于交通监控摄像头的一直晃动引起的,从而更加准确的检测交通监控摄像头的晃动。因此,再定义一个预设最大匹配失败次数,如果所有检测区域均匹配失败的次数大于预设最大匹配失败次数,则说明摄像头发生晃动,否则说明摄像头未发生晃动。

  本实施例通过基于NCC匹配算法判断车道中多个检测区域内的像素值是否同时发生变化来判断摄像头是否发生抖动,并对多次匹配中的匹配失败次数进行统计,根据匹配失败次数的统计结果进一步判断摄像头是否晃动,从而减少环境或其他因素对摄像头晃动检测的影响,实现了摄像头晃动的自动检测,提高了摄像头晃动检测的精度,便于工作人员及时发现摄像头晃动问题,并对摄像头采取相应的措施消除晃动。

  在上述实施例的基础上,本实施例中匹配模块具体用于:计算所述当前帧和所述后一帧中车道的每个检测区域的灰度均值;根据所述当前帧中车道的每个检测区域的灰度均值,计算所述当前帧中车道的每个检测区域的灰度方差;根据所述后一帧中车道的每个检测区域的灰度均值,计算所述后一帧中车道的每个检测区域的灰度方差;根据所述当前帧和所述后一帧中车道的每个检测区域的灰度均值,计算所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的灰度协方差;根据所述当前帧和所述后一帧中车道的每个检测区域的灰度方差,以及所述灰度协方差,计算所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数。

  在上述实施例的基础上,本实施例中匹配模块具体通过以下公式计算所述当前帧中车道的每个检测区域和所述后一帧中车道的相应检测区域之间的相关系数:

  

  其中,ρ(s,g)表示当前帧中车道的任一所述检测区域s和所述后一帧中车道的相应检测区域g之间的相关系数,m和n分别表示当前帧中车道的任一检测区域的宽和高,s(i,j)表示s中坐标(i,j)处像素的灰度值,g(i,j)表示g中坐标(i,j)处像素的灰度值,表示s的灰度均值,表示g的灰度均值。

  在上述各实施例的基础上,本实施例中所述车道的检测区域的个数为满足如下条件的最小值:

  (N+1)*L1+(N-1)L2>L3;

  其中,N为所述车道的检测区域的个数,L1为所述车道的检测区域的宽度最小值,L2为相邻两个所述检测区域之间的间距最小值,L3为经过所述车道的车辆的长度最大值。

  在上述各实施例的基础上,本实施例中还包括第一处理模块,用于使用正常的没有晃动的交通监控摄像头采集不同天气环境下的交通视频样本;基于NCC匹配算法根据每种天气环境下的交通视频样本中车道的检测区域,计算每种天气环境对应的匹配失败次数;获取所有种天气环境对应的匹配失败次数的平均值,根据所述平均值计算所有种天气环境对应的匹配失败次数的方差;将所述平均值加上所述方差的结果作为所述预设最大匹配失败次数。

  在上述实施例的基础上,本实施例中第一处理模块具体用于:计算每种天气环境下的交通视频样本中当前帧样本中车道的每个检测区域和紧邻所述当前帧的后一帧样本中车道的相应检测区域之间的相关系数;若所述当前帧样本中车道的每个检测区域和所述后一帧样本中车道的相应检测区域之间的相关系数的绝对值均大于预设阈值,则获知所述当前帧样本与后一帧样本中车道的所有检测区域均匹配失败,将所述当前帧样本与后一帧样本中车道的匹配失败次数加1;将所述后一帧样本作为下一个进行摄像头换晃动检测的当前帧样本,直到所述检测区域匹配的总次数达到第一预设最大匹配总次数。

  在上述各实施例的基础上,本实施例中还包括第二处理模块,用于将正常的交通监控摄像头每隔预设时长转动预设角度,在所述交通监控摄像头转动的过程中使用所述交通监控摄像头采集交通视频样本;基于NCC匹配算法计算所述交通视频样本中当前帧样本中车道的每个检测区域和紧邻所述当前帧的后一帧样本中车道的相应检测区域之间的相关系数,直到所述检测区域匹配的总次数达到第二预设最大匹配总次数;将所述相关系数中的最大值作为所述预设阈值。

  图6示例了一种电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)601、通信接口(Communications Interface)602、存储器(memory)603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信。处理器601可以调用存储器603中的逻辑指令,以执行如下方法:对于交通监控摄像头拍摄的交通视频中进行摄像头换晃动检测的当前帧,基于NCC匹配算法计算当前帧中后一帧中每个检测区域之间的相关系数,并将车道的匹配总次数加1;其中,经过车道的车辆不覆盖车道的所有检测区域;若当前帧和后一帧中每个检测区域之间的相关系数的绝对值均大于预设阈值,则将车道的匹配失败次数加1;将后一帧作为下一个进行摄像头换晃动检测的当前帧,直到匹配总次数达到第一预设最大匹配总次数;若车道的匹配失败次数大于预设最大匹配失败次数,则确定交通监控摄像头发生了晃动。

  此外,上述的存储器603中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

  本实施例提供一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,计算机指令使计算机执行上述各方法实施例所提供的方法,例如包括:对于交通监控摄像头拍摄的交通视频中进行摄像头换晃动检测的当前帧,基于NCC匹配算法计算当前帧中后一帧中每个检测区域之间的相关系数,并将车道的匹配总次数加1;其中,经过车道的车辆不覆盖车道的所有检测区域;若当前帧和后一帧中每个检测区域之间的相关系数的绝对值均大于预设阈值,则将车道的匹配失败次数加1;将后一帧作为下一个进行摄像头换晃动检测的当前帧,直到匹配总次数达到第一预设最大匹配总次数;若车道的匹配失败次数大于预设最大匹配失败次数,则确定交通监控摄像头发生了晃动。

  本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

  以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

  通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

  最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

《交通监控摄像头晃动检测方法及装置.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)