IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ゲンスクエア エルエルシーの特許一覧

特許7192045イントラ予測における予測ブロックを生成する方法
<>
  • 特許-イントラ予測における予測ブロックを生成する方法 図1
  • 特許-イントラ予測における予測ブロックを生成する方法 図2
  • 特許-イントラ予測における予測ブロックを生成する方法 図3
  • 特許-イントラ予測における予測ブロックを生成する方法 図4
  • 特許-イントラ予測における予測ブロックを生成する方法 図5
  • 特許-イントラ予測における予測ブロックを生成する方法 図6
  • 特許-イントラ予測における予測ブロックを生成する方法 図7
  • 特許-イントラ予測における予測ブロックを生成する方法 図8
  • 特許-イントラ予測における予測ブロックを生成する方法 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-09
(45)【発行日】2022-12-19
(54)【発明の名称】イントラ予測における予測ブロックを生成する方法
(51)【国際特許分類】
   H04N 19/11 20140101AFI20221212BHJP
   H04N 19/117 20140101ALI20221212BHJP
   H04N 19/136 20140101ALI20221212BHJP
   H04N 19/176 20140101ALI20221212BHJP
【FI】
H04N19/11
H04N19/117
H04N19/136
H04N19/176
【請求項の数】 4
(21)【出願番号】P 2021106230
(22)【出願日】2021-06-28
(62)【分割の表示】P 2020004431の分割
【原出願日】2012-11-02
(65)【公開番号】P2021177635
(43)【公開日】2021-11-11
【審査請求日】2021-07-16
(31)【優先権主張番号】10-2011-0114607
(32)【優先日】2011-11-04
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】522277766
【氏名又は名称】ゲンスクエア エルエルシー
【氏名又は名称原語表記】GENSQUARE LLC
(74)【代理人】
【識別番号】110000165
【氏名又は名称】グローバル・アイピー東京特許業務法人
(72)【発明者】
【氏名】オー ソー ミ
(72)【発明者】
【氏名】ヤン ムーノック
【審査官】岩井 健二
(56)【参考文献】
【文献】国際公開第2013/051903(WO,A1)
【文献】国際公開第2013/037489(WO,A1)
【文献】国際公開第2013/002556(WO,A2)
【文献】国際公開第2012/172791(WO,A1)
【文献】国際公開第2012/170812(WO,A1)
【文献】米国特許出願公開第2011/0243230(US,A1)
【文献】G. Van der Auwera, X. Wang and M. Karczewicz,CE6.e: Mode-Dependent Intra Smoothing Modifications,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,JCTVC-F126,6th Meeting: Torino, 1,2011年07月,pp.1-6
【文献】Wei-Jung Chien et al.,Parsing friendly intra mode coding,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,JCTVC-F459r2,6th Meeting: Torino, IT,2011年07月,pp.1-5
【文献】Ehsan Maani and Ali Tabatabai,Intra mode coding using logical mode numbering,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,JCTVC-H0407,8th Meeting: San Jose, CA, USA,2012年01月,pp.1-5
【文献】Ximin Zhang et al.,Non-CE6: Intra mode coding with fixed length binarization,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,JCTVC-H0435_r1,8th Meeting: San Jose, CA, USA,2012年01月,pp.1-5
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
イントラ予測における予測ブロックを生成する方法であって、
モードグループ指示子および予測モードインデックスを復元し、
現在ブロックの左側イントラ予測モード及び上側イントラ予測モードを利用して決定される3個のイントラ予測モードを含むMPMグループ(most probable mode group)を構成し、
前記モードグループ指示子が前記MPMグループを示す場合、現在ブロックのイントラ予測モードとして、前記MPMグループにおいて前記予測モードインデックスによって特定されるイントラ予測モードを決定し、前記モードグループ指示子が前記MPMグループを示さない場合、前記予測モードインデックスと前記MPMグループの前記3個のイントラ予測モードを利用して、前記現在ブロックのイントラ予測モードを誘導し、
変換サイズ情報に基づいて前記予測ブロックのサイズを決定し、
前記現在ブロックの全ての参照画素が利用可能かどうかを決定し、
前記現在ブロックの一つ以上の参照画素が利用可能でない場合、参照画素を生成し、
前記イントラ予測モード及び前記現在ブロックのサイズに基づいて前記参照画素を適応的にフィルタリングし、ここで、前記現在ブロックのサイズが4×4の場合、前記参照画素がフィルタリングされず、前記現在ブロックのサイズが4×4より大きい場合、前記参照画素がフィルタリングされるイントラ予測モードの数は、前記現在ブロックのサイズが大きくなるほど増加し、
復元されたイントラ予測モードに基づいて前記参照画素を利用して前記予測ブロックを生成し、
前記左側イントラ予測モードは、前記上側イントラ予測モードに等しく、かつ非方向性イントラ予測モードである場合、前記MPMグループは、2個の非方向性イントラ予測モードと垂直モードとを含む、
方法。
【請求項2】
前記2個の非方向性イントラ予測モードは、DCモードとプラナーモードである、
請求項1に記載の方法。
【請求項3】
前記垂直モードでは、左側参照画素に隣接する前記予測ブロックの予測画素は、垂直参照画素、および、コーナー画素と左側隣接画素との間の変化量を利用して生成される、
請求項1に記載の方法。
【請求項4】
イントラ予測における予測ブロックを生成する方法であって、
現在ブロックのイントラ予測モードを決定し、
モードグループ指示子および予測モードインデックスを生成し、
前記現在ブロックの左側イントラ予測モード及び上側イントラ予測モードを利用して決定される3個のイントラ予測モードを含むMPMグループ(most probable mode group)を構成し、
前記現在ブロックの全ての参照画素が利用可能かどうかを決定し、
前記現在ブロックの一つ以上の参照画素が利用可能でない場合、参照画素を生成し、
前記イントラ予測モード及び前記現在ブロックのサイズに基づいて前記参照画素を適応的にフィルタリングし、ここで、前記現在ブロックのサイズが4×4の場合、前記参照画素がフィルタリングされず、前記現在ブロックのサイズが4×4より大きい場合、前記参照画素がフィルタリングされるイントラ予測モードの数は、前記現在ブロックのサイズが大きくなるほど増加し、
復元されたイントラ予測モードに基づいて前記参照画素を利用して前記予測ブロックを生成し、
前記現在ブロックの前記イントラ予測モードが前記MPMグループに属する場合、前記モードグループ指示子が前記MPMグループを示し、かつ前記予測モードインデックスが前記MPMグループにおける前記現在ブロックの前記イントラ予測モードを示し、前記現在ブロックの前記イントラ予測モードが前記MPMグループに属さない場合、前記モードグループ指示子が前記MPMグループを示さず、かつ前記現在ブロックの前記イントラ予測モードが、前記予測モードインデックス及び前記MPMグループの前記3個のイントラ予測モードを利用して特定され、
前記左側イントラ予測モードは、前記上側イントラ予測モードに等しく、かつ非方向性イントラ予測モードである場合、前記MPMグループは、2個の非方向性イントラ予測モードと垂直モードとを含む、
方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、量子化ブロックを逆量子化する方法に関し、より詳しくは、隣接量子化パラメータを利用して量子化パラメータ予測子を生成して量子化パラメータを復元し、前記量子化パラメータを利用して量子化ブロックを逆量子化する方法に関する。
【背景技術】
【0002】
H.264/MPEG-4 AVCでは一つのピクチャが複数個のマクロブロックに分割され、イントラ予測又はインター予測を利用して予測ブロックを生成することによって各々のマクロブロックを符号化する。原本ブロックと予測ブロックとの間の差分値が変換されて変換ブロックが生成され、量子化パラメータ及び量子化マトリクスを利用して前記変換ブロックが量子化される。前記量子化パラメータは、マクロブロック毎に調整され、量子化パラメータ予測子として以前量子化パラメータを利用して符号化される。
【0003】
一方、現在標準化が進行中であるHEVC(High Efficiency Video Coding)では2倍の圧縮効率を得るために多様なサイズのコーディングユニットが紹介されている。前記コーディングユニットは、H.264のマクロブロックと類似の役割を有する。
【0004】
しかし、量子化パラメータがコーディングユニット毎に調整されると、コーディングユニットのサイズが小さくなるほど符号化すべき量子化パラメータの数が増加するようになる。したがって、コーディングユニット単位に量子化パラメータを調整すると、量子化パラメータの符号化に必要とするビットの量が増加するようになって圧縮効率を落とす。また、多様なサイズのコーディングユニットが使われるため、量子化パラメータと以前量子化パラメータとの間の連関性(correlation)がH.264での連関性より弱くなるため、多様なサイズのコーディングユニットを使用するために量子化パラメータを符号化及び復号化する新たな方法が要求される。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明が達成しようとする目的は、現在コーディングユニットの差分量子化パラメータを復元し、量子化パラメータ予測子を生成し、前記差分量子化パラメータ及び前記量子化パラメータ予測子を利用して現在コーディングユニットの量子化パラメータを生成して量子化ブロックを逆量子化する方法を提供することである。
【課題を解決するための手段】
【0006】
本発明による量子化ブロックを逆量子化する方法は、現在コーディングユニットの差分量子化パラメータを復元し、現在コーディングユニットの量子化パラメータ予測子を生成し、前記差分量子化パラメータ及び前記量子化パラメータ予測子を利用して現在コーディングユニットの量子化パラメータを生成し、前記量子化パラメータを利用して量子化ブロックを逆量子化することを特徴とする。量子化パラメータ予測子は、左側量子化パラメータ、上側量子化パラメータ及び以前量子化パラメータのうち、1個又は2個の量子化パラメータを利用して生成されることを特徴とする。
本願明細書は、例えば、以下の項目も提供する。
(項目1)
量子化パラメータを復号化する方法において、
現在コーディングユニットの差分量子化パラメータを復元するステップ;
現在コーディングユニットの量子化パラメータ予測子を生成するステップ;及び、
前記差分量子化パラメータ及び前記量子化パラメータ予測子を利用して現在コーディングユニットの量子化パラメータを生成するステップ;を含み、
前記量子化パラメータ予測子は、左側量子化パラメータ、上側量子化パラメータ及び以前量子化パラメータのうち、1個又は2個の量子化パラメータを利用して生成されることを特徴とする方法。
(項目2)
前記量子化パラメータは、量子化ユニット毎に生成され、前記量子化ユニットの最小サイズは、ピクチャ毎に調整されることを特徴とする項目1に記載の方法。
(項目3)
前記量子化ユニットの最小サイズは、前記量子化ユニットの最小サイズの深さを特定するパラメータと最大コーディングユニットのサイズを利用して誘導されることを特徴とする項目2に記載の方法。
(項目4)
前記差分量子化パラメータは、符号化された差分量子化パラメータを算術復号化(arithmetic-decoding)してビンストリング(bin string)を生成し、前記ビンストリングを逆二進化して復元されることを特徴とする項目1に記載の方法。
(項目5)
前記ビンストリングは、前記量子化パラメータが0であるか否かを示すビンを含むことを特徴とする項目4に記載の方法。
(項目6)
前記差分量子化パラメータが0でない場合、前記差分量子化パラメータの符号(sign)を示すビンをさらに含むことを特徴とする項目5に記載の方法。
(項目7)
前記左側量子化パラメータ及び前記上側量子化パラメータが両方とも利用可能な場合、前記左側量子化パラメータ及び前記上側量子化パラメータの平均値が前記量子化パラメータ予測子に設定されることを特徴とする項目1に記載の方法。
(項目8)
前記左側量子化パラメータが利用可能でない場合、前記上側量子化パラメータ及び前記以前量子化パラメータの平均値が前記量子化パラメータ予測子に設定されることを特徴とする項目1に記載の方法。
【発明の効果】
【0007】
本発明による方法では、現在コーディングユニットの差分量子化パラメータを復元し、左側量子化パラメータ、上側量子化パラメータ及び以前量子化パラメータのうち、1個又は2個の量子化パラメータを利用して現在コーディングユニットの量子化パラメータ予測子を生成し、前記差分量子化パラメータ及び前記量子化パラメータ予測子を利用して現在コーディングユニットの量子化パラメータを生成し、量子化ユニットの最小サイズは、ピクチャ毎に調整されることを特徴とする。したがって、量子化ユニットの最小サイズをピクチャ毎に調整することによって符号化及び復号化装置の複雑度を減らすことができる。また、複数個の量子化パラメータを利用して量子化パラメータを符号化し、ピクチャ毎に量子化ユニットの最小サイズを送信することによって符号化効率が向上する。
【図面の簡単な説明】
【0008】
図1】本発明による映像符号化装置を示すブロック図である。
図2】本発明によるイントラ予測モードを説明する概念的ブロック図である。
図3】本発明による量子化パラメータを符号化する方法を説明するフローチャートである。
図4】本発明による映像復号化装置を示すブロック図である。
図5】本発明によるイントラ予測モードにおける予測ブロックを生成する方法を説明するフローチャートである。
図6】本発明によるイントラ予測モードを復元する過程を説明するフローチャートである。
図7】本発明による現在ブロックの参照画素の位置を説明するブロック図である。
図8】本発明によるイントラ予測における予測ブロックを生成する装置を説明するブロック図である。
図9】本発明による量子化パラメータを復号化する方法を説明するフローチャートである。
【発明を実施するための形態】
【0009】
以下、本発明の多様な実施例を例示図面を参照して詳細に説明する。本発明は、多様な変更を加えることができ、多様な実施例を有することができ、本発明を特定の実施形態に対して限定するものではなく、本発明の思想及び技術範囲に含まれる全ての変更、均等物乃至代替物を含むと理解しなければならない。各図面の説明において、類似の構成要素に対して類似の参照符号を使用した。
【0010】
図1は、本発明による映像符号化装置100を示すブロック図である。
【0011】
図1を参照すると、本発明による映像符号化装置100は、ピクチャ分割部101、変換部103、量子化部104、スキャニング部105、エントロピー符号化部106、逆量子化部107、逆変換部108、後処理部110、ピクチャ格納部111、イントラ予測部112、インター予測部113、減算部102及び加算部109を含む。
【0012】
ピクチャ分割部101は,ピクチャ又はスライスを複数個のLCU(Largest Coding Unit)に分割し、前記各々のLCUを一つ以上のコーディングユニットに分割する。ピクチャ分割部101は、各コーディングユニットの予測モード、予測ユニットのサイズ及び変換ユニットのサイズを決定する。
【0013】
一つのLCUは、1個又は複数個のコーディングユニット(coding unit)を含む。前記LCUは、分割構造を示すために、再帰的クワッドツリー構造(recursive quadtree structure)を有する。コーディングユニットの
最大サイズ及び最小サイズを示す情報がシーケンスパラメータセット(sequence parameter set)に含まれる。前記分割構造は、1個又は複数個の分割コーディングユニットフラグ(split_cu_flag)を利用して表現される。コーディングユニットは、2N×2Nのサイズを有する。
【0014】
コーディングユニットは、1個又は複数個の予測ユニット(prediction unit)を含む。イントラ予測において、前記予測ユニットのサイズは、2N×2N又はN×Nである。インター予測において、前記予測ユニットのサイズは、2N×2N、2N×N、N×2N又はN×Nである。インター予測において、予測ユニットが非対称パーティション(asymmetric partition)の場合、前記予測ユニットのサイズは、hN×2N、(2-h)N×2N、2N×hN及び2N×(2-h)Nのうち一つである。ここで、hは、1/2である。
【0015】
コーディングユニットは、1個又は複数個の変換ユニット(transform unit)を含む。変換ユニットは、分割構造を示すために、再帰的クワッドツリー構造(recursive quadtree structure)を有する。分割構造は、1個又は複数個の分割変換ユニットフラグ(split_tu_flag)により表現される。変換ユニットの最大サイズ及び最小サイズを示す情報がシーケンスパラメータセットに含まれる。
【0016】
イントラ予測部112は、現在予測ユニットのイントラ予測モードを決定し、前記イントラ予測モードを利用して1個又は複数個の予測ブロックを生成する。予測ブロックは、変換ユニットと同じサイズを有する。イントラ予測部112は、現在ブロックの利用可能でない参照画素が存在する場合、参照画素を生成し、現在ブロックのサイズ及びイントラ予測モードに応じて現在ブロックの参照画素を適応的にフィルタリングし、現在ブロックの予測ブロックを生成する。現在ブロックは、前記予測ブロックと同じサイズを有する。
【0017】
図2は、本発明によるイントラ予測モードを説明する概念的ブロック図である。図2に示すように、イントラ予測モードの数は、35個である。DCモードとプラナー(Planar)モードは、非方向性イントラ予測モードであり、残りは、方向性モードである。
【0018】
インター予測部113は、ピクチャ格納部111に格納されている一つ以上の参照ピクチャを利用して現在予測ユニットの動き情報を決定し、前記予測ユニットの予測ブロックを生成する。前記動き情報は、一つ以上の参照ピクチャインデックスと一つ以上の動きベクトルを含む。
【0019】
変換部103は、原本ブロックと予測ブロックを利用して生成される残差信号を変換して変換ブロックを生成する。残差信号は、変換ユニット単位に変換される。変換タイプは、予測モード及び変換ユニットのサイズによって決定される。変換タイプは、DCTベースの整数変換又はDSTベースの整数変換である。
【0020】
量子化部104は、前記変換ブロックを量子化するための量子化パラメータを決定する。量子化パラメータは、量子化ステップサイズである。量子化パラメータは、基準サイズより大きい又は同じコーディングユニットのサイズを有する量子化ユニット毎に決定される。前記基準サイズは、量子化ユニットの最小サイズである。コーディングユニットのサイズが量子化ユニットの最小サイズより大きい又は同じ場合、前記コーディングユニットが量子化ユニットになる。複数個のコーディングユニットが最小量子化ユニットに含まれることもできる。前記量子化ユニットの最小サイズは、コーディングユニットの許容可能なサイズのうち一つである。
【0021】
量子化部104は、量子化パラメータ予測子を生成し、量子化パラメータから量子化パラメータ予測子を減算して差分量子化パラメータを生成する。前記差分量子化パラメータは、符号化されて復号器に送信される。コーディングユニット内に送信される残差信号が存在しない場合、前記コーディングユニットの差分量子化パラメータは送信されない。
【0022】
前記量子化パラメータ予測子は、隣接コーディングユニットの量子化パラメータ及び/又は以前コーディングユニットの量子化パラメータを利用して生成される。
【0023】
一実施例として、量子化部104は、左側量子化パラメータ、上側量子化パラメータ及び左上側量子化パラメータの順序に検索し、1個又は2個の利用可能な量子化パラメータを利用して前記量子化パラメータ予測子を生成する。例えば、少なくとも2個の量子化パラメータが利用可能な場合は、前記順序に検索された利用可能な最初の2個の量子化パラメータの平均値が前記量子化パラメータ予測子に設定される。一つの量子化パラメータのみが利用可能な場合は、前記利用可能な量子化パラメータが前記量子化パラメータ予測子に設定される。前記左側量子化パラメータは、左側に隣接したコーディングユニットの量子化パラメータである。前記上側量子化パラメータは、上側に隣接したコーディングユニットの量子化パラメータである。前記左上側量子化パラメータは、左上側に隣接したコーディングユニットの量子化パラメータである。
【0024】
他の実施例として、量子化部104は、左側量子化パラメータ、上側量子化パラメータ及び以前量子化パラメータを前記順序通りに検索し、1個又は2個の利用可能な量子化パラメータを利用して前記量子化パラメータ予測子を生成する。少なくとも2個の量子化パラメータが利用可能な場合、前記順序に検索される最初の2個の利用可能な量子化パラメータの平均値を量子化パラメータ予測子に設定する。一つの量子化パラメータのみが利用可能な場合は、前記利用可能な量子化パラメータが量子化パラメータ予測子に設定される。即ち、前記左側量子化パラメータ及び前記上側量子化パラメータが両方とも利用可能な場合、前記左側量子化パラメータ及び前記上側量子化パラメータの平均値が前記量子化パラメータ予測子に設定される。前記左側量子化パラメータ及び前記上側量子化パラメータのうち一つのみが利用可能な場合、前記利用可能な量子化パラメータと前記以前量子化パラメータの平均値が前記量子化パラメータ予測子に設定される。前記左側量子化パラメータ及び前記上側量子化パラメータが両方とも利用可能でない場合、前記以前量子化パラメータが前記量子化パラメータ予測子に設定される。前記以前量子化パラメータは、符号化の順序上、直前のコーディングユニットの量子化パラメータである。前記平均値は、四捨五入した平均値である。
【0025】
量子化部104は、量子化マトリクス及び量子化パラメータを利用して変換ブロックを量子化することで、量子化ブロックを生成する。量子化ブロックは、逆量子化部107とスキャニング部105に提供される。
【0026】
スキャニング部105は、スキャンパターンを決定し、前記スキャンパターンを前記量子化ブロックに適用する。エントロピー符号化のために、CABAC(Context adaptive binary arithmetic coding)が使われる場合、前記スキャンパターンは、下記のように決定される。
【0027】
イントラ予測では、量子化された変換係数の分布がイントラ予測モード及び変換ユニットのサイズにより変わる。したがって、スキャンパターンは、前記イントラ予測モード及び前記変換ユニットのサイズにより決定される。対角線スキャン(diagonal scan)、垂直スキャン(vertical scan)及び水平スキャン(horizontal scan)の中からスキャンパターンが決定される。量子化ブロックの量子化された変換係数は、重要フラグ(significant flags)、係数符号(
coefficient signs)及び係数レベル(coefficient levels)に分離される。前記スキャンパターンは、重要フラグ、係数符号及び係数レベルに各々適用される。
【0028】
変換ユニットのサイズが第1のサイズより小さい又は同じ場合、垂直モード及び前記垂直モードに隣接した予め決められた個数のイントラ予測モードでは水平スキャンが選択され、水平モード及び前記水平モードに隣接した予め決められた個数のイントラ予測モードでは垂直スキャンが選択され、残りのイントラ予測モードでは対角線スキャンが選択される。前記第1のサイズは、8×8である。
【0029】
変換ユニットのサイズが前記第1のサイズより大きい場合、全てのイントラ予測モードに対角線スキャンが適用される。
【0030】
インター予測では、対角線スキャンが使われる。
【0031】
変換ユニットのサイズが第2のサイズより大きい場合、前記量子化ブロックは、複数個のサブセットに分割されてスキャンされる。前記第2のサイズは、4×4である。サブセットをスキャンするためのスキャンパターンは、前記各サブセットの量子化された変換係数をスキャンするためのスキャンパターンと同じである。各サブセットの量子化された変換係数は、逆方向にスキャンされる。前記サブセットも逆方向にスキャンされる。
【0032】
0でない最後の係数位置(last non-zero position)が符号化されて復号器に送信される。0でない最後の係数位置は、変換ユニット内での0でない最後の量子化された変換係数の位置を示す。
【0033】
ノンゼロサブセットフラグ(non-zero subset flags)が決定されて符号化される。ノンゼロサブセットフラグは、サブセットが0でない係数を含むかどうかを示す。ノンゼロサブセットフラグは、DC係数を含むサブセットと0でない最後の係数を含むサブセットでは定義されない。
【0034】
逆量子化部107は、量子化ブロックの量子化された変換係数を逆量子化する。
【0035】
逆変換部108は、逆量子化ブロックを逆変換して空間領域が残差信号を生成する。
【0036】
加算部109は、残差ブロックと予測ブロックを加えて復元ブロックを生成する。
【0037】
後処理部110は、復元されたピクチャで発生するブロッキングアーチファクトを除去するためのデブロッキングフィルタリング過程を実行する。
【0038】
ピクチャ格納部111は、後処理部110から後処理された映像を受信し、ピクチャ単位に前記映像を格納する。ピクチャは、フレーム又はフィールドである。
【0039】
エントロピー符号化部106は、スキャニング部105から受信される1次元係数情報、イントラ予測部112から受信されるイントラ予測情報、インター予測部113から受信される動き情報などをエントロピー符号化する。
【0040】
図3は、本発明による量子化パラメータを符号化する方法を説明するフローチャートである。
【0041】
量子化ユニットの最小サイズが決定される(S110)。前記量子化ユニットの最小サ
イズは、LCUのサイズ又はLCUのサブブロックのサイズと同じである。前記量子化ユニットの最小サイズは、ピクチャ毎に決定される。
【0042】
量子化パラメータが決定される(S120)。前記量子化パラメータは、量子化ユニット毎に決定される。現在コーディングユニットのサイズが量子化ユニットの最小サイズより大きい又は同じ場合、現在コーディングユニットが量子化ユニットになる。最小量子化ユニットが複数個のコーディングユニットを含む場合、前記量子化パラメータは、前記最小量子化ユニット内の全てのコーディングユニットに対して決定される。
【0043】
量子化パラメータ予測子が生成される(S130)。前記量子化パラメータ予測子も量子化ユニット毎に決定される。現在コーディングユニットのサイズが量子化ユニットの最小サイズより大きい又は同じ場合、現在コーディングユニットの量子化パラメータ予測子が生成される。最小量子化ユニットが複数個のコーディングユニットを含む場合、符号化の順序上、最初のコーディングユニットに対する量子化パラメータ予測子が決定され、前記決定された量子化パラメータ予測子が前記最小量子化ユニット内の残りのコーディングユニットに対しても使われる。
【0044】
前記量子化パラメータは、隣接コーディングユニットの量子化パラメータと以前コーディングユニットの量子化パラメータを利用して生成される。
【0045】
一実施例として、左側量子化パラメータ、上側量子化パラメータ及び左上側量子化パラメータが前記順序に検索され、1個又は2個の利用可能な量子化パラメータを利用して前記量子化パラメータ予測子が生成される。例えば、少なくとも2個の量子化パラメータが利用可能な場合は、前記順序に検索された利用可能な最初の2個の量子化パラメータの平均値が前記量子化パラメータ予測子に設定される。一つの量子化パラメータのみが利用可能な場合は、前記利用可能な量子化パラメータが前記量子化パラメータ予測子に設定される。前記左側量子化パラメータは、左側に隣接したコーディングユニットの量子化パラメータである。前記上側量子化パラメータは、上側に隣接したコーディングユニットの量子化パラメータである。前記左上側量子化パラメータは、左上側に隣接したコーディングユニットの量子化パラメータである。
【0046】
他の実施例として、左側量子化パラメータ、上側量子化パラメータ及び以前量子化パラメータが前記順序通りに検索され、1個又は2個の利用可能な量子化パラメータを利用して前記量子化パラメータ予測子が生成される。少なくとも2個の量子化パラメータが利用可能な場合、前記順序に検索される最初の2個の利用可能な量子化パラメータの平均値を量子化パラメータ予測子に設定する。一つの量子化パラメータのみが利用可能な場合は、前記利用可能な量子化パラメータが量子化パラメータ予測子に設定される。即ち、前記左側量子化パラメータ及び前記上側量子化パラメータが両方とも利用可能な場合、前記左側量子化パラメータ及び前記上側量子化パラメータの平均値が前記量子化パラメータ予測子に設定される。前記左側量子化パラメータ及び前記上側量子化パラメータのうち一つのみが利用可能な場合、前記利用可能な量子化パラメータと前記以前量子化パラメータの平均値が前記量子化パラメータ予測子に設定される。前記左側量子化パラメータ及び前記上側量子化パラメータが両方とも利用可能でない場合、前記以前量子化パラメータが前記量子化パラメータ予測子に設定される。前記以前量子化パラメータは、符号化の順序上、直前のコーディングユニットの量子化パラメータである。前記平均値は、四捨五入した平均値である。
【0047】
差分量子化パラメータは、エントロピー符号化される(S150)。前記差分量子化パラメータ(dQP)は、dQPの絶対値とdQPの符号を示す符号フラグ(sign flag)に変換される。dQPの絶対値は、トランケーテッドユーナリ(truncat
ed unary)に二進化される。そして、前記絶対値と符号フラグは、算術的に符号化される。前記絶対値が0の場合、前記符号フラグが存在しない。
【0048】
一方、量子化ユニットの最小サイズも復号化装置に送信される。
【0049】
現在標準化が進行中であるHM(HEVC Test Model)では、量子化ユニットの最小サイズを送信するために2ステップが要求される。第1のステップとして、量子化パラメータがLCU毎に調整されるか、又はLCUのサブブロック毎に調整されるかをシーケンスレベルで決定し、もし、シーケンスレベルで前記量子化パラメータがLCUのサブブロック毎に調整されると決定されると、量子化ユニットの最小サイズがピクチャレベルで決定される。量子化パラメータがLCU毎に調整されるか、又はLCUのサブブロック毎に調整されるかを示す1番目のパラメータ(cu_qp_delta_enabled_flag)がシーケンスパラメータセット(sequence parameter set)に含まれる。前記1番目のパラメータは、量子化パラメータがLCUのサブブロック毎に調整されると示す場合、2番目のパラメータ(max_cu_qp_delta_depth)がピクチャパラメータセット(picture paramter set)に含まれる。前記2番目のパラメータは、LCUより小さいサイズの量子化ユニットサイズを特定する。したがって、量子化ユニットの最小サイズが少なくても一つのピクチャで使われると、符号化過程での複雑度が増加するようになって、2個のパラメータが送信されなければならない。
【0050】
本発明では、シーケンスレベルで行われる前記量子化ユニットの最小サイズがLCUより小さいかどうかを判断することが省略される。即ち、量子化ユニットの最小サイズは、ピクチャ毎に決定される。したがって、前記量子化ユニットの最小サイズを特定するために一つのパラメータ(例えば、cu_qp_delta_enabled_info)が使われることもできる。前記パラメータは、最小量子化ユニットの深さを特定する。量子化ユニットの最小サイズは、LCUのサイズ又はLCUのサブブロックのサイズである。したがって、量子化ユニットの最小サイズを送信するために要求されるビット量と符号化過程での複雑度が減少される。
【0051】
前記変換ブロックを量子化するために予め決められた量子化マトリクス及びユーザ定義の量子化マトリクスが使われることができる。一つ以上のユーザ定義のマトリクスが使われると、前記一つ以上のユーザ定義のマトリクスがシーケンスパラメータセット又はピクチャパラメータセットに含まれるべきである。前記ユーザ定義の量子化マトリクスのシグナリングビット数を減らすために、前記ユーザ定義の量子化マトリクスの係数は、DPCM(differential pulse code modulation)方式を利用して符号化される。前記DPCM方式に対して対角線スキャン(diagonal scan)が適用される。
【0052】
前記ユーザ定義の量子化マトリクスのサイズが予め決められた大きさより大きい場合、前記シグナリングビット数を減らすために、前記ユーザ定義の量子化マトリクスの係数は、ダウンサンプリングされた後、DPCMを利用して符号化される。前記予め決められた大きさは、8×8である。例えば、ユーザ定義の量子化マトリクスのサイズが16×16の場合、前記ユーザ定義の量子化マトリクスのDC係数以外の係数が4:1ダウンサンプリングを利用してダウンサンプリングされる。DC係数は、前記ダウンサンプリングされたマトリクスと別途にシグナリングされる。
【0053】
図4は、本発明による映像復号化装置200を示すブロック図である。
【0054】
本発明による映像復号化装置200は、エントロピー復号化部201、逆スキャニング
部202、逆量子化部203、逆変換部204、加算部205、後処理部206、ピクチャ格納部207、イントラ予測部208及びインター予測部209を含む。
【0055】
エントロピー復号化部201は、受信されたビットストリームからイントラ予測情報、インター予測情報及び1次元係数情報を抽出する。エントロピー復号化部201は、インター予測情報をインター予測部209に送信し、イントラ予測情報をイントラ予測部208に送信し、前記係数情報を逆スキャニング部202に送信する。
【0056】
逆スキャニング部202は、逆スキャンパターンを使用して2次元の量子化ブロックを生成する。CABACがエントロピー符号化方法として使われたと仮定して説明する。逆スキャンパターンは、対角線スキャン、垂直スキャン及び水平スキャンのうち一つである。
【0057】
イントラ予測では、イントラ予測モード及び変換ユニットのサイズにより逆スキャンパターンが決定される。逆スキャンパターンは、対角線スキャン、垂直スキャン及び水平スキャンの中から選択される。前記選択された逆スキャンパターンは、重要フラグ、係数符号及び係数レベルに各々適用されて量子化ブロックを生成する。
【0058】
変換ユニットのサイズが前記第1のサイズより小さい又は同じ場合、垂直モード及び前記垂直モードに隣接した予め決められた個数のイントラ予測モードでは水平スキャンが選択され、水平モード及び前記水平モードに隣接した予め決められた個数のイントラ予測モードでは垂直スキャンが選択され、残りのイントラ予測モードでは対角線スキャンが選択される。前記第1のサイズは、8×8である。
【0059】
変換ユニットのサイズが前記第1のサイズより大きい場合、全てのイントラ予測モードに対角線スキャンが適用される。
【0060】
インター予測では、対角線スキャンが使われる。
【0061】
変換ユニットのサイズが第2のサイズより大きい場合、重要フラグ、係数符号及び係数レベル(levels)がサブセット単位に逆スキャンされてサブセットを生成する。サブセットは、逆スキャンされて量子化ブロックを生成する。前記第2のサイズは、4×4である。
【0062】
各サブセットを生成するために使われる逆スキャンパターンは、量子化ブロックを生成するために使われる逆スキャンパターンと同じである。重要フラグ、係数符号及び係数レベルは、逆方向に逆スキャンされる。サブセットも逆方向に逆スキャンされる。
【0063】
0でない最後の係数位置(last non-zero position)及びノンゼロサブセットフラグが符号化器から受信される。0でない最後の係数位置は、生成されるサブセットの数を決定するために使われる。ノンゼロサブセットフラグは、逆スキャンパターンを適用して生成されるサブセットを決定するために使われる。DC係数を含むサブセットと0でない最後の係数を含むサブセットに対するノンゼロサブセットフラグは、符号器から送信されないため、逆スキャンパターンを使用して前記DC係数を含むサブセットと0でない最後の係数を含むサブセットを生成しなければならない。
【0064】
逆量子化部203は、エントロピー復号化部201から差分量子化パラメータを受信し、量子化パラメータ予測子を生成する。量子化パラメータ予測子は、図1の量子化部104による動作と同様の過程を介して生成される。その後、逆量子化部203は、前記差分量子化パラメータと前記量子化パラメータ予測子を加えて現在コーディングユニットの量
子化パラメータを生成する。現在コーディングユニットが最小量子化ユニットより大きい又は同じであり、且つ現在コーディングユニットの差分量子化パラメータが符号器から受信されない場合、前記差分量子化パラメータは、0に設定される。
【0065】
逆量子化部203は、量子化ブロックを逆量子化する。
【0066】
逆変換部204は、前記逆量子化されたブロックを逆変換して残差ブロックを復元する。逆変換タイプは、予測モード及び変換ユニットのサイズによって決定される。逆変換タイプは、DCTベースの整数変換又はDSTベースの整数変換である。
【0067】
イントラ予測部208は、受信されたイントラ予測情報を利用して現在予測ユニットのイントラ予測モードを復元し、前記復元されたイントラ予測モードに応じて予測ブロックを生成する。前記予測ブロックは、変換ユニットと同じサイズを有する。イントラ予測部208は、現在ブロックの利用可能でない参照画素が存在する場合、参照画素を生成し、現在ブロックのサイズ及びイントラ予測モードに応じて現在ブロックの参照画素を適応的にフィルタリングする。現在ブロックは、変換ユニットのサイズを有する。
【0068】
インター予測部209は、受信されたインター予測情報を利用して現在予測ユニットの動き情報を復元し、前記動き情報を利用して予測ブロックを生成する。
【0069】
後処理部206は、図1の後処理部110と同様に動作する。
【0070】
ピクチャ格納部207は、後処理部206から後処理された映像を受信し、ピクチャ単位に前記映像を格納する。ピクチャは、フレーム又はフィールドである。
【0071】
加算部205は、復元された残差ブロックと予測ブロックを加えて復元ブロックを生成する。
【0072】
図5は、本発明による量子化パラメータの復号化方法を説明するフローチャートである。
【0073】
量子化ユニットの最小サイズが誘導される(S210)。最小量子化ユニットの深さを特定するパラメータ(cu_qp_delta_enabled_info)がPPSから抽出される。量子化ユニットの最小サイズは、ピクチャ毎に下記のように誘導される。
【0074】
Log2(MinQUSize)=Log2(MaxCUSize)-cu_qp_delta_enabled_info
【0075】
MinQUSizeは、量子化ユニットの最小サイズである。MaxCUSizeは、LCUのサイズである。
【0076】
現在コーディングユニットの差分量子化パラメータ(dQP)が復元される(S220)。dQPは、量子化ユニット毎に復元される。例えば、現在コーディングユニットのサイズが前記量子化ユニットの最小サイズより大きい又は同じ場合、現在コーディングユニットに対してdQPが復元される。現在コーディングユニットが符号化されたdQPを含まない場合、dQPは、0に設定される。量子化ユニットが複数個のコーディングユニットを含む場合、復号化の順序上、0でない係数を少なくとも一つ有する最初のコーディングユニットが符号化されたdQPを含む。
【0077】
前記符号化されたdQPは、算術復号化され、dQPの絶対値とdQPの符号を示す符
号フラグを生成する。dQPの絶対値は、トランケーテッドユーナリ(truncated unary)方式に二進化されたビンストリング(bin string)である。前記絶対値と符号フラグのビンストリングからdQPが復元される。前記絶対値が0の場合、前記符号フラグは存在しない。
【0078】
現在コーディングユニットの前記量子化パラメータ予測子が生成される(S230)。前記量子化パラメータ予測子は、図3のS130と同様に生成される。量子化ユニットが複数個のコーディングユニットを含む場合、復号化の順序上、最初のコーディングユニットの量子化パラメータ予測子が生成され、前記生成された量子化パラメータ予測子が前記量子化ユニット内の全ての量子化ユニットに使われる。
【0079】
dQPと前記量子化パラメータ予測子を利用して量子化パラメータが生成される(S240)。
【0080】
一方、ユーザ定義の量子化マトリクスも復元される。ユーザ定義の量子化マトリクスのセットが符号器からシーケンスパラメータセット又はピクチャパラメータセットを介して受信される。前記ユーザ定義の量子化マトリクスは、逆DPCMを利用して復元される。前記DPCMに対角線スキャンが使われる。前記ユーザ定義の量子化マトリクスの大きさが8×8より大きい場合、前記ユーザ定義の量子化マトリクスは、受信された8×8量子化マトリクスの係数をアップサンプリングして復元される。前記ユーザ定義の量子化マトリクスのDC係数は、シーケンスパラメータセット又はピクチャパラメータセットから抽出されることができる。例えば、前記ユーザ定義の量子化マトリクスのサイズが16×16の場合、受信された8×8量子化マトリクスの係数が1:4アップサンプリングを使用してアップサンプリングされる。
【0081】
図6は、本発明によるイントラ予測モードにおける予測ブロックを生成する方法を説明するフローチャートである。
【0082】
現在予測ユニットのイントラ予測情報がエントロピー復号化される(S310)。
【0083】
前記イントラ予測情報は、モードグループ指示子及び予測モードインデックスを含む。前記モードグループ指示子は、現在予測ユニットのイントラ予測モードがMPMグループ(most probable mode group)に属するかどうかを示すフラグである。前記フラグが1の場合、現在予測ユニットのイントラ予測モードがMPMグループに属する。前記フラグが0の場合、現在予測ユニットのイントラ予測モードが残余モードグループ(residual mode group)に属する。前記残余モードグループは、前記MPMグループに属するイントラ予測モード以外の全てのイントラ予測モードを含む。前記予測モードインデックスは、前記モードグループ指示子により特定されるグループ内での現在予測ユニットのイントラ予測モードを特定する。
【0084】
前記イントラ予測情報を利用して現在予測ユニットのイントラ予測モードが復元される(S320)。
【0085】
図7は、本発明によるイントラ予測モードを復元する過程を説明するフローチャートである。現在予測ユニットのイントラ予測モードは、下記の順序に復元される。
【0086】
隣接予測ユニットのイントラ予測モードを利用してMPMグループが構成される(S321)。前記MPMグループのイントラ予測モードは、左側イントラ予測モード及び上側イントラ予測モードにより適応的に決定される。前記左側イントラ予測モードは、左側に隣接した予測ユニットのイントラ予測モードであり、前記上側イントラ予測モードは、上
側に隣接した予測ユニットのイントラ予測モードである。前記MPMグループは、3個のイントラ予測モードで構成される。
【0087】
前記左側又は上側に隣接した予測ユニットが存在しない場合、前記左側又は上側の隣接予測ユニットのイントラ予測モードは利用可能でないと設定される。例えば、現在予測ユニットがピクチャの左側又は上側の境界に位置すると、左側又は上側に隣接した予測ユニットが存在しない。左側又は上側に隣接した予測ユニットが他のスライス又は他のタイルに属すると、左側又は上側に隣接した予測ユニットのイントラ予測モードは利用可能でないと設定される。左側又は上側に隣接した予測ユニットがインター符号化されると、左側又は上側に隣接した予測ユニットのイントラ予測モードが利用可能でないと設定される。上側に隣接した予測ユニットが他のLCUに属すると、前記左側又は上側に隣接した予測ユニットのイントラ予測モードが利用可能でないと設定される。
【0088】
左側イントラ予測モード及び上側イントラ予測モードが両方とも利用可能であり、且つ互いに異なる場合は、前記左側イントラ予測モード及び前記上側イントラ予測モードが前記MPMグループに含まれ、1個の追加イントラ予測モードが前記MPMグループに追加される。二つのうち、モード番号が小さいイントラ予測モードにインデックス0が割り当てられ、残りの一つにインデックス1が割り当てられる。または、左側イントラ予測モードにインデックス0が割り当てられ、上側イントラ予測モードにインデックス1が割り当てられてもよい。前記追加イントラ予測モードは、前記左側及び上側イントラ予測モードにより下記のように決定される。
【0089】
左側及び上側イントラ予測モードのうち、一つが非方向性モード(non-directional mode)であり、他の一つが方向性モード(directional mode)の場合、残りの一つの非方向性モードが前記MPMグループに追加される。例えば、前記左側及び上側イントラ予測モードのうち、一つがDCモードの場合、プラナーモードが前記MPMグループに追加され、前記左側及び上側イントラ予測モードのうち、一つがプラナーモードの場合、DCモードが前記MPMグループに追加される。左側及び上側イントラ予測モードが両方とも非方向性モードの場合、垂直モードが前記MPMグループに追加される。左側及び上側イントラ予測モードが両方とも方向性モードの場合、DCモード又はプラナーモードが前記MPMグループに追加される。
【0090】
左側イントラ予測モード及び上側イントラ予測モードのうち一つのみが利用可能な場合は、前記利用可能なイントラ予測モードが前記MPMグループに含まれ、2個の追加イントラ予測モードが前記MPMグループに追加される。前記2個の追加イントラ予測モードは、前記利用可能なイントラ予測モードにより下記のように決定される。
【0091】
前記利用可能なイントラ予測モードが非方向性モードの場合、残りの一つの非方向性モードと垂直モードが前記MPMグループに追加される。例えば、前記利用可能なイントラ予測モードがDCモードの場合、プラナーモードと垂直モードが前記MPMグループに追加される。前記利用可能なイントラ予測モードがプラナーモードの場合、DCモードと垂直モードが前記MPMグループに追加される。前記利用可能なイントラ予測モードが方向性モードの場合、2個の非方向性モード(DCモード及びプラナーモード)が前記MPMグループに追加される。
【0092】
左側イントラ予測モード及び上側イントラ予測モードが両方とも利用可能であり、且つ互いに同じ場合、前記利用可能なイントラ予測モードがMPMグループに含まれ、2個の追加イントラ予測モードが前記MPMグループに追加される。前記追加される2個のイントラ予測モードは、前記利用可能なイントラ予測モードにより下記のように決定される。
【0093】
前記利用可能なイントラ予測モードが方向性モードの場合、2個の隣接方向性モードが前記MPMグループに追加される。例えば、前記利用可能なイントラ予測モードがモード23の場合、左側隣接モード(モード1)と右側隣接モード(モード13)が前記MPMグループに追加される。前記利用可能なイントラ予測モードがモード30の場合、2個の隣接モード(モード2とモード16)が前記MPMグループに追加される。前記利用可能なイントラ予測モードが非方向性モードの場合、残りの一つの非方向性モードと垂直モードが前記MPMグループに追加される。例えば、前記利用可能なイントラ予測モードがDCモードの場合、プラナーモードと垂直モードが前記MPMグループに追加される。
【0094】
左側イントラ予測モード及び上側イントラ予測モードが両方とも利用可能でない場合は、3個の追加イントラ予測モードが前記MPMグループに追加される。前記3個のイントラ予測モードは、DCモード、プラナーモード及び垂直モードである。DCモード、プラナーモード及び垂直モードの順序に又はプラナーモード、DCモード及び垂直モードの順序に、インデックス0、1及び2が前記3個のイントラ予測モードに割り当てられる。
【0095】
前記モードグループ指示子がMPMグループを示すかどうかを決定する(S322)。
【0096】
前記モードグループ指示子が前記MPMグループを示す場合、前記予測モードインデックスにより特定されるMPMグループ内のイントラ予測モードが現在予測ユニットのイントラ予測モードとして設定される(S323)。
【0097】
前記モードグループ指示子が前記MPMグループを示さない場合、前記予測モードインデックスにより特定される前記残余モードグループ内のイントラ予測モードが現在予測ユニットのイントラ予測モードとして設定される(S324)。現在予測ユニットのイントラ予測モードは、前記予測モードインデックス及び前記MPMグループのイントラ予測モードを利用して下記の順序に誘導される。
【0098】
MPMグループ内の3個のイントラ予測モードのうち、最も小さいモード番号を有するイントラ予測モードが第1の候補に設定され、中間モード番号を有するイントラ予測モードが第2の候補に設定され、最も大きいモード番号を有するイントラ予測モードが第3の候補に設定される。
【0099】
1)前記予測モードインデックスを第1の候補と比較する。前記予測モードインデックスが前記MPMグループ内の第1の候補のモード番号より大きい又は同じ場合、前記予測モードインデックスの値が1ほど増加する。そうでない場合、前記予測モードインデックスの値は維持される。
【0100】
2)前記予測モードインデックスを第2の候補と比較する。前記予測モードインデックスが前記MPMグループ内の第2の候補のモード番号より大きい又は同じ場合、前記予測モードインデックスの値が1ほど増加する。そうでない場合、前記予測モードインデックスの値は維持される。
【0101】
3)前記予測モードインデックスを第3の候補と比較する。前記予測モードインデックスが前記MPMグループ内の第3の候補のモード番号より大きい又は同じ場合、前記予測モードインデックスの値が1ほど増加する。そうでない場合、前記予測モードインデックスの値は維持される。
【0102】
4)前記最後の予測モードインデックスが現在予測ユニットのイントラ予測モードのモード番号に設定される。
【0103】
前記予測ブロックのサイズは、前記変換ユニットのサイズを示す変換サイズ情報に基づいて決定される(S330)。変換サイズ情報は、前記変換ユニットのサイズを特定するための1個又は複数個の分割変換フラグ(split_transform_flag)である。
【0104】
変換ユニットのサイズが現在予測ユニットのサイズと同じ場合、予測ブロックのサイズは、現在予測ユニットのサイズと同じである。
【0105】
変換ユニットのサイズが現在予測ユニットのサイズより小さい場合、予測ブロックのサイズは、変換ユニットのサイズと同じである。この場合、復元ブロックを生成する過程は、現在予測ユニットの各サブブロック毎に実行される。即ち、現在のサブブロックの予測ブロック及び残差ブロックが生成され、前記予測ブロック及び残差ブロックを加えて復元ブロックを生成する。その後、復号化の順序上、次に位置するサブブロックの予測ブロック、残差ブロック及び復元ブロックが生成される。前記復元されたイントラ予測モードが全てのサブブロックの予測ブロックを生成するのに使われる。現在サブブロックの復元ブロックの一部画素が次のサブブロックの参照画素として使われる。したがって、原本サブブロックにさらに類似の予測ブロックを生成するのが可能である。
【0106】
次に、現在ブロックの参照画素が全て利用可能かどうかを判断し、一つ以上の参照画素が利用可能でない場合、参照画素を生成する(S340)。現在ブロックは、現在予測ユニット又は現在サブブロックである。前記現在ブロックのサイズは、変換ユニットのサイズである。
【0107】
図8は、本発明による現在ブロックの参照画素の位置を説明するブロック図である。図8に示すように、現在ブロックの参照画素は、(x=0,...,2N-1、y=-1)に位置する上側参照画素と、(x=-1、y=0,...,2M-1)に位置する左側参照画素と、(x=-1、y=-1)に位置するコーナー参照画素とで構成される。Nは、現在ブロックの横の長さであり、Mは、現在ブロックの縦の長さである。
【0108】
復元された画素が対応する位置に存在しない、又は他のスライスに位置すると、前記参照画素は、利用可能でないと設定される。CIPモード(constrained intra prediction mode)では、インターモードの復元画素が利用可能でないと設定される。
【0109】
一つ以上の参照画素が利用可能でない場合、前記画素を対して参照画素が下記のように生成される。
【0110】
全ての参照画素が利用可能でない場合、全ての参照画素が2L-1の値に代替される。Lの値は、輝度画素の値を表現するのに使われるビットの数である。
【0111】
利用可能な参照画素が利用可能でない参照画素の片側方向にのみ存在する場合、前記利用可能でない参照画素の値は、前記利用可能でない参照画素に最も近い位置の参照画素の値に代替される。
【0112】
利用可能な参照画素が利用可能でない参照画素の両側方向に存在する場合、前記利用可能でない参照画素の値は、前記利用可能でない参照画素の各方向に最も近い位置の参照画素の平均値又は予め決められた方向の最も近い位置の参照画素の値に代替される。
【0113】
次に、前記イントラ予測モード及び現在ブロックのサイズに基づいて前記参照画素が適応的にフィルタリングされる(S350)。現在ブロックのサイズは、変換ブロックのサ
イズである。
【0114】
DCモードでは参照画素がフィルタリングされない。垂直モード及び水平モードでも参照画素がフィルタリングされない。前記垂直モード及び水平モード以外の方向性モードでは、参照画素が前記現在ブロックのサイズによって適応的にフィルタリングされる。
【0115】
現在ブロックのサイズが4×4の場合、全てのイントラ予測モードで前記参照画素がフィルタリングされない。8×8、16×16及び32×32のサイズで、参照画素がフィルタリングされなければならないイントラ予測モードの数は、現在ブロックのサイズが大きくなるほど増加する。例えば、垂直モード及び前記垂直モードに隣接した予め決められた個数のイントラ予測モードでは、参照画素がフィルタリングされない。水平モード及び前記水平モードに隣接した前記予め決められた個数のイントラ予測モードでは、参照画素がフィルタリングされない。前記予め決められた個数は、0~7のうち一つであり、現在ブロックのサイズが大きくなるほど減少する。
【0116】
次に、前記復元されたイントラ予測モードに応じて参照画素を利用して現在ブロックの予測ブロックが生成される(S360)。
【0117】
DCモードでは、参照画素に接しない予測ブロックの予測画素は、(x=0,...,N-1、y=-1)に位置するN個の参照画素と、(x=-1、y=0,...,M-1)に位置するM個の参照画素を平均して生成される。参照画素に接する予測画素は、前記平均値と1個又は2個の接する参照画素を利用して生成される。
【0118】
垂直モードでは、左側参照画素に接しない予測画素は、垂直参照画素の値を複写して生成される。左側参照画素に接する予測画素は、垂直参照画素及び前記左側隣接参照画素とコーナー参照画素との間の変化量を利用して生成される。
【0119】
水平モードでも前記と同様の方式により参照画素が生成される。
【0120】
図9は、本発明によるイントラ予測における予測ブロックを生成する装置300を説明するブロック図である。
【0121】
本発明による装置300は、パーシング部310、予測モード復号化部320、予測サイズ決定部330、参照画素有効性検査部340、参照画素生成部350、参照画素フィルタリング部360及び予測ブロック生成部370を含む。
【0122】
パーシング部310は、ビットストリームから現在予測ユニットのイントラ予測情報を復元する。
【0123】
前記イントラ予測情報は、モードグループ指示子と予測モードインデックスを含む。前記モードグループ指示子は、現在予測ユニットのイントラ予測モードがMPMグループに属するかどうかを示すフラグである。前記フラグが1の場合、現在予測ユニットのイントラ予測モードはMPMグループに属する。前記フラグが0の場合、現在予測ユニットのイントラ予測モードが残余モードグループに属する。前記残余モードグループは、前記MPMグループに属するイントラ予測モード以外の全てのイントラ予測モードを含む。予測モードインデックスは、前記モードグループ指示子により特定されるグループ内での現在予測ユニットのイントラ予測モードを特定する。
【0124】
予測モード復号化部320は、MPMグループ構成部321及び予測モード復元部322を含む。
【0125】
MPMグループ構成部321は、現在予測ユニットのMPMグループを構成する。前記MPMグループは、隣接予測ユニットのイントラ予測モードを利用して構成する。前記MPMグループのイントラ予測モードは、左側イントラ予測モード及び上側イントラ予測モードにより適応的に決定される。前記左側イントラ予測モードは、左側に隣接した予測ユニットのイントラ予測モードであり、前記上側イントラ予測モードは、上側に隣接した予測ユニットのイントラ予測モードである。前記MPMグループは、3個のイントラ予測モードで構成される。
【0126】
MPMグループ構成部321は、前記左側イントラ予測モード及び前記上側イントラ予測モードの有効性を検査する。前記左側又は上側に隣接した予測ユニットが存在しない場合、前記左側又は上側の隣接予測ユニットのイントラ予測モードは利用可能でないと設定される。例えば、現在予測ユニットがピクチャの左側又は上側の境界に位置すると、左側又は上側に隣接した予測ユニットが存在しない。左側又は上側に隣接した予測ユニットが他のスライス又は他のタイルに属すると、左側又は上側に隣接した予測ユニットのイントラ予測モードは利用可能でないと設定される。左側又は上側に隣接した予測ユニットがインター符号化されると、左側又は上側に隣接した予測ユニットのイントラ予測モードが利用可能でないと設定される。上側に隣接した予測ユニットが他のLCUに属すると、前記左側又は上側に隣接した予測ユニットのイントラ予測モードが利用可能でないと設定される。
【0127】
MPMグループ構成部321は、MPMグループを下記のように構成する。
【0128】
左側イントラ予測モード及び上側イントラ予測モードが両方とも利用可能であり、且つ互いに異なる場合は、前記左側イントラ予測モード及び前記上側イントラ予測モードが前記MPMグループに含まれ、1個の追加イントラ予測モードが前記MPMグループに追加される。二つのうち、モード番号が小さいイントラ予測モードにインデックス0が割り当てられ、残りの一つにインデックス1が割り当てられる。または、左側イントラ予測モードにインデックス0が割り当てられ、上側イントラ予測モードにインデックス1が割り当てられてもよい。前記追加イントラ予測モードは、前記左側及び上側イントラ予測モードにより下記のように決定される。
【0129】
左側及び上側イントラ予測モードのうち、一つが非方向性モード(non-directional mode)であり、他の一つが方向性モード(directional mode)の場合、残りの一つの非方向性モードが前記MPMグループに追加される。例えば、前記左側及び上側イントラ予測モードのうち、一つがDCモードの場合、プラナーモードが前記MPMグループに追加され、前記左側及び上側イントラ予測モードのうち、一つがプラナーモードの場合、DCモードが前記MPMグループに追加される。左側及び上側イントラ予測モードが両方とも非方向性モードの場合、垂直モードが前記MPMグループに追加される。左側及び上側イントラ予測モードが両方とも方向性モードの場合、DCモード又はプラナーモードが前記MPMグループに追加される。
【0130】
左側イントラ予測モード及び上側イントラ予測モードのうち一つのみが利用可能な場合は、前記利用可能なイントラ予測モードが前記MPMグループに含まれ、2個の追加イントラ予測モードが前記MPMグループに追加される。前記2個の追加イントラ予測モードは、前記利用可能なイントラ予測モードにより下記のように決定される。
【0131】
前記利用可能なイントラ予測モードが非方向性モードの場合、残りの一つの非方向性モードと垂直モードが前記MPMグループに追加される。例えば、前記利用可能なイントラ予測モードがDCモードの場合、プラナーモードと垂直モードが前記MPMグループに追
加される。前記利用可能なイントラ予測モードがプラナーモードの場合、DCモードと垂直モードが前記MPMグループに追加される。前記利用可能なイントラ予測モードが方向性モードの場合、2個の非方向性モード(DCモード及びプラナーモード)が前記MPMグループに追加される。
【0132】
左側イントラ予測モード及び上側イントラ予測モードが両方とも利用可能であり、且つ互いに同じ場合、前記利用可能なイントラ予測モードがMPMグループに含まれ、2個の追加イントラ予測モードが前記MPMグループに追加される。前記追加される2個のイントラ予測モードは、前記利用可能なイントラ予測モードにより下記のように決定される。
【0133】
前記利用可能なイントラ予測モードが方向性モードの場合、2個の隣接方向性モードが前記MPMグループに追加される。例えば、前記利用可能なイントラ予測モードがモード23の場合、左側隣接モード(モード1)と右側隣接モード(モード13)が前記MPMグループに追加される。前記利用可能なイントラ予測モードがモード30の場合、2個の隣接モード(モード2とモード16)が前記MPMグループに追加される。前記利用可能なイントラ予測モードが非方向性モードの場合、残りの一つの非方向性モードと垂直モードが前記MPMグループに追加される。例えば、前記利用可能なイントラ予測モードがDCモードの場合、プラナーモードと垂直モードが前記MPMグループに追加される。
【0134】
左側イントラ予測モード及び上側イントラ予測モードが両方とも利用可能でない場合は、3個の追加イントラ予測モードが前記MPMグループに追加される。前記3個のイントラ予測モードは、DCモード、プラナーモード及び垂直モードである。DCモード、プラナーモード及び垂直モードの順序に又はプラナーモード、DCモード及び垂直モードの順序に、インデックス0、1及び2が前記3個のイントラ予測モードに割り当てられる。
【0135】
予測モード復元部322は、前記モードグループ指示子と前記予測モードインデックスを利用して現在予測ユニットのイントラ予測モードを下記のように誘導する。
【0136】
予測モード復元部322は、前記モードグループ指示子がMPMグループを示すかどうかを決定する。
【0137】
前記モードグループ指示子が前記MPMグループを示す場合、予測モード復元部322は、前記予測モードインデックスにより特定されるMPMグループ内のイントラ予測モードを現在予測ユニットのイントラ予測モードとして決定する。
【0138】
前記モードグループ指示子が前記MPMグループを示さない場合、予測モード復元部322は、前記予測モードインデックスにより特定される前記残余モードグループ内のイントラ予測モードを現在予測ユニットのイントラ予測モードとして決定する。現在予測ユニットのイントラ予測モードは、前記予測モードインデックス及び前記MPMグループのイントラ予測モードを利用して下記の順序に誘導される。
【0139】
MPMグループ内の3個のイントラ予測モードのうち、最も小さいモード番号を有するイントラ予測モードが第1の候補に設定され、中間モード番号を有するイントラ予測モードが第2の候補に設定され、最も大きいモード番号を有するイントラ予測モードが第3の候補に設定される。
【0140】
1)前記予測モードインデックスを第1の候補と比較する。前記予測モードインデックスが前記MPMグループ内の第1の候補のモード番号より大きい又は同じ場合、前記予測モードインデックスの値が1ほど増加する。そうでない場合、前記予測モードインデックスの値は維持される。
【0141】
2)前記予測モードインデックスを第2の候補と比較する。前記予測モードインデックスが前記MPMグループ内の第2の候補のモード番号より大きい又は同じ場合、前記予測モードインデックスの値が1ほど増加する。そうでない場合、前記予測モードインデックスの値は維持される。
【0142】
3)前記予測モードインデックスを第3の候補と比較する。前記予測モードインデックスが前記MPMグループ内の第3の候補のモード番号より大きい又は同じ場合、前記予測モードインデックスの値が1ほど増加する。そうでない場合、前記予測モードインデックスの値は維持される。
【0143】
4)前記最後の予測モードインデックスが現在予測ユニットのイントラ予測モードのモード番号に設定される。
【0144】
予測サイズ決定部330は、変換ユニットのサイズを特定する変換サイズ情報に基づいて予測ブロックのサイズを決定する。前記変換サイズ情報は、変換ユニットのサイズを特定する1個又は複数個の分割変換フラグ(split_transform_flag)である。
【0145】
変換ユニットのサイズが現在予測ユニットのサイズと同じ場合、予測ブロックのサイズは、現在予測ユニットのサイズと同じである。
【0146】
変換ユニットのサイズが現在予測ユニットのサイズより小さい場合、予測ブロックのサイズは、変換ユニットのサイズと同じである。この場合、復元ブロックを生成する過程は、現在予測ユニットの各サブブロック毎に実行される。即ち、現在のサブブロックの予測ブロック及び残差ブロックが生成され、前記予測ブロック及び残差ブロックを加えて復元ブロックを生成する。その後、復号化の順序上、次に位置するサブブロックの予測ブロック、残差ブロック及び復元ブロックが生成される。前記復元されたイントラ予測モードが全てのサブブロックの予測ブロックを生成するのに使われる。現在サブブロックの復元ブロックの一部画素が次のサブブロックの参照画素として使われる。したがって、原本サブブロックにさらに類似の予測ブロックを生成するのが可能である。
【0147】
参照画素有効性検査部340は、現在ブロックの全ての参照画素が利用可能かどうかを決定する。現在ブロックは、前記現在予測ユニット又は前記現在サブブロックである。現在ブロックのサイズは、変換ユニットのサイズである。
【0148】
参照画素生成部350は、一つ以上の参照画素が利用可能でない場合、参照画素を生成する。
【0149】
全ての参照画素が利用可能でない場合、全ての参照画素が2L-1の値に代替される。Lの値は、輝度画素の値を表現するのに使われるビットの数である。
【0150】
利用可能な参照画素が利用可能でない参照画素の片側方向にのみ存在する場合、前記利用可能でない参照画素の値は、前記利用可能でない参照画素に最も近い位置の参照画素の値に代替される。
【0151】
利用可能な参照画素が利用可能でない参照画素の両側方向に存在する場合、前記利用可能でない参照画素の値は、前記利用可能でない参照画素の各方向に最も近い位置の参照画素の平均値又は予め決められた方向の最も近い位置の参照画素の値に代替される。
【0152】
参照画素フィルタリング部360は、前記イントラ予測モード及び現在ブロックのサイズに基づいて前記参照画素を適応的にフィルタリングする。
【0153】
DCモードでは参照画素がフィルタリングされない。垂直モード及び水平モードでも参照画素がフィルタリングされない。前記垂直モード及び水平モード以外の方向性モードでは、参照画素が前記現在ブロックのサイズによって適応的にフィルタリングされる。
【0154】
現在ブロックのサイズが4×4の場合、全てのイントラ予測モードで前記参照画素がフィルタリングされない。8×8、16×16及び32×32のサイズで、参照画素がフィルタリングされなければならないイントラ予測モードの数は、現在ブロックのサイズが大きくなるほど増加する。例えば、垂直モード及び前記垂直モードに隣接した予め決められた個数のイントラ予測モードでは、参照画素がフィルタリングされない。水平モード及び前記水平モードに隣接した前記予め決められた個数のイントラ予測モードでは、参照画素がフィルタリングされない。前記予め決められた個数は、0~7のうち一つであり、現在ブロックのサイズが大きくなるほど減少する。
【0155】
予測ブロック生成部370は、前記復元されたイントラ予測モードに応じて参照画素を利用して現在ブロックの予測ブロックを生成する。
【0156】
DCモードでは、参照画素に接しない予測ブロックの予測画素は、(x=0,...,N-1、y=-1)に位置するN個の参照画素と、(x=-1、y=0,...,M-1)に位置するM個の参照画素を平均して予測ブロックの予測画素を生成する。そして、参照画素に接する予測画素は、前記平均値と1個又は2個の接する参照画素を利用して生成される。
【0157】
垂直モードにおいて、左側参照画素に接しない予測画素は、垂直参照画素の値を複写して生成される。そして、左側参照画素に接する予測画素は、垂直参照画素及び左側隣接参照画素とコーナー参照画素との間の変化量を利用して生成される。
【0158】
水平モードでは、垂直モードと同様の方法により予測画素が生成される。
【0159】
以上、実施例を参照して説明したが、該当技術分野の熟練された当業者は、特許請求の範囲に記載された本発明の思想及び領域から外れない範囲内で本発明を多様に修正及び変更可能であることを理解することができる。
【符号の説明】
【0160】
104 量子化部
図1
図2
図3
図4
図5
図6
図7
図8
図9