基于SVM的摄像头运动参数估计方法转让专利

申请号 : CN201210206007.X

文献号 : CN102737387B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 孙美君王语斌江健民王征

申请人 : 天津大学

摘要 :

本发明属于计算机视频分析领域,涉及一种基于SVM的摄像头运动参数估计方法:获取摄像头运动参数估计的训练数据真实值,得到支持向量机训练所需要的标定值;对于mpeg格式视频,选取画面组里的P帧作为处理对象,从中选择采用帧间编码的宏块中存储的运动向量不为零的宏块作为宏块级的处理数据,从而得到支持向量机的训练数据;设定好支持向量机的各种参数,对输入的训练数据进行多次迭代,得到训练好的支持向量机模型。对于在现实世界中拍摄的视频片段,首先获取到该视频片段的运动向量,将运动向量输入到已训练好支持向量机模型中,由支持向量机给出预测结果,实现运动参数估计。本发明能够在保证参数估计准确性的前提下提高估计效率。

权利要求 :

1.一种基于SVM的摄像头运动参数估计方法,包括下列步骤:

1)获取摄像头运动参数估计的训练数据真实值,得到支持向量机训练所需要的标定值;

2)对于mpeg格式视频,选取画面组里的P帧作为处理对象,从中选择采用帧间编码的宏块中存储的运动向量不为零的宏块作为宏块级的处理数据,从而得到支持向量机的训练数据;

3)将以上过程中得到的数据,转化成支持向量机可以识别的格式,设定好支持向量机的各种参数,其中核函数选择多项式,训练模型选择回归模式,对输入的训练数据进行多次迭代,得到训练好的支持向量机模型;

4)对于在现实世界中拍摄的视频片段,通过上述步骤2)中的筛选过程得到该视频片段的运动向量,将运动向量输入到已训练好支持向量机模型中,由支持向量机给出预测结果,实现对拍摄现实世界视频片段的摄像头的运动参数估计。

说明书 :

基于SVM的摄像头运动参数估计方法

所属技术领域

[0001] 本发明属于计算机视频分析领域,涉及一种摄像头运动参数估计方法。

背景技术

[0002] 近些年来,随着计算机技术的发展,大量的数字视频涌现。视频数据的分析越来越受到众人的关注。对于摄像机拍摄的视频数据,摄像机在拍摄过程中的运动参数,是视频数据本身的重要特征。该特征可以用于视频检索、视频分析、版权检测等领域。
[0003] 目前对于摄像头运动参数估计技术,普遍采用的是一种成型的数学模型,在此数学模型的基础之上,通过分析视频数据中的相关特征,利用数学推导(如最小二乘法等),对模型进行回归,从而确定视频不同帧(frame)之间摄像头的运动参数。但是,这模型的准确度就无法得到证实,这些提取出的模型在数学处理过程中许多地方都是采取了经验的方法,因此这些模型的适应性本身只得怀疑。另外,由于视频分析需要处理大量的数据,对于处理速度也有较高的要求,因此在处理过程中如何通过筛选信息,在保证参数估计准确性的前提下,提高估计的效率,也是一个需要重点考虑的问题。

发明内容

[0004] 本发明的目的是,克服现有技术的上述不足,提供一种能够在保证参数估计准确性的前提下提高估计效率的摄像头运动参数估计方法。本发明通过支持向量机(SVM)的强大的数学计算功能,对于压缩域的mpeg格式的视频数据,估计在拍摄该段视频数据时摄像头的运动参数,并且在保证结果准确的前提下,提高摄像头运动参数估计的速度。本发明的技术方案如下:
[0005] 一种基于SVM的摄像头运动参数估计方法,包括下列步骤:
[0006] 1)获取摄像头运动参数估计的训练数据真实值,得到支持向量机训练所需要的标定值;
[0007] 2)对于mpeg格式视频,选取画面组里的P帧作为处理对象,从中选择采用帧间编码的宏块中存储的运动向量不为零的宏块作为宏块级的处理数据,从而得到支持向量机的训练数据;
[0008] 3)将以上过程中得到的数据,转化成支持向量机可以识别的格式,设定好支持向量机的各种参数,其中核函数选择多项式,训练模型选择回归模式,对输入的训练数据进行多次迭代,得到训练好的支持向量机模型;
[0009] 4)对于在现实世界中拍摄的视频片段,通过上述步骤2)中的筛选过程得到该视频片段的运动向量,将运动向量输入到已训练好支持向量机模型中,由支持向量机给出预测结果,实现对现实世界视频片段的运动参数估计。
[0010] 本发明通过支持向量机得到的摄像头运动参数模型是可以重复利用的。因此,只需要一次训练就可以得到训练模型。此外,本发明中在压缩域中处理数据,并且对要处理的数据进行合理的筛选,大大缩减了所需处理的数据的规模,提高了运动参数估计的效率。

附图说明

[0011] 图1Mpeg视频格式结构如图1;
[0012] 图2本发明的程序流程图。

