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

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

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

特許7560617映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置
<>
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図1
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図2
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図3
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図4
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図5
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図6
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図7
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図8
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図9
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図10
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図11
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図12
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図13
  • 特許-映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-24
(45)【発行日】2024-10-02
(54)【発明の名称】映像/ビデオエンコーディング/デコーディングシステムにおけるスライスに関する情報のシグナリング方法及び装置
(51)【国際特許分類】
   H04N 19/70 20140101AFI20240925BHJP
【FI】
H04N19/70
【請求項の数】 7
(21)【出願番号】P 2023110021
(22)【出願日】2023-07-04
(62)【分割の表示】P 2022531544の分割
【原出願日】2020-11-26
(65)【公開番号】P2023118851
(43)【公開日】2023-08-25
【審査請求日】2023-07-04
(31)【優先権主張番号】62/941,845
(32)【優先日】2019-11-28
(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)【参考文献】
【文献】Tim Hellman, et al.,AHG17: Signalling of Rectangular Slices,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-P0240-v2,16th Meeting: Geneva, CH,2019年10月,pp.1-13
【文献】Benjamin Bross, Jianle Chen, Shan Liu, and Ye-Kui Wang,Versatile Video Coding (Draft 7),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-P2001-vE,16th Meeting: Geneva, CH,2019年11月14日,pp.21-23,42-44,106-112
【文献】Hendry, and Seethal Paluri,[AHG12]: On signalling of multiple rectangular slices in a tile,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-Q0203_On_JVET-P2001-vE.docx,17th Meeting: Brussels, BE,2019年12月,pp.21-23,42-44,106-112,https://jvet-experts.org/doc_end_user/documents/17_Brussels/wg11/JVET-Q0203-v1.zip
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
ビデオデコーディング装置によって行われるビデオデコーディングする方法において、前記方法は、
ビットストリームからスライス幅に対するシンタックス要素とスライス高さに対するシンタックス要素をパーシングするステップと、
前記スライス幅に対する前記シンタックス要素の値が0に等しいこと及び前記スライス高さに対する前記シンタックス要素の値が0に等しいことに基づいて、前記ビットストリームから現在ピクチャのタイル内で高さが明示的にシグナリングされる明示的なスライスの個数に関する個数情報をパーシングするステップと、
前記個数情報に基づいて、前記ビットストリームから高さが明示的にシグナリングされる明示的なスライスの高さに関する高さ情報をパーシングするステップと、
前記個数情報と前記高さ情報に基づいて、前記タイル内のスライスの個数を導出するステップと、
前記タイル内の前記スライスの一つに基づいて、前記現在ピクチャの現在ブロックについて予測を実行して、予測サンプルを生成するステップと、
前記予測サンプルに基づいて復元サンプルを生成するステップと、
前記復元サンプルに基づいて、前記現在ピクチャに対する復元ピクチャを生成するステップを含み、
前記高さ情報内のシンタックス要素の数は、前記個数情報により特定される前記明示的なスライスの数に等しく、
前記明示的なスライスの個数がnに等しいことに基づいて、前記タイル内の0番目のスライスからn-1番目のスライスの高さは、前記高さ情報内の前記シンタックス要素に基づいて導出され、
前記タイル内のn番目のスライスの高さは、前記n-1番目のスライスの前記高さに基づいて導出され、
前記タイル内の最後のスライスの高さは、前記タイルの高さから前記タイル内の他のスライスの前記高さを引いた後の残りの高さに基づいて導出される、ビデオデコーディングする方法。
【請求項2】
前記タイル内のスライスの個数は、前記0番目のスライスから前記最後のスライスまでのスライスの個数と等しい、請求項1に記載のビデオデコーディングする方法。
【請求項3】
前記タイルの全体の高さから、前記0番目のスライスから前記n-1番目のスライスまでの前記スライスの前記高さの合計を引いて計算した前記タイルの残りの高さ前記残りの高さが均一スライスの高さ以上であるかどうかを決定するために比較するステップをさらに含み、
一スライスの前記高さは前記n-1番目のスライスの前記高さと同じであり、
前記タイルの全体の高さから、前記0番目のスライスから前記n-1番目のスライスまで前記スライスの前記高さの合計を引いて計算した前記タイルの前記残りの高さが、前記均一スライスの前記高さ以上であることに基づいて、均一スライスの前記高さを有するn番目のスライスが導出され、
前記タイルの全体の高さから、前記0番目のスライスから前記n-1番目のスライスまでの前記スライスの前記高さの合計を引いて計算した前記タイルの前記残りの高さが、前記均一スライスの前記高さより小さいことに基づいて、前記残りの高さを有する前記n番目のスライスが導出される、請求項1に記載のビデオデコーディングする方法。
【請求項4】
前記残りの高さが前記均一スライスの前記高さ以上であることに基づいて、アップデートされた残りの高さが導出され、前記アップデートされた残りの高さは、前記タイルの前記全体の高さから、前記0番目のスライスから前記n-1番目のスライスまでの前記スライスの前記高さの前記合計を引いて計算した前記タイルの前記残りの高さから前記n番目のスライスの前記高さを引いてアップデートされ、
前記アップデートされた残りの高さが前記均一スライスの前記高さ以上であることに基づいて、前記均一スライスの前記高さを有するn+1番目のスライスが導出され、
前記アップデートされた残りの高さが前記均一スライスの前記高さより小さいことに基づいて、前記アップデートされた残りの高さを有するn+1番目のスライスが導出される、請求項3に記載のビデオデコーディングする方法。
【請求項5】
前記個数情報は、シンタックス要素num_exp_slices_in_tileを含み、
前記高さ情報は、シンタックス要素exp_slice_height_in_ctu_minus1を含む、請求項1に記載のビデオデコーディングする方法。
【請求項6】
ビデオエンコーディング装置によって行われるビデオエンコーディングする方法において、前記方法は、
現在ピクチャのタイル内のスライスを導出するステップと、
前記導出されたスライスの一つに基づいて現在ブロックに対する予測を実行して予測サンプルを生成するステップと、
前記予測サンプルと元のピクチャに基づいてレジデュアル情報を生成するステップと、
前記導出されたスライスに基づいて、前記タイル内で高さが明示的にシグナリングされる明示的なスライスの個数に関する個数情報と、高さが明示的にシグナリングされる前記明示的なスライスの高さに関する高さ情報とを生成するステップと、
前記レジデュアル情報、前記個数情報、及び前記高さ情報を含む映像情報をエンコーディングするステップを含み、
スライス幅に対するシンタックス要素の値が0に等しいこと及びスライス高さに対するシンタックス要素の値が0に等しいことに基づいて、前記個数情報はエンコーディングされ、
前記高さ情報内のシンタックス要素の数は、前記個数情報により特定される前記明示的なスライスの個数に等しく、
前記明示的なスライスの前記個数がnに等しいことに基づいて、前記高さ情報内の前記シンタックス要素は、前記タイル内の0番目のスライスからn-1番目のスライスの高さを表し、
前記タイル内のn番目のスライスの高さは、前記n-1番目のスライスの前記高さに基づいて表され、
前記タイル内の最後のスライスの高さは、前記タイルの高さから前記タイル内の他のスライスの前記高さを引いた後の残りの高さに基づいて表される、方法。
【請求項7】
ビデオに対するデータを送信する方法であって、前記方法は、
前記ビデオに対するビットストリームを取得するステップであって、前記ビットストリームは、現在ピクチャのタイル内スライスを導出し、前記導出されたスライスの一つに基づいて現在ブロックに対する予測を実行して予測サンプルを生成し、前記予測サンプルと元のピクチャに基づいてレジデュアル情報を生成し、前記導出されたスライスに基づいて、前記タイル内で高さが明示的にシグナリングされる明示的なスライスの数に関する個数情報と、高さが明示的にシグナリングされる前記明示的なスライスの高さに関する高さ情報とを生成し、前記レジデュアル情報、前記個数情報、及び前記高さ情報を含む映像情報をエンコーディングすることに基づいて生成される、ステップと、
前記ビットストリームを含む前記データを送信するステップとを含み、
スライス幅に対するシンタックス要素の値が0に等しいこと及びスライス高さに対するシンタックス要素の値が0に等しいことに基づいて、前記個数情報はエンコーディングされ、
前記高さ情報でのシンタックス要素の数は、前記個数情報により特定される前記明示的なスライスの個数に等しく、
前記明示的なスライスの前記個数がnに等しいことに基づいて、前記高さ情報内の前記シンタックス要素は、前記タイル内の0番目のスライスからn-1番目のスライスの高さを表し、
前記タイル内のn番目のスライスの高さは、前記n-1番目のスライスの前記高さに基づいて表され、
前記タイル内の最後のスライスの高さは、前記タイルの高さから前記タイル内の他のスライスの前記高さを引いた後の残りの高さに基づいて表される、方法。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、映像/ビデオをエンコーディング/デコーディング化するシステムにおけるスライスに関する情報のシグナリングを向上させるための方法及び装置に関する。
【背景技術】
【0002】
最近、UHD(Ultra High Definition)映像/ビデオのような4K又は8K以上の高解像度、高品質の映像/ビデオに対する需要が多様な分野で増加している。映像・映像データが高解像度、高品質になるほど、従来の映像・映像データに比べて相対的に伝送される情報量またはビット量が増加するため、既存の有無線無線ブロードバンド回線などの媒体を利用して映像データを伝送したり、既存の記録媒体を利用して映像/ビデオデータを保存する場合、伝送コストと保存コストが増加する。
【0003】
また、近年、VR(Virtual Reality)、AR(Artificial Realtiy)コンテンツやホログラムなどの実感メディア(Immersive Media)に対する関心及び需要が増加しており、ゲーム画像のように、現実画像と異なる画像特性を有する映像/ビデオに対する放送が増加している。
【0004】
これにより、前記のような様々な特性を有する高解像度・高品質の映像/ビデオの情報を効果的に圧縮して送信するか、格納し、再生するために高効率の映像/ビデオ圧縮技術が求められる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本文書の技術的課題は、映像/ビデオのコーディング効率を高める方法及び装置を提供することにある。
【0006】
本文書の他の技術的課題は、タイル内のスライスに関する情報を効率的にシグナリングする方法及び装置を提供することにある。
【0007】
本文書のまた他の技術的課題は、タイル内スライスに関する情報を伝達することにおいてシグナリングオーバーヘッドを減少させる方法及び装置を提供することにある。
【0008】
本文書のまた他の技術的課題は、タイル内のスライスの数及び高さに関する情報を効率的に伝達する方法及び装置を提供することにある。
【0009】
本文書の別の技術的課題は、タイル内の2つ以上のスライスの高さが等しい場合、該スライスの高さをより効率的にシグナリングする方法及び装置を提供することにある。
【課題を解決するための手段】
【0010】
本文書の一実施形態に係れば、ビデオデコーディング装置によって実行されるビデオデコーディング方法は、ビットストリームから現在ピクチャのタイル内で高さが明示的にシグナリングされるスライスの個数に関する個数情報をパーシング(parsing)するステップ、前記情報に基づいて前記ビットストリームから高さが明示的にシグナリングされるスライスの高さに関する高さ情報をパーシングするステップ、前記個数情報と前記高さ情報に基づいて前記タイル内のスライスの個数を導出するステップと、前記タイル内のスライスに基づいて前記現在ピクチャの現在ブロックに対して予測を実行して予測サンプルを生成するステップ、前記予測サンプルに基づいて復元サンプルを生成するステップ、及び前記復元サンプルに基づいて前記現在ピクチャについて復元ピクチャを生成するステップを含むが、前記高さ情報は、前記個数情報の値と同じ個数のシンタックス要素を含み、前記個数情報の値がnであることに基づいて、前記タイル内の0番目のスライス乃至n―1番目のスライスの高さは前記シンタックス要素に基づいて導出され、前記タイル内のn番目のスライスの高さはn-1番目のスライスの高さに基づいて導出され、前記タイル内の最後のスライスの高さは前記タイルの高さから前記タイル内他のスライスの高さを引いた残りの高さに基づいて導き出すことができる。
【0011】
本文書の別の実施形態に係れば、ビデオエンコーディング装置によって実行されるビデオエンコーディング方法は、現在ピクチャのタイル内のスライスを導出するステップ、前記導出されたスライスに基づいて現在ブロックの予測を実行して前記予測サンプルを生成するステップ、前記予測サンプルと元のピクチャに基づいてレジデュアル情報を生成するステップ、前記導出されたスライスに基づいて前記タイル内の高さが明示的にシグナリングされるスライスの個数に関する個数情報と前記高さが明示的にシグナリングされるスライスの高さに関する高さ情報を生成するステップと、前記レジデュアル情報、前記個数情報及び前記高さ情報を含む映像情報をエンコーディングするステップを含み、前記高さ情報は前記個数情報の値がnであることにもとづいて、前記タイル内の0番目のスライス乃至n-1番目のスライスの高さを表し、前記タイル内のn番目のスライスの高さは前記n-1番目のスライスの高さに基づいて導出され、前記タイル内の最後スライスの高さは、前記タイルの高さから前記タイル内の他のスライスの高さを引いた残りの高さに基づいて導出することができる。
【0012】
本文書のさらに別の実施形態に係れば、コンピュータ可読デジタル格納媒体として、前記デジタル格納媒体は、ビデオデコーディング装置によってビデオデコーディング方法を実行するように引き起こす情報を含み、前記ビデオデコーディング方法は、映像情報から、現在ピクチャのタイル内で高さが明示的にシグナリングされるスライスの個数に関する個数情報をパーシングするステップと前記個数情報に基づいて、前記映像情報から前記高さが明示的にシグナリングされるスライスの高さに関する高さ情報をパーシングするステップ、前記個数情報と前記高さ情報に基づいて前記タイル内スライスの個数を導出するステップ、前記タイル内スライスに基づいて前記現在ピクチャの現在ブロックに対して予測を実行して予測サンプルを生成するステップ、前記予測サンプルに基づいて復元サンプルを生成するステップ、及び復元サンプルに基づいて前記現在ピクチャの復元ピクチャを生成するステップを含み、前記高さ情報は、前記個数情報の値と同じ個数のシンタックス要素を含み、前記個数情報の値がnであることに基づいて、前記タイル内の0番目のスライス乃至n-1番目のスライスの高さは前記シンタックス要素に基づいて導出され、前記タイル内のn番目のスライスの高さは前記n―1番目のスライスの高さに基づいて導出され、前記タイル内の最後のスライスの高さは、前記タイルの高さから前記タイル内の他のスライスの高さを引いた残りの高さに基づいて導出され得る。
【発明の効果】
【0013】
本文書の一実施形態に係れば、全体的な映像/ビデオの圧縮効率を向上させることができる。
【0014】
本文書の一実施形態に係れば、タイル内のスライスに関する情報を効率的にシグナリングすることができる。
【0015】
本文書の一実施形態に係れば、タイル内のスライスに関する情報を伝達することにおいてシグナリングオーバーヘッドを低減することができる。
【0016】
本文書の一実施形態に係れば、タイル内のスライスの数及び高さに関する情報を効率的にシグナリングすることができる。
【0017】
本文書の一実施形態に係ると タイル内で複数のスライスの高さが等しい場合、同じ高さを有するスライスの高さ情報のシグナリングが省略されることができる。
【図面の簡単な説明】
【0018】
図1】本文書の実施例が適用できるビデオ/映像コーディングシステムの例を概略的に示す。
図2】本文書の実施例が適用できるビデオ/映像エンコーディング装置の構成を概略的に説明する図である。
図3】本文書の実施例が適用できるビデオ/映像デコーディング装置の構成を概略的に説明する図面である。
図4】ピクチャデコーディング手順の例を示す。
図5】ピクチャエンコーディング手順の例を示す。
図6】インター予測ベースのビデオ/映像エンコーディング方法の例を示す。
図7】エンコーディング装置内のインター予測部を概略的に示す。
図8】インター予測ベースのビデオ/映像デコーディング方法の一例を示す。
図9】デコーディング装置内のインター予測部を概略的に示す。
図10】本文書の実施形態に係るビデオ/映像エンコーディング方法及び関連構成要素の一例を概略的に示す。
図11】本文書の実施形態に係るビデオ/映像エンコーディング方法及び関連構成要素の一例を概略的に示す。
図12】本文書の実施形態によるビデオ/映像デコーディング方法及び関連構成要素の一例を概略的に示す。
図13】本文書の実施形態によるビデオ/映像デコーディング方法及び関連構成要素の一例を概略的に示す。
図14】本文書に開示された実施形態が適用され得るコンテンツストリーミングシステムの例を示す図である。
【発明を実施するための形態】
【0019】
本文書の開示は様々な変更を加えることができ、様々な実施例が有することができるため、特定の実施例を図面に例示し、詳細に説明しようとする。本文書で使用する用語は、単に特定の実施例を説明するために使用されたものであって、本文書の技術的思想を限定しようとする意図で使用されるものではない。単数の表現は、文脈上明白に異なる意味を有しない限り、「少なくとも1つ」の表現を含む。本文書において「含む」又は「有する」などの用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部品、またはこれらを組み合わせたものが存在することを指定しようとするものであり、1つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、またはこれらを組み合わせたものなどの存在又は付加可能性を予め排除しないことと理解されるべきである。
【0020】
一方、本文書において説明される図面上の各構成は、互いに異なる特徴的な機能に関する説明の便宜のために独立的に図示されたものであって、各構成が互いに別個のハードウェアや別個のソフトウェアで実現されるということを意味するものではない。例えば、各構成のうち、2つ以上の構成が結合されて1つの構成をなすこともでき、1つの構成を複数の構成に分けることもできる。各構成が統合及び/又は分離された実施例も本文書において開示された方法の本質から逸脱しない限り、本文書の開示範囲に含まれる。
【0021】
本文書は、ビデオ(video)/映像(image)コーディングに関する。例えば、本文書 において開示された方法/実施例は、VVC(versatile video coding)標準に開示される方法に適用できる。また、 本文書 において開示された方法/実施例は、EVC(essential video coding)標準、AV1(AOMedia Video 1)標準、AVS2(2nd generation of audio video coding standard)又は次世代ビデオ/映像コーディング標準(ex.H.267、H.268など)に開示される方法に適用できる。
【0022】
本文書においてビデオ(video)は、時間の経過とともに一連の映像(image)の集合を意味し得る。ピクチャ(picture)は一般的に、特定の時間帯の1つの映像を表す単位を意味し、スライス(slice)//タイル(tile)はコーディングにおいてピクチャの一部を構成する単位である。スライス/タイルは、1つ以上のCTU(coding tree unit)を含み得る。 1つのピクチャは、1つ以上のスライス/タイルで構成することができる。1つのピクチャは、1つ以上のタイルグループで構成され得る。1つのタイルグループは1つ以上のタイルを含むことができる。ブリックは、ピクチャ内のタイル内のCTU行の四角領域を表すことができます。タイルは複数のブリックに分割することができ、各ブリックは前記タイル内の1つ以上のCTU行で構成することができる。複数のブリックでパーティショニングされていないタイルはまたブリックと呼ばれることがある。ブリックスキャンは、ピクチャをパーティショニングするCTUの特定の順次オーダリングを表すことができ、前記CTUはブリック内でCTUラスタスキャンに整列することができ、タイル内のブリックは前記タイルの前記ブリックのラスタスキャンに連続的に整列させることができ。そして、ピクチャ内のタイルは、前記ピクチャの前記タイルのラスタスキャンで連続的に整列されることができる。タイルは、特定のタイル列及び特定のタイル列以内のCTUの四角領域である。前記タイル列はCTUの四角領域であり、前記四角領域は前記ピクチャの高さと同じ高さを有し、幅はピクチャパラメータセット内のシンタックス要素によって明示され得る。前記タイル行はCTUの四角領域であり、前記四角領域はピクチャパラメータセット内のシンタックス要素によって明示される幅を有し、高さは前記ピクチャの高さと同じであることがある。タイルスキャンは、ピクチャをパーティショニングするCTUの特定の順次オーダリングを表すことができ、前記CTUはタイル内のCTUラスタスキャンで連続的に整列することができ、ピクチャ内のタイルは前記ピクチャの前記タイルのラスタスキャンで連続的に整列され得る。スライスはピクチャの整数個のブリックを含み得、前記整数個のブリックは1つのNALユニットに含まれる。スライスは、複数の完全なタイルから構成され得、または1つのタイルの完全なブリックの連続シーケンスで有り得る。本文書において、タイルグループとスライスは混用され得る。例えば、本文書において、タイルグループ(tile group)/タイルグループヘッダー(tile group header)はスライス(slice)//スライスヘッダー(slice header)と呼ばれることがある。
【0023】
ピクセル(pixel)またはペル(pel)は、1つのピクチャ(または、映像)を構成する最小の単位を意味することができる。また、ピクセルに対応する用語として「サンプル(sample)」が使用されることができる。サンプルは、一般的にピクセルまたはピクセルの値を示すことができ、ルマ(luma)成分のピクセル/ピクセル値のみを示すこともでき、クロマ(chroma)成分のピクセル/ピクセル値のみを示すこともできる。または、サンプルは、空間ドメインでのピクセル値を意味することもでき、このようなピクセル値が周波数ドメインに変換されると、周波数ドメインでの変換係数を意味することもできる。
【0024】
ユニット(unit)は、映像処理の基本単位を示すことができる。ユニットは、ピクチャの特定領域及び当該領域に関連した情報のうち少なくとも1つを含むことができる。1つのユニットは、1つのルマブロック及び2つのクロマ(例えば、cb、cr)ブロックを含むことができる。ユニットは、場合によって、ブロック(block)または領域(area)などの用語と混用して使用されることができる。一般的な場合、M×Nブロックは、M個の列とN個の行からなるサンプル(または、サンプルアレイ)、または変換係数(transform coefficient)の集合(または、アレイ)を含むことができる。
【0025】
ユニットは、場合によってはブロック(block)または領域(area)などの用語と混用して用いられる。一般的な場合、MxNブロックは、M個の列とN個の行からなるサンプルまたは変換係数(transform coefficient)の集合を表すことができる。サンプルは一般にピクセルまたはピクセルの値を表すことができ、輝度(luma)成分のピクセル/ピクセル値のみを表すことができ、彩度(chroma)成分のピクセル/ピクセル値のみを表すことができる。 サンプルは、1つのピクチャ(または映像)をピクセル(pixel)またはペル(pel)に対応する用語として用いられる。
【0026】
本文書においてはビデオ/映像コーディングに関する様々な実施例が提示され、他に言及がない限り、前記実施例は互いに組み合わせて行われることもできる。
【0027】
本文書において1つの図面内で別々に説明される技術的特徴は、別々に実現され得、同時に実現され得る。
【0028】
以下、添付した図面を参照して、本文書の実施例をより詳細に説明する。以下、図面上の同一の構成要素に対しては同一の参照符号を使用し、同一の構成要素に関して重複する説明は省略する。
【0029】
図1は、本文書の実施例が適用できるビデオ/映像コーディングシステムの例を概略的に示す。
【0030】
図1に示すように、ビデオ/映像コーディングシステムは、第1の装置(ソースデバイス)及び第2の装置(受信デバイス)を備える。ソースデバイスは、エンコーディングされたビデオ(video)/映像(image)情報又はデータをファイル又はストリーミング形態でデジタル格納媒体又はネットワークを介して受信デバイスに伝達することができる。
【0031】
前記ソースデバイスは、ビデオソース、エンコーディング装置、送信部を含むことができる。前記受信デバイスは、受信部、デコーディング装置、及びレンダラを含むことができる。前記エンコーディング装置は、ビデオ/映像エンコーディング装置と呼ばれることができ、前記デコーディング装置は、ビデオ/映像デコーディング装置と呼ばれることができる。送信機は、エンコーディング装置に含まれることができる。受信機は、デコーディング装置に含まれることができる。レンダラは、ディスプレイ部を含むこともでき、ディスプレイ部は、別個のデバイスまたは外部コンポーネントで構成されることもできる。
【0032】
ビデオソースは、ビデオ/映像のキャプチャ、合成または生成過程などを介してビデオ/映像を獲得することができる。ビデオソースは、ビデオ/映像キャプチャデバイス及び/またはビデオ/映像生成デバイスを含むことができる。ビデオ/映像キャプチャデバイスは、例えば、1つ以上のカメラ、以前にキャプチャされたビデオ/映像を含むビデオ/映像アーカイブなどを含むことができる。ビデオ/映像生成デバイスは、例えば、コンピュータ、タブレット、及びスマートフォンなどを含むことができ、(電子的に)ビデオ/映像を生成することができる。例えば、コンピュータなどを介して仮想のビデオ/映像が生成されることができ、この場合、ビデオ/映像キャプチャ過程を関連データが生成される過程に代替されることができる。
【0033】
エンコーディング装置は、入力ビデオ/映像をエンコーディングすることができる。エンコーディング装置は、圧縮及びコーディング効率のために、予測、変換、量子化など、一連の手順を実行することができる。エンコーディングされたデータ(エンコーディングされたビデオ/映像情報)は、ビットストリーム(bitstream)形態で出力されることができる。
【0034】
送信部は、ビットストリーム形態で出力されたエンコーディングされたビデオ/映像情報またはデータをファイルまたはストリーミング形態でデジタル格納媒体またはネットワークを介して受信デバイスの受信部に伝達できる。デジタル格納媒体は、USB、SD、CD、DVD、ブルーレイ、HDD、SSDなど、多様な格納媒体を含むことができる。送信部は、予め決められたファイルフォーマットを介してメディアファイルを生成するためのエレメントを含むことができ、放送/通信ネットワークを介した送信のためのエレメントを含むことができる。受信部は、前記ビットストリームを受信/抽出してデコーディング装置に伝達できる。
【0035】
デコーディング装置は、エンコーディング装置の動作に対応する逆量子化、逆変換、予測など、一連の手順を実行してビデオ/映像をデコーディングすることができる。
【0036】
レンダラは、デコーディングされたビデオ/映像をレンダリングすることができる。レンダリングされたビデオ/映像は、ディスプレイ部を介してディスプレイされることができる。
【0037】
本文書においては、「/」と「、」は「及び/または」と解釈される。例えば、「A/B」は「A及び/またはB」と解釈され、「A、B」は「A及び/またはB」と解釈される。さらに、「A/B/C」は、「A、B及び/またはCの内、少なくとも1つ」を意味する。また、「A、B、C」も「A、B及び/またはCの内、少なくとも1つ」を意味する。
【0038】
さらに、本文書において、「または」は「及び/または」と解釈される。例えば、「AまたはB」は、1)「A」のみを意味し、2)「B」のみを意味するか、または3)「A及びB」を意味することができる。言い換えれば、本文書の「または」は、「追加的または代替的(additionally or alternatively)に」を意味することができる。
【0039】
さらに、本文書で使用される括弧は「例えば(for example)」を意味し得る。具体的に、「予測(イントラ予測)」と表示された場合、「予測」の一例として「イントラ予測」が提案されたもので有り得る。言い換えれば、本文書の「予測」は「イントラ予測」に限定(limit)されず、「イントラ予測」が「予測」の一例として提案され得る。また、「予測(すなわち、イントラ予測)」と表示された場合でも、「予測」の一例として「イントラ予測」が提案されたもので有り得る。
【0040】
図2は、本文書の実施例が適用できるビデオ/映像エンコーディング装置の構成を概略的に説明する図である。以下、ビデオエンコーディング装置とは、映像エンコーディング装置を含む。
【0041】
図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を内/外部コンポーネントとしてさらに備えることもできる。
【0042】
画像分割部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)を導く単位であることができる。
【0043】
エンコーディング装置200は、入力映像信号(元ブロック、元サンプルアレイ)からインター予測部221またはイントラ予測部222から出力された予測信号(予測されたブロック、予測サンプルアレイ)を減算してレジデュアル信号(residual signal、残りブロック、残りサンプルアレイ)を生成することができ、生成されたレジデュアル信号は変換部232に伝送される。この場合、図示のようにエンコーディング装置200内で入力映像信号(元ブロック、元サンプルアレイ)から予測信号(予測ブロック、予測サンプルアレイ)を減算するユニットは減算部231と呼ばれる。予測部220は、処理対象ブロック(以下、現在ブロックと称する)の予測を行い、前記現在ブロックの予測サンプルを含む予測ブロック(predicted block)を生成することができる。予測部220は、現在ブロックまたはCU単位でイントラ予測が適用されるか、またはインター予測が適用されるかを決定することができる。予測部220は、各予測モードの説明で後述するように、予測モード情報などの予測に関する様々な情報を生成してエントロピーエンコーディング部240に伝達することができる。予測に関する情報は、エントロピーエンコーディング部240でエンコーディングされ、ビットストリーム形態で出力され得る。
【0044】
イントラ予測部222は、現在ピクチャ内のサンプルを参照して現在ブロックを予測することができる。前記参照されるサンプルは、予測モードによって前記現在ブロックの隣接(neighbor)に位置することができ、または、離れて位置することもできる。イントラ予測で予測モードは、複数の非方向性モードと複数の方向性モードとを含むことができる。非方向性モードは、例えば、DCモード及びプラナーモード(Planarモード)を含むことができる。方向性モードは、予測方向の細かい程度によって、例えば、33個の方向性予測モードまたは65個の方向性予測モードを含むことができる。ただし、これは、例示であり、設定によってそれ以上またはそれ以下の個数の方向性予測モードが使用され得る。イントラ予測部222は、隣接ブロックに適用された予測モードを用いて、現在ブロックに適用される予測モードを決定することもできる。
【0045】
インター予測部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)をシグナリングすることにより、現在ブロックの動きベクトルを指示することができる。
【0046】
予測部220は、後述する様々な予測方法に基づいて予測信号を生成する。例えば、予測部200は、1つのブロックに対する予測のためにイントラ予測又はインター予測を適用できるだけでなく、イントラ予測とインター予測を同時に適用することができる。これは、combined inter and intra prediction(CIIP)と呼ばれる。また、予測部は、ブロックに対する予測のためにイントラブロックコピー(intra block copy:IBC)予測モードに基づくこともあり又はパレットモード(palette mode)に基づくこともある。前記IBC予測モード又はパレットモードは、例えば、SCC(screen content coding)のようにゲームなどのコンテンツ映像/動画コーディングのために使用されることができる。IBCは、基本的に現在ピクチャ内において予測を行うが、現在ピクチャ内において参照ブロックを導出する点でインター予測と類似して行われる。すなわち、IBCは、本文書において説明されるインター予測技法のうち少なくとも1つを利用することができる。パレットモードは,イントラコーディング又はイントラ予測の一例と見なすことができる。パレットモードが適用される場合、パレットテーブル及びパレットインデックスに関する情報に基づいてピクチャ内のサンプル値をシグナリングすることができる。
【0047】
前記予測部(インター予測部221及び/又は前記イントラ予測部222を含む)を介して生成された予測信号は、復元信号を生成するために用いられるか、レジデュアル信号を生成するために用いられることができる。
【0048】
変換部232は、レジデュアル信号に変換技法を適用して変換係数(transform coefficients)を生成することができる。例えば、変換技法は、DCT(Discrete Cosine Transform)、DST(Discrete Sine Transform)、GBT(Graph-Based Transform)、又はCNT(Conditionally Non-linear Transform)の少なくとも1つを含む。ここで、GBTは、ピクセル間の関係情報をグラフで表現する時、このグラフから得られた変換を意味する。CNTは、以前に復元された全てのピクセル(all previously reconstructed pixel)を用いて予測信号を生成し、それに基づいて獲得される変換を意味する。また、変換過程は、正方形の同一のサイズを有するピクセルブロックに適用されてもよく、正方形ではない可変サイズのブロックに適用され得る。
【0049】
量子化部233は、変換係数を量子化してエントロピーエンコーディング部240に送信し、エントロピーエンコーディング部240は、量子化された信号(量子化された変換係数に関する情報)をエンコーディングしてビットストリームとして出力する。前記量子化された変換係数に関する情報は、レジデュアル情報と呼ばれてもよい。量子化部233は、係数スキャン順序(scan order)に基づいてブロック形態の量子化された変換係数を1次元ベクトル形態で再整列し、前記1次元ベクトル形態の量子化された変換係数に基づいて前記量子化された変換係数に関する情報を生成することもできる。
【0050】
エントロピーエンコーディング部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に含まれてもよい。
【0051】
量子化部233から出力された量子化された変換係数は、予測信号を生成するために用いられることができる。例えば、量子化された変換係数に逆量子化部234及び逆変換部235を介して逆量子化及び逆変換を適用することにより、レジデュアル信号(レジデュアルブロック又はレジデュアルサンプル)を復元する。加算部250が復元されたレジデュアル信号をインター予測部221又はイントラ予測部222から出力された予測信号に加えることにより、復元(reconstructed)信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)が生成される。スキップモードが適用された場合のように、処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用されることができる。加算部250は、復元部又は復元ブロック生成部と呼ばれてもよい。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用され、後述するように、フィルタリングを経て次のピクチャのインター予測のために使用されることもできる。
【0052】
一方、ピクチャエンコーディング及び/又は復元過程においてLMCS(luma mapping with chroma scaling)が適用されることもできる。
【0053】
フィルタリング部260は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部260は、復元ピクチャに様々なフィルタリング方法を適用して修正された(modified)復元ピクチャを生成し、前記修正された復元ピクチャをメモリ270、具体的に、メモリ270のDPBに格納する。前記様々なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、両方向フィルタ(bilateral filter)などを含む。フィルタリング部260は、各フィルタリング方法に関する説明において後述するように、フィルタリングに関する様々な情報を生成してエントロピーエンコーディング部240に伝達する。フィルタリングに関する情報は、エントロピーエンコーディング部240においてエンコーディングされてビットストリーム形態で出力される。
【0054】
メモリ270に送信された修正された復元ピクチャは、インター予測部221において参照ピクチャとして使用されることができる。エンコーディング装置は、これによりインター予測が適用される場合、エンコーディング装置100とデコーディング装置における予測ミスマッチを避けることができ、エンコーディング効率も向上させることができる。
【0055】
メモリ270のDPBは、修正された復元ピクチャをインター予測部221での参照ピクチャとして使用するために格納することができる。メモリ270は、現在ピクチャ内の動き情報が導出された(または、エンコーディングされた)ブロックの動き情報及び/または既に復元されたピクチャ内のブロックの動き情報を格納することができる。前記格納された動き情報は、空間的隣接ブロックの動き情報または時間的隣接ブロックの動き情報として活用するためにインター予測部221に伝達できる。メモリ270は、現在ピクチャ内の復元されたブロックの復元サンプルを格納することができ、イントラ予測部222に伝達できる。
【0056】
図3は、本文書の実施例が適用できるビデオ/映像デコーディング装置の構成を概略的に説明する図である。
【0057】
図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を内/外部コンポーネントとしてさらに備えることもできる。
【0058】
ビデオ/画像情報を含むビットストリームが入力されれば、デコーディング装置300は、図3のエンコーディング装置でビデオ/画像情報が処理されたプロセスに対応して画像を復元することができる。例えば、デコーディング装置300は、前記ビットストリームから獲得したブロック分割関連情報に基づいてユニット/ブロックを導出することができる。デコーディング装置300は、エンコーディング装置で適用された処理ユニットを用いてデコーディングを行うことができる。したがって、デコーディングの処理ユニットは、例えば、コーディングユニットであることができ、コーディングユニットは、コーディングツリーユニットまたは最大コーディングユニットからクアッドツリー構造、バイナリツリー構造、及び/またはターナリツリー構造にしたがって分割されることができる。コーディングユニットから1つ以上の変換ユニットが導出され得る。そして、デコーディング装置300を介してデコーディング及び出力された復元画像信号は、再生装置を介して再生されることができる。
【0059】
デコーディング装置300は、図2のエンコーディング装置から出力された信号をビットストリームの形態で受信し、受信された信号はエントロピーデコーディング部310によりデコーディングされる。例えば、エントロピーデコーディング部310は、前記ビットストリームをパーシング(parsing)して映像復元(又はピクチャ復元)に必要な情報(例えば、ビデオ/映像情報)を導出することができる。前記ビデオ/映像情報は、アダプテーションパラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)又はビデオパラメータセット(VPS)などの様々なパラメータセットに関する情報をさらに含んでもよい。また、前記ビデオ/映像情報は一般制限情報(general constraint information)をさらに含んでもよい。デコーディング装置は、前記パラメータセットに関する情報及び/又は前記一般制限情報をさらに基づいてピクチャをデコーディングすることができる。本文書において後述されるシグナリング/受信される情報及び/又はシンタックス要素は、前記デコーディング手順を介してデコーディングされて前記ビットストリームから獲得できる。例えば、エントロピーデコーディング部310は、指数ゴロムエンコーディング、CAVLC(context-adaptive variable length coding)又はCABAC(context-adaptive arithmetic coding)などのコーディング方法に基づいてビットストリーム内の情報をデコーディングし、映像復元に必要なシンタックスエレメントの値、レジデュアルに関する変換係数の量子化された値を出力する。より詳細に、CABACエントロピーデコーディング方法は、ビットストリームにおいて各構文要素に該当するビン(bin)を受信し、デコーディング対象構文要素情報と周辺及びデコーディング対象ブロックのデコーディング情報あるいは以前ステップでデコーディングされたシンボル/ビンの情報を利用して文脈(context)モデルを決定し、決定された文脈モデルに応じてビンの発生確率を予測してビンの算術デコーディング(arithmetic decoding)を実行して各構文要素の値に該当するシンボルを生成することができる。この時、CABACエントロピーデコーディング方法は、文脈モデル決定の後、次のシンボル/ビンの文脈モデルのためにデコーディングされたシンボル/ビンの情報を利用して文脈モデルをアップデートすることができる。エントロピーデコーディング部310においてデコーディングされた情報のうち予測に関する情報は予測部(インター予測部332及びイントラ予測部331)に提供され、エントロピーデコーディング部310においてエントロピーデコーディングが行われたレジデュアル値、すなわち、量子化された変換係数及び関連パラメータ情報はレジデュアル処理部320に入力されることができる。
【0060】
レジデュアル処理部320は、レジデュアル信号(レジデュアルブロック、レジデュアルサンプル、レジデュアルサンプルアレイ)を導出することができる。また、エントロピーデコーディング部310においてデコーディングされた情報のうちフィルタリングに関する情報はフィルタリング部350に提供される。一方、エンコーディング装置から出力された信号を受信する受信部(図示せず)がデコーディング装置300の内/外エレメントとしてさらに構成されてもよく、また、受信部はエントロピーデコーディング部310の構成要素であってもよい。一方、本文書に係るデコーディング装置はビデオ/映像/ピクチャデコーディング装置と呼ばれてもよく、前記デコーディング装置は情報デコーダ(ビデオ/映像/ピクチャ情報デコーダ)及びサンプルデコーダ(ビデオ/映像/ピクチャサンプルデコーダ)に区分することもできる。前記情報デコーダは前記エントロピーデコーディング部310を含み、前記サンプルデコーダは前記逆量子化部321、逆変換部322、加算部340、フィルタリング部350、メモリ360、インター予測部332及びイントラ予測部331の少なくとも1つを含む。
【0061】
逆量子化部321では、量子化された変換係数を逆量子化して変換係数を出力することができる。逆量子化部321は、量子化された変換係数を2次元のブロック形態で再整列することができる。この場合、前記再整列は、エンコーディング装置で行われた係数スキャン順序に基づいて再整列を行うことができる。逆量子化部321は、量子化パラメータ(例えば、量子化ステップサイズ情報)を用いて量子化された変換係数に対する逆量子化を行い、変換係数(transform coefficient)を獲得することができる。
【0062】
逆変換部322では、変換係数を逆変換してレジデュアル信号(レジデュアルブロック、レジデュアルサンプルアレイ)を獲得するようになる。
【0063】
本文書において、量子化/逆量子化及び/または変換/逆変換の内、少なくとも1つは省略することができる。前記量子化/逆量子化が省略される場合、前記量子化された変換係数は変換係数と呼ばれることができる。前記変換/逆変換が省略される場合、前記変換係数は係数またはレジデュアル係数と呼ばれることがあり、または表現の統一性のために変換係数と依然として呼ばれることがある。
【0064】
本文書において、量子化された変換係数及び変換係数は、それぞれ変換係数及びスケーリングされた(scaled)変換係数と呼ばれることがある。この場合、レジデュアル情報は変換係数に関する情報を含むことができ、前記変換係数に関する情報はレジデュアルデコーディングシンタックスを介してシグナリングすることができる。前記レジデュアル情報(または変換係数に関する情報)に基づいて変換係数を導出することができ、前記変換係数に対する逆変換(スケーリング)を介してスケーリングされた変換係数を導出することができる。前記スケーリングされた変換係数に対する逆変換(変換)に基づいてレジデュアルサンプルを導出することができる。これは、本文書の他の部分にも同様に適用/表現することができる。
【0065】
予測部330は、現在ブロックに対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成する。予測部330は、エントロピーデコーディング部310から出力された前記予測に関する情報に基づいて前記現在ブロックにイントラ予測が適用されるか又はインター予測が適用されるかを決定することができ、具体的なイントラ/インター予測モードを決定することができる。
【0066】
予測部330は、後述する多様な予測方法に基づいて予測信号を生成することができる。例えば、予測部は、1つのブロックに対する予測のためにイントラ予測又はインター予測を適用できるだけでなく、イントラ予測とインター予測を同時に適用することができる。これは、combined inter and intra prediction(CIIP)と呼ばれてもよい。また、予測部は、ブロックに対する予測のためにイントラブロックコピー(intra block copy:IBC)予測モードに基づいてもよく又はパレットモード(palette mode)に基づいてもよい。前記IBC予測モード又はパレットモードは、例えば、SCC(screen content coding)のように、ゲームなどのコンテンツ映像/動画コーディングのために使用できる。IBCは基本的に現在ピクチャ内において予測を行うが、現在ピクチャ内において参照ブロックを導出する点でインター予測と類似して行われることができる。すなわち、IBCは、本文書において説明されるインター予測技法のうち少なくとも1つを利用することができる。パレットモードは,イントラコーディング又はイントラ予測の一例と見なすことができる。パレットモードが適用される場合、パレットテーブル及びパレットインデックスに関する情報が前記ビデオ/映像情報に含まれてシグナリングされる。
【0067】
イントラ予測部331は現在ピクチャ内のサンプルを参照して現在ブロックを予測することができる。前記参照されるサンプルは、予測モードによって前記現在ブロックの周辺(neighbour)に位置してもよく、又は、離れて位置してもよい。イントラ予測において予測モードは複数の非方向性モードと複数の方向性モードを含む。イントラ予測部331は、周辺ブロックに適用された予測モードを用いて、現在ブロックに適用される予測モードを決定することもできる。
【0068】
インター予測部332は、参照ピクチャ上において動きベクトルにより特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを誘導することができる。その時、インター予測モードで送信される動き情報の量を減らすために周辺ブロックと現在ブロック間の動き情報の相関性に基づいて動き情報をブロック、サブブロック又はサンプル単位で予測することができる。前記動き情報は、動きベクタ及び参照ピクチャインデックスを含む。前記動き情報は、インター予測方向(L0予測、L1予測、Bi予測など)情報をさらに含んでもよい。インター予測の場合、周辺ブロックは現在ピクチャ内に存在する空間的周辺ブロック(spatial neighbouring block)と参照ピクチャに存在する時間的周辺ブロック(temporal neighbouring block)を含む。例えば、インター予測部332は、周辺ブロックに基づいて動き情報候補リストを構成し、受信した候補選択情報に基づいて前記現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導出することができる。様々な予測モードに基づいてインター予測が行われることができ、前記予測に関する情報は、前記現在ブロックに対するインター予測モードを指示する情報を含む。
【0069】
加算部340は、獲得されたレジデュアル信号を予測部(インター予測部332及び/又はイントラ予測部331を含む)から出力された予測信号(予測されたブロック、予測サンプルアレイ)に加えることにより復元信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成することができる。スキップモードが適用された場合のように処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用されることができる。
【0070】
加算部340は、復元部または復元ブロック生成部と呼ばれることができる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使われることができ、後述するように、フィルタリングを経て出力されることもでき、または、次のピクチャのインター予測のために使われることもできる。
【0071】
一方、ピクチャデコーディング過程でLMCS(luma mapping with chroma scaling)が適用されることもできる。
【0072】
フィルタリング部350は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部350は、復元ピクチャに多様なフィルタリング方法を適用して修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ360、具体的に、メモリ360のDPBに送信できる。前記多様なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、両方向フィルタ(bilateral filter)などを含むことができる。
【0073】
メモリ360のDPBに格納された(修正された)復元ピクチャは、インター予測部332において参照ピクチャとして使用できる。メモリ360は、現在ピクチャ内の動き情報が導出された(又はデコーディングされた)ブロックの動き情報及び/又は既に復元されたピクチャ内のブロックの動き情報を格納することができる。前記格納された動き情報は、空間的周辺ブロックの動き情報又は時間的周辺ブロックの動き情報として活用するためにインター予測部221に伝達する。メモリ360は、現在ピクチャ内の復元されたブロックの復元サンプルを格納でき、イントラ予測部331に伝達することができる。
【0074】
本文書において、エンコーディング装置200のフィルタリング部260、インター予測部221、及びイントラ予測部222で説明した実施形態は、それぞれ、デコーディング装置300のフィルタリング部350、インター予測部332及びイントラ予測部331にも同一又は対応するように適用することができる。
【0075】
一方、本文書に係るビデオ/映像コーディング方法は、以下のパーティショニング構造に基づいて行うことができる。具体的に、前述した予測、レジデュアル処理((逆)変換、(逆)量子化など)、シンタックス要素コーディング、フィルタリングなどの手順は、前記パーティショニング構造に基づいて導出されたCTU、CU(及び/又はTU、PU )に基づいて行うことができる。ブロックパーティショニング手順は、前述したエンコーディング装置の画像分割部210で行われ、パーティショニング関連情報がエントロピーエンコーディング部240で(エンコーディング)処理され、ビットストリーム形態でデコーディング装置に伝達され得る。デコーディング装置のエントロピーデコーディング部310は、前記ビットストリームから獲得した前記パーティショニング関連情報に基づいて現在ピクチャのブロックパーティショニング構造を導出し、これに基づいて映像デコーディングのための一連の手順(ex.予測、レジデュアル処理、ブロック/ピクチャ復元、インループフィルタリングなどを行うことができる。CUサイズとTUサイズが同じで有り得、またはCU領域内に複数のTUが存在することもある。一方、CUサイズとは、一般的にルマ成分(サンプル)CB(coding block)サイズを表すことができる。 TUサイズとは、一般的にルマ成分(サンプル)TB(transform block)サイズを表すことができる。クロマ成分(サンプル) CBまたはTBサイズは、ピクチャ/映像のカラーフォーマット(クロマフォーマット、ex. 4:4:4、4:2:2、4:2:0など)による成分比によるルマ成分(サンプル)CBまたはTBサイズに基づいて導出することができる。 前記TUサイズはmaxTbSizeに基づいて導出することができる。例えば、前記CUサイズが前記maxTbSizeより大きい場合、前記CUから前記maxTbSizeの複数のTU(TB)が導出され、前記TU(TB)単位に変換/逆変換が行われる。また、例えば、イントラ予測が適用される場合、イントラ予測モード/タイプは前記CU(or CB)単位で導出され、周辺参照サンプル導出及び予測サンプル生成手順はTU(or TB)単位で実行され得る。この場合、1つのCU(またはCB)領域内に1つ以上のTU(またはTB)が存在することができ、この場合、前記複数のTU(またはTB)は同じイントラ予測モード/タイプを共有することができる。
【0076】
また、本文書に係るビデオ/画像のエンコーディングにおいて、画像処理単位は階層的構造を有することができる。1つのピクチャは、1つ以上のタイル、ブリック、スライス、及び/またはタイルグループに区分されることができる。1つのスライスは1つ以上のブリックを含むことができる。1つのブリックは、タイル内の1つ以上のCTU行(row)を含むことができる。スライスは、ピクチャの整数個のブリックを含むことができる。1つのタイルグループは1つ以上のタイルを含むことができる。 1つのタイルは1つ以上のCTUを含み得る。 前記CTUは1つ以上のCUに分割することができる。タイルは、ピクチャ内の特定のタイル行と特定のタイル列内のCTUを含む四角領域(rectangular region)である。タイルグループは、ピクチャ内のタイルラスタスキャンによる整数個のタイルを含み得る。スライスヘッダは、該スライス(スライス内のブロック)に適用され得る情報/パラメータを運び得る。エンコーディング/デコーディング装置がマルチコアプロセッサを有する場合、前記タイル、スライス、ブリック、及び/またはタイルグループのエンコーディング/デコーディング手順は並列処理され得る。本文書において、スライスまたはタイルグループは混用され得る。すなわち、タイルグループヘッダをスライスヘッダと呼ばれる。ここで、スライスは、intra (I) slice, predictive (P) slice 及びbi-predictive (B) sliceを含むスライスタイプの内、1つを有することができる。Iスライス内のブロックについては、予測のためにインター予測は使用されず、イントラ予測のみが使用され得る。もちろん、この場合も予測せずに元のサンプル値をコーディングしてシグナリングすることもできる。Pスライス内のブロックに対してはイントラ予測またはインター予測を使用することができ、インター予測が使用される場合には単(uni)予測のみを用いられる。一方、Bスライス内のブロックに対してはイントラ予測またはインター予測を用いることができ、インター予測が使用される場合には最大対(bi)予測まで用いられる。
【0077】
エンコーディング装置においては、ビデオ画像の特性(例えば解像度)に応じて、またはエンコーディングの効率または並列処理を考慮して、タイル/タイルグループ、ブリック、スライス、最大及び最小のコーディング単位サイズを決定し、それに関する情報またはそれを導くことができる情報をビットストリームに含めることができる。
【0078】
デコーディング装置においては、現在ピクチャのタイル/タイルグループ、ブリック、スライス、タイル内のCTUが複数のコーディングユニットに分割されたかなどを示す情報を獲得することができる。このような情報は、特定の条件下でのみ獲得(伝送)するようにすると効率を高めることができる。
【0079】
一方、前述のように、1つのピクチャは複数のスライスを含むことができ、1つのスライスはスライスヘッダ及びスライスデータを含むことができる。この場合、1つのピクチャ内の複数のスライス(スライスヘッダ及びスライスデータセット)に対して1つのピクチャヘッダがさらに付加されることができる。前記ピクチャヘッダ(ピクチャヘッダシンタックス)は、前記ピクチャに共通的に適用できる情報/パラメータを含むことができる。前記スライスヘッダ(スライスヘッダシンタックス)は、前記スライスに共通的に適用できる情報/パラメータを含むことができる。APS(adaptation parameter set)またはPPS(picture parameter set)は、1つ以上のピクチャに共通に適用できる情報/パラメータを含むことができる。SPS(sequence parameter set)は、1つ以上のシーケンスに共通的に適用できる情報/パラメータを含み得る。VPS(video parameter set)は、多重層に共通に適用できる情報/パラメータを含むことができる。 DPS(decoding parameter set)は、ビデオ全般に共通的に適用できる情報/パラメータを含むことができる。 前記DPSは、 CVS(coded video sequence)のconcatenationに関する情報/パラメータを含むことができる。
【0080】
本文書において上位レベルシンタックスとは、前記APSシンタックス、PPSシンタックス、SPSシンタックス、VPSシンタックス、DPSシンタックス、ピクチャヘッダシンタックス、スライスヘッダシンタックスの内、少なくとも1つを含むことができる。
【0081】
また、例えば、前記タイル/タイルグループ/ブリック/スライスの分割及び構成などに関する情報は、前記上位レベルシンタックスに基づいてエンコーディング装置で構成され、ビットストリーム形態デコーディング装置に伝達され得る。
【0082】
ピクチャは、1つ以上のタイル行(tile rows)と1つ以上のタイル列(tile columns)に分割することができる。タイルは、ピクチャの長方形領域をカバーするCTUのシーケンスである。タイルは1つ以上のブリックに分割され、各ブリックはタイル内の複数のCTU行で構成され得る。複数のブリックに分割されていないタイルもまたブリックとし得る。しかし、タイルの下位セットであるブリックはタイルとは言えない。スライスは、ピクチャの複数のタイルまたはタイルの複数のブリックを含むことができる。
【0083】
図4は、ピクチャデコーディング手順の一例を示す。
【0084】
映像/ビデオコーディングにおいて、映像/ビデオを構成するピクチャは、一連のデコーディング順序(decoding order)に従ってエンコーディング/デコーディングすることができる。デコーディングされたピクチャの出力順序(output order)に該当するピクチャ順序(picture order)は、前記デコーディング順序とは異なるように設定することができ、それに基づいてインター予測時に順方向予測だけでなく逆方向予測もまた実行することができる。
【0085】
図4には、本文書の実施形態が適用できる概略的なピクチャデコーディング手順の例が示されている。図4において、S400は、図3で詳述したデコーディング装置のエントロピーデコーディング部310で行われ、S410は予測部330で行われ、S420はレジデュアル処理部320で実行され得。S430は加算部340で行われ、S440はフィルタリング部350で行われる。S400は、本文書で説明される情報デコーディング手順を含み得、S410は、本文書で説明されるインター/イントラ予測手順を含み得、S420は、本文書で説明されるレジデュアル処理手順を含み得、S430は、本文書で説明されるブロック/ピクチャ復元手順を含み得、S440は、本文書で説明されたインループフィルタリング手順を含むことができる。
【0086】
図4を参照すると、ピクチャデコーディング手順は、図3の説明に示されるように、概略的にビットストリームから(デコーディングを介した)映像/ビデオ情報獲得手順(S400)、ピクチャ復元手順(S410~S430)、及び復元された。ピクチャのインループフィルタリング手順(S440)を含むことができる。前記ピクチャ復元手順は、本文書で説明されるインター/イントラ予測(S410)及びレジデュアル処理(S420、量子化された変換係数に対する逆量子化、逆変換)プロセスを経て獲得した予測サンプル及びレジデュアルサンプルに基づいて実行され得る。前記ピクチャ復元手順によって生成された復元ピクチャのインループフィルタリング手順を介して修正された(modified))復元ピクチャが生成されることができ、前記修正された復元ピクチャがデコーディングされたピクチャとして出力することができ、またデコーディング装置の復号ピクチャバッファまたはメモリ360に格納され、その後ピクチャのデコーディング時にインター予測手順で参照ピクチャとして用いられる。場合によっては、前記インループフィルタリング手順を省略することができ、この場合前記復元ピクチャがデコーディングされたピクチャとして出力することができ、またデコーディング装置の復号ピクチャバッファまたはメモリ360に格納され、その後ピクチャのデコーディング時にインター予測手順で参照ピクチャとして使用できる。前記インループフィルタリング手順(S440)は、前述したように、デブロックフィルタリング手順、SAO(sample adaptive offset)手順、ALF(adaptive loop filter)手順、及び/またはバイラテラルフィルタ(bi-lateral filter)手順などを含み得、その一部または全部を省略することができる。さらに、前記デブロックフィルタリング手順、SAO(sample adaptive offset)手順、ALF(adaptive loop filter)手順、及びバイラテラルフィルタ(bi-lateral filter)手順などを含み得、その一部またはすべてが省略されることができる。また、デブロックフィルタリング手順、SAO(sample adaptive offset)手順、ALF(adaptive loop filter)手順、及びバイラテラルフィルタ(bi-lateral filter)手順の内、1つまたは一部を順次適用することができ、またはすべてを順次に適用することができる。例えば、復元ピクチャに対してデブロックフィルタリング手順が適用された後、SAO手順を実行することができる。あるいは、例えば復元ピクチャに対してデブロックフィルタリング手順が適用された後にALF手順を実行することができる。これは、エンコーディング装置においても同様に行うことができる。
【0087】
図5は、ピクチャエンコーディング手順の例を示す。
【0088】
図5には、本文書の実施形態が適用できる概略的なピクチャエンコーディング手順の例が示されている。図5において、S500は、図2で詳述したエンコーディング装置の予測部220で実行することができ、S510はレジデュアル処理部230で実行することができ、S520はエントロピーエンコーディング部240で実行することができる。S500は、本文書で説明したインター/イントラ予測手順を含み得、S610は、本文書で説明したレジデュアル処理手順を含み得、S520は、本文書で説明した情報エンコーディング手順を含むことができる。
【0089】
図5を参照すると、ピクチャエンコーディング手順は、図2の説明に示されるように、概略的にピクチャ復元のための情報(ex.予測情報、レジデュアル情報、パーティショニング情報など)をエンコーディングしてビットストリーム形態で出力する手順だけでなく、現在ピクチャの復元ピクチャを生成する手順、及び復元ピクチャにインループフィルタリングを適用する手順を含むことができる。エンコーディング装置は、逆量子化部234及び逆変換部235を介して量子化された変換係数から(修正された)レジデュアルサンプルを導出することができ、S500の出力である予測サンプルと前記(修正された)レジデュアルサンプルに基づいて復元ピクチャを生成できる。このようにして生成された復元ピクチャは、前述したデコーディング装置で生成した復元ピクチャと同じで有り得る。前記復元ピクチャのインループフィルタリング手順を介して修正された復元ピクチャを生成することができ、それは復号ピクチャバッファまたはメモリ270に格納され得、デコーディング装置での場合と同様に、以後のピクチャのエンコーディング時にインター予測手順で参照ピクチャとして使用できる。前記のように、場合によっては、前記インループフィルタリング手順の一部または全部を省略することができる。インループフィルタリング手順が実行されると、エンループピーエンコーディング部240で(インループ)フィルタリング関連情報(パラメータ)をエンコーディングしてビットストリーム形式で出力することができ、デコーディング装置はフィルタリング関連情報に基づいてエンコーディングする。装置と同じ方法でインループフィルタリング手順を実行することができる。
【0090】
このようなインループフィルタリング手順により、ブロッキングアーチファクト(artifact)やリンギング(ringing)アーティファクトなど、映像/動画コーディング時に発生するノイズを低減でき、主観的/客観的ビジュアルクオリティを高めることができる。さらに、エンコーディング装置とデコーディング装置の両方がインループフィルタリング手順を実行することによって、エンコーディング装置とデコーディング装置は同じ予測結果を導出することができ、ピクチャエンコーディングの信頼性を高め、ピクチャエンコーディングのために伝送されるべきデータ量を減らすことができる。
【0091】
前述のように デコーディング装置だけでなくエンコーディング装置でおいてもピクチャ復元手順を実行することができる。各ブロック単位でイントラ予測/インター予測に基づいて復元ブロックが生成されることができ、復元ブロックを含む復元ピクチャ生が成されることができる。現在ピクチャ/スライス/タイルグループがIピクチャ/スライス/タイルグループである場合、前記現在ピクチャ/スライス/タイルグループに含まれるブロックは、イントラ予測のみに基づいて復元され得る。一方、現在ピクチャ/スライス/タイルグループがPまたはBピクチャ/スライス/タイルグループである場合、前記現在ピクチャ/スライス/タイルグループに含まれるブロックは、イントラ予測のみに基づいて復元され得る。この場合、現在ピクチャ/スライス/タイルグループ内の一部のブロックに対してはインター予測が適用され、残りの一部のブロックに対してはイントラ予測が適用され得ることもある。ピクチャの色成分は、ルマ成分及びクロマ成分を含むことができ、本文書で明示的に限定されない限り、本文書で提案される方法及び実施形態は、ルマ成分及びクロマ成分に適用することができる。
【0092】
一方、インター予測に基づくビデオ/映像エンコーディング手順は、概略的に例えば以下を含むことができる。
【0093】
図6は、インター予測ベースのビデオ/映像エンコーディング方法の例を示し、図7は、エンコーディング装置内のインター予測部を概略的に示す。
【0094】
図6及び図7を参照すると、エンコーディング装置は現在ブロックに対するインター予測を実行する(S600)。エンコーディング装置は、現在ブロックのインター予測モード及び動き情報を導出し、前記現在ブロックの予測サンプルを生成することができる。ここで、インター予測モード決定、動き情報導出、及び予測サンプル生成手順を同時に実行することもでき、いずれかの一手順を他の手順より先に実行されることもある。例えば、エンコーディング装置のインター予測部221は、予測モード決定部221_1、動き情報導出部221_2、及び予測サンプル導出部221_3を含むことができ、予測モード決定部221_1)で前記現在ブロックの予測モードを決定し、動き情報導出部221_2で前記現在ブロックの動き情報を導出し、予測サンプル導出部221_3で前記現在ブロックの予測サンプルを導出することができる。例えば、エンコーディング装置のインター予測部は、動き推定(motion estimation)を介して参照ピクチャの一定領域(サーチ領域)内で前記現在ブロックと類似のブロックを検索し、前記現在ブロックとの差が最小または一定基準以下の参照ブロックを導出することができる。これに基づいて、前記参照ブロックが位置する参照ピクチャを指す参照ピクチャインデックスを導出し、前記参照ブロックと前記現在ブロックとの位置差に基づいて動きベクトルを導出することができる。エンコーディング装置は、様々な予測モードの内、前記現在ブロックに対して適用されるモードを決定することができる。エンコーディング装置は、前記様々な予測モードのRD(ate-distortion)コストを比較し、現在ブロックの最適予測モードを決定することができる。
【0095】
例えば、エンコーディング装置は、前記現在ブロックにスキップモードまたはマージモードが適用される場合、マージ候補リストを構成し、マージ候補リストに含まれたマージ候補が指す参照ブロックの内、前記現在ブロックと前記現在ブロックとの差が最小または一定基準以下である参照ブロックを導出することができる。この場合、導出された参照ブロックに関連するマージ候補が選択され、前記選択されたマージ候補を指すマージインデックス情報が生成され、デコーディング装置にシグナリングされ得る。前記選択されたマージ候補の動き情報を用いて、前記現在ブロックの動き情報を導出することができる。
【0096】
別の例として、エンコーディング装置は、前記現在ブロックに(A)MVPモードが適用される場合、(A)MVP候補リストを構成し、前記(A)MVP候補リストに含まれたmvp(motion vector predictor)候補の中から選択されたmvp候補の動きベクトルを前記現在ブロックのmvpとして用いられる。この場合、例えば、前述した動き推定によって導出された参照ブロックを指す動きベクトルが前記現在ブロックの動きベクトルとして用いることができ、前記mvp候補の内、前記現在ブロックの動きベクトルとの差が最も小さい動きベクトルを有するmvp候補が前記選択されたmvp候補となり得る。前記現在ブロックの動きベクトルから前記mvpを引いた差分であるMVD(motion vector difference)を導出することができる。この場合、前記MVDに関する情報がデコーディング装置にシグナリングされることができる。また、(A)MVPモードが適用される場合、前記参照ピクチャインデックスの値は参照ピクチャインデックス情報で構成され、別々に前記デコーディング装置にシグナリングされ得る。
【0097】
エンコーディング装置は、前記予測サンプルに基づいてレジデュアルサンプルを導出することができる(S610)。エンコーディング装置は、前記現在ブロックの元のサンプルと前記予測サンプルの比較を通じて、前記レジデュアルサンプルを導出することができる。
【0098】
エンコーディング装置は、予測情報とレジデュアル情報を含む映像情報をエンコーディングする(S620)。エンコーディング装置は、エンコーディングされた映像情報をビットストリーム形態で出力することができる。前記予測情報は、前記予測手順に関連された情報であり、予測モード情報(ex. skip flag、merge flag or mode indexなど)及び動き情報に関する情報を含むことができる。前記動き情報に関する情報は、動きベクトルを導出するための情報である候補選択情報(ex. merge index、mvp flag or mvp index)を含むことができる。また、前記動き情報に関する情報は、前述したMVDに関する情報及び/または参照ピクチャインデックス情報を含むことができる。また、前記動き情報に関する情報は、L0予測、L1予測、またはペア(bi)予測が適用されるか否かを示す情報を含むことができる。レジデュアル情報は、レジデュアルサンプルに関する情報である。前記レジデュアル情報は、前記レジデュアルサンプルの量子化された変換係数に関する情報を含むことができる。
【0099】
出力されたビットストリームは、(デジタル)格納媒体に格納されてデコーディン具装置に伝達され得、またはネットワークを介してデコーディング装置に伝達され得る。
【0100】
一方、前述したように、エンコーディング装置は、前記参照サンプル及び前記レジデュアルサンプルに基づいて復元ピクチャ(復元サンプル及び復元ブロックを含む)を生成することができる。これは、デコーディング装置で行われるものと同じ予測結果をエンコーディング装置から導出するためであり、これに通じてコーディング効率を高めることができるからである。したがって、エンコーディング装置は、復元ピクチャ(または復元サンプル、復元ブロック)をメモリに格納し、インター予測のための参照ピクチャとして活用することができる。前記復元ピクチャにインループフィルタリング手順などをさらに適用することができることは前述した通りである。
【0101】
インター予測に基づくビデオ/映像デコーディング手順は、概略的に例えば以下を含み得る。
【0102】
図8はインター予測ベースのビデオ/映像デコーディング方法の例を示し、図9は、デコーディング装置内のインター予測部を概略的に示す。
【0103】
デコーディング装置は、前記エンコーディング装置で行われた動作と対応する動作を実行することができる。デコーディング装置は、受信した予測情報に基づいて現在ブロックに予測を実行し、予測サンプルを導出することができる。
【0104】
具体的に、図8及び図9を参照すると、デコーディング装置は、ビットストリームから受信した予測情報に基づいて前記現在ブロックの予測モードを決定することができる(S800)。デコーディング装置は、前記予測情報内の予測モード情報に基づいて、前記現在ブロックにどのインター予測モードが適用されるかを決定することができる。
【0105】
例えば、マージフラグ(merge flag)に基づいて、前記現在ブロックにマージモードが適用されるか、または(A)MVPモードが決定されるかを決定することができる。あるいは、前記マージインデックスに基づいて様々なインター予測モード候補の内、1つを選択することができる。前記インター予測モード候補は、スキップモード、マージモード、及び/または(A)MVPモードなどの様々なインター予測モードを含むことができる。
【0106】
デコーディング装置は、前記決定されたインター予測モードに基づいて前記現在ブロックの動き情報を導出する(S810)。例えば、デコーディング装置は、前記現在ブロックにスキップモードまたはマージモードが適用される場合、後述するマージ候補リストを構成し、前記マージ候補リストに含まれるマージ候補の内、1つのマージ候補を選択することができる。前記選択は、前述の選択情報(merge index)に基づいて実行することができる。前記選択されたマージ候補の動き情報を用いて、前記現在ブロックの動き情報を導出することができる。前記選択されたマージ候補の動き情報を前記現在ブロックの動き情報として用いられる。
【0107】
別の例として、デコーディング装置は、現在ブロックに(A)MVPモードが適用される場合、(A)MVP候補リストを構成し、前記(A)MVP候補リストに含まれたmvp(motion vector predictor)候補の内、選択されたmvp候補の動きベクトルを前記現在ブロックのmvpとして用いられる。前記選択は、前述の選択情報(mvpフラグまたはmvpインデックス)に基づいて実行することができる。この場合、前記MVDに関する情報に基づいて前記現在ブロックのMVDを導出することができ、前記現在ブロックのmvpとMVDに基づいて前記現在ブロックの動きベクトルを導出することができる。また、参照ピクチャインデックス情報に基づいて前記現在ブロックの参照ピクチャインデックスを導出することができる。前記現在ブロックに関する参照ピクチャリスト内で前記参照ピクチャインデックスが指すピクチャが前記現在ブロックのインター予測のために参照される参照ピクチャとして導出され得る。
【0108】
一方、候補リスト構成なしで前記現在ブロックの動き情報が導出され得、この場合、前述したような候補リスト構成を省略することができる。
【0109】
デコーディング装置は、前記現在ブロックの動き情報に基づいて前記現在ブロックの予測サンプルを生成することができる(S820)。この場合、前記現在ブロックの参照ピクチャインデックスに基づいて前記参照ピクチャを導出し、前記現在ブロックの動きベクトルが前記参照ピクチャ上で指す参照ブロックのサンプルを用いて前記現在ブロックの予測サンプルを導出することができる。この場合、後述するように、場合によって前記現在ブロックの予測サンプルの内、全部または一部について、予測サンプルフィルタリング手順をさらに実行することができる。
【0110】
例えば、デコーディング装置のインター予測部332は、予測モード決定部332_1、動き情報導出部332_2、及び予測サンプル導出部332_3を含むことができ、予測モード決定部332_1)で受信された予測モード情報に基づいて前記現在ブロックの予測モードを決定し、動き情報導出部332_12で受信した動き情報に関する情報に基づいて前記現在ブロックの動き情報(動きベクトル及び/または参照ピクチャインデックスなど)を導出し、予測サンプル導出部332_3で前記現在ブロックの予測サンプルを導出することができる。
【0111】
デコーディング装置は、受信したレジデュアル情報に基づいて前記現在ブロックのレジデュアルサンプルを生成する(S830)。デコーディング装置は、前記予測サンプル及び前記レジデュアルサンプルに基づいて前記現在ブロックの復元サンプルを生成し、それに基づいて復元ピクチャを生成することができる(S840)。以降、前記復元ピクチャにインループフィルタリング手順などがさらに適用することができることは前述した通りである。
【0112】
一方、前述のように、 HLS(high level syntax)が映像/ビデオコーディングのためにコーディング/シグナリングすることができる。コーディングされたピクチャは、1つ以上のスライスから構成され得る。コーディングされたピクチャを記述する(describing)パラメータはピクチャヘッダ内でシグナリングされ、スライスを記述するパラメータはスライスヘッダ内でシグナリングされる。ピクチャヘッダは独自のNALユニットの形で運ばれる(carried)。スライスヘッダは、スライス(すなわちスライスデータ)のペイロード(payload)を含むNALユニットの開始部分に存在する。
【0113】
各々のピクチャはピクチャヘッダに関連付けられる。ピクチャは、互いに異なる種類のスライス(イントラコーディングされたスライス(すなわち、Iスライス)及びインターコーディングされたスライス(すなわち、Pスライス及びBスライス))から構成することができる。したがって、ピクチャヘッダは、ピクチャのイントラスライス及びピクチャのインタースライスに必要なシンタックス要素を含むことができる。
【0114】
ピクチャは、サブピクチャ、タイル、及び/またはスライスに分割することができる。サブピクチャシグナリングは SPS(sequence parameter set)に存在することができ、タイル及び正方形スライスシグナリングは PPS(Picture parameter set)に存在することができる。ラスタスキャン(raster-scan)スライスシグナリングは、スライスヘッダに存在し得る。
【0115】
一例として、ピクチャの分割(partitioning)に関連してSPSシンタックスは、以下の表1のようなシンタックス要素を含み得る。
【0116】
【表1】
【0117】
PPSシンタックスには、以下の表2のようなシンタックス要素が含められる。
【0118】
【表2-1】
【0119】
【表2-2】
【0120】
表2において、num_slices_in_tile_minus1 [i] + 1は、i番目スライスが単一タイルでCTU行の下位セット(subset)を含む場合、現在タイル内のスライスの個数を示す。 num_slices_in_tile_minus1[i]の値は、0からRowHeight [tileY] - 1を含む範囲になければならない。ここで、tileYはi番目のスライスを含むタイル行のインデックスである。 PPSにnum_slices_in_tile_minus1[i]が存在しない場合、num_slices_in_tile_minus1 [i]の値はゼロに導出される。
【0121】
slice_height_in_ctu_minus1[i] + 1は、i番目のスライスが単一のタイルでCTU行の下位セットを含む場合、i番目の長方形スライスの高さをCTU行単位で表す。 slice_height_in_ctu_minus1 [i]の値は、0からRowHeight [tileY] - 1を含む範囲になければならない。ここで、tileYはi番目のスライスを含むタイル行のインデックスである。
【0122】
スライスヘッダシンタックスには、以下の表3のようなシンタックス要素を含めることができる。
【0123】
【表3】
【0124】
表1~表3を参照すると、現在タイル及びスライス設計において、長方形のスライスは1つ以上のタイルを含むことができる。あるいは、長方形スライスは、1つのタイル内の整数個のCTU行を含むことができる。
【0125】
長方形スライスが1つのタイル内の整数個のCTU行を含む場合(前記タイルが複数のスライスに分割されることを意味する場合)、現在のシグナリングでは、各スライスの高さが明示的にシグナリングされる。しかしながら、そのようなシグナリングは最適なシグナリング方法ではない。
【0126】
1つのタイル内スライスの配置(layout)は、前記タイル内のスライスの高さが最後のスライスを除外して均一(uniform)である場合と、前記タイル内のスライスの高さが均一ではない場合がある。タイル内のスライスの高さが最後のスライスを除外して均一である場合、前記タイル内の最後のスライスを除外してすべてのスライスの高さが同じであるため、各スライスの高さを明示的にシグナリングする必要なしに単純に1つだけシグナリングすることができる。タイル内のスライスの高さが均一でない場合には、前記タイル内の各スライスの高さをシグナリングする必要がある。
【0127】
以下の図面は、本文書の具体的な一例を説明するために作成された。図面に記載された具体的な装置の名称または具体的な信号/情報の名称は例示的に提示されたものであるため、本明細書の技術的特徴は、以下の図面で使用された具体的な名称に限定されない。
【0128】
本文書は、前述の問題を解決するために以下の方法を提供する。各方法の項目は、独立して適用されるか、または互いに組み合わせて適用することができる。
【0129】
一例として、1つのタイルが2つ以上のスライスを含む場合、CTU行内で明示的にシグナリングされるスライス高さの個数をシグナリングすることができる。これはシンタックス要素num_exp_slice_in_tileとし得る。この場合、ゼロからnum_exp_slice_in_tile - 1までのインデックスのシンタックス要素(slice_row_height_minus1の配列())をシグナリングすることができる。これはue(v)またはu(v)にシグナリングすることができ、そのようなシンタックス要素をシグナリングするビットの数はタイルのCTU行の個数によって異なることができる。ここで、ue(v)はゼロ次Exp-Golombコーディングされたシンタックス要素を表し、u(v)は他のシンタックス要素の値によって異なることになるv個のビットを使用することを示す。
【0130】
前記タイル内ののスライスからn番目のスライスまでの高さは、それぞれ0からnum_exp_slice_in_tile - 1までのslice_row_height_minus1 + 1の値である。ここで、nは、前記タイル内で明示的にシグナリングされるスライスの個数(num_exp_slice_in_tile)と同じである。
【0131】
前記タイル内には、最後に(明示的に)シグナリングされたnum_exp_slice_in_tile_minus1 + 1より大きい残りのCTU行が依然として存在するが、前記タイル内に新しいスライスが定義される。言い換えれば、前記タイル乃至には明示的にシグナリングされていないスライスが存在する。前記最後のスライスは、最後にシグナリングされるnum_exp_slice_in_tile_minus1 + 1より小さいか同じ高さを有することができる。
【0132】
別の例として、1つのタイルが2つ以上のスライスを含む場合、前記タイルが含むスライスの個数をシグナリングすることができる。この場合、前記タイル内で前記スライスの高さが均一であることを示すフラグがシグナリングされることができる。前記タイル内のスライスの高さが均一である場合、CTU行で1つのスライスの高さのみがシグナリングされ得る。前記タイル内の前記スライスの高さは、シグナリングされたスライスの高さに基づいて導出され得る。前記タイル内のスライスの高さが均一でない場合、前記タイル内の最後のスライスを除外した各スライスの高さは明示的にシグナリングされ得る。
【0133】
本文書におけるスライス及び/またはタイルに関する情報は、表1~3に開示された情報及び/または構文要素を含み得る。映像/ビデオ情報は、表1乃至表3に開示された上位レベルシンタックスを含み得、上位レベルシンタックスは、スライスに関する情報及びタイルに関する情報を含むことができる。スライスに関する情報は、現在ピクチャ内の1つ以上のスライスを表す情報を含み得、タイルに関する情報は、現在ピクチャ内の1つ以上のタイルを表す情報を含み得る。ピクチャには、1つ以上のスライスが含まれたタイルと1つ以上のタイルが含まれたスライスが存在することができる。
【0134】
一実施形態として、ピクチャの分割構造を示すために、PPSに対し、以下の表4のようなシンタックスと表5のようなセマンティクスを用いられる。
【0135】
【表4】
【0136】
【表5】
【0137】
表4及び5を参照すると、num_exp_slices_in_tile [i] + は、PPSに存在するexp_slice_height_in_ctu_minus1 [j]の数を示す。PPS内にnum_exp_slices_in_tile [i]が存在しない場合、num_exp_slices_in_tile_minus1 [i]の値はゼロに導出される。
【0138】
exp_slice_height_in_ctu_minus1 [j] + 1は、i番目のスライスが単一のタイルでCTU行の下位セットを含む場合、明示的にシグナリングされるj番目の長方形スライスの高さをCTU行単位で表す。 exp_slice_height_in_ctu_minus1 [j]の値は、0からRowHeight [tileY] - 1を含む範囲になければならない。ここで、tileYは、スライスを含むタイル行のインデックスである。
【0139】
つまり、num_exp_slices_in_tile[i]は、現在ピクチャのタイル内で高さが明示的にシグナリングされるスライスの個数に関する情報(個数情報)とすることができ、exp_slice_height_in_ctu_minus1[j]は高さが明示的にシグナリングされるスライスの高さに関する情報(高さ情報)とすることができる。
【0140】
前記個数情報と前記高さ情報は、指数ゴロムコーディングされたシンタックス要素(Exp-Golomb-coded syntax element)であり得る。
【0141】
前記個数情報は、前記タイルを含むスライスの幅((width)及び高さ(height)に関する情報に基づいてパーシングすることができる。前記タイルがi番目のスライスを含む場合、前記タイルを含むスライスの幅情報はシンタックス要素slice_width_in_tiles_minus1 [i]に該当することができ、前記タイルを含むスライス高さ情報はシンタックス要素slice_height_in_tiles_minus1 [i]に該当することができる。前記i番目のスライスは長方形のスライスで有り得、前記タイル内のスライスもまた長方形のスライスに分割することができる。
【0142】
例えば、エンコーディング装置は、現在ピクチャのスライスに関する情法に基づいて前記個数情報及び前記高さ情報を生成することができる。前記個数情報及び前記高さ情報は、映像情報に含まれ、ビットストリームの形でデコーディング装置にシグナリングされ得る。
【0143】
デコーディング装置は、表4のようなPPSから前記個数情報がパーシングされると、前記個数情報に基づいて前記PPSから前記高さ情報をパーシングすることができる。一例として、前記個数情報の値がn(0以上の整数)である場合、デコーディング装置は、前記PPSからn個のスライス(前記タイル内の0番目のスライスからn-1番目のスライス)に対する高さ情報をパーシングすることができる。前記高さ情報は、前記0番目スライスの高さ乃至前記第n―1番目のスライスの高さのそれぞれをCTU(coding tree unit)行(rows)単位で表すことができる。
【0144】
その後、デコーディング装置は、第n―1番目のスライスの高さに基づいて前記タイル内の残りのスライスの高さを導出することができる。具体的に、デコーディング装置は、前記タイル内のn番目のスライスから前記タイル内の最後のスライスを除外した残りのスライスの高さを前記第n―1番目のスライスの高さと同じのように導出することができる。このために、デコーディング装置は、前記タイルの高さから前記0番目のスライスから前記n―1番目のスライスの高さの合を引いた残りの高さが均一スライスの高さ以上であるかを比較することができる。ここで、均一スライスとは、前記タイル内で高さが均一(同一)のスライスを意味することができる。すなわち、前記均一スライスの高さは、前記n―1番目のスライスの高さと同じであり得る。
【0145】
デコーディング装置は、前記タイルの残りの高さが均一スライスの高さ以上である場合、n番目のスライスの高さを前記均一スライスの高さに導出し、前記タイルの残りの高さが前記均一スライスの高さより小さい場合、 前記n番目のスライスの高さを前記残りの高さに導出することができる。さらに、デコーディング装置は、前記タイルの残りの高さが前記均一スライスの高さ以上である場合、前記残りの高さから前記n番目のスライスの高さを引いてアップデートされた残りの高さを導出し、前記アップデートされた残りの高さが前記均一スライスの高さ以上の場合、n+1番目のスライスの高さを前記均一なスライスの高さに導出することができる。前記アップデートされた残りの高さが前記均一スライスの高さより小さい場合、デコーディング装置はn+1番目のスライスの高さを前記アップデートされた残りの高さに導出することができる。すなわち、前記タイル内の最後のスライスを除外し、前記n番目のスライスから前記最後のスライスまでのスライスの高さは均一に導出することができる。前記最後のスライスの高さは、前記高さが均一であるスライス(n―1番目のスライス乃至前記最後のスライスの直前のスライス)の高さより小さいか同じであることができる。
【0146】
一例として、1つのタイル内に5つのスライスが含まれ、前記個数情報が3を表す場合、前記タイル内の第1のスライスから第3のスライスの高さ情報は前記PPSからパーシングされ、前記タイル内の第4のスライスの高さは前記3番目のスライスの高さと同じように導き出すことができる。この場合、前記タイル内の5番目のスライスの高さは、前記4番目のスライスの高さより小さいか同じであることができる。
【0147】
デコーディング装置は、そのようなスキャニン手順を介して前記タイル内のスライスの個数を導出することができる。前記個数情報の値がゼロより大きい場合、前記タイル内の各スライスの高さとスライスの個数に関する情報を導出する手順は、以下の表5のように表すことができる。
【0148】
【表6】
【0149】
長方形スライスの場合からnum_slices_in_pic_minus1を含む範囲のiのリストNumCtuInSlice[i]はi番目のスライスのCTU数を表し、0からnum_slices_in_pic_minus1を含む範囲のiと0からNumCtuInSlice [i] を含む範囲のjの行列CtbAddrInSlice [i] [j]は、i番目のスライス内のj番目のCTBのピクチャラスタスキャンアドレスを表し、次の表7に示すように導出できる。
【0150】
【表7】
【0151】
別の実施形態として、ピクチャの分割構造を示すために、PPSに対して、以下の表8のようなシンタックスと表9のようなセマンティクスを用いられる 。
【0152】
【表8】
【0153】
【表9】
【0154】
表8及び9を参照すると、uniform_slice_spacing_flag [i]の値が1の場合、これはCTU行がタイル全体に均一に分散され、シンタックス要素uniform_slice_height_in_ctu_minus1 [i]を用いてシグナリングされることを示す。 uniform_slice_spacing_flag [i]の値が0の場合、これはCTU行がタイル全体に均一に分散されることもあり、そうではないこともあり、シンタックス要素num_slices_in_tile_minus1 [i]とslice_height_in_ctu_minus1 [i]を用いてシグナリングされることを示す。
【0155】
slice_rows_height_in_ctu_minus1 [i] + 1は、uniform_slice_spacing_flag [i]の値が1の場合、タイルの最後のスライスを除外したスライスの高さをCTB単位で表す。 slice_rows_height_in_ctu_minus1 [i]の値は、0からRowHeight [tileY] - 1を含む範囲になければならない。ここで、tileYは、スライスを含むタイル行のインデックスである。
【0156】
num_slices_in_tile_minus1 [i] + 1は、i番目のスライスが単一のタイルでCTU行の下位セットを含み、uniform_slice_spacing_flag [i]の値がゼロの場合現在タイル内のスライスの個数を示す。num_slices_in_tile_minus1 [i]の値は、0からRowHeight [tileY] - 1を含む範囲にならない。ここで、tileYはi番目のスライスを含むタイル行のインデックスである。num_slices_in_tile_minus1 [i]が存在しない場合、num_slices_in_tile_minus1 [i]の値は0に導出される。
【0157】
slice_height_in_ctu_minus1 [i] + 1は、i番目のスライスが単一のタイルでCTU行の下位セットを含む場合、i番目の長方形スライスの高さをCTU行単位で表す。 slice_height_in_ctu_minus1 [i]の値は、0からRowHeight [tileY] - 1を含む範囲になければならない。ここで、tileYはi番目のスライスを含むタイル行のインデックスである。
【0158】
例えば、エンコーディング装置は現在ピクチャのスライスに関する情報に基づいて、uniform_slice_spacing_flagslice_rows_height_in_ctu_minus1、num_slices_in_tile_minus1、slice_height_in_ctu_minus1の内、少なくとも1つを生成することができる。
【0159】
デコーディング装置は、表8のようなPPSからuniform_slice_spacing_flagがパーシングされると、uniform_slice_spacing_flagの値に基づいて前記PPSからslice_rows_height_in_ctu_minus1またはnum_slices_in_tile_minus1をパーシングすることができる。一例として、前記uniform_slice_spacing_flagの値が1である場合、デコーディング装置は前記PPSからslice_rows_height_in_ctu_minus1をパーシングし、slice_rows_height_in_ctu_minus1の値に基づいてタイル内の最後のスライスを除外した残りのスライスの高さで導出することができる。前記uniform_slice_spacing_flagの値がゼロの場合、デコーディング装置はPPSからnum_slices_in_tile_minus1とslice_height_in_ctu_minus1をパーシングし、それらに基づいて前記タイル内のスライスを導出することができる。
【0160】
一例として、タイル内のスライスの個数情報と高さ情報に関する変数NumSlicesInTileMinus1 [i]とSliceHeightInCtuMinus1 [I + k]は、次のように導出できる。 ここで、kは0からNumSlicesInTileMinus1 [i]を含む範囲にあり得る。
【0161】
【表10】
【0162】
長方形スライスの場合、0からnum_slices_in_pic_minus1を含む範囲のiのリストNumCtuInSlice[i]はi番目のスライス内のCTU数を表し、0からnum_slices_in_pic_minus1を含む範囲のiと0からNumCtuInSlice [i]―1を含む範囲のjに対する行列CtbAddrInSlice[i][j]は、i番目のスライス内のj番目のCTBのピクチャラスタスキャンアドレスを表し、以下の表11のように導出され得る。
【0163】
【表11】
【0164】
図10及び図11は、本文書の実施形態に係るビデオ/映像エンコーディング方法及び関連構成要素の一例を概略的に示す。
【0165】
図10に開示されたビデオ/映像エンコーディング方法は、図2及び図11に開示
された(ビデオ/映像)エンコーディング装置200によって実行され得る。具体的に、例えば、図10のS1000は、エンコーディング装置200の画像分割部210によって行うことができ、S1010はエンコーディング装置200の予測部220で行うことができる。 S1020は、エンコーディング装置200の
レジデュアル処理部230で実行することができ、S1030及びS1040は、エンコーディング装置200のエントロピーエンコーディング部240によって実行することができる。図10で開示されたビデオ/映像エンコーディング方法は、本文書で詳述した実施形態を含むことができる。
【0166】
具体的に、図10及び図11を参照すると、エンコーディング装置の画像分割部210は、現在ピクチャのタイル内スライスを導出することができる(S1000)。例えば、画像分割部210は、入力画像(または、ピクチャ、フレーム)を1つ以上のCUに分割することができる。入力画像は1つ以上のピクチャを含むことができる。1つのピクチャは、1つ以上のタイル、ブリック、スライス、及び/またはタイルグループに分割することができる。1つのスライスは、1つ以上のブリック、タイル及び/またはタイルグループを含み得る。1つのブリックは、タイル内の1つ以上のCTU行を含むことができる。1つのタイルグループは1つ以上のタイルを含むことができる。1つのタイルは1つ以上のCTUを含み得る。前記CTUは1つ以上のCUに分割することができる。画像分割部210は、現在ピクチャ内の特定のスライスが
長方形スライスである場合、前記長方形スライスを複数のタイルに分割することができ、前記複数個のタイルの内少なくとも1つのタイルを分割して複数個の長方形スライスを導出することができる。
【0167】
エンコーディング装置の予測部220は、画像分割部210から導出されたスライスに基づいて現在ブロックの予測を行い、前記現在ブロックの予測サンプル(予測ブロック)を生成することができる(S1010)。予測部220は、現在ブロックまたはCU単位でイントラ予測が適用されるか、またはインター予測が適用されるかを決定することができる。予測部220は、予測に関する各種情報(予測関連情報)を生成してエントロピーエンコーディング部240に伝達することができる。ここで、予測関連情報は、インター予測モードに関する情報及びイントラ予測モードに関する情報を含むことができる。前記現在ブロックの予測モードがインター予測モードである場合、前記予測サンプルは、予測部220のインター予測部221で生成され得る。前記現在ブロックの予測モードがイントラ予測モードである場合、前記予測サンプルは予測部220のイントラ予測部222で生成され得る。
【0168】
エンコーディング装置のレジデュアル処理部230は、予測部220で生成された予測サンプルと、元のピクチャ(元のブロック、元のサンプル)に基づいて、レジデュアルサンプル及びレジデュアル情報を生成することができる(S1020)。ここで、前記レジデュアル情報は、前記レジデュアルサンプルに関する情報として、前記レジデュアルサンプルの(量子化された)変換係数に関する情報を含むことができる。
【0169】
エンコーディング装置の加算部(または復元部)は、レジデュアル処理部230で生成されたレジデュアルサンプルと、インター予測部221またはイントラ予測部222で生成された予測サンプルとを加算することで復元()サンプル(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成することができる。
【0170】
エンコーディング装置のエントロピーエンコーディング部240は、画像分割部210から導出されたパーティショニング構造に基づいてパーティショニング関連情報を生成することができる。前記パーティショニング関連情報は、タイル内の高さが明示的にシグナリングされるスライスの個数に関する情報(個数情報)と、前記高さが明示的にシグナリングされるスライスの高さに関する情報(高さ情報)を含むことができる。例えば、エントロピーエンコーディング部240は、画像分割部210から導出されたスライスに基づいて、前記タイル内の高さが明示的にシグナリング(提供)されるスライスの個数に関する個数情報と、前記高さが明示的にシグナリング(提供)されるスライスの高さに関する高さ情報を生成することができる(S1030)。ここで、前記個数情報は、前述したシンタックス要素num_exp_slices_in_tile及び/またはnum_slices_in_tile_minus1を含むことができる。前記高さ情報は、前述のシンタックス要素exp_slice_height_in_ctu_minus1、slice_rows_height_in_ctu_minus1、及び/またはslice_height_in_ctu_minus1を含むことができる。
【0171】
エントロピーエンコーディング部240は、 前記個数情報と前記高さ情報を含むパーティショニング関連情報、予測部220で生成された予測関連情報及び/又はレジデュアル処理部230で生成されたレジデュアル情報を含む映像情報をエンコーディングすることができる。(S1040). エントロピーエンコーディング部240でエンコーディングされた情報はビットストリーム形態で出力される。前記ビットストリームは、ネットワークまたは格納媒体を介してデコーディング装置に伝送され得る。
【0172】
一例として、エントロピーエンコーディング部240は、前述した表4及び表5に基づいて、前記個数情報としてシンタックス要素num_exp_slices_in_tileを含み、前記高さ情報としてシンタックス要素exp_slice_height_in_ctu_minus1を含む映像情報をエンコーディングすることができる。前記高さ情報は、タイル内の高さが明示的にシグナリングされるスライスの高さをそれぞれCTU行単位で表すことができ、そのために前記高さが明示的にシグナリングされるスライスのそれぞれに対するシンタックス要素を含み得る。画像情報に含まれる前記シンタックス要素の個数は、前記個数情報の値と同じであり得る。
【0173】
別の例として、エントロピーエンコーディング部240は、前述の表8及び表9に基づいて、シンタックス要素uniform_slice_spacing_flag、num_slices_in_tile_minus1、slice_rows_height_in_ctu_minus1及び/またはslice_height_in_ctu_minusを含む画像情報をエンコーディングすることができる。シンタックス要素num_slices_in_tile_minus1、slice_rows_height_in_ctu_minus1、及びslice_height_in_ctu_minus1は、uniform_slice_spacing_flagの値に基づいて画像情報に含まれるか含まないことがある。
【0174】
エントロピーエンコーディング部240は、前記個数情報と前記高さ情報とを前記画像情報内ピクチャパラメータセット(picture parameter set)を介してシグナリングすることができる。この場合、エントロピーエンコーディング部240は、前記個数情報及び/または前記高さ情報を指数ゴロム方式でエンコーディングすることができる。
【0175】
図12及び図13は、本文書の実施形態に係るビデオ/映像デコーディング方法及び関連構成要素の一例を概略的に示す。
【0176】
図12に開示されたビデオ/映像デコーディング方法は、図3及び図13に開示された(ビデオ/映像)デコーディング装置300によって実行され得る。具体的に、例えば、図12のS1200~S1220は、デコーディング装置のエントロピーデコーディング部310で行うことができる。図12のS1230は、デコーディング装置の予測部330で実行され得、S1240及びS1250は、デコーディング装置の加算部340によって実行され得る。図12で開示されたビデオ/映像デコーディング方法は、本文書で詳述した実施形態を含むことができる。
【0177】
図12及び図13を参照すると、デコーディング装置のエントロピーデコーディング部310は、ビットストリームからパーティショニング関連情報、レジデュアル情報、予測関連情報(インター/イントラ予測区分情報、イントラ予測モード情報、インター予測モード情報等)、インループフィルタリング関連情報等を獲得することができる。ここで、前記パーティショニング関連情報は、現在ピクチャのタイル内のスライスの中で高さが明示的にシグナリングされるスライスの個数に関する情報(個数情報)、前記高さが明示的にシグナリングされるスライスの高さに関する情報(高さ情報)などを含めることができる。
【0178】
例えば、エントロピーデコーディング部310は、ビットストリームから現在ピクチャのタイル内のスライスの中から高さが明示的にシグナリングされるスライスの個数に関する情報(個数情報)をパーシングすることができ(S1200)、前記個数情報に基づいて、前記ビットストリームから前記高さが明示的にシグナリングされるスライスの高さに関する情報(高さ情報)をパーシングすることができる(S1210)。具体的に、エントロピーデコーディング部310は、前述した表4に基づいて、前記ビットストリームのピクチャパラメータセットから前記個数情報及び前記高さ情報をパーシングすることができる。ここで、前記個数情報は、前記タイルを含むスライスの幅及び高さに関する情報に基づいてパーシングすることができる。このとき、前記タイルを含むスライス及び/または前記タイル内スライスは長方形のスライスであり得る。前記個数情報と前記高さ情報は、指数ゴロムコーディングされたシンタックス要素(Exp-Golomb-coded syntax element)であり得る。前記高さ情報は、前記高さが明示的にシグナリングされるスライスのそれぞれに対するシンタックス要素を含み得る。前記シンタックス要素の個数は、前記個数情報の値と同じであり得る。
【0179】
一例として、 エントロピーデコーディング部310は、表4に基づいて、前記ピクチャパラメータセットからシンタックス要素slice_width_in_tiles_minus1及びslice_height_in_tiles_minus1 の値に基づいて、前記ピクチャパラメータセットからシンタックス要素num_exp_slices_in_tileをパーシングすることができる。 そしてエントロピーデコーディング部310は、ピクチャパラメータセットからシンタックス要素num_exp_slices_in_tileの値と等しい数のexp_slice_height_in_ctu_minus1をパーシングすることができる。
【0180】
エントロピーデコーディング部310は、個数情報の値がnの場合、前記高さ情報に基づいて前記タイル内の0番目のスライスからn―1番目のスライスの高さを導出することができる(S820)。そして、エントロピーデコーディング部310は、前記n―1番目のスライスの高さに基づいて前記タイル内のn番目のスライスの高さを導出することができる。すなわち、n番目のスライスの高さは、n―1番目のスライスの高さと同じように導出され得る。ここで、前記n番目のスライスは前記タイル内の最後のスライスではないことがある。言い換えれば、エントロピーデコーディング部310は、前記タイル内の最後のスライスを除外した残りのスライス(明示的にシグナリングされていないスライス)の高さ前記n―1番目のスライスの高さと同じように導出することができる。したがって、前記n番目のスライスから前記タイル内の最後のスライスまでのスライスの高さは、前記タイル内の最後のスライスを除外して均一であり得る。エントロピーデコーディング部310は、前記タイルの高さから前記タイル内の他のスライスの高さを引いた残りの高さに基づいて、前記タイル内の最後のスライスの高さを導出することができる。前記タイル内のすべてのスライスの高さが導出されると、エントロピーデコーディング部310は、前記タイル内のスライスの個数を導出することができる(S1220)。ここで、前記タイル内のスライスの個数は、前記タイル内の0番目のスライスから前記最後のスライスまでのスライスの個数に該当し得る。
【0181】
デコーディング装置300は、前述した過程を通じて導出された現在ピクチャのスライスに基づいて前記現在ピクチャをデコーディングすることができる。具体的に、デコーディング装置のレジデュアル処理部320は、エントロピーデコーディング部310で獲得されたレジデュアル情報に基づいてレジデュアルサンプルを生成することができる。デコーディング装置の予測部330は、前記タイル内スライスに基づいてエントロピーデコーディング部310で獲得された予測関連情報を用いてインター予測及び/又はイントラ予測を行って予測サンプルを生成することができる(S1230)。デコーディング装置の加算部340は、予測部330で生成された予測サンプルと、レジデュアル処理部320で生成されたレジデュアルサンプルに基づいて復元サンプルを生成することができる(S1240)。そして、デコーディング装置の加算部340は、前記復元サンプルに基づいて復元ピクチャ(復元ブロック)を生成することができる(S1250)。
【0182】
その後、必要に応じて主観的/客観的画質を向上させるために、デブロックフィルタリング、SAO及び/またはALF手順のようなインループフィルタリング手順が前記復元ピクチャに適用されることができる。
【0183】
一方、別の例でとして、エントロピーデコーディング部310は、表8に基づいて、ビットストリームのピクチャパラメータセットからシンタックス要素slice_width_in_tiles_minus1及びslice_height_in_tiles_minus1をパーシングし、前記シンタックス要素slice_width_in_tiles_minus1及びslice_height_in_tiles_minus1の値に基づいて前記ピクチャパラメータセットからシンタックス要素uniform_slice_spacing_flagをパーシングすることができる。この場合、エントロピーデコーディング部310は、前記シンタックス要素uniform_slice_spacing_flagの値に基づいて、前記ピクチャパラメータセットからシンタックス要素slice_rows_height_in_ctu_minus1をパーシングするか、またはシンタックス要素num_slices_in_tile_minus1をパーシングすることができる。前記シンタックス要素slice_rows_height_in_ctu_minus1は、前記シンタックス要素uniform_slice_spacing_flagの値が1の場合にパーシングされ得、前記シンタックス要素num_slices_in_tile_minus1は、前記シンタックス要素uniform_slice_spacing_flagの値が0である場合パーシングされ得る。
【0184】
前記シンタックス要素slice_rows_height_in_ctu_minus1がパーシングされる場合、エントロピーデコーディング部310は、タイル内の最後のスライスを除外した残りのスライスの高さをslice_rows_height_in_ctu_minus1の値として導出することができる。
【0185】
前記シンタックス要素num_slices_in_tile_minus1がパーシングされる場合、エントロピーデコーディング部310は、前記ピクチャパリメータセットから前記シンタックス要素num_slices_in_tile_minus1の値に該当する個数のシンタックス要素slice_height_in_ctu_minus1をパーシングし、その値をそれぞれタイル内の各スライスの高さで導出できる。
【0186】
前述の実施形態において、方法は一連のステップまたはブロックとしてフローチャートに基づいて説明されているが、その実施形態はステップの順序に限定されず、いずれのステップは前述したどころと異なるステップと異なる順序でまたは同時に発生することができる。または、当業者であれば、フローチャートに示されたステップが排他的ではなく、他のステップが含まれるか、またはフローチャートの1つまたはそれ以上のステップが本文書の実施形態の範囲に影響を及ぼすことなく削除され得ることを理解するべきである。
【0187】
前述した本文書の実施例による方法は、ソフトウェア形態で具現されることができ、本文書に係るエンコーディング装置及び/またはデコーディング装置は、例えば、TV、コンピュータ、スマートフォン、セットトップボックス、ディスプレイ装置などの映像処理を実行する装置に含まれることができる。
【0188】
本文書において、実施例がソフトウェアで具現される時、前述した方法は、前述した機能を遂行するモジュール(過程、機能など)で具現されることができる。モジュールは、メモリに格納され、プロセッサにより実行されることができる。メモリは、プロセッサの内部または外部にあり、よく知られた多様な手段でプロセッサと連結されることができる。プロセッサは、ASIC(application-specific integrated circuit)、他のチップセット、論理回路及び/またはデータ処理装置を含むことができる。メモリは、ROM(read-only memory)、RAM(random access memory)、フラッシュメモリ、メモリカード、格納媒体及び/または他の格納装置を含むことができる。即ち、本文書で説明した実施例は、プロセッサ、マイクロプロセッサ、コントローラまたはチップ上で具現されて実行されることができる。例えば、各図面で示す機能ユニットは、コンピュータ、プロセッサ、マイクロプロセッサ、コントローラまたはチップ上で具現されて実行されることができる。この場合、具現のための情報(例えば、information on instructions)またはアルゴリズムがデジタル格納媒体に格納されることができる。
【0189】
また、本文書の実施例(ら)が適用されるデコーディング装置及びエンコーディング装置は、マルチメディア放送送受信装置、モバイル通信端末、ホームシネマビデオ装置、デジタルシネマビデオ装置、監視用カメラ、ビデオ対話装置、ビデオ通信のようなリアルタイム通信装置、モバイルストリーミング装置、格納媒体、カムコーダ、注文型ビデオ(VoD)サービス提供装置、OTTビデオ(Over the top video)装置、インターネットストリーミングサービス提供装置、3次元(3D)ビデオ装置、VR(virtual reality)装置、AR(argumente reality)装置、画像電話ビデオ装置、運送手段端末(例えば、車両(自律走行車両を含む)端末、飛行機端末、船舶端末等)、及び医療用ビデオ装置などに含まれることができ、ビデオ信号またはデータ信号を処理するために使われることができる。例えば、OTTビデオ(Over the top video)装置として、ゲームコンソール、ブルーレイプレーヤ、インターネット接続TV、ホームシアターシステム、スマートフォン、タブレットPC、DVR(Digital Video Recorder)などを含むことができる。
【0190】
また、本文書の実施例(ら)が適用される処理方法は、コンピュータで実行されるプログラムの形態で生産されることができ、コンピュータが読み取り可能な記録媒体に格納されることができる。また、本文書の実施例(ら)によるデータ構造を有するマルチメディアデータもコンピュータが読み取り可能な記録媒体に格納されることができる。前記コンピュータが読み取り可能な記録媒体は、コンピュータで読みだすことができるデータが格納される全ての種類の格納装置及び分散格納装置を含む。前記コンピュータが読み取り可能な記録媒体は、例えば、ブルーレイディスク(BD)、汎用直列バス(USB)、ROM、PROM、EPROM、EEPROM、RAM、CD-ROM、磁気テープ、フロッピーディスク、及び光学的データ格納装置を含むことができる。また、前記コンピュータが読み取り可能な記録媒体は、搬送波(例えば、インターネットを介した送信)の形態で具現されたメディアを含む。また、エンコーディング方法で生成されたビットストリームが、コンピュータが読み取り可能な記録媒体に格納され、または、有無線通信ネットワークを介して送信されることができる。
【0191】
また、本文書の実施例(ら)は、プログラムコードによるコンピュータプログラム製品で具現されることができ、前記プログラムコードは、本文書の実施例(ら)によりコンピュータで実行されることができる。前記プログラムコードは、コンピュータにより読み取り可能なキャリア上に格納されることができる。
【0192】
図14は本文書に開示された実施形態が適用され得るコンテンツストリーミングシステムの一例を示す図である。
【0193】
図14を参照すると、本文書の実施形態が適用されるコンテンツストリーミングシステムは、大きくエンコーディングサーバ、ストリーミングサーバ、ウェブサーバ、メディアストア、ユーザ装置、及びマルチメディア入力装置を含むことができる。
【0194】
前記エンコーディングサーバは、スマートフォン、カメラ、カムコーダなどのようなマルチメディア入力装置から入力されたコンテンツをデジタルデータで圧縮してビットストリームを生成し、これを前記ストリーミングサーバに送信する役割をする。他の例として、スマートフォン、カメラ、カムコーダなどのようなマルチメディア入力装置がビットストリームを直接生成する場合、前記エンコーディングサーバは省略されることができる。
【0195】
前記ビットストリームは、本文書の実施例に適用されるエンコーディング方法またはビットストリーム生成方法により生成されることができ、前記ストリーミングサーバは、前記ビットストリームを送信または受信する過程で一時的に前記ビットストリームを格納することができる。
【0196】
前記ストリーミングサーバは、ウェブサーバを介したユーザ要請に基づいてマルチメディアデータをユーザ装置に送信し、前記ウェブサーバは、ユーザにどのようなサービスがあるかを知らせる媒介体役割をする。ユーザが前記ウェブサーバに所望のサービスを要請すると、前記ウェブサーバは、これをストリーミングサーバに伝達し、前記ストリーミングサーバは、ユーザにマルチメディアデータを送信する。このとき、前記コンテンツストリーミングシステムは、別途の制御サーバを含むことができ、この場合、前記制御サーバは、前記コンテンツストリーミングシステム内の各装置間の命令/応答を制御する役割をする。
【0197】
前記ストリーミングサーバは、メディア格納所及び/またはエンコーディングサーバからコンテンツを受信することができる。例えば、前記エンコーディングサーバからコンテンツを受信するようになる場合、前記コンテンツをリアルタイムで受信することができる。この場合、円滑なストリーミングサービスを提供するために、前記ストリーミングサーバは、前記ビットストリームを一定時間の間格納することができる。
【0198】
前記ユーザ装置の例として、携帯電話、スマートフォン(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、デスクトップコンピュータ、デジタルサイニジがある。
【0199】
前記コンテンツストリーミングシステム内の各サーバは、分散サーバとして運営されることができ、この場合、各サーバで受信するデータは、分散処理されることができる。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14