发明名称 一种立体视频宏块丢失错误隐藏方法
摘要 本发明公开了一种立体视频宏块丢失错误隐藏方法,其首先确定丢失宏块属于左边界遮挡区域或右边界遮挡区域还是属于非边界遮挡区域,然后对属于非边界遮挡区域的丢失宏块,根据宏块的运动与静止特性将其归为运动宏块或静止宏块,接着利用宏块的人眼敏感度特性将运动宏块归为敏感块或不敏感块,再利用宏块的纹理与平滑特性将敏感块归为纹理块或平滑块,对属于左边界遮挡区域或右边界遮挡区域的丢失宏块、静止宏块、不敏感块、纹理块、平滑块分别采用时域运动补偿预测、时域帧拷贝、视差补偿预测、多方向插值、线性插值的方式恢复丢失宏块,由于本发明方法根据不同特性的宏块采用自适应的恢复策略,因此有效地提高了恢复的宏块的主客观质量。
申请公布号 CN103237226A 申请公布日期 2013.08.07
申请号 CN201310117270.6 申请日期 2013.04.07
申请人 宁波大学 发明人 蒋刚毅;孙越;陈芬;邵枫;彭宗举;王晓东;李福
分类号 H04N7/68(2006.01)I;H04N13/00(2006.01)I 主分类号 H04N7/68(2006.01)I
代理机构 宁波奥圣专利代理事务所(普通合伙) 33226 代理人 周珏
主权项 1.一种立体视频宏块丢失错误隐藏方法,其特征在于包括以下步骤:①假设立体视频中t时刻的右视点图像为丢失帧,记为<img file="FDA00003014985000011.GIF" wi="72" he="62" />将立体视频中已正确解码的t-1时刻的右视点图像记为<img file="FDA00003014985000012.GIF" wi="100" he="64" />将立体视频中已正确解码的t-2时刻的右视点图像记为<img file="FDA00003014985000013.GIF" wi="101" he="68" />将立体视频中已正确解码的t时刻的左视点图像记为<img file="FDA00003014985000014.GIF" wi="68" he="68" />将立体视频中已正确解码的t-1时刻的左视点图像记为<img file="FDA00003014985000015.GIF" wi="95" he="68" />②采用移动帧差法计算<img file="FDA00003014985000016.GIF" wi="73" he="70" />与<img file="FDA00003014985000017.GIF" wi="70" he="76" />之间的全局视差矢量,记为d<sub>G</sub>,<maths num="0001"><![CDATA[<math><mrow><msub><mi>d</mi><mi>G</mi></msub><mo>=</mo><mi>arg</mi><mi>min</mi><mrow><mo>(</mo><mfrac><mrow><munder><mi>&Sigma;</mi><mrow><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>&Element;</mo><mi>D</mi></mrow></munder><mo>|</mo><msubsup><mi>P</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mi>r</mi></msubsup><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><msubsup><mi>P</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mi>l</mi></msubsup><mrow><mo>(</mo><mi>x</mi><mo>+</mo><mi>d</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>|</mo></mrow><mrow><mrow><mo>(</mo><mi>W</mi><mo>-</mo><mo>|</mo><mi>d</mi><mo>|</mo><mo>)</mo></mrow><mo>&times;</mo><mi>H</mi></mrow></mfrac><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>其中,<maths num="0002"><![CDATA[<math><mrow><mi>arg</mi><mi>min</mi><mrow><mo>(</mo><mfrac><mrow><munder><mi>&Sigma;</mi><mrow><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>&Element;</mo><mi>D</mi></mrow></munder><mo>|</mo><msubsup><mi>P</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mi>r</mi></msubsup><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><msubsup><mi>P</mi><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mi>l</mi></msubsup><mrow><mo>(</mo><mi>x</mi><mo>+</mo><mi>d</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>|</mo></mrow><mrow><mrow><mo>(</mo><mi>W</mi><mo>-</mo><mo>|</mo><mi>d</mi><mo>|</mo><mo>)</mo></mrow><mo>&times;</mo><mi>H</mi></mrow></mfrac><mo>)</mo></mrow></mrow></math>]]></maths>表示<img file="FDA000030149850000110.GIF" wi="584" he="172" />取最小值时位移d的值,D表示<img file="FDA000030149850000111.GIF" wi="68" he="63" />中宽为W-|d|且高为H的窗口,符号“||”为取绝对值符号,此处1≤x≤W,1≤y≤H且(x,y)∈D,W表示立体视频中左视点图像和右视点图像的宽度,H表示立体视频中左视点图像和右视点图像的高度,<img file="FDA000030149850000112.GIF" wi="173" he="70" />表示<img file="FDA000030149850000113.GIF" wi="64" he="65" />中坐标位置为(x,y)的像素点的像素值,<img file="FDA000030149850000114.GIF" wi="248" he="72" />表示<img file="FDA000030149850000115.GIF" wi="70" he="73" />中坐标位置为(x+d,y)的像素点的像素值,-W/λ<sub>1</sub>≤d≤W/λ<sub>1</sub>,λ<sub>1</sub>表示位移d的判断阈值;③将<img file="FDA000030149850000116.GIF" wi="52" he="62" />中从左边界起的宽度为C个宏块的宽度且高度为H的区域定义为左边界遮挡区域,将<img file="FDA000030149850000117.GIF" wi="44" he="63" />中从右边界起的宽度为C个宏块的宽度且高度为H的区域定义为右边界遮挡区域,将<img file="FDA000030149850000118.GIF" wi="52" he="61" />中除左边界遮挡区域和右边界遮挡区域外的区域定义为非边界遮挡区域,其中,<img file="FDA000030149850000119.GIF" wi="375" he="147" />符号<img file="FDA000030149850000120.GIF" wi="158" he="71" />为向下取整符号,符号“||”为取绝对值符号;④将<img file="FDA000030149850000121.GIF" wi="50" he="61" />中当前检测到的丢失的宏块定义为当前丢失宏块;⑤判断当前丢失宏块属于左边界遮挡区域或右边界遮挡区域还是属于非边界遮挡区域,如果属于左边界遮挡区域或右边界遮挡区域,则采用时域运动补偿预测方法恢复当前丢失宏块的亮度信息和色度信息,然后执行步骤⑨,如果属于非边界遮挡区域,则执行步骤⑥;⑥根据d<sub>G</sub>对<img file="FDA00003014985000021.GIF" wi="50" he="68" />中与当前丢失宏块的坐标位置相同的宏块进行水平位移,然后将<img file="FDA00003014985000022.GIF" wi="46" he="67" />中与当前丢失宏块的坐标位置相同的宏块经水平位移后的宏块划分为多个互不重叠的第一图像块,接着确定<img file="FDA00003014985000023.GIF" wi="47" he="70" />中与当前丢失宏块的坐标位置相同的宏块经水平位移后的宏块中的每个第一图像块为静止块还是为运动块,再确定<img file="FDA00003014985000024.GIF" wi="42" he="71" />中与当前丢失宏块的坐标位置相同的宏块经水平位移后的宏块为静止宏块还是为运动宏块;将<img file="FDA00003014985000025.GIF" wi="64" he="63" />中与当前丢失宏块的坐标位置相同的宏块划分为多个互不重叠的且尺寸大小与第一图像块相同的第二图像块,接着确定<img file="FDA00003014985000026.GIF" wi="67" he="59" />中与当前丢失宏块的坐标位置相同的宏块中的每个第二图像块为静止块还是为运动块,再确定<img file="FDA00003014985000027.GIF" wi="69" he="59" />中与当前丢失宏块的坐标位置相同的宏块为静止宏块还是为运动宏块;最后根据<img file="FDA00003014985000028.GIF" wi="48" he="72" />中与当前丢失宏块的坐标位置相同的宏块经水平位移后的宏块和<img file="FDA00003014985000029.GIF" wi="73" he="63" />中与当前丢失宏块的坐标位置相同的宏块,确定当前丢失宏块为静止宏块还是为运动宏块,如果当前丢失宏块为静止宏块,则采用时域帧拷贝的方法恢复当前丢失宏块的亮度信息和色度信息,再执行步骤⑨,否则,执行步骤⑦;⑦获取<img file="FDA000030149850000210.GIF" wi="73" he="59" />的全局双目恰可觉察失真阈值图,记为JND<sub>dr</sub>,然后根据JND<sub>dr</sub>中的每个宏块中的所有像素点的全局双目恰可觉察失真阈值的均值,确定当前丢失宏块为不敏感块还是为敏感块,如果当前丢失宏块为不敏感块,则采用视差补偿预测方法恢复当前丢失宏块的亮度信息和色度信息,然后执行步骤⑨,如果当前丢失宏块为敏感块,然后执行步骤⑧;⑧将当前丢失宏块的上相邻宏块、下相邻宏块、左相邻宏块和右相邻宏块中已正确解码的宏块作为可用宏块,然后对每个可用宏块进行DCT变换得到每个可用宏块中的每个像素点的交流系数,接着根据每个可用宏块中的所有像素点的交流系数的总能量,计算每个可用宏块的图像细节程度评价因子,再根据每个可用宏块的图像细节程度评价因子,确定每个可用宏块为纹理块还是为平滑块,最后根据当前丢失宏块对应的可用宏块为纹理块的个数和为平滑块的个数,确定当前丢失宏块为纹理块还是为平滑块,如果当前丢失宏块为纹理块,则采用空域多方向插值的方法恢复当前丢失宏块的亮度信息和色度信息,然后执行步骤⑨,如果当前丢失宏块为平滑块,则采用空域线性插值的方法恢复当前丢失宏块的亮度信息和色度信息,然后执行步骤⑨;⑨将<img file="FDA000030149850000211.GIF" wi="50" he="59" />中检测到的下一个丢失的宏块作为当前丢失宏块,然后返回步骤⑤继续执行,直至<img file="FDA00003014985000031.GIF" wi="52" he="60" />中的所有丢失的宏块的亮度信息和色度信息恢复完毕。
地址 315211 浙江省宁波市江北区风华路818号