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

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

▶ 華為技術有限公司の特許一覧

特許7402884点群コーディングにおける効率的なパッチ回転
<>
  • 特許-点群コーディングにおける効率的なパッチ回転 図1
  • 特許-点群コーディングにおける効率的なパッチ回転 図2
  • 特許-点群コーディングにおける効率的なパッチ回転 図3
  • 特許-点群コーディングにおける効率的なパッチ回転 図4
  • 特許-点群コーディングにおける効率的なパッチ回転 図5
  • 特許-点群コーディングにおける効率的なパッチ回転 図6
  • 特許-点群コーディングにおける効率的なパッチ回転 図7
  • 特許-点群コーディングにおける効率的なパッチ回転 図8
  • 特許-点群コーディングにおける効率的なパッチ回転 図9
  • 特許-点群コーディングにおける効率的なパッチ回転 図10
  • 特許-点群コーディングにおける効率的なパッチ回転 図11
  • 特許-点群コーディングにおける効率的なパッチ回転 図12
  • 特許-点群コーディングにおける効率的なパッチ回転 図13
  • 特許-点群コーディングにおける効率的なパッチ回転 図14
  • 特許-点群コーディングにおける効率的なパッチ回転 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-13
(45)【発行日】2023-12-21
(54)【発明の名称】点群コーディングにおける効率的なパッチ回転
(51)【国際特許分類】
   H04N 19/70 20140101AFI20231214BHJP
   H04N 19/597 20140101ALI20231214BHJP
   H04N 19/85 20140101ALI20231214BHJP
