运动估计方法、基于运动估计的多视编解码方法及装置的制作方法

文档序号:7644215阅读:229来源:国知局
专利名称:运动估计方法、基于运动估计的多视编解码方法及装置的制作方法
技术领域
本发明涉及视频图像编解码技术,特别涉及运动估计方法、基于运动估 计的多视编解码方法及装置。
背景技术
目前的视频编码标准如国际电信联盟(ITU , International Telecommunication Union)制定的H.261、 H.263、 H.263+、 H.264标准,以 及运动图像专家组(MPEG, Moving Picture Experts Group )制定的MPEG-1 、 MPEG-2、 MPEG-3、 MPEG-4等,都是建立在混合编码(Hybrid Coding)框 架之上的。所谓混合编码框架是一种混合时间空间的视频图像编码方法,编 码时,先进行帧内、帧间的预测,得到原始图像预测图像,以消除时间域的 相关性;然后根据原始图像预测图像与原始图像实际图像的差值,得到残差 图像,对残差图像采用离散余弦变换法或其它的变换法进行二维变换,以消 除空间域的相关性;最后对变换后的数据进行熵编码,以消除统计上的冗余 度,再将熵编码后的数据与解码所需的包括运动矢量在内的一些变量信息, 组成一个编码码流,供后续传输和存储用,从而达到压缩视频图像的目的。 相应地,在解码时,对接收到的编码码流按照熵解码、反变换以及预测补偿 等一系列解码过程重建出图像。这里, 一帧即为视频序列中的一个图像。由于在单个摄像机拍摄到的视频序列中,相邻图像之间存在着很强的相 关性;而在多视视频编码领域,采用多个摄像机对同一个场景进行拍摄时, 所拍摄到的多个视频序列的图像之间也存在较大的相关性,因此,采用预测 技术能够充分利用帧内以及桢间的空间、时间相关性,在消除相关性的基础 上减小码率,提高压缩码流与原始图像的数据量压缩比。现有技术中主要存在两种预测方法,下面分别予以介绍。第一种预测方法是利用同一个碎见频序列中相邻图像之间的时间相关性, 对当前图像进行运动估计。具体而言,已知参考帧在t时刻的运动矢量,利用二维(2D)直接模式预测当前帧在t-i时刻的运动矢量,其中,i表示参 考帧与当前帧的时间差值。为后续描述方便,将该方法称为单视编码运动估 计算法。在多视编码中,同一时刻相邻视之间存在很强的相关性,上述单视编码 运动估计算法没有很好地利用这种空间相关性,使得编码效率较低。第二种预测方法是在第 一种预测方法的基础上利用多视几何中各视间 的相关性,即利用参考视图像与当前视图像之间的视差图像,由参考视图像 预测当前^见图像。在单视或多视编码中,为了进行预测,通常将编码图像分 为三类,分别称为I帧,P帧和B帧。其中,I帧采用帧内编码方式,P帧采 用前向帧间预测方式,B帧采用双向帧间预测方式。下面以8个揭/f象机、且 每个摄像才几取连续9帧图像为一组的情况为例,说明现有视频联合工作组 (JVT)多视时空编码框架中多视编码方法的实施过程。图1为现有JVT中提出的多视时空编码框架示意图。参见图1, S0 S7 分别代表8个摄像机所拍摄到的视频序列;T代表时刻,各视在T0 T8时刻 所对应的图像即为各视频序列中的连续9帧,也称为一个视频段;图中箭头 表示箭头目的帧是由箭头源帧预测得到的。图l所示框架中,S0、 S2、 S4、 S6和S7视的编码先于其相邻视,该编码方法包括以下步骤(1 )对TO时刻和T8时刻SO视的I帧进行帧内编码,分别得到该两个 时刻的I帧;再以T0时刻SO视的I帧预测TO时刻S2视的P帧、T8时刻 SO视的I帧预测T8时刻S2视的P帧;以TO时刻S2视的P帧预测TO时刻 S4视的P帧、T8时刻S2视的P帧预测T8时刻S4视的P帧,同理得到S6 视和S7视在TO时刻和T8时刻的P帧;(2 )以TO时刻SO视的I帧和TO时刻S2视的P帧预测TO时刻SI视 的B帧、T8时刻SO视的I顿和T8时刻S2视的P帧预测T8时刻SI视的B帧;同理,得到S3和S5视TO时刻和T8时刻的B帧;(3)对于S0、 S2、 S4、 S6和S7碎见,采用如前所述的单视编码运动估 计算法,分别以各视TO时刻和T8时刻的P帧预测T4时刻的B帧,并以 TO时刻的帧和T4时刻的B帧预测T2时刻的B帧、以T4时刻的B帧和T8 时刻的帧预测T6时刻的B帧,再以TO时刻的帧和T2时刻的B帧预测Tl 时刻的B帧、以T2时刻的B帧和T4时刻的B帧预测T3时刻的B帧、以 T4时刻的B帧和T6时刻的B帧预测T5时刻的B帧、以T6时刻的B帧和 T8时刻的帧预测T7时刻的B帧 (4 )对于Sl、 S3和S5视,分别以各视TO时刻和T8时刻的B帧预测 T4时刻的B帧,并以TO时刻的B帧和T4时刻的B帧预测T2时刻的B帧、 以T4时刻的B帧和T8时刻的帧预测T6时刻的B帧,最后,对于各视中奇 数时刻所对应的帧,即b帧,采用本视中与该奇数时刻相邻的偶数时刻所对 应的帧、以及相邻视中该奇数时刻所对应的帧进行预测。从而完成这8个摄像机在T0 T8这段时间内视频段的编码。为后续描 述方便,将该方法称为传统多视编码运动估计算法。在该算法中,需要对各 视进行运动估计得到运动矢量,然后以所得到的运动矢量采用基于运动补偿 的帧间预测对当前視进行预测。该算法存在如下缺点 一方面,在计算运动 矢量时,虽然从整体上来看兼顾了多视视频的时间相关性和空间相关性,但 是,对于每一个待编码帧,要么只利用了时间相关性,要么只利用了空间相 关性,即对于任意 一个待编码帧都没有同时利用多视视频中各视之间的时 间、空间相关性,导致编码效率较低;另一方面,该算法需要将所有帧的运 动矢量置于编码码流中传输到解码端才能进行解码,这样,也导致编解码效 率较低。由上述技术方案可见,现有多视编码中,尚不存在能较好利用多视视频 中时间空间相关性的运动估计方法,使得采用该运动估计方法得到的运动矢 量的码流传输量较小,并得到较高的编码效率,相应地,现有多視解码算法 需要根据所有帧的运动矢量,才能进行正确的解码。发明内容有鉴于此,本发明实施例所公开的多视运动估计方法,提供了一种在保 证运动估计准确率的前提下,减少运动矢量传输量的运动估计方法。本发明实施例所公开的基于运动估计的多视编码方法,提供了一种减少 码流传输量的多视编码方法,在保证运动估计准确率的前提下提高了多视编 码的编码效率。本发明实施例所公开的基于运动估计的多视编码装置,提供了一种减少 码流传输量的多视编码装置,在保证运动估计准确率的前提下提高了多视编 码的编码效率。本发明实施例所公开的基于运动估计的多视解码方法,提供了 一种根据 部分帧的运动矢量进行多枧解码的方法,并保证了多视解码的准确率。本发明实施例所公开的基于运动估计的多视解码装置,提供了一种根椐 部分帧的运动矢量进行多视解码的装置,并保证了多视解码的准确率。本发明实施例所公开的另一种多视运动估计方法,提供了一种能够提高 运动估计准确率的多视运动估计方法。为达到上述目的,本发明实施例的技术方案具体是这样实现的 一种多视运动估计方法,该方法包括以下步骤 将视频序列中的帧分为直接估算帧和间接估算帧; 计算直接估算帧的运动矢量;根据相邻视摄像机的相对位置、相邻视间的视差图像和直接估算帧的运 动矢量计算间接估算帧的运动矢量。一种基于运动估计的多视编码方法,该方法包括以下步骤 将视频序列中的帧分为直接估算帧和间接估算帧; 计算直接估算帧的运动矢量;根据相邻视摄像机的相对位置、相邻视间的枧差图像和直接估算帧的运 动矢量计算间接估算帧的运动矢量;根据所得到的运动矢量,对各视的视频段做基于运动补偿的帧间预测, 得到各帧的预测图像,再由所述各帧的预测图像与各帧的实际图像得到各帧的残差图像;将所述各帧的残差图像、直接估算帧的运动矢量、相邻视摄像机的相对 位置信息和相邻视间的视差图像写入编码码流。一种基于运动估计的多视解码方法,该方法包括以下步骤 将视频序列中的帧分为直接估算帧和间接估算帧;解析接收到的编码码流,得到各帧的残差图像、直接估算帧的运动矢量、 相邻视摄像机的相对位置信息和相邻视间的视差图像;根据相邻视摄像机的相对位置、相邻视间的视差图像和直接估算桢的运 动矢量计算间接估算桢的运动矢量;根据所得到的直接估算帧的运动矢量和间接估算帧的运动矢量以及各 帧的残差图像,得到各帧的预测图像;由各帧的残差图像及其相对应的预测图像重建各帧的实际图像。一种多视运动估计方法,该方法包括以下步骤将视频序列中的帧分为直接估算帧和间接估算帧;计算各帧的运动矢量初算值;根据相邻视摄像机的相对位置、相邻视间的视差图像和直接估算帧的运动矢量计算间接估算帧的运动矢量参考值;根据计算所得到的每个间接估算帧的运动矢量初算值和运动矢量参考值计算间接估算帧的运动矢量。一种基于运动估计的多视编码装置,该装置包括编码端运动矢量计算 模块和帧间预测模块,所述编码端运动矢量计算模块,用于计算直接估算帧 的运动矢量,并根据相邻视摄像机的相对位置、相邻视间的视差图像和直接 估算帧的运动矢量计算间接估算桢的运动矢量,并将所述间接估算帧的运动矢量和直接估算帧的运动矢量发送给所述帧间预测模块;所述帧间预测模块,用于根据来自于所述编码端运动矢量计算模块的间接估算帧的运动矢量和直接估算帧的运动矢量对各帧做基于运动补偿的帧 间预测,得到各帧的残差图像。一种基于运动估计的多视解码装置,该装置包括解析模块、解码端运 动矢量计算模块和预测重建模块,所述解析模块,用于解析接收到的编码码 流,并将解析得到的直接估算帧的运动矢量、相邻视间的视差图像和相邻视 摄像机的相对位置信息发送给所述解码端运动矢量计算模块,将直接估算帧 的运动矢量和各帧的残差图像发送给所述预测重建模块;所述解码端运动矢量计算模块,用于根据相邻视摄像机的相对位置、相 邻视间的视差图像和直接估算帧的运动矢量计算间接估算帧的运动矢量,并 将所述间接估算帧的运动矢量发送给所述预测重建模块;所述预测重建模块,用于根据所述间接估算帧的运动矢量、直接估算帧 的运动矢量和各桢的残差图像重建各帧的实际图像。由上述技术方案可见,本发明实施例的技术方案根据多视编码中相邻视 之间图像的相似性,充分考虑多视时空框架下的摄像机位置和视间的视差图 像,由参考直接估算帧的运动矢量预测当前间接估算帧的运动矢量,如此, 可以在保证运动估计的准确性的前提下提高多视编码效率,并使得解码端可 以根据部分帧的运动矢量进行较为准确的多视解码。本发明实施例所提供的方案符合多视时空框架下的编解码顺序,并且通 过对间接估算帧运动矢量的估计,可以减少多#见时空编码框架中桢间视间的 冗余度。对冗余度的减少体现在在编码时利用现有多视码流中诸如相邻视 摄像机的相对位置、相邻视间的视差图像和某些已知帧(即本发明所述直接 估算帧)的运动矢量来计算某些未知特定帧(即本发明所述间接估算帧)的 运动矢量,从而无需将间接估算帧的运动矢量写入码流,减少了冗余度和码 流传输量;而在解码时根据相邻的直接估算帧的运动矢量可以计算出编码时 所采用的运动矢量,如此,有效地减少了多视编码中编码码流的比特数,从 而使得编码效率得以提高,解码准确率得到保证,存储和网络资源得以充分 利用。


