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

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

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

特許7569918デブロッキングフィルタリングに基づく映像コーディング方法及びその装置
<>
  • 特許-デブロッキングフィルタリングに基づく映像コーディング方法及びその装置 図1
  • 特許-デブロッキングフィルタリングに基づく映像コーディング方法及びその装置 図2
  • 特許-デブロッキングフィルタリングに基づく映像コーディング方法及びその装置 図3
  • 特許-デブロッキングフィルタリングに基づく映像コーディング方法及びその装置 図4
  • 特許-デブロッキングフィルタリングに基づく映像コーディング方法及びその装置 図5
  • 特許-デブロッキングフィルタリングに基づく映像コーディング方法及びその装置 図6
  • 特許-デブロッキングフィルタリングに基づく映像コーディング方法及びその装置 図7
  • 特許-デブロッキングフィルタリングに基づく映像コーディング方法及びその装置 図8
  • 特許-デブロッキングフィルタリングに基づく映像コーディング方法及びその装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-09
(45)【発行日】2024-10-18
(54)【発明の名称】デブロッキングフィルタリングに基づく映像コーディング方法及びその装置
(51)【国際特許分類】
   H04N 19/117 20140101AFI20241010BHJP
   H04N 19/157 20140101ALI20241010BHJP
   H04N 19/176 20140101ALI20241010BHJP
   H04N 19/70 20140101ALI20241010BHJP
   H04N 19/82 20140101ALI20241010BHJP