具体实施方式

[0013] 下面首先说明本发明的技术方案。
[0014] 1.获取摄像头运动参数估计的训练数据真实值,得到支持向量机训练所需要的标定值。
[0015] 利用支持向量机估计数学模型必须有尽可能准确的训练数据。具体到摄像头运动参数估计这个问题,需要得到尽可能准确的摄像头运动参数的真实值。在本发明中,主要通过两种方法来获取。
[0016] 1)3dmax软件可以建立3d的模型,并且可以人工的设定摄像头的运动参数,然后将整个摄像头运动过程中,背景和物体的图像录制成视频数据。而这些人工设定的运动参数可以通过文本的形式保存下来。利用编程语言稍微处理,便可以得到对应帧的摄像头的运动参数。
[0017] 2)在没有3dmax软件的情况下,也可以采用傅立叶梅林变换(Fourier-Merlin Transform)的方法,得到两张图片的全局坐标变化。这种获取方法,首先要将视频的每一帧保存成图像,然后输入给傅立叶梅林程序。傅立叶梅变换程序会给出两幅图片的全局坐标变换值。对于视频中相邻两帧的全局左边变换可以作为摄像头运动参数估计的测试数据真值。
[0018] 1.筛选所要处理的数据,并且最终得到支持向量机的训练数据
[0019] 数据的筛选环节关系到摄像头运动参数估计的准确性和估计效率的问题,是整个技术方案的重要组成部分。
[0020] 1)分析的视频是mpeg格式的视频
[0021] 视频分析选择的数据格式是mpeg格式。Mpeg格式是一个很成熟的压缩视频存储格式。目前mpeg格式的视频有了很广泛的应用。本发明对视频数据的分析和处理直接在压缩域中进行操作的,这样避免了视频解压缩过程中的开销,大大减少的需要处理的数据量。
[0022] 2)Mpeg格式视频的帧的选取
[0023] Mpeg格式中每一个GOP(Group of Pictures,画面组)都包含三种类型的帧,即I帧、B帧、P帧。其组成形式经常为如下形式:IBBPBBPBBP,
[0024] 其中I帧是完全帧内编码的,I帧可以独立解压缩,解压过程中不需要其他帧的数据信息。而P帧也称向前预测帧,其解压过程需要前一个锚帧(可能是I帧或者是P帧。P帧中的宏块可能是帧内编码,也可能是帧间编码。帧间编码的宏块根据自身宏块中的存储的运动向量和锚帧中的对应宏块,得到该宏块的解压后的位置。B帧也称双向预测,其预测过程中需要前后两个锚帧(可能是I帧,可能是P帧),其内部宏块的解压过程需要两个锚帧和宏块中保存的运动向量共同生成。本发明中仅仅选择了P帧作为处理的对象。因为I帧中的宏块全部是帧内编码,它与其下一阵之间的摄像头运动关系不大,而B帧的计算过程过于复杂。视频数据中,每秒可以有大约10帧P帧数据,这对估计摄像头运动参数已经足够了。
[0025] 3)每一帧中宏块的选取
[0026] 视频中每一帧被分成16*16的宏块,这些宏块分为帧内和帧间编码,对于帧间编码的宏块中存储了该宏块与锚帧对应宏块之间的运动向量。本发明选择帧间编码并且将其存储的运动向量不为零的宏块作为宏块级的处理数据。单个宏块的运动是是摄像头运动和物体运动共同作用的结果,但是大量宏块的共同运动趋势却可以反映出摄像头的运动参数。将满足条件的宏块中存储的运动向量x和y的值,通过程序写成支持向量机可以识别的格式。
[0027] 2.训练支持向量机模型
[0028] 将以上过程中得到的数据,转化成支持向量机可以识别的格式,设定好支持向量机的各种参数,其中核函数选择多项式,训练模型选择回归模式。由摄像头运动参数和满足条件的宏块的运动向量的之间的关系,选择多项式作为核函数的类型更加符合实际情况。对输入的训练数据进行多次迭代,得到训练好的模型。
[0029] 3.预测阶段
[0030] 对于在现实世界中拍摄的视频片段,通过上述2中的筛选过程得到运动向量,将运动向量输入到已训练好支持向量机模型中,支持向量机给出预测结果,实现现实世界视频片段的运动参数估计。
[0031] 本发明的核心是通过支持向量机得到摄像头运动参数的模型,因此对于训练数据的准确度要求较高。最佳的训练数据,应是准确的摄像头的运动参数,即摄像头运动参数的真值。该训练真值的获取可以通过仿真的形式(如3dmax),导出训练真值。在没有仿真数据的情况下,可以使用傅立叶梅林变换的方法获取相邻两帧的全局坐标变换,代替训练真值,但是考虑到其本身就是对摄像头运动参数的估计,最终结果的准确度可能降低。
[0032] 使用支持向量机训练摄像头运动参数模型时,通常是选用多项式形式核函数,这样的参数设置可以得到更为准确的模型。