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

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

▶ グァンドン オッポ モバイル テレコミュニケーションズ コーポレーション リミテッドの特許一覧

特開2024-113154BDPCMを用いた画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024113154
(43)【公開日】2024-08-21
(54)【発明の名称】BDPCMを用いた画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
(51)【国際特許分類】
   H04N 19/593 20140101AFI20240814BHJP
   H04N 19/70 20140101ALI20240814BHJP
【FI】
H04N19/593
H04N19/70
【審査請求】有
【請求項の数】23
【出願形態】OL
(21)【出願番号】P 2024093660
(22)【出願日】2024-06-10
(62)【分割の表示】P 2023135551の分割
【原出願日】2020-04-17
(31)【優先権主張番号】62/834,976
(32)【優先日】2019-04-17
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/847,909
(32)【優先日】2019-05-14
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Blu-ray
(71)【出願人】
【識別番号】516227559
【氏名又は名称】オッポ広東移動通信有限公司
【氏名又は名称原語表記】GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
【住所又は居所原語表記】No. 18 Haibin Road,Wusha, Chang’an,Dongguan, Guangdong 523860 China
(74)【代理人】
【識別番号】100120031
【弁理士】
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100152205
【弁理士】
【氏名又は名称】吉田 昌司
(74)【代理人】
【識別番号】100137523
【弁理士】
【氏名又は名称】出口 智也
(72)【発明者】
【氏名】ユ ソンミ
(72)【発明者】
【氏名】ホ チン
(72)【発明者】
【氏名】チェ チャンウォン
(72)【発明者】
【氏名】チェ チョン ア
(57)【要約】      (修正有)
【課題】効率が向上した画像符号化/復号化方法及び装置を提供する。
【解決手段】画像復号化方法は、イントラ予測された現在ブロックに対してBDPCM(block difference pulse code modulation)が適用されるか否かを指示する第1情報をビットストリームからパーシングするステップと、前記第1情報が前記現在ブロックに対してBDPCMが適用されることを指示する場合、前記現在ブロックに対するBDPCMの予測方向を決定し、前記決定されたBDPCMの予測方向に基づいて前記現在ブロックのレジデュアルブロックを生成するステップと、前記現在ブロックのイントラ予測モードに基づいて、イントラ予測を行うことにより前記現在ブロックの予測ブロックを生成するステップと、前記レジデュアルブロックと前記予測ブロックに基づいて前記現在ブロックを復元するステップと、を含む。
【選択図】図15
【特許請求の範囲】
【請求項1】
画像復号化装置によって行われる画像復号化方法であって、
現在ブロックに対してBDPCM(block difference pulse code modulation)が適用されるか否かを決定することと、
前記現在ブロックに対して前記BDPCMが適用される場合、前記現在ブロックに対するBDPCMの予測方向を決定することと、
前記現在ブロックに対するBDPCMの予測方向に基づいて、前記現在ブロックのイントラ予測モードを決定することと、
前記BDPCMの予測方向に基づいて前記現在ブロックのレジデュアルブロックを生成することと、
前記現在ブロックのイントラ予測モードに基づいて、イントラ予測を行うことにより前記現在ブロックの予測ブロックを生成することと、
前記レジデュアルブロックと前記予測ブロックに基づいて前記現在ブロックを再構成することと、
を含むことを特徴とする画像復号化方法。
【請求項2】
現在ブロックに対してBDPCMが適用されるか否かを決定することは、
前記現在ブロックに対して前記BDPCMが適用されるか否かを指示する第1情報をビットストリームからパーシングすることを含む、ことを特徴とする請求項1に記載の画像復号化方法。
【請求項3】
前記現在ブロックに対するBDPCMの予測方向を決定することは、
前記現在ブロックに対するBDPCMの予測方向を指示する第2情報をビットストリームからパーシングすることを含む、ことを特徴とする請求項1に記載の画像復号化方法。
【請求項4】
前記現在ブロックに対するBDPCMの予測方向は水平方向又は垂直方向を含む、ことを特徴とする請求項1に記載の画像復号化方法。
【請求項5】
前記現在ブロックに対するBDPCMの予測方向に基づいて、前記現在ブロックのイントラ予測モードを決定することは、
前記BDPCMの予測方向が水平方向である場合、前記現在ブロックのイントラ予測モードは水平方向モードに決定されることと、
前記BDPCMの予測方向が垂直方向である場合、前記現在ブロックのイントラ予測モードは垂直方向モードに決定されることと、
を含む、ことを特徴とする請求項1に記載の画像復号化方法。
【請求項6】
前記画像復号化方法は、
前記現在ブロックに対して前記BDPCMが適用されない場合、ビットストリームを介してシグナリングされる前記現在ブロックの予測情報に基づいて、前記現在ブロックのイントラ予測モードを決定することをさらに含む、ことを特徴とする請求項1に記載の画像復号化方法。
【請求項7】
画像符号化装置によって行われる画像符号化方法であって、
現在ブロックに対してBDPCM(block difference pulse code modulation)が適用されるか否かを決定することと、
前記現在ブロックに対して前記BDPCMが適用される場合、前記現在ブロックに対するBDPCMの予測方向を決定することと、
前記現在ブロックに対するBDPCMの予測方向に基づいて、前記現在ブロックのイントラ予測モードを決定することと、
前記現在ブロックのイントラ予測モードに基づいてイントラ予測を行うことにより前記現在ブロックの予測ブロックを生成することと、
前記予測ブロックに基づいて前記現在ブロックのレジデュアルブロックを生成することと、
前記BDPCMの予測方向に基づいて、前記現在ブロックのレジデュアルブロックを符号化することと、
を含む、ことを特徴とする画像符号化方法。
【請求項8】
前記画像符号化方法は、
前記現在ブロックに対して前記BDPCMが適用されるか否かを指示する第1情報を符号化することをさらに含む、ことを特徴とする請求項7に記載の画像符号化方法。
【請求項9】
前記現在ブロックに対するBDPCMの予測方向を指示する第2情報を符号化することをさらに含む、ことを特徴とする請求項7に記載の画像符号化方法。
【請求項10】
前記現在ブロックに対するBDPCMの予測方向は水平方向又は垂直方向を含む、ことを特徴とする請求項7に記載の画像符号化方法。
【請求項11】
前記現在ブロックに対するBDPCMの予測方向に基づいて、前記現在ブロックのイントラ予測モードを決定することは、
前記BDPCMの予測方向が水平方向である場合、前記現在ブロックのイントラ予測モードは水平方向モードに決定されることと、
前記BDPCMの予測方向が垂直方向である場合、前記現在ブロックのイントラ予測モードは垂直方向モードに決定されることと、
を含む、ことを特徴とする請求項7に記載の画像符号化方法。
【請求項12】
画像復号化装置であって、
メモリ及び少なくとも一つのプロセッサを含み、
前記少なくとも一つのプロセッサは、
現在ブロックに対してBDPCM(block difference pulse code modulation)が適用されるか否かを決定し、
前記現在ブロックに対して前記BDPCMが適用される場合、前記現在ブロックに対するBDPCMの予測方向を決定し、
前記現在ブロックに対するBDPCMの予測方向に基づいて、前記現在ブロックのイントラ予測モードを決定し、
前記BDPCMの予測方向に基づいて前記現在ブロックのレジデュアルブロックを生成し、
前記現在ブロックのイントラ予測モードに基づいてイントラ予測を行うことにより前記現在ブロックの予測ブロックを生成し、
前記レジデュアルブロックと前記予測ブロックに基づいて前記現在ブロックを再構成する、
ことを特徴とする画像復号化装置。
【請求項13】
前記少なくとも一つのプロセッサは、現在ブロックに対してBDPCMが適用されるか否かを決定することは、
前記現在ブロックに対して前記BDPCMが適用されるか否かを指示する第1情報をビットストリームからパーシングすることを含む、ことを特徴とする請求項12に記載の画像復号化装置。
【請求項14】
前記少なくとも一つのプロセッサは、前記現在ブロックに対するBDPCMの予測方向を決定することは、
前記現在ブロックに対するBDPCMの予測方向を指示する第2情報をビットストリームからパーシングすることを含む、ことを特徴とする請求項12に記載の画像復号化装置。
【請求項15】
前記現在ブロックに対するBDPCMの予測方向は水平方向又は垂直方向を含む、ことを特徴とする請求項12に記載の画像復号化装置。
【請求項16】
前記少なくとも一つのプロセッサは、前記現在ブロックに対するBDPCMの予測方向に基づいて前記現在ブロックのイントラ予測モードを決定することは、
前記BDPCMの予測方向が水平方向である場合、前記現在ブロックのイントラ予測モードを水平方向モードに決定することと、
前記BDPCMの予測方向が垂直方向である場合、前記現在ブロックのイントラ予測モードを垂直方向モードに決定することと、
を含む、ことを特徴とする請求項12に記載の画像復号化装置。
【請求項17】
前記少なくとも一つのプロセッサは、さらに、前記現在ブロックに対して前記BDPCMが適用されない場合、ビットストリームを介してシグナリングされる前記現在ブロックの予測情報に基づいて、前記現在ブロックの前記イントラ予測モードを決定する、ことを特徴とする請求項12に記載の画像復号化装置。
【請求項18】
画像符号化装置であって、
メモリ及び少なくとも一つのプロセッサを含み、
前記少なくとも一つのプロセッサは、
現在ブロックに対してBDPCM(block difference pulse code modulation)が適用されるか否かを決定し、
前記現在ブロックに対して前記BDPCMが適用される場合、前記現在ブロックに対する前記BDPCMの予測方向を決定し、
前記現在ブロックに対する前記BDPCMの予測方向に基づいて、前記現在ブロックのイントラ予測モードを決定し、
前記現在ブロックのイントラ予測モードに基づいてイントラ予測を行うことにより前記現在ブロックの予測ブロックを生成し、
前記予測ブロックに基づいて前記現在ブロックのレジデュアルブロックを生成し、
前記BDPCMの予測方向に基づいて前記現在ブロックのレジデュアルブロックを符号化する、
ことを特徴とする画像符号化装置。
【請求項19】
前記少なくとも一つのプロセッサは、さらに、前記現在ブロックに対して前記BDPCMが適用されるか否かを指示する第1情報を符号化する、ことを特徴とする請求項18に記載の画像符号化装置。
【請求項20】
前記少なくとも一つのプロセッサは、さらに、前記現在ブロックに対するBDPCMの予測方向を指示する第2情報を符号化する、ことを特徴とする請求項18に記載の画像符号化装置。
【請求項21】
前記現在ブロックに対するBDPCMの予測方向は水平方向又は垂直方向を含む、ことを特徴とする請求項18に記載の画像符号化装置。
【請求項22】
前記少なくとも一つのプロセッサは、前記現在ブロックに対する前記BDPCMの予測方向に基づいて、前記現在ブロックのイントラ予測モードを決定することは、
前記BDPCMの予測方向が水平方向である場合、前記現在ブロックのイントラ予測モードを水平方向モードに決定することと、
前記BDPCMの予測方向が垂直方向である場合、前記現在ブロックのイントラ予測モードを垂直方向モードに決定することと、
を含む、ことを特徴とする請求項18に記載の画像符号化装置。
【請求項23】
ビットストリームを格納する非一時的なコンピュータ可読媒体であって、
前記ビットストリームは画像符号化方法によって生成され、前記画像符号化方法は、
現在ブロックに対してBDPCM(block difference pulse code modulation)が適用されるか否かを決定することと、
前記現在ブロックに対して前記BDPCMが適用される場合、前記現在ブロックに対する前記BDPCMの予測方向を決定することと、
前記現在ブロックに対するBDPCMの予測方向に基づいて、前記現在ブロックのイントラ予測モードを決定することと、
前記現在ブロックのイントラ予測モードに基づいてイントラ予測を行うことにより前記現在ブロックの予測ブロックを生成することと、
前記予測ブロックに基づいて前記現在ブロックのレジデュアルブロックを生成することと、
前記BDPCMの予測方向に基づいて前記現在ブロックのレジデュアルブロックを符号化することと、
を含む、ことを特徴とする非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、画像符号化/復号化方法及び装置に係り、より詳細には、BDPCM(block difference pulase code modulation)を用いて画像を符号化/復号化する方法、装置、及び本開示の画像符号化方法/装置によって生成されたビットストリームを伝送する方法に関する。
【背景技術】
【0002】
最近、高解像度、高品質の画像、例えばHD(High Definition)画像及びUHD(Ultra High Definition)画像への需要が多様な分野で増加している。画像データが高解像度、高品質になるほど、従来の画像データに比べて、伝送される情報量又はビット量が相対的に増加する。伝送される情報量又はビット量の増加は、伝送費用と保存費用の増加をもたらす。
【0003】
これにより、高解像度、高品質画像の情報を効果的に伝送又は保存し、再生するための高効率の画像圧縮技術が求められる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示は、符号化/復号化効率が向上した画像符号化/復号化方法及び装置を提供することを目的とする。
【0005】
また、本開示は、BDPCMを用いて画像を符号化/復号化する方法及び装置を提供することを目的とする。
【0006】
また、本開示は、BDPCM関連情報を効率よくシグナリングする画像符号化/復号化方法及び装置を提供することを目的とする。
【0007】
また、本開示は、イントラ予測モード又はブロックのサイズに基づいてBDPCMの予測方向を導出した後、BDPCMを行う画像符号化/復号化方法及び装置を提供することを目的とする。
【0008】
また、本開示は、BDPCMが適用されたブロックのレジデュアル信号を効率よく符号化する画像符号化/復号化方法及び装置を提供することを目的とする。
【0009】
また、本開示は、本開示による画像符号化方法又は装置によって生成されたビットストリームを伝送する方法を提供することを目的とする。
【0010】
また、本開示は、本開示による画像符号化方法又は装置によって生成されたビットストリームを保存した記録媒体を提供することを目的とする。
【0011】
また、本開示は、本開示による画像復号化装置によって受信され、復号化されて画像の復元に利用されるビットストリームを保存した記録媒体を提供することを目的とする。
【0012】
本開示で解決しようとする技術的課題は上述した技術的課題に制限されず、上述していない別の技術的課題は以降の記載から本開示の属する技術分野における通常の知識を有する者に明確に理解できるであろう。
【課題を解決するための手段】
【0013】
本開示の一態様による画像復号化方法は、画像復号化装置によって行われる画像復号化方法であって、イントラ予測された現在ブロックに対してBDPCM(block difference pulse code modulation)が適用されるか否かを指示する第1情報をビットストリームからパーシングするステップと、前記第1情報が前記現在ブロックに対してBDPCMが適用されることを指示する場合、前記現在ブロックに対するBDPCMの予測方向を決定し、前記決定されたBDPCMの予測方向に基づいて前記現在ブロックのレジデュアルブロックを生成するステップと、前記現在ブロックのイントラ予測モードに基づいて、イントラ予測を行うことにより前記現在ブロックの予測ブロックを生成するステップと、前記レジデュアルブロックと前記予測ブロックに基づいて前記現在ブロックを復元するステップと、を含むことができる。
【0014】
本開示による画像復号化方法において、前記第1情報は、前記現在ブロックに0ではないレジデュアル信号が存在する場合にのみパーシングされ、前記現在ブロックに0ではないレジデュアル信号が存在しない場合、前記第1情報のパーシングをスキップし、前記現在ブロックに対してBDPCMが適用されないものと決定されることができる。
【0015】
本開示による画像復号化方法において、前記現在ブロックに0ではないレジデュアル信号が存在するか否かは、前記ビットストリームからパーシングされた情報に基づいて判断されることができる。
【0016】
本開示による画像復号化方法において、前記BDPCMの予測方向は、前記ビットストリームからパーシングされた第2情報に基づいて決定されることができる。
【0017】
本開示による画像復号化方法において、前記BDPCMの予測方向と前記イントラ予測モードの予測方向とは同一であることができる。
【0018】
本開示による画像復号化方法において、前記BDPCMの予測方向は、前記イントラ予測モードに基づいて決定されることができる。
【0019】
本開示による画像復号化方法において、前記イントラ予測モードの予測方向が垂直方向である場合、前記BDPCMの予測方向は垂直方向に決定され、前記イントラ予測モードの予測方向が水平方向である場合、前記BDPCMの予測方向は水平方向に決定され、前記イントラ予測モードが非方向性モードである場合、前記BDPCMの予測方向は所定の方向に決定されることができる。
【0020】
本開示による画像復号化方法において、前記所定の方向は、予め定義された方向又は前記現在ブロックの上位レベルでシグナリングされる情報に基づいて導出された方向であることができる。
【0021】
本開示による画像復号化方法において、前記BDPCMの予測方向は、前記現在ブロックのサイズに基づいて決定されることができる。
【0022】
本開示による画像復号化方法において、前記現在ブロックの幅がWであり、高さがHであるとき、WがHよりも大きい場合、前記BDPCMの予測方向は水平方向に決定され、HがWよりも大きい場合、前記BDPCMの予測方向は垂直方向に決定されることができる。
【0023】
本開示による画像復号化方法において、前記現在ブロックの幅がWであり、高さがHであるとき、W/Hが所定の整数N以上である場合、前記BDPCMの予測方向は垂直方向に決定され、W/Hが1/N以下である場合、前記BDPCMの予測方向は水平方向に決定されることができる。
【0024】
本開示の他の態様による画像復号化装置は、メモリ及び少なくとも一つのプロセッサを含み、前記少なくとも一つのプロセッサは、イントラ予測された現在ブロックに対してBDPCMが適用されるか否かを指示する第1情報をビットストリームからパーシングし、前記第1情報が前記現在ブロックに対してBDPCMが適用されることを指示する場合、前記現在ブロックに対するBDPCMの予測方向を決定し、前記決定されたBDPCMの予測方向に基づいて前記現在ブロックのレジデュアルブロックを生成し、前記現在ブロックのイントラ予測モードに基づいて、イントラ予測を行うことにより前記現在ブロックの予測ブロックを生成し、前記レジデュアルブロックと前記予測ブロックに基づいて前記現在ブロックを復元することができる。
【0025】
本開示の別の態様による画像符号化方法は、現在ブロックに対してBDPCMが適用されるか否かを決定するステップと、前記現在ブロックに対してBDPCMが適用される場合、前記現在ブロックに対するBDPCMの予測方向を決定するステップと、前記現在ブロックのイントラ予測モードに基づいて、イントラ予測を行うことにより前記現在ブロックの予測ブロックを生成するステップと、前記予測ブロックに基づいて前記現在ブロックのレジデュアルブロックを生成するステップと、前記決定されたBDPCMの予測方向に基づいて前記現在ブロックのレジデュアルブロックを符号化するステップと、前記現在ブロックに対してBDPCMが適用されるか否かを指示する第1情報を符号化するステップと、を含むことができる。
【0026】
本開示による画像符号化方法において、前記BDPCMの予測方向と前記イントラ予測モードの予測方向とは同一であることができる。
【0027】
本開示の別の態様による伝送方法は、本開示の画像符号化装置又は画像符号化方法によって生成されたビットストリームを伝送することができる。
【0028】
本開示の別の態様によるコンピュータ可読記録媒体は、本開示の画像符号化方法又は画像符号化装置によって生成されたビットストリームを保存することができる。
【0029】
本開示について簡略に要約して上述した特徴は、後述する本開示の詳細な説明の例示的な態様に過ぎず、本開示の範囲を制限するものではない。
【発明の効果】
【0030】
本開示によれば、符号化/復号化効率が向上した画像符号化/復号化方法及び装置が提供されることができる。
【0031】
また、本開示によれば、BDPCMを用いて画像を符号化/復号化する方法及び装置が提供されることができる。
【0032】
また、本開示によれば、BDPCM関連情報を効率よくシグナリングする画像符号化/復号化方法及び装置が提供されることができる。
【0033】
また、本開示によれば、イントラ予測モード又はブロックのサイズに基づいてBDPCMの予測方向を導出した後、BDPCMを行う画像符号化/復号化方法及び装置が提供されることができる。
【0034】
また、本開示によれば、BDPCMが適用されたブロックのレジデュアル信号を効率よく符号化する画像符号化/復号化方法及び装置が提供されることができる。
【0035】
また、本開示によれば、本開示による画像符号化方法又は装置によって生成されたビットストリームを伝送する方法が提供されることができる。
【0036】
また、本開示によれば、本開示による画像符号化方法又は装置によって生成されたビットストリームを保存した記録媒体が提供されることができる。
【0037】
また、本開示によれば、本開示による画像復号化装置によって受信され、復号化されて画像の復元に利用されるビットストリームを保存した記録媒体が提供されることができる。
【0038】
本開示で得られる効果は、上述した効果に限定されず、上述していない別の効果は、以降の記載から、本開示の属する技術分野における通常の知識を有する者に明確に理解できるだろう。
【図面の簡単な説明】
【0039】
図1】本開示による実施例が適用できるビデオコーディングシステムを概略的に示す図である。
図2】本開示による実施例が適用できる画像符号化装置を概略的に示す図である。
図3】本開示による実施例が適用できる画像復号化装置を概略的に示す図である。
図4】本開示による実施例が適用可能な画像復号化手順の概略的なフローチャートである
図5】本開示される実施例が適用可能な画像符号化手順の概略的なフローチャートである。
図6】イントラ予測ベースのビデオ/画像符号化方法を示すフローチャートである。
図7】本開示によるイントラ予測部185の構成を例示的に示す図である。
図8】イントラ予測ベースのビデオ/画像復号化方法を示すフローチャートである。
図9】本開示によるイントラ予測部265の構成を例示的に示す図である。
図10】本開示の一実施例によるイントラ予測方向を示す図である。
図11】本開示の他の実施例によるイントラ予測方向を示す図である。
図12】本開示によるBDPCMのレジデュアルサンプルを符号化する方法を説明するための図である。
図13】本開示のBDPCMを行って生成された修正された量子化レジデュアルブロックを示す図である。
図14】画像符号化装置でBDPCMを適用して現在ブロックを符号化する手順を示すフローチャートである。
図15】画像復号化装置でBDPCMを適用して現在ブロックを復元する手順を示すフローチャートである。
図16】現在ブロックのシンタックス構造に含まれているBDPCMに関する情報を概略的に示す図である。
図17】本開示の一実施例によるBDPCM関連情報の符号化/復号化方法を説明するためのフローチャートである。
図18】本開示の他の実施例による現在ブロックのイントラ予測方向に基づいてBDPCMの予測方向を誘導する方法を説明するためのフローチャートである。
図19】本開示の別の実施例によるBDPCMの予測方向に基づいて現在ブロックのイントラ予測モードを誘導する方法を説明するためのフローチャートである。
図20】本開示の別の実施例による現在ブロックのサイズに基づいてBDPCMの予測方向を誘導する方法を説明するためのフローチャートである。
図21】CABACエントロピー符号化方法を説明するための図である。
図22】本開示の一実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
図23】本開示の一実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
図24】本開示によってBDPCMの予測方向を考慮してテンプレートを定義し、コンテキストモデル又はRiceパラメータを誘導する方法を説明するためのフローチャートである。
図25】本開示の他の実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
図26】本開示の他の実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
図27】本開示によってBDPCMのラインを考慮してテンプレートを定義し、コンテキストモデル又はRiceパラメータを誘導する方法を説明するためのフローチャートである。
図28】本開示の別の実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
図29】本開示の別の実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
図30】本開示によって周辺ピクセルがBDPCMの一番目のラインに含まれるか否かを考慮してテンプレートを定義し、コンテキストモデル又はRiceパラメータを誘導する方法を説明するためのフローチャートである。
図31】本開示の別の実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
図32】本開示の別の実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
図33】本開示によってBDPCMの予測方向及び周辺ピクセルがBDPCMの一番目のラインに含まれるか否かを考慮してテンプレートを定義し、コンテキストモデル又はRiceパラメータを誘導する方法を説明するためのフローチャートである。
図34】本開示の実施例が適用できるコンテンツストリーミングシステムを例示する図である。
【発明を実施するための形態】
【0040】
以下、添付図面を参照して、本開示の実施例について、本開示の属する技術分野における通常の知識を有する者が容易に実施し得るように詳細に説明する。しかし、本開示は、様々な異なる形態で実現でき、ここで説明する実施例に限定されない。
【0041】
本開示の実施例を説明するにあたり、公知の構成又は機能についての具体的な説明が本開示の要旨を不明確にするおそれがあると判断される場合には、それについての詳細な説明は省略する。そして、図面において、本開示についての説明と関係ない部分は省略し、同様の部分には同様の図面符号を付した。
【0042】
本開示において、ある構成要素が他の構成要素と「連結」、「結合」又は「接続」されているとするとき、これは、直接的な連結関係だけでなく、それらの間に別の構成要素が存在する間接的な連結関係も含むことができる。また、ある構成要素が他の構成要素を「含む」又は「有する」とするとき、これは、特に反対される記載がない限り、別の構成要素を排除するものではなく、別の構成要素をさらに含むことができることを意味する。
【0043】
本開示において、「第1」、「第2」などの用語は、一つの構成要素を他の構成要素から区別する目的のみで使用され、特に言及されない限り、構成要素間の順序又は重要度などを限定しない。したがって、本開示の範囲内において、一実施例の第1構成要素を他の実施例で第2構成要素と呼んでもよく、これと同様に、一実施例の第2構成要素を他の実施例で第1構成要素と呼んでもよい。
【0044】
本開示において、互いに区別される構成要素は、それぞれの特徴を明確に説明するためのものであり、構成要素が必ずしも分離されることを意味するものではない。つまり、複数の構成要素が統合されて一つのハードウェア又はソフトウェア単位で構成されてもよく、一つの構成要素が分散されて複数のハードウェア又はソフトウェア単位で構成されてもよい。よって、別に言及しなくても、このように統合された又は分散された実施例も本開示の範囲に含まれる。
【0045】
本開示において、さまざまな実施例で説明する構成要素が必ず必要不可欠な構成要素を意味するものではなく、一部は選択的な構成要素であり得る。したがって、一実施例で説明する構成要素の部分集合で構成される実施例も本開示の範囲に含まれる。また、様々な実施例で説明する構成要素にさらに他の構成要素を含む実施例も、本開示の範囲に含まれる。
【0046】
本開示は、画像の符号化及び復号化に関するものであって、本開示で使用される用語は、本開示で新たに定義されない限り、本開示の属する技術分野における通常の意味を持つことができる。
【0047】
本開示において、「ピクチャ(picture)」は、一般的に、特定の時間帯のいずれか一つの画像を示す単位を意味し、スライス(slice)/タイル(tile)/サブピクチャ(subpicture)は、ピクチャの一部を構成する符号化単位であって、一つのピクチャは、一つ以上のスライス/タイル/サブピクチャで構成できる。また、スライス/タイル/サブピクチャは、一つ以上のCTU(coding tree unit)を含むことができる。
【0048】
本開示において、「ピクセル(pixel)」又は「ペル(pel)」は、一つのピクチャ(又は画像)を構成する最小の単位を意味することができる。また、ピクセルに対応する用語として「サンプル(sample)」が使用できる。サンプルは、一般的に、ピクセル又はピクセルの値を示すことができ、ルマ(luma)成分のピクセル/ピクセル値のみを示すこともでき、クロマ(chroma)成分のピクセル/ピクセル値のみを示すこともできる。
【0049】
本開示において、「ユニット(unit)」は、画像処理の基本単位を示すことができる。ユニットは、ピクチャの特定の領域及び当該領域に関連する情報のうちの少なくとも一つを含むことができる。ユニットは、場合に応じて、「サンプルアレイ」、「ブロック(block)」又は「領域(area)」などの用語と混用して使用できる。一般な場合、M×Nブロックは、M個の列とN個の行からなるサンプル(又はサンプルアレイ)又は変換係数(transform coefficient)のセット(又はアレイ)を含むことができる。
【0050】
本開示において、「現在ブロック」は、「現在コーディングブロック」、「現在コーディングユニット」、「符号化対象ブロック」、「復号化対象ブロック」又は「処理対象ブロック」のうちのいずれか一つを意味することができる。予測が行われる場合、「現在ブロック」は、「現在予測ブロック」又は「予測対象ブロック」を意味することができる。
変換(逆変換)/量子化(逆量子化)が行われる場合、「現在ブロック」は「現在変換ブロック」又は「変換対象ブロック」を意味することができる。フィルタリングが行われる場合、「現在ブロック」は「フィルタリング対象ブロック」を意味することができる。
【0051】
また、本開示において、「現在ブロック」は、クロマブロックという明示的な記載がない限り、「現在ブロックのルマブロック」を意味することができる。「現在ブロックのクロマブロック」は、明示的に「クロマブロック」又は「現在クロマブロック」のようにクロマブロックという明示的な記載を含んで表現できる。
【0052】
本開示において、「/」と「、」は「及び/又は」と解釈されることができる。例えば、「A/B」と「A、B」は「A及び/又はB」と解釈されることができる。また、「A/B/C」と「A、B、C」は「A、B及び/又はCのうちの少なくとも一つ」を意味することができる。
【0053】
本開示において、「又は」は「及び/又は」と解釈されることができる。例えば、「A又はB」は、1)「A」のみを意味するか、2)「B」のみを意味するか、3)「A及びB」を意味することができる。又は、本開示において、「又は」は、「追加的に又は代替的に(additionally or alternatively)」を意味することができる。
【0054】
ビデオコーディングシステムの概要
【0055】
図1は本開示によるビデオコーディングシステムを示す図である。
【0056】
一実施例によるビデオコーディングシステムは、符号化装置10及び復号化装置20を含むことができる。符号化装置10は、符号化されたビデオ(video)及び/又は画像(image)情報又はデータをファイル又はストリーミング形式でデジタル記憶媒体又はネットワークを介して復号化装置20へ伝達することができる。
【0057】
一実施例よる符号化装置10は、ビデオソース生成部11、符号化部12及び伝送部13を含むことができる。一実施例による復号化装置20は、受信部21、復号化部22及びレンダリング部23を含むことができる。前記符号化部12は、ビデオ/画像符号化部と呼ばれることができ、前記復号化部22は、ビデオ/画像復号化部と呼ばれることができる。伝送部13は符号化部12に含まれることができる。受信部21は復号化部22に含まれることができる。レンダリング部23はディスプレイ部を含むこともでき、ディスプレイ部は別個のデバイス又は外部コンポーネントとして構成されることもできる。
【0058】
ビデオソース生成部11は、ビデオ/画像のキャプチャ、合成又は生成過程などを介してビデオ/画像を取得することができる。ビデオソース生成部11は、ビデオ/画像キャプチャデバイス及び/又はビデオ/画像生成デバイスを含むことができる。ビデオ/画像キャプチャデバイスは、例えば、一つ以上のカメラ、以前にキャプチャされたビデオ/画像を含むビデオ/画像アーカイブなどを含むことができる。ビデオ/画像生成デバイスは、例えば、コンピュータ、タブレット及びスマートフォンなどを含むことができ、(電子的に)ビデオ/画像を生成することができる。例えば、コンピュータなどを介して仮想のビデオ/画像が生成されることができ、この場合、ビデオ/画像キャプチャ過程は、関連データが生成される過程に置き換えられることができる。
【0059】
符号化部12は、入力ビデオ/画像を符号化することができる。符号化部12は、圧縮及び符号化効率のために、予測、変換、量子化などの一連の手順を行うことができる。符号化部12は、符号化されたデータ(符号化されたビデオ/画像情報)をビットストリーム(bitstream)形式で出力することができる。
【0060】
伝送部13は、ビットストリーム形式で出力された、符号化されたビデオ/画像情報又はデータを、ファイル又はストリーミング形式でデジタル記憶媒体又はネットワークを介して復号化装置20の受信部21に伝達することができる。デジタル記憶媒体は、USB、SD、CD、DVD、Blu-ray、HDD、SSDなどのさまざまな記憶媒体を含むことができる。伝送部13は、予め決められたファイルフォーマットを介してメディアファイルを生成するためのエレメントを含むことができ、放送/通信ネットワークを介して伝送するためのエレメントを含むことができる。受信部21は、前記記憶媒体又はネットワークから前記ビットストリームを抽出/受信して復号化部22に伝達することができる。
【0061】
復号化部22は、符号化部12の動作に対応する逆量子化、逆変換、予測などの一連の手順を行ってビデオ/画像を復号化することができる。
【0062】
レンダリング部23は、復号化されたビデオ/画像をレンダリングすることができる。
レンダリングされたビデオ/画像は、ディスプレイ部を介して表示されることができる。
【0063】
画像符号化装置の概要
【0064】
図2は本開示による実施例が適用できる画像符号化装置を概略的に示す図である。
【0065】
図2に示されているように、画像符号化装置100は、画像分割部110、減算部115、変換部120、量子化部130、逆量子化部140、逆変換部150、加算部155、フィルタリング部160、メモリ170、インター予測部180、イントラ予測部185及びエントロピー符号化部190を含むことができる。インター予測部180及びイントラ予測部185は、合わせて「予測部」と呼ばれることができる。変換部120、量子化部130、逆量子化部140及び逆変換部150は、レジデュアル(residual)処理部に含まれることができる。レジデュアル処理部は減算部115をさらに含むこともできる。
【0066】
画像符号化装置100を構成する複数の構成部の全部又は少なくとも一部は、実施例によって一つのハードウェアコンポーネント(例えば、エンコーダ又はプロセッサ)で実現できる。また、メモリ170は、DPB(decoded picture buffer)を含むことができ、デジタル記憶媒体によって実現できる。
【0067】
画像分割部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)を誘導する単位であることができる。
【0068】
予測部(インター予測部180又はイントラ予測部185)は、処理対象ブロック(現在ブロック)に対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部は、現在ブロック又はCU単位でイントラ予測が適用されるか、或いはインター予測が適用されるかを決定することができる。予測部は、現在ブロックの予測に関するさまざまな情報を生成してエントロピー符号化部190へ伝達することができる。予測に関する情報は、エントロピー符号化部190で符号化されてビットストリーム形式で出力されることができる。
【0069】
イントラ予測部185は、現在ピクチャ内のサンプルを参照して現在ブロックを予測することができる。参照される前記サンプルは、イントラ予測モード及び/又はイントラ予測技法に従って、前記現在ブロックの周辺(neighbor)に位置することもでき、或いは離れて位置することもできる。イントラ予測モードは、複数の非方向性モードと複数の方向性モードを含むことができる。非方向性モードは、例えば、DCモード及びPlanarモードを含むことができる。方向性モードは、予測方向の細密な程度に応じて、例えば33個の方向性予測モード又は65個の方向性予測モードを含むことができる。ただし、これは例示に過ぎず、設定に基づいてそれ以上又はそれ以下の個数の方向性予測モードが使用できる。イントラ予測部185は、周辺ブロックに適用された予測モードを用いて、現在ブロックに適用される予測モードを決定することもできる。
【0070】
インター予測部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)を符号化することにより、現在ブロックの動きベクトルをシグナリングすることができる。動きベクトル差分は、現在ブロックの動きベクトルと動きベクトル予測子との差を意味することができる。
【0071】
予測部は、後述する様々な予測方法及び/又は予測技法に基づいて予測信号を生成することができる。例えば、予測部は、現在ブロックの予測のために、イントラ予測又はインター予測を適用することができるだけでなく、イントラ予測とインター予測を同時に適用することができる。現在ブロックの予測のためにイントラ予測とインター予測を同時に適用する予測方法は、CIIP(combined inter and intra prediction)と呼ばれることができる。また、予測部は、現在ブロックの予測のためにイントラブロックコピー(intra block copy、IBC)を行うこともできる。イントラブロックコピーは、例えば、SCC(screen content coding)などのようにゲームなどのコンテンツ画像/動画コーディングのために使用できる。IBCは、現在ブロックから所定の距離だけ離れた位置の現在ピクチャ内の既に復元された参照ブロックを用いて現在ブロックを予測する方法である。IBCが適用される場合、現在ピクチャ内の参照ブロックの位置は、前記所定の距離に該当するベクトル(ブロックベクトル)として符号化されることができる。IBCは、基本的に、現在ピクチャ内で予測を行うが、現在ピクチャ内で参照ブロックを導出するという点において、インター予測と同様に行われることができる。すなわち、IBCは、本開示で説明されるインター予測技法のうちの少なくとも一つを用いることができる。
【0072】
予測部によって生成された予測信号は、復元信号を生成するために用いられるか、或いはレジデュアル信号を生成するために用いられることができる。減算部115は、入力画像信号(原本ブロック、原本サンプルアレイ)から、予測部から出力された予測信号(予測されたブロック、予測サンプルアレイ)を減算して、レジデュアル信号(residual signal、残余ブロック、残余サンプルアレイ)を生成することができる。生成されたレジデュアル信号は、変換部120に伝送されることができる。
【0073】
変換部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)を用いて予測信号を生成し、それに基づいて取得される変換を意味する。変換過程は、正方形の同じサイズを有するピクセルブロックに適用されることもでき、正方形ではない可変サイズのブロックにも適用されることができる。
【0074】
量子化部130は、変換係数を量子化してエントロピー符号化部190に伝送することができる。エントロピー符号化部190は、量子化された信号(量子化された変換係数に関する情報)を符号化してビットストリーム形式で出力することができる。前記量子化された変換係数に関する情報は、レジデュアル情報と呼ばれることができる。量子化部130は、係数スキャン順序(scan order)に基づいて、ブロック形式の量子化された変換係数を1次元ベクトル形式で再整列することができ、前記1次元ベクトル形式の量子化された変換係数に基づいて、前記量子化された変換係数に関する情報を生成することもできる。
【0075】
エントロピー符号化部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)をさらに含むことができる。本開示で言及されたシグナリング情報、伝送される情報及び/又はシンタックス要素は、上述した符号化手順を介して符号化されて前記ビットストリームに含まれることができる。
【0076】
前記ビットストリームは、ネットワークを介して伝送されることができ、或いはデジタル記憶媒体に保存されることができる。ここで、ネットワークは、放送網及び/又は通信網などを含むことができ、デジタル記憶媒体は、USB、SD、CD、DVD、Blu-ray、HDD、SSDなどのさまざまな記憶媒体を含むことができる。エントロピー符号化部190から出力された信号を伝送する伝送部(図示せず)及び/又は保存する保存部(図示せず)が画像符号化装置100の内/外部要素として備えられることができ、或いは伝送部はエントロピー符号化部190の構成要素として備えられることもできる。
【0077】
量子化部130から出力された、量子化された変換係数は、レジデュアル信号を生成するために用いられることができる。例えば、量子化された変換係数に逆量子化部140及び逆変換部150を介して逆量子化及び逆変換を適用することにより、レジデュアル信号(レジデュアルブロック又はレジデュアルサンプル)を復元することができる。
【0078】
加算部155は、復元されたレジデュアル信号をインター予測部180又はイントラ予測部185から出力された予測信号に加えることにより、復元(reconstructed)信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成することができる。スキップモードが適用された場合のように処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用されることができる。加算部155は、復元部又は復元ブロック生成部と呼ばれることができる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用されることができ、後述するようにフィルタリングを経て次のピクチャのインター予測のために使用されることもできる。
【0079】
フィルタリング部160は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部160は、復元ピクチャに様々なフィルタリング方法を適用して、修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ170、具体的にはメモリ170のDPBに保存することができる。前記様々なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、双方向フィルタ(bilateral filter)などを含むことができる。フィルタリング部160は、各フィルタリング方法についての説明で後述するようにフィルタリングに関する様々な情報を生成してエントロピー符号化部190へ伝達することができる。フィルタリングに関する情報は、エントロピー符号化部190で符号化されてビットストリーム形式で出力されることができる。
【0080】
メモリ170に伝送された、修正された復元ピクチャは、インター予測部180で参照ピクチャとして使用されることができる。画像符号化装置100は、これを介してインター予測が適用される場合、画像符号化装置100と画像復号化装置での予測ミスマッチを回避することができ、符号化効率も向上させることができる。
【0081】
メモリ170内のDPBは、インター予測部180での参照ピクチャとして使用するために、修正された復元ピクチャを保存することができる。メモリ170は、現在ピクチャ内の動き情報が導出された(又は符号化された)ブロックの動き情報及び/又は既に復元されたピクチャ内ブロックの動き情報を保存することができる。前記保存された動き情報は、空間周辺ブロックの動き情報又は時間周辺ブロックの動き情報として活用するためにインター予測部180に伝達されることができる。メモリ170は、現在ピクチャ内の復元されたブロックの復元サンプルを保存することができ、イントラ予測部185に伝達することができる。
【0082】
画像復号化装置の概要
【0083】
図3は本開示による実施例が適用できる画像復号化装置を概略的に示す図である。
【0084】
図3に示されているように、画像復号化装置200は、エントロピー復号化部210、逆量子化部220、逆変換部230、加算部235、フィルタリング部240、メモリ250、インター予測部260及びイントラ予測部265を含んで構成できる。インター予測部260及びイントラ予測部265を合わせて「予測部」と呼ばれることができる。逆量子化部220、逆変換部230はレジデュアル処理部に含まれることができる。
【0085】
画像復号化装置200を構成する複数の構成部の全部又は少なくとも一部は、実施例によって一つのハードウェアコンポーネント(例えば、デコーダ又はプロセッサ)で実現されることができる。また、メモリ170は、DPBを含むことができ、デジタル記憶媒体によって実現できる。
【0086】
ビデオ/画像情報を含むビットストリームを受信した画像復号化装置200は、図2の画像符号化装置100で行われたプロセスに対応するプロセスを実行して画像を復元することができる。例えば、画像復号化装置200は、画像符号化装置で適用された処理ユニットを用いて復号化を行うことができる。したがって、復号化の処理ユニットは、例えばコーディングユニットであることができる。コーディングユニットは、コーディングツリーユニットであるか或いは最大コーディングユニットを分割して取得できる。そして、画像復号化装置200を介して復号化及び出力された復元画像信号は、再生装置(図示せず)を介して再生できる。
【0087】
画像復号化装置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の構成要素として備えられることもできる。
【0088】
一方、本開示による画像復号化装置は、ビデオ/画像/ピクチャ復号化装置と呼ばれることができる。前記画像復号化装置は、情報デコーダ(ビデオ/画像/ピクチャ情報デコーダ)及び/又はサンプルデコーダ(ビデオ/画像/ピクチャサンプルデコーダ)を含むこともできる。前記情報デコーダは、エントロピー復号化部210を含むことができ、前記サンプルデコーダは、逆量子化部220、逆変換部230、加算部235、フィルタリング部240、メモリ250、インター予測部260及びイントラ予測部265のうちの少なくとも一つを含むことができる。
【0089】
逆量子化部220では、量子化された変換係数を逆量子化して変換係数を出力することができる。逆量子化部220は、量子化された変換係数を2次元のブロック形式で再整列することができる。この場合、前記再整列は、画像符号化装置で行われた係数スキャンの順序に基づいて行われることができる。逆量子化部220は、量子化パラメータ(例えば、量子化ステップサイズ情報)を用いて、量子化された変換係数に対する逆量子化を行い、変換係数(transform coefficient)を取得することができる。
【0090】
逆変換部230では、変換係数を逆変換してレジデュアル信号(レジデュアルブロック、レジデュアルサンプルアレイ)を取得することができる。
【0091】
予測部は、現在ブロックに対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部は、エントロピー復号化部210から出力された前記予測に関する情報に基づいて、前記現在ブロックにイントラ予測が適用されるか或いはインター予測が適用されるかを決定することができ、具体的なイントラ/インター予測モード(予測技法)を決定することができる。
【0092】
予測部が後述の様々な予測方法(技法)に基づいて予測信号を生成することができるのは、画像符号化装置100の予測部についての説明で述べたのと同様である。
【0093】
イントラ予測部265は、現在ピクチャ内のサンプルを参照して現在ブロックを予測することができる。イントラ予測部185についての説明は、イントラ予測部265に対しても同様に適用されることができる。
【0094】
インター予測部260は、参照ピクチャ上で動きベクトルによって特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを誘導することができる。この時、インター予測モードで伝送される動き情報の量を減らすために、周辺ブロックと現在ブロックとの動き情報の相関性に基づいて動き情報をブロック、サブブロック又はサンプル単位で予測することができる。前記動き情報は、動きベクトル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方向(L0予測、L1予測、Bi予測など)情報をさらに含むことができる。インター予測の場合に、周辺ブロックは、現在ピクチャ内に存在する空間周辺ブロック(spatial neighboring block)と参照ピクチャに存在する時間周辺ブロック(temporal neighboring block)を含むことができる。例えば、インター予測部260は、周辺ブロックに基づいて動き情報候補リストを構成し、受信した候補選択情報に基づいて前記現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導出することができる。様々な予測モード(技法)に基づいてインター予測が行われることができ、前記予測に関する情報は、前記現在ブロックに対するインター予測のモード(技法)を指示する情報を含むことができる。
【0095】
加算部235は、取得されたレジデュアル信号を予測部(インター予測部260及び/又はイントラ予測部265を含む)から出力された予測信号(予測されたブロック、予測サンプルアレイ)に加えることにより、復元信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成することができる。スキップモードが適用された場合のように処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用されることができる。加算部155についての説明は、加算部235に対しても同様に適用されることができる。加算部235は、復元部又は復元ブロック生成部と呼ばれることができる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用されることができ、後述するようにフィルタリングを経て次のピクチャのインター予測のために使用されることもできる。
【0096】
フィルタリング部240は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部240は、復元ピクチャに様々なフィルタリング方法を適用して、修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ250、具体的にはメモリ250のDPBに保存することができる。前記様々なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、双方向フィルタ(bilateral filter)などを含むことができる。
【0097】
メモリ250のDPBに保存された(修正された)復元ピクチャは、インター予測部260で参照ピクチャとして使用されることができる。メモリ250は、現在ピクチャ内の動き情報が導出された(又は復号化された)ブロックの動き情報及び/又は既に復元されたピクチャ内のブロックの動き情報を保存することができる。前記保存された動き情報は、空間周辺ブロックの動き情報又は時間周辺ブロックの動き情報として活用するために、インター予測部260に伝達することができる。メモリ250は、現在ピクチャ内の復元されたブロックの復元サンプルを保存することができ、イントラ予測部265に伝達することができる。
【0098】
本明細書において、画像符号化装置100のフィルタリング部160、インター予測部180及びイントラ予測部185で説明された実施例は、それぞれ画像復号化装置200のフィルタリング部240、インター予測部260及びイントラ予測部265にも、同様に又は対応するように適用されることができる。
【0099】
画像復号化/符号化手順の概要
【0100】
画像/ビデオコーディングにおいて、画像/ビデオを構成するピクチャは、一連の復号化順序(decoding order)に基づいて符号化/復号化されることができる。復号化されたピクチャの出力順序(output order)に該当するピクチャ順序(picture order)は、前記復号化順序とは異なるように設定されることができ、これに基づいてインター予測の際に順方向予測だけでなく、逆方向予測も行うことができる。
【0101】
図4は本開示による実施例が適用可能な画像復号化手順の概略的なフローチャートである。
【0102】
図4に示す各手順は、図3の画像復号化装置によって行われることができる。具体的には、例えば、ステップS410は画像復号化装置のエントロピー復号化部210で行われることができ、ステップS420は予測部260、265で行われることができ、ステップS430はレジデュアル処理部220、230で行われることができ、ステップS440は加算部235で行われることができ、ステップS450はフィルタリング部240で行われることができる。ステップS410は、本開示で説明された情報復号化(パーシング)手順を含むことができ、ステップS420は、本開示で説明されたインター/イントラ予測手順を含むことができ、ステップS430は、本開示で説明されたレジデュアル処理手順を含むことができ、ステップS440は、本開示で説明されたブロック/ピクチャ復元手順を含むことができ、ステップS450は、本開示で説明されたインループフィルタリング手順を含むことができる。
【0103】
図4を参照すると、画像復号化手順は、概略的にビットストリームから(復号化による)画像/ビデオ情報を取得する手順(S410)、画像(ピクチャ)復元手順(S420~S440)及び復元された画像(ピクチャ)に対するインループフィルタリング手順(S450)を含むことができる。前記画像復元手順は、インター/イントラ予測(S420)を経て取得した予測サンプル及びレジデュアル処理(S430、量子化された変換係数に対する逆量子化及び/又は逆変換)過程を経て取得したレジデュアルサンプルをベースに行われることができる。前記画像復元手順を介して生成された復元ピクチャに対するインループフィルタリング手順(S450)を介して修正された(modified)復元ピクチャが生成されることができ、前記修正された復元ピクチャが復号化されたピクチャとして出力されることができ、また、画像復号化装置の復号ピクチャバッファ(DPB)250又はメモリに保存され、以後ピクチャの復号化の際にインター予測手順で参照ピクチャとして使用されることができる。場合によって、前記インループフィルタリング手順は省略されることができ、この場合、前記復元ピクチャが復号化されたピクチャとして出力されることができ、また、画像復号化装置の復号ピクチャバッファ250又はメモリに保存され、以後ピクチャの復号化の際にインター予測手順で参照ピクチャとして使用されることができる。前記インループフィルタリング手順(S450)は、上述したように、デブロッキングフィルタリング手順、SAO(sample adaptive offset)手順、ALF(adaptive loop filter)手順及び/又はバイラテラルフィルタ(bi-lateral filter)手順などを含むことができ、その一部又は全部が省略できる。また、前記デブロッキングフィルタリング手順、SAO(sample adaptive offset)手順、ALF(adaptive loop filter)手順及びバイラテラルフィルタ(bi-lateral filter)手順のうちの一つ又は一部が順次適用されることができ、或いは全部が順次適用されることもできる。たとえば、復元ピクチャに対してデブロッキングフィルタリング手順が適用された後、SAO手順が行われることができる。又は、例えば復元ピクチャに対してデブロッキングフィルタリング手順が適用された後、ALF手順が行われることができる。これは画像符号化装置においても同様に行われることができる。
【0104】
図5は本開示による実施例が適用可能な画像符号化手順の概略的なフローチャートである。
【0105】
図4に示されている各手順は、図2の画像符号化装置によって行われることができる。
具体的には、例えば、ステップS510は、画像符号化装置の予測部180、185で行われることができ、ステップS520は、レジデュアル処理部115、120、130で行われることができ、ステップS530は、エントロピー符号化部190で行われることができる。ステップS510は、本開示で説明されたインター/イントラ予測手順を含むことができ、ステップS520は、本開示で説明されたレジデュアル処理手順を含むことができ、ステップS530は、本開示で説明された情報符号化手順を含むことができる。
【0106】
図5を参照すると、画像符号化手順は、概略的にピクチャ復元のための情報(例えば、予測情報、レジデュアル情報、パーティショニング情報など)を符号化してビットストリーム形式で出力する手順だけでなく、現在ピクチャに対する復元ピクチャを生成する手順、及び復元ピクチャにインループフィルタリングを適用する手順(オプション)を含むことができる。画像符号化装置は、逆量子化部140及び逆変換部150を介して量子化された変換係数から(修正された)レジデュアルサンプルを導出することができ、ステップS510の出力である予測サンプルと前記(修正された)レジデュアルサンプルをベースに復元ピクチャを生成することができる。このように生成された復元ピクチャは、上述した画像復号化装置で生成した復元ピクチャと同一であることができる。前記復元ピクチャに対するインループフィルタリング手順を介して修正された復元ピクチャが生成されることができ、これは、復号ピクチャバッファ(DPB)170又はメモリに保存されることができ、画像復号化装置での場合と同様に、以後ピクチャの符号化の際にインター予測手順で参照ピクチャとして使用されることができる。上述したように、場合によって、前記インループフィルタリング手順の一部又は全部は省略されることができる。前記インループフィルタリング手順が行われる場合、(インループ)フィルタリング関連情報(パラメータ)がエントロピー符号化部190で符号化されてビットストリーム形式で出力されることができ、画像復号化装置は、前記フィルタリング関連情報に基づいて画像符号化装置と同様の方法でインループフィルタリング手順を行うことができる。
【0107】
このようなインループフィルタリング手順を介して、ブロッキングアーチファクト(artifact)及びリンギング(ringing)アーチファクトなど、画像/動画コーディング時に発生するノイズを減らすことができ、主観的/客観的ビジュアルクオリティを高めることができる。また、画像符号化装置と画像復号化装置の両方ともでインループフィルタリング手順を行うことにより、画像符号化装置と画像復号化装置は、同じ予測結果を導出することができ、ピクチャコーディングの信頼性を高め、ピクチャコーディングのために伝送されなければならないデータ量を減らすことができる。
【0108】
上述したように、画像復号化装置だけでなく、画像符号化装置においても画像(ピクチャ)復元手順が行われることができる。各ブロック単位でイントラ予測/インター予測に基づいて復元ブロックが生成されることができ、復元ブロックを含む復元ピクチャが生成されることができる。現在ピクチャ/スライス/タイルグループがIピクチャ/スライス/タイルグループである場合、前記現在ピクチャ/スライス/タイルグループに含まれるブロックは、イントラ予測のみに基づいて復元されることができる。一方、現在ピクチャ/スライス/タイルグループがP又はBピクチャ/スライス/タイルグループである場合、前記現在ピクチャ/スライス/タイルグループに含まれるブロックは、イントラ予測又はインター予測に基づいて復元されることができる。この場合、現在ピクチャ/スライス/タイルグループ内の一部ブロックに対してはインター予測が適用され、残りの一部ブロックに対してはイントラ予測が適用されることもできる。ピクチャのカラー成分は、ルマ成分及びクロマ成分を含むことができ、本開示で明示的に制限しなければ、本開示による方法及び実施例は、ルマ成分及びクロマ成分に適用されることができる。
【0109】
インラ予測の概要
【0110】
以下、本開示によるイントラ予測について説明する。
【0111】
イントラ予測は、現在ブロックの属するピクチャ(以下、現在ピクチャ)内の参照サンプルに基づいて現在ブロックに対する予測サンプルを生成する予測を示すことができる。
現在ブロックにイントラ予測が適用される場合、現在ブロックのイントラ予測に使用する周辺参照サンプルが導出されることができる。前記現在ブロックの周辺参照サンプルは、サイズnW×nHの現在ブロックの左側(left)境界に隣接するサンプル及び左下側(bottom-left)に隣接する合計2×nH個のサンプル、現在ブロックの上側(top)境界に隣接するサンプル、及び右上側(top-right)に隣接する合計2×nW個のサンプル、及び現在ブロックの左上側(top-left)に隣接する1つのサンプルを含むことができる。又は、前記現在ブロックの周辺参照サンプルは、複数列の上側周辺サンプル及び複数行の左側周辺サンプルを含むこともできる。また、前記現在ブロックの周辺参照サンプルは、サイズnW×nHの現在ブロックの右側(right)境界に隣接する合計nH個のサンプル、現在ブロックの下側(bottom)境界に隣接する合計nW個のサンプル、及び現在ブロックの右下側(bottom-right)に隣接する1つのサンプルを含むこともできる。
【0112】
ただし、現在ブロックの周辺参照サンプルの一部は、未だ復号化されていないか或いは利用可能でないことができる。この場合、デコーダは、利用可能なサンプルとして利用可能でないサンプルを代替(substitution)して、予測に使用する周辺参照サンプルを構成することができる。又は、利用可能なサンプルの補間(interpolation)を介して、予測に使用する周辺参照サンプルを構成することができる。
【0113】
周辺参照サンプルが導出された場合、(i)現在ブロックの周辺(neighboring)参照サンプルの平均(average)又は補間(interpolation)に基づいて予測サンプルを誘導することができ、(ii)現在ブロックの周辺参照サンプルのうちの予測サンプルに対して、特定の(予測)方向に存在する参照サンプルに基づいて前記予測サンプルを誘導することもできる。(i)の場合は非方向性モード又は非角度モード、(ii)の場合は方向性(directional)モード又は角度(angular)モードと呼ばれることができる。
【0114】
また、前記周辺参照サンプルのうち、前記現在ブロックの予測対象サンプルを基準に、前記現在ブロックのイントラ予測モードの予測方向に位置する第1周辺サンプルとその反対方向に位置する第2周辺サンプルとの補間を介して前記予測サンプルが生成されることもできる。上述した場合は、線形補間イントラ予測(Linear interpolation intra prediction、LIP)と呼ばれることができる。
【0115】
また、線形モデル(linear model)を用いてルマサンプルに基づいてクロマ予測サンプルが生成されることもできる。この場合は、LM(Linear Model)モードと呼ばれることができる。
【0116】
また、フィルタリングされた周辺参照サンプルに基づいて前記現在ブロックの一時予測サンプルを導出し、前記従来の周辺参照サンプル、すなわち、フィルタリングされていない周辺参照サンプルのうち、前記イントラ予測モードに応じて導出された少なくとも一つの参照サンプルと前記一時予測サンプルを加重和(weighted sum)して、前記現在ブロックの予測サンプルを導出することもできる。この場合は、PDPC(Position dependent intra prediction)と呼ばれることができる。
【0117】
また、現在ブロックの周辺多重参照サンプルラインのうち、最も予測精度が高い参照サンプルラインを選択して、当該ラインから予測方向に位置する参照サンプルを用いて予測サンプルを導出することができる。このとき、使用された参照サンプルラインに関する情報(例えば、intra_luma_ref_idx)は、ビットストリームに符号化されてシグナリングされることができる。この場合は、MRL(multi-reference line intra prediction)又はMRLベースのイントラ予測と呼ばれることができる。MRLが適用されない場合、現在ブロックに直接隣接する参照サンプルラインから参照サンプルが導出されることができ、この場合、参照サンプルラインに関する情報はシグナリングされないことができる。
【0118】
また、現在ブロックを垂直又は水平のサブパーティションに分割し、各サブパーティションに対して同一のイントラ予測モードに基づいてイントラ予測を行うことができる。このとき、イントラ予測の周辺参照サンプルは、各サブパーティション単位で導出されることができる。すなわち、符号化/復号化の順序上、以前のサブパーティションの復元されたサンプルが現在サブパーティションの周辺参照サンプルとして用いられることができる。この場合、現在ブロックに対するイントラ予測モードが前記サブパーティションに同一に適用されるが、前記サブパーティション単位で周辺参照サンプルを導出して用いることにより、場合によってはイントラ予測性能を向上させることができる。このような予測方法は、ISP(intra sub-partitions)又はISPベースのイントラ予測と呼ばれることができる。
【0119】
前述したイントラ予測技法は、方向性又は非方向性のイントラ予測モードと区分してイントラ予測タイプ又は付加イントラ予測モードなどのさまざまな用語で呼ばれることができる。例えば、前記イントラ予測技法(イントラ予測タイプ又は付加イントラ予測モードなど)は、上述したLIP、LM、PDPC、MRL、ISPのうちの少なくとも一つを含むことができる。前記LIP、LM、PDPC、MRL、ISPなどの特定のイントラ予測タイプを除いた一般イントラ予測方法は、ノーマルイントラ予測タイプと呼ばれることができる。ノーマルイントラ予測タイプは、上述したような特定のイントラ予測タイプが適用されない場合に一般的に適用でき、前述したイントラ予測モードに基づいて予測が行われることができる。一方、必要に応じて導出された予測サンプルに対する後処理フィルタリングが行われることもできる。
【0120】
具体的には、イントラ予測手順は、イントラ予測モード/タイプ決定ステップ、周辺参照サンプル導出ステップ、イントラ予測モード/タイプベースの予測サンプル導出ステップを含むことができる。また、必要に応じて、導出された予測サンプルに対する後処理フィルタリング(post-filtering)ステップが行われることもできる。
【0121】
図6はイントラ予測ベースのビデオ/画像符号化方法を示すフローチャートである。
【0122】
図6の符号化方法は、図2の画像符号化装置によって行われることができる。具体的には、ステップS610はイントラ予測部185によって行われることができ、ステップS620はレジデュアル処理部によって行われることができる。具体的には、ステップS620は減算部115によって行われることができる。ステップS630はエントロピー符号化部190によって行われることができる。ステップS630の予測情報はイントラ予測部185によって導出され、ステップS630のレジデュアル情報はレジデュアル処理部によって導出されることができる。前記レジデュアル情報は前記レジデュアルサンプルに関する情報である。前記レジデュアル情報は、前記レジデュアルサンプルに対する量子化された変換係数に関する情報を含むことができる。前述したように、前記レジデュアルサンプルは、画像符号化装置の変換部120を介して変換係数として導出され、前記変換係数は、量子化部130を介して量子化された変換係数として導出されることができる。
前記量子化された変換係数に関する情報がレジデュアルコーディング手順を介してエントロピー符号化部190で符号化されることができる。
【0123】
画像符号化装置は、現在ブロックに対するイントラ予測を行うことができる(S610)。画像符号化装置は、現在ブロックに対するイントラ予測モード/タイプを決定し、現在ブロックの周辺参照サンプルを導出した後、前記イントラ予測モード/タイプ、及び前記周辺参照サンプルに基づいて前記現在ブロック内の予測サンプルを生成することができる。ここで、イントラ予測モード/タイプの決定、周辺参照サンプルの導出及び予測サンプルの生成手順は、同時に行われてもよく、いずれか一つの手順が他の手順よりも先に行われてもよい。
【0124】
図7は本開示によるイトラ予測部185の構成を例示的に示す図である。
【0125】
図7に示すように、画像符号化装置のイントラ予測部185は、イントラ予測モード/タイプ決定部186、参照サンプル導出部187及び/又は予測サンプル導出部188を含むことができる。イントラ予測モード/タイプ決定部186は、前記現在ブロックに対するイントラ予測モード/タイプを決定することができる。参照サンプル導出部187は、前記現在ブロックの周辺参照サンプルを導出することができる。予測サンプル導出部188は、前記現在ブロックの予測サンプルを導出することができる。一方、たとえ図示されてはいないが、後述する予測サンプルフィルタリング手順が行われる場合、イントラ予測部185は、予測サンプルフィルタ部(図示せず)をさらに含むこともできる。
【0126】
画像符号化装置は、複数のイントラ予測モード/タイプのうち、前記現在ブロックに対して適用されるモード/タイプを決定することができる。画像符号化装置は、前記イントラ予測モード/タイプに対するレート歪みコスト(RD cost)を比較し、前記現在ブロックに対する最適のイントラ予測モード/タイプを決定することができる。
【0127】
一方、画像符号化装置は予測サンプルフィルタリング手順を行うこともできる。予測サンプルフィルタリングはポストフィルタリングと呼ばれることができる。前記予測サンプルフィルタリング手順によって、前記予測サンプルの一部又は全部がフィルタリングされることができる。場合によっては、前記予測サンプルフィルタリング手順は省略できる。
【0128】
再び図6を参照して、画像符号化装置は、予測サンプル又はフィルタリングされた予測サンプルに基づいて、前記現在ブロックに対するレジデュアルサンプルを生成することができる(S620)。画像符号化装置は、現在ブロックの原本サンプルから前記予測サンプルを減算して前記レジデュアルサンプルを導出することができる。つまり、画像符号化装置は、原本サンプル値から対応する予測サンプル値を減算することにより、レジデュアルサンプル値を導出することができる。
【0129】
画像符号化装置は、前記イントラ予測に関する情報(予測情報)、及び前記レジデュアルサンプルに関するレジデュアル情報を含む画像情報を符号化することができる(S630)。前記予測情報は、前記イントラ予測モード情報及び/又は前記イントラ予測技法情報を含むことができる。画像符号化装置は、符号化された画像情報をビットストリーム形式で出力することができる。出力されたビットストリームは、記憶媒体又はネットワークを介して画像復号化装置へ伝達されることができる。
【0130】
前記レジデュアル情報は、後述するレジデュアルコーディングシンタックスを含むことができる。画像符号化装置は、前記レジデュアルサンプルを変換/量子化し、量子化された変換係数を導出することができる。前記レジデュアル情報は、前記量子化された変換係数に対する情報を含むことができる。
【0131】
一方、前述したように、画像符号化装置は、復元ピクチャ(復元サンプル及び復元ブロックを含む)を生成することができる。このために、画像符号化装置は、前記量子化された変換係数をさらに逆量子化/逆変換処理して(修正された)レジデュアルサンプルを導出することができる。このようにレジデュアルサンプルを変換/量子化した後、再び逆量子化/逆変換を行う理由は、画像復号化装置から導出されるレジデュアルサンプルと同一のレジデュアルサンプルを導出するためである。画像符号化装置は、前記予測サンプルと前記(修正された)レジデュアルサンプルに基づいて、前記現在ブロックに対する復元サンプルを含む復元ブロックを生成することができる。前記復元ブロックに基づいて、前記現在ピクチャに対する復元ピクチャが生成されることができる。前記復元ピクチャにインループフィルタリング手順などがさらに適用できるのは、前述したとおりである。
【0132】
図8はイントラ予測ベースのビデオ/画像復号化方法を示すフローチャートである。
【0133】
画像復号化装置は、前記画像符号化装置で行われた動作と対応する動作を行うことができる。
【0134】
図8の復号化方法は、図3の画像復号化装置によって行われることができる。ステップS810乃至S830は、イントラ予測部265によって行われることができ、ステップS810の予測情報及びステップS840のレジデュアル情報は、エントロピー復号化部210によってビットストリームから取得されることができる。画像復号化装置のレジデュアル処理部は、前記レジデュアル情報に基づいて、現在ブロックに対するレジデュアルサンプルを導出することができる(S840)。具体的には、前記レジデュアル処理部の逆量子化部220は、前記レジデュアル情報に基づいて導出された、量子化された変換係数に基づいて、逆量子化を行って変換係数を導出し、前記レジデュアル処理部の逆変換部230は、前記変換係数に対する逆変換を行って前記現在ブロックに対するレジデュアルサンプルを導出することができる。ステップS850は、加算部235又は復元部によって行われることができる。
【0135】
具体的には、画像復号化装置は、受信された予測情報(イントラ予測モード/タイプ情報)に基づいて、現在ブロックに対するイントラ予測モード/タイプを導出することができる(S810)。また、画像復号化装置は、前記現在ブロックの周辺参照サンプルを導出することができる(S820)。画像復号化装置は、前記イントラ予測モード/タイプ及び前記周辺参照サンプルに基づいて前記現在ブロック内の予測サンプルを生成することができる(S830)。この場合、画像復号化装置は、予測サンプルフィルタリング手順を行うことができる。予測サンプルフィルタリングは、ポストフィルタリングと呼ばれることができる。前記予測サンプルフィルタリング手順によって、前記予測サンプルの一部又は全部がフィルタリングされることができる。場合によっては、予測サンプルフィルタリング手順は省略できる。
【0136】
画像復号化装置は、受信されたレジデュアル情報に基づいて、前記現在ブロックに対するレジデュアルサンプルを生成することができる(S840)。画像復号化装置は、前記予測サンプル及び前記レジデュアルサンプルに基づいて前記現在ブロックに対する復元サンプルを生成し、前記復元サンプルを含む復元ブロックを導出することができる(S850)。前記復元ブロックに基づいて前記現在ピクチャに対する復元ピクチャが生成されることができる。前記復元ピクチャにインループフィルタリング手順などがさらに適用できるのは、前述したとおりである。
【0137】
図9は本開示によるイントラ予測部265の構成を例示的に示す図である。
【0138】
図9に示すように、画像復号化装置のイントラ予測部265は、イントラ予測モード/タイプ決定部266、参照サンプル導出部267及び予測サンプル導出部268を含むことができる。イントラ予測モード/タイプ決定部266は、画像符号化装置のイントラ予測モード/タイプ決定部186で生成されてシグナリングされたイントラ予測モード/タイプ情報に基づいて、前記現在ブロックに対するイントラ予測モード/タイプを決定し、参照サンプル導出部266は、現在ピクチャ内の復元された参照領域から前記現在ブロックの周辺参照サンプルを導出することができる。予測サンプル導出部268は前記現在ブロックの予測サンプルを導出することができる。一方、たとえ図示されてはいないが、前述した予測サンプルフィルタリング手順が行われる場合、イントラ予測部265は、予測サンプルフィルタ部(図示せず)をさらに含むこともできる。
【0139】
前記イントラ予測モード情報は、例えばMPM(most probable mode)が前記現在ブロックに適用されるか、それともリメイニングモード(remaining mode)が適用されるかを示すフラグ情報(例えば、intra_luma_mpm_flag)を含むことができ、前記MPMが前記現在ブロックに適用される場合、前記イントラ予測モード情報は、前記イントラ予測モード候補(MPM候補)の一つを指すインデックス情報(例えば、intra_luma_mpm_idx)をさらに含むことができる。前記イントラ予測モード候補(MPM候補)は、MPM候補リスト又はMPMリストとして構成されることができる。また、前記MPMが前記現在ブロックに適用されない場合、前記イントラ予測モード情報は、前記イントラ予測モード候補(MPM候補)を除いた残りのイントラ予測モードの一つを指示するリメイニングモード情報(例えば、intra_luma_mpm_remainder)をさらに含むことができる。画像復号化装置は、前記イントラ予測モード情報に基づいて、前記現在ブロックのイントラ予測モードを決定することができる。MPM候補モードは、現在ブロックの周辺ブロック(例えば、左側周辺ブロック及び上側周辺ブロック)のイントラ予測モード及び追加の候補モードを含むことができる。
【0140】
また、前記イントラ予測技法情報は、様々な形態で実現できる。一例として、前記イントラ予測技法情報は、前記イントラ予測技法のうちのいずれか一つを指示するイントラ予測技法インデックス情報を含むことができる。他の例として、前記イントラ予測技法情報は、前記MRLが前記現在ブロックに適用されるか、及び、適用される場合には何番目の参照サンプルラインが用いられるかを示す参照サンプルライン情報(例えば、intra_luma_ref_idx)、前記ISPが前記現在ブロックに適用されるかを示すISPフラグ情報(例えば、intra_subpartitions_mode_flag)、前記ISPが適用される場合にサブパーティションの分割タイプを指示するISPタイプ情報(例えば、intra_subpartitions_split_flag)、PDPCの適用如何を示すフラグ情報、又はLIPの適用如何を示すフラグ情報のうちの少なくとも一つを含むことができる。本開示において、ISPフラグ情報はISP適用インジケータと呼ばれることができる。
【0141】
前記イントラ予測モード情報及び/又は前記イントラ予測技法情報は、本開示で説明されたコーディング方法を介して符号化/復号化されることができる。例えば、前記イントラ予測モード情報及び/又は前記イントラ予測技法情報は、truncated(rice)binary codeに基づいてエントロピーコーディング(例えば、CABAC、CAVLC)を介して符号化/復号化できる。
【0142】
図10は本開示の一実施例によるイントラ予測方向を示す図である。
【0143】
イントラ予測モードは、一例として、2つの非方向性イントラ予測モードと、33個の方向性イントラ予測モードとを含むことができる。前記非方向性イントラ予測モードは、Planarイントラ予測モード及びDCイントラ予測モードを含むことができ、前記方向性イントラ予測モードは、2番乃至34番のイントラ予測モードを含むことができる。
前記Planarイントラ予測モードは、Planarモードと呼ばれることができ、前記DCイントラ予測モードは、DCモードと呼ばれることができる。
【0144】
又は、自然画像(natural video)で提示された任意のエッジ方向(edge direction)をキャプチャするために、図10に示すように、イントラ予測モードは、2つの非方向性イントラ予測モードと、65個の拡張された方向性イントラ予測モードと、を含むことができる。前記非方向性イントラ予測モードは、Planarモード及びDCモードを含むことができ、前記方向性イントラ予測モードは、2番乃至66番のイントラ予測モードを含むことができる。前記拡張されたイントラ予測モードは、すべてのサイズのブロックに適用されることができ、ルマ成分(ルマブロック)及びクロマ成分(クロマブロック)の両方ともに適用されることができる。
【0145】
又は、前記イントラ予測モードは、2つの非方向性イントラ予測モードと129個の方向性イントラ予測モードを含むことができる。前記非方向性イントラ予測モードは、Planarモード及びDCモードを含むことができ、前記方向性イントラ予測モードは、2番乃至130番のイントラ予測モードを含むことができる。
【0146】
一方、前記イントラ予測モードは、前述したイントラ予測モードの他にも、クロマサンプルのためのCCLM(cross-component linear model)モードをさらに含むことができる。CCLMモードは、LMパラメータの導出のために、左側サンプルを考慮するか、上側サンプルを考慮するか、両方を考慮するかによってL_CCLM、T_CCLM、LT_CCLMに分けられることができ、クロマ成分に対してのみ適用されることができる。
【0147】
イントラ予測モードは、例えば、下記表1に示すようにインデキシングできる。
【0148】
【表1】
【0149】
図11は本開示の他の実施例によるイントラ予測方向を示す図である。図11において、破線方向は、正方形ではないブロックのみに適用される広角(wide angle)モードを示す。図11に示すように、自然画像(natural video)で提示された任意のエッジ方向(edge direction)をキャプチャするために、一実施例によるイントラ予測モードは、2つの非方向性イントラ予測モードと共に93個の方向性イントラ予測モードを含むことができる。非方向性イントラ予測モードは、Planarモード及びDCモードを含むことができる。方向性イントラ予測モードは、図11の矢印で示すように、2番乃至80番と-1番乃至-14番で構成されるイントラ予測モードを含むことができる。前記PlanarモードはINTRA_PLANAR、DCモードはINTRA_DCとそれぞれ表記されることができる。そして、方向性イントラ予測モードは、INTRA_ANGULAR-14乃至INTRA_ANGULAR-1及びINTRA_ANGULAR2乃至INTRA_ANGULAR80と表記されることができる。
【0150】
BDPCM(Block difference pulse code modulation)の概要
【0151】
本開示によるBDPCMは、量子化レジデュアルドメイン(quantized residual domain)で行われることができる。量子化レジデュアルドメインは、量子化レジデュアル信号(又は量子化レジデュアル係数)を含むことができ、BDPCMを適用する場合、量子化レジデュアル信号に対する変換はスキップされる。つまり、BDPCMを適用する場合、レジデュアルサンプルに対して変換はスキップされ、量子化は適用される。又は、量子化レジデュアルドメインは、量子化された変換係数を含むことができる。
【0152】
現在ブロックにBDPCMが適用される場合、現在ブロックの予測されたサンプルを含む予測されたブロック(予測ブロック)は、イントラ予測によって生成されることができる。このとき、イントラ予測を行うためのイントラ予測モードは、ビットストリームを介してシグナリングされることもでき、後述するBDPCMの予測方向に基づいて誘導されることもできる。また、このとき、イントラ予測モードは、垂直予測方向モード又は水平予測方向モードのうちのいずれか一つに決定されることができる。例えば、BDPCMの予測方向が水平方向である場合、イントラ予測モードは水平予測方向モードに決定され、現在ブロックの予測ブロックは水平方向のイントラ予測によって生成されることができる。又は、BDPCMの予測方向が垂直方向である場合、イントラ予測モードは垂直予測方向モードに決定され、現在ブロックの予測ブロックは垂直方向のイントラ予測によって生成されることができる。水平方向のイントラ予測が適用される場合、現在ブロックの左側に隣接するピクセルの値が、現在ブロックの当該ロー(row)に含まれているサンプルの予測されたサンプル値として決定されることができる。垂直方向のイントラ予測が適用される場合、現在ブロックの上側に隣接するピクセルの値が、現在ブロックの当該カラム(column)に含まれているサンプルの予測サンプル値として決定されることができる。現在ブロックにBDPCMが適用される場合、現在ブロックの予測ブロックを生成する方法は、画像符号化装置及び画像復号化装置で同一に行われることができる。
【0153】
現在ブロックにBDPCMが適用される場合、画像符号化装置は、現在ブロックから前記予測ブロックを減算することにより、現在ブロックのレジデュアルサンプルを含むレジデュアルブロックを生成することができる。画像符号化装置は、前記レジデュアルブロックを量子化した後、量子化レジデュアルサンプルと当該量子化レジデュアルサンプルの予測子(predictor)との差異値(difference又はdelta)を符号化することができる。画像復号化装置は、ビットストリームから復元された差異値と予測子に基づいて、現在ブロックの量子化レジデュアルサンプルを取得することにより、現在ブロックの量子化レジデュアルブロックを生成することができる。以後、画像復号化装置は、量子化レジデュアルブロックを逆量子化した後、前記予測ブロックと加えることにより現在ブロックを復元することができる。
【0154】
図12は本開示によるBDPCMのレジデュアルサンプルを符号化する方法を説明するための図である。
【0155】
図12のレジデュアルブロック(residual block)は、画像符号化装置で現在ブロックから予測ブロックを減算することにより生成されることができる。図12の量子化レジデュアルブロック(quantized residual block)は、前記レジデュアルブロックを量子化することにより生成されることができる。図12において、ri、jは現在ブロック内(i、j)座標のレジデュアルサンプルの値を示す。現在ブロックのサイズがM×Nであるとき、iの値は0以上M-1以下であることができる。また、jの値は0以上N-1以下であることができる。例えば、ri、jは現在ブロック内(i、j)座標の原本サンプルの値から予測サンプルの値を差し引くことにより導出されることができる。図12において、Q(ri、j)は、現在ブロック内(i、j)座標の量子化レジデュアルサンプルの値を示す。BDPCMの予測は、図12の量子化レジデュアルサンプルに対して行われることで、修正された量子化レジデュアルサンプル(modified quantized residual samples)を含むM×Nサイズの修正された量子化レジデュアルブロック(modified quantized residual block)が生成されることができる。
【0156】
BDPCMの予測方向が水平方向であるとき、現在ブロック内(i、j)座標の修正された量子化レジデュアルサンプルの値(r’i、j)は数式1のように計算されることができる。
【0157】
【数1】
【0158】
前記数式1のように、BDPCMの予測方向が水平方向であるとき、(0、j)座標のr’0、jの値は、量子化レジデュアルサンプルの値Q(r0、j)がそのまま割り当てられる。その他の(i、j)座標のr’i、jの値は(i、j)座標の量子化レジデュアルサンプルの値Q(ri、j)と(i-1、j)座標の量子化レジデュアルサンプルの値Q(ri-1、j)との差異値で誘導される。すなわち、(i、j)座標の量子化レジデュアルサンプルの値Q(ri、j)を符号化する代わりに、(i-1、j)座標の量子化レジデュアルサンプルの値Q(ri-1、j)を予測値として用いて計算された差異値を修正された量子化レジデュアルサンプル値(r’i、j)で誘導した後、r’i、jの値を符号化する。
【0159】
BDPCMの予測方向が垂直方向であるとき、現在ブロック内(i、j)座標の修正された量子化レジデュアルサンプルの値(r’i、j)は、数式2のように計算されることができる。
【0160】
【数2】
【0161】
前記数式2のように、BDPCMの予測方向が垂直方向であるとき、(i、0)座標のr’i、0の値は量子化レジデュアルサンプルの値Q(ri、0)がそのまま割り当てられる。その他の(i、j)座標のr’i、jの値は、(i、j)座標の量子化レジデュアルサンプルの値Q(ri、j)と(i、j-1)座標の量子化レジュアルサンプルの値Q(ri、j-1)との差異値で誘導される。すなわち、(i、j)座標の量子化レジデュアルサンプルの値Q(ri、j)を符号化する代わりに、(i、j-1)座標の量子化レジデュアルサンプルの値Q(ri、j-1)を予測値として用いて計算された差異値を修正された量子化レジデュアルサンプル値(r’i、j)で誘導した後、r’i、jの値を符号化する。
【0162】
前述したように、隣接する量子化レジデュアルサンプル値を予測値として用いて現在量子化レジデュアルサンプル値を修正する過程をBDPCM予測と呼ぶことができる。
【0163】
最終的に、画像符号化装置は、修正された量子化レジデュアルサンプルを含む修正された量子化レジデュアルブロックを符号化して画像復号化装置に伝送することができる。このとき、前述したように、修正された量子化レジデュアルブロックに対する変換は行われない。
【0164】
図13は本開示のBDPCMを行って生成された修正された量子化レジデュアルブロックを示す。
【0165】
図13において、Horizontal BDPCMは、BDPCMの予測方向が水平方向であるとき、前記数式1に基づいて生成された修正された量子化レジデュアルブロックを示す。また、Vertical BDPCMは、BDPCMの予測方向が垂直方向であるとき、前記数式2に基づいて生成された修正された量子化レジデュアルブロックを示す。
【0166】
図14は画像符号化装置においてBDPCMを適用して現在ブロックを符号化する手順を示すフローチャートである。
【0167】
まず、符号化対象ブロックである現在ブロックが入力されると(S1410)、現在ブロックに対して予測を行って予測ブロックを生成することができる(S1420)。ステップS1420の予測ブロックは、イントラ予測されたブロックであることができ、イントラ予測モードは、前述したように決定されることができる。ステップS1420で生成された予測ブロックに基づいて、現在ブロックのレジデュアルブロックを生成することができる(S1430)。例えば、画像符号化装置は、現在ブロック(原本サンプルの値)から予測ブロック(予測されたサンプルの値)を差し引くことにより、レジデュアルブロック(レジデュアルサンプルの値)を生成することができる。例えば、ステップS1430の実行によって、図12のレジデュアルブロックが生成されることができる。ステップS1430で生成されたレジデュアルブロックに対して量子化を行い(S1440)、量子化レジデュアルブロックが生成され、量子化レジデュアルブロックに対してBDPCM予測が行われることができる(S1450)。ステップS1440の実行結果として生成された量子化レジデュアルブロックは、図12の量子化レジデュアルブロックであることができ、ステップS1450のBDPCM予測結果、予測方向に沿って図13の修正された量子化レジデュアルブロックが生成されることができる。ステップS1450のBDPCM予測は、図12及び図13を参照して説明したので、具体的な説明は省略する。以後、画像符号化装置は、修正された量子化レジデュアルブロックを符号化して(S1460)ビットストリームを生成することができる。このとき、修正された量子化レジデュアルブロックに対する変換はスキップされることができる。
【0168】
図12乃至図14を参照して説明された画像符号化装置におけるBDPCM動作は、画像復号化装置で逆に行われることができる。
【0169】
図15は画像復号化装置においてBDPCMを適用して現在ブロックを復元する手順を示すフローチャートである。
【0170】
画像復号化装置は、ビットストリームから現在ブロックの復元に必要な情報(画像情報)を取得することができる(S1510)。現在ブロックの復元に必要な情報は、現在ブロックの予測に関する情報(予測情報)、現在ブロックのレジデュアルに関する情報(レジデュアル情報)などを含むことができる。画像復号化装置は、現在ブロックに対する情報に基づいて現在ブロックに対して予測を行い、予測ブロックを生成することができる(S1520)。現在ブロックに対する予測はイントラ予測であることができ、具体的な説明は図14を参照して説明したのと同様である。図15において、現在ブロックに対する予測ブロックを生成するステップ(S1520)は、現在ブロックのレジデュアルブロックを生成するステップS1530乃至S1550に先行して行われることが図示された。
しかし、これに限定されず、現在ブロックのレジデュアルブロックが生成された後に、現在ブロックの予測ブロックが生成されることもできる。又は、現在ブロックのレジデュアルブロックと現在ブロックの予測ブロックとは同時に生成されることもできる。画像復号化装置は、ビットストリームから現在ブロックのレジデュアル情報をパーシングすることにより、現在ブロックのレジデュアルブロックを生成することができる(S1530)。
ステップS1530で生成されたレジデュアルブロックは、図13に示されている修正された量子化レジデュアルブロックであることができる。画像復号化装置は、図13の修正された量子化レジデュアルブロックに対してBDPCM予測を行うことにより(S1540)、図12の量子化レジデュアルブロックを生成することができる。ステップS1540のBDPCM予測は、図13の修正された量子化レジデュアルブロックから図12の量子化レジデュアルブロックを生成する手順なので、画像符号化装置で行われるステップS1450の逆過程に対応することができる。
【0171】
以下、画像復号化装置で行われるステップS1540のBDPCM予測についてより詳細に説明する。
【0172】
BDPCMの予測方向が水平方向であるとき、画像復号化装置は、数式3を用いて、修正された量子化レジデュアルブロックから量子化レジデュアルブロックを生成することができる。
【0173】
【数3】
【0174】
数式3に規定されているように、(i、j)座標の量子化レジデュアルサンプルの値Q(ri、j)は、(0、j)座標から(i、j)座標までの修正された量子化レジデュアルサンプルの値を合算することにより計算されることができる。
【0175】
又は、前記数式3の代わりに数式4を用いて、(i、j)座標の量子化レジデュアルサンプルの値Q(ri、j)を計算することができる。
【0176】
【数4】
【0177】
前記数式4は数式1に対応する逆過程である。前記数式4によれば、(0、j)座標の量子化レジデュアルサンプルの値Q(r0、j)は、(0、j)座標の修正された量子化レジデュアルサンプルの値r’0、jで誘導される。その他の(i、j)座標のQ(ri、j)は、(i、j)座標の修正された量子化レジデュアルサンプルの値r’i、jと(i-1、j)座標の量子化レジデュアルサンプルの値Q(ri-1、j)との和で誘導される。すなわち、(i-1、j)座標の量子化レジデュアルサンプルの値Q(ri-1、j)を予測値として用いて差異値r’i、jを合算することにより、量子化レジデュアルサンプルの値Q(ri、j)が誘導されることができる。
【0178】
BDPCMの予測方向が垂直方向であるとき、画像復号化装置は、数式5を用いて、修正された量子化レジデュアルブロックから量子化レジデュアルブロックを生成することができる。
【0179】
【数5】
【0180】
数式5に規定されているように、(i、j)座標の量子化レジデュアルサンプルの値Q(ri、j)は、(i、0)座標から(i、j)座標までの修正された量子化レジデュアルサンプルの値を合算することにより計算されることができる。
【0181】
又は、前記式5の代わりに数式6を用いて、(i、j)座標の量子化レジデュアルサンプルの値Q(ri、j)を計算することができる。
【0182】
【数6】
【0183】
前記数式6は、数式2に対応する逆過程である。前記数式6によれば、(i、0)座標の量子化レジデュアルサンプルの値Q(ri、0)は、(i、0)座標の修正された量子化レジデュアルサンプルの値r’i、0で誘導される。その他の(i、j)座標のQ(ri、j)は、(i、j)座標の修正された量子化レジデュアルサンプルの値r’i、jと(i、j-1)座標の量子化レジデュアルサンプルの値Q(ri、j-1)との和で誘導される。すなわち、(i、j-1)座標の量子化レジデュアルサンプルの値Q(ri、j-1)を予測値として用いて差異値r’i、jを合算することにより、量子化レジデュアルサンプルの値Q(ri、j)が誘導されることができる。
【0184】
前述した方法によってステップS1540を行うことにより、量子化レジデュアルサンプルで構成された量子化レジデュアルブロックが生成されると、画像復号化装置は、量子化レジデュアルブロックに対して逆量子化を行うことにより(S1550)、現在ブロックのレジデュアルブロックを生成することができる。BDPCMが適用される場合、前述したように現在ブロックに対する変換はスキップされるので、逆量子化レジデュアルブロックに対する逆変換はスキップされることができる。
【0185】
以後、画像復号化装置は、ステップS1520で生成された予測ブロックとステップS1550で生成されたレジデュアルブロックに基づいて現在ブロックを復元することができる(S1560)。例えば、画像復号化装置は、予測ブロック(予測されたサンプルの値)とレジデュアルブロック(レジデュアルサンプルの値)とを加えることにより、現在ブロック(復元サンプルの値)を復元することができる。
【0186】
現在ブロックにBDPCMが適用されるか否かを指示する第1情報がビットストリームを介してシグナリングされることができる。また、現在ブロックにBDPCMが適用される場合、BDPCMの予測方向を指示する第2情報がビットストリームを介してシグナリングされることができる。現在ブロックにBDPCMが適用されない場合、前記第2情報はシグナリングされないことができる。
【0187】
図16は現在ブロックのシンタックス構造に含まれているBDPCMに関する情報を概略的に示す図である。
【0188】
図16に示されている例において、bdpcm_flagは、現在ブロックにBDPCMが適用されるか否かを指示する第1情報に該当する。BDPCMは、現在ブロックがイントラ予測された場合にのみ許容可能なので、bdpcm_flagは、現在ブロックの予測モードがMODE_INTRAであるときにのみシグナリングされることができる。
また、BDPCMは、ルマ成分信号(cIdx==0)に対してのみ利用可能であり、現在ブロックのサイズが所定のサイズ(32×32)以下である場合にのみ利用可能である。しかし、BDPCMの利用可能な条件は、上記の例に限定されず、ルマ成分信号だけでなく、クロマ成分信号に対しても利用可能である。また、現在ブロックの上位レベル(シーケンスレベル、ピクチャレベル、スライスレベルなど)でBDPCMの利用可能か否かを指示する情報が明示的にシグナリングされることができる。
【0189】
bdpcm_flagが現在ブロックにBDPCMが適用されることを指示する場合にのみ、BDPCMの予測方向を指示する第2情報(例えば、bdpcm_dir_flag)がシグナリングされることができる。前記第2情報が第1値(例えば、0)であるとき、BDPCMの予測方向は水平方向を指示し、前記第2情報が第2値(例えば、1)であるとき、BDPCMの予測方向は垂直方向を指示することができる。
【0190】
信号処理における変換符号化(transform coding)とは、入力信号を他のドメインの信号に変換することを意味する。具体的には、ビデオ圧縮分野における変換は、空間ドメイン(spatial domain)の信号を周波数ドメイン(frequency domain)の信号に変更することを意味する。ビデオ圧縮分野で変換を行う理由は、空間ドメインの信号を周波数ドメインの信号に変更したとき、低周波領域に情報が集中し、高周波領域はほぼ情報を持たない性質を用いて効率的な圧縮ができるためである。しかし、信号の特性に応じて変換を行わない場合の圧縮効率がより高い場合があり、このような場合には変換をスキップすることができる。
【0191】
前述したように、BDPCMは、変換がスキップされたレジデュアルブロックを符号化する過程で適用されることができる。変換がスキップされた場合、前述したように、レジデュアル情報がブロック内で均等に分布することができる。また、ブロック内の任意のレジデュアル係数の値は、その周辺のレジデュアル係数の値と類似する確率が非常に高い。
また、イントラ予測された変換スキップブロックの場合、参照サンプルとの距離によりブロックの右下側に発生するレジデュアル係数のレベルが、左上側に発生するレジデュアル係数のレベルよりも大きい確率が高い。このような現象は、ブロックのサイズが大きくなるほどさらに顕著になることができる。BDPCMは、上述したようなイントラスキップコーディングされたブロックのレジデュアル係数の分布特性を利用したものである。BDPCMが適用される場合、前述したように、(量子化)レジデュアル係数を符号化する代わりに、行又は列方向にライン単位のレジデュアル係数間の予測を行うことにより発生する差異値を符号化するので、符号化対象レジデュアル係数のレベルの大きさが小さくなる。つまり、BDPCMが適用される場合、上述したように小さくなった係数のレベルを符号化するので、符号化に必要なコンテキスト符号化ビン(context coded bin)の発生を減少させることができる。これは、復号化器のスループット(throughput)の向上に寄与することができる。
【0192】
一方、前述したように、BDPCMが量子化レジデュアルドメインで行われる場合、レジデュアル信号が存在しなければ、BDPCMを行うことができない。しかし、図16を参照して説明した符号化ユニットのシンタックス構造によれば、レジデュアル信号が存在しない場合でもBDPCM関連情報をシグナリングするという問題点がある。
【0193】
図17は本開示の一実施例によるBDPCM関連情報の符号化/復号化方法を説明するためのフローチャートである。
【0194】
図17に開示された実施例によれば、現在ブロックにレジデュアル信号が存在する場合にのみ、BDPCM関連情報を符号化/復号化することができるように制限することができる。現在ブロックに対してレジデュアル信号が存在するか否かを指示する情報(例えば、coded block flag(cbf))がビットストリームを介してシグナリングされることができ、BDPCM関連情報は、前記情報に基づいて符号化/復号化することができる。
【0195】
図17を参照すると、まず、現在ブロックがイントラ予測されたブロックであるか否かが判断できる(S1710)。現在ブロックがイントラ予測されていない場合、現在ブロックに対してはBDPCMが適用されることができない。したがって、現在ブロックに対するBDPCM関連情報は符号化/復号化されないことができる。
【0196】
現在ブロックがイントラ予測された場合、現在ブロックにレジデュアル信号が存在するか否かが判断できる(S1720)。ステップS1720の判断は、例えば、cbf情報に基づいて行われることができる。例えば、現在ブロックのレジデュアル信号を伝送する単位である変換ユニット(transform unit)に対するcbf情報(tu_cbf_luma)を確認することにより、ステップS1720が行われることができる。tu_cbf_lumaが1であれば、現在変換ユニットのルマ成分に対して0ではないレジデュアル係数が存在することを意味し、tu_cbf_lumaが0であれば、現在変換ユニットのルマ成分に対して0ではないレジデュアル係数が存在しないことを意味することができる。ステップS1720で、現在ブロックにレジデュアル信号が存在しないと判断されると、現在ブロックに対するBDPCM関連情報は、符号化/復号化されないことができる。
【0197】
ステップS1720で、現在ブロックにレジデュアル信号が存在すると判断されると、現在ブロックにBDPCMが適用されるか否かを指示する情報(例えば、bdpcm_flag)を符号化/復号化することができる(S1730)。画像符号化装置は、現在ブロックにBDPCMが適用されるか否かに基づいてbdpcm_flagの値を決定し、符号化することができる。画像復号化装置は、bdpcm_flagをパーシングした後、その値に基づいて現在ブロックにBDPCMを適用するか否かを決定することができる。
【0198】
以後、現在ブロックにBDPCMが適用されるか否かが判断できる(S1740)。例えば、ステップS1740の判断は、bdpcm_flagの値に基づいて行われることができる。ステップS1740で、現在ブロックにBDPCMが適用されないと判断されると、現在ブロックに対するBDPCMの予測方向に関する情報は符号化/復号化されないことができる。
【0199】
ステップS1740で、現在ブロックにBDPCMが適用されると判断されると、BDPCMの予測方向に関する情報(例えば、bdpcm_dir_flag)を符号化/復号化することができる(S1750)。画像符号化装置は、現在ブロックに適用されたBDPCMの予測方向に基づいてbdpcm_dir_flagの値を決定し、符号化することができる。画像復号化装置は、bdpcm_dir_flagをパーシングした後、その値に基づいてBDPCMの予測方向を決定することができる。
【0200】
図17に示されている実施例によれば、イントラ予測された現在ブロックに量子化レジデュアル信号が存在する場合にのみ、BDPCM関連情報の符号化/復号化を行うことにより、符号化効率を向上させることができる。
【0201】
図17に示されている実施例において、BDPCM関連情報の符号化/復号化条件として、イントラ予測か否か、レジデュアル信号の存否を判断する。しかし、これに限定されず、BDPCM関連情報の符号化/復号化条件として、BDPCM利用可能か否かに対する前述した様々な条件(カラー成分、ブロックのサイズ、上位レベルでシグナリングされる情報など)が判断できる。
【0202】
図17に示されている実施例は、ルマ成分を対象とするが、これに限定されず、本開示のBDPCMがクロマ成分にも適用される場合にも適用できる。つまり、図17を参照して説明した実施例は、クロマ成分(Cb、Cr)のそれぞれに対して適用できる。
【0203】
又は、本開示のBDPCMがRGB画像に対して適用される場合、図17を参照して説明した実施例は、R、G、B成分のそれぞれに対して適用されることができる。
【0204】
又は、本開示のBDPCMがYCoCg画像に対して適用される場合、図17を参照して説明した実施例は、Y、Co、Cg成分のそれぞれに対して適用されることができる。
【0205】
図18は本開示の他の実施例による現在ブロックのイントラ予測方向に基づいてBDPCMの予測方向を誘導する方法を説明するためのフローチャートである。図18のステップS1810乃至S1830は、図17のステップS1740乃至S1750を代替することができる。
【0206】
図18を参照して説明する実施例によれば、現在ブロックのイントラ予測モードが既に利用可能であるので、BDPCMの予測方向に関する情報を別途にシグナリングせずに、現在ブロックのイントラ予測モードからBDPCMの予測方向を導出することができる。
【0207】
具体的には、現在ブロックにBDPCMが適用されるか否かが判断され(S1810)、BDPCMが適用されない場合、BDPCMの予測方向を導出する過程は行われないことができる。
【0208】
ステップS1810で、現在ブロックにBDPCMが適用されると判断された場合、現在ブロックのイントラ予測モードが判断され(S1820)、現在ブロックのイントラ予測モードに基づいてBDPCMの予測方向が導出されることができる(S1830)。
【0209】
一例として、現在ブロックのイントラ予測モードが垂直方向モードである場合、BDPCMの予測方向は垂直方向に導出されることができる。逆に、現在ブロックのイントラ予測モードが水平方向モードである場合、BDPCMの予測方向は水平方向に導出されることができる。現在ブロックのイントラ予測モードが非方向性モードである場合、BDPCMの予測方向は、水平方向及び垂直方向のうちの画像符号化装置と画像復号化装置との間で既に約束された方向に導出されることができる。又は、現在ブロックのイントラ予測モードが非方向性モードである場合、BDPCMの予測方向は、ブロックの上位レベル(シーケンスレベル、ピクチャレベル、スライスレベルなど)でシグナリングされる情報に基づいて決定されることもできる。又は、図10を参照して説明した例において、現在ブロックのイントラ予測モードが34番モードよりも小さい絶対角度を持つモードである場合には、BDPCMの予測方向は水平方向と定義し、そうでない場合には、BDPCMの予測方向は垂直方向と定義することができる。又は、現在ブロックのイントラ予測モードが34番モード以下の絶対角度を持つモードである場合には、BDPCMの予測方向は水平方向と定義し、そうでない場合には、BDPCMの予測方向は垂直方向と定義することもできる。
【0210】
他の例として、現在ブロックのイントラ予測モードが垂直方向モードである場合、BDPCMの予測方向は水平方向に導出されることができる。逆に、現在ブロックのイントラ予測モードが水平方向モードである場合、BDPCMの予測方向は垂直方向に導出されることができる。現在ブロックのイントラ予測モードが非方向性モードである場合、BDPCMの予測方向は、水平方向及び垂直方向のうち、画像符号化装置と画像復号化装置との間に既に約束された方向に導出されることができる。又は、現在ブロックのイントラ予測モードが非方向性モードである場合、BDPCMの予測方向は、ブロックの上位レベル(シーケンスレベル、ピクチャレベル、スライスレベルなど)でシグナリングされる情報に基づいて決定されることもできる。又は、図10を参照して説明した例において、現在ブロックのイントラ予測モードが34番モードよりも小さい絶対角度を持つモードである場合には、BDPCMの予測方向は垂直方向と定義し、そうでない場合には、BDPCMの予測方向は水平方向と定義することができる。又は、現在ブロックのイントラ予測モードが34番モード以下の絶対角度を持つモードである場合には、BDPCMの予測方向は垂直方向と定義し、そうでない場合には、BDPCMの予測方向は水平方向と定義することもできる。
【0211】
画像符号化装置は、現在ブロックにBDPCMを適用する場合、イントラ予測モードに基づいてBDPCMの予測方向を導出してBDPCM予測を行い、BDPCMの予測方向に関する情報は符号化しないことができる。
【0212】
図18に示されている実施例によれば、既に利用可能なイントラ予測モードを用いてBDPCMの予測方向を導出することができる。したがって、BDPCMの予測方向に関する情報をシグナリングする必要がなくなるので、伝送される情報の量が削減できる。
【0213】
図18に示されている実施例の変形例として、BDPCMの予測方向に関する情報がシグナリングされ、現在ブロックのイントラ予測モードは、BDPCMの予測方向に基づいて導出することもできる。
【0214】
図19は本開示の別の実施例によるBDPCMの予測方向に基づいて現在ブロックのイントラ予測モードを誘導する方法を説明するためのフローチャートである。
【0215】
図19を参照して説明する実施例によれば、現在ブロックのBDPCMの予測方向が既に利用可能であるので、イントラ予測モードに関する情報を別途にシグナリングせずに、現在ブロックのBDPCMの予測方向から現在ブロックのイントラ予測モードを導出することができる。
【0216】
具体的に、現在ブロックにBDPCMが適用されるか否かが判断され(S1910)、BDPCMが適用されない場合、現在ブロックのイントラ予測モードは、ビットストリームを介してシグナリングされる現在ブロックの予測情報(例えば、イントラ予測モードに関する情報)に基づいて決定されることができる(S1940)。以後、決定されたイントラ予測モードに基づいてイントラ予測が行われることができる(S1930)。
【0217】
ステップS1910で、現在ブロックにBDPCMが適用されると判断された場合、現在ブロックのイントラ予測モードは、現在ブロックのBDPCMの予測方向に基づいて決定されることができる(S1920)。例えば、画像符号化装置は、現在ブロックに適用されたBDPCMの予測方向に基づいて現在ブロックのイントラ予測モードを決定することができる。また、画像復号化装置は、BDPCMの予測方向に関する情報(bdpcm_dir_flag)を復号化して現在ブロックのBDPCMの予測方向を決定し、決定されたBDPCMの予測方向に基づいて現在ブロックのイントラ予測モードを決定することができる。以後、決定されたイントラ予測モードに基づいてイントラ予測が行われることができる(S1930)。
【0218】
一例によれば、BDPCMの予測方向が垂直方向である場合、イントラ予測モードは、垂直方向モードに決定されることができ、BDPCMの予測方向が水平方向である場合、イントラ予測モードは、水平方向モードに決定されることができる。
【0219】
他の例によれば、BDPCMの予測方向が垂直方向である場合、イントラ予測モードは水平方向モードに決定されることができ、BDPCMの予測方向が水平方向である場合、イントラ予測モードは垂直方向モードに決定されることができる。
【0220】
しかし、BDPCMの予測方向に基づいてイントラ予測モードを決定する方法は、これらの例に限定されない。
【0221】
図20は本開示の別の実施例による現在ブロックのサイズに基づいてBDPCMの予測方向を誘導する方法を説明するためのフローチャートである。図20のステップS2010乃至S2030は、図17のステップS1740乃至S1750を代替することができる。
【0222】
イントラ予測の場合、参照サンプルからの距離が遠いほどレジデュアル係数のレベル(絶対値)が大きくなる特性がある。このような特性を考慮して、図20を参照して説明する実施例は、ブロックのサイズに関する条件(幅と高さの比較、幅と高さの比率など)に基づいて現在ブロックのBDPCMの予測方向を導出することができる。このとき、現在ブロックのイントラ予測モードは考慮されないことができる。
【0223】
具体的には、現在ブロックにBDPCMが適用されるか否かが判断され(S2010)、BDPCMが適用されない場合、BDPCMの予測方向を導出する過程は行われないことができる。
【0224】
ステップS2010で、現在ブロックにBDPCMが適用されるものと判断された場合、現在ブロックのサイズに関する条件が判断され(S2020)、その判断結果に基づいてBDPCMの予測方向が導出されることができる(S2030)。
【0225】
一例として、現在ブロックの幅(width)が高さ(height)よりも大きい場合、BDPCMの予測方向は水平方向に導出されることができる。逆に、現在ブロックの高さが幅よりも大きい場合、BDPCMの予測方向は垂直方向に導出されることができる。もし現在ブロックの幅と高さが同じである場合、図18を参照して説明した実施例の方法が適用されることができる。又は、現在ブロックの幅と高さが同一である場合、BDPCMの予測方向は水平方向及び垂直方向のうち、画像符号化装置と画像復号化装置との間で既に約束された方向に導出されるか、或いはブロックの上位レベル(シーケンスレベル、ピクチャレベル、スライスレベルなど)でシグナリングされる情報に基づいて決定されることもできる。
【0226】
他の例として、現在ブロックの幅が高さよりも大きい場合、BDPCMの予測方向は垂直方向に導出されることができる。逆に、現在ブロックの高さが幅よりも大きい場合、BDPCMの予測方向は水平方向に導出されることができる。もし現在ブロックの幅と高さが同一である場合、図18を参照して説明した実施例の方法が適用されることができる。
又は、現在ブロックの幅と高さが同一である場合、BDPCMの予測方向は、水平方向及び垂直方向のうち、画像符号化装置と画像復号化装置との間で既に約束された方向に導出されるか、或いはブロックの上位レベル(シーケンスレベル、ピクチャレベル、スライスレベルなど)でシグナリングされる情報に基づいて決定されることもできる。
【0227】
別の例として、現在ブロックの幅と高さの比(width/height)がN以上である場合、BDPCMの予測方向は垂直方向に導出されることができる。また、現在ブロックの幅と高さの比率が1/N以下である場合、BDPCMの予測方向は水平方向に導出されることができる。もし現在ブロックの幅と高さの比率がNよりも小さく1/N以上である場合、図18を参照して説明した実施例の方法が適用されることができる。又は、現在ブロックの幅と高さの比率がNよりも小さく1/N以上である場合、BDPCMの予測方向は、水平方向及び垂直方向のうち、画像符号化装置と画像復号化装置との間で既に約束された方向に導出されるか、或いはブロックの上位レベル(シーケンスレベル、ピクチャレベル、スライスレベルなど)でシグナリングされる情報に基づいて決定されることもできる。このとき、Nは1以上の整数であることができる。
【0228】
別の例として、現在ブロックの幅と高さの比率がN以上である場合、BDPCMの予測方向は水平方向に導出されることができる。また、現在ブロックの幅と高さの比率が1/N以下である場合、BDPCMの予測方向は垂直方向に導出されることができる。もし現在ブロックの幅と高さの比率がNよりも小さく1/N以上である場合、図18を参照して説明した実施例の方法が適用されることができる。又は、現在ブロックの幅と高さの比率がNよりも小さく1/N以上である場合、BDPCMの予測方向は、水平方向及び垂直方向のうち、画像符号化装置と画像復号化装置との間で既に約束された方向に導出されるか、或いはブロックの上位レベル(シーケンスレベル、ピクチャレベル、スライスレベルなど)でシグナリングされる情報に基づいて決定されることもできる。このとき、Nは1以上の整数であることができる。
【0229】
図20に示されている実施例によれば、現在ブロックのサイズに関する条件に基づいてBDPCMの予測方向を導出することができる。よって、BDPCMの予測方向に関する情報をシグナリングする必要がなくなるので、伝送される情報の量が削減できる。
【0230】
CABAC(Context-based Adaptive Binary Arithmetic Coding)及びレジデュアル信号の符号化/復号化の概要
【0231】
画像符号化/復号化装置は、CABACを用いて画像情報を符号化/復号化することができる。画像情報の一部又は全部は、図2のエントロピー符号化部190によってエントロピー符号化されることができ、画像情報の一部又は全部は、エントロピー復号化部210によってエントロピー復号化されることができる。後述するレジデュアル信号に含まれるシンタックス要素は、CABACをベースにエントロピー符号化/復号化されることができる。
【0232】
図21はCABACエントロピー符号化方法を説明するための図である。
【0233】
入力信号が2進値ではないシンタックス要素である場合、二値化部2110を介して入力信号が2進値に変換されることができる。入力信号が既に2進値である場合には、二値化過程が行われないことができる。この時、2進値を構成するそれぞれの2進数0又は1をビン(bin)とすることができる。例えば、二値化された後の2進列が110である場合、1、1、0のそれぞれは一つのビンであることができる。一つのシンタックス要素に対する2進、2進列は当該シンタックス要素の値を示すことができる。
【0234】
二値化されたビンは、正規符号化エンジン2120又はバイパス符号化エンジン2130に入力されることができる。コンテキストモデル決定部2140は、当該ビンに対して確率値を反映するコンテキストモデル(context model)を割り当て、正規符号化エンジン2120は、割り当てられたコンテキストモデルに基づいて当該ビンを符号化することができる。正規符号化エンジン2120での各ビンに対する符号化が行われた後、当該ビンに対する確率モデルが更新されることができる。このように符号化されるビンを、コンテキスト符号化ビン(context-coded bin)とすることができる。バイパス符号化エンジン2130では、入力されたビンに対して確率を推定する手順と、符号化後に当該ビンに適用した確率モデルを更新する手順が省略されることができる。バイパス符号化エンジン2130は、コンテキストを割り当てる代わりに、均一な確率分布を適用して、入力されるビンを符号化することにより、符号化速度を向上させることができる。バイパス符号化エンジン2130を介して符号化されるビンは、バイパスビン(bypass bin)とすることができる。
【0235】
エントロピー符号化部190は、正規符号化エンジン2120を介して符号化を行うか、或いはバイパス符号化エンジン2130を介して符号化を行うかを決定し、符号化経路をスイッチングすることができる。
【0236】
一方、エントロピー復号化は、図21の符号化過程が逆順に行われることができる。エントロピー復号化部210は、正規コーディング復号化エンジン或いはバイパス復号化エンジンのうちのいずれか一つを用いてビットストリームを2進列に復号化することができる。正規コーディングエンジンでの復号化が行われた後、当該ビンに対する確率モデルが更新されることができる。一方、バイパス復号化エンジンでは、入力されたビットストリームに対して確率を推定する手順、及び確率モデルを更新する手順が省略されることができる。正規コーディング復号化エンジン或いはバイパス復号化エンジンのうちのいずれか一つを介して生成されたビンは、逆二値化部の選択的な逆二値化を介して、最初の入力信号であったシンタックス要素に最終的に復元されることができる。
【0237】
レジデュアルサンプルは、変換、量子化過程を経て量子化された変換係数を用いて誘導できる。量子化された変換係数は変換係数と定義されることができる。ブロック内の変換係数はレジデュアル情報の形でシグナリングされることができる。レジデュアル情報は、レジデュアルコーディングシンタックス要素を含むことができる。画像符号化装置は、レジデュアル情報でレジデュアルコーディングシンタックス要素を構成し、これを符号化してビットストリーム形式で出力することができる。これに対し、画像復号化装置は、ビットストリームからレジデュアルコーディングシンタックス要素を復号化して、量子化された変換係数を取得することができる。以下、レジデュアルコーディングシンタックス要素は、シンタックス要素と呼ばれることがある。
【0238】
一例として、変換係数は、last_sig_coeff_x_prefix、last_sig_coeff_y_prefix、last_sig_coeff_x_suffix、last_sig_coeff_y_suffix、coded_sub_block_flag、sig_coeff_flag、abs_level_gtX_flag、par_level_flag、abs_remainder、dec_abs_level、coeff_sign_flagのうちの少なくとも一つのレジデュアルコーディングシンタックス要素を用いて符号化/復号化できる。変換係数をシンタックス要素を用いて符号化/復号化するプロセスをレジデュアル(データ)コーディング又は(変換)係数コーディングと定義することができる。この時、変換/量子化過程は省略できる。以下、上述したそれぞれのシンタックス要素について詳細に説明する。以下で説明するシンタックス要素の名称は、例示であって、シンタックス要素の名称によって本開示の権利範囲が制限されるものではない。
【0239】
シンタックス要素last_sig_coeff_x_prefix、last_sig_coeff_y_prefix、last_sig_coeff_x_suffix、last_sig_coeff_y_suffixは、関連するブロック内の最後の0ではない係数の(x、y)位置情報を符号化するシンタックス要素である。この際、関連するブロックは、符号化ブロック(Coding Block、CB)又は変換ブロック(Transform Block、TB)であることができる。以下、変換、量子化及びレジデュアルコーディングプロセスにおけるブロックは、符号化ブロック又は変換ブロックであることができる。
【0240】
具体的に、last_sig_coeff_x_prefixは、変換ブロック内のスキャン順序における最後の有効係数(significant coefficient)の列位置のプレフィックス(prefix)を指示し、last_sig_coeff_y_prefixは、前記変換ブロック内の前記スキャン順序における最後の有効係数の行位置のプレフィックスを指示することができる。last_sig_coeff_x_suffixは、前記変換ブロック内の前記スキャン順序における最後の有効係数の列位置のサフィックス(suffix)を指示し、last_sig_coeff_y_suffixは、前記変換ブロック内の前記スキャン順序における最後の有効係数の行位置のサフィックスを指示することができる。有効係数は、0ではない係数を意味することができる。スキャン順序は、右上方対角スキャン順序、水平スキャン順序及び垂直スキャン順序のうちのいずれか一つであることができる。この時、水平スキャン順序は、左から右方向のスキャン順序を意味することができ、垂直スキャン順序は、上側から下側方向のスキャン順序を意味することができる。スキャン順序は、対象ブロックにイントラ/インター予測が適用されるか否か及び/又は具体的なイントラ/インター予測モードに基づいて決定されることができる。
【0241】
シンタックス要素coded_sub_block_flagは、現在ブロックが4個又は16個のピクセル数を持つサブブロックに分割されるとき(例えば、1×16、2×8、8×2、16×1、4×4又は2×2のサブブロック)、各サブブロックが0ではない係数が含まれるか否かを指示するシンタックス要素であることができる。この時、サブブロックは、係数グループ(coefficient group、CG)でも表現されることができる。
【0242】
例えば、coded_sub_block_flagの値が0であれば、それ以上伝送する情報がないので、サブブロックに対する符号化過程が終了することができる。逆に、coded_sub_block_flagの値が1であれば、sig_coeff_flagの符号化/復号化過程が行われることができる。スキャン順序によるとき、最後に0ではない係数を含むサブブロックに対しては、coded_sub_block_flagに対するシグナリングが行われないことができる。これは、左上側サブブロックの場合にDC係数が存在するので、0ではない係数が存在する確率が高いためであり得る。したがって、最後の0ではない係数を含むサブブロックに対しては、coded_sub_block_flagが符号化されず、その値が1に設定されることができる。
【0243】
coded_sub_block_flagが現在サブブロック内に0ではない係数が存在することを指示すると、逆にスキャンされた順序に従って、2進値を持つsig_coeff_flagが符号化/復号化されることができる。スキャン順序に従って、当該スキャン位置(n)の係数に対して1ビットのシンタックス要素sig_coeff_flag[n]が符号化/復号化されることができる。シンタックス要素sig_coeff_flag[n]は、現在スキャン位置の係数が0の値を持つか否かを指示するシンタックス要素であることができる。最後の0ではない係数を含んでいるサブブロックの場合、最後の0ではない係数に対しては、sig_coeff_flag[n]が符号化/復号化される必要がないので、符号化/復号化過程が省略されることができる。
【0244】
sig_coeff_flag[n]が1である場合にのみ、レベル情報符号化/復号化が行われることができる。この時、レベル情報符号化/復号化過程は、上述したシンタックス要素のうちの少なくとも一つを用いて行われることができる。一方、シンタックス要素sig_coeff_flag[xC][yC]は、現在ブロック内の各変換係数位置(xC、yC)の変換係数が0であるか否かを指示するシンタックス要素であることができる。
【0245】
sig_coeff_flag[n]の符号化/復号化後の残りのレベル値は、下記数式7に基づいて誘導されることができる。
【0246】
【数7】
【0247】
この時、シンタックス要素remAbsLevel[n]は、スキャン位置nで符号化/復号化されなければならないレベル値を指示することができる。coeff[n]は、実際変換係数値を意味することができる。
【0248】
シンタックス要素abs_level_gtx_flag[n][0]は、スキャン位置nにおける|coeff[n]|が1よりも大きいか否かを指示するシンタックス要素であることができる。abs_level_gtX_flag[n][0]の値が0であれば、当該位置係数の絶対値は1であることができる。一方、abs_level_gtX_flag[n][0]の値が1であれば、remAbsLevel[n]は、下記数式8に基づいて誘導されることができる。
【0249】
【数8】
【0250】
シンタックス要素par_level_flag[n]は、下記数式9に基づいてremAbsLevel[n]のLSB(least significant coefficient)値を符号化/復号化するのに用いられるシンタックス要素であることができる。つまり、par_level_flag[n]は、スキャン位置nの変換係数レベル値のパリティ(parity)を指示することができる。par_leve_flag[n]の符号化/復号化後、remAbsLevel[n]を下記数式9に基づいて更新されることができる。
【0251】
【数9】
【0252】
シンタックス要素abs_level_gtx_flag[n][1]は、スキャン位置nでの|coeff[n]|が3よりも大きいか否かを指示するシンタックス要素であることができる。例えば、abs_level_gtX_flag[n][1]が1である場合にのみ、abs_remainder[n]が符号化/復号化されることができる。一例として、coeff[n]と各シンタックス要素との関係は、下記数式10のとおりであることができる。この時、|coeff[n]|は、変換係数レベル値を指示し、変換係数に対するAbsLevel[n]と表現されることもできる。シンタックス要素coeff_sign_flag[n]は、当該スキャン位置nでの変換係数符号(sign)を指示することができる。上述した内容を総合すると、abs_level_gtx_flag[n][i]は、変換係数の絶対値が1又は3のうちのいずれか一つよりも大きいか否かを指示するシンタックス要素であることができる。
【0253】
【数10】
【0254】
上述した内容を考慮すると、|coeff[n]|の値に応じて、各シンタックス要素は表2の値を持つことができる。
【0255】
【表2】
【0256】
一方、CABACは高い性能を提供するが、スループット(throughput)の性能が良くないという欠点を持つ。これは、上述したCABACの正規符号化エンジンによるものであり得る。正規符号化エンジンは、以前ビンの符号化を介して更新された確率状態と範囲を使用するため高いデータ依存性を示し、確率区間を読み取って現在状態を判断するのに多くの時間がかかるという問題点を持つ。この時、コンテキスト符号化ビンの数を制限する場合、CABACのスループット問題が解決できる。
【0257】
一例として、sig_coeff_flag[n]、abs_level_gtX_flag[n][0]、par_level_flag[n]、abs_level_gtx_flag[n][1]を表現するために使用されたビンの和をサブブロックのサイズに応じて制限することができる。例えば、前記ビンの和は、4×4のサブブロックである場合には32、2×2サブブロックの場合には8に制限されることができる。コンテキスト要素を符号化するために制限された数のコンテキスト符号化ビンをすべて使用した場合、残りの係数に対してはCABACが適用されず、バイパス符号化/復号化が行われることができる。つまり、符号化/復号化ビンの数が4×4CGで32になり、2×2CGでは8になる場合、sig_coeff_flag[n]、abs_level_gtX_flag[n][0]、par_level_flag[n]、abs_level_gtx_flag[n][1]は、さらに符号化されないことができる。この時、|coeff[n]|は、既に設定されたdec_abs_level[n]で符号化/復号化されることができる。又は、sig_coeff_flag[n]、abs_level_gtX_flag[n][0]、par_level_flag[n]及び/又はabs_level_gtx_flag[n][1]を表現するために使用されたビンの和を変換ブロックのサイズに応じて制限することができる。例えば、前記ビンの和は、ブロック内のピクセル数の1.75倍であることができる。コンテキスト要素を符号化するために、制限された数のコンテキスト符号化ビンをすべて使用した場合、残りの係数に対してはCABACが適用されず、バイパス符号化/復号化が行われることができる。つまり、符号化/復号化ビンの数がブロック内のピクセル数の1.75倍を超える場合(例えば、:16×16ブロックの場合には448個)、sig_coeff_flag[n]、abs_level_gtX_flag[n][0]、par_level_flag[n]、abs_level_gtx_flag[n][1]は、さらに符号化されないことができる。この時、|coeff[n]|は、既に設定されたdec_abs_level[n]で符号化/復号化されることができる。
【0258】
レジデュアル係数のレベルに対するRiceパラメータ誘導過程
【0259】
Riceパラメータの誘導過程は、現在変換ブロックの色成分情報(cIdx)、現在変換ブロックの左上側ルマ位置(x0、y0)、現在レジデュアル係数のスキャン位置(xC、yC)、現在変換ブロックの幅(log2TbWidth)と高さ(log2TbHeight)の入力を受け、RiceパラメータcRiceParamを出力することができる。
【0260】
まず、変数locSumAbsが下記表3の擬似コード(pseudo code)に導出されることができる。
【0261】
【表3】
【0262】
また、locSumAbsに基づいて、cRiceParamが表4のように導出されることができる。
【0263】
【表4】
【0264】
前記Riceパラメータ誘導過程は、シンタックス要素dec_abs_level[]及びシンタックス要素abs_remainder[]に対して適用できる。すなわち、前記Riceパラメータ誘導過程は、現在変換ブロック内のレジデュアル係数に対して共通に適用されることもできる。
【0265】
レジデュアル係数のレベルに対する二値化過程(binarization process)
【0266】
前記誘導されたcRiceParamは、当該シンタックス要素の二値化過程でcMaxを誘導するために使用できる。当該シンタックス要素のprefixValは、cMaxと当該シンタックス要素の値のうちの小さい値に決定されることができる。また、当該シンタックス要素のsuffixValは、当該シンタックス要素の値からcMax値を差し引いた値に決定されることができる。前述したように、当該シンタックス要素のprefixValとsuffixValが決定された後、それぞれに対して二値化過程を行って当該シンタックス要素の二値化されたビンストリングを生成することができる。つまり、当該シンタックス要素の二値化されたビンストリングは、prefixValのビンストリング(prefix bin string)とsuffixVal(存在する場合)のビンストリングとを結合(concatenation)して生成できる。
【0267】
変換スキップされたレジデュアル信号の符号化
【0268】
レジデュアル信号に対して変換がスキップされる場合、空間ドメイン(spatial domaion)の量子化レジデュアル信号の統計的信号特性を考慮して、レジデュアル信号の符号化過程が修正できる。
【0269】
例えば、変換ブロック内のスキャン順序における最後の有効係数の位置に関する情報は、符号化が省略できる。変換を行う場合、エネルギーが低周波数領域に集中し、高周波数領域には、0又は有効でないレベルが出現する確率が高い。したがって、変換を行う場合、最後の有効係数の位置が重要な意味を持つことができる。しかし、変換をスキップする場合、上述したような低周波領域へのエネルギー集中現象は発生しない。つまり、変換をスキップする場合、有効係数は現在変換ブロック内で均等に分布するので、最後の有効係数の位置は重要な意味を持たず、これにより符号化されないことがある。
【0270】
また、sig_coeff_flag[]に対するコンテキストモデルが修正できる。
シンタックス要素sig_coeff_flag[]のコンテキストモデルは、現在スキャニング位置の周辺位置を参照して誘導できる。この時、参照される周辺位置をテンプレート(template)と定義することができる。変換をスキップする場合、シンタックス要素sig_coeff_flag[]のコンテキストモデルを決定するためのテンプレートは、現在スキャニング位置の左側位置(NB0)及び上側位置(NB1)に修正できる。例えば、シンタックス要素sig_coeff_flag[]のコンテキストモデルを決定するためのコンテキスト増加値(ctxInc、context increment)は、sig_coeff_flag[NB0]+sig_coeff_flag[NB1]に基づいて誘導できる。つまり、現在スキャニング位置の左側位置のsig_coeff_flag値と現在スキャニング位置の上側位置のsig_coeff_flag値に基づいて現在スキャニング位置のsig_coeff_flagのコンテキストモデルが誘導できる。よって、変換をスキップする場合のコンテキストモデルは、対角方向とは独立して決定されることができる。また、3種類のコンテキストモデルのうちのいずれか一つが決定されることができる。
【0271】
変換がスキップされる場合のレジデュアル信号の分布を考慮して、シンタックス要素abs_remainder[]の符号化においても修正が必要である。前述したように、abs_remainder[]の二値化のためにRiceパラメータが誘導できる。表3の擬似コードによれば、Riceパラメータを誘導するために、現在スキャニング位置の右側位置(xC+1、yC)及び下側位置(xC、yC+1)がテンプレートとして使用されることが分かる。しかし、変換がスキップされる場合、前述したsig_coeff_flagのテンプレートと同様に、現在スキャニング位置(xC、yC)の左側位置(xC-1、yC)及び上側位置(xC、yC-1)をabs_reminder[]のRiceパラメータを誘導するためのテンプレートとして定義することができる。又は、変換スキップ残差信号に対するRice parameterは、特定の数字に固定することができる。例えば、変換スキップ残差信号に対するrice parameterは1であることができる。
【0272】
シンタックス要素sig_coeff_flagのコンテキストモデル誘導過程
【0273】
シンタックス要素は、CABACを用いて符号化/復号化できる。CABACを行うために、コンテキストモデル(context model)が誘導されることができる。
コンテキストモデルは、例えば、コンテキストインデックス(ctxIdx)を決定することにより誘導でき、ctxIdxは、変数ctxIdxOffsetとctxIncとの和によって誘導できる。この時、ctxIncは、前述したように、テンプレートを用いて誘導できる。
【0274】
具体的には、シンタックス要素sig_coeff_flagのctxIncを誘導するために、表5の擬似コードに基づいて変数locNumSig及びlocSumAbsPass1が誘導できる。
【0275】
【表5】
【0276】
表5に示すように、locNumSig及びlocSumAbsPass1を誘導するための過程で用いられるテンプレートは、transform_skip_flagによって異なることができる。具体的には、transform_skip_flagが1である場合(変換がスキップされる場合)、現在スキャニング位置(xC、yC)の左側位置(xC-1、yC)及び上側位置(xC、yC-1)がテンプレートとして用いられることができる。シンタックス要素sig_coeff_flagのctxIncは、locNumSig及び/又はlocSumAbsPass1に基づいて導出できる。つまり、sig_coeff_flagのコンテキストモデリングのために用いられるテンプレートは、変換がスキップされるかによって異なるように決定されることができる。
【0277】
前述したように、BDPCMは、変換がスキップされたレジデュアルブロックを符号化する過程で適用できる。BDPCMが適用される場合、前述したように、(量子化された)レジデュアル係数を符号化する代わりに、行又は列の方向にライン単位のレジデュアル係数間の予測を行うことにより発生する差異値を符号化するので、変換がスキップされる他のレジデュアル信号とは別の特性を持つことができる。例えば、一つのライ内の連続したレジデュアルの値が(3、3、4、3)である場合、BDPCMが適用されると、実際に伝送されるレジデュアルの値は(3、0、1、-1)になってレベルが著しく減少し、符号も変わることができる。したがって、BDPCMに適した統計的特性を蓄積することができるように別途のコンテキストモデルを選択するか、或いはレジデュアル係数のレベルを二値化するときに使用するRiceパラメータを誘導する方法を適応的に適用する必要がある。
【0278】
前述したように、sig_coeff_flagのコンテキストモデルを決定するか或いはabs_remainderの二値化のためのRiceパラメータを誘導するために、周辺ピクセルを参照することができる。この時、参照される周辺ピクセル(又はその位置)をテンプレートと定義することができる。変換がスキップされる場合、現在ピクセル(現在スキャニング位置)の左側位置及び上側位置がテンプレートとして参照できる。もし現在ピクセルがブロック内の最も上側に位置するか或いは最も左側に位置する場合、利用可能な周辺ピクセルのみをテンプレートとして参照することができる。利用可能でない周辺ピクセル位置のnon-zeroか否か又はlevel値は0に初期化することができる。現在ピクセルの位置が(0、0)である場合、いずれのピクセルも参照することができないので、周辺ピクセルの位置に対するnon-zeroか否か又はlevel値は0に誘導することができる。
【0279】
図22及び図23は本開示の一実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
【0280】
図22及び図23において、「C」は現在ピクセルを示し、「A」と「L」はそれぞれ上側周辺ピクセル及び左側周辺ピクセルを示す。また、図22のブロックの右側に表示された矢印は、BDPCMの予測方向が垂直方向であることを示し、図23のブロックの下側に表示された矢印は、BDPCMの予測方向が水平方向であることを示す。
【0281】
変換がスキップされたブロックのレジデュアル信号を符号化するために、図22及び図23の左側に示されているブロックのように、現在ピクセル(C)の左側ピクセル(L)及び上側ピクセル(A)がテンプレートとして参照できる。例えば、前記テンプレートは、abs_remainder[]のRiceパラメータを誘導する場合、又はsig_coeff_flagのコンテキストモデルを誘導する場合のテンプレートであることができる。
【0282】
変換がスキップされたブロックがBDPCMで予測されたブロックである場合、BDPCMの予測方向に基づいてテンプレートが修正できる。例えば、BDPCMの予測方向が垂直方向である場合、図22の右側に示されているブロックのように現在ピクセル(C)の上側ピクセル(A)のみをテンプレートとして参照することができる。また、BDPCMの予測方向が水平方向である場合、図23の右側に示されているブロックのように現在ピクセル(C)の左側ピクセル(L)のみをテンプレートとして参照することができる。
つまり、現在ピクセルの位置(係数、レジデュアル係数、又は量子化レジデュアル係数の位置)に対してBDPCMの予測方向を考慮して、参照されていない位置のピクセルは、周辺との類似性を確認するためのテンプレート(neighbor position for context model selection、rice parameter derivation)として活用しないことができる。この場合、例えば、現在係数の位置を基準に、BDPCMの予測方向に位置する参照サンプルはテンプレートとして用い、BDPCMの予測方向に位置しない参照サンプルはテンプレートとして用いないことができる。
【0283】
図24は本開示によってBDPCMの予測方向を考慮してテンプレートを定義し、コンテキストモデル又はRiceパラメータを誘導する方法を説明するためのフローチャートである。
【0284】
図24に示すように、変換スキップされた現在ブロックにBDPCMが適用されるか否かを判断し(S2410)、BDPCMが適用されていない場合、現在ピクセルの左側周辺ピクセル及び上側周辺ピクセルをテンプレートとして定義することができる(S2420)。現在ブロックにBDPCMが適用された場合、BDPCMの予測方向が判断され(S2430)、水平方向である場合、現在ピクセルの左側周辺ピクセルをテンプレートとして定義し(S2440)、垂直方向である場合、現在ピクセルの上側周辺ピクセルをテンプレートとして定義することができる(S2450)。上述のように変換スキップされた現在ブロックにBDPCMが適用されるか否か及び/又はBDPCMの予測方向に基づいて定義された現在ピクセルのテンプレートを用いて符号化/復号化を行うことができる(S2460)。ステップS2460の符号化/復号化は、例えば、現在ピクセルのレジデュアル信号の符号化/復号化であって、レジデュアル信号のコンテキストモデル誘導過程又はRiceパラメータ誘導過程を含むことができる。
【0285】
図22乃至図24を参照して説明した実施例によれば、BDPCMの予測方向(例えば、bdpcm_dir_flag)に基づいて、現在ピクセルに隣接したピクセルのうち、どのピクセルとより高い相関性(correlation)を持つかを確認し、これを現在ピクセルに対する周辺ピクセルの統計として活用することにより、符号化効率を高めることができる。
【0286】
図25及び図26は本開示の他の実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
【0287】
図25及び図26において、「C」は現在ピクセルを示し、「A」と「L」はそれぞれ上側周辺ピクセル及び左側周辺ピクセルを示す。また、図25のブロックの右側に表示された矢印は、BDPCMの予測方向が垂直方向であることを示し、図26のブロックの下側に表示された矢印は、BDPCMの予測方向が水平方向であることを示す。また、図25及び図26において、太い実線で示したラインは、現在ピクセルが位置したBDPCMラインを示す。
【0288】
変換がスキップされたブロックのレジデュアル信号を符号化するために、図25及び図26の左側に示されているブロックのように、現在ピクセル(C)の左側ピクセル(L)及び上側ピクセル(A)がテンプレートとして参照できる。例えば、前記テンプレートは、abs_remainder[]のRiceパラメータを誘導する場合又はsig_coeff_flagのコンテキストモデルを誘導する場合のテンプレートであることができる。
【0289】
変換がスキップされたブロックがBDPCMで予測されたブロックである場合、BDPCMの予測方向に基づいてテンプレートが修正できる。例えば、BDPCMの予測方向が垂直方向である場合、図25の右側に示されているブロックのように現在ピクセル(C)の左側ピクセル(L)のみをテンプレートとして参照することができる。また、BDPCMの予測方向が水平方向である場合、図26の右側に示されているブロックのように現在ピクセル(C)の上側ピクセル(A)のみをテンプレートとして参照することができる。
【0290】
図25及び図26を参照して説明する実施例では、現在ピクセルの位置に対して同じBDPCMラインに存在しないピクセルは、周辺との類似性を確認するためのテンプレート(neighbor position for context model selection、rice parameter derivation)として活用しないことができる。
【0291】
図27は本開示によってBDPCMのラインを考慮してテンプレートを定義し、コンテキストモデル又はRiceパラメータを誘導する方法を説明するためのフローチャートである。
【0292】
図27に示すように、変換スキップされた現在ブロックにBDPCMが適用されるか否かを判断し(S2710)、BDPCMが適用されていない場合、現在ピクセルの左側周辺ピクセル及び上側周辺ピクセルをテンプレートとして定義することができる(S2720)。現在ブロックにBDPCMが適用された場合、BDPCMの予測方向が判断され(S2730)、水平方向である場合、現在ピクセルの上側周辺ピクセルをテンプレートとして定義し(S2740)、垂直方向である場合、現在ピクセルの左側周辺ピクセルをテンプレートとして定義することができる(S2750)。つまり、現在ピクセルと同じBDPCMラインに存在する周辺ピクセルをテンプレートとして定義することができる。上述のように変換スキップされた現在ブロックにBDPCMが適用されるか否か及び/又はBDPCMの予測方向に基づいて定義された現在ピクセルのテンプレートを用いて符号化/復号化を行うことができる(S2760)。ステップS2760の符号化/復号化は、例えば、現在ピクセルのレジデュアル信号の符号化/復号化であって、レジデュアル信号のコンテキストモデル誘導過程又はRiceパラメータ誘導過程を含むことができる。
【0293】
図25乃至図27を参照して説明した実施例によれば、BDPCMの予測方向(例えば、bdpcm_dir_flag)に基づいて、現在ピクセルに隣接したピクセルのうち、どのピクセルとより高い相関性(correlation)を持つかを確認し、これを現在ピクセルに対する周辺ピクセルの統計として活用することにより、符号化効率を高めることができる。
【0294】
図28及び図29は本開示の別の実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
【0295】
図28及び図29において、「C」は現在ピクセルを示し、「A」と「L」はそれぞれ上側周辺ピクセル及び左側周辺ピクセルを示す。また、図28のブロックの右側に表示された矢印は、BDPCMの予測方向が垂直方向であることを示し、図29のブロックの下側に表示された矢印は、BDPCMの予測方向が水平方向であることを示す。
【0296】
DPCMでは、予測値がない一番目の値、又はBDPCMでは、一番目のラインの値は予測されず、従来と同じ値で符号化される。しかし、その以後からは、以前に符号化されたラインの値との差分が符号化される。よって、符号化されるレベルの大きさが概ね一番目のラインのレベルに比べて非常に小さいか或いは0になることができる。つまり、一番目のラインに含まれたピクセルと他のラインに含まれたピクセルとの間でレベルの大きさが非常に変わる特性を持つことができる。すなわち、一番目のラインに含まれた周辺ピクセルは、2番目のライン以後に含まれた現在ピクセルのテンプレートとして活用することが適切でない場合がある。
【0297】
これを考慮して、図28及び図29に示されている実施例は、現在ピクセルの位置とBDPCMの予測方向に応じて、一番目のラインに含まれた周辺ピクセルをテンプレート(neighbor position for context model selection、rice parameter derivation)として活用しないことができる。つまり、BDPCMの一番目のラインが利用可能ではないと仮定して、テンプレートを定義することができる。一例として、sig_coeff_flagは、現在ピクセルの上側ピクセル及び左側ピクセルが0であるか0ではないかを確認した後、これに基づいてコンテキストモデルを決定する。このとき、一番目のラインは、non-zeroであるレベルが存在する可能性が他のラインよりも高いので、周辺ピクセルが一番目のラインであるか否かに応じて適応的に統計を累積することにより、符号化効率を向上させることができる。同様に、Riceパラメータは、現在ピクセルの周辺レベルの大きさに基づいて誘導されるので、現在ピクセルが二番目のラインであれば、一番目のラインの差分されていないレベルを参照しないことにより、現在係数にさらに適したRiceパラメータを誘導することができる。
【0298】
図28の左側に示されているように、BDPCMの予測方向が垂直方向であり、現在ピクセル(C)の上側ピクセルがBDPCMの一番目のラインに属する場合、左側ピクセル(L)のみをテンプレートとして参照することができる。もし、図28の右側に示されているように、現在ピクセル(C)の上側ピクセルがBDPCMの一番目のラインに属さない場合、上側ピクセル(A)と左側ピクセル(L)をテンプレートとして参照することができる。
【0299】
同様に、図29の左側に示されているように、BDPCMの予測方向が水平方向であり、現在ピクセル(C)の左側ピクセルがBDPCMの一番目のラインに属する場合、上側ピクセル(A)のみをテンプレートとして参照することができる。もし、図29の右側に示されているように、現在ピクセル(C)の左側ピクセルがBDPCMの一番目のラインに属さない場合、上側ピクセル(A)と左側ピクセル(L)をテンプレートとして参照することができる。
【0300】
図30は本開示によって周辺ピクセルがBDPCMの一番目のラインに含まれるか否かを考慮してテンプレートを定義し、コンテキストモデル又はRiceパラメータを誘導する方法を説明するためのフローチャートである。
【0301】
図30に示されているように、変換スキップされた現在ブロックにBDPCMが適用されるか否かを判断し(S3010)、BDPCMが適用されていない場合、現在ピクセルの左側周辺ピクセル及び上側周辺ピクセルをテンプレートとして定義することができる(S3020)。現在ブロックにBDPCMが適用された場合、BDPCMの予測方向が判断されることができる(S3030)。BDPCMの予測方向が水平方向である場合、現在ピクセルの左側周辺ピクセルがBDPCMの一番目のラインに存在するか否かを判断することができる(S3040)。現在ピクセルの左側周辺ピクセルがBDPCMの一番目のラインに存在する場合、現在ピクセルの上側周辺ピクセルのみをテンプレートとして定義することができる(S3050)。現在ピクセルの左側周辺ピクセルがBDPCMの一番目のラインに存在しない場合、現在ピクセルの左側周辺ピクセル及び上側周辺ピクセルをテンプレートとして定義することができる(S3060)。同様に、BDPCMの予測方向が垂直方向である場合、現在ピクセルの上側周辺ピクセルがBDPCMの一番目のラインに存在するか否かを判断することができる(S3070)。現在ピクセルの上側周辺ピクセルがBDPCMの一番目のラインに存在しない場合、現在ピクセルの左側周辺ピクセル及び上側周辺ピクセルをテンプレートとして定義することができる(S3060)。
現在ピクセルの上側周辺ピクセルがBDPCMの一番目のラインに存在する場合、現在ピクセルの左側周辺ピクセルのみをテンプレートとして定義することができる(S3080)。上述のように、現在ブロックにBDPCMが適用されるか否か、BDPCMの予測方向及び周辺ピクセルがBDPCMの一番目のラインに存在するか否かに基づいて定義された現在ピクセルのテンプレートを用いて符号化/復号化を行うことができる(S3090)。ステップS3090の符号化/復号化は、例えば、現在ピクセルのレジデュアル信号の符号化/復号化であって、レジデュアル信号のコンテキストモデル誘導過程又はRiceパラメータ誘導過程を含むことができる。
【0302】
図28及び図30を参照して説明した実施例は、現在ピクセルの周辺ピクセルがBDPCMの一番目のラインであるか否かに基づいて、現在ピクセルのテンプレートを定義するので、BDPCMの一番目のラインとそれ以後のラインの統計的特性を反映することができる。よって、現在ピクセルに、符号化/復号化にさらに適したコンテキストモデル及びRiceパラメータを導出することができる。
【0303】
図31及び図32は本開示の別の実施例によってBDPCMが適用されたブロックに対するテンプレートを説明するための図である。
【0304】
図31及び図32において、「C」は現在ピクセルを示し、「A」と「L」はそれぞれ上側周辺ピクセル及び左側周辺ピクセルを示す。また、図31のブロックの右側に表示された矢印は、BDPCMの予測方向が垂直方向であることを示し、図32のブロックの下側に表示された矢印は、BDPCMの予測方向が水平方向であることを示す。
【0305】
図31及び図32を参照して説明する実施例は、図22及び図23を参照して説明した実施例と、図28及び図29を参照して説明した実施例とを組み合わせたものである。つまり、BDPCMの予測に参照されていない周辺ピクセルとBDPCMの一番目のラインに含まれた周辺ピクセルは、テンプレートとして活用しないことができる。
【0306】
具体的に、図31の左側に示されているブロックのように、BDPCMの予測方向が垂直方向であるとき、現在ピクセル(C)の上側ピクセルがテンプレートとして活用できるが、現在ピクセル(C)の上側ピクセルがBDPCMの一番目のラインに含まれるので、現在ピクセル(C)の左側ピクセル及び上側ピクセルはすべてテンプレートとして利用可能でないことができる。また、図31の右側に示されているブロックのように、現在ピクセル(C)の上側ピクセル(A)がBDPCMの一番目のラインに含まれないので、上側ピクセル(A)が現在ピクセル(C)のテンプレートとして活用できる。
【0307】
同様に、図32の左側に示されているブロックのように、BDPCMの予測方向が水平方向であるとき、現在ピクセル(C)の左側ピクセルがテンプレートとして活用されることができるが、現在ピクセル(C)の左側ピクセルがBDPCMの一番目のラインに含まれるので、現在ピクセル(C)の左側ピクセル及び上側ピクセルはすべてテンプレートとして利用可能でないことができる。また、図32の右側に示されているブロックのように、現在ピクセル(C)の左側ピクセル(L)がBDPCMの一番目のラインに含まれないので、左側ピクセル(L)が現在ピクセル(C)のテンプレートとして活用されることができる。
【0308】
図33は本開示によってBDPCMの予測方向及び周辺ピクセルがBDPCMの一番目のラインに含まれるか否かを考慮してテンプレートを定義し、コンテキストモデル又はRiceパラメータを誘導する方法を説明するためのフローチャートである。
【0309】
図33に示すように、変換スキップされた現在ブロックにBDPCMが適用されるか否かを判断し(S3310)、BDPCMが適用されていない場合、現在ピクセルの左側周辺ピクセル及び上側周辺ピクセルをテンプレートとして定義することができる(S3320)。現在ブロックにBDPCMが適用された場合、BDPCMの予測方向が判断できる(S3330)。BDPCMの予測方向が水平方向である場合、現在ピクセルの左側周辺ピクセルがBDPCMの一番目のラインに存在するか否かを判断することができる(S3340)。現在ピクセルの左側周辺ピクセルがBDPCMの一番目のラインに存在しない場合、現在ピクセルの左側周辺ピクセルをテンプレートとして定義することができる(S3350)。現在ピクセルの左側周辺ピクセルがBDPCMの一番目のラインに存在する場合、現在ピクセルの左側周辺ピクセル及び上側周辺ピクセルはすべてテンプレートとして定義されないことができる(S3360)。同様に、BDPCMの予測方向が垂直方向である場合、現在ピクセルの上側周辺ピクセルがBDPCMの一番目のラインに存在するか否かを判断することができる(S3370)。現在ピクセルの上側周辺ピクセルがBDPCMの一番目のラインに存在しない場合、現在ピクセルの上側周辺ピクセルをテンプレートとして定義することができる(S3380)。現在ピクセルの上側周辺ピクセルがBDPCMの一番目のラインに存在する場合、現在ピクセルの左側周辺ピクセルと上側周辺ピクセルはすべてテンプレートとして定義されないことができる(S3360)。前述したように、現在ブロックにBDPCMが適用されるか否か、BDPCMの予測方向及び周辺ピクセルがBDPCMの一番目のラインに存在するか否かに基づいて定義された現在ピクセルのテンプレートを用いて符号化/復号化を行うことができる(S3390)。ステップS3390の符号化/復号化は、例えば、現在ピクセルのレジデュアル信号の符号化/復号化であって、レジデュアル信号のコンテキストモデル誘導過程又はRiceパラメータ誘導過程を含むことができる。
【0310】
図31及び図33を参照して説明した実施例は、BDPCMの予測方向及び現在ピクセルの周辺ピクセルがBDPCMの一番目のラインであるか否かに基づいて現在ピクセルのテンプレートを定義するので、BDPCMの統計的特性がよりよく反映されることができる。したがって、現在ピクセルに、符号化/復号化にさらに適したコンテキストモデル及びRiceパラメータを導出することができる。
【0311】
また、本発明の別の実施例によれば、図25及び図26を参照して説明した実施例と、図28及び図29を参照して説明した実施例とを組み合わせて行うことができる。つまり、現在ピクセルと同じBDPCMラインに存在しない周辺ピクセルと、BDPCMの一番目のラインに含まれた周辺ピクセルは、テンプレートとして活用しないことができる。
【0312】
図22乃至図33を参照して、テンプレートとして利用可能な周辺ピクセルと利用可能でない周辺ピクセルに対する様々な実施例を説明した。しかし、現在ピクセルの位置によって、利用可能でない周辺ピクセルが存在することもできる。例えば、左側周辺ピクセル又は上側周辺ピクセルが現在ブロック内に存在しない場合、当該周辺ピクセルはテンプレートとして利用可能でないことができる。
【0313】
上述した様々な実施例において、利用可能でない周辺ピクセルは、参照しないか或いは所定の値に置換して参照することもできる。例えば、利用可能でない周辺ピクセル位置のnon-zeroか否か又はlevel値は0に代替されて参照されることもできる。
【0314】
本開示の例示的な方法は、説明の明確性のために動作のシリーズで表現されているが、これは、ステップが行われる順序を制限するためのものではなく、必要な場合には、それぞれのステップが同時に又は異なる順序で行われることもできる。本開示による方法を実現するために、例示するステップにさらに他のステップを含むか、一部のステップを除いて残りのステップを含むか、又は一部のステップを除いて追加の他のステップを含むこともできる。
【0315】
本開示において、所定の動作(ステップ)を行う画像符号化装置又は画像復号化装置は、当該動作(ステップ)の実行条件や状況を確認する動作(ステップ)を行うことができる。例えば、所定の条件が満足される場合、所定の動作を行うと記載された場合、画像符号化装置又は画像復号化装置は、前記所定の条件が満足されるか否かを確認する動作を行った後、前記所定の動作を行うことができる。
【0316】
本開示の様々な実施例は、すべての可能な組み合わせを羅列したものではなく、本開示の代表的な態様を説明するためのものであり、様々な実施例で説明する事項は、独立して適用されてもよく、2つ以上の組み合わせで適用されてもよい。
【0317】
また、本開示の様々な実施例は、ハードウェア、ファームウェア(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)、コントローラ、マイクロコントローラ、マイクロプロセッサなどによって実現できる。
【0318】
また、本開示の実施例が適用された画像復号化装置及び画像符号化装置は、マルチメディア放送送受信装置、モバイル通信端末、ホームシネマビデオ装置、デジタルシネマビデオ装置、監視用カメラ、ビデオ会話装置、ビデオ通信などのリアルタイム通信装置、モバイルストリーミング装置、記憶媒体、カムコーダ、注文型ビデオ(VoD)サービス提供装置、OTTビデオ(Over the top video)装置、インターネットストリーミングサービス提供装置、3次元(3D)ビデオ装置、画像電話ビデオ装置、及び医療用ビデオ装置などに含まれることができ、ビデオ信号又はデータ信号を処理するために使用できる。例えば、OTTビデオ(Over the top video)装置としては、ゲームコンソール、ブルーレイプレーヤー、インターネット接続TV、ホームシアターシステム、スマートフォン、タブレットPC、DVR(Digital Video Recoder)などを含むことができる。
【0319】
図34は本開示の実施例が適用できるコンテンツストリーミングシステムを例示する図である。
【0320】
図34に示されているように、本開示の実施例が適用されたコンテンツストリーミングシステムは、大きく、符号化サーバ、ストリーミングサーバ、Webサーバ、メディアストレージ、ユーザ装置及びマルチメディア入力装置を含むことができる。
【0321】
前記符号化サーバは、スマートフォン、カメラ、カムコーダなどのマルチメディア入力装置から入力されたコンテンツをデジタルデータに圧縮してビットストリームを生成し、これを前記ストリーミングサーバに伝送する役割を果たす。他の例として、スマートフォン、カメラ、カムコーダなどのマルチメディア入力装置がビットストリームを直接生成する場合、前記符号化サーバは省略できる。
【0322】
前記ビットストリームは、本開示の実施例が適用された画像符号化方法及び/又は画像符号化装置によって生成でき、前記ストリーミングサーバは、前記ビットストリームを伝送又は受信する過程で一時的に前記ビットストリームを保存することができる。
【0323】
前記ストリーミングサーバは、Webサーバを介したユーザの要求に基づいてマルチメディアデータをユーザ装置に伝送し、前記Webサーバは、ユーザにどんなサービスがあるかを知らせる媒介体の役割を果たすことができる。ユーザが前記Webサーバに所望のサービスを要求すると、前記Webサーバは、これをストリーミングサーバに伝達し、前記ストリーミングサーバは、ユーザにマルチメディアデータを伝送することができる。この時、前記コンテンツストリーミングシステムは、別途の制御サーバを含むことができ、この場合、前記制御サーバは、前記コンテンツストリーミングシステム内の各装置間の命令/応答を制御する役割を果たすことができる。
【0324】
前記ストリーミングサーバは、メディアストレージ及び/又は符号化サーバからコンテンツを受信することができる。例えば、前記符号化サーバからコンテンツを受信する場合、前記コンテンツをリアルタイムで受信することができる。この場合、円滑なストリーミングサービスを提供するために、前記ストリーミングサーバは、前記ビットストリームを一定時間の間保存することができる。
【0325】
前記ユーザ装置の例としては、携帯電話、スマートフォン(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、デスクトップコンピュータ、デジタルサイネージなどがあり得る。
【0326】
前記コンテンツストリーミングシステム内の各サーバは分散サーバとして運営されることができ、この場合、各サーバから受信するデータは分散処理されることができる。
【0327】
本開示の範囲は、様々な実施例の方法による動作が装置又はコンピュータ上で実行されるようにするソフトウェア又はマシン-実行可能なコマンド(例えば、オペレーティングシステム、アプリケーション、ファームウェア(firmware)、プログラムなど)、及びこのようなソフトウェア又はコマンドなどが保存されて装置又はコンピュータ上で実行できる非一時的なコンピュータ可読媒体(non-transitory computer-readable medium)を含む。
【産業上の利用可能性】
【0328】
本開示による実施例は、画像を符号化/復号化するのに利用可能である。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33
図34