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

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

▶ エルジー エレクトロニクス インコーポレイティドの特許一覧

特開2023-171926単純化されたMPMリスト生成方法を用いる画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023171926
(43)【公開日】2023-12-05
(54)【発明の名称】単純化されたMPMリスト生成方法を用いる画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
(51)【国際特許分類】
   H04N 19/593 20140101AFI20231128BHJP
   H04N 19/70 20140101ALI20231128BHJP
   H04N 19/11 20140101ALI20231128BHJP
   H04N 19/176 20140101ALI20231128BHJP
   H04N 19/157 20140101ALI20231128BHJP
【FI】
H04N19/593
H04N19/70
H04N19/11
H04N19/176
H04N19/157
【審査請求】有
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023172609
(22)【出願日】2023-10-04
(62)【分割の表示】P 2021573965の分割
【原出願日】2020-06-15
(31)【優先権主張番号】62/861,286
(32)【優先日】2019-06-13
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/861,291
(32)【優先日】2019-06-13
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Blu-ray
(71)【出願人】
【識別番号】502032105
【氏名又は名称】エルジー エレクトロニクス インコーポレイティド
【氏名又は名称原語表記】LG ELECTRONICS INC.
【住所又は居所原語表記】128, Yeoui-daero, Yeongdeungpo-gu, 07336 Seoul,Republic of Korea
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100165191
【弁理士】
【氏名又は名称】河合 章
(74)【代理人】
【識別番号】100114018
【弁理士】
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100159259
【弁理士】
【氏名又は名称】竹本 実
(72)【発明者】
【氏名】チェ チャンウォン
(72)【発明者】
【氏名】ホ チン
(72)【発明者】
【氏名】ユ ソンミ
(72)【発明者】
【氏名】チェ チョンア
(72)【発明者】
【氏名】キム スン ファン
(57)【要約】
【課題】本発明は、画像符号化/復号化方法及び装置に関する。
【解決手段】画像符号化/復号化方法及び装置が提供される。本開示による画像復号化装置によって行われる画像復号化方法は、現在ブロックの予測モードを識別するステップと、前記現在ブロックの予測モードがイントラ予測モードである場合、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて前記現在ブロックに対する候補イントラ予測モードを決定するステップと、前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成するステップと、前記候補イントラ予測モードリストに基づいて前記現在ブロックのイントラ予測モードを決定するステップとを、を含むことができる。このとき、前記周辺ブロックの予測モードがMIP(matrix based intra prediction)モードである場合、前記候補イントラ予測モードは所定のイントラ予測モードに決定されることができる。
【選択図】図23
【特許請求の範囲】
【請求項1】
画像復号化装置によって行われる画像復号化方法であって、
現在ブロックの予測モードを識別するステップと、
前記現在ブロックの予測モードがイントラ予測モードであることに基づき、前記現在ブロックのイントラ予測モードがMIP(Matrix-based intra prediction)モードであるか否かを識別するステップと、
前記現在ブロックのイントラ予測モードがMIPモードでないことに基づき、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて前記現在ブロックに対する候補イントラ予測モードを決定するステップと、
前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成するステップと、
前記候補イントラ予測モードリストに基づいて前記現在ブロックのイントラ予測モードを決定するステップと、を含み、
前記周辺ブロックの予測モードがMIPモードであることに基づいて、前記候補イントラ予測モードが所定のイントラ予測モードであると決定され、
前記候補イントラ予測モードリストは、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて生成され、
前記第1候補イントラ予測モードは、前記現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定され、
前記第2候補イントラ予測モードは、前記現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定され、
前記第1周辺ブロックの予測モードがMIPモードであり、前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが互いに異なり、前記第2候補イントラ予測モードが、DCモードを表す予測モード値よりも大きい値を有するイントラ予測モードであることに基づいて、前記候補イントラ予測モードリストは、前記第2候補イントラ予測モードを含むと決定される、画像復号化方法。
【請求項2】
前記所定のイントラ予測モードは、Planarモードである、請求項1に記載の画像復号化方法。
【請求項3】
前記周辺ブロックの予測モードがMIPモードであるか否かは、前記周辺ブロックに対するMIPモードインジケータに基づいて決定され、
前記MIPモードインジケータは、ビットストリームから取得される、請求項1に記載の画像復号化方法。
【請求項4】
前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが同一であり、前記第1候補イントラ予測モードが、DCモードを示す予測モード値よりも大きい値を有するイントラ予測モードであることに基づき、前記候補イントラ予測モードリストは、前記第1候補イントラ予測モードの値を含むと決定される、請求項1に記載の画像復号化方法。
【請求項5】
前記所定の候補イントラ予測モードは、DCモード及び垂直モードのうちの少なくとも一つを含む、請求項1に記載の画像復号化方法。
【請求項6】
前記候補イントラ予測モードリストに基づいて前記現在ブロックのイントラ予測モードを決定するステップは、ビットストリームから取得されたイントラ予測モードインジケータに基づいて、前記候補イントラ予測モードリストに含まれる候補イントラ予測モードのうちのいずれか一つを、前記現在ブロックのイントラ予測モードであると決定することにより行われる、請求項1に記載の画像復号化方法。
【請求項7】
前記現在ブロックに対応するクロマブロックのイントラ予測モードを決定するための参照モードを決定するステップと、
前記参照モードに基づいて前記クロマブロックのイントラ予測モードを決定するステップと、を含み、
前記現在ブロックはルマブロックであり、
前記現在ブロックのイントラ予測モードがMIPモードであることに基づいて、前記参照モードはPlanarモードであると決定される、請求項1に記載の画像復号化方法。
【請求項8】
前記クロマブロックのイントラ予測モードは前記参照モードであると決定される、請求項7に記載の画像復号化方法。
【請求項9】
前記現在ブロックのイントラ予測モードがMIPモードでないことに基づき、前記参照モードは前記現在ブロックのイントラ予測モードに基づいて決定される、請求項8に記載の画像復号化方法。
【請求項10】
画像符号化装置によって行われる画像符号化方法であって、
現在ブロックの予測モードを識別するステップと、
前記現在ブロックの予測モードがイントラ予測モードであることに基づき、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて候補イントラ予測モードを決定するステップと、
前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成するステップと、
前記候補イントラ予測モードリストに基づいて、前記現在ブロックのイントラ予測モードを示すイントラ予測モードインジケータを符号化するステップと、を含み、
前記周辺ブロックの予測モードがMIP(matrix based intra prediction)モードであることに基づいて、前記候補イントラ予測モードは所定のイントラ予測モードであると決定され、
前記候補イントラ予測モードリストは、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて生成され、
前記第1候補イントラ予測モードは、前記現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定され、
前記第2候補イントラ予測モードは、前記現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定され、
前記第1周辺ブロックの予測モードがMIPモードであり、前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが互いに異なり、前記第2候補イントラ予測モードが、DCモードを表す予測モード値よりも大きい値を有するイントラ予測モードであることに基づいて、前記候補イントラ予測モードリストは、前記第2候補イントラ予測モードを含むと決定される、画像符号化方法。
【請求項11】
画像符号化方法によって生成されたビットストリームを伝送する方法であって、
現在ブロックの予測モードを識別するステップと、
前記現在ブロックの予測モードがイントラ予測モードであることに基づき、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて候補イントラ予測モードを決定するステップと、
前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成するステップと、
前記候補イントラ予測モードリストに基づいて、前記現在ブロックのイントラ予測モードを示すイントラ予測モードインジケータを符号化するステップと、を含み、
前記周辺ブロックの予測モードがMIP(matrix based intra prediction)モードであることに基づいて、前記候補イントラ予測モードは所定のイントラ予測モードであると決定され、
前記候補イントラ予測モードリストは、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて生成され、
前記第1候補イントラ予測モードは、前記現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定され、
前記第2候補イントラ予測モードは、前記現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定され、
前記第1周辺ブロックの予測モードがMIPモードであり、前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが互いに異なり、前記第2候補イントラ予測モードが、DCモードを表す予測モード値よりも大きい値を有するイントラ予測モードであることに基づいて、前記候補イントラ予測モードリストは、前記第2候補イントラ予測モードを含むと決定される、ビットストリームを伝送する方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像符号化/復号化方法及び装置に係り、より詳細には、イントラ予測モードをシグナリングする画像符号化/復号化方法、装置、及び本開示の画像符号化方法/装置によって生成されたビットストリームを伝送する方法に関する。
【背景技術】
【0002】
最近、高解像度、高品質の画像、例えばHD(High Definition)画像及びUHD(Ultra High Definition)画像への需要が多様な分野で増加している。画像データが高解像度、高品質になるほど、従来の画像データに比べて、伝送される情報量又はビット量が相対的に増加する。伝送される情報量又はビット量の増加は、伝送費用と保存費用の増加をもたらす。
【0003】
これにより、高解像度、高品質画像の情報を効果的に伝送又は保存し、再生するための高効率の画像圧縮技術が求められる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示は、符号化/復号化効率が向上した画像符号化/復号化方法及び装置を提供することを目的とする。
【0005】
また、本開示は、周辺ブロックのイントラ予測モードを所定の予測モードにマッピングすることにより、予測複雑度を低減することができる画像符号化/復号化方法及び装置を提供することを目的とする。
【0006】
また、本開示は、本開示による画像符号化方法又は装置によって生成されたビットストリームを伝送する方法を提供することを目的とする。
【0007】
また、本開示は、本開示による画像符号化方法又は装置によって生成されたビットストリームを保存した記録媒体を提供することを目的とする。
【0008】
また、本開示は、本開示による画像復号化装置によって受信され、復号化されて画像の復元に利用されるビットストリームを保存した記録媒体を提供することを目的とする。
【0009】
本開示で解決しようとする技術的課題は上述した技術的課題に制限されず、上述していない別の技術的課題は以降の記載から本開示の属する技術分野における通常の知識を有する者に明確に理解できるであろう。
【課題を解決するための手段】
【0010】
本開示の一態様による画像復号化装置によって行われる画像復号化方法は、画像復号化装置によって行われる画像復号化方法であって、現在ブロックの予測モードを識別するステップと、前記現在ブロックの予測モードがイントラ予測モードである場合、前記現在ブロックのイントラ予測モードがMIP(Matrix-based intra prediction)モードであるか否かを識別するステップと、前記現在ブロックのイントラ予測モードがMIPモードでない場合、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて前記現在ブロックに対する候補イントラ予測モードを決定するステップと、前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成するステップと、前記候補イントラ予測モードリストに基づいて前記現在ブロックのイントラ予測モードを決定するステップとを含み、前記周辺ブロックの予測モードがMIPモードである場合、前記候補イントラ予測モードは所定のイントラ予測モードに決定され得る。前記所定のイントラ予測モードは、Planarモード、DCモード、水平モード及び垂直モードのうちのいずれか一つのモードであり得る。
【0011】
前記周辺ブロックの予測モードがMIPモードであるか否かは、前記周辺ブロックに対するMIPモードインジケータに基づいて決定され、MIPモードインジケータはビットストリームから取得され得る。
【0012】
前記候補イントラ予測モードリストは、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて生成され、前記第1候補イントラ予測モードは、前記現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定され、前記第2候補イントラ予測モードは、前記現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定され得る。
【0013】
前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが同一であり、前記第1候補イントラ予測モードが、DCモードを示す予測モード値よりも大きい値を有するイントラ予測モードである場合、前記候補イントラ予測モードリストは、前記第1候補イントラ予測モードの値を含むように決定され得る。
【0014】
前記第1周辺ブロックの予測モードと前記第2周辺ブロックの予測モードの両方がMIPモードである場合、前記候補イントラ予測モードリストは、所定の候補イントラ予測モードを含むように決定され得る。
【0015】
前記所定の候補イントラ予測モードは、DCモード及び垂直モードのうちの少なくとも一つを含むことができる。
【0016】
前記第1周辺ブロックの予測モードがMIPモードであり、前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが互いに異なり、前記第2候補イントラ予測モードが、DCモードを表す予測モード値よりも大きい値を有するイントラ予測モードである場合、前記候補イントラ予測モードリストは、前記第2候補イントラ予測モードを含むように決定され得る。
【0017】
前記候補イントラ予測モードリストに基づいて前記現在ブロックのイントラ予測モードを決定するステップは、ビットストリームから取得されたイントラ予測モードインジケータに基づいて、前記候補イントラ予測モードリストに含まれている候補イントラ予測モードのうちのいずれか一つの候補イントラ予測モードを前記現在ブロックのイントラ予測モードとして決定することにより行われ得る。
【0018】
また、前記画像復号化方法は、前記現在ブロックに対応するクロマブロックのイントラ予測モードを決定するための参照モードを決定するステップと、前記参照モードに基づいて前記クロマブロックのイントラ予測モードを決定するステップと、を含むことができる。このとき、前記現在ブロックはルマブロックであり、前記現在ブロックのイントラ予測モードがMIPモードである場合、前記参照モードはPlanarモードに決定され得る。
【0019】
前記クロマブロックのイントラ予測モードは前記参照モードと決定され得る。
【0020】
前記現在ブロックのイントラ予測モードがMIPモードでない場合、前記参照モードは前記現在ブロックのイントラ予測モードに基づいて決定され得る。
【0021】
また、本開示の一態様による画像復号化装置は、メモリ及び少なくとも一つのプロセッサを含む画像復号化装置であって、前記少なくとも一つのプロセッサは、現在ブロックの予測モードを識別し、前記現在ブロックの予測モードがイントラ予測モードである場合、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて前記現在ブロックに対する候補イントラ予測モードを決定し、前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成し、前記候補イントラ予測モードリストに基づいて前記現在ブロックのイントラ予測モードを決定し、前記周辺ブロックの予測モードがMIP(matrix based intra prediction)モードである場合、前記候補イントラ予測モードは所定のイントラ予測モードに決定され得る。
【0022】
また、本開示の一態様による画像符号化装置によって行われる画像符号化方法は、現在ブロックの予測モードを識別するステップと、前記現在ブロックの予測モードがイントラ予測モードである場合、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて候補イントラ予測モードを決定するステップと、前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成するステップと、前記候補イントラ予測モードリストに基づいて、前記現在ブロックのイントラ予測モードを示すイントラ予測モードインジケータを符号化するステップと、を含むことができる。前記周辺ブロックの予測モードがMIP(matrix based intra prediction)モードである場合、前記候補イントラ予測モードは所定のイントラ予測モードに決定され得る。
【0023】
前記所定のイントラ予測モードは、Planarモード、DCモード、水平モード及び垂直モードのうちのいずれか一つのモードであり得る。
【0024】
前記候補イントラ予測モードリストは、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて生成され、前記第1候補イントラ予測モードは、前記現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定され、前記第2候補イントラ予測モードは、前記現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定されるが、前記第1周辺ブロックの予測モードと前記第2周辺ブロックの予測モードの両方がMIPモードである場合、前記候補イントラ予測モードリストは、所定の候補イントラ予測モードを含むように決定され得る。
【0025】
また、所定の候補イントラ予測モードは、DCモード及び垂直モードのうちの少なくとも一つを含むことができる。
【0026】
本開示の別の態様による伝送方法は、本開示の画像符号化装置又は画像符号化方法によって生成されたビットストリームを伝送することができる。
【0027】
本開示の別の態様によるコンピュータ可読記録媒体は、本開示の画像符号化方法又は画像符号化装置によって生成されたビットストリームを保存することができる。
【0028】
本開示について簡略に要約して上述した特徴は、後述する本開示の詳細な説明の例示的な態様に過ぎず、本開示の範囲を制限するものではない。
【発明の効果】
【0029】
本開示によれば、符号化/復号化効率が向上した画像符号化/復号化方法及び装置が提供されることができる。
【0030】
また、本開示によれば、周辺ブロックのイントラ予測モードを所定の予測モードにマッピングすることにより、予測複雑度を低減することができる画像符号化/復号化方法及び装置が提供されることができる。
【0031】
また、本開示によれば、本開示による画像符号化方法又は装置によって生成されたビットストリームを伝送する方法が提供されることができる。
【0032】
また、本開示によれば、本開示による画像符号化方法又は装置によって生成されたビットストリームを保存した記録媒体が提供されることができる。
【0033】
また、本開示によれば、本開示による画像復号化装置によって受信され、復号化されて画像の復元に利用されるビットストリームを保存した記録媒体が提供されることができる。
【0034】
本開示で得られる効果は、上述した効果に限定されず、上述していない別の効果は、以降の記載から、本開示の属する技術分野における通常の知識を有する者に明確に理解できるだろう。
【図面の簡単な説明】
【0035】
図1】本開示による実施例が適用できるビデオコーディングシステムを概略的に示す図である。
図2】本開示による実施例が適用できる画像符号化装置を概略的に示す図である。
図3】本開示による実施例が適用できる画像復号化装置を概略的に示す図である。
図4】一実施例によるスライスとタイル構造を示す図である。
図5】一実施例による方向性イントラ予測モードを説明するための図である。
図6】一実施例による方向性イントラ予測モードを説明するための図である。
図7】一実施例によるMIPモードを一般イントラ予測モードにマッピングするマッピングテーブルを示す図である。
図8】一実施例によるMIPモードを説明する参照図である。
図9】一実施例によるMIPモードを説明する参照図である。
図10】一実施例によるコーディングユニットのシンタックスを示す図である。
図11】一実施例によるコーディングユニットのシンタックスを示す図である。
図12】一実施例によるコーディングユニットのシンタックスを示す図である。
図13】一実施例による一般イントラ予測モードをMIPモードにマッピングするマッピングテーブルを示す図である。
図14】一実施例による所定のMIPイントラ予測モードで構成されたMPMリストを示す図である。
図15】一実施例によるMPMリストを用いてイントラ予測モードを符号化する方法を説明するフローチャートである。
図16】一実施例による復号化装置がMPMリストを用いて復号化を行う方法を説明するフローチャートである。
図17】一実施例によるマッピング方法を用いてMPMリストを生成する方法を説明するフローチャートである。
図18】他の一実施例によるマッピング方法を用いてMPMリストを生成する方法を説明するフローチャートである。
図19】一実施例による単純化されたマッピング方法を用いてMPMリストを生成する方法を説明するフローチャートである。
図20】一実施例による符号化装置が単純化されたマッピング方法を用いてMPMリストを生成する方法を説明するフローチャートである。
図21】一実施例による復号化装置が単純化されたマッピング方法を用いてMPMリストを生成する方法を説明するフローチャートである。
図22図19の単純化されたマッピング方法を用いた符号化性能データを示す図である。
図23】他の一実施例による単純化されたマッピング方法を用いてMPMリストを生成する方法を説明するフローチャートである。
図24図23の単純化されたマッピング方法を用いた符号化性能データを示す図である。
図25】別の一実施例によるマッピング方法を用いてMPMリストを生成する方法を説明するフローチャートである。
図26】別の一実施例による単純化されたマッピング方法を用いた符号化性能データを示す図である。
図27】本開示の実施例が適用できるコンテンツストリーミングシステムを例示する図である。
【発明を実施するための形態】
【0036】
以下、添付図面を参照して、本開示の実施例について、本開示の属する技術分野における通常の知識を有する者が容易に実施し得るように詳細に説明する。しかし、本開示は、様々な異なる形態で実現でき、ここで説明する実施例に限定されない。
【0037】
本開示の実施例を説明するにあたり、公知の構成又は機能についての具体的な説明が本開示の要旨を不明確にするおそれがあると判断される場合には、それについての詳細な説明は省略する。そして、図面において、本開示についての説明と関係のない部分は省略し、同様の部分には同様の図面符号を付した。
【0038】
本開示において、ある構成要素が他の構成要素と「連結」、「結合」又は「接続」されているとするとき、これは、直接的な連結関係だけでなく、それらの間に別の構成要素が存在する間接的な連結関係も含むことができる。また、ある構成要素が他の構成要素を「含む」又は「有する」とするとき、これは、特に反対される記載がない限り、別の構成要素を排除するのではなく、別の構成要素をさらに含むことができることを意味する。
【0039】
本開示において、「第1」、「第2」などの用語は、一つの構成要素を他の構成要素から区別する目的のみで使用され、特に言及されない限り、構成要素間の順序又は重要度などを限定しない。したがって、本開示の範囲内において、一実施例の第1構成要素を他の実施例で第2構成要素と呼んでもよく、これと同様に、一実施例の第2構成要素を他の実施例で第1構成要素と呼んでもよい。
【0040】
本開示において、互いに区別される構成要素は、それぞれの特徴を明確に説明するためのものであり、構成要素が必ずしも分離されることを意味するものではない。つまり、複数の構成要素が統合されて一つのハードウェア又はソフトウェア単位で構成されてもよく、一つの構成要素が分散されて複数のハードウェア又はソフトウェア単位で構成されてもよい。よって、別に言及しなくても、このように統合された又は分散された実施例も本開示の範囲に含まれる。
【0041】
本開示において、さまざまな実施例で説明する構成要素が必ず必要不可欠な構成要素を意味するのではなく、一部は選択的な構成要素であり得る。したがって、一実施例で説明する構成要素の部分集合で構成される実施例も本開示の範囲に含まれる。また、様々な実施例で説明する構成要素にさらに他の構成要素を含む実施例も、本開示の範囲に含まれる。
【0042】
本開示は、画像の符号化及び復号化に関するものであって、本開示で使用される用語は、本開示で新たに定義されない限り、本開示の属する技術分野における通常の意味を持つことができる。
【0043】
本開示において、「ピクチャ(picture)」は、一般的に、特定の時間帯のいずれか一つの画像を示す単位を意味し、スライス(slice)/タイル(tile)は、ピクチャの一部を構成する符号化単位であって、一つのピクチャは、一つ以上のスライス/タイルで構成できる。また、スライス/タイルは、一つ以上のCTU(coding tree unit)を含むことができる。
【0044】
本開示において、「ピクセル(pixel)」又は「ペル(pel)」は、一つのピクチャ(又は画像)を構成する最小の単位を意味することができる。また、ピクセルに対応する用語として「サンプル(sample)」が使用できる。サンプルは、一般的に、ピクセル又はピクセルの値を示すことができ、ルマ(luma)成分のピクセル/ピクセル値のみを示すこともでき、クロマ(chroma)成分のピクセル/ピクセル値のみを示すこともできる。
【0045】
本開示において、「ユニット(unit)」は、画像処理の基本単位を示すことができる。ユニットは、ピクチャの特定の領域及び当該領域に関連する情報のうちの少なくとも一つを含むことができる。ユニットは、場合に応じて、「サンプルアレイ」、「ブロック(block)」又は「領域(area)」などの用語と混用して使用できる。一般な場合、M×Nブロックは、M個の列とN個の行からなるサンプル(又はサンプルアレイ)又は変換係数(transform coefficient)のセット(又はアレイ)を含むことができる。
【0046】
本開示において、「現在ブロック」は、「現在コーディングブロック」、「現在コーディングユニット」、「符号化対象ブロック」、「復号化対象ブロック」又は「処理対象ブロック」のうちのいずれか一つを意味することができる。予測が行われる場合、「現在ブロック」は、「現在予測ブロック」又は「予測対象ブロック」を意味することができる。変換(逆変換)/量子化(逆量子化)が行われる場合、「現在ブロック」は「現在変換ブロック」又は「変換対象ブロック」を意味することができる。フィルタリングが行われる場合、「現在ブロック」は「フィルタリング対象ブロック」を意味することができる。
【0047】
また、本開示において、「現在ブロック」は、クロマブロックという明示的な記載がない限り、「現在ブロックのルマブロック」を意味することができる。「現在ブロックのクロマブロック」は、明示的に「クロマブロック」又は「現在クロマブロック」のようにクロマブロックという明示的な記載を含んで表現できる。
【0048】
本開示において、「/」と「、」は「及び/又は」と解釈されることができる。例えば、「A/B」と「A、B」は「A及び/又はB」と解釈されることができる。また、「A/B/C」と「A、B、C」は「A、B及び/又はCのうちの少なくとも一つ」を意味することができる。
【0049】
本開示において、「又は」は「及び/又は」と解釈されることができる。例えば、「A又はB」は、1)「A」のみを意味するか、2)「B」のみを意味するか、3)「A及びB」を意味することができる。又は、本開示において、「又は」は、「追加的に又は代替的に(additionally or alternatively)」を意味することができる。
【0050】
ビデオコーディングシステムの概要
【0051】
図1は本開示によるビデオコーディングシステムを示す図である。
【0052】
一実施例によるビデオコーディングシステムは、符号化装置10及び復号化装置20を含むことができる。符号化装置10は、符号化されたビデオ(video)及び/又は画像(image)情報又はデータをファイル又はストリーミング形式でデジタル記憶媒体又はネットワークを介して復号化装置20へ伝達することができる。
【0053】
一実施例よる符号化装置10は、ビデオソース生成部11、符号化部12及び伝送部13を含むことができる。一実施例による復号化装置20は、受信部21、復号化部22及びレンダリング部23を含むことができる。前記符号化部12は、ビデオ/画像符号化部と呼ばれることができ、前記復号化部22は、ビデオ/画像復号化部と呼ばれることができる。伝送部13は符号化部12に含まれることができる。受信部21は復号化部22に含まれることができる。レンダリング部23はディスプレイ部を含むこともでき、ディスプレイ部は別個のデバイス又は外部コンポーネントとして構成されることもできる。
【0054】
ビデオソース生成部11は、ビデオ/画像のキャプチャ、合成又は生成過程などを介してビデオ/画像を取得することができる。ビデオソース生成部11は、ビデオ/画像キャプチャデバイス及び/又はビデオ/画像生成デバイスを含むことができる。ビデオ/画像キャプチャデバイスは、例えば、一つ以上のカメラ、以前にキャプチャされたビデオ/画像を含むビデオ/画像アーカイブなどを含むことができる。ビデオ/画像生成デバイスは、例えば、コンピュータ、タブレット及びスマートフォンなどを含むことができ、(電子的に)ビデオ/画像を生成することができる。例えば、コンピュータなどを介して仮想のビデオ/画像が生成されることができ、この場合、ビデオ/画像キャプチャ過程は、関連データが生成される過程に置き換えられることができる。
【0055】
符号化部12は、入力ビデオ/画像を符号化することができる。符号化部12は、圧縮及び符号化効率のために、予測、変換、量子化などの一連の手順を行うことができる。符号化部12は、符号化されたデータ(符号化されたビデオ/画像情報)をビットストリーム(bitstream)形式で出力することができる。
【0056】
伝送部13は、ビットストリーム形式で出力された、符号化されたビデオ/画像情報又はデータを、ファイル又はストリーミング形式でデジタル記憶媒体又はネットワークを介して復号化装置20の受信部21に伝達することができる。デジタル記憶媒体は、USB、SD、CD、DVD、Blu-ray、HDD、SSDなどのさまざまな記憶媒体を含むことができる。伝送部13は、予め決められたファイルフォーマットを介してメディアファイルを生成するためのエレメントを含むことができ、放送/通信ネットワークを介して伝送するためのエレメントを含むことができる。受信部21は、前記記憶媒体又はネットワークから前記ビットストリームを抽出/受信して復号化部22に伝達することができる。
【0057】
復号化部22は、符号化部12の動作に対応する逆量子化、逆変換、予測などの一連の手順を行ってビデオ/画像を復号化することができる。
【0058】
レンダリング部23は、復号化されたビデオ/画像をレンダリングすることができる。レンダリングされたビデオ/画像は、ディスプレイ部を介して表示されることができる。
【0059】
画像符号化装置の概要
【0060】
図2は本開示による実施例が適用できる画像符号化装置を概略的に示す図である。
【0061】
図2に示されているように、画像符号化装置100は、画像分割部110、減算部115、変換部120、量子化部130、逆量子化部140、逆変換部150、加算部155、フィルタリング部160、メモリ170、インター予測部180、イントラ予測部185及びエントロピー符号化部190を含むことができる。インター予測部180及びイントラ予測部185は、合わせて「予測部」と呼ばれることができる。変換部120、量子化部130、逆量子化部140及び逆変換部150は、レジデュアル(residual)処理部に含まれることができる。レジデュアル処理部は減算部115をさらに含むこともできる。
【0062】
画像符号化装置100を構成する複数の構成部の全部又は少なくとも一部は、実施例によって一つのハードウェアコンポーネント(例えば、エンコーダ又はプロセッサ)で実現できる。また、メモリ170は、DPB(decoded picture buffer)を含むことができ、デジタル記憶媒体によって実現できる。
【0063】
画像分割部110は、画像符号化装置100に入力された入力画像(又は、ピクチャ、フレーム)を一つ以上の処理ユニット(processing unit)に分割することができる。一例として、前記処理ユニットは、コーディングユニット(coding unit、CU)と呼ばれることができる。コーディングユニットは、コーディングツリーユニット(coding tree unit、CTU)又は最大コーディングユニット(largest coding unit、LCU)をQT/BT/TT(Quad-tree/binary-tree/ternary-tree)構造によって再帰的に(recursively)分割することにより取得されることができる。例えば、一つのコーディングユニットは、四分木構造、二分木構造及び/又は三分木構造に基づいて、下位(deeper)デプスの複数のコーディングユニットに分割されることができる。コーディングユニットの分割のために、四分木構造が先に適用され、二分木構造及び/又は三分木構造が後で適用されることができる。それ以上分割されない最終コーディングユニットを基に、本開示によるコーディング手順が行われることができる。最大コーディングユニットが直ちに最終コーディングユニットとして使用されることができ、最大コーディングユニットを分割して取得した下位デプスのコーディングユニットが最終コーディングユニットとして使用されることもできる。ここで、コーディング手順とは、後述する予測、変換及び/又は復元などの手順を含むことができる。他の例として、前記コーディング手順の処理ユニットは、予測ユニット(PU:Prediction Unit)又は変換ユニット(TU:Transform Unit)であることができる。前記予測ユニット及び前記変換ユニットは、それぞれ前記最終コーディングユニットから分割又はパーティショニングされることができる。前記予測ユニットは、サンプル予測の単位であることができ、前記変換ユニットは、変換係数を誘導する単位、及び/又は変換係数からレジデュアル信号(residual signal)を誘導する単位であることができる。
【0064】
予測部(インター予測部180又はイントラ予測部185)は、処理対象ブロック(現在ブロック)に対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部は、現在ブロック又はCU単位でイントラ予測が適用されるか、或いはインター予測が適用されるかを決定することができる。予測部は、現在ブロックの予測に関するさまざまな情報を生成してエントロピー符号化部190へ伝達することができる。予測に関する情報は、エントロピー符号化部190で符号化されてビットストリーム形式で出力されることができる。
【0065】
イントラ予測部185は、現在ピクチャ内のサンプルを参照して現在ブロックを予測することができる。参照される前記サンプルは、イントラ予測モード及び/又はイントラ予測技法に従って、前記現在ブロックの周辺(neighbor)に位置することもでき、或いは離れて位置することもできる。イントラ予測モードは、複数の非方向性モードと複数の方向性モードを含むことができる。非方向性モードは、例えば、DCモード及びPlanarモードを含むことができる。方向性モードは、予測方向の細密な程度に応じて、例えば33個の方向性予測モード又は65個の方向性予測モードを含むことができる。ただし、これは例示に過ぎず、設定に基づいてそれ以上又はそれ以下の個数の方向性予測モードが使用できる。イントラ予測部185は、周辺ブロックに適用された予測モードを用いて、現在ブロックに適用される予測モードを決定することもできる。
【0066】
インター予測部180は、参照ピクチャ上で動きベクトルによって特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを誘導することができる。この時、インター予測モードで伝送される動き情報の量を減らすために、周辺ブロックと現在ブロックとの動き情報の相関性に基づいて動き情報をブロック、サブブロック又はサンプル単位で予測することができる。前記動き情報は、動きベクトル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方向(L0予測、L1予測、Bi予測など)情報をさらに含むことができる。インター予測の場合、周辺ブロックは、現在ピクチャ内に存在する空間周辺ブロック(spatial neighboring block)と、参照ピクチャに存在する時間周辺ブロック(temporal neighboring block)を含むことができる。前記参照ブロックを含む参照ピクチャと、前記時間周辺ブロックを含む参照ピクチャとは、同一でもよく、互いに異なってもよい。前記時間周辺ブロックは、コロケート参照ブロック(collocated reference block)、コロケートCU(colCU)などの名前で呼ばれることができる。前記時間周辺ブロックを含む参照ピクチャは、コロケートピクチャ(collocated picture、colPic)と呼ばれることができる。例えば、インター予測部180は、周辺ブロックに基づいて動き情報候補リストを構成し、前記現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導出するために、どの候補が使用されるかを指示する情報を生成することができる。様々な予測モードに基づいてインター予測が行われることができ、例えばスキップモードとマージモードの場合に、インター予測部180は、周辺ブロックの動き情報を現在ブロックの動き情報として用いることができる。スキップモードの場合、マージモードとは異なり、レジデュアル信号が伝送されないことができる。動き情報予測(motion vector prediction、MVP)モードの場合、周辺ブロックの動きベクトルを動きベクトル予測子(motion vector predictor)として用い、動きベクトル差分(motion vector difference)及び動きベクトル予測子に対するインジケータ(indicator)を符号化することにより、現在ブロックの動きベクトルをシグナリングすることができる。動きベクトル差分は、現在ブロックの動きベクトルと動きベクトル予測子との差を意味することができる。
【0067】
予測部は、後述する様々な予測方法及び/又は予測技法に基づいて予測信号を生成することができる。例えば、予測部は、現在ブロックの予測のために、イントラ予測又はインター予測を適用することができるだけでなく、イントラ予測とインター予測を同時に適用することができる。現在ブロックの予測のためにイントラ予測とインター予測を同時に適用する予測方法は、CIIP(combined inter and intra prediction)と呼ばれることができる。また、予測部は、現在ブロックの予測のためにイントラブロックコピー(intra block copy、IBC)を行うこともできる。イントラブロックコピーは、例えば、SCC(screen content coding)などのようにゲームなどのコンテンツ画像/動画コーディングのために使用できる。IBCは、現在ブロックから所定の距離だけ離れた位置の現在ピクチャ内の既に復元された参照ブロックを用いて現在ブロックを予測する方法である。IBCが適用される場合、現在ピクチャ内の参照ブロックの位置は、前記所定の距離に該当するベクトル(ブロックベクトル)として符号化されることができる。IBCは、基本的に、現在ピクチャ内で予測を行うが、現在ピクチャ内で参照ブロックを導出するという点において、インター予測と同様に行われることができる。すなわち、IBCは、本開示で説明されるインター予測技法のうちの少なくとも一つを用いることができる。
【0068】
予測部によって生成された予測信号は、復元信号を生成するために用いられるか、或いはレジデュアル信号を生成するために用いられることができる。減算部115は、入力画像信号(原本ブロック、原本サンプルアレイ)から、予測部から出力された予測信号(予測されたブロック、予測サンプルアレイ)を減算して、レジデュアル信号(residual signal、残余ブロック、残余サンプルアレイ)を生成することができる。生成されたレジデュアル信号は、変換部120へ伝送されることができる。
【0069】
変換部120は、レジデュアル信号に変換技法を適用して変換係数(transform coefficients)を生成することができる。例えば、変換技法は、DCT(Discrete Cosine Transform)、DST(Discrete Sine Transform)、KLT(Karhunen-Loeve Transform)、GBT(Graph-Based Transform)、又はCNT(Conditionally Non-linear Transform)のうちの少なくとも一つを含むことができる。ここで、GBTは、ピクセル間の関係情報をグラフで表現するとするとき、このグラフから得られた変換を意味する。CNTは、以前に復元されたすべてのピクセル(all previously reconstructed pixel)を用いて予測信号を生成し、それに基づいて取得される変換を意味する。変換過程は、正方形の同じサイズを有するピクセルブロックに適用されることもでき、正方形ではない可変サイズのブロックに適用されることもできる。
【0070】
量子化部130は、変換係数を量子化してエントロピー符号化部190へ伝送することができる。エントロピー符号化部190は、量子化された信号(量子化された変換係数に関する情報)を符号化してビットストリーム形式で出力することができる。前記量子化された変換係数に関する情報は、レジデュアル情報と呼ばれることができる。量子化部130は、係数スキャン順序(scan order)に基づいて、ブロック形式の量子化された変換係数を1次元ベクトル形式で再整列することができ、前記1次元ベクトル形式の量子化された変換係数に基づいて、前記量子化された変換係数に関する情報を生成することもできる。
【0071】
エントロピー符号化部190は、例えば、指数ゴロム(exponential Golomb)、CAVLC(context-adaptive variable length coding)、CABAC(context-adaptive binary arithmetic coding)などの様々な符号化方法を行うことができる。エントロピー符号化部190は、量子化された変換係数の他に、ビデオ/画像の復元に必要な情報(例えば、シンタックス要素(syntax elements)の値など)を一緒に又は別途に符号化することもできる。符号化された情報(例えば、符号化されたビデオ/画像情報)は、ビットストリーム形式でNAL(network abstraction layer)ユニット単位で伝送又は保存されることができる。前記ビデオ/画像情報は、適応パラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)又はビデオパラメータセット(VPS)などの様々なパラメータセットに関する情報をさらに含むことができる。また、前記ビデオ/画像情報は、一般制限情報(general constraint information)をさらに含むことができる。本開示で言及されたシグナリング情報、伝送される情報及び/又はシンタックス要素は、上述した符号化手順を介して符号化されて前記ビットストリームに含まれることができる。
【0072】
前記ビットストリームは、ネットワークを介して伝送されることができ、或いはデジタル記憶媒体に保存されることができる。ここで、ネットワークは、放送網及び/又は通信網などを含むことができ、デジタル記憶媒体は、USB、SD、CD、DVD、Blu-ray、HDD、SSDなどのさまざまな記憶媒体を含むことができる。エントロピー符号化部190から出力された信号を伝送する伝送部(図示せず)及び/又は保存する保存部(図示せず)が画像符号化装置100の内/外部要素として備えられることができ、或いは、伝送部はエントロピー符号化部190の構成要素として備えられることもできる。
【0073】
量子化部130から出力された、量子化された変換係数は、レジデュアル信号を生成するために用いられることができる。例えば、量子化された変換係数に逆量子化部140及び逆変換部150を介して逆量子化及び逆変換を適用することにより、レジデュアル信号(レジデュアルブロック又はレジデュアルサンプル)を復元することができる。
【0074】
加算部155は、復元されたレジデュアル信号をインター予測部180又はイントラ予測部185から出力された予測信号に加えることにより、復元(reconstructed)信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成することができる。スキップモードが適用された場合のように処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用されることができる。加算部155は、復元部又は復元ブロック生成部と呼ばれることができる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用されることができ、後述するようにフィルタリングを経て次のピクチャのインター予測のために使用されることもできる。
【0075】
フィルタリング部160は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部160は、復元ピクチャに様々なフィルタリング方法を適用して、修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ170、具体的にはメモリ170のDPBに保存することができる。前記様々なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、双方向フィルタ(bilateral filter)などを含むことができる。フィルタリング部160は、各フィルタリング方法についての説明で後述するようにフィルタリングに関する様々な情報を生成してエントロピー符号化部190へ伝達することができる。フィルタリングに関する情報は、エントロピー符号化部190で符号化されてビットストリーム形式で出力されることができる。
【0076】
メモリ170に伝送された、修正された復元ピクチャは、インター予測部180で参照ピクチャとして使用されることができる。画像符号化装置100は、これを介してインター予測が適用される場合、画像符号化装置100と画像復号化装置での予測ミスマッチを回避することができ、符号化効率も向上させることができる。
【0077】
メモリ170内のDPBは、インター予測部180での参照ピクチャとして使用するために、修正された復元ピクチャを保存することができる。メモリ170は、現在ピクチャ内の動き情報が導出された(又は符号化された)ブロックの動き情報及び/又は既に復元されたピクチャ内ブロックの動き情報を保存することができる。前記保存された動き情報は、空間周辺ブロックの動き情報又は時間周辺ブロックの動き情報として活用するためにインター予測部180に伝達されることができる。メモリ170は、現在ピクチャ内の復元されたブロックの復元サンプルを保存することができ、イントラ予測部185に伝達することができる。
【0078】
画像復号化装置の概要
【0079】
図3は本開示による実施例が適用できる画像復号化装置を概略的に示す図である。
【0080】
図3に示されているように、画像復号化装置200は、エントロピー復号化部210、逆量子化部220、逆変換部230、加算部235、フィルタリング部240、メモリ250、インター予測部260及びイントラ予測部265を含んで構成できる。インター予測部260及びイントラ予測部265を合わせて「予測部」と呼ばれることができる。逆量子化部220、逆変換部230はレジデュアル処理部に含まれることができる。
【0081】
画像復号化装置200を構成する複数の構成部の全部又は少なくとも一部は、実施例によって一つのハードウェアコンポーネント(例えば、デコーダ又はプロセッサ)で実現されることができる。また、メモリ170は、DPBを含むことができ、デジタル記憶媒体によって実現できる。
【0082】
ビデオ/画像情報を含むビットストリームを受信した画像復号化装置200は、図2の画像符号化装置100で行われたプロセスに対応するプロセスを実行して画像を復元することができる。例えば、画像復号化装置200は、画像符号化装置で適用された処理ユニットを用いて復号化を行うことができる。したがって、復号化の処理ユニットは、例えばコーディングユニットであることができる。コーディングユニットは、コーディングツリーユニットであるか或いは最大コーディングユニットを分割して取得できる。そして、画像復号化装置200を介して復号化及び出力された復元画像信号は、再生装置(図示せず)を介して再生できる。
【0083】
画像復号化装置200は、図2の画像符号化装置から出力された信号をビットストリーム形式で受信することができる。受信された信号は、エントロピー復号化部210を介して復号化できる。例えば、エントロピー復号化部210は、前記ビットストリームをパーシングして画像復元(又はピクチャ復元)に必要な情報(例えば、ビデオ/画像情報)を導出することができる。前記ビデオ/画像情報は、適応パラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)又はビデオパラメータセット(VPS)などの様々なパラメータセットに関する情報をさらに含むことができる。また、前記ビデオ/画像情報は、一般制限情報(general constraint information)をさらに含むことができる。画像復号化装置は、画像を復号化するために、前記パラメータセットに関する情報及び/又は前記一般制限情報をさらに用いることができる。本開示で言及されたシグナリング情報、受信される情報及び/又はシンタックス要素は、前記復号化手順を介して復号化されることにより、前記ビットストリームから取得されることができる。例えば、エントロピー復号化部210は、指数ゴロム符号化、CAVLC又はCABACなどのコーディング方法に基づいてビットストリーム内の情報を復号化し、画像の復元に必要なシンタックス要素の値、レジデュアルに関する変換係数の量子化された値を出力することができる。より詳細には、CABACエントロピー復号化方法は、ビットストリームから各シンタックス要素に該当するビン(bin)を受信し、復号化対象シンタックス要素情報と周辺ブロック及び復号化対象ブロックの復号化情報、或いは以前ステップで復号化されたシンボル/ビンの情報を用いてコンテキスト(context)モデルを決定し、決定されたコンテキストモデルに基づいてビン(bin)の発生確率を予測してビンの算術復号化(arithmetic decoding)を行うことにより、各シンタックス要素の値に該当するシンボルを生成することができる。この時、CABACエントロピー復号化方法は、コンテキストモデルの決定後、次のシンボル/ビンのコンテキストモデルのために、復号化されたシンボル/ビンの情報を用いてコンテキストモデルを更新することができる。エントロピー復号化部210で復号化された情報のうち、予測に関する情報は、予測部(インター予測部260及びイントラ予測部265)に提供され、エントロピー復号化部210でエントロピー復号化が行われたレジデュアル値、すなわち量子化された変換係数及び関連パラメータ情報は、逆量子化部220に入力されることができる。また、エントロピー復号化部210で復号化された情報のうち、フィルタリングに関する情報は、フィルタリング部240に提供されることができる。一方、画像符号化装置から出力された信号を受信する受信部(図示せず)が画像復号化装置200の内/外部要素としてさらに備えられることができ、又は、受信部はエントロピー復号化部210の構成要素として備えられることもできる。
【0084】
一方、本開示による画像復号化装置は、ビデオ/画像/ピクチャ復号化装置と呼ばれることができる。前記画像復号化装置は、情報デコーダ(ビデオ/画像/ピクチャ情報デコーダ)及び/又はサンプルデコーダ(ビデオ/画像/ピクチャサンプルデコーダ)を含むこともできる。前記情報デコーダは、エントロピー復号化部210を含むことができ、前記サンプルデコーダは、逆量子化部220、逆変換部230、加算部235、フィルタリング部240、メモリ250、インター予測部260及びイントラ予測部265のうちの少なくとも一つを含むことができる。
【0085】
逆量子化部220では、量子化された変換係数を逆量子化して変換係数を出力することができる。逆量子化部220は、量子化された変換係数を2次元のブロック形式で再整列することができる。この場合、前記再整列は、画像符号化装置で行われた係数スキャンの順序に基づいて行われることができる。逆量子化部220は、量子化パラメータ(例えば、量子化ステップサイズ情報)を用いて、量子化された変換係数に対する逆量子化を行い、変換係数(transform coefficient)を取得することができる。
【0086】
逆変換部230では、変換係数を逆変換してレジデュアル信号(レジデュアルブロック、レジデュアルサンプルアレイ)を取得することができる。
【0087】
予測部は、現在ブロックに対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部は、エントロピー復号化部210から出力された前記予測に関する情報に基づいて、前記現在ブロックにイントラ予測が適用されるか或いはインター予測が適用されるかを決定することができ、具体的なイントラ/インター予測モード(予測技法)を決定することができる。
【0088】
予測部が後述の様々な予測方法(技法)に基づいて予測信号を生成することができるのは、画像符号化装置100の予測部についての説明で述べたのと同様である。
【0089】
イントラ予測部265は、現在ピクチャ内のサンプルを参照して現在ブロックを予測することができる。イントラ予測部185についての説明は、イントラ予測部265に対しても同様に適用されることができる。
【0090】
インター予測部260は、参照ピクチャ上で動きベクトルによって特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを誘導することができる。この時、インター予測モードで伝送される動き情報の量を減らすために、周辺ブロックと現在ブロックとの動き情報の相関性に基づいて動き情報をブロック、サブブロック又はサンプル単位で予測することができる。前記動き情報は、動きベクトル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方向(L0予測、L1予測、Bi予測など)情報をさらに含むことができる。インター予測の場合に、周辺ブロックは、現在ピクチャ内に存在する空間周辺ブロック(spatial neighboring block)と参照ピクチャに存在する時間周辺ブロック(temporal neighboring block)を含むことができる。例えば、インター予測部260は、周辺ブロックに基づいて動き情報候補リストを構成し、受信した候補選択情報に基づいて前記現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導出することができる。様々な予測モード(技法)に基づいてインター予測が行われることができ、前記予測に関する情報は、前記現在ブロックに対するインター予測のモード(技法)を指示する情報を含むことができる。
【0091】
加算部235は、取得されたレジデュアル信号を予測部(インター予測部260及び/又はイントラ予測部265を含む)から出力された予測信号(予測されたブロック、予測サンプルアレイ)に加えることにより、復元信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成することができる。スキップモードが適用された場合のように処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用されることができる。加算部155についての説明は、加算部235に対しても同様に適用されることができる。加算部235は、復元部又は復元ブロック生成部と呼ばれることができる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用されることができ、後述するようにフィルタリングを経て次のピクチャのインター予測のために使用されることもできる。
【0092】
フィルタリング部240は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部240は、復元ピクチャに様々なフィルタリング方法を適用して、修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ250、具体的にはメモリ250のDPBに保存することができる。前記様々なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、双方向フィルタ(bilateral filter)などを含むことができる。
【0093】
メモリ250のDPBに保存された(修正された)復元ピクチャは、インター予測部260で参照ピクチャとして使用されることができる。メモリ250は、現在ピクチャ内の動き情報が導出された(又は復号化された)ブロックの動き情報及び/又は既に復元されたピクチャ内のブロックの動き情報を保存することができる。前記保存された動き情報は、空間周辺ブロックの動き情報又は時間周辺ブロックの動き情報として活用するために、インター予測部260に伝達することができる。メモリ250は、現在ピクチャ内の復元されたブロックの復元サンプルを保存することができ、イントラ予測部265に伝達することができる。
【0094】
本開示において、画像符号化装置100のフィルタリング部160、インター予測部180及びイントラ予測部185で説明された実施例は、それぞれ画像復号化装置200のフィルタリング部240、インター予測部260及びイントラ予測部265にも、同様に又は対応するように適用されることができる。
【0095】
パーティショニング構造
【0096】
本開示による画像符号化/復号化方法は、一実施例によるパーティショニング構造に基づいて行われることができる。例えば、予測、レジデュアル処理((逆)変換、(逆)量子化など)、シンタックス要素コーディング、フィルタリングなどの手順は、前記パーティショニング構造に基づいて導出されたCTU、CU(及び/又はTU、PU)に基づいて行われることができる。ブロックパーティショニング手順は、上述した符号化装置の画像分割部110で行われ、パーティショニング関連情報がエントロピー符号化部190から(符号化)処理されてビットストリーム形式で復号化装置へ伝達されることができる。復号化装置のエントロピー復号化部210は、前記ビットストリームから取得した前記パーティショニング関連情報に基づいて現在ピクチャのブロックパーティショニング構造を導出し、これに基づいて画像復号化のための一連の手順(例えば、予測、レジデュアル処理、ブロック/ピクチャ復元、インループフィルタリングなど)を行うことができる。CUサイズとTUサイズとが同じであってもよく、又はCU領域内に複数のTUが存在してもよい。一方、CUサイズとは、一般的にルマ成分(サンプル)CBサイズを示すことができる。TUサイズとは、一般的にルマ成分(サンプル)TBサイズを示すことができる。クロマ成分(サンプル)CB又はTBサイズは、ピクチャ/画像のクロマフォーマット(カラーフォーマット、例えば、4:4:4、4:2:2、4:2:0など)による成分比に応じてルマ成分(サンプル)CB/TBサイズに基づいて導出できる。前記TUサイズは、利用可能な最大TBサイズを示すmaxTbSizeに基づいて導出できる。例えば、前記CUサイズが前記maxTbSizeよりも大きい場合、前記CUから前記maxTbSizeの複数のTU(TB)が導出され、前記TU(TB)単位で変換/逆変換が行われることができる。また、例えばイントラ予測が適用される場合、イントラ予測モード/タイプは、前記CU(又はCB)単位で導出され、周辺参照サンプルの導出及び予測サンプル生成手順は、前記TU(TB)単位で行われ得る。この場合、一つのCU(又はCB)領域内に一つ又は複数のTU(又はTB)が存在することができ、この場合、前記複数のTU(又はTB)は同一のイントラ予測モード/タイプを共有することができる。
【0097】
また、本開示による画像の符号化及び復号化において、画像処理単位は、階層構造を持つことができる。例えば、一つのピクチャは、一つ以上のタイル又はタイルグループに区分できる。一つのタイルグループは一つ以上のタイルを含むことができる。一つのタイルは一つ以上のCTUを含むことができる。前記CTUは、上述したように一つ以上のCUに分割されることができる。タイルは、ピクチャ内で特定の行及び特定の列に集合されるCTUを含む四角領域で構成できる。タイルグループは、ピクチャ内のタイルラスタスキャンによる整数個のタイルを含むことができる。タイルグループヘッダは、当該タイルグループに適用できる情報/パラメータをシグナリングすることができる。符号化/復号化装置がマルチコアプロセッサを有する場合、前記タイル又はタイルグループに対する符号化/復号化手順は並列処理できる。ここで、タイルグループは、イントラタイルグループ(intra(I) tile group)、一方向予測タイルグループ(predictive(P) tile group)、及び双方向予測タイルグループ(bi-predictive(B) tile group)を含むタイルグループタイプのうちのいずれか一つのタイプを持つことができる。Iタイルグループ内のブロックに対しては、予測のために、インター予測は使用されず、イントラ予測のみ使用され得る。もちろん、この場合も、予測なしに原本サンプル値をコーディングしてシグナリングすることもできる。Pタイルグループ内のブロックに対しては、イントラ予測又はインター予測が使用でき、インター予測が使用される場合には、単(uni)予測のみ使用できる。一方、Bタイルグループ内のブロックに対しては、イントラ予測又はインター予測が使用でき、インター予測が使用される場合には、最大双(bi)予測まで使用できる。
【0098】
また、一つのピクチャは一つ以上のスライスに区分できる。スライスは、整数個のタイルで構成されるか、或いは一つのタイル内に連続的に行配列されたCTUの集合で構成され得る。スライスの2つのモードが支援できる。一つはラスタスキャンスライスモードであり、もう一つは四角スライスモードである。ラスタスキャンスライスモードにおいて、スライスは、図4に示すように一つのピクチャ内に存在するラスタスキャン順に連続するタイルで構成できる。四角スライスモードにおいて、スライスは、一つのピクチャ内に存在するタイルを四角状に集めることにより構成できる。四角スライス内のタイルは、スライス内でタイルラスタスキャン順序に従ってスキャンできる。
【0099】
符号化装置では、画像の特性(例えば、解像度)に応じて、或いはコーディングの効率又は並列処理を考慮してタイル/タイルグループ、スライス、最大及び最小コーディングユニットサイズを決定し、それに関する情報又はそれを誘導可能な情報がビットストリームに含まれることができる。
【0100】
デコーダでは、現在ピクチャのスライス、タイル/タイルグループ、タイル内のCTUが多数のコーディングユニットに分割されたかなどを示す情報を取得することができる。このような情報は、特定の条件下でのみ取得するように(伝送されるように)すれば効率を高めることができる。
【0101】
前記スライスヘッダ又はタイルグループヘッダ(タイルグループヘッダシンタックス)は、前記スライス又はタイルグループに共通に適用可能な情報/パラメータを含むことができる。APS(APSシンタックス)又はPPS(PPSシンタックス)は、一つ以上のピクチャに共通に適用可能な情報/パラメータを含むことができる。前記SPS(SPSシンタックス)は、一つ以上のシーケンスに共通に適用可能な情報/パラメータを含むことができる。前記VPS(VPSシンタックス)は、前記ビデオ全般に共通に適用可能な情報/パラメータを含むことができる。本明細書において、上位レベルシンタックスとは、前記APSシンタックス、PPSシンタックス、SPSシンタックス及びVPSシンタックスのうちの少なくとも一つを含むことができる。
【0102】
また、例えば、前記タイル/タイルグループの分割及び構成などに関する情報は、前記上位レベルシンタックスを介して符号化段階で構成され、ビットストリーム形式で復号化装置へ伝達されることができる。
【0103】
また、本開示による画像の符号化及び復号化において、コーディングツリースキームは、ルマ及びクロマ成分ブロックが個別的(separate)ブロックツリー構造を持つことを支援することができる。一つのCTU内のルマ及びクロマブロックが同じブロックツリー構造を持つ場合は、シングルツリー(SINGLE_TREE)と表すことができる。一つのCTU内のルマ及びクロマブロックが個別的ブロックツリー構造を持つ場合は、デュアルツリー(DUAL_TREE)と表すことができる。この場合、ルマ成分に対するブロックツリータイプは、DUAL_TREE_LUMAと呼ばれることができ、クロマ成分に対するブロックツリータイプは、DUAL_TREE_CHROMAと呼ばれることができる。P及びBスライス/タイルグループに対して、一つのCTU内のルマ及びクロマCTBは、同じコーディングツリー構造を持つように制限できる。ところが、Iスライス/タイルグループに対して、ルマ及びクロマブロックは、互いに個別的ブロックツリー構造を持つことができる。もし個別的ブロックツリーモードが適用される場合、ルマCTBは特定のコーディングツリー構造に基づいてCUに分割され、クロマCTBは他のコーディングツリー構造に基づいてクロマCUに分割されることができる。例えば、Iスライス/タイルグループ内のCUは、ルマ成分のコーディングブロック又は2つのクロマ成分のコーディングブロックで構成され、P又はBスライス/タイルグループのCUは、3つのカラー成分のブロックで構成されることができる。以下、本開示において、スライスはタイル/タイルグループと呼ばれることができ、タイル/タイルグループはスライスと呼ばれることができる。
【0104】
インラ予測の概要
【0105】
以下、一実施例によるイントラ予測方法について説明する。イントラ予測は、現在ブロックの属するピクチャ(以下、現在ピクチャ)内の参照サンプルに基づいて現在ブロックに対する予測サンプルを生成する予測を示すことができる。現在ブロックにイントラ予測が適用される場合、現在ブロックのイントラ予測に使用する周辺参照サンプルが導出されることができる。前記現在ブロックの周辺参照サンプルは、サイズnW×nHの現在ブロックの左側(left)境界に隣接するサンプル及び左下側(bottom-left)に隣接する合計2×nH個のサンプル、現在ブロックの上側(top)境界に隣接するサンプル、及び右上側(top-right)に隣接する合計2×nW個のサンプル、及び現在ブロックの左上側(top-left)に隣接する1つのサンプルを含むことができる。又は、前記現在ブロックの周辺参照サンプルは、複数列の上側周辺サンプル及び複数行の左側周辺サンプルを含むこともできる。また、前記現在ブロックの周辺参照サンプルは、サイズnW×nHの現在ブロックの右側(right)境界に隣接する合計nH個のサンプル、現在ブロックの下側(bottom)境界に隣接する合計nW個のサンプル、及び現在ブロックの右下側(bottom-right)に隣接する1つのサンプルを含むこともできる。一方、後述するISPが適用される場合、前記周辺参照サンプルは、サブパーティション単位で導出され得る。
【0106】
一方、現在ブロックの周辺参照サンプルの一部は、未だ復号化されていないか或いは利用可能でないことができる。この場合、復号化装置は、利用可能でないサンプルを利用可能なサンプルで代替(substitution)して、予測に使用する周辺参照サンプルを構成することができる。又は、利用可能なサンプルの補間(interpolation)を介して、予測に使用する周辺参照サンプルを構成することができる。
【0107】
周辺参照サンプルが導出された場合、(i)現在ブロックの周辺(neighboring)参照サンプルの平均(average)又は補間(interpolation)に基づいて予測サンプルを誘導することができ、(ii)現在ブロックの周辺参照サンプルのうちの予測サンプルに対して、特定の(予測)方向に存在する参照サンプルに基づいて前記予測サンプルを誘導することもできる。(i)の場合は非方向性モード又は非角度モード、(ii)の場合は方向性(directional)モード又は角度(angular)モードとそれぞれ呼ばれることができる。また、前記周辺参照サンプルのうち、前記現在ブロックの予測サンプルを基準に、前記現在ブロックのイントラ予測モードの予測方向の反対方向に位置する前記第2周辺サンプルと前記第1周辺サンプルとの補間を介して前記予測サンプルが生成されることもできる。上述した場合は、線形補間イントラ予測(Linear interpolation intra prediction、LIP)と呼ばれることができる。また、線形モデル(linear model)を用いてルマサンプルに基づいてクロマ予測サンプルが生成されることもできる。この場合は、LMモードと呼ばれることができる。また、フィルタリングされた周辺参照サンプルに基づいて前記現在ブロックの一時予測サンプルを導出し、前記従来の周辺参照サンプル、すなわち、フィルタリングされていない周辺参照サンプルのうち、前記イントラ予測モードに応じて導出された少なくとも一つの参照サンプルと前記一時予測サンプルを加重和(weighted sum)して、前記現在ブロックの予測サンプルを導出することもできる。上述した場合は、PDPC(Position dependent intra prediction)と呼ばれることができる。また、現在ブロックの周辺多重参照サンプルラインのうち、最も予測精度が高い参照サンプルラインを選択して、当該ラインで予測方向に位置する参照サンプルを用いて予測サンプルを導出する。このとき、使用された参照サンプルラインを復号化装置に指示(シグナリング)する方法でイントラ予測符号化を行うことができる。上述した場合は、MRL(multi-reference line)イントラ予測又はMRLベースのイントラ予測と呼ばれることができる。また、現在ブロックを垂直又は水平のサブパーティションに分けて同一のイントラ予測モードに基づいてイントラ予測を行うが、前記サブパーティション単位で周辺参照サンプルを導出して用いることができる。すなわち、この場合、現在ブロックに対するイントラ予測モードが前記サブパーティションに同一に適用されるが、前記サブパーティション単位で周辺参照サンプルを導出して用いることにより、場合に応じてイントラ予測性能を高めることができる。このような予測方法は、ISP(intra sub-partitions)又はISPベースのイントラ予測と呼ばれることができる。また、予測サンプルを基準とした予測方向が周辺参照サンプル同士の間を指す場合、すなわち、予測方向が分数サンプル位置を指す場合、当該予測方向の周辺(当該分数サンプル位置の周辺)に位置する複数の参照サンプルの補間を介して予測サンプルの値を導出することもできる。上述したイントラ予測方法は、イントラ予測モードと区分してイントラ予測タイプと呼ばれることができる。また、現在ブロックの左側と上側に位置する再構成された周辺画素を用いて現在ブロックのサブサンプリングされた画素セットに対する予測信号を生成した後、生成された予測信号と周辺サンプル値を用いて垂直及び水平方向に補間して元のサイズの予測信号を生成することにより、現在ブロックのイントラ予測を行うMIP(Matrix-weighted Intra prediction)が適用されることもできる。
【0108】
前記イントラ予測タイプは、イントラ予測技法又は付加イントラ予測モードなどの多様な用語で呼ばれることができる。例えば、前記イントラ予測タイプ(又は付加イントラ予測モードなど)は、上述したLIPO、PDPC、MRL、ISP、MIPのうちの少なくとも一つを含むことができる。前記イントラ予測タイプに関する情報は、符号化装置で符号化されてビットストリームに含まれることで、復号化装置へシグナリングされることができる。前記イントラ予測タイプに関する情報は、各イントラ予測タイプの適用有無を指すフラグ情報、又は様々なイントラ予測タイプのうちのいずれか一つを指示するインデックス情報などの多様な形態で実現できる。
【0109】
一方、必要に応じて導出された予測サンプルに対する後処理フィルタリングが行われることもできる。具体的には、イントラ予測手順は、イントラ予測モード/タイプ決定ステップ、周辺参照サンプル導出ステップ、イントラ予測モード/タイプベースの予測サンプル導出ステップを含むことができる。また、必要に応じて、導出された予測サンプルに対する後処理フィルタリング(post-filtering)ステップが行われることもできる。
【0110】
以下、イントラ予測に基づくビデオ/画像符号化方法を説明する。まず、符号化装置は、現在ブロックに対するイントラ予測を行う。符号化装置は、現在ブロックに対するイントラ予測モード/タイプを導出し、現在ブロックの周辺参照サンプルを導出することができ、前記イントラ予測モード/タイプ及び前記周辺参照サンプルに基づいて前記現在ブロック内の予測サンプルを生成することができる。ここで、イントラ予測モード/タイプの決定、周辺参照サンプルの導出及び予測サンプルの生成手順は、同時に行われてもよく、いずれか一つの手順が他の手順よりも先に行われてもよい。一方、後述する予測サンプルフィルタリング手順が行われる場合、イントラ予測部185は予測サンプルフィルタ部をさらに含むこともできる。符号化装置は、複数のイントラ予測モード/タイプのうち、前記現在ブロックに対して適用されるモード/タイプを決定することができる。符号化装置は、前記イントラ予測モード/タイプに対するRD(rate-distortion)費用を比較し、前記現在ブロックに対する最適のイントラ予測モード/タイプを決定することができる。
【0111】
一方、符号化装置は予測サンプルフィルタリング手順を行うこともできる。予測サンプルフィルタリングはポストフィルタリングと呼ばれることができる。前記予測サンプルフィルタリング手順によって、前記予測サンプルのうちの一部又は全部がフィルタリングされることができる。場合によっては、前記予測サンプルフィルタリング手順は省略できる。
【0112】
次に、符号化装置は、予測サンプルに基づいて、前記現在ブロックに対するレジデュアルサンプルを生成することができる。符号化装置は、現在ブロックの原本サンプルを前記予測サンプルと位相に基づいて比較し、前記レジデュアルサンプルを導出することができる。
【0113】
次に、符号化装置は、前記イントラ予測に関する情報(予測情報)、及び前記レジデュアルサンプルに関するレジデュアル情報を含む画像情報を符号化することができる。前記予測情報は前記イントラ予測モード情報及び前記イントラ予測タイプ情報を含むことができる。符号化装置は、符号化された画像情報をビットストリーム形式で出力することができる。出力されたビットストリームは、記憶媒体又はネットワークを介して復号化装置へ伝達されることができる。
【0114】
前記レジデュアル情報は、後述するレジデュアルコーディングシンタックスを含むことができる。符号化装置は、前記レジデュアルサンプルを変換/量子化し、量子化された変換係数を導出することができる。前記レジデュアル情報は、前記量子化された変換係数に対する情報を含むことができる。
【0115】
一方、前述したように、符号化装置は、復元ピクチャ(復元サンプル及び復元ブロックを含む)を生成することができる。このために、符号化装置は、前記量子化された変換係数をさらに逆量子化/逆変換処理して(修正された)レジデュアルサンプルを導出することができる。このようにレジデュアルサンプルを変換/量子化した後、再び逆量子化/逆変換を行う理由は、上述したように、復号化装置から導出されるレジデュアルサンプルと同一のレジデュアルサンプルを導出するためである。符号化装置は、前記予測サンプルと前記(修正された)レジデュアルサンプルに基づいて、前記現在ブロックに対する復元サンプルを含む復元ブロックを生成することができる。前記復元ブロックに基づいて、前記現在ピクチャに対する復元ピクチャが生成されることができる。前記復元ピクチャにインループフィルタリング手順などがさらに適用できるのは、上述したとおりである。
【0116】
以下、イントラ予測に基づいたビデオ/画像復号化方法を説明する。復号化装置は、前記符号化装置で行われた動作と対応する動作を行うことができる。
【0117】
まず、復号化装置は、受信された予測情報(イントラ予測モード/タイプ情報)に基づいて、現在ブロックに対するイントラ予測モード/タイプを導出することができる。復号化装置は、前記現在ブロックの周辺参照サンプルを導出することができる。復号化装置は、前記イントラ予測モード/タイプ及び前記周辺参照サンプルに基づいて前記現在ブロック内の予測サンプルを生成することができる。この場合、復号化装置は、予測サンプルフィルタリング手順を行うことができる。予測サンプルフィルタリングは、ポストフィルタリングと呼ばれることができる。前記予測サンプルフィルタリング手順によって、前記予測サンプルのうちの一部又は全部がフィルタリングされることができる。場合によっては、予測サンプルフィルタリング手順は省略できる。
【0118】
復号化装置は、受信されたレジデュアル情報に基づいて、前記現在ブロックに対するレジデュアルサンプルを生成することができる。復号化装置は、前記予測サンプル及び前記レジデュアルサンプルに基づいて前記現在ブロックに対する復元サンプルを生成し、前記復元サンプルを含む復元ブロックを導出することができる。前記復元ブロックに基づいて前記現在ピクチャに対する復元ピクチャが生成されることができる。前記復元ピクチャにインループフィルタリング手順などがさらに適用されることもできる。
【0119】
前記イントラ予測モード情報は、例えばMPM(most probable mode)が前記現在ブロックに適用されるか、それともリメイニングモード(remaining mode)が適用されるかを示すフラグ情報(例えば、intra_luma_mpm_flag)を含むことができ、前記MPMが前記現在ブロックに適用される場合、前記イントラ予測モード情報は、前記イントラ予測モード候補(MPM候補)のうちのいずれか一つを指すインデックス情報(例えば、intra_luma_mpm_idx)をさらに含むことができる。前記イントラ予測モード候補(MPM候補)は、MPM候補リスト又はMPMリストとして構成されることができる。例えば、MPM候補リストは、周辺ブロックのイントラ予測モード又は予め設定された基本イントラ予測モードを含んで構成されることができる。また、前記MPMが前記現在ブロックに適用されない場合、前記イントラ予測モード情報は、前記イントラ予測モード候補(MPM候補)を除いた残りのイントラ予測モードのうちのいずれか一つを指示するリメイニングモード情報(例えば、intra_luma_mpm_remainder)をさらに含むことができる。復号化装置は、前記イントラ予測モード情報に基づいて、前記現在ブロックのイントラ予測モードを決定することができる。
【0120】
一方、前述したMIPモードが適用される場合、現在ブロックのMIPモードを決定するためにMIPモードのためのMPMリストが構成されることもできる。MIPモードのためのMPMリストは、前述したイントラモードのためのMPMリストを構成する方式で構成されることができる。例えば、MIPモードが適用される場合、MIPモードのためのMPM候補リストは、周辺ブロックのMIPモード又は予め設定された基本MIPモードを含んで構成されることができる。さらに、前記MPMが前記現在ブロックに適用されない場合、前記イントラ予測モード情報は、前記MIPモード候補(MPM候補)を除いた残りのMIPモードのうちのいずれか一つを指すリメイニングモード情報(例えば、intra_luma_mpm_remainder)をさらに含むことができる。復号化装置は、前記イントラ予測モード情報に基づいて前記現在ブロックのMIPモードを決定することができる。
【0121】
イントラ予測モード
【0122】
以下、イントラ予測モードについてより詳細に説明する。図5は一実施例によるイントラ予測方向を示す図である。自然画像(natural video)で提示された任意のエッジ方向(edge direction)をキャプチャするために、図5に示すように、イントラ予測モードは、2つの非方向性イントラ予測モードと65個の方向性イントラ予測モードを含むことができる。前記非方向性イントラ予測モードは、 Planar イントラ予測モード及びDCイントラ予測モードを含むことができ、前記方向性イントラ予測モードは、2番乃至66番のイントラ予測モードを含むことができる。
【0123】
一方、前記イントラ予測モードは、前述したイントラ予測モードの他にも、クロマサンプルのためのCCLM(cross-component linear model)モードをさらに含むことができる。CCLMモードは、LMパラメータの導出のために、左側サンプルを考慮するか、上側サンプルを考慮するか、両方を考慮するかによってL_CCLM、T_CCLM、LT_CCLMに分けられることができ、クロマ成分に対してのみ適用されることができる。例えば、イントラ予測モードは、下記表のようにイントラ予測モード値に従ってインデキシングできる。
【0124】
【表1】
【0125】
図6は他の一実施例によるイントラ予測方向を示す図である。ここで、破線方向は、正方形ではないブロックのみに適用される広角モードを示す。図6に示すように、自然画像(natural video)で提示された任意のエッジ方向(edge direction)をキャプチャするために、一実施例によるイントラ予測モードは、2つの非方向性イントラ予測モードと共に93個の方向性イントラ予測モードを含むことができる。非方向性イントラ予測モードは、Planarモード及びDCモードを含むことができる。方向性イントラ予測モードは、図6の矢印で示すように、2番乃至80番と-1番乃至-14番で構成されるイントラ予測モードを含むことができる。前記PlanarモードはINTRA_PLANAR、DCモードはINTRA_DCとそれぞれ表記されることができる。そして、方向性イントラ予測モードは、INTRA_ANGULAR-14乃至INTRA_ANGULAR-1及びINTRA_ANGULAR2乃至INTRA_ANGULAR80と表記されることができる。
【0126】
一方、前記イントラ予測タイプ(又は付加イントラ予測モードなど)は、上述したLIP、PDPC、MRL、ISP及びMIPのうちの少なくとも一つを含むことができる。前記イントラ予測タイプはイントラ予測タイプ情報に基づいて指示でき、前記イントラ予測タイプ情報は様々な形態で実現できる。一例として、前記イントラ予測タイプ情報は、前記イントラ予測タイプのうちの一つを指示するイントラ予測タイプインデックス情報を含むことができる。他の例として、前記イントラ予測タイプ情報は、前記MRLが前記現在ブロックに適用されるか、及び適用される場合には何番目の参照サンプルラインが用いられるか否かを示す参照サンプルライン情報(例えば、intra_luma_ref_idx)、前記ISPが前記現在ブロックに適用されるかを示すISPフラグ情報(例えば、intra_subpartitions_mode_flag)、前記ISPが適用される場合にサブパーティションの分割タイプを指示するISPタイプ情報(例えば、intra_subpartitions_split_flag)、PDPCの適用有無を示すフラグ情報、又はLIPの適用有無を示すフラグ情報、MIPの適用有無を示すMIPフラグ情報のうちの少なくとも一つを含むことができる。
【0127】
イントラ予測モード情報及び/又は前記イントラ予測タイプ情報は、本開示で説明したコーディング方法を介して符号化/復号化できる。例えば、前記イントラ予測モード情報及び/又は前記イントラ予測タイプ情報は、truncated(rice) binary codeに基づいてエントロピーコーディング(例えば、CABAC、CAVLC)を介して符号化/復号化できる。
【0128】
クロマブロックに対するイントラ予測
【0129】
現在ブロックにイントラ予測が行われる場合、現在ブロックのルマ成分ブロック(ルマブロック)に対する予測及びクロマ成分ブロック(クロマブロック)に対する予測が行われることができ、この場合、クロマブロックに対するイントラ予測モードは、ルマブロックに対するイントラ予測モードとは個別に設定されることができる。
【0130】
例えば、クロマブロックに対するイントラ予測モードは、イントラクロマ予測モード情報に基づいて指示されることができ、前記イントラクロマ予測モード情報は、intra_chroma_pred_modeシンタックス要素の形でシグナリングされることができる。一例として、前記イントラクロマ予測モード情報は、Planarモード、DCモード、垂直(vertical)モード、水平(horizontal)モード、DM(Derived Mode)、及びCCLMモードのうちのいずれか一つを指し示すことができる。ここで、前記Planarモードは0番のイントラ予測モード、前記DCモードは1番のイントラ予測モード、前記垂直モードは26番のイントラ予測モード、前記水平モードは10番のイントラ予測モードをそれぞれ示すことができる。DMはdirect modeと呼ばれることもできる。CCLMはLMと呼ばれることもできる。
【0131】
一方、DMとCCLMは、ルマブロックの情報を用いてクロマブロックを予測する従属的なイントラ予測モードである。前記DMは、前記ルマ成分に対するイントラ予測モードと同じイントラ予測モードが前記クロマ成分に対するイントラ予測モードに適用されるモードを示すことができる。また、前記CCLMは、クロマブロックに対する予測ブロックを生成する過程でルマブロックの復元されたサンプルをサブサンプリングした後、サブサンプリングされたサンプルにCCLMパラメータα及びβを適用して導出されたサンプルを前記クロマブロックの予測サンプルとして使用するイントラ予測モードを示すことができる。
【0132】
イントラ予測におけるMPMリスト
【0133】
イントラ予測が適用される場合、周辺ブロックのイントラ予測モードを用いて、現在ブロックに適用されるイントラ予測モードが決定されることができる。例えば、復号化装置は、現在ブロックの周辺ブロック(例えば、左側及び/又は上側周辺ブロック)のイントラ予測モード及び追加の候補モードに基づいて導出されたMPMリスト内のMPM候補のうちの一つを、ビットストリームを用いて受信されたMPMインデックス(例えば、intra_luma_mpm_idx)に基づいて選択することができる。また、復号化装置は、前記MPM候補に含まれていない残りのイントラ予測モードのうちの一つをリメイニングモード情報(例えば、intra_luma_mpm_remainder)に基づいて選択することができる。例えば、現在ブロックに適用されるイントラ予測モードがMPM候補の中にあるか、それともリメイニングモードの中にあるかは、現在ブロックのイントラ予測モードを決定するために、mpmフラグ(例えば、intra_luma_mpm_flag)に基づいて指示できる。mpmフラグの値1は、前記現在ブロックに対するイントラ予測モードがMPMリスト(候補)の中にあることを示すことができ、mpmフラグの値0は、前記現在ブロックに対するイントラ予測モードがMPMリスト(候補)内にないことを示すことができる。
【0134】
mpmフラグは、intra_luma_mpm_flagシンタックス要素の形でシグナリングされることができ、mpmインデックスは、mpm_idx又はintra_luma_mpm_idxシンタックス要素の形でシグナリングされることができ、リメイニングイントラ予測モード情報は、rem_intra_luma_pred_mode又はintra_luma_mpm_remainderシンタックス要素の形でシグナリングされることができる。一実施例において、前記リメイニングイントラ予測モード情報は、全体イントラ予測モードのうち、前記mpmリストに含まれない残りのイントラ予測モードを予測モード番号の順にインデキシングしてその中の一つを指すことができる。前記イントラ予測モードは、ルマ成分(サンプル)に対するイントラ予測モードであり得る。以下、イントラ予測モード情報は、mpmフラグ(例えば、intra_luma_mpm_flag)、mpmインデックス(例えば、mpm_idx又はintra_luma_mpm_idx)、リメイニングイントラ予測モード情報(例えば、rem_intra_luma_pred_mode又はintra_luma_mpm_remainder)のうちの少なくとも一つを含むことができる。本明細書において、MPMリストは、MPM候補リスト、candModeListなどのさまざまな用語で呼ばれることができる。
【0135】
MPMリストは、前記現在ブロックに適用される可能性の高い候補イントラ予測モード(MPM候補)を含むことができる。前記MPMリストは、周辺ブロックのイントラ予測モードを含んで構成されてもよく、予め定められた方法に従って所定のイントラ予測モードをさらに含んで構成されてもよい。
【0136】
一実施例において、MPMリスト生成の複雑度を低く維持するために、3つのMPMを含むMPMリストが生成できる。例えば、67個のイントラ予測モードが使用される場合でも、MPMリストは3つのMPM候補を含むことができる。前記MPMリストに現在ブロックのためのイントラ予測モードが含まれていない場合、リメイニングモードが使用できる。この場合、リメイニングモードは64個の残りの候補を含み、前記64個の残りの候補のうちの一つを指示するリメイニングイントラ予測モード情報がシグナリングされることができる。例えば、前記リメイニングイントラ予測モード情報は、6ビットのシンテックス要素(例えば、rem_intra_luma_pred_mode又はintra_luma_mpm_remainderシンタックス要素)を含むことができる。
【0137】
一実施例において、MPMリストを構成するために、周辺イントラモード(neighboring intra modes)、導出されたイントラモード(Derived intra modes)、及びデフォルトイントラモード(Default intra modes)が考慮できる。例えば、符号化装置は、現在ブロックの予測モードを符号化するために周辺ブロックの予測モードを用いることができる。
【0138】
例えば、符号化装置は、周辺ブロックがイントラ予測モードで符号化された場合、周辺ブロックの予測モードを確認又は誘導することができる。例えば、符号化装置は、左側周辺ブロックの予測モードと上側周辺ブロックの予測モードに基づいて現在ブロックの予測モードを決定することができ、このとき、当該周辺ブロックの予測モードをMPM(Most Probable Modes)と決定することができる。このような点で、MPMを決定することは、MPM(most probable modes)候補をリストアップすると表現するか、或いはMPMリストを構成すると表現することもできる。
【0139】
一実施例において、前記左側周辺ブロックは、前記現在ブロックの左側境界に隣接する周辺ブロックのうち最も上側に位置するブロックを示すことができる。また、前記上側周辺ブロックは、前記現在ブロックの上側境界に隣接する周辺ブロックのうち最も左側に位置するブロックを示すことができる。前記符号化装置は、前記左側周辺ブロックの予測モードと前記上側周辺ブロックの予測モードとが同一であるか否かを確認することができる。イニシャルMPMリストは、前記2つの隣接するブロックのイントラ予測モードに対するプルーニングプロセス(pruning process)を行うことにより形成できる。プルーニングプロセスは、MPMリストに互いに異なる予測モードのみが含まれるように処理されるプロセスであり得る。
【0140】
もし前記左側周辺ブロックの予測モードと前記上側周辺ブロックの予測モードとが同一でない場合、一番目のMPMは、前記左側周辺ブロックの予測モードに設定されることができ、二番目のMPMは、前記上側周辺ブロックの予測モードに設定されることができ、三番目のMPMは、イントラPlanaモード、イントラDCモード、又はイントラ垂直モード(50番のイントラ予測モード)のうちのいずれか一つに設定されることができる。具体的には、前記2つの周辺ブロックのイントラ予測モードが互いに異なる場合、前記2つのイントラ予測モードが前記MPMに設定されることができ、前記MPMによるプルーニングチェック(pruning check)の後にデフォルトイントラモードのうちの一つが前記MPMリストに追加されることができる。ここで、前記デフォルトイントラモードは、イントラPlanarモード、イントラDCモード、及び/又はイントラ垂直モード(50番のイントラ予測モード)を含むことができる。
【0141】
例えば、前記左側周辺ブロックの予測モードと前記上側周辺ブロックの予測モードとが同一でない場合、次のケースに応じてMPMリストが構成できる。
【0142】
ケース1:左側周辺ブロックのイントラ予測モードと上側周辺ブロックのイントラ予測モードの両方がインフラPlanarモードでない場合、MPMリストは、左側周辺ブロックのイントラ予測モードと上側周辺ブロックのイントラ予測モードとイントラPlanarモードを含んで構成できる。
【0143】
ケース2:ケース1の条件が満たされていない場合、左側周辺ブロックのイントラ予測モードと上側周辺ブロックのイントラ予測モードの両方がイントラDCモードでない場合、MPMリストは、左側周辺ブロックのイントラ予測モードと上側周辺ブロックのイントラ予測モードとイントラDCモードとを含んで構成できる。
【0144】
ケース3:ケース2の条件が満たされていない場合、MPMリストは、左側周辺ブロックのイントラ予測モードと上側周辺ブロックのイントラ予測モードとイントラ垂直モードとを含んで構成できる。
【0145】
一方、前記左側周辺ブロックの予測モードと前記上側周辺ブロックの予測モードとが同一である場合、前記符号化装置は、前記左側周辺ブロックの予測モードが2よりも小さいか否かを確認することができる。例えば、符号化装置は、前記左側周辺ブロックの予測モードがイントラPlanarモードであるか、イントラDCモードであるか、或いは図6に示すように現在ブロックの下側に位置するブロックを指す方向性を有する予測モードであるかを確認することができる。
【0146】
もし前記左側周辺ブロックの予測モードが2よりも小さい場合、一番目のMPMはイントラPlanarモードに設定されることができ、二番目のMPMはイントラDCモードに設定されることができ、三番目のMPMはイントラ垂直モード(50番のイントラ予測モード)に設定されることができる。
【0147】
一方、前記左側周辺ブロックの予測モードが2よりも小さくない場合、一番目のMPMは前記左側周辺ブロックの予測モードに設定されることができ、二番目のMPMは(左側周辺ブロックの予測モード-1)に設定されることができ、三番目のMPMは(左側周辺ブロックの予測モード+1)に設定されることができる。
【0148】
例えば、前記左側周辺ブロックの予測モードと前記上側周辺ブロックの予測モードとが同一である場合、前記MPMリストは、後述する内容の如く構成できる。
【0149】
ケース1:左側周辺ブロックのイントラ予測モードの値が2よりも小さい場合、MPMリストは、イントラPlanarモード、イントラDCモード、及びイントラ垂直モードを含んで構成できる。
【0150】
ケース2:ケース1の条件が満たされていない場合、MPMリストは、左側周辺ブロックのイントラ予測モードと、左側周辺ブロックのイントラ予測モードの値をAとしたとき、2+((A+61)%64))の値に該当するイントラ予測モード、及び2+((A-1)%64)の値に該当するイントラ予測モードを含んで構成できる。
【0151】
一方、固有なモードのみが含まれることができるように複製モードを除去する追加のプルーニングプロセスが行われることができる。また、前記3つのMPMを除いた64個のnon-MPMモードのエントロピーコーディングに対して、6ビット固定長コード(6-bit fixed length code)が使用できる。すなわち、前記64個のnon-MPMモードを示すインデックスは、6ビット固定長コード(6-bit Fixed Length Code、6-bit FLC)にエントロピーコーディングできる。
【0152】
そして、前記符号化装置は、現在ブロックに適用される最適のイントラ予測モードが、先立って構成されたMPM候補内に属するかを判断することができる。
【0153】
もし現在ブロックのイントラ予測モードがMPM候補に属する場合、符号化装置はMPMフラグとMPMインデックスを符号化することができる。ここで、MPMフラグは、現在ブロックのイントラ予測モードが周辺のイントラ予測ブロックから誘導(すなわち、現在ブロックのイントラ予測モードがMPM内に属する)されるか否かを指示することができる。また、MPMインデックスは、前記MPM候補の中で現在ブロックのイントラ予測モードとしてどのMPMモードが適用されるかを示すことができる。
【0154】
これに対し、現在ブロックのイントラ予測モードがMPM候補に属さない場合、符号化装置は、現在ブロックのイントラ予測モードを、リメイニングモードを用いて符号化することができる。
【0155】
一方、一実施例において、符号化装置と復号化装置は、6つのMPMを含むMPMリストを構成することもできる。6つのMPMを含むMPMリストを生成するために、デフォルトMPMリストが考慮されることができる。デフォルトMPMリストは、左側周辺ブロックのイントラ予測モードの値をAとしたとき、次のように構成できる。
【0156】
デフォルト6MPMリスト={A、Planar(0)又はDC(1)、Vertical(50)、HOR(18)、VER-4(46)、VER+4(54)}
【0157】
さらに、2つの隣接するブロックのイントラモードに対してプルーニングプロセスを行うことにより、デフォルト6MPMリストを更新して6MPMリストを生成することができる。例えば、2つの隣接するブロックのイントラ予測モードが互いに同一であり、2つの隣接するブロックのイントラ予測モードの値がイントラDCモードの値1よりも大きい場合、6MPMリストは、デフォルトモードである左側隣接ブロックのイントラ予測モード、イントラPlanarモード及びイントラDCモードを含み、これに加えて、隣接するブロックのイントラ予測モードに所定のオフセット値を加え、全体イントラ予測モードの数をモジュラー演算することにより誘導された3つの誘導モードをさらに含むことができる。
【0158】
一方、隣接するブロックのイントラ予測モードが互いに異なる場合、6MPMリストは、2つの隣接するブロックのイントラ予測モードを最初の2つのMPMモードとして含んで構成できる。残りの4つのMPMモードは、デフォルトモードと隣接ブロックのイントラ予測モードから誘導できる。
【0159】
上述したMPMリスト構成方法は、現在ブロックにMIPが適用されていない場合に使用できる。例えば、上述したMPMリスト構成方法は、LIP、PDPC、MRL、ISPイントラ予測や、一般イントラ予測(非方向性イントラ予測及び方向性イントラ予測)で使用されるイントラ予測モードの導出のために使用できる。しかしながら、前記左側周辺ブロック又は前記上側周辺ブロックは、上述したMIPに基づいて符号化できる。この場合、MIPが適用された周辺ブロック(左側周辺ブロック/上側周辺ブロック)のMIPモード番号をそのまま、MIPが適用されていない現在ブロックのためのMPMリストに適用する場合、意図していないイントラ予測モードを指示することにより不適合であり得る。したがって、このような場合、MIPが適用された周辺ブロック(左側周辺ブロック/上側周辺ブロック)のイントラ予測モードは、DCモード又はPlanarモードであると見なされることができる。あるいは、他の例として、MIPが適用された周辺ブロック(左側周辺ブロック/上側周辺ブロック)のイントラ予測モードをマッピングテーブルに基づいて一般イントラ予測モードにマッピングさせてMPMリストの構成に用いることができる。このような場合、現在ブロックの前記ブロックサイズタイプに基づいて前記マッピングを行うことができる。例えば、前記マッピングのために、図7のような一実施例によるマッピングテーブルが使用できる。
【0160】
図7のテーブルにおいて、MIP IntraPredMode[xNbX][yNbX]は、周辺ブロック(左側周辺ブロック/上側周辺ブロック)のMIPモードを示し、block size type MipSizeIdは、周辺ブロック又は現在ブロックのブロックサイズタイプを示す。ブロックサイズタイプ値0、1、2の下の数字は、各ブロックサイズタイプである場合に、MIPモードがマッピングされる一般イントラ予測モードを示す。例えば、現在ブロックの高さ及び幅がそれぞれ4である場合をブロックサイズタイプ0とし、現在ブロックの高さ及び幅の両方が8以下である場合をブロックサイズタイプ1とし、その他の場合をブロックサイズタイプ2とすることができる。
【0161】
ここで、一般イントラ予測モードとは、MIPモードではないイントラ予測モードであって、非方向性イントラ予測モード又は方向性イントラ予測モードを意味することができる。例えば、現在ブロックのブロックサイズタイプが0であり、周辺ブロックのMIPモード番号が10である場合、マッピングされる一般イントラ予測モード番号は18であり得る。ただし、前記マッピング関係は、例示であり、変更可能である。
【0162】
また、一実施例において、MPMリストには、イントラPlanarモードが含まれないことができる。このために、現在ブロックのイントラ予測モードがイントラPlanarモードであるかを示す情報が別途シグナリングされることができる。現在ブロックの予測モードがイントラPlanarモードでない場合、イントラ予測モードをシグナリングするために、MPMリストが生成できる。符号化装置は、現在ブロックを符号化するにあたり、現在ブロックのイントラ予測モードを、次のとおりに生成されたMPMリストを用いて復号化装置へシグナリングすることができ、復号化装置は、次のとおりに生成されたMPMリストを用いて現在ブロックのイントラモードを決定することができる。
【0163】
MPMリストは、現在ブロックの周辺ブロックのイントラ予測モードに基づいて決定できる。例えば、現在ブロックの上側周辺ブロックと左側周辺ブロックのイントラ予測モードに基づいてMPMリストが決定できる。例えば、符号化装置及び復号化装置は、左側周辺ブロックのイントラ予測モードに基づいて決定された第1イントラ予測候補、及び上側周辺ブロックのイントラ予測モードに基づいて決定された第2イントラ予測候補に基づいてMPMリストを決定することができる。
【0164】
ここで、上側周辺ブロックは、現在ブロックの上側に接したブロックのうち最も右側に位置するブロックであり得る。左側周辺ブロックは、現在ブロックの左側に接したブロックのうち最も下側に位置するブロックであり得る。例えば、現在ブロックの座標が(xCb、yCb)であり、現在ブロックの幅がcbWidthであり、現在ブロックの高さがcbHeightである場合、左側周辺ブロックの座標は(xCb-1、yCb+cbHeight-1)であり、上側周辺ブロックの座標は(xCb+cbWidth-1、yCb-1)であり得る。
【0165】
符号化装置及び復号化装置は、左側周辺ブロックが利用可能でないブロックであるか、左側周辺ブロックの予測モードがイントラ予測モードでないか、或いは左側周辺ブロックの予測モードがMIPモードである場合、第1イントラ予測候補の値を、イントラPlanarモードを示す値(例えば、0)に決定することができる。符号化装置及び復号化装置は、左側周辺ブロックがこのような条件に該当しない場合、第1イントラ予測候補の値を、左側周辺ブロックのイントラ予測モードを示す値に決定することができる。
【0166】
また、符号化装置及び復号化装置は、上側周辺ブロックが利用可能でないブロックであるか、上側周辺ブロックの予測モードがイントラ予測モードでないか、或いは上側周辺ブロックの予測モードがMIPモードである場合、第2イントラ予測候補の値を、イントラPlanarモードを示す値(例えば、0)に決定することができる。符号化装置及び復号化装置は、上側周辺ブロックがこのような条件に該当しない場合、第2イントラ予測候補の値を、上側周辺ブロックのイントラ予測モードを示す値に決定することができる。
【0167】
一実施例において、MPMリストは、5つの候補モードを含むように構成できる。一実施例において、MPMリストは、次のケースに従って構成できる。以下、第1イントラ予測候補をcandIntraPredModeA、第2イントラ予測候補をcandIntraPredModeB、MPMリストをcandModeList[x]とそれぞれ表記して説明する。ここで、xは0~4の整数であり得る。
【0168】
ケース1:第1イントラ予測候補の値と第2イントラ予測候補の値とが同一であり、第1イントラ予測候補の値が1よりも大きい場合(例えば、イントラPlanarモード又はイントラDCモードでない場合)、MPMリストcandModeList[x]は、次のとおりに構成できる。
【0169】
candModeList[0]=candIntraPredModeA
【0170】
candModeList[1]=2+((candIntraPredModeA+61)%64)
【0171】
candModeList[2]=2+((candIntraPredModeA-1)%64)
【0172】
candModeList[3]=2+((candIntraPredModeA+60)%64)
【0173】
candModeList[4]=2+(candIntraPredModeA%64)
【0174】
ケース2:ケース1の条件を満たさない場合、第1イントラ予測候補の値と第2イントラ予測候補の値とが同一でなく、第1イントラ予測候補の値又は第2イントラ予測候補の値が1よりも大きい場合(例えば、イントラPlanarモード又はイントラDCモードでない場合)、MPMリストcandModeList[x]は、次のとおりに構成できる。
【0175】
まず、minABとmaxABは、次のとおりに計算できる。
【0176】
minAB=Min(candIntraPredModeA,candIntraPredModeB)
【0177】
maxAB=Max(candIntraPredModeA,candIntraPredModeB)
【0178】
第1イントラ予測候補と第2イントラ予測候補の値の両方が1よりも大きい場合、MPMリストcandModeList[0]及びcandModeList[1]は、次のとおりに構成できる。
【0179】
candModeList[0]=candIntraPredModeA
【0180】
candModeList[1]=candIntraPredModeB
【0181】
このとき、maxAB-minABの値が1である場合、candModeList[2]乃至candModeList[4]は、次のとおりに構成できる。
【0182】
candModeList[2]=2+((minAB+61)%64)
【0183】
candModeList[3]=2+((maxAB-1)%64)
【0184】
candModeList[4]=2+((minAB+60)%64)
【0185】
一方、maxAB-minABの値が62以上である場合、candModeList[2]乃至candModeList[4]は、次のとおりに構成できる。
【0186】
candModeList[2]=2+((minAB-1)%64)
【0187】
candModeList[3]=2+((maxAB+61)%64)
【0188】
candModeList[4]=2+(minAB%64)
【0189】
一方、maxAB-minABの値が2である場合、candModeList[2]乃至candModeList[4]は、次のとおりに構成できる。
【0190】
candModeList[2]=2+((minAB-1)%64)
【0191】
candModeList[3]=2+((minAB+61)%64)
【0192】
candModeList[4]=2+((maxAB-1)%64)
【0193】
一方、maxAB-minABの値が上記の条件を満たしていない場合、candModeList[2]乃至candModeList[4]は、次のとおりに構成できる。
【0194】
candModeList[2]=2+((minAB+61)%64)
【0195】
candModeList[3]=2+((minAB-1)%64)
【0196】
candModeList[4]=2+((maxAB+61)%64)
【0197】
一方、第1イントラ予測候補と第2イントラ予測候補の値の両方が1よりも大きくなく、第1イントラ予測候補と第2イントラ予測候補のうちのいずれか一つの値のみが1よりも大きい場合、MPMリストcandModeList[x]は、次のとおりに構成できる。
【0198】
candModeList[0]=maxAB
【0199】
candModeList[1]=2+((maxAB+61)%64)
【0200】
candModeList[2]=2+((maxAB-1)%64)
【0201】
candModeList[3]=2+((maxAB+60)%64)
【0202】
candModeList[4]=2+(maxAB%64)
【0203】
ケース3:ケース2の条件を満たさない場合、MPMリストcandModeList[x]は、次のとおりに構成できる。
【0204】
candModeList[0]=INTRA_DC
【0205】
candModeList[1]=INTRA_ANGULAR50
【0206】
candModeList[2]=INTRA_ANGULAR18
【0207】
candModeList[3]=INTRA_ANGULAR46
【0208】
candModeList[4]=INTRA_ANGULAR54
【0209】
MIPの概要
【0210】
MIP(matrix based intra prediction)モードは、ALWIP(affine linear weighted intra prediction)モード、LWIP(linear weighted intra prediction)モード、又はMWIP(matrix weighted intra prediction)モードと呼ばれることもできる。
【0211】
前記MIPモードが現在ブロックに対して適用される場合、i)アベレージング(averaging)ステップが行われた周辺参照サンプルを用いて、ii)マトリックスベクトルマルチプリケーション(matrix-vector-multiplication)ステップを行い、iii)必要に応じて水平/垂直補間(interpolation)ステップをさらに行うことにより、前記現在ブロックに対する予測サンプルを導出することができる。
【0212】
アベレージングステップは、周辺サンプルの値を平均化することにより行われることができる。アベレージング手順は、図8(a)に示すように、現在ブロックの幅と幅 がピクセル単位で4であれば、各境界面の平均を取って上側2個及び左側2個の合計4個のサンプルを生成することにより行われることができ、図8(b)に示すように、現在ブロックの幅と幅 がピクセル単位で4でなければ、各境界面の平均を取って上側4個及び左側4個の合計8個のサンプルを生成することにより行われることができる。
【0213】
マトリックスベクトルマルチプリケーションステップは、平均化されたサンプルに対してマトリックスベクトルを乗算した後、オフセットベクトルを加算することにより行われることができ、その結果、原本ブロックのサブサンプリングされた画素セットに対する予測信号を生成することができる。マトリックスとオフセットベクトルの大きさは、現在ブロックの幅と幅 によって決定できる。
【0214】
水平/垂直補間ステップは、サブサンプリングされた予測信号から原本ブロックのサイズの予測信号を生成するステップである。図9に示すように、サブサンプリングされた予測信号と周辺画素値とを用いて垂直及び水平補間を行うことにより、原本ブロックのサイズの予測信号を生成することができる。図9は8×8ブロックに対してMIP予測が行われる一実施例を示す。8×8ブロックの場合、図8(b)に示すように合計8個の平均化されたサンプルが生成できる。8個の平均化されたサンプルにマトリックスベクトルが乗算され、オフセットベクトルが加算されることにより、図9(a)に示すように偶数座標位置に16個のサンプル値が生成できる。その後、図9(b)に示すように、現在ブロックの上側サンプルの平均値を用いて垂直補間を行うことができる。その後、図9(c)に示すように現在ブロックの左側サンプルを用いて水平補間を行うことができる。
【0215】
前記MIPモードのために使用されるイントラ予測モードは、上述したLIP、PDPC、MRL、ISPイントラ予測、又はノーマルイントラ予測で使用されるイントラ予測モードとは異なるように構成できる。前記MIPモードのためのイントラ予測モードは、MIP intra prediction mode、MIP prediction mode又はMIP modeと呼ばれることができる。例えば、MIPのためのイントラ予測モードに応じて、前記マトリックスベクトルマルチプリケーションで使用されるマトリックス及びオフセットが異なるように設定されることができる。ここで、前記マトリックスは(MIP)重みマトリックスと呼ばれ、前記オフセットは(MIP)オフセットベクトル又は(MIP)バイアスベクトルと呼ばれることができる。
【0216】
上述したイントラ予測タイプ情報は、前記現在ブロックにMIPモードが適用されるか否かを示すMIPフラグ(例えば、intra_mip_flag)を含むことができる。MIPモードが現在ブロックに適用される場合(例えば、intra_mip_flagの値が1である場合)、前記MIPモードのためのMPMリストが別途構成されることができる。また、イントラ予測タイプ情報は、MIPモードのためにMPMリストが使用されるか否かを示すMIP MPMフラグ(例えば、intra_mip_mpm_flag)、MPMリストの中で現在ブロックに使用されるMIPモードを示すMPMインデックス(例えば、intra_mip_mpm_idx)、MPMリストで現在ブロックのMIPモードが使用されない場合、直接MIPモードを示すために使用されるリメイニングイントラ予測モード情報(例えば、intra_mip_mpm_remainder)を含むことができる。
【0217】
MIPモードが行われる場合、MIPを構成するマトリックスとオフセットに応じて様々なMIPモードが設定されることができる。MIPのためのイントラ予測モードの数は、現在ブロックのサイズに基づいて異なるように設定されることができる。例えば、i)現在ブロック(例えば、CB又はTB)の高さ及び幅がそれぞれ4である場合、35個のイントラ予測モード(すなわち、イントラ予測モード0~34)が利用可能であり、ii)現在ブロックの高さ及び幅の両方が8以下である場合、19個のイントラ予測モード(すなわち、イントラ予測モード0~18)が利用可能であり、iii)その他の場合には、11個のイントラ予測モード(すなわち、イントラ予測モード0~10)が利用可能である。
【0218】
例えば、現在ブロックの高さ及び幅がそれぞれ4である場合をブロックサイズタイプ0とし、現在ブロックの高さ及び幅の両方が8以下である場合をブロックサイズタイプ1とし、その他の場合をブロックサイズタイプ2とするとき、MIPのためのイントラ予測モードの数は、下記表のようにまとめられることができる。ただし、これは例示であり、ブロックサイズタイプ及び利用可能なイントラ予測モードの数は変更可能である。
【0219】
【表2】
【0220】
一実施例において、現在ブロックのイントラ予測モード/タイプに関する情報は、CU(CUシンタックス)などのレベルでコーディングされてシグナリングされるか、或いは条件に応じて黙示的に決定されることもできる。この場合、一部のモード/タイプに対しては明示的にシグナリングされ、残りの一部のモードは黙示的に導出されることができる。例えば、CUシンタックスは、図10乃至図12に示すように(イントラ)予測モード/タイプに関する情報などを示すことができる。
【0221】
ここで、pred_mode_flagは、現在CUの予測モードを示すことができる。例えば、pred_mode_flagの値0は、現在CUがインター予測モードで符号化されたことを示すことができる。pred_mode_flagの値1は、現在CUがイントラ予測モードで符号化されたことを示すことができる。
【0222】
pcm_flag[x0][y0]は、現在ブロックにPCM(puls coding modulation)モードが適用されるか否かを示すことができる。現在ブロックにPCMモードが適用される場合、予測/変換/量子化などが適用されず、現在ブロック内の原本サンプルの値がコーディングされてシグナリングされることができる。例えば、pcm_flag[x0][y0]は、(x0、y0)位置に該当するルマCUに対してpcm_sampleシンタックスが存在し、transfrom_tree()シンタックスが存在しないか否かを示すことができる。例えば、pcm_flag[x0][y0]の値1は、pcm_sample()シンタックスが存在し、transform_tree()シンタックスが存在しないことを示すことができる。pcm_flag[x0][y0]の値0は、pcm_sample()シンタックスが存在せず、transform_tree()シンタックスが存在することを示すことができる。
【0223】
intra_mip_flag[x0][y0]は、現在ブロックがMIPモードで予測されたかを示すことができる。例えば、intra_mip_flag[x0][y0]の第1値(例えば、0)は、現在ブロックがMIPモードで予測されていないことを示すことができる。intra_mip_flag[x0][y0]の第2値(例えば、1)は、現在ブロックがMIPモードで予測されたことを示すことができる。
【0224】
intra_mip_flag[x0][y0]が第2値(例えば、1)を有する場合、ビットストリームからMIPモードに対する情報がさらに取得されることができる。例えば、現在ブロックのMIPモードを示す情報であるintra_mip_mpm_flag[x0][y0]、intra_mip_mpm_idx[x0][y0]、及びintra_mip_mpm_remainder[x0][y0]シンタックス要素がビットストリームからさらに取得されることができる。現在ブロックにMIP予測モードが適用される場合、MIPのためのMPMリストが構成されることができ、前記intra_mip_mpm_flagは、前記現在ブロックに対するMIPモードが前記MIPのためのMPMリスト内(又はMPM候補の中)に存在するか否かを示すことができる。前記intra_mip_mpm_idxは、前記現在ブロックに対するMIP予測モードが前記MIPのためのMPMリスト内に存在する場合(すなわち、intra_mip_mpm_flagの値が1である場合)、前記MPMリスト内の候補のうち、前記現在ブロックのMIP予測モードとして使用される候補のインデックスを指示することができる。intra_mip_mpm_remainderは、前記現在ブロックに対するMIP予測モードが前記MIPのMPMリスト内に存在しない場合(すなわち、intra_mip_mpm_flagの値が0である場合)、前記現在ブロックのMIP予測モードを示すことができ、全体MIP予測モードのうちのいずれか一つを示すか、或いは、全体MIP予測モードのうち、前記MIPのためのMPMリスト内の候補モードを除いた残りのモードのいずれか一つを前記現在ブロックのMIP予測モードとして指示することができる。
【0225】
一方、intra_mip_flag[x0][y0]が第1値(例えば、0)を有する場合、ビットストリームからMIPに対する情報が取得されず、ビットストリームからMIP以外のイントラ予測情報が取得されることができる。一実施例において、一般イントラ予測のためのMPMリストが生成されるか否かを示すintra_luma_mpm_flag[x0][y0]がビットストリームから取得されることができる。
【0226】
現在ブロックにイントラ予測モードが適用される場合に、そのためのMPMリストが構成されることができ、intra_luma_mpm_flagは、現在ブロックに対するイントラ予測モードが前記MPMリスト内に存在するか(又はMPM候補の中に存在するか)否かを示すことができる。例えば、intra_luma_mpm_flagの第1値(例えば、0)は、現在ブロックに対するイントラ予測モードが前記MPMリスト内に存在しないことを示すことができる。intra_luma_mpm_flagの第2値(例えば、1)は、現在ブロックに対するイントラ予測モードが前記MPMリスト内に存在することを示すことができる。intra_luma_mpm_flag値が1である場合、前記intra_luma_not_planar_flagがビットストリームから取得されることができる。
【0227】
intra_luma_not_planar_flagは、前記現在ブロックのイントラ予測モードがplanarモードでないか否かを示すことができる。例えば、intra_luma_not_planar_flagの第1値(例えば、0)は、現在ブロックのイントラ予測モードがPlanarモードであることを示すことができる。intra_luma_not_planar_flagの第2値(例えば、1)は、現在ブロックのイントラ予測モードがplanarモードでないことを示すことができる。
【0228】
intra_luma_mpm_idxは、前記intra_luma_not_planar_flagが「true」(すなわち、値1)である場合にパーシング及びコーディングできる。一実施例において、MPMリスト内には、Planarモードが常に候補として入ることができ、ただし、上記のようにintra_luma_not_planar_flagを先にシグナリングすることにより、MPMリストからPlanarモードを除外することができる。この場合、上述した様々なイントラ予測タイプ(一般イントラ予測、MRL、ISP、LIPなど)から、単一化されたMPMリストを構成することができる。この場合、MPMリスト内の候補の数は5つに減らすことができる。intra_luma_mpm_idxは、前記Planarモードが除外されたMPMリストに含まれている候補のうち、前記現在ブロックのイントラ予測モードとして使用される候補を指示することができる。
【0229】
一方、intra_luma_mpm_flagの値が0である場合、前記intra_luma_mpm_remainderがパーシング/コーディングされることができる。intra_luma_mpm_remainderは、全体イントラ予測モードのうちのいずれか一つのモードを前記現在ブロックのイントラ予測モードとして指示するか、或いは前記MPMリスト内の候補モードを除いた残りのモードのうちのいずれか一つを前記現在ブロックのイントラ予測モードとして指示することができる。
【0230】
MIPでのMPMリストの構成
【0231】
現在ブロックにMIPが適用される場合、MIPが適用される現在ブロックのためのMPMリストが別途構成されることができる。前記MPMリストは、現在ブロックにMIPが適用されない場合のMPMリストと区分するために、MIP MPMリスト(又はMIPのためのMPMリスト、candMipModeList)などの様々な名前で呼ばれることができる。以下、区分のためにMIP MPMリストと表現するが、これをMPMリストと呼ばれることができる。
【0232】
MIP MPMリストはn個の候補を含むことができ、例えば、nは3であることができる。前記MIP MPMリストは、前記現在ブロックの左側周辺ブロック及び上側周辺ブロックに基づいて構成されることができる。ここで、前記左側周辺ブロックは、前記現在ブロックの左側境界に隣接する周辺ブロックのうち、最も上側に位置するブロックであることができる。また、上側周辺ブロックは、前記現在ブロックの上側境界に隣接する周辺ブロックのうち、最も左側に位置するブロックを示すことができる。例えば、現在ブロックの座標が(xCb、yCb)である場合、左側隣接ブロックの座標は(xCb-1、yCb)であり、上側隣接ブロックの座標は(xCb、yCb-1)であることができる。或いは、前記左側周辺ブロックは、前記現在ブロックの左側境界に隣接する周辺ブロックのうち最も下側に位置するブロックであることもできる。また、前記上側周辺ブロックは、前記現在ブロックの上側境界に隣接する周辺ブロックのうち、最も右側に位置するブロックを示すこともできる。
【0233】
左側周辺ブロックにMIPが適用された場合、第1候補イントラ予測モードは、前記左側周辺ブロックのMIPイントラ予測モードと同様に設定されることができる。ここで、第1候補イントラ予測モードは、candMipModeAと表記できる。また、例えば、前記上側周辺ブロックにMIPが適用された場合、第2候補イントラ予測モードは、前記上側周辺ブロックのMIPイントラ予測モードと同様に設定されることができる。ここで、第2候補イントラ予測モードは、candMipModeBと表記できる。
【0234】
一方、現在ブロックのサイズと周辺ブロックのサイズとを比較して候補イントラ予測モードが決定されることもできる。例えば、左側周辺ブロックにMIPが適用されており、前記左側周辺ブロックのブロックサイズタイプが現在ブロックのブロックサイズタイプと同じである場合、第1候補イントラ予測モード(例えば、candMipModeA)は、前記左側周辺ブロックのMIPイントラ予測モードと同様に設定されることができる。また、前記上側周辺ブロックにMIPが適用されており、前記上側周辺ブロックのブロックサイズタイプが現在ブロックのブロックサイズタイプと同じである場合、第2候補イントラ予測モード(例えば、candMipModeB)は、前記上側周辺ブロックのMIPイントラ予測モードと同様に設定されることができる。
【0235】
一方、前記左側周辺ブロック又は前記上側周辺ブロックは、MIPではないイントラ予測に基づいて符号化されることもできる。例えば、左側周辺ブロック又は前記上側周辺ブロックは、MIPではない他のイントラ予測モードで符号化されることもできる。この場合、MIPが適用されていない周辺ブロック(例えば、左側周辺ブロック又は上側周辺ブロック)の一般イントラ予測モード番号を、MIPが適用された現在ブロックのための候補イントラモードでそのまま使用することは適さない。したがって、この場合、一例として、MIPが適用されていない周辺ブロックには、所定のMIPイントラ予測モードが適用されたものと見なして処理することができる。例えば、周辺ブロックにMIPが適用されていない場合、当該周辺ブロックのMIPイントラ予測モードは、特定のMIPイントラ予測モード値(例えば、0、1又は2など)であると決定して、MIP MPMリストを生成することができる。
【0236】
或いは、他の例として、MIPが適用されていない周辺ブロックの一般イントラ予測モードをマッピングテーブルに基づいてMIPイントラ予測モードにマッピングさせてMIP MPMリストの構成に利用することができる。この場合、現在ブロックの前記ブロックサイズタイプに基づいて前記マッピングを行うことができる。例えば、前記マッピングテーブルとして、図13に示された一実施例によるマッピングテーブルが使用できる。
【0237】
図13は周辺ブロックの一般イントラ予測モードをMIPイントラ予測モードにマッピングさせるマッピングテーブルの一実施例を示す。図13の図示において、IntraPredModeY[xNbX][yNbX]は、周辺ブロック(左側周辺ブロック/上側周辺ブロック)のイントラ予測モードを示す。ここで、前記周辺ブロックのイントラ予測モードは、ルマ成分(サンプル)に対するイントラ予測モードであることができる。block size type MipSizeIdは、周辺ブロック又は現在ブロックのブロックサイズタイプを示す。ブロックサイズタイプ値0、1、2の下の数字は、各ブロックサイズタイプである場合に一般イントラ予測モードがマッピングされるMIPイントラ予測モードを示す。ブロックサイズタイプ0は、ブロックが4×4画素サイズである場合を示すことができる。ブロックサイズタイプ1は、ブロックが4×8、8×4又は8×8画素サイズである場合を示すことができる。ブロックサイズタイプ2は、ブロックが8×8画素サイズよりも大きいサイズを持つ場合を示すことができる。
【0238】
一実施例において、前記周辺ブロック(例えば、左側周辺ブロック/上側周辺ブロック)が現在ピクチャの外部に位置するか、現在タイル/スライスの外部に位置するなどの理由で利用可能でない場合、或いはMIPが適用されたとしてもブロックサイズタイプに応じて現在ブロックに利用可能でないMIPイントラ予測モードが適用された可能性もある。この場合には、予め定義されたMIPイントラ予測モードが、前記第1候補イントラ予測モード、第2候補イントラ予測モード、及び第3候補イントラ予測モードとして使用されることもできる。図14は、このような場合に使用できる所定のMIPイントラ予測モードの一実施例を現在ブロックのサイズに応じて示した表である。例えば、周辺ブロックのMIPイントラ予測情報が全て利用可能でない場合、図14の例に従って現在ブロックのサイズに基づいてMIP MPMリストが生成されることができる。
【0239】
一実施例において、周辺ブロックのMIPイントラ予測モードが取得できる。このとき、左側周辺ブロックのMIPイントラ予測モードが上側周辺ブロックのMIPイントラ予測モードと異なる場合、左側周辺ブロックのMIPイントラ予測モードを第1候補イントラ予測モードとして設定することができる。そして、前記上側周辺ブロックのMIPイントラ予測モードを第2候補イントラ予測モードとして設定することができる。これにより、MIP MPMリストの1番目の候補(例えば、candMipModeList[0])は、左側周辺ブロックのMIPイントラ予測モードに設定されることができ、MIP MPMリストの2番目の候補(例えば、candMipModeList[1])は、上側周辺ブロックのMIPイントラ予測モードに設定されることができる。
【0240】
MIPリストにおけるイントラ予測候補の順序は変更可能である。例えば、前記上側周辺ブロックのMIPイントラ予測モードをMIP MPMリストの1番目の候補(例えば、candMipModeList[0])として含み、左側周辺ブロックのMIPイントラ予測モードをMIP MPMリストの2番目の候補(例えば、candMipModeList[1])として含むこともできる。
【0241】
第3候補イントラ予測モードは、図14による所定のMIPイントラ予測モードが利用できる。例えば、図14の第3候補イントラ予測モードが、MIP MPMリストの2番目の候補(例えば、candMipModeList[2])として使用できる。
【0242】
他の実施例において、第3候補イントラ予測モードは、第1候補イントラ予測モード及び第2候補イントラ予測モードとオーバーラップしないMIPイントラ予測モードに決定されることができる。これは、図14に示されたMIPイントラ予測モードの順序によって決定されることができる。例えば、MIP MPMリストの1番目の候補と2番目の候補に図14の第1候補イントラ予測モードが使用されていない場合、図14の第1候補イントラ予測モードがMIP MPMリストの3番目の候補(例えば、candMipModeList[2])として使用できる。そうでない場合、例えば、MIP MPMリストの1番目の候補と2番目の候補に図15の第2候補イントラ予測モードが使用されていない場合、図14の第2候補イントラ予測モードがMIP MPMリストの3番目の候補(例えば、candMipModeList[2])として使用できる。そうでない場合、図14の第3候補イントラ予測モードがMIP MPMリストの3番目の候補(例えば、candMipModeList[2])として使用できる。
【0243】
又は、左側周辺ブロックのMIPイントラ予測モードと上側周辺ブロックのMIPイントラ予測モードとが互いに同一である場合、前記左側周辺ブロックのMIPイントラ予測モードと上側周辺ブロックのMIPイントラ予測モードのうちのいずれか一つをMIP MPMリストの1番目の候補(例えば、candMipModeList[0])として含むことができ、前記MIP MPMリストの2番目の候補(例えば、candMipModeList[1])及びMIP MPMリストの3番目の候補(例えば、candMipModeList[2])は、前述したように、図15のような所定のMIPイントラ予測モードを用いることができる。
【0244】
上述したように、前記MIP MPMリストに基づいて前記現在ブロックのMIPイントラ予測モードが導出されることができる。この場合、上述したように、前記MIPのための前記イントラ予測モード情報に含まれ得るMPMフラグはintra_mip_mpm_flag、MPMインデックスはintra_mip_mpm_idx、リメイニングイントラ予測モード情報はintra_mip_mpm_remainderとそれぞれ呼ばれることができる。
【0245】
MPMリストを用いたイントラ予測モードの決定
【0246】
符号化装置での前記イントラ予測モードシグナリング手順、及び復号化装置でのイントラ予測モード決定手順は、例えば、次のとおりに行われることができる。
【0247】
図15はMPMリストを用いてイントラ予測モードを符号化する方法を説明するフローチャートである。符号化装置は、上述したように現在ブロックに対するMPMリストを構成することができる(S1510)。
【0248】
次に、符号化装置は、現在ブロックのイントラ予測モードを決定することができる(S1520)。符号化装置は、様々なイントラ予測モードに基づいて予測を行うことができ、それに基づくRDO(rate-distortion optimization)に基づいて最適のイントラ予測モードを決定することができる。一実施例において、符号化装置は、前記MPMリストに構成されたMPM候補のみを用いて前記最適のイントラ予測モードを決定することもでき、又は前記MPMリストに構成されたMPM候補だけでなく、残りのイントラ予測モードをさらに用いて前記最適のイントラ予測モードを決定することもできる。例えば、もし前記現在ブロックのイントラ予測タイプがノーマルイントラ予測タイプではなく、特定のタイプ(例えば、LIP、MRL、又はISP)である場合には、符号化装置は、前記MPM候補のみを前記現在ブロックに対するイントラ予測モード候補として考慮して、前記最適のイントラ予測モードを決定することができる。このような場合には、前記現在ブロックに対するイントラ予測モードは、前記MPM候補の中のみで決定されることができ、このような場合には、前記mpmフラグを符号化/シグナリングしなくてもよい。復号化装置は、このような場合には、mpmフラグのシグナリングを別途受けなくても、mpmフラグが1であると推定することができる。
【0249】
符号化装置は、イントラ予測モード情報を符号化してビットストリーム形式で出力することができる(S1530)。一実施例において、符号化装置は、現在ブロックのイントラ予測モードがイントラPlanarモードでないかを示す情報(例えば、intra_luma_not_planar_flag)を符号化することにより、現在ブロックのイントラ予測モードがイントラPlanarモードであるか否かをシグナリングすることができる。符号化装置は、現在ブロックのイントラ予測モードがイントラPlanarモードである場合には、intra_luma_not_planar_flagの値を第1値(例えば、0)に設定することができる。一方、符号化装置は、現在ブロックのイントラ予測モードがイントラPlanarモードでない場合には、intra_luma_not_planar_flagの値を第2値(例えば、1)に設定することができる。
【0250】
一方、符号化装置は、現在ブロックのイントラ予測モードがイントラPlanarモードでない場合、現在ブロックにブロック差分に基づくパルスコードモジュレーション(BDPCM、Block-based Delta Pulse Code Modulation)が適用されるか否か、及び適用方向に応じてイントラ予測モードを決定し、シグナリングすることができる。一実施例において、符号化装置は、現在ブロックにBDPCMが適用された場合、BDPCMの適用方向に応じてイントラ予測モードを決定することができる。例えば、符号化装置は、BDPCMの適用方向が水平方向又は垂直方向のうちのいずれか一つであることに基づいて、同一方向にイントラ予測モードを水平又は垂直モードと決定することができる。そして、このような場合、符号化装置は、現在ブロックにBDPCMが適用されるか否かを示す情報(intra_bdpcm_flag)と、BDPCMの適用方向を示す情報(intra_bdpcm_dir_flag)を符号化し、シグナリングすることにより、現在ブロックのイントラ予測モードをシグナリングすることができる。このような場合、mpmフラグのシグナリングは省略可能である。
【0251】
一方、符号化装置は、現在ブロックの予測モードがイントラPlanarモードでもなく、BDPCMも適用されない場合、イントラ予測モードをシグナリングするために、上述したmpmフラグ(例えば、intra_luma_mpm_flag)、mpmインデックス(例えば、intra_luma_mpm_idx)及び/又はリメイニングイントラ予測モード情報(例えば、intra_luma_mpm_remainder)を含むイントラ予測モード情報を符号化することができる。一般に、mpmインデックス及びリメイニングイントラ予測モード情報は、相互代替的な関係であって、一つのブロックに対するイントラ予測モードを指示する際に、同時にシグナリングされないことができる。つまり、mpmフラグ値1とmpmインデックスが一緒にシグナリングされるか、或いはmpmフラグ値0とリメイニングイントラ予測モード情報が一緒にシグナリングされることができる。ただし、上述したように現在ブロックに特定のイントラ予測タイプが適用される場合には、mpmフラグがシグナリングされず、mpmインデックスのみシグナリングされることもできる。すなわち、この場合には、前記イントラ予測モード情報は、前記mpmインデックスのみを含むこともできる。
【0252】
一方、一般に、前記現在ブロックのイントラ予測モードが前記MPMリスト内にあるMPM候補のうちの一つである場合、符号化装置は、前記MPM候補のうちの一つを指すmpmインデックス(例えば、intra_luma_mpm_idx)を生成することができる。もし前記現在ブロックのイントラ予測モードが前記MPMリスト内にない場合には、前記MPMリストに含まれていない残りのイントラ予測モードのうち、前記現在ブロックのイントラ予測モードと同じモードを指すリメイニングイントラ予測モード情報(例えば、intra_luma_mpm_remainder)を生成することができる。例えば、符号化装置は、現在ブロックのイントラ予測モード(例えば、IntraPredModeY)をintra_luma_mpm_remainderに符号化する場合、IntraPredModeYから先ず1を差し引き、MPMリストに属するイントラ予測モードをイントラ予測モード値の大きさ順に降順ソートし、candModeList[0]からcandModeList[4]までをIntraPredModeYの値と比較しながら、IntraPredModeY-1の値がcandModeList[]の値よりも小さい場合、IntraPredModeYの値を1つずつ減らすことにより決定されるIntraPredModeYの値をintra_luma_mpm_remainderと決定することができる。
【0253】
一方、現在ブロックのイントラ予測モードがMIPモードである場合、符号化装置は、MIPモードに対するMPMリストを生成して上述のように現在ブロックを符号化することができる。このとき、MIPモードに対するMPM符号化情報がシグナリングされることができる。このとき、MPMフラグはintra_mip_mpm_flag、MPMインデックスはintra_mip_mpm_idx、リメイニングイントラ予測モード情報はintra_mip_mpm_remainderとしてシグナリングされることができる。
【0254】
図16は一実施例による復号化装置がMPMリストを用いて復号化を行う方法を説明するフローチャートである。復号化装置は、符号化装置で決定及びシグナリングされたイントラ予測モード情報に対応してイントラ予測モードを決定することができる。
【0255】
図16を参照すると、復号化装置は、ビットストリームからイントラ予測モード情報を取得することができる(S1610)。前記イントラ予測モード情報は、上述したように、mpmフラグ、mpmインデックス、及びリメイニングイントラ予測モードのうちの少なくとも一つを含むことができる。
【0256】
復号化装置はMPMリストを構成することができる(S1620)。前記MPMリストは、前記符号化装置で構成されたMPMリストと同様に構成されることができる。すなわち、MPMリストは、周辺ブロックのイントラ予測モードを含むこともでき、予め定められた方法に従って特定のイントラ予測モードをさらに含むこともできる。
【0257】
一実施例において、復号化装置は、現在ブロックのイントラ予測モードがイントラPlanarモードでないかを示す情報(例えば、intra_luma_not_planar_flag)に基づいて、現在ブロックのイントラ予測モードがイントラPlanarモードであるか否かを判断することができる。復号化装置は、intra_luma_not_planar_flagの値が第1値(例えば、0)である場合、現在ブロックのイントラ予測モードがイントラPlanarモードであると決定することができる。一方、復号化装置は、intra_luma_not_planar_flagの値が第2値(例えば、1)である場合、現在ブロックのイントラ予測モードがイントラPlanarモードではないことを決定することができる。
【0258】
一方、復号化装置は、現在ブロックのイントラ予測モードがイントラPlanarモードでない場合、現在ブロックにブロック差分に基づくパルスコードモジュレーション(BDPCM、Block-based Delta Pulse Code Modulation)が適用されるか否か、及び適用方向に応じて、イントラ予測モードを決定することができる。一実施例において、復号化装置は、ビットストリームから取得された現在ブロックにBDPCMが適用されるか否かを示す情報(intra_bdpcm_flag)が、BDPCMが適用されることを示す場合、ビットストリームから取得されたBDPCMの適用方向を示す情報(intra_bdpcm_dir_flag)に基づいて、水平方向又は垂直方向のうちのいずれか一つのBDPCM適用方向を決定することができる。そして、決定されたBDPCM適用方向と同じ方向にイントラ予測モードを水平又は垂直モードと決定することができる。
【0259】
一方、復号化装置は、現在ブロックの予測モードがイントラPlanarモードでもなく、BDPCMも適用されない場合、イントラ予測モードを決定するために、MPMリストを先立って説明した方式で生成することができる。例えば、MPMリストは、現在ブロックの周辺ブロックのイントラ予測モードに基づいて決定されることができる。復号化装置は、現在ブロックの上側周辺ブロックと左側周辺ブロックのイントラ予測モードに基づいてMPMリストを決定することができる。例えば、一実施例において、復号化装置は、左側周辺ブロックのイントラ予測モードに基づいて決定された第1イントラ予測候補と、上側周辺ブロックのイントラ予測モードに基づいて決定された第2イントラ予測候補に基づいてMPMリストを決定することができる。
【0260】
復号化装置は、前記MPMリストを用いて現在ブロックのイントラ予測モードを決定するか否かを決定することができる(S1630)。一例として、前記mpmフラグの値が1である場合、復号化装置は、前記MPMリスト内のMPM候補のうち、前記mpmインデックスが指す候補を前記現在ブロックのイントラ予測モードとして導出することができる。例えば、復号化装置は、mpmインデックスであるintra_luma_mpm_idxの値に従って現在ブロックのイントラ予測モードを決定することができる。例えば、復号化装置は、candModeList[intra_luma_mpm_idx]を現在ブロックのイントラ予測モードと決定することができる。
【0261】
他の例として、前記mpmフラグの値が0である場合、復号化装置は、前記MPMリストに含まれていない残りのイントラ予測モードのうち、前記リメイニングイントラ予測モード情報が指すイントラ予測モードを前記現在ブロックのイントラ予測モードとして導出することができる(S1640)。
【0262】
例えば、復号化装置は、現在ブロックのイントラ予測モードを示すリメイニングイントラ予測モード情報(例えば、intra_luma_mpm_remainder)に基づいて現在ブロックのイントラ予測モード(例えば、IntraPredModeY)を決定することができる。例えば、復号化装置は、IntraPredModeYの値をintra_luma_mpm_remainder+1に設定することができる。その後、復号化装置は、MPMリストに属するイントラ予測モードをイントラ予測モード値の大きさ順に昇順ソートし、candModeList[0]からcandModeList[4]までをIntraPredModeYの値と比較しながら、IntraPredModeYの値がcandModeList[]の値よりも小さい場合、IntraPredModeYの値を1ずつ増やすことにより、現在ブロックのイントラ予測モードを示すIntraPredModeYの値を決定することができる。
【0263】
一方、別の例として、前記現在ブロックのイントラ予測タイプが特定のタイプ(例えば、LIP、MRL又はISPなど)である場合、復号化装置は、前記mpmフラグの確認なしにも、前記MPMリスト内で前記mpmインデックスが指す候補を前記現在ブロックのイントラ予測モードとして導出することもできる。
【0264】
一方、現在ブロックのイントラ予測モードがMIPモードである場合、復号化装置は、MIPモードに対するMPMリストを生成して上記のように現在ブロックを復号化することができる。このとき、MIPモードに対するMPM符号化情報がビットストリームを介して取得されることができる。このとき、MPMフラグはintra_mip_mpm_flag、MPMインデックスはintra_mip_mpm_idx、リメイニングイントラ予測モード情報はintra_mip_mpm_remainderを用いて取得できる。
【0265】
MIPイントラ予測モードと一般イントラ予測モードとのマッピングの問題
【0266】
前述したように、現在ブロックのイントラ予測モード又はMIPモードを決定するために、周辺ブロックの情報に基づいて一般イントラ予測モードのためのMPMリスト又はMIPのためのMPMリストが生成できる。この場合、周辺ブロックは、現在ブロックの左側周辺ブロック及び上側周辺ブロックを含むことができる。ここで、一般イントラ予測モードとは、MIPモードではなく、イントラ予測モードを意味する。例えば、一般イントラ予測モードは、非方向性イントラ予測モードであるイントラPlanarモード、イントラDCモード及び方向性イントラ予測モードを意味することができる。
【0267】
現在ブロックにMIPモードが適用されるが、周辺ブロックにMIPモードではなくイントラ予測モード(一般イントラ予測モード)が適用された場合、周辺ブロックの予測情報を用いて現在ブロックのMPMリストを生成するために、周辺ブロックのイントラ予測モードをMIPモードにマッピングする必要がある。また、現在ブロックに一般イントラ予測モードが適用されるが、周辺ブロックにMIPモードが適用された場合、周辺ブロックの予測情報を用いて現在ブロックのMPMリストを生成するために、周辺ブロックのMIPモードを一般イントラ予測モードにマッピングする必要がある。
【0268】
ところが、MIPモードは、次のとおりにルマブロックサイズに応じて様々な予測モードの数を有することができるという点で、一般イントラ予測モードとMIPモードとの1:1マッピングが行われ難いという問題点がある。
【0269】
【表3】
【0270】
このように一般イントラ予測モードの数とMIPモードの数とが異なるため、これらの両者間を補間してマッピングするために、図7及び図13に示すようなマッピングテーブルを介してMIPモードと一般イントラ予測モードとのマッピングが行われることができる。例えば、一般イントラモードで符号化される現在ブロックのMPMリストを生成するために周辺ブロックを参照する場合、周辺ブロックのイントラ予測モードがMIPモードであれば、周辺ブロックのMIPモードをイントラ予測モードにマッピングするために、図17に示すようにMPMリストを生成しなければならない。より詳細には、符号化装置及び復号化装置は、符号化及び復号化過程において、現在ブロックの予測モードが一般イントラ予測モードであることを識別し(S1710)、周辺ブロックの予測モードがMIPモードであることを識別することができる(S1720)。符号化装置及び復号化装置は、周辺ブロックの予測モードがMIPモードである場合に、周辺ブロックが4×4のルマブロックであるか否かを確認することができる(S1730)。符号化装置及び復号化装置は、周辺ブロックが4×4のルマブロックである場合、図7の35個のMIPモードを67個のイントラモードにマッピングする方法によって、周辺ブロックのMIPモードに対応する一般イントラ予測モードを決定することができる(S1740)。符号化装置及び復号化装置は、周辺ブロックが4×4のルマブロックでない場合、周辺ブロックが4×8又は8×4又は8×8のルマブロックであるかを確認することができる(S1750)。符号化装置及び復号化装置は、周辺ブロックが4×8、8×4又は8×8のルマブロックである場合、図7の19個のMIPモードを67個のイントラモードにマッピングする方法によって、周辺ブロックのMIPモードに対応する一般イントラ予測モードを決定することができる(S1760)。或いは、符号化装置及び復号化装置は、周辺ブロックが4×8、8×4又は8×8のルマブロックでない場合、図7の11個のMIPモードを67個のイントラモードにマッピングする方法に従って、周辺ブロックのMIPモードに対応する一般イントラ予測モードを決定することができる(S1770)。最後に、符号化装置及び復号化装置は、決定された一般イントラ予測モードで、先立って説明した方法に従って現在ブロックのMPMリストを生成することができる(S1780)。
【0271】
類似の方式で、MIPモードで符号化される現在ブロックのMPMリストを生成するために周辺ブロックを参照する場合、周辺ブロックのイントラ予測モードが一般イントラ予測モードである場合、周辺ブロックのイントラ予測モードをMIPモードにマッピングするために、図18に示すようにS1810~S1880ステップを行わなければならない。
【0272】
しかし、このようにマッピングを行うと、MIPモードとイントラ予測モードとの相関度が発生することにより、現在ブロックと周辺ブロックのサイズ比較を行わなければならず、このようなマッピングテーブル記憶のための追加メモリが必要とされる。
【0273】
MIPイントラ予測モードを一般イントラ予測モードにマッピング
【0274】
以下、ブロックサイズとMIPモード及びイントラ予測モードとの相関度を除去することにより、マッピングアルゴリズムの複雑度を減らし、マッピングテーブル記憶のためのメモリを節約する一実施例によるマッピング方法について説明する。
【0275】
一実施例による符号化装置及び復号化装置は、MIPモードを一般イントラ予測モードにマッピングする場合、ブロックサイズ及びマッピングテーブルを使用せず、MIPモードを所定のイントラ予測モードに決定することができる。
【0276】
例えば、一実施例による符号化装置及び復号化装置は、MIPモードをイントラ予測モードに変換する場合、全てのMIPモードをイントラPlanar(PLANAR)モードにマッピングすることができる。
【0277】
或いは、一実施例による符号化装置及び復号化装置は、MIPモードをイントラ予測モードに変換する場合、全てのMIPモードをイントラDCモードにマッピングすることができる。
【0278】
或いは、一実施例による符号化装置及び復号化装置は、MIPモードをイントラ予測モードに変換する場合、全てのMIPモードをイントラ垂直(VERTICAL)モードにマッピングすることができる。
【0279】
或いは、一実施例による符号化装置及び復号化装置は、MIPモードをイントラ予測モードに変換する場合、全てのMIPモードをイントラ水平(HORIZONTAL)モードにマッピングすることができる。
【0280】
一実施例において、現在ブロックのイントラ予測モードを決定するためのMPMリストを生成するために周辺ブロックのイントラ予測モードを探索する場合、周辺ブロックにMIP予測が適用されていれば、当該周辺ブロックのイントラ予測モードをイントラPlanarモードに誘導して現在ブロックMPMリストを生成することができる。
【0281】
一方、現在ブロック(又はコーディングユニット)がルマブロックとクロマブロックを含む場合、クロマブロックのイントラ予測モード構成の際に、クロマブロックの位置に対応するルマブロックにMIP予測が適用されていれば、クロマブロックのDMモード(direct mode、クロマブロックに対応するルマブロックイントラ予測モードを使用)が示すイントラ予測モードをイントラPlanarモードに誘導することができる。
【0282】
このようにMIPモードをイントラ予測モードにマッピングすることにより、符号化装置又は復号化装置は、現在ブロックが一般イントラモードで符号化又は復号化される場合にMPMリストを生成するにあたり、単に全てのMIPモードを所定の一般イントラ予測モードに決定することができ、当該一般イントラ予測モードに基づいてMPMリストを生成することができる。これにより、先立って図17を参照して説明したMPMリスト生成ステップは、図19に示すように単純化できる。図19を参照すると、従来の図17を参照して説明したMPMリスト生成ステップにおけるS1730乃至S1780ステップは、全てのMIPモードを所定の一般イントラ予測モードにマッピングすることにより、MIPモードに対応する一般イントラ予測モードを決定するステップ(S1791)、及び決定された一般イントラ予測モードでMPMリストを生成するステップ(S1792)に単純化されたことを確認することができる。ここで、所定の一般イントラ予測モードは、イントラPlanarモード、イントラDCモード、イントラ垂直モード及びイントラ水平モードのうちのいずれか一つのモードであることができる。
【0283】
同様に、前述したクロマブロックに対するイントラ予測モードを決定する場合でも、クロマブロックに対応するルマブロックがMIPモードである場合、上述のようなサイズによるマッピングを行うことなく、ルマブロックに対応するイントラ予測モードを所定の一般イントラ予測モードに決定することができる。
【0284】
以下、一実施例による符号化装置が行う画像符号化方法について図20を参照して説明する。一実施例による符号化装置は、メモリ及び少なくとも一つのプロセッサを含むことができ、前記少なくとも一つのプロセッサによって次の符号化方法を行うことができる。
【0285】
一実施例による符号化装置は、現在ブロックの予測モードを識別することができる(S2010)。符号化装置は、現在ブロックの予測モードがイントラ予測モードである場合、現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて候補イントラ予測モードを決定することができる(S2020)。候補イントラ予測モードは、第1候補イントラ予測モードと第2候補イントラ予測モードを含むことができる。第1候補イントラ予測モードは、現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定されることができ、第2候補イントラ予測モードは、現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定されることができる。ここで、第1候補イントラ予測モードは前述した第1イントラ予測候補であり、第2候補イントラ予測モードは前述した第2イントラ予測候補であることができる。例えば、符号化装置は、左側周辺ブロックのイントラ予測モードに基づいて第1候補イントラ予測モード(例えば、candIntraPredModeA)を決定し、上側周辺ブロックのイントラ予測モードに基づいて第2候補イントラ予測モード(例えば、candIntraPredModeB)を決定することができる。
【0286】
このとき、符号化装置は、周辺ブロックの予測モードがMIPモードである場合、当該周辺ブロックの候補イントラ予測モードを所定のイントラ予測モードに決定することができる。ここで、所定のイントラ予測モードは、イントラPlanarモード、イントラDCモード、イントラ水平モード及びイントラ垂直モードのうちのいずれか一つであることができる。例えば、符号化装置は、左側周辺ブロックのイントラ予測モードがMIPモードである場合、第1候補イントラ予測モード(例えば、candIntraPredModeA)をイントラPlanarモード、イントラDCモード、イントラ水平モード及びイントラ垂直モードのうちのいずれか一つに決定することができる。或いは、符号化装置は、上側周辺ブロックのイントラ予測モードがMIPモードである場合、第2候補イントラ予測モード(例えば、candIntraPredModeB)をイントラPlanarモード、イントラDCモード、イントラ水平モード及びイントラ垂直モードのうちのいずれか一つに決定することができる。
【0287】
次に、符号化装置は、候補イントラ予測モードに基づいて現在ブロックの候補イントラ予測モードリストを生成することができる(S2030)。候補イントラ予測モードリストは、前述したMPMリストであり得る。例えば、符号化装置は、上述したように、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて候補イントラ予測モードリストを生成することができる。このとき、第1周辺ブロックの予測モードと第2周辺ブロックの予測モードの両方がMIPモードである場合、符号化装置は、候補イントラ予測モードリストが所定の候補イントラ予測モードを含むように決定することができる。ここで、所定の候補イントラ予測モードは、DCモード及び垂直モードのうちの少なくとも一つであることができる。
【0288】
次に、符号化装置は、候補イントラ予測モードリストに基づいて、現在ブロックのイントラ予測モードを示すイントラ予測モードインジケータを符号化することができる(S2040)。ここで、イントラ予測モードインジケータは、前述したintra_luma_mpm_flagシンタックス要素の形でシグナリングされるmpmフラグと、mpm_idx又はintra_luma_mpm_idxシンタックス要素の形でシグナリングされるmpmインデックスと、rem_intra_luma_pred_mode又はintra_luma_mpm_remainderシンタックス要素の形でシグナリングされるリメイニングイントラ予測モード情報を含むことができる。符号化装置は、イントラ予測モードインジケータを符号化することによりビットストリームを生成し、これを復号化装置へ伝送することもできる。
【0289】
以下、一実施例による復号化装置が行う画像復号化方法について図21を参照して説明する。一実施例による復号化装置は、メモリ及び少なくとも一つのプロセッサを含むことができ、前記少なくとも一つのプロセッサによって次の復号化方法を行うことができる。
【0290】
まず、一実施例による復号化装置は、現在ブロックの予測モードを識別することができる(S2110)。復号化装置は、現在ブロックの予測モードがイントラ予測モードである場合、現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて現在ブロックに対する候補イントラ予測モードを決定することができる(S2120)。
【0291】
復号化装置は、周辺ブロックの予測モードがMIPモードである場合、候補イントラ予測モードを所定のイントラ予測モードに決定することができる。ここで、所定のイントラ予測モードは、イントラPlanarモード、イントラDCモード、イントラ水平モード及びイントラ垂直モードのうちのいずれか一つであることができる。
【0292】
復号化装置は、周辺ブロックの予測モードがMIPモードであるか否かを、周辺ブロックに対するMIPモードインジケータに基づいて決定することができる。MIPモードインジケータは、前述したMIPフラグ(例えば、intra_mip_flag)であり、復号化装置は、MIPモードインジケータをビットストリームから取得することができる。
【0293】
候補イントラ予測モードは、第1候補イントラ予測モードと第2候補イントラ予測モードとを含むことができる。このとき、第1候補イントラ予測モードは、現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定されることができる。そして、第2候補イントラ予測モードは、現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定されることができる。
【0294】
ここで、第1候補イントラ予測モードは、前述した第1イントラ予測候補であり、第2候補イントラ予測モードは、前述した第2イントラ予測候補であることができる。例えば、復号化装置は、左側周辺ブロックのイントラ予測モードに基づいて第1候補イントラ予測モード(例えば、candIntraPredModeA)を決定し、上側周辺ブロックのイントラ予測モードに基づいて第2候補イントラ予測モード(例えば、candIntraPredModeB)を決定することができる。
【0295】
例えば、復号化装置は、左側周辺ブロックのイントラ予測モードがMIPモードである場合、第1候補イントラ予測モード(例えば、candIntraPredModeA)をイントラPlanarモード、イントラDCモード、イントラ水平モード及びイントラ垂直モードのうちのいずれか一つに決定することができる。或いは、復号化装置は、上側周辺ブロックのイントラ予測モードがMIPモードである場合、第2候補イントラ予測モード(例えば、candIntraPredModeB)をイントラPlanarモード、イントラDCモード、イントラ水平モード及びイントラ垂直モードのうちのいずれか一つに決定することができる。
【0296】
そして、復号化装置は、候補イントラ予測モードに基づいて現在ブロックの候補イントラ予測モードリストを生成することができる(S2130)。候補イントラ予測モードリストは、前述したMPMリストであり得る。例えば、復号化装置は、上述したように、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて候補イントラ予測モードリストを生成することができる。このとき、第1周辺ブロックの予測モードと第2周辺ブロックの予測モードの両方がMIPモードである場合、復号化装置は、候補イントラ予測モードリストが所定の候補イントラ予測モードを含むように決定することができる。ここで、所定の候補イントラ予測モードは、DCモード及び垂直モードのうちの少なくとも一つであることができる。
【0297】
また、復号化装置は、第1候補イントラ予測モードと前記第2候補イントラ予測モードとが同一であり、第1候補イントラ予測モードが、DCモードを示す予測モード値よりも大きい値を有するイントラ予測モードである場合、第1候補イントラ予測モードの値を含む候補イントラ予測モードリストを生成することができる。
【0298】
また、復号化装置は、第1周辺ブロックの予測モードがMIPモードであり、第1候補イントラ予測モードと前記第2候補イントラ予測モードとが互いに異なり、前記第2候補イントラ予測モードが、DCモードを示す予測モード値よりも大きい値を有するイントラ予測モードである場合、第2候補イントラ予測モードを含む候補イントラ予測モードリストを生成することができる。
【0299】
そして、復号化装置は、候補イントラ予測モードリストに基づいて現在ブロックのイントラ予測モードを決定することができる(S2140)。復号化装置は、ビットストリームから取得されたイントラ予測モードインジケータに基づいて、前記候補イントラ予測モードリストに含まれている候補イントラ予測モードのうちのいずれか一つの候補イントラ予測モードを前記現在ブロックのイントラ予測モードとして決定することができる。例えば、イントラ予測モードインジケータは、前述したmpmインデックスであることができ、ビットストリームを介してmpm_idx又はintra_luma_mpm_idxシンタックス要素の形でシグナリングされることができる。
【0300】
また、一実施例による符号化装置は、上述したMIPモードのマッピングに応じてクロマブロックのイントラ予測モードを符号化することができる。一実施例による符号化装置は、クロマブロックのイントラ予測モードをシグナリングするためにDMモードを使用することができる。このとき、符号化装置は、DMモードに応じて適用されるイントラ予測モードを、参照モードが示すイントラ予測モードと決定することができる。ここで、参照モードは、クロマブロックに対応するルマブロックの予測モードに基づいて決定されることができ、lumaIntraPredMode又はIntraPredModeYのパラメータによって識別されることができる。
【0301】
例えば、符号化装置は、クロマブロックに対応するルマブロックのイントラ予測モードを参照モードと決定することができる。これにより、符号化装置は、DMモードに決定されるクロマブロックのイントラ予測モードをルマブロックのイントラ予測モードと決定することができる。
【0302】
このとき、ルマブロックが、MIPモードが適用されたルマブロックである場合、符号化装置は、前記参照モードをMIPモードの代わりにPlanarモードに代替して決定することができる。これにより、符号化装置は、DMモードに決定されるクロマブロックのイントラ予測モードをイントラPlanarモードと決定することができる。
【0303】
或いは、ルマブロックにMIPモードが適用されていない場合、符号化装置は、ルマブロックの予測モードに基づいて前記参照モードを決定することができる。例えば、ルマブロックが所定のモードで予測された場合、符号化装置は参照モードをイントラDCモードと決定することができる。ここで、所定のモードはIBCモード又はその他のモードを含むことができる。これにより、符号化装置は、DMモードに決定されるクロマブロックのイントラ予測モードをイントラDCモードと決定することができる。
【0304】
そして、符号化装置は、参照モードに基づいてクロマブロックのイントラ予測モードを符号化することができる。例えば、符号化装置は、クロマブロックの符号化のための最適な予測モードとしてイントラPlanarモードが選定され、クロマブロックに対応するルマブロックの予測モードがMIPモードである場合、クロマブロックのイントラ予測モードが、DMモードに応じて識別されるイントラ予測モードであることを示す情報を符号化することができる。
【0305】
また、上記の符号化方法に対応して、一実施例による復号化装置は、上述したMIPモードのマッピングに従ってクロマブロックのイントラ予測モードを決定することができる。一実施例による復号化装置は、クロマブロックのイントラ予測モードを決定するための参照モードを、クロマブロックに対応するルマブロックの予測モードに基づいて決定することができる。ここで、参照モードは、lumaIntraPredMode又はIntraPredModeYのパラメータによって識別されることができる。
【0306】
このとき、クロマブロックに対応するルマブロックが、MIPモードが適用されたルマブロックである場合、復号化装置は、前記参照モードをPlanarモードと決定することができる。これにより、復号化装置は、DMモードに決定されるクロマブロックのイントラ予測モードをイントラPlanarモードと決定することができる。
【0307】
或いは、ルマブロックにMIPモードが適用されていない場合、復号化装置は、ルマブロックの予測モードに基づいて前記参照モードを決定することができる。例えば、ルマブロックがIBCモード又はその他の所定のモードで予測された場合、復号化装置は、参照モードをイントラDCモードと決定することができる。これにより、復号化装置は、DMモードに決定されるクロマブロックのイントラ予測モードをイントラDCモードと決定することができる。
【0308】
或いは、復号化装置は、ルマブロックにMIPモードが適用されず、ルマブロックがIBCモード又はその他の所定のモードで予測されてもいない場合、復号化装置は、参照モードをルマブロックのイントラ予測モードと決定することができる。これにより、復号化装置は、DMモードに決定されるクロマブロックのイントラ予測モードをルマブロックのイントラ予測モードと決定することができる。
【0309】
そして、復号化装置は、参照モードに基づいてクロマブロックのイントラ予測モードを決定することができる。例えば、復号化装置は、クロマモードのイントラ予測モードがDMモードと決定される場合、クロマブロックのイントラ予測モードを参照モードに該当するイントラ予測モードと決定することができる。
【0310】
これにより、符号化装置と復号化装置は、現在ブロックが一般イントラモードで符号化又は復号化される場合に参照される周辺ブロック又はルマブロックの予測モードがMIPモードである場合にも、現在ブロック又は周辺ブロックのブロックサイズを比較しなくてもよいので、演算複雑度を下げることができるという効果を発揮することができる。さらに、マッピングのためのマッピングテーブルを用いる必要がないという点で、メモリ空間効率性を高めることができるという効果を発揮する。
【0311】
図22は周辺ブロックのMIPモードをイントラ予測モードに変換する場合、上述した図19のマッピング方法に従って全てのMIPモードをイントラPlanarモードにマッピングすることにより、現在ブロックのMPMリストを生成したときの符号化率を、図17に記載されたマッピングテーブルを用いる方法と比較して示した実験データである。図22に示すように、符号化率に差異が現れないことが分かる。すなわち、上記の方法を適用することにより、符号化損失を最小限に抑えるうえ、アルゴリズムの複雑度を低減し、マッピングテーブルのメモリ使用を減らすことができるという効果を図ることができる。
【0312】
一般イントラ予測モードをMIPイントラ予測モードにマッピング
【0313】
以下、ブロックサイズとMIPモード及びイントラ予測モードとの相関度を除去することにより、マッピングアルゴリズムの複雑度を減らし、マッピングテーブル記憶のためのメモリを節約するための別の一実施例によるマッピング方法について説明する。
【0314】
一実施例による符号化装置及び復号化装置は、一般イントラ予測モードをMIPモードにマッピングする場合、ブロックサイズ及びマッピングテーブルを使用せずに、全ての一般イントラ予測モードを所定のMIPモードに決定することができる。
【0315】
例えば、一実施例による符号化装置及び復号化装置は、一般イントラ予測モードをMIPモードに変換する場合、全ての一般イントラ予測モードを0番のMIPモードにマッピングすることができる。
【0316】
或いは、一実施例による符号化装置及び復号化装置は、一般イントラ予測モードをMIPモードに変換する場合、全ての一般イントラ予測モードを1番のMIPモードにマッピングすることができる。
【0317】
或いは、一実施例による符号化装置及び復号化装置は、一般イントラ予測モードをMIPモードに変換する場合、全ての一般イントラ予測モードを3番のMIPモードにマッピングすることができる。
【0318】
或いは、一実施例による符号化装置及び復号化装置は、一般イントラ予測モードをMIPモードに変換する場合、全ての一般イントラ予測モードを符号化又は復号化過程で確率的に最も高い選択率を示すMIPモードにマッピングすることができる。
【0319】
このようにMIPモードをイントラ予測モードにマッピングすることにより、符号化装置又は復号化装置は、現在ブロックがMIPモードで符号化又は復号化される場合にMPMリストを生成するにあたり、単に全ての一般イントラ予測モードを所定のMIPモードに決定することができ、当該MIPモードに基づいてMPMリストを生成することができる。これにより、先立って図18を参照して説明したMPMリスト生成ステップは、図23のように単純化できる。図23を参照すると、従来の図18を参照して説明したMPMリスト生成ステップにおけるS1830~S1880ステップは、全ての一般イントラ予測モードを所定のMIPモードにマッピングすることにより、一般イントラ予測モードに対応するMIPモードを決定するステップ(S1891)と、決定されたMIPモードでMPMリストを生成するステップ(S1892)に単純化されたことを確認することができる。ここで、所定のMIPモードは、0番のMIPモード、1番のMIPモード、3番のMIPモード、及び符号化又は復号化過程で確率的に最も高い選択率を示すMIPモードのうちのいずれか一つのモードであり得る。
【0320】
図24は周辺ブロックの一般イントラ予測モードをMIPモードに変換する場合、前述したマッピング方法に従って全ての一般イントラ予測モードを0番のMIPモードにマッピングすることにより、現在ブロックのMIPモードに対するMPMリストを生成したときの符号化率を、図18を参照して説明したMPMリストを生成したときの符号化率と比較して示した実験データである。図24に示すように、符号化率には大きな差が現れないことが分かる。すなわち、上記の方法を適用することにより、符号化損失を最小限に抑えるうえ、アルゴリズムの複雑度を低減し、マッピングテーブルのメモリ使用を減らすことができるという効果を図ることができる。
【0321】
或いは、一実施例による符号化装置及び復号化装置は、下記表4に示すように簡素化されたマッピングテーブルを用いて一般イントラ予測モードをMIPモードに変換することもできる。
【0322】
【表4】
【0323】
例えば、一実施例による符号化装置及び復号化装置は、全ての一般イントラ予測モードを現在ブロックのサイズ(MipSizeId)に応じて17、又は0又は1番のMIPモードにマッピングすることができる。
【0324】
前述したように、現在ブロックのサイズ0は4×4のルマブロックを意味し、現在ブロックのサイズ1は4×8、8×4、8×8のルマブロックを意味し、現在ブロックのサイズ2は8×8よりも大きいルマブロックを意味することができる。
【0325】
或いは、一実施例による符号化装置及び復号化装置は、下記表5に示すように簡素化されたマッピングテーブルを用いて一般イントラ予測モードをMIPモードに変換することができる。
【0326】
【表5】
【0327】
例えば、一実施例による符号化装置及び復号化装置は、全ての一般イントラ予測モードを現在ブロックのサイズ(MipSizeId)に応じて5、又は0又は6番のMIPモードにマッピングすることができる。或いは、一実施例による符号化装置及び復号化装置は、下記表6に示すように簡素化されたマッピングテーブルを用いて一般イントラ予測モードをMIPモードに変換することもできる。
【0328】
【表6】
【0329】
例えば、一実施例による符号化装置及び復号化装置は、全ての一般イントラ予測モードを、現在ブロックのサイズ(MipSizeId)に応じてブロックサイズごとに確率的に最も高い選択率を示すMIPモードにマッピングすることができる。一実施例による符号化装置及び復号化装置は、上述のように簡素化されたマッピングテーブルを用いることによりアルゴリズムの複雑度は減少するものの、ブロックのサイズを比較することからみて、ブロックのサイズを比較することなく一括的に全ての一般イントラ予測モードをMIPモードにマッピングする前述のマッピング方法よりも精巧なマッピングを行うことができる。
【0330】
MIPモードのMPMリスト生成方法
【0331】
前述したように、現在ブロックの予測モードがMIPモードである場合、現在ブロックのMPMリストを生成するために周辺ブロックのMIPモードを確認する必要がある。図25は一実施例による現在ブロックのMPMリストを構成するための候補MIPモード決定方法を説明するフローチャートである。
【0332】
図25を参照すると、一実施例において、符号化装置及び復号化装置は、周辺ブロックの予測モードがMIPモードである場合にも(S2510)、現在ブロックと周辺ブロックが持つことが可能なMIPモードの数が同一であるである場合、すなわち、現在ブロックのサイズと周辺ブロックのサイズとが同一である場合にのみ(S2520)、周辺ブロックのMIPモードを、現在ブロックのMPMリストを構成するための候補MIPモードと決定することができる(S2530)。例えば、符号化装置と復号化装置は、周辺ブロックの予測モードがMIPモードである場合でも(S2510)、現在ブロックと周辺ブロックが持つことが可能なMIPモードの数が同一でない場合、すなわち現在ブロックのサイズと周辺ブロックのサイズが同一でない場合(S2520)、現在ブロックのMPMリストを構成するための候補MIPモードの値を-1と決定することができる(S2540)。候補MIPモードの値-1は、周辺ブロックからMIPモードの値を活用することができないことを示すことができる。
【0333】
また、符号化装置と復号化装置は、周辺ブロックの予測モードがMIPモードでなければ(S2510)、先立って図18を参照して説明したように、図18に従って一般イントラ予測モードを候補MIPモードに変換することができる(S2550)。
【0334】
図25の方法のように、符号化装置と復号化装置は、現在ブロックの候補MIPモードを決定するために周辺ブロックを参照する過程で、現在ブロックと周辺ブロックのサイズを常にチェックしなければならず、周辺ブロックの予測モードがMIPモードでない場合には、図18を参照して説明したようにマッピングを行わなければならないという点で、演算複雑度が高くなる。
【0335】
演算複雑度を下げるために、一実施例による符号化装置及び復号化装置は、MIPモードで符号化又は復号される現在ブロックのMPMリストを生成する場合、周辺ブロックがMIPモードであるか否かを確認し、それに応じて候補MIPモードを決定することができる。例えば、符号化装置及び復号化装置は、周辺ブロックの符号化又は復号化モードがMIPモードである場合、候補MIPモードを0番のモードに設定することができる。或いは、符号化装置及び復号化装置は、周辺ブロックの符号化又は復号化モードがMIPモードでない場合、MIPモードの値を-1に設定することができる。これにより、符号化装置と復号化装置は、周辺ブロックにMIPモードが適用されたか否かのみを確認すればよいので、候補MIPモードを決定するためのアルゴリズムをより簡素化することができ、周辺ブロックが一般イントラ予測モードである場合、これをMIPモードに変換するためのマッピング手順を省略することもできる。
【0336】
一方、符号化装置と復号化装置は、予測精度を高めるために、現在ブロックと周辺ブロックのサイズに基づいて候補MIPモードを決定することができる。例えば、符号化装置と復号化装置は、現在ブロックがMIPモードである場合、MPMリストを生成するために周辺ブロックを参照する場合に、周辺ブロックの予測モードがMIPモードである場合、下記表7を参照して候補MIPモードをmipMpmCand[sizeId][0]と決定することができる。sizeIdは周辺ブロックのサイズを意味し、sizeId0は4×4のルマブロックを意味し、sizeId1は4×8、8×4、8×8のルマブロックを意味し、sizeId2は8×8よりも大きいルマブロックを意味することができる。
【0337】
【表7】
【0338】
例えば、符号化装置と復号化装置は、周辺ブロックのサイズが4×4である場合には候補MIPモードを17番に設定し、周辺ブロックのサイズが4×8、8×4又は8×8である場合には候補MIPモードを0番に設定し、その他のブロックでは候補モードを1番に設定することができる。このように、符号化装置及び復号化装置は、周辺ブロックのサイズに適応的に基本候補MIPモードを選択することにより、MPMモードの精度を高めることができる。又は、演算複雑度を下げるために、一実施例による符号化装置及び復号化装置は、周辺ブロックの符号化モードを考慮せずに候補MIPモードを選択し、それをそのまま利用することによりMPMリストを生成することもできる。
【0339】
例えば、符号化装置と復号化装置は、MIPモードのためのMPMリストを生成する場合、周辺ブロックの符号化モードを考慮することなく、MIPモードのためのMPMリスト(例えば、candMipModeList[])を次のとおり固定的に決定することができる。例えば、3つのMIP MPMリストを生成する場合、xは0~2の値を持つことができ、これによるcandMipModeList[x]は表7を参照して次のとおりに構成されることができる。ここで、sizeIdは、周辺ブロックのサイズを示すが、符号化装置と復号化装置は、周辺ブロックの情報を参照するプロセスを省略するために、sizeIdを現在ブロックのサイズに応じて決定することもできる。
【0340】
candMipModeList[0]=mipMpmCand[sizeId][0]
【0341】
candMipModeList[1]=mipMpmCand[sizeId][1]
【0342】
candMipModeList[2]=mipMpmCand[sizeId][2]
【0343】
図26は前述したマッピング方法に従って周辺ブロックの符号化モードを考慮することなく、MIPモードのためのMPMリストを上記の如く固定的に決定して画像を符号化したときの符号化率を、図25の方法によって決定された候補MIPモードに基づいてMPMリストを生成して画像を符号化した場合と比較して示す実験データである。図26に示すように、符号化率には大きな差が現れないことが分かる。すなわち、上記の方法を適用することにより、符号化損失を最小限に抑えるうえ、アルゴリズムの複雑度を低減し、マッピングテーブルのためのメモリ使用を減らすことができるという効果を図ることができる。
【0344】
他の実施例において、符号化装置及び復号化装置は、MIPモードのためのMPMリストを生成する場合、周辺ブロックの符号化モードを考慮することなく、MIPモードのためのMPMリスト(例えば、candMipModeList[])を次のとおりモード選択確率に基づいて固定的に決定することができる。例えば、3つのMIP MPMリストを生成する場合、xは0~2の値を持つことができ、candMipModeList[x]は表8を参照して次のとおりに構成できる。sortedmipMpmCand[sizeId][x]には、MIPモード選択確率に基づいてブロックのサイズ別に候補MIPモードが格納されていることができる。例えば、sortedmipMpmCand[sizeId][0]には、当該sizeIdで最も選択頻度の高い候補MIPモードが格納されており、sortedmipMpmCand[sizeId][1]には、当該sizeIdにおいて2番目に選択頻度の高い候補MIPモードが格納されていることができる。このとき、sizeIdは周辺ブロックのサイズを示すが、符号化装置及び復号化装置は、周辺ブロックの情報を参照するプロセスを省略するために、sizeIdを現在ブロックのサイズに応じて決定することもできる。
【0345】
candMipModeList[0]=sortedmipMpmCand[sizeId][0]
【0346】
candMipModeList[1]=sortedmipMpmCand[sizeId][1]
【0347】
candMipModeList[2]=sortedmipMpmCand[sizeId][2]
【0348】
【表8】
【0349】
応用実施例
【0350】
本開示の例示的な方法は、説明の明確性のために動作のシリーズで表現されているが、これは、ステップが行われる順序を制限するためのものではなく、必要な場合には、それぞれのステップが同時に又は異なる順序で行われることもできる。本開示による方法を実現するために、例示するステップにさらに他のステップを含むか、一部のステップを除いて残りのステップを含むか、又は一部のステップを除いて追加の他のステップを含むこともできる。
【0351】
本開示において、所定の動作(ステップ)を行う画像符号化装置又は画像復号化装置は、当該動作(ステップ)の実行条件や状況を確認する動作(ステップ)を行うことができる。例えば、所定の条件が満足される場合、所定の動作を行うと記載された場合、画像符号化装置又は画像復号化装置は、前記所定の条件が満足されるか否かを確認する動作を行った後、前記所定の動作を行うことができる。
【0352】
本開示の様々な実施例は、すべての可能な組み合わせを羅列したものではなく、本開示の代表的な態様を説明するためのものであり、様々な実施例で説明する事項は、独立して適用されてもよく、2つ以上の組み合わせで適用されてもよい。
【0353】
また、本開示の様々な実施例は、ハードウェア、ファームウェア(firmware)、ソフトウェア、又はそれらの組み合わせなどによって実現できる。ハードウェアによる実現の場合、1つ又はそれ以上のASICs(Application Specific Integrated Circuits)、DSPs(Digital Signal Processors)、DSPDs(Digital Signal Processing Devices)、PLDs(Programmable Logic Devices)、FPGAs(Field Programmable Gate Arrays)、汎用プロセッサ(general processor)、コントローラ、マイクロコントローラ、マイクロプロセッサなどによって実現できる。
【0354】
また、本開示の実施例が適用された画像復号化装置及び画像符号化装置は、マルチメディア放送送受信装置、モバイル通信端末、ホームシネマビデオ装置、デジタルシネマビデオ装置、監視用カメラ、ビデオ会話装置、ビデオ通信などのリアルタイム通信装置、モバイルストリーミング装置、記憶媒体、カムコーダ、注文型ビデオ(VoD)サービス提供装置、OTTビデオ(Over the top video)装置、インターネットストリーミングサービス提供装置、3次元(3D)ビデオ装置、画像電話ビデオ装置、及び医療用ビデオ装置などに含まれることができ、ビデオ信号又はデータ信号を処理するために使用できる。例えば、OTTビデオ(Over the top video)装置としては、ゲームコンソール、ブルーレイプレーヤー、インターネット接続TV、ホームシアターシステム、スマートフォン、タブレットPC、DVR(Digital Video Recoder)などを含むことができる。
【0355】
図27は本開示の実施例が適用できるコンテンツストリーミングシステムを例示する図である。
【0356】
図27に示されているように、本開示の実施例が適用されたコンテンツストリーミングシステムは、大きく、符号化サーバ、ストリーミングサーバ、Webサーバ、メディアストレージ、ユーザ装置及びマルチメディア入力装置を含むことができる。
【0357】
前記符号化サーバは、スマートフォン、カメラ、カムコーダなどのマルチメディア入力装置から入力されたコンテンツをデジタルデータに圧縮してビットストリームを生成し、これを前記ストリーミングサーバに伝送する役割を果たす。他の例として、スマートフォン、カメラ、カムコーダなどのマルチメディア入力装置がビットストリームを直接生成する場合、前記符号化サーバは省略できる。
【0358】
前記ビットストリームは、本開示の実施例が適用された画像符号化方法及び/又は画像符号化装置によって生成でき、前記ストリーミングサーバは、前記ビットストリームを伝送又は受信する過程で一時的に前記ビットストリームを保存することができる。
【0359】
前記ストリーミングサーバは、Webサーバを介したユーザの要求に基づいてマルチメディアデータをユーザ装置に伝送し、前記Webサーバは、ユーザにどんなサービスがあるかを知らせる媒介体の役割を果たすことができる。ユーザが前記Webサーバに所望のサービスを要求すると、前記Webサーバは、これをストリーミングサーバに伝達し、前記ストリーミングサーバは、ユーザにマルチメディアデータを伝送することができる。この時、前記コンテンツストリーミングシステムは、別途の制御サーバを含むことができ、この場合、前記制御サーバは、前記コンテンツストリーミングシステム内の各装置間の命令/応答を制御する役割を果たすことができる。
【0360】
前記ストリーミングサーバは、メディアストレージ及び/又は符号化サーバからコンテンツを受信することができる。例えば、前記符号化サーバからコンテンツを受信する場合、前記コンテンツをリアルタイムで受信することができる。この場合、円滑なストリーミングサービスを提供するために、前記ストリーミングサーバは、前記ビットストリームを一定時間の間保存することができる。
【0361】
前記ユーザ装置の例としては、携帯電話、スマートフォン(smart phone)、ノートパソコン(laptop computer)、デジタル放送用端末、PDA(personal digital assistants)、PMP(portable multimedia player)、ナビゲーション、スレートPC(slate PC)、タブレットPC(tablet PC)、ウルトラブック(ultrabook)、ウェアラブルデバイス(wearable device、例えば、スマートウォッチ(smartwatch)、スマートグラス(smart glass)、HMD(head mounted display))、デジタルTV、デスクトップコンピュータ、デジタルサイネージなどがあり得る。
【0362】
前記コンテンツストリーミングシステム内の各サーバは分散サーバとして運営されることができ、この場合、各サーバから受信するデータは分散処理されることができる。
【0363】
本開示の範囲は、様々な実施例の方法による動作が装置又はコンピュータ上で実行されるようにするソフトウェア又はマシン-実行可能なコマンド(例えば、オペレーティングシステム、アプリケーション、ファームウェア(firmware)、プログラムなど)、及びこのようなソフトウェア又はコマンドなどが保存されて装置又はコンピュータ上で実行できる非一時的なコンピュータ可読媒体(non-transitory computer-readable medium)を含む。
【産業上の利用可能性】
【0364】
本開示による実施例は、画像を符号化/復号化するのに利用可能である。
図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
【手続補正書】
【提出日】2023-10-04
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
画像復号化装置によって行われる画像復号化方法であって、
現在ブロックの予測モードを識別するステップと、
前記現在ブロックの予測モードがイントラ予測モードであることに基づき、前記現在ブロックのイントラ予測モードがMIP(Matrix-based intra prediction)モードであるか否かを識別するステップと、
前記現在ブロックのイントラ予測モードがMIPモードでないことに基づき、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて前記現在ブロックに対する候補イントラ予測モードを決定するステップと、
前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成するステップと、
前記候補イントラ予測モードリストに基づいて前記現在ブロックのイントラ予測モードを決定するステップと、
前記現在ブロックのイントラ予測モードに基づいて、前記現在ブロックの予測サンプルを生成するステップと、を含み、
前記周辺ブロックの予測モードがMIPモードであることに基づいて、前記候補イントラ予測モードが所定のイントラ予測モードであると決定され、
前記周辺ブロックが利用できないことに基づいて、前記候補イントラ予測モードは、前記所定のイントラ予測モードであると決定され、
前記候補イントラ予測モードリストは、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて生成され、
前記第1候補イントラ予測モードは、前記現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定され、
前記第2候補イントラ予測モードは、前記現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定され、
前記第1周辺ブロックの予測モードがMIPモードであり、前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが互いに異なり、前記第2候補イントラ予測モードが、DCモードを表す予測モード値よりも大きい値を有するイントラ予測モードであることに基づいて、前記候補イントラ予測モードリストは、前記第2候補イントラ予測モードを含むと決定される、画像復号化方法。
【請求項2】
前記所定のイントラ予測モードは、Planarモードである、請求項1に記載の画像復号化方法。
【請求項3】
前記周辺ブロックの予測モードがMIPモードであるか否かは、前記周辺ブロックに対するMIPモードインジケータに基づいて決定され、
前記MIPモードインジケータは、ビットストリームから取得される、請求項1に記載の画像復号化方法。
【請求項4】
前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが同一であり、前記第1候補イントラ予測モードが、DCモードを示す予測モード値よりも大きい値を有するイントラ予測モードであることに基づき、前記候補イントラ予測モードリストは、前記第1候補イントラ予測モードの値を含むと決定される、請求項1に記載の画像復号化方法。
【請求項5】
前記所定の候補イントラ予測モードは、DCモード及び垂直モードのうちの少なくとも一つを含む、請求項1に記載の画像復号化方法。
【請求項6】
前記候補イントラ予測モードリストに基づいて前記現在ブロックのイントラ予測モードを決定するステップは、ビットストリームから取得されたイントラ予測モードインジケータに基づいて、前記候補イントラ予測モードリストに含まれる候補イントラ予測モードのうちのいずれか一つを、前記現在ブロックのイントラ予測モードであると決定することにより行われる、請求項1に記載の画像復号化方法。
【請求項7】
前記現在ブロックに対応するクロマブロックのイントラ予測モードを決定するための参照モードを決定するステップと、
前記参照モードに基づいて前記クロマブロックのイントラ予測モードを決定するステップと、を含み、
前記現在ブロックはルマブロックであり、
前記現在ブロックのイントラ予測モードがMIPモードであることに基づいて、前記参照モードはPlanarモードであると決定される、請求項1に記載の画像復号化方法。
【請求項8】
前記クロマブロックのイントラ予測モードは前記参照モードであると決定される、請求項7に記載の画像復号化方法。
【請求項9】
前記現在ブロックのイントラ予測モードがMIPモードでないことに基づき、前記参照モードは前記現在ブロックのイントラ予測モードに基づいて決定される、請求項8に記載の画像復号化方法。
【請求項10】
画像符号化装置によって行われる画像符号化方法であって、
現在ブロックの予測モードを識別するステップと、
前記現在ブロックの予測モードがイントラ予測モードであることに基づき、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて候補イントラ予測モードを決定するステップと、
前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成するステップと、
前記候補イントラ予測モードリストに基づいて、前記現在ブロックのイントラ予測モードを示すイントラ予測モードインジケータを符号化するステップと、を含み、
前記現在ブロックのイントラ予測モードに基づいて、前記現在ブロックの予測サンプルが生成され、
前記周辺ブロックの予測モードがMIP(matrix based intra prediction)モードであることに基づいて、前記候補イントラ予測モードは所定のイントラ予測モードであると決定され、
前記周辺ブロックが利用できないことに基づいて、前記候補イントラ予測モードは、前記所定のイントラ予測モードであると決定され、
前記候補イントラ予測モードリストは、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて生成され、
前記第1候補イントラ予測モードは、前記現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定され、
前記第2候補イントラ予測モードは、前記現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定され、
前記第1周辺ブロックの予測モードがMIPモードであり、前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが互いに異なり、前記第2候補イントラ予測モードが、DCモードを表す予測モード値よりも大きい値を有するイントラ予測モードであることに基づいて、前記候補イントラ予測モードリストは、前記第2候補イントラ予測モードを含むと決定される、画像符号化方法。
【請求項11】
画像符号化方法によって生成されたビットストリームを伝送する方法であって、
現在ブロックの予測モードを識別するステップと、
前記現在ブロックの予測モードがイントラ予測モードであることに基づき、前記現在ブロックの周辺に位置する周辺ブロックの予測モードに基づいて候補イントラ予測モードを決定するステップと、
前記候補イントラ予測モードに基づいて前記現在ブロックの候補イントラ予測モードリストを生成するステップと、
前記候補イントラ予測モードリストに基づいて、前記現在ブロックのイントラ予測モードを示すイントラ予測モードインジケータを符号化するステップと、を含み、
前記現在ブロックのイントラ予測モードに基づいて、前記現在ブロックの予測サンプルが生成され、
前記周辺ブロックの予測モードがMIP(matrix based intra prediction)モードであることに基づいて、前記候補イントラ予測モードは所定のイントラ予測モードであると決定され、
前記周辺ブロックが利用できないことに基づいて、前記候補イントラ予測モードは、前記所定のイントラ予測モードであると決定され、
前記候補イントラ予測モードリストは、第1候補イントラ予測モードと第2候補イントラ予測モードに基づいて生成され、
前記第1候補イントラ予測モードは、前記現在ブロックの周辺に位置する第1周辺ブロックの予測モードに基づいて決定され、
前記第2候補イントラ予測モードは、前記現在ブロックの周辺に位置する第2周辺ブロックの予測モードに基づいて決定され、
前記第1周辺ブロックの予測モードがMIPモードであり、前記第1候補イントラ予測モードと前記第2候補イントラ予測モードとが互いに異なり、前記第2候補イントラ予測モードが、DCモードを表す予測モード値よりも大きい値を有するイントラ予測モードであることに基づいて、前記候補イントラ予測モードリストは、前記第2候補イントラ予測モードを含むと決定される、ビットストリームを伝送する方法。