发明名称 一种H.264/AVC立体视频中图像帧重要性的评价方法
摘要 本发明公开了一种H.264/AVC立体视频中图像帧重要性的评价方法,其对于右视点编码帧,先计算其错误隐藏失真,然后根据错误隐藏失真计算错误扩散失真,最后将两种失真相加得到除最后一帧右视点编码帧外的右视点编码帧的帧重要性,最后一帧右视点编码帧的帧重要性仅由错误隐藏失真确定;对于左视点编码帧,排除第1帧左视点编码帧,先计算左视点编码帧的错误隐藏失真,然后根据错误隐藏失真计算视点内错误扩散失真和视点间错误扩散失真,两者之和作为总错误扩散失真,最后将错误隐藏失真和错误扩散失真相加作为左视点编码帧的重要性,该方法在编码端就能准确地估计出各编码帧的帧重要性,且估计精度高。
申请公布号 CN104320645A 申请公布日期 2015.01.28
申请号 CN201410487622.1 申请日期 2014.09.23
申请人 宁波大学 发明人 王晓东;王腾飞;胡彬彬;章联军;姚婷;李少博;陈美子
分类号 H04N13/00(2006.01)I;H04N19/176(2014.01)I;H04N19/593(2014.01)I 主分类号 H04N13/00(2006.01)I
代理机构 宁波奥圣专利代理事务所(普通合伙) 33226 代理人 周珏
主权项 一种H.264/AVC立体视频中图像帧重要性的评价方法,其特征在于包括以下步骤:①在编码端,假设编码后的H.264/AVC立体视频包括N帧左视点编码帧和N帧右视点编码帧,其中,N≥1;②计算编码后的H.264/AVC立体视频中的每帧右视点编码帧的错误隐藏失真,将第t帧右视点编码帧的错误隐藏失真记为<img file="FDA0000575048080000019.GIF" wi="173" he="65" /><img file="FDA00005750480800000110.GIF" wi="382" he="75" />其中,1≤t≤N,t的初始值为1,<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msup><mi>D</mi><mi>right</mi></msup><mo>=</mo><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mfenced open='{' close=''><mtable><mtr><mtd><mi>MSE</mi><mrow><mo>(</mo><msub><mi>l</mi><mn>1</mn></msub><mo>,</mo><msub><mi>r</mi><mn>1</mn></msub><mo>)</mo></mrow></mtd><mtd><mi>t</mi><mo>=</mo><mn>1</mn></mtd></mtr><mtr><mtd><mi>MSE</mi><mrow><mo>(</mo><msub><mi>r</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>,</mo><msub><mi>r</mi><mi>t</mi></msub><mo>)</mo></mrow></mtd><mtd><mn>2</mn><mo>&le;</mo><mi>t</mi><mo>&le;</mo><mi>N</mi></mtd></mtr></mtable></mfenced><mo>,</mo></mrow>]]></math><img file="FDA0000575048080000011.GIF" wi="770" he="174" /></maths>MSE(l<sub>1</sub>,r<sub>1</sub>)表示第1帧左视点编码帧与第1帧右视点编码帧之间的均方差,MSE(r<sub>t‑1</sub>,r<sub>t</sub>)表示第(t‑1)帧右视点编码帧与第t帧右视点编码帧之间的均方差,l<sub>1</sub>表示第1帧左视点编码帧,r<sub>1</sub>、r<sub>t‑1</sub>和r<sub>t</sub>对应表示第1帧右视点编码帧、第(t‑1)帧右视点编码帧和第t帧右视点编码帧;③计算编码后的H.264/AVC立体视频中除最后一帧右视点编码帧外的每帧右视点编码帧的错误扩散失真,将除最后一帧右视点编码帧外的第t帧右视点编码帧的错误扩散失真记为<img file="FDA0000575048080000012.GIF" wi="170" he="80" /><maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msubsup><mi>I</mi><mi>p</mi><mi>right</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><mi>t</mi><mi>right</mi></msubsup><mo>)</mo></mrow><mo>&times;</mo><msubsup><mi>&alpha;</mi><mi>t</mi><mi>right</mi></msubsup><mo>)</mo></mrow><mo>-</mo><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><mi>t</mi><mi>right</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><mi>t</mi><mi>right</mi></msubsup><mo>+</mo><mn>1</mn></mrow></msup><mo>&times;</mo><msup><mrow><mo>(</mo><msubsup><mi>&alpha;</mi><mi>t</mi><mi>right</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><mi>t</mi><mi>right</mi></msubsup><mo>+</mo><mn>1</mn></mrow></msup></mrow><mrow><mn>1</mn><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><mi>t</mi><mi>right</mi></msubsup><mo>)</mo></mrow><mo>&times;</mo><msubsup><mi>&alpha;</mi><mi>t</mi><mi>right</mi></msubsup></mrow></mfrac><mo>&times;</mo><msup><mi>D</mi><mi>right</mi></msup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>,</mo></mrow>]]></math><img file="FDA0000575048080000013.GIF" wi="1506" he="198" /></maths>其中,此处1≤t≤N‑1,<img file="FDA0000575048080000014.GIF" wi="113" he="78" />表示以第t帧右视点编码帧的下一帧右视点编码帧开始的所有后续右视点编码帧的帧内预测比例,<img file="FDA0000575048080000015.GIF" wi="112" he="78" />表示第t帧右视点编码帧的错误扩散因子,<img file="FDA0000575048080000016.GIF" wi="113" he="78" />的值等于第t帧右视点编码帧中参与预测下一帧右视点编码帧的所有宏块的总失真与第t帧右视点编码帧的失真的比值,<img file="FDA0000575048080000017.GIF" wi="107" he="79" />表示以第t帧右视点编码帧的下一帧右视点编码帧开始的所有后续右视点编码帧的总帧数;④计算编码后的H.264/AVC立体视频中的每帧右视点编码帧的帧重要性,将第t帧右视点编码帧的帧重要性记为I<sup>right</sup>(t),<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msup><mi>I</mi><mi>right</mi></msup><mo>=</mo><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><msubsup><mi>i</mi><mi>c</mi><mi>right</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msubsup><mi>I</mi><mi>p</mi><mi>right</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mtd><mtd><mn>1</mn><mo>&le;</mo><mi>t</mi><mo>&le;</mo><mi>N</mi><mo>-</mo><mn>1</mn></mtd></mtr><mtr><mtd><msubsup><mi>I</mi><mi>c</mi><mi>right</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mtd><mtd><mi>t</mi><mo>=</mo><mi>N</mi></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math><img file="FDA0000575048080000018.GIF" wi="920" he="177" /></maths>⑤假设编码后的H.264/AVC立体视频中的第1帧左视点编码帧不丢失,则计算编码后的H.264/AVC立体视频中除第1帧左视点编码帧外的每帧左视点编码帧的错误隐藏失真,将除第1帧左视点编码帧外的第t'帧左视点编码帧的错误隐藏失真记为<img file="FDA0000575048080000021.GIF" wi="175" he="79" /><img file="FDA0000575048080000022.GIF" wi="370" he="79" />其中,2≤t'≤N,t'的初始值为2,D<sup>left</sup>(t')=MSE(l<sub>t'‑1</sub>,l<sub>t'</sub>),MSE(l<sub>t'‑1</sub>,l<sub>t'</sub>)表示第(t'‑1)帧左视点编码帧与第t'帧左视点编码帧之间的均方差,l<sub>t'‑1</sub>和l<sub>t'</sub>对应表示第(t'‑1)帧左视点编码帧和第t'帧左视点编码帧;⑥计算编码后的H.264/AVC立体视频中除第1帧和最后一帧左视点编码帧外的每帧左视点编码帧的视点内错误扩散失真,将除第1帧和最后一帧左视点编码帧外的第t'帧左视点编码帧的视点内错误扩散失真记为<img file="FDA0000575048080000023.GIF" wi="216" he="84" /><maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msubsup><mi>I</mi><mi>pl</mi><mi>left</mi></msubsup><mrow><mo>(</mo><msup><mi>t</mi><mo>&prime;</mo></msup><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>left</mi></msubsup><mo>)</mo></mrow><mo>&times;</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>left</mi></msubsup><mo>)</mo></mrow><mo>-</mo><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>left</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>left</mi></msubsup><mo>+</mo><mn>1</mn></mrow></msup><mo>&times;</mo><msup><mrow><mo>(</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>left</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>left</mi></msubsup><mo>+</mo><mn>1</mn></mrow></msup></mrow><mrow><mn>1</mn><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>left</mi></msubsup><mo>)</mo></mrow><mo>&times;</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>left</mi></msubsup></mrow></mfrac><mo>&times;</mo><msup><mi>D</mi><mi>left</mi></msup><mrow><mo>(</mo><msup><mi>t</mi><mo>&prime;</mo></msup><mo>)</mo></mrow><mo>,</mo></mrow>]]></math><img file="FDA0000575048080000024.GIF" wi="1358" he="199" /></maths>其中,此处2≤t'≤N‑1,<img file="FDA0000575048080000025.GIF" wi="94" he="78" />表示以第t'帧左视点编码帧的下一帧左视点编码帧开始的所有后续左视点编码帧的帧内预测比例,<img file="FDA0000575048080000026.GIF" wi="93" he="78" />表示第t'帧左视点编码帧的错误扩散因子,<img file="FDA0000575048080000027.GIF" wi="92" he="78" />的值等于第t'帧左视点编码帧中参与预测下一帧左视点编码帧的所有宏块的总失真与第t'帧左视点编码帧的失真的比值,<img file="FDA0000575048080000028.GIF" wi="88" he="78" />表示以第t'帧左视点编码帧的下一帧左视点编码帧开始的所有后续左视点编码帧的总帧数;⑦计算编码后的H.264/AVC立体视频中除第1帧左视点编码帧外的每帧左视点编码帧的视点间错误扩散失真,将除第1帧左视点编码帧外的第t'帧左视点编码帧的视点间错误扩散失真记为<img file="FDA0000575048080000031.GIF" wi="175" he="85" /><maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><msubsup><mi>I</mi><mi>pr</mi><mi>left</mi></msubsup><mrow><mo>(</mo><msup><mi>t</mi><mo>&prime;</mo></msup><mo>)</mo></mrow><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><mi>m</mi><mo>&times;</mo><mfrac><mrow><mn>1</mn><mo>-</mo><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>+</mo><mn>1</mn></mrow></msup><mo>&times;</mo><msup><mrow><mo>(</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>+</mo><mn>1</mn></mrow></msup></mrow><mrow><mn>1</mn><mo>-</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>+</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>&times;</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup></mrow></mfrac></mtd></mtr><mtr><mtd><mo>+</mo><mi>m</mi><mo>&times;</mo><mi>n</mi><mo>&times;</mo><mfrac><mrow><mn>1</mn><mo>-</mo><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>)</mo></mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup></msup><mo>&times;</mo><msup><mrow><mo>(</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>)</mo></mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup></msup></mrow><mrow><mn>1</mn><mo>-</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>+</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>&times;</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup></mrow></mfrac></mtd></mtr><mtr><mtd><mo>+</mo><mi>m</mi><mo>&times;</mo><msup><mi>n</mi><mn>2</mn></msup><mo>&times;</mo><mfrac><mrow><mn>1</mn><mo>-</mo><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>-</mo><mn>1</mn></mrow></msup><mo>&times;</mo><msup><mrow><mo>(</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>-</mo><mn>1</mn></mrow></msup></mrow><mrow><mn>1</mn><mo>-</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>+</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>&times;</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup></mrow></mfrac></mtd></mtr><mtr><mtd><mo>+</mo><mi>m</mi><mo>&times;</mo><msup><mi>n</mi><mn>3</mn></msup><mo>&times;</mo><mfrac><mrow><mn>1</mn><mo>-</mo><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>-</mo><mn>2</mn></mrow></msup><mo>&times;</mo><msup><mrow><mo>(</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>)</mo></mrow><mrow><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>-</mo><mn>2</mn></mrow></msup></mrow><mrow><mn>1</mn><mo>-</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>+</mo><msubsup><mi>&alpha;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup><mo>&times;</mo><msubsup><mi>&beta;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup></mrow></mfrac></mtd></mtr><mtr><mtd><mo>+</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>+</mo><mi>m</mi><mo>&times;</mo><msup><mi>n</mi><msubsup><mi>&lambda;</mi><msup><mi>t</mi><mo>&prime;</mo></msup><mi>zl</mi></msubsup></msup></mtd></mtr></mtable></mfenced><mo>&times;</mo><msup><mi>D</mi><mi>left</mi></msup><mrow><mo>(</mo><msup><mi>t</mi><mo>&prime;</mo></msup><mo>)</mo></mrow><mo>,</mo></mrow>]]></math><img file="FDA0000575048080000032.GIF" wi="1162" he="960" /></maths>其中,此处2≤t'≤N,<img file="FDA00005750480800000311.GIF" wi="67" he="65" />表示以与第t'帧左视点编码帧相对应的第t'帧右视点编码帧的下一帧右视点编码帧开始的所有后续右视点编码帧的帧内预测比例,<img file="FDA0000575048080000033.GIF" wi="82" he="78" />表示第t'帧左视点编码帧对第t'帧右视点编码帧的错误扩散因子,<img file="FDA0000575048080000034.GIF" wi="66" he="78" />的值等于第t'帧左视点编码帧中参与预测第t'帧右视点编码帧的所有宏块的总失真与第t'帧左视点编码帧的失真的比值,<img file="FDA0000575048080000035.GIF" wi="73" he="79" />表示以与第t'帧左视点编码帧相对应的第t'帧右视点编码帧的下一帧右视点编码帧开始的所有后续右视点编码帧的总帧数,<img file="FDA0000575048080000036.GIF" wi="590" he="99" /><img file="FDA0000575048080000037.GIF" wi="464" he="95" /><img file="FDA0000575048080000038.GIF" wi="71" he="83" />表示以与第t'帧左视点编码帧相对应的第t'帧右视点编码帧的下一帧右视点编码帧开始的所有后续右视点编码帧的视点内预测比例,ω<sub>1</sub>表示第t'帧左视点编码帧的加权系数,ω<sub>2</sub>表示与第t'帧左视点编码帧相对应的第t'帧右视点编码帧的前一帧右视点编码帧的加权系数,ω<sub>1</sub>+ω<sub>2</sub>=1;⑧计算编码后的H.264/AVC立体视频中除第1帧左视点编码帧外的每帧左视点编码帧的总错误扩散失真,将除第1帧左视点编码帧外的第t'帧左视点编码帧的总错误扩散失真记为<img file="FDA0000575048080000039.GIF" wi="169" he="84" /><maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><msubsup><mi>I</mi><mi>p</mi><mi>left</mi></msubsup><mrow><mo>(</mo><msup><mi>t</mi><mo>&prime;</mo></msup><mo>)</mo></mrow><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><msubsup><mi>I</mi><mi>pl</mi><mi>left</mi></msubsup><mrow><mo>(</mo><msup><mi>t</mi><mo>&prime;</mo></msup><mo>)</mo></mrow><mo>+</mo><msubsup><mi>I</mi><mi>pr</mi><mi>left</mi></msubsup><mrow><mo>(</mo><msup><mi>t</mi><mo>&prime;</mo></msup><mo>)</mo></mrow></mtd><mtd><mn>2</mn><mo>&le;</mo><msup><mi>t</mi><mo>&prime;</mo></msup><mo>&le;</mo><mi>N</mi><mo>-</mo><mn>1</mn></mtd></mtr><mtr><mtd><msubsup><mi>I</mi><mi>pr</mi><mi>left</mi></msubsup><mrow><mo>(</mo><msup><mi>t</mi><mo>&prime;</mo></msup><mo>)</mo></mrow></mtd><mtd><msup><mi>t</mi><mo>&prime;</mo></msup><mo>=</mo><mi>N</mi></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math><img file="FDA00005750480800000310.GIF" wi="925" he="187" /></maths>⑨根据编码后的H.264/AVC立体视频中除第1帧左视点编码帧外的每帧左视点编码帧的错误隐藏失真和总错误扩散失真,计算编码后的H.264/AVC立体视频中除第1帧左视点编码帧外的每帧左视点编码帧的帧重要性,将除第1帧左视点编码帧外的第t'帧左视点编码帧的帧重要性记为I<sup>left</sup>(t'),<img file="FDA0000575048080000041.GIF" wi="535" he="84" />其中,2≤t'≤N,t'的初始值为2。
地址 315211 浙江省宁波市江北区风华路818号