(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-05-10
(54)【発明の名称】点群属性コーディングの加重中央値を予測するための手法及びデバイス並びにコンピュータプログラム
(51)【国際特許分類】
H04N 19/597 20140101AFI20220427BHJP
H04N 19/70 20140101ALI20220427BHJP
H04N 19/94 20140101ALI20220427BHJP
【FI】
H04N19/597
H04N19/70
H04N19/94
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021536057
(86)(22)【出願日】2020-03-20
(85)【翻訳文提出日】2021-06-29
(86)【国際出願番号】 US2020023757
(87)【国際公開番号】W WO2020191258
(87)【国際公開日】2020-09-24
(32)【優先日】2019-03-20
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-03-19
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】イエア,セフーン
(72)【発明者】
【氏名】ヴォソウギ,アラシュ
(72)【発明者】
【氏名】リィウ,シャン
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MD04
5C159ME11
5C159PP03
5C159PP13
5C159RC11
5C159UA02
5C159UA05
(57)【要約】
点群属性コーディングを予測する方法であって、1つ又は複数の候補点を含む点群データを受信するステップと、受信した点群データから1つ又は複数の候補点に対する1つ又は複数の候補属性値を抽出するステップと、を含む。当該方法は、抽出した1つ又は複数の候補属性値と重み係数に基づいて加重中央値を計算するステップであって、重み係数は抽出した候補属性値に関連する候補ベクトルの相対的な重要度係数に対応するステップをさらに含む。当該方法は、加重中央値の計算に応じて、1つ又は複数の予測インデックスを候補点に割り当てるステップであって、前記予測インデックスはビデオエンコーディングのための属性データに対応するステップと、最も低い予測インデックスを有する候補点に関連する属性データをエンコードするように、メディアコンテンツを処理するステップと、をさらに含む。
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサーが実行する、ビデオストリームにおけるメディアコンテンツを処理する方法であって、前記方法は点群属性コーディングを予測することを含み、前記方法は、
1つ又は複数の候補点を含む点群データを受信するステップと、
受信した点群データから、前記1つ又は複数の候補点に対する1つ又は複数の候補属性値を抽出するステップと、
抽出した1つ又は複数の候補属性値と重み係数に基づいて、加重中央値を計算するステップであって、前記重み係数は、抽出した候補属性値に関連する候補ベクトルの相対的な重要度係数に対応するステップと、
前記加重中央値の計算に応じて、1つ又は複数の予測インデックスを前記候補点に割り当てるステップであって、前記予測インデックスはビデオエンコーディングのための属性データに対応するステップと、
最も低い予測インデックスを有する前記候補点に関連する前記属性データをエンコードするように、前記メディアコンテンツを処理するステップと、を含む方法。
【請求項2】
前記重み係数は、前記候補ベクトルの相対的な重要度係数に反比例する請求項1に記載の方法。
【請求項3】
前記重み係数は、候補点と、点サンプルからの1つ又は複数の他の点との間の幾何学的距離に対応する請求項1に記載の方法。
【請求項4】
前記1つ又は複数の候補属性値と前記幾何学的距離に基づいて、候補予測値のバイラテラル距離を決定するステップをさらに含む請求項3に記載の方法。
【請求項5】
1つ又は複数のノルム関数を使用してコスト関数を計算し、位置メトリックに関連するノルムは、属性メトリックに関連するノルムと異なる請求項1乃至4の何れか一項に記載の方法。
【請求項6】
単調増加関数と1つ又は複数の付加量を使用して、前記加重中央値を計算し、前記1つ又は複数の付加量は、1つ又は複数の候補点に関連する類似度係数に反比例する請求項1乃至5の何れか一項に記載の方法。
【請求項7】
前記候補点に関連する1つ又は複数のカラーチャネルに対して前記抽出するステップと前記計算するステップを実行する請求項1乃至6の何れか一項に記載の方法。
【請求項8】
前記候補属性値に基づいて、計算した加重中央値を使用して、点群の隣接サンプルを並び替える請求項1乃至7の何れか一項に記載の方法。
【請求項9】
インデックスを、中央値の優先順位で、並べ替えたサンプルに割り当てる請求項8に記載の方法。
【請求項10】
自己適応点群属性コーディングのためのデバイスであって、
コンピュータプログラムコードを記憶するように配置される少なくとも1つのメモリと、
前記少なくとも1つのメモリにアクセスし、前記コンピュータプログラムコードに従って動作するように配置される少なくとも1つのプロセッサーと、を含み、
前記コンピュータプログラムコードは、
前記少なくとも1つのプロセッサーに、請求項1乃至9の何れか一項に記載の方法を実行させるデバイス。
【請求項11】
命令を含むコンピュータプログラムであって、前記命令は、少なくとも1つのプロセッサーに、
請求項1乃至9の何れか一項に記載の方法を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2019年3月20日に米国特許商標庁に提出した、出願番号が62/821,075である米国仮特許出願、及び2020年3月19日に提出した、出願番号が16/823,797である米国特許出願の優先権を主張し、本出願で、その全ての内容を援用するものとする。
【0002】
実施形態に係る方法及びデバイスは、図に基づく点群圧縮(G-PCC)に関し、より具体的に、自己適応点群属性コーディングのための方法及びデバイスに関する。
【背景技術】
【0003】
世界の高度な3次元(3D)表現により、より没入型のインタラクションと通信が可能になり、マシンが私たちの世界を理解し、解釈し、ナビゲートすることが可能になる。3D点群は、そのような情報の表現を可能にする形で登場される。点群データに関連する多くのユースケースが特定されており、点群の表現と圧縮に対応する要件が開発されている。
【0004】
点群は、3D空間内の点の集合であり、各点は、例えば色、材料属性などの関連する属性を有する。点群を使用して、オブジェクト又はシナリオをこれらの点の組み合わせに再構築できる。これらの点は、様々な設置の複数のカメラ及び深度センサーを使用してキャプチャでき、数千から数十億の点で構成でき、再構築されたシナリオをリアルに表現する。
【0005】
点群を表すためのデータの量を減らすためには、圧縮技術が必要である。そのため、リアルタイム通信と6自由度(6 DoF)仮想現実には、点群を不可逆圧縮するための技術が必要である。また、自動運転および文化遺産適用などの動的マッピングの背景で、可逆点群圧縮のための技術が求められている。動画専門家集団(MPEG)は、幾何と属性(例えば、色と反射率、スケーラブル/プログレッシブエンコーディング、時間の経過とともにキャプチャされた点群シーケンスのエンコーディング、及び点群のサブセットへのランダムアクセス)の圧縮を解決するための標準の作業を開始した。
【0006】
図1は、G-PCCにおいて詳細レベル(LoD)を生成する方法を示す図である。
【0007】
図1を参照すると、現在のG-PCC属性コーディングにおいて、各3D点の距離に基づいて、各3D点のLoDグループ100(例えば、P0からP9)を生成し、そして、3D点の元の順序105ではなく、3D点のLoDの順序110に基づく予測を適用して、各LoDにおける3D点の属性値をエンコードする。例えば、3D点P2の前にエンコード又はデコードされた3D点P0、P5及びP4の距離に基づく加重平均値を計算することによって、3D点P2の属性値を予測する。
【0008】
G-PCCにおける現在アンカー方法は、次のように実行する。
【0009】
まず、隣接値の差異を検査するために、3D点の近傍の変動性を計算する。変動性が閾値より低い場合、属性値(a
i)
i∈0…k-1を予測することによって、現在の点iの最近傍の距離に基づく線形補間処理を使用して、距離に基づく加重平均予測の計算を実行する。
【数1】
を現在の点iのk個の最近傍の集合とし、
【数2】
をデコード/再構築された属性値とし、
【数3】
を現在の点iからの距離とする。そして、属性値
【数4】
の予測は、次の式に示すようである。
【0010】
【0011】
なお、属性をエンコードする場合、全ての点群の幾何的な位置は既に利用可能である。また、隣接点とその再構築された属性値の両方は、エンコーダーとデコーダーで、いずれもk次元ツリー構造として利用でき、当該k次元ツリー構造は、同じ方式で各点に対する最近傍探索を容易にする。
【0012】
次に、変動性が閾値より高い場合、レート歪み最適化(RDO)予測値の選択を実行する。LoDを生成する場合の隣接点探索の結果に基づいて、複数の予測値候補又は候補予測値を作成する。例えば、予測を使用して3D点P2の属性値をエンコードする場合、3D点P2から3D点P0、P5及びP4までの距離の加重平均値を、0に等しい予測値インデックスに設置する。そして、3D点P2から最も近い隣接点P4までの距離を1に等しい予測値インデックスに設置する。また、3D点P2からそれぞれに次の最も近い隣接点P5及びP0までの距離を、2及び3に等しい予測値インデックスに設置する。以下の表1に示す。
【表1】
【0013】
予測値候補を作成した後、レート歪み最適化処理を適用して、最適な予測値を選択し、そして、選択された予測値インデックスを切り捨てられた単項(TU)コードにマッピングし、切り捨てられた単項(TU)コードのバイナリ値(bin)を算術符号化する。なお、短いTUコードは、表1のうち小さい予測値インデックスに割り当てる。
【0014】
予測値候補の最大数MaxNumCandが定義され、属性ヘッダーにエンコードされる。現在の実現形態では、予測値候補の最大数MaxNumCandを予測における最近傍の数(numberOfNearestNeighborsInPrediction)+1に等しいように設置し、そして切り捨てられた単項2値化により、予測値インデックスをエンコード及びデコードする。
【0015】
G-PCCにおいて属性コーディングに対する予測では、表1に示すように、予測値候補の選択順序が固定される。しかしながら、データ特徴と変動性閾値によって、選択した予測値インデックスの頻度が表1に示す固定順序に従わないため、圧縮効率が低下する。
【発明の概要】
【課題を解決するための手段】
【0016】
実施形態によれば、少なくとも1つのプロセッサーが実行する、点群属性コーディングを予測する方法であって、前記方法は、1つ又は複数の候補点を含む点群データを受信するステップと、受信した点群データから1つ又は複数の候補点に対する1つ又は複数の候補属性値を抽出するステップと、を含む。当該方法は、抽出した1つ又は複数の候補属性値と重み係数に基づいて加重中央値を計算するステップであって、重み係数は抽出した候補属性値に関連する候補ベクトルの相対的な重要度係数に対応するステップをさらに含む。当該方法は、加重中央値の計算に応じて、ビデオエンコーディングのための属性データに対応する1つ又は複数の予測インデックスを候補点に割り当てるステップと、最も低い予測インデックスを有する候補点に関連する属性データをエンコードするように、メディアコンテンツを処理するステップと、をさらに含む。
【0017】
実施形態によれば、自己適応点群属性コーディングのためのデバイスであって、コンピュータプログラムコードを記憶するように配置される少なくとも1つのメモリと、少なくとも1つのメモリをアクセスしコンピュータプログラムコードに従って動作するように配置される少なくとも1つのプロセッサーと、を含む。コンピュータプログラムコードは、少なくとも1つのプロセッサーに、1つ又は複数の候補点を含む点群データを受信させるように配置される受信コードと、少なくとも1つのプロセッサーに、受信した点群データから1つ又は複数の候補点に対する1つ又は複数の候補属性値を抽出させるように配置される抽出コードと、を含む。コンピュータプログラムコードは、少なくとも1つのプロセッサーに、抽出した1つ又は複数の候補属性値と重み係数に基づいて加重中央値を計算させる計算コードであって、重み係数は抽出した候補属性値に関連する候補ベクトルの相対的な重要度係数に対応する計算コードをさらに含む。コンピュータプログラムコードは、少なくとも1つのプロセッサーに、加重中央値の計算に応じて、ビデオエンコーディングのための属性データに対応する1つ又は複数の予測インデックスを候補点に割り当てさせるように配置される割り当てコードと、1つ又は複数のプロセッサーに、最も低い予測インデックスを有する候補点に関連する属性データをエンコードするように、メディアコンテンツを処理させるように配置される処理コードと、をさらに含む。
【0018】
実施形態によれば、命令を記憶する非一時的なコンピュータ可読記憶媒体であって、前記命令により、少なくとも1つのプロセッサーに、1つ又は複数の候補点を含む点群データを受信するステップと、受信した点群データから1つ又は複数の候補点に対する1つ又は複数の候補属性値を抽出するステップと、を実行させる。当該命令により、少なくとも1つのプロセッサーに、抽出した1つ又は複数の候補属性値と重み係数に基づいて加重中央値を計算するステップであって、重み係数は抽出した候補属性値に関連する候補ベクトルの相対的な重要度係数に対応するステップを実行させる。
【図面の簡単な説明】
【0019】
【
図1】G-PCCにおいてLoDを生成する方法を示す図である。
【0020】
【
図2】実施形態による通信システムのブロック図である。
【0021】
【
図3】実施形態によるG-PCCコンプレッサ及びG-PCCデコンプレッサの環境内の配置方式を示す図である。
【0022】
【
図4】実施形態によるG-PCCコンプレッサの機能ブロック図である。
【0023】
【
図5】実施形態によるG-PCCデコンプレッサの機能ブロック図である。
【0024】
【
図6】実施形態による自己適応点群属性コーディングのための方法のフローチャートである。
【0025】
【
図7】実施形態による自己適応点群属性コーディングのためのデバイスのブロック図である。
【0026】
【
図8】実施形態の実現に適したコンピュータシステムの図である。
【発明を実施するための形態】
【0027】
本文に記載の実施形態は、自己適応点群属性コーディングのための方法及びデバイスを提供する。補間に基づく予測では、重み係数を使用して、予測のために隣接する属性値の加重和(weighted-sum)を形成でき、前記重み係数は、現在サンプルとその隣接する各サンプルのそれぞれとの間の幾何学距離の逆数であり得る。属性値がスムーズまたは均一に変化する領域において、これは効果的である。しかしながら、その他の場合、属性距離と幾何学距離の間の関連性が非常に低い可能性があるため、幾何に基づく属性加重予測は無効になる。従って、点群属性の予測信号を有利に形成することができ、当該点群属性は、属性信号コーディングの特徴を使用できる。
【0028】
図2は、実施形態による通信システム200のブロック図である。通信システム200は、ネットワーク250を介して相互接続された少なくとも2つの端末210及び220を含み得る。データの一方向伝送の場合、第1の端末210は、ローカル位置で点群データをエンコードし、ネットワーク250を介して第2の端末220に伝送することができる。第2の端末220は、ネットワーク250から第1の端末210のエンコードされた点群データを受信し、エンコードされた点群データをデコードしてデコードされた点群データを表示することができる。一方向のデータ伝送は、メディアサービスアプリケーションなどで一般的である。
【0029】
図2は、第2のペアの端末230及び240も示した。第2のペアの端末230及び240は、例えば、ビデオ会議中に発生する可能性があるエンコードされた点群データの双方向伝送をサポートするために提供される。データの双方向伝送の場合、各端末230又は240は、ローカル位置でキャプチャされた点群データをエンコードし、ネットワーク250を介して他の端末に伝送することができる。各端末230又は240は、他の端末によって伝送したエンコードされた点群データを受信し、エンコードされた点群データをデコードし、ローカル表示装置にデコードされた点群データを表示することができる。
【0030】
図2において、端末210から240は、サーバー、パーソナルコンピュータ及びスマートフォンとして示したが、実施形態の原理は、これらに限定されない。実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤー、及び/又は専用ビデオ会議機器に適する。ネットワーク250は、端末210から240の間でエンコードされた点群データを伝送するための任意の数のネットワークを示し、例えば、有線及び/又は無線通信ネットワークを含む。通信ネットワーク250は、回路交換及び/又はパケット交換チャネルでデータを交換することができる。代表的なネットワークは、電気通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク及び/又はインターネットを含む。本議論の目的のために、ネットワーク250のアーキテクチャ及びトポロジーは、以下に特別に記載がない限り、実施形態の動作にとって重要でない場合がある。
【0031】
図3は、実施形態によるG-PCCコンプレッサ303及びG-PCCデコンプレッサ310の環境における配置方式を示す図である。開示された主題は、他の点群をサポートするアプリケーションにも同様に適用でき、例えば、ビデオ会議、デジタルテレビ、CD、DVD、メモリスティックなどを含むデジタルメディアに圧縮点群データなどを記憶することを含む。
【0032】
ストリーミングシステム300は、キャプチャサブシステム313を含んでもよく、当該キャプチャサブシステム313は、デジタルカメラなどの点群ソース301を含み、当該点群ソース301は、例えば、非圧縮の点群データ302を作成してもよい。点群ソース301に結合されたG-PCCコンプレッサ303によって、大きいデータ量を有する点群データ302を処理することができる。G-PCCコンプレッサ303は、以下により詳細に説明する開示主題の様々な態様を実現又は実施するために、ハードウェア、ソフトウェア又はそれらの組み合わせを含み得る。少ないデータ量を有するエンコードされた点群データ304は、将来の使用のためにストリーミングサーバー305に記憶することができる。1つ又は複数のストリーミングクライアント306及び308は、ストリーミング伝送サーバー305にアクセスして、エンコードされた点群データ304のコピー307及び309を検索することができる。クライアント306は、G-PCCデコンプレッサ310を含んでもよく、当該G-PCCデコンプレッサ310はエンコードされた点群データの着信コピー307をデコードし、ディスプレイ312又は他の表示装置(図示せず)に表示できる発信(outgoing)点群データ311を作成する。あるストリーミングシステムでは、ビデオコーディング/圧縮規格に従って、エンコードされた点群データ304、307及び309をエンコードする。これらの規格の例は、MPEGによってG-PCCに対して開発した規格を含む。
【0033】
図4は、実施形態によるG-PCCコンプレッサ303の機能ブロック図である。
【0034】
図4に示すように、G-PCCコンプレッサ303は、量子化器405、点除去モジュール410、八分木エンコーダー415、属性伝送モジュール420、LoD生成器425、予測モジュール430、量子化器435及び算術コーダー
440を含む。
【0035】
量子化器405は、入力点群における点の位置を受信する。当該位置は、(x,y,z)座標であり得る。量子化器405はまた、例えば、ズームアルゴリズム及び/又はシフトアルゴリズムを使用して、受信した位置を量子化する。
【0036】
点除去モジュール410は、量子化器405から量子化位置を受信し、受信した量子化位置から重複位置を除去又はフィルタリングする。
【0037】
八分木エンコーダー415は、点除去モジュール410からフィルタリングされた位置を受信し、八分木エンコーディングアルゴリズムを使用して、受信したフィルタリングされた位置を入力点群の八分木を示す占有シンボル(occupancy symbols)にエンコードする。八分木に対応する入力点群のバウンディングボックス(bounding box)は、立方体などの任意の3D形状であってもよい。
【0038】
八分木エンコーダー415は、フィルタリングされた位置に対するエンコーディングに基づいて、受信したフィルタリングされた位置を並べ替える。
【0039】
属性伝送モジュール420は、入力点群における点の属性を受信する。前記属性は、例えば、各点の色又はRGB値及び/又は反射率を含み得る。属性伝送モジュール420は、八分木エンコーダー415から並べ替えた位置を受信する。
【0040】
属性伝送モジュール420は、受信した並べ替えた位置に基づいて、受信した属性を更新する。例えば、属性伝送モジュール420は、受信した属性に対して前処理アルゴリズムのうち1つ又は複数を実行でき、前処理アルゴリズムは、例えば、受信した属性に対して加重及び平均化することと、受信した属性から付加属性を補間することを含む。属性伝送モジュール420は、更新された属性を予測モジュール430に伝送する。
【0041】
LoD生成器425は、八分木エンコーダー415から並べ替えた位置を受信し、LoD生成器425は、受信した並べ替えた位置に対応する点における各点のLoDを取得する。各LoDは点のセットと見なすことができ、点における各点の距離に基づいて各LoDを取得できる。例えば、
図1に示すように、点P0、P5、P4及びP2は、LoD LOD0にあり、点P0、P5、P4、P2、P1、P6及びP3はLoD LOD1にあり、点P0、P5、P4、P2、P1、P6、P3、P9、P8及びP7はLoD LOD2にある。
【0042】
予測モジュール430は、属性伝送モジュール420から伝送された属性を受信し、LoD生成器425から取得された各点のLoDを受信する。予測モジュール430は、受信した各点のLoDに基づいて、受信した属性に予測アルゴリズムを順に適用することにより、受信した属性の予測残差(値)をそれぞれ取得する。予測アルゴリズムは、例えば、補間、加重平均計算、最近傍アルゴリズム、及びRDOのいずれかを含み得る。
【0043】
例えば、
図1に示すように、LoD LOD1及びLOD2にそれぞれ含まれる点P1、P6、P3、P9、P8及びP7の受信した属性の予測残差を取得する前に、まずLoD LOD0に含まれる点P0、P5、P4及びP2の受信した属性に対応する予測残差を取得できる。点P0、P5及びP4の加重平均値に基づいて距離を計算することにより、受信した点P2の属性の予測残差を取得できる。
【0044】
量子化器435は、予測モジュール430から取得した予測残差を受信し、例えばズームアルゴリズム及び/又はシフトアルゴリズムを使用して、受信した予測残差を量子化する。
【0045】
算術コーダー440は、八分木エンコーダー415から占有シンボルを受信し、量子化器435から量子化の予測残差を受信する。算術コーダー440は、受信した占有シンボル及び量子化された予測残差に対して、算術符号化を実行して、圧縮されたビットストリームを取得する。算術符号化は、例えばコンテキスト適応バイナリ算術符号化などの様々なエントロピー符号化アルゴリズムのいずれかを含み得る。
【0046】
図5は、実施形態によるG-PCCデコンプレッサ310の機能ブロック図である。
【0047】
図5に示すように、G-PCCデコンプレッサ310は、算術デコーダー505、八分木デコーダー510、逆量子化器515、LoD生成器520、逆量子化器525、及び逆予測モジュール530を含む。
【0048】
算術デコーダー505は、G-PCCコンプレッサ303から圧縮されたビットストリームを受信し、受信した圧縮ビットストリームに対して算術復号化を実行して、占有シンボル及び量子化された予測残差を取得する。算術復号化は、例えばコンテキスト適応バイナリ算術復号化などの様々なエントロピー復号化アルゴリズムのいずれかを含み得る。
【0049】
八分木デコーダー510は、算術デコーダー505から取得された占有シンボルを受信し、八分木デコードアルゴリズムを使用して、受信した占有シンボルを量子化位置にデコードする。
【0050】
逆量子化器515は、八分木デコーダー510から量子化位置を受信し、例えばズームアルゴリズム及び/又はシフトアルゴリズムを使用して、受信した量子化位置を逆量子化して、入力点群における点の再構築位置を取得する。
【0051】
LoD生成器520は、八分木デコーダー510から量子化位置を受信し、受信した量子化位置に対応する各点のLoDを取得する。
【0052】
逆量子化器525は、取得された量子化予測残差を受信し、例えばズームアルゴリズム及び/又はシフトアルゴリズムを使用して、受信した量子化予測残差を逆量子化して、再構築された予測残差を取得する。
【0053】
逆予測モジュール530は、逆量子化器525から、取得され再構築された予測残差を受信し、LoD生成器520から、取得された各点のLoDを受信する。逆予測モジュール530は、受信した各点のLoDに基づいて、受信した再構築予測残差に対して予測アルゴリズムを順に適用して、受信した再構築予測残差の再構築属性をそれぞれ取得する。予測アルゴリズムは、例えば、補間、加重平均計算、最近傍アルゴリズム及びRDOの各予測アルゴリズムのいずれかを含んでもよい。再構築された属性は、入力点群における点に属する。
【0054】
次に、自己適応点群属性コーディングのための方法及びデバイスを詳細に説明する。上記のG-PCCコンプレッサ303、即ち、予測モジュール430で、このような方法及びデバイスを実現することができる。
【0055】
1つ又は複数の実施形態では、候補属性値の加重中央値は、予測のための属性コーディングに使用できる。例えば、N個の候補隣接属性ベクトル X
jの各々にコスト関数(cost function) f(X
j)を定義して、iは1からNに等しく、jは1からNに等しい。例えば、pが1又は2に等しい場合、X
pノルム
【数6】
を決定できる。重みW
j は、候補隣接属性ベクトルの相対的な重要性を示し、W
jが小さいほど、 X
jが重要になる可能性がある。f(X
j)の出力値を最小化できるベクトルX
jを、加重ベクトルの中央値
に定義できる。従って、コスト関数f(X
j)は、
【数7】
のようである。候補と現在サンプルの間の幾何学的距離をW
jに使用できる。
【0056】
上記した方法の1つの利点は、特に、当該方法では、追加の付加情報のコストを発生させることなく、可能な限り多くの利用可能な候補を使用できることである。一方、他の方法は、現在のG-PCCアンカー方法を使用する場合のように、明示的に最適な予測候補インデックスを通知する。
【0057】
一実施形態では、コスト関数f(X
j)は、次に置き換えることができる。
【数8】
なお、P
i は、i番目の隣接するサンプルの位置を示し、位置メトリックq及び属性メトリックpに使用される1つ又は複数のノルムは、必ずしも同じであるとは限られない。従って、各候補サンプルペアの1つ又は複数のバイラテラル距離を考慮することができる。W
jは、候補と予測対象の現在サンプルとの間の幾何学的距離として設置される。或いは、W
jは、候補X
jの相対的重要性に反比例する値に等しく設置される。より一般的には、
【数9】
は、任意の単調増加関数又は任意の付加量に置き換えることができ、前記の任意の付加量は、i番目と j番目の候補の相対的な類似性に反比例する。
【0058】
一実施形態では、候補サンプル間で、コスト関数値が類似する可能性がある場合、全ての候補属性値の平均値又は加重平均値を選択することができる。他の実施形態では、コスト関数に基づいて、最初のいくつかの候補サンプル属性値のみを使用することができる。一例では、最初のいくつかの候補サンプルの平均を使用できる。
【0059】
別の実施形態では、候補サンプル属性値の平均値は、コスト関数の(N+1)番目の候補として含まれ得る。従って、コスト関数は、それぞれ
【数10】
と
【数11】
になってもよく、i=1,…,Nの場合、Y
iがX
iに等しく、Y
N+1はサンプル平均値又はX
1からX
Nの加重平均値であってもよく、重みは、各候補サンプルと現在の予測サンプルの相対距離によって定義される。また、i=1,…,Nの場合、Q
iはP
iに等しく、Q
N+1は候補のサンプル平均位置であってもよい。
【0060】
別の実施形態では、N>1のベクトル信号をエンコードする場合、そのような準備(provision)が所定のベクトル信号の基本的な統計をよりよく利用できるとき、各チャネルに対して加重中央値予測を実行することができる。
【0061】
別の実施形態では、予測値インデックスは、WTA予測のための隣接サンプルを指定するように構成される。予測に使用できる隣接サンプルの属性値に基づいて、加重中央値メトリックの1つを使用して、予測に使用できる隣接サンプルを並べ替える。中央値の優先順位でインデックスを並べ替えたサンプルに割り当てることができる。各加重中央値メトリックを使用して並べ替えることができる。G-PCCで使用する現在のアンカー法に比べて、加重中央値サンプル予測値は、例えば加重中央値メトリックの順序で低いインデックスを割り当てて、インデックスコーディングコストを削減できる。
【0062】
図6は、実施形態による予測点群属性コーディングの方法600のフローチャートである。いくつかの実現方式では、
図6の1つ又は複数の処理ブロックは、G-PCCデコンプレッサ310によって実行される。いくつかの実現方式では、
図6の1つ又は複数の処理ブロックは、G-PCCデコンプレッサ310から独立するか、G-PCCデコンプレッサ310を含む別の装置又は装置グループ(例えば、G-PCCコンプレッサ303)によって実行される。
【0063】
図6を参照して、第1のブロック610において、方法600は、1つ又は複数の候補点を含む点群データを受信するステップを含む。
【0064】
第2のブロック620において、方法600は、受信した点群データから1つ又は複数の候補点に対する1つ又は複数の候補属性値を抽出するステップを含む。
【0065】
第3のブロック630において、方法600は、1つ又は複数の抽出された候補属性値と重み係数に基づいて加重中央値を計算するステップであって、なお、重み係数は、抽出された候補属性値に関連する候補ベクトルの相対的な重要度係数に対応するステップを含む。
【0066】
第4のブロック640において、方法600は、加重中央値の計算に応じて、1つ又は複数の予測インデックスを候補点に割り当てるステップであって、前記予測インデックスはビデオエンコーディングのための属性データに対応するステップを含む。
【0067】
第5のブロック650において、方法600は、最も低い予測インデックスを有する候補点に関連する属性データをエンコードするように、メディアコンテンツを処理するステップを含む。
【0068】
当該方法は、1つ又は複数の候補属性値と幾何学的距離に基づいて、候補予測値のバイラテラル距離(bilateral distance)を決定するステップをさらに含んでもよい。
【0069】
重み係数は、候補ベクトルの相対的な重要度係数に反比例してもよい。重み係数は、候補点と点サンプルからの他の1つ又は複数の点との間の幾何学的距離に対応してもよい。1つ又は複数のノルム関数を使用してコスト関数を計算し、位置メトリックに関連するノルムは、属性メトリックに関連するノルムと異なってもよい。単調増加関数及び1つ又は複数の付加量を使用して加重中央値を計算し、前記1つ又は複数の付加量は1つ又は複数の候補点に関連する類似度係数に反比例してもよい。候補点に関連する1つ又は複数のカラーチャネルに対して抽出及び計算を実行してもよい。候補属性値に基づいて、計算した加重中央値を使用して、点群の隣接サンプル値を並べ替えて、中央値の優先順位でインデックスを並べ替えられたサンプルに割り当てることができる。
【0070】
図6は、方法600の例示的なブロックを示すが、いくつかの実現方式では、
図6に示したブロックに比べて、方法600は、付加のブロック、より少ないブロック、異なるブロック、又は異なる配置のブロックを含んでもよい。追加的または代替的に、方法600のブロックのうちの2つ又はより多いブロックが並行して実行されてもよい。
【0071】
なお、処理回路(例えば、1つ又は複数のプロセッサー又は1つ又は複数の集積回路)によって提出した方法を実現することができる。一例では、1つ又は複数のプロセッサーは非一時的なコンピュータ可読媒体に記憶されるプログラムを実行し、前記プログラムは、提出した方法における1つ又は複数の方法を実行する。
【0072】
図7は、実施形態による自己適応点群属性コーディングのためのデバイス700のブロック図である。
【0073】
図7を参照して、デバイス700は、受信コード710、抽出コード720、計算コード730、割り当てコード740、及び処理コード750を含む。
【0074】
受信コード710は、少なくとも1つのプロセッサーに、1つ又は複数の候補点を含む点群データを受信させるように配置される。
【0075】
抽出コード720は、少なくとも1つのプロセッサーに、受信した点群データから1つ又は複数の候補点に対する1つ又は複数の候補属性値を抽出させるように配置される。
【0076】
選択コード730は、少なくとも1つのプロセッサーに、1つ又は複数の抽出された候補属性値と重み係数に基づいて加重中央値を計算させるように配置され、なお、重み係数は、抽出された候補属性値に関連する候補ベクトルの相対的な重要度係数に対応する。
【0077】
割り当てコード740は、少なくとも1つのプロセッサーに、加重中央値の計算に応じて、1つ又は複数の予測インデックスを候補点に割り当てさせるように配置され、前記予測インデックスはビデオエンコーディングのための属性データに対応する。
【0078】
処理コード750は、少なくとも1つのプロセッサーに、最も低い予測インデックスを有する候補点に関連する属性データをエンコードするように、メディアコンテンツを処理させるように配置される。
【0079】
デバイス700は、少なくとも1つのプロセッサーに、1つ又は複数の候補属性値と幾何学的距離に基づいて候補予測値のバイラテラル距離を決定させるように配置される決定コードをさらに含んでもよい。
【0080】
重み係数は、候補ベクトルの相対的な重要度係数に反比例してもよい。重み係数は、候補点と点サンプルからの1つ又は複数の他の点との間の幾何学的距離に対応してもよい。1つ又は複数のノルム関数を使用してコスト関数を計算し、位置メトリックに関連するノルムは、属性メトリックに関連するノルムと異なってもよい。単調増加関数及び1つ又は複数の付加量を使用して加重中央値を計算し、前記1つ又は複数の付加量は1つ又は複数の候補点に関連する類似度係数に反比例してもよい。候補点に関連する1つ又は複数のカラーチャネルに対して、抽出及び計算を実行してもよい。候補属性値に基づいて、計算した加重中央値を使用して、点群の隣接サンプル値を並べ替えて、中央値の優先順位でインデックスを並べ替えられたサンプルに割り当てることができる。
【0081】
図8は、実施形態の実施に適したコンピュータシステム800の図である。
【0082】
コンピュータソフトウェアは、任意の適切なマシンコード又はコンピュータ言語でエンコードでき、任意の適切なマシンコード又はコンピュータ言語に対してアセンブル、コンパイル、リンクなどのメカニズムを行い、命令を含むコードを作成でき、これらの命令は、コンピュータ中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)などによって直接に実行されてもよく、解釈(interpretation)やマイクロコード実行などによって実行されてもよい。
【0083】
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバー、スマートフォン、ゲーム装置、モノのインターネット装置等を含む各種類のコンピュータ又はその構成要素で実行できる。
【0084】
図8に示したコンピュータシステム800で使用される構成要素は、本質的に例示的なものであり、各実施形態を実施するためのコンピュータソフトウェアの使用範囲または機能を制限することを意図するものではない。構成要素の配置は、コンピュータシステム800の実施形態に示した構成要素のいずれか1つ構成要素又は構成要素の組み合わせに関連する依存性または要件を有すると解釈されるべきではない。
【0085】
コンピュータシステム800は、いくつかのヒューマンマシンインターフェース入力装置を含み得る。このようなヒューマンマシンインターフェース入力装置は、1つ又は複数の人間のユーザーにより、例えば、触覚入力(例えば、キーストローク、スワイプ、データグローブの動き)、オーディオ入力(例えば、音声、タッピング)、視覚入力(例えば、姿勢)、嗅覚入力(図示せず)を介した入力に応答することができる。ヒューマンマシンインターフェース装置は、例えば、オーディオ(例えば、音声、音楽、環境音)、画像(例えば、スキャン画像、静止画像撮像装置から取得した写真画像)、ビデオ(例えば、2次元ビデオ、立体ビデオを含む3次元ビデオ)のような人間の意識的な入力に必ずしも直接に関連しないあるメディアをキャプチャすることができる。
【0086】
入力ヒューマンマシンインターフェース装置は、キーボード801、マウス802、タッチパッド803、タッチスクリーン810、ジョイスティック805、マイク806、スキャナ807、カメラ808(それぞれ1つのみを示す)の1つ又は複数を含み得る。
【0087】
コンピュータシステム800は、いくつかのヒューマンマシンインターフェース出力装置をさらに含み得る。このようなヒューマンマシンインターフェース出力装置は、例えば触覚出力、音、光及び嗅覚/味覚を通して、1つ又は複数の人間のユーザーの感覚を刺激することができる。そのようなヒューマンマシンインターフェース出力装置は、触覚出力装置(例えば、タッチスクリーン810又はジョイスティック805を介した触覚フィードバックであるが、入力装置として機能しない触覚フィードバック装置もあり得る)、オーディオ出力装置(例えば、スピーカ809、ヘッドマウントヘッドフォン(図示せず))、視覚出力装置(例えば、スクリーン810であり、陰極線管(cathode ray tube、CRT)スクリーン、液晶ディスプレイ(liquid crystal display、LCD)スクリーン、プラズマスクリーン、有機発光ダイオード(organic light-emitting diode、OLED)スクリーンを含み、それぞれタッチスクリーン入力機能あり又はなし、それぞれ触覚フィードバック機能あり又はなし--いくつかのスクリーンは、例えば立体グラフィック、バーチャルリアリティメガネ(図示せず)、ホログラフィックディスプレイ、タバコ缶(図示せず)、及びプリンター(図示せず)で、二次元の視覚的出力または三次元以上の出力を出力する)を含む。グラフィックスアダプタ850は、画像を生成し、画像をタッチスクリーン810に出力する。
【0088】
コンピュータシステム800は、人間がアクセス可能な記憶装置及びそれに関連する媒体をさらに含んでもよく、例えば、CD/DVDなどの媒体821を有するCD/DVD 読み取り専用メモリ(read only memory、ROM)/読み書き(read write、RW)メモリ820の光メディア、サムドライブ822、リムーバブルハードドライブまたはソリッドステートドライブ823、例えば磁気テープ及びフレキシブルディスク(図示せず)のレガシー磁気メディア、専用ROM/専用集積回路(application specific integrated circuit、ASIC)/プログラマブルロジックデバイス(programmable logic device、PLD)に基づく装置、例えばセキュリティドングル(図示せず)などを含む。
【0089】
当業者は、開示の主題に関連して使用される「コンピュータ可読媒体」という用語は、伝送媒体、キャリア、又は他の一時的信号を含まないことを理解すべきである。
【0090】
コンピュータシステム800は、1つ又は複数の通信ネットワーク855へのインターフェースをさらに含み得る。通信ネットワーク855は、例えば無線、有線、光のネットワークであり得る。ネットワーク855は、ローカルエリアネットワーク、ワイドエリアネットワーク、メトロポリタンエリアネットワーク、車載及び産業用ネットワーク、リアルタイムネットワーク、遅延耐性ネットワークなどであり得る。ネットワーク855の例は、例えば、イーサネットのローカルエリアネットワーク、無線ローカルエリアネットワーク(local area network、LAN)、セルラーネットワーク(グローバル移動通信システム(global system for mobile communications、GSM)、第3世代(the third generation、3G)、第4世代(the fourth generation、4G)、第5世代(the fifth generation、5G)、長期進化(long term evolution、LTE)等を含む)、テレビ有線又は無線広域デジタルネットワーク(有線テレビ、衛星テレビ、及び地上波ラジオ・テレビを含む)、車載及び産業用(コントローラーエリアネットワーク(controller area network、CAN)バスを含む)などを含む。ネットワーク855は、一般に、特定の汎用データポート又は周辺バス849(例えば、コンピュータシステム800の汎用シリアルバス(universal serial bus、USB)ポート)に接続される外部ネットワークインターフェースアダプタを必要とし、他のネットワークは、一般に、以下に説明するシステムバス(例えば、PCコンピュータシステムに集積されたイーサネットインターフェース及び/又はスマートフォンコンピュータシステムに集積されたセルラーネットワークインターフェースのネットワークインターフェース854を含む)に接続されることによって、コンピュータシステム800のコアに集積される。これらのネットワーク855のいずれかを使用して、コンピュータシステム800は他のエンティティと通信することができる。このような通信は、一方向の受信専用通信(例えば、放送テレビ)、一方向の送信専用通信(例えば、あるCANバス装置へのCANバス)、又は双方向の通信(例えば、ローカルまたはワイドデジタルネットワークを使用して他のコンピュータシステムに接続する)にすることができる。上記のネットワーク855及びネットワークインターフェース854のそれぞれに、特定のプロトコルとプロトコルスタックを使用できる。
【0091】
上記のヒューマンマシンインターフェース装置、ヒューマンアクセス可能なストレージ装置、及びネットワークインターフェース854は、コンピュータシステム800のコア840に接続することができる。
【0092】
コア840は、1つ又は複数の中央処理ユニット(CPU)841、グラフィックス処理ユニット(GPU)842、フィールドプログラマブルゲートアレイ(Field Programmable Gate Area、FPGA)843形式の専用プログラマブル処理ユニット、特定のタスクのためのハードウェアアクセラレータ844などを含み得る。これらの装置は、読み取り専用メモリ(Read-only Memory、ROM)845、ランダムアクセスメモリ(RAM)846、内部大容量記憶装置847例えばユーザーがアクセスできない内部ハードディスクドライブ、ソリッドステートドライブ(SSD)とともに、システムバス848を介して接続できる。あるコンピュータシステムでは、1つ又は複数の物理プラグの形でシステムバス848にアクセスして、付加のCPU、GPUなどを介して拡張することができる。周辺装置は、直接又は周辺バス849を介して、コアのシステムバス848に接続することができる。周辺バスのアーキテクチャは、周辺コンポーネント相互接続(peripheral component interconnect、PCI)、USBなどを含む。
【0093】
CPU 841、GPU 842、FPGA 843、及びハードウェアアクセラレータ844は、特定の命令を実行でき、これらの命令を組み合わせて上記のコンピュータコードを構成することができる。当該コンピュータコードは、ROM 845又はRAM 846に記憶することができる。遷移データは、RAM 846に記憶され、永久データは、例えば内部大容量記憶装置847に記憶できる。キャッシュメモリを使用して、メモリ装置の任意の記憶装置の高速記憶および検索を実現して、当該キャッシュメモリは、CPU 841、GPU 842、内部大容量記憶装置847、ROM 845、RAM 846などと密接に関連してもよい。
【0094】
コンピュータ可読媒体は、各コンピュータによって実現される動作を実行するためのコンピュータコードを有する。媒体及びコンピュータコードは、実施形態の目的のために特別に設計および構築された媒体及びコンピュータコードであるか、又は媒体及びコンピュータコードは、コンピュータソフトウェア分野の当業者に知られ取得可能なタイプであってもよい。
【0095】
一例として、非限定的な方式で、アーキテクチャを有するコンピュータシステム800、特にコア840は、プロセッサー(CPU、GPU、FPGA、アクセラレータなどを含む)により、1つ又は複数の有形コンピュータ可読媒体に実装されたソフトウェアを実行して、機能を提供する。このようなコンピュータ可読媒体は、上記のようなユーザーがアクセス可能な大容量記憶装置に関連する媒体、及びコア840の特定の非一時的記憶装置、例えば、コア内部大容量記憶装置847又はROM 845であり得る。各実施形態を実現するソフトウェアは、このような装置に記憶され、コア840によって実行される。特定の必要に応じて、コンピュータ可読媒体は、1つ又は複数の記憶装置又はチップを含み得る。ソフトウェアは、コア840、特にそのプロセッサー(CPU、GPU、FPGAなどを含む)に、本明細書に記載の特定処理又は特定処理の特定部分を実行させて、RAM 846に記憶されているデータ構造の定義すること、ソフトウェアによって定義された処理に従ってこれらのデータ構造を補正することを含む。追加的または代替的に、コンピュータシステムは、ハードワイヤ又は他の方式で回路(例えば、アクセラレータ844)に具体化されたロジックによって機能を提供して、当該ロジックは、本明細書に記載の特定処理又は特定処理の特定部分を実行するために、ソフトウェアを置き換えるか、又はソフトウェアとともに作動することができる。必要に応じて、関連するソフトウェアはロジックをカバーでき、逆に、関連するロジックはソフトウェアをカバーできる。必要に応じて、関連するコンピュータ可読媒体は、ソフトウェアを実行するための回路(例えば、集積回路(IC))、ロジックを実行するための回路、又はその両方をカバーできる。実施形態は、ハードウェアとソフトウェアの任意の適切な組み合わせを含む。
【0096】
本開示はいくつかの例示的な実施形態を記載しているが、本開示の範囲内にある変更、置換、および様々な同等物が存在する。従って、当業者は、本明細書に明示的に開示されていないか又は説明されていないが、本開示の原理を実施する、本開示の精神および範囲内にある多くのシステムおよび方法を設計できる。
【国際調査報告】