一种264视频以任意比例降低分辨率的像素域转码的方法

文档序号:7892106阅读:178来源:国知局
专利名称:一种264视频以任意比例降低分辨率的像素域转码的方法
技术领域
本发明属于计算机多媒体技术领域,特别涉及视频以任意比例降低分辨率转码的方法。
技术背景数字视频是指以数字形式记录的视频信息,英文对应的词组是Digital video。数字 视频的原始数据量非常大,给传输和存储都带来了很大的不便,因此实际应用中往往需要 进行编码压縮。视频编码采用运动估计的方法来实现数据的压縮。视频数据是以固定的时间间隔连续 采集的图像序列,由于采集速度快,相邻图像在内容上的相关性很强。运动估计就是利用 图像间的这种相关性,消除其中的冗余信息,实现数据的压缩。运动估计方法的大体过程 如下首先将当前帧(编码过程中准备编码的图像)划分为固定大小的块(16像素xl6像 素);然后,对于每个块,在参考帧中(编码选用的参考图像)进行搜索和比较,找到一 个内容相似度最高的"匹配块",由此得到编码当前块的运动向量(当前块与匹配块之间 的相对位移);接着,将两个块相减得到残,拳,并对残差矩阵进行DCT变换;最后对运动 向量和DCT变换系数进行熵编码得到压縮4[据。但是由于终端设备的处理和显示能力不同,传输视频信号的网络状况的千差万别,以 及各大组织及公司针对不同的用途和应用场合制定的一系列不同的视频编码标准,造成了 视频数据的格式及参数多样化,给媒体资源的传播和共享带来了很大的困难。视频转码技 术就是为了解决以上问题,以更好更有效地实现视频数据间的转换而提出来的。视频转码(VideoTranscoding)技术,就是要将原来的某种压縮视频流,转换为另一种不 同的压縮视频流,以改变其码率、分辨率等参数,或完全改变其语法格式。视频转码方法 主要可以分为两大类像素域转码和变换域转码。变换域转码通过对DCT系数进行运动补 偿,实现码流格式的转换。这种方法的优点是计算量小,转码速度快,缺点是该方法对运 动向量,编码速率等有一定的要求,给实际应用带来了一定的限制。像素域转码则是将码 流解码后通过DCT反变换到像素域后进行处理,比较灵活,便于实现,但转码的计算量较 大。H.264/AVC是ITU-T视频编码专家组(VCEG)和ISO/IEC运动图像专家组(MPEG)联合 制定的最新国际视频编码标准,其主要目标是提高压縮性能,并提供与网络友好 (network-friendly)的视频表示。通过对之前各视频编码标准多方面的改进,H.264能够 满足各种码率下的不同需求。例如,它既可用于移动电话等较低码率下的视频传输,也可 用在中码率的视频会议等场合,同时也适于数字电视等较高码率的应用。H.264在给出感 赍上相当的视频质量的同时,码率只是MPEG-2码率的1/3到1/2;与现存其他视频标准相 比较,H.264可期望提高50%以上的编码效率。与之前的MPEG-2, MPEG-4等编码标准相比,R264增加了运动补偿的可变尺寸块技术,在运动补偿中,R264支持更加灵活的块 尺寸选择机制,比其他视频标准有更多的块形状和尺寸。每一个P型(单向运动预测)或 B型(双向运动预测)的块,均对应一个特定的分区情况,被分为若干个8x8、 16x8、 8x16 或16x16的块;如果选择了 8x8的块,将有可能进一步被分割为8x4、 4x8或4x4的块。 此技术在增加编码效率的同时也大大的增加了编码的复杂度和计算量。目前的针对降低分辨率的转码方法是将码流解码到像素域,每一帧图像数据下采样到 指定的分辨率后,对其中的每个块进行运动估计,估计运动向量为该块对应到原始图像的 区域内所有块的运动向量的加权平均值或取中值,在对估计运动向量细化后,完成降低分 辨率后图像的编码。这种方法适合MPEG-2、 MPEG-4等编码标准的降低分辨率的转码应 用,但由于11.264具有可变尺寸块的特点,在编码和转码时候需要进行最佳模式选择,因 此传统的这种降低分辨率的转码方法并不适合R264标准内的降低分辨率的转码。发明内容本发明的目的是为克服已有技术的不足之处,提出了一种新的264视频以任意比例降 低分辨率转码的方法,该方法充分利用了 264编码中的运动模式和运动向量信息,结合264 视频编码的可变尺寸块的特点,有效的减少了转码过程中模式选择时的大量计算,提高了 转码效率。本发明提出的一种H. 264以任意比例降低空间分辨率的像素域转码方法,其特征在于, 包括以下步骤1) 对264格式的编码码流一帧图像进行解码,并记录解码后该帧图像中原始块的大小和对应的运动向量的大小;2) 按照水平方向M,:A^,竖直方向M,A^的比例将一帧原始图像映射到一帧新图像 中,新帧图像的每个像素点的取值为其映射在原始图像中位置周围四个像素点中距其最近 的像素点的值;3) 对于新帧图像的每个16x16块Affl^ ,划分为16个4x4子块~4;(4 ;对于该每个4x4子块6;Vk4,计算其在原始图像中的映射区域,确定该区域中包含的面积最大的子块&;记录下该4x4子块^^来自、,并将&。对应的运动向量MP^按照水平方向以M,:iV,,竖 直方向以iW;:A^的比例缩减,记做~4;(4的运动估计向量M^ ;4) 对于每个16x16宏块M^ ,划分为4个8x8子块~8;[8;对于该每个~&8分别处 理如下如果每个~8,8中的4个4x4子块~4,4来自于同一个子块6。,则令该子块^w的运 动模式为8x8,运动估计向量为M^,并记录该子块~8;18来自于6 ;如果其中的3个4)(4子块~4,4来自于同一个子块6。,对应的运动向量为7W;;而剩 余的一个子块~4;(4来自于其他子块6。',对应的运动向量为M^',计算M^和M7/之间 的距离《_式子中,a, ;c2, ", ^分别为两个运动向量的横、纵坐标值;如果《小于Z),则令该子块Zv^8的运动模式为8x8,运动估计向量为所述3个相同的 子块对应的MJ^,并记录该子块~8,8来自于^;否则,令该子块^^的运动模式为4x4, 运动估计向量为各个4x4子块~4,4的M^ ,并记录该子块6ww来自于NUL;如果其中的2个4x4子块6^4;£4来自于同一个子块^ ,而另2个子块来自于另一 个子块6。',计算两个来自于子块&和6。'的子块对应的运动向量之间的距离《式子中,X,, x2, 乂, ^分别为两个运动向量的横、纵坐标值; 如果c/,小于D,则更新该子块6^^的运动模式为8x8,.运动估计向量为2个MP;的 平均值,并记录该子块^^来自于而L;否则,更新该子块~8,8的运动模式为8"或者 4x8,运动估计向量分别为对应的M1^,并记录该子块^^来自于NUL: i)为常数;5) 对于每个16x16块v^ffi,,,划分为4个8x8子块~&8,分别处理如下51) 如果四个8x8子块^^均是8x8模式,且来自于同一个原始块 ,则令该16xl6 块i^5^的运动模式为16x16,运动估计向量为子块^^的运动向量估计M^;52) 如果四个8x8子块^^均是8x8模式,但不来自于同一个原始块,则将16x16, 16x8, 8x16, 8x8模式加入到备选模式中,对应的运动矢量估计MJ^,为緣瞎=^~~^——式子中,M^为该运动模式中第/个子块的运动向量,vv,为加权系数,加权系数为第/个 块的面积,w代表所包含子块的总数;按264标准对该运动向量进行细化后,从上述备选模式中选择出最佳模式;53) 如果都不符合步骤51)、 52)中的条件,则按照4个8x8子块的运动模式进行处理。6) 根据该16x16块最终选择的运动模式,按264标准对该块的各个运动向量进行细 化后,完成该块的264转码;转步骤l)继续解码下一帧并进行转码处理。本发明的特点及效果本发明提出了一种新的H. 264以任意比例降低空间分辨率的像素域转码方法。本发明充 分利用了 264编码中的运动模式和运动向量信息,结合了 264视频编码的可变尺寸块的特点, 有效的减少了转码过程中模式选择带来的大量计算,提高了转码效率。
具体实施方式
本发明提出的一种264视频任意比例降低分辨率转码的方法结合实施例详细说明如下本发明方法包括以下步骤1)对264格式的编码码流一帧图像进行解码,并记录解码后该帧图像中原始块的大小和对应的运动向量的大小;2) 按照水平方向M^乂,竖直方向My:A^的比例将一帧原始图像映射到一帧新图像 中(其中水平和竖直方向的比例根据实际的需要任意设定,但由于编码标准的要求,降低 分辨率之后视频的水平和竖直方向的大小必须为16的正整数倍, 一般选择为实际播放设 备的屏幕的分辨率),新帧图像的每个像素点的取值为其映射在原始图像中位置周围四小 像素点中距其最近的像素点的值3) 对于新帧图像的每个16x16块M5w ,划分为16个4x4子块~4;[4;对于该每个4x4 子块~4",计算其在原始图像中的映射区域,确定该区域中包含的面积最大的子块6。; 记录下该4x4子块^V^来自&,并将6。对应的运动向量MF。按照水平方向以vl^:A^,竖 直方向以A^:A^的比例缩减,记做~4,4的运动估计向量M^ ;4) 对于每个16x16宏块MS^ ,划分为4个8x8子块~8;[8;对于该每个^w分别处 理如下如果每个^^中的4个4x4子块~4,4来自于同一个子块6 ,则令该子块^w的运 ,模式为8x8,运动估计向量为MP^,并记录该子块^w来自于&;如果其中的3个4x4子块^^来自于同一个子块^,对应的运动向量为M^;而剩 余的一个子块~4^来自于其他子块6。',对应的运动向量为M^',计算M^,和MK/之间的距离《《=VOi - a)2+0, - a)2式子中,a, x2, 乂, y/分别为两个运动向量的横、纵坐标值;如果吒小于",则令该子块、.w的运动模式为8x8,运动估计向量为所述3个相同的子块对应的M]^,并记录该子块6\,8,8来自于6。;否则,令该子块~8,8的运动模式为4x4,运动估计向量为各个4x4子块~4t4的,并记录该子块^v&8来自于NUL (NUL为一个标志,表示该子块不直接来自于原始图像的任一子块);如果其中的2个4x4子块^w来自于同一个子块6 ,而另2个子块~4,4来自于另一个子块& ',计算两个来自于子块&和&'的子块对应的运动向量MFW之间的距离《《=Vdx2)2+U"2)2式子中,X,,a, ^, h分别为两个运动向量的横、纵坐标值; 如果《小于",则更新该子块^V&8的运动模式为8x8,运动估计向量为2个iW^的 平均值,并记录该子块^^来自于NUL;否则,更新该子块^w的运动模式为8x4或者 4x8,运动估计向量分别为对应的MJ^,并记录该子块^^来自于NUL;D为常数(一般设为5);5) 对于每个16x16块M ,划分为4个8x8 f块~8;£8,分别处理如下-51) 如果四个8x8子块^^均是8x8模式,i来自于同一个原始块^,则令该16xl6 块Affl;v的运动模式为16x16,运动估计向量为子块'^^8的运动向量估计M^;52) 如果四个8x8子块^^均是8x8模式,但不来自于同一个原始块,则将16x16, 16x8, 8x16, 8x8模式加入到备选模式中,对应的运动矢量估计MF^为,,=^~~^——式子中,.MK为该运动模式中第z'个子块的运动向量,vv,为加权系数,加权系数为第i个块的面积,"代表所包含子块的总数;按264标准对该运动向量进行细化后,从上述备选模式中选择出最佳模式;53)如果都不符合步骤51)、 52)中的条件,则按照4个8x8子块的运动模式进行处理。6)根据该16x16块最终选择的运动模式,按264标准对该块的各个运动向量进行细 化后,完成该块的264转码;转步骤l)继续解码下一帧并进行转码处理。下面以转码过程中可能出现的几种情况为例,详细说明本发明提出的H.264视频以任 意比例降低分辨率转码的方法的实现方法-在对264码流解码得到一帧后,按照水平方向2:1,竖直方向3:1的比例将一帧原始图 像映射到一帧新图像中,新帧图像的每个像素点的取值为其映射在原始图像中位置周围四 个像素点中距其最近的像素点的值;对其中的一个16x16宏块进行编码;将此16x16宏块分割为16个4x4子块,得到每个4x4子块在原始图像中的映射区域, 确定每个区域中包含的面积最大的子块&,得到按照水平方向2:1,竖直方向3:1的比例縮 减的运动向量分别为MP;, MJ/2,……,MFi6;将此16xl6宏块分割为4个8x8子块,第一个8x8子块,其内部4个4x4子块都来自 于同一个原始子块6,,因此第一个8x8子块运动模式为8x8,运动矢量为M^',记录此8x8 子块来自于61;第二个8x8子块,其内部3个4"子块都来自于同一个原始子块62,另一 个4x4子块来自于、,计算对应的运动矢量的距离为2,小于阈值Z)的值5,因此第二个 8x8子块运动模式为8x8,运动矢量为MF2,记录此8x8子块来自于62;第三个8x8子块, 其内部2个4x4子块都来自于同一个原始子块&,另2个4x4子块来自于、,计算对应的 运动矢量的距离为4,小于5,因此第三个8x8子块运动模式为8x8,运动矢量为iW^',记 录此8x8子块来自于NUL;第四个8x8子块中4个4x4子块来自同一个的子块^,因此第 四个8x8子块运动模式为8x8,运动矢量为M《,记录此8x8子块来自于Z^对于此16x16宏块,因为其内部的4个8x8子块来自于不同的原始子块,对其中的运 动矢量MF;', M72, MF3', MK'分别进行细化,使用最佳模式选择从16x16, 16x8, 8x16, 8x8中选择最佳模式,得到最佳的模式为16x8模式;对两个16x8尺寸块对应的两个运动向量分别进行细化,按照上述运动模式完成此 16x16宏块的编码后,继续对下一个块进行转码处理;将此16x16宏块分割为16个4x4子块,得到每个4x4子块在原始图像中的映射区域,确定每个区域中包含的面积最大的子块&,得到按照水平方向2丄竖直方向3:1的比例縮 减的运动向量分别为M^, M72,……,MK16;将此16xl6宏块分割为4个8x8子块,第一个8x8子块,其内部4个4x4子块都来自 于同一个原始子块&,因此第一个8x8子块运动模式为8x8,运动矢量为M^',记录此8x8 子块来自于6,;第二个8x8子块,其内部3个4x4子块都来自于同一个原始子块6,,另一 个4x4子块来自于 ,计算对应的运动矢量的距离为2,小于阈值D的值5,因此第二个 8x8子块运动^1.式为8x8,运动矢量为MFj',记录此8x8子块来自于^ ;第三个8x8子块, 其内部4个4x4子块都来自于同一个原始子块Z),,因此第三个8x8子块运动模式为8x8, 运动矢量为M^',记录此8x8子块来自于";第四个8x8子块,其内部3个4x4子块都来 自于同一个原始子块^,另一个4x4子块来自于^,计算对应的运动矢量的距离为2,小 于阈值Z)的值5,因此第二个8x8子块运动模式为8x8,运动矢量为M^',记录此8x8子 块来自于61;对于此16x16宏块,因为其内部的4个8x8子块来自同一个的原始子块6,,故最佳运 动模式为16x16,运动向量估计为M《。对此16x16块的运动向量7l^'进行细化,按照上述运动模式完成此16x16宏块的编码 后,继续对下一个块进行转码处理;将此16x16宏块分割为16个4x4子块,得到每个4x4子块在原始图像中的映射区域, 确定每个区域中包含的面积最大的子块&,得到按照水平方向2:1, p直方向3:l的比例縮 减的运动向量分别为MJ^, MF2,……,MFj6;将此16xl6宏块分割为4个8x8子块,第一个8x8子块,其内部4个4x4子块都来自 于同一个原始子块h,因此第一个8x8子块运动模式为8x8,运动矢量为MF,,记录此8x8 子块来自于6,;第二个8x8子块,其内部3个4x4子块都来自于同一个原始子块Zv另一 个4x4子块来自于h,计算对应的运动矢量的距离为1,小于5,因此第二个8x8子块运 动模式为8x8,运动矢量为7W^',记录此8x8子块来自于'62;第三个8x8子块,其内部2 个4x4子块^来自于同一个原始子块^,另2个4x4子块来自于&,计算对应的运动矢量 的距离为9,大于5,因此第三个8x8子块运动模式为8x4,运动矢量为M1^', MF32 ,记 录此8x8子块来自于NUL;第四个8x8子块中4个4x4子块分别来自不同的子块,因此第 四个8x8子块运动模式为4x4,运动矢量分别为MP;,', MF42', M743', MF44',记录此8x8 子块来自于NUL;对于此16x16宏块,因为其内部的4个8x8子块不完全是8x8运动模式,使用各个8x8 子块对应的运动模式进行处理;对此16x16块中的各个尺寸块所对应的运动向量M^', MF2', M73l', MK32, MF41', MF42, MK43',屈744:分别进行细化,按照上述运动模式完成此16x16宏块的编码后,继续 对下一个块进行转码处理;在处理完该帧所有的块后,继续解码下一帧,迸行转码处理。
权利要求
1. 一种264视频以任意比例降低分辨率的像素域转码的方法,其特征在于,包括以下步骤1)对264格式的编码码流一帧图像进行解码,并记录解码后该帧图像中原始块的大小和对应的运动向量的大小;2)按照水平方向Mx∶Nx,竖直方向My∶Ny的比例将解码后码流一帧原始图像映射到一帧新图像中,新帧图像的每个像素点的取值为其映射在原始图像中位置周围四个像素点中距其最近的像素点的值;3)对于新帧图像的每个16x16块MBN,划分为16个4x4子块bN4x4;对于该每个4x4子块bN4x4,计算其在原始图像中的映射区域,确定该区域中包含的面积最大的子块bO;记录该4x4子块bN4x4来自bO,并将bO对应的运动向量MVO按照水平方向以Mx∶Nx,竖直方向以My∶Ny的比例缩减,记做bN4x4的运动估计向量MVN;4)对于每个宏块MBN,划分为4个8x8子块bN8x8;对于该每个bN8x8分别转码处理如下如果每个bN8x8中的4个4x4子块bN4x4来自于同一个子块bO,则令该子块bN8x8的运动模式为8x8,运动估计向量为MVN,并记录该子块bN8x8来自于bO;如果其中的3个4x4子块bN4x4来自于同一个子块bO,对应的运动向量为MVN;而剩余的一个子块bN4x4来自于其他子块bO′,对应的运动向量为MVN′,计算MVN和MVN′之间的距离d全文摘要
本发明涉及一种264视频以任意比例降低分辨率的像素域转码的方法,属于计算机多媒体技术领域,包括解码264码流,记录每个块的大小和运动向量;按照水平方向M<sub>x</sub>∶N<sub>x</sub>,竖直方向M<sub>y</sub>∶N<sub>y</sub>的比例将一帧原始图像映射为一帧新图像,根据重叠面积来确定新图像中每个4×4子块的运动向量;根据记录的每个4×4子块对应的原始块和运动向量确定每个8×8子块的运动模式、运动矢量和对应的原始块;根据16×16块内四个8×8子块的运动模式、运动矢量和对应的原始块等信息完成该16×16块的264转码;继续解码下一帧并进行上述的转码处理。本发明充分利用了输入264码流的有效信息,降低了以任意比例降低分辨率的264转码的计算量。
文档编号H04N7/50GK101277449SQ20081010639
公开日2008年10月1日 申请日期2008年5月13日 优先权日2008年5月13日
发明者戴琼海, 陈芝鑫 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1