(57)【要約】  ビデオデコーダによって実装される点群符号化（ＰＣＣ）の方法。方法は、データユニットヘッダ及びデータユニットを含む符号化ビットストリームを受信する段階であって、データユニットヘッダは、データユニットのペイロードに保持されているコンテンツのタイプを指定するタイプインジケータを含む、段階と、符号化ビットストリームを復号する段階と、を含む。
2021529460.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデコーダによって実装される点群符号化（ＰＣＣ）の方法であって、
データユニットヘッダを含むデータユニットを含む符号化ビットストリームを受信する段階であって、前記データユニットヘッダは、前記データユニットのペイロードに保持されているコンテンツのタイプを指定するタイプインジケータを含む、段階と、
前記符号化ビットストリームを復号する段階と、
を含む、方法。
【請求項２】
ビデオエンコーダによって実装される点群符号化（ＰＣＣ）の方法であって、
データユニットヘッダを含むデータユニットを含む符号化ビットストリームを生成する段階であって、前記データユニットヘッダは、前記データユニットのペイロードに保持されているコンテンツのタイプを指定するタイプインジケータを含む、段階と、
デコーダに向けて前記符号化ビットストリームを送信する段階と、
を含む、方法。
【請求項３】
前記データユニットヘッダは、ビデオベース符号化ユニットヘッダである、請求項１又は２に記載の方法。
【請求項４】
前記データユニットヘッダは、ＰＣＣネットワーク抽象化層（ＮＡＬ）ユニットヘッダである、請求項１又は２に記載の方法。
【請求項５】
前記データユニットは、ＰＣＣ  ＮＡＬユニットである、請求項１又は２に記載の方法。
【請求項６】
前記データユニットは、ビデオベース符号化ユニットである、請求項１又は２に記載の方法。
【請求項７】
前記タイプインジケータは、前記コンテンツのタイプがジオメトリコンポーネントであると指定する、請求項１〜６のいずれか一項に記載の方法。
【請求項８】
前記タイプインジケータは、前記コンテンツのタイプがテクスチャコンポーネントであると指定する、請求項１〜６のいずれか一項に記載の方法。
【請求項９】
前記タイプインジケータは、前記コンテンツのタイプがジオメトリコンポーネント又はテクスチャコンポーネントであると指定する、請求項１〜６のいずれか一項に記載の方法。
【請求項１０】
前記タイプインジケータは、前記コンテンツのタイプが補助情報であると指定する、請求項１〜６のいずれか一項に記載の方法。
【請求項１１】
前記タイプインジケータは、前記コンテンツのタイプが占有率マップであると指定する、請求項１〜６のいずれか一項に記載の方法。
【請求項１２】
前記タイプインジケータは５ビットを含む、請求項１〜１１のいずれか一項に記載の方法。
【請求項１３】
前記タイプインジケータは７ビットを含む、請求項１〜１１のいずれか一項に記載の方法。
【請求項１４】
前記ジオメトリコンポーネントは、点群フレームと関連付けられる１組の座標を含む、請求項７又は９に記載の方法。
【請求項１５】
前記１組の座標はデカルト座標である、請求項１４に記載の方法。
【請求項１６】
前記テクスチャコンポーネントは、点群フレームの１組のルマサンプル値を含む、請求項８又は９に記載の方法。
【請求項１７】
符号化するピクチャを受信するように又は復号するビットストリームを受信するように構成されている受信機と、
前記受信機に連結されている送信器であって、前記ビットストリームをデコーダに送信するように又は復号されたイメージをディスプレイに送信するように構成されている送信器と、
前記受信機又は前記送信器の少なくとも１つに連結されているメモリであって、命令を記憶するように構成されているメモリと、
前記メモリに連結されているプロセッサであって、請求項１〜１６のいずれか一項に記載の方法を実行するために前記メモリに記憶されている前記命令を実行するように構成されているプロセッサと、
を備える、符号化装置。
【請求項１８】
イメージを表示するように構成されているディスプレイをさらに備える、請求項１７に記載の符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は概して点群符号化に関し、具体的には点群符号化のための高レベルシンタックスに関する。
【背景技術】
【０００２】
点群は、エンターテインメント産業、インテリジェント自動車ナビゲーション、地理空間検査、現実世界のオブジェクトの３次元（３Ｄ）モデリング、視覚化等を含む、非常に様々な用途で使用される。点群の一様でないサンプリングジオメトリを考慮すると、そのようなデータの格納及び伝送のためのコンパクトな表示が有用である。他の３Ｄプレゼンテーションに比べて、不規則な点群はより汎用的であり、幅広いセンサ及びデータ取得ストラテジに適用可能である。例えば、仮想現実世界にて３Ｄプレゼンテーション又はテレプレゼンス環境にてリモートレンダリングを行う場合、仮想フィギュアのレンダリング及びリアルタイム命令は、高密度な点群データセットとして処理される。
【発明の概要】
【０００３】
第１の態様は、ビデオデコーダによって実装される点群符号化（ＰＣＣ）の方法に関する。方法は、データユニットヘッダ及びデータユニットを含む符号化ビットストリームを受信する段階であって、データユニットヘッダは、データユニットのペイロードに保持されているコンテンツのタイプを指定するタイプインジケータを含む、段階と、符号化ビットストリームを復号する段階と、を含む。
【０００４】
第２の態様は、ビデオエンコーダによって実装される点群符号化（ＰＣＣ）の方法に関する。方法は、データユニットヘッダ及びデータユニットを含む符号化ビットストリームを生成する段階であって、データユニットヘッダは、データユニットのペイロードに保持されているコンテンツのタイプを指定するタイプインジケータを含む、段階と、デコーダに向けて符号化ビットストリームを送信する段階と、を含む。
【０００５】
方法は、以下で説明される点群符号化に関連する問題の１つ又は複数を解決する高レベルシンタックス設計を提供する。したがって、ビデオ符号化のプロセス及びビデオコーデックがより効率的になる等して改善される。
【０００６】
そのような第１又は第２の態様に係る方法の第１の実装形態では、データユニットヘッダは、ＰＣＣネットワーク抽象化層（ＮＡＬ）ユニットヘッダである。
【０００７】
そのような第１若しくは第２の態様に係る方法の第２の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、データユニットはＰＣＣ  ＮＡＬユニットである。
【０００８】
そのような第１若しくは第２の態様に係る方法の第３の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、タイプインジケータは、コンテンツのタイプがジオメトリコンポーネントであると指定する。
【０００９】
そのような第１若しくは第２の態様に係る方法の第４の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、タイプインジケータは、コンテンツのタイプがテクスチャコンポーネントであると指定する。
【００１０】
そのような第１若しくは第２の態様に係る方法の第５の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、タイプインジケータは、コンテンツのタイプがジオメトリコンポーネント又はテクスチャコンポーネントであると指定する。 
【００１１】
そのような第１若しくは第２の態様に係る方法の第６の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、タイプインジケータは、コンテンツのタイプの補助情報であると指定する。
【００１２】
そのような第１若しくは第２の態様に係る方法の第７の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、タイプインジケータは、コンテンツのタイプが占有率マップであると指定する。 
【００１３】
そのような第１若しくは第２の態様に係る方法の第８の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、ペイロードは、高効率ビデオ符号化（ＨＥＶＣ）ＮＡＬユニットを含む。
【００１４】
そのような第１若しくは第２の態様に係る方法の第９の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、ペイロードは、高度ビデオ符号化（ＡＶＣ）ＮＡＬユニットを含む。
【００１５】
そのような第１若しくは第２の態様に係る方法の第１０の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、タイプインジケータは５ビットを含む。
【００１６】
そのような第１若しくは第２の態様に係る方法の第１１の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、タイプインジケータは７ビットを含む。
【００１７】
そのような第１若しくは第２の態様に係る方法の第１２の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、ジオメトリコンポーネントは、点群フレームと関連付けられる１組の座標を含む。
【００１８】
そのような第１若しくは第２の態様に係る方法の第１３の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、１組の座標はデカルト座標である。
【００１９】
そのような第１若しくは第２の態様に係る方法の第１４の実装形態又は第１若しくは第２の態様の任意の先行する実装形態では、テクスチャコンポーネントは、点群フレームの１組のルマサンプル値を含む。
【００２０】
第３の態様は、符号化するピクチャを受信するように又は復号するビットストリームを受信するように構成されている受信機と、受信機に連結されている送信器であって、ビットストリームをデコーダに送信するように又は復号されたイメージをディスプレイに送信するように構成されている送信器と、受信機又は送信器の少なくとも１つに連結されているメモリであって、命令を格納するように構成されているメモリと、メモリに連結されているプロセッサであって、先行する態様又は実装のいずれかの方法を実行するためにメモリに記憶されている命令を実行するように構成されているプロセッサと、を備える、符号化装置に関する。
【００２１】
符号化装置は、以下で説明される点群符号化に関連する問題の１つ又は複数を解決する高レベルシンタックス設計を使用する。したがって、ビデオ符号化のプロセス及びビデオコーデックがより効率的になる等して改善される。
【００２２】
そのような第３の態様に係る装置の第１の実装形態では、装置は、イメージを表示するように構成されているディスプレイをさらに備える。
【００２３】
第４の態様は、エンコーダ及びエンコーダと通信するデコーダを備えるシステムに関する。エンコーダ又はデコーダは、先行する態様又は実装のいずれかの符号化装置を含む。
【００２４】
システムは、以下で説明される点群符号化に関連する問題の１つ又は複数を解決する高レベルシンタックス設計を使用する。したがって、ビデオ符号化のプロセス及びビデオコーデックがより効率的になる等して改善される。
【００２５】
第５の態様は、符号化するピクチャを受信するように又は復号するビットストリームを受信するように構成されている受信手段と、
上記受信手段に連結されている送信手段であって、上記ビットストリームをデコーダに送信するように又は復号されたイメージを表示手段に送信するように構成されている送信手段と、
上記受信手段又は上記送信手段の少なくとも１つに連結されている記憶手段であって、命令を記憶するように構成されている記憶手段と、
上記記憶手段に連結されている処理手段であって、先行する態様又は実装のいずれかの方法を実行するために上記記憶手段に記憶されている上記命令を実行するように構成されている処理手段と、
を備える、符号化手段に関する。
【００２６】
符号化手段は、以下で説明される点群符号化に関連する問題の１つ又は複数を解決する高レベルシンタックス設計を使用する。したがって、ビデオ符号化のプロセス及びビデオコーデックがより効率的になる等して改善される。
【００２７】
明確さのために、前述の実施形態のいずれか１つを他の前述の実施形態のいずれか１つ又は複数と組み合せて、本開示の範囲内で新たな実施形態を作り出してもよい。
【００２８】
これらの特徴及び他の特徴は、添付図面及び特許請求の範囲と共に、以下の詳細な説明からより明確に理解されるであろう。
【図面の簡単な説明】
【００２９】
本開示をより十分に理解するために、次に、添付図面及び詳細な説明と関連した以下の簡潔な説明について言及する。ここで、同様の参照番号は同様の構成要素を表す。
【００３０】
【図１】コンテキストモデル化技術を使用し得る例示的な符号化システムを示すブロック図である。
【００３１】
【図２】コンテキストモデル化技術を実装し得る例示的なビデオエンコーダを示すブロック図である。
【００３２】
【図３】コンテキストモデル化技術を実装し得る例示的なビデオデコーダを示すブロック図である。
【００３３】
【図４】ＰＣＣと適合するデータ構造の一実施形態の概略図である。
【００３４】
【図５】ビデオデコーダによって実装される点群符号化の方法の一実施形態の図である。
【００３５】
【図６】ビデオエンコーダによって実装される点群符号化の方法の一実施形態の図である。
【００３６】
【図７】例示的なビデオ符号化デバイスの概略図である。
【００３７】
【図８】符号化手段の一実施形態の概略図である。
【発明を実施するための形態】
【００３８】
最初に、１つ又は複数の実施形態の例示的な実装が以下に提供されるが、開示されたシステム及び／又は方法は、現在既知又は既存であるかに関わらず、任意の数の技術を用いて実装されてよいことを理解されたい。本開示は、本明細書において示され説明される例示的な設計及び実装を含む、以下で示される例示的な実装、図面、及び技術に決して限定されるべきではないが、添付の特許請求の範囲に加え、それらの均等物の全範囲内において変更され得る。
【００３９】
ビデオ符号化規格は、国際電気通信連合の電気通信標準化部門（ＩＴＵ‐Ｔ）Ｈ．２６１、国際標準化機構（ＩＳＯ）／国際電気標準会議（ＩＥＣ）の動画専門家集団（ＭＰＥＧ）‐１  Ｐａｒｔ２、ＩＴＵ‐Ｔ  Ｈ．２６２又はＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｐａｒｔ２、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｐａｒｔ２、ＩＴＵ‐Ｔ  Ｈ．２６４又はＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｐａｒｔ１０としても知られている高度ビデオ符号化（ＡＶＣ）、及び、ＩＴＵ‐Ｔ  Ｈ．２６５又はＭＰＥＧ−Ｈ  Ｐａｒｔ２としても知られている高効率ビデオ符号化（ＨＥＶＣ）を含む。ＡＶＣは、スケーラブルビデオ符号化（ＳＶＣ）、マルチビュービデオ符号化（ＭＶＣ）及びマルチビュービデオ符号化プラス深度（ＭＶＣ＋Ｄ）、並びに３Ｄ  ＡＶＣ（３Ｄ−ＡＶＣ）等の拡張を含む。ＨＥＶＣは、スケーラブルＨＥＶＣ（ＳＨＶＣ）、マルチビューＨＥＶＣ（ＭＶ−ＨＥＶＣ）、及び３Ｄ  ＨＥＶＣ（３Ｄ−ＨＥＶＣ）等の拡張を含む。
【００４０】
点群は、３Ｄ空間におけるデータ点のセットである。各データ点は、位置（例えば、Ｘ、Ｙ、Ｚ）、色（例えば、Ｒ、Ｇ、Ｂ又はＹ、Ｕ、Ｖ）、及びおそらくは透過性、反射率、取得時間等のような他の特性を決定するパラメータから構成される。典型的には、群内の各点には、同じ数の属性が付加されている。点群は、リアルタイム３Ｄイマーシブテレプレゼンス、インタラクティブパララックスを伴うコンテンツ仮想現実（ＶＲ）ビューイング、３Ｄ自由視点スポーツリプレイブロードキャスティング、地理的情報システム、文化遺産、大規模３Ｄ動的マップに基づく自律ナビゲーション、及び自動車アプリケーション等の様々な用途において用いられ得る。
【００４１】
ＩＳＯ／ＩＥＣ動画専門家集団（ＭＰＥＧ）は、かなりの符号化効率及びネットワーク環境に対するロバスト性を有する、ロスレス及びロッシー圧縮点群データのための点群符号化に関する新たなコーデック規格の開発を２０１６年に開始した。このコーデック規格を使用すれば、点群をコンピュータデータの形態として操作し、様々な記憶媒体に記憶し、既存及び将来のネットワークを介して送信及び受信し、既存及び将来のブロードキャスティングチャネル上で配信することができる。
【００４２】
近年、点群符号化（ＰＣＣ）作業は、３つのカテゴリ、すなわち、ＰＣＣカテゴリ１、ＰＣＣカテゴリ２、及びＰＣＣカテゴリ３に分類されていた。２つの別個の作業ドラフトが展開され、その一方はＰＣＣカテゴリ２（ＰＣＣ  Ｃａｔ２）のためのものであり、他方はＰＣＣカテゴリ１及び３（ＰＣＣ  Ｃａｔ１３）のためのものであった。ＰＣＣ  Ｃａｔ２のための最新の作業ドラフト（ＷＤ）は、ＭＰＥＧの出力ドキュメントＮ１７５３４に含まれ、ＰＣＣ  Ｃａｔ１３のための最新のＷＤは、ＭＰＥＧの出力ドキュメントＮ１７５３３に含まれる。
【００４３】
ＰＣＣ  Ｃａｔ２  ＷＤにおけるＰＣＣ  Ｃａｔ２コーデックの設計の背後にある主な理念は、点群データを異なるビデオシーケンスのセットとして圧縮することにより、動的な点群のジオメトリ及びテクスチャ情報を圧縮するために既存のビデオコーデックを活用することである。特に、２つのビデオシーケンス、すなわち、一方は点群データのジオメトリ情報を表し、他方はテクスチャ情報を表すビデオシーケンスは、ビデオコーデックを用いて生成され圧縮される。２つのビデオシーケンスを解釈するための追加のメタデータ、すなわち、占有率マップ及び補助パッチ情報もまた、別個に生成され圧縮される。
【００４４】
残念なことに、ＰＣＣの既存の設計は欠点を有する。例えば、１つの時間インスタンス、すなわち、１つのアクセスユニット（ＡＵ）に関するデータユニットは、復号順序において連続しない。ＰＣＣ  Ｃａｔ２  ＷＤにおいて、各ＡＵのテクスチャ、ジオメトリ、補助情報、及び占有率マップのデータユニットは、フレーム群の単位でインターリーブされる。すなわち、群内の全てのフレームのジオメトリデータはまとまっている。同じことが、テクスチャデータ等にも当てはまることが多い。ＰＣＣ  Ｃａｔ１３  ＷＤでは、ジオメトリのデータユニット及び各ＡＵの一般的属性は、全ＰＣＣビットストリームのレベルでインターリーブされる（例えば、全ＰＣＣビットストリームと同じ長さを有するフレーム群が１つのみ存在するときのＰＣＣ  Ｃａｔ２  ＷＤの場合と同じ）。１つのＡＵに属するデータユニットのインターリーブは、本質的に、アプリケーションシステムにおけるプレゼンテーション持続時間内のフレーム群の長さに少なくとも等しい膨大なエンドツーエンド遅延を発生させる。
【００４５】
別の欠点は、ビットストリームフォーマットに関するものである。ビットストリームフォーマットは、０ｘ０００３のような開始コードパターンのエミュレーションを許容し、したがって、ＭＰＥＧ−２トランスポートストリーム（ＴＳ）を介した送信のために動作せず、ここで、開始コードエミュレーションの防止が必要となる。ＰＣＣ  Ｃａｔ２に関して、現在は、ＨＥＶＣ又はＡＶＣのいずれかがジオメトリ及びテクスチャコンポーネントの符号化のために用いられる場合、ｇｒｏｕｐ＿ｏｆ＿ｆｒａｍｅｓ＿ｇｅｏｍｅｔｒｙ＿ｖｉｄｅｏ＿ｐａｙｌｏａｄ（）及びｇｒｏｕｐ＿ｏｆ＿ｆｒａｍｅｓ＿ｔｅｘｔｕｒｅ＿ｖｉｄｅｏ＿ｐａｙｌｏａｄ（）のみが開始コードエミュレーションの防止を適所に有する。ＰＣＣ  Ｃａｔ１３に関して、開始コードエミュレーションの防止は、ビットストリームのいずれの場所においても適所に存在しない。
【００４６】
ＰＣＣ  Ｃａｔ２  ＷＤでは、ジオメトリ及びテクスチャビットストリームのためのコーデック情報の一部（例えば、どのコーデック、コーデックのプロファイル、レベルであるか等）は、構造ｇｒｏｕｐ＿ｏｆ＿ｆｒａｍｅｓ＿ｇｅｏｍｅｔｒｙ＿ｖｉｄｅｏ＿ｐａｙｌｏａｄ（）及びｇｒｏｕｐ＿ｏｆ＿ｆｒａｍｅｓ＿ｔｅｘｔｕｒｅ＿ｖｉｄｅｏ＿ｐａｙｌｏａｄ（）の複数のインスタンスに深く埋め込まれている。さらに、補助情報及び占有率マップコンポーネントを復号する能力並びに点群再構成のための能力を示すプロファイル及びレベルのような情報の一部は、失われている。
【００４７】
本明細書には、点群符号化に関連する前述の問題の１つ又は複数を解決する高レベルシンタックス設計が開示される。以下でより完全に説明されるように、本開示は、データユニットヘッダ（ＰＣＣネットワークアクセス層（ＮＡＬ）ヘッダとも呼ばれる）におけるタイプインジケータを使用して、ＰＣＣ  ＮＡＬユニットのペイロードにおけるコンテンツのタイプを指定する。また、本開示は、フレームヘッダパラメータ群を保持するのにフレームヘッダＮＡＬユニット群を使用する。フレームヘッダＮＡＬユニット群は、各ジオメトリ又はテクスチャビットストリームのプロファイル及びレベルをシグナリングするために用いられもよい。
【００４８】
図１は、ＰＣＣビデオ符号化技術を使用し得る例示的な符号化システム１０を示すブロック図である。図１に示されるように、符号化システム１０は、デスティネーションデバイス１４によって後の時点で復号されることになる符号化ビデオデータを提供するソースデバイス１２を備える。特に、ソースデバイス１２は、コンピュータ可読媒体１６を介してデスティネーションデバイス１４にビデオデータを提供してよい。ソースデバイス１２及びデスティネーションデバイス１４は、デスクトップコンピュータ、ノートブック（例えば、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォン、いわゆる「スマート」パッド等の電話ハンドセット、テレビ、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲーミングコンソール、ビデオストリーミングデバイス等を含む、幅広いデバイスのいずれかを含んでよい。一部の事例において、ソースデバイス１２及びデスティネーションデバイス１４は、無線通信するように装備されてよい。
【００４９】
デスティネーションデバイス１４は、コンピュータ可読媒体１６を介して復号されることになる符号化ビデオデータを受信してよい。コンピュータ可読媒体１６は、符号化ビデオデータをソースデバイス１２からデスティネーションデバイス１４に移動可能な任意のタイプの媒体又はデバイスを含んでよい。一例では、コンピュータ可読媒体１６は、ソースデバイス１２が符号化ビデオデータをリアルタイムでデスティネーションデバイス１４に直接送信することを可能にするように通信媒体を含んでもよい。符号化ビデオデータは、無線通信プロトコル等の通信規格に従って変調され、デスティネーションデバイス１４に送信されてよい。通信媒体は、無線周波数（ＲＦ）スペクトル又は１つ若しくは複数の物理的送信ライン等の、任意の無線又は有線通信媒体を含んでよい。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はインターネット等のグローバルネットワーク等のパケットベースネットワークの一部を形成してよい。通信媒体は、ルータ、スイッチ、基地局、又は、ソースデバイス１２からデスティネーションデバイス１４への通信を円滑化するのに有用であり得る任意の他の機器を含んでよい。
【００５０】
一部の例において、符号化データは、出力インタフェース２２からストレージデバイスに出力されてよい。同様に、符号化データは、入力インタフェースによってストレージデバイスからアクセスされてよい。ストレージデバイスは、ハードドライブ、ブルーレイ（登録商標）ディスク、デジタルビデオディスク（ＤＶＤ）、コンパクトディスクリードオンリメモリ（ＣＤ−ＲＯＭ）、フラッシュメモリ、揮発性若しくは不揮発性メモリ、又は符号化ビデオデータを格納するのに好適な任意の他のデジタル記憶媒体等の、様々な分散型又はローカルにアクセスされるデータ記憶媒体のいずれかを含んでよい。さらなる例において、ストレージデバイスは、ソースデバイス１２によって生成された符号化ビデオを格納し得るファイルサーバ又は別の中間ストレージデバイスに対応してよい。デスティネーションデバイス１４は、ストリーミング又はダウンロードを介してストレージデバイスから格納されたビデオデータにアクセスしてよい。ファイルサーバは、符号化ビデオデータを格納するとともにその符号化ビデオデータをデスティネーションデバイス１４に送信することが可能な任意のタイプのサーバとしてよい。ファイルサーバの例には、ウェブサーバ（例えばウェブサイト用）、ファイル転送プロトコル（ＦＴＰ）サーバ、ネットワークアタッチストレージ（ＮＡＳ）デバイス、又はローカルディスクドライブが含まれる。デスティネーションデバイス１４は、インターネット接続を含む、任意の標準的なデータ接続を通して符号化ビデオデータにアクセスしてよい。これには、ファイルサーバに格納されている符号化ビデオデータにアクセスするのに好適な、無線チャネル（例えば、Ｗｉ−Ｆｉ（登録商標）接続）、有線接続（例えば、デジタル加入者ライン（ＤＳＬ）、ケーブルモデム等）、又は両方の組み合わせが含まれ得る。ストレージデバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、又はそれらの組み合わせとしてよい。
【００５１】
本開示の技術は、必ずしも無線用途又は設定に限定されない。この技術は、オーバーザエアテレビブロードキャスト、ケーブルテレビ送信、衛星テレビ送信、ＨＴＴＰ（ＤＡＳＨ）を介したダイナミックアダプティブストリーミング等のインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体上に記憶されているデジタルビデオの復号、又は他の用途等の、様々なマルチメディア用途のいずれかのサポートにおいてビデオ符号化に適用されてよい。一部の例において、符号化システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、及び／又はビデオテレフォニー等の用途をサポートするために、一方向又は双方向ビデオ送信をサポートするように構成されてよい。
【００５２】
図１の例では、ソースデバイス１２は、ビデオソース１８、ビデオエンコーダ２０、及び出力インタフェース２２を含む。デスティネーションデバイス１４は、入力インタフェース２８、ビデオデコーダ３０、及びディスプレイデバイス３２を含む。本開示によれば、ソースデバイス１２のビデオエンコーダ２０及び／又はデスティネーションデバイス１４のビデオデコーダ３０は、ビデオ符号化のためにこの技術を適用するように構成されてよい。他の例において、ソースデバイス及びデスティネーションデバイスは、他のコンポーネント又は機構を含んでよい。例えば、ソースデバイス１２は、外部カメラ等の外部ビデオソースからビデオデータを受信してよい。同様に、デスティネーションデバイス１４は、組み込まれたディスプレイデバイスを備えるのではなく、外部ディスプレイデバイスとインタフェースしてよい。
【００５３】
図１に示されている符号化システム１０は、単に一例である。ビデオ符号化の技術は、任意のデジタルビデオ符号化及び／又は復号デバイスによって実行されてよい。本開示の技術は、一般にビデオ符号化デバイスによって実行されるが、この技術は、典型的には「コーデック」と称されるビデオエンコーダ／デコーダによって実行されてもよい。さらに、本開示の技術は、ビデオプリプロセッサによって実行されてもよい。ビデオエンコーダ及び／又はデコーダは、グラフィック処理ユニット（ＧＰＵ）又は同様のデバイスとしてよい。
【００５４】
ソースデバイス１２及びデスティネーションデバイス１４は、ソースデバイス１２がデスティネーションデバイス１４に送信するための符号化ビデオデータを生成するような符号化デバイスの単に例である。一部の例において、ソースデバイス１２及びデスティネーションデバイス１４は、ソースデバイス１２及びデスティネーションデバイス１４のそれぞれがビデオ符号化及び復号コンポーネントを含むように実質的に対称に動作してよい。したがって、符号化システム１０は、例えば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、又はビデオテレフォニーのための、ビデオデバイス１２、１４間での一方向又は双方向ビデオ送信をサポートしてよい。
【００５５】
ソースデバイス１２のビデオソース１８は、ビデオカメラ、これまでに捕捉されたビデオを含むビデオアーカイブ、及び／又は、ビデオコンテンツプロバイダからビデオを受信するためのビデオ供給インタフェース等のビデオ捕捉デバイスを含んでよい。さらなる代替物として、ビデオソース１８は、ソースビデオとしてのコンピュータグラフィックベースデータ、又は、ライブビデオ、アーカイブビデオ、及びコンピュータ生成ビデオの組み合わせを生成してよい。
【００５６】
一部の事例において、ビデオソース１８がビデオカメラである場合、ソースデバイス１２及びデスティネーションデバイス１４は、いわゆるカメラ電話又はビデオ電話を形成してよい。しかしながら、上記で言及したように、本開示で説明される技術は、ビデオ符号化に一般に適用可能であり得、無線及び／又は有線用途に適用され得る。各事例において、捕捉された、事前に捕捉された、又はコンピュータ生成されたビデオは、ビデオエンコーダ２０によって符号化されてよい。次に、符号化ビデオ情報が、出力インタフェース２２によってコンピュータ可読媒体１６上に出力されてよい。
【００５７】
コンピュータ可読媒体１６は、無線ブロードキャスト若しくは有線ネットワーク送信等の一時的媒体、又は、ハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、ブルーレイ（登録商標）ディスク等の記憶媒体（すなわち、非一時的記憶媒体）、又は他のコンピュータ可読媒体を含んでよい。一部の例において、ネットワークサーバ（図示せず）は、ソースデバイス１２から符号化ビデオデータを受信し、その符号化ビデオデータを、例えばネットワーク送信を介して、デスティネーションデバイス１４に提供してよい。同様に、ディスクプレス加工設備等の媒体生産設備のコンピューティングデバイスは、ソースデバイス１２から符号化ビデオデータを受信し、その符号化ビデオデータを含むディスクを生産してよい。したがって、コンピュータ可読媒体１６は、様々な例において、様々な形態の１つ又は複数のコンピュータ可読媒体を含むものと理解されてよい。
【００５８】
デスティネーションデバイス１４の入力インタフェース２８は、コンピュータ可読媒体１６から情報を受信する。コンピュータ可読媒体１６の情報は、ビデオエンコーダ２０によって定義されるシンタックス情報を含んでよい。このシンタックス情報は、ビデオデコーダ３０によっても用いられ、ブロック及び他の符号化ユニット、例えばピクチャの集合（ＧＯＰ）の特性及び／又は処理を表すシンタックス要素を含む。ディスプレイデバイス３２は、復号済ビデオデータをユーザに表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、又は別のタイプのディスプレイデバイス等の様々なディスプレイデバイスのいずれかを含んでよい。
【００５９】
ビデオエンコーダ２０及びビデオデコーダ３０は、現在開発中の高効率ビデオ符号化（ＨＥＶＣ）規格等のビデオ符号化規格に従って動作してよく、ＨＥＶＣテストモデル（ＨＭ）に準拠してよい。代替的に、ビデオエンコーダ２０及びビデオデコーダ３０は、動画専門家集団（ＭＰＥＧ）‐４、Ｐａｒｔ１０とも別称される国際電気通信連合の電気通信標準化部門（ＩＴＵ‐Ｔ）Ｈ．２６４規格、高度ビデオ符号化（ＡＶＣ）、Ｈ．２６５／ＨＥＶＣ、又はそのような規格の拡張等の他の独自規格又は産業規格に従って動作してよい。しかしながら、本開示の技術は、いかなる特定の符号化規格にも限定されない。ビデオ符号化規格の他の例は、ＭＰＥＧ−２及びＩＴＵ−Ｔ  Ｈ．２６３を含む。図１には示していないが、一部の態様において、ビデオエンコーダ２０及びビデオデコーダ３０は、オーディオエンコーダ及びデコーダとそれぞれ統合されてよく、共通のデータストリーム又は別個のデータストリームにおけるオーディオ及びビデオの両方の符号化を扱うために、適切なマルチプレクサ−デマルチプレクサ（ＭＵＸ−ＤＥＭＵＸ）ユニット、又は他のハードウェア及びソフトウェアを含んでよい。適用可能であれば、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、又は、ユーザデータグラムプロトコル（ＵＤＰ）等の他のプロトコルに準拠してよい。
【００６０】
ビデオエンコーダ２０及びビデオデコーダ３０は、１つ又は複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリートロジック、ソフトウェア、ハードウェア、ファームウェア、又はそれらの任意の組み合わせ等の、様々な好適なエンコーダ回路のいずれかとしてそれぞれ実装されてよい。この技術がソフトウェアにおいて一部実装される場合、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアのための命令を記憶し、本開示の技術を実行するために、１つ又は複数のプロセッサを用いてハードウェアにおいて命令を実行してよい。ビデオエンコーダ２０及びビデオデコーダ３０のそれぞれは、１つ又は複数のエンコーダ又はデコーダに含まれてよく、そのいずれも、それぞれのデバイスにおける複合エンコーダ／デコーダ（コーデック）の一部として組み込まれてよい。ビデオエンコーダ２０及び／又はビデオデコーダ３０を含むデバイスは、集積回路、マイクロプロセッサ、及び／又は携帯電話等の無線通信デバイスを含んでよい。
【００６１】
図２は、ビデオ符号化技術を実装し得るビデオエンコーダ２０の一例を示すブロック図である。ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラ符号化及びインター符号化を実行してよい。イントラ符号化は、所与のビデオフレーム又はピクチャ内のビデオにおける空間冗長性を低減又は除去するのに、空間的予測に依拠する。インター符号化は、ビデオシーケンスの隣接フレーム又はピクチャ内のビデオにおける時間冗長性を低減又は除去するのに、時間的予測に依拠する。イントラモード（Ｉモード）は、複数の空間ベースの符号化モードのいずれかを指してよい。片方向（片予測とも呼ばれる）予測（Ｐモード）又は双予測（ｂｉ−ｐｒｅｄｉｃｔｉｏｎ）（双予測（ｂｉ  ｐｒｅｄｉｃｔｉｏｎ）とも呼ばれる）（Ｂモード）等のインターモードは、複数の時間ベースの符号化モードのいずれかを指してよい。
【００６２】
図２に示されるように、ビデオエンコーダ２０は、符号化されることになる、ビデオフレーム内の現在のビデオブロックを受信する。図２の例において、ビデオエンコーダ２０は、モード選択ユニット４０、基準フレームメモリ６４、加算器５０、変換処理ユニット５２、量子化ユニット５４、及びエントロピー符号化ユニット５６を含む。モード選択ユニット４０は、さらに、動き補償ユニット４４、動き推定ユニット４２、イントラ予測（ｉｎｔｒａ−ｐｒｅｄｉｃｔｉｏｎ）（イントラ予測（ｉｎｔｒａ  ｐｒｅｄｉｃｔｉｏｎ）とも呼ばれる）ユニット４６、及び区画化ユニット４８を含む。ビデオブロック再構成のために、ビデオエンコーダ２０は、逆量子化ユニット５８、逆変換ユニット６０、及び加算器６２も含む。再構成されたビデオからブロックアーチファクトを除去するためにブロック境界をフィルタするように、デブロックフィルタ（図２には示していない）が含まれてもよい。所望であれば、デブロックフィルタは、典型的には加算器６２の出力をフィルタする。デブロックフィルタに加えて、追加のフィルタ（ループ内又はループ後）を用いてもよい。そのようなフィルタは、簡潔さのために示していないが、所望であれば、加算器５０の出力を（ループ内フィルタとして）フィルタしてよい。
【００６３】
符号化処理中、ビデオエンコーダ２０は、符号化されることになるビデオフレーム又はスライスを受信する。フレーム又はスライスは、複数のビデオブロックに分割されてよい。動き推定ユニット４２及び動き補償ユニット４４は、時間的予測を提供するために、１つ又は複数の基準フレームにおける１つ又は複数のブロックに対する、受信したビデオブロックのインター予測符号化を実行する。イントラ予測ユニット４６は、代替的に、空間的予測を提供するために、符号化されることになるブロックと同じフレーム又はスライスにおける１つ又は複数の隣接ブロックに対する、受信したビデオブロックのイントラ予測符号化を実行してよい。ビデオエンコーダ２０は、例えば、ビデオデータの各ブロックのための適切な符号化モードを選択するために、複数の符号化パスを実行してよい。
【００６４】
さらに、区画化ユニット４８は、以前の符号化パスにおける以前の区画化方式の評価に基づいて、ビデオデータのブロックをサブブロックに区画化してよい。例えば、区画化ユニット４８は、最初に、フレーム又はスライスを最大符号化ユニット（ＬＣＵ）に区画化し、レート歪み解析（例えば、レート歪み最適化）に基づいて、ＬＣＵのそれぞれをサブ符号化ユニット（サブＣＵ）に区画化してよい。モード選択ユニット４０は、ＬＣＵのサブＣＵへの区画化を示す、四分木データ構造をさらに生成してよい。四分木のリーフノードＣＵは、１つ又は複数の予測ユニット（ＰＵ）及び１つ又は複数の変換ユニット（ＴＵ）を含んでよい。
【００６５】
本開示は、ＨＥＶＣの文脈におけるＣＵ、ＰＵ、又はＴＵのいずれか、又は他の規格（例えば、Ｈ．２６４／ＡＶＣにおけるそのマクロブロック及びサブブロック）の文脈における同様のデータ構造を指すのに、「ブロック」という用語を使用する。ＣＵは、符号化ノード、符号化ノードに関連付けられるＰＵ及びＴＵを含む。ＣＵのサイズは、符号化ノードのサイズに対応し、形状は正方形である。ＣＵのサイズは、８×８ピクセルから最大６４×６４ピクセル以上のツリーブロックのサイズまでの範囲にあってよい。各ＣＵは、１つ又は複数のＰＵ及び１つ又は複数のＴＵを含んでよい。ＣＵと関連付けられるシンタックスデータは、例えば、ＣＵの１つ又は複数のＰＵへの区画化を表してよい。区画化モードは、ＣＵがスキップ若しくはダイレクトモードで符号化されるか、イントラ予測モードで符号化されるか、又はインター予測（インター予測とも呼ばれる）モードで符号化されるかで異なってよい。ＰＵは、正方形でない形状であるように区画化されてよい。ＣＵと関連付けられるシンタックスデータは、例えば、四分木に従ったＣＵの１つ又は複数のＴＵへの区画化を表してもよい。ＴＵは、正方形の又は正方形でない（例えば、矩形）形状とすることができる。
【００６６】
モード選択ユニット４０は、例えばエラー結果に基づいて、符号化モード、すなわちイントラ符号化モード又はインター符号化モードのうちの１つを選択してよく、結果として得られるイントラ又はインター符号化ブロックを、残存ブロックデータを生成するために加算器５０に提供し、基準フレームとして使用される符号化ブロックを再構成するために加算器６２に提供する。また、モード選択ユニット４０は、動きベクトル、イントラモードインジケータ、区画化情報、及び他のそのようなシンタックス情報等のシンタックス要素をエントロピー符号化ユニット５６に提供する。
【００６７】
動き推定ユニット４２及び動き補償ユニット４４は、高度に統合されてよいが、概念上の目的で別個に示されている。動き推定ユニット４２によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成する処理である。動きベクトルは、例えば、現在のフレーム（又は他の符号化ユニット）内の符号化されている現在のブロックに対する基準フレーム（又は他の符号化ユニット）内の予測ブロックに対する、現在のビデオフレーム又はピクチャ内のビデオブロックのＰＵの変位を示してよい。予測ブロックは、画素差分の観点で符号化されることになるブロックとよく一致することが確認されるブロックであり、これは差分絶対値和（ＳＡＤ）、差分二乗和（ＳＳＤ）、又は他の差分メトリックによって決定され得る。一部の例において、ビデオエンコーダ２０は、基準フレームメモリ６４に記憶されている基準ピクチャのサブ整数ピクセル位置の値を算出してよい。例えば、ビデオエンコーダ２０は、基準ピクチャの１／４画素位置、１／８画素位置、又は他の端数画素位置の値を補間してよい。したがって、動き推定ユニット４２は、全画素位置及び端数画素位置に対して動き探索を実行し、端数画素精度で動きベクトルを出力してよい。
【００６８】
動き推定ユニット４２は、ＰＵの位置と基準ピクチャの予測ブロックの位置とを比較することによって、インター符号化スライスにおけるビデオブロックのＰＵの動きベクトルを算出する。基準ピクチャは、基準フレームメモリ６４に記憶されている１つ又は複数の基準ピクチャをそれぞれ識別する第１の基準ピクチャリスト（リスト０）又は第２の基準ピクチャリスト（リスト１）から選択されてよい。動き推定ユニット４２は、算出された動きベクトルをエントロピー符号化ユニット５６及び動き補償ユニット４４に送信する。
【００６９】
動き補償ユニット４４によって実行される動き補償は、動き推定ユニット４２によって決定された動きベクトルに基づいて予測ブロックをフェッチ又は生成することを伴ってよい。ここでも、動き推定ユニット４２及び動き補償ユニット４４は、一部の例において、機能的に統合されてよい。現在のビデオブロックのＰＵの動きベクトルを受信すると、動き補償ユニット４４は、基準ピクチャリストの１つにおいて動きベクトルが指し示す予測ブロックの位置を特定してよい。加算器５０は、符号化されている現在のビデオブロックのピクセル値から予測ブロックのピクセル値を減算することによって、残存ビデオブロックを形成し、以下で説明されるように画素差分値を形成する。一般的に、動き推定ユニット４２は、ルマコンポーネントに対して動き推定を実行し、動き補償ユニット４４は、クロマコンポーネント及びルマコンポーネントの両方に関してルマコンポーネントに基づいて算出される動きベクトルを使用する。モード選択ユニット４０は、ビデオスライスのビデオブロックの復号の際にビデオデコーダ３０によって用いられるビデオブロック及びビデオスライスと関連付けられるシンタックス要素を生成してもよい。
【００７０】
イントラ予測ユニット４６は、上記で説明したように動き推定ユニット４２及び動き補償ユニット４４によって実行されるインター予測の代わりに、現在のブロックをイントラ予測してよい。特に、イントラ予測ユニット４６は、現在のブロックを符号化するのに使用するようにイントラ予測モードを決定してよい。一部の例において、イントラ予測ユニット４６は、例えば、別個の符号化パス中に、様々なイントラ予測モードを用いて現在のブロックを符号化してよく、イントラ予測ユニット４６（又は一部の例においてモード選択ユニット４０）は、テスト済モードから使用する適切なイントラ予測モードを選択してよい。
【００７１】
例えば、イントラ予測ユニット４６は、様々なテスト済イントラ予測モードのためにレート歪み解析を用いてレート歪み値を算出し、テスト済モードのうちの最良のレート歪み特性を有するイントラ予測モードを選択してよい。レート歪み解析は一般に、符号化ブロックと、符号化ブロックを生成するために符号化された元の符号化されていないブロックとの間の歪み（又は誤差）の量、及び、符号化ブロックを生成するのに用いられたビットレート（すなわちビット数）を決定する。イントラ予測ユニット４６は、どのイントラ予測モードがブロックの最良のレート歪み値を示すかを決定するために、様々な符号化ブロックの歪み及びレートから比率を算出してよい。
【００７２】
また、イントラ予測ユニット４６は、深度モデリングモード（ＤＭＭ）を用いて深度マップの深度ブロックを符号化するように構成されてよい。モード選択ユニット４０は、利用可能なＤＭＭモードが、イントラ予測モード及び例えばレート歪み最適化（ＲＤＯ）を用いる他のＤＭＭモードより良好な符号化結果を生成するか否かを決定してよい。深度マップに対応するテクスチャイメージのためのデータは、基準フレームメモリ６４に記憶されてよい。動き推定ユニット４２及び動き補償ユニット４４は、深度マップの深度ブロックをインター予測するように構成されてもよい。
【００７３】
ブロックについてイントラ予測モード（例えば、従来のイントラ予測モード又はＤＭＭモードの１つ）を選択した後、イントラ予測ユニット４６は、ブロックについて選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット５６に提供してよい。エントロピー符号化ユニット５６は、選択されたイントラ予測モードを示す情報を符号化してよい。ビデオエンコーダ２０は、複数のイントラ予測モードインデックステーブル及び複数の変更されたイントラ予測モードインデックステーブル（コードワードマッピングテーブルとも称される）を含み得る、送信されるビットストリーム構成データに、様々なブロックのための符号化コンテキストの定義と、コンテキストのそれぞれに用いられる、最も妥当なイントラ予測モード、イントラ予測モードインデックステーブル、及び変更されたイントラ予測モードインデックステーブルのインジケーションとを含んでよい。
【００７４】
ビデオエンコーダ２０は、符号化されている元のビデオブロックから、モード選択ユニット４０からの予測データを減算することによって、残存ビデオブロックを形成する。加算器５０は、この減算操作を実行する１つ又は複数のコンポーネントを表す。
【００７５】
変換処理ユニット５２は、離散コサイン変換（ＤＣＴ）又は概念的に同様の変換等の変換を残存ブロックに適用し、残存変換係数値を含むビデオブロックを生成する。変換処理ユニット５２は、ＤＣＴと概念的に同様の他の変換を実行してよい。ウェーブレット変換、整数変換、サブバンド変換、又は他のタイプの変換も用いることができる。
【００７６】
変換処理ユニット５２は、残存ブロックに変換を適用し、残存変換係数のブロックを生成する。変換は、残存情報をピクセル値ドメインから周波数ドメイン等の変換ドメインに変換してよい。変換処理ユニット５２は、結果として得られる変換係数を量子化ユニット５４に送信してよい。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化処理は、係数の一部又は全てと関連付けられるビット深度を低減してよい。量子化の程度は、量子化パラメータを調整することで変更されてよい。一部の例において、量子化ユニット５４は、次に、量子化変換係数を含むマトリクスのスキャンを実行してよい。代替的に、エントロピー符号化ユニット５６は、スキャンを実行してよい。
【００７７】
量子化に続いて、エントロピー符号化ユニット５６は、量子化変換係数をエントロピー符号化する。例えば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長符号化（ＣＡＶＬＣ）、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型２値算術符号化（ＳＢＡＣ）、確率間隔パーティショニングエントロピー（ＰＩＰＥ）符号化、又は別のエントロピー符号化技術を実行してよい。コンテキストベースのエントロピー符号化の場合、コンテキストは、隣接ブロックに基づいてもよい。エントロピー符号化ユニット５６によるエントロピー符号化に続いて、符号化ビットストリームは、別のデバイス（例えば、ビデオデコーダ３０）に送信されるか、又は後で送信若しくは取得されるようにアーカイブされてよい。
【００７８】
逆量子化ユニット５８及び逆変換ユニット６０は、例えば、後で基準ブロックとして用いるために、ピクセルドメインにおける残存ブロックを再構成するようにそれぞれ逆量子化及び逆変換を適用する。動き補償ユニット４４は、基準フレームメモリ６４のフレームのうちの１つの予測ブロックに残存ブロックを加算することによって基準ブロックを算出してよい。動き補償ユニット４４は、動き推定において使用するサブ整数ピクセル値を算出するために、１つ又は複数の補間フィルタを再構成された残存ブロックに適用してもよい。加算器６２は、基準フレームメモリ６４に格納される再構成されたビデオブロックを生成するために、動き補償ユニット４４によって生成された動き補償予測ブロックに再構成された残存ブロックを加算する。再構成されたビデオブロックは、動き推定ユニット４２及び動き補償ユニット４４によって、後続のビデオフレームにおけるブロックをインター符号化するために基準ブロックとして用いられてよい。
【００７９】
図３は、ビデオ符号化技術を実装し得るビデオデコーダ３０の一例を示すブロック図である。図３の例において、ビデオデコーダ３０は、エントロピー復号ユニット７０、動き補償ユニット７２、イントラ予測ユニット７４、逆量子化ユニット７６、逆変換ユニット７８、基準フレームメモリ８２、及び加算器８０を含む。ビデオデコーダ３０は、一部の例において、ビデオエンコーダ２０（図２）に関して説明した符号化パスとは概ね逆の復号パスを実行してよい。動き補償ユニット７２は、エントロピー復号ユニット７０から受信した動きベクトルに基づいて予測データを生成してよく、一方で、イントラ予測ユニット７４は、エントロピー復号ユニット７０から受信したイントラ予測モードインジケータに基づいて予測データを生成してよい。
【００８０】
復号処理中、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化ビデオスライスのビデオブロックを表す符号化ビデオビットストリーム及び関連するシンタックス要素を受信する。ビデオデコーダ３０のエントロピー復号ユニット７０は、量子化された係数、動きベクトル又はイントラ予測モードインジケータ、及び他のシンタックス要素を生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット７０は、動きベクトル及び他のシンタックス要素を動き補償ユニット７２に送る。ビデオデコーダ３０は、ビデオスライスレベル及び／又はビデオブロックレベルでシンタックス要素を受信してよい。
【００８１】
ビデオスライスがイントラ符号化（Ｉ）スライスとして符号化される場合、イントラ予測ユニット７４は、シグナリングされたイントラ予測モード及び現在のフレーム又はピクチャのこれまでに復号されたブロックからのデータに基づいて、現在のビデオスライスのビデオブロックの予測データを生成してよい。ビデオフレームがインター符号化（例えば、Ｂ、Ｐ、又はＧＰＢ）スライスとして符号化される場合、動き補償ユニット７２は、エントロピー復号ユニット７０から受信した動きベクトル及び他のシンタックス要素に基づいて、現在のビデオスライスのビデオブロックの予測ブロックを生成する。予測ブロックは、基準ピクチャリストの１つのうちの基準ピクチャの１つから生成されてよい。ビデオデコーダ３０は、基準フレームメモリ８２に記憶されている基準ピクチャに基づいて、デフォルト構成技術を用いて、基準フレームリスト、すなわちリスト０及びリスト１を構成してよい。
【００８２】
動き補償ユニット７２は、動きベクトル及び他のシンタックス要素をパースすることによって、現在のビデオスライスのビデオブロックの予測情報を決定し、復号されている現在のビデオブロックの予測ブロックを生成するためにその予測情報を使用する。例えば、動き補償ユニット７２は、受信したシンタックス要素の一部を用いて、ビデオスライスのビデオブロックを符号化するのに用いられる予測モード（例えば、イントラ又はインター予測）、インター予測スライスタイプ（例えば、Ｂスライス、Ｐスライス、又はＧＰＢスライス）、スライスのための基準ピクチャリストの１つ又は複数の構成情報、スライスの各インター符号化ビデオブロックの動きベクトル、スライスの各インター符号化ビデオブロックのインター予測ステータス、及び現在のビデオスライスにおけるビデオブロックを復号するための他の情報を決定する。
【００８３】
動き補償ユニット７２は、補間フィルタに基づいて補間を実行してもよい。動き補償ユニット７２は、基準ブロックのサブ整数ピクセルの補間値を算出するために、ビデオブロックの符号化時にビデオエンコーダ２０によって使用されるものとして補間フィルタを使用してよい。この場合、動き補償ユニット７２は、受信したシンタックス要素からビデオエンコーダ２０によって使用される補間フィルタを決定し、予測ブロックを生成するためにその補間フィルタを使用してよい。
【００８４】
深度マップに対応するテクスチャイメージのためのデータは、基準フレームメモリ８２に記憶されてよい。動き補償ユニット７２は、深度マップの深度ブロックをインター予測するように構成されてもよい。
【００８５】
上記に留意しながら、本開示の基本的構想の一部が説明される。
【００８６】
ＰＣＣ  Ｃａｔ２に関して、上記で説明した第１の問題を解決するために、１つの時間インスタンス（例えば、１つのアクセスユニット）に関するデータユニットは、ビットストリームにおいて復号順序で連続的に配置されるべきである。データユニットが一旦ビットストリームにおいて復号順序で連続的に配置されると、各データユニットのタイプの識別によって、正しいデコーダコンポーネントに各データユニットを識別ルーティングすることが可能になる。また、この設計は、動的な点群のジオメトリ及びテクスチャ情報を圧縮するのに既存のビデオコーデックを活用するために、ＰＣＣ  Ｃａｔ２コーデックの背後にある主要な設計の侵害を回避すべきである。
【００８７】
既存のビデオコーデックを活用することを可能にするために、例えばＨＥＶＣを例にとると、ジオメトリ及びテクスチャ情報を別個に圧縮すると同時に１つの単独の自己完結型ＰＣＣ  Ｃａｔ２ビットストリームを得るために、下記の側面が明確に指定されているべきである：（１）ＰＣＣ  Ｃａｔ２ビットストリームからのジオメトリコンポーネントに適合するＨＥＶＣビットストリームの抽出／構成、（２）ＰＣＣ  Ｃａｔ２ビットストリームからのテクスチャコンポーネントに適合するＨＥＶＣビットストリームの抽出／構成、及び（３）ジオメトリ及びテクスチャコンポーネントに適合する抽出されたＨＥＶＣビットストリームのそれぞれの適合点、すなわち、プロファイル、ティア及びレベルのシグナリング／インジケーション。
【００８８】
上記で説明した問題を解決するために、また上記で言及した制約の全てを満すために、本開示は、ＰＣＣ高レベルシンタックスに関する方法の２つの代替セットを提供する。
【００８９】
第１のセットの方法には、ＰＣＣ  Ｃａｔ２のジオメトリ及びテクスチャコンポーネントの符号化に使用できる全てのビデオコーデックに共通の高レベルシンタックスが存在する。このセットの方法は、下記のように要約される。
【００９０】
図４は、ＰＣＣと適合するデータ構造４００を示している。データ構造４００は、エンコーダによって生成され、デコーダによって受信されたビットストリームの一部を表してよい。示されるように、データユニットヘッダ４０４（ＰＣＣ  ＮＡＬユニットヘッダと称される場合がある）が各データユニット４０２（ＰＣＣ  ＮＡＬユニットと称される場合もある）に付加される。１つのデータユニット４０２及び１つのデータユニットヘッダ４０４が図４のデータ構造４００に示されているが、任意の数のデータユニット４０２及びデータユニットヘッダ４０４が実際の用途におけるデータ構造４００に含まれてよい。実際、データ構造４００を含むビットストリームは、それぞれデータユニットヘッダ４０４を含む一連のデータユニット４０２を含んでよい。
【００９１】
データユニットヘッダ４０４は、例えば、１又は２バイトを含んでよい。一実施形態において、各データユニット４０２は、１つのＰＣＣ  ＮＡＬユニットとして形成される。データユニット４０２は、ペイロード４０６を含む。一実施形態において、データユニット４０６は、補足強化情報（ＳＥＩ）メッセージ、シーケンスパラメータセット、ピクチャパラメータセット、スライス情報等を含んでもよい。
【００９２】
一実施形態において、データユニット４０２のペイロード４０６は、ＨＥＶＣユニット又はＡＶＣ  ＮＡＬユニットとしてよい。一実施形態において、ペイロード４０６は、ジオメトリコンポーネント又はテクスチャコンポーネントのデータを含んでよい。一実施形態において、ジオメトリコンポーネントは、点群フレームと関連付けられる１組のデカルト座標である。一実施形態において、テクスチャコンポーネントは、点群フレームの１組のルマサンプル値である。ＨＥＶＣが使用されている場合、データユニット４０２は、ペイロード４０６としてＨＥＶＣ  ＮＡＬユニットを含むＰＣＣ  ＮＡＬユニットと称される場合がある。ＡＶＣが使用されている場合、データユニット４０２は、ペイロード４０６としてＡＶＣ  ＮＡＬユニットを含むＰＣＣ  ＮＡＬユニットと称される場合がある。
【００９３】
一実施形態において、データユニットヘッダ４０４（例えば、ＰＣＣ  ＮＡＬユニットヘッダ）は、以下に要約されるような設計である。
【００９４】
まず、データユニットヘッダ４０４は、タイプインジケータを含む。タイプインジケータは、例えば、５ビットとしてよい。タイプインジケータは、ペイロード４０６に保持されているコンテンツのタイプを指定する。例えば、タイプインジケータは、ペイロード４０６がジオメトリ又はテクスチャ情報を含むと指定してよい。 
【００９５】
一実施形態において、確保されたデータユニット（データユニット４０２と同様であるが後で使用するために確保されている）の一部は、ＰＣＣ  Ｃａｔ１３データユニットに用いられてよい。したがって、本開示の設計は、ＰＣＣ  Ｃａｔ１３にも適用される。そのため、ＰＣＣ  Ｃａｔ２及びＰＣＣ  Ｃａｔ１３を１つのコーデック規格仕様に一体化することが可能である。
【００９６】
上記で述べたように、現在のビットストリームフォーマットは、例えば新たなＮＡＬユニット又はＰＣＣ  ＮＡＬユニットの開始をシグナリングする開始コードパターンのエミュレーションを許容する。開始コードパターンは、例えば、０ｘ０００３としてよい。現在のビットストリームフォーマットが開始コードパターンのエミュレーションを許容するので、開始コードは意図せずシグナリングされ得る。本開示は、この課題を解決するためにＰＣＣ  ＮＡＬユニットシンタックス及びセマンティック（以下を参照されたい）を提供する。本明細書に示されるＰＣＣ  ＮＡＬユニットシンタックス及びセマンティックは、そのコンテンツにかかわらず各ＰＣＣ  ＮＡＬユニットの開始コードエミュレーションの防止を確実にする。したがって、１バイト又は２バイトデータユニットヘッダ４０４の最後のバイト（例えば、それが１バイトであればデータユニットヘッダそのもの）は、０ｘ００に等しくなることが禁止される。
【００９７】
また、フレームヘッダ４０８群（フレームヘッダＮＡＬユニット群とも呼ばれる）は、フレームヘッダパラメータ群を保持するように設計される。また、フレームヘッダＮＡＬユニット群は、例えば、各ジオメトリ又はテクスチャビットストリームのプロファイル及びレベル等の他のグローバル情報のシグナリングを含む。一実施形態において、プロファイルは、指定されたシンタックスのサブセット又は符号化ツールのサブセットである。一実施形態において、レベルは、シンタックス要素及び変数がとり得る値に対する規定された制約のセットである。一実施形態において、ビットストリームのためのプロファイル及びレベルの組み合わせは、ビットストリームの復号のために要求される特定の復号能力を表す。さらに、プロファイル及びレベルが補助情報、占有率マップ、及び点群再構成処理（ジオメトリ、テクスチャ、補助情報、及び占有率マップの復号結果を使用する）の復号に関しても規定される場合、そのプロファイル及びレベルは、フレームヘッダ４０８群においてもシグナリングされる。一実施形態において、ＰＣＣ補助情報は、ＰＣＣ符号化ビットストリームからの点群信号の再構成に使用される、パッチ情報及び点局所再構成情報のような情報を参照する。一実施形態において、ＰＣＣ占有率マップは、３Ｄ空間のどの部分が、テクスチャ値及び他の属性がそこからサンプリングされるオブジェクトによって占有されるかに関する情報を参照する。
【００９８】
以下のシンタックスによって示されるように、異なるタイプのデータユニット４０２（ＰＣＣ  ＮＡＬユニットとも呼ばれる）の順序に対する制約が明確に指定される。また、アクセスユニット４１０（データユニット４０２、データユニットヘッダ４０４等のいくつかを含んでよい）の開始が明確に指定される。
【００９９】
また、各ジオメトリ又はテクスチャビットストリームの抽出／構成のプロセスは、以下に述べられるシンタックス及び／又はセマンティックにおいて明確に指定される。
【０１００】
第２のセットの方法において、異なる全体シンタックスが異なるビデオコーデックに使用される。ジオメトリ及びテクスチャの符号化のためにＨＥＶＣを使用するＰＣＣ  Ｃａｔ２は、ＨＥＶＣに対する修正として指定され、一方で、ジオメトリ及びテクスチャの符号化のためにＡＶＣを使用するＰＣＣ  Ｃａｔ２は、ＡＶＣに対する修正として指定される。このセットの方法は、下記のように要約される。
【０１０１】
ジオメトリ及びテクスチャの符号化のためにＨＥＶＣを使用するＰＣＣ  Ｃａｔ２に関して、ジオメトリ及びテクスチャは、３つの別個の層（例えば、ジオメトリのための２層ｄ０及びｄ１及びテクスチャのための１層）と見なされる。ＳＥＩメッセージ又は新たなタイプのＮＡＬユニットのいずれかが、占有率マップ及び補助情報のために使用される。一方が占有率マップのため、一方が補助情報のための、２つの新たなＳＥＩメッセージが指定される。シーケンスレベルである別のＳＥＩメッセージがフレームヘッダパラメータ群及び他のグローバル情報を保持するために指定される。このＳＥＩメッセージは、第１のセットの方法におけるフレームヘッダ４０８群と同様である。
【０１０２】
ジオメトリ及びテクスチャの符号化のためにＡＶＣを使用するＰＣＣ  Ｃａｔ２に関して、ジオメトリ及びテクスチャは、３つの別個の層（例えば、ジオメトリのための２層ｄ０及びｄ１及びテクスチャのための１層）と見なされる。ＳＥＩメッセージ又は新たなタイプのＮＡＬユニットのいずれかが、占有率マップ及び補助パッチ情報のために使用される。独立して符号化された非ベース層の抽出及び適合点（例えば、プロファイル及びレベル）の単層ビットストリームとしてのシグナリングが指定される。一方が占有率マップのため、一方が補助情報のための、２つの新たなタイプのＳＥＩメッセージが指定される。シーケンスレベルである別のＳＥＩメッセージがフレームヘッダパラメータ群及び他のグローバル情報を保持するために指定される。このＳＥＩメッセージは、第１のセットの方法におけるフレームヘッダ４０８群と同様である。
【０１０３】
上記で述べた第１のセットの方法は、以下に開示される定義、略語、シンタックス、及びセマンティックに基づいて実装できる。具体的には言及されない側面は、最新のＰＣＣ  Ｃａｔ２  ＷＤの場合と同じである。
【０１０４】
下記の定義が適用される。
【０１０５】
ビットストリーム：１つ又は複数のＣＰＳを形成する符号化点群フレーム及び関連するデータの表示を形成する一連のビット。
【０１０６】
バイト：一連のビット値として書き込まれる又は読み取られる場合、左端及び右端のビットがそれぞれ最上位ビット及び最下位ビットを表す一連の８ビット。
【０１０７】
符号化ＰＣＣシーケンス（ＣＰＳ）：復号順序において、ＰＣＣイントラランダムアクセスピクチャ（ＩＲＡＰ）ＡＵと、それに続く、ＰＣＣ  ＩＲＡＰ  ＡＵである任意の後続のＰＣＣ  ＡＵを含まないがそれまでの全ての後続のＰＣＣ  ＡＵを含む、ＰＣＣ  ＩＲＡＰ  ＡＵでないゼロ又はゼロより多いＰＣＣ  ＡＵとを含む、一連のＰＣＣ  ＡＵ。
【０１０８】
復号順序：シンタックス要素が復号処理によって処理される順序。
【０１０９】
復号処理：ビットストリームを読み取り、そこから復号された点群フレームを導出する、本明細書で指定される処理（ＰＣＣ  Ｃａｔ２  ＷＤとも呼ばれる）。
【０１１０】
フレームヘッダＮＡＬユニット群：ＧＯＦ＿ＨＥＡＤＥＲに等しいＰｃｃＮａｌＵｎｉｔＴｙｐｅを有するＰＣＣ  ＮＡＬユニット。
【０１１１】
ＰＣＣ  ＡＵ：指定の分類ルールに従って互いと関連付けられ、復号順序において連続し、１つの特定のプレゼンテーション時間に関する全てのＰＣＣ  ＮＡＬユニットを含む、ＰＣＣ  ＮＡＬユニットのセット。
【０１１２】
ＰＣＣ  ＩＲＡＰ  ＡＵ：フレームヘッダＮＡＬユニット群を含むＰＣＣ  ＡＵ。
【０１１３】
ＰＣＣ  ＮＡＬユニット：従うべきデータのタイプのインジケーションと、必要に応じてエミュレーション防止バイトが入り混ざったＲＢＳＰの形態のそのデータを含むバイトとを含む、シンタックス構造。
【０１１４】
ローバイトシーケンスペイロード（ＲＢＳＰ）：ＰＣＣ  ＮＡＬユニットにカプセル化され、空であるか、又はＲＢＳＰストップビット及びに０に等しいゼロ若しくはゼロより多い後続ビットが続くシンタックス要素を含むデータビットのストリング（ＳＯＤＢ）の形態を有するかのいずれかの、整数の数のバイトを含むシンタックス構造。
【０１１５】
ローバイトシーケンスペイロード（ＲＢＳＰ）ストップビット：ＲＢＳＰの端部から、ＲＢＳＰにおける最後の非ゼロビットであるＲＢＳＰストップビットを検索することによってＲＢＳＰ内の端部の位置を識別できる、ＳＯＤＢの後でＲＢＳＰ内に存在する１に等しいビット。
【０１１６】
ＳＯＤＢ：ＲＢＳＰストップビットの前でＲＢＳＰ内に存在するシンタックス要素を表す一連の複数のビット。ここで、左端ビットが最初で最上位のビットと見なされ、右端ビットが最後で最下位のビットと見なされる。
【０１１７】
シンタックス要素：ビットストリームにおいて表されるデータの要素。
【０１１８】
シンタックス構造：指定順序でビットストリーム内に一緒に存在するゼロ又はゼロより多いシンタックス要素。
【０１１９】
ビデオＡＵ：特定のビデオコーデックごとのアクセスユニット。
【０１２０】
ビデオＮＡＬユニット：ＧＥＯＭＥＴＲＹ＿Ｄ０、ＧＥＯＭＥＴＲＹ＿Ｄ１、又はＴＥＸＴＵＲＥ＿ＮＡＬＵに等しいＰｃｃＮａｌＵｎｉｔＴｙｐｅを有するＰＣＣ  ＮＡＬユニット。
【０１２１】
下記の略語が適用される。
【０１２２】
ＡＵ  アクセスユニット
【０１２３】
ＣＰＳ  符号化ＰＣＣシーケンス
【０１２４】
ＩＲＡＰ  イントラランダムアクセスポイント
【０１２５】
ＮＡＬ  ネットワーク抽象化層
【０１２６】
ＰＣＣ  点群符号化
【０１２７】
ＲＢＳＰ  ローバイトシーケンスペイロード
【０１２８】
ＳＯＤＢ  データビットのストリング
【０１２９】
下記には、シンタックス、セマンティック、及びサブビットストリーム抽出処理を提供する。これに関して、最新のＰＣＣ  Ｃａｔ２  ＷＤの項７．３におけるシンタックスは、下記のものによって置換される。
【０１３０】
ＰＣＣ  ＮＡＬユニットシンタックスが提供される。特に、一般的なＰＣＣ  ＮＡＬユニットシンタックスは下記のとおりである。
【表１】
2021529460.tif 000003
【０１３１】
ＰＣＣ  ＮＡＬユニットヘッダシンタックスは下記のとおりである。
【表２】
2021529460.tif 000004
【０１３２】
ローバイトシーケンスペイロード、トレーリングビット、及びバイトアライメントシンタックスが提供される。特に、フレームＲＢＳＰシンタックス群は下記のとおりである。
【表３】
2021529460.tif 000005
【０１３３】
補助情報フレームＲＢＳＰシンタックスは下記のとおりである。
【表４】
2021529460.tif 000006
【０１３４】
占有率マップフレームＲＢＳＰシンタックスは下記のとおりである。
【表５】
2021529460.tif 000007
【０１３５】
ＨＥＶＣ仕様の項７．３．２．１１におけるＲＢＳＰトレーリングビットシンタックスが適用される。同様に、ＨＥＶＣ仕様の項７．３．２．１２におけるバイトアライメントシンタックスが適用される。ＰＣＣプロファイル及びレベルシンタックスは下記のとおりである。
【表６】
2021529460.tif 000008
【０１３６】
最新のＰＣＣ  Ｃａｔ２  ＷＤの項７．４におけるセマンティックは、下記のもの及びその下位項によって置換される。
【０１３７】
一般的に、シンタックス構造及びこれらの構造内のシンタックス要素と関連付けられるセマンティックは、この下位項に指定される。シンタックス要素のセマンティックが表又は表のセットを用いて指定される場合、表において指定されていないいかなる値も、別途指定されていない限りビットストリームに存在しないものとする。
【０１３８】
ＰＣＣ  ＮＡＬユニットセマンティックが説明される。一般的なＰＣＣ  ＮＡＬユニットセマンティックに関して、ＨＥＶＣ仕様の項７．４．２．１における一般的なＮＡＬユニットセマンティックが適用される。ＰＣＣ  ＮＡＬユニットヘッダセマンティックは、下記のとおりである。
【０１３９】
ｆｏｒｂｉｄｄｅｎ＿ｚｅｒｏ＿ｂｉｔは、０に等しいものとする。
【０１４０】
ｐｃｃ＿ｎｕｈ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿２ｂｉｔｓは、本明細書のこのバージョンに適合するビットストリームにおいて０に等しいものとする。ｐｃｃ＿ｎｕｈ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿２ｂｉｔｓの他の値は、ＩＳＯ／ＩＥＣによる将来の使用のために確保される。デコーダは、ｐｃｃ＿ｎｕｈ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿２ｂｉｔｓの値を無視するものとする。
【０１４１】
ｐｃｃ＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅ＿ｐｌｕｓ１  ｍｉｎｕｓ  １は、表１（下記参照）において指定されるＰＣＣ  ＮＡＬユニットに含まれるＲＢＳＰデータ構造のタイプを指定する変数ＰｃｃＮａｌＵｎｉｔＴｙｐｅの値を指定する。変数ＮａｌＵｎｉｔＴｙｐｅは下記のように指定される。ＰｃｃＮａｌＵｎｉｔＴｙｐｅ＝ｐｃｃ＿ｃａｔｅｇｏｒｙ２＿ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅ＿ｐｌｕｓ１‐１（７−１）
【０１４２】
セマンティックが指定されていない、ＵＮＳＰＥＣ２５．．ＵＮＳＰＥＣ３０の範囲（端値含む）にｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＰＣＣ  ＮＡＬユニットは、本明細書に指定される復号処理に影響を与えないものとする。
【０１４３】
注記１−ＵＮＳＰＥＣ２５．．ＵＮＳＰＥＣ３０の範囲にあるＰＣＣ  ＮＡＬユニットタイプは、用途によって決定されるように使用されてよい。ＰｃｃＮａｌＵｎｉｔＴｙｐｅのこれらの値のための復号処理は、本明細書では指定されない。異なる用途では異なる目的でこれらのＰＣＣ  ＮＡＬユニットタイプが使用され得るので、これらのＰｃｃＮａｌＵｎｉｔＴｙｐｅ値を伴うＰＣＣ  ＮＡＬユニットを生成するエンコーダの設計に、また、これらのＰｃｃＮａｌＵｎｉｔＴｙｐｅ値を伴うＰＣＣ  ＮＡＬユニットのコンテンツを解釈するデコーダの設計に、特別な配慮を払わなければならない。本明細書は、これらの値のいかなる管理も定義しない。これらのＰｃｃＮａｌＵｎｉｔＴｙｐｅ値は、使用の「衝突」（例えば、同じＰｃｃＮａｌＵｎｉｔＴｙｐｅ値に関するＰＣＣ  ＮＡＬユニットコンテンツの意味の異なる定義）が重要でない、又は可能でない、又は管理されている（例えば、制御アプリケーション若しくはトランスポート仕様内で又はビットストリームが分散される環境を制御することによって規定又は管理されている）コンテキストに使用することにのみ好適であり得る。
【０１４４】
ビットストリームの復号ユニットにおけるデータの量を決定するのとは異なる目的で、デコーダは、ＰｃｃＮａｌＵｎｉｔＴｙｐｅの確保された値を使用する全てのＰＣＣ  ＮＡＬユニットのコンテンツを無視（ビットストリームから除去及び破棄）するものとする。
【０１４５】
注記２−この要件は、本明細書に適合する拡張の将来の定義を許容する。表１−ＰＣＣ  ＮＡＬユニットタイプコード
【表７】
2021529460.tif 000009
【０１４６】
注記３−識別されたビデオコーデック（例えば、ＨＥＶＣ又はＡＶＣ）は、各ＣＰＳの１つ目のＰＣＣ  ＡＵに存在するフレームヘッダＮＡＬユニット群に示される。
【０１４７】
ＲＢＳＰ（インフォマティブ）内のＳＯＤＢのカプセル化が提供される。これに関して、ＨＥＶＣ仕様の項７．４．２．３が適用される。
【０１４８】
ＰＣＣ  ＮＡＬユニットの順序並びにＡＵ及びＣＰＳへの関連付けが提供される。一般的に、この項は、ビットストリームにおけるＰＣＣ  ＮＡＬユニットの順序に対する制約を指定する。
【０１４９】
これらの制約に準拠するビットストリームにおけるＰＣＣ  ＮＡＬユニットの任意の順序は、本文書でＰＣＣ  ＮＡＬユニットの復号順序と称される。ビデオＮＡＬユニットではないＰＣＣ  ＮＡＬユニット内で、項７．３におけるシンタックスは、シンタックス要素の復号順序を指定する。ビデオＮＡＬユニット内で、識別されたビデオコーデックの仕様で指定されたシンタックスは、シンタックス要素の復号順序を指定する。デコーダは、ＰＣＣ  ＮＡＬユニット及びそれらのシンタックス要素を復号順序で受信可能である。
【０１５０】
ＰＣＣ  ＮＡＬユニットの順序及びそれらのＰＣＣ  ＡＵへの関連付けが提供される。 
【０１５１】
この項は、ＰＣＣ  ＮＡＬユニットの順序及びそれらのＰＣＣ  ＡＵへの関連付けを指定する。
【０１５２】
ＰＣＣ  ＡＵは、ゼロ又は１つのフレームヘッダＮＡＬユニット群、１つのジオメトリｄ０ビデオＡＵ、１つのジオメトリｄ１ビデオＡＵ、１つの補助情報フレームＮＡＬユニット、１つの占有率マップフレームＮＡＬユニット、及び１つのテクスチャビデオＡＵから列挙された順序で構成される。
【０１５３】
ＮＡＬユニットのビデオＡＵへの関連付け及びビデオＡＵ内でのＮＡＬユニットの順序は、識別されたビデオコーデック、例えばＨＥＶＣ又はＡＶＣの仕様において指定される。識別されたビデオコーデックは、各ＣＰＳの１つ目のＰＣＣ  ＡＵに存在するフレームヘッダＮＡＬユニットに示される。
【０１５４】
各ＣＰＳの１つ目のＰＣＣ  ＡＵは、フレームヘッダＮＡＬユニット群で開始し、各フレームヘッダＮＡＬユニット群は、新たなＰＣＣ  ＡＵの開始を指定する。
【０１５５】
他のＰＣＣ  ＡＵは、ジオメトリｄ０ビデオＡＵの第１のＮＡＬユニットを含むＰＣＣ  ＮＡＬユニットで開始する。換言すれば、ジオメトリｄ０ビデオＡＵの第１のＮＡＬユニットを含むＰＣＣ  ＮＡＬユニットは、フレームヘッダＮＡＬユニット群が先行しない場合、新たなＰＣＣ  ＡＵを開始する。
【０１５６】
ＰＣＣ  ＡＵの順序及びそれらのＣＰＳへの関連付けが提供される。 
【０１５７】
この仕様に適合するビットストリームは、１つ又は複数のＣＰＳから構成される。
【０１５８】
ＣＰＳは、１つ又は複数のＰＣＣ  ＡＵから構成される。ＰＣＣ  ＮＡＬユニットの順序及びそれらのＰＣＣ  ＡＵへの関連付けは、項７．４．２．４．２にて説明される。
【０１５９】
ＣＰＳの１つ目のＰＣＣ  ＡＵは、ＰＣＣ  ＩＲＡＰ  ＡＵである。
【０１６０】
ローバイトシーケンスペイロード、トレーリングビット、及びバイトアライメントセマンティックが提供される。フレームヘッダＲＢＳＰセマンティック群は下記のとおりである。
【０１６１】
ｉｄｅｎｔｉｆｉｅｄ＿ｃｏｄｅｃは、表２に示されるようにジオメトリ及びテクスチャコンポーネントの符号化に使用される識別されたビデオコーデックを指定する。
【表８】
2021529460.tif 000010
【０１６２】
ｆｒａｍｅ＿ｗｉｄｔｈは、ジオメトリ及びテクスチャビデオのピクセルにおけるフレーム幅を示す。これは、ｏｃｃｕｐａｎｃｙＲｅｓｏｌｕｔｉｏｎの倍数であるものとする。
【０１６３】
ｆｒａｍｅ＿ｈｅｉｇｈｔは、ジオメトリ及びテクスチャビデオのピクセルにおけるフレーム高さを示す。これは、ｏｃｃｕｐａｎｃｙＲｅｓｏｌｕｔｉｏｎの倍数であるものとする。
【０１６４】
ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎは、パッチがジオメトリ及びテクスチャビデオにパックされるピクセルにおける水平垂直解像度を示す。これは、ｏｃｃｕｐａｎｃｙＰｒｅｃｉｓｉｏｎの倍数である偶数値であるものとする。
【０１６５】
ｒａｄｉｕｓ＿ｔｏ＿ｓｍｏｏｔｈｉｎｇは、平滑化のためにネイバを検出する半径を示す。ｒａｄｉｕｓ＿ｔｏ＿ｓｍｏｏｔｈｉｎｇの値は、０〜２５５の範囲（端値含む）にあるものとする。
【０１６６】
ｎｅｉｇｈｂｏｒ＿ｃｏｕｎｔ＿ｓｍｏｏｔｈｉｎｇは、平滑化に用いられる最大数のネイバを示す。ｎｅｉｇｈｂｏｒ＿ｃｏｕｎｔ＿ｓｍｏｏｔｈｉｎｇの値は、０〜２５５の範囲（端値含む）にあるものとする。
【０１６７】
ｒａｄｉｕｓ２＿ｂｏｕｎｄａｒｙ＿ｄｅｔｅｃｔｉｏｎは、境界点検出のための半径を示す。ｒａｄｉｕｓ２＿ｂｏｕｎｄａｒｙ＿ｄｅｔｅｃｔｉｏｎの値は、０〜２５５の範囲（端値含む）にあるものとする。
【０１６８】
ｔｈｒｅｓｈｏｌｄ＿ｓｍｏｏｔｈｉｎｇは、平滑化閾値を示す。ｔｈｒｅｓｈｏｌｄ＿ｓｍｏｏｔｈｉｎｇの値は、０〜２５５の範囲（端値含む）にあるものとする。
【０１６９】
ｌｏｓｓｌｅｓｓ＿ｇｅｏｍｅｔｒｙは、ロスレスジオメトリ符号化を示す。１に等しいｌｏｓｓｌｅｓｓ＿ｇｅｏｍｅｔｒｙの値は、点群ジオメトリ情報がロスレスに符号化されたことを示す。０に等しいｌｏｓｓｌｅｓｓ＿ｇｅｏｍｅｔｒｙの値は、点群ジオメトリ情報がロッシーに符号化されたことを示す。
【０１７０】
ｌｏｓｓｌｅｓｓ＿ｔｅｘｔｕｒｅは、ロスレステクスチャ符号化を示す。１に等しいｌｏｓｓｌｅｓｓ＿ｔｅｘｔｕｒｅの値は、点群テクスチャ情報がロスレスに符号化されたことを示す。０に等しいｌｏｓｓｌｅｓｓ＿ｔｅｘｔｕｒｅの値は、点群テクスチャ情報がロッシーに符号化されたことを示す。
【０１７１】
ｎｏ＿ａｔｔｒｉｂｕｔｅｓは、ジオメトリデータと共に属性が符号化されたか否かを示す。 １に等しいｎｏ＿ａｔｔｒｉｂｕｔｅｓの値は、符号化点群ビットストリームがいずれの属性情報も含まないことを示す。０に等しいｎｏ＿ａｔｔｒｉｂｕｔｅｓの値は、符号化点群ビットストリームが属性情報を含むことを示す。
【０１７２】
ｌｏｓｓｌｅｓｓ＿ｇｅｏｍｅｔｒｙ＿４４４は、ジオメトリフレームに４：２：０又は４：４：４ビデオフォーマットを使用するか否かを示す。１に等しいｌｏｓｓｌｅｓｓ＿ｇｅｏｍｅｔｒｙ＿４４４の値は、ジオメトリビデオが４：４：４フォーマットで符号化されたことを示す。０に等しいｌｏｓｓｌｅｓｓ＿ｇｅｏｍｅｔｒｙ＿４４４の値は、ジオメトリビデオが４：２：０フォーマットで符号化されたことを示す。 
【０１７３】
ａｂｓｏｌｕｔｅ＿ｄ１＿ｃｏｄｉｎｇは、投影面に最も近い層とは異なるジオメトリ層がどのように符号化されたかを示す。１に等しいａｂｓｏｌｕｔｅ＿ｄ１＿ｃｏｄｉｎｇは、投影面に最も近い層とは異なるジオメトリ層に関して実際のジオメトリ値が符号化されたことを示す。０に等しいａｂｓｏｌｕｔｅ＿ｄ１＿ｃｏｄｉｎｇは、投影面に最も近い層とは異なるジオメトリ層が差動符号化されたことを示す。
【０１７４】
ｂｉｎ＿ａｒｉｔｈｍｅｔｉｃ＿ｃｏｄｉｎｇは、バイナリ算術符号化が使用されたか否かを示す。１に等しいｂｉｎ＿ａｒｉｔｈｍｅｔｉｃ＿ｃｏｄｉｎｇの値は、バイナリ算術符号化が全てのシンタックス要素に使用されたことを示す。０に等しいｂｉｎ＿ａｒｉｔｈｍｅｔｉｃ＿ｃｏｄｉｎｇの値は、ノンバイナリ算術符号化が一部のシンタックス要素に使用されたことを示す。
【０１７５】
０に等しいｇｏｆ＿ｈｅａｄｅｒ＿ｅｘｔｅｎｓｉｏｎ＿ｆｌａｇは、ｇｏｆ＿ｈｅａｄｅｒ＿ｅｘｔｅｎｓｉｏｎ＿ｄａｔａ＿ｆｌａｇシンタックス要素がフレームヘッダＲＢＳＰシンタックス構造群に存在しないと指定する。１に等しいｇｏｆ＿ｈｅａｄｅｒ＿ｅｘｔｅｎｓｉｏｎ＿ｆｌａｇは、ｇｏｆ＿ｈｅａｄｅｒ＿ｅｘｔｅｎｓｉｏｎ＿ｄａｔａ＿ｆｌａｇシンタックス要素がフレームヘッダＲＢＳＰシンタックス構造群に存在すると指定する。デコーダは、フレームヘッダＮＡＬユニット群におけるｇｏｆ＿ｈｅａｄｅｒ＿ｅｘｔｅｎｓｉｏｎ＿ｆｌａｇの値１に続く全てのデータを無視するものとする。
【０１７６】
ｇｏｆ＿ｈｅａｄｅｒ＿ｅｘｔｅｎｓｉｏｎ＿ｄａｔａ＿ｆｌａｇは、任意の値を有してよい。その存在及び値はデコーダ適合性に影響を与えない。デコーダは、全てのｇｏｆ＿ｈｅａｄｅｒ＿ｅｘｔｅｎｓｉｏｎ＿ｄａｔａ＿ｆｌａｇシンタックス要素を無視するものとする。
【０１７７】
補助情報フレームＲＢＳＰセマンティックが提供される。
【０１７８】
ｐａｔｃｈ＿ｃｏｕｎｔは、ジオメトリ及びテクスチャビデオにおけるパッチ数である。これは０より大きいものとする。
【０１７９】
ｏｃｃｕｐａｎｃｙ＿ｐｒｅｃｉｓｉｏｎは、占有率マップ精度のピクセルにおける水平垂直解像度である。これは、占有率がシグナリングされるサブブロックサイズに対応する。これは、占有率マップのロスレス符号化を実現するために、サイズ１に設定されるべきである。
【０１８０】
ｍａｘ＿ｃａｎｄｉｄａｔｅ＿ｃｏｕｎｔは、パッチ候補リストにおける候補の最大数を指定する。
【０１８１】
ｂｉｔ＿ｃｏｕｎｔ＿ｕ０は、ｐａｔｃｈ＿ｕ０の固定長符号化のためのビット数を指定する。
【０１８２】
ｂｉｔ＿ｃｏｕｎｔ＿ｖ０は、ｐａｔｃｈ＿ｖ０の固定長符号化のためのビット数を指定する。
【０１８３】
ｂｉｔ＿ｃｏｕｎｔ＿ｕ１は、ｐａｔｃｈ＿ｕ１の固定長符号化のためのビット数を指定する。
【０１８４】
ｂｉｔ＿ｃｏｕｎｔ＿ｖ１は、ｐａｔｃｈ＿ｖ１の固定長符号化のためのビット数を指定する。
【０１８５】
ｂｉｔ＿ｃｏｕｎｔ＿ｄ１は、ｐａｔｃｈ＿ｄ１の固定長符号化のためのビット数を指定する。
【０１８６】
ｏｃｃｕｐａｎｃｙ＿ａｕｘ＿ｓｔｒｅａｍ＿ｓｉｚｅは、パッチ情報及び占有率マップの符号化に使用されるバイト数である。
【０１８７】
以下のシンタックス要素は、パッチごとに一度指定される。
【０１８８】
ｐａｔｃｈ＿ｕ０は、パッチ境界ボックスのｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎ×ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎのサイズの左上隅サブブロックのｘ座標を指定する。ｐａｔｃｈ＿ｕ０の値は、０〜ｆｒａｍｅ＿ｗｉｄｔｈ／ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎ−１の範囲（端値含む）にあるものとする。
【０１８９】
ｐａｔｃｈ＿ｖ０は、パッチ境界ボックスのｓｉｚｅ  ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎ×ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎのサイズの左上隅サブブロックのｙ座標を指定する。ｐａｔｃｈ＿ｖ０の値は、０〜ｆｒａｍｅ＿ｈｅｉｇｈｔ／ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎ−１の範囲（端値含む）にあるものとする。
【０１９０】
ｐａｔｃｈ＿ｕ１は、パッチポイントの３Ｄ境界ボックスの最小ｘ座標を指定する。ｐａｔｃｈ＿ｕ１の値は、０〜ｆｒａｍｅ＿ｗｉｄｔｈ‐１の範囲（端値含む）にあるものとする。
【０１９１】
ｐａｔｃｈ＿ｖ１は、パッチポイントの３Ｄ境界ボックスの最小ｙ座標である。ｐａｔｃｈ＿ｖ１の値は、０〜ｆｒａｍｅＨｅｉｇｈｔ‐１の範囲（端値含む）にあるものとする。
【０１９２】
ｐａｔｃｈ＿ｄ１は、パッチの最小深度を指定する。ｐａｔｃｈ＿ｄ１の値は、０〜＜２５５？＞の範囲（端値含む）にあるものとする。
【０１９３】
ｄｅｌｔａ＿ｓｉｚｅ＿ｕ０は、現在のパッチと以前のパッチとの間のパッチ幅の差である。ｄｅｌｔａ＿ｓｉｚｅ＿ｕ０の値は、＜．−６５５３６．？＞〜＜６５５３５？＞の範囲（端値含む）にあるものとする。
【０１９４】
ｄｅｌｔａ＿ｓｉｚｅ＿ｖ０は、現在のパッチと以前のパッチとの間のパッチ高さの差である。ｄｅｌｔａ＿ｓｉｚｅ＿ｖ０の値は、＜−６５５３６？．＞〜＜．６５５３５？．＞の範囲（端値含む）にあるものとする。
【０１９５】
ｎｏｒｍａｌ＿ａｘｉｓは、平面投影インデックスを指定する。ｎｏｒｍａｌ＿ａｘｉｓの値は、０〜２の範囲（端値含む）にあるものとする。０、１、及び２のｎｏｒｍａｌＡｘｉｓ値は、それぞれＸ、Ｙ、及びＺ投影軸に対応する。
【０１９６】
以下のシンタックス要素は、ブロックごとに一度指定される。
【０１９７】
ｃａｎｄｉｄａｔｅ＿ｉｎｄｅｘは、パッチ候補リストへのインデックスである。ｃａｎｄｉｄａｔｅ＿ｉｎｄｅｘの値は、０〜ｍａｘ＿ｃａｎｄｉｄａｔｅ＿ｃｏｕｎｔの範囲（端値含む）にあるものとする。
【０１９８】
ｐａｔｃｈ＿ｉｎｄｅｘは、フレームと関連付けられるサイズの降順でソートされたパッチリストに対するインデックスである。
【０１９９】
フレーム占有率マップセマンティック群が提供される。
【０２００】
以下のシンタックス要素は、空でないブロックのために提供される。
【０２０１】
ｉｓ＿ｆｕｌｌは、ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎ×ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎブロックのサイズの現在の占有ブロックが満杯であるか否かを指定する。１に等しいｉｓ＿ｆｕｌｌは、現在のブロックが満杯であると指定する。０に等しいｉｓ＿ｆｕｌｌは、現在の占有ブロックが満杯でないことを指定する。
【０２０２】
ｂｅｓｔ＿ｔｒａｖｅｒｓａｌ＿ｏｒｄｅｒ＿ｉｎｄｅｘは、現在のｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎ×ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎブロックにおけるｏｃｃｕｐａｎｃｙ＿ｐｒｅｃｉｓｉｏｎ×ｏｃｃｕｐａｎｃｙ＿ｐｒｅｃｉｓｉｏｎのサイズのサブブロックのスキャン順序を指定する。ｂｅｓｔ＿ｔｒａｖｅｒｓａｌ＿ｏｒｄｅｒ＿ｉｎｄｅｘの値は、０〜４の範囲（端値含む）にあるものとする。
【０２０３】
ｒｕｎ＿ｃｏｕｎｔ＿ｐｒｅｆｉｘは、変数ｒｕｎＣｏｕｎｔＭｉｎｕｓＴｗｏの導出に使用される。
【０２０４】
ｒｕｎ＿ｃｏｕｎｔ＿ｓｕｆｆｉｘは、変数ｒｕｎＣｏｕｎｔＭｉｎｕｓＴｗｏの導出に使用される。存在しない場合、ｒｕｎ＿ｃｏｕｎｔ＿ｓｕｆｆｉｘの値が０に等しいと推定される。
【０２０５】
特定のブロックのためのｂｌｏｃｋＴｏＰａｔｃｈの値が０に等しくなく、ブロックが満杯でない場合、ｒｕｎＣｏｕｎｔＭｉｎｕｓＴｗｏ  ｐｌｕｓ  ２はブロックのためにシグナリングされたランの数を表す。ｒｕｎＣｏｕｎｔＭｉｎｕｓＴｗｏの値は、０〜（ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎ＊ｏｃｃｕｐａｎｃｙ＿ｒｅｓｏｌｕｔｉｏｎ）‐１の範囲（端値含む）にあるものとする。
【０２０６】
ｒｕｎＣｏｕｎｔＭｉｎｕｓＴｗｏは、下記のように導出される。
ｒｕｎＣｏｕｎｔＭｉｎｕｓＴｗｏ＝（１＜＜ｒｕｎ＿ｃｏｕｎｔ＿ｐｒｅｆｉｘ）‐１＋ｒｕｎ＿ｃｏｕｎｔ＿ｓｕｆｆｉｘ（７−８５）
【０２０７】
ｏｃｃｕｐａｎｃｙは、（ｏｃｃｕｐａｎｃｙＰｒｅｃｉｓｉｏｎ×ｏｃｃｕｐａｎｃｙＰｒｅｃｉｓｉｏｎピクセルの）第１のサブブロックの占有率値を指定する。０に等しいｏｃｃｕｐａｎｃｙは、第１のサブブロックが空であると指定する。１に等しいｏｃｃｕｐａｎｃｙは、第１のサブブロックが占有されていると指定する。 
【０２０８】
ｒｕｎ＿ｌｅｎｇｔｈ＿ｉｄｘは、ラン長のインジケーションである。ｒｕｎＬｅｎｇｔｈＩｄｘの値は、０〜１４の範囲（端値含む）にあるものとする。
【０２０９】
変数ｒｕｎＬｅｎｇｔｈは、表３を用いてｒｕｎ＿ｌｅｎｇｔｈ＿ｉｄｘから導出される。
【表９】
2021529460.tif 000011
【０２１０】
注記−占有率マップは、ジオメトリ及びテクスチャビデオの両方で共有される。
【０２１１】
ＨＥＶＣ仕様の項７．４．３．１１におけるＲＢＳＰトレーリングビットセマンティックが適用される。ＨＥＶＣ仕様の項７．４．３．１２におけるバイトアライメントセマンティックもまた適用される。ＰＣＣプロファイル及びレベルセマンティックは下記のとおりである。
【０２１２】
ｐｃｃ＿ｐｒｏｆｉｌｅ＿ｉｄｃは、ＣＰＳが付録Ａに指定されるように準拠するプロファイルを示す。ビットストリームは、付録Ａに指定されるものとは異なるｐｃｃ＿ｐｒｏｆｉｌｅ＿ｉｄｃの値を含まないものとする。ｐｃｃ＿ｐｒｏｆｉｌｅ＿ｉｄｃの他の値がＩＳＯ／ＩＥＣによる将来の使用のために確保される。
【０２１３】
ｐｃｃ＿ｐｌ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿１９ｂｉｔｓは、本明細書のこのバージョンに適合するビットストリームにおいて０に等しいものとする。ｐｃｃ＿ｐｌ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿１９ｂｉｔｓの他の値がＩＳＯ／ＩＥＣによる将来の使用のために確保される。デコーダは、ｐｃｃ＿ｐｌ＿ｒｅｓｅｒｖｅｄ＿ｚｅｒｏ＿１９ｂｉｔｓの値を無視するものとする。
【０２１４】
ｐｃｃ＿ｌｅｖｅｌ＿ｉｄｃは、ＣＰＳが付録Ａに指定されるように準拠するレベルを示す。ビットストリームは、付録Ａに指定されるものとは異なるｐｃｃ＿ｌｅｖｅｌ＿ｉｄｃの値を含まないものとする。ｐｃｃ＿ｌｅｖｅｌ＿ｉｄｃの他の値がＩＳＯ／ＩＥＣによる将来の使用のために確保される。
【０２１５】
ｈｅｖｃ＿ｐｔｌ＿１２ｂｙｔｅｓ＿ｇｅｏｍｅｔｒｙは、項１０に指定されるように抽出されたジオメトリＨＥＶＣビットストリームが適合するＨＥＶＣデコーダによって復号される場合、アクティブＳＰＳにおいてｇｅｎｅｒａｌ＿ｐｒｏｆｉｌｅ＿ｉｄｃからｇｅｎｅｒａｌ＿ｌｅｖｅｌ＿ｉｄｃまでの（端値含む）１２バイトの値に等しいものとする。
【０２１６】
ｈｅｖｃ＿ｐｔｌ＿１２ｂｙｔｅｓ＿ｔｅｘｔｕｒｅは、項１０に指定されるように抽出されたテクスチャＨＥＶＣビットストリームが適合するＨＥＶＣデコーダによって復号される場合、アクティブＳＰＳにおいてｇｅｎｅｒａｌ＿ｐｒｏｆｉｌｅ＿ｉｄｃからｇｅｎｅｒａｌ＿ｌｅｖｅｌ＿ｉｄｃまでの（端値含む）１２バイトの値に等しいものとする。
【０２１７】
ａｖｃ＿ｐｌ＿３ｂｙｔｅｓ＿ｇｅｏｍｅｔｒｙは、項１０に指定されるように抽出されたジオメトリＡＶＣビットストリームが適合するＡＶＣデコーダによって復号される場合、アクティブＳＰＳにおいてｐｒｏｆｉｌｅ＿ｉｄｃからｌｅｖｅｌ＿ｉｄｃまでの（端値含む）３バイトの値に等しいものとする。
【０２１８】
ａｖｃ＿ｐｌ＿３ｂｙｔｅｓ＿ｔｅｘｔｕｒｅは、項１０に指定されるように抽出されたテクスチャＡＶＣビットストリームが適合するＡＶＣデコーダによって復号される場合、アクティブＳＰＳにおいてｐｒｏｆｉｌｅ＿ｉｄｃからｌｅｖｅｌ＿ｉｄｃまでの（端値含む）３バイトの値に等しいものとする。
【０２１９】
最新のＰＣＣ  Ｃａｔ２  ＷＤの項１０４におけるサブビットストリーム抽出処理は、下記によって置換される。サブビットストリーム抽出処理に関して、入力はビットストリーム、すなわち、ジオメトリｄ０、ジオメトリｄ１、又はテクスチャコンポーネントのターゲットビデオコンポーネントインジケーションである。この処理の出力はサブビットストリームである。
【０２２０】
一実施形態において、適合するＰＣＣビットストリーム及びターゲットビデオコンポーネントインジケーションの任意の値を伴うこの項で指定された処理の出力である任意の出力サブビットストリームが、識別されたビデオコーデックごとに適合するビデオビットストリームであるものとすることは、入力ビットストリームに関するビットストリーム適合性の要件である。
【０２２１】
出力サブビットストリームは、下記の順序付けられたステップによって導出される。
【０２２２】
ターゲットビデオコンポーネントインジケーションの値に応じて下記が適用される。
【０２２３】
ジオメトリｄ０コンポーネントが指示される場合、ＧＥＯＭＥＴＲＹ＿Ｄ０に等しくないＰｃｃＮａｌＵｎｉｔＴｙｐｅを伴う全てのＰＣＣ  ＮＡＬユニットを除去する。
【０２２４】
そうでなければ、ジオメトリｄ１コンポーネントが指示される場合、ＧＥＯＭＥＴＲＹ＿Ｄ１に等しくないＰｃｃＮａｌＵｎｉｔＴｙｐｅを伴う全てのＰＣＣ  ＮＡＬユニットを除去する。
【０２２５】
そうでなければ（テクスチャコンポーネントが示される場合）、ＴＥＸＴＵＲＥ＿ＮＡＬＵに等しくないＰｃｃＮａｌＵｎｉｔＴｙｐｅを伴う全てのＰＣＣ  ＮＡＬユニットを除去する。
【０２２６】
各ＰＣＣ  ＮＡＬユニットに関して、１つ目のバイトを除去する。
【０２２７】
別の実施形態が以下に提供される。
【０２２８】
上記で要約した第１のセットの方法の別の実施形態において、ＰＣＣ  ＮＡＬユニットヘッダ（例えば、図４のデータユニットヘッダ４０４）は、ジオメトリ及びテクスチャコンポーネントの符号化に用いられたコーデックをＰＣＣ  ＮＡＬユニットタイプから推定できるように設計される。例えば、ＰＣＣ  ＮＡＬユニットヘッダは、以下に要約されるように設計される。
【０２２９】
ＰＣＣ  ＮＡＬユニットヘッダには、ＰＣＣ  ＮＡＬユニットペイロードに保持されているコンテンツのタイプを指定するタイプインジケータ、例えば７ビットが存在する。タイプは、例えば、下記に従って決定される。
【０２３０】
０：ペイロードはＨＥＶＣ  ＮＡＬユニットを含む
【０２３１】
１：ペイロードはＡＶＣ  ＮＡＬユニットを含む
【０２３２】
２．．６３：確保済
【０２３３】
６４：フレームヘッダＮＡＬユニット群
【０２３４】
６５：補助情報ＮＡＬユニット
【０２３５】
６６：占有率マップＮＡＬユニット
【０２３６】
６７．．１２６：確保済
【０２３７】
０〜６３の範囲（端値含む）のＰＣＣ  ＮＡＬユニットタイプを伴うＰＣＣ  ＮＡＬユニットは、ビデオＮＡＬユニットと称される。
【０２３８】
ＰＣＣ  Ｃａｔ１３データユニットのために確保済ＰＣＣ  ＮＡＬユニットタイプの一部を使用し、そうして、ＰＣＣ  Ｃａｔ２及びＰＣＣ  Ｃａｔ１３を１つの規格仕様に一体化することが可能である。
【０２３９】
図５は、ビデオデコーダ（例えば、ビデオデコーダ３０）によって実装される点群符号化の方法５００の一実施形態である。方法５００は、点群符号化に関連する前述の問題の１つ又は複数を解決するために実行され得る。
【０２４０】
ブロック５０２にて、データユニットヘッダ（例えば、データユニットヘッダ４０４）及びデータユニット（例えば、データユニット４０２）を含む符号化ビットストリーム（例えば、データ構造４００）が受信される。データユニットヘッダは、データユニットのペイロード（例えば、ペイロード４０６）に保持されているコンテンツのタイプを指定するタイプインジケータを含む。
【０２４１】
ブロック５０４にて、符号化ビットストリームが復号される。復号されたビットストリームは、ディスプレイデバイス上でユーザに表示されるイメージ又はビデオを生成するために使用されてよい。
【０２４２】
一実施形態において、データユニットヘッダは、ＰＣＣネットワーク抽象化層（ＮＡＬ）ユニットヘッダである。一実施形態において、データユニットは、ＰＣＣ  ＮＡＬユニットである。一実施形態において、インジケータは、上記コンテンツのタイプがジオメトリコンポーネントであると指定する。一実施形態において、インジケータは、上記コンテンツのタイプがテクスチャコンポーネントであると指定する。一実施形態において、インジケータは、上記コンテンツのタイプがジオメトリコンポーネント又はテクスチャコンポーネントであると指定する。
【０２４３】
一実施形態において、インジケータは、上記コンテンツのタイプが補助情報であると指定する。一実施形態において、インジケータは、上記コンテンツのタイプが占有率マップであると指定する。
【０２４４】
一実施形態において、ペイロードは、高効率ビデオ符号化（ＨＥＶＣ）ＮＡＬユニットを含む。一実施形態において、ペイロードは、高度ビデオ符号化（ＡＶＣ）ＮＡＬユニットを含む。一実施形態において、タイプインジケータは、５ビット又は７ビットを含む。
【０２４５】
図６は、ビデオエンコーダ（例えば、ビデオエンコーダ２０）によって実装される点群符号化の方法６００の一実施形態である。方法６００は、点群符号化に関連する前述の問題の１つ又は複数を解決するために実行され得る。
【０２４６】
ブロック６０２にて、データユニットヘッダ（例えば、データユニットヘッダ４０４）及びデータユニット（例えば、データユニット４０２）を含む符号化ビットストリーム（例えば、データ構造４００）が生成される。データユニットヘッダは、データユニットのペイロード（例えば、ペイロード４０６）に保持されているコンテンツのタイプを指定するタイプインジケータを含む。
【０２４７】
ブロック６０４にて、符号化ビットストリームは、デコーダ（例えば、ビデオデコーダ３０）に向けて送信される。一旦デコーダによって受信されると、符号化ビットストリームは、ディスプレイデバイス上でユーザに表示されるイメージ又はビデオを生成するために復号されてよい。
【０２４８】
一実施形態において、データユニットヘッダは、ＰＣＣネットワーク抽象化層（ＮＡＬ）ユニットヘッダである。一実施形態において、データユニットは、ＰＣＣ  ＮＡＬユニットである。一実施形態において、インジケータは、上記コンテンツのタイプがジオメトリコンポーネントであると指定する。一実施形態において、インジケータは、上記コンテンツのタイプがテクスチャコンポーネントであると指定する。一実施形態において、インジケータは、上記コンテンツのタイプがジオメトリコンポーネント又はテクスチャコンポーネントであると指定する。
【０２４９】
一実施形態において、インジケータは、上記コンテンツのタイプが補助情報であると指定する。一実施形態において、インジケータは、上記コンテンツのタイプが占有率マップであると指定する。
【０２５０】
一実施形態において、ペイロードは、高効率ビデオ符号化（ＨＥＶＣ）ＮＡＬユニットを含む。一実施形態において、ペイロードは、高度ビデオ符号化（ＡＶＣ）ＮＡＬユニットを含む。一実施形態において、タイプインジケータは、５ビット又は７ビットを含む。
【０２５１】
図７は、本開示の一実施形態に係るビデオ符号化デバイス７００（例えば、ビデオコーダ２０、ビデオデコーダ３０等）の概略図である。ビデオ符号化デバイス７００は、本明細書に開示される方法及び処理を実装するのに好適である。ビデオ符号化デバイス７００は、データを受信するための入口ポート７１０及び受信器ユニット（ＲＸ）７２０、プロセッサ、ロジックユニット、又はデータを処理する中央処理ユニット（ＣＰＵ）７３０、データを送信するための送信器ユニット（Ｔｘ）７４０及び出口ポート７５０、並びにデータを記憶するためのメモリ７６０を備える。ビデオ符号化デバイス７００は、光又は電気信号の出力又は入力のために、入口ポート７１０、受信器ユニット７２０、送信器ユニット７４０、及び出口ポート７５０に連結されている光／電気（ＯＥ）コンポーネント及び電気／光（ＥＯ）コンポーネントを備えてもよい。
【０２５２】
プロセッサ７３０は、ハードウェア及びソフトウェアによって実装される。プロセッサ７３０は、１つ又は複数のＣＰＵチップ、コア（例えば、マルチコアプロセッサとして）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、及びデジタル信号プロセッサ（ＤＳＰ）として実装され得る。プロセッサ７３０は、入口ポート７１０、受信器ユニット７２０、送信器ユニット７４０、出口ポート７５０、及びメモリ７６０と通信する。プロセッサ７３０は、符号化モジュール７７０を含む。符号化モジュール７７０は、上記で説明され開示された実施形態を実装する。したがって、符号化モジュール７７０を含むことは、符号化デバイス７００の機能性にかなりの改善を提供し、ビデオ符号化デバイス７００を異なる状態に変化させる。代替的に、符号化モジュール７７０は、メモリ７６０に記憶されている命令として実装され、プロセッサ７３０によって実行される。
【０２５３】
ビデオ符号化デバイス７００は、データをユーザに対して通信する入力及び／又は出力（Ｉ／Ｏ）デバイス７８０を備えてもよい。Ｉ／Ｏデバイス７８０は、ビデオデータを表示するディスプレイ、オーディオデータを出力するスピーカ等のような出力デバイスを含んでよい。Ｉ／Ｏデバイス７８０は、キーボード、マウス、トラックボール等のような入力デバイス、及び／又は、そのような出力デバイスとインタラクトするための対応するインタフェースを含んでもよい。 
【０２５４】
メモリ７６０は、１つ又は複数のディスク、テープドライブ、及びソリッドステートドライブを含み、プログラムが実行のために選択されるときにそのようなプログラムを記憶するために、並びに、プログラム実行中に読み出される命令及びデータを記憶するために、オーバフローデータストレージデバイスとして使用され得る。メモリ７６０は、揮発性及び不揮発性としてよく、リードオンリメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、三値連想メモリ（ＴＣＡＭ）、及びスタティックランダムアクセスメモリ（ＳＲＡＭ）としてよい。
【０２５５】
図８は、符号化手段８００の一実施形態の概略図である。実施形態において、符号化手段８００は、ビデオ符号化デバイス８０２（例えば、ビデオエンコーダ２０又はビデオデコーダ３０）に実装される。ビデオ符号化デバイス８０２は、受信手段８０１を含む。受信手段８０１は、符号化するピクチャを受信するように又は復号するビットストリームを受信するように構成されている。ビデオ符号化デバイス８０２は、受信手段８０１に連結されている送信手段８０７を含む。送信手段８０７は、ビットストリームをデコーダに送信するように又は復号されたイメージを表示手段（例えば、Ｉ／Ｏデバイス７８０の１つ）に送信するように構成されている。
【０２５６】
ビデオ符号化デバイス８０２は、記憶手段８０３を含む。記憶手段８０３は、受信手段８０１又は送信手段８０７の少なくとも１つに連結されている。記憶手段８０３は、命令を記憶するように構成されている。ビデオ符号化デバイス８０２は、処理手段８０５も含む。処理手段８０５は、記憶手段８０３に連結されている。処理手段８０５は、本明細書に開示された方法を実行するために、記憶手段８０３に記憶されている命令を実行するように構成されている。
【０２５７】
本開示においていくつかの実施形態が提供されたが、開示されたシステム及び方法は、本開示の趣旨又は範囲から逸脱することなく、他の多数の具体的な形態で具現され得ることが理解され得る。本例は、限定的なものではなく、例示的なものと見なされるべきであり、本明細書に提供される詳細に限定することは意図していない。例えば、様々な要素又はコンポーネントが別のシステム内において組み合わされ得るか、若しくは、統合され得る。又は、特定の特徴は省略され得るか、若しくは、実装されないことがあり得る。
【０２５８】
加えて、様々な実施形態において、個別又は別個のものとして説明及び示される技術、システム、サブシステム、及び方法は、本開示の範囲を逸脱することなく、他のシステム、コンポーネント、技術、又は方法と組み合わされ得るか、又は統合され得る。変更、置換、及び修正の他の例は、当業者によって確認可能であり、それらは、本明細書において開示される趣旨及び範囲から逸脱することなく行われ得る。（項目１）  ビデオデコーダによって実装される点群符号化（ＰＣＣ）の方法であって、
データユニットヘッダ及びデータユニットを含む符号化ビットストリームを受信する段階であって、上記データユニットヘッダは、上記データユニットのペイロードに保持されているコンテンツのタイプを指定するタイプインジケータを含む、段階と、
上記符号化ビットストリームを復号する段階と、
を含む、方法。（項目２）  ビデオエンコーダによって実装される点群符号化（ＰＣＣ）の方法であって、
データユニットヘッダ及びデータユニットを含む符号化ビットストリームを生成する段階であって、上記データユニットヘッダは、上記データユニットのペイロードに保持されているコンテンツのタイプを指定するタイプインジケータを含む、段階と、
デコーダに向けて上記符号化ビットストリームを送信する段階と、
を含む、方法。（項目３）  上記データユニットヘッダは、ＰＣＣネットワーク抽象化層（ＮＡＬ）ユニットヘッダである、項目１〜２のいずれかの方法。（項目４）  上記データユニットは、ＰＣＣ  ＮＡＬユニットである、項目１〜２のいずれかの方法。（項目５）  上記タイプインジケータは、上記コンテンツのタイプがジオメトリコンポーネントであると指定する、項目１〜４いずれかの方法。（項目６）  上記タイプインジケータは、上記コンテンツのタイプがテクスチャコンポーネントであると指定する、項目１〜４のいずれかの方法。（項目７）  上記タイプインジケータは、上記コンテンツのタイプがジオメトリコンポーネント又はテクスチャコンポーネントであると指定する、項目１〜４のいずれかの方法。（項目８）  上記タイプインジケータは、上記コンテンツのタイプが補助情報であると指定する、項目１〜７のいずれかの方法。（項目９）  上記タイプインジケータは、上記コンテンツのタイプが占有率マップであると指定する、項目１〜８のいずれかの方法。（項目１０）  上記ペイロードは、高効率ビデオ符号化（ＨＥＶＣ）ＮＡＬユニットを含む、項目１〜９のいずれかの方法。（項目１１）  上記ペイロードは、高度ビデオ符号化（ＡＶＣ）ＮＡＬユニットを含む、項目１〜９のいずれかの方法。（項目１２）  上記タイプインジケータは５ビットを含む、項目１〜１１のいずれかの方法。（項目１３）  上記タイプインジケータは７ビットを含む、項目１〜１１のいずれかの方法。（項目１４）  上記ジオメトリコンポーネントは、点群フレームと関連付けられる１組の座標を含む、項目１〜５及び７のいずれかの方法。（項目１５）  上記１組の座標はデカルト座標である、項目１４の方法。（項目１６）  上記テクスチャコンポーネントは、点群フレームの１組のルマサンプル値を含む、項目１〜４及び６〜７のいずれかの方法。（項目１７）  符号化するピクチャを受信するように又は復号するビットストリームを受信するように構成されている受信機と、
上記受信機に連結されている送信器であって、上記ビットストリームをデコーダに送信するように又は復号されたイメージをディスプレイに送信するように構成されている送信器と、
上記受信機又は上記送信器の少なくとも１つに連結されているメモリであって、命令を格納するように構成されているメモリと、
上記メモリに連結されているプロセッサであって、項目１〜１６のいずれかに記載の方法を実行するために上記メモリに記憶されている上記命令を実行するように構成されているプロセッサと、
を備える、符号化装置。（項目１８）  イメージを表示するように構成されているディスプレイをさらに備える、項目１７の符号化装置。（項目１９）  エンコーダと、
上記エンコーダと通信するデコーダと、
を備え、上記エンコーダ又は上記デコーダは、項目１７〜１８のいずれかの符号化装置を含む、システム。（項目２０）  符号化するピクチャを受信するように又は復号するビットストリームを受信するように構成されている受信手段と、
上記受信手段に連結されている送信手段であって、上記ビットストリームをデコーダに送信するように又は復号されたイメージを表示手段に送信するように構成されている送信手段と、
上記受信手段又は上記送信手段の少なくとも１つに連結されている記憶手段であって、命令を記憶するように構成されている記憶手段と、
上記記憶手段に連結されている処理手段であって、項目１〜１６のいずれかの方法を実行するために上記記憶手段に記憶されている上記命令を実行するように構成されている処理手段と、
を備える、符号化手段。
【図１】
2021529460.tif 000012
【図２】
2021529460.tif 000013
【図３】
2021529460.tif 000014
【図４】
2021529460.tif 000015
【図５】
2021529460.tif 000016
【図６】
2021529460.tif 000017
【図７】
2021529460.tif 000018
【図８】
2021529460.tif 000019
【国際調査報告】
2021529460.tif 000020
2021529460.tif 000021