本发明涉及一种基于单个ptz监控摄像机的道路全景建模与车辆检测跟踪方法,属于交通视频监控和图像处理技术领域。
背景技术:
在交通监控的应用领域中,常用的摄像机一般分为两种:一种是静态安装的摄像机,如用于电子警察抓拍的枪型摄像机。安装完成后,摄像机的角度、镜头焦距、视场范围完全固定不能调整,对于视频检测到或者触发的车辆交通违法行为进行抓拍取证;另一种是具有转动云台的摄像机,如路侧安装或者高空安装的ptz(pan-tilt-zoom,左右-上下-放缩控制)云台摄像机或者球型摄像机,一般均具备高倍变焦功能,可人工自由旋转角度查看路面特定位置。ptz摄像机的应用使得道路交通监测不再局限于特定视角,更具灵活性,可以对一定路段范围内进行从大场景到特定局部区域的监测。但当前基于ptz摄像机的车辆交通行为自动识别技术应用仍然缺乏,究其原因是摄像机的自由运动使得车辆目标的位置及通行轨迹难以检测,无法对其通行行为进行判定及识别。
针对ptz摄像机的运动目标检测问题,国内外的相关工作主要针对两个方面。一是大范围场景的全景背景建模问题。如康奈尔大学研究使用了混合高斯模型进行全景背景建模,对每次只能获得部分场景的运动摄像机,构建出不包含运动目标的整个场景背景;清华大学的研究基于图像之间的密度一致性建立基于混合高斯的全景背景模型。二是基于图像拼接的运动目标检测与跟踪问题。国内的张辉博士提出了针对摄像机360度旋转视角的全景图拼接方法,补偿摄像机旋转带来的图像变换,提取运动目标的前景区域;日本的sugaya博士对运动摄像机视频帧进行特征提取与跟踪,通过仿射模型的几何约束生成全景图像,并与当前帧图像进行对比检测其中的目标;意大利的bevilacqua博士通过ptz摄像机扫描建立背景的全景图,然后基于背景减除的方法实现对目标的检测。从算法过程和实验结果看,这些算法在处理的实时性、全景图像的准确性仍与实际应用存在较大差距,且对摄像机的运动模式和拍摄位置存在较大约束条件,不能处理实际道路中车辆目标的检测和跟踪问题。
技术实现要素:
本发明的目的在于克服现有技术中存在的不足,提供一种基于单个ptz监控摄像机的道路全景建模与车辆检测跟踪方法,实现运动车辆前景的实时检测和跟踪,并用于车辆交通违法行为的判定及识别中。本发明采用的技术方案是:
一种基于单个ptz监控摄像机的道路全景建模与车辆检测跟踪方法,包括以下步骤:
步骤s1,基于ptz监控摄像机多视角图像构建道路全景图像背景模型;
步骤s2,将输入的当前帧图像投影至全景图像背景模型;
步骤s3,根据全景图像背景模型提取车辆前景区域;
步骤s4,根据当前帧图像中车辆前景区域更新跟踪车辆目标状态;
步骤s5,更新道路全景图像背景模型;
步骤s6,根据车辆目标在当前帧图像中的位置向ptz监控摄像机发出相应控制指令。
进一步地,步骤s1包括:
步骤s11,设置监控视角范围;
步骤s12,采集多视角下道路的图像序列;
步骤s13,计算相邻视角图像的投影变换矩阵;
步骤s14,建立全景图像投影矩阵集合;
步骤s15,建立全景图像背景模型。
更进一步地,步骤s13包括:
步骤s131,对两帧相邻图像分别计算横向与纵向的梯度值,并分别统计两个方向上的梯度统计直方图,如图像ii,j横向梯度统计直方图
步骤s132,平移图像ii,j+1的梯度直方图,计算
步骤s133,利用特征点算法分别对图像ii,j与ii,j+1提取特征点集合
步骤s134,使用横向偏移值k和纵向偏移值l对
步骤s135,使用最小二乘法拟合特征点对
矩阵各参数计算如下:
得到投影变换矩阵
步骤s136,使用随机抽样一致性方法重新寻找图像ii,j与ii,j+1间的匹配特征点对
步骤s137,重新采集相邻视角图像,并返回步骤s131重新求解。
更进一步地,步骤s14包括:
获得各相邻视角图像的投影变换矩阵后,进一步求解各视角图像到全景图像的投影变换矩阵,组成全景图像投影矩阵集合;
并以视角为索引,放入全景图像投影矩阵集合。
更进一步地,步骤s15包括:
将各视角图像通过对应的各视角图像到全景图像的投影变换矩阵进行投影和拼接,构成道路全景图像;使用图像背景建模方法构建全景图像的背景模型;
定义gx,y为全景图像背景模型中的点(x,y)处的像素值概率分布。
进一步地,步骤s2具体包括:
在全景图像投影矩阵集合搜索与当前帧图像视角最近或者相同的视角所对应的投影变换矩阵;如已有相同视角的投影变换矩阵,则将当前帧图像进行投影变换至全景图像坐标系;如没有,则根据最近视角图像求解与当前帧图像视角相应的投影变换矩阵并进行投影;并将得到的与当前帧图像视角相应的投影变换矩阵添加至全景图像投影矩阵集合。
进一步地,步骤s3具体包括:
将投影变换后的当前帧图像各个像素与全景图像背景模型中对应像素进行比对,如点(x,y)处当前帧图像的像素值为vt,则计算sgn(gx,y(vt)-0.5),其中sgn为符号函数,如结果≥0则当前像素点属于道路背景区域,否则前景区域;
进一步,对前景区域进行修正,得到无内部镂空、尺寸/长宽比相符的前景区域认为是当前帧图像中的车辆前景区域。
进一步地,步骤s4具体包括:
将当前帧图像车辆前景区域与前一帧图像中车辆目标所在区域进行比对,比对的依据是区域特征值,确定当前帧图像中各车辆前景区域所对应的车辆目标;使用当前帧图像车辆前景区域的特征值更新对应车辆目标的状态。
进一步地,步骤s5具体包括:
使用当前帧图像的像素值更新道路全景图像背景模型对应像素的像素值概率分布函数gx,y。
本发明的优点在于:
1)本发明针对视频图像帧的连续性特点,引入多种节省计算量的机制,更适合于运动车辆前景的实时检测和跟踪。
2)适合于对车辆随意变更车道、不按规定车道行驶等长时间、长距离发生的交通违法行为进行监测取证。
附图说明
图1为本发明的道路全景建模的流程图。
图2为本发明的相邻视角图像之间投影变换矩阵求解的具体流程图。
图3为本发明的相邻视角图像之间投影变换矩阵求解的具体流程图。
图4为本发明的相邻视角图像的图像偏移估计示意图。
图5为本发明的相邻视角图像的特征点匹配示意图。
图6为本发明的通过多视角图像投影形成的道路全景图像示意图。
图7为本发明的车辆检测和跟踪过程所提取的车辆前景示意图。
图8为本发明的车辆检测和跟踪的结果示意图。
具体实施方式
下面结合具体附图和实施例对本发明作进一步说明。
本发明提出一种基于单个ptz监控摄像机的道路全景建模与车辆检测跟踪方法,具体流程参见图1;以下对各步骤进行详细说明;
步骤s1,基于ptz监控摄像机多视角图像构建道路全景背景模型;具体包括:
步骤s11,设置监控视角范围;
在完成ptz监控摄像机安装或者对其标定时,需要根据监控道路场景设置监控视角范围,如左右视角30°~150°、上下视角-15°~-45°、焦距放缩25~120mm的范围。
步骤s12,采集多视角下图像序列;
在道路场景无车或者少车、光照稳定的情况下,使ptz监控摄像机在其监控视角范围内按照一定的视角步长变化(如左右视角1°、上下视角1°)采集图像序列;则该图像序列可以表示为
步骤s13,计算相邻视角图像的投影变换矩阵;
为将相邻视角图像两两拼接、构成全景图像,需要求解图像之间的投影变换矩阵;对于图像ii,j与ii,j+1,由于视角变化很小,其大部分像素应是一致,仅是在左右方向上产生了平移;图3示出了本发明该步骤s13的具体流程图,如下:
步骤s131,对两帧相邻图像分别计算横向与纵向的梯度值,并分别统计两个方向上的梯度统计直方图,如图像ii,j横向梯度统计直方图
步骤s132,平移图像ii,j+1的梯度直方图,计算
图4示出了两张相邻视角图像401和402,及其横向梯度直方图403和纵向梯度直方图404;
步骤s133,利用特征点算法分别对图像ii,j与ii,j+1提取特征点集合
此处可以使用harris、fast、sift等特征点提取方法;
步骤s134,使用横向偏移值k和纵向偏移值l对
步骤s135,使用最小二乘法拟合特征点对
矩阵各参数计算如下:
得到投影变换矩阵
步骤s136,使用随机抽样一致性(ransic)方法重新寻找图像ii,j与ii,j+1间的匹配特征点对
步骤s137,受车辆、光线变化等影响,相邻视角图像中可能产生较多没有对应性的特征点,导致投影变换矩阵求解不成功,需重新采集相邻视角图像,并返回步骤s131重新求解。
步骤s13中计算量最大的步骤为s136,但通过步骤s133和s134的处理,可以在绝大部分情况下避免转入s136中使用ransic寻找匹配的特征点对,这是本发明方法能够实时处理的关键。
步骤s14,建立全景图像投影矩阵集合;
获得各相邻视角图像的投影变换矩阵后,进一步求解各视角图像到全景图像的投影变换矩阵,组成全景图像投影矩阵集合;
如使用图像i1,1的坐标系建立全景图像,则图像ii,j到全景图像的投影变换矩阵为:
bi,j=b(i,j),(i,j-1)b(i,j-1),(i,j-2)…b(i,2),(i,1)b(i,1),(i-1,1)b(i-1,1),(i-2,1)…b(2,1),(1,1)
并以视角为索引,放入全景图像投影矩阵集合;
步骤s15,建立全景图像背景模型;
将各视角图像通过对应的各视角图像到全景图像的投影变换矩阵进行投影和拼接,构成道路全景图像;图6示出了基于6张相邻视角图像投影拼接而成的全景图像。使用如多高斯背景建模、vibe等图像背景建模方法构建全景图像的背景模型。
定义gx,y为全景图像背景模型中的点(x,y)处的像素值概率分布。
构建的全景图像背景模型用于道路通行车辆的检测和跟踪,进一步包括以下步骤:
步骤s2,将输入的当前帧图像投影至全景图像坐标系;
在全景图像投影矩阵集合搜索与当前帧图像视角最近或者相同的视角所对应的投影变换矩阵;如已有相同视角的投影变换矩阵,则将当前帧图像进行投影变换至全景图像坐标系;如没有,则根据最近视角图像求解与当前帧图像视角相应的投影变换矩阵并进行投影;并将得到的与当前帧图像视角相应的投影变换矩阵添加至全景图像投影矩阵集合;
具体地,根据输入的当前帧图像的视角在全景图像投影矩阵集合中检索有无对应视角的投影变换矩阵;如有,则基于该投影变换矩阵将当前帧图像变换至全景图像的坐标系中;否则在全景图像投影矩阵集合中寻找视角最近的投影矩阵,如bi,j',并求解当前帧图像
步骤s3,根据全景图像背景模型提取车辆前景区域;
将上一步投影变换后的当前帧图像各个像素与全景图像背景模型中对应像素进行比对,如点(x,y)处当前帧图像的像素值为vt,则计算sgn(gx,y(vt)-0.5),其中sgn为符号函数,如结果≥0则当前像素点属于道路背景区域,否则前景区域;
进一步,使用图像形态学操作、图像分割、阴影剔除等方法对前景区域进行修正,得到无内部镂空、尺寸/长宽比相符的前景区域可认为是当前帧图像中的车辆前景区域。图7示出了当前帧图像701和提取车辆前景区域后的图像702。
步骤s4,根据当前帧图像中车辆前景区域更新跟踪车辆目标状态;
将当前帧图像车辆前景区域与前一帧图像中车辆目标所在区域进行比对,比对的依据是区域特征值,比如区域的位置、尺寸、长宽比、重叠率等,确定当前帧图像中各车辆前景区域所对应的车辆目标;图8示出了前一帧图像801和当前帧图像802中对应的2个车辆目标。
使用当前帧图像车辆前景区域的特征值更新对应车辆目标的状态。如有当前帧图像车辆前景区域未能与现有车辆目标匹配上,则认为是新进入视场的车辆目标;如有车辆目标未被匹配,则认为该车辆目标驶出视场。在跟踪的车辆目标库里实时增加、删减相关车辆目标。
步骤s5,更新道路全景图像背景模型;
基于多高斯背景建模、vibe等图像背景建模方法的更新机制,使用当前帧图像的像素值更新道路全景图像背景模型对应像素的像素值概率分布函数gx,y。
步骤s6,根据车辆目标在当前帧图像中的位置向ptz监控摄像机发出相应控制指令。
如车辆目标在当前帧图像右侧区域,发送右转指令。另外,根据车辆目标与图像中心点偏移距离的大小,对应设置转动的速度。焦距的放缩采用固定的步长,如放大、缩小均采用1.25倍率,使摄像机工作在特定的几个焦距模式下,尽量减少全景图像投影矩阵集合中元素的个数。
本发明利用安装在道路路侧的单个ptz监控摄像机通过上下/左右/放缩可以实现对整个道路场景中车辆通行目标进行视觉检测和跟踪。和已有方法相比可以准确、动态地构建道路全景图像背景模型,实时、持续地检测和跟踪车辆目标,用于长时间、长距离跟踪道路通行车辆,从而能够判断车辆有无随意变更车道、不按规定车道行驶等交通违法行为。
最后所应说明的是,以上具体实施方式仅用以说明本发明的技术方案而非限制,尽管参照实例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。