发明名称 一种H.264视频降低分辨率转码的模式选择方法
摘要 本发明涉及一种264降低分辨率转码的模式选择的方法,属于计算机多媒体技术领域,包括:对264格式的编码码流进行解码,并记录下各个块的大小和对应的运动向量的大小;原始块的运动模式按2∶1映射到新块中,并将原运动向量经过1/2缩减后传递给新视频帧中的相应块;根据原始块的运动模式和运动向量判断新块的运动模式和估计运动向量,确定备选模式;使用基于转码改进的264率失真优化算法来进行最佳模式选择;完成该块的264编码;继续解码下一帧并进行上述的转码处理。本发明充分利用了输入264编码数据的有效信息,大大的降低了在264到264降低分辨率转码在模式选择时的计算量。
申请公布号 CN100586185C 申请公布日期 2010.01.27
申请号 CN200810103682.3 申请日期 2008.04.10
申请人 清华大学 发明人 戴琼海;陈芝鑫;栗强
分类号 H04N7/26(2006.01)I;H04N7/50(2006.01)I 主分类号 H04N7/26(2006.01)I
代理机构 北京清亦华知识产权代理事务所(普通合伙) 代理人 廖元秋
主权项 1、一种H.264视频降低分辨率转码的模式选择方法,其特征在于,包括以下步骤:1)对H.264格式的编码码流进行解码,并记录下各个原始块的大小和对应的运动向量的大小;2)原始块的运动模式按2:1映射到新视频帧的块中,并将原运动向量经过1/2缩减后传递给新视频帧中的相应块;小于8×8的原始块,所在的8×8区域整体映射为4×4块,计算新块运动向量MVnew为:<maths id="math0001" num="0001" ><math><![CDATA[ <mrow> <msub> <mi>MV</mi> <mi>new</mi> </msub> <mo>=</mo> <mfrac> <mrow> <munderover> <mi>&Sigma;</mi> <mi>i</mi> <mi>n</mi> </munderover> <mrow> <mo>(</mo> <msubsup> <mi>MV</mi> <mi>i</mi> <mi>org</mi> </msubsup> <mo>&times;</mo> <msub> <mi>w</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> </mrow> <mrow> <mn>2</mn> <mo>&times;</mo> <munderover> <mi>&Sigma;</mi> <mi>i</mi> <mi>n</mi> </munderover> <msub> <mi>w</mi> <mi>i</mi> </msub> </mrow> </mfrac> </mrow>]]></math></maths>式子中,MViorg为该新视频帧中的相应块对应原始帧区域中第i个块的运动向量,wi为加权系数,加权系数用第i个块的面积来确定,n代表所包含原始块的总数;3)如果当前16×16块对应的四个原始块均为16×16模式,首先分别计算左上右上,左下右下,左上左下和右上右下对应的每两个运动向量之间的距离d1:<maths id="math0002" num="0002" ><math><![CDATA[ <mrow> <msub> <mi>d</mi> <mn>1</mn> </msub> <mo>=</mo> <msqrt> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>x</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup> <mrow> <mo>(</mo> <msub> <mi>y</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>y</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> </mrow>]]></math></maths>式子中,x1,x2,y1,y2分别为两个运动向量的横、纵坐标值;如果得到的距离d1的最大值小于D16×16,则新块使用16×16运动模式,对应的运动向量为四个运动向量的中间向量;如果得到的距离d1的最大值大于D16×16,最小值小于D8×8,则d1的最小值小于D8×8的这两个运动向量对应的块使用16×8或8×16模式,对应的运动向量为这两个运动向量的平均值;同时,如果另外两个运动向量对应之间的距离小于D8×8,则这两个运动向量对应的块使用16×8或8×16模式,对应的运动向量为这两个运动向量的平均值;否则,两个对应的块使用8×8运动模式;如果得到的距离d1的最大值大于D16×16,最小值大于D8×8,则使用步骤2)中的映射的运动模式和向量;D16×16和D8×8为常数;4)如果四个原始块中有三个块为16×16模式,分别计算出3个16×16块对应的运动向量之间的距离d2:<maths id="math0003" num="0003" ><math><![CDATA[ <mrow> <msub> <mi>d</mi> <mn>2</mn> </msub> <mo>=</mo> <msqrt> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>x</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup> <mrow> <mo>(</mo> <msub> <mi>y</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>y</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </msqrt> </mrow>]]></math></maths>式子中,x1,x2,y1,y2分别为两个运动向量的横、纵坐标值;如果最大距离d2小于D16×16,则将16×16运动模式加入到备选模式中,对应的运动向量为3个运动向量的中间向量;如果得到的距离d2的最大值大于D16×16,但存在相邻两块对应的运动向量之间距离d小于D8×8,则这两个运动向量对应的块使用16×8或8×16模式,对应的运动向量为这两个运动向量的平均值,另外两个块维持映射得到的运动模式不变,并将这种模式加入到备选模式中;5)将步骤2)中映射得到的运动模式和运动向量加入到备选模式中,对该运动向量进行细化后,从上述备选模式中选择出最佳模式。
地址 100084北京市海淀区清华园