特許第5807639号(P5807639)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5807639
(24)【登録日】2015年9月18日
(45)【発行日】2015年11月10日
(54)【発明の名称】映像符号化装置および映像復号装置
(51)【国際特許分類】
   H04N 19/117 20140101AFI20151021BHJP
   H04N 19/157 20140101ALI20151021BHJP
   H04N 19/176 20140101ALI20151021BHJP
   H04N 19/82 20140101ALI20151021BHJP
   H04N 19/86 20140101ALI20151021BHJP
【FI】
   H04N19/117
   H04N19/157
   H04N19/176
   H04N19/82
   H04N19/86
【請求項の数】8
【全頁数】28
(21)【出願番号】特願2012-533858(P2012-533858)
(86)(22)【出願日】2011年9月12日
(86)【国際出願番号】JP2011005118
(87)【国際公開番号】WO2012035746
(87)【国際公開日】20120322
【審査請求日】2014年8月4日
(31)【優先権主張番号】特願2010-208891(P2010-208891)
(32)【優先日】2010年9月17日
(33)【優先権主張国】JP
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103090
【弁理士】
【氏名又は名称】岩壁 冬樹
(74)【代理人】
【識別番号】100124501
【弁理士】
【氏名又は名称】塩川 誠人
(72)【発明者】
【氏名】蝶野 慶一
(72)【発明者】
【氏名】仙田 裕三
(72)【発明者】
【氏名】田治米 純二
(72)【発明者】
【氏名】青木 啓史
(72)【発明者】
【氏名】先崎 健太
【審査官】 岩井 健二
(56)【参考文献】
【文献】 特開2006−148878(JP,A)
【文献】 特開平09−187008(JP,A)
【文献】 Keiichi Chono et al.,Description of video coding technology proposal by NEC Corporation,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,1st Meeting: Dresden, DE,2010年 4月,JCTVC-A104,pp.1-18
【文献】 Thomas Davies et al.,Suggestion for a Test Model,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,1st Meeting: Dresden, DE,2010年 4月,JCTVC-A033,pp.1-6,12-15,19-21
【文献】 Greg Conklin and Neelesh Gokhale,Dithering 5-tap Filter for Inloop Deblocking,Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6),3rd Meeting: Fairfax, Virginia, USA,2002年 5月,JVT-C056,pp.1-12
【文献】 Test Model under Consideration,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,2nd Meeting: Geneva, CH,2010年 7月,JCTVC-B205_draft000,pp.1-5,100-110,132-133,140-142
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 − 19/98
(57)【特許請求の範囲】
【請求項1】
量子化インデックスを逆量子化して量子化代表値を得る逆量子化手段と、
前記逆量子化手段によって得られた量子化代表値を逆変換して再構築画像ブロックを得る逆周波数変換手段と、
前記再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる雑音混入手段とを備え
前記再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限する
映像符号化装置。
【請求項2】
前記非対称な領域を前記再構築画像ブロックの補助情報を用いて調節する調節手段を備えた請求項1記載の映像符号化装置。
【請求項3】
量子化インデックスを逆量子化して量子化代表値を得る逆量子化手段と、
前記逆量子化手段によって得られた量子化代表値を逆変換して再構築画像ブロックを得る逆周波数変換手段と、
前記再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる雑音混入手段とを備え
前記再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限する
映像復号装置。
【請求項4】
前記非対称な領域を前記再構築画像ブロックの補助情報を用いて調節する調節手段を備えた請求項記載の映像復号装置。
【請求項5】
量子化インデックスを逆量子化して量子化代表値を得て、
得られた量子化代表値を逆変換して再構築画像ブロックを得て、
前記再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させ
前記再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限する
映像符号化方法。
【請求項6】
量子化インデックスを逆量子化して量子化代表値を得て、
得られた量子化代表値を逆変換して再構築画像ブロックを得て、
前記再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させ
前記再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限する
映像復号方法。
【請求項7】
コンピュータに、
量子化インデックスを逆量子化して量子化代表値を得る処理と、
得られた量子化代表値を逆変換して再構築画像ブロックを得る処理と、
前記再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる処理と
前記再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限する処理と
を実行させるための映像符号化プログラム。
【請求項8】
コンピュータに、
量子化インデックスを逆量子化して量子化代表値を得る処理と、
得られた量子化代表値を逆変換して再構築画像ブロックを得る処理と、
前記再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる処理と
前記再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限する処理と
を実行させるための映像復号プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像符号化技術が適用された映像符号化装置および映像復号装置に関する。
【背景技術】
【0002】
一般に、映像符号化装置は、外部から入力される動画像信号をディジタル化した後、所定の映像符号化方式に準拠した符号化処理を行うことで符号化データすなわちビットストリームを生成する。
【0003】
所定の映像符号化方式として非特許文献1に記載されたISO/IEC 14496-10 Advanced Video Coding(AVC)がある。AVC方式の符号化器の参照モデルとしてJoint Model 方式が知られている(以下、一般的な映像符号化装置という)。
【0004】
図21を参照して、ディジタル化された映像の各フレームを入力としてビットストリームを出力する一般的な映像符号化装置の構成と動作を説明する。
【0005】
図21に示すように、一般的な映像符号化装置は、MBバッファ101、周波数変換部102、量子化部103、エントロピー符号化部104、逆量子化部105、逆周波数変換部106、ピクチャバッファ107、歪み除去フィルタ部108a、デコードピクチャバッファ109、イントラ予測部110、フレーム間予測部111、符号化制御部112およびスイッチ100を備えている。
【0006】
一般的な映像符号化装置は、各フレームをMB(Macro Block :マクロブロック)とよばれる16×16画素サイズのブロックに分割し、さらにMBを4×4画素サイズのブロック分割し、分割して得られた4×4ブロックを符号化の最小構成単位とする。
【0007】
図22は、フレームの空間解像度がQCIF(Quarter Common Intermediate Format)の場合のブロック分割の例を示す説明図である。以下、簡単のために、輝度の画素値のみに着目して、図21に示された各部の動作を説明する。
【0008】
MBバッファ101には、入力画像フレームの符号化対象MBの画素値が格納される。以下、符号化対象MBを入力MBという。MBバッファ101から供給される入力MBは、スイッチ100を介して、イントラ予測部110またはフレーム間予測部111から供給される予測信号が減じられる。以下、予測信号が減じられた入力MBを予測誤差画像ブロックという。
【0009】
イントラ予測部110は、ピクチャバッファ107に格納された再構築画像であって現在のフレームと表示時刻が同一である再構築画像を利用してイントラ予測信号を生成する。以下、イントラ予測信号を用いて符号化されるMBをイントラMBという。
【0010】
フレーム間予測部111は、現在のフレームと表示時刻が異なる、デコードピクチャバッファ109に格納された参照画像を利用してフレーム間予測信号を生成する。以下、フレーム間予測信号を用いて符号化されるMBをインターMBという。
【0011】
なお、イントラMBのみで符号化されたフレームはIフレームと呼ばれる。イントラMBだけでなくインターMBも含めて符号化されたフレームはPフレームと呼ばれる。フレーム間予測信号の生成に1枚の参照画像だけでなく同時に2枚の参照画像を用いるインターMBを含めて符号化されたフレームはBフレームと呼ばれる。
【0012】
符号化制御部112は、イントラ予測信号およびフレーム間予測信号とMBバッファ101に格納されている入力MBとを比較して、予測誤差画像ブロックのエネルギーが小さくなる予測信号を選択し、スイッチ100を制御する。選択された予測信号に関連する情報(イントラ予測モード、イントラ予測方向、およびフレーム間予測に関連する情報)は、エントロピー符号化部104に供給される。
【0013】
また、符号化制御部112は、入力MBまたは予測誤差画像ブロックに基づいて、予測誤差画像ブロックの周波数変換に適した整数DCT(Discrete Cosine Transform )の基底ブロックサイズを選択する。整数DCTは、一般的な映像符号化装置ではDCT基底を整数値で近似した基底による周波数変換を意味する。基底ブロックサイズの選択肢として、16×16、8×8、4×4の3つのブロックサイズがある。入力MBまたは予測誤差画像ブロックの画素値が平坦になる程、より大きな基底ブロックサイズが選択される。選択された整数DCTの基底サイズに関する情報は、周波数変換部102およびエントロピー符号化部104に供給される。以下、選択された予測信号に関連する情報、選択された整数DCTの基底サイズなどに関する情報、および後述する量子化パラメータを補助情報と呼ぶ。
【0014】
さらに、符号化制御部112は、目標ビット数以下でフレームを符号化するために、エントロピー符号化部104が出力するビットストリームのビット数を監視する。そして、出力されるビットストリームのビット数が目標ビット数よりも多ければ量子化ステップサイズを大きくする量子化パラメータを出力し、逆に出力されるビットストリームのビット数が目標ビット数よりも少なければ量子化ステップサイズを小さくする量子化パラメータを出力する。そのようにして、出力ビットストリームは目標のビット数に近づくように符号化される。
【0015】
周波数変換部102は、選択された整数DCTの基底サイズで、予測誤差画像ブロックを周波数変換して空間領域から周波数領域に変換する。周波数領域に変換された予測誤差を変換係数という。
【0016】
量子化部103は、符号化制御部112から供給される量子化パラメータに対応する量子化ステップサイズで、変換係数を量子化する。なお、量子化された変換係数の量子化インデックスはレベルとも呼ばれる。
【0017】
エントロピー符号化部104は、補助情報と量子化インデックスとをエントロピー符号化して、そのビット列すなわちビットストリームとして出力する。
【0018】
逆量子化部105および逆変換部106は、以後の符号化のために、量子化部103から供給される量子化インデックスを逆量子化して量子化代表値を得て、さらに逆周波数変換して元の空間領域に戻す。以下、元の空間領域に戻された予測誤差画像ブロックを再構築予測誤差画像ブロックという。
【0019】
ピクチャバッファ107には、現在のフレームに含まれる全てのMBが符号化されるまで、再構築予測誤差画像ブロックに予測信号が加えられた再構築画像ブロックが格納される。以下、ピクチャバッファ107において再構築画像によって構成されるピクチャを再構築画像ピクチャという。
【0020】
歪み除去フィルタ部108aは、再構築画像の各MBおよびその内部ブロックの境界にフィルタを適用し、ピクチャバッファ107に格納された再構築画像に対して歪み(ブロック歪みとバンディング歪み)を除去する処理を行う。
【0021】
図23および図24は、歪み除去フィルタ部108aの動作を説明するための説明図である。
【0022】
歪み除去フィルタ部108aは、図23に示すように、MBおよびその内部ブロックの水平方向のブロック境界に対してフィルタを適用する。また、図24に示すように、MBおよびその内部ブロックの垂直方向のブロック境界に対してフィルタを適用する。水平方向のブロック境界は、0,4,8,12の4×4ブロックの左側のブロック境界、1,5,9,13の4×4ブロックの左側のブロック境界、2,6,10,14の4×4ブロックの左側のブロック境界、および3,7,11,15の4×4ブロックの左側のブロック境界である。また、垂直方向のブロック境界は、0,1,2,3の4×4ブロックの上側のブロック境界、4,5,6,7の4×4ブロックの上側のブロック境界、8,9,10,11の4×4ブロックの上側のブロック境界、および12,13,14,15の4×4ブロックの上側のブロック境界である。
【0023】
ただし、8×8ブロックサイズの整数DCTを用いたMBでは、0,4,8,12の4×4ブロックの左側のブロック境界、2,6,10,14の4×4ブロックの左側のブロック境界、0,1,2,3の4×4ブロックの上側のブロック境界、および8,9,10,11の4×4ブロックの上側のブロック境界のみが歪み除去対象のブロック境界になる。また、16×16ブロックサイズの整数DCTの基底が16×16ブロックサイズのDCT基底を整数値で近似した基底であり、かつ、16×16ブロックサイズの整数DCTを用いたMBでは、0,4,8,12の4×4ブロックの左側のブロック境界、および、0,1,2,3の4×4ブロックの上側のブロック境界のみが歪み除去対象のブロック境界になる。
【0024】
水平方向のブロック境界に対するフィルタの処理については、ブロック境界を中心とする左側のフィルタ前の画素をp3,p2,p1,p0、フィルタ後の画素をP3,P2,P1,P0とし、ブロック境界を中心とする右側のフィルタ前の画素をq0,q1,q2,q3、フィルタ後の画素をQ0,Q1,Q2,Q3とする。
【0025】
垂直方向のブロック境界に対するフィルタの処理については、ブロック境界を中心とする上側のフィルタ前の画素をp3,p2,p1,p0、フィルタ後の画素をP3,P2,P1,P0とし、ブロック境界を中心とする下側のフィルタ前の画素をq0,q1,q2,q3、フィルタ後の画素をQ0,Q1,Q2,Q3とする。
【0026】
ただし、P3,P2,P1,P0,Q0,Q1,Q2,Q3は、p3,p2,p1,p0,q0,q1,q2,q3で初期化されているとする。
【0027】
水平方向と垂直方向とでブロック境界に対するフィルタ処理は同じである。そこで、以下、水平方向と垂直方向とを特に区別をせずに、ブロック境界に対するフィルタ処理を説明する。また、歪み除去フィルタ部108aの内部構成を図25に示す。
【0028】
図25に示す歪み除去フィルタ部108aにおいて、まず、ブロック境界強度決定部1081は、非特許文献1の8.7 Deblocking filter process を参照すると、隣接ブロックの補助情報に基づいてブロック境界強度bS(0≦bS≦4)を決定する。図26は、bSを決定する処理を示すフローチャートである。
【0029】
ブロック境界強度決定部1081は、ブロック境界の画素p0と画素q0のいずれかがイントラMBの画素である場合には(ステップS101)、画素p0と画素q0とがMBの境界の左右の画素であるか否か判定する(ステップS102)。画素p0と画素q0とがMBの境界の左右の画素である場合にはbSを4に決定し、MBの境界の左右の画素ではない場合にはbSを3に決定する。
【0030】
ブロック境界強度決定部1081は、画素p0と画素q0とのいずれもイントラMBの画素でない場合には、画素p0と画素q0がそれぞれ属するブロックのいずれかに量子化インデックスが存在するか否か判定する(ステップS103)。ブロック境界強度決定部1081は、画素p0と画素q0が属するそれぞれブロックのいずれかに量子化インデックスが存在する場合には、bSを2に決定する。画素p0と画素q0がそれぞれ属するブロックに量子化インデックスが存在しない場合には、画素p0と画素q0とで、フレーム間予測に不連続があるか否か判定する(ステップS104)。フレーム間予測に不連続がある場合にはbSを1に決定し、フレーム間予測に不連続がない場合にはbSを0に決定する。
【0031】
なお、bSを決定する処理のより詳細な説明が、非特許文献1の8.7.2 Filtering process for a set of samples across a horizontal or vertical block edge に記載されている。
【0032】
bSが大きな値になるほど、ブロック境界の変動量が大きいと判定し、強度の高いフィルタが適用される。bS=0では、フィルタは適用されない。
【0033】
次に、bS>0のブロック境界についてのみ、bS=4とbS<4の場合に分けて、非特許文献1に基づく非特許文献2における、ブロック境界に対する擬似ランダム雑音を用いたフィルタ処理を説明する。
【0034】
bS=4の場合、処理対象のブロック境界の行(水平フィルタ時)または列(垂直フィルタ時)pos(0≦pos≦16)のエッジ毎に、エッジ判定部1082は|p0−q0|<α/4かつ|p1−p0|<βであるエッジをフィルタ対象エッジと決定する。フィルタ部1083は、posに対応した擬似ランダム雑音ditherP [pos](1≦ditherP [pos]≦7)を用いた以下の式でP0,P1,P2をそれぞれ計算する。
【0035】
P0=(p2+2*p1+2*p0+2*q0+q1+ditherP[pos])/8 (1)
P1=(p3+2*p2+2*p1+2*p0+q0+ditherP[pos])/8 (2)
P2=(2*p3+3*p2+p1+p0+q0+ditherP[pos])/8 (3)
【0036】
ただし、αとβはそれぞれ量子化パラメータQの値が大きくなるほど大きな値となるパラメータであり、posは処理対象のブロック位置の座標に対する位置である。
【0037】
同様に、bS=4の場合、処理対象のブロック境界の行(水平フィルタ時)または列(垂直フィルタ時)pos(0≦pos≦16)のエッジ毎に、エッジ判定部1082は|p0−q0|<α/4かつ|q1−q0|<βであるエッジをフィルタ対象エッジと決定する。フィルタ部1083は、posに対応した擬似ランダム雑音ditherQ [pos](1≦ditherQ [pos]≦7)を用いた以下の式でQ0,Q1,Q2を計算する。
【0038】
Q0=(q2+2*q1+2*q0+2*p0+p1+ditherQ[pos])/8 (4)
Q1=(q3+2*q2+2*q1+2*q0+p0+ditherQ[pos])/8 (5)
Q2=(2*q3+3*q2+q1+q0+p0+ditherQ[pos])/8 (6)
【0039】
式(1)から式(6)に示すように擬似ランダム雑音をブロック境界に混入させることによって、ブロック歪みが除去されるだけでなく、バンディング歪みも視覚的に目立ちにくくなる。
【0040】
bS<4の場合、処理対象のブロック境界の行(水平フィルタ時)または列(垂直フィルタ時)pos(0≦pos≦16)のエッジ毎に、エッジ判定部1082は|p0−p2|<βであるエッジをフィルタ対象エッジと決定する。フィルタ部1083は、以下の式でP0を計算する。
【0041】
P0=p0+Clip3{-tc,tc,(2*(q0-p0)+p1-q1+4)/8} (7)
【0042】
ただし、tcは、bSおよび量子化パラメータQの値が大きいほど大きな値となるパラメータである。
【0043】
同様に、bS<4の場合、処理対象のブロック境界の行(水平フィルタ時)または列(垂直フィルタ時)pos(0≦pos≦16)のエッジ毎に、エッジ判定部1082は|q0−q2|<βであるエッジをフィルタ対象エッジと決定する。フィルタ部1083は、以下の式でQ0を計算する。
【0044】
Q0=q0-Clip3{-tc,tc,(2*(q0-p0)+p1-q1+4)/8} (8)
【0045】
デコードピクチャバッファ109は、歪み除去フィルタ部108aから供給される、ブロック歪みとリンギング歪みが除去された歪み除去再構築画像ピクチャを参照画像ピクチャとして格納する。なお、参照画像ピクチャの画像は、フレーム間予測信号を生成するための参照画像として利用される。
【0046】
図21に示された映像符号化装置は、上述した処理によって、ビットストリームを生成する。
【先行技術文献】
【非特許文献】
【0047】
【非特許文献1】ISO/IEC 14496-10 Advanced Video Coding
【非特許文献2】G. Conklin and N. Gokhale ,”Dithering 5-tap Filter for Inloop Deblocking”,Joint Video Team(JVT ) of ISO/IEC MPEG & ITU-T VCEG ,JVT-C056,2002年 5月
【非特許文献3】”Test Model under Consideration”,Document:JCTVC-B205,Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 2nd Meeting :Geneva,CH,21-28 July,2010
【発明の概要】
【発明が解決しようとする課題】
【0048】
上述した一般的な歪み除去フィルタは、ブロック境界を中心とする対称な領域に擬似ランダム雑音を画像に混入させる。16×16画素サイズのMBを符号化単位とするJoint Model 方式においては、MB一行の処理に必要な参照ラインバッファのライン数は4ラインになる(図27参照)。
【0049】
しかし、周波数変換のブロックサイズが大きいほど、バンディング歪みを視覚的に目立ちにくくするために必要な擬似ランダム雑音の混入領域は広くなる。例えば、周波数変換ブロックサイズが16×16の場合は、ブロック境界を中心とする対称な8画素(周波数変換ブロックサイズの一辺の半分)の領域に擬似ランダム雑音を画像に混入させることが望ましい。その場合には、図28に示すように、MB一行の処理に必要な参照ラインバッファのライン数は8ラインになる。
【0050】
ゆえに、MBの大きさを16×16画素サイズよりも大きくできる非特許文献3に記載されたTest Model under Consideration(TMuC方式)のような映像符号化方式に対して、一般的な歪み除去フィルタをそのまま用いると、その処理に必要な参照ラインバッファのライン数が大きく増大する課題がある。
【0051】
TMuC方式においては、非特許文献3の7節 Unit definition を引用すると、MBに対応する概念がCoding Tree Block (CTB)であり、16×16固定ではなく、128×128から8×8の範囲で可変となっている(図29参照)。なお、最大のCoding Tree BlockをLargest Coding Tree Block(LCTB)、最小のCoding Tree BlockをSmallest Coding Tree Block(SCTB)と呼ぶ。また、本明細書においては、CTBのブロックをCoding Unit (CU)と呼ぶ。
【0052】
さらに、TMuC方式においては、Coding Tree Block に対する予測モードの処理単位としてPrediction unit (PU)という概念(図30参照)、Coding Tree Block に対する周波数変換の処理単位としてTransform unit(TU)という概念(図31参照)が導入されている。TUは、64×64から4×4の範囲で可変となっている。なお、図30の説明図を参照すると、イントラ予測モードでは、図30に示された形状のうち正方形のみがサポートされている。
【0053】
例えば、LCTBのサイズを64×64およびTUの最大サイズを64×64とするTMuC方式において、ブロック境界を中心とする対称な周波数変換ブロックサイズの一辺の半分の領域に擬似ランダム雑音を画像に混入させる一般的な歪み除去フィルタは、その処理に必要な参照ラインバッファのライン数は32ラインになる(図32参照)。
【0054】
本発明は、擬似ランダム雑音混入処理における参照ラインバッファのライン数を増大させないことを目的とする。
【課題を解決するための手段】
【0055】
本発明による映像符号化装置は、量子化インデックスを逆量子化して量子化代表値を得る逆量子化手段と、逆量子化手段によって得られた量子化代表値を逆変換して再構築画像ブロックを得る逆周波数変換手段と、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる雑音混入手段とを備え、再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限することを特徴とする。
【0056】
本発明による映像復号装置は、量子化インデックスを逆量子化して量子化代表値を得る逆量子化手段と、逆量子化手段によって得られた量子化代表値を逆変換して再構築画像ブロックを得る逆周波数変換手段と、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる雑音混入手段とを備え、再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限することを特徴とする。
【0057】
本発明による映像符号化方法は、量子化インデックスを逆量子化して量子化代表値を得て、得られた量子化代表値を逆変換して再構築画像ブロックを得て、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させ、再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限することを特徴とする。
【0058】
本発明による映像復号方法は、量子化インデックスを逆量子化して量子化代表値を得て、得られた量子化代表値を逆変換して再構築画像ブロックを得て、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させ、再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限することを特徴とする。
【0059】
本発明による映像符号化プログラムは、コンピュータに、量子化インデックスを逆量子化して量子化代表値を得る処理と、得られた量子化代表値を逆変換して再構築画像ブロックを得る処理と、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる処理と、再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限する処理とを実行させることを特徴とする。
【0060】
本発明による映像復号プログラムは、コンピュータに、量子化インデックスを逆量子化して量子化代表値を得る処理と、得られた量子化代表値を逆変換して再構築画像ブロックを得る処理と、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる処理と、再構築画像ブロックの境界を中心とする非対称な領域の片方の最大領域を参照ラインバッファのライン数で制限する処理とを実行させることを特徴とする。
【発明の効果】
【0061】
本発明による映像符号化装置および映像復号装置は、ブロック境界を中心に非対称に擬似ランダム雑音を画像に混入させる手段を備えているので、大きなブロックサイズを用いる映像符号化においても、擬似ランダム雑音混入処理において参照ラインバッファのライン数を所定のサイズに制約できる。
【図面の簡単な説明】
【0062】
図1】本発明における参照ラインバッファを説明するための説明図である。
図2】第1の実施形態の映像符号化装置の構成を示すブロック図である。
図3】非対称歪み除去フィルタの水平方向のフィルタの適用を説明するための説明図である。
図4】非対称歪み除去フィルタの垂直方向のフィルタの適用を説明するための説明図である。
図5】非対称歪み除去フィルタの構成を示すブロック図である。
図6】ブロック境界強度決定部の動作を示すフローチャートである。
図7】エッジ判定部の動作を示すフローチャートである。
図8】擬似ランダム雑音混入領域決定部の動作を示すフローチャートである。
図9】第2の実施形態の映像復号装置の構成を示すブロック図である。
図10】Planar予測を説明するための説明図である。
図11】Planar予測を説明するための説明図である。
図12】Planar予測を説明するための説明図である。
図13】ブロック境界強度決定部の動作を示すフローチャートである。
図14】エッジ判定部の動作を示すフローチャートである。
図15】擬似ランダム雑音混入領域決定部の動作を示すフローチャートである。
図16】本発明による映像符号化装置および映像復号装置の機能を実現可能な情報処理システムの構成例を示すブロック図である。
図17】本発明による映像符号化装置の主要部を示すブロック図である。
図18】本発明による映像復号装置の主要部を示すブロック図である。
図19】本発明による映像符号化装置の処理を示すフローチャートである。
図20】本発明による映像復号装置の処理を示すフローチャートである。
図21】一般的な映像符号化装置の構成を示すブロック図である。
図22】ブロック分割の例を示す説明図である。
図23】歪み除去フィルタの水平方向のフィルタの適用を説明するための説明図である。
図24】歪み除去フィルタの垂直方向のフィルタの適用を説明するための説明図である。
図25】歪み除去フィルタの構成を示すブロック図である。
図26】bSの決定処理を示すフローチャートである。
図27】ライン数が4の場合の参照ラインバッファを説明するための説明図である。
図28】ライン数が8の場合の参照ラインバッファを説明するための説明図である。
図29】CTBを説明するための説明図である。
図30】PUを説明するための説明図である。
図31】TUを説明するための説明図である。
図32】ライン数が32の場合の参照ラインバッファを説明するための説明図である。
【発明を実施するための形態】
【0063】
本発明では、歪み除去フィルタの処理に必要な参照ラインバッファのライン数が周波数変換のブロックサイズの大きさに応じて増加する問題を回避するために、バンディング歪みを視覚的に目立ちにくくするための条件が「隣接するブロックが覆われるように擬似ランダム雑音が混入すること」であることに着目し、映像符号化装置および映像復号装置は、ブロック境界を中心とする非対称な領域に擬似ランダム雑音混入させる手段を備える。なお、隣接するブロックが覆われるとは、非対称な領域の合計が、ブロックサイズの一辺と同一になるという意味である。
【0064】
つまり、本発明においては、参照ラインバッファのライン数を固定(N)とし、少なくとも水平方向のブロック境界の歪み除去において、Nの2倍以上の一辺[M(2*N≦M)]を持つM×Mの周波数変換ブロックのブロック境界に対して、ブロック境界の上側に対する擬似ランダム雑音の混入最大領域をNで制限し、代わりに、ブロック境界の下側に対する擬似ランダム雑音の混入最大領域をM−Nまで許容する。NにM−Nを加えるとMとなるので、非対称な領域に擬似ランダム雑音混入させることによっても、隣接するブロックが覆われることが分かる。N=8、M=64の例を図1に示す。
【0065】
実施形態1.
本実施形態においては、参照ラインバッファのライン数を8(N=8)と制限し、16画素以上の一辺[M×M (M=16,32,64)]の周波数変換ブロックの水平方向と垂直方向のブロック境界に対する歪み除去において、ブロック境界の上側(垂直方向のブロック境界の場合)および左側(水平方向のブロック境界の場合)に対する擬似ランダム雑音の混入最大領域をNで制限し、代わりに、ブロック境界の下側(垂直方向のブロック境界の場合)および右側(水平方向のブロック境界の場合)に対する擬似ランダム雑音の混入最大領域をM−Nまで許容する、非対称歪み除去フィルタを用いる映像符号化装置を説明する。つまり、本実施形態において、雑音混入手段の一例である歪み除去フィルタは、M=32と64の周波数変換ブロックに対して、ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる。
【0066】
図2は、本実施形態の映像符号化装置を示すブロック図である。図2に示す本実施形態の映像符号化装置は、図21に示す一般的な映像符号化装置と比較すると、歪み除去フィルタ108aが非対称歪み除去フィルタ108と置き換わっていることが分かる。以下、本発明の特徴である非対称歪み除去フィルタ108の構成と動作を説明する。
【0067】
図3および図4は、非対称歪み除去フィルタ部108の動作を説明するための説明図である。
【0068】
非対称歪み除去フィルタ部108は、図3に示すように、CU/PU/TUの水平方向のブロック境界に対してフィルタを適用する。また、図4に示すように、CU/PU/TUの垂直方向のブロック境界に対してフィルタを適用する。上述したように、CU/PU/TUのブロックサイズは可変となるので、図3および図4においては、ブロックサイズを指定しない。
【0069】
図3に示す水平方向のブロック境界に対するフィルタの処理については、ブロック境界を中心とする左側のフィルタ前の画素をブロック境界からp0,p1,p2,…、フィルタ後の画素をP0,P1,P2,…とし、ブロック境界を中心とする右側のフィルタ前の画素をブロック境界からq0,q1,q2,q3,…、フィルタ後の画素をQ0,Q1,Q2,Q3,…とする。
【0070】
図4に示す垂直方向のブロック境界に対するフィルタの処理については、ブロック境界を中心とする上側のフィルタ前の画素をブロック境界からp0,p1,p2,…、フィルタ後の画素をP0,P1,P2,…とし、ブロック境界を中心とする下側のフィルタ前の画素をブロック境界からq0,q1,q2,q3,…、フィルタ後の画素をQ0,Q1,Q2,Q3,…とする。
【0071】
ただし、…,P3,P2,P1,P0,Q0,Q1,Q2,Q3,…は、…,p3,p2,p1,p0,q0,q1,q2,q3,…でそれぞれ初期化されているとする。
【0072】
水平方向と垂直方向とでブロック境界に対するフィルタ処理は同じである。そこで、以下、水平方向と垂直方向とを特に区別をせずに、ブロック境界に対するフィルタ処理を説明する。また、非対称歪み除去フィルタ部108の内部構成を図5に示す。
【0073】
図5に示す非対称歪み除去フィルタ108を構成する、ブロック境界強度決定部1081、エッジ判定部1082、およびフィルタ部1083は、図25に示されたものと同等である。擬似ランダム雑音混入領域決定部1084は、図25に示された歪み除去フィルタ108aに存在しない機能ブロックである。擬似ランダム雑音混入領域決定部1084は、ブロック境界強度決定部1081から供給されるブロック境界強度(bS)と外部から供給されるブロックの補助情報を用いて、ブロックの境界を中心とする非対称な擬似ランダム雑音混入領域(擬似ランダム雑音混入範囲)を計算する。計算された擬似ランダム雑音混入範囲はフィルタ部1083に供給される。
【0074】
以下、ブロック境界強度決定部1081、エッジ判定部1082、擬似ランダム雑音混入領域決定部1084、フィルタ部1083の順でその動作を説明する。
【0075】
ブロック境界強度決定部1081は、非対称歪み除去フィルタ108の外部から供給されるブロックの補助情報に基づいてブロック境界強度bS(0≦bS≦3)を決定する。図6は、bSを決定する処理を示すフローチャートである。
【0076】
ブロック境界強度決定器1081は、ブロック境界の画素p0とブロック境界の画素q0のいずれかがイントラPUの画素である場合には(ステップS1001)、bSを3に決定する。
【0077】
ブロック境界強度決定器1081は、画素p0と画素q0とのいずれもイントラPUの画素でない場合には、画素p0と画素q0がそれぞれ属するブロックのいずれかに量子化インデックスが存在するか否か判定する(ステップS1002)。画素p0と画素q0が属するそれぞれブロックのいずれかに量子化インデックスが存在する場合には、bSを2に決定する。
【0078】
ブロック境界強度決定器1081は、画素p0と画素q0がそれぞれ属するブロックに量子化インデックスが存在しない場合には、画素p0と画素q0とで、フレーム間予測に不連続があるか否か判定する(ステップS1003)。フレーム間予測に不連続がある場合にはbSを1に決定し、フレーム間予測に不連続がない場合にはbSを0に決定する。
【0079】
エッジ判定部1082は、ブロック境界強度決定器1081から供給されるbSと外部から供給される再構築画像とを用いて、フィルタ部1083でのフィルタ処理を決定する。図7は、そのフローチャートである。
【0080】
エッジ判定部1082は、処理対象のブロック境界の8つの行(水平方向ブロック境界)または8つの列(垂直方向ブロック境界)に対応する8つのエッジ毎に、以下の条件1を満たすか否かを判断する。条件1を満たさない場合には、8つのエッジに対してフィルタ処理なしと判断する(ステップS2001)。
【0081】
条件1:
bSが0より大きい、かつ、
d=|p22-2*p12+p02|+|q22-2*q12+q02|+|p25-2*p15+p05|+|q25-2*q15+q05|<β
を満たす。
【0082】
ただし、条件1における下付きの数字は、非特許文献3の5.4.1節 Deblocking filter process の”Notation of an 8 pixels part of vertical edge for deblocking”に記載される、処理対象8エッジのインデックスである。また、βは、非特許文献3の5.4.1節 Deblocking filter process の”Relation between qp, tc, and beta ”に記載される、量子化パラメータQPに依存したパラメータである。
【0083】
エッジ判定部1082は、条件1を満たす場合には、8つのエッジの各エッジi(0≦i≦7)が、以下の条件2を満たすか否かを判断する。条件2を満たさない場合には、エッジiに対して後述する弱フィルタを適用すると判断する(ステップS2002)。
【0084】
条件2:
d<(β/4)、かつ、
(|p3i−p0i|+|q3i−q0i|)<(β/8)を満たす。かつ、
(|p0i−q0i|)<((5*tc+1)/2)を満たす。
【0085】
ただし、tcは、非特許文献3の5.4.1節 Deblocking filter process の”Relation between qp, tc, and beta ”に記載される、量子化パラメータQPに依存したパラメータである。
【0086】
エッジ判定部1082は、条件2を満たす場合には、各エッジi(0≦i≦7)が、以下の条件3を満たすか否かを判断する。条件3を満たさない場合には、エッジiに対して、後述する強フィルタを適用すると判断する(ステップS2003)。条件3を満たす場合には、エッジiに対して、後述する擬似ランダム混入付き強フィルタを適用すると判断する。
【0087】
擬似ランダム雑音混入領域決定部1084は、ブロック境界強度決定部1081から供給されるブロック境界強度(bS)と外部から供給されるブロックの補助情報を用いて、ブロック境界画素p0側の擬似ランダム雑音混入領域のサイズpSize 、および、ブロック境界画素q0側の擬似ランダム雑音混入領域のサイズqSize を計算する。図8は、そのフローチャートである。
【0088】
擬似ランダム雑音混入領域決定部1084は、入力されたブロック境界画素が属するブロックの補助情報を用いて、ブロックが所定の大きさ(本実施形態では16×16)のイントラ予測であるか否かを判断する(ステップS3001)。16×16以上のイントラ予測でない場合、擬似ランダム雑音混入領域のサイズを0とする。なお、イントラ予測の大きさだけでなく、エッジ境界とその周辺画素について、例えば、ブロック境界画素がq0の場合、|p0−q0|≦1および|q0−q7|≦1を満たす平坦か(ブロック境界画素がp0の場合|p0−q0|≦1および|p0−p7|≦1を満たす平坦か)も判断し、平坦でない時には擬似ランダム雑音混入領域のサイズを0としてもよい。また、ステップS2001の条件1で計算したdが所定のしきい値よりも小さい場合に平坦と判断してもよい。
【0089】
擬似ランダム雑音混入領域決定部1084は、入力されたブロック境界画素が属するブロックが16×16以上のイントラ予測である場合、入力されたブロック境界画素がp0であるか否かを判断する(ステップS3002)。入力されたブロック境界画素がp0である場合、擬似ランダム雑音混入領域のサイズをN(N=8)と決定する。そうでない場合、q0の属するブロックM×M(M=16,32,64)の一辺のサイズMを用いて、擬似ランダム雑音混入領域のサイズをM−Nと決定する。
【0090】
フィルタ部1083は、各エッジ(0≦i≦7)に対して、エッジ判定部1082が決定したフィルタ処理を適用する。弱フィルタ、強フィルタ、および擬似ランダム混入付き強フィルタのそれぞれを以下で説明する。
【0091】
弱フィルタが適用される場合、エッジiの画素P0およびQ0を以下の式で計算する。
【0092】
P0i=Clip0-255(p0i+Clip(-tc,tc,(13*(q0i-p0i)+4*(q1i-p1i)-5*(q2i-p2i)+16)/32)) (9)
Q0i=Clip0-255(q0i-Clip(-tc,tc,(13*(q0i-p0i)+4*(q1i-p1i)-5*(q2i-p2i)+16)/32)) (10)
【0093】
強フィルタが適用される場合、エッジiの画素P2,P1,P0,Q0,Q1,Q2を以下の式で計算する。
【0094】
P0i=Clip0-255((p2i+2*p1i+2*p0i+2*q0i+q1i+4)/8) (11)
P1i=Clip0-255((p2i+p1i+p0i+q0i+2)/4) (12)
P2i=Clip0-255((2*p3i+3*p2i+p1i+p0i+q0i+4)/8) (13)
Q0i=Clip0-255((q2i+2*q1i+2*q0i+2*p0i+p1i+4)/8) (14)
Q1i=Clip0-255((q2i+q1i+q0i+p0i+2)/4) (15)
Q2i=Clip0-255((2*q3i+3*q2i+q1i+q0i+p0i+4)/8) (16)
【0095】
擬似ランダム混入付き強フィルタが適用される場合、擬似ランダム雑音混入領域決定部1084で計算したpSize を用いて、エッジiの画素Pk(0≦k≦pSize )を以下の式で計算する。
【0096】
P0i=Clip0-255(Clip0-255((p2i+2*p1i+2*p0i+2*q0i+q1i+4)/8)+n0i) (17)
P1i=Clip0-255(Clip0-255((p2i+p1i+p0i+q0i+2)/4)+n1i) (18)
P2i=Clip0-255(Clip0-255((2*p3i+3*p2i+p1i+p0i+q0i+4)/8)+n2i) (19)
Pki=Clip0-255(pki+nki) (3≦k≦pSize) (20)
【0097】
ただし、nki=LUT[(idxOffseti−k−1)&(LUTSize−1)]である。LUT[]は擬似ランダム雑音を格納したルックアップテーブルであり、その要素は−1,0,1のいずれかの値をとる。また、LUTSize はルックアップテーブルのサイズである。ルックアップテーブルのオフセットidxOffsetiは、非対称歪み除去の方向に応じて、以下の式で計算される。
【0098】
【数1】
【0099】
ただし、PUPosXはフレームにおける図3に示す垂直エッジの水平位置、PUPosYはフレームにおける図4に示す水平エッジの垂直位置、PITCH は所定の値(例えば16)である。
【0100】
同様に、擬似ランダム混入付き強フィルタが適用される場合、擬似ランダム雑音混入領域決定部1084で計算したqSize を用いて、エッジiの画素Qk(0≦k≦qSize )を以下の式で計算する。
【0101】
Q0i=Clip0-255(Clip0-255((q2i+2*q1i+2*q0i+2*p0i+p1i+4)/8)+n0i) (22)
Q1i=Clip0-255(Clip0-255((q2i+q1i+q0i+p0i+2)/4)+n1i) (23)
Q2i=Clip0-255(Clip0-255((2*q3i+3*q2i+q1i+q0i+p0i+4)/8)+n2i) (24)
Qki=Clip0-255(qki+nki) (3≦k≦qSize) (25)
【0102】
ただし、nki=LUT[(idxOffseti+k)&(LUTSize−1)]である。
【0103】
以上で、本発明の特徴である非対称歪み除去フィルタ108の構成と動作の説明を終了する。
【0104】
本実施形態の映像符号化装置は、参照ラインバッファのライン数を固定(N)とする非対称歪み除去フィルタを用いる。具体的には、少なくとも垂直方向の歪み除去において、Nの2倍以上の一辺[M(2*N≦M)]を持つM×Mの周波数変換ブロックのブロック境界に対して、ブロック境界の上側に対する擬似ランダム雑音の混入最大領域をNで制限し、代わりに、ブロック境界の下側に対する擬似ランダム雑音の混入最大領域をM−Nまで許容する。これによって、バンディング歪みを視覚的に目立ちにくくするための条件「隣接するブロックが覆われるように擬似ランダム雑音が混入すること」を満たしつつ、歪み除去フィルタの処理に必要な参照ラインバッファのライン数が周波数変換のブロックサイズの大きさに応じて増加する問題を克服できる。
【0105】
実施形態2.
本実施形態においては、参照ラインバッファのライン数を8(N=8)と制限し、16画素以上の一辺[M×M (M=16,32,64)]の周波数変換ブロックの水平方向と垂直方向のブロック境界に対する歪み除去において、ブロック境界の上側(垂直方向のブロック境界の場合)および左側(水平方向のブロック境界の場合)に対する擬似ランダム雑音の混入最大領域をNで制限し、代わりに、ブロック境界の下側(垂直方向のブロック境界の場合)および右側(水平方向のブロック境界の場合)に対する擬似ランダム雑音の混入最大領域をM−Nまで許容する、非対称歪み除去フィルタを用いる映像復号装置を説明する。なお、本実施形態の映像復号装置は、第1の実施形態の映像符号化装置に対応する映像復号装置である。
【0106】
図9に示すように、本実施形態の映像復号装置は、エントロピー復号部201、逆量子化部202、逆周波数変換部203、ピクチャバッファ204、非対称歪み除去フィルタ108、デコードピクチャバッファ206、イントラ予測部207、フレーム間予測部208、復号制御部209およびスイッチ200を備えている。
【0107】
エントロピー復号部201は、ビットストリームをエントロピー復号して、復号対象CUの予測信号に関連する情報、整数DCTの基底サイズ、および量子化インデックスを出力する。
【0108】
イントラ予測部207は、現在復号中のフレームと表示時刻が同一である、ピクチャバッファ204に格納された再構築画像を利用してイントラ予測信号を生成する。
【0109】
フレーム間予測部208は、現在復号中のフレームと表示時刻が異なる、デコードピクチャバッファ206に格納された参照画像を利用してフレーム間予測信号を生成する。
【0110】
復号制御部209は、エントロピー復号したフレーム間予測に基づいて、スイッチ200を制御し、イントラ予測信号またはフレーム間予測信号を供給する。
【0111】
逆量子化部202は、エントロピー復号部201から供給される量子化インデックスを逆量子化する。
【0112】
逆変換部203は、第1の実施形態の逆変換部106と同様に、量子化代表値を逆周波数変換して元の空間領域に戻す。
【0113】
ピクチャバッファ204には、現在復号中のフレームに含まれるすべてのCUが復号されるまで、元の空間領域に戻された再構築予測誤差画像ブロックに予測信号が加えられた再構築画像ブロックが格納される。
【0114】
非対称歪み除去フィルタ108は、現在のフレームに含まれるすべてのCUが復号された後、ピクチャバッファ204に格納された再構築画像に対して歪みを除去する。なお、非対称歪み除去フィルタ108の構成は、図5に示されたとおりである。また、非対称歪み除去フィルタ108が実行する処理は、図6図8に示されたとおりである。
【0115】
デコードピクチャバッファ206は、非対称歪み除去フィルタ108から供給される歪み除去された再構築画像を参照画像ピクチャとして格納する。参照画像ピクチャの画像は、フレーム間予測信号を生成するための参照画像として利用される。また、参照画像ピクチャは、適切な表示タイミングで伸張フレームとして出力される。
【0116】
本実施形態の映像復号装置は、上記のような処理によってビットストリームを伸張する。
【0117】
本実施形態の映像復号装置は、対応する映像符号化装置と同様に、バンディング歪みを視覚的に目立ちにくくするための条件「隣接するブロックが覆われるように擬似ランダム雑音が混入すること」を満たしつつ、歪み除去フィルタの処理に必要な参照ラインバッファのライン数が周波数変換のブロックサイズの大きさに応じて増加する問題を克服できる。
【0118】
他の実施形態
非特許文献3のTest Model under Consideration(TMuC方式)においては、5.1.1.3.1節 Specification of intra planar predictionを引用すると、Planar予測という新たな概念のイントラ予測が導入されている。Planar予測では、まず、符号化対象ブロックの右下画像が参照画像を用いた予測符号化に基づいてエンコーダから伝送される(図10参照)。続いて、Planar予測では,伝送された右下画像と符号化対象ブロック周辺の参照画像を用いて、符号化対象ブロック一番右の列と一番下の行の予測画像を1次元の線形補間で計算する(図11参照)。最後に、残りの領域の予測画像を2次元の線形補間で計算する(図12参照)。
【0119】
Planar予測(以後、Planarモードとも呼ぶ)を用いたブロックにおいては予測誤差(原信号と補間画像の差分)を伝送しない。つまり、補間画像がそのまま再構築画像になる。ゆえに、隣接するPlanarモードのブロック境界においては、背景技術の説明で述べた歪み除去とは異なる処理が、非特許文献3の5.4.1節 Deblocking filter process のPlanar mode filtering に記載されている。
【0120】
Planar mode filtering (Planarモードフィルタ)を考慮した場合における、非線形歪み除去フィルタの動作を以下に示す。なお、非線形歪み除去フィルタの構成は変わらない。
【0121】
ブロック境界強度決定部1081は、非線形歪み除去フィルタ108の外部から供給されるブロックの補助情報に基づいてブロック境界強度bS(0≦bS≦4)を決定する。図13は、bSを決定する処理を示すフローチャートである。
【0122】
ブロック境界強度決定器1081は、ブロック境界の画素p0とブロック境界の画素q0とが同じブロックサイズのPlanarモードである場合には(ステップS1000)、bSを4に決定する。
【0123】
ブロック境界強度決定器1081は、ブロック境界の画素p0とブロック境界の画素q0とが同じブロックサイズのPlanarモードでない場合には、ブロック境界の画素p0とブロック境界の画素q0のいずれかがイントラPUの画素である場合には(ステップS1001’)、bSを3に決定する。
【0124】
ブロック境界強度決定器1081は、画素p0と画素q0とのいずれもイントラPUの画素でない場合には、画素p0と画素q0がそれぞれ属するブロックのいずれかに量子化インデックスが存在するか否か判定する(ステップS1002)。画素p0と画素q0が属するそれぞれブロックのいずれかに量子化インデックスが存在する場合には、bSを2に決定する。
【0125】
ブロック境界強度決定器1081は、画素p0と画素q0がそれぞれ属するブロックに量子化インデックスが存在しない場合には、画素p0と画素q0とで、フレーム間予測に不連続があるか否か判定する(ステップS1003)。フレーム間予測に不連続がある場合にはbSを1に決定し、フレーム間予測に不連続がない場合にはbSを0に決定する。
【0126】
エッジ判定部1082は、ブロック境界強度決定器1081から供給されるbSと外部から供給される再構築画像とを用いて、フィルタ部1083でのフィルタ処理を決定する。図14は、そのフローチャートである。
【0127】
エッジ判定部1082は、処理対象のブロック境界の8つの行(水平方向ブロック境界)または8つの列(垂直方向ブロック境界)に対応する8つのエッジ毎に、対応するブロック境界がbS=4であるかを判断する(ステップS2000)。bS=4である場合には、8つのエッジに対してPlanarモードフィルタと判断する。
【0128】
エッジ判定部1082は、対応するブロック境界がbS=4で無い場合、上記の8つのエッジ毎に、以下の条件1を満たすか否かを判断する(ステップS2001)。条件1を満たさない場合には、8つのエッジに対してフィルタ処理なしと判断する。
【0129】
条件1:
bSが0より大きい、かつ、
d=|p22-2*p12+p02|+|q22-2*q12+q02|+|p25-2*p15+p05|+|q25-2*q15+q05|<β
を満たす。
【0130】
ただし、条件1における下付きの数字は、非特許文献3の5.4.1節 Deblocking filter processの”Notation of an 8 pixels part of vertical edge for deblocking”に記載される、処理対象8エッジのインデックスである。また、βは、非特許文献3の5.4.1節 Deblocking filter processの”Relation between qp, tc, and beta ”に記載される、量子化パラメータQPに依存したパラメータである。
【0131】
エッジ判定部1082は、条件1を満たす場合には、8つのエッジの各エッジi(0≦i≦7)が、以下の条件2を満たすか否かを判断する(ステップS2002)。条件2を満たさない場合には、エッジiに対して後述する弱フィルタを適用すると判断する。
【0132】
条件2:
d<(β/4)、かつ、
(|p3i−p0i|+|q3i−q0i|)<(β/8)を満たす。かつ、
(|p0i−q0i|)<((5*tc+1)/2)を満たす。
【0133】
ただし、tcは、非特許文献3の5.4.1節 Deblocking filter processの”Relation between qp, tc, and beta ”に記載される、量子化パラメータQPに依存したパラメータである。
【0134】
エッジ判定部1082は、条件2を満たす場合には、各エッジi(0≦i≦7)が、以下の条件3を満たすか否かを判断する(ステップS2003)。条件3を満たさない場合には、エッジiに対して、後述する強フィルタを適用すると判断する。条件3を満たす場合には、エッジiに対して、後述する擬似ランダム混入付き強フィルタを適用すると判断する。
【0135】
擬似ランダム雑音混入領域決定部1084は、ブロック境界強度決定部1081から供給されるブロック境界強度(bS)と外部から供給されるブロックの補助情報を用いて、ブロック境界画素p0側の擬似ランダム雑音混入領域のサイズpSize 、および、ブロック境界画素q0側の擬似ランダム雑音混入領域のサイズqSize を計算する。図15は、そのフローチャートである。
【0136】
擬似ランダム雑音混入領域決定部1084は、入力されたブロック境界画素が属するブロックの補助情報を用いて、ブロックが所定の大きさ(本実施形態では16×16)のイントラ予測であるか否かを判断する(ステップS3001)。16×16以上のイントラ予測でない場合、擬似ランダム雑音混入領域のサイズを0とする。なお、イントラ予測の大きさだけでなく、エッジ境界とその周辺画素について、例えば、ブロック境界画素がq0の場合、|p0−q0|≦1および|q0−q7|≦1を満たす平坦か(ブロック境界画素がp0の場合|p0−q0|≦1および|p0−p7|≦1を満たす平坦か)も判断し、平坦でない時には擬似ランダム雑音混入領域のサイズを0としてもよい。また、ステップS2001の条件1で計算したdが所定のしきい値よりも小さい場合に平坦と判断してもよい。
【0137】
擬似ランダム雑音混入領域決定部1084は、入力されたブロック境界画素が属するブロックが16×16以上のイントラ予測である場合、入力されたブロック境界画素がPlanarモードのブロックに属するか否かを判断する(ステップS3002a)。入力されたブロック境界画素がPlanarモードのブロックに属さない場合、ステップS3002bに進む。入力されたブロック境界画素がPlanarモードのブロックに属する場合、ステップS3002cに進む。
【0138】
ステップS3002bでは、擬似ランダム雑音混入領域決定部1084は、入力されたブロック境界画素がp0であるか否かを判断する。入力されたブロック境界画素がp0である場合、擬似ランダム雑音混入領域のサイズをN(N=8)と決定する。そうでない場合、q0の属するブロックM×M(M=16,32,64)の一辺のサイズMを用いて、擬似ランダム雑音混入領域のサイズをM−Nと決定する。
【0139】
ステップS3002cでは、擬似ランダム雑音混入領域決定部1084は、エッジiが以降の水平方向と垂直方向のブロック境界に対するPlanarモードフィルタの基準画像となる行または列となるかを判断する。エッジiが以降の水平方向と垂直方向のブロック境界に対するPlanarモードフィルタの基準画像となる行または列となる場合、以降の水平方向と垂直方向のブロック境界に対するPlanarモードフィルタの基準画像に対して擬似ランダム雑音を混入させないように、擬似ランダム雑音混入領域のサイズを0と決定する。エッジiが以降の水平方向と垂直方向のブロック境界に対するPlanarモードフィルタの基準画像とならない場合、ステップS3002dに進む。
【0140】
ステップS3002dでは、擬似ランダム雑音混入領域決定部1084は、入力されたブロック境界画素がp0であるか否かを判断する。入力されたブロック境界画素がp0である場合、擬似ランダム雑音混入領域のサイズをN(N=8)と決定する。そうでない場合、q0の属するブロックM×M(M=16,32,64)の一辺のサイズMを用いて、擬似ランダム雑音混入領域のサイズをmin (M−N,M−M/4)と決定する。min (M−N,M−M/4)の第2変数の目的は、処理対象ブロックがPlanarモードである場合、Planarモードのブロックサイズに用いて擬似ランダム雑音の混入範囲を制限し、以降の水平方向と垂直方向のブロック境界に対するPlanarモードフィルタの基準画像となる擬似ランダム雑音を混入させないことである。
【0141】
フィルタ部1083は、各エッジ(0≦i≦7)に対して、エッジ判定部1082で決定したフィルタ処理を適用する。Planarモードフィルタ、弱フィルタ、強フィルタ、および擬似ランダム混入付き強フィルタのそれぞれを以下で説明する。
【0142】
Planarモードフィルタが適用される場合、非特許文献3の5.4.1節 Deblocking filter process のPlanar mode filtering に従って、Pk(0≦k≦M/4−1)およびQk(0≦k≦M/4)を計算する。
【0143】
弱フィルタが適用される場合、エッジiの画素P0およびQ0を以下の式で計算する。
【0144】
P0i=Clip0-255(p0i+Clip(-tc,tc,(13*(q0i-p0i)+4*(q1i-p1i)-5*(q2i-p2i)+16)/32)) (26)
Q0i=Clip0-255(q0i-Clip(-tc,tc,(13*(q0i-p0i)+4*(q1i-p1i)-5*(q2i-p2i)+16)/32)) (27)
【0145】
強フィルタが適用される場合、エッジiの画素P2,P1,P0,Q0,Q1,Q2を以下の式で計算する。
【0146】
P0i=Clip0-255((p2i+2*p1i+2*p0i+2*q0i+q1i+4)/8) (28)
P1i=Clip0-255((p2i+p1i+p0i+q0i+2)/4) (29)
P2i=Clip0-255((2*p3i+3*p2i+p1i+p0i+q0i+4)/8) (30)
Q0i=Clip0-255((q2i+2*q1i+2*q0i+2*p0i+p1i+4)/8) (31)
Q1i=Clip0-255((q2i+q1i+q0i+p0i+2)/4) (32)
Q2i=Clip0-255((2*q3i+3*q2i+q1i+q0i+p0i+4)/8) (33)
【0147】
擬似ランダム混入付き強フィルタが適用される場合、上述した強フィルタの結果Pk(0≦k≦pSize )を、擬似ランダム雑音混入領域決定部1084で計算したpSize を用いて以下の式で計算する。
【0148】
Pki=Clip0-255(pki+nki) (0≦k≦pSize) (34)
【0149】
ただし、nki=LUT[(idxOffseti−k−1)&(LUTSize−1)]である。LUT[]は擬似ランダム雑音を格納したルックアップテーブルであり、その要素は−1,0,1のいずれかの値をとる。また、LUTSize はルックアップテーブルのサイズである。ルックアップテーブルのオフセットidxOffsetiは、適応歪み除去の方向に応じて、以下の式で計算される。
【0150】
【数2】
【0151】
ただし、PUPosXはフレームにおける図3に示す垂直エッジの水平位置、PUPosYはフレームにおける図4に示す水平エッジの垂直位置、PITCH は所定の値(例えば16)である。
【0152】
同様に、擬似ランダム混入付き強フィルタが適用される場合、擬似ランダム雑音混入領域決定部1084で計算したqSize を用いて、エッジiの画素Qk(0≦k≦qSize )を以下の式で計算する。
【0153】
Qki=Clip0-255(qki+nki) (0≦k≦qSize) (36)
【0154】
ただし、nki=LUT[(idxOffseti+k)&(LUTSize−1)]である。
【0155】
また、上記の各実施形態を、ハードウェアで構成することも可能であるが、コンピュータプログラムにより実現することも可能である。
【0156】
図16に示す情報処理システムは、プロセッサ1001、プログラムメモリ1002、記憶媒体1003および記憶媒体1004を備えている。記憶媒体1003および記憶媒体1004は、別個の記憶媒体であってもよいし、同一の記憶媒体からなる記憶領域であってもよい。記憶媒体として、ハードディスク等の磁気記憶媒体を用いることができる。
【0157】
図16に示された情報処理システムにおいて、プログラムメモリ1002には、図2図5図9のそれぞれに示された各ブロック(バッファのブロックを除く)の機能を実現するためのプログラムが格納される。そして、プロセッサ1001は、プログラムメモリ1002に格納されているプログラムに従って処理を実行することによって、図2図5図9のそれぞれに示された映像符号化装置または映像復号装置の機能を実現する。
【0158】
図17は、本発明による映像符号化装置の主要部を示すブロック図である。図17に示すように、本発明による映像符号化装置は、量子化インデックスを逆量子化して量子化代表値を得る逆量子化手段11(一例として、逆量子化部105)と、逆量子化手段11によって得られた量子化代表値を逆変換して再構築画像ブロックを得る逆周波数変換手段12(一例として、逆周波数変換部106)と、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる雑音混入手段13(一例として、非対称歪み除去フィルタ部108)とを備えている。
【0159】
図18は、本発明による映像復号装置の主要部を示すブロック図である。図18に示すように、本発明による映像復号装置は、量子化インデックスを逆量子化して量子化代表値を得る逆量子化手段21(一例として、逆量子化部202)と、逆量子化手段21によって得られた量子化代表値を逆変換して再構築画像ブロックを得る逆周波数変換手段22(一例として、逆周波数変換部203)と、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる雑音混入手段23(一例として、非対称歪み除去フィルタ部108)とを備えている。
【0160】
図19は、本発明による映像符号化方法の主要ステップを示すフローチャートである。図19に示すように、本発明による映像符号化方法では、量子化インデックスを逆量子化して量子化代表値を得て(ステップS101)、得られた量子化代表値を逆変換して再構築画像ブロックを得て(ステップS102)、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる(ステップS103)。
【0161】
図20は、本発明による映像復号方法の主要ステップを示すフローチャートである。図20に示すように、本発明による映像復号方法では、量子化インデックスを逆量子化して量子化代表値を得て(ステップS201)、得られた量子化代表値を逆変換して再構築画像ブロックを得て(ステップS202)、再構築画像ブロックの境界を中心とする非対称な領域に擬似ランダム雑音を混入させる(ステップS203)。
【0162】
以上、実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0163】
この出願は、2010年9月17日に出願された日本特許出願2010−208891を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【0164】
11 逆量子化手段
12 逆周波数変換手段
13 雑音混入手段
21 逆量子化手段
22 逆周波数変換手段
23 雑音混入手段
100 スイッチ
101 MBバッファ
102 周波数変換部
103 量子化部
104 エントロピー符号化部
105 逆量子化部
106 逆周波数変換部
107 ピクチャバッファ
108 非対称歪み除去フィルタ部
108a 歪み除去フィルタ部
1081 ブロック境界強度決定部
1082 エッジ判定部
1083 フィルタ部
1084 擬似ランダム雑音混入領域決定部
109 デコードピクチャバッファ
110 イントラ予測部
111 フレーム間予測部
112 符号化制御部
200 スイッチ
201 エントロピー復号部
202 逆量子化部
203 逆周波数変換部
204 ピクチャバッファ
206 デコードピクチャバッファ
207 イントラ予測部
208 フレーム間予測部
209 復号制御部
1001 プロセッサ
1002 プログラムメモリ
1003 記憶媒体
1004 記憶媒体
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32