(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-23
(45)【発行日】2024-07-31
(54)【発明の名称】NALユニット関連情報に基づく映像又はビデオコーディング
(51)【国際特許分類】
H04N 19/103 20140101AFI20240724BHJP
H04N 19/159 20140101ALI20240724BHJP
H04N 19/169 20140101ALI20240724BHJP
H04N 19/172 20140101ALI20240724BHJP
H04N 19/174 20140101ALI20240724BHJP
H04N 19/51 20140101ALI20240724BHJP
H04N 19/593 20140101ALI20240724BHJP
H04N 19/70 20140101ALI20240724BHJP
【FI】
H04N19/103
H04N19/159
H04N19/169 200
H04N19/172
H04N19/174
H04N19/51
H04N19/593
H04N19/70
(21)【出願番号】P 2022539055
(86)(22)【出願日】2020-12-10
(86)【国際出願番号】 KR2020018062
(87)【国際公開番号】W WO2021132964
(87)【国際公開日】2021-07-01
【審査請求日】2022-07-12
(32)【優先日】2019-12-23
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】502032105
【氏名又は名称】エルジー エレクトロニクス インコーポレイティド
【氏名又は名称原語表記】LG ELECTRONICS INC.
【住所又は居所原語表記】128, Yeoui-daero, Yeongdeungpo-gu, 07336 Seoul,Republic of Korea
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100114018
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100117019
【氏名又は名称】渡辺 陽一
(74)【代理人】
【識別番号】100108903
【氏名又は名称】中村 和広
(74)【代理人】
【識別番号】100165191
【氏名又は名称】河合 章
(72)【発明者】
【氏名】ヘンドリー ヘンドリー
【審査官】久保 光宏
(56)【参考文献】
【文献】Benjamin Bross, et al.,"Versatile Video Coding (Draft 7)",Document: JVET-P2001-vE, [online],JVET-P2001 (version 14),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2019年11月14日,pp. 6,38-43,53,54,56-58,86-89,99,108,129,[令和5年7月8日検索], インターネット, <URL: https://jvet-experts.org/doc_end_user/current_document.php?id=8857> and <URL: https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P2001-v14.zip>.,(See document file "JVET-P2001-vE.docx" in the zip file "JVET-P2001-v14.zip".)
【文献】Ye-Kui Wang, et al.,"AHG17: On mixed NAL unit types within a picture",Document: JVET-P0124-v1, [online],JVET-P0124 (version 1),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2019年09月25日,pp. 1-3,[令和5年7月13日検索], インターネット, <URL: https://jvet-experts.org/doc_end_user/current_document.php?id=7913> and <URL: https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P0124-v1.zip>.,(See document file "JVET-P0124-v1.docx" in the zip file "JVET-P0124-v1.zip".)
(58)【調査した分野】(Int.Cl.,DB名)
H04N19/00-19/98
CSDB(日本国特許庁)
学術文献等データベース(日本国特許庁)
IEEEXplore(IEEE)
(57)【特許請求の範囲】
【請求項1】
デコード装置により実行される映像デコード方法において、
ビットストリームからNAL(network abstraction layer)ユニットタイプ関連情報を含む映像情報を取得するステップと、
前記NALユニットタイプ関連情報に基づいて、現在ピクチャ内のNALユニットに対するNALユニットタイプを決定するステップと、
前記NALユニットタイプに基づいて、前記現在ピクチャをデコードするステップと、を含み、
前記NALユニットタイプ関連情報は、前記現在ピクチャが混合された(mixed)NALユニットタイプを有するかに関する情報であり、
前記現在ピクチャが混合されたNALユニットタイプを有することに関する前記NALユニットタイプ関連情報に基づいて、前記現在ピクチャの第1スライスに対する第1NALユニットタイプが、前記現在ピクチャの第2スライスに対する第2NALユニットタイプとは異なり、
前記第1NALユニットタイプがIDR(instantaneous decoding refresh)NALユニットタイプであることに基づいて、参照ピクチャリストのシグナリングに関連する情報の値は1に等しい、映像デコード方法。
【請求項2】
エンコード装置により実行される映像エンコード方法において、
現在ピクチャ内のNALユニットに対するNALユニットタイプを決定するステップと、
前記NALユニットタイプに基づいてNALユニットタイプ関連情報を生成するステップと、
前記NALユニットタイプ関連情報を含む映像情報をエンコードするステップと、を含み、
前記NALユニットタイプ関連情報は、前記現在ピクチャが混合された(mixed)NALユニットタイプを有するかに関する情報であり、
前記現在ピクチャが混合されたNALユニットタイプを有することに関する前記NALユニットタイプ関連情報に基づいて、前記現在ピクチャの第1スライスに対する第1NALユニットタイプは、異なるNALユニットタイプを有する、前記現在ピクチャの第2スライスに対する第2NALユニットタイプとは異なり、
前記第1NALユニットタイプがIDR(instantaneous decoding refresh)NALユニットタイプであることに基づいて、参照ピクチャリストのシグナリングに関連する情報の値は1に等しい、映像エンコード方法。
【請求項3】
映像に対するデータの送信方法であって、
請求項2に記載の映像エンコード方法に基づいて前記映像に対するビットストリームを
生成するステップと、
前記ビットストリームを含む前記データを送信するステップと、を含
む、データの送信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、ビデオ又は映像コーディングに関し、例えば、NAL(network abstraction layer)ユニット関連情報に基づくコーディング技術に関する。
【背景技術】
【0002】
近年、4K又は8K以上のUHD(Ultra High Definition)映像/ビデオのような高解像度、高品質の映像/ビデオに対する需要が様々な分野で増加している。映像/ビデオデータが高解像度、高品質になるほど、既存の映像/ビデオデータに比べて相対的に送信される情報量又はビット量が増加するので、既存の有無線広帯域回線のような媒体を利用して映像データを送信するか、既存の格納媒体を利用して映像/ビデオデータを格納する場合、送信費用と格納費用が増加される。
【0003】
また、近年、VR(Virtual Reality)、AR(Artificial Realtiy)コンテンツやホログラムなどの実感メディア(Immersive Media)に対する関心及び需要が増加しており、ゲーム映像のように、現実映像と異なる映像特性を有する映像/ビデオに対する放送が増加している。
【0004】
これにより、前記のような様々な特性を有する高解像度・高品質の映像/ビデオの情報を効果的に圧縮して送信するか、格納し、再生するために高効率の映像/ビデオ圧縮技術が求められる。
【0005】
また、映像/ビデオコーディングの効率を向上させるための案が必要であり、そのため、NAL(network abstraction layer)ユニットと関連した情報を効果的にシグナリングしてコーディングする案が必要である。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本文書の技術的課題は、ビデオ/映像コーディングの効率を高める方法及び装置を提供することにある。
【0007】
本文書の別の技術的課題は、NALユニット関連情報に基づいて、ビデオ/映像コーディングの効率を高める方法及び装置を提供することにある。
【0008】
本文書のまた別の技術的課題は、混合された(mixed)NALユニットタイプを有するピクチャに対するビデオ/映像コーディングの効率を高める方法及び装置を提供することにある。
【0009】
本文書のまた別の技術的課題は、混合されたNALユニットタイプを有するピクチャに対して、参照ピクチャリスト関連情報を特定のNALユニットタイプを有するピクチャ内のスライスに対して存在するようにするか、又はシグナリングされるようにする方法及び装置を提供することにある。
【課題を解決するための手段】
【0010】
本文書の一実施形態によると、ピクチャが混合された(mixed)NALユニットタイプを有するかに関するNALユニットタイプ関連情報に基づいて、ピクチャ内のスライスに対するNALユニットタイプを決定することができる。例えば、ピクチャが混合されたNALユニットタイプを有することに関するNALユニットタイプ関連情報に基づいて、ピクチャの第1スライスに対する第1NALユニットと、ピクチャの第2スライスに対する第2NALユニットとは異なるNALユニットタイプを有し得る。或いは、ピクチャが混合されたNALユニットタイプを有さないことに関するNALユニットタイプ関連情報に基づいて、ピクチャの第1スライスに対する第1NALユニットと、ピクチャの第2スライスに対する第2NALユニットとは同じNALユニットタイプを有し得る。
【0011】
本文書の一実施形態によると、ピクチャが混合されたNALユニットタイプを有することを許容する場合に基づいて、ピクチャ内の特定のNALユニットタイプを有するスライスに対して、参照ピクチャリストのシグナリング関連情報が存在するようにできる。
【0012】
本文書の一実施形態によると、デコード装置により実行されるビデオ/映像のデコード方法を提供する。前記ビデオ/映像のデコード方法は、本文書の実施形態で開示された方法を含むことができる。
【0013】
本文書の一実施形態によると、ビデオ/映像のデコードを実行するデコード装置を提供する。前記デコード装置は、本文書の実施形態で開示された方法を行うことができる。
【0014】
本文書の一実施形態によると、エンコード装置により実行されるビデオ/映像のエンコード方法を提供する。前記ビデオ/映像のエンコード方法は、本文書の実施形態で開示された方法を含むことができる。
【0015】
本文書の一実施形態によると、ビデオ/映像のエンコードを実行するエンコード装置を提供する。前記エンコード装置は、本文書の実施形態で開示された方法を行うことができる。
【0016】
本文書の一実施形態によると、本文書の実施形態の少なくとも1つに開示されたビデオ/映像のエンコード方法によって生成されたエンコードされたビデオ/映像情報が格納されたコンピュータ読み取り可能なデジタル格納媒体を提供する。
【0017】
本文書の一実施形態によると、デコード装置により本文書の実施形態の少なくとも1つに開示されたビデオ/映像デコード方法を行うように引き起こすエンコードされた情報又はエンコードされたビデオ/映像情報が格納されたコンピュータ読み取り可能なデジタル格納媒体を提供する。
【発明の効果】
【0018】
本文書は、多様な効果を有することができる。例えば、本文書の一実施形態によると、全般的な映像/ビデオの圧縮効率を高めることができる。また、本文書の一実施形態によると、NALユニット関連情報に基づいて、ビデオ/映像コーディングの効率を高めることができる。さらに、本文書の一実施形態によると、混合された(mixed)NALユニットタイプを有するピクチャに対するビデオ/映像コーディングの効率を高めることができる。また、本文書の一実施形態によると、混合されたNALユニットタイプを有するピクチャに対して、参照ピクチャリスト関連情報を効果的にシグナリングしてコーディングすることができる。さらに、本文書の一実施形態によると、リーディングピクチャNALユニットタイプ(例えば、RASL_NUT、RADL_NUT)と、他の非-IRAP NALユニットタイプ(例えば、TRAIL_NUT、STSA、NUT)とを混合された形態で含むピクチャを許容することによって、混合されたNALユニットタイプを有するピクチャに対してIRAPだけでなく、他のタイプのNALユニットとも混合された形態を提供し、これを通じてより柔軟な(flexible)特性を有することができる。
【0019】
本文書の具体的な実施形態を通じて得られる効果は、以上で挙げられた効果に制限されない。例えば、関連する技術分野の通常の知識を有する者(a person having ordinary skill in the related art)が本文書から理解または誘導することができる多様な技術的効果が存在し得る。これによって、本文書の具体的な効果は本文書に明示的に記載されていることに制限されず、本文書の技術的特徴から理解または誘導できる多様な効果を含み得る。
【図面の簡単な説明】
【0020】
【
図1】本文書の実施形態に適用されることができるビデオ/映像コーディングシステムの例を概略的に示す。
【
図2】本文書の実施形態に適用されることができるビデオ/映像エンコード装置の構成を概略的に説明する図面である。
【
図3】本文書の実施形態に適用されることができるビデオ/映像デコード装置の構成を概略的に説明する図面である。
【
図4】本文書の実施形態が適用可能な概略的なビデオ/映像エンコード手順の例を示す。
【
図5】本文書の実施形態が適用可能な概略的なビデオ/映像デコード手順の例を示す。
【
図6】本文書の実施形態が適用可能なエントロピーエンコード方法の一例を概略的に示す。
【
図7】エンコード装置内のエントロピーエンコード部を概略的に示す。
【
図8】本文書の実施形態が適用可能なエントロピーデコード方法の一例を概略的に示す。
【
図9】デコード装置内のエントロピーデコード部を概略的に示す。
【
図10】コーディングされた映像/ビデオに対する階層構造を例示的に示す。
【
図11】時間スケーラビリティをサポートするビットストリーム内のNALユニットに対する時間レイヤ構造を示す図である。
【
図12】ランダムアクセスが可能なピクチャを説明するための図である。
【
図13】IDRピクチャを説明するための図である。
【
図14】CRAピクチャを説明するための図である。
【
図15】本文書の実施形態が適用可能なビデオ/映像エンコード方法の一例を概略的に示す。
【
図16】本文書の実施形態が適用可能なビデオ/映像デコード方法の一例を概略的に示す。
【
図17】本文書の実施形態(ら)によるビデオ/映像エンコード方法及び関連コンポーネントの一例を概略的に示す。
【
図18】本文書の実施形態(ら)によるビデオ/映像エンコード方法及び関連コンポーネントの一例を概略的に示す。
【
図19】本文書の実施形態(ら)による映像/ビデオデコード方法及び関連コンポーネントの一例を概略的に示す。
【
図20】本文書の実施形態(ら)による映像/ビデオデコード方法及び関連コンポーネントの一例を概略的に示す。
【
図21】本文書において開示された実施形態が適用できるコンテンツストリーミングシステムの例を示す。
【発明を実施するための形態】
【0021】
本文書は、様々な変更を加えることができ、種々の実施形態を有することができ、特定実施形態を図面に例示し、詳細に説明しようとする。しかしながら、これは、本文書を特定実施形態に限定しようとするものではない。本明細書で常用する用語は、単に特定の実施形態を説明するために使用されたものであって、本文書の技術的思想を限定しようとする意図で使用されるものではない。単数の表現は、文脈上明白に異なるように意味しない限り、複数の表現を含む。本明細書において「含む」または「有する」などの用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部品、またはこれらを組み合わせたものが存在することを指定しようとするものであり、1つまたはそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、またはこれらを組み合わせたものなどの存在または付加可能性を予め排除しないことと理解されるべきである。
【0022】
一方、本文書で説明される図面上の各構成は、互いに異なる特徴的な機能に関する説明の都合上、独立的に図示されたものであって、各構成が互いに別個のハードウェアや別個のソフトウェアで具現されるということを意味するものではない。例えば、各構成のうち、2つ以上の構成が結合されて1つの構成をなすこともでき、1つの構成を複数の構成に分けることもできる。各構成が統合及び/又は分離された実施形態も本文書の本質から外れない限り、本文書の権利範囲に含まれる。
【0023】
本文書において、「A又はB(A or B)」は、「ただA」、「ただB」、又は「A及びB両方」を意味し得る。言い換えると、本文書において、「A又はB(A or B)」は、「A及び/又はB(A and/or B)」と解釈され得る。例えば、本文書において、「A、B又はC(A, B or C)」は、「ただA」、「ただB」、「ただC」、又は「A、B及びCの任意の全ての組み合わせ(any combination of A, B and C)」を意味し得る。
【0024】
本文書で使用されるスラッシュ(/)や休止符(comma)は、「及び/又は(and/or)」を意味し得る。例えば、「A/B」は、「A及び/又はB」を意味し得る。これによって、「A/B」は、「ただA」、「ただB」、又は「A及びB両方」を意味し得る。例えば、「A、B、C」は、「A、B又はC」を意味し得る。
【0025】
本文書において、「少なくとも一つのA及びB(at least one of A and B)」は、「ただA」、「ただB」又は「A及びB両方」を意味し得る。また、本文書において、「少なくとも一つのA又はB(at least one of A or B)」や「少なくとも一つのA及び/又はB(at least one of A and/or B)」という表現は、「少なくとも一つのA及びB(at least one of A and B)」と同様に解釈され得る。
【0026】
また、本文書において、「少なくとも一つのA、B及びC(at least one of A, B and C)」は、「ただA」、「ただB」、「ただC」、又は「A、B及びCの任意の全ての組み合わせ(any combination of A, B and C)」を意味し得る。また、「少なくとも一つのA、B又はC(at least one of A, B or C)」や「少なくとも一つのA、B及び/又はC(at least one of A, B and/or C)」は、「少なくとも一つのA、B及びC(at least one of A, B and C)」を意味し得る。
【0027】
また、本文書で使用される括弧は、「例えば(for example)」を意味し得る。具体的に、「予測(イントラ予測)」と表示された場合、「予測」の一例として「イントラ予測」が提案されたものであり得る。言い換えると、本文書の「予測」は、「イントラ予測」に制限(limit)されず、「イントラ予測」が「予測」の一例として提案されたものであり得る。また、「予測(即ち、イントラ予測)」と表示された場合にも、「予測」の一例として「イントラ予測」が提案されたものであり得る。
【0028】
本文書は、ビデオ/映像コーディングに関する。例えば、本文書で開示された方法/実施例は、VVC(versatile video coding)標準に開示される方法に適用されることができる。また、本文書で開示された方法/実施例は、EVC(essential video coding)標準、AV1(AOMedia Video 1)標準、AVS2(2nd generation of audio video coding standard)又は次世代ビデオ/映像コーディング標準(ex.267又はH.268等)に開示される方法に適用されることができる。
【0029】
本文書では、ビデオ/映像コーディングに関する多様な実施例を提示し、別の言及がない限り、前記実施例は互いに組み合わせて行うこともある。
【0030】
本文書において、ビデオ(video)は時間の流れによる一連の画像(image)の集合を意味し得る。ピクチャ(picture)は、一般的に特定の時間帯の1つの映像を示す単位を意味し、スライス(slice)/タイル(tile)は、コーディングにおいてピクチャの一部を構成する単位である。スライス/タイルは、1つ以上のCTU(coding tree unit)を含んでもよい。1つのピクチャは1つ以上のスライス/タイルで構成されてもよい。タイルはピクチャ内の特定のタイルの列及び特定のタイルの列以内のCTUの四角領域である。前記タイルの列はCTUの四角領域であり、前記四角領域は前記ピクチャの高さと同じ高さを有し、幅はピクチャパラメータセット内のシンタックス要素により明示され得る。前記タイルの行はCTUの四角領域であり、前記四角領域はピクチャパラメータセット内のシンタックス要素により明示される幅を有し、高さは前記ピクチャの高さと同じであってもよい。タイルスキャンはピクチャをパーティショニングするCTUの特定の順次オーダーリングを示し得、前記CTUはタイル内のCTUのラスタースキャンで連続して整列され得、ピクチャ内のタイルは、前記ピクチャの前記タイルのラスタースキャンで連続して整列され得る。スライスは単一のNALユニットに排他的に含まれ得る、整数個の完全なタイル又はピクチャのタイル内の整数個の連続的な完全なCTU行を含み得る。
【0031】
一方、1つのピクチャは、2つ以上のサブピクチャに区分されることができる。サブピクチャは、ピクチャ内の1つ以上のスライスの四角領域であり得る。
【0032】
ピクセル(pixel)又はペル(pel)は、1つのピクチャ(又は映像)を構成する最小の単位を意味し得る。また、ピクセルに対応する用語として「サンプル(sample)」が使用されてもよい。サンプルは、一般的にピクセル又はピクセルの値を示し、ルマ(luma)成分のピクセル/ピクセル値のみを示すこともあり、クロマ(chroma)成分のピクセル/ピクセル値のみを示すこともある。或いは、サンプルは、空間ドメインでのピクセル値を意味することもあり、このようなピクセル値が周波数ドメインに変換されると、周波数ドメインでの変換係数を意味することもある。
【0033】
ユニット(unit)は、映像処理の基本単位を示し得る。ユニットは、ピクチャの特定領域及び当該領域に関する情報の少なくとも1つを含み得る。1つのユニットは、1つのルマブロック及び2つのクロマ(例えば、cb、cr)ブロックを含み得る。ユニットは、場合によって、ブロック(block)または領域(area)などの用語と混用して使用され得る。一般的な場合、M×Nブロックは、M個の列とN個の行とからなるサンプル(またはサンプルアレイ)または変換係数(transform coefficient)の集合(又はアレイ)を含み得る。
【0034】
また、本文書において、量子化/逆量子化及び/又は変換/逆変換の少なくとも1つは、省略され得る。量子化/逆量子化が省略される場合、量子化された変換係数は変換係数と呼ばれ得る。変換/逆変換が省略される場合、変換係数は、係数又はレジデュアル係数と呼ばれてもよく、又は、表現の統一性のために、依然として変換係数と呼ばれてもよい。
【0035】
本文書において、量子化された変換係数及び変換係数は、各々、変換係数及びスケーリングされた(scaled)変換係数と呼ばれ得る。この場合、レジデュアル情報は、変換係数に関する情報を含み得、変換係数に関する情報は、レジデュアルコーディングシンタックスを介してシグナリングされ得る。レジデュアル情報(又は、変換係数に関する情報)に基づいて変換係数が導出され得、変換係数に対する逆変換(スケーリング)を介して、スケーリングされた変換係数が導出され得る。スケーリングされた変換係数に対する逆変換(変換)に基づいて、レジデュアルサンプルが導出され得る。これは本文書の他の部分でも同様に適用/表現されてもよい。
【0036】
本文書において、1つの図面内で個別的に説明される技術的特徴は、個別的に実現されてもよく、同時に実現されてもよい。
【0037】
以下、添付した図面を参照し、本文書の好ましい実施形態をより詳細に説明しようとする。以下、図面上の同じ構成要素については同じ参照符号を使用し、同じ構成要素について重複した説明は省略され得る。
【0038】
図1は、本文書の実施形態に適用されることができるビデオ/映像コーディングシステムの例を概略的に示す。
【0039】
図1に示すように、ビデオ/映像コーディングシステムは、第1の装置(ソースデバイス)及び第2の装置(受信デバイス)を備えることができる。ソースデバイスは、エンコーディングされたビデオ(video)/映像(image)情報またはデータをファイルまたはストリーミング形態でデジタル格納媒体またはネットワークを介して受信デバイスに伝達することができる。
【0040】
前記ソースデバイスは、ビデオソース、エンコーディング装置、送信部を備えることができる。前記受信デバイスは、受信部、デコーディング装置、及びレンダラを備えることができる。前記エンコーディング装置は、ビデオ/映像エンコーディング装置と呼ばれることができ、前記デコーディング装置は、ビデオ/映像デコーディング装置と呼ばれることができる。送信機は、エンコーディング装置に備えられることができる。受信機は、デコーディング装置に備えられることができる。レンダラは、ディスプレイ部を備えることができ、ディスプレイ部は、別個のデバイスまたは外部コンポーネントで構成されることもできる。
【0041】
ビデオソースは、ビデオ/映像のキャプチャ、合成、又は生成過程などを介してビデオ/映像を取得することができる。ビデオソースは、ビデオ/映像キャプチャデバイス及び/又はビデオ/映像生成デバイスを含むことができる。ビデオ/映像キャプチャデバイスは、例えば、1つ以上のカメラ、以前にキャプチャされたビデオ/映像を含むビデオ/映像アーカイブなどを含むことができる。ビデオ/映像生成デバイスは、例えば、コンピュータ、タブレット、及びスマートフォンなどを含むことができ、(電子的に)ビデオ/映像を生成することができる。例えば、コンピュータなどを介して仮想のビデオ/映像が生成され得るし、この場合、関連データが生成される過程にビデオ/映像キャプチャ過程が代替されることができる。
【0042】
エンコード装置は、入力ビデオ/映像をエンコードすることができる。エンコード装置は、圧縮及びコーディング効率のために、予測、変換、量子化など、一連の手順を行うことができる。エンコードされたデータ(エンコードされたビデオ/映像情報)は、ビットストリーム(bitstream)形態で出力されることができる。
【0043】
送信部は、ビットストリーム形態で出力されたエンコードされたビデオ/映像情報又はデータをファイル又はストリーミング形態でデジタル格納媒体又はネットワークを介して受信デバイスの受信部に伝達することができる。デジタル格納媒体は、USB、SD、CD、DVD、ブルーレイ、HDD、SSDなど、様々な格納媒体を含むことができる。送信部は、予め決められたファイルフォーマットを介してメディアファイルを生成するためのエレメントを含むことができ、放送/通信ネットワークを介しての送信のためのエレメントを含むことができる。受信部は、前記ビットストリームを受信/抽出してデコード装置に伝達することができる。
【0044】
デコード装置は、エンコード装置の動作に対応する逆量子化、逆変換、予測など、一連の手順を行ってビデオ/映像をデコードすることができる。
【0045】
レンダラーは、デコードされたビデオ/映像をレンダリングすることができる。レンダリングされたビデオ/映像は、ディスプレイ部を介してディスプレイされることができる。
【0046】
図2は、本文書の実施例が適用できるビデオ/映像エンコーディング装置の構成を概略的に説明する図である。以下、エンコーディング装置というのは、映像エンコーディング装置及び/又はビデオエンコーディング装置を含むことができる。
【0047】
図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を内/外部コンポーネントとしてさらに備えることもできる。
【0048】
映像分割部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)を導く単位であることができる。
【0049】
ユニットは、場合によって、ブロック(block)又は領域(area)などの用語と混用して使用されることができる。一般的な場合、M×Nブロックは、M個の列とN個の行からなるサンプル又は変換係数(transform coefficient)等の集合を示すことができる。サンプルは、一般的にピクセル又はピクセルの値を示すことができ、輝度(luma)成分のピクセル/ピクセル値のみを示すことができ、彩度(chroma)成分のピクセル/ピクセル値のみを示すこともできる。サンプルは、1つのピクチャ(又は、映像)をピクセル(pixel)又はペル(pel)に対応する用語として使用することができる。
【0050】
エンコーディング装置200は、入力映像信号(原本ブロック、原本サンプルアレイ)でインター予測部221またはイントラ予測部222から出力された予測信号(予測されたブロック、予測サンプルアレイ)を減算してレジデュアル信号(residual signal、残余ブロック、残余サンプルアレイ)を生成することができ、生成されたレジデュアル信号は、変換部232に送信される。この場合、図示されたように、エンコーダ200内において入力映像信号(原本ブロック、原本サンプルアレイ)で予測信号(予測ブロック、予測サンプルアレイ)を減算するユニットは、減算部231と呼ばれることができる。予測部は、処理対象ブロック(以下、現在ブロックという)に対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部は、現在ブロックまたはCU単位でイントラ予測が適用されるか、またはインター予測が適用されるか決定することができる。予測部は、各予測モードについての説明で後述するように、予測モード情報など、予測に関する様々な情報を生成してエントロピーエンコーディング部240に伝達することができる。予測に関する情報は、エントロピーエンコーディング部240でエンコーディングされてビットストリーム形態で出力されることができる。
【0051】
イントラ予測部222は、現在ピクチャ内のサンプルを参照して現在ブロックを予測できる。前記参照されるサンプルは、予測モードによって前記現在ブロックの隣接(neighbor)に位置することができ、又は、離れて位置することもできる。イントラ予測で予測モードは、複数の非方向性モードと複数の方向性モードとを含むことができる。非方向性モードは、例えば、DCモード及びプラナーモード(Planarモード)を含むことができる。方向性モードは、予測方向の細かい程度によって、例えば、33個の方向性予測モード又は65個の方向性予測モードを含むことができる。ただし、これは、例示であり、設定によってそれ以上又はそれ以下の個数の方向性予測モードが使用され得る。イントラ予測部222は、隣接ブロックに適用された予測モードを用いて、現在ブロックに適用される予測モードを決定することもできる。
【0052】
インター予測部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)をシグナリングすることにより、現在ブロックの動きベクトルを指示することができる。
【0053】
予測部220は、後述する様々な予測方法に基づいて予測信号を生成することができる。例えば、予測部は、1つのブロックに対する予測のために、イントラ予測またはインター予測を適用することができるだけでなく、イントラ予測とインター予測とを同時に適用することができる。これは、combined inter and intra prediction(CIIP)と呼ばれることができる。また、予測部は、ブロックに対する予測のために、イントラブロックコピー(intra block copy、IBC)予測モードに基づくことができ、またはパレットモード(palette mode)に基づくこともできる。前記IBC予測モードまたはパレットモードは、例えば、SCC(screen content coding)などのように、ゲームなどのコンテンツ映像/動画コーディングのために使用されることができる。IBCは、基本的に現在ピクチャ内で予測を行うが、現在ピクチャ内で参照ブロックを導出する点においてインター予測と同様に行われることができる。即ち、IBCは、本文書において説明されるインター予測技法のうち、少なくとも1つを用いることができる。パレットモードは、イントラコーディングまたはイントラ予測の一例と見なすことができる。パレットモードが適用される場合、パレットテーブル及びパレットインデックスに関する情報に基づいてピクチャ内のサンプル値をシグナリングすることができる。
【0054】
前記予測部(インター予測部221及び/又は前記イントラ予測部222含む)を介して生成された予測信号は、復元信号を生成するために用いられてもよく、レジデュアル信号を生成するために用いられてもよい。変換部232はレジデュアル信号に変換技法を適用して変換係数(transform coefficients)を生成することができる。例えば、変換技法は、DCT(Discrete Cosine Transform)、DST(Discrete Sine Transform)、KLT(Karhunen-Loeve Transform)、GBT(Graph-Based Transform)、又はCNT(Conditionally Non-linear Transform)の少なくとも1つを含み得る。ここで、GBTは、ピクセル間の関係情報をグラフで表現するというとき、このグラフから得られた変換を意味する。CNTは、以前に復元された全てのピクセル(all previously reconstructed pixel)を用いて予測信号を生成し、それに基づいて取得される変換を意味する。また、変換過程は、正方形の同じサイズを有するピクセルブロックに適用されることもあり、正方形ではない可変サイズのブロックに適用されることもある。
【0055】
量子化部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に含まれることもできる。
【0056】
量子化部233から出力された量子化された変換係数は、予測信号を生成するために用いられることができる。例えば、量子化された変換係数に逆量子化部234及び逆変換部235を介して逆量子化及び逆変換を適用することにより、レジデュアル信号(レジデュアルブロックまたはレジデュアルサンプル)を復元できる。加算部155は、復元されたレジデュアル信号をインター予測部221またはイントラ予測部222から出力された予測信号に加えることにより、復元(reconstructed)信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)が生成され得る。スキップモードが適用された場合のように、処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用されることができる。加算部250は、復元部または復元ブロック生成部と呼ばれることができる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用されることができ、後述するように、フィルタリングを経て次のピクチャのインター予測のために使用されることもできる。
【0057】
一方、ピクチャエンコーディング及び/又は復元過程でLMCS(luma mapping with chroma scaling)が適用されることもできる。
【0058】
フィルタリング部260は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部260は、復元ピクチャに様々なフィルタリング方法を適用して修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ270、具体的に、メモリ270のDPBに格納することができる。前記様々なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、両方向フィルタ(bilateral filter)などを含むことができる。フィルタリング部260は、各フィルタリング方法についての説明で後述するように、フィルタリングに関する様々な情報を生成してエントロピーエンコーディング部240に伝達することができる。フィルタリングに関する情報は、エントロピーエンコーディング部240でエンコーディングされてビットストリーム形態で出力されることができる。
【0059】
メモリ270に送信された修正された復元ピクチャは、インター予測部221で参照ピクチャとして使用されることができる。エンコーディング装置は、これを介してインター予測が適用される場合、エンコーディング装置100とデコーディング装置における予測ミスマッチを避けることができ、符号化効率も向上させることができる。
【0060】
メモリ270のDPBは、修正された復元ピクチャをインター予測部221における参照ピクチャとして使用するために格納することができる。メモリ270は、現在ピクチャ内の動き情報が導出された(または、エンコーディングされた)ブロックの動き情報及び/又は既に復元されたピクチャ内のブロックの動き情報を格納することができる。前記格納された動き情報は、空間的隣接ブロックの動き情報または時間的隣接ブロックの動き情報として活用するために、インター予測部221に伝達することができる。メモリ270は、現在ピクチャ内の復元されたブロックの復元サンプルを格納することができ、イントラ予測部222に伝達することができる。
【0061】
図3は、本文書が適用されることができるビデオ/映像デコード装置の構成を概略的に説明する図面である。
【0062】
図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を内/外部コンポーネントとしてさらに備えることもできる。
【0063】
ビデオ/映像情報を含むビットストリームが入力されれば、デコーディング装置300は、
図3のエンコーディング装置でビデオ/映像情報が処理されたプロセスに対応して映像を復元できる。例えば、デコーディング装置300は、前記ビットストリームから取得したブロック分割関連情報に基づいてユニット/ブロックを導出できる。デコーディング装置300は、エンコーディング装置で適用された処理ユニットを用いてデコーディングを行うことができる。したがって、デコーディングの処理ユニットは、例えば、コーディングユニットであることができ、コーディングユニットは、コーディングツリーユニットまたは最大コーディングユニットからクアッドツリー構造、バイナリツリー構造、及び/又はターナリツリー構造にしたがって分割されることができる。コーディングユニットから1つ以上の変換ユニットが導出され得る。そして、デコーディング装置300を介してデコーディング及び出力された復元映像信号は、再生装置を介して再生されることができる。
【0064】
デコーディング装置300は、
図3のエンコーディング装置から出力された信号をビットストリーム形態で受信することができ、受信された信号は、エントロピーデコーディング部310を介してデコーディングされることができる。例えば、エントロピーデコーディング部310は、前記ビットストリームをパーシングして映像復元(または、ピクチャ復元)に必要な情報(例えば、ビデオ/映像情報)を導出できる。前記ビデオ/映像情報は、アダプテーションパラメータセット(APS)、ピクチャパラメータセット(PPS)、シーケンスパラメータセット(SPS)、またはビデオパラメータセット(VPS)など、様々なパラメータセットに関する情報をさらに含むことができる。また、前記ビデオ/映像情報は、一般制限情報(general constraint information)をさらに含むことができる。デコーディング装置は、前記パラメータセットに関する情報及び/又は前記一般制限情報に基づいてさらにピクチャをデコーディングすることができる。本文書において後述されるシグナリング/受信される情報及び/又はシンタックス要素は、前記デコーディング手順を介してデコーディングされて、前記ビットストリームから取得されることができる。例えば、エントロピーデコーディング部310は、指数ゴロム符号化、CAVLC、またはCABACなどのコーディング方法を基にビットストリーム内の情報をデコーディングし、映像復元に必要なシンタックスエレメントの値、レジデュアルに関する変換係数の量子化された値を出力できる。より具体的に、CABACエントロピーデコーディング方法は、ビットストリームで各シンタックス要素に該当するビンを受信し、デコーディング対象のシンタックス要素情報と隣接及びデコーディング対象ブロックのデコーディング情報または以前ステップでデコーディングされたシンボル/ビンの情報を利用して文脈(context)モデルを決定し、決定された文脈モデルによってビン(bin)の発生確率を予測してビンの算術デコーディング(arithmetic decoding)を行い、各シンタックス要素の値に該当するシンボルを生成することができる。このとき、CABACエントロピーデコーディング方法は、文脈モデル決定後、次のシンボル/ビンの文脈モデルのためにデコーディングされたシンボル/ビンの情報を利用して文脈モデルをアップデートすることができる。エントロピーデコーディング部310でデコーディングされた情報のうち、予測に関する情報は、予測部(インター予測部332及びイントラ予測部331)に提供され、エントロピーデコーディング部310でエントロピーデコーディングが行われたレジデュアル値、即ち、量子化された変換係数及び関連パラメータ情報は、レジデュアル処理部320に入力されることができる。レジデュアル処理部320は、レジデュアル信号(レジデュアルブロック、レジデュアルサンプル、レジデュアルサンプルアレイ)を導出できる。また、エントロピーデコーディング部310でデコーディングされた情報のうち、フィルタリングに関する情報は、フィルタリング部350に提供されることができる。一方、エンコーディング装置から出力された信号を受信する受信部(図示せず)がデコーディング装置300の内/外部エレメントとしてさらに構成されることができ、または受信部は、エントロピーデコーディング部310の構成要素であることもできる。一方、本文書に係るデコーディング装置は、ビデオ/映像/ピクチャデコーディング装置と呼ばれることができ、前記デコーディング装置は、情報デコーダ(ビデオ/映像/ピクチャ情報デコーダ)及びサンプルデコーダ(ビデオ/映像/ピクチャサンプルデコーダ)に区分することもできる。前記情報デコーダは、前記エントロピーデコーディング部310を備えることができ、前記サンプルデコーダは、前記逆量子化部321、逆変換部322、加算部340、フィルタリング部350、メモリ360、インター予測部332、及びイントラ予測部331のうち、少なくとも1つを備えることができる。
【0065】
逆量子化部321では、量子化された変換係数を逆量子化して変換係数を出力できる。逆量子化部321は、量子化された変換係数を2次元のブロック形態で再整列することができる。この場合、前記再整列は、エンコード装置で行われた係数スキャン順序に基づいて再整列を行うことができる。逆量子化部321は、量子化パラメータ(例えば、量子化ステップサイズ情報)を用いて量子化された変換係数に対する逆量子化を行い、変換係数(transform coefficient)を取得することができる。
【0066】
逆変換部322では、変換係数を逆変換してレジデュアル信号(レジデュアルブロック、レジデュアルサンプルアレイ)を取得するようになる。
【0067】
予測部は、現在ブロックに対する予測を行い、前記現在ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部は、エントロピーデコード部310から出力された前記予測に関する情報に基づいて、前記現在ブロックにイントラ予測が適用されるか、又はインター予測が適用されるか決定することができ、具体的なイントラ/インター予測モードを決定することができる。
【0068】
予測部320は、後述する様々な予測方法に基づいて予測信号を生成することができる。例えば、予測部は、1つのブロックに対する予測のために、イントラ予測またはインター予測を適用することができるだけでなく、イントラ予測とインター予測とを同時に適用することができる。これは、combined inter and intra prediction(CIIP)と呼ばれることができる。また、予測部は、ブロックに対する予測のために、イントラブロックコピー(intra block copy、IBC)予測モードに基づくことができ、またはパレットモード(palette mode)に基づくこともできる。前記IBC予測モードまたはパレットモードは、例えば、SCC(screen content coding)などのように、ゲームなどのコンテンツ映像/動画コーディングのために使用されることができる。IBCは、基本的に現在ピクチャ内で予測を行うが、現在ピクチャ内で参照ブロックを導出する点においてインター予測と同様に行われることができる。即ち、IBCは、本文書において説明されるインター予測技法のうち、少なくとも1つを利用することができる。パレットモードは、イントラコーディングまたはイントラ予測の一例と見なすことができる。パレットモードが適用される場合、パレットテーブル及びパレットインデックスに関する情報が前記ビデオ/映像情報に含まれてシグナリングされることができる。
【0069】
イントラ予測部331は、現在ピクチャ内のサンプルを参照して現在ブロックを予測できる。前記参照されるサンプルは、予測モードによって前記現在ブロックの隣接(neighbor)に位置することができ、又は離れて位置することができる。イントラ予測において予測モードは、複数の非方向性モードと複数の方向性モードとを含むことができる。イントラ予測部331は、隣接ブロックに適用された予測モードを用いて、現在ブロックに適用される予測モードを決定することもできる。
【0070】
インター予測部332は、参照ピクチャ上で動きベクトルにより特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロックを導くことができる。このとき、インター予測モードで送信される動き情報の量を減らすために、隣接ブロックと現在ブロックとの間の動き情報の相関性に基づいて動き情報をブロック、サブブロック、又はサンプル単位で予測することができる。前記動き情報は、動きベクトル及び参照ピクチャインデックスを含むことができる。前記動き情報は、インター予測方向(L0予測、L1予測、Bi予測等)情報をさらに含むことができる。インター予測の場合に、隣接ブロックは、現在ピクチャ内に存在する空間的隣接ブロック(spatial neighboring block)と参照ピクチャに存在する時間的隣接ブロック(temporal neighboring block)とを備えることができる。例えば、インター予測部332は、隣接ブロックに基づいて動き情報候補リストを構成し、受信した候補選択情報に基づいて前記現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導出できる。様々な予測モードに基づいてインター予測が行われ得るし、前記予測に関する情報は、前記現在ブロックに対するインター予測のモードを指示する情報を含むことができる。
【0071】
加算部340は、取得されたレジデュアル信号を予測部(インター予測部332及び/又はイントラ予測部331を備える)から出力された予測信号(予測されたブロック、予測サンプルアレイ)に加えることにより、復元信号(復元ピクチャ、復元ブロック、復元サンプルアレイ)を生成することができる。スキップモードが適用された場合のように、処理対象ブロックに対するレジデュアルがない場合、予測されたブロックが復元ブロックとして使用されることができる。
【0072】
加算部340は、復元部又は復元ブロック生成部と呼ばれることができる。生成された復元信号は、現在ピクチャ内の次の処理対象ブロックのイントラ予測のために使用されることができ、後述するように、フィルタリングを経て出力されることができ、又は次のピクチャのインター予測のために使用されることもできる。
【0073】
一方、ピクチャデコード過程でLMCS(luma mapping with chroma scaling)が適用されることもできる。
【0074】
フィルタリング部350は、復元信号にフィルタリングを適用して主観的/客観的画質を向上させることができる。例えば、フィルタリング部350は、復元ピクチャに様々なフィルタリング方法を適用して修正された(modified)復元ピクチャを生成することができ、前記修正された復元ピクチャをメモリ360、具体的に、メモリ360のDPBに送信することができる。前記様々なフィルタリング方法は、例えば、デブロッキングフィルタリング、サンプル適応的オフセット(sample adaptive offset)、適応的ループフィルタ(adaptive loop filter)、両方向フィルタ(bilateral filter)などを含むことができる。
【0075】
メモリ360のDPBに格納された(修正された)復元ピクチャは、インター予測部332で参照ピクチャとして使用されることができる。メモリ360は、現在ピクチャ内の動き情報が導出された(または、デコーディングされた)ブロックの動き情報及び/又は既に復元されたピクチャ内のブロックの動き情報を格納できる。前記格納された動き情報は、空間的隣接ブロックの動き情報または時間的隣接ブロックの動き情報として活用するために、インター予測部260に伝達することができる。メモリ360は、現在ピクチャ内の復元されたブロックの復元サンプルを格納でき、イントラ予測部331に伝達することができる。
【0076】
本明細書において、エンコーディング装置200のフィルタリング部260、インター予測部221、及びイントラ予測部222で説明された実施形態等は、各々デコーディング装置300のフィルタリング部350、インター予測部332、及びイントラ予測部331にも同一または対応するように適用されることができる。
【0077】
前述したように、ビデオコーディングを実行するにあたって、圧縮効率を上げるために予測を実行する。これを介してコーディング対象ブロックである現在ブロックに対する予測サンプルを含む予測されたブロックを生成することができる。ここで、前記予測されたブロックは、空間ドメイン(又は、ピクセルドメイン)での予測サンプルを含む。前記予測されたブロックは、エンコード装置及びデコード装置で同じく導出され、前記エンコード装置は、原本ブロックの原本サンプル値自体でない前記原本ブロックと前記予測されたブロックとの間のレジデュアルに対する情報(レジデュアル情報)をデコード装置にシグナリングすることで映像コーディング効率を上げることができる。デコード装置は、前記レジデュアル情報に基づいてレジデュアルサンプルを含むレジデュアルブロックを導出し、前記レジデュアルブロックと前記予測されたブロックとを合わせて復元サンプルを含む復元ブロックを生成することができ、復元ブロックを含む復元ピクチャを生成することができる。
【0078】
前記レジデュアル情報は、変換及び量子化手順を介して生成されることができる。例えば、エンコード装置は、前記原本ブロックと前記予測されたブロックとの間のレジデュアルブロックを導出し、前記レジデュアルブロックに含まれているレジデュアルサンプル(レジデュアルサンプルアレイ)に変換手順を実行して変換係数を導出し、前記変換係数に量子化手順を実行して量子化された変換係数を導出することで、関連したレジデュアル情報を(ビットストリームを介して)デコード装置にシグナリングできる。ここで、前記レジデュアル情報は、前記量子化された変換係数の値情報、位置情報、変換技法、変換カーネル、量子化パラメータなどの情報を含むことができる。デコード装置は、前記レジデュアル情報に基づいて逆量子化/逆変換の手順を実行してレジデュアルサンプル(又は、レジデュアルブロック)を導出することができる。デコード装置は、予測されたブロックと前記レジデュアルブロックに基づいて復元ピクチャを生成することができる。また、エンコード装置は、以後ピクチャのインター予測のための参照のために量子化された変換係数を逆量子化/逆変換してレジデュアルブロックを導出し、これに基づいて復元ピクチャを生成することができる。
【0079】
一方、前述したように、現在ブロックに対する予測を行うにあたって、イントラ予測又はインター予測を適用することができる。一実施形態として、現在ブロックにインター予測を適用する場合、エンコード/デコード装置の予測部(より具体的にインター予測部)は、ブロック単位でインター予測を行って予測サンプルを導出することができる。インター予測は、現在ピクチャ以外のピクチャのデータ要素(例えば、サンプル値、又は動き情報など)に依存的な方法で導出される予測を示すことができる。現在ブロックにインター予測が適用される場合、参照ピクチャインデックスが指す参照ピクチャ上で動きベクトルにより特定される参照ブロック(参照サンプルアレイ)に基づいて、現在ブロックに対する予測されたブロック(予測サンプルアレイ)を誘導することができる。このとき、インター予測モードで送信される動き情報の量を減らすために、周辺ブロックと現在ブロックとの間の動き情報の相関性に基づいて、現在ブロックの動き情報をブロック、サブブロック又はサンプル単位で予測することができる。動き情報は、動きベクトル及び参照ピクチャインデックスを含み得る。動き情報は、インター予測タイプ(L0予測、L1予測、Bi予測など)情報をさらに含み得る。インター予測が適用される場合、周辺ブロックは現在ピクチャ内に存在する空間的周辺ブロック(spatial neighboring block)と、参照ピクチャに存在する時間的周辺ブロック(temporal neighboring block)とを含み得る。前記参照ブロックを含む参照ピクチャと前記時間的周辺ブロックを含む参照ピクチャとは同じであってもよく、異なってもよい。前記時間的周辺ブロックは、同一位置参照ブロック(collocated reference block)、同一位置CU(colCU)などの名前で呼ばれ得、前記時間的周辺ブロックを含む参照ピクチャは、同一位置ピクチャ(collocated picture、colPic)とも呼ばれ得る。例えば、現在ブロックの周辺ブロックに基づいて動き情報候補リストが構成され得、現在ブロックの動きベクトル及び/又は参照ピクチャインデックスを導出するために、どの候補が選択(使用)されるかを指示するフラグ又はインデックス情報がシグナリングされ得る。多様な予測モードに基づいてインター予測が行われ、例えば、スキップモードとマージモードの場合、現在ブロックの動き情報は選択された周辺ブロックの動き情報と同じであってもよい。スキップモードの場合、マージモードと異なり、レジデュアル信号が送信されないことがある。動き情報予測(motion vector prediction、MVP)モードの場合、選択された周辺ブロックの動きベクトルを動きベクトル予測子(motion vector predictor)として用いて、動きベクトル差分(motion vector difference)はシグナリングされることができる。この場合、前記動きベクトル予測子及び動きベクトル差分の和を用いて、現在ブロックの動きベクトルを導出することができる。
【0080】
前記動き情報は、インター予測タイプ(L0予測、L1予測、Bi予測等)に応じて、L0動き情報及び/又はL1動き情報を含むことができる。L0方向の動きベクトルは、L0動きベクトル又はMVL0と呼ばれ得、L1方向の動きベクトルは、L1動きベクトル又はMVL1と呼ばれ得る。L0動きベクトルに基づいた予測は、L0予測と呼ばれ得、L1動きベクトルに基づいた予測をL1予測と呼ばれ得、前記L0動きベクトル及び前記L1動きベクトルの両方に基づいた予測を双(Bi)予測と呼ばれ得る。ここで、L0動きベクトルは、参照ピクチャリストL0(L0)に関連する動きベクトルを示すことができ、L1動きベクトルは、参照ピクチャリストL1(L1)に関連する動きベクトルを示すことができる。参照ピクチャリストL0は、前記現在ピクチャよりも、出力順序上、以前のピクチャを参照ピクチャに含むことができ、参照ピクチャリストL1は、前記現在ピクチャよりも、出力順序上、以後のピクチャを含むことができる。前記以前のピクチャは、順方向(参照)ピクチャと呼ばれ得、前記以後のピクチャは、逆方向(参照)ピクチャと呼ばれ得る。前記参照ピクチャリストL0は、前記現在ピクチャよりも、出力順序上、以後のピクチャを参照ピクチャにさらに含むことができる。この場合、前記参照ピクチャリストL0内で前記以前のピクチャが先にインデキシングされ、前記以後のピクチャは、その後にインデキシングされ得る。前記参照ピクチャリストL1は、前記現在ピクチャよりも、出力順序上、以前のピクチャを参照ピクチャにさらに含むことができる。この場合、前記参照ピクチャリスト1内で前記以後のピクチャが先にインデキシングされ、前記以前のピクチャは、その後にインデキシングされ得る。ここで、出力順序は、POC(picture order count)順序(order)に対応し得る。
【0081】
図4は、本文書の実施形態が適用可能な概略的なビデオ/映像エンコード手順の例を示す。
図4において、S400は、
図2で詳述したエンコード装置の予測部220で実行されることができ、S410は、レジデュアル処理部230で実行されることができ、S420は、エントロピーエンコード部240で実行されることができる。S400は、本文書で説明されたインター/イントラ予測手順を含むことができ、S410は、本文書で説明されたレジデュアル処理手順を含むことができ、S420は、本文書で説明された情報のエンコード手順を含むことができる。
【0082】
図4を参照すると、ビデオ/映像エンコード手順は、
図2に関する説明で示すように、概略的にピクチャの復元のための情報(例えば、予測情報、レジデュアル情報、パーティショニング情報など)をエンコードしてビットストリームの形態で出力する手順だけでなく、現在ピクチャに対する復元ピクチャを生成する手順、及び復元ピクチャにインループフィルタリングを適用する手順(optional)を含み得る。エンコード装置は、逆量子化部234及び逆変換部235を介して量子化された変換係数から(修正された)レジデュアルサンプルを導出することができ、S400の出力である予測サンプルと、前記(修正された)レジデュアルサンプルとに基づいて復元ピクチャを生成することができる。このように生成された復元ピクチャは、前述したデコード装置で生成した復元ピクチャと同一であり得る。前記復元ピクチャに対するインループフィルタリング手順を介して修正された復元ピクチャが生成され、これは、復号ピクチャバッファ又はメモリ270に格納され、デコード装置での場合と同様に、以降のピクチャのエンコード時、インター予測手順で参照ピクチャとして使用され得る。前述したように、場合によって、前記インループフィルタリング手順の一部又は全部は省略され得る。前記インループフィルタリング手順が行われる場合、(インループ)フィルタリング関連情報(パラメータ)がエントロピーエンコード部240でエンコードされてビットストリームの形態で出力されることができ、デコード装置は、前記フィルタリング関連情報に基づいてエンコード装置と同じ方法でインループフィルタリング手順を行うことができる。
【0083】
このようなインループフィルタリング手順を介して、ブロッキングアーチファクト(artifact)及びリンギング(ringing)アーチファクトなど、画像/動画のコーディング時に発生するノイズを減らすことができ、主観的/客観的ビジュアルの品質を高めることができる。また、エンコード装置とデコード装置で、両方ともインループフィルタリング手順を行うことによって、エンコード装置とデコード装置は同じ予測結果を導出することができ、ピクチャコーディングの信頼性を高めて、ピクチャコーディングのために送信されなければならないデータ量を減らすことができる。
【0084】
前述したように、デコード装置だけでなく、エンコード装置でもピクチャ復元手順が行われる。各ブロック単位でイントラ予測/インター予測に基づいて復元ブロックが生成され、復元ブロックを含む復元ピクチャが生成され得る。現在ピクチャ/スライス/タイルグループがIピクチャ/スライス/タイルグループである場合、前記現在ピクチャ/スライス/タイルグループに含まれるブロックは、イントラ予測のみに基づいて復元され得る。一方、現在ピクチャ/スライス/タイルグループがP又はBピクチャ/スライス/タイルグループである場合、前記現在ピクチャ/スライス/タイルグループに含まれるブロックは、イントラ予測又はインター予測に基づいて復元され得る。この場合、現在ピクチャ/スライス/タイルグループ内の一部ブロックに対してはインター予測が適用され、残りの一部ブロックに対してはイントラ予測が適用されてもよい。ピクチャのカラー成分はルマ成分及びクロマ成分を含んでもよく、本文書で明示的に制限しない限り、本文書で提案される方法及び実施形態は、ルマ成分及びクロマ成分に適用され得る。
【0085】
図5は、本文書の実施形態が適用可能な概略的なビデオ/映像デコード手順の例を示す。
図5において、S500は、
図3で詳述したデコード装置のエントロピーデコード部310で実行されることができ、S510は、予測部330で実行されることができ、S520は、レジデュアル処理部320で実行されることができ、S530は、加算部340で実行されることができ、S540は、フィルタリング部350で実行されることができる。S500は、本文書で説明された情報のデコード手順を含むことができ、S510は、本文書で説明されたインター/イントラ予測手順を含むことができ、S520は、本文書で説明されたレジデュアル処理手順を含むことができ、S530は、本文書で説明されたブロック/ピクチャの復元手順を含むことができ、S540は、本文書で説明されたインループフィルタリング手順を含むことができる。
【0086】
図5を参照すると、ピクチャのデコード手順は、
図3に関する説明で示すように概略的にビットストリームから(デコードを介した)映像/ビデオ情報取得手順(S500)、ピクチャ復元手順(S510~S530)、及び復元されたピクチャに対するインループフィルタリング手順(S540)を含むことができる。前記ピクチャ復元手順は、本文書で説明されたインター/イントラ予測(S510)及びレジデュアル処理(S520、量子化された変換係数に対する逆量子化、逆変換)過程を経て取得した予測サンプル、及びレジデュアルサンプルに基づいて実行できる。前記ピクチャの復元手順を介して生成された復元ピクチャに対するインループフィルタリング手順を介して、修正された(modified)復元ピクチャが生成され、前記修正された復元ピクチャがデコードされたピクチャとして出力され、また、デコード装置の復号ピクチャバッファ又はメモリ360に格納され、以降のピクチャのデコード時、インター予測手順で参照ピクチャとして使用され得る。
【0087】
場合によって、前記インループフィルタリング手順は省略されてもよく、この場合、前記復元ピクチャがデコードされたピクチャとして出力され、また、デコード装置の復号ピクチャバッファ又はメモリ360に格納され、以降のピクチャのデコード時、インター予測手順で参照ピクチャとして使用され得る。前記インループフィルタリング手順(S540)は、前述したようにデブロッキングフィルタリング手順、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手順が実行され得る。これは、エンコード装置でも同様に実行され得る。
【0088】
一方、前述した内容のように、エンコード装置は、例えば、指数ゴロム(exponential Golomb)、CAVLC(context-adaptive variable length coding)、CABAC(context-adaptive binary arithmetic coding)などのような多様なエンコード方法に基づいて、エントロピーエンコードを実行することができる。また、デコード装置は、指数ゴロム符号化、CAVLC又はCABACなどのコーディング方法に基づいて、エントロピーデコードを実行することができる。以下では、エントロピーエンコード/デコード手順に関して説明する。
【0089】
図6は、本文書の実施形態が適用可能なエントロピーエンコード方法の一例を概略的に示し、
図7は、エンコード装置内のエントロピーエンコード部を概略的に示す。
図7のエンコード装置内のエントロピーエンコード部は、前述した
図2のエンコード装置200のエントロピーエンコード部240にも同一又は対応するように適用可能である。
【0090】
図6及び
図7を参照すると、エンコード装置(エントロピーエンコード部)は、映像/ビデオ情報に関するエントロピーコーディング手順を実行することができる。映像/ビデオ情報は、パーティショニング関連情報、予測関連情報(例えば、インター/イントラ予測区分情報、イントラ予測モード情報、インター予測モード情報等)、レジデュアル情報、インループフィルタリング関連情報などを含み得、又はそれに関する多様なシンタックス要素を含み得る。エントロピーコーディングは、シンタックス要素の単位で実行できる。S600乃至S610は、前述した
図2のエンコード装置200のエントロピーエンコード部240により実行できる。
【0091】
エンコード装置は、対象のシンタックス要素に対する二進化を実行できる(S600)。ここで、二進化は、Truncated Rice binarization process、Fixed-length binarization processなどの多様な二進化方法に基づき、対象のシンタックス要素に対する二進化方法は、予め定義され得る。二進化手順は、エントロピーエンコード部240内の二進化部242により実行できる。
【0092】
エンコード装置は、対象のシンタックス要素に対するエントロピーエンコードを実行できる(S610)。エンコード装置は、CABAC(context-adaptive arithmetic coding)又はCAVLC(context-adaptive variable length coding)などのエントロピーコーディング技法に基づいて、対象のシンタックス要素のビンストリング(bin string)を正規コーディングに基づいて(コンテキストに基づいて)、又はバイパスコーディングに基づいてエンコードでき、その出力はビットストリームに含まれ得る。エントロピーエンコード手順は、エントロピーエンコード部240内のエントロピーエンコード処理部243により実行されることができる。ビットストリームは、(デジタル)格納媒体又はネットワークを介してデコード装置に伝達できることは前述した通りである。
【0093】
図8は、本文書の実施形態が適用可能なエントロピーデコード方法の一例を概略的に示し、
図9は、デコード装置内のエントロピーデコード部を概略的に示す。
図9のデコード装置内のエントロピーデコード部は、前述した
図3のデコード装置300のエントロピーデコード部310にも同一又は対応するように適用され得る。
【0094】
図8及び
図9を参照すると、デコード装置(エントロピーデコード部)はエンコードされた映像/ビデオ情報をデコードできる。映像/ビデオ情報は、パーティショニング関連情報、予測関連情報(例えば、インター/イントラ予測区分情報、イントラ予測モード情報、インター予測モード情報など)、レジデュアル情報、インループフィルタリング関連情報などを含み得、又はそれに関する多様なシンタックス要素を含み得る。エントロピーコーディングは、シンタックス要素の単位で実行できる。S800乃至S810は、前述した
図3のデコード装置300のエントロピーデコード部310により実行できる。
【0095】
デコード装置は、対象のシンタックス要素に対する二進化を実行できる(S800)。ここで、二進化は、Truncated Rice binarization process, Fixed-length binarization processなどの多様な二進化方法に基づき、対象のシンタックス要素に対する二進化方法は、予め定義され得る。デコード装置は、二進化手順を介して対象のシンタックス要素の可用値に対する可用のビンストリング(ビンストリング候補)を導出することができる。二進化手順は、エントロピーデコード部310内の二進化部312により実行できる。
【0096】
デコード装置は、対象のシンタックス要素に対するエントロピーデコードを実行できる(S810)。デコード装置は、ビットストリーム内の入力ビットから対象のシンタックス要素に対する各ビンを順次にデコード及びパーシングするとともに、導出されたビンストリングを当該シンタックス要素に対する可用のビンストリングと比較する。もし、導出されたビンストリングが可用のビンストリングのうちの1つと同一であれば、当該ビンストリングに対応する値が当該シンタックス要素の値として導出され得る。もし、そうでなければ、ビットストリーム内の次のビットをさらにパーシングの後、前述した手順を再実行できる。このような過程を介して、ビットストリーム内に特定の情報(特定のシンタックス要素)に対するスタートビットやエンドビットを使用しなくても、可変長さのビットを用いて当該情報をシグナリングできる。これを介して、低い値に対しては相対的にさらに少ないビットを割り当てることができ、全般的なコーディング効率を高めることができる。
【0097】
デコード装置は、CABAC又はCAVLCなどのエントロピーコーディング技法に基づいて、ビットストリームからビンストリング内の各ビンをコンテキストに基づいて、又はバイパスに基づいてデコードできる。ここで、ビットストリームは、前述したように映像/ビデオデコードのための多様な情報を含み得る。ビットストリームは、(デジタル)格納媒体又はネットワークを介してデコード装置に伝達できることは前述した通りである。
【0098】
図10は、コーディングされた映像/ビデオに対する階層構造を例示的に示す。
【0099】
図10を参照すると、コーディングされた映像/ビデオは、映像/ビデオのデコード処理、及びそれ自体を取り扱うVCL(video coding layer、ビデオコーディング階層)、符号化された情報を送信して格納する下位システム、並びにVCLと下位システムとの間に存在し、ネットワーク適応機能を担当するNAL(network abstraction layer、ネットワーク抽象階層)に区分されている。
【0100】
VCLでは、圧縮された映像データ(スライスデータ)を含むVCLデータを生成するか、或いはピクチャパラメータセット(Picture Parameter Set:PPS)、シーケンスパラメータセット(Sequence Parameter Set:SPS)、ビデオパラメータセット(Video Parameter Set:VPS)等の情報を含むパラメータセット又は映像のデコード過程に付加的に必要なSEI(Supplemental Enhancement Information)メッセージを生成することができる。
【0101】
NALでは、VCLで生成されたRBSP(Raw Byte Sequence Payload)にヘッダ情報(NALユニットヘッダ)を付加してNALユニットを生成することができる。このとき、RBSPは、VCLで生成されたスライスデータ、パラメータセット、SEIメッセージなどをいう。NALユニットヘッダには、当該NALユニットに含まれるRBSPデータによって特定されるNALユニットタイプ情報を含み得る。
【0102】
また、NALユニットは、VCLで生成されたRBSPのよってVCL NALユニットとNon-VCL NALユニットとに区分できる。VCL NALユニットは、映像に対する情報(スライスデータ)を含んでいるNALユニットを意味し得、Non-VCL NALユニットは、映像をデコードするために必要な情報(パラメータセット又はSEIメッセージ)を含んでいるNALユニットを意味し得る。
【0103】
VCL NALユニット、Non-VCL NALユニットは、下位システムのデータ規格によってヘッダ情報を付けてネットワークを介して送信されることができる。例えば、NALユニットは、H.266/VVCファイルフォーマット、RTP(Real-time Transport Protocol)、TS(Transport Stream)などのような所定規格のデータ形態に変形されて多様なネットワークを介して送信されることができる。
【0104】
前述したように、NALユニットは、該当NALユニットに含まれるRBSPデータ構造(structure)によってNALユニットタイプが特定されることができ、このようなNALユニットタイプに対する情報は、NALユニットヘッダに格納されてシグナリングされることができる。
【0105】
例えば、NALユニットが映像に対する情報(スライスデータ)を含むかどうかによって、大別して、VCL NALユニットタイプとNon-VCL NALユニットタイプとに分類されることができる。VCL NALユニットタイプは、VCL NALユニットが含むピクチャの性質及び種類などによって分類されることができ、Non-VCL NALユニットタイプは、パラメータセットの種類などによって分類されることができる。
【0106】
下記は、Non-VCL NALユニットタイプが含むパラメータセットの種類などによって特定されたNALユニットタイプの一例である。
【0107】
-APS(Adaptation Parameter Set)NAL unit:APSを含むNALユニットに対するタイプ
【0108】
-DPS(Decoding Parameter Set)NAL unit:DPSを含むNALユニットに対するタイプ
【0109】
-VPS(Video Parameter Set)NAL unit:VPSを含むNALユニットに対するタイプ
【0110】
-SPS(Sequence Parameter Set)NAL unit:SPSを含むNALユニットに対するタイプ
【0111】
-PPS(Picture Parameter Set)NAL unit:PPSを含むNALユニットに対するタイプ
【0112】
-PH(Picture header)NAL unit:PHを含むNALユニットに対するタイプ
【0113】
前述したNALユニットタイプは、NALユニットタイプのためのシンタックス情報を有し、前記シンタックス情報は、NALユニットヘッダに格納されてシグナリングされることができる。例えば、前記シンタックス情報は、nal_unit_typeであり、NALユニットタイプは、nal_unit_type値に特定されることができる。
【0114】
一方、前述したように、1つのピクチャは複数のスライスを含んでもよく、1つのスライスはスライスヘッダ及びスライスデータを含んでもよい。この場合、1つのピクチャ内の複数のスライス(スライスヘッダ及びスライスデータの集合)に対して1つのピクチャヘッダがさらに付加されてもよい。ピクチャヘッダ(ピクチャヘッダシンタックス)は、ピクチャに共通して適用できる情報/パラメータを含み得る。本文書において、タイルグループはスライス又はピクチャに混用又は代替され得る。また、本文書において、タイルグループヘッダはスライスヘッダ又はピクチャヘッダに混用又は代替され得る。
【0115】
スライスヘッダ(スライスヘッダシンタックス)はスライスに共通して適用できる情報/パラメータを含み得る。APS(APSシンタックス)又はPPS(PPSシンタックス)は、1つ以上のスライス又はピクチャに共通して適用できる情報/パラメータを含み得る。SPS(SPSシンタックス)は、1つ以上のシーケンスに共通して適用できる情報/パラメータを含み得る。VPS(VPSシンタックス)は、多重レイヤに共通して適用できる情報/パラメータを含み得る。DPS(DPSシンタックス)は、ビデオ全般に共通して適用できる情報/パラメータを含み得る。DPSは、CVS(coded video sequence)の接合(concatenation)に関連した情報/パラメータを含み得る。本文書において、上位レベルシンタックス(High level syntax、HLS)とは、前記APSシンタックス、PPSシンタックス、SPSシンタックス、VPSシンタックス、DPSシンタックス、ピクチャヘッダシンタックス、スライスヘッダシンタックスの少なくとも1つを含み得る。
【0116】
本文書において、エンコード装置からデコード装置にエンコードされてビットストリームの形態でシグナリングされる映像/ビデオ情報は、ピクチャ内のパーティショニング関連情報、イントラ/インター予測情報、レジデュアル情報、インループフィルタリング情報などを含むだけでなく、スライスヘッダに含まれている情報、ピクチャヘッダに含まれている情報、APSに含まれている情報、PPSに含まれている情報、SPSに含まれている情報、VPSに含まれている情報、及び/又はDPSに含まれている情報を含み得る。また、前記映像/ビデオ情報は、NALユニットヘッダの情報をさらに含み得る。
【0117】
前述したように、HLS(High level syntax)は、ビデオ/映像コーディングのためにコーディング/シグナリングされることができる。本文書において、ビデオ/映像情報はHLSを含み得る。例えば、コーディングされるピクチャは、1つ以上のスライスで構成されることができる。コーディングされるピクチャを記述するパラメータはピクチャヘッダ(PH)内でシグナリングされ、スライスを記述するパラメータはスライスヘッダ(SH)内でシグナリングされることができる。PHは自分のNALユニットタイプに送信され得る。SHはスライス(すなわち、スライスデータ)のペイロードを含むNALユニットのスタート部分に存在し得る。PH及びSHのシンタックス及びセマンティクスに関する詳しい内容は、VVC標準で開示されている通りである。各ピクチャはPHと関連し得る。ピクチャはイントラコーディングされたスライス(すなわち、Iスライス)及びインターコーディングされたスライス(すなわち、P-スライス及びB-スライス)である互いに異なるタイプのスライスで構成され得る。結果として、PHはピクチャのイントラスライス及びピクチャのインタースライスに必要なシンタックス要素を含み得る。
【0118】
一方、一般的に1つのNALユニットタイプは1つのピクチャに対して設定されることができる。NALユニットタイプは、スライスを含むNALユニットのNALユニットヘッダでnal_unit_typeを介してシグナリングされることができる。nal_unit_typeはNALユニットタイプを特定するためのシンタックス情報であって、すなわち、下記の表1又は表2に示すように、NALユニットに含まれたRBSPデータ構造のタイプを特定することができる。
【0119】
次の表1は、NALユニットタイプのコード及びNALユニットタイプのクラスの一例を示す。
【0120】
【0121】
或いは、一例として、次の表2のようにNALユニットタイプのコード及びNALユニットタイプのクラスが定義されることもできる。
【0122】
【0123】
【0124】
前記表1又は表2に示すように、NALユニットに含まれるRBSPデータ構造によって、NALユニットタイプの名称及びその値が特定でき、NALユニットが映像に対する情報(スライスデータ)を含むかどうかによって、VCL NALユニットタイプとNon-VCL NALユニットタイプとに分類できる。VCL NALユニットタイプは、ピクチャの性質及び種類などに応じて分類でき、Non-VCL NALユニットタイプは、パラメータセットの種類などに応じて分類できる。例えば、次のようにVCL NALユニットに含まれるピクチャの性質及び種類に応じて、NALユニットタイプが特定できる。
【0125】
TRAIL:トレーリングピクチャ/サブピクチャのコーディングされるスライスデータを含むNALユニットに対するタイプを示す。例えば、nal_unit_typeはTRAIL_NUTと定義でき、nal_unit_typeの値は0と特定できる。
【0126】
ここで、トレーリングピクチャは出力順序(output order)及びデコード順序(decoding order)においてランダムアクセス(random access)可能なピクチャに後行するピクチャをいう。トレーリングピクチャは出力順序において関連したIRAPピクチャに後行し、STSAピクチャではない非-IRAPピクチャであり得る。例えば、IRAPピクチャと関連した(associated)トレーリングピクチャは、デコード順序においてIRAPピクチャに後行する。出力順序において関連するIRAPピクチャに後行し、デコード順序において関連するIRAPピクチャに先行するピクチャは許容されない。
【0127】
STSA(Step-wise Temporal Sub-layer Access):STSAピクチャ/サブピクチャのコーディングされるスライスデータを含むNALユニットに対するタイプを示す。例えば、nal_unit_typeはSTSA_NUTと定義でき、nal_unit_typeの値は1と特定できる。
【0128】
ここで、STSAピクチャは時間スケーラビリティをサポートするビットストリームで時間サブレイヤ間のスイッチングが可能なピクチャであって、下位のサブレイヤで、下位のサブレイヤより一段階高い上位のサブレイヤにアップスイッチングが可能な位置を指示するピクチャである。STSAピクチャは、インター予測の参照のためにSTSAピクチャと同じTemporalId及び同じレイヤにあるピクチャを使用しない。デコード順序上で、STSAピクチャと同じTemporalId及び同じレイヤにあるSTSAピクチャに後行するピクチャは、インター予測の参照のためにデコード順序上でSTSAピクチャと同じTemporalId及び同じレイヤにあるSTSAピクチャ以前のピクチャを使用しない。STSAピクチャはSTSAピクチャで、直ぐに下位のサブレイヤでSTSAピクチャを含むサブレイヤにアップスイッチングを可能にする。この場合、コーディングされるピクチャが最下位のサブレイヤに属してはならない。すなわち、STSAピクチャは、常時0より大きいTemporalIdを有さなければならない。
【0129】
RADL(random access decodable leading (picture)):RADLピクチャ/サブピクチャのコーディングされるスライスデータを含むNALユニットに対するタイプを示す。例えば、nal_unit_typeはRADL_NUTと定義でき、nal_unit_typeの値は2と特定できる。
【0130】
ここで、全てのRADLピクチャは、リーディングピクチャ(leading picture)である。RADLピクチャは同一の関連するIRAPピクチャのトレーリングピクチャのデコード過程のための参照ピクチャとして使用されない。具体的に、layerIdのようなnuh_layer_idを有するRADLピクチャは、出力順序上でRADLピクチャと関連したIRAPピクチャに後行するピクチャとしてlayerIdのようなnuh_layer_idを有するピクチャのデコード過程のための参照ピクチャとして使用されない。field_seq_flag(すなわち、sps_field_seq_flag)が0である場合、全てのRADLピクチャは(すなわち、RADLピクチャが存在する場合)デコード順序で同一の関連するIRAPピクチャの全ての非(non)-リーディングピクチャに先行する。一方、リーディングピクチャとは、出力順序上で関連するIRAPピクチャに先行するピクチャをいう。
【0131】
RASL(random access skipped leading(picture)):RASLピクチャ/サブピクチャのコーディングされるスライスデータを含むNALユニットに対するタイプを示す。例えば、nal_unit_typeはRASL_NUTと定義でき、nal_unit_typeの値は3と特定できる。
【0132】
ここで、全てのRASLピクチャは、関連するCRAピクチャのリーディングピクチャである。関連するCRAピクチャが、その値が1であるNoOutputBeforeRecoveryFlagを有する場合、RASLピクチャがビットストリームに存在しないピクチャに対する参照を含み得るので、RASLピクチャは出力されず正確にデコードされないことがある。RASLピクチャは同じレイヤの非-RASLピクチャのデコード過程のための参照ピクチャとして使用されない。但し、同じレイヤのRASLピクチャでのRADLサブピクチャが、RASLピクチャと同じCRAピクチャと関連するRADLピクチャでのcollocated RADLサブピクチャに対するインター予測のために使用されることはできる。field_seq_flag(すなわち、sps_field_seq_flag)が0である場合、全てのRASLピクチャは(すなわち、RASLピクチャが存在する場合)デコード順序で同一の関連するCRAピクチャの全ての非-リーディングピクチャに先行する。
【0133】
非-IRAP VCL NALユニットタイプのための予約されたnal_unit_typeがあり得る。例えば、nal_unit_typeはRSV_VCL_4乃至RSV_VCL_6と定義でき、nal_unit_typeの値は各々4乃至6と特定できる。
【0134】
ここで、IRAP(intra random access point)は、ランダムアクセスが可能なピクチャに対するNALユニットを示す情報である。IRAPピクチャは、CRAピクチャ又はIDRピクチャになり得る。例えば、IRAPピクチャは前記表1又は表2のように、nal_unit_typeがIDR_W_RADL、IDR_N_LP、CRA_NUと定義されたNALユニットタイプを有するピクチャをいい、nal_unit_typeの値は各々7乃至9と特定できる。
【0135】
IRAPピクチャは、デコード過程でインター予測のために同じレイヤにある参照ピクチャを使用しない。言い換えると、IRAPピクチャはデコード過程でインター予測のために自分以外の他のピクチャを参照しない。デコード順序上、ビットストリーム内の一番目のピクチャは、IRAP又はGDRピクチャになる。単一レイヤ(single-layer)のビットストリームに対して、参照すべき必要がある場合に必要なパラメータセットが利用可能であると、デコード順序でCLVS(coded layer video sequence)の全ての後行する非-RASLピクチャ及びIRAPピクチャは、デコード順序でIRAPピクチャに先行するピクチャのデコード過程を行わなくても、正確にデコードできる。
【0136】
IRAPピクチャに対するmixed_nalu_types_in_pic_flagの値は0である。ピクチャに対するmixed_nalu_types_in_pic_flagの値が0である場合、ピクチャ内の1つのスライスはIDR_W_RADLからCRA_NUTまで(例えば、前記表1又は表2でNALユニットタイプの値が7乃至9)の範囲内にあるNALユニットタイプ(nal_unit_type)を有し得、ピクチャ内の他のスライスはいずれも同じNALユニットタイプ(nal_unit_type)を有し得る。この場合、ピクチャはIRAPピクチャとみなされ得る。
【0137】
IDR(instantaneous decoding refresh):IDRピクチャ/サブピクチャのコーディングされるスライスデータを含むNALユニットに対するタイプを示す。例えば、IDRピクチャ/サブピクチャに対するnal_unit_typeは、IDR_W_RADL又はIDR_N_LPと定義でき、nal_unit_typeの値は各々7又は8と特定できる。
【0138】
ここで、IDRピクチャはデコード過程でインター予測を使用せず(すなわち、インター予測のために自分以外の他のピクチャを参照せず)、ビットストリーム内でデコード順序上、一番目のピクチャになるか、ビットストリームで後で(すなわち、一番目ではない後で)示され得る。各IDRピクチャは、デコード順序でCVS(coded video sequence)の一番目のピクチャである。例えば、IDRピクチャがデコード可能なリーディングピクチャと関連性を有すると、IDRピクチャのNALユニットタイプはIDR_W_RADLで示してもよく、IDRピクチャがリーディングピクチャと関連性がないと、IDRピクチャのNALユニットタイプはIDR_N_LPで示してもよい。すなわち、NALユニットタイプがIDR_W_RADLであるIDRピクチャは、ビットストリーム内に存在する関連するRASLピクチャを有し得ないが、ビットストリーム内の関連するRADLピクチャを有し得る。NALユニットタイプがIDR_N_LPであるIDRピクチャは、ビットストリーム内に存在する関連するリーディングピクチャを有さない。
【0139】
CRA(clean random access):CRAピクチャ/サブピクチャのコーディングされるスライスデータを含むNALユニットに対するタイプを示す。例えば、nal_unit_typeはCRA_NUTと定義でき、nal_unit_typeの値は9と特定できる。
【0140】
ここで、CRAピクチャはデコード過程でインター予測を使用せず(すなわち、インター予測のために自分以外の他のピクチャを参照せずに)、ビットストリーム内でデコード順序上、一番目のピクチャになるか、ビットストリームで後で(すなわち、一番目ではない後で)示され得る。CRAピクチャはビットストリーム内に存在する関連するRADL又はRASLピクチャを有し得る。NoOutputBeforeRecoveryFlagの値が1であるCRAピクチャに対して、関連するRASLピクチャがデコーダにより出力されないことがある。何故なら、ビットストリーム内に存在しないピクチャに対して参照を含み得るので、この場合、デコードできないためである。
【0141】
GDR(gradual decoding refresh):GDRピクチャ/サブピクチャのコーディングされるスライスデータを含むNALユニットに対するタイプを示す。例えば、nal_unit_typeはGDR_NUTと定義でき、nal_unit_typeの値は10と特定できる。
【0142】
ここで、GDRピクチャに対するpps_mixed_nalu_types_in_pic_flagの値は0であり得る。ピクチャに対してpps_mixed_nalu_types_in_pic_flagの値が0であり、ピクチャ内の1つのスライスがGDR_NUTのNALユニットタイプを有する場合、ピクチャ内の他のスライスはいずれも同一のNALユニットタイプ(nal_unit_type)の値を有し、この場合、ピクチャは一番目のスライスを受信した後、GDRピクチャになり得る。
【0143】
また、例えば、Non-VCL NALユニットに含まれるパラメータの種類に応じて、NALユニットタイプが特定でき、前記表1又は表2に示すように、ビデオパラメータセットを含むNALユニットに対するタイプを示すVPS_NUT、シーケンスパラメータセットを含むNALユニットに対するタイプを示すSPS_NUT、ピクチャパラメータセットを含むNALユニットに対するタイプを示すPPS_NUT、ピクチャヘッダを含むNALユニットに対するタイプを示すPH_NUTなどのNALユニットタイプ(nal_unit_type)を含み得る。
【0144】
一方、時間スケーラビリティをサポートするビットストリーム(又は時間スケーラブルビットストリーム、temporal scalable bitstream)は、時間的にスケールされる時間レイヤ(Temporal layer)に対する情報を含む。時間レイヤに対する情報は、NALユニットの時間スケーラビリティによって特定された時間レイヤの識別情報であり得る。例えば、時間レイヤの識別情報はtemporal_idシンタックス情報を用いることができ、前記temporal_idシンタックス情報はエンコード装置でNALユニットヘッダに格納され、デコード装置にシグナリングされることができる。以下、本明細書において、時間レイヤはサブレイヤ(Sub-layer)又は時間サブレイヤ(Temporal Sub-layer)又は時間スケーラブルレイヤ(Temporal Scalable layer)などと称されてもよい。
【0145】
図11は、時間スケーラビリティをサポートするビットストリーム内のNALユニットに対する時間レイヤ構造を示した図である。
【0146】
ビットストリームが時間スケーラビリティをサポートする場合、ビットストリームに含まれたNALユニットは、時間レイヤの識別情報(例えば、temporal_id)を有する。一例として、temporal_id値が0であるNALユニットで構成された時間レイヤが最も低い時間スケーラビリティを提供することができ、temporal_id値が2であるNALユニットで構成された時間レイヤが最も高い時間スケーラビリティを提供することができる。
【0147】
図11において、Iで表記されているボックスはIピクチャをいい、Bで表記されているボックスはBピクチャをいう。また、矢印は、ピクチャが他のピクチャを参照するかどうかに対する参照関係を示す。
【0148】
図11に示すように、temporal_id値が0である時間レイヤのNALユニットは、temporal_id値が0、1又は2である時間レイヤのNALユニットが参照できる参照ピクチャである。temporal_id値が1である時間レイヤのNALユニットは、temporal_id値が1又は2である時間レイヤのNALユニットが参照できる参照ピクチャである。temporal_id値が2である時間レイヤのNALユニットは、同じ時間レイヤ、すなわち、temporal_id値が2である時間レイヤのNALユニットが参照できる参照ピクチャであってもよく、又は他のピクチャにより参照されない非参照ピクチャであってもよい。
【0149】
もし、
図11に示すように、temporal_id値が2である時間レイヤ、すなわち、最上位の時間レイヤのNALユニットが非参照ピクチャである場合、このようなNALユニットはデコード過程で他のピクチャに影響を与えずにビットストリームから抽出(extraction、又は除去)されることができる。
【0150】
一方、前述したNALユニットタイプのうちIDR、CRAタイプは、ランダムアクセス(又はスプライシング、splicing)が可能なピクチャ、すなわち、ランダムアクセスポイントになるRAP(Random Access Point)又はIRAP(Intra Random Access Point)ピクチャを含むNALユニットを示す情報である。言い換えると、IRAPピクチャはIDR、CRAピクチャになり得、Iスライスのみ含み得る。ビットストリームでデコード順序上、一番目のピクチャはIRAPピクチャになる。
【0151】
もし、ビットストリーム内のIRAPピクチャ(IDR、CRAピクチャ)が含まれている場合、IRAPピクチャより出力順序は先行するが、デコード順序は後行するピクチャが存在し得る。このようなピクチャは、リーディングピクチャ(Leading Picture、LP)という。
【0152】
図12は、ランダムアクセスが可能なピクチャを説明するための図である。
【0153】
ランダムアクセスが可能なピクチャ、すなわち、ランダムアクセスポイントになるRAP又はIRAPピクチャは、ランダムアクセスの際、ビットストリームでデコード順序上、一番目のピクチャであり、Iスライスのみを含む。
【0154】
図12にはピクチャの出力順序(output order又はdisplay order)とデコード順序(decoding order)が図示されている。示すように、ピクチャの出力順序とデコード順序は互いに異なってもよい。便宜上、ピクチャは所定のグループに区分して説明される。
【0155】
第1グループ(I)に属するピクチャは、IRAPピクチャより出力順序及びデコード順序のすべてで先行するピクチャを示し、第2グループ(II)に属するピクチャは、IRAPピクチャより出力順序は先行するが、デコード順序は後行するピクチャを示す。第3グループ(III)のピクチャは、IRAPピクチャより出力順序及びデコード順序で全て後行する。
【0156】
第1グループ(I)のピクチャはIRAPピクチャと関係なくデコードされて出力されることができる。
【0157】
IRAPピクチャに先行して出力される第2グループ(II)に属するピクチャをリーディングピクチャといい、リーディングピクチャは、IRAPピクチャがランダムアクセスポイントに使用される場合、デコード過程で問題になることがある。
【0158】
出力及びデコード順序がIRAPピクチャに後行する第3グループ(III)に属するピクチャをノーマルピクチャ(normal picture)という。ノーマルピクチャは、リーディングピクチャの参照ピクチャとして使用されない。
【0159】
ビットストリームでランダムアクセスが発生するランダムアクセスポイントは、IRAPピクチャになり、第2グループ(II)の一番目のピクチャが出力されながら、ランダムアクセスが始まる。
【0160】
図13は、IDRピクチャを説明するための図である。
【0161】
IDRピクチャは、ピクチャのグループ(Group of Picture)が閉じた(closed)構造を有するとき、ランダムアクセスポイントになるピクチャである。IDRピクチャは、前述したようにIRAPピクチャであるため、Iスライスのみを含み、ビットストリームでデコード順序上、一番目のピクチャになることもあり、ビットストリームの中間にくることもある。IDRピクチャがデコードされると、DPB(decoded picture buffer)に格納されている全ての参照ピクチャは「unused for reference」で表示される。
【0162】
図13に示している棒はピクチャを示し、矢印は、ピクチャが他のピクチャを参照ピクチャとして用いることができるかどうかに対する参照関係を示す。矢印上に表示されているxマークは、当該ピクチャが矢印の指すピクチャを参照できないことを示す。
【0163】
示すように、POCが32であるピクチャはIDRピクチャである。POCが25 乃至31であり、IDRピクチャに先行して出力されるピクチャはリーディングピクチャ1310である。POCが33以上であるピクチャは、ノーマルピクチャ1320に該当する。
【0164】
出力順序上、IDRピクチャに先行するリーディングピクチャ1310は、IDRピクチャと他のリーディングピクチャを参照ピクチャとして用いることができるが、出力順序及びデコード順序上、リーディングピクチャ1310に先行する過去ピクチャ1330を参照ピクチャとして用いることができない。
【0165】
出力順序及びデコード順序上、IDRピクチャに後行するノーマルピクチャ1320は、IDRピクチャ、リーディングピクチャ、及び他のノーマルピクチャを参照してデコードされることができる。
【0166】
図14は、CRAピクチャを説明するための図である。
【0167】
CRAピクチャは、ピクチャのグループ(Group of Picture)が開かれた(open)構造を有するとき、ランダムアクセスポイントになるピクチャである。前述したように、CRAピクチャもやはりIRAPピクチャであるため、Iスライスのみを含み、ビットストリームでデコード順序上、一番目のピクチャになることもあり、ノーマルプレーのためにビットストリームの中間にくることもある。
【0168】
図14に示している棒はピクチャを示し、矢印は、ピクチャが他のピクチャを参照ピクチャとして用いることができるかどうかに対する参照関係を示す。矢印上に表示されているxマークは、当該ピクチャ又はピクチャが矢印の指すピクチャを参照できないことを示す。
【0169】
出力順序上、CRAピクチャに先行するリーディングピクチャ1410は、CRAピクチャ、他のリーディングピクチャ、及び出力順序並びにデコード順序上、リーディングピクチャ1410に先行する過去ピクチャ1430の全てを参照ピクチャとして用いることができる。
【0170】
反面、出力順序及びデコード順序上、CRAピクチャに後行するノーマルピクチャ1420は、CRAピクチャと他のノーマルピクチャを参照してデコードされることができる。ノーマルピクチャ1420は、リーディングピクチャ1410を参照ピクチャとして用いないこともある。
【0171】
一方、VVC標準では、コーディングされるピクチャ(すなわち、現在ピクチャ)が他のNALユニットタイプのスライスを含むようにできる。現在ピクチャが他のNALユニットタイプのスライスを含むかどうかは、シンタックス要素mixed_nalu_types_in_pic_flagに基づいて示し得る。例えば、現在ピクチャが他のNALユニットタイプのスライスを含む場合、シンタックス要素mixed_nalu_types_in_pic_flagの値は1で示し得る。このとき、現在ピクチャは1の値を有するmixed_nalu_types_in_pic_flagを含むPPSを参照しなければならない。前記フラグ(mixed_nalu_types_in_pic_flag)のセマンティクスは次の通りである。
【0172】
シンタックス要素mixed_nalu_types_in_pic_flagの値が1である場合には、PPSを参照する各ピクチャが1つ以上のVCL NALユニットを有し、VCL NALユニットが同じ値のNALユニットタイプ(nal_unit_type)を有さず、ピクチャがIRAPピクチャではないことを示し得る。
【0173】
シンタックス要素mixed_nalu_types_in_pic_flagの値が0である場合には、PPSを参照する各ピクチャが1つ以上のVCL NALユニットを有し、PPSを参照する各ピクチャのVCL NALユニットが同じ値のNALユニットタイプ(nal_unit_type)を有することを示し得る。
【0174】
no_mixed_nalu_types_in_pic_constraint_flagの値が1である場合、mixed_nalu_types_in_pic_flagの値は0でなければならない。no_mixed_nalu_types_in_pic_constraint_flagシンタックス要素は、ピクチャに対するmixed_nalu_types_in_pic_flagの値が0でなければならないかに関する制約条件を示す。例えば、上位レベルシンタックス(例えば、PPS)又は制約条件に関する情報を含むシンタックス(例えば、GCI;general constraints information)からシグナリングされるno_mixed_nalu_types_in_pic_constraint_flag情報に基づいて、mixed_nalu_types_in_pic_flagの値が0でなければならないかどうかを決定できる。
【0175】
他の値のNALユニットタイプを有する1つ以上のスライスも含むピクチャpicAで(すなわち、ピクチャpicAに対するmixed_nalu_types_in_pic_flagの値が1である場合)、IDR_W_RADLからCRA_NUTまで(例えば、前記表1又は表2でNALユニットタイプの値が7乃至9)の範囲内のNALユニットタイプ値nalUnitTypeAを有する各スライスについて、次のように適用できる。
【0176】
- スライスは、対応するsubpic_treated_as_pic_flag[i]の値が1であるサブピクチャsubpicAに属さなければならない。ここで、subpic_treated_as_pic_flag[i]は、CLVSで各コーディングされるピクチャのi番目のサブピクチャがインループフィルタリング動作を除いたデコード過程でピクチャとして取り扱われるかに関する情報である。例えば、subpic_treated_as_pic_flag[i]の値が1である場合、i番目のサブピクチャがインループフィルタリング動作を除いたデコード過程でピクチャとして取り扱われることを示し得る。或いは、subpic_treated_as_pic_flag[i]の値が0である場合、i番目のサブピクチャがインループフィルタリング動作を除いたデコード過程でピクチャとして取り扱われないことを示し得る。
【0177】
- スライスは、nalUnitTypeAと同一ではないNALユニットタイプ(nal_unit_type)を有するVCL NALユニットを含むpicAのサブピクチャに属してはならない。
【0178】
- デコード順序で、CLVS内の後行する全てのPUに対して、subpicA内のスライスのRefPicList[0]又はRefPicList[1]は、活性エントリー(active entry)でデコード順序上、picAに先行するピクチャを含まないべきである。
【0179】
前述したようなコンセプトを動作させるために、次のように指定できる。例えば、特定のピクチャのVCL NALユニットについて、次のように適用できる。
【0180】
- mixed_nalu_types_in_pic_flagの値が0である場合、NALユニットタイプ(nal_unit_type)の値は、ピクチャ内の全てのコーディングされるスライスNALユニットに対して同一でなければならない。ピクチャ又はPUは、ピクチャ又はPU内のコーディングされるスライスNALユニットと同じNALユニットタイプを有するものとみなされ得る。
【0181】
- そうでない場合(mixed_nalu_types_in_pic_flagの値が1である場合)、1つ以上のVCL NALユニットはいずれもIDR_W_RADLからCRA_NUTまで(例えば、前記表1又は表2でNALユニットタイプの値が7乃至9)の範囲内で特定値のNALユニットタイプを有さなければならず、他のVCL NALユニットはいずれもTRAIL_NUTからRSV_VCL_6まで(例えば、前記表1又は表2でNALユニットタイプの値が0乃至6)の範囲内で特定値のNALユニットタイプを有さなければならないか、又はGRA_NUTと同じNALユニットタイプを有さなければならない。
【0182】
現在VVC標準では、混合された(mixed)NALユニットタイプを有するピクチャの場合、少なくとも次のような問題があり得る。
【0183】
1.ピクチャがIDR及び非(non)-IRAP NALユニットを含む場合、RPL(reference picture list)に対するシグナリングがスライスヘッダで存在するとき、このようなシグナリングはIDRスライスのヘッダにも存在しなければならない。RPLシグナリングは、sps_idr_rpl_present_flagの値が1である場合に、IDRスライスのスライスヘッダに存在する。現在は、混合されたNALユニットタイプを有する1つ以上のピクチャがある場合にも、このようなフラグ(sps_idr_rpl_present_flag)の値が0であり得る。ここで、sps_idr_rpl_present_flagシンタックス要素は、RPLシンタックス要素がIDR_N_LP又はIDR_W_RADLのようなNALユニットタイプを有するスライスのスライスヘッダに存在し得るかどうかを示し得る。例えば、sps_idr_rpl_present_flagの値が1である場合、RPLシンタックス要素がIDR_N_LP又はIDR_W_RADLのようなNALユニットタイプを有するスライスのスライスヘッダに存在し得ることを示し得る。或いは、sps_idr_rpl_present_flagの値が0である場合、RPLシンタックス要素がIDR_N_LP又はIDR_W_RADLのようなNALユニットタイプを有するスライスのスライスヘッダに存在しないことを示し得る。
【0184】
2.現在ピクチャがmixed_nalu_types_in_pic_flagの値が1であるPPSを参照する場合、現在ピクチャのVCL NALユニットのうち1つ以上は、いずれもIDR_W_RADLからCRA_NUTまで(例えば、前記表1又は表2でNALユニットタイプの値が7乃至9)の範囲内で特定値のNALユニットタイプを有さなければならず、他のVCL NALユニットはいずれもTRAIL_NUTからRSV_VCL_6まで(例えば、前記表1又は表2でNALユニットタイプの値が0乃至6)の範囲内で特定値のNALユニットタイプを有さなければならないか、又はGRA_NUTと同じNALユニットタイプを有さなければならない。このような制約は、IRAP及び非(non)-IRAP NALユニットタイプの混合された場合を含む現在ピクチャに対してのみ適用される。しかし、RASL/RADL及び非(non)-IRAP NALユニットタイプの混合された場合を含むピクチャに対しては、まだ適切に適用されていない。
【0185】
本文書においては、前述したような問題点に対する解決策を提供する。すなわち、前述したように、2つ以上のサブピクチャを含むピクチャ(すなわち、現在ピクチャ)は混合されたNALユニットタイプを有し得る。現在VVC標準の場合、混合されたNALユニットタイプを有するピクチャは、IRAP NALユニットタイプと非-IRAP NALユニットタイプとで混合された形態を有し得る。しかし、CRA NALユニットタイプと関連したリーディングピクチャは、非-IRAP NALユニットタイプと混合された形態を有することもあるが、このような混合されたNALユニットタイプを有するピクチャに対しては現在標準でサポートされない。従って、CRA NALユニットタイプと非-IRAP NALユニットタイプとを混合された形態で有するピクチャに対する解決方法が必要である。
【0186】
よって、本文書は、リーディングピクチャNALユニットタイプ(例えば、RASL_NUT、RADL_NUT)と他の非-IRAP NALユニットタイプ(例えば、TRAIL_NUT、STSA、NUT)とを混合された形態で含むピクチャを許容する方法を提供する。また、本文書は、IDRサブピクチャと他の非-IRAPサブピクチャとが混合された場合に対して、参照ピクチャリストが存在するようにするか、シグナリングされるようにする制約条件を定義する。従って、混合されたNALユニットタイプを有するピクチャに対して、IRAPだけでなく、CRA NALユニットとも混合された形態を提供することによって、より柔軟な(flexible)特性を有するようにする。
【0187】
例えば、以下の実施形態のように適用することができ、これによって、前記問題点を解決することができる。以下の実施形態は、個別的に適用されてもよく、組み合わせて適用されてもよい。
【0188】
一実施形態として、ピクチャが混合されたNALユニットタイプを有することを許容するとき(mixed_nal_types_in_pic_flagの値が1である場合)、参照ピクチャリストに対するシグナリングは、IDRタイプのNALユニットタイプ(例えば、IDR_W_RADL又はIDR_N_LP)を有するスライスに対しても存在できるようにする。この制約は、次のように示し得る。
【0189】
- mixed_nal_types_in_pic_flag eqaulの値が1であるSPSを参照する少なくとも1つのPPSが存在する場合、sps_idr_rpl_present_flagの値は1でなければならない。このような制約は、ビットストリームの適合性(conformance)に対する要求事項であり得る。
【0190】
或いは、一実施形態として、混合されたNALユニットタイプを有するピクチャに対して、ピクチャがリーディングピクチャ(例えば、RADL又はRASL)の特定のNALユニットタイプ及び非-リーディングピクチャ、非-IRAPの特定のNALユニットタイプを有するスライスを含むことを許容できるようにする。これは、次のように示し得る。
【0191】
特定のピクチャのVCL NALユニットについて、次のように適用できる。
【0192】
- mixed_nalu_types_in_pic_flagの値が0である場合、NALユニットタイプ(nal_unit_type)の値は、ピクチャ内の全てのコーディングされるスライスNALユニットに対して同一でなければならない。ピクチャ又はPUは、前記ピクチャ又は前記PU内のコーディングされるスライスNALユニットと同じNALユニットタイプを有するものとみなされ得る。
【0193】
- そうでない場合(mixed_nalu_types_in_pic_flagの値が1である場合)、次のうちの一つを満たさなければならない(すなわち、次のうちの一つがtrue値を有し得る)。
【0194】
1)1つ以上のVCL NALユニットはいずれもIDR_W_RADLからCRA_NUTまで(例えば、前記表1又は表2でNALユニットタイプの値が7乃至9)の範囲内で特定値のNALユニットタイプ(nal_unit_type)を有さなければならず、他のVCL NALユニットはいずれもTRAIL_NUTからRSV_VCL_6まで(例えば、前記表1又は表2でNALユニットタイプの値が0乃至6)の範囲内で特定値のNALユニットタイプを有さなければならないか、又はGRA_NUTと同じNALユニットタイプを有さなければならない。
【0195】
2)1つ以上のVCL NALユニットはいずれもRADL_NUT(例えば、前記表1又は表2でNALユニットタイプの値が2)又はRASL_NUT(例えば、前記表1又は表2でNALユニットタイプの値が3)と同じNALユニットタイプの特定値を有さなければならず、他のVCL NALユニットはいずれもTRAIL_NUT(例えば、前記表1又は表2でNALユニットタイプの値が0)、STSA_NUT(例えば、前記表1又は表2でNALユニットタイプの値が1)、RSV_VCL_4(例えば、前記表1又は表2でNALユニットタイプの値が4)、RSV_VCL_5(例えば、前記表1又は表2でNALユニットタイプの値が5)、RSV_VCL_6(例えば、前記表1又は表2でNALユニットタイプの値が6)、又はGRA_NUTと同じNALユニットタイプの特定値を有さなければならない。
【0196】
一方、本文書は、単一レイヤ(single-layer)のビットストリームに対しても、前述したような混合されたNALユニットタイプを有するピクチャを提供する方法を提案する。一実施形態として、単一レイヤのビットストリームの場合、次の制約条件が適用され得る。
【0197】
- ビットストリーム内でデコード順序上、一番目のピクチャを除いた各ピクチャは、デコード順序で以前のIRAPピクチャと関連したものとみなされる。
【0198】
-ピクチャがIRAPピクチャのリーディングピクチャである場合、RADL又はRASLピクチャでなければならない。
【0199】
-ピクチャがIRAPピクチャのトレーリングピクチャである場合、RADL又はRASLピクチャであってはならない。
【0200】
- IDRピクチャと関連したビットストリーム内にはRASLピクチャが存在してはならない。
【0201】
- NALユニットタイプ(nal_unit_type)がIDR_N_LPであるIDRピクチャと関連したビットストリーム内にはRADLピクチャが存在してはならない。
【0202】
参照される場合、各パラメータセットが利用可能であれば、IRAP PU以前の全てのPUを廃棄(discarding)することによって、IRAP PUの位置でランダムアクセスを行うことができる(また、デコード順序でIRAPピクチャと全ての後行する非-RASLピクチャを正確にデコードできる)。
【0203】
- デコード順序でIRAPピクチャに先行するピクチャは出力順序でIRAPピクチャより先行しなければならず、出力順序でIRAPピクチャと関連したRADLピクチャより先行しなければならない。
【0204】
- CRAピクチャと関連したRASLピクチャは、出力順序でCRAピクチャと関連したRADLピクチャより先行しなければならない。
【0205】
- CRAピクチャと関連したRASLピクチャは、デコード順序でCRAピクチャより先行するIRAPピクチャに対して、出力順序上で後行しなければならない。
【0206】
- field_seq_flagの値が0であり、現在ピクチャがIRAPピクチャと関連したリーディングピクチャである場合、同じIRAPピクチャと関連した全ての非-リーディングピクチャよりデコード順序で先行しなければならない。そうでなければ、ピクチャpicAとpicBをデコード順序上で各々IRAPピクチャと関連した一番目と最後のリーディングピクチャとする場合、デコード順序でpicAに先行する非-リーディングピクチャは最大1個でなければならず、デコード順序でpicAとpicBとの間には非-リーディングピクチャがあってはならない。
【0207】
以下の図面は、本文書の具体的な一例を説明するために作成された。図面に記載された具体的な装置の名称や具体的な用語や名称(例えば、シンタックス/シンタックス要素の名称等)は例示的に提示されたものであるため、本文書の技術的特徴が以下の図面に使用された具体的な名称に制限されない。
【0208】
図15は、本文書の実施形態が適用可能なビデオ/映像エンコード方法の一例を概略的に示す。
図15に開示された方法は、
図2で開示されたエンコード装置200により実行されることができる。
【0209】
図15を参照すると、エンコード装置は、ピクチャ内のスライスに対するNALユニットタイプを決定することができる(S1500)。
【0210】
例えば、エンコード装置は、前記表1及び表2で説明したように、ピクチャ又はサブピクチャの性質及び種類等に応じてNALユニットタイプを決定することができ、ピクチャ又はサブピクチャのNALユニットタイプに基づいてスライスの各々に対するNALユニットタイプを決定することができる。
【0211】
例えば、mixed_nalu_types_in_pic_flagの値が0である場合に対して、PPSと関連したピクチャ内のスライスは同じNALユニットタイプと決定されることができる。すなわち、mixed_nalu_types_in_pic_flagの値が0である場合、ピクチャの第1スライスに対する情報を含む第1NALユニットの第1NALユニットヘッダに定義されたNALユニットタイプは、同じピクチャの第2スライスに対する情報を含む第2NALユニットの第2NALユニットヘッダに定義されたNALユニットタイプと同一である。或いは、mixed_nalu_types_in_pic_flagの値が1である場合に対して、PPSと関連したピクチャ内のスライスは、他のNALユニットタイプと決定されることができる。ここで、ピクチャ内のスライスに対するNALユニットタイプは、前述した実施形態で提案された方法に基づいて決定されることができる。
【0212】
エンコード装置は、NALユニットタイプ関連情報を生成することができる(S1510)。NALユニットタイプ関連情報は、前述した実施形態及び/又は前記表1及び表2で説明されたNALユニットタイプと関連した情報/シンタックス要素を含み得る。例えば、NALユニットタイプと関連した情報は、PPSに含まれたmixed_nalu_types_in_pic_flagシンタックス要素を含み得る。また、NALユニットタイプと関連した情報は、コーディングされたスライスに対する情報を含むNALユニットのNALユニットヘッダ内のnal_unit_typeシンタックス要素を含み得る。
【0213】
エンコード装置は、ビットストリームを生成することができる(S1520)。ビットストリームは、コーディングされたスライスに対する映像情報を含む少なくとも1つのNALユニットを含み得る。また、ビットストリームはPPSを含み得る。
【0214】
図16は、本文書の実施形態が適用可能なビデオ/映像デコード方法の一例を概略的に示す。
図16に開示された方法は、
図3で開示されたデコード装置300により実行されることができる。
【0215】
図16を参照すると、デコード装置はビットストリームを受信することができる(S1600)。ここで、ビットストリームはコーディングされたスライスに対する映像情報を含む少なくとも1つのNALユニットを含み得る。また、ビットストリームはPPSを含み得る。
【0216】
デコード装置は、NALユニットタイプ関連情報を取得することができる(S1610)。NALユニットタイプ関連情報は、前述した実施形態及び/又は前記表1及び表2で説明されたNALユニットタイプと関連した情報/シンタックス要素を含み得る。例えば、NALユニットタイプと関連した情報は、PPSに含まれたmixed_nalu_types_in_pic_flagシンタックス要素を含み得る。また、NALユニットタイプと関連した情報は、コーディングされたスライスに対する情報を含むNALユニットのNALユニットヘッダ内のnal_unit_typeシンタックス要素を含み得る。
【0217】
デコード装置は、ピクチャ内のスライスに対するNALユニットタイプを決定することができる(S1620)。
【0218】
例えば、mixed_nalu_types_in_pic_flagの値が0である場合、PPSと関連したピクチャ内のスライスは、同じNALユニットタイプを使用する。すなわち、mixed_nalu_types_in_pic_flagの値が0である場合、ピクチャの第1スライスに対する情報を含む第1NALユニットの第1NALユニットヘッダに定義されたNALユニットタイプは、同じピクチャの第2スライスに対する情報を含む第2NALユニットの第2NALユニットヘッダに定義されたNALユニットタイプと同じである。或いは、mixed_nalu_types_in_pic_flagの値が1である場合、PPSと関連したピクチャ内のスライスは他のNALユニットタイプを使用する。ここで、ピクチャ内のスライスに対するNALユニットタイプは、前述した実施形態で提案された方法に基づいて決定されることができる。
【0219】
デコード装置はスライスのNALユニットタイプに基づいてサンプル/ブロック/スライスをデコード/復元できる(S1630)。スライス内のサンプル/ブロックは、当該スライスのNALユニットタイプに基づいてデコード/復元できる。
【0220】
例えば、現在ピクチャの第1スライスに対して第1NALユニットタイプが設定され、現在ピクチャの第2スライスに対して(第1NALユニットタイプと異なる)第2NALユニットタイプが設定された場合、第1スライス内のサンプル/ブロック又は第1スライス自体が第1NALユニットタイプに基づいてデコード/復元でき、第2スライス内のサンプル/ブロック又は第2スライス自体が第2NALユニットタイプに基づいてデコード/復元できる。
【0221】
図17及び
図18は、本文書の実施形態によるビデオ/映像エンコード方法及び関連コンポーネントの一例を概略的に示す。
【0222】
図17に開示された方法は、
図2又は
図18で開示されたエンコード装置200により実行されることができる。ここで、
図18に開示されたエンコード装置200は、
図2に開示されたエンコード装置200を簡略に示したものである。具体的に、
図17のステップS1700~S1720は、
図2に開示されたエントロピーエンコード部240により実行されることができ、また、実施形態によって、各ステップは
図2に開示された映像分割部210、予測部220、レジデュアル処理部230、加算部340などにより実行されることもできる。さらに、
図17で開示された方法は、本文書で前述した実施形態を含んで実行されることができる。従って、
図17では、前述した実施形態と重複する内容に関して、具体的な説明を省略するか簡単にすることとする。
【0223】
図17を参照すると、エンコード装置は、現在ピクチャ内のNALユニットに対するNALユニットタイプを決定することができる(S1700)。
【0224】
現在ピクチャは複数のスライスを含み得、一つのスライスはスライスヘッダ及びスライスデータを含み得る。また、スライス(スライスヘッダ及びスライスデータ)にNALユニットヘッダを付加してNALユニットが生成できる。NALユニットヘッダには当該NALユニットに含まれるスライスデータによって特定されるNALユニットタイプ情報を含み得る。
【0225】
一実施形態として、エンコード装置は現在ピクチャ内の第1スライスに対する第1NALユニット及び現在ピクチャ内の第2スライスに対する第2NALユニットを生成することができる。また、エンコード装置は、第1及び第2スライスのタイプによって第1スライスに対する第1NALユニットタイプ及び第2スライスに対する第2NALユニットタイプを決定することができる。
【0226】
例えば、NALユニットタイプは、前記表1又は表2に示すように、NALユニットに含まれたスライスデータのタイプに基づいてTRAIL_NUT、STSA_NUT、RADL_NUT、RASL_NUT、IDR_W_RADL、IDR_N_LP、CRA_NUTなどを含み得る。また、NALユニットタイプは、NALユニットヘッダでnal_unit_typeシンタックス要素に基づいてシグナリングされ得る。nal_unit_typeシンタックス要素は、NALユニットタイプを特定するためのシンタックス情報であって、前記表1又は表2に示すように、特定のNALユニットタイプに対応する特定値で示し得る。
【0227】
エンコード装置は、NALユニットタイプに対するNALユニットタイプ関連情報を生成することができる(S1710)。
【0228】
NALユニットタイプ関連情報は、前述した実施形態及び/又は前記表1及び表2で説明されたNALユニットタイプと関連した情報/シンタックス要素を含み得る。例えば、NALユニットタイプ関連情報は、現在ピクチャが混合された(mixed)NALユニットタイプを有するかに関する情報であり得、PPSに含まれたmixed_nalu_types_in_pic_flagシンタックス要素で示し得る。例えば、mixed_nalu_types_in_pic_flagシンタックス要素の値が0である場合、現在ピクチャ内のNALユニットは同じNALユニットタイプを有することを示し得る。或いは、mixed_nalu_types_in_pic_flagシンタックス要素の値が1である場合、現在ピクチャ内のNALユニットは他のNALユニットタイプを有することを示し得る。
【0229】
一実施形態として、現在ピクチャ内のNALユニットに対するNALユニットタイプが全て同じである場合、エンコード装置は0の値を有するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flag)を生成することができる。或いは、現在ピクチャ内のNALユニットに対するNALユニットタイプが同じではない場合、エンコード装置は1の値を有するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flag)を生成することができる。
【0230】
すなわち、現在ピクチャが混合されたNALユニットタイプを有することに関するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flagの値が1)に基づいて、現在ピクチャの第1スライスに対する第1NALユニットと現在ピクチャの第2スライスに対する第2NALユニットは、互いに異なるNALユニットタイプを有し得る。或いは、現在ピクチャが混合されたNALユニットタイプを有さないことに関するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flagの値が0)に基づいて、現在ピクチャの第1スライスに対する第1NALユニットと現在ピクチャの第2スライスに対する第2NALユニットとは同じNALユニットタイプを有し得る。
【0231】
一例として、現在ピクチャが混合されたNALユニットタイプを有することに関するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flagの値が1)に基づいて、第1スライスに対する第1NALユニットはリーディングピクチャNALユニットタイプを有し得、第2スライスに対する第2NALユニットは、非-IRAP NALユニットタイプ又は非-リーディングピクチャNALユニットタイプを有し得る。ここで、リーディングピクチャNALユニットタイプは、RADL NALユニットタイプ又はRASL NALユニットタイプを含み得、非-IRAP NALユニットタイプ又は非-リーディングピクチャ NALユニットタイプは、トレールNALユニットタイプ又はSTSA NALユニットタイプを含み得る。
【0232】
或いは、一例として、現在ピクチャが混合されたNALユニットタイプを有することに関するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flagの値が1)に基づいて、第1スライスに対する第1NALユニットはIRAP NALユニットタイプを有し得、第2スライスに対する第2NALユニットは非-IRAP NALユニットタイプ又は非-リーディングピクチャNALユニットタイプを有し得る。ここで、IRAP NALユニットタイプは、IDR NALユニットタイプ(すなわち、IDR_N_LP NAL又はIDR_W_RADL NALユニットタイプ)又はCRA NALユニットタイプを含み得、非-IRAP NALユニットタイプ又は非-リーディングピクチャNALユニットタイプはトレールNALユニットタイプ又はSTSA NALユニットタイプを含み得る。また、実施形態によって非-IRAP NALユニットタイプ又は非-リーディングピクチャNALユニットタイプは、トレールNALユニットタイプのみを称することもある。
【0233】
実施形態によって、現在ピクチャが混合されたNALユニットタイプを有することを許容する場合に基づいて、現在ピクチャ内のIDR NALユニットタイプ(例えば、IDR_W_RADL又はIDR_N_LP)を有するスライスに対して、参照ピクチャリスト(reference picture list)のシグナリング関連情報が存在しなければならない。参照ピクチャリストのシグナリング関連情報は、参照ピクチャリストのシグナリングに対するシンタックス要素がスライスのスライスヘッダに存在するかどうかに関する情報を示し得る。すなわち、参照ピクチャリストのシグナリング関連情報の値が1であることに基づいて、IDR NALユニットタイプを有するスライスのスライスヘッダに参照ピクチャリストのシグナリングに対するシンタックス要素が存在し得る。或いは、参照ピクチャリストのシグナリング関連情報の値が0であることに基づいて、IDR NALユニットタイプを有するスライスのスライスヘッダに参照ピクチャリストのシグナリングに対するシンタックス要素が存在しないことがある。
【0234】
例えば、参照ピクチャリストのシグナリング関連情報は、前述したsps_idr_rpl_present_flagシンタックス要素であり得る。sps_idr_rpl_present_flagの値が1である場合、参照ピクチャリストのシグナリングに対するシンタックス要素がIDR_N_LP又はIDR_W_RADLのようなNALユニットタイプを有するスライスのスライスヘッダに存在し得ることを示し得る。或いは、sps_idr_rpl_present_flagの値が0である場合、参照ピクチャリストのシグナリングに対するシンタックス要素がIDR_N_LP又はIDR_W_RADLのようなNALユニットタイプを有するスライスのスライスヘッダに存在しないことを示し得る。
【0235】
エンコード装置は、NALユニットタイプ関連情報を含む映像/ビデオ情報をエンコードできる(S1720)。
【0236】
例えば、現在ピクチャ内の第1スライスに対する第1NALユニット及び現在ピクチャ内の第2スライスに対する第2NALユニットが互いに異なるNALユニットタイプを有する場合、エンコード装置は1の値を有するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flag)を含む映像/ビデオ情報をエンコードできる。或いは、現在ピクチャ内の第1スライスに対する第1NALユニット及び現在ピクチャ内の第2スライスに対する第2NALユニットが同じNALユニットタイプを有する場合、エンコード装置は0の値を有するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flag)を含む映像/ビデオ情報をエンコードできる。
【0237】
また、例えば、エンコード装置は、現在ピクチャ内のスライスに対する各NALユニットタイプを示すnal_unit_type情報を含む映像/ビデオ情報をエンコードできる。
【0238】
さらに、例えば、エンコード装置は、参照ピクチャリストのシグナリング関連情報(例えば、sps_idr_rpl_present_flag)を含む映像/ビデオ情報をエンコードできる。
【0239】
また、例えば、エンコード装置は、現在ピクチャ内のスライスに対するNALユニットを含む映像/ビデオ情報をエンコードできる。
【0240】
前述したような多様な情報を含む映像/ビデオ情報は、エンコードされてビットストリームの形態で出力されることができる。ビットストリームはネットワーク又は(デジタル)格納媒体を介してデコード装置に送信されることができる。ここで、ネットワークは放送網及び/又は通信網などを含み得、デジタル格納媒体はUSB、SD、CD、DVD、ブルーレイ、HDD、SSDなど多様な格納媒体を含み得る。
【0241】
図19及び
図20は、本文書の実施形態によるビデオ/映像デコード方法及び関連コンポーネントの一例を概略的に示す。
【0242】
図19に開示された方法は、
図3又は
図20で開示されたデコード装置300により実行されることができる。ここで、
図20に開示されたデコード装置300は、
図3に開示されたデコード装置300を簡略に示したものである。具体的に、
図19のステップS1900~S1920は、
図3に開示されたエントロピーデコード部310により実行されることができ、また、実施形態によって、各ステップは
図3に開示されたレジデュアル処理部320、予測部330、加算部340などにより実行されることもできる。さらに、
図19で開示された方法は、本文書において、前述した実施形態を含んで実行されることができる。従って、
図19では、前述した実施形態と重複する内容に関して、具体的な説明を省略するか簡単にすることとする。
【0243】
図19を参照すると、デコード装置はビットストリームからNALユニットタイプ関連情報を含む映像/ビデオ情報を取得することができる(S1900)。
【0244】
一実施形態として、デコード装置はビットストリームをパーシングして、映像復元(又はピクチャ復元)に必要な情報(例えば、ビデオ/映像情報)を導出することができる。このとき、映像情報は前述したNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flag)、現在ピクチャ内のスライスに対する各NALユニットタイプを示すnal_unit_type情報、参照ピクチャリストのシグナリング関連情報(例えば、sps_idr_rpl_present_flag)、現在ピクチャ内のスライスに対するNALユニットなどを含み得る。すなわち、映像情報は、デコード過程で必要な多様な情報を含み得、指数ゴロム符号化、CAVLC又はCABACなどのコーディング方法に基づいてデコードされることができる。
【0245】
前述したように、NALユニットタイプ関連情報は、前述した実施形態及び/又は前記表1及び表2で説明されたNALユニットタイプと関連した情報/シンタックス要素を含み得る。例えば、NALユニットタイプ関連情報は、現在ピクチャが混合された(mixed)NALユニットタイプを有するかに関する情報であり得、PPSに含まれたmixed_nalu_types_in_pic_flagシンタックス要素で示し得る。例えば、mixed_nalu_types_in_pic_flagシンタックス要素の値が0である場合、現在ピクチャ内のNALユニットは、同じNALユニットタイプを有することを示し得る。或いは、mixed_nalu_types_in_pic_flagシンタックス要素の値が1である場合、現在ピクチャ内のNALユニットは他のNALユニットタイプを有することを示し得る。
【0246】
デコード装置は、NALユニットタイプ関連情報に基づいて、現在ピクチャ内のNALユニットに対するNALユニットタイプを決定することができる(S1910)。
【0247】
現在ピクチャは、複数のスライスを含み得、1つのスライスはスライスヘッダ及びスライスデータを含み得る。また、スライス(スライスヘッダ及びスライスデータ)にNALユニットヘッダを付加してNALユニットが生成できる。NALユニットヘッダには当該NALユニットに含まれるスライスデータによって特定されるNALユニットタイプ情報を含み得る。
【0248】
例えば、NALユニットタイプは、前記表1又は表2に示すように、NALユニットに含まれたスライスデータのタイプに基づいて、TRAIL_NUT、STSA_NUT、RADL_NUT、RASL_NUT、IDR_W_RADL、IDR_N_LP、CRA_NUTなどを含み得る。また、NALユニットタイプは、NALユニットヘッダでnal_unit_typeシンタックス要素に基づいてシグナリングされ得る。nal_unit_typeシンタックス要素はNALユニットタイプを特定するためのシンタックス情報であって、前記表1又は表2に示すように、特定のNALユニットタイプに対応する特定値で示し得る。
【0249】
一実施形態として、デコード装置は、現在ピクチャが混合されたNALユニットタイプを有することに関するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flagの値が1)に基づいて、現在ピクチャの第1スライスに対する第1NALユニットと現在ピクチャの第2スライスに対する第2NALユニットとが互いに異なるNALユニットタイプを有すると決定できる。或いは、デコード装置は、現在ピクチャが混合されたNALユニットタイプを有さないことに関するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flagの値が0)に基づいて、現在ピクチャの第1スライスに対する第1NALユニットと、現在ピクチャの第2スライスに対する第2NALユニットとが同じNALユニットタイプを有すると決定できる。
【0250】
一例として、現在ピクチャが混合されたNALユニットタイプを有することに関するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flagの値が1)に基づいて、第1スライスに対する第1NALユニットは、リーディングピクチャNALユニットタイプを有し得、第2スライスに対する第2NALユニットは、非-IRAP NALユニットタイプ又は非-リーディングピクチャNALユニットタイプを有し得る。ここで、リーディングピクチャNALユニットタイプは、RADL NALユニットタイプ又はRASL NALユニットタイプを含み得、非-IRAP NALユニットタイプ又は非-リーディングピクチャNALユニットタイプはトレールNALユニットタイプ又はSTSA NALユニットタイプを含み得る。
【0251】
或いは、一例として、現在ピクチャが混合されたNALユニットタイプを有することに関するNALユニットタイプ関連情報(例えば、mixed_nalu_types_in_pic_flagの値が1)に基づいて、第1スライスに対する第1 NALユニットはIRAP NALユニットタイプを有し得、第2スライスに対する第2NALユニットは非-IRAP NALユニットタイプ又は非-リーディングピクチャNALユニットタイプを有し得る。ここで、IRAP NALユニットタイプはIDR NALユニットタイプ(すなわち、IDR_N_LP NAL又はIDR_W_RADL NALユニットタイプ)又はCRA NALユニットタイプを含み得、非-IRAP NALユニットタイプ又は非-リーディングピクチャNALユニットタイプはトレールNALユニットタイプ又はSTSA NALユニットタイプを含み得る。また、実施形態によって、非-IRAP NALユニットタイプ又は非-リーディングピクチャNALユニットタイプはトレールNALユニットタイプのみを称することもある。
【0252】
実施形態によって、現在ピクチャが混合されたNALユニットタイプを有することを許容する場合に基づいて、現在ピクチャ内のIDR NALユニットタイプ(例えば、IDR_W_RADL又はIDR_N_LP)を有するスライスに対して、参照ピクチャリスト(reference picture list)のシグナリング関連情報が存在しなければならない。参照ピクチャリストのシグナリング関連情報は、参照ピクチャリストのシグナリングに対するシンタックス要素がスライスのスライスヘッダに存在するかどうかに関する情報を示し得る。すなわち、参照ピクチャリストのシグナリング関連情報の値が1であることに基づいて、IDR NALユニットタイプを有するスライスのスライスヘッダに参照ピクチャリストのシグナリングに対するシンタックス要素が存在し得る。或いは、参照ピクチャリストのシグナリング関連情報の値が0であることに基づいて、IDR NALユニットタイプを有するスライスのスライスヘッダに参照ピクチャリストのシグナリングに対するシンタックス要素が存在しないことがある。
【0253】
例えば、参照ピクチャリストのシグナリング関連情報は、前述したsps_idr_rpl_present_flagシンタックス要素であり得る。sps_idr_rpl_present_flagの値が1である場合、参照ピクチャリストのシグナリングに対するシンタックス要素がIDR_N_LP又はIDR_W_RADLのようなNALユニットタイプを有するスライスのスライスヘッダに存在し得ることを示し得る。或いは、sps_idr_rpl_present_flagの値が0である場合、参照ピクチャリストのシグナリングに対するシンタックス要素がIDR_N_LP又はIDR_W_RADLのようなNALユニットタイプを有するスライスのスライスヘッダに存在しないことを示し得る。
【0254】
デコード装置は、NALユニットタイプに基づいて、現在ピクチャをデコード/復元できる(S1920)。
【0255】
例えば、第1NALユニットタイプと決定された現在ピクチャ内の第1スライス及び第2NALユニットタイプと決定された現在ピクチャ内の第2スライスに対して、デコード装置は第1NALユニットタイプに基づいて第1スライスをデコード/復元し、第2NALユニットタイプに基づいて第2スライスをデコード/復元できる。また、デコード装置は、第1NALユニットタイプに基づいて第1スライス内のサンプル/ブロックをデコード/復元し、第2NALユニットタイプに基づいて第2スライス内のサンプル/ブロックをデコード/復元できる。
【0256】
前述した実施形態において、方法は、一連のステップ又はブロックとしてフローチャートに基づいて説明されているが、本文書の実施形態は、ステップの順序に限定されるわけではなく、あるステップは、前述したところと異なるステップと異なる順序で、又は同時に発生し得る。また、当業者であれば、フローチャートに示されているステップが排他的ではなく、他のステップが含まれるか、フローチャートの1つ又はそれ以上のステップが本文書の範囲に影響を与えずに削除され得ることを理解することができる。
【0257】
前述した本文書による方法は、ソフトウェアの形態で実現されることができ、本文書によるエンコード装置及び/又はデコード装置は、例えば、TV、コンピュータ、スマートフォン、セットトップボックス、ディスプレイ装置等の映像処理を行う装置に含まれ得る。
【0258】
本文書で、実施形態がソフトウェアで実現される際、前述の方法は、前述の機能を行うモジュール(過程、機能等)で実現され得る。モジュールはメモリに格納され、プロセッサにより実行され得る。メモリは、プロセッサの内部又は外部にあってもよく、よく知られている様々な手段でプロセッサと連結されてもよい。プロセッサは、ASIC(application-specific integrated circuit)、他のチップセット、論理回路及び/又はデータ処理装置を含み得る。メモリは、ROM(read-only memory)、RAM(random access memory)、フラッシュメモリ、メモリカード、格納媒体及び/又は他の格納装置を含み得る。即ち、本文書で説明した実施形態は、プロセッサ、マイクロプロセッサ、コントローラ又はチップ上で実現されて実行され得る。例えば、各図面で示している機能ユニットは、コンピュータ、プロセッサ、マイクロプロセッサ、コントローラ又はチップ上で実現されて実行され得る。この場合、実現のための情報(例えば、information on instructions)又はアルゴリズムがデジタル格納媒体に格納され得る。
【0259】
また、本文書が適用されるデコード装置及びエンコード装置は、マルチメディア放送送受信装置、モバイル通信端末、ホームシネマビデオ装置、デジタルシネマビデオ装置、監視用カメラ、ビデオ対話装置、ビデオ通信のようなリアルタイム通信装置、モバイルストリーミング装置、格納媒体、カムコーダ、オーダーメイド型ビデオ(VoD)サービス提供装置、OTTビデオ(Over the top video)装置、インターネットストリーミングサービス提供装置、3次元(3D)ビデオ装置、VR(virtual reality)装置、AR(argumente reality)装置、映像電話ビデオ装置、運送手段端末(例えば、車両(自律走行車両含む)端末、飛行機端末、船舶端末など)及び医療用ビデオ装置等に含まれ得、ビデオ信号又はデータ信号を処理するために使用され得る。例えば、OTTビデオ(Over the top video)装置としては、ゲームコンソール、ブルーレイプレーヤー、インターネットアクセスTV、ホームシアターシステム、スマートフォン、タブレットPC、DVR(Digital Video Recoder)等を含み得る。
【0260】
また、本文書の実施形態が適用される処理方法は、コンピュータで実行されるプログラムの形態で生産されることができ、コンピュータが読み取ることができる記録媒体に格納されることができる。本文書の実施形態に係るデータ構造を有するマルチメディアデータもまた、コンピュータが読み取ることができる記録媒体に格納されることができる。前記コンピュータが読み取ることができる記録媒体は、コンピュータで読み取られるデータが格納される全ての種類の格納装置及び分散格納装置を含む。前記コンピュータが読み取ることができる記録媒体は、例えば、ブルーレイディスク(BD)、汎用直列バス(USB)、ROM、PROM、EPROM、EEPROM、RAM、CD-ROM、磁気テープ、フロッピディスク、及び光学的データ格納装置を含み得る。また、前記コンピュータが読み取ることができる記録媒体は、搬送波(例えば、インターネットを介した送信)の形態で具現されたメディアを含む。また、エンコード方法で生成されたビットストリームが、コンピュータが読み取られる記録媒体に格納されるか、有無線通信ネットワークを介して送信されることができる。
【0261】
また、本文書の実施形態は、プログラムコードによるコンピュータプログラム製品で具現されることができ、前記プログラムコードは、本文書の実施形態によってコンピュータで実行されることができる。前記プログラムコードは、コンピュータによって読み取り可能なキャリア上に格納されることができる。
【0262】
図21は、本文書に開示された実施形態が適用されることができるコンテンツストリーミングシステムの例を示す。
【0263】
図21を参照すると、本文書の実施形態が適用されるコンテンツストリーミングシステムは、大きくエンコードサーバ、ストリーミングサーバ、ウェブサーバ、メディアストレージ、ユーザ装置、及びマルチメディア入力装置を含むことができる。
【0264】
前記エンコードサーバは、スマートフォン、カメラ、カムコーダ等のようなマルチメディア入力装置から入力されたコンテンツをデジタルデータに圧縮してビットストリームを生成し、これを前記ストリーミングサーバに送信する役割をする。別の例として、スマートフォン、カメラ、カムコーダなどのようなマルチメディア入力装置がビットストリームを直接生成する場合、前記エンコードサーバは省略され得る。
【0265】
前記ビットストリームは、本文書の実施形態が適用されるエンコード方法又はビットストリームの生成方法により生成されることができ、前記ストリーミングサーバは、前記ビットストリームを送信又は受信する過程で、一時的に前記ビットストリームを格納することができる。
【0266】
前記ストリーミングサーバは、ウェブサーバを介してのユーザ要請に基づいてマルチメディアデータをユーザ装置に送信し、前記ウェブサーバは、ユーザにどのようなサービスがあるかを知らせる媒介体役割をする。ユーザが前記ウェブサーバに所望のサービスを要請すれば、前記ウェブサーバは、これをストリーミングサーバに伝達し、前記ストリーミングサーバは、ユーザにマルチメディアデータを送信する。このとき、前記コンテンツストリーミングシステムは、別の制御サーバを含むことができ、この場合、前記制御サーバは、前記コンテンツストリーミングシステム内の各装置間の命令/応答を制御する役割をする。
【0267】
前記ストリーミングサーバは、メディア格納所及び/又はエンコードサーバからコンテンツを受信することができる。例えば、前記エンコードサーバからコンテンツを受信するようになる場合、前記コンテンツをリアルタイムに受信することができる。この場合、円滑なストリーミングサービスを提供するために、前記ストリーミングサーバは、前記ビットストリームを一定時間の間、格納することができる。
【0268】
前記ユーザ装置の例では、携帯電話、スマートフォン(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、デスクトップコンピュータ、デジタルサイニジなどがありうる。
【0269】
前記コンテンツストリーミングシステム内の各サーバは、分散サーバとして運営されることができ、この場合、各サーバで受信するデータは、分散処理されることができる。
【0270】
本明細書に記載された請求項は、多様な方式で組み合わせることができる。例えば、本明細書の方法請求項の技術的特徴が組み合わせられて装置として具現されることができ、本明細書の装置請求項の技術的特徴が組み合わせられて方法として具現されることができる。また、本明細書の方法請求項の技術的特徴と装置請求項の技術的特徴とが組み合わせられて装置として具現されることができ、本明細書の方法請求項の技術的特徴と装置請求項の技術的特徴とが組み合わせられて方法として具現されることができる。