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

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

▶ ベイジン・ダジア・インターネット・インフォメーション・テクノロジー・カンパニー,リミテッドの特許一覧

特許7350988ビデオコーディングにおける小さい色差ブロックサイズ制限
<>
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図1
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図2
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図3
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図4A
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図4B
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図4C
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図4D
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図4E
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図5
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図6A
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図6B
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図6C
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図7
  • 特許-ビデオコーディングにおける小さい色差ブロックサイズ制限 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-15
(45)【発行日】2023-09-26
(54)【発明の名称】ビデオコーディングにおける小さい色差ブロックサイズ制限
(51)【国際特許分類】
   H04N 19/70 20140101AFI20230919BHJP
【FI】
H04N19/70
【請求項の数】 14
(21)【出願番号】P 2022509166
(86)(22)【出願日】2020-08-14
(65)【公表番号】
(43)【公表日】2022-08-04
(86)【国際出願番号】 US2020046501
(87)【国際公開番号】W WO2021030747
(87)【国際公開日】2021-02-18
【審査請求日】2022-02-14
(31)【優先権主張番号】62/887,650
(32)【優先日】2019-08-15
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/900,424
(32)【優先日】2019-09-13
(33)【優先権主張国・地域又は機関】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】521024075
【氏名又は名称】ベイジン・ダジア・インターネット・インフォメーション・テクノロジー・カンパニー,リミテッド
(74)【代理人】
【識別番号】100118902
【弁理士】
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100106208
【弁理士】
【氏名又は名称】宮前 徹
(74)【代理人】
【識別番号】100196508
【弁理士】
【氏名又は名称】松尾 淳一
(74)【代理人】
【識別番号】100147991
【弁理士】
【氏名又は名称】鳥居 健一
(74)【代理人】
【識別番号】100201743
【弁理士】
【氏名又は名称】井上 和真
(72)【発明者】
【氏名】チェン,イー-ウエン
(72)【発明者】
【氏名】シウ,シヤオユー
(72)【発明者】
【氏名】マ,ツン-チュアン
(72)【発明者】
【氏名】ジュ,ホーン-ジェン
(72)【発明者】
【氏名】ワーン,シアーンリン
(72)【発明者】
【氏名】ユ,ビーン
【審査官】鉢呂 健
(56)【参考文献】
【文献】特表2022-518378(JP,A)
【文献】CHEN, Yi-Wen et al.,Non-CE3: Spec fix for the smallest chroma intra prediction unit (SCIPU),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, 1-11 October 2019, [JVET-P0520],JVET-P0520 (version 2),ITU-T,2019年09月25日,<URL:https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P0520-v2.zip>: JVET-P0520.docx: pp.1-2
【文献】DENG, Zhipin et al.,Non-CE3: Cleanups on local dual tree for non-4:2:0 chroma formats,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, 1-11 October 2019, [JVET-P0537-v2],JVET-P0537 (version 3),ITU-T,2019年10月09日,<URL:https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P0537-v3.zip>: JVET-P0537_r1.docx: pp.1-4
【文献】JANG, Hyeongmun et al.,NonCE: to support SCIPU with local dual tree for various color format,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, 1-11 October 2019, [JVET-P0575],JVET-P0575 (version 1),ITU-T,2019年09月25日,<URL:https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P0575-v1.zip>: JVET-P0575.docx: pp.1-4
【文献】ZHAO, Yin et al.,AHG16: Fix on local dual tree,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, 1-11 October 2019, [JVET- P0063-v2],JVET-P0063 (version 2),ITU-T,2019年10月03日,<URL:https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P0063-v2.zip>: JVET-P0063-v2.docx: pp.1-6
【文献】VAN, Luong Pham et al.,Non-CE3: Generalization of SCIPU for different YUV formats,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, 1-11 October 2019, [JVET-P0406-v3],JVET-P0406 (version 3),ITU-T,2019年10月02日,<URL:https://jvet-experts.org/doc_end_user/documents/16_Geneva/wg11/JVET-P0406-v3.zip>: JVET-P0406_v3_Clean.docx: pp.1-6
【文献】LIN, Zhi-Yi et al.,CE3-2.1.1 and CE3-2.1.2: Removing 2x2, 2x4, and 4x2 chroma CBs,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 15th Meeting: Gothenburg, SE, 3-12 July 2019, [JVET-O0050-v2],JVET-O0050 (version 4),ITU-T,2019年07月10日,<URL:https://jvet-experts.org/doc_end_user/documents/15_Gothenburg/wg11/JVET-O0050-v4.zip>: JVET-O0050-v2.docx: pp.1-5, JVET-O0050_Spec_CE3-2.1.2.docx: pp.53-54,108-110
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
(57)【特許請求の範囲】
【請求項1】
ビデオ復号のための方法であって、
所定の分割方法に関連する符号化ユニットをビットストリームから受け取るステップを備え、
前記符号化ユニットのモードタイプの条件を決定するステップであって、
前記符号化ユニットが4:4:4又は4:0:0の色差フォーマットで符号化されているとの決定に応じて、前記符号化ユニットの当該モードタイプの条件を第1のモードタイプの条件に設定するステップと、
前記符号化ユニットが4:2:2又は4:2:0の色差フォーマットで符号化され、かつ最小の色差イントラ予測ユニット(SCIPU)であるとの決定に応じて、前記符号化ユニットの輝度ブロック及び前記分割方法が第1の基準を満たす場合に前記符号化ユニットの当該モードタイプの条件を第2のモードタイプの条件に設定し、前記符号化ユニットの前記輝度ブロック及び前記分割方法が第2の基準を満たす場合に前記符号化ユニットの当該モードタイプの条件を第3のモードタイプの条件に設定するステップと
を含む、当該決定するステップを備え、
前記符号化ユニットの当該モードタイプの条件に基づいて前記符号化ユニットを復号するステップであって、
前記符号化ユニットの当該モードタイプの条件が前記第2のモードタイプの条件であるとの決定に応じて、イントラモードを使用して、前記符号化ユニットにおける各符号化ブロックを復号するステップと、
前記符号化ユニットの当該モードタイプの条件が前記第3のモードタイプの条件であるとの決定に応じて、前記符号化ユニットに関連する予測モードを指示するシンタックス要素を前記ビットストリームから受け取るステップと、
前記シンタックス要素が第1の値を有するとの決定に応じて、インターモードを使用して、前記符号化ユニットにおける各符号化ブロックを復号するステップと、
前記シンタックス要素が第2の値を有するとの決定に応じて、前記イントラモードを使用して、前記符号化ユニットにおける各符号化ブロックを復号するステップと
を含む、当該復号するステップを備える、方法。
【請求項2】
請求項1に記載の方法であって、前記符号化ユニットの当該モードタイプの条件が前記第1のモードタイプの条件であるときには、前記符号化ユニットの色差ブロックがさらに分割されることが許容される、方法。
【請求項3】
請求項1に記載の方法であって、前記符号化ユニットの当該モードタイプの条件が前記第2のモードタイプの条件であるときには、前記符号化ユニットの色差ブロックはさらには分割されることが許容されない、方法。
【請求項4】
請求項1に記載の方法であって、前記符号化ユニットの当該モードタイプの条件が前記第3のモードタイプの条件であり、前記予測モードが、現在の符号化ユニットが前記イントラモードにあることを指示するときには、前記符号化ユニットの色差ブロックはさらには分割されることが許容されない、方法。
【請求項5】
請求項1に記載の方法であって、前記符号化ユニットの当該モードタイプの条件が前記第3のモードタイプの条件であり、前記予測モードが、現在の符号化ユニットが前記イントラモードにはないことを指示するときには、前記符号化ユニットの色差ブロックはさらに分割されることが許容される、方法。
【請求項6】
請求項1に記載の方法であって、前記符号化ユニットが色差ブロックを有し、前記分割方法を用いて前記色差ブロックを分割すると、イントラ色差ブロックの最小サイズ制限に違反する子色差ブロックを得ることになる場合には、前記符号化ユニットは前記SCIPUである、方法。
【請求項7】
請求項1に記載の方法であって、前記分割方法を用いて前記符号化ユニットの前記輝度ブロックを分割すると、ブロックサイズが16の子輝度ブロックを得ることになる場合には、前記符号化ユニットの前記輝度ブロック及び前記分割方法は前記第1の基準を満たす、方法。
【請求項8】
請求項1に記載の方法であって、
前記輝度ブロックのサイズが64であり、前記分割方法が4分割である場合、
前記輝度ブロックのサイズが64であり、前記分割方法が水平3分割又は垂直3分割である場合、あるいは
前記輝度ブロックのサイズが32であり、前記分割方法が水平2分割又は垂直2分割である場合には、
前記符号化ユニットの前記輝度ブロック及び前記分割方法は前記第1の基準を満たす、方法。
【請求項9】
請求項1に記載の方法であって、前記符号化ユニットはI-スライスではなく、前記分割方法を用いて前記符号化ユニットの前記輝度ブロックを分割しても、ブロックサイズが16の子輝度ブロックを得ることにならない場合には、前記符号化ユニットの前記輝度ブロック及び前記分割方法は前記第2の基準を満たす、方法。
【請求項10】
請求項1に記載の方法であって、
前記符号化ユニットはI-スライスではなく、
前記輝度ブロックのサイズは64であり、前記分割方法は水平2分割又は垂直2分割である場合、あるいは、前記輝度ブロックのサイズは128であり、前記分割方法は水平3分割又は垂直3分割である場合には、
前記符号化ユニットの前記輝度ブロック及び前記分割方法は前記第2の基準を満たす、方法。
【請求項11】
請求項1に記載の方法であって、前記符号化ユニットが、4:2:2又は4:2:0の色差フォーマットで符号化され、前記SCIPUではないとの決定に応じて、前記符号化ユニットの当該モードタイプの条件を前記第1のモードタイプの条件に設定するステップをさらに含む方法。
【請求項12】
電子装置であって、
1つ以上の処理部と、
前記1つ以上の処理部に接続されたメモリと、
前記メモリに記憶された複数のプログラムとを備え、
前記複数のプログラムが前記1つ以上の処理部によって実行されたとき、前記電子装置に請求項1から11のいずれか一項に記載の方法を実施させる、電子装置。
【請求項13】
1つ以上の処理部を有する電子装置による実行のための複数のプログラムを記憶している非一時的なコンピュータ読み取り可能な記録媒体であって、前記複数のプログラムは、前記1つ以上の処理部によって実行されると、前記電子装置に請求項1から11のいずれか一項に記載の方法を実施させる、非一時的なコンピュータ読み取り可能な記録媒体。
【請求項14】
コンピュータ読み取り可能な記録媒体に記録されたコンピュータプログラムであって、コンピュータにより実行されると、請求項1から11のいずれか1項に記載の方法を実施させる命令を含むコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、一般にビデオデータのコーディング及び圧縮に関するものであり、詳細には、ビデオコーディングにおいて最小の有効なブロックサイズを制限する方法及びシステムに関するものである。
【背景技術】
【0002】
デジタルビデオは、デジタルテレビジョン、ラップトップ型又はデスクトップ型のコンピュータ、タブレット型コンピュータ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤー、ビデオゲームコンソール、スマートフォン、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどの種々の電子デバイスによってサポートされる。そのような電子デバイスは、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4 Part 10 AVC(Advanced Video Coding)、HEVC(高能率映像符号化:High Efficiency Video Coding)、VVC(Versatile Video Coding)規格などで定められたビデオ圧縮伸張規格を実装することにより、デジタルビデオデータの送信、受信、符号化、復号、及び/又は格納を行う。一般にビデオ圧縮は、空間(イントラフレーム)予測及び/又は時間(インターフレーム)予測を実行してビデオデータに固有の冗長を低減するか又は除去することを含む。ブロックベースのビデオコーディングについては、ビデオフレームが1つ以上のスライスへと分割され、各スライスが符号化ツリーユニット(CTU:coding tree unit)とも称され得る複数のビデオブロックを有する。各CTUが1つの符号化ユニット(CU:coding unit)を含有し得、又は所定の最小のCUサイズに達するまで、より小さいCUへと再帰的に分割され得る。各CU(リーフCUとも命名されている)が1つ以上の変換ユニット(TU:transform unit)を含有しており、1つ以上の予測ユニット(PU:prediction unit)も含む。各CUは、イントラモード、インターモード又はIBCモードのいずれかで符号化され得る。ビデオフレームにおけるイントラ符号化(I)スライス内のビデオブロックは、同じビデオフレームの内部の近隣のブロックにおける参照サンプルに対して空間予測を使用して符号化される。ビデオフレームにおけるインター符号化(P又はB)スライス内のビデオブロックは、同じビデオフレーム内の近隣のブロックにおける参照サンプルに対する空間予測を使用したものでもよいし、あるいは以前の他の参照ビデオフレーム及び/又は未来の他の参照ビデオフレームにおける参照サンプルに対する時間予測を使用したものでもよい。
【0003】
たとえば近隣のブロックといった以前に符号化された参照ブロックに基づく空間予測又は時間予測により、符号化される現在のビデオブロックに関する予測ブロックが得られる。参照ブロックを見つけるプロセスは、ブロックマッチングアルゴリズムによって実現され得る。符号化される現在のブロックと予測ブロックとの間の画素差分を表す残差データは、残差ブロック又は予測誤差と称される。インター符号化ブロックは、予測ブロックを形成する、参照フレームにおける参照ブロックを指し示す動きベクトル及び残差ブロックに従って符号化される。動きベクトルを決定するプロセスは一般的には動き予測と称される。イントラ符号化ブロックは、イントラ予測モード及び残差ブロックに従って符号化される。さらなる圧縮のために、残差ブロックは、画素領域から、たとえば周波数領域といった変換領域に変換されて残差変換係数となり、次いで量子化され得る。最初に2次元配列に配置される量子化変換係数は、変換係数の1次元ベクトルを生成するために走査されてよく、次いで、さらにいっそうの圧縮を実現するためにビデオビットストリームへとエントロピー符号化される。
【0004】
次いで、符号化ビデオビットストリームは、デジタルビデオ機能を伴う別の電子デバイスによってアクセスされるコンピュータ読み取り可能な記録媒体(たとえばフラッシュメモリ)に保存されるか、又は有線もしくは無線で電子デバイスに直接伝送される。次いで、電子デバイスは、たとえば符号化ビデオビットストリームを解析してビットストリームからシンタックス要素を取得し、ビットストリームから取得されたシンタックス要素に少なくとも部分的に基づいて、符号化ビデオビットストリームから得たデジタルビデオデータを元のフォーマットに再構成することによってビデオ伸張(前述のビデオ圧縮とは逆の処理)を実行し、再構成されたデジタルビデオデータを電子デバイスのディスプレイに描画する。
【0005】
デジタルビデオの品質がハイビジョン(High Definition)から4K×2K又は8K×4Kに移行するにつれて、符号化/復号対象のビデオデータ量が指数関数的に増大する。復号されるビデオデータの画質を維持しながらビデオデータをいかにより効率的に符号化/復号できるかという点での絶え間ない努力がある。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本出願は、ビデオデータの符号化及び復号に関連した実施形態を説明するものであり、より詳細には、ビデオコーディングにおける最小の有効なブロックサイズを制限するシステム及び方法に関連した実施形態を説明するものである。
【課題を解決するための手段】
【0007】
本出願の第1の態様によれば、ビデオデータを復号する方法は、ビットストリームから、所定の分割方法に関連する符号化ツリーノードを符号化するデータを受け取るステップを備え、符号化ツリーノードのモードタイプを決定するステップであって、符号化ツリーノードが4:4:4又は4:0:0の色差サブサンプリングフォーマットで符号化されるとの決定に応じて、符号化ツリーノードを第1のモードタイプに設定するステップと、符号化ツリーノードが、4:2:2又は4:2:0の色差サブサンプリングフォーマットで符号化され、かつ最小の色差イントラ予測ユニット(SCIPU:smallest chroma intra prediction unit)であるとの決定に応じて、符号化ツリーノードの輝度ブロック及び分割方法が第1の基準を満たす場合に符号化ツリーノードを第2のモードタイプに設定し、符号化ツリーノードの輝度ブロック及び分割方法が第2の基準を満たす場合に符号化ツリーノードを第3のモードタイプに設定するステップとを含む、当該決定するステップを備え、モードタイプに基づいて符号化ツリーユニットを復号するステップであって、符号化ツリーノードが第2のモードであるとの決定に応じて、イントラ予測モードを使用して、符号化ツリーノードにおける各符号化ブロックを復号するステップと、符号化ツリーノードが第1のモード又は第3のモードであるとの決定に応じて、ビットストリームから、符号化ツリーノードに関連する予測モードを指示するシンタックス要素を受け取るステップと、シンタックス要素が第1の値を有するとの決定に応じて、インター予測モードを使用して、符号化ツリーノードにおける各符号化ブロックを復号するステップと、シンタックス要素が第2の値を有するとの決定に応じて、イントラ予測モードを使用して、符号化ツリーノードにおける各符号化ブロックを復号するステップとを含む、当該復号するステップを備える。
【0008】
本出願の第2の態様によれば、電子装置は、1つ以上の処理部、メモリ、及びメモリに記憶された複数のプログラムを含む。このプログラムは、1つ以上の処理部によって実行されると、電子機器に、上記で記述されたようにビデオデータを復号する方法を実施させる。
【0009】
本出願の第3の態様によれば、非一次的なコンピュータ読み取り可能な記録媒体は、1つ以上の処理部を有する電子装置によって実行される複数のプログラムを記憶している。このプログラムは、1つ以上の処理部によって実行されると、電子機器に、上記で記述されたようにビデオデータを復号する方法を実施させる。
【0010】
実施形態のさらなる理解を提供するために含まれる添付図面は、本明細書に組み込まれて本明細書の一部を構成し、記述された実施形態を図示して、記述とともに基本原理を説明するのに役立つものである。類似の参照数字は相当する部分を指す。
【図面の簡単な説明】
【0011】
図1】本開示のいくつかの実施形態による例示的なビデオ符号化復号システムを示すブロック図である。
図2】本開示のいくつかの実施形態による例示的なビデオ符号化器を示すブロック図である。
図3】本開示のいくつかの実施形態による例示的なビデオ復号器を示すブロック図である。
図4A】本開示のいくつかの実施形態によって、フレームが、サイズ及び形状の異なる複数のビデオブロックへと再帰的に分割される様子を示すブロック図である。
図4B】本開示のいくつかの実施形態によって、フレームが、サイズ及び形状の異なる複数のビデオブロックへと再帰的に分割される様子を示すブロック図である。
図4C】本開示のいくつかの実施形態によって、フレームが、サイズ及び形状の異なる複数のビデオブロックへと再帰的に分割される様子を示すブロック図である。
図4D】本開示のいくつかの実施形態によって、フレームが、サイズ及び形状の異なる複数のビデオブロックへと再帰的に分割される様子を示すブロック図である。
図4E】本開示のいくつかの実施形態によって、フレームが、サイズ及び形状の異なる複数のビデオブロックへと再帰的に分割される様子を示すブロック図である。
図5】本開示のいくつかの実施形態による最小の色差イントラ予測ユニット(SCIPU)の例を示すブロック図である。
図6A】本開示のいくつかの実施形態による、VVCにおいてサポートされる色差フォーマットの例を示すブロック図である。
図6B】本開示のいくつかの実施形態による、VVCにおいてサポートされる色差フォーマットの例を示すブロック図である。
図6C】本開示のいくつかの実施形態による、VVCにおいてサポートされる色差フォーマットの例を示すブロック図である。
図7】本開示のいくつかの実施形態による、様々な色差フォーマットにおける最小の色差イントラ予測ユニット(SCIPU)の例を示すブロック図である。
図8】ビデオ復号器が、本開示のいくつかの実施形態によって最小の色差イントラ予測ユニット(SCIPU)を復号する技術を実現する例示的なプロセスを示すフローチャートである。
【発明を実施するための形態】
【0012】
次に具体的な実施形態が詳細に参照され、それらの実施例が添付図面に示されている。以下の詳細な説明では、本明細書で提示される主題の理解を支援するために多くの非限定的かつ具体的な詳細が明らかにされる。しかし、特許請求の範囲から逸脱することなく様々な代替形態が使用され得、これらの具体的な詳細なしで主題が実現され得ることが、当業者には明らかであろう。たとえば、本明細書で提示された主題が、デジタルビデオ機能を伴う多くのタイプの電子デバイスにおいて実現され得ることは、当業者には明らかであろう。
【0013】
図1は、本開示のいくつかの実施形態による、ビデオブロックの符号化と復号を並行して行うための例示的なシステム10を示すブロック図である。図1に示されるように、システム10は、後に送信先(デスティネーション)装置14によって復号されるビデオデータを生成して符号化する情報源(ソース)装置12を含む。情報源装置12及び送信先装置14は、デスクトップコンピュータ又はラップトップコンピュータ、タブレット型コンピュータ、スマートフォン、セットトップボックス、デジタルテレビ、カメラ、表示装置、デジタルメディアプレーヤー、ビデオゲームコンソール、ビデオストリーミングデバイス等を含む種々の電子デバイスのうち任意のものを備え得る。いくつかの実施形態では、情報源装置12及び送信先装置14は無線通信機能を備えている。
【0014】
いくつかの実施形態では、送信先装置14は、リンク16を通じて、復号される符号化ビデオデータを受け取ってよい。リンク16は、情報源装置12から送信先装置14に、符号化ビデオデータを転送することができる任意のタイプの通信媒体又は通信デバイスを備え得る。一例では、リンク16は、情報源装置12が送信先装置14に、符号化ビデオデータをリアルタイムで直接伝送することを可能にするための通信媒体を備え得る。符号化ビデオデータは、無線通信プロトコルなどの通信規格に従って変調されて送信先装置14に伝送され得る。通信媒体は、無線周波数(RF)スペクトルあるいは1つ以上の物理的伝送路などの任意の無線又は有線の通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、広域ネットワーク、又はインターネットなどのグローバネットワークなどのパケットベースのネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、又は情報源装置12から送信先装置14への通信を容易にするのに役立つその他の機器を含み得る。
【0015】
いくつかの他の実施形態では、符号化ビデオデータは、出力インタフェース22から記録装置32に伝送され得る。続いて、記録装置32における符号化ビデオデータは、送信先装置14によって入力インタフェース28を介してアクセスされ得る。記録装置32は、ハードディスク(hard drive)、ブルーレイディスク、DVD、CD-ROM、フラッシュメモリ、揮発性もしくは不揮発性のメモリ、又は符号化ビデオデータを記憶するのに適する他のデジタル記録媒体など、種々の、分散された又は局所的にアクセスされるデータ記録媒体のうち任意のものを含み得る。さらなる例では、記録装置32は、情報源装置12によって生成された、符号化ビデオデータを保持し得る、ファイルサーバ又は別の中間記録装置に相当してよい。送信先装置14は、記録装置32からストリーミング又はダウンロードすることによって、記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶したり、符号化ビデオデータを送信先装置14に伝送したりすることができる任意のタイプのコンピュータでよい。例示的なファイルサーバは、(たとえばウェブサイト用の)ウェブサーバ、FTPサーバ、ネットワーク接続ストレージ(NAS:network attached storage)装置、又はローカルディスクドライブを含む。送信先装置14は、ファイルサーバに記憶されている符号化ビデオデータにアクセスするのに適する無線チャンネル(たとえばWi-Fi接続)、有線接続(たとえば、DSLやケーブルモデムなど)、又は両方の組合せを含む任意の標準的なデータ接続を通じて、符号化ビデオデータにアクセスし得る。記録装置32からの符号化ビデオデータの伝送は、ストリーミング伝送、ダウンロード伝送、又は両方の組合せでよい。
【0016】
図1に示されるように、情報源装置12は、ビデオ源18、ビデオ符号化器20及び出力インタフェース22を含む。ビデオ源18は、たとえばビデオカメラ、以前に取り込まれたビデオを含むビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受け取るためのビデオ供給インタフェース、及び/又はソースビデオとしてのコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステム、あるいはそのようなソースの組合せといった、ビデオキャプチャーデバイスなどのソースを含み得る。一例として、ビデオ源18がセキュリティ監視システムのビデオカメラである場合には、情報源装置12及び送信先装置14がカメラフォン又はビデオフォンを形成し得る。しかしながら、本出願に記述された実施形態は、一般にビデオコーディングに適用可能であり得、無線及び/又は有線の用途に適用され得る。
【0017】
取り込まれた、前もって取り込まれた、又はコンピュータで生成されたビデオは、ビデオ符号化器20によって符号化され得る。符号化ビデオデータは、情報源装置12の出力インタフェース22を通って送信先装置14に直接伝送され得る。符号化ビデオデータは、復号及び/又は再生のために、送信先装置14又は他のデバイスによる後のアクセス用に、記録装置32にも(又は代わりに)記憶されてよい。出力インタフェース22はモデム及び/又は送信器をさらに含み得る。
【0018】
送信先装置14は、入力インタフェース28、ビデオ復号器30、及び表示装置34を含む。入力インタフェース28は受信器及び/又はモデムを含み得、リンク16を通じて、符号化ビデオデータを受け取る。リンク16を通じて通信されるか又は記録装置32で供給される符号化ビデオデータは、ビデオ復号器30によってビデオデータを復号する際に使用される、ビデオ符号化器20によって生成された種々のシンタックス要素を含み得る。そのようなシンタックス要素が含まれ得る符号化ビデオデータは、通信媒体で伝送され、記録媒体又はファイルサーバに記憶される。
【0019】
いくつかの実施形態では、送信先装置14が含み得る表示装置34は、統合表示装置と、送信先装置14と通信するように構成された外部表示装置とであり得る。表示装置34は、復号ビデオデータをユーザーに表示し、液晶ディスプレイ(LCD:liquid crystal display)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、又は別タイプの表示装置などの種々の表示装置のうち任意のものを備え得る。
【0020】
ビデオ符号化器20及びビデオ復号器30は、VVC,HEVC,MPEG-4 Part 10 AVC(Advanced Video Coding),又はこれらの規格の拡張版など、知的所有物又は業界規格に基づいて動作し得る。本出願は特定のビデオ符号化/復号の規格に限定されず、他のビデオ符号化/復号の規格に適用可能であり得ることを理解されたい。一般に、情報源装置12のビデオ符号化器20は、これらの現在の規格又は将来の規格のいずれかに従ってビデオデータを符号化するように構成され得ることが企図されている。同様に、送信先装置14のビデオ復号器30は、これらの現在の規格又は将来の規格のいずれかに従ってビデオデータを復号するように構成され得ることも一般に企図されている。
【0021】
ビデオ符号化器20及びビデオ復号器30は、それぞれ、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(DSP:digital signal processor)、特定用途向け集積回路(ASIC:application specific integrated circuit)、フィールドプログラマブルゲートアレイ(FPGA:field programmable gate array)、ディスクリートロジック(個別論理回路:discrete logic)、ソフトウェア、ハードウェア、ファームウェア又はこれらの任意の組合せなどの種々の適切な符号化回路構成のうち任意のものとして実現され得る。電子デバイスは、部分的にソフトウェアで実現されるときには、ソフトウェアに関する命令を適切な非一時的コンピュータ可読媒体に記憶し、1つ以上のプロセッサを使用してハードウェアで命令を実行して、本開示で開示されたビデオ符号化/復号の処理を実行し得る。ビデオ符号化器20及びビデオ復号器30の各々が1つ以上の符号化器又は復号器に含まれ得、そのいずれかが、それぞれのデバイスにおいて組み合わされた符号化器/復号器(CODEC)の一部として一体化され得る。
【0022】
図2は、本出願に記述されたいくつかの実施形態による例示的なビデオ符号化器20を示すブロック図である。ビデオ符号化器20は、ビデオフレームの内部のビデオブロックのイントラ予測符号化及びインター予測符号化を実行し得る。イントラ予測符号化は、所与のビデオフレーム又はピクチャの内部のビデオデータにおける空間冗長性を低減するか又は除去するために空間予測に頼る。インター予測符号化は、ビデオシーケンスの隣接したビデオフレーム又はピクチャの内部のビデオデータにおける時間冗長性を低減するか又は除去するために時間予測に頼る。
【0023】
図2に示されるように、ビデオ符号化器20は、ビデオデータメモリ40、予測処理部41、復号ピクチャバッファ(DPB:decoded picture buffer)64、加算器50、変換処理部52、量子化部54、及びエントロピー符号化部56を含む。予測処理部41は、動き推定部42、動き補償部44、分割部45、イントラ予測処理部46、及びイントラブロックコピー(BC)部48をさらに含む。いくつかの実施形態では、ビデオ符号化器20は、ビデオブロックを再構成するための逆量子化部58、逆変換処理部60、及び加算器62も含む。再構成されたビデオから、ブロック境界をフィルタリングしてブロック歪を除去するために、加算器62とDPB64との間にデブロッキングフィルタ(図示せず)が配置されてよい。デブロッキングフィルタに加えて、加算器62の出力をフィルタリングするためにループ内フィルタ(図示せず)も使用され得る。ビデオ符号化器20は、変更不能な又はプログラマブルなハードウェアユニットという形態を取ってよく、あるいは、1つ以上の変更不能な又はプログラマブルなハードウェアユニットのうちに分割されてもよい。
【0024】
ビデオデータメモリ40は、ビデオ符号化器20の構成要素によって符号化されるビデオデータを記憶し得る。ビデオデータメモリ40のビデオデータは、たとえばビデオ源18から取得され得る。DPB64は、ビデオ符号化器20によって(たとえばイントラ予測符号化モード又はインター予測符号化モードで)ビデオデータを符号化するのに用いる参照ビデオデータを記録するバッファである。ビデオデータメモリ40及びDPB64は、様々な記録装置のうち任意のものによっても形成され得る。様々な例において、ビデオデータメモリ40は、ビデオ符号化器20の他の構成要素とともにオンチップでよく、又はそれらの構成要素に対してオフチップでもよい。
【0025】
図2に示されるように、予測処理部41の内部の分割部45は、受け取ったビデオデータをビデオブロックへと分割する。この分割は、ビデオデータに関連づけられた四分木構造などの所定の分割構造に従って、ビデオフレームを、スライス、タイル、又は他のより大きい符号化ユニット(CU)へと分割することを含み得る。ビデオフレームは複数のビデオブロック(又は、タイルと称されるビデオブロックのセット)に分割され得る。予測処理部41は、誤り結果(たとえば符号化レートや歪みのレベル)に基づいて現在のビデオブロック用に、複数のイントラ予測符号化モードのうちの1つ、又は複数のインター予測符号化モードのうちの1つなど、複数の可能な予測符号化モードのうちの1つを選択してよい。予測処理部41は、結果として生じるイントラ予測符号化ブロック又はインター予測符号化ブロックを、加算器50に供給して残差ブロックを生成してよく、また、この符号化ブロックを加算器62に供給して、後に参照フレームの一部として使用するために再構成してよい。予測処理部41は、また、エントロピー符号化部56に、動きベクトル、イントラモードインジケータ、分割情報、及び他のそのようなシンタックス情報などのシンタックス要素を供給する。
【0026】
現在のビデオブロック用に適切なイントラ予測符号化モードを選択するために、予測処理部41の内部のイントラ予測処理部46は、符号化される現在のブロックと同じフレームにおける1つ以上の近隣のブロックに関する現在のビデオブロックのイントラ予測符号化を実行して、空間予測をもたらし得る。予測処理部41の内部の動き推定部42及び動き補償部44は、1つ以上の参照フレームにおける1つ以上の予測ブロックに関連して現在のビデオブロックのインター予測符号化を実行して時間予測をもたらす。ビデオ符号化器20は、たとえばビデオデータの各ブロック用に適切な符号化モードを選択するために、複数の符号化パスを実行してよい。
【0027】
いくつかの実施形態では、動き推定部42は、一連のビデオフレームの内部の所定のパターンに従って、参照ビデオフレームの内部の予測ブロックに対する現在のビデオフレームの内部のビデオブロックの予測ユニット(PU)の変位を示す動きベクトルを生成することにより、現在のビデオフレームに関するインター予測モードを決定する。動き推定部42によって実行される動き予測は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、現在のフレーム内(又は他の符号化ユニット内)の符号化される現在のブロックに関連して、参照フレーム内(又は他の符号化ユニット)内の予測ブロックに対する現在のビデオフレーム又はピクチャの内部のビデオブロックのPUの変位を示し得る。所定のパターンは、ビデオフレームを、シーケンスにおけるPフレーム又はBフレームとして指定し得る。イントラBC部48は、インター予測用の動き推定部42による動きベクトルの決定と同様のやり方で、イントラBC符号化用の、たとえばブロックベクトルといったベクトルを決定してよく、又は動き推定部42を利用してブロックベクトルを決定してもよい。
【0028】
予測ブロックは、画素差分の観点から、符号化対象となるビデオブロックのPUと密接に対応するものとみなされる参照フレームのブロックであり、差分絶対値和(SAD:sum of absolute difference)、差分二乗和(SSD:sum of square difference)、又は他の差分基準量によって決定され得る。いくつかの実施形態では、ビデオ符号化器20は、DPB64に記憶された参照フレームのサブ整数型画素位置の値を計算してよい。たとえば、ビデオ符号化器20は、参照フレームの1/4画素位置、1/8画素位置、又は他の分数画素位置の値を補間してよい。したがって、動き推定部42は、全体の画素位置及び分数画素位置に関する動き探索を実行して、分数画素精度を有する動きベクトルを出力し得る。
【0029】
動き推定部42は、インター予測符号化フレームのビデオブロックのPUに関して、第1の参照フレームリスト(リスト0)又は第2の参照フレームリスト(リスト1)から選択された参照フレームの予測ブロックの位置と当該PUの位置とを比較することにより動きベクトルを計算する。ここで、第1の参照フレームリスト又は第2の参照フレームリストはそれぞれDPB64に格納されている1つ以上の参照フレームを特定するものである。動き推定部42は、計算された動きベクトルを動き補償部44に送り、次いでエントロピー符号化部56に送る。
【0030】
動き補償部44によって実行される動き補償は、動き推定部42によって決定された動きベクトルに基づいて予測ブロックを取り込むこと又は生成することを包含し得る。動き補償部44は、現在のビデオブロックのPUに関する動きベクトルを受け取ると、動きベクトルが参照フレームリストのうちの1つにおいて指し示す予測ブロックを捜し出し、DPB64から予測ブロックを取り出して、予測ブロックを加算器50に転送する。次いで、加算器50は、符号化される現在のビデオブロックの画素値から動き補償部44によって得られた予測ブロックの画素値を差し引くことにより、画素差分値の残差ビデオブロックを形成する。残差ビデオブロックを形成する画素差分値は、輝度(luma)差分成分もしくは色差(chroma)差分成分、又はこれらの両方を含み得る。動き補償部44は、ビデオ復号器30によって、ビデオフレームのビデオブロックを復号する際に使用されるビデオフレームのビデオブロックに関連したシンタックス要素も生成し得る。シンタックス要素は、たとえば、予測ブロックを特定するために使用される動きベクトルを定義するシンタックス要素、予測モードを指示する任意のフラグ、又は本明細書に記述されたその他のシンタックス情報を含み得る。なお、動き推定部42と動き補償部44はほとんど一体化され得るが、概念的な目的のために個別に示されている。
【0031】
いくつかの実施形態では、イントラBC部48は、動き推定部42及び動き補償部44に関して上記に記述されたのと同様のやり方でベクトルを生成して予測ブロックを取り込み得るが、予測ブロックは符号化される現在のブロックと同じフレームにあり、ベクトルは動きベクトルと対照的にブロックベクトルと称される。詳細には、イントラBC部48は、現在のブロックを符号化するためにイントラ予測モードを使用するように決定してよい。いくつかの例において、イントラBC部48は、たとえば個別の符号化パス中に、様々なイントラ予測モードを使用して現在のブロックを符号化し、レート-歪み解析によってそれらイントラ予測モードの性能を分析してよい。次に、イントラBC部48は、試験された様々なイントラ予測モードの中で、イントラモードインジケータを生成するのに使用する適切なイントラ予測モードを選択してよい。たとえば、イントラBC部48は、レート-歪み解析を使用して、試験された様々なイントラ予測モードに関するレート-歪み値を計算し、試験されたモードの中で最善のレート-歪み特性を有するイントラ予測モードを、使用するのに適切なイントラ予測モードとして選択してよい。レート-歪み解析は、一般に、符号化ブロックと、当該符号化ブロックを生成するために符号化される符号化前の元のブロックとの間の歪み(又は誤差)量とともに、これら符号化ブロックを生成するために使用されたビットレート(すなわち、多数のビット)を決定する。イントラBC部48は、様々な符号化ブロックについて歪みとレートとの比率を計算して、そのブロックに関する最善のレート-歪み値を示すイントラ予測モードを決定してよい。
【0032】
他の例では、イントラBC部48は、本明細書に記述された実施形態に従ってイントラBC予測のためのそのような機能を実行するために、動き推定部42及び動き補償部44を全体的又は部分的に使用してよい。どちらの場合にも、イントラブロックコピーについては、予測ブロックは、画素差分の観点から、符号化対象となるブロックと密接に対応するものとみなされるブロックでよく、差分絶対値和(SAD)、差分二乗和(SSD)、又は他の差分基準量によって決定され得る。予測ブロックの特定には、サブ整数型画素位置の値の計算が含まれ得る。
【0033】
予測ブロックがイントラ予測による同じフレームからのものであろうとインター予測による異なるフレームからのものであろうと、ビデオ符号化器20は、符号化される現在のビデオブロックの画素値から予測ブロックの画素値を差し引くことによって残差ビデオブロックを形成してよく、画素差分値を形成する。残差ビデオブロックを形成する画素差分値は、輝度差分成分と色差差分成分の両方を含み得る。
【0034】
イントラ予測処理部46は、前述のように、動き推定部42及び動き補償部44によって実行されるインター予測、又はイントラBC部48によって実行されるイントラブロックコピー予測の代替として、現在のビデオブロックをイントラ予測してよい。詳細には、イントラ予測処理部46は、現在のブロックを符号化するためにイントラ予測モードを使用するように決定してよい。そうするために、イントラ予測処理部46は、たとえば個別の符号化パス中に様々なイントラ予測モードを使用して現在のブロックを符号化してよく、イントラ予測処理部46(又はいくつかの例ではモード選択部)は、試験されたイントラ予測モードから、使用するべき適切なイントラ予測モードを選択してよい。イントラ予測処理部46は、そのブロック向けに選択されたイントラ予測モードを表す情報をエントロピー符号化部56に供給してよい。エントロピー符号化部56は、ビットストリームにおける選択されたイントラ予測モードを指示する情報を符号化してよい。
【0035】
予測処理部41がインター予測又はイントラ予測のいずれかによって現在のビデオブロック用の予測ブロックを決定した後に、加算器50が、現在のビデオブロックから予測ブロックを差し引くことによって残差ビデオブロックを生成する。残差ブロックにおける残差ビデオデータは1つ以上の変換ユニット(TU)に含まれ得、変換処理部52に供給される。変換処理部52は、離散コサイン変換(DCT:discrete cosine transform)又は概念的に同様の変換などの変換を使用して残差ビデオデータを残差変換係数に変換する。
【0036】
変換処理部52は、結果として生じる変換係数を量子化部54に送ってよい。量子化部54は、変換係数を量子化してビットレートをさらに低下させる。量子化プロセスは、係数のうちのいくつか又はすべてに関連したビット深さも縮小し得る。量子化の程度は、量子化パラメータを調節することによって変更され得る。いくつかの例において、量子化部54は、次いで、量子化変換係数を含むマトリクスの走査を実行し得る。あるいはエントロピー符号化部56が走査を実行してもよい。
【0037】
量子化に続いて、エントロピー符号化部56は、たとえば、コンテキスト適応型可変長符号化(CAVLC:context adaptive variable length coding)、コンテキスト適応型2値算術符号化(CABAC:context adaptive binary arithmetic coding)、シンタックスベースコンテキスト適応型2値算術符号化(SBAC:syntax-based context-adaptive binary arithmetic coding)、確率区間区分エントロピー符号化(PIPE:probability interval partitioning entropy coding)、又は別のエントロピー符号化の技法もしくは技術を使用して、量子化変換係数をビデオビットストリームへとエントロピー符号化する。次いで、符号化ビットストリームは、ビデオ復号器30に伝送されるか、又は後にビデオ復号器30へ伝送するため、もしくはビデオ復号器30によって後に取り戻すために記録装置32に記録され得る。エントロピー符号化部56は、符号化される現在のビデオフレームに関する動きベクトル及び他のシンタックス要素もエントロピー符号化してよい。
【0038】
他のビデオブロックを予測するための参照ブロックを生成するために、画素領域における残差ビデオブロックを再構成するのに、逆量子化部58が逆量子化を適用し、逆変換処理部60が逆変換を適用する。前述のように、動き補償部44は、DPB64に記憶されたフレームの1つ以上の参照ブロックから、動き補償された予測ブロックを生成し得る。動き補償部44はまた、予測ブロックに1つ以上の補間フィルタを適用して、動き予測に用いるサブ整数画素値を計算してよい。
【0039】
加算器62は、再構成された残差ブロックを、動き補償部44によって生成された動き補償された予測ブロックに加えて、DPB64に記憶するための参照ブロックを生成する。次いで、参照ブロックは、イントラBC部48、動き推定部42及び動き補償部44によって、後続のビデオフレームにおける別のビデオブロックをインター予測するための予測ブロックとして使用され得る。
【0040】
図3は、本出願のいくつかの実施形態による例示的なビデオ復号器30を示すブロック図である。ビデオ復号器30は、ビデオデータメモリ79、エントロピー復号部80、予測処理部81、逆量子化部86、逆変換処理部88、加算器90、及びDPB92を含む。予測処理部81は、動き補償部82、イントラ予測処理部84、及びイントラBC部85をさらに含む。ビデオ復号器30は、図2に関連してビデオ符号化器20に関して記述された符号化プロセスとは全体的に逆の復号プロセスを実行し得る。たとえば、動き補償部82は、エントロピー復号部80から受け取られた動きベクトルに基づいて予測データを生成し得、一方、イントラ予測処理部84は、エントロピー復号部80から受け取られたイントラ予測モードインジケータに基づいて予測データを生成し得る。
【0041】
いくつかの例において、ビデオ復号器30のユニットには、本出願の実施形態を実行するようにタスクが課されることがある。また、いくつかの例では、本開示の実施形態は、ビデオ復号器30の1つ以上のユニットの間で分割されてもよい。たとえば、イントラBC部85は、本出願の実施形態を、単独で、又はビデオ復号器30の動き補償部82、イントラ予測処理部84、及びエントロピー復号部80などの他のユニットと組み合わせて実行し得る。いくつかの例では、ビデオ復号器30はイントラBC部85を含まなくてよく、イントラBC部85の機能性は、動き補償部82など、予測処理部81の他の構成要素によって実行され得る。
【0042】
ビデオデータメモリ79は、ビデオ復号器30の他の構成要素によって復号される符号化ビデオビットストリームなどのビデオデータを記憶し得る。ビデオデータメモリ79に記憶されたビデオデータは、記録装置32から、たとえばカメラなどのローカルなビデオ源から、ビデオデータの有線もしくは無線のネットワーク通信によって、又はたとえばフラッシュドライブもしくはハードディスクといった物理的データ記録媒体にアクセスすることによって取得され得る。ビデオデータメモリ79は、符号化ビデオビットストリームからの符号化ビデオデータを記憶する、符号化ピクチャバッファ(CPB:coded picture buffer)を含み得る。ビデオ復号器30の、復号ピクチャバッファ(DPB)92は、ビデオ復号器30によって(たとえばイントラ予測符号化モード又はインター予測符号化モードで)ビデオデータを符号化するのに用いる参照ビデオデータを記憶する。ビデオデータメモリ79及びDPB92は、シンクロナスDRAM(SDRAM:Synchronous Dynamic Random Access Memory)、磁気抵抗型RAM(MRAM:Magneto-resistive RAM)、抵抗変化型RAM(RRAM)、又は他のタイプのメモリデバイスを含む動的ランダムアクセスメモリ(DRAM:Resistive RAM)などの種々のメモリデバイスのうち任意のものによって形成され得る。例示のために、ビデオデータメモリ79及びDPB92は、図3におけるビデオ復号器30の2つの別個の構成要素として表されている。しかし、ビデオデータメモリ79及びDPB92は、同一のメモリデバイス又は個別のメモリデバイスによって与えられ得ることが当業者には明らかであろう。いくつかの例では、ビデオデータメモリ79は、ビデオ復号器30の他の構成要素とともにオンチップでよく、又はそれらの構成要素に対してオフチップでもよい。
【0043】
復号プロセス中に、ビデオ復号器30は、符号化ビデオフレーム及び関連するシンタックス要素のビデオブロックを表す符号化ビデオビットストリームを受け取る。ビデオ復号器30はビデオフレームレベル及び/又はビデオブロックレベルのシンタックス要素を受け取ってよい。ビデオ復号器30のエントロピー復号部80は、ビットストリームをエントロピー復号して、量子化係数、動きベクトル又はイントラ予測モードインジケータ、及び他のシンタックス要素を生成する。次いで、エントロピー復号部80は、動きベクトル及び他のシンタックス要素を予測処理部81に転送する。
【0044】
ビデオフレームが、イントラ予測符号化(I)フレームとして、又は他のタイプのフレームにおけるイントラ符号化予測ブロック向けに符号化されるとき、予測処理部81のイントラ予測処理部84は、信号伝達されたイントラ予測モード及び現在のフレームの以前に復号されたブロックからの参照データに基づいて、現在のビデオフレームのビデオブロックに関する予測データを生成し得る。
【0045】
ビデオフレームがインター予測符号化(すなわちB又はP)フレームとして符号化されるとき、予測処理部81の動き補償部82は、エントロピー復号部80から受け取られた動きベクトル及び他のシンタックス要素に基づいて現在のビデオフレームのビデオブロックに関する1つ以上の予測ブロックを生成する。予測ブロックの各々が、参照フレームリストのうちの1つの内部の参照フレームから生成され得る。ビデオ復号器30は、DPB92に記憶された参照フレームに基づくデフォルトの構成技術を使用して、参照フレームリスト、リスト0及びリスト1を構成し得る。
【0046】
いくつかの例では、本明細書に記述されたイントラBCモードに従ってビデオブロックが符号化されるとき、予測処理部81のイントラBC部85は、エントロピー復号部80から受け取られたブロックベクトル及び他のシンタックス要素に基づいて現在のビデオブロックに関する予測ブロックを生成する。予測ブロックは、ビデオ符号化器20によって定義された現在のビデオブロックと同一のピクチャの再構成された領域の内部にあり得る。
【0047】
動き補償部82及び/又はイントラBC部85は、動きベクトル及び他のシンタックス要素を解析することによって現在のビデオフレームのビデオブロックに関する予測情報を決定し、次いで、予測情報を使用して、復号される現在のビデオブロックに関する予測ブロックを生成する。たとえば、動き補償部82は、受け取られたシンタックス要素のうちのいくつかを使用して、ビデオフレームのビデオブロックを符号化するのに使用される予測モード(たとえばイントラ予測又はインター予測)、インター予測フレームタイプ(たとえばB又はP)、フレームに関する参照フレームリストのうちの1つ以上の構成情報、フレームにおける各インター予測符号化ビデオブロックの動きベクトル、フレームの各インター予測符号化ビデオブロックのインター予測状態、及び現在のビデオフレームにおけるビデオブロックを復号するための他の情報を決定する。
【0048】
同様に、イントラBC部85は、たとえばフラグといった受け取られたシンタックス要素のうちのいくつかを使用して、現在のビデオブロックはイントラBCモードを使用して予測されたものであること、再構成された領域の内部にあってDPB92に記憶されるべきフレームのビデオブロックの構成情報、フレームの各イントラBC予測ビデオブロックのブロックベクトル、フレームの各イントラBC予測ビデオブロックのイントラBC予測状態、及び現在のビデオフレームにおけるビデオブロックを復号するための他の情報を決定し得る。
【0049】
動き補償部82はまた、ビデオ符号化器20によってビデオブロックの符号化中に参照ブロックのサブ整数画素の補間値を計算するために使用されたような補間フィルタを使用して、補間を実行し得る。この場合、動き補償部82は、受け取られたシンタックス要素から、ビデオ符号化器20によって使用された補間フィルタを決定し、補間フィルタを使用して予測ブロックを生成し得る。
【0050】
逆量子化部86は、ビットストリームの中に与えられてエントロピー復号部80によってエントロピー復号された量子化変換係数を、ビデオ符号化器20によってビデオフレームにおける各ビデオブロックについて量子化の程度を決定するために計算されたものと同一の量子化パラメータを使用して逆量子化する。逆変換処理部88は、画素領域における残差ブロックを再構成するために、変換係数に対して、たとえば逆DCT、逆整数変換、又は概念的に類似の逆変換プロセスといった逆変換を適用する。
【0051】
動き補償部82又はイントラBC部85がベクトル及び他のシンタックス要素に基づいて現在のビデオブロックに関する予測ブロックを生成した後に、加算器90は、逆変換処理部88からの残差ブロックと、動き補償部82及びイントラBC部85によって生成された対応する予測ブロックとを合計することによって、現在のビデオブロックに関する復号ビデオブロックを再構成する。復号ビデオブロックをさらに処理するために、加算器90とDPB92との間にインループフィルタ(図示せず)が配置されてよい。次いで、所与のフレームにおける復号ビデオブロックは、次のビデオブロックの後続の動き補償に使用される参照フレームを記憶するDPB92に記憶される。DPB92又はDPB92とは別個のメモリデバイスも、復号されたビデオを、後に図1の表示装置34などの表示装置に提示するために記憶し得る。
【0052】
一般的なビデオ符号化プロセスでは、ビデオシーケンスは、一般的にはフレーム又はピクチャの順序づけられたセットを含む。各フレームが、SL、SCb、及びSCrと表示される3つのサンプル配列を含み得る。SLは、輝度(luma)サンプルからなる2次元配列である。SCbは、Cb色差サンプルからなる2次元配列である。SCrは、Cr色差サンプルからなる2次元配列である。他の事例では、フレームは白黒でよく、したがって輝度サンプルの2次元配列を1つだけ含む。
【0053】
図4Aに示されるように、ビデオ符号化器20(より具体的には分割部45)は、最初にフレームを符号化ツリーユニット(CTU)の集合に分割することによってフレームの符号化表現を生成する。ビデオフレームは、左から右及び上から下へのラスタスキャン順で連続的に順序づけられた整数個のCTUを含み得る。各CTETは最大の論理符号化ユニットであり、CTUの幅及び高さは、シーケンスパラメータセットにおけるビデオ符号化器20によって、ビデオシーケンスにおけるすべてのCTUが128×128、64×64、32×32、及び16×16のうちの1つである同一のサイズを有するように信号伝達される。しかし、本出願は必ずしも特定のサイズに制限されるものではないことに留意されたい。図4Bに示されるように、各CTUは、輝度(luma)サンプルからなる1つの符号化ツリーブロック(CTB)と、対応する2つの色差(chroma)サンプルからなる符号化ツリーブロックと、符号化ツリーブロックのサンプルを符号化するのに使用されるシンタックス要素とを含み得る。シンタックス要素は、画素の符号化ブロックの種々のタイプのユニットの特性と、インター予測又はイントラ予測、イントラ予測モード、動きベクトル、及び他のパラメータを含めて、ビデオ復号器30にいてビデオシーケンスが再構成され得る様子とを記述するものである。白黒ピクチャ又は3つの個別のカラープレーンを有するピクチャでは、CTUは、単一の符号化ツリーブロックと、符号化ツリーブロックのサンプルを符号化するのに使用されるシンタックス要素とを含み得る。符号化ツリーブロックは、サンプルのN×Nのブロックでよい。
【0054】
より優れた性能を達成するために、ビデオ符号化器20は、CTUの符号化ツリーブロックに対して、二分木(binary-tree)分割、三分木(ternary-tree)分割、四分木(quad-tree)分割、又はこれらの組合せなどの木分割を再帰的に実行して、CTUをより小さい符号化ユニット(CU)に分割し得る。図4Cに表されるように、64×64のCTU400が、最初に、それぞれが32×32のブロックサイズを有する4つのより小さいCUに分割される。4つのより小さいCUの中で、CU410及びCU420が、それぞれ16×16のブロックサイズで4つのCUに分割される。2つの16×16のCUである430及び440が、それぞれ8×8のブロックサイズで4つのCUにさらに分割される。図4Dは、図4Cに表されたようなCTU400の分割プロセスの最終結果を示す四分木データ構造を表すものであり、四分木の各リーフノードが32×32~8×8の範囲のそれぞれのサイズの1つのCUに対応する。各CUは、図4Bに表されたCTUに類似して、輝度サンプルの符号化ブロック(CB)と、同じサイズのフレームの色差サンプルの2つの対応する符号化ブロックと、符号化ブロックのサンプルを符号化するのに使用されるシンタックス要素とを含み得る。白黒ピクチャ又は3つの個別のカラープレーンを有するピクチャでは、CUは、単一の符号化ブロックと、符号化ブロックのサンプルを符号化するのに使用されるシンタックス構造とを含み得る。図4C及び図4Dに表された四分木分割は単なる説明のためのものであり、1つのCTUが、様々な局所的特性に適合するように、四分木分割/三分木分割/二分木分割に基づいてCUに分割され得ることに留意されたい。複合の木構造では、1つのCTUが四分木構造によって分割され、各四分木の葉CUが二分木構造及び三分木構造によってさらに分割され得る。図4Eに示されるように、4分割、水平2分割、垂直2分割、水平3分割、垂直3分割といった5つの分割タイプがある。
【0055】
いくつかの実施形態では、ビデオ符号化器20は、CUの符号化ブロックを1つ以上のM×Nの予測ブロック(PB)へとさらに分割し得る。予測ブロックは、同一の(インター又はイントラ)予測が適用されるサンプルの矩形状(正方形又は非正方形)のブロックである。CUの予測ユニット(PU)は、輝度サンプルの予測ブロックと、色差サンプルの2つの対応する予測ブロックと、予測ブロックを予測するのに使用されるシンタックス要素とを含み得る。白黒ピクチャ又は3つの個別のカラープレーンを有するピクチャでは、PUは、単一の予測ブロックと、予測ブロックを予測するのに使用されるシンタックス構造とを含み得る。ビデオ符号化器20は、予測輝度、Cb、及び輝度に関するCrブロック、Cb、及びCUの各PUのCr予測ブロックを生成し得る。
【0056】
ビデオ符号化器20は、PUに関する予測ブロックを生成するためにイントラ予測又はインター予測を使用してよい。ビデオ符号化器20がイントラ予測を使用してPUの予測ブロックを生成する場合には、ビデオ符号化器20はPUに関連したフレームの復号サンプルに基づいてPUの予測ブロックを生成し得る。ビデオ符号化器20がインター予測を使用してPUの予測ブロックを生成する場合には、ビデオ符号化器20はPUに関連したフレーム以外の1つ以上のフレームの復号サンプルに基づいてPUの予測ブロックを生成し得る。
【0057】
ビデオ符号化器20は、CUにおける1つ以上のPUに関する予測輝度ブロック、予測Cbブロック及び予測Crブロックを生成した後に、CUの輝度残差ブロックにおける各サンプルがCUの予測輝度ブロックのうちの1つにおける輝度サンプルとCUの元の輝度符号化ブロックにおける対応するサンプルとの間の差分を示すように、CUの元の輝度符号化ブロックからCUの予測輝度ブロックを差し引くことによって、CUに関する輝度残差ブロックを生成し得る。同様に、ビデオ符号化器20は、CUのCb残差ブロックにおける各サンプルが、CUの予測Cbブロックのうちの1つにおけるCbサンプルとCUの元のCb符号化ブロックにおける対応するサンプルとの間の差分を示すように、CUのCb残差ブロック及びCr残差ブロックをそれぞれ生成してよく、CUのCr残差ブロックにおける各サンプルが、CUの予測Crブロックのうちの1つにおけるCrサンプルとCUの元のCr符号化ブロックにおける対応するサンプルとの間の差分を示し得る。
【0058】
その上、図4Cに示されるように、ビデオ符号化器20は、四分木分割を使用して、CUの輝度、Cb及びCrの残差ブロックを、1つ以上の輝度、Cb及びCrの変換ブロックへと分解する。変換ブロックは、同一の変換が適用されるサンプルの矩形(正方形又は非正方形)のブロックである。CUの変換ユニット(TU)は、輝度サンプルの変換ブロックと、色差サンプルの2つの対応する変換ブロックと、変換ブロックサンプルを予測するのに使用されるシンタックス要素とを含み得る。したがって、CUの各TUは、輝度変換ブロック、Cb変換ブロック、及びCr変換ブロックに関連づけられ得る。いくつかの例では、TUに関連した輝度変換ブロックはCUの輝度残差ブロックのサブブロックであり得る。Cb変換ブロックは、CUのCb残差ブロックのサブブロックであり得る。Cr変換ブロックは、CUのCr残差ブロックのサブブロックであり得る。白黒ピクチャ又は3つの個別のカラープレーンを有するピクチャでは、TUは、単一の変換ブロックと、変換ブロックのサンプルを変換するのに使用されるシンタックス構造とを含み得る。
【0059】
ビデオ符号化器20は、TUの輝度変換ブロックに1つ以上の変換を適用してTU用の輝度係数ブロックを生成し得る。係数ブロックは変換係数の2次元配列であり得る。変換係数はスカラー量であり得る。ビデオ符号化器20は、TUのCb変換ブロックに1つ以上の変換を適用してTU用のCb係数ブロックを生成し得る。ビデオ符号化器20は、TUのCr変換ブロックに1つ以上の変換を適用してTU用のCr係数ブロックを生成し得る。
【0060】
ビデオ符号化器20は、係数ブロック(たとえば輝度係数ブロック、Cb係数ブロック又はCr係数ブロック)を生成した後に係数ブロックを量子化し得る。量子化は、一般に、変換係数を表すために使用されるデータ量をどうにかして低減するために変換係数が量子化されるプロセスを指すものであり、さらなる圧縮を与える。ビデオ符号化器20は、係数ブロックを量子化した後に、量子化変換係数を示すシンタックス要素をエントロピー符号化し得る。たとえば、ビデオ符号化器20は量子化変換係数を示すシンタックス要素に対してコンテキスト適応型2値算術符号化(CABAC)を実行し得る。最終的に、ビデオ符号化器20は、符号化フレーム及び関連するデータの表現を形成する一連のビットを含むビットストリームを出力し得、これは記録装置32に保存されるか又は送信先装置14に伝送される。
【0061】
ビデオ復号器30は、ビデオ符号化器20によって生成されたビットストリームを受け取った後に、ビットストリームを解析して、ビットストリームからシンタックス要素を取得し得る。ビデオ復号器30は、ビットストリームから取得されたシンタックス要素に少なくとも部分的に基づいてビデオデータのフレームを再構成し得る。ビデオデータを再構成するプロセスは、一般にビデオ符号化器20によって実行された符号化プロセスの逆のである。たとえば、ビデオ復号器30は、現在のCUのTUに関連した係数ブロックに対する逆変換を実行して、現在のCUのTUに関連した残差ブロックを再構成し得る。ビデオ復号器30はまた、現在のCUのPUに関する予測ブロックのサンプルを、対応する現在のCUのTUの変換ブロックのサンプルに加算することによって現在のCUの符号化ブロックを再構成する。ビデオ復号器30は、フレームの各CUに関する符号化ブロックを再構成した後にフレームを再構成し得る。
【0062】
前述のように、ビデオ符号化は、主としてイントラフレーム予測(すなわちイントラ予測)及びインターフレーム予測(すなわちインター予測)の2つのモードを使用してビデオ圧縮を達成するものである。パレットベースの符号化は、多くのビデオコーディング規格によって採用されている別の符号化方式である。パレットベースの符号化は、スクリーンに生成されたコンテンツを符号化するのに特に適し、この方式では、ビデオコーダ(たとえばビデオ符号化器20又はビデオ復号器30)が、所与のブロックのビデオデータを表現する色のパレットテーブルを形成する。パレットテーブルは、所与のブロックの中で最も優勢な(たとえば頻繁に使用される)ピクセル値を含む。所与のブロックのビデオデータにおいて頻繁に表現されないピクセル値は、パレットテーブルに含まれないか、又は回避色としてパレットテーブルに含まれる。
【0063】
パレットテーブルの各エントリは、パレットテーブルの中の対応するピクセル値に関するインデックスを含む。ブロックの中のサンプルに関するパレットインデックスは、サンプルを予測するか又は再構成するために使用されるパレットテーブルのエントリを指示するように符号化され得る。このパレットモードは、ピクチャ、スライス、タイル、又はビデオブロックのそのようなグループ化の最初のブロックに関するパレット予測子を生成するプロセスから始まる。以下で説明されるように、後続のビデオブロックに関するパレット予測子は、一般的には、以前に使用されたパレット予測子を更新することによって生成される。例示のために、パレット予測子はピクチャレベルで定義されると想定されている。言い換えれば、ピクチャは、それぞれが固有のパレットテーブルを有する複数の符号化ブロックを含み得るが、全体のピクチャに関する1つのパレット予測子がある。
【0064】
ビデオビットストリームにおけるパレットエントリの信号伝達に必要なビット数を低減するために、ビデオ復号器は、ビデオブロックを再構成するために使用されるパレットテーブルの新しいパレットエントリを決定するためにパレット予測子を利用し得る。たとえば、パレット予測子は、以前に使用されたパレットテーブルからのパレットエントリを含んでよく、あるいは、つい最近使用されたパレットテーブルのすべてのエントリを含むことにより、つい最近使用されたパレットテーブルを用いて初期化されてもよい。いくつかの実施形態では、パレット予測子は、つい最近使用されたパレットテーブルからのすべてのエントリよりも少ないエントリを含み、次いで、以前に使用された他のパレットテーブルからのいくつかのエントリを組み込んでもよい。パレット予測子のサイズは、異なるブロックを符号化するために使用されるパレットテーブルのサイズと比較して、同一でも、より大きくても、より小さくてもよい。一例では、パレット予測子は、64のパレットエントリを含む先入れ先出し(FIFO)テーブルとして実現される。
【0065】
パレット予測子からのビデオデータのブロックに関するパレットテーブルを生成するために、ビデオ復号器は、符号化ビデオビットストリームから、パレット予測子の各入力について1ビットのフラグを受け取り得る。1ビットのフラグは、パレット予測子の関連する入力がパレットテーブルの中に含まれることを指示する第1の値(たとえば2進数の1)又はパレット予測子の関連する入力がパレットテーブルの中に含まれないことを指示する第2の値(たとえば2進数の0)を有し得る。パレット予測子のサイズがビデオデータのブロック用に使用されるパレットテーブルよりも大きい場合には、ビデオ復号器は、一旦パレットテーブルの最大サイズに達したら、さらにフラグを受け取ることを停止してよい。
【0066】
いくつかの実施形態では、パレットテーブルのいくつかのエントリは、パレット予測子を使用して決定されるのではなく、符号化ビデオビットストリームにおいて直接信号伝達され得る。そのようなエントリについて、ビデオ復号器は、符号化ビデオビットストリームから、エントリに関連した輝度成分及び2つの色差成分に関するピクセル値を指示する3つの個別のmビットの値を受け取り得、mはビデオデータのビット深度を表現する。直接信号伝達されるパレットエントリのために複数のmビットの値が必要とされるのに対して、パレット予測子から導出されるパレットエントリが必要とするのは1ビットのフラグのみである。したがって、パレット予測子を使用してパレット入力のいくつか又はすべてを信号伝達すれば、新規のパレットテーブルの入力を信号伝達するために必要なビット数をかなり低減することができ、それによって、パレットモード符号化の全体的な符号化効率を改善する。
【0067】
多くの事例において、1つのブロックに関するパレット予測子は、以前に符号化された1つ以上のブロックを符号化するために使用されたパレットテーブルに基づいて決定される。しかし、ピクチャ、スライス又はタイルにおける最初の符号化ツリーユニットを符号化するときには、以前に符号化されたブロックのパレットテーブルを利用できない可能性がある。したがって、以前に使用されたパレットテーブルのエントリを使用してパレット予測子を生成することはできない。そのような場合には、以前に使用されたパレットテーブルが利用できないときにパレット予測子を生成するために使用された値である、一連のパレット予測子の初期化指定子が、シーケンスパラメータセット(SPS)及び/又はピクチャパラメータセット(PPS)において信号伝達されてよい。SPSは、一般に、各スライスセグメントヘッダに見られるシンタックス要素によって参照されるPPSに見られるシンタックス要素のコンテンツによって決定されたものとして、符号化ビデオシーケンス(CVS)と呼ばれる一連の連続した符号化ビデオピクチャに適合するシンタックス要素のシンタックス構造を指す。PPSは、一般に、各スライスセグメントヘッダに見られるシンタックス要素によって決定されたものとして、CVSの内部の1つ以上の個々のピクチャに適合するシンタックス要素のシンタックス構造を指す。したがって、SPSは、一般にPPSよりも上位のレベルのシンタックス構造とみなされ、SPSに含まれるシンタックス要素は、一般にそれほど頻繁に変化せず、PPSに含まれるシンタックス要素と比較して、ビデオデータのより大きい部分に適合することを意味する。
【0068】
図5は、本開示のいくつかの実施形態による、最小の色差イントラ予測ユニット(SCIPU)の例を示すブロック図である。
【0069】
一般的なハードウェアのビデオ符号化器及びビデオ復号器では、ピクチャが、近隣のイントラブロックの間のサンプル処理データの従属性のために多数の小さいイントラブロックを有するとき、処理スループットが低下する。イントラブロックの予測子を生成するには、近隣のブロックから上部境界及び左側境界を再構成されたサンプルが必要となる。したがって、イントラ予測は、ブロックごとに順次に処理されなければならない。
【0070】
HEVCでは、最小のイントラCUは8×8の輝度サンプルである。最小のイントラCUの輝度成分は、4つの4×4の輝度イントラ予測ユニット(PU)へとさらに分割され得るが、最小のイントラCUの色差成分は、さらには分割され得ない。したがって、4×4の色差イントラブロック又は4×4の輝度イントラブロックが処理されるとき、最悪ケースのハードウェア処理スループットが生じる。
【0071】
VTM5.0では、デュアルツリーにおいて、2×2/4×2/2×4の色差ブロックは、既に使用不能になっている。しかしながら、VTM5の単一の符号化ツリーでは、色差分割は常に輝度に追従し、最小のイントラCUは4×4の輝度サンプルであるので、最小の色差イントラCBは2×2である。したがって、VTM5.0では、単一の符号化ツリーにおける最小の色差イントラCBは2×2である。VVC復号に関する最悪ケースのハードウェア処理スループットは、HEVC復号に関するハードウェア処理スループットのわずか1/4である。その上に、色差イントラCBの再構成プロセスは、クロス成分の線形モデル(CCLM)、4タップの補間フィルタ、位置依存イントラ予測の組合せ(PDPC法)及びインターイントラ予測(CIIP)の組合せを含むツールを採用した後には、HEVCの再構成プロセスよりもなおさら複雑になる。ハードウェア復号器において高い処理スループットを達成するのは難易度が高い。この寄与では、最悪ケースのハードウェア処理スループットを改善する2つの方法が提案される。
【0072】
SCIPUの方式の目標は、色差イントラCBの分割に制約を加えることによって、16の色差サンプルよりも小さい色差イントラCBを許さないことである。
【0073】
単一の符号化ツリーでは、SCIPUは、その色差ブロックサイズが16の色差サンプル以上の符号化ツリーノードとして定義され、4×16の輝度サンプルよりも小さい少なくとも1つの子輝度ブロックを有する。各SCIPUにおいて、すべてのCBがインターであること、あるいは、すべてのCBが非インターすなわちイントラ又はイントラブロックのコピー(IBC)のいずれかであることが必要とされる。IBCの詳細は(http://phenix.int-evry.fr/jvet/における文献JVET-N1002)を参照することができよう。非インターSCIPUの場合には、非インターSCIPUの色差にはさらなる分割はないことがさらに必要とされ、SCIPUの輝度は、さらなる分割が許容される。このようにして、最小の色差イントラCBサイズは16の色差サンプルであり、2×2、2×4及び4×2の色差CBは除去される。加えて、色差スケーリングは、非インターSCIPUには適用されない。
【0074】
図5には2つのSCIPUの例が示されている。8×4の色差サンプルから分割された三分木(TT)により、16の色差サンプル(たとえば色差CBの502(a)及び502(c))よりも小さい色差CBが得られることになるので、8×4の色差サンプルの色差CB502及び対応する輝度CB(色差CBの502(a)、502(b)及び502(c)に対応する輝度CB)が、1つのSCIPUを形成する。4×4の色差サンプルから分割された二分木(BT)により、16の色差サンプル(たとえば色差CBの504(g)及び504(f))よりも小さい色差CBが得られることになるので、4×4の色差サンプル(8×4の色差サンプルの色差CB504の左側)の色差CB504(a)と、色差CBの504(c)、504(d)、及び504(e)に対応する3つの輝度CBとが、1つのSCIPUを形成し、4×4のサンプルの色差CB504(b)(8×4の色差サンプルの右側)と、2つの輝度CB(たとえば色差CBの504(g)及び504(b)に対応する輝度CB)とが、1つのSCIPUを形成する。
【0075】
SCIPUのタイプは、現在のスライスがI-スライスであるか、又は現在のSCIPUが、さらに1回分割された後にも4×4の輝度分割を有する場合には(VVCではインター4×4が許容されないため)、非インターであると推測され、そうでなければ、SCIPUのタイプ(インター又は非インター)は、SCIPUのCUを解析する前に、信号伝達される1つのフラグによって指示される。VVCの草案の仕様のバージョン6におけるSCIPUのタイプの導出は、以下のテーブル1に示される。modeTypeCondition 1はタイプ「非インター」を有するSCIPUとして定義され、modeTypeCondition 2はタイプ「インター又は非インター」を有するSCIPUとして定義され、1つのフラグ「mode_constraint_flag」がビットストリームに信号伝達されて、関連するSCIPUによってインター又は非インターが使用されるかどうかを指示する。現在のCU分割ノードがSCIPUでないとき、modeTypeCondition 0は条件を表す。テーブル2のすべての変数の定義は、VVCの草案の仕様(http://phenix.int-evry.fr/jvet/における文献JVET-O2001)のバージョン6を参照することができる。なお、cbWidth及びcbHeightは、それぞれ輝度サンプルにおける符号化ブロックの幅及び高さである。
【表1】
【0076】
上記で記述されたように、2×2の色差ブロックの代わりに4×4、2×8、又は8×2の色差ブロックが処理されるとき、SCIPU方式を適用することによって最悪ケースのハードウェア処理スループットが生じる。最悪ケースのハードウェア処理スループットは、HEVCにおけるものと同一であり、VTM5.0におけるものの4倍である。
【0077】
図6A図6Cは、本開示のいくつかの実施形態による、VVCにおいてサポートされる色差フォーマット(たとえば、色差サブサンプリングフォーマットとしても知られている)の例を示すブロック線図である。以下のテーブル2は、異なる色差フォーマットに関する情報を示す。たとえば、輝度ブロック及びその関連する色差ブロックの幅と高さとの間の比を規定するために、変数SubWidthC及びSubHeightCが使用される。
【表2】
【0078】
白黒サンプリングではサンプル配列は1つしかなく、名目上輝度配列とみなされる。
【0079】
4:2:0のサンプリングでは、2つの色差配列の各々が、輝度配列に対して半分の高さ及び幅を有する。
【0080】
4:2:2のサンプリングでは、2つの色差配列の各々が、輝度配列に対して同一の高さ及び半分の幅を有する。
【0081】
4:4:4のサンプリングでは、個別の色平面フラグの値に応じて、個別の色平面フラグが0に等しければ、2つの色差配列の各々が輝度配列と同一の高さ及び幅を有し、そうでなければ(個別の色平面フラグが1に等しければ)、3つの色平面は、白黒のサンプリングされたピクチャとして個別に処理される。
【0082】
色差フォーマットの値idcが1に等しいときの、ピクチャにおける輝度及び色差のサンプルの名目上の垂直方向及び水平方向における相対位置が図6Aに示されている。代替の色差サンプルの相対位置が、ビデオ有用性情報において指示され得る。
【0083】
色差フォーマットの値idcが2に等しいとき、色差サンプルは対応する輝度サンプルと同一の位置にあり、ピクチャにおける名目上の位置は図6Bに示される通りである。
【0084】
色差フォーマットの値idcが3に等しいとき、すべての配列サンプルがピクチャのすべての場合について同一の位置にあり、ピクチャにおける名目上の位置は図6Cに示される通りである。
【0085】
図7は、本開示のいくつかの実施形態による、様々な色差フォーマットにおけるSCIPUの例を示すブロック図である。
【0086】
SCIPUの概念がVVCに採用されるとき、設計が考慮に入れるのは4:2:0の色差フォーマットのみである。他の色差フォーマットは考慮に入れられず、したがって、設計は、4:2:0以外の色差フォーマット(たとえば4:4:4及び4:2:2)については、イントラ色差ブロックのサイズに対して過剰に制限的なルールを強いていた。具体的には、SCIPUは、提案されたときには、色差ブロックサイズが16の色差サンプル以上の符号化ツリーノードで、4×16の輝度サンプルよりも小さい少なくとも1つの子輝度ブロックを有するもの、と定義された。4倍の輝度サンプルを使用するSCIPUの定義が正確に機能するのは色差フォーマットが4:2:0のときのみである(たとえば、ブロックが4:2:0の色差フォーマットで符号化されているときには、輝度サンプルの4倍の色差サンプルがある)。現行のVVCでは、使用される色差フォーマットに関係なく、色差フォーマットが4:2:0であるという想定を伴うSCIPU方式による色差サイズの制限が常に適用され、これは、色差ブロックの幅及び高さが、どちらも関連する輝度ブロックの幅及び高さの半分であることを意味する。
【0087】
その上に、第15回JVET会議において、VVCに、パレットモードが新規に採用され(http://phenix.int-evry.fr/jvet/における文献JVET-O0119を参照されたい)、SCIPUのモードがインターとして信号伝達されるとき、このSCIPUで許容されるのはインターモードのみであり、したがって、色差ブロックは、2×4又は4×2の色差ブロックなどの小ブロックに分割され得る。SCIPUのモードとして非インターが信号伝達されるか、又はSCIPUのmodeTypeConditionが非インター(たとえばmodeTypeCondition=0)であるときには、このSCIPU向けに許容されるのは、イントラ予測モード、IBC及びパレットモードのみであり、色差ブロックを、2×2、2×4又は4×2などの小さい色差ブロックに分割することはできない。しかしながら、このSCIPUは、パレットモードに関して左側及び上方の近隣の再構成された画素の情報を必要とせず、したがって、このパレットモードは、色差ブロックを小さい色差ブロックに分割することが許容されるモードとみなされるべきである。
【0088】
いくつかの実施形態では、SCIPUは、その色差ブロックサイズがNの色差サンプル以上の符号化ツリーノードとして定義され、1回のさらなるCU分割を伴うk×Nの輝度サンプルよりも小さい少なくとも1つの子輝度ブロックを有する。Nは任意の正整数(たとえば16)であり得、Kは、4:2:0の色差フォーマット(chroma_format_idc=1)については4であり、4:2:2の色差フォーマットについては2であり、4:4:4の色差フォーマットについては1である。なお、4:4:4の色差フォーマットについては、K=1は、このSCIPUが有効にならないことを意味する。
【0089】
いくつかの実施形態では、SCIPUは、その色差ブロックサイズがNの色差サンプル以上の符号化ツリーノードとして定義され、1回のさらなるCU分割を伴うNの輝度サンプルよりも小さい少なくとも1つの子色差ブロックを有する。Nは任意の正整数(たとえば16)であり得る。たとえば、図7において、所定の分割方法(たとえば垂直2分割)によって符号化ツリーノードを分割すると、16未満の色差サンプルを有する色差成分(たとえば2×4の色差サンプルを有する色差成分)が得られるので、SCIPU702は有効なSCIPUである。所定の分割方法(たとえば垂直3分割)によってCBを分割すると、16未満の色差サンプルを有する色差成分(たとえば2×2の色差サンプルを有する色差成分)が得られるので、SCIPU704は有効なSCIPUである。所定の分割方法(たとえば垂直3分割)を用いてCBを分割すると、16未満の色差サンプルを有する色差成分(たとえば4×2の色差サンプルを有する色差成分)が得られるので、SCIPU706は有効なSCIPUである。
【0090】
SCIPUのタイプは、現在のスライスがI-スライスであるか、又は現在のSCIPUが、さらに1回分割された後にも4×4の輝度分割を有する場合には(VVCではインター4×4が許容されないため)、非インターであると推測され、そうでなければ、SCIPUのタイプ(インター又は非インター)は、SCIPUのCUを解析する前に、信号伝達される1つのフラグによって指示される。
【0091】
色差フォーマットが4:4:4(chroma_format_idc=3)であるときには、ブロックの内部の色差サンプルの数と輝度サンプルの数とが同一であるので、色差ブロックに対するサイズ制限は不要である。たとえば、四分木分割を使用する8×8のSCIPUについては、四分木分割によって分割された4×4の輝度ブロックを4つ含有しているので、SCIPUのタイプは、現在の設計に従って非インターであると推測される(上記のテーブル1を参照されたい)。また、現在の設計によれば、非インタータイプのSCIPUは、色差ブロック(この例では8×8の色差ブロック)のさらなる分割は許容しない。また、8×8のイントラ色差ブロックは、新たなスループット問題を導入することなく4つの4×4のイントラ色差ブロックに分割され得るので、色差ブロックに対するサイズ制限は、制限的すぎることは明白である。第2の実施形態によれば、符号化ピクチャが4:4:4の色差フォーマットであるときにはSCIPU方式を禁止することが提案される。仕様の一例が以下のテーブル3に示されている。
【表3】
【0092】
色差フォーマットが4:2:2(chroma_format_idc=2)であるとき、1つのブロックの内部の色差サンプルの高さと輝度サンプルの高さとは同一であるが、色差サンプルの幅は輝度サンプルの幅の半分であり、したがって、色差フォーマットが4:2:2であるときには、SCIPUに関するmodeTypeConditionの導出は、それに応じて修正される必要がある。この開示の第3の実施形態によれば、色差イントラブロックサイズの過剰制限を回避するためにSCIPU方式が適用されるときには、4:2:2の色差フォーマットを考慮に入れることが提案される。具体的には、SCIPUは、その色差ブロックサイズが16の色差サンプル以上の符号化ツリーノードとして定義され、1回のさらなる分割を伴う16の色差サンプルよりも小さい少なくとも1つの子色差ブロックを有する。WC仕様に基づく4:2:2のフォーマットに対する提案された制限の一例がテーブル4に示されている。修正されたmodeTypeCondition導出方法では、非インタータイプのSCIPUに関する4:2:2の色差フォーマットに対してさらに5つの条件が追加されている。たとえば、四分木CU分割を適用された8×8のブロックは、子ブロックが16の色差サンプルよりも小さい色差ブロックを含む(4:2:2の色差フォーマットについては、4つの4×4の輝度ブロック及び4つの2×4の色差ブロックを含有している)ので、SCIPUとみなされる。その上に、このSCIPUは、子ブロックが4×4の輝度ブロックを含むので、非インタータイプのSCIPUとみなされる。同様に、TT水平分割(SPLIT_TT_VER)を用いる16×4のブロックも、子ブロックが4×4の輝度ブロック及び16の色差サンプルよりも小さい色差ブロックを含む(2つの4×4の輝度ブロック及び1つの8×4の輝度ブロック、2つの2×4の色差ブロック及び1つの4×4の色差ブロックを含有している)ので、非インタータイプのSCIPUとみなされる。以下のテーブル4において、さらなる例が参照され得る。
【表4】
【0093】
なお、幅*高さが64に等しいCUは、現行のVVCでは、8×8、16×4又は4×16であり得る。8×8のCUは、四分木分割を適用することができる(split_qt_flagが1に等しい)唯一のサイズである。8×8のCUには三分木(TT)分割は許容されない。また、現行のVVCの16×4のCUに対して許容されるのはSPLIT_TT_VERのみであり、4×16のCUに対して許容されるのはSPLIT_TT_HORのみである。同様に、幅*高さが32であるCUは、現行のVVCの8×4又は4×8であり得る。8×4のCUに対して許容されるのはSPLIT_BT_VERのみであり、4×8のCUに対して許容されるのはSPLIT_BT_HORのみである。したがって、modeTypeConditionの導出が、テーブル4から、以下に示されるテーブル5に簡素化され得、また、テーブル4の導出方法とテーブル5の導出方法とにより、現行のVVCにおける同一のmodeTypeConditionが得られるはずであることが留意される。
【表5】
【0094】
色差フォーマットが白黒(chroma_format_idc=0)のときには、1つのブロックの内部に色差サンプルがないので、色差ブロックに対するサイズ制限は不要である。この開示の第4の実施形態によれば、イントラブロックサイズの過剰制限を回避するためにSCIPU方式が適用されるときには、白黒の色差フォーマットを考慮に入れることが提案される。仕様の一例が以下のテーブル6に示されている。
【表6】
【0095】
modeTypeConditionを導出するために、4:2:0、4:4:4及び4:2:2の白黒の色差フォーマットをすべて考慮に入れるために、仕様の一例が以下のテーブル7に示されている。
【表7】
【0096】
なお、テーブル7は、modeTypeCondition導出の機能を変化させることなく、以下に示されるテーブル8へとさらに簡素化され得る。
【表8】
【0097】
いくつかの実施形態では、SCIPUのモードとして非インターが信号伝達されるか、又はSCIPUのmodeTypeConditionが非インター(たとえばmodeTypeCondition=0)であるときには、SCIPUの内部のCUに対して許容されるのはイントラ予測モード、IBCのみとなり、色差ブロックを2×2、2×4又は4×2などの小さい色差ブロックに分割することはできなくなることが提案される。そうしないと、SCIPUのモードとしてインターが信号伝達されるとき、SCIPUの内部のCUに対してインターモードやパレットモードが許容され、色差ブロックが2×2、2×4又は4×2などの小さい色差ブロックに分割されてしまう。なお、それに応じて、混乱を回避するために、これらのモードの名称は、「非インター」から「イントラ+ibc」に、また「インター」から「インター+plt」に、変更され得る。
【0098】
図8は、ビデオ復号器30が、本開示のいくつかの実施形態によって最小の色差イントラ予測ユニット(SCIPU)を復号する技術を実施する例示的なプロセス800を示すフローチャートである。
【0099】
第1のステップとして、ビデオ復号器30は、ビットストリームから、所定の分割方法(たとえば水平/垂直2分割、水平/垂直3分割など)に関連した符号化ツリーノードを符号化するデータを受け取る(810)。所定の分割方法の例については、図4E及び関連した記述を参照されたい。
【0100】
次いで、ビデオ復号器30は、以下のやり方で、符号化ツリーノードのモードタイプを決定する(たとえば、符号化ツリーノードに関連したmodeTypeConditionフラグを設定する)(820)。ビデオ復号器30は、符号化ツリーノードが4:4:4又は4:0:0の色差サブサンプリングフォーマットで符号化されるとの決定に応じて、符号化ツリーノードを第1のモードタイプに設定し(たとえばmodeTypeCondition==0に設定して、符号化ツリーノードはSCIPUではないと指示し)(830)、ビデオ復号器30は、符号化ツリーノードが4:2:2又は4:2:0の色差サブサンプリングフォーマットで符号化され、符号化ツリーノードが最小の色差イントラ予測ユニット(SCIPU)であるとの決定に応じて(840)、符号化ツリーノードの輝度ブロック及び分割方法が第1の基準を満たす場合には、符号化ツリーノードを第2のモードタイプ(たとえばmodeTypeCondition==1)に設定し(たとえば、「modeTypeCondition==1」は、この分割方法を用いて符号化ツリーノードの輝度ブロックを分割すると、ブロックサイズが16の輝度サンプルの子輝度ブロックが得られることを意味し、したがって、予測モードは「イントラ」と推測され、予測モードのシンタックス要素は信号伝達されない)(840-1)、ビデオ復号器30は、符号化ツリーノードの輝度ブロック及び分割方法が第2の基準を満たす場合には、符号化ツリーノードを第3のモードタイプ(たとえばmodeTypeCondition==2)に設定する(たとえば、「modeTypeCondition==2」は、この分割方法を用いて符号化ツリーノードの輝度ブロックを分割すると、ブロックサイズが16の輝度サンプルの子輝度ブロックが得られないことを意味し、予測モードのシンタックス要素が信号伝達される)(840-2)。
【0101】
ビデオ復号器30は、モードタイプを設定した後に、モードタイプに基づいて以下のやり方で符号化ツリーユニットを復号する(850)。ビデオ復号器30は、符号化ツリーノードが第2のモード(たとえばSCIPUに対する非インターモード、modeTypeCondition==1)であるとの決定に応じて、イントラ予測モードを使用して、符号化ツリーノードにおける各符号化ブロックを復号し(860)、符号化ツリーノードが第1のモード(たとえばSCIPUではない)又は第3のモード(たとえばSCIPUに対する非インター)であるとの決定に応じて(870)、ビデオ復号器30は、ビットストリームから、符号化ツリーノードに関連する予測モードを指示するシンタックス要素(たとえばmode_constraint_flag)を受け取る(880)。
【0102】
ビデオ復号器30は、シンタックス要素を受け取った後に、シンタックス要素が第1の値(たとえばmode_constraint_flag==0)を有するとの決定に応じて、インター予測モードを使用して、符号化ツリーノードにおける各符号化ブロックを復号し(880-1)、ビデオ復号器30は、シンタックス要素が第2の値(たとえばmode_constraint_flag==1)を有するとの決定に応じて、イントラ予測モードを使用して、符号化ツリーノードにおける各符号化ブロックを復号する(880-2)。
【0103】
いくつかの実施形態では、符号化ツリーノードが第1のモードタイプであるときには、符号化ツリーノードの色差ブロックはさらに分割され得る。
【0104】
いくつかの実施形態では、符号化ツリーノードが第2のモードタイプであるときには、符号化ツリーノードの色差ブロックはさらには分割され得ない。
【0105】
いくつかの実施形態では、符号化ツリーノードが第3のモードタイプであり、予測モードが、現在の符号化ツリーノードがイントラモードであることを指示するときには、符号化ツリーノードの色差ブロックはさらには分割され得ない。
【0106】
いくつかの実施形態では、符号化ツリーノードが第3のモードタイプであり、予測モードが、現在の符号化ツリーノードがイントラモードではないことを指示するときには、符号化ツリーノードの色差ブロックはさらに分割され得る。
【0107】
いくつかの実施形態では、符号化ツリーノードの色差ブロックが色差ブロックを有し、分割方法を用いてこの色差ブロックを分割すると、イントラ色差ブロックの最小サイズ制限に違反する子色差ブロックが得られる(たとえば、子色差ブロックが16未満の色差サンプルのサイズを有する)場合には、符号化ツリーノードはSCIPUである。
【0108】
いくつかの実施形態では、分割方法を用いて符号化ツリーノードの輝度ブロックを分割すると、16の輝度サンプルのブロックサイズを有する子輝度ブロックが得られる場合には、符号化ツリーノードの輝度ブロック及び分割方法は第1の基準を満たす。
【0109】
いくつかの実施形態では、輝度ブロックのサイズが64の輝度サンプルであって、分割方法が4分割である(たとえば、テーブル9に示されるように、cbWidth*cbHeightは64に等しく、split_qt_flagは1に等しく、chroma_format_idcは1又は2に等しい)場合、輝度ブロックのサイズが64の輝度サンプルであって、分割方法が水平3分割又は垂直3分割である(たとえば、テーブル9に示されるように、cbWidth*cbHeightは64に等しく、MttSplitMode[ x0 ][ y0 ][ mttDepth ]はSPLIT_TT_HOR又はSPLIT_TT_VERに等しい)場合、あるいは輝度ブロックのサイズが32の輝度サンプルであって、分割方法が水平2分割又は垂直2分割である(たとえば、テーブル9に示されるように、cbWidth*cbHeightは32に等しく、MttSplitMode[ x0 ][ y0 ][ mttDepth ]はSPLIT_BT_HOR又はSPLIT_BT_VERに等しい)場合には、符号化ツリーノードの輝度ブロック及び分割方法は第1の基準を満たす。
【0110】
いくつかの実施形態では、I-スライスの中に符号化ツリーノードがなく、分割方法を用いて符号化ツリーノードの輝度ブロックを分割しても、ブロックサイズが16の輝度サンプルに等しい子輝度ブロックは得られない(たとえば、得られる子輝度ブロックは16の輝度サンプルよりも大きくなる)場合には、符号化ツリーノードの輝度ブロック及び分割方法は第2の基準を満たす。
【0111】
いくつかの実施形態では、符号化ツリーノードがI-スライスでなく(たとえば、テーブル9では、slice_type != I)、輝度ブロックのサイズは64の輝度サンプルであり、分割方法は水平2分割又は垂直2分割である(たとえば、テーブル9では、cbWidth*cbHeightは64に等しく、MttSplitMode[ x0 ][ y0 ][ mttDepth ]はSPLIT_BT_HOR又はSPLIT_BT_VERに等しく、chroma_format_idcは1に等しい)場合、あるいは輝度ブロックのサイズが128の輝度サンプルであって、分割方法が水平3分割又は垂直3分割である(たとえば、テーブル9では、cbWidth*cbHeightは128に等しく、MttSplitMode[ x0 ][ y0 ][ mttDepth ]はSPLIT_TT_HOR又はSPLIT_TT_VERに等しく、chroma_format_idcは1に等しい)場合には、符号化ツリーノードの輝度ブロック及び分割方法は第2の基準を満たす。
【0112】
いくつかの実施形態では、符号化ツリーノードが、4:2:2又は4:2:0の色差サブサンプリングフォーマットで符号化され、SCIPUではない(たとえば、色差ブロックを分割しても、イントラ色差ブロックの最小サイズ制限に違反することにはならない)との決定に応じて、ビデオ復号器30は、符号化ツリーノードを第1のモードに設定する(たとえば、分割しても、16の色差サンプルよりも小さい子色差ブロックが得られることにはならない)。
【0113】
1つ又は複数の例では、記述された機能は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの任意の組合せで実現され得る。この機能は、ソフトウェアで実現される場合には、1つ以上の命令又はコードとしてコンピュータ読み取り可能な媒体に記憶されるか又は伝送されてよく、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記録媒体などの有形の媒体に対応するコンピュータ読み取り可能な記録媒体、又は、たとえば通信プロトコルによる、ある位置から別の位置へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信メディアを含み得る。このように、コンピュータ読み取り可能な媒体は、一般に(1)非一時的な有形のコンピュータ読み取り可能な記録媒体、又は(2)信号もしくは搬送波などの通信媒体に相当し得るものである。データ記録媒体は、1つ以上のコンピュータ又は1つ以上のプロセッサによって、本出願に記述された実施形態を実現するための命令、コード及び/又はデータ構造を取り出すためにアクセスされ得る、任意の利用可能な媒体でよい。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【0114】
本明細書の実施形態の記述において使用される専門用語は、特定の実施形態のみを記述するためのものであり、特許請求の範囲を制限するようには意図されていない。実施形態及び添付の特許請求の範囲の記述で用いられるように、単数形「1つの(a)」、「1つの(an)」、及び「その(the)」は、文脈がはっきりと別様に示さなければ、複数形も含むように意図されている。本明細書で使用されるような「及び/又は」という用語は、関連する列挙された項目のうちの1つ又は複数の、ありとあらゆる可能な組合せを指し、かつ包含することも理解されよう。「備える」及び/又は「備えている」という用語は、本明細書で使用されたとき、明示された特徴、要素、及び/又は構成要素の存在を指定するが、1つ以上の他の特徴、要素、構成要素、及び/又はこれらのグループの存在もしくは追加を排除するものではないがさらに理解されよう。
【0115】
様々な要素を説明するために、本明細書では第1、第2などの用語が用いられることがあるが、これらの要素は、これらの用語によって限定されるべきでないことも理解されよう。これらの用語は、単に1つの要素を別のものと区別するのに用いられる。たとえば、実施形態の範囲から逸脱することなく、第1の電極が第2の電極と称され得て、同様に、第2の電極が第1の電極と称され得る。第1の電極と第2の電極は、どちらも電極であるが同一の電極ではない。
【0116】
本出願の記述は解説及び説明のために提示されており、網羅的であること又は開示された形態の発明に限定されることは意図されていない。多くの修正形態、変形形態、及び代替の実施形態が、先の記述及び関連する図面において提示された教示内容の利益を有する当業者には明らかなはずである。実施形態は、本発明の原理や実際の用途について最も良く説明するため、他の当業者が様々な実施形態に関して本発明を理解することを可能にするため、また、基本原理と、企図された特定の使用法に適するものとしての様々な修正形態を伴う様々な実施形態とを最も良く利用するために、選択して記述されたものである。したがって、特許請求の範囲は、開示された実施形態の特定の実施例及びその修正形態に限定されず、添付の特許請求の範囲の範囲内に含まれるように他の実施形態が意図されていることを理解されたい。
図1
図2
図3
図4A
図4B
図4C
図4D
図4E
図5
図6A
図6B
図6C
図7
図8