图1为现有JVT中提出的多视时空编码框架示意图。图2本发明实施例一中多视运动估计方法的流程示意图。图3为本发明实施例一中直接估算帧与间接估算帧的运动矢量关系示意图。图4为本发明实施例二中基于运动估计的多^L编码方法的流程示意图。 图5为本发明实施例二中基于运动估计的多视编码装置的组成结构示意图。图6为本发明实施例三中基于运动估计的多视解码方法的流程示意图, 图7为本发明实施例三中基于运动估计的多视解码装置的组成结构示 意图。图8为本发明实施例四中多视运动估计方法的流程示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附困并举 实施例,对本发明作进一步详细说明。在多视视频编码领域,采用多个摄像机对同一个场景进行拍摄时,所拍 摄到的多个视频序列的图像之间存在较大的相关性,尤其是在较短时间内、 多个摄像机位置相隔较近时,多个摄像机所拍摄到的图像之间的相关性就更 强,有效利用这种相关性进行预测编码,可以降低对多个视频序列同时编码 所需要的码率,从而提高编码效率。本发明实施例所提供的多枧编码中的运动估计方案和基于运动估计的 多视解码方案均基于图1所示JVT多视时空编码框架,并且,对于该多视 时空编码框架中的不同帧,本发明实施例采取了不同的运动矢量估计方法。具体而言,由于图1所示S0、 S2、 S4、 S6和S7视的编解码先于其相 邻视,对于这些视中的所有帧,本发明实施例中均采取背景技术中的第二种 预测方法,即传统多视编码运动估计算法对其进行运动估计,得到其对应的运动矢量;对于S1、 S3和S5视中TO时刻和T8时刻的帧,也采用传统多 视编码运动估计算法计算其运动矢量;对于Sl、 S3和S5视中T1 T7时刻 的帧,由于其编解码均后于其相邻视,本发明利用相邻视的运动矢量、其与 相邻视的视差矢量以及其与相邻视的位置关系计算其对应的运动矢量。在下 面的描述中,将采用传统多视编码运动估计算法进行运动估计的帧称为直接 估算帧,如SO、 S2、 S4、 S6和S7视中的帧,以及S1、 S3和S5视中T0时 刻和T8时刻的帧;将利用相邻视的运动矢量及其与相邻视的位置关系进行 运动估计的帧称为间接估算帧,如S1、 S3和S5^L中T1 T7时刻的帧。由图1可知,每个间接估算帧在该帧所在时刻均存在两个相邻的直接估 算帧,在本发明的后续描述中,将当前待编码或待解码的间接估算帧称为当 前间接估算帧,将该间接估算帧的两个相邻直接估算帧称为参考直接估算 帧。下面通过四个实施例对本发明技术方案进行详细说明。在下面的实施例中,假设图1所示T4时刻Sl视为当前待编码或解码的 视,将S1视称为当前编码视或解码视,则T4时刻Sl视所对应的帧为当前 间接估算帧;T4时刻SO视和S2视为当前编码视或解码视的参考视,T4时 刻SO视和S2视所对应的帧为参考直接估算帧。由于在视频图像处理领域,帧相对于像素点或块来说是一个宏观的概 念,因此,本发明在进行具体的运动估计时,可以使用视差图像或深度图像 进行更为微观的、对应像素点或块的匹配,即利用与当前间接估算帧相邻的 直接估算帧中某个像素点或某个块的运动矢量来估算当前间接估算帧中对 应像素点或对应块的运动矢量。在本发明的后续描述中,对T4时刻Sl视的图像的编解码以块为单位进 行,块的大小为MxN,其中M的取值可以为16, 8, 4等,N的取值可以为 16, 8, 4等,将T4时刻Sl視闺像中块的个数记为R,编解码顺序从左至 右,由上至下。并且,假设T4时刻,SO视的第r (r=l,2,..R)块的运动矢量 为MO, S2视的第r (r=l,2,..R)块的运动矢量为M2; T4时刻,SO与Sl视的第r (r=l,2,..R)块的视差图像为D0, S2与Sl视的第r (r=l,2,..R)块的 视差图像为D2。 实施例一本实施例结合