【FI】
H04N19/70
H04N19/597
H04N19/85
【請求項の数】 32
(21)【出願番号】P 2021540599
(86)(22)【出願日】2020-01-13
(65)【公表番号】
(43)【公表日】2022-03-04
(86)【国際出願番号】 US2020013348
(87)【国際公開番号】W WO2020150148
(87)【国際公開日】2020-07-23
【審査請求日】2021-09-08
(31)【優先権主張番号】62/792,259
(32)【優先日】2019-01-14
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】503433420
【氏名又は名称】華為技術有限公司
【氏名又は名称原語表記】HUAWEI TECHNOLOGIES CO.,LTD.
【住所又は居所原語表記】Huawei Administration Building, Bantian, Longgang District, Shenzhen, Guangdong 518129, P.R. China
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ザハルチェンコ,ブラディスラフ
(72)【発明者】
【氏名】ジャン,ディジョン
(72)【発明者】
【氏名】ツァイ,カンイン
(72)【発明者】
【氏名】チェン,ジェンレェ
【審査官】鉢呂 健
(56)【参考文献】
【文献】国際公開第2020/065419(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00ー19/85
(57)【特許請求の範囲】
【請求項1】
復号化器によって実施される点群コーディング(PCC)の方法であって、
前記復号化器により、2次元(2D)パッチについて制限回転イネーブルフラグを含むビットストリームを受信するステップと、
前記復号化器により、前記制限回転イネーブルフラグに基づいて、前記2Dパッチの回転モードを決定するステップであって、前記回転モードは、前記制限回転イネーブルフラグが第1の値を有するときに、第1のパッチ配向インデックスにより指示される網羅的な配向モードであり、前記回転モードは、前記制限回転イネーブルフラグが第2の値を有するときに、第2のパッチ配向インデックスにより指示される単純な配向モードである、ステップと、
前記復号化器により、前記回転モードに基づいて、前記2Dパッチを回転させるステップと、
前記復号化器により、回転された前記2Dパッチを使用して、3次元(3D)画像を再構成するステップとを備えている、方法。
【請求項2】
前記第1のパッチ配向インデックスの値は0ないし7の範囲にある、請求項1記載の方法。
【請求項3】
前記網羅的な配向モードは8つの網羅的な配向モードのうち1つである、請求項1記載の方法。
【請求項4】
前記8つの網羅的な配向モードは8つのパッチ配向に対応する、請求項3記載の方法。
【請求項5】
前記8つのパッチ配向は、前記第1のパッチ配向インデックスにより指示され、前記第1のパッチ配向インデックスの値は0ないし7の範囲にある、請求項4記載の方法。
【請求項6】
前記第2のパッチ配向インデックスの値は0ないし1の範囲にある、請求項1記載の方法。
【請求項7】
前記単純な配向モードは2つの単純な配向モードのうち1つである、請求項1記載の方法。
【請求項8】
前記ビットストリームは、パッチ回転イネーブルフラグをさらに含み、
方法は、前記復号化器により、前記パッチ回転イネーブルフラグに基づいて、前記2Dパッチが回転されることが可能であると決定するステップをさらに含む、請求項1記載の方法。
【請求項9】
前記ビットストリームは、パッチ回転存在フラグをさらに含み、前記2Dパッチは、前記パッチ回転存在フラグが第1の値を有するときに、デフォルトのパッチ回転に従って回転される、請求項1記載の方法。
【請求項10】
前記ビットストリームは、パッチ回転存在フラグをさらに含み、前記2Dパッチは、前記パッチ回転存在フラグが第2の値を有するときに、選好されるパッチ回転に従って、又は複数の利用可能なパッチ回転のうちの1つに従って回転される、請求項1記載の方法。
【請求項11】
前記パッチ回転イネーブルフラグが第2の値を有し、制限回転イネーブルフラグが第2の値を有し、パッチ回転存在フラグが第2の値を有するときに、選好されるパッチ回転に従って前記2Dパッチを回転させるステップをさらに含む、請求項8記載の方法。
【請求項12】
前記パッチ回転イネーブルフラグが第2の値を有し、制限回転イネーブルフラグが第2の値を有し、パッチ回転存在フラグが第1の値を有するときに、デフォルトのパッチ回転に従って前記2Dパッチを回転させるステップをさらに含む、請求項8記載の方法。
【請求項13】
前記パッチ回転イネーブルフラグが第2の値を有し、制限回転イネーブルフラグが第1の値を有し、パッチ回転存在フラグが第1の値を有するときに、デフォルトのパッチ回転に従って前記2Dパッチを回転させるステップをさらに含む、請求項8記載の方法。
【請求項14】
前記パッチ回転イネーブルフラグが第2の値を有し、制限回転イネーブルフラグが第1の値を有し、パッチ回転存在フラグが第2の値を有するときに、複数の利用可能なパッチ回転のうちの1つに従って前記2Dパッチを回転させるステップをさらに含む、請求項8記載の方法。
【請求項15】
前記ビットストリームは、デフォルトのパッチ回転及び選好されるパッチ回転をさらに含み、前記2Dパッチは、前記デフォルトのパッチ回転又は前記選好されるパッチ回転に従って回転される、請求項1記載の方法。
【請求項16】
前記ビットストリームは、複数の利用可能なパッチ回転のうちの1つを含み、前記2Dパッチは、前記複数の利用可能なパッチ回転のうちの前記1つに従って回転される、請求項1記載の方法。
【請求項17】
前記ビットストリームの中の3ビットフラグは、前記複数の利用可能なパッチ回転のうちの前記1つを識別する、請求項16記載の方法。
【請求項18】
エンコーダによって実施される点群コーディング(PCC)の方法であって、
前記エンコーダにより、3次元(3D)画像を取得するステップと、
前記エンコーダにより、複数の利用可能なパッチ回転を使用して、前記3D画像に対する複数の2次元(2D)投影を決定するステップと、
前記エンコーダにより、前記複数の2D投影のうちの1つを選択するステップと、
前記エンコーダにより、前記複数の2D投影のうちの選択された前記1つに従って、2Dパッチについて複数のフラグを設定するステップと、
前記エンコーダにより、前記3D画像を再構成するために、前記複数のフラグとアトラス情報とを含むビットストリームを生成するステップであって、前記複数のフラグは制限回転イネーブルフラグを含み、前記制限回転イネーブルフラグは、2D回転モードが第1のパッチ配向インデックスにより指示される網羅的な配向モードであるときに、第1の値に設定されるか、又は前記制限回転イネーブルフラグは、前記2D回転モードが第2のパッチ配向インデックスにより指示される単純な配向モードであるときに、第2の値に設定される、ステップと、
復号化器に向けて送信するために、前記エンコーダにより前記ビットストリームを記憶するステップとを備えている、方法。
【請求項19】
前記複数のフラグは、パッチ回転イネーブルフラグと、パッチ回転存在フラグとのうちの少なくとも1つを含む、請求項18記載の方法。
【請求項20】
前記複数のフラグのうちの少なくとも1つは、デフォルトのパッチ回転を使用するように前記復号化器に信号で指示するように設定される、請求項18記載の方法。
【請求項21】
前記複数のフラグのうちの少なくとも1つは、選好されるパッチ回転を使用するように前記復号化器に信号で指示するように設定される、請求項18記載の方法。
【請求項22】
前記複数のフラグのうちの少なくとも1つは、複数の利用可能なパッチ回転のうちの1つを使用するように前記復号化器に信号で指示するように設定される、請求項18記載の方法。
【請求項23】
2次元(2D)パッチについて、制限回転イネーブルフラグを含むコーディングされたビデオビットストリームを受信するように構成されている受信機と、
前記受信機に結合されているメモリであり、命令を格納するメモリと、
前記メモリに結合されているプロセッサであり、復号化装置に下記のステップ、即ち
前記制限回転イネーブルフラグに基づいて、前記2Dパッチの回転モードを決定するステップであって、前記回転モードは、前記制限回転イネーブルフラグが第1の値を有するときに、第1のパッチ配向インデックスにより指示される網羅的な配向モードであり、前記回転モードは、前記制限回転イネーブルフラグが第2の値を有するときに、第2のパッチ配向インデックスにより指示される単純な配向モードである、ステップと、
前記回転モードに基づいて、前記2Dパッチを回転させるステップと、
回転された前記2Dパッチを使用して、3次元(3D)画像を再構成するステップと
を行わせるために前記命令を実行するように構成されているプロセッサとを備えている、復号化装置。
【請求項24】
前記3D画像を表示するように構成されているディスプレイをさらに備えている、請求項23記載の復号化装置。
【請求項25】
3次元(3D)画像を受信するように構成されている受信機と、
前記受信機に結合されているメモリであり、命令を含むメモリと、
前記メモリに結合されているプロセッサであり、エンコード装置に下記のステップ、即ち
複数の利用可能なパッチ回転を使用して、前記3D画像に対する複数の2次元(2D)投影を決定するステップと、
前記複数の2D投影のうちの1つを選択するステップと、
前記複数の2D投影のうちの選択された前記1つに従って、2Dパッチについて複数のフラグを設定するステップと、
前記3D画像を再構成するために、前記複数のフラグとアトラス情報とを含むビットストリームを生成するステップであって、前記複数のフラグは制限回転イネーブルフラグを含み、前記制限回転イネーブルフラグは、2D回転モードが第1のパッチ配向インデックスにより指示される網羅的な配向モードであるときに、第1の値に設定されるか、又は前記制限回転イネーブルフラグは、前記2D回転モードが第2のパッチ配向インデックスにより指示される単純な配向モードであるときに、第2の値に設定される、ステップと、
復号化器に向けて送信するために、前記ビットストリームを前記メモリに格納するステップと
を行わせるために前記命令を実行するように構成されているプロセッサとを備えている、エンコード装置。
【請求項26】
前記プロセッサに結合されている送信機であり、前記ビットストリームを前記復号化器に向かって送信するように構成されている送信機をさらに含む、請求項25記載のエンコード装置。
【請求項27】
エンコードする体積ピクチャーを受信するように構成されている受信機と、
前記受信機に結合されている送信機であり、前記ビットストリームを復号化器に送信するように構成されている送信機と、
前記受信機又は前記送信機のうちの少なくとも1つに結合されるメモリであり、命令を記憶するように構成されているメモリと、
前記メモリに結合されているプロセッサであり、請求項18ないし22のいずれか1項に記載の方法を実行するために、前記メモリに記憶された前記命令を実行するように構成されているプロセッサとを備えている、エンコード装置。
【請求項28】
復号化するビットストリームを受信するように構成されている受信機と、
前記受信機に結合されている送信機であり、復号化された体積ピクチャーを再構成するように構成された再構成装置に復号化された体積ピクチャーを送信するように構成されている送信機と、
前記受信機又は前記送信機のうちの少なくとも1つに結合されるメモリであり、命令を記憶するように構成されているメモリと、
前記メモリに結合されているプロセッサであり、請求項ないし17のいずれか1項に記載の方法を実行するために、前記メモリに記憶された前記命令を実行するように構成されているプロセッサとを備えている、復号化装置。
【請求項29】
復号化された前記体積ピクチャーに基づいて投影画像を表示するように構成されているディスプレイをさらに備えている、請求項28記載の復号化装置。
【請求項30】
請求項25又は26記載のエンコード装置、又は請求項27記載のエンコード装置を含むエンコーダと、
前記エンコーダと通信する復号化器とを備え、
前記復号化器は、請求項23又は24記載の復号化装置、又は請求項28又は29記載の復号化装置を含む、システム。
【請求項31】
エンコードする体積ピクチャーを受信するように構成されている受信手段と、
前記受信手段に結合されている送信手段であって、前記ビットストリームを復号化器に送信するように構成されている送信手段と、
前記受信手段又は前記送信手段のうちの少なくとも1つに結合されている記憶手段であって、命令を記憶するように構成されている記憶手段と、
前記記憶手段に結合されている処理手段であって、請求項18ないし22のいずれか1項に記載の方法を実行するように、前記記憶手段に記憶された前記命令を実行するように構成されている処理手段とを備えている、エンコードする手段。
【請求項32】
復号化するビットストリームを受信するように構成されている受信手段と、
前記受信手段に結合されている送信手段であって、復号化された画像をディスプレイ手段に送信するように構成されている送信手段と、
前記受信手段又は前記送信手段のうちの少なくとも1つに結合されている記憶手段であって、命令を記憶するように構成されている記憶手段と、
前記記憶手段に結合されている処理手段であって、請求項ないし17のいずれか1項に記載の方法を実行するように、前記記憶手段に記憶された前記命令を実行するように構成されている処理手段とを備えている、復号化する手段。
【発明の詳細な説明】
【技術分野】
【0001】
本特許出願は、「Point Cloud Bitstream Structure and Auxiliary Information Differential Coding」と題し、2019年1月14日にVladyslav Zakharchenkoらにより出願された米国仮特許出願第62/792,259号の利益を主張し、これは参照により本明細書に組み込まれる。
【0002】
本開示は全体的に、点群コーディングに関し、特に、点群コーディングのための高レベル構文に関する。
【背景技術】
【0003】
点群は、娯楽産業、インテリジェント自動車ナビゲーション、地理空間検査、実世界物体の3次元(3D)モデル化、可視化などを含む広範な応用に使用される。点群の不均一なサンプリング幾何学を考慮すると、このようなデータの記憶及び送信のためのコンパクトな表現が有用である。他の3Dプレゼンテーションと比較して、不規則な点群はより一般的であり、より広範囲のセンサ及びデータ収集戦略に適用可能である。例えば、仮想現実世界で3Dプレゼンテーションを行う場合や、テレプレゼンス環境でリモートレンダリングを行う場合、仮想図形のレンダリングやリアルタイム命令は、高密度点群データセットとして処理される。
【発明の概要】
【0004】
第1の態様は、復号化器によって実施される点群コーディング(PCC)の方法に関連し、これは、復号化器の受信機により、2次元(2D)パッチについてパッチ回転イネーブルフラグとアトラス情報とを含むビットストリームを受信するステップと、復号化器のプロセッサにより、パッチ回転イネーブルフラグに基づいて、2Dパッチが回転されることが可能であると決定するステップと、プロセッサにより、2Dパッチを回転させるステップと、プロセッサにより、アトラス情報と回転された2Dパッチとを使用して、3次元(3D)画像を再構成するステップとを備えている。
【0005】
この柔軟なパッチ配向スキームを使用して、パッチは、境界ボックス内に一層効率的にパッキングできる。一層効率的なパッキングによって、境界ボックス内のパッチに占有される面積は、パッチ回転が利用可能でない、又は許容されない技術に比べて削減でき、その結果、さらによいコーディング効率(例えば、ビットストリームをコーディングするために必要とされるビットが一層少ない)がもたらされる。
【0006】
第1の態様による方法の第1の実施の形態では、ビットストリームは、デフォルトのパッチ回転及び選好されるパッチ回転を含み、2Dパッチは、デフォルトのパッチ回転又は選好されるパッチ回転に従って回転される。
【0007】
第1の態様による方法の第2の実施の形態、又は第1の態様の任意の上述した実施の形態では、ビットストリームは、複数の利用可能なパッチ回転のうちの1つを含み、2Dパッチは、複数の利用可能なパッチ回転のうちの1つに従って回転される。
【0008】
第1の態様による方法の第3の実施の形態、又は第1の態様の任意の上述した実施の形態では、ビットストリームの中の3ビットフラグは、複数の利用可能なパッチ回転のうちの1つを識別する。
【0009】
第1の態様による方法の第4の実施の形態、又は第1の態様の任意の上述した実施の形態では、ビットストリームは、制限回転イネーブルフラグを含む。
【0010】
第1の態様による方法の第5の実施の形態、又は第1の態様の任意の上述した実施の形態では、2Dパッチは、制限回転イネーブルフラグが第1の値を有するときに、網羅的な配向モードに基づいて回転され、制限回転イネーブルフラグが第2の値を有するときに、単純な配向モードに基づいて回転される。
【0011】
第1の態様による方法の第6の実施の形態、又は第1の態様の任意の上述した実施の形態では、ビットストリームは、パッチ回転存在フラグを含み、2Dパッチは、パッチ回転存在フラグが第1の値を有するときに、デフォルトのパッチ回転に従って回転される。
【0012】
第1の態様による方法の第7の実施の形態、又は第1の態様の任意の上述した実施の形態では、ビットストリームは、パッチ回転存在フラグを含み、2Dパッチは、パッチ回転存在フラグが第2の値を有するときに、選好されるパッチ回転に従って、又は複数の利用可能なパッチ回転のうちの1つに従って回転される。
【0013】
第1の態様による方法の第8の実施の形態、又は第1の態様の任意の上述した実施の形態では、パッチ回転イネーブルフラグが第2の値を有し、制限回転イネーブルフラグが第2の値を有し、パッチ回転存在フラグが第2の値を有するときに、選好されるパッチ回転に従って2Dパッチを回転させるステップをさらに含む。
【0014】
第1の態様による方法の第9の実施の形態、又は第1の態様の任意の上述した実施の形態では、パッチ回転イネーブルフラグが第2の値を有し、制限回転イネーブルフラグが第2の値を有し、パッチ回転存在フラグが第1の値を有するときに、デフォルトのパッチ回転に従って2Dパッチを回転させるステップをさらに含む。
【0015】
第1の態様による方法の第10の実施の形態、又は第1の態様の任意の上述した実施の形態では、パッチ回転イネーブルフラグが第2の値を有し、制限回転イネーブルフラグが第1の値を有し、パッチ回転存在フラグが第1の値を有するときに、デフォルトのパッチ回転に従って2Dパッチを回転させるステップをさらに含む。
【0016】
第1の態様による方法の第11の実施の形態、又は第1の態様の任意の上述した実施の形態では、パッチ回転イネーブルフラグが第2の値を有し、制限回転イネーブルフラグが第1の値を有し、パッチ回転存在フラグが第2の値を有するときに、複数の利用可能なパッチ回転のうちの1つに従って2Dパッチを回転させるステップをさらに含む。
【0017】
第2の態様は、エンコーダによって実施される点群コーディング(PCC)の方法に関連し、これは、エンコーダの受信機により、3次元(3D)画像を取得するステップと、エンコーダのプロセッサにより、複数の利用可能なパッチ回転を使用して、3D画像に対する複数の2次元(2D)投影を決定するステップと、プロセッサにより、複数の2D投影のうちの1つを選択するステップと、プロセッサにより、複数の2D投影のうちの選択された1つに従って、複数のフラグを設定するステップと、プロセッサにより、複数のフラグとアトラス情報とを含むビットストリームを生成し、3D画像を再構成するステップと、復号化器に向けて送信するために、エンコーダのメモリにビットストリームを記憶するステップとを備えている。
【0018】
この柔軟なパッチ配向スキームを使用して、パッチは、境界ボックス内に一層効率的にパッキングできる。一層効率的なパッキングによって、境界ボックス内のパッチに占有される面積は、パッチ回転が利用可能でない、又は許容されない技術に比べて削減でき、その結果、さらによいコーディング効率(例えば、ビットストリームをコーディングするために必要とされるビットが一層少ない)がもたらされる。
【0019】
第2の態様による方法の第1の実施の形態では、複数のフラグは、パッチ回転イネーブルフラグと、制限回転イネーブルフラグと、パッチ回転存在フラグとを含む。
【0020】
第2の態様による方法の第2の実施の形態、又は第2の態様の任意の上述した実施の形態では、複数のフラグのうちの少なくとも1つは、デフォルトのパッチ回転を使用するように復号化器に信号で指示するように設定される。
【0021】
第2の態様による方法の第3の実施の形態、又は第2の態様の任意の上述した実施の形態では、複数のフラグのうちの少なくとも1つは、選好されるパッチ回転を使用するように復号化器に信号で指示するように設定される。
【0022】
第2の態様による方法の第4の実施の形態、又は第2の態様の任意の上述した実施の形態では、複数のフラグのうちの少なくとも1つは、複数の利用可能なパッチ回転のうちの1つを使用するように復号化器に信号で指示するように設定される。
【0023】
第3の態様は、復号化装置に関連し、これは、2次元(2D)パッチについて、パッチ回転イネーブルフラグとアトラス情報とを含むコーディングされたビデオビットストリームを受信するように構成されている受信機と、受信機に結合されているメモリであり、命令を格納するメモリと、メモリに結合されているプロセッサであり、復号化装置に下記のステップ、即ちパッチ回転イネーブルフラグに基づいて、2Dパッチが回転されることが可能であると決定するステップと、2Dパッチを回転させるステップと、アトラス情報と回転された2Dパッチとを使用して、3次元(3D)画像を再構成するステップとを行わせるために命令を実行するように構成されているプロセッサとを備えている。
【0024】
この柔軟なパッチ配向スキームを使用して、パッチは、境界ボックス内に一層効率的にパッキングできる。一層効率的なパッキングによって、境界ボックス内のパッチに占有される面積は、パッチ回転が利用可能でない、又は許容されない技術に比べて削減でき、その結果、さらによいコーディング効率(例えば、ビットストリームをコーディングするために必要とされるビットが一層少ない)がもたらされる。
【0025】
第3の態様による復号化装置の第1の実施の形態では、復号化装置は、3D画像を表示するように構成されているディスプレイをさらに備えている。
【0026】
第4の態様は、エンコード装置に関連し、これは、3次元(3D)画像を受信するように構成されている受信機と、受信機に結合されているメモリであり、命令を含むメモリと、メモリに結合されているプロセッサであり、エンコード装置に下記のステップ、即ち複数の利用可能なパッチ回転を使用して、3D画像に対する複数の2次元(2D)投影を決定するステップと、複数の2D投影のうちの1つを選択するステップと、複数の2D投影のうちの選択された1つに従って、複数のフラグを設定するステップと、3D画像を再構成するために、複数のフラグとアトラス情報とを含むビットストリームを生成するステップと、復号化器に向けて送信するために、ビットストリームをメモリに格納するステップとを行わせるために命令を実行するように構成されているプロセッサとを備えている。
【0027】
この柔軟なパッチ配向スキームを使用して、パッチは、境界ボックス内に一層効率的にパッキングできる。一層効率的なパッキングによって、境界ボックス内のパッチに占有される面積は、パッチ回転が利用可能でない、又は許容されない技術に比べて削減でき、その結果、さらによいコーディング効率(例えば、ビットストリームをコーディングするために必要とされるビットが一層少ない)がもたらされる。
【0028】
第4の態様によるエンコード装置の第1の実施の形態では、エンコード装置は、プロセッサに結合されている送信機であり、ビットストリームを復号化器に向かって送信するように構成されている送信機をさらに含む。
【0029】
第5の態様は、コーディング装置に関連し、これは、エンコードする体積ピクチャーを受信するように構成されているか、又は復号化するビットストリームを受信するように構成されている受信機と、受信機に結合されている送信機であり、ビットストリームを復号化器に送信するように構成されているか、又は、復号化された体積ピクチャーを再構成するように構成された再構成装置に復号化された体積ピクチャーを送信するように構成されている送信機と、受信機又は送信機のうちの少なくとも1つに結合されるメモリであり、命令を記憶するように構成されているメモリと、メモリに結合されているプロセッサであり、本明細書に記載した方法を実行するために、メモリに記憶された命令を実行するように構成されているプロセッサとを備えている。
【0030】
この柔軟なパッチ配向スキームを使用して、パッチは、境界ボックス内に一層効率的にパッキングできる。一層効率的なパッキングによって、境界ボックス内のパッチに占有される面積は、パッチ回転が利用可能でない、又は許容されない技術に比べて削減でき、その結果、さらによいコーディング効率(例えば、ビットストリームをコーディングするために必要とされるビットが一層少ない)がもたらされる。
【0031】
第5の態様によるコーディング装置の第1の実施の形態では、コーディング装置は、復号化された体積ピクチャーに基づいて投影画像を表示するように構成されているディスプレイをさらに備えている。
【0032】
第6の態様は、システムに関連し、これは、エンコーダと、エンコーダと通信する復号化器とを備え、エンコーダ又は復号化器は、本明細書に記載したエンコード装置、復号化装置、又はコーディング装置を含む。
【0033】
この柔軟なパッチ配向スキームを使用して、パッチは、境界ボックス内に一層効率的にパッキングできる。一層効率的なパッキングによって、境界ボックス内のパッチに占有される面積は、パッチ回転が利用可能でない、又は許容されない技術に比べて削減でき、その結果、さらによいコーディング効率(例えば、ビットストリームをコーディングするために必要とされるビットが一層少ない)がもたらされる。
【0034】
第7の態様は、コーディングする手段に関連し、これは、エンコードする体積ピクチャーを受信するように構成されているか、又は復号化、再構成及び投影するビットストリームを受信するように構成されている受信手段と、受信手段に結合されている送信手段であって、ビットストリームを復号化器に送信するように構成されているか、又は復号化された画像をディスプレイ手段に送信するように構成されている送信手段と、受信手段又は送信手段のうちの少なくとも1つに結合されている記憶手段であって、命令を記憶するように構成されている記憶手段と、記憶手段に結合されている処理手段であって、本明細書に記載した方法を実行するように、記憶手段に記憶された命令を実行するように構成されている処理手段とを備えている。
【0035】
明確にする目的のために、前述の実施形態の任意の1つを、他の前述の実施形態の任意の1つ以上と組み合わせて、本開示の範囲内の新たな実施形態を作り出してよい。
【0036】
これら及び他の特徴は、添付の図面及び請求項に関連して与えられた以下の詳細な説明から、より明確に理解されることである。
【図面の簡単な説明】
【0037】
本開示をより完全に理解するために、添付の図面及び詳細な説明に関連して、以下の簡単な説明を参照する。ここで、同様の参照番号は同様の部分を表す。
【0038】
図1】コンテキストモデリング技術を利用し得る、例示的なコーディングシステムを示すブロック図である。
図2】コンテキストモデリング技術を実施し得る、例示的なエンコーダを示すブロック図である。
図3】コンテキストモデリング技術を実施し得る、例示的な復号化器を示すブロック図である。
図4】フレーム群ビットストリームの表現である。
図5】3次元(3D)点群の表現である。
図6】境界ボックス上に投影された図5の3D点群の表現である。
図7図6の境界ボックスからの2次元(2D)投影に対応する占有マップの表現である。
図8図6の境界ボックスからの2D投影に対応する幾何図形マップの表現である。
図9図6の境界ボックスからの2D投影に対応する属性マップの表現である。
図10】パッチ配向インデックスの表現の実施形態である。
図11】パッチ配向復号化プロセスの実施形態である。
図12】復号化器によって実施された点群コーディング(PCC)の方法の実施形態である。
図13】エンコーダによって実施されたPCCの方法の実施形態である。
図14】コーディングデバイスの概略図である。
図15】コーディングする手段の実施形態の概略図である。
【発明を実施するための形態】
【0039】
最初に、1つ以上の実施形態の例示的な実施が以下に提供されるが、開示されたシステム及び/又は方法は、現在公知であるか存在するかを問わず、任意の数の技術を使用して実施され得ることが理解されるものとする。本明細書に例示的な設計及び実施を含んで、以下に示す例示的な実施、図面及び技術に、本開示は限定されるものとしない。請求項の均等物の全範囲を伴って、添付の請求項の範囲内で、改変されてよい。
【0040】
ビデオコーディング規格には、国際電気通信連合電気通信標準化部門(ITU-T)H.261,国際標準化機構(ISO)/国際電気標準委員会(IEC)動画専門家グループ(MPEG)-1パート2,ITU-T H.262又はISO/IEC MPEG-2パート2,ITU-T H.263,ISO/IEC MPEG-4パート2,ITU-T H.264又はISO/IEC MPEG-4パート10とも呼ばれる先端ビデオコーディング(AVC),及びITU-T H.265又はMPEG-H パート2とも呼ばれる高効率ビデオコーディング(HEVC)が含まれる。AVCには、スケーラブルビデオコーディング(SVC),マルチビュービデオコーディング(MVC),及びマルチビュービデオコーディング+デプス(MVC+D),及び3D AVC(3D-AVC)などの拡張が含まれる。HEVCには、スケーラブルHEVC(SHVC),マルチビューHEVC(MV-HEVC),3D HEVC(3D-HEVC)などの拡張が含まれる。
【0041】
点群は、3D空間内のデータ点の集合である。各データ点は、位置(例えば、X、Y、Z)、色(例えば、R、G、B又はY、U、V)、及び場合によっては透明度、反射率、取得時間などの他の特性を決定するパラメータを含む。通常、群の中の各点には、同じ数の属性が付加される。点群は、リアルタイムの3D没入型テレプレゼンス、インタラクティブ視差によるコンテンツバーチャルリアリティ(VR)視聴、3D自由視点スポーツリプレイ放送、地理情報システム、文化遺産、大規模な3Dダイナミックマップに基づく自律ナビゲーション、自動車用途など、様々な用途で使用することができる。
【0042】
ISO/IEC Moving Picture Experts Group (MPEG)は、ネットワーク環境に対して十分なコーディング効率とロバスト性を有する可逆及び非可逆の圧縮点群データのために、点群コーディングに関する新しいコーデック規格の開発を2016年に開始した。このコーデック規格の使用は、点群をコンピュータデータの形式として操作し、種々の記憶媒体上に記憶し、既存及び将来のネットワーク上で送受信し、既存及び将来の放送チャネル上で配信することを可能にする。
【0043】
最近、点群コーディング(PCC)作業は3つのカテゴリー、PCCカテゴリー1、PCCカテゴリー2、及びPCCカテゴリー3に分類された。ここでは、2つの別々の作業原案、1つはPCCカテゴリー2(PCC Cat2)、もう1つはPCCカテゴリー1及び3(PCC Cat 13)が発展されていた。PCC Cat2に関する最新の作業原案(WD)はMPEG出力文書N17534に含まれる。PCC Cat13に関する最新のWDはMPEG出力文書N17533に含まれる。
【0044】
PCC Cat2 WDにおけるPCC Cat2コーデックの設計の背後にある主な哲学は、異なるビデオシーケンスのセットとして点群データを圧縮することによって、動的点群の幾何形状及びテクスチャー情報を圧縮するために既存のビデオコーデックを利用することである。特に、2つのビデオシーケンスであり、1つは点群データの幾何学情報を表し、もう1つはテクスチャー情報を表すビデオシーケンスが、ビデオコーデックを使用して生成及び圧縮される。2つのビデオシーケンスを解釈するための追加のメタデータ、即ち、占有マップ及び補助パッチ情報もまた、別々に生成及び圧縮される。
【0045】
残念ながら、PCCの既存の設計には欠点がある。例えば、1つの時間インスタンスに関連するデータユニット、即ち、1つのアクセスユニット(AU)は、復号化順序で隣接していない。PCC Cat2 WDでは、各AUについてテクスチャー、幾何形状、補助情報、及び占有マップのデータ単位が、フレームのグループの単位でインターリーブされる。つまり、グループ内の全てのフレームの幾何形状データは一緒になる。テクスチャーデータなどについても同様である。PCC Cat13 WDでは、各AUについて幾何形状のデータ単位と一般属性とは、PCCビットストリーム全体のレベルでインターリーブされる(例えば、PCCビットストリーム全体と同じ長さを持つフレームのグループが1つしかない場合は、PCC Cat2 WDと同じである)。1つのAUに属するデータユニットのインターリーブは、アプリケーションシステムにおけるプレゼンテーション時間継続時間の中のフレームのグループの長さに少なくとも等しい、大きなエンドツーエンド遅延を、本質的に引き起こす。
【0046】
もう1つの欠点は、ビットストリームフォーマットに関するものである。ビットストリームフォーマットは、0x0003のような開始コードパターンのエミュレーションを可能にするので、開始コードエミュレーション防止が必要なMPEG-2トランスポートストリーム(TS)上での伝送には機能しない。PCC Cat2では、HEVC又はAVCのいずれかが幾何形状及びテクスチャー構成要素のコーディングに使用される場合、現在、group_of_frames_geometry_video_payload()及びgroup_of_frames_texture_video_payload()のみが開始コードエミュレーション防止をその位置に有する。PCC Cat13では、ビットストリーム内のどこにも開始コードエミュレーション防止はない。
【0047】
PCC Cat2 WDでは、幾何形状及びテクスチャービットストリームのためのコーデック情報(例えば、コーデックで、どのコーデックであるか、プロファイル、レベルなど)のいくつかは、group_of_frames_geometry_video_payload()及びgroup_of_frames_texture_video_payload()構造の複数のインスタンスに深く埋め込まれる。さらに、補助情報と占有マップ構成要素との復号化のための能力、ならびに点群再構成のための能力を示すプロファイル及びレベルのような情報のいくつかは、欠落している。
【0048】
点群コーディングに関連する前述の問題の1つ以上を解決する、高レベル構文設計が提供される。以下にさらに詳細に説明されるように、本開示は、データユニットヘッダ(別の呼称は、PCCネットワークアクセスレイヤ(NAL)ヘッダ)内のタイプインジケータを使用して、PCC NALユニットのペイロード内のコンテンツのタイプを指定する。これに加えて、本開示は、フレーム群ヘッダパラメータを伝えるために、フレーム群ヘッダNALユニットを利用する。さらに、フレーム群ヘッダNALユニットは、各幾何形状又はテクスチャービットストリームのプロファイル及びレベルを信号伝達するために使用されてよい。
【0049】
図1は、PCCビデオコーディング技術を利用し得る、例示的なコーディングシステム10を示すブロック図である。図1に示すように、コーディングシステム10は、後に宛先装置14によって復号化されるべきエンコードされたビデオデータを提供するソース装置12を含む。特に、ソース装置12は、コンピュータ可読な媒体16を介して、ビデオデータを宛先装置14に提供してよい。ソース装置12及び宛先装置14は、デスクトップコンピュータ、ノートブック(例えばラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」電話機のような電話ハンドセット、いわゆる「スマート」パッド、テレビ、カメラ、ディスプレイ装置、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミング装置等を含む、広範囲の装置の任意のものを含んでよい。ある場合には、ソース装置12及び宛先装置14は、無線通信のために装備されてよい。
【0050】
宛先装置14は、復号化されるべきエンコードされたビデオデータを、コンピュータ可読な媒体16を介して受信してよい。コンピュータ可読な媒体16は、エンコードされたビデオデータをソース装置12から宛先装置14へ移動させることができる任意のタイプの媒体又は装置を含んでよい。一例では、コンピュータ可読な媒体16は、エンコードされたビデオデータを宛先装置14にリアルタイムで直接ソース装置12が送信することを可能にする通信媒体を含んでよい。エンコードされたビデオデータは、無線通信プロトコルのような通信標準に従って変調され、宛先装置14に送信される。通信媒体は、無線周波数(RF)スペクトル又は1つ以上の物理的伝送線のような任意の無線又は有線通信媒体を含んでよい。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はインターネットなどのグローバルネットワークのような、パケットベースのネットワークの一部を形成してよい。通信媒体は、ソース装置12から宛先装置14への通信を容易にするために有用なルータ、スイッチ、基地局、又は他の装置を含んでよい。
【0051】
いくつかの例では、エンコードされたデータは、出力インターフェース24から記憶装置に出力されてよい。同様に、エンコードされたデータは、入力インターフェースによって記憶装置からアクセスしてよい。記憶装置は、ハードドライブ、ブルーレイディスク、デジタルビデオディスク(DVD)、コンパクトディスク読み出し専用メモリ(CD-ROM)、フラッシュメモリ、揮発性又は不揮発性メモリ、又はエンコードされたビデオデータを記憶するための任意の他の適切なデジタル記憶媒体のような、分散された又は局所的にアクセスされる種々のデータ記憶媒体の任意のものを含んでよい。さらなる例では、ソース装置12によって生成されたエンコードされたビデオを記憶し得るファイルサーバ又は別の中間記憶装置に、記憶装置は対応してよい。宛先装置14は、記憶されたビデオデータに記憶装置から、ストリーミング又はダウンロードによってアクセスしてよい。ファイルサーバは、エンコードされたビデオデータを記憶し、そのエンコードされたビデオデータを宛先装置14に送信し得る、任意のタイプのサーバであってよい。ファイルサーバの例には、ウェブサーバ(例えば、ウェブサイトのための)、ファイル転送プロトコル(FTP)サーバ、ネットワーク接続記憶(NAS)装置、又はローカルディスクドライブが含まれる。宛先装置14は、インターネット接続を含む任意の標準データ接続を介してエンコードされたビデオデータにアクセスしてよい。これは、無線チャネル(例えば、Wi-Fi接続)、有線接続(例えば、デジタル加入者回線(DSL)、ケーブルモデム等)、又はファイルサーバに記憶されたエンコードされたビデオデータにアクセスするのに適した両方の組み合わせを含んでよい。記憶装置からのエンコードされたビデオデータの伝送は、ストリーミング伝送、ダウンロード伝送、又はそれらの組み合わせであってよい。
【0052】
本開示の技術は、無線アプリケーション又は設定に必ずしも限定されない。この技術は、無線テレビジョン放送、ケーブルテレビジョン伝送、衛星テレビジョン伝送、HTTP上の動的適応ストリーミング(DASH)のようなインターネットストリーミングビデオ伝送、データ記憶媒体上にエンコードされたデジタルビデオ、データ記憶媒体上に記憶されたデジタルビデオの復号化、又は他のアプリケーションのような、様々なマルチメディアのアプリケーションのいずれかをサポートするビデオコーディングに適用してよい。いくつかの例では、コーディングシステム10は、ビデオストリーミング、ビデオ再生、ビデオ放送、及び/又はビデオ電話などのアプリケーションをサポートするために、一方向又は双方向のビデオ伝送をサポートするように構成してよい。
【0053】
図1の例では、ソース装置12は、体積画像を提供するように構成されたビデオソース18と、投影装置20と、ビデオエンコーダ22と、出力インターフェース24とを含む。宛先装置14は、入力インターフェース26と、ビデオ復号化器28と、再構成装置30と、ディスプレイ装置32とを含む。本開示によれば、ソース装置12のエンコーダ22、及び/又は宛先装置14の復号化器28は、ビデオコーディングのための技術を適用するように構成してよい。他の例では、ソース装置及び宛先装置は、他の構成要素又は配置を含んでよい。例えば、ソース装置12は、外部カメラなどの外部ビデオソースからビデオデータを受信してよい。同様に、宛先装置14は、統合されたディスプレイ装置を含むよりはむしろ、外部ディスプレイ装置とインターフェース接続を行ってよい。
【0054】
図1の図示されたコーディングシステム10は、単なる一例である。ビデオコーディングのための技術は、任意のデジタルビデオエンコード装置及び/又は復号化装置によって実行してよい。本開示の技術は、一般に、コーディング装置によって実行されるが、技術はさらに、一般に「CODEC」と呼ばれるエンコーダ/復号化器によって実行されてよい。さらに、本開示の技術は、ビデオプリプロセッサによって実行されてよい。エンコーダ及び/又は復号化器は、グラフィックス処理ユニット(GPU)又は類似のデバイスであってよい。
【0055】
ソース装置12及び宛先装置14は、宛先装置14に送信するためにソース装置12がコーディングされたビデオデータを生成する、そのようなコーディング装置の例に過ぎない。いくつかの例では、ソース装置12及び宛先装置14は、ソース装置12及び宛先装置14の各々がビデオエンコード及びビデオ復号化の構成要素を含むように、実質的に対称な方法で動作してよい。従って、コーディングシステム10は、例えばビデオストリーミング、ビデオ再生、ビデオ放送、又はビデオ電話のために、ビデオ装置12、14間の一方向又は双方向ビデオ伝送をサポートしてよい。
【0056】
ソース装置12のビデオソース18は、ビデオカメラのようなビデオキャプチャー装置、前にキャプチャーされたビデオを収容するビデオアーカイブ、及び/又はビデオコンテンツプロバイダから体積画像又はビデオを受け取るためのビデオフィードインターフェースを含んでよい。その他の代替として、ビデオソース18は、体積画像又はコンピュータグラフィックスベースのデータを、ソースビデオとして生成してよく、又はライブビデオ、アーカイブビデオ、及びコンピュータ生成ビデオの組み合わせを生成してよい。
【0057】
ある場合には、ビデオソース18がビデオカメラであるとき、ソース装置12及び宛先装置14は、いわゆるカメラ電話又はビデオ電話を形成してよい。しかしながら、上述のように、本開示に記載の技術は、一般にビデオコーディングに適用可能であり、無線及び/又は有線の用途に適用されてよい。
【0058】
投影装置20は、以下にさらに詳細に説明されるように、平面(例えば、境界ボックス)上に体積画像を投影するように構成されている。即ち、投影装置20は、3次元(3D)画像を2次元(2D)画像、又は画像に変換するように構成されている。
【0059】
いずれの場合も、体積画像、キャプチャーされたビデオ、予めキャプチャーされたビデオ、又はコンピュータで生成されたビデオは、エンコーダ22によってエンコードされてよい。次いで、エンコードされたビデオ情報は、出力インターフェース24によってコンピュータ可読な媒体16に出力されてよい。
【0060】
コンピュータ可読な媒体16は、無線ブロードキャスト又は有線ネットワーク伝送のような一時的媒体、又はハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、ブルーレイディスク、又は他のコンピュータ可読な媒体のような記憶媒体(即ち、非一時的記憶媒体)を含んでよい。いくつかの例では、ネットワークサーバ(図示せず)は、ソース装置12からエンコードされたビデオデータを受信し、エンコードされたビデオデータを、例えば、ネットワーク伝送を介して宛先装置14に提供してよい。同様に、ディスクスタンピング設備のような媒体製造設備の計算装置は、ソース装置12からエンコードされたビデオデータを受信し、エンコードされたビデオデータを含むディスクを生成してよい。従って、コンピュータ可読な媒体16は、種々の例では、種々の形態の1つ以上のコンピュータ可読な媒体を含むものと理解してよい。
【0061】
宛先装置14の入力インターフェース26は、コンピュータ可読な媒体16から情報を受信する。コンピュータ可読な媒体16の情報は、エンコーダ22によって規定された構文情報を含んでよく、この構文情報は復号化器28によっても使用される。これは、ブロック及び他のコーディングされたユニット、例えば、ピクチャーのグループ(GOP)の特性及び/又は処理を記述する構文要素を含む。
【0062】
再構成装置30は、以下にさらに詳細に説明するように、平面画像又は複数の平面画像を体積画像にもどして変換するように構成されている。即ち、再構成装置30は、2D画像又は複数の2D画像を3D画像にもどして変換するように構成されている。
【0063】
ディスプレイ装置32は、体積画像又は復号化されたビデオデータをユーザに表示し、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、又は別のタイプのディスプレイ装置などの種々のディスプレイ装置のいずれかを含んでよい。
【0064】
エンコーダ22及び復号化器28は、現在開発中の高効率ビデオコーディング(HEVC)規格のようなビデオコーディング規格に従って動作することができ、HEVCテストモデル(HM)に適合してよい。これに代えて、他のプロプライエタリな規格又は産業規格、例えば、Moving Picture Expert Group (MPEG)-4, Part 10, Advanced Video Coding (AVC) とも称される、国際電気通信連合電気通信標準化部門の(ITU-T)H.264規格、又はH.265/HEVC、又はそのような規格の拡張に従って、エンコーダ22及び復号化器28は動作してよい。しかしながら、本開示の技術は、いずれの特定のコーディング規格にも限定されない。ビデオコーディング規格の他の例としては、MPEG-2及びITU-T H.263が挙げられる。図1には示されていないが、いくつかの態様では、エンコーダ22及び復号化器28は、各々、オーディオエンコーダ及び復号化器と一体化されてよい。共通のデータストリーム又は別個のデータストリームにおけるオーディオ及びビデオの両方のエンコードを処理するために、適切なマルチプレクサ・デマルチプレクサユニット(MUX-DEMUX)又は他のハードウェア及びソフトウェアを含んでよい。該当する場合、MUX-DEMUXユニットは、ITU H.223マルチプレクサプロトコル、又はユーザデータグラムプロトコル(UDP)のような他のプロトコルに準拠してよい。
【0065】
エンコーダ22及び復号化器28はそれぞれ、1つ以上のマイクロプロセッサ,デジタル信号プロセッサ(DSP),特定用途向け集積回路(ASIC),フィールドプログラマブルゲートアレイ(FPGA),離散論理,ソフトウェア,ハードウェア,ファームウェア,又はこれらの任意の組み合わせのような、種々の適切なエンコーダ回路のいずれかとして実施されてよい。この技術が部分的にソフトウェアに実施される場合、デバイスは、適切な非一時的なコンピュータ可読な媒体にソフトウェアのための命令を記憶し、本開示の技術を実行するために1つ以上のプロセッサを使用してハードウェアで命令を実行してよい。エンコーダ22及び復号化器28の各々は、1つ以上のエンコーダ又は復号化器に含まれてよく、これらのエンコーダ又は復号化器のいずれも、それぞれの装置において組み合わされたエンコーダ/復号化器(CODEC)の一部として一体化されてよい。エンコーダ22及び/又は復号化器28を含む装置は、集積回路、マイクロプロセッサ、及び/又はセルラー電話機のような無線通信装置を含んでよい。
【0066】
図2は、ビデオコーディング技術を実施し得るエンコーダ22の一例を示すブロック図である。エンコーダ22は、ビデオスライス内でビデオブロックのイントラコーディング及びインターコーディングを行ってよい。イントラコーディングは、所与のビデオフレーム又はピクチャーの中のビデオにおける空間的冗長性を低減又は除去するために、空間的予測に依存する。インターコーディングは、ビデオシーケンスの隣接するフレーム又はピクチャーの中のビデオにおける時間的冗長性を低減又は除去するために、時間的予測に依存する。イントラモード(Iモード)は、いくつかの空間ベースのコーディングモードのいずれかを参照してよい。一方向(別の呼称は、uni prediction)予測(Pモード)又は双予測(別の呼称は、bi prediction)(Bモード)のようなインターモードは、いくつかの時間ベースのコーディングモードのいずれかを参照してよい。
【0067】
図2に示すように、エンコーダ22は、エンコードされるべきビデオフレーム内の現在のビデオブロックを受信する。図2の例では、エンコーダ22は、モード選択ユニット40と、基準フレームメモリ64と、加算器50と、変換処理ユニット52と、量子化ユニット54と、エントロピーコーディングユニット56とを含む。一方、モード選択ユニット40は、動き補償ユニット44と、動き推定ユニット42と、イントラ予測(別の呼称は、intra prediction)ユニット46と、パーティションユニット48とを含む。ビデオブロック再構成のために、エンコーダ22はまた、逆量子化ユニット58と、逆変換ユニット60と、加算器62とを含む。また、再構成されたビデオからブロック性アーチファクトを除去するために、ブロック境界をフィルタリングするために、脱保護フィルタ(図2には示されていない)を含んでよい。所望であれば、デブロッキングフィルタは、典型的には、加算器62の出力をフィルタリングするようにする。また、脱保護フィルタに加えて、追加のフィルタ(ループ又はポストループ)を使用してよい。このようなフィルタは、簡略化のために図示しないが、所望であれば、加算器50の出力をフィルタリングしてよい(ループ内フィルタとして)。
【0068】
エンコードプロセスの間、エンコーダ22は、コーディングされるべきビデオフレーム又はスライスを受信する。フレーム又はスライスは、複数のビデオブロックに分割してよい。動き推定ユニット42及び動き補償ユニット44は、時間的予測を提供するために、1つ以上の基準フレーム内の1つ以上のブロックに対して受信されたビデオブロックのインター予測コーディングを実行する。またこれに代えて、イントラ予測ユニット46は、空間予測を提供するようにコーディングされるべきブロックと同じフレーム又はスライス内の1つ以上の隣接するブロックに関連して、受信されたビデオブロックのイントラ予測コーディングを実行してよい。エンコーダ22は、例えば、ビデオデータの各ブロックに対して適切なコーディングモードを選択するために、複数のコーディングパスを実行してよい。
【0069】
さらに、パーティションユニット48は、以前のコーディングパスにおける以前の分割方式の評価に基づいて、ビデオデータのブロックをサブブロックに分割してよい。例えば、パーティションユニット48は、最初に、フレーム又はスライスを最大のコーディングユニット(LCU)に分割し、各LCUをレート歪み解析(例えば、レート歪み最適化)に基づいてサブコーディングユニット(サブCU)に分割してよい。さらに、モード選択ユニット40は、LCUをサブCUに分割することを示す四分木データ構造を生成してよい。四分木のリーフノードCUは、1つ以上の予測ユニット(PU)と1つ以上の変換ユニット(TU)を含んでよい。
【0070】
本開示は、「ブロック」という用語を使用して、HEVCのコンテキストにおけるCU、PU、又はTUのいずれか、又は他の規格(例えば、H.264/AVCにおけるマクロブロック及びそのサブブロック)のコンテキストにおける類似のデータ構造を指す。CUは、コーディングノードと、PUと、コーディングノードに関連するTUとを含む。CUのサイズはコーディングノードのサイズに対応し、正方形である。CUのサイズは、8×8画素から、最大64×64画素以上のツリーブロックのサイズまでの範囲であってよい。各CUは、1つ以上のPUと、1つ以上のTUとを含んでよい。CUに関連する構文データは、例えば、1つ以上のPUへのCUの分割を記述してよい。分割モードは、CUがスキップ又は直接モードエンコード、イントラ予測モードエンコード、又はインター予測(別の呼称は、inter prediction)モードエンコードのいずれであるかによって異なってよい。PUは、非正方形の形状に分割されてよい。また、CUに関連する構文データは、例えば、四分木に従ってCUを1つ以上のTUへ分割することを記述してよい。TUは、正方形又は非正方形(例えば、長方形)の形状としてよい。
【0071】
モード選択ユニット40は、コーディングモード、例えば、エラー結果に基づいて、イントラ又はインターであるコーディングモードのうちの1つを選択してよい。結果としてのイントラコーディング又はインターコーディングされたブロックを、加算器50に提供し、残差ブロックデータを生成し、また加算器62に提供し、基準フレームとして使用するためにエンコードされたブロックを再構成する。またモード選択ユニット40は、動きベクトル、イントラモードインジケータ、パーティション情報、及び他のこのような構文情報などのような構文要素を、エントロピーコーディングユニット56に提供する。
【0072】
動き推定ユニット42及び動き補償ユニット44は、高度に統合されてよいが、概念的な目的のために別個に図示されている。動き推定ユニット42によって実行される動き推定は、動きベクトルを生成するプロセスであり、動きベクトルはビデオブロックの動きを推定する。例えば、現在のフレーム(又は他のコーディングされたユニット)内でコーディングされている現在のブロックに対する基準フレーム(又は他のコーディングされたユニット)内の予測ブロックに対する現在のビデオフレーム又はピクチャー内の、ビデオブロックのPUの変位を、動きベクトルは示してよい。予測ブロックは、絶対差(SAD)、二乗差の和(SSD)、又は他の差分メトリックスの和によって決定され得る、画素差に関してコーディングされるブロックに密接に一致することが見出されるブロックである。いくつかの例では、エンコーダ22は、基準フレームメモリ64に記憶された基準ピクチャーのサブ整数画素位置の値を計算してよい。例えば、エンコーダ22は、基準ピクチャーの1/4画素位置、1/8画素位置、又は他の小数画素位置の値を補間してよい。よって、動き推定ユニット42は、全画素位置及び小数画素位置に対する動きのサーチを行い、小数画素精度の動きベクトルを出力してよい。
【0073】
動き推定ユニット42は、PUの位置を基準ピクチャーの予測ブロックの位置と比較することにより、インターコーディングされたスライス内のビデオブロックのPUの動きベクトルを算出する。基準ピクチャーは、第1基準ピクチャーリスト(List 0)又は第2基準ピクチャーリスト(List 1)から選択されてよく、これらの各々は基準フレームメモリ64に記憶された1つ以上の基準ピクチャーを識別する。動き推定ユニット42は、演算された動きベクトルをエントロピーコーディングユニット56及び動き補償ユニット44に送る。
【0074】
動き補償ユニット44によって実行される動き補償は、動き推定ユニット42で決定された動きベクトルに基づいて、予測ブロックを取り込み又は生成することを含んでよい。また、いくつかの例では、動き推定ユニット42及び動き補償ユニット44を機能的に統合してよい。現在のビデオブロックのPUに対する動きベクトルを受信すると、動き補償ユニット44は、基準ピクチャーリストのうちの1つにおいて動きベクトルがポイントする予測ブロックを位置させてよい。後述するように、加算器50は、コーディングされた現在のビデオブロックの画素値から予測ブロックの画素値を減算することによって、残差ビデオブロックを形成し、画素差値を形成する。一般に、動き推定ユニット42は、ルミナンス成分に対する動き推定を行い、動き補償ユニット44は、クロミナンス成分とルミナンス成分との両方のために、ルミナンス成分に基づいて計算された動きベクトルを使用する。さらにモード選択ユニット40は、ビデオスライスのビデオブロックを復号化する際に復号化器28が使用するために、ビデオブロック及びビデオスライスに関連する構文要素を生成してよい。
【0075】
イントラ予測ユニット46は、上述したように、動き推定ユニット42及び動き補償ユニット44によって実行されるインター予測の代わりに、現在のブロックをイントラ予測してよい。特に、イントラ予測ユニット46は、現在のブロックをエンコードするために使用するイントラ予測モードを決定してよい。いくつかの例では、イントラ予測ユニット46は、例えば、別々のエンコーディングパスの間に、種々のイントラ予測モードを使用して現在のブロックをエンコードしてよい。イントラ予測ユニット46(又は、いくつかの例では、モード選択ユニット40)は、テストされたモードから使用するべき適切なイントラ予測モードを選択してよい。
【0076】
例えば、イントラ予測ユニット46は、種々のテストされたイントラ予測モードに対するレート歪み解析を用いてレート歪み値を計算し、テストされたモードの中で最良のレート歪み特性を有するイントラ予測モードを選択してよい。エンコードされたブロックと、エンコードされたブロックを生成するためにエンコードされたオリジナルの未エンコードのブロックとの間の歪み(又はエラー)の量、ならびに、エンコードされたブロックを生成するために使用されるビットレート(即ち、ビット数)を、一般にレート歪み解析は決定する。イントラ予測ユニット46は、種々のエンコードされたブロックについて、歪みとレートとから比を計算して、どのイントラ予測モードがブロックに対する最良のレート歪み値を示すかを決定してよい。
【0077】
加えて、深度モデリングモード(DMM)を用いて深度マップの深度ブロックをコーディングするように、イントラ予測ユニット46を構成してよい。モード選択ユニット40は、例えばレート歪み最適化(RDO)を用いて、イントラ予測モード及び他のDMMモードよりも良好なコーディング結果を、利用可能なDMMモードがもたらすか否かを決定してよい。深度マップに対応するテクスチャー画像のデータは、基準フレームメモリ64に格納してよい。さらに、動き推定ユニット42及び動き補償ユニット44は、深度マップの深度ブロックをインター予測するように構成されてよい。
【0078】
ブロックに対するイントラ予測モード(例えば、従来のイントラ予測モード又はDMMモードの1つ)を選択した後、イントラ予測ユニット46は、ブロックに対する選択されたイントラ予測モードを示す情報を、エントロピーコーディングユニット56に提供してよい。エントロピーコーディングユニット56は、選択されたイントラ予測モードを示す情報をエンコードしてよい。送信ビットストリーム構成データは、複数のイントラ予測モードのインデックステーブルと、複数の修正イントラ予測モードのインデックステーブル(コードワードマッピングテーブルとも呼ばれる)とを含む。送信ビットストリーム構成データの中に、エンコーダ22は、様々なブロックに対するエンコードコンテキストの定義を含んでよく、各コンテキストに使用するために、最も可能性の高いイントラ予測モードの指示と、イントラ予測モードのインデックステーブルと、修正イントラ予測モードのインデックステーブルとを含んでよい。
【0079】
エンコーダ22は、コーディングされる元のビデオブロックからモード選択ユニット40から予測データを差し引くことによって残差ビデオブロックを形成する。加算器50は、この減算を実行する構成要素又は複数の構成要素を表す。
【0080】
変換処理ユニット52は、離散コサイン変換(DCT)又は概念的に類似した変換などの変換を残差ブロックに適用し、残差変換係数値を含むビデオブロックを生成する。変換処理ユニット52は、概念的にDCTに類似した他の変換を実行してよい。ウェーブレット変換、整数変換、サブバンド変換、又は他のタイプの変換も使用してよい。
【0081】
変換処理ユニット52は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残留情報を画素値ドメインから変換ドメイン、例えば周波数ドメインに変換してよい。変換処理ユニット52は、得られた変換係数を量子化ユニット54に送ってよい。量子化ユニット54は、変換係数を量子化し、ビットレートをさらに低下させる。量子化プロセスは、係数のいくつか又は全てに関連するビット深度を低減してよい。量子化の程度は、量子化パラメータを調整することによって修正してよい。いくつかの例では、量子化ユニット54はその後、量子化された変換係数を含むマトリクスの走査を行ってよい。あるいは、エントロピーコーディングユニット56は、走査を実行してよい。
【0082】
量子化の後、エントロピーコーディングユニット56は、量子化された変換係数をエントロピーコーディングする。例えば、エントロピーコーディングユニット56は、コンテキスト適応可変長コーディング(CAVLC),コンテキスト適応二進算術コーディング(CABAC),構文ベースのコンテキスト適応二進算術コーディング(SBAC),確率間隔分割エントロピー(PIPE)コーディング,又は他のエントロピーコーディング技術を実行してよい。コンテキストベースのエントロピーコーディングの場合、コンテキストは隣接ブロックに基づいてよい。エントロピーコーディングユニット56によるエントロピーコーディングに続いて、エンコードされたビットストリームは、別の装置(例えば、デコーダ28)に送信されてよく、又は後の送信又は検索のためにアーカイブとされてよい。
【0083】
逆量子化ユニット58及び逆変換ユニット60は、それぞれ、逆量子化及び逆変換を適用して、画素ドメイン内の残差ブロックを再構成し、例えば、後に基準ブロックとして使用する。動き補償ユニット44は、基準フレームメモリ64のフレームのうちの1つの予測ブロックに残差ブロックを加えることによって基準ブロックを計算してよい。さらに、動き補償ユニット44は、再構成された残差ブロックに1つ以上の補間フィルタを適用して、動き推定に使用するためのサブ整数画素値を計算してよい。加算器62は、動き補償ユニット44によって生成された動き補償予測ブロックに、再構成された残差ブロックを加算し、基準フレームメモリ64に記憶するための再構成されたビデオブロックを生成する。再構成されたビデオブロックは、後のビデオフレーム内でブロックをインターコーディングするための基準ブロックとして、動き推定ユニット42及び動き補償ユニット44によって使用されてよい。
【0084】
図3は、ビデオコーディング技術を実施し得る復号化器28の一例を示すブロック図である。図3の例では、復号化器28は、エントロピー復号化ユニット70と、動き補償ユニット72と、イントラ予測ユニット74と、逆量子化ユニット76と、逆変換ユニット78と、基準フレームメモリ82と、加算器80とを含む。復号化器28は、いくつかの例では、エンコーダ22に関して説明したエンコーディングパス(図2)に対して概ね相反的な、復号化パスを実行してよい。動き補償ユニット72は、エントロピー復号化ユニット70から受け取った動きベクトルに基づいて予測データを生成してよい。一方、イントラ予測ユニット74は、エントロピー復号化ユニット70から受け取ったイントラ予測モードインジケータに基づいて予測データを生成してよい。
【0085】
エンコードされたビデオスライスのビデオブロックと、関連する構文要素とを表すエンコードされたビデオビットストリームを、復号化プロセスの間、復号化器28はエンコーダ22から受け取る。復号化器28のエントロピー復号化ユニット70は、ビットストリームをエントロピー復号化し、量子化された係数、動きベクトル又はイントラ予測モードインジケータ、及び他の構文要素を生成する。エントロピー復号化ユニット70は、動きベクトル及び他の構文要素を動き補償ユニット72に転送する。復号化器28は、ビデオスライスレベル及び/又はビデオブロックレベルで構文要素を受信してよい。
【0086】
ビデオスライスがイントラコーディングされた(I)スライスとしてコーディングされると、イントラ予測ユニット74は、信号伝達されたイントラ予測モードと、現在のフレーム又はピクチャーの予め復号化されたブロックからのデータとに基づいて、現在のビデオスライスのビデオブロックについての予測データを生成してよい。ビデオフレームがインターコーディングされた(例えば、B,P又はGPB)スライスとしてコーディングされると、動き補償ユニット72は、エントロピー復号化ユニット70から受け取った動きベクトルと他の構文要素とに基づいて、現在のビデオスライスのビデオブロックの予測ブロックを生成する。予測ブロックは、基準ピクチャーリストの1つ内の基準ピクチャーの1つから生成してよい。復号化器28は、基準フレームメモリ82に格納された基準ピクチャーに基づくデフォルトの構築技術を用いて、基準フレームリスト、List 0及びList 1を構築してよい。
【0087】
動き補償ユニット72は、動きベクトル及び他の構文要素を解析することによって、現在のビデオスライスのビデオブロックの予測情報を決定し、予測情報を使用して、復号化される現在のビデオブロックの予測ブロックを生成する。例えば、動き補償ユニット72は、受信された構文要素のいくつかを使用し、ビデオスライスのビデオブロックをコーディングするために使用される予測モード(例えば、イントラ予測又はインター予測)と、インター予測スライスタイプ(例えば、Bスライス、Pスライス、又はGPBスライス)と、スライスの基準ピクチャーリストのうちの1つ以上のための構成情報と、スライスの各インターコーディングされたビデオブロックのための動きベクトルと、スライスの各インターコーディングされたビデオブロックのためのインター予測ステータスと、現在のビデオスライス内のビデオブロックを復号化するための他の情報とを決定する。
【0088】
また、動き補償ユニット72は、補間フィルタに基づいて補間を実行してよい。動き補償ユニット72は、ビデオブロックのエンコード中にエンコーダ22が使用する補間フィルタを使用して、基準ブロックのサブ整数画素に対する補間値を計算してよい。この場合、動き補償ユニット72は、受信された構文要素からエンコーダ22によって使用される補間フィルタを決定し、予測ブロックを生成するために補間フィルタを使用してよい。
【0089】
深度マップに対応するテクスチャー画像のデータは、基準フレームメモリ82に格納してよい。さらに、動き補償ユニット72は、深度マップの深度ブロックをインター予測するように構成してよい。
【0090】
図4は、フレーム群ビットストリーム400の表現である。図示のように、フレーム群ビットストリーム400は、フレーム402の第1グループ(GOF_0)と、フレーム404の第2グループ(GOF_1)とを含む。例示の目的のみのために、フレーム402の第1グループとフレーム404の第2グループは、破線によって互いに分離されている。フレーム402、404の2つのグループが図4に示されているが、任意の数のフレームが、実際の用途ではフレーム群ビットストリーム400に含まれてよいことが理解されるものとする。
【0091】
フレームの第1グループ402及びフレームの第2グループ404はそれぞれ、アクセスユニット406の集合から形成される。アクセスユニット406は、圧縮画像の全部又は一部(例えば、点群)を含むフレームを含むように構成されている。図4のアクセスユニット406は、本明細書では、アトラスフレームを含んでよく、又はアトラスフレームと呼ばれてよい。一実施形態では、アトラスフレームは、コーディングされた構成要素を一緒にマッピングすることで、点群を再構成するのに十分な情報を含むフレームであり、ここで、構成要素は、点の幾何形状、点属性、占有マップ、パッチなどを含む。
【0092】
ここに開示されているのは、柔軟なパッチ配向を可能にするコーディング技術である。本明細書で使用されるように、パッチ配向は、パッチの回転と、鏡像反転と、軸スワッピングと(総称して、回転)を意図する。柔軟なパッチ配向スキームを使用して、パッチは、境界ボックス内に一層効率的にパッキングできる。一層効率的なパッキングにより、境界ボックス内のパッチに占有される面積が、パッチ回転が利用可能でない、又は許容されない技術に比べて削減でき、その結果、さらによいコーディング効率(例えば、ビットストリームをコーディングするために必要とされるビットが一層少ない)がもたらされる。
【0093】
図5は、点群500の表現である。点群500は、規則的な3Dグリッド上の空間の体積表現である。即ち、点群500は3次元(3D)である。図5に示すように、点群500は、3D空間504内に点群コンテンツ502を含む。点群コンテンツ502は、3D空間504内の点の集合(例えば、ボクセル)によって表される。ボクセルは、3次元データの可視化及び解析に使用される、3次元空間における点の色のような、ある数値量を表す体積の要素である。従って、ボクセルは、2D画像における画素の3次元等価物と考えてよい。
【0094】
図5の点群500内の各ボクセルは、座標(例えば、xyz座標)及び1つ以上の属性(例えば、赤/緑/青(RGB)色成分、反射率など)を有する。図5の点群コンテンツ502は、人物を示しているが、点群コンテンツ502は、実用上の任意の他の体積オブジェクト又は画像であってよい。
【0095】
図6は、境界ボックス600上に投影された図5の点群500の表現である。図6に示すように、境界ボックス600は、その2次元(2D)表面又は平面604上に投影されたパッチ602を含む。従って、パッチ602は、3D画像の部分の2D表現である。パッチ602は、まとめて図5の点群コンテンツ502に対応する。ビデオベースの点群コーディング(V-PCC)におけるデータ表現は、点群圧縮とも呼ばれ、この3Dから2Dへの変換に依存する。
【0096】
V-PCCにおけるデータ表現は、例えば、図7の占有マップ710と、図8の幾何図形マップ810と、図9の属性マップ910とを使用して、一組の平面2D画像(例えば、パッチ602)として記述される。
【0097】
図7は、図6の境界ボックス600からの2D投影(例えば、パッチ602)に対応する占有マップ710の表現である。占有マップ710は、二値の形式でコーディングされる。例えば、0は、境界ボックス700の一部がパッチ702のうちの1つによって占有されないことを表す。0によって表される境界ボックス700のそれらの部分は、体積表現(例えば、点群コンテンツ502)の再構成に関与しない。対照的に、1つは、境界ボックス700の一部が、パッチ702の1つによって占有されることを表す。その1つで表される境界ボックス700のそれらの部分は、体積表現(例えば、点群コンテンツ502)の再構成に関与する。
【0098】
図8は、図6の境界ボックス600からの2D投影(例えば、パッチ602)に対応する幾何図形マップ810の表現である。幾何図形マップ810は、パッチ802の各々の輪郭又はトポグラフィを提供又は描写する。即ち、幾何図形マップ810は、境界ボックス800の平面(例えば、平面604)から離れたパッチ802内の各点の距離を示す。
【0099】
図9は、図6の境界ボックス600からの2D投影(例えば、パッチ602)に対応する属性マップ910の表現である。属性マップ910は、境界ボックス900内のパッチ902内の各点の属性を提供又は描写する。属性マップ910内の属性は、例えば、点の色成分であってよい。色成分は、RGBカラーモデル、YUVカラーモデル、又は他の既知のカラーモデルに基づいてよい。
【0100】
現在、パッチ投影(例えば、パッチ602の集合として図6の境界ボックス600上に図5の3D画像504を投影するプロセス)は、パッチの配向を変更することなく実行される。つまり、パッチは元の配向に対して回転又は操作されない。しかし、これは、効率的なパッキングのための準最適解である。これを克服するために、本開示は、柔軟なパッチ配向(例えば、パッチの回転、鏡像反転、及び軸スワッピング)を可能にする技術を提供する。柔軟なパッチ配向スキームを使用して、パッチは、境界ボックス内に一層効率的にパッキングできる。一層効率的なパッキングにより、境界ボックス内のパッチに占有される面積は、パッチ回転が利用可能でない、又は許容されない技術に比べて削減できる。その結果、さらによいコーディング効率(例えば、ビットストリームをコーディングするために必要とされるビットが一層少ない)がもたらされる。
【0101】
図10は、パッチ配向インデックス1000の表現の一実施形態である。パッチ配向インデックス1000は、パッチ1002のための種々の予め定義されたパッチ配向1008を含む。パッチ配向インデックス1000における異なるパッチ配向1008は、識別のために#0から#7までの数字を有する。#0に割り当てられた初期パッチ配向1008は、アンカーパッチ配向と称してよい。図示のように、#0に割り当てられたパッチ配向1008は、#1を有するパッチ配向1008を得るために時計回りに90度回転される。同様に、#1に割り当てられたパッチ配向1008は、#2を有するパッチ配向1008を得るために時計回りに90度回転され、#2に割り当てられたパッチ配向1008は、#3を有するパッチ配向1008を得るために時計回りに90度回転される。
【0102】
なおも図10を参照すると、#0に割り当てられたパッチ配向1008は、#4を有するパッチ配向1008を得るために鏡像反転される(例えば、垂直軸を中心に反転される)。#4に割り当てられたパッチ配向1008は、#5を有するパッチ配向1008を得るために時計回りに90度回転される。#5に割り当てられたパッチ配向1008は、#6を有するパッチ配向1008を得るために時計回りに90度回転される。#6に割り当てられたパッチ配向1008は、#7を有するパッチ配向1008を得るために時計回りに90度回転される。
【0103】
一実施形態では、パッチ配向の対1008は、単純な配向を生成するように形成される。例えば、#0に割り当てられたパッチ配向1008と#7に割り当てられたパッチ配向1008は、単純な配向を形成する。同様に、#1に割り当てられたパッチ配向1008と#6に割り当てられたパッチ配向1008は、単純な配向を形成する。#2に割り当てられたパッチ配向1008と#5に割り当てられたパッチ配向1008は、単純な配向を形成する。#3に割り当てられたパッチ配向1008と#4に割り当てられたパッチ配向1008は、単純な配向を形成する。このように、パッチ配向インデックス1000は、4つの単純な配向を提供する。
【0104】
網羅的な配向(別の呼称は、網羅的な配向マップ)は、パッチ配向インデックス1000内の全てのパッチ配向1008を含む。即ち、図10の図示された実施形態では、パッチ配向1008(#0ないし#7とラベル付けされる)の8つの全てが、網羅的な配向に含まれる。網羅的な配向の使用は、単純な配向に対してより良好な圧縮を提供し得るが、エンコーダにおける余分な計算のコストがかかる。
【0105】
一実施形態によると、パッチ1002は、デフォルトのパッチ配向(例えば、パッチ配向1008の1つ)を有してよい。例えば、パッチ1002は、デフォルト回転を有してよい。パッチ配向1008(例えば、#0ないし#7)の任意の1つが、デフォルト回転であってよい。デフォルトのパッチ配向は、シーケンスパラメータセット(SPS)、ピクチャーパラメータセット(PPS)、又はビットストリームのフレームのグループ(例えば、パッチレベルで)で信号で指示されてよい。
【0106】
一実施形態によると、パッチ1002は、選好されるパッチ配向(例えば、パッチ配向1008の1つ)を有してよい。例えば、パッチ1002は、選好される回転を有してよい。パッチ配向1008(例えば、#0ないし#7)の任意の1つが、選好される回転であってよい。選好されるパッチ配向は、SPS、PPS、又はビットストリームのフレームのグループ(例えば、パッチレベルで)で信号を送ってよい。
【0107】
一実施形態では、パッチ(例えば、パッチ1002)が回転可能であることを示すためにフラグが使用される。一実施形態では、フラグは、パッチ回転イネーブルフラグと指定される。一実施形態では、パッチ回転イネーブルフラグは、1ビットフラグである。パッチ回転イネーブルフラグが第1の値(例えば、0)を持つ場合、パッチは回転できない。パッチ回転イネーブルフラグが第2の値(例えば、1)を持つ場合、パッチの回転が可能である。
【0108】
一実施形態では、パッチ(例えば、パッチ1002)が単純な配向(例えば、2つのパッチ配向1008のうちの1つ)を有することを示すために、フラグが使用される。一実施形態では、フラグは、制限回転イネーブルフラグと指定される。一実施形態では、制限回転イネーブルフラグは、1ビットフラグである。制限回転イネーブルフラグが第1の値(例えば、0)を持つ場合、網羅的な配向がパッチで利用可能である。制限回転イネーブルフラグが第2の値(例えば、1)を持つ場合、単純な配向がパッチで利用可能である。
【0109】
一実施形態では、パッチ(例えば、パッチ1002)が回転されたことを示すためにフラグが使用される。一実施形態では、フラグは、パッチ回転存在フラグと呼ばれる。一実施形態では、パッチ回転存在フラグは、1ビットフラグである。パッチ回転存在フラグが第1の値(例えば、0)を持つ場合、デフォルトのパッチ配向が使用される。パッチ回転存在フラグが第2の値(例えば、1)を有する場合、以下にさらに十分に説明するように、制限回転イネーブルフラグの値に応じて、選好されるパッチ配向、又は網羅的な配向からの8つのパッチ配向1008のいずれかが使用される。一実施形態では、制限回転イネーブルフラグは、3ビットフラグである。
【0110】
図11は、パッチ配向復号化プロセス1100の一実施形態である。パッチ配向復号化プロセス1100は、体積画像を再構成するために、エンコードされたビットストリームを復号化するのに使用されてよい。ブロック1102では、デフォルトのパッチ回転と、パッチに対する選好されるパッチ回転(例えば、2Dパッチ)とが、エンコードされたビットストリームから得られる。デフォルトのパッチ回転及び選好されるパッチ回転は、インデックス番号#0ないし#7のいずれかで表すことができる。
【0111】
ブロック1104では、パッチが処理される。一実施形態では、パッチの処理は、アトラス情報を取得することと、パッチの2D位置と、パッチの3D位置と、パッチについての上述したフラグとを抽出することとを含む。アトラス情報は、復元の目的のために、パッチの復号化とパッチの2D表現から3D表現へのマッピングとを行うことを可能にする情報である。実施形態では、アトラス情報はパッチのリストを含む。
【0112】
ブロック1106では、パッチ回転イネーブルフラグの値が決定される。パッチ回転イネーブルフラグが第1の値(例えば、0)を持つ場合、パッチは回転できない。従って、ブロック1108では、パッチは回転されない。次に、ブロック1110において、パッチは、アトラス情報(別の呼称は、補助情報)に基づいて処理され、体積画像を再構成する。
【0113】
ブロック1106にもどると、パッチ回転イネーブルフラグが第2の値(例えば、1)を有する場合、パッチは回転されてよい。ブロック1112では、制限回転イネーブルフラグの値が決定される。制限回転イネーブルフラグが第1の値(例えば、0)を持つ場合、パッチは、網羅的な配向モードに従って、8つの利用可能なパッチ回転のうちの1つを用いて回転される。
【0114】
ブロック1114では、パッチ回転存在フラグの値が決定される。パッチ回転存在フラグが第1の値(例えば、0)を持つ場合、デフォルトのパッチ配向が使用される。従って、ブロック1116では、デフォルト回転がパッチに使用される。一実施形態では、パッチのグループ内の全てのパッチが同じデフォルトのパッチ配向を使用するので、追加の信号伝達は必要ない。次に、ブロック1110において、パッチは、アトラス情報に基づいて処理され、体積画像を再構成する。
【0115】
ブロック1114にもどると、パッチ回転存在フラグが第2の値(例えば、1)を有する場合、利用可能な配向のうちの1つ(インデックス番号#0ないし#7のうちの1つで表される)が使用される。一実施形態では、使用されるパッチ配向は、3ビットのフラグを使用して信号で指示される。次に、ブロック1110において、パッチは、アトラス情報に基づいて処理され、体積画像を再構成する。
【0116】
ブロック1112にもどると、制限回転イネーブルフラグが第2の値(例えば、1)を有する場合、パッチは、単純な配向モードに従って、2つのパッチ回転のうちの1つを使用して回転される。ブロック1120では、パッチ回転存在フラグの値が決定される。パッチ回転存在フラグが第1の値(例えば、0)を持つ場合、デフォルトのパッチ配向が使用される。従って、ブロック1116では、デフォルト回転がパッチに使用される。一実施形態では、パッチのグループ内の全てのパッチが同じデフォルトのパッチ配向を使用するので、追加の信号伝達は必要ない。次に、ブロック1110において、パッチは、アトラス情報に基づいて処理され、体積画像を再構成する。
【0117】
パッチ回転存在フラグが第2の値(例えば、1)を持つ場合、選好されるパッチ配向が使用される。従って、ブロック1122では、選好される回転がパッチに使用される。一実施形態では、パッチのグループ内の全てのパッチが同じ選好されるパッチ配向を使用するので、追加の信号伝達は必要ない。次に、ブロック1110において、パッチは、アトラス情報に基づいて処理され、体積画像を再構成する。
【0118】
図12は、復号化器(例えば、エントロピー復号化ユニット70)によって実施される点群コーディング(PCC)の方法1200の一実施形態である。方法1200は、体積画像を再構成するために、エンコードされたビットストリームを復号化するために実行されてよい。ブロック1202では、2次元(2D)パッチのためのパッチ回転イネーブルフラグとアトラス情報とを含むビットストリームが受信される。アトラス情報(別の呼称は、補助情報)は、コーディングされた構成要素を一緒にマッピングすることで、点群を再構成するのに十分な情報を含む。ここで、構成要素は、点の幾何形状、点属性、占有マップ、パッチなどを含む。
【0119】
ブロック1204では、2Dパッチが、パッチ回転イネーブルフラグに基づいて回転されることが可能であると決定される。一実施形態では、パッチ回転イネーブルフラグが1(一)の値に設定される場合、パッチは回転されることが可能である。
【0120】
ブロック1206では、2Dパッチが回転される。2Dパッチは、デフォルトのパッチ回転、選好されるパッチ回転に回転されてよく、又は本明細書に記載される複数の利用可能なパッチ回転のうちの1つに従って回転されてよい。即ち、一実施形態では、デフォルトのパッチ回転及び選好されるパッチ回転のいずれかが使用される単純な配向モードに従って、又は8つの利用可能なパッチ回転のうちの任意の1つが使用される網羅的な配向モードに従って、2Dパッチは回転されてよい。
【0121】
ブロック1208では、3次元(3D)画像が、アトラス情報と回転されたときの2Dパッチとを使用して再構成される。一旦再構成されると、3D画像は、電子デバイス(例えば、スマートフォン、タブレット、ラップトップコンピュータなど)のディスプレイ上にユーザに対して表示されてよい。
【0122】
図13は、エンコーダ(例えば、エントロピーコーディングユニット56)によって実施される点群コーディング(PCC)方法1300の実施形態である。方法1300は、復号化器に向かって伝送するために、体積画像をビットストリームにエンコードするのに実行されてよい。ブロック1302では、3次元(3D)画像(例えば、体積画像)が得られる。ブロック1304では、複数の利用可能なパッチ回転を使用して、3D画像に対して複数の2次元(2D)投影が決定される。一実施形態によると、利用可能なパッチ回転は、図10に示すパッチ配向1008である。しかし、他のパッチ回転を用いてよい。



【0123】
ブロック1306では、複数の2D投影のうちの1つが選択される。複数の2D投影のうちの1つは、その2D投影が、他の2D投影と比較して境界ボックスの最も効率的なパッキングをもたらす場合に選択されてよい。境界ボックスの最も効率的なパッキングは、最小量の面積を使用してよく、エンコーダによる最小集約的な計算をもたらすことなどができる。
【0124】
ブロック1308では、複数のフラグが、複数の2D投影のうちの選択された1つに従って設定される。一実施形態では、パッチ回転フラグ、制限回転イネーブルフラグ、パッチ回転存在フラグ、及び、複数の利用可能なパッチ回転のうちのいずれがセットされるかを識別するフラグの各々である。
【0125】
ブロック1310では、3D画像を再構成するために、複数のフラグとアトラス情報とを含むビットストリームが生成される。ブロック1312では、復号化器への送信のために、ビットストリームは記憶される。一実施形態では、ビットストリームは復号化器に向かって送信される。
【0126】
図14は、本開示の一実施形態によるコーディングデバイス1400(例えば、エンコーダ22、復号化器28など)の概略図である。コーディングデバイス1400は、本明細書に開示される方法及びプロセスを実施するのに適している。コーディングデバイス1400は、データを受信するための入口ポート1410及び受信機ユニット(Rx)1420と、データを処理するためのプロセッサ、論理ユニット、又は中央処理ユニット(CPU)1430と、データを送信するための送信機ユニット(Tx)1440及び出口ポート1450と、データを記憶するためのメモリ1460とを含む。コーディングデバイス1400はまた、光信号又は電気信号の出入りのために、入口ポート1410、受信機ユニット1420、送信機ユニット1440、及び出口ポート1450に結合された、光対電気(OE)構成要素と電気対光(EO)構成要素とを含んでよい。
【0127】
プロセッサ1430は、ハードウェア及びソフトウェアによって実現される。プロセッサ1430は、1つ以上のCPUチップ、コア(例えば、マルチコアプロセッサ)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、及びデジタル信号プロセッサ(DSP)として実施されてよい。プロセッサ1430は、入口ポート1410と、受信機ユニット1420と、送信機ユニット1440と、出口ポート1450と、及びメモリ1460とに対して通信する。プロセッサ1430は、コーディングモジュール1470を備えている。コーディングモジュール1470は、上述の開示された実施形態を実施する。一実施形態によると、コーディングモジュール1470は、再構成された体積画像を投影するように構成された再構成モジュールである。従って、コーディングモジュール1470を含むことは、コーディングデバイス1400の機能性に実質的な改善をもたらし、コーディングデバイス1400の異なる状態への変換をもたらす。これに代えて、コーディングモジュール1470は、メモリ1460に格納された命令として実施され、プロセッサ1430によって実行される。
【0128】
コーディングデバイス1400はまた、ユーザへ、またユーザからデータを通信するための入力及び/又は出力(I/O)装置1480を含んでよい。入出力装置1480は、ビデオデータを表示するためのディスプレイ、オーディオデータを出力するためのスピーカなどの出力装置を含んでよい。入出力装置1480はまた、キーボード、マウス、トラックボールなどの入力装置、及び/又はそのような出力装置と相互作用を行う対応のインターフェースを含んでよい。
【0129】
メモリ1460は、1つ以上のディスク、テープドライブ、及びソリッドステートドライブを含み、オーバーフローデータ記憶装置として使用してよく、このようなプログラムが実行のために選択されたときにプログラムを記憶し、プログラムの実行中に読み出された命令及びデータを記憶する。メモリ1460は、揮発性また不揮発性であってよく、読み出し専用メモリ(ROM),ランダムアクセスメモリ(RAM),三値連想メモリ(TCAM),及びスタティックランダムアクセスメモリ(SRAM)であってよい。
【0130】
図15は、コーディングする手段1500の実施形態の概略図である。一実施形態では、コーディングする手段1500は、コーディングデバイス1502(例えば、エンコーダ22又は復号化器28)の中に実施される。コーディングデバイス1502は受信手段1501を含む。受信手段1501は、エンコードするピクチャーを受信するように構成され、又は復号化するビットストリームを受信するように構成されている。コーディングデバイス1502は、受信手段1501に結合された送信手段1507を含む。送信手段1507は、ビットストリームを復号化器に送信するか、又は復号化された画像をディスプレイ手段(例えば、I/O装置1480の1つ)に送信するように構成されている。
【0131】
コーディングデバイス1502は、記憶手段1503を含む。記憶手段1503は、受信手段1501又は送信手段1507のうちの少なくとも1つに結合される。記憶手段1503は、命令を記憶するように構成されている。コーディングデバイス1502はまた、処理手段1505を含む。処理手段1505は、記憶手段1503に結合される。処理手段1505は、本明細書に開示される方法を実行するために、記憶手段1503に記憶された命令を実行するように構成されている。
【0132】
一実施形態では、ここに開示された概念を実施するのに適した構文が提供される。
【0133】
可能な構文定義を以下に説明する。
【表1】

補助情報データユニット修正
【表2】
【0134】
以上のことから、パッチの配向は、デフォルトの投影プロセスに対して異なってよいことが認識されるものとする。パッチの配向は、1ビットフラグを使用して、簡略化された方法で信号で指示されてよい。デフォルト配向と選好される配向とを切り替えるメカニズムが導入される。
【0135】
本開示においていくつかの実施形態が提供されたが、開示されたシステムと方法とは、本開示の精神又は範囲から逸脱することなく、多くの他の特定の形態で実施できることが理解されてよい。本例は、例示的であって限定的でないとみなされるものとし、その意図は、本明細書に与えられた詳細に限定されないものとする。例えば、種々の要素又は構成要素を別のシステムに組み合わせ又は統合してよく、又はある特徴を省略してよく、又は実施しなくてよい。
【0136】
さらに、様々な実施形態では個別又は別個に記載及び図示された技術、システム、サブシステム、及び方法は、本開示の範囲から逸脱することなく、他のシステム、構成要素、技術、又は方法と組み合わせ又は統合してよい。変更、置換、及び改変の他の例は、当業者によって確認可能であり、本明細書に開示された精神及び範囲から逸脱することなく行ってよい。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15