发明内容
为克服现有技术的上述缺陷,本发明的目的在于提供一种PTZ监控摄像机实时姿态快速估算方法,基于实时视频与场景结构全景图的快速匹配,解决了实时估算摄像机姿态的问题。
本发明采用的技术方案为:一种PTZ监控摄像机实时姿态快速估算方法,采用场景结构全景图作为视频匹配的参考图像,对实时视频进行全景匹配,从而在场景结构全景图中找到实时视频对应的区域,并确定实时视频与所述场景结构全景图的单应关系,通过对所述单应关系和所述场景结构全景图的姿态参数的计算得出实时视频的姿态参数。
进一步地,所述全景匹配是指针对实时视频在所述场景结构全景图中进行实时搜索。
进一步地,所述单应关系是通过对实时视频与所述场景结构全景图中的相应的特征点的对应关系的计算获得。
所述场景结构全景图可以为由摄像机在PTZ操作下产生的多个不同FOV图像构成的全景图。
优选地,在所述场景结构全景图中提取显著而有效的特征区域,将所述特征区域与所述场景结构全景图关联,建立全景图特征索引,在需要进行全景匹配时,采用所述全景图特征索引替代所述场景结构全景图进行特征运算。
所述全景图特征索引可以为一张有限分辨率的图像。
优选地,所述摄像机在工作过程中实时记录自身的姿态参数。
在进行全景匹配时,可以利用实时记录的摄像机的姿态参数限定特征匹配算法在所述场景结构全景图或全景图特征索引中的搜索范围。
所述实时记录的摄像机的姿态参数可以包括实时视频在场景结构全景图或全景图特征索引中的视频投影区域和搜索区域的参数,以及摄像机的水平偏移、垂直偏移、缩放倍数、水平速度、垂直速度和缩放速度的参数。
当实时视频在所述场景结构全景图和全景图特征索引中均匹配失败时,可以直接根据摄像机的水平偏移、垂直偏移、缩放倍数、水平速度、垂直速度和缩放速度的历史参数信息推算实时视频在所述场景结构全景图或全景图特征索引中对应的区域。
本发明的有益效果:场景结构全景图包含大量的场景信息,为实时估算任意摄像机的姿态提供了详细的参考信息,并且对于每一个图像点,它在三维模型中的映射关系也是已知的,因此可以将全景图视为一张高分辨率的纹理图像,可以被精确的映射到三维模型中的对应位置,能够唯一确定某个FOV状态下摄像机的姿态参数,采用预先建立全景图的方法实时估算可控摄像机的投影参数,实现了监控视频与三维场景的实时融和。
在全景匹配时,采用全景图特征索引替代场景结构全景图,并利用实时记录的摄像机的姿态参数限定特征匹配算法的搜索范围,可有效解决搜索范围与实时性之间的矛盾,快速地在全景图特征索引(进一步地在场景结构全景图)中找到实时视频对应的区域,从而确定实时视频与场景结构全景图的单应关系,进而计算出摄像机的实时姿态。
本发明的方法大大提高了摄像机姿态实时估算的效率,平均处理速率可达15-20fps,且平均投影误差较小。
具体实施方式
参见图1和图2,本发明提供了一种PTZ(云台控制)监控摄像机实时姿态快速估算方法,采用场景结构全景图作为视频匹配的参考图像,对实时视频进行全景匹配,从而在场景结构全景图中找到实时视频对应的区域,并确定实时视频与所述场景结构全景图的单应关系(可以以单应矩阵的形式体现),通过对所述单应关系和所述场景结构全景图的姿态参数的计算得出实时视频的姿态参数(实时视频的投影矩阵使用单应矩阵与原投影矩阵相乘得到),所述场景结构全景图可以为一张也可以为多张。
所述全景匹配是指针对实时视频在所述场景结构全景图中进行实时搜索。
所述场景结构全景图中包含了大量的场景信息,并且对于每一个图像点,它在三维模型中的映射关系也是已知的,所以可以将场景结构全景图视为一张高分辨率的纹理图像,可以被精确的映射到三维模型中的对应位置。同理,若已知图像与场景结构全景图的单应关系,也就能将新的图像映射到三维模型的对应位置上去,只要知道实时图像与参考图像的单应关系,就能计算出实时图像所对应摄像机的姿态参数。
所述场景结构全景图可以为由摄像机在PTZ操作下产生的多个不同FOV(视频)图像构成的全景图,能够唯一确定某个FOV状态下摄像机的姿态参数。本发明采用预先建立场景结构全景图的方法实现了估算可控摄像机的投影参数,实现了监控视频与三维场景的实时融和。
所述场景结构全景图记录了摄像机在几乎所有有效视域内的场景结构特征,为实时估算任意摄像机的姿态提供了详细的参考信息,为了解决实时估算时带来的庞大的时间复杂度,难以满足实时计算的要求的问题,本发明提出全景图特征索引的方法,将所有显著特征放在一张结构特征索引表中。假设基于以下前提:场景中角点特征并不是绝对均匀分布的,场景中的固有对象,即建筑物、灯杆、路面、雕塑、花坛等在相当长时间内是不变的。这也符合绝大多数场景的实际情况,换句话说,在场景结构全景图中有相当大的区域是缺少有效角点的,本发明优选地,在所述场景结构全景图中提取显著而有效的特征区域,将所述特征区域与所述场景结构全景图关联,建立全景图特征索引,在需要进行全景匹配时,采用所述全景图特征索引替代所述场景结构全景图进行特征运算,从而减小特征区域,所述全景图特征索引可以为一张有限分辨率的图像,分为特征点聚类和子图关联两个步骤。
特征点聚类:设场景结构全景图中的特征点集为points,对points进行K-means聚类分析,将聚类结果按照所包含的特征点数量从高到低的排序,找到排序前K个特征聚类,为每个聚类中心点Centerk建立一个m*n大小的矩形区域Rectk,对聚类中的所有特征点做矩形包围盒,将该矩形包围盒内的子图缩放到Rectk规格,记矩形包围盒到Rectk的缩放因子分别为SBR_Wk和SBR_Hk。
子图关联:将每个Rectk区域内的图像单独提取出来,按8*8排列构成512*512图像,并记录每个Rectk的聚类中心点坐标。
这张512*512图像即为所述全景图特征索引,包含了场景中绝大多数的重要特征区域。
监控 实时融和的关键部分是将多种视频实时精确的渲染到3D模型上,这里所说的多种视频是指不同类型、不同分辨率的摄像机获取的不同场景下的视频。视频和三维模型存在于两个不同的空间。虽然三维模型的纹理贴图是从多张静态图像获得的,但使用视频进行实时的三维模型纹理映射却与之有较大的区别,为了实现视频无缝渲染,系统需要通过特定的姿态跟踪技术自动求解摄像机的3D姿态,本发明针对这一问题,提出姿态跟踪算法,包括:
(1) 特征搜索策略
基于单摄像机场景结构全景图以及全景图特征索引,本发明提出适用于可控摄像机实时投影姿态估计的结构特征搜索策略。摄像机姿态实时投影姿态估计的核心是识别摄像机FOV下的真实场景在三维场景模型中的对应位置。
根据建立全景图特征索引的假设(场景中角点特征并不是绝对均匀分布的,场景中的固有对象,即建筑物、灯杆、路面、雕塑、花坛等在相当长时间内是不变的),当在场景结构全景图中的特征搜索区域足够大时,总能找到与当前FOV对应的区域,而对于一张分辨率在1080高清级别以上的场景结构全景图,其特征点检测效率很难控制在40ms以内,为了提高搜索的效率,必将缩小每帧视频的搜索范围。本发明提出的结构特征实时搜索策略通过引入匹配上下文和全景图特征索引的概念,解决搜索范围和实时性之间的矛盾。
本发明对结构特征实时搜索的前提做如下假设:
假设1:绝大部分情况下,摄像机PTZ及Zoom操作带来的视频内容改变是连续的;
假设2:在所有情况下,前一帧视频所对应的摄像机姿态参数是已知的。
对于假设1,目前摄像机的硬件结构和控制方式决定了对摄像机的操作控制过程是一个渐变的过程,在网络及设备正常的情况下,云台及变焦运动不会出现画面跳跃现象。但是不排除因操作不当、网络及设备异常造成的画面跳跃,出现前后两帧视频内容发生根本性改变。
对于假设2,可以通过在处理过程中实时记录摄像机的姿态参数来保证其始终成立。这些实时记录的、已知的姿态参数信息为匹配上下文,实时搜索时(进行全景匹配时),利用匹配上下文限定特征匹配算法在所述场景结构全景图或全景图特征索引中的搜索范围。
本发明中,匹配上下文(实时记录的摄像机的姿态参数)包括实时视频在场景结构全景图或全景图特征索引中的视频投影区域(Video Rect,简称vr)和搜索区域(Searching Rect,简称sr)的参数,以及摄像机的水平偏移(Horizontal Moving,简称hm)、垂直偏移(Vertical Moving,简称vm)、缩放倍数(Scale,简称s)、水平速度(Horizontal Speed,简称hs)、垂直速度(Vertical Speed,简称vs)和缩放速度(Zoom Speed,简称zs)的参数。
视频投影区域:用于描述视频内容映射到结构全景图中的精确区域;
搜索区域:用于限定本次特征搜索范围的参数,sr=S*Rect(vr),起中S为比例因子,Rect()为取最小包围盒矩形操作;
水平偏移:记录摄像机在水平方向的偏移量,偏移参考点为场景结构全景图中心点,水平向右为正向,水平向左为负向;
垂直偏移:记录摄像机在垂直方向的偏移量,偏移参考点为场景结构全景图中心点,垂直向上为正向,垂直向下为负向;
缩放倍数:用于描述视频中单位目标大小在场景结构全景图中的缩放比例,
其中,i,j为特征点编号,frame_point和pano_point分别代表视频帧中的特征点集和与之对应的结构全景图中的特征点集;
水平速度:用于描述摄像机在水平方向的运动方向和速率,
其中,i为帧编号,Time为时间常数,代表前后两帧之间的时间间隔;
垂直速度:用于描述摄像机在垂直方向的运动方向和速率,
缩放速度:用于描述摄像机镜头焦距的缩放方向和速率,
对于搜索策略的具体执行过程,每一次视频帧的匹配结果存在三种可能情况:可能情况一,在匹配上下文约束下与场景结构全景图匹配成功,这是最理想的情况;可能情况二,上下文约束匹配失败,与全景图特征索引匹配成功,此时需根据全景图特征索引重新定位搜索区域,在此区域约束下再次进行场景结构全景图匹配;可能情况三,最糟糕的情况,此时场景结构全景图匹配失败,全景图特征索引匹配失败,出现这种情况最可能的原因就是当摄像机镜头焦距拉大到最大时,整个画面的内容主要是人、车等运动目标,此时很难通过特征匹配的方法估算出摄像机的参数。在这种情况下,可以直接根据hm,vm,s,hs,vs和zs等历史信息,直接推算视频的投影区域vr,相较前两种情况,最后一种情况得到的参数结果精度较低。
与一般的上下文依赖的搜索策略不同,本搜索策略并不要求在首次执行时摄像机必须处于特定的姿态上,通过引入全景图特征索引,算法就能自动识别摄像机的初始姿态。
(2) 实时姿态跟踪
本方法可以快速在场景结构全景图中找到视频FOV的对应区域,从而确定实时视频与场景结构全景图的单应关系H。
(a) 实时投影矩阵
记输入图像为Is’,与之最佳匹配的场景结构全景图记为Ip,Is’与Ip的单应关系记为H。以场景结构全景图Ip为参考坐标系,图像上点的投影关系可表示为:x=KX。其中,x为 2D点坐标,X为x对应的3D点坐标,K为全景图Ip对应的摄像机内参数矩阵。则对于图像Is’中的点x’,有如下对应关系成立:
其中,为图像Is’的内参矩阵,R为图像Is’相对于场景结构全景图Ip的旋转矩阵。通过上面两式,可以建立x与x’之间的关系:
由于使用图像匹配的方法,通过图像间的特征点的对应关系,可以计算出单应矩阵。所以新图像的内参矩阵和旋转矩阵构成的参数方程可用矩阵的形式表示如下:
式中H、K为已知,
为上三角矩阵。可以使用 QR分解分别计算出
和R。
记场景结构全景图在三维模型中的旋转和平移矩阵分别为R0和T0,R0和T0在对场景结构全景图Ip进行标定的时候已经计算得到。那么新图像Is’在三维模型中的旋转分量R’和平移分量T’可由下式计算得到:
所以对 PTZ 摄像机在任意姿态下的新图像Is’,其在三维模型中的投影矩阵P'可用下式表示:
(b) 效率优化算法
本方法利用实时视频帧与场景结构全景图的单应关系实现摄像机姿态的实时更新,在执行效率上,需要在
与
之间进行特征匹配,其中
, S≥1为尺度因子。理论而言,S越大,区域内特征点数量越多,匹配成功的概率越大,同时计算量也越大,当S=1时,
近似于前一帧图像
,在特征数量上,考虑到进行场景结构全景图拼接时的质量损失,
较
与
有更高的相似度,因此可以使用
替代
进行特征匹配的效率优化算法。
与
之间的单应矩阵用 H表示,在
中的图像点与
中的图像点存在如下关系:
上述两个公式组合,得到:
本发明中的实时视频的姿态参数除了可以采用上述的矩阵算法计算得到外,还可以采用其它适宜的方式获得,本发明的方法可以大大提高摄像机姿态实时估算的效率,平均处理速率可达15-20fps,且平均投影误差较小。