发明名称 基于运动信息的视频帧重要性评估方法
摘要 本发明公开了一种基于运动信息的视频帧重要性评估方法,它属于视频通信技术领域,主要解决现有技术需要原始图像和解码图像,所需运算资源过多,且依赖编码端的问题。其实现步骤是:首先,通过解码器解码部分码流得到宏块编码模式和运动信息;然后,按照宏块编码模式对宏块进行分类,再根据不同类型宏块的运动特征,利用运动信息估计不同类型宏块的重要性;最后,根据图像组GOP的长度、当前帧在图像组GOP中的序号以及不同类型宏块的重要性,得到视频帧的重要性。本发明与现有的均方误差MSE方法相比不需要原始图像和解码图像,且评估结果一致,可用于视频编解码系统和视频传输系统。
申请公布号 CN102026001A 申请公布日期 2011.04.20
申请号 CN201110002058.6 申请日期 2011.01.06
申请人 西安电子科技大学 发明人 吴炜;秦浩;赵月;彭学露;李子诺
分类号 H04N7/26(2006.01)I;H04N7/32(2006.01)I 主分类号 H04N7/26(2006.01)I
代理机构 陕西电子工业专利中心 61205 代理人 王品华;朱红星
主权项 1.一种基于运动信息的视频帧重要性评估方法,包括如下步骤:(1)对接收到的包含宏块编码模式和运动信息的码流进行解码;(2)根据解码得到宏块编码模式将宏块分为三类:帧间编码宏块、帧内编码宏块和skip宏块;(3)根据三种宏块的运动特征,利用解码得到的运动信息估计宏块的重要性:(3.1)估计帧间编码宏块的重要性:设MV<sub>x</sub>和MV<sub>y</sub>分别表示帧间编码宏块中4×4子宏块运动矢量MV的x分量和y分量,则4×4子宏块运动矢量幅度值为:<maths num="0001"><![CDATA[<math><mrow><mi>MVMod</mi><mo>=</mo><msqrt><msubsup><mi>MV</mi><mi>x</mi><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>MV</mi><mi>y</mi><mn>2</mn></msubsup></msqrt></mrow></math>]]></maths>计算帧间编码宏块的重要性,即当前帧间编码宏块中16个4×4子宏块运动矢量幅度值之和:<maths num="0002"><![CDATA[<math><mrow><msub><mi>D</mi><mrow><mi>int er</mi><mo>,</mo><mi>i</mi></mrow></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mn>16</mn></munderover><msub><mi>&alpha;</mi><mi>int er</mi></msub><mo>&CenterDot;</mo><msub><mi>MVMod</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub></mrow></math>]]></maths>其中i表示当前帧间编码宏块的序号,j表示4×4子宏块在当前帧间编码宏块中的序号,MVMod<sub>i,j</sub>表示第i个帧间编码宏块中第j个4×4子宏块的运动矢量幅度值,α<sub>inter</sub>表示帧间编码模式经验因子,建议取值为0.05;(3.2)估计帧内编码宏块的重要性:帧内编码宏块分为P帧和I帧的帧内编码宏块,对于P帧的帧内编码宏块,将它所在P帧中帧间编码的4×4子宏块的最大运动矢量幅度值作为它的运动矢量幅度值,则P帧的帧内编码宏块的重要性为:D<sub>intra,k</sub>=α<sub>intra</sub>·max(MVMod<sub>i,j</sub>)其中k表示当前帧内编码宏块的序号,α<sub>intra</sub>表示帧内编码模式的经验因子,建议取值0.2,max(MVMod<sub>i,j</sub>)表示当前P帧中帧间编码4×4子宏块运动矢量幅度的最大值:对于I帧的帧内编码宏块,将I帧正方形搜索区域边长的<img file="FDA0000042963410000021.GIF" wi="62" he="55" />倍作为它的运动矢量幅度值,则I帧中帧内编码宏块的重要性为:<maths num="0003"><![CDATA[<math><mrow><msub><mi>D</mi><mrow><mi>int ra</mi><mo>,</mo><mi>l</mi></mrow></msub><mo>=</mo><msqrt><mn>2</mn></msqrt><mo>&CenterDot;</mo><msub><mi>&alpha;</mi><mi>int ra</mi></msub><mo>&CenterDot;</mo><mi>F</mi></mrow></math>]]></maths>其中l表示当前帧内编码宏块的序号,α<sub>intra</sub>表示帧内编码模式的经验因子,建议取值为0.2,F表示I帧正方形搜索区域的边长;(3.3)估计skip宏块的重要性:根据当前帧中skip宏块的数目,分两种情况估计当前帧中skip宏块的重要性:<maths num="0004"><![CDATA[<math><mrow><msub><mi>D</mi><mrow><mi>skip</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><msub><mi>&alpha;</mi><mi>skip</mi></msub><mo>&CenterDot;</mo><mi>MVM</mi><msub><mi>od</mi><mi>m</mi></msub></mtd><mtd><mi>d</mi><mo>&GreaterEqual;</mo><mi>Thd</mi></mtd></mtr><mtr><mtd><msubsup><mi>&alpha;</mi><mi>skip</mi><mo>&prime;</mo></msubsup></mtd><mtd><mi>d</mi><mo>&lt;</mo><mi>Thd</mi></mtd></mtr></mtable></mfenced></mrow></math>]]></maths>其中m表示当前skip宏块的序号,d表示当前帧中skip宏块的个数,α<sub>skip</sub>和α′<sub>skip</sub>表示skip编码模式经验因子,建议取值分别为0.1和0.03,MVMo<sub>dm</sub>表示第m个skip宏块的运动矢量幅度值,Thd表示门限值,建议取值60;(4)估计视频帧的重要性:视频帧的重要性由当前部分和扩散部分两部分组成,当前部分是所有宏块的重要性之和,因为P帧有帧间编码宏块、帧内编码宏块和skip宏块,所以P帧重要性的当前部分为所有帧间编码宏块、帧内编码宏块和skip宏块重要性之和,而I帧只有帧内编码宏块,所以I帧重要性的当前部分为所有帧内编码宏块重要性之和,扩散部分是当前部分的γ倍;如果当前帧为P帧,则当前帧的重要性为:<maths num="0005"><![CDATA[<math><mrow><msub><mi>D</mi><mrow><mi>C</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>=</mo><mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>&gamma;</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>a</mi></munderover><msub><mi>D</mi><mrow><mi>int er</mi><mo>,</mo><mi>i</mi></mrow></msub><mo>+</mo><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>b</mi></munderover><msub><mi>D</mi><mrow><mi>int ra</mi><mo>,</mo><mi>k</mi></mrow></msub><mo>+</mo><munderover><mi>&Sigma;</mi><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>d</mi></munderover><msub><mi>D</mi><mrow><mi>skip</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>)</mo></mrow></mrow></math>]]></maths>其中n表示当前P帧的序号,a表示当前P帧中帧间编码宏块的个数,i表示帧间编码宏块的序号,D<sub>inter,i</sub>表示当前P帧中第i个帧间编码宏块的重要性,b表示当前P帧中帧内编码宏块的个数,k表示帧内编码宏块的序号,D<sub>intra,k</sub>表示当前P帧中第k个帧内编码宏块的重要性,d表示当前P帧中skip宏块的个数,m表示skip宏块的序号,D<sub>skip,m</sub>表示当前P帧中第m个skip宏块的重要性,γ表示扩散因子,γ=N-k-1,N表示图像组GOP长度;如果当前帧是I帧,则当前帧的重要性为:<maths num="0006"><![CDATA[<math><mrow><msub><mi>D</mi><mrow><mi>C</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>=</mo><mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>&gamma;</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><munderover><mi>&Sigma;</mi><mrow><mi>l</mi><mo>=</mo><mn>1</mn></mrow><mi>c</mi></munderover><msub><mi>D</mi><mrow><mi>int ra</mi><mo>,</mo><mi>l</mi></mrow></msub></mrow></math>]]></maths>其中n表示当前I帧的序号,c表示当前I帧中帧内编码宏块的个数,l表示帧内编码宏块的序号,D<sub>intra,k</sub>表示当前I帧中第l个帧内编码宏块的重要性,γ表示扩散因子,γ=N-k-1,N表示图像组GOP长度;
地址 710071 陕西省西安市太白南路2号