本发明涉及一种视频拼接的方法,尤其涉及一种基于运动场多路摄像头进行视频拼接的方法。
背景技术:
目前的视频拼接方法,多采用先对两视频提取特征点,再通过对特征点进行匹配,来进行拼接。然而,球场中的视频画面内容较一致,且较为干净,从画面中较少能提取出稳定出现的独特的特征点;另外,为了减少设备投入,往往两镜头重叠区域较少。针对现有技术的缺点,本发明提出了一种基于运动场多路摄像头进行视频拼接的方法。
技术实现要素:
本发明为解决上述技术问题而采用的技术方案是提供一种基于运动场多路摄像头进行视频拼接的方法,其中:包括重叠区域计算模块、特征点提取模块、图像单应性矩阵计算模块、图像融合裁剪模块;
所述重叠区域计算模块设置各镜头的前景提取模块、跨镜头的前景匹配模块;
所述特征点提取模块设置单帧特征点子提取模块、单帧特征点匹配子模块、多帧特征点对融合模块;
其中,各镜头的前景提取模块工作原理为:1)对各镜头的视频,建立背景模型,从中分割出前景;2)对各镜头的前景按行和列的形式,分别计算各行和列的前景点比率,将各个时刻的计算结果进行存储;
跨镜头的前景匹配模块工作原理为:对需要拼接的两镜头a和b根据其拼接模式,选择相应的计算模式,左右拼接按列前景点比率计算,上下 拼接按行前景点比率进行计算;
单帧特征点子提取模块工作原理为:对两镜头的重叠区域是否存在一定比率的前景,若存在,则对当前的前景区域,用局部特征提取算子进行特征点提取;
单帧特征点匹配子模块工作原理为:在对两镜头的重叠区域提取得到特征点后,对各特征点进行特征描述(如sift,surf,orb),并对其进行特征点匹配(可采用最近邻法),并采用对最终的匹配结果进行过滤(如ransac);
多帧特征点对融合模块工作原理为:在对两镜头的单帧图像提取和匹配得到合适的特征点后,将匹配上的特征点对的位置进行存储,通过多帧的累积,在得到足够多的匹配上的点对后(如100对),对这些点对再采用ransac进行一次过滤,得到过滤后的n对点对:p1(pa1,pb1),p2(pa1,pb1),......,pn(pa1,pb1);
图像单应性矩阵计算模块工作原理为:利用两个镜头中多帧所匹配上的n对点对p1(pa1,pb1),p2(pa1,pb1),......,pn(pa1,pb1),求解homegraph矩阵方程sm=d,得到两镜头的矩阵映射关系矩阵m;
图像融合裁剪模块工作原理为:在求解得到两镜头的映射矩阵,可按一般的处理方法,对图像进行拼接处理。
上述的一种基于运动场多路摄像头进行视频拼接的方法,其中:跨镜头的前景匹配模块对对需要拼接的两镜头a和b按如下方式进行计算:
1)以镜头a中靠近边界的某行或列(设为ra)为中心,往前后各取 若干帧,以各行或列的的前景点比率作为各分量,形成一向量a;
2)对镜头a中各视频帧,判断向量a是否需要保留,判别规则是该向量中前景点比率值,与上一次保存的前景点比率值要出现交错;
3)若需保留,则将向量a保存为at(t表示为第t帧),并存储于va中;同时对镜头b中各行或各列,按以上规则形成多个向量b1t,b2t,b3t,.......,bnt(n表示以第n行或列为中心,t表示为第t帧),并将各向量存储于vb中;
4)在va中存储的向量,超过给定阈值后(如200),则综合vb中向量进行计算,得到镜头b中与a中r最为匹配的行或列rb,将rb作为匹配上的结果,从而得到两镜头的重叠区域。
上述的一种基于运动场多路摄像头进行视频拼接的方法,其中:图像单应性矩阵计算模块运作中,其中,s=[x1,x2,x3,.....,xn]t,x1,x2,x3,.....,xn为一个定义为(x,y,1)的三元组,其中x表示该点在镜头a所对应图像上的x坐标,y表示该点在在镜头a所对应图像上的y坐标,1为齐次项;d=[y1,y2,y3,.....,yn]t,其定义和a类似。
上述的一种基于运动场多路摄像头进行视频拼接的方法,其中:单帧特征点匹配子模块在对两镜头的重叠区域提取得到特征点后,对特征点进行特征描述,并对其进行特征点采用最近邻法匹配。
上述的一种基于运动场多路摄像头进行视频拼接的方法,其中:单帧特征点子提取模块用fast、sift、surf局部特征提取算子进行特征点提取。
本发明相对于现有技术具有如下有益效果:
克服了现有技术中多采用先对两视频提取特征点再通过对特征点进 行匹配进行拼接的弊端,在画面中能提取出数量较多且合适的特征点。
附图说明
图1为本发明提供的一种基于运动场多路摄像头进行视频拼接的方法的原理示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的描述。
本发明提供一种基于运动场多路摄像头进行视频拼接的方法,具体方案包括:
1.重叠区域计算模块
(a).各镜头的前景提取模块
(1)对各镜头的视频,建立背景模型,从中分割出前景;
(2)对各镜头的前景,按行和列的形式,分别计算各行和列的前景点比率,将各个时刻的计算结果进行存储;
(b).跨镜头的前景匹配模块
对需要拼接的两镜头a和b,根据其拼接模式,选择相应的计算模式(左右拼接按列前景点比率计算,上下拼接按行前景点比率进行计算),对两镜头按如下方式进行计算:
(1)以镜头a中靠近边界的某行或列(设为ra)为中心,往前后各取若干帧,以各行或列的的前景点比率作为各分量,形成一向量a;
(2)对镜头a中各视频帧,判断向量a是否需要保留(判别规则是该向量中前景点比率值,与上一次保存的前景点比率值要出现交错);
(3)若需保留,则将向量a保存为at(t表示为第t帧),并存储于va中;同时对镜头b中各行或各列,按以上规则形成多个向量b1t,b2t,b3t,.......,bnt(n表示以第n行或列为中心,t表示为第t帧),并将各向量存储于vb中;
(4)在va中存储的向量,超过给定阈值后(如200),则综合vb中向量进行计算,得到镜头b中与a中r最为匹配的行或列rb,将rb作为匹配上的结果,从而得到两镜头的重叠区域。
2.特征点提取模块
(a).单帧特征点子提取模块
对两镜头的重叠区域是否存在一定比率的前景,若存在,则对当前的前景区域,用局部特征提取算子(如fast,sift,surf等)进行特征点提取。
(b).单帧特征点匹配子模块
在对两镜头的重叠区域提取得到特征点后,对各特征点进行特征描述(如sift,surf,orb),并对其进行特征点匹配(可采用最近邻法),并采用对最终的匹配结果进行过滤(如ransac)。
(d).多帧特征点对融合模块
在对两镜头的单帧图像,提取和匹配得到合适的特征点后,将匹配上的特征点对的位置进行存储。通过多帧的累积,在得到足够多的匹配上的点对后(如100对),对这些点对再采用ransac进行一次过滤,得到过滤后的n对点对:p1(pa1,pb1),p2(pa1,pb1),......,pn(pa1,pb1)。
3.图像单应性矩阵计算模块
利用两个镜头中多帧所匹配上的n对点对p1(pa1,pb1),p2(pa1,pb1),......,pn(pa1,pb1),求解如下homegraph矩阵方程sm=d,得到两镜头的矩阵映射关系矩阵m。
其中,s=[x1,x2,x3,.....,xn]t,x1,x2,x3,.....,xn为一个定义为(x,y,1)的三元组,其中x表示该点在镜头a所对应图像上的x坐标,y表示该点在在镜头a所对应图像上的y坐标,1为齐次项;d=[y1,y2,y3,.....,yn]t,其定义和a类似。
4.图像融合裁剪模块
在求解得到两镜头的映射矩阵,可按一般的处理方法,对图像进行拼接处理。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。