本发明运动估计方法的具体实施方式
。图2为本发明实施例一多视运动估计方法的流程示意图。参见图2,该方法包括以下步骤步骤201:将^L频序列中的帧分为直接估算帧和间接估算帧 本步骤中,可以按照上述关于直接估算帧和间接估算帧的定义将视频序列中的帧分为直接估算帧和间接估算帧。 步骤202:计算直接估算帧的运动矢量。本步骤中,可以按照背景技术中所介绍的传统多视编码运动估计算法或者 现有技术中的其他运动估计算法对直接估算帧进行运动估计,得到其对应的运 动矢量。步骤203:根据相邻祸JH象机的相对位置、相邻视间的视差图像和直接估 算帧的运动矢量计算间接估算帧的运动矢量。本发明实施例中,视频序列由各视摄像机拍摄得到,且各视摄像机的光学 成像中心为同 一平面。假设当前间接估算帧的摄像机中心在世界坐标系中的坐 标为原点,两个参考直接估算帧的摄像机中心的坐标分别为(-xl,-yl)和(x2,y2), 摄像机中心坐标为(-xl,-yl)的参考直接估算帧的运动矢量为OT,F),摄像机中心 坐标为(x2,y2)的参考直接估算帧的运动矢量为(iT',f'),以S"表示当前间接估算 帧运动矢量的X轴分量,以f表示当前间接估算帧运动矢量的Y轴分量,则可 以按照如下关系计算当前间接估算帧的运动矢量<formula>formula see original document page 16</formula>至此,结束本实施例的多视运动估计方法,得到直接估算帧和间接估算帧 的运动矢量。由于在多视编码中,时间轴上的帧间图像相关性大于空间轴上的視间图 像相关性,而空间轴上视间的运动矢量相关性大于时间轴上的帧间运动矢量 相关性,因此,在本发明上述实施例中充分利用了各视之间的空间运动矢量 相关性和视间图像相关性,使用相邻视摄像机的相对位置、相邻视间的视差 图像和直接估算帧的运动矢量来计算间接估算帧的运动矢量,从而无需将间 接估算帧的运动矢量写入编码码流,减少了冗余度和运动矢量的传输量,并 且保证了运动估计的准确率。下面对上述步骤203中根据相邻视摄像机的相对位置和直接估算帧的 运动矢量计算间接估算桢的运动矢量的方法进行详细说明。由于在摄像机位 置固定的情况下,同一时刻、不同视之间对应像素的运动矢量只取决于以摄 像机为视点该象素在物体可见外表面上对应点的深度和摄像机之间的位置 关系。这里,以摄像机为视点物体可见外表面上点的深度即在世界坐标下该 点与摄像机中心的欧式距离。因此,如图2所示,在步骤203中用左右摄像 机作为参考,找到物体上所有点的共性 一 一只与摄像机位置有关而跟点的深 度值无关,最后计算同一时刻不同视中各图像之间的运动矢量。图3为本发明实施例一中直接估算帧与间接估算帧的运动矢量关系示 意图。参见图3, A、 B和C为多视中的任意三个摄像机的位置,假设A对 应于T4时刻Sl视中的当前间接估算帧,B和C分别对应于T4时刻SO视 和S2视中的两个参考直接估算帧。令摄像机A、 B、 C所对应的成像平面与 世界坐标系中的x-y平面重合,并且A摄像机的中心为世界坐标系的原点, B和C的坐标分别为(-xl,-yl)和(x2,y2)。在当前多视视频拍摄的情况下,各摄像机之间的间距都很小,所以可以 认为每个枧都是用等焦距的摄像机所拍摄的。P(x,y,z)为3个摄像机所拍摄 的同 一个空间物体。x-y平面为成像面,(u,v)表示摄像机A所拍摄的物体P 中的某个像素点I, (u,,v,)表示摄像机B所拍摄的物体P中与像素点I对应的像素点,记为r, (u",v,,)表示摄像机c所拍摄的物体p中与像素点i对应 的像素点,记为r,, (i7W)表示B摄像机所拍摄像素点r的运动矢量,(iT,v") 表示c摄像机所拍摄像素点r的运动矢量。(g,"表示摄像机a所拍摄像素 点i的运动矢量。基于上述各个视的摄像机都是等焦距的假设,可以认为三个摄像机的内参矩阵K是一样的,即为0y0 (2) 00 1(2)式中,Sx, 3y分别为摄^L在成像平面中x, y轴的焦距;s为摄像机的成像失真度,xo, y。为光学中心与成像平面原点的位移。因此,由摄像机A的中心坐标(0, 0, 0),可得到A的投影矩阵PO为P0 = K[I|0] (3)由摄像机B的中心坐标(-xl, -yl, 0),可得到B的投影矩阵P1为K =1 0 0 -xl P阔0 1 0 -y2 0 0 1 0(4)同理,由摄像机C的中心坐标(x2, y2, 0),可得到C的投影矩阵P2为:(5)P2 = X1 0 0 ;c2 0 1 0 j;2 0 0 10P(x,y,z)在摄像机A和B的成像分别为(失真s可视为0 ):<formula>formula see original document page 18</formula><formula>formula see original document page 19</formula>由(6)式和(7)式可以计算得出A视和B视的运动矢量:<formula>formula see original document page 19</formula>同理可以得到C视的运动矢量:<formula>formula see original document page 19</formula>由公式(8-10),得到A视的运动矢量:<formula>formula see original document page 19</formula>按照上述运动估计方法得到的运动矢量可以应用于多视编码和多视解 码中,以减少码流的传输量,并在保证运动估计准确率的前提下提高多視编 码的编码效率。下面通过两个实施例对本发明基于运动估计的多枧编解码方 法及装置进行说明。实施例二本实施例结合

本发明基于运动估计的多视编码方法的具体实施方式
。图4为本发明实施例二中基于运动估计的多视编码方法的流程示意图。参见图4,该方法包括以下步骤步骤401:将视频序列中的帧分为直接估算帧和间接估算帧。 步骤402:计算直接估算帧的运动矢量。本步骤中,可以按照背景技术中所介绍的传统多视编码运动估计算法或 者现有技术中的其他运动估计算法对直接估算帧进行运动估计,得到其对应 的运动矢量。步骤403:根据相邻视摄像机的相对位置、相邻视间的视差图像和直接 估算帧的运动矢量计算间接估算帧的运动矢量。本步骤中,计算间接估算帧的方法与实施例一步骤203所述方法相同, 请参照上述方法进行,在此不再赘述。步骤404:根据所得到的运动矢量,对各视的视频段做基于运动补偿的 帧间预测,得到各帧的预测图像,再由所述各帧的预测图像与各帧的实际图 像得到各帧的残差图像。本步骤中,得到各帧的运动矢量之后,可以按照与现有技术相同的方式 对各视的视频段做基于运动补偿的帧间预测,得到各帧的预测图像,再由所 述各帧的预测图像与各帧的实际图像得到各帧的残差图像,在此不再赘述。步骤405:将所述各帧的残差图像、直接估算帧的运动矢量、相邻视摄 像机的相对位置和相邻视间的视差图像写入编码码流。至此,结束本实施例基于运动估计的多视编码方法。在得到本实施例步 骤405所述的各帧的残差图像、直接估算帧的运动矢量、相邻视撮像机的相 对位置和相邻視间的视差图像之后,可以将其写入编码码流,或者将其作为 下一步视频编码处理的输入数据,继续进行下一步的编码处理。关于如何采 用运动估计结果进行下一步的编码处理请参见现有技术的有关方法进行,在 此不再赘述。下面介绍与图4所示方法相对应的基于运动估计的多视编码装置。图5为本发明实施例二中基于运动估计的多视编码装置的组成结构示意图。参见图5,该装置包括编码端运动矢量计算模块501和帧间预测模块502。 其中,编码端运动矢量计算模块501,用于计算直接估算帧的运动矢量,并根据相邻视摄像机的相对位置、相邻视间的^L差图像和直接估算帧的运动矢量计算间接估算帧的运动矢量,并将所述间接估算帧的运动矢量和直接估算帧的运动矢量发送给帧间预测模块502;帧间预测模块502,用于根据来自于编码端运动矢量计算模块501的间接估算帧的运动矢量和直接估算帧的运动矢量对各帧做基于运动补偿的帧间预测,得到各帧的残差图像。其中,编码端运动矢量计算;f莫块501可以进一步包括X轴分量计算子模块和Y轴分量计算子^l块;X轴分量计算子模块,用于根据^i^计算当前间接估算帧运动矢量的X轴分量;Y轴分量计算子模块,用于根据^2",计算当前间接估算帧运动矢量 的Y轴分量;其中,(iT,。表示摄像机中心坐标为(-xl,-yl)的参考直接估算帧的运动 矢量,(JT,r)表示摄像机中心坐标为(x:2,y2)的参考直接估算帧的运动矢量。由上述实施例可见,本发明实施例二充分利用了各视之间的空间运动矢 量相关性和视间图像相关性来计算当前视的运动矢量,然后再将计算得到的 运动矢量运用于现有编码算法中,进行基于运动补偿的帧间预测,从而减少 了编码码流的传输量,并在保证运动估计准确率的前提下实现了编码效率的提高。实施例三本实施例结合附團说明本发明基于运动估计的多视解码方法及装置的具体实施方式
。本实施例中,与实施例一相同,将S1视对应于图3所示摄像机A所拍 摄的视频序列,S0視对应于图3所示摄像机B所拍摄的视频序列,S2视对 应于图3所示摄像机C所拍摄的视频序列,因此,图3所述摄像机之间的相 对位置关系以及各摄像机的坐标同样适用于本实施例。图6为本发明实施例三中基于运动估计的多视解码方法的流程示意图。 参见图6,该方法包括以下步骤步骤601:将视频序列中的帧分为直接估算帧和间接估算帧。步骤602:解析接收到的编码码流,得到各帧的残差图像、直接估算帧 的运动矢量、相邻视摄像机的相对位置信息和相邻视间的视差图像。由前述可知,块由多个像素点组成,块的运动矢量与像素点的运动矢量 是——对应的,可以根据一定的规律进行相互转换,因此,所述解析得到的 直接估算帧的运动矢量可以是像素点的运动矢量,也可以是块的运动矢量。步骤603:根据相邻视摄像机的相对位置、相邻视间的视差图像和直接 估算帧的运动矢量计算间接估算帧的运动矢量。本步骤中,首先可以根据步骤601解析得到的相邻视摄像机的相对位置 计算SO视和S2视相对于Sl视的位置关系,即S0视对应摄像机的坐标为 C-x 1 ,-y 1) , S2视对应摄像机的坐标为(x2,y2);然后根据S0视的块运动矢量M0和S2视的块运动矢量M2,以及Sl 视与SO视之间的视差图像和Sl视与S2视之间的视差图像得出与Sl视中 像素点I所对应的像素点的运动矢量,即(W)和(iT,f');最后,根据两个参考直接估算帧的运动矢量以及摄像机之间的相对位置 信息,对当前间接估算帧的运动矢量^,"进行计算,得到<formula>formula see original document page 22</formula>步骤604:根据所得到的直接估算帧的运动矢量和间接估算帧的运动矢量 以及各帧的残差图像,得到各帧的预测图像。步骤605:由各帧的残差图像及其相对应的预测图像重建各帧的实际图像。至此,结束本实施例基于运动估计的多视解码方法。在得到当前间接估 算帧的运动矢量之后,可以按照现有技术的有关方法由残差图像、与参考视 之间的视差图像重建相应的实际图像,在此不再赘述。下面介绍与图6所示方法相对应的基于运动估计的多视解码装置。图7 为本发明实施例三中基于运动估计的多视解码装置的组成结构示意图。参见 图7,该装置包括解析模块701、解码端运动矢量计算模块702和预测重 建模块703。其中,解析模块701,用于解析接收到的编码码流,并将解析得到的直 接估算帧的运动矢量、相邻视间的视差图像和相邻视摄像机的相对位置信息 发送给解码端运动矢量计算模块702,将直接估算帧的运动矢量和各帧的残 差图像发送给预测重建模块703;解码端运动矢量计算模块702,用于根据相邻视摄像机的相对位置、相 邻视间的视差图像和直接估算帧的运动矢量计算间接估算帧的运动矢量,并 将间接估算帧的运动矢量发送给预测重建模块703;预测重建模块703,用于根据间接估算帧的运动矢量、直接估算帧的运 动矢量和各帧的残差图像重建各帧的实际图像。其中,解码端运动矢量计算模块702可以进一步包括X轴分量计算子模 块和Y轴分量计算子^^莫块;X轴分量计算子模块,用于根据^^^计算当前间接估算帧运动矢量:d + ;c2的X轴分量;Y轴分量计算子模块,用于根据O2"""计算当前间接估算帧运动矢量的Y轴分量;其中,(iT,i7')表示摄像机中心坐标为(-xl,-yl)的参考直接估算帧的运动 矢量,(iT,i7")表示摄像机中心坐标为(x2^2)的参考直接估算帧的运动矢量。 由上述实施例可见,本发明技术方案利用各摄像机之间的相对位置信息、相 邻直接估算帧的运动矢量来计算当前间接估算帧的运动矢量,并结合相邻直 接估算帧与当前间接估算帧的视差图像来预测、重建当前间接估算帧的实际 图像,使得解码端根据直接估算帧的运动矢量即可计算出间接估算帧的运动 矢量,在减少码流传输量的同时,保证了多视解码的准确率。以上通过两个实施例对相邻摄像机之间的位置非常靠近的多视拍摄情 况下,本发明编码、解码方案进行了详细说明。在这种情况下,相邻视的运 动矢量差异很小,可以通过上述方案中的视间运动矢量计算方法来计算当前 视的运动矢量。然而在各摄像机之间间隔比较大的应用场合下,视差图像就 会因为遮挡等关系变得不完整。下面通过一个实施例说明本发明为各摄像机 之间间隔比较大的应用场合所提供的多视运动估计解决方案。实施例四对于各摄像机之间间隔比较大的情况,本实施例采取仅在编码端用视间 运动矢量计算方法来优化各视的运动矢量。图8为本发明实施例四中多视运 动估计方法的流程示意图。参见图8,该方法包括以下步骤步骤801:将视频序列中的帧分为直接估算帧和间接估算帧。 步骤802:计算各帧的运动矢量,得到运动矢量初算值。 本步骤中,可以采取背景技术中介绍的单视编码算法、传统多视编码运 动估计算法或其他编码算法计算各视中各帧的运动矢量,将所得到的运动矢 量称为运动矢量初算值,记为(So,^)。步骤803:根据相邻視摄像机的相对位置、相邻视间的视差图像和直接 估算帧的运动矢量计算间接估算帧的运动矢量参考值。本步骤中,按照与实施例一步骤203相同的方法计算间接估算帧运动矢24量,得到如下所示当前间接估算帧的运动矢量问,巧)<formula>formula see original document page 25</formula>(11) 将所得到的运动矢量问,巧)称为运动矢量参考值。 步骤804:根据计算所得到的每个间接估算帧的运动矢量初算值和运动 矢量参考值计算间接估算帧的运动矢量。本步骤中,可以运用如下公式对间接估算帧的运动矢量进行优化计算<formula>formula see original document page 25</formula> (12)式(12)中,Y为优化系数,取值范围为0到l之间,且包括O和1。至此,结束本发明实施例四的多视运动估计方法。实施例四所述多视运动估计方法与传统单视编码中基于运动补偿的帧 间预测方法相比,加入了使用运动矢量初算值和运动矢量参考值进行运动矢 量优化计算的操作,该操作能够提升运动矢量估算的准确性,从而能够进行 更为准确的预测。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范 围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均 应包含在本发明的保护范围之内。
权利要求
1. 一种多视运动估计方法,其特征在于,该方法包括以下步骤将视频序列中的帧分为直接估算帧和间接估算帧;计算直接估算帧的运动矢量;根据相邻视摄像机的相对位置、相邻视间的视差图像和直接估算帧的运动矢量计算间接估算帧的运动矢量。
2、 根据权利要求l所述的方法,其特征在于,所述视频序列由各视摄像机 拍摄得到,所述各4!U聂像机的光学成像中心为同一平面。
3、 根据权利要求2所述的方法,其特征在于,设当前间接估算帧的摄像机 中心在世界坐标系中的坐标为原点,与所述当前间接估算帧相邻的两个参考直 接估算帧的摄像机中心的坐标分别为(-xl,-yl)和(x2,y2),所述摄像机中心坐标为 (-xl,-yl)的参考直接估算帧的运动矢量为0T,7'),所述摄像机中心坐标为(x2,y2) 的参考直接估算帧的运动矢量为(iT,i7"),则所述计算间接估算帧的运动矢量 为..当前间接估算桢运动矢量的Z轴分量=^2"""当前间接估算帧运动矢量的y轴分量=v'力v,1
4、 根据权利要求1至3任一项所述的方法,其特征在于,所述运动矢量为 各帧中对应像素点的运动矢量;所述各帧中对应像素点才,所迷相邻视间的视差图像确定。
5、 根据权利要求1至3任一项所述的方法,其特征在于,所述运动矢量为 各帧中对应块的运动矢量;所述各帧中对应块才艮据所迷相邻视间的视差困像确定。
6、 一种基于运动估计的多视编码方法,其特征在于,该方法包括以下步骤: 将视频序列中的帧分为直接估算帧和间接估算帧;计算直接估算帧的运动矢量;根据相邻视摄像机的相对位置、相邻视间的视差图像和直接估算帧的运动矢量计算间接估算帧的运动矢量;根据所得到的运动矢量,对各視的视频段做基于运动补偿的帧间预测,得 到各帧的预测图像,再由所述各帧的预测图像与各帧的实际图像得到各帧的残 差图像;将所述各帧的残差图像、直接估算帧的运动矢量、相邻视摄^J机的相对位 置信息和相邻视间的视差图像写入编码码流。
7、 根据权利要求6所述的方法,其特征在于,所述视频序列由各4见摄像机 拍摄得到,所述各^!4聂像机的光学成像中心为同一平面。
8、 根据权利要求7所述的方法,其特征在于,设当前间接估算帧的摄像机 中心在世界坐标系中的坐标为原点,与所述当前间接估算帧相邻的两个参考直 接估算帧的摄像机中心的坐标分别为(-xl,-yl)和(x2,y2),所述摄像机中心坐标为 (-xl,-yl)的参考直接估算帧的运动矢量为(iT,i7'),所述摄像机中心坐标为(x2,y2) 的参考直接估算帧的运动矢量为0T,i7"),则所述计算间接估算帧的运动矢量 为当前间接估算帧运动矢量的义轴分量=^2 +『"当前间接估算帧运动矢量的r轴分量二^i^ 、 yi+W
9、 根据权利要求6至8任一项所述的方法,其特征在于,所述运动矢量为 各帧中对应像素点的运动矢量;所述各帧中对应像素点根据所述相邻视间的视差图像确定。
10、 根据权利要求6至8任一项所述的方法,其特征在于,所述运动矢量 为各帧中对应块的运动矢量;所述各帧中对应块根据所述相邻视间的视差图像确定。
11、 一种基于运动估计的多视解码方法,其特征在于,该方法包括以下步骤将视频序列中的帧分为直接估算帧和间接估算帧;解析接收到的编码码流,得到各帧的残差图像、直接估算帧的运动矢量、 相邻视摄像机的相对位置信息和相邻视间的视差图像;根据相邻视摄像机的相对位置、相邻视间的视差图像和直接估算帧的运动 矢量计算间接估算帧的运动矢量;根据所得到的直接估算帧的运动矢量和间接估算帧的运动矢量以及各帧的 残差图像,得到各帧的预测图像;由各帧的残差图《象及其相对应的预测图像重建各帧的实际图像。
12、 根据权利要求ll所迷的方法,其特征在于,所迷视频序列由各视摄像 机拍摄得到,各视摄像机的光学成像中心为同一平面。
13、 根据权利要求12所述的方法,其特征在于,设当前间接估算帧的摄像 机中心在世界坐标系中的坐标为原点,与所述当前间接估算帧相邻的两个参考 直接估算帧摄#^几中心的坐标分别为(-xl,-yl)和(x2,y2),所述摄像机中心坐标为 (-xl,-yl)的参考直接估算帧的运动矢量为OT,F),所述摄像机中心坐标为(x2,y2) 的参考直接估算帧的运动矢量为(i7",i7"),则所述计算间接估算帧的运动矢量 为<formula>formula see original document page 4</formula>
14、 根据权利要求11至13任一项所述的方法,其特征在于,所述运动矢 量为各帧中对应像素点的运动矢量;所述各帧中对应像素点根椐所述相邻视间的视差图像确定。
15、 根椐权利要求11至13任一项所述的方法,其特征在于,所述运动矢量为各帧中对应块的运动矢量;所述各帧中对应块根据所述相邻视间的视差图像确定。
16、 一种多视运动估计方法,其特征在于,该方法包括以下步骤 将视频序列中的帧分为直接估算帧和间接估算帧; 计算各帧的运动矢量初算值;根据相邻视摄像机的相对位置、相邻视间的视差图像和直接估算帧的运动 矢量计算间接估算帧的运动矢量参考值;根据计算所得到的每个间接估算帧的运动矢量初算值和运动矢量参考值计 算间接估算帧的运动矢量。
17、 根据权利要求16所述的方法,其特征在于,所述视频序列由各视摄像 机拍摄得到,所述各视摄^^几的光学成像中心为同一平面。
18、 根据权利要求17所述的方法,其特征在于,设当前间接估算帧的摄像 机中心在世界坐标系中的坐标为原点,与所述当前间接估算桢相邻的两个参考 直接估算帧的摄像机中心的坐标分别为(-xl,-y 1 )和(x2,y2),所述摄像机中心坐标为(-xl,-yl)的参考直接估算帧的运动矢量为(iT,7'),所述摄像机中心坐标为 (x2,y2)的参考直接估算帧的运动矢量为(iT',7"),则所述计算间接估算帧的运动矢量参考值为当前间接估算帧运动矢量参考值的X轴分量=^w'"xl十当前间接估算帧运动矢量参考值的r轴分量=
19、 4瞎权利要求16至18任一项所述的方法,其特征在于,设置优化系 数Y,所述计算间接估算帧的运动矢量为将优化系数Y与间接估算帧运动矢量初算值之积和1减优化系数Y之差与 间接估算帧运动矢量参考值之积相加,得到所述计算间接估算帧的运动矢量。
20、 4艮椐权利要求16至18任一项所述的方法,其特征在于,所述运动矢量为各帧中对应像素点的运动矢量;所述各帧中对应像素点根据所述相邻视间的视差图像确定。
21、 根椐权利要求16至18任一项所述的方法,其特征在于,所述运动矢 量为各帧中对应块的运动矢量;所述各帧中对应块根据所述相邻视间的视差图像确定。
22、 一种基于运动估计的多视编码装置,其特征在于,该装置包括编码 端运动矢量计算模块和帧间预测模块;所述编码端运动矢量计算模块,用于计算直接估算帧的运动矢量,并根据 相邻视摄像机的相对位置、相邻视间的视差图像和直接估算帧的运动矢量计算 间接估算帧的运动矢量,并将所述间接估算帧的运动矢量和直接估算帧的运动 矢量发送给所述帧间预测模块;所述帧间预测模块,用于根据来自于所述编码端运动矢量计算模块的间接 估算帧的运动矢量和直接估算帧的运动矢量对各帧做基于运动补偿的帧间预 测,得到各帧的残差图像。
23、 根据权利要求22所迷的装置,其特征在于,所述编码端运动矢量计算 模块进一步包括X轴分量计算子模块和Y轴分量计算子模块;所述x轴分量计算子模块,用于根据+^xl计算当前间接估算帧运动矢量的X轴分量;所述Y轴分量计算子模块,用于根据^i^计算当前间接估算帧运动 矢量的Y轴分量;其中,(iT,"表示摄像机中心坐标为(-xl,-yl)的参考直接估算帧的运动矢 量,(iT',i7")表示摄像机中心坐标为(x2,y2)的参考直接估算帧的运动矢量。
24、 一种基于运动估计的多視解码装置,其特征在于,该装置包括解析 模块、解码端运动矢量计算模块和预测重建模块;所述解析模块,用于解析接收到的编码码流,并将解析得到的直接估算帧的运动矢量、相邻视间的视差图像和相邻视摄像机的相对位置信息发送给所述 解码端运动矢量计算冲莫块,将直接估算帧的运动矢量和各帧的残差图像发送给所述预测重建纟莫块;所述解码端运动矢量计算模块,用于根据相邻视摄像机的相对位置、相邻 视间的视差图像和直接估算帧的运动矢量计算间接估算帧的运动矢量,并将所 述间接估算帧的运动矢量发送给所述预测重建模块;所述预测重建模块,用于根据所述间接估算帧的运动矢量、直接估算帧的 运动矢量和各帧的残差图像重建各帧的实际图像。
25、根据权利要求24所述的装置,其特征在于,所述解码端运动矢量计算 模块进一步包括X轴分量计算子模块和Y轴分量计算子模块;所述X轴分量计算子模块,用于根据h2"""计算当前间接估算帧运动 矢量的X轴分量;所述Y轴分量计算子模块,用于根据^^^计算当前间接估算帧运动 矢量的Y轴分量;其中,(P,"表示摄像机中心坐标为(-xl,-yl)的参考直接估算帧的运动矢 量,(i7"J")表示摄像机中心坐标为(x2,y2)的参考直接估算帧的运动矢量。
全文摘要
本发明实施例中公开了一种多视运动估计方法。该方法包括以下步骤将视频序列中的帧分为直接估算帧和间接估算帧;计算直接估算帧的运动矢量;根据相邻视摄像机的相对位置、相邻视间的视差图像和直接估算帧的运动矢量计算间接估算帧的运动矢量。本发明实施例中还公开了另一种运动估计方法,以及基于上述运动估计方法进行多视编码的方法和装置、进行多视解码方法和装置。应用本发明能够保证运动估计准确率的前提下,充分利用多视视频中相邻视之间的时间相关性和空间相关性,减少码流传输量,提高多视编码的效率。
文档编号H04N7/50GK101242530SQ20071000757
公开日2008年8月13日 申请日期2007年2月8日 优先权日2007年2月8日
发明者史舒娟, 海 陈 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1