【FI】
H04N19/117
H04N19/157
H04N19/176
H04N19/70
H04N19/82
【請求項の数】 3
(21)【出願番号】P 2023206942
(22)【出願日】2023-12-07
(62)【分割の表示】P 2022500851の分割
【原出願日】2020-07-09
(65)【公開番号】P2024019434
(43)【公開日】2024-02-09
【審査請求日】2024-01-05
(31)【優先権主張番号】62/871,731
(32)【優先日】2019-07-09
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】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)【発明者】
【氏名】ナム チョンハク
【審査官】岩井 健二
(56)【参考文献】
【文献】Benjamin Bross et al.,Versatile Video Coding (Draft 8) ,JVET-Q2001-vD,ITU-T,2020年02月27日,pp.70-74,157-163
【文献】Hyeongmun Jang Junghak Nam Sunmi Yoo Seunghwan Kim Jaehyun Lim,Non-CE5 : Deblock filtering process for BDPCM block,JVET-O0582,ITU-T,2019年07月07日,pp.1-3
【文献】Benjamin Bross Jianle Chen Shan Liu,Versatile Video Coding (Draft 5) ,JVET-N1001-v10,ITU-T,2019年07月02日,pp.56, 116, 150, 256, 276, 289
【文献】Marta Karczewicz Muhammed Coban,CE8-related: Quantized residual BDPCM, JVET-N0413,ITU-T,2019年05月14日,pp.1-2
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
映像デコーディングに対するデコーディング装置において、
メモリと、
前記メモリと接続される少なくとも1つのプロセッサと、を含み、
前記少なくとも1つのプロセッサは、
BDPCMフラグ情報を含むビットストリームを取得
前記BDPCMフラグ情報に基づいて、現在ブロックに対するレジデュアルサンプルを導出
前記BDPCMフラグ情報に基づいて、前記現在ブロックに対する予測サンプルを導出
前記レジデュアルサンプルと前記予測サンプルに基づいて、復元ピクチャを生成
前記復元ピクチャ内の前記現在ブロックのターゲット境界に対する境界強度(bS)を導出
前記bSに基づいて、デブロッキングフィルタリングが前記ターゲット境界に適用されるか否かを決定
前記決定することの結果に基づいて、前記復元ピクチャに前記デブロッキングフィルタリングを実行するよう構成され
前記BDPCMフラグ情報は、前記現在ブロックにBDPCMが適用されるか否かに関連し、
前記現在ブロックのツリータイプはシングルツリータイプであり、前記現在ブロックはクロマコーディングブロックであり、
記BDPCMフラグ情報が1であることに基づいて、前記クロマコーディングブロックの前記ターゲット境界に対する前記bSは、0として導出され、
記ターゲット境界に対する前記bSが0であることに基づいて、前記デブロッキングフィルタリングは、前記ターゲット境界に適用されない、デコーディング装置
【請求項2】
映像エンコーディングに対するエンコーディング装置において、
メモリと、
前記メモリと接続される少なくとも1つのプロセッサと、を含み、
前記少なくとも1つのプロセッサは、
BDPCMに基づいて、現在ブロックに対する予測サンプルを導出
前記予測サンプルに基づいて、前記現在ブロックに対するレジデュアルサンプルを導出
前記レジデュアルサンプルと前記予測サンプルに基づいて、復元ピクチャを生成
前記復元ピクチャ内の前記現在ブロックのターゲット境界に対する境界強度(bS)を導出
前記bSに基づいて、デブロッキングフィルタリングが前記ターゲット境界に適用されるか否かを決定
前記決定することの結果に基づいて、前記復元ピクチャに前記デブロッキングフィルタリングを実行
前記BDPCMに基づいて、量子化されたレジデュアル情報を導出
前記量子化されたレジデュアル情報及び前記BDPCMに対するBDPCMフラグ情報をエンコーディングするよう構成され
前記BDPCMフラグ情報は、前記現在ブロックにBDPCMが適用されるか否かに関連し、
前記現在ブロックのツリータイプはシングルツリータイプであり、前記現在ブロックはクロマコーディングブロックであり、
前記BDPCMが前記現在ブロックに適用されることに基づいて、前記クロマコーディングブロックの前記ターゲット境界に対する前記bSは、0として導出され、
前記ターゲット境界に対する前記bSが0であることに基づいて、前記デブロッキングフィルタリングは、前記ターゲット境界に適用されない、エンコーディング装置
【請求項3】
映像に対するデータを送信するための装置において、
前記映像に対するビットストリームを取得するよう構成された少なくとも1つのプロセッサであって、前記ビットストリームは、BDPCMに基づいて、現在ブロックに対する予測サンプルを導出し、前記予測サンプルに基づいて、前記現在ブロックに対するレジデュアルサンプルを導出し、前記レジデュアルサンプルと前記予測サンプルに基づいて、復元ピクチャを生成し、前記復元ピクチャ内の前記現在ブロックのターゲット境界に対する境界強度(bS)を導出し、前記bSに基づいて、デブロッキングフィルタリングが前記ターゲット境界に適用されるか否かを決定し、前記決定することの結果に基づいて、前記復元ピクチャに前記デブロッキングフィルタリングを実行し、前記BDPCMに基づいて、量子化されたレジデュアル情報を導出し、前記量子化されたレジデュアル情報及び前記BDPCMに対するBDPCMフラグ情報をエンコーディングすることに基づいて生成される、少なくとも1つのプロセッサと、
前記ビットストリームを含む前記データを送信するよう構成された送信器と、を含み、
前記BDPCMフラグ情報は、前記現在ブロックにBDPCMが適用されるか否かに関連し、
前記現在ブロックのツリータイプはシングルツリータイプであり、前記現在ブロックはクロマコーディングブロックであり、
前記BDPCMが前記現在ブロックに適用されることに基づいて、前記クロマコーディングブロックの前記ターゲット境界に対する前記bSは、0として導出され、
前記ターゲット境界に対する前記bSが0であることに基づいて、前記デブロッキングフィルタリングは、前記ターゲット境界に適用されない、装置
【発明の詳細な説明】
【技術分野】
【0001】
本文書は、映像コーディング技術に関し、より詳細には、映像コーディングシステムにおいてデブロッキングフィルタリングに基づく映像コーディング方法及びその装置に関する。
【背景技術】
【0002】
近年、4Kまたは8K以上のUHD(Ultra High Definition)映像/ビデオのような高解像度、高品質の映像/ビデオに対する需要が様々な分野で増加している。映像/ビデオデータが高解像度、高品質になるほど、既存の映像/ビデオデータに比べて相対的に送信される情報量またはビット量が増加するので、既存の有無線広帯域回線のような媒体を利用して映像データを送信するか、既存の保存媒体を利用して映像/ビデオデータを保存する場合、送信費用と保存費用が増加する。
【0003】
また、近年、VR(Virtual Reality)、AR(Artificial Realtiy)コンテンツやホログラムなどの実感メディア(Immersive Media)に対する関心及び需要が増加しており、ゲーム映像のように、現実映像と異なる映像特性を有する映像/ビデオに対する放送が増加している。
【0004】
これに伴って、前記のような様々な特性を有する高解像度高品質の映像/ビデオの情報を効果的に圧縮して送信するか保存し、再生するために高効率の映像/ビデオ圧縮技術が求められる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本文書の技術的課題は、映像のコーディング効率を高める方法及び装置を提供することにある。
【0006】
本文書の別の技術的課題は、デブロッキングフィルタリングに基づく映像コーディングにおいて変換インデックスコーディングの効率を高める方法及び装置を提供することにある。
【0007】
本文書の別の技術的課題は、BDPCMに基づいてコーディングされた映像に対するデブロッキングフィルタリング方法及び装置を提供することにある。
【0008】
本文書のまた別の技術的課題は、BDPCMに基づいてコーディングされたクロマ成分に対する映像コーディング方法及び装置を提供することにある。
【課題を解決するための手段】
【0009】
本文書の一実施形態に係ると、デコーディング装置によって実行される映像デコーディング方法を提供する。前記方法は、BDPCM情報を含むビットストリームを受信するステップと、前記BDPCM情報に基づいて、現在ブロックに対するレジデュアルサンプルを導出するステップと、前記BDPCM情報に基づいて、現在ブロックに対する予測サンプルを導出するステップと、前記レジデュアルサンプルと前記予測サンプルに基づいて、復元ピクチャを生成するステップと、前記復元ピクチャにデブロッキングフィルタリングを実行するステップと、を含み、前記現在ブロックにBDPCMが適用されると、前記デブロッキングフィルタリングは実行されないことがある。
【0010】
前記BDPCM情報は、前記現在ブロックに前記BDPCMが適用されるか否かを指示するフラグ情報を含み、前記フラグ情報が1であると、前記デブロッキングフィルタリングのための境界強度(boundary strength、bS)は0で導出されることができる。
【0011】
前記現在ブロックは、ルマコーディングブロック又はクロマコーディングブロックを含むことができる。
【0012】
前記現在ブロックのツリータイプがシングルツリータイプであり、前記現在ブロックが前記クロマコーディングブロックであり、前記フラグ情報が1であると、前記境界強度は1で導出されることができる。
【0013】
前記レジデュアルサンプルを導出するステップは、前記BDPCMに基づいて、現在ブロックに対する量子化された変換係数を導出するステップと、前記量子化された変換係数に逆量子化を実行して変換係数を導出されることができる。
【0014】
前記BDPCMが実行される方向に対する方向情報に基づいて、量子化された変換係数が導出できる。
【0015】
前記BDPCMが実行される方向に基づいて、前記現在ブロックに対するイントラ予測サンプルが導出できる。
【0016】
本文書の一実施形態に係ると、エンコーディング装置によって実行される映像エンコーディング方法を提供する。前記方法は、BDPCMに基づいて、現在ブロックに対する予測サンプルを導出するステップと、前記予測サンプルに基づいて前記現在ブロックに対するレジデュアルサンプルを導出するステップと、前記レジデュアルサンプルと前記予測サンプルに基づいて、復元ピクチャを生成するステップと、前記復元ピクチャにデブロッキングフィルタリングを実行するステップと、を含み、前記BDPCMに基づいて量子化されたレジデュアル情報を導出するステップと、前記量子化されたレジデュアル情報及び前記BDPCMに対するBDPCM情報をエンコーディングするステップと、を含み、前記現在ブロックにBDPCMが適用されると、前記デブロッキングフィルタリングは実行されないことがある。
【0017】
本文書のまた別の一実施形態に係ると、エンコーディング装置によって実行された映像エンコーディング方法に従って生成されたエンコーディングされた映像情報、及びビットストリームが含まれた映像データの保存されたデジタル保存媒体が提供できる。
【0018】
本文書のまた別の一実施形態に係ると、デコーディング装置により前記映像デコーディング方法を行うように引き起こすエンコーディングされた映像情報、及びビットストリームが含まれた映像データの保存されたデジタル保存媒体が提供できる。
【発明の効果】
【0019】
本文書にかかると、全般的な映像/ビデオの圧縮効率を高めることができる。
【0020】
本開示にかかると、BDPCMに基づく映像コーディングでデブロッキングフィルタリングの効率を高めることができる。
【0021】
本開示にかかると、BDPCMに基づくクロマ映像のデブロッキングフィルタリングの効率を高めることができる。
【0022】
本明細書の具体的な一例を介して得られる効果は、以上で羅列された効果に制限されない。例えば、関連する技術分野における通常の知識を有する者(a person having ordinary skill in the related art)が、本明細書から理解または誘導できる多様な技術的効果が存在し得る。これによって、本明細書の具体的な効果は、本明細書に明示的に記載されているものに制限されず、本明細書の技術的特徴から理解または誘導できる多様な効果を含み得る。
【図面の簡単な説明】
【0023】
図1】本文書が適用できるビデオ/映像コーディングシステムの例を概略的に示す。
【0024】
図2】本文書が適用できるビデオ/映像エンコーディング装置の構成を概略的に説明する図である。
【0025】
図3】本文書が適用できるビデオ/映像デコーディング装置の構成を概略的に説明する図である。
【0026】
図4】一例によるデブロッキングフィルタリング過程を説明する制御フローチャートである。
【0027】
図5】ブロックの境界に位置するサンプルを示した図である。
【0028】
図6】本文書の一実施形態に係るbS決定方法を示している図である。
【0029】
図7】本文書の一実施形態に係る映像デコーディング方法を説明するための制御フローチャートである。
【0030】
図8】本文書の一実施形態に係る映像エンコーディング方法を説明するための制御フローチャートである。
【0031】
図9】本文書が適用されるコンテンツストリーミングシステムの構造図を例示的に示す。
【発明を実施するための形態】
【0032】
本文書は、様々な変更を加えることができ、様々な実施形態を有することができるが、特定の実施形態を図面に例示し、詳細に説明しようとする。しかし、これは、本文書を特定の実施形態に限定しようとするわけではない。本明細書で常用する用語は、単に特定の実施形態を説明するために使用されたものであって、本文書における技術的思想を限定しようとする意図に使用されるわけではない。単数の表現は、文脈上明らかに異なる意味ではない限り、複数の表現を含む。本明細書において、「含む」又は「有する」等の用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものが存在することを指定しようとするものであり、1つ又はそれ以上の異なる特徴や、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものの存在又は付加の可能性を予め排除しないものと理解されるべきである。
【0033】
一方、本文書で説明される図面上の各構成は、互いに異なる特徴的な機能に関する説明の便宜のために独立して示すものであって、各構成が互いに別個のハードウェアや別個のソフトウェアで具現されるということを意味するのではない。例えば、各構成のうち、2つ以上の構成が合わせられて1つの構成をなすこともあり、1つの構成が複数の構成に分けられることもある。各構成が統合及び/又は分離された実施形態も、本文書の本質から外れない限り、本文書の権利範囲に含まれる。
【0034】
以下、添付図を参照として、本文書の好ましい実施例をより詳細に説明しようとする。以下、図面上の同じ構成要素に対しては同じ参照符号を使用し、同じ構成要素に対して重複した説明は省略する。
【0035】
本文書は、ビデオ/映像コーディングに関する。例えば、本文書で開示された方法/実施例は、VVC(Versatile Video Coding)標準(ITU-T Rec. H.266)、VVC以降の次世代ビデオ/イメージのコーディング標準、又はそれ以外のビデオコーディング関連の標準(例えば、HEVC(High Efficiency Video Coding)標準(ITU-T Rec. H.265)、EVC(essential video coding)標準、AVS2標準等)と関連し得る。
【0036】
本文書では、ビデオ/映像コーディングに関する多様な実施形態を提示し、別の言及がない限り、前記実施形態は互いに組み合わせて実行することもある。
【0037】
本文書で、ビデオ(video)は、時間の流れによる一連の映像(image)の集合を意味することができる。ピクチャ(picture)は、一般的に特定の時間帯における1つの映像を示す単位を意味し、スライス(slice)/タイル(tile)は、コーディングにおいてピクチャの一部を構成する単位である。スライス/タイルは、1つ以上のCTU(coding tree unit)を含むことができる。1つのピクチャは、1つ以上のスライス/タイルで構成されることができる。1つのピクチャは、1つ以上のタイルグループで構成されることができる。1つのタイルグループは、1つ以上のタイルを含むことができる。
【0038】
ピクセル(pixel)又はペル(pel)は、1つのピクチャ(又は映像)を構成する最小の単位を意味することができる。また、ピクセルに対応する用語として「サンプル(sample)」が使用できる。サンプルは、一般的にピクセル又はピクセルの値を示すことがあり、ルマ(luma)成分のピクセル/ピクセル値のみを示すこともあり、クロマ(chroma)成分のピクセル/ピクセル値のみを示すこともある。或いは、サンプルは空間ドメインでのピクセル値を意味することもあり、このようなピクセル値が周波数ドメインに変換されると、周波数ドメインでの変換係数を意味することもある。
【0039】
ユニット(unit)は、映像処理の基本単位を示すことができる。ユニットは、ピクチャの特定領域及び当該領域に関する情報の少なくとも一つを含むことができる。1つのユニットは、1つのルマブロック及び2つのクロマ(例えば、cb、cr)ブロックを含むことができる。ユニットは、場合に応じて、ブロック(block)又は領域(area)等の用語と混用して使用されてもよい。一般的な場合、M×Nブロックは、M個の列とN個の行とからなるサンプル(又はサンプルアレイ)又は変換係数(transform coefficient)の集合(又はアレイ)を含むことができる。
【0040】
本文書において、「/」及び「、」は、「及び/又は」と解釈される。例えば、「A/B」は、「A及び/又はB」と解釈され、「A、B」は、「A及び/又はB」と解釈される。さらに、「A/B/C」は、「A、B及び/又はCの少なくとも1つ」を意味する。また、「A、B、C」も、「A、B及び/又はCの少なくとも1つ」を意味する。(In this document,the term “/” and “,” should be interpreted to indicate “and/or.” For instance,the expression “A/B” may mean “A and/or B.” Further,“A, B” may mean “A and/or B.” Further, “A/B/C” may mean “at least one of A,B, and/or C.” Also,“A/B/C” may mean “at least one of A,B,and/or C.”)
【0041】
さらに、本文書において、「又は」は、「及び/又は」と解釈される。例えば、「A又はB」は、1)「A」のみを意味し、2)「B」のみを意味するか、3)「A及びB」を意味し得る。言い換えると、本文書の「又は」は、「さらに又は代案として(additionally or alternatively)」を意味し得る。(Further,in the document,the term “or” should be interpreted to indicate “and/or.” For instance,the expression “A or B” may comprise 1)only A,2)only B,and/or 3)both A and B. In other words,the term “or” in this document should be interpreted to indicate “additionally or alternatively.”)
【0042】
本明細書において、「少なくとも1つのA及びB(at least one of A and B)」は、「ただA」、「ただB」又は「A及びB両方」を意味し得る。また、本明細書において、「少なくとも1つのA又はB(at least one of A or B)」や「少なくとも1つのA及び/又はB(at least one of A and/or B)」という表現は、「少なくとも1つのA及びB(at least one of A and B)」と同様に解釈され得る。
【0043】
また、本明細書において、「少なくとも1つのA、B及びC(at least one of A, B and C)」は、「ただA」、「ただB」、「ただC」、又は「A、B及びCの任意の全ての組み合わせ(any combination of A, B and C)」を意味し得る。また、「少なくとも1つのA、B又はC(at least one of A, B or C)」や「少なくとも1つのA、B及び/又はC(at least one of A, B and/or C)」は、「少なくとも1つのA、B及びC(at least one of A, B and C)」を意味し得る。
【0044】
また、本明細書で使用される括弧は、「例えば(for example)」を意味し得る。具体的に、「予測(イントラ予測)」で表示された場合、「予測」の一例として「イントラ予測」が提案されたものであり得る。言い換えると、本明細書の「予測」は、「イントラ予測」に制限(limit)されず、「イントラ予測」が「予測」の一例として提案されたものであり得る。また、「予測(すなわち、イントラ予測)」で表示された場合にも、「予測」の一例として「イントラ予測」が提案されたものであり得る。
【0045】
本明細書において一つの図面内で個別的に説明される技術的特徴は、個別的に具現されてもよく、同時に具現されてもよい。
【0046】
図1は、本文書が適用できるビデオ/映像コーディングシステムの例を概略的に示す。
【0047】
図1を参照すると、ビデオ/映像コーディングシステムは、ソースデバイス及び受信デバイスを含むことができる。ソースデバイスは、エンコーディングされたビデオ(video)/映像(image)情報またはデータをファイルまたはストリーミングの形態でデジタル保存媒体またはネットワークを介して受信デバイスに伝達することができる。
【0048】
前記ソースデバイスは、ビデオソース、エンコーディング装置、送信部を含むことができる。前記受信デバイスは、受信部、デコーディング装置、及びレンダラーを含むことができる。前記エンコーディング装置は、ビデオ/映像エンコーディング装置と呼ばれ得、前記デコーディング装置は、ビデオ/映像デコーディング装置と呼ばれ得る。送信機は、エンコーディング装置に含まれることができる。受信機は、デコーディング装置に含まれることができる。レンダラーは、ディスプレイ部を含むこともでき、ディスプレイ部は、別個のデバイスまたは外部コンポーネントで構成されることもできる。
【0049】
ビデオソースは、ビデオ/映像のキャプチャ、合成、または生成過程などを介してビデオ/映像を獲得できる。ビデオソースは、ビデオ/映像のキャプチャデバイス及び/又はビデオ/映像の生成デバイスを含むことができる。ビデオ/映像のキャプチャデバイスは、例えば、1つ以上のカメラ、以前にキャプチャされたビデオ/映像を含むビデオ/映像アーカイブなどを含むことができる。ビデオ/映像の生成デバイスは、例えば、コンピュータ、タブレット、及びスマートフォンなどを含むことができ、(電子的に)ビデオ/映像を生成できる。例えば、コンピュータなどを介して仮想のビデオ/映像が生成され得るし、この場合、関連データが生成される過程にビデオ/映像のキャプチャ過程が代替されることができる。
【0050】
エンコーディング装置は、入力ビデオ/映像をエンコーディングすることができる。エンコーディング装置は、圧縮及びコーディング効率のために、予測、変換、量子化など、一連の手順を行うことができる。エンコーディングされたデータ(エンコーディングされたビデオ/映像情報)は、ビットストリーム(bitstream)の形態で出力されることができる。
【0051】
送信部は、ビットストリームの形態で出力されたエンコーディングされたビデオ/映像情報またはデータをファイルまたはストリーミングの形態でデジタル保存媒体またはネットワークを介して受信デバイスの受信部に伝達することができる。デジタル保存媒体は、USB、SD、CD、DVD、ブルーレイ、HDD、SSDなど、様々な保存媒体を含むことができる。送信部は、予め決められたファイルフォーマットを介してメディアファイルを生成するためのエレメントを含むことができ、放送/通信ネットワークを介した送信のためのエレメントを含むことができる。受信部は、前記ビットストリームを受信/抽出してデコーディング装置に伝達することができる。
【0052】
デコーディング装置は、エンコーディング装置の動作に対応する逆量子化、逆変換、予測など、一連の手順を行ってビデオ/映像をデコーディングすることができる。
【0053】
レンダラーは、デコーディングされたビデオ/映像をレンダリングすることができる。レンダリングされたビデオ/映像は、ディスプレイ部を介してディスプレイされることができる。
【0054】
図2は、本文書が適用できるビデオ/映像エンコーディング装置の構成を概略的に説明する図面である。以下、ビデオエンコーディング装置とは、映像エンコーディング装置を含むことができる。
【0055】
図2を参照すると、エンコーディング装置200は、映像分割部(image partitioner)210、予測部(predictor)220、レジデュアル処理部(residual processor)230、エントロピーエンコーディング部(entropy encoder)240、加算部(adder)250、フィルタリング部(filter)260、及びメモリ(memory)270を含めて構成されることができる。予測部220は、インター予測部221及びイントラ予測部222を含むことができる。レジデュアル処理部230は、変換部(transformer)232、量子化部(quantizer)233、逆量子化部(dequantizer)234、逆変換部(inverse transformer)235を含むことができる。レジデュアル処理部230は、減算部(subtractor)231をさらに含むことができる。加算部250は、復元部(reconstructor)または復元ブロック生成部(recontructged block generator)と呼ばれ得る。前述した映像分割部210、予測部220、レジデュアル処理部230、エントロピーエンコーディング部240、加算部250、及びフィルタリング部260は、実施形態によって1つ以上のハードウェアコンポーネント(例えば、エンコーダチップセットまたはプロセッサ)によって構成されることができる。また、メモリ270は、DPB(decoded picture buffer)を含むことができ、デジタル保存媒体によって構成されることもできる。前記ハードウェアコンポーネントは、メモリ270を内/外部コンポーネントとしてさらに含むこともできる。
【0056】
映像分割部210は、エンコーディング装置200に入力された入力映像(または、ピクチャ、フレーム)を1つ以上の処理ユニット(processing unit)に分割することができる。一例として、前記処理ユニットは、コーディングユニット(coding unit、CU)と呼ばれ得る。この場合、コーディングユニットは、コーディングツリーユニット(coding tree unit、CTU)または最大コーディングユニット(largest coding unit、LCU)からQTBTTT(Quad-tree binary-tree ternary-tree)構造によって再帰的に(recursively)分割されることができる。例えば、1つのコーディングユニットは、クアッドツリー構造、バイナリツリー構造、及び/又はターナリ構造に基づいて下位(deeper)デプスの複数のコーディングユニットに分割されることができる。この場合、例えば、クアッドツリー構造が先に適用され、バイナリツリー構造及び/又はターナリ構造がその後に適用されることができる。または、バイナリツリー構造が先に適用されることもできる。それ以上分割されない最終コーディングユニットに基づいて、本文書に係るコーディング手順が行われ得る。この場合、映像特性によるコーディング効率などに基づいて、最大コーディングユニットがすぐに最終コーディングユニットとして使用されることができ、または、必要に応じてコーディングユニットは、再帰的に(recursively)もっと下位デプスのコーディングユニットに分割されて、最適のサイズのコーディングユニットが最終コーディングユニットとして使用されることができる。ここで、コーディング手順とは、後述する予測、変換、及び復元などの手順を含むことができる。他の例として、前記処理ユニットは、予測ユニット(PU:Prediction Unit)または変換ユニット(TU:Transform Unit)をさらに含むことができる。この場合、前記予測ユニット及び前記変換ユニットは、各々上述した最終コーディングユニットから分割またはパーティショニングされることができる。前記予測ユニットは、サンプル予測の単位であってもよく、前記変換ユニットは、変換係数を導く単位及び/又は変換係数からレジデュアル信号(residual signal)を導く単位であってもよい。
【0057】
ユニットは、場合に応じて、ブロック(block)または領域(area)などの用語と混用して使用されることができる。一般的な場合、M×Nブロックは、M個の列とN個の行とからなるサンプルまたは変換係数(transform coefficient)の集合を示すことができる。サンプルは、一般的にピクセルまたはピクセルの値を示すことができ、輝度(luma)成分のピクセル/ピクセル値のみを示すこともでき、彩度(chroma)成分のピクセル/ピクセル値のみを示すこともできる。サンプルは、1つのピクチャ(または、映像)をピクセル(pixel)またはペル(pel)に対応する用語として使用できる。
【0058】
減算部231は、入力映像信号(原本ブロック、原本サンプル又は原本サンプルアレイ)で予測部220から出力された予測信号(予測されたブロック、予測サンプル又は予測サンプルアレイ)を減算してレジデュアル信号(レジデュアルブロック、レジデュアルサンプル又はレジデュアルサンプルアレイ)を生成でき、生成されたレジデュアル信号は、変換部232に送信される。予測部220は、処理対象ブロック(以下、現在ブロックという)に対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成できる。予測部220は、現在ブロックまたはCU単位でイントラ予測が適用されるか、またはインター予測が適用されるか決定することができる。予測部は、各予測モードについての説明で後述するように、予測モード情報など、予測に関する様々な情報を生成してエントロピーエンコーディング部240に伝達することができる。予測に関する情報は、エントロピーエンコーディング部240でエンコーディングされてビットストリームの形態で出力されることができる。
【0059】
イントラ予測部222は、現在ピクチャ内のサンプルを参照して現在ブロックを予測できる。前記参照されるサンプルは、予測モードによって前記現在ブロックの周辺(neighbor)に位置してもよく、または、離れて位置してもよい。イントラ予測における予測モードは、複数の非方向性モードと複数の方向性モードとを含むことができる。非方向性モードは、例えば、DCモード及びプラナーモード(Planarモード)を含むことができる。方向性モードは、予測方向の細かい程度によって、例えば、33個の方向性予測モードまたは65個の方向性予測モードを含むことができる。ただし、これは、例示であり、設定に応じてそれ以上またはそれ以下の個数の方向性予測モードが使用され得る。イントラ予測部222は、周辺ブロックに適用された予測モードを用いて、現在ブロックに適用される予測モードを決定することもできる。
【0060】
インター予測部221は、参照ピクチャ上で動きベクトルにより特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを導くことができる。そのとき、インター予測モードで送信される動き情報の量を減らすために、周辺ブロックと現在ブロックとの間の動き情報の相関性に基づいて、動き情報をブロック、サブブロック、またはサンプル単位で予測することができる。前記動き情報は、動きベクトル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方向(L0予測、L1予測、Bi予測等)情報をさらに含むことができる。インター予測の場合に、周辺ブロックは、現在ピクチャ内に存在する空間的周辺ブロック(spatial neighboring block)と参照ピクチャに存在する時間的周辺ブロック(temporal neighboring block)とを含むことができる。前記参照ブロックを含む参照ピクチャと前記時間的周辺ブロックを含む参照ピクチャとは同じであってもよく、異なってもよい。前記時間的周辺ブロックは、同一位置参照ブロック(collocated reference block)、同一位置CU(col CU)などの名前で呼ばれ得、前記時間的周辺ブロックを含む参照ピクチャは、同一位置ピクチャ(collocated picture、colPic)とも呼ばれ得る。例えば、インター予測部221は、周辺ブロックに基づいて動き情報候補リストを構成し、前記現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導出するために、どの候補が使用されるかを指示する情報を生成できる。様々な予測モードに基づいてインター予測が実行されることができ、例えば、スキップモードとマージモードの場合に、インター予測部221は、周辺ブロックの動き情報を現在ブロックの動き情報として用いることができる。スキップモードの場合、マージモードと異なり、レジデュアル信号が送信されないことがある。動き情報予測(motion vector prediction、MVP)モードの場合、周辺ブロックの動きベクトルを動きベクトル予測子(motion vector predictor)として用い、動きベクトル差分(motion vector difference)をシグナリングすることにより、現在ブロックの動きベクトルを指示することができる。
【0061】
予測部220は、後述する様々な予測方法に基づいて予測信号を生成できる。例えば、予測部は、1つのブロックに対する予測のために、イントラ予測またはインター予測を適用できるだけでなく、イントラ予測とインター予測とを同時に適用することができる。これは、combined inter and intra prediction(CIIP)と呼ばれ得る。また、予測部は、ブロックに対する予測のために、イントラブロックコピー(intra block copy、IBC)を実行することもできる。前記イントラブロックコピーは、例えば、SCC(screen content coding)などのように、ゲームなどのコンテンツ映像/動画のコーディングのために使用されることができる。IBCは、基本的に現在ピクチャ内で予測を実行するが、現在ピクチャ内で参照ブロックを導出する点においてインター予測と同様に実行されることができる。すなわち、IBCは、本文書において説明されるインター予測技法の少なくとも1つを用いることができる。
【0062】
インター予測部221及び/又はイントラ予測部222を介して生成された予測信号は、復元信号を生成するために用いられるか、レジデュアル信号を生成するために用いられることができる。変換部232は、レジデュアル信号に変換技法を適用して、変換係数(transform coefficients)を生成することができる。例えば、変換技法は、DCT(Discrete Cosine Transform)、DST(Discrete Sine Transform)、GBT(Graph-Based Transform)、又はCNT(Conditionally Non-linear Transform)等を含むことができる。ここで、GBTは、ピクセル間の関係情報をグラフで表現するという際に、このグラフから得られた変換を意味する。CNTは、以前に復元された全てのピクセル(all previously reconstructed pixel)を用いて予測信号を生成し、それに基づいて獲得される変換を意味する。また、変換過程は正方形の同じサイズを有するピクセルブロックに適用されてもよく、正方形ではない可変サイズのブロックに適用されてもよい。
【0063】
量子化部233は、変換係数を量子化してエントロピーエンコーディング部240に送信され、エントロピーエンコーディング部240は、量子化された信号(量子化された変換係数に関する情報)をエンコーディングしてビットストリームに出力することができる。前記量子化された変換係数に関する情報は、レジデュアル情報と呼ばれ得る。量子化部233は、係数のスキャン順序(scan order)に基づいて、ブロック形態の量子化された変換係数を1次元ベクトルの形態で再整列することができ、前記1次元ベクトルの形態の量子化された変換係数に基づいて、前記量子化された変換係数に関する情報を生成することもできる。エントロピーエンコーディング部240は、例えば、指数ゴロム(exponential Golomb)、CAVLC(context-adaptive variable length coding)、CABAC(context-adaptive binary arithmetic coding)などのような様々なエンコーディング方法を行うことができる。エントロピーエンコーディング部240は、量子化された変換係数の他に、ビデオ/イメージの復元に必要な情報(例えば、シンタックス要素(syntax elements)の値等)を共にまたは別にエンコーディングすることもできる。エンコーディングされた情報(例えば、エンコーディングされたビデオ/映像情報)は、ビットストリームの形態でNAL(network abstraction layer)ユニット単位で送信または保存されることができる。前記ビデオ/映像情報は、アダプテーションパラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)、またはビデオパラメータセット(VPS)等、様々なパラメータセットに関する情報をさらに含むことができる。また、前記ビデオ/映像情報は、一般制限情報(general constraint information)をさらに含むことができる。本文書において、後述されるシグナリング/送信される情報及び/又はシンタックス要素は、前述したエンコーディング手順を介してエンコーディングされて、前記ビットストリームに含まれ得る。前記ビットストリームは、ネットワークを介して送信され得、またはデジタル保存媒体に保存され得る。ここで、ネットワークは、放送網及び/又は通信網などを含み得、デジタル保存媒体は、USB、SD、CD、DVD、ブルーレイ、HDD、SSDなど、様々な保存媒体を含み得る。エントロピーエンコーディング部240から出力された信号は、送信する送信部(図示せず)及び/又は保存する保存部(図示せず)がエンコーディング装置200の内/外部エレメントとして構成されてもよく、または送信部は、エントロピーエンコーディング部240に含まれてもよい。
【0064】
量子化部233から出力された量子化された変換係数は、予測信号を生成するために用いられることができる。例えば、量子化された変換係数に逆量子化部234及び逆変換部235を介して逆量子化及び逆変換を適用することにより、レジデュアル信号(レジデュアルブロックまたはレジデュアルサンプル)を復元できる。加算部250は、復元されたレジデュアル信号を予測部220から出力された予測信号に加えることにより、復元(reconstructed)信号(復元ピクチャ、復元ブロック、復元サンプル又は復元サンプルアレイ)が生成できる。スキップモードが適用された場合のように、処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用できる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用されることができ、後述するように、フィルタリングを経て次のピクチャのインター予測のために使用されることもできる。
【0065】
一方、ピクチャエンコーディング及び/又は復元過程でLMCS(luma mapping with chroma scaling)が適用されることもできる。
【0066】
フィルタリング部260は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部260は、復元ピクチャに様々なフィルタリング方法を適用して修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ270、具体的に、メモリ270のDPBに保存することができる。前記様々なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset、SAO)、適応的ループフィルタ(adaptive loop filter)、両方向フィルタ(bilateral filter)などを含むことができる。フィルタリング部260は、各フィルタリング方法についての説明で後述するように、フィルタリングに関する様々な情報を生成してエントロピーエンコーディング部290に伝達することができる。フィルタリング関する情報は、エントロピーエンコーディング部290でエンコーディングされてビットストリームの形態で出力されることができる。
【0067】
メモリ270に送信された修正された復元ピクチャは、インター予測部280で参照ピクチャとして使用されることができる。エンコーディング装置は、これを介してインター予測が適用される場合、エンコーディング装置200とデコーディング装置における予測のミスマッチを避けることができ、符号化効率も向上させることができる。
【0068】
メモリ270のDPBは、修正された復元ピクチャをインター予測部221における参照ピクチャとして使用するために保存することができる。メモリ270は、現在ピクチャ内の動き情報が導出された(または、エンコーディングされた)ブロックの動き情報及び/又は既に復元されたピクチャ内のブロックの動き情報を保存することができる。前記保存された動き情報は、空間的周辺ブロックの動き情報または時間的周辺ブロックの動き情報として活用するために、インター予測部221に伝達することができる。メモリ270は、現在ピクチャ内の復元されたブロックの復元サンプルを保存することができ、イントラ予測部222に伝達することができる。
【0069】
図3は、本文書が適用できるビデオ/映像デコーディング装置の構成を概略的に説明する図面である。
【0070】
図3を参照すると、デコーディング装置300は、エントロピーデコーディング部(entropy decoder)310、レジデュアル処理部(residual processor)320、予測部(predictor)330、加算部(adder)340、フィルタリング部(filter)350、及びメモリ(memoery)360を含めて構成されることができる。予測部330は、インター予測部331及びイントラ予測部332を含むことができる。レジデュアル処理部320は、逆量子化部(dequantizer)321及び逆変換部(inverse transformer)321を含むことができる。前述したエントロピーデコーディング部310、レジデュアル処理部320、予測部330、加算部340、及びフィルタリング部350は、実施形態によって1つのハードウェアコンポーネント(例えば、デコーダチップセットまたはプロセッサ)により構成されることができる。また、メモリ360は、DPB(decoded picture buffer)を含むことができ、デジタル保存媒体により構成されることもできる。前記ハードウェアコンポーネントは、メモリ360を内/外部コンポーネントとしてさらに含むこともできる。
【0071】
ビデオ/映像情報を含むビットストリームが入力されると、デコーディング装置300は、図2のエンコーディング装置でビデオ/映像情報が処理されたプロセスに対応して映像を復元できる。例えば、デコーディング装置300は、前記ビットストリームから獲得したブロック分割に関する情報に基づいてユニット/ブロックを導出できる。デコーディング装置300は、エンコーディング装置で適用された処理ユニットを用いてデコーディングを実行することができる。したがって、デコーディングの処理ユニットは、例えば、コーディングユニットであってもよく、コーディングユニットは、コーディングツリーユニットまたは最大コーディングユニットからクアッドツリー構造、バイナリツリー構造、及び/又はターナリツリー構造にしたがって分割されることができる。コーディングユニットから1つ以上の変換ユニットが導出できる。そして、デコーディング装置300を介してデコーディング及び出力された復元映像信号は、再生装置を介して再生されることができる。
【0072】
デコーディング装置300は、図2のエンコーディング装置から出力された信号をビットストリームの形態で受信することができ、受信された信号は、エントロピーデコーディング部310を介してデコーディングされることができる。例えば、エントロピーデコーディング部310は、前記ビットストリームをパーシングして映像復元(または、ピクチャ復元)に必要な情報(例えば、ビデオ/映像情報)を導出できる。前記ビデオ/映像情報は、アダプテーションパラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)、またはビデオパラメータセット(VPS)など、様々なパラメータセットに関する情報をさらに含むことができる。また、前記ビデオ/映像情報は、一般制限情報(general constraint information)をさらに含むことができる。デコーディング装置は、前記パラメータセットに関する情報及び/又は前記一般制限情報に基づいてさらにピクチャをデコーディングすることができる。本文書において後述されるシグナリング/受信される情報及び/又はシンタックス要素は、前記デコーディング手順を介してデコーディングされて、前記ビットストリームから獲得されることができる。例えば、エントロピーデコーディング部310は、指数ゴロム符号化、CAVLC、またはCABACなどのコーディング方法を基にビットストリーム内の情報をデコーディングし、映像の復元に必要なシンタックスエレメントの値、レジデュアルに関する変換係数の量子化された値を出力できる。より詳細に、CABACエントロピーデコーディング方法は、ビットストリームで各シンタックス要素に当該するビンを受信し、デコーディング対象のシンタックス要素情報、周辺及びデコーディング対象ブロックのデコーディング情報、あるいは以前ステップでデコーディングされたシンボル/ビンの情報を利用して文脈(context)モデルを決定し、決定された文脈モデルによってビン(bin)の発生確率を予測してビンの算術デコーディング(arithmetic decoding)を実行し、各シンタックス要素の値に当該するシンボルを生成できる。そのとき、CABACエントロピーデコーディング方法は、文脈モデルの決定後、次のシンボル/ビンの文脈モデルのためにデコーディングされたシンボル/ビンの情報を利用して文脈モデルをアップデートすることができる。エントロピーデコーディング部310でデコーディングされた情報のうち、予測に関する情報は、予測部330に提供され、エントロピーデコーディング部310でエントロピーデコーディングが実行されたレジデュアルに関する情報、すなわち、量子化された変換係数及び関連のパラメータ情報は、逆量子化部321に入力されることができる。また、エントロピーデコーディング310でデコーディングされた情報のうち、フィルタリングに関する情報は、フィルタリング部350に提供されることができる。一方、エンコーディング装置から出力された信号を受信する受信部(図示せず)がデコーディング装置300の内/外部エレメントとしてさらに構成され得、または受信部は、エントロピーデコーディング部310の構成要素であり得る。一方、本文書に係るデコーディング装置は、ビデオ/映像/ピクチャデコーディング装置と呼ばれ得、前記デコーディング装置は、情報デコーダ(ビデオ/映像/ピクチャ情報デコーダ)及びサンプルデコーダ(ビデオ/映像/ピクチャサンプルデコーダ)に区分することもできる。前記情報デコーダは、前記エントロピーデコーディング部310を含むことができ、前記サンプルデコーダは、前記逆量子化部321、逆変換部322、予測部330、加算部340、フィルタリング部350、及びメモリ360の少なくとも1つを含むことができる。
【0073】
逆量子化部321では、量子化された変換係数を逆量子化して変換係数を出力できる。逆量子化部321は、量子化された変換係数を2次元のブロック形態で再整列することができる。この場合、前記再整列は、エンコーディング装置で行われた係数のスキャン順序に基づいて再整列を行うことができる。逆量子化部321は、量子化パラメータ(例えば、量子化ステップサイズ情報)を用いて量子化された変換係数に対する逆量子化を実行し、変換係数(transform coefficient)を獲得できる。
【0074】
逆変換部322では、変換係数を逆変換してレジデュアル信号(レジデュアルブロック、レジデュアルサンプルアレイ)を獲得することになる。
【0075】
予測部は、現在ブロックに対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成できる。予測部は、エントロピーデコーディング部310から出力された前記予測に関する情報に基づいて、前記現在ブロックにイントラ予測が適用されるか、またはインター予測が適用されるか決定することができ、具体的なイントラ/インター予測モードを決定できる。
【0076】
予測部は、後述する様々な予測方法に基づいて予測信号を生成できる。例えば、予測部は、1つのブロックに対する予測のために、イントラ予測またはインター予測を適用できるだけでなく、イントラ予測とインター予測とを同時に適用することができる。これは、combined inter and intra prediction(CIIP)と呼ばれ得る。また、予測部は、ブロックに対する予測のために、イントラブロックコピー(intra block copy、IBC)を行うこともある。前記イントラブロックコピーは、例えば、SCC(screen content coding)などのように、ゲームなどのコンテンツ映像/動画コーディングのために使用されることができる。IBCは、基本的に現在ピクチャ内で予測を実行するが、現在ピクチャ内で参照ブロックを導出する点においてインター予測と同様に実行されることができる。すなわち、IBCは、本文書において説明されるインター予測技法の少なくとも1つを利用することができる。
【0077】
イントラ予測部332は、現在ピクチャ内のサンプルを参照して現在ブロックを予測できる。前記参照されるサンプルは、予測モードによって前記現在ブロックの周辺(neighbor)に位置してもよく、または離れて位置してもよい。イントラ予測における予測モードは、複数の非方向性モードと複数の方向性モードとを含むことができる。イントラ予測部332は、周辺ブロックに適用された予測モードを用いて、現在ブロックに適用される予測モードを決定することもできる。
【0078】
インター予測部331は、参照ピクチャ上で動きベクトルにより特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを導くことができる。そのとき、インター予測モードで送信される動き情報の量を減らすために、周辺ブロックと現在ブロックとの間の動き情報の相関性に基づいて動き情報をブロック、サブブロック、またはサンプル単位で予測することができる。前記動き情報は、動きベクトル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方向(L0予測、L1予測、Bi予測等)情報をさらに含むことができる。インター予測の場合に、周辺ブロックは、現在ピクチャ内に存在する空間的周辺ブロック(spatial neighboring block)と参照ピクチャに存在する時間的周辺ブロック(temporal neighboring block)とを含むことができる。例えば、インター予測部331は、周辺ブロックに基づいて動き情報候補リストを構成し、受信した候補選択情報に基づいて前記現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導出できる。様々な予測モードに基づいてインター予測が実行されることができ、前記予測に関する情報は、前記現在ブロックに対するインター予測のモードを指示する情報を含むことができる。
【0079】
加算部340は、獲得されたレジデュアル信号を予測部330から出力された予測信号(予測されたブロック、予測サンプルアレイ)に加えることにより、復元信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成できる。スキップモードが適用された場合のように、処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用されることができる。
【0080】
加算部340は、復元部または復元ブロック生成部と呼ばれ得る。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用されることができ、後述するように、フィルタリングを経て出力されてもよく、または次のピクチャのインター予測のために使用されてもよい。
【0081】
一方、ピクチャデコーディング過程でLMCS(luma mapping with chroma scaling)が適用されることもできる。
【0082】
フィルタリング部350は、復元信号にフィルタリングを適用して、主観的/客観的画質を向上させることができる。例えば、フィルタリング部350は、復元ピクチャに様々なフィルタリング方法を適用して修正された(modified)復元ピクチャを生成でき、前記修正された復元ピクチャをメモリ360、具体的に、メモリ360のDPBに送信することができる。前記様々なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、両方向フィルタ(bilateral filter)などを含むことができる。
【0083】
メモリ360のDPBに保存された(修正された)復元ピクチャは、インター予測部331で参照ピクチャとして使用されることができる。メモリ360は、現在ピクチャ内の動き情報が導出された(または、デコーディングされた)ブロックの動き情報及び/又は既に復元されたピクチャ内のブロックの動き情報を保存できる。前記保存された動き情報は、空間的周辺ブロックの動き情報または時間的周辺ブロックの動き情報として活用するために、インター予測部331に伝達することができる。メモリ360は、現在ピクチャ内の復元されたブロックの復元サンプルを保存でき、イントラ予測部332に伝達することができる。
【0084】
本明細書において、デコーディング装置300の予測部330、逆量子化部321、逆変換部322、及びフィルタリング部350等で説明された実施形態は、各々デコーディング装置200の予測部220、逆量子化部234、逆変換部235及びフィルタリング部260等にも同一または対応するように適用されることができる。
【0085】
前述したように、ビデオコーディングを実行するにあたって、圧縮効率を高めるために予測を実行する。これを通じて、コーディングの対象ブロックである現在ブロックに対する予測サンプルを含む予測されたブロックを生成することができる。ここで、前記予測されたブロックは、空間ドメイン(又はピクセルドメイン)での予測サンプルを含む。前記予測されたブロックは、エンコーディング装置及びデコーディング装置で同様に導出され、前記エンコーディング装置は、原本ブロックの原本サンプル値そのものではなく、前記原本ブロックと前記予測されたブロックとの間のレジデュアルに対する情報(レジデュアル情報)をデコーディング装置にシグナリングすることによって映像コーディングの効率を高めることができる。デコーディング装置は、前記レジデュアル情報に基づいてレジデュアルサンプルを含むレジデュアルブロックを導出し、前記レジデュアルブロックと前記予測されたブロックとを合わせて、復元サンプルを含む復元ブロックを生成することができ、復元ブロックを含む復元ピクチャを生成することができる。
【0086】
前記レジデュアル情報は、変換及び量子化手順を通じて生成されることができる。例えば、エンコーディング装置は、前記原本ブロックと前記予測されたブロックとの間のレジデュアルブロックを導出し、前記レジデュアルブロックに含まれたレジデュアルサンプル(レジデュアルサンプルアレイ)に変換手順を行って変換係数を導出し、前記変換係数に量子化手順を行って量子化された変換係数を導出し、関連したレジデュアル情報を(ビットストリームを介して)デコーディング装置にシグナリングできる。ここで、前記レジデュアル情報は、前記量子化された変換係数の値情報、位置情報、変換技法、変換カーネル、量子化パラメータ等の情報を含むことができる。デコーディング装置は、前記レジデュアル情報に基づいて逆量子化/逆変換手順を行い、レジデュアルサンプル(又はレジデュアルブロック)を導出することができる。デコーディング装置は、予測されたブロックと前記レジデュアルブロックとに基づいて復元ピクチャを生成することができる。また、エンコーディング装置は、以降のピクチャのインター予測のための参照のために量子化された変換係数を逆量子化/逆変換してレジデュアルブロックを導出し、これに基づいて復元ピクチャを生成することができる。
【0087】
一方、一実施形態に係り、BDPCM(block differential pulse coded modulation又はBlock-based Delta Pulse Code Modulation)技法が使用され得る。BDPCMは、RDPCM(quantized Residual block-based Delta Pulse Code Modulation)と名付けられることもある。
【0088】
BDPCMを適用してブロックを予測する場合、ブロックの行又は列をラインバイラインで予測するために、復元されたサンプルを活用する。そのとき、使用された参照ピクセルはフィルタリングされていないサンプルであり得る。BDPCMの方向は、垂直方向又は水平方向の予測が使用されているか否かを示すことができる。予測誤謬(prediction error)は、空間的ドメインで量子化され、ピクセルは予測に逆量子化された予測誤謬を加えることによって復元される。このようなBDPCMの代案として、量子化されたレジデュアルドメインのBDPCMが提案され得、予測方向やシグナリングは、空間的ドメインに適用されたBDPCMと同一であり得る。すなわち、量子化されたレジデュアルドメインのBDPCMを介して量子化係数そのものをDPCM(Delta Pulse Code Modulation)のように重ねた後、逆量子化を介してレジデュアルを復元することができる。従って、量子化されたレジデュアルドメインBDPCMは、レジデュアルコーディング端でDPCMを適用するという意味で使用されることができる。以下で使用される量子化されたレジデュアルドメインは、予測に基づいて導出されたレジデュアルが変換なしで量子化されたものであって、量子化されたレジデュアルサンプルに対するドメインを意味する。
【0089】
M(行)XN(列)サイズのブロックに対して、左側又は上側の境界サンプルのうち、フィルタリングされていないサンプルを用いて水平方向にイントラ予測(左側の周辺ピクセルラインをラインバイラインで予測ブロックにコピーする)又は垂直方向にイントラ予測(上側の周辺ラインをラインバイラインで予測ブロックにコピーする)を実行した予測レジデュアルをr(i,j)(0≦i≦M-1、0≦j≦N-1)と仮定しよう。そして、レジデュアルr(i,j)の量子化されたバージョンをQ(r(i,j))(0≦i≦M-1、0≦j≦N-1)と仮定しよう。ここで、レジデュアルは、原本ブロックと予測ブロック値の差値を意味する。
【0090】
その後、BDPCMを量子化されたレジデュアルサンプルに適用すると、
を構成とするM×Nの変形されたアレイ
が導出される。
【0091】
垂直BDPCMがシグナリングされると、
は次の数式の通りである。
【0092】
【数1】
【0093】
水平予測に対して同様に適用すると、量子化されたレジデュアルサンプル(the residual quantized samples)は、次の数式の通りである。
【0094】
【数2】
【0095】
量子化されたレジデュアルサンプル(
)は、デコーディング装置に送信される。
【0096】
デコーディング装置では、Q(r(i,j))(0≦i≦M-1、0≦j≦N-1.)を導出するために、前記演算が逆に実行される。
【0097】
垂直予測に対しては、次の数式が適用できる。
【0098】
【数3】
【0099】
また、水平予測に対しては、次の数式が適用できる。
【0100】
【数4】
【0101】
逆量子化された量子化されたレジデュアル(
)は、復元されたサンプル値を導出するためにイントラブロックの予測値と合わせられる。
【0102】
このような技法の主要利点は、係数のパーシングの間に即刻的に係数のパーシング時又はパーシング後にも簡単に予測子を加えることによって、逆BDPCMを実行することができることである。
【0103】
前記のように、BDPCMは量子化されたレジデュアルドメインに適用されることができ、量子化されたレジデュアルドメインは、量子化されたレジデュアル(又は量子化されたレジデュアル係数)を含むことができ、そのとき、レジデュアルに対しては変換スキップが適用できる。すなわち、レジデュアルサンプルに対して、変換はスキップされ、量子化は適用されることができる。或いは、量子化されたレジデュアルドメインは、量子化された変換係数を含むこともできる。BDPCMの適用可否に対するフラグは、シーケンスレベル(SPS)でシグナリングされることができ、このようなフラグは、SPSで変換スキップモードが可能であるとシグナリングされる場合にのみシグナリングされることができる。
【0104】
BDPCMの適用時、量子化されたレジデュアルドメインに対するイントラ予測は、イントラ予測方向と類似する予測方向(例えば、垂直予測又は水平予測)によるサンプルコピー(sample copy)によって全体ブロックに実行される。レジデュアルは量子化され、量子化されたレジデュアルと水平又は垂直方向に対する予測子(すなわち、水平又は垂直方向の量子化されたレジデュアル)間のデルタ値、すなわち、差分値(
)がコーディングされる。
【0105】
CUがイントラ予測でコーディングされたとき、BDPCMが適用可能か否かを指示するフラグ情報がCUレベルで送信されることができる。すなわち、フラグ情報は、通常のイントラコーディングが適用されるか、又はBDPCMが適用されるか否かを指示する。BDPCMが適用されると、予測方向が水平方向であるか、垂直方向であるか否かを指示するBDPCMの予測方向フラグが送信できる。そうすると、ブロックはフィルタリングされていない参照サンプルを用いた通常の水平又は垂直イントラ予測過程を通じて予測される。レジデュアルは量子化され、各量子化されたレジデュアルとその予測子、例えば、BDPCMの予測方向に沿って、水平又は垂直方向にある周辺位置の既に量子化されたレジデュアル、間の差値がコーディングされる。
【0106】
BDPCMが適用可能であると、CUサイズがルマサンプルに対するMaxTsSize(最大変換スキップサイズ)よりも小さいか等しく、CUがイントラ予測でコーディングされたとき、フラグ情報はCUレベルで送信されることができる。ここで、MaxTsSizeは、変換スキップモードが許容されるための最大のブロックサイズを意味する。
【0107】
前述した内容についてのシンタックスエレメント、及びそれに対するセマンティクスを表で示すと次の通りである。
【0108】
【表1】
【0109】
【表2】
【0110】
表1のシンタックスエレメント「intra_bdpcm_flag」は、表2で説明されたように、現在ルマコーディングブロックにBDPCMが適用されるか否かを示す。「intra_bdpcm_flag」の値が1であると、当該コーディングブロックに対する変換はスキップされ、コーディングブロックに対する予測モードは、予測方向を示す「intra_bdpcm_dir_flag」によって水平又は垂直方向に設定されることができる。「intra_bdpcm_flag」が存在しないと、この値は0とみなされる。
【0111】
予測方向を示す「intra_bdpcm_dir_flag」が0であると、BDPCMの予測方向が水平方向であることを示し、その値が1であると、BDPCMの予測方向が垂直方向であることを示す。
【0112】
一方、前述したように、復元ピクチャに対してインループフィルタリング手順を実行することができる。インループフィルタリング手順を介して、修正された(modified)復元ピクチャが生成でき、デコーディング装置で修正された復元ピクチャがデコーディングされたピクチャとして出力されることができる。また、修正された復元ピクチャは、エンコーディング装置/デコーディング装置の復号ピクチャバッファ又はメモリに保存されて、以降のピクチャのエンコーディング/デコーディングの際にインター予測手順で参照ピクチャとして使用されることができる
【0113】
インループフィルタリングの手順は、デブロッキングフィルタリング手順、SAO(sample adaptive offset)手順及び/又はALF(adaptive loop filter)手順等を含むことができる。この場合、前記デブロッキングフィルタリング手順、SAO(sample adaptive offset)手順、ALF(adaptive loop filter)手順、及びバイラテラルフィルタ(bi-lateral filter)手順のうちの一つ又は一部が順次に適用されることもあり、或いは、全部が順次に適用されることもある。例えば、復元ピクチャに対してデブロッキングフィルタリング手順が適用された後、SAO手順が実行できる。或いは、例えば、復元ピクチャに対してデブロッキングフィルタリング手順が適用された後、ALF手順が実行できる。これは、エンコーディング装置でも同様に実行できる。
【0114】
デブロッキングフィルタリングは、復元されたピクチャでブロック間の境界に生じた歪曲を除去するフィルタリング技法である。デブロッキングフィルタリング手順は、例えば、復元ピクチャでターゲット境界を導出し、ターゲット境界に対するbS(boundary strength)を決定し、bSをベースとしてターゲット境界に対するデブロッキングフィルタリングを実行することができる。bSは、ターゲット境界に隣接した2つのブロックの予測モード、動きベクトルの差、参照ピクチャの同一可否、0ではない有効係数の存在可否等に基づいて決定されることができる。
【0115】
SAOは、サンプル単位で復元ピクチャと原本ピクチャとのオフセットの差を補償する方法であって、例えば、バンドオフセット(Band Offset)、エッジオフセット(Edge Offset)等のタイプに基づいて適用されることができる。SAOによると、各SAOのタイプに応じて、サンプルを互いに異なるカテゴリに分類し、カテゴリに基づいて、各サンプルにオフセット値を加えることができる。SAOのためのフィルタリング情報は、SAOの適用可否に関する情報、SAOタイプ情報、SAOオフセット値情報等を含み得る。SAOは、前記デブロッキングフィルタリングの適用後の復元ピクチャに対して適用されることもある。
【0116】
ALF(Adaptive Loop Filter)は、復元ピクチャに対してフィルタの形状によるフィルタ係数に基づいて、サンプル単位でフィルタリングする技法である。エンコーディング装置は、復元ピクチャと原本ピクチャとの比較を通じて、ALFの適用可否、ALFの形状及び/又はALFのフィルタリング係数等を決定することができ、デコーディング装置にシグナリングできる。すなわち、ALFのためのフィルタリング情報は、ALFの適用可否に関する情報、ALFのフィルタ形状(shape)情報、ALFのフィルタリング係数情報等を含み得る。ALFは、前記デブロッキングフィルタリングの適用後の復元ピクチャに対して適用されることもある。
【0117】
図4は、一例によるデブロッキングフィルタリング過程を説明する制御フローチャートである。
【0118】
デブロッキングフィルタリングは、復元されたピクチャに適用される。デブロッキングフィルタリングは、デコーディングされたプロセスと同じ順序で復元されたピクチャのそれぞれのCUに対して実行される。まず、垂直の角がフィルタリングされ(水平フィルタリング)、その後、水平の角がフィルタリングされる(垂直フィルタリング)。デブロッキングフィルタリングは、ピクチャの全てのコーディングブロック又はサブブロックのエッジ及び変換ブロックのエッジに適用されることができる。デブロッキングフィルタリングに対する出力は、修正された復元されたピクチャ又は修正された復元されたサンプル/サンプルアレイと指称され得る。
【0119】
図4のように、エンコーディング装置及びデコーディング装置は、復元されたピクチャでフィルタリングされるターゲット境界を導出することができる(S1400)。
【0120】
次いで、エンコーディング装置及びデコーディング装置は、境界強度(bS)を導出することができる(S1410)。
【0121】
bSは、ターゲット境界に向かう2個のブロックに基づいて決定されることができる。例えば、bSは、次の表に基づいて決定されることができる。
【0122】
【表3-1】
【0123】
【表3-2】
【0124】
ここで、pとqは、ターゲット境界に向かう2個のブロックのサンプルを示す。例えば、pは、ターゲット境界に向かう左側又は上側ブロックのサンプルを示すことができ、qは、ターゲット境界に向かう右側又は下側ブロックのサンプルを示すことができる。ターゲット境界のエッジ方向が垂直である場合、pは、ターゲット境界に向かう左側ブロックのサンプルを示すことができ、qは、ターゲット境界に向かう右側ブロックのサンプルを示すことができる。ターゲット境界のエッジ方向が水平である場合、pは、ターゲット境界に向かう上側ブロックのサンプルを示すことができ、qは、ターゲット境界に向かう下側ブロックのサンプルを示すことができる。
【0125】
エンコーディング装置及びデコーディング装置は、bSに基づいてフィルタリングを適用することができる(S1420)。
【0126】
bS値が0であると、ターゲット境界にフィルタリングが適用されない。フィルタリングは、フィルタリングの強度(強又は弱)及び/又はフィルタの長さに基づいて実行されることができる。
【0127】
一方、復元された平均ルマレベルによるフィルタの強度は、次のように導出されることができ、図5は、ブロックの境界に位置するサンプルを示した図である。
【0128】
HEVCで、デブロッキングフィルタリングのフィルタ強度は、平均量子化パラメータqPから導出された変数β及びtにより制御される。VVCで、デブロッキングフィルタリングは復元されたサンプルのルマレベルによってqPにオフセットを追加することによって、デブロッキングフィルタリングの強度を制御することができる。復元されたルマレベル(LL)は、次の式のように導出されることができる。
【0129】
【数5】
【0130】
iは、0乃至3であり、kは、0及び3であるサンプル値pi,k及びqi,kの位置は図5で確認できる。
【0131】
変数qPは、次の数式のように導出されることができる。
【0132】
【数6】
【0133】
ここで、QpQ及びQpPは、それぞれサンプルq0,0及びp0,0を含むコーディングユニットの量子化パラメータを示し、変換手順に依存するオフセットqpOffset値は、シーケンスパラメータセット(SPS)でシグナリングされることができる。
【0134】
一方、ルマサンプルに対してより強いフィルタリングが適用できる。一方の境界にあるサンプルが大きいブロックに属する場合、二重線形フィルタ(より強いデブロッキングフィルタ)が適用できる。大きいブロックに属するサンプルは、垂直境界に対して幅が32よりも大きいか等しい場合、又は水平境界に対して高さが32よりも大きいか等しい場合の各境界に属するサンプルで定義されることができる。
【0135】
一方、クロマサンプルに対する強いフィルタリングは、次の数式のように実行されることができる。
【0136】
【数7】
【0137】
数式7のクロマフィルタリングは、8x8クロマサンプルのグリッドで実行される。クロマサンプルに対する強いフィルタリングは、ブロック境界の両方で実行されることができる。ここで、クロマフィルタリングは、クロマサンプルのエッジの両方がいずれもクロマサンプルの単位で8よりも等しいか大きいときに選択され、次の三つの条件に対する決定を満たすときに実行される。第一に、境界強度(bS)及び大きいブロックに対する決定、第二及び第三には、それぞれフィルタリングのオン/オフの決定と強力なフィルタリングに対する決定で、基本的にHEVCルマブロックに対する決定と同一である。クロマブロックに対してbSを決定する例は、下記表の通りである。
【0138】
【表4】
【0139】
表4のように、クロマサンプルに対するデブロッキングは、bSが2であるときに実行されるか、又は大きいブロックの境界が感知される場合、bSが1であるときに実行されることができる。第二及び第三の条件は、基本的にHEVCルマサンプルに適用された強いフィルタリングの決定と同一である。
【0140】
一方、VVCでは、サブブロックの境界に対するデブロッキングフィルタリングが適用でき、一例によって8x8グリッドでデブロッキングフィルタリングが実行できる。デブロッキングフィルタリングのプロセスは、8x8グリッドに整列されるサブブロックの境界だけでなく、CU境界にも適用されることができる。
【0141】
サブブロックの境界は、STMV(subblock-based temporal motion vector predition)及びアフィンモード(affine mode)により導入された予測ユニット(prediction unit、PU)、SBT(subblock transform)及びISP(intra subpartitions)モードにより導入された変換ユニット(transform unit、TU)の境界を含む。
【0142】
SBT又はISPが適用される8x8グリッドのサブブロックの場合、HEVCのTUデブロッキングフィルタリングに適用された過程と同じ過程が適用される。デブロッキングフィルタリングは、エッジを横切るいずれかのサブブロックに0ではない係数があるとき、8x8グリッドのTU境界に適用される。
【0143】
STMVP又はアフィンモードが適用される8x8グリッドのサブブロックの場合、HEVCのTUデブロッキングフィルタリング過程と同じ過程が適用される。デブロッキングフィルタリングは、周辺のサブブロックの動きベクトルと参照ピクチャとの間の差を考慮し、8x8グリッドのPU境界に適用される。
【0144】
以下では、BDPCMが適用されるブロックを対するインループフィルタリングの過程のうち、デブロッキングフィルタリング方法が提案できる。一例によると、映像又はビデオをエンコーディング及びデコーディングする過程において、シングルツリータイプでルマブロックがBDPCMでコーディングされた場合、対応するクロマブロックのbS(Boundary strength)をルマブロックと同じように設定できる。すなわち、ツリータイプがシングルツリーである場合、BDPCMでコーディングされたブロックに対して、デブロッキングフィルタリングの適用可否を決定するためにbSを計算するとき、クロマブロックに対するbSを下記のように決定することができる。
【0145】
図6は、本文書の一実施形態に係るbSの決定方法を示している図である。
【0146】
一例によって、エッジを基準に2個のブロックがBDPCM符号化された場合、bSを0で誘導することができる。すなわち、クロマブロックの場合、BDPCMが適用されるか否かと関係なく、シングルツリータイプでは対応するルマブロックがBDPCMコーディングされた場合、クロマブロックのbSを0で誘導することができる。
【0147】
図6で、左側の大きいブロックはルマブロックを示すことができ、右側の小さいブロックは、成分(Cb及びCr)によるクロマブロックであり得る。
【0148】
示したように、隣接した2個のルマブロックのコーディング方式によってブロックの境界のbSを決定することができ、クロマブロックのbSはルマブロックのbSと同じように設定することができる。
【0149】
最上側に図示されている隣接した2個のルマブロックは、それぞれBDPCM及びインター予測によってコーディングされ、この場合、bSは1又は0に設定されることができる。また、最下側に図示されている隣接した2個のルマブロックは、それぞれBDPCM及びイントラ予測によってコーディングされ、この場合もやはり、bSは1又は0に設定されることができる。2つの場合、いずれもクロマブロックのbSはルマブロックのbSと同じように設定されることができる。
【0150】
また、中央に図示されているルマブロックのように2個の隣接したルマブロックがいずれもBDPCM方式でコーディングされると、両ブロックの境界に対するbSは0に設定されることができ、この場合、ルマブロックに対応するクロマブロックもやはりデブロッキングフィルタリングのためのbSが0に設定されることができる。
【0151】
ルマブロックがBDPCM方式でコーディングされているか否かは、表1に示しているintra_bdpcm_flagのようなフラグ情報でシグナリングされることができる。
【0152】
このように、bSが0に設定されると、デブロッキングフィルタリングは実行されない。すなわち、一例によって2個の隣接したルマブロックがいずれもBDPCM方式でコーディングされると、ルマブロック及びクロマブロックのbSは0に設定され、デブロッキングフィルタリングは実行されない。
【0153】
このようなbSの決定方法を表で示すと次の通りである。
【0154】
【表5-1】
【0155】
【表5-2】
【0156】
【表5-3】
【0157】
【表5-4】
【0158】
表5で、前述したように、ターゲット境界が垂直境界である場合、ターゲット境界を基準に左側ブロックはPで、右側ブロックはQで示すことができる。また、ターゲット境界が水平境界である場合、ターゲット境界を基準に上側ブロックはPで、下側ブロックはQで示すことができる。
【0159】
bSに対する変数variable bS[xDi][yDj]は、0、1及び2のうちのいずれかで導出されることができる。
【0160】
表5に示すように、隣接したブロックP及びQに属する2個のサンプルp及びqがBDPCMでコーディングされると、すなわち、intra_bdpcm_flagが1であると、bS[xDi][yDj]は0で導出される[If both samples p0 and q0 are in a coding block with intra_bdpcm_flag equal to 1, bS[xDi][yDj] is set equal to 0]。この場合、デブロッキングフィルタリングは実行されない。
【0161】
それでなく、2個のサンプルp又はqがイントラモードでコーディングされると、bS[xDi][yDj]は2で導出される[if the sample p0 or q0 is in the coding block of a coding unit coded with intra prediction mode, bS[xDi][yDj] is set equal to]。
【0162】
また、ブロックのエッジが変換ブロックのエッジであり、一つ以上の0ではない変換係数レベルを含む変換ブロック内の2個のサンプルp及びqが属すると、bS[xDi][yDj]は1で導出される[if the block edge is also a transform block edge and the sample p0 or q0 is in a transform block which contains one or more non-zero transform coefficient levels, bS[xDi][yDj] is set equal to 1]。
【0163】
或いは、2個のブロックが互いに異なる予測モードでコーディングされているか、互いに異なる参照ピクチャ又は異なる個数の動きベクトルが使用される場合、bS[xDi][yDj]は1で導出されることができる。
【0164】
一方、別の例によって、bdpcmのフラグ情報は、下記表のようにシグナリングされることができる。
【0165】
【表6】
【0166】
表6は、SPS(Sequence parameter set)でシグナリングされる「sps_bdpcm_enabled_flag」を示しており、シンタックスエレメント「sps_bdpcm_enabled_flag」が1であると、イントラ予測が実行されるコーディングユニットにBDPCMが適用されるか否かを示すフラグ情報、すなわち、「intra_bdpcm_luma_flag」及び「intra_bdpcm_chroma_flag」がコーディングユニットに存在することを示す。
【0167】
前記シンタックスエレメント「sps_bdpcm_enabled_flag」が存在しないと、その値は0とみなされる。
【0168】
【表7-1】
【0169】
【表7-2】
【0170】
表6のシンタックスエレメント「intra_bdpcm_luma_flag」及び「intra_bdpcm_chroma_flag」は、表7で説明されたように、現在ルマコーディングブロック又は現在クロマコーディングブロックにBDPCMが適用されるか否かを示す。「intra_bdpcm_luma_flag」又は「intra_bdpcm_chroma_flag」の値が1であると、当該コーディングブロックに対する変換はスキップされ、コーディングブロックに対する予測モードは、予測方向を示す「intra_bdpcm_luma_dir_flag」又は「intra_bdpcm_chroma_dir_flag」により水平又は垂直方向に設定されることができる。「intra_bdpcm_luma_flag」又は「intra_bdpcm_chroma_flag」が存在しないと、この値は0とみなされる。
【0171】
「intra_bdpcm_chroma_flag」は、現在ブロックがシングルツリータイプであるか、又はデュアルツリークロマであるクロマコーディングブロックに対してシグナリングされることができる。
【0172】
予測方向を示す「intra_bdpcm_luma_dir_flag」又は「intra_bdpcm_chroma_dir_flag」が0であると、BDPCMの予測方向が水平方向であることを示し、その値が1であると、BDPCMの予測方向が垂直方向であることを示す。
【0173】
表6及び表7のフラグ情報によるBsの決定方法を示すと、次の通りである。
【0174】
【表8】
【0175】
表8に示すように、一例によると、隣接した2個のルマブロックがBDPCMでコーティングされているか否かは、intra_bdpcm_luma_flagで指示されることができ、intra_bdpcm_luma_flagの値が1であると、ルマブロックに対するbS[xDi][yDj]は0で導出される。
【0176】
また、隣接した2個のクロマブロックがBDPCMでコーティングされているか否かは、intra_bdpcm_ chroma_flagで指示されることができ、intra_bdpcm_ chroma_flagの値が1であると、ルマブロックに対するbS[xDi][yDj]は0で導出される。
【0177】
すなわち、ルマブロック及びクロマブロックのそれぞれに対してBDPCMに対するフラグ情報がシグナリングでき、フラグ値が1であると、デブロッキングフィルタリングのためのbSは0に設定されることができる。すなわち、BDPCM方式でコーティングされたブロックは、デブロッキングフィルタリングが実行されないことがある。
【0178】
以下の図面は、本明細書の具体的な一例を説明するために作成された。図面に記載された具体的な装置の名称や具体的な信号/メッセージ/フィールドの名称は例示的に提示されたものであるため、本明細書の技術的特徴が、以下の図面に使用された具体的な名称に制限されない。
【0179】
図7は、本文書の一実施形態にかかる映像デコーディング方法を説明するための制御フローチャートである。
【0180】
デコーディング装置300は、ビットストリームからBDPCM情報のようなコーディング情報を受信する(S710)。
【0181】
BDPCM情報は、現在ブロックにBDPCMが適用されるか否かを指示するBDPCMのフラグ情報とBDPCMが実行される方向に対する方向情報を含むことができる。
【0182】
現在ブロックにBDPCMが適用されると、BDPCMのフラグ値は1であり、現在ブロックにBDPCMが適用されないと、BDPCMのフラグ値は0であり得る。
【0183】
一方、現在ブロックのツリータイプは、ルマブロックと対応するクロマブロックが個別的な分割構造を有するか否かによって、シングルツリー(SINGLE_TREE)又はデュアルツリー(DUAL_TREE)に区分されることができる。クロマブロックがルマブロックと同じ分割構造を有するとシングルツリー、クロマ成分ブロックがルマ成分ブロックと異なる分割構造を有するとデュアルツリーで示すことができる。一例によって、現在ブロックのルマブロック又はクロマブロックにBDPCMが個別的に適用されることができる。もし、ルマブロックにBDPCMが適用されると、ルマブロックに対する変換インデックスは受信されず、クロマブロックにBDPCMが適用されると、クロマブロックに対する変換インデックスは受信されないことがある。
【0184】
現在ブロックのツリー構造がデュアルツリーである場合、いずれかの成分ブロックにのみBDPCMが適用でき、現在ブロックがシングルツリー構造である場合にも、いずれかの成分ブロックにのみBDPCMが適用できる。
【0185】
一方、BDPCMに対する方向情報は、水平方向又は垂直方向を指示することができ、方向情報によって量子化情報が導出され、予測サンプルが導出できる。
【0186】
デコーディング装置300は、BDPCMに基づいて現在ブロックに対する量子化された変換係数、すなわち、変換されない量子化されたレジデュアルサンプルを導出し、量子化されたレジデュアルサンプルに逆量子化を実行してレジデュアルサンプルを導出することができる(S720)。
【0187】
現在ブロックにBDPCMが適用される場合、デコーディング装置300に受信されるレジデュアル情報は量子化されたレジデュアルの差分値であり得る。BDPCMの方向によって以前の垂直又は水平方向のラインと特定ラインの量子化されたレジデュアルの差分値が受信でき、デコーディング装置300は、受信される量子化されたレジデュアルの差分値に以前の垂直又は水平方向のラインの量子化されたレジデュアル値を加えて、特定ラインの量子化されたレジデュアルを導出することができる。量子化されたレジデュアルは、数式3又は数式4に基づいて導出されることができる。
【0188】
前述したように、現在ブロックにBDPCMが適用されると、逆量子化された変換係数は変換過程を経ることなく、レジデュアルサンプルで導出されることができる。
【0189】
イントラ予測部331は、BDPCM情報、すなわち、BDPCMが実行される方向情報に基づいて前記現在ブロックに対するイントラ予測を実行し、予測サンプルを導出することができる(S730)。
【0190】
現在ブロックにBDPCMが適用されると、これを用いたイントラ予測を実行することができ、これは、BDPCMはイントラモードと予測されたイントラスライス又はイントラコーディングブロックにのみ適用されることができるということを意味することができる。
【0191】
イントラ予測は、前記BDPCMに対する方向情報に基づいて実行され、現在ブロックのイントラ予測モードは、水平方向モード又は垂直方向モードのいずれかであり得る。
【0192】
デコーディング装置300は、導出されたレジデュアルサンプルと予測サンプルに基づいて復元ピクチャを生成することができる(S740)。
【0193】
デコーディング装置300は、復元されたピクチャにBDPCM情報に基づいてインループフィルタリングのうちの一つであるデブロッキングフィルタリングを実行することができる(S750)。そのとき、BDPCMのフラグ情報が1であると、境界強度(Bs)は0で導出されて、デブロッキングフィルタリングが実行されないことがある。
【0194】
一例によって、シングルツリータイプでルマブロックがBDPCMでコーティングされた場合、対応するクロマブロックのbS(Boundary strength)をルマブロックと同じように設定することができる。
【0195】
ブロック間のエッジを基準に2個のブロックがBDPCM符号化された場合、bSを0と誘導できる。すなわち、クロマブロックの場合、BDPCMが適用されるか否かと関係なく、シングルツリータイプでは対応するルマブロックがBDPCMコーディングされた場合、クロマブロックのbSを0と誘導できる。
【0196】
このように、bSが0に設定されると、デブロッキングフィルタリングは実行されない。すなわち、一例によって、2個の隣接したルマブロックがいずれもBDPCM方式でコーティングされると、ルマブロック及びクロマブロックのbSは0に設定され、デブロッキングフィルタリングは実行されない。
【0197】
或いは、別の例によると、隣接した2個のルマブロックがBDPCMでコーティングされているか否かは、intra_bdpcm_luma_flagで指示されることができ、intra_bdpcm_luma_flagの値が1であると、ルマブロックに対するbS[xDi][yDj]は0で導出される。また、隣接した2個のクロマブロックがBDPCMでコーティングされているか否かは、intra_bdpcm_ chroma_flagで指示されることができ、intra_bdpcm_ chroma_flagの値が1であると、ルマブロックに対するbS[xDi][yDj]は0で導出される。
【0198】
すなわち、ルマブロック及びクロマブロックのそれぞれに対して、BDPCMに対するフラグ情報がシグナリングでき、フラグ値が1であると、デブロッキングフィルタリングのためのbSは0に設定されることができる。すなわち、BDPCM方式でコーティングされたブロックは、デブロッキングフィルタリングが実行されないことがある。
【0199】
整理すると、デコーディング装置に受信されるBDPCM情報は、現在ブロックにBDPCMが適用されるか否かを指示するフラグ情報を含み、フラグ情報が1であると、デブロッキングフィルタリングのための境界強度(boundary strength、bS)は0で導出されることができる。
【0200】
そのとき、現在ブロックはルマコーディングブロック又はクロマコーディングブロックのいずれかであり得、現在ブロックのツリータイプがシングルツリータイプであり、クロマコーディングブロックである場合、フラグ情報が1であると、境界強度は1で導出されることができる。
【0201】
以下の図面は、本明細書の具体的な一例を説明するために作成された。図面に記載された具体的な装置の名称や具体的な信号/メッセージ/フィールドの名称は例示的に提示されたものであるため、本明細書の技術的特徴が、以下の図面に使用された具体的な名称に制限されない。
【0202】
図8は、本文書の一実施形態に係る映像エンコーディング方法を説明するための制御フローチャートである。
【0203】
エンコーディング装置200は、BDPCMに基づいて、現在ブロックに対する予測サンプルを導出することができる(S810)。
【0204】
エンコーディング装置200は、BDPCMが実行される特定方向に基づいて、現在ブロックに対するイントラ予測サンプルを導出することができる。特定方向は、垂直方向又は水平方向であり得、これによるイントラ予測モードによって現在ブロックに対する予測サンプルが生成できる。
【0205】
一方、現在ブロックのツリータイプは、ルマブロックと対応するクロマブロックが個別的な分割構造を有するか否かによって、シングルツリー(SINGLE_TREE)又はデュアルツリー(DUAL_TREE)に区分されることができる。クロマブロックがルマブロックと同じ分割構造を有するとシングルツリー、クロマ成分ブロックがルマ成分ブロックと異なる分割構造を有するとデュアルツリーで示すことができる。一例によって、現在ブロックのルマブロック又はクロマブロックにBDPCMが個別的に適用されることができる。
【0206】
現在ブロックのツリー構造がデュアルツリーである場合、いずれかの成分ブロックにのみBDPCMが適用でき、現在ブロックがシングルツリー構造である場合にも、いずれかの成分ブロックにのみBDPCMが適用できる。
【0207】
或いは、一例によって、現在ブロックの幅が第1臨界値以下であり、現在ブロックの高さが第2臨界値以下である場合に限り、BDPCMが適用できる。第1臨界値及び第2臨界値は32であり得、変換が実行される変換ブロックの最大高さ又は最大幅に設定されることができる。
【0208】
エンコーディング装置200は、予測サンプルに基づいて現在ブロックに対するレジデュアルサンプルを導出し(S820)、レジデュアルサンプルと予測サンプルに基づいて復元ピクチャを生成することができる(S830)。
【0209】
エンコーディング装置200は、復元されたピクチャにBDPCM情報に基づいてインループフィルタリングのうちの一つであるデブロッキングフィルタリングを実行することができる(S840)。そのとき、現在ブロックにBDPCMが適用されると、境界強度は0で導出され、デブロッキングフィルタリングが実行されないことがある。
【0210】
一例によって、シングルツリータイプでルマブロックがBDPCMでコーティングされた場合、対応するクロマブロックのbS(Boundary strength)をルマブロックと同じように設定することができる。
【0211】
ブロック間のエッジを基準に2個のブロックがBDPCM符号化された場合、bSを0と誘導できる。すなわち、クロマブロックの場合、BDPCMが適用されるか否かと関係なく、シングルツリータイプでは対応するルマブロックがBDPCMコーディングされた場合、クロマブロックのbSを0と誘導できる。
【0212】
このように、bSが0に設定されると、デブロッキングフィルタリングは実行されない。すなわち、一例によって、2個の隣接したルマブロックがいずれもBDPCM方式でコーティングされると、ルマブロック及びクロマブロックのbSは0に設定され、デブロッキングフィルタリングは実行されない。
【0213】
或いは、別の例によると、2個のルマブロックがBDPCMでコーティングされているか否かによって、ルマブロックに対するbS[xDi][yDj]は0で導出され、2個のクロマブロックがBDPCMでコーティングされているか否かによって、クロマブロックに対するbS[xDi][yDj]は0で導出されることができる。
【0214】
また、ルマブロック及びクロマブロックのそれぞれに対して、BDPCMに対するフラグ情報がコーディングでき、フラグ値が1であると、デブロッキングフィルタリングのためのbSは0に設定されることができる。すなわち、BDPCM方式でコーディングされたブロックは、デブロッキングフィルタリングが実行されないことがある。
【0215】
その後、エンコーディング装置200は、BDPCMに基づいて量子化されたレジデュアル情報を導出することができる。
【0216】
エンコーディング装置200は、特定ラインの量子化されたレジデュアルサンプルと以前の垂直又は水平方向のラインと特定ラインの量子化されたレジデュアルサンプルとの差分値を量子化されたレジデュアル情報で導出することができる。すなわち、通常のレジデュアルではない量子化されたレジデュアルの差分値がレジデュアル情報で生成され、数式1又は数式2に基づいて導出されることができる。
【0217】
エンコーディング装置200は、量子化されたレジデュアル情報及び現在ブロックに対するコーディング情報、例えば、BDPCMに対するBDPCM情報をエンコーディングできる(S850)。
【0218】
BDPCM情報は、現在ブロックにBDPCMが適用されるか否かを指示するBDPCMのフラグ情報と、BDPCMが実行される方向に対する方向情報を含むことができる。
【0219】
現在ブロックにBDPCMが適用されると、BDPCMのフラグ値は1でエンコーディングされ、現在ブロックにBDPCMが適用されないと、BDPCMのフラグ値は0でエンコーディングされることができる。
【0220】
また、前述したように、現在ブロックのツリー構造がデュアルツリーである場合、いずれかの成分ブロックにのみBDPCMが適用でき、現在ブロックがシングルツリー構造である場合にも、いずれかの成分ブロックにのみBDPCMが適用できる。
【0221】
BDPCMに対する方向情報は、水平方向又は垂直方向を指示することができる。
【0222】
本文書において、量子化/逆量子化及び/又は変換/逆変換の少なくとも1つは省略され得る。前記量子化/逆量子化が省略される場合、前記量子化された変換係数は、変換係数と呼ばれ得る。前記変換/逆変換が省略される場合、前記変換係数は、係数又はレジデュアル係数と呼ばれることもあり、又は表現の統一性のために変換係数と依然として呼ばれることもある。
【0223】
また、本文書において、量子化された変換係数及び変換係数は、それぞれ変換係数及びスケーリングされた(scaled)変換係数と指称され得る。この場合、レジデュアル情報は、変換係数に関する情報を含むことができ、前記変換係数に関する情報は、レジデュアルコーディングシンタックスを介してシグナリングされることができる。前記レジデュアル情報(又は前記変換係数に関する情報)に基づいて変換係数が導出でき、前記変換係数に対する逆変換(スケーリング)を介してスケーリングされた変換係数が導出できる。前記スケーリングされた変換係数に対する逆変換(変換)に基づいて、レジデュアルサンプルが導出できる。これは、本文書の別の部分でも同様に適用/表現できる。
【0224】
前述した実施例において、方法は、一連のステップ又はブロックとしてフローチャートに基づいて説明されているが、本文書は、ステップの順序に限定されるわけではなく、あるステップは、前述したところと異なるステップと異なる順序で、又は同時に発生し得る。また、当業者であれば、フローチャートに示されているステップが排他的ではなく、別のステップが含まれるか、フローチャートの一つ又はそれ以上のステップが本文書の範囲に影響を与えずに削除され得ることを理解することができる。
【0225】
前述した本文書に係る方法は、ソフトウェアの形態で具現されることができ、本文書に係るエンコーディング装置及び/又はデコーディング装置は、例えば、TV、コンピュータ、スマートフォン、セットトップボックス、ディスプレイ装置等の映像処理を行う装置に含まれ得る。
【0226】
本文書において、実施例がソフトウェアで具現されるとき、前述した方法は、前述した機能を行うモジュール(過程、機能等)で具現されることができる。モジュールはメモリに保存され、プロセッサにより実行されることができる。メモリは、プロセッサの内部又は外部にあってもよく、よく知られている様々な手段でプロセッサと連結されてもよい。プロセッサは、ASIC(application-specific integrated circuit)、他のチップセット、論理回路及び/又はデータ処理装置を含むことができる。メモリは、ROM(read-only memory)、RAM(random access memory)、フラッシュメモリ、メモリカード、保存媒体及び/又は他の保存装置を含むことができる。即ち、本文書で説明した実施例は、プロセッサ、マイクロプロセッサ、コントローラ又はチップ上で具現されて実行されることができる。例えば、各図面で示している機能ユニットは、コンピュータ、プロセッサ、マイクロプロセッサ、コントローラ又はチップ上で具現されて実行されることができる。
【0227】
また、本文書が適用されるデコーディング装置及びエンコーディング装置は、マルチメディア放送送受信装置、モバイル通信端末、ホームシネマビデオ装置、デジタルシネマビデオ装置、監視用カメラ、ビデオ対話装置、ビデオ通信のようなリアルタイム通信装置、モバイルストリーミング装置、保存媒体、カムコーダ、オーダーメイド型ビデオ(VoD)サービス提供装置、OTTビデオ(Over the top video)装置、インターネットストリーミングサービス提供装置、3次元(3D)ビデオ装置、画像電話ビデオ装置、及び医療用ビデオ装置等に含まれ得、ビデオ信号又はデータ信号を処理するために使用され得る。例えば、OTTビデオ(Over the top video)装置としては、ゲームコンソール、ブルーレイプレーヤー、インターネットアクセスTV、ホームシアターシステム、スマートフォン、タブレットPC、DVR(Digital Video Recoder)等を含み得る。
【0228】
また、本文書が適用される処理方法は、コンピュータで実行されるプログラムの形態で生産されることができ、コンピュータが読み取ることができる記録媒体に保存されることができる。本文書に係るデータ構造を有するマルチメディアデータもまた、コンピュータが読み取ることができる記録媒体に保存されることができる。前記コンピュータが読み取ることができる記録媒体は、コンピュータで読み取ることができるデータが保存される全ての種類の保存装置及び分散保存装置を含む。前記コンピュータが読み取ることができる記録媒体は、例えば、ブルーレイディスク(BD)、汎用直列バス(USB)、ROM、PROM、EPROM、EEPROM、RAM、CD-ROM、磁気テープ、フロッピディスク、及び光学的データ保存装置を含み得る。また、前記コンピュータが読み取ることができる記録媒体は、搬送波(例えば、インターネットを介した送信)の形態で具現されたメディアを含む。また、エンコーディング方法で生成されたビットストリームが、コンピュータが読み取ることができる記録媒体に保存されるか、有無線通信ネットワークを介して送信されることができる。また、本文書の実施形態は、プログラムコードによるコンピュータプログラム製品で具現されることができ、前記プログラムコードは、本文書の実施形態によってコンピュータで実行されることができる。前記プログラムコードは、コンピュータによって読み取り可能なキャリア上に保存されることができる。
【0229】
図9は、本文書が適用されるコンテンツストリーミングシステムの構造図を例示的に示す。
【0230】
また、本文書が適用されるコンテンツストリーミングシステムは、大きくエンコーディングサーバ、ストリーミングサーバ、ウェブサーバ、メディアストレージ、ユーザ装置、及びマルチメディア入力装置を含むことができる。
【0231】
前記エンコーディングサーバは、スマートフォン、カメラ、カムコーダ等のようなマルチメディア入力装置から入力されたコンテンツをデジタルデータに圧縮してビットストリームを生成し、これを前記ストリーミングサーバに送信する役割をする。別の例として、スマートフォン、カメラ、カムコーダなどのようなマルチメディア入力装置がビットストリームを直接生成する場合、前記エンコーディングサーバは省略され得る。前記ビットストリームは、本文書が適用されるエンコーディング方法又はビットストリームの生成方法により生成されることができ、前記ストリーミングサーバは、前記ビットストリームを送信又は受信する過程で、一時的に前記ビットストリームを保存することができる。
【0232】
前記ストリーミングサーバは、ウェブサーバを介したユーザの要請に基づいてマルチメディアデータをユーザ装置に送信し、前記ウェブサーバは、ユーザにどのようなサービスがあるかを知らせる媒介体の役割をする。ユーザが前記ウェブサーバに所望のサービスを要請すると、前記ウェブサーバは、これをストリーミングサーバに伝達し、前記ストリーミングサーバは、ユーザにマルチメディアデータを送信する。そのとき、前記コンテンツストリーミングシステムは、別の制御サーバを含むことができ、この場合、前記制御サーバは、前記コンテンツストリーミングシステム内の各装置間の命令/応答を制御する役割をする。
【0233】
前記ストリーミングサーバは、メディアストレージ及び/又はエンコーディングサーバからコンテンツを受信することができる。例えば、前記エンコーディングサーバからコンテンツを受信することになる場合、前記コンテンツをリアルタイムで受信することができる。この場合、円滑なストリーミングサービスを提供するために、前記ストリーミングサーバは、前記ビットストリームを一定時間保存することができる。
【0234】
前記ユーザ装置の例としては、携帯電話、スマートフォン(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、デスクトップコンピュータ、デジタルサイニジなどがあり得る。前記コンテンツストリーミングシステム内の各サーバは、分散サーバとして運営されることができ、この場合、各サーバで受信するデータは、分散処理されることができる。
【0235】
本明細書に記載された請求項は、多様な方式で組み合わせることができる。例えば、本明細書の方法請求項の技術的特徴が組み合わせられて装置として具現されることができ、本明細書の装置請求項の技術的特徴が組み合わせられて方法として具現されることができる。また、本明細書の方法請求項の技術的特徴と装置請求項の技術的特徴とが組み合わせられて装置として具現されることができ、本明細書の方法請求項の技術的特徴と装置請求項の技術的特徴とが組み合わせられて方法として具現されることができる。
図1
図2
図3
図4
図5
図6
図7
図8
図9