(57)【要約】      （修正有）【課題】高品質・高速の映像伝送のためにポイントクラウドを圧縮するポイントクラウドパッチ処理方法および装置を提供する。【解決手段】ポイントクラウドパッチ処理装置は、入出力装置と、保存装置と、プロセッサとを含む。入出力装置は、ポイントクラウドデータを受信するために使用される。保存装置は、複数の方向に対応するインデックスを記録したインデックステーブルを保存するために使用される。プロセッサは、入出力装置および保存装置に結合され、プログラムを実行することにより、ポイントクラウドのビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化し、インデックスを利用してインデックステーブルを検索し、複数のパッチの方向を取得するとともに、この方向に基づいてパッチ映像を変換して、ポイントクラウドの複数のパッチを還元し、還元後のパッチを利用して、ポイントクラウドを再構築する。【選択図】図８
2020017946.tif 000002
【特許請求の範囲】
【請求項１】
ポイントクラウドデータを受信する入出力装置と、
複数の方向に対応するインデックスを記録したインデックステーブルを保存する保存装置と、
前記入出力装置および前記保存装置に結合されたプロセッサと、
を含み、プログラムを実行することにより、
前記ポイントクラウドの複数のパッチ（patch）を生成し、前記ポイントクラウドが３Ｄ空間内の複数のポイントを含み、各前記パッチが前記ポイントクラウドの一部に対応し、
各前記パッチのパッチ映像を生成するのに適している方向を決定するとともに、前記方向に基づいて各前記パッチを変換してパッチ映像を生成し、
前記パッチ映像を実装して前記インデックステーブルを検索することにより、各前記パッチの前記方向に対応するインデックスを取得するポイントクラウドパッチ処理装置。
【請求項２】
前記プロセッサが、各前記パッチが既定の方向に回転するのに適しているかどうかを決定し、回転するのに適している場合、前記パッチを回転させた後に前記パッチ映像に挿入し、回転するのに適していない場合、直接前記パッチを前記パッチ映像に挿入する請求項１に記載のポイントクラウドパッチ処理装置。
【請求項３】
前記プロセッサが、各前記パッチの広さが高さよりも大きいかどうかを判断することを含み、判断結果が大きくない場合、前記パッチを既定の方向に回転させた後に前記パッチ映像に挿入し、判断結果が大きい場合、直接前記パッチを前記パッチ映像に挿入する請求項１に記載のポイントクラウドパッチ処理装置。
【請求項４】
前記プロセッサが、各前記パッチが０°回転するのに適しているか、または２７０°鏡像回転するのに適しているかを決定することと、各前記パッチを決定した方向に基づいて回転させた後に前記パッチ映像を挿入することと、を含む請求項１に記載のポイントクラウドパッチ処理装置。
【請求項５】
前記プロセッサが、各前記パッチがｎ個の既定の方向のうちの１つに回転するのに適しているかを決定し、ｎが２よりも大きい整数であることと、各前記パッチを決定した前記既定の方向に基づいて回転させた後に前記パッチ映像を挿入することと、を含む請求項１に記載のポイントクラウドパッチ処理装置。
【請求項６】
前記ｎ個の方向が、０°、９０°、１８０°、２７０°回転および０°、９０°、１８０°、２７０°鏡像回転の任意の組み合わせを含む請求項５に記載のポイントクラウドパッチ処理装置。
【請求項７】
前記プロセッサが、前記ｎ個の既定の方向からｍ個の既定の方向を選択し、ｎが２よりも大きい整数であり、ｍがｎよりも小さい整数であることと、各前記パッチが前記ｍ個の既定の方向のうちの１つに回転するのに適しているかを決定することと、各前記パッチを決定した前記方向に基づいて回転させた後に前記パッチ映像を挿入することと、を含む請求項１に記載のポイントクラウドパッチ処理装置。
【請求項８】
前記プロセッサが、さらに、前記方向に基づいて各前記パッチを回転させることと、回転後の各前記パッチの前記パッチ映像を生成するのに適しているオフセット（offset）を決定するとともに、前記オフセットに基づいて各前記パッチを平行移動させた後にパッチ映像を生成することと、を含み、前記オフセットが、各前記パッチを平行移動させた後の位置の前記パッチの原点または前記ポイントクラウドの原点に対するオフセットを含む請求項１に記載のポイントクラウドパッチ処理装置。
【請求項９】
ポイントクラウドのビットストリームを受信する入出力装置と、
複数の方向に対応するインデックスを記録したインデックステーブルを保存する保存装置と、
前記入出力装置および前記保存装置に結合されたプロセッサと、
を含み、プログラムを実行することにより、
前記ビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化し、
前記インデックスを利用してインデックステーブルを検索し、前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換し、前記ポイントクラウドの複数のパッチを還元し、
還元後の前記パッチを利用して前記ポイントクラウドを再構築するポイントクラウドパッチ処理装置。
【請求項１０】
前記プロセッサが、前記インデックスを利用して前記インデックステーブルを検索することにより、各前記パッチが回転したかどうかを判断することを含み、回転した場合、前記パッチを反転させて前記パッチを還元し、回転していない場合、前記パッチを変換しない請求項９に記載のポイントクラウドパッチ処理装置。
【請求項１１】
前記プロセッサが、前記インデックスを利用して前記インデックステーブルを検索することにより、前記パッチが０°回転したか、または２７０°鏡像回転したかを判断することと、各前記パッチを判断した方向に基づいて反転させることと、を含む請求項９に記載のポイントクラウドパッチ処理装置。
【請求項１２】
前記プロセッサが、前記インデックスを利用して前記インデックステーブルを検索することにより、前記パッチがｎ個の既定の方向のうちの１つに回転したかを判断し、ｎが２よりも大きい整数であることと、各前記パッチを判断した前記既定の方向に基づいて反転させることと、を含む請求項９に記載のポイントクラウドパッチ処理装置。
【請求項１３】
前記ｎ個の方向が、０°、９０°、１８０°、２７０°回転および０°、９０°、１８０°、２７０°鏡像回転の任意の組み合わせを含む請求項１２に記載のポイントクラウドパッチ処理装置。
【請求項１４】
前記プロセッサが、さらに、各前記パッチのオフセットを含み、前記プロセッサが、さらに、前記オフセットに基づいて各前記パッチを反対向きに平行移動させ、前記オフセットが、各前記パッチを平行移動させた後の位置の前記パッチの原点または前記ポイントクラウドの原点に対するオフセットを含む請求項９に記載のポイントクラウドパッチ処理装置。
【請求項１５】
プロセッサを有するデコーダに適用され、
ポイントクラウドのビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化するステップと、
前記インデックスを利用してインデックステーブルを検索し、各前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換し、前記ポイントクラウドの複数のパッチを還元するステップと、
還元後の前記パッチを利用して前記ポイントクラウドを再構築するステップと、
を含むポイントクラウドパッチ処理方法。
【請求項１６】
前記インデックスを利用してインデックステーブルを検索し、各前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換するステップが、
前記インデックスを利用してインデックステーブルを検索することにより、各前記パッチが回転したかどうかを判断することと、
回転した場合に、前記パッチを反転させて前記パッチを還元することと、
回転していない場合に、前記パッチを変換しないことと、
を含む請求項１５に記載のポイントクラウドパッチ処理方法。
【請求項１７】
前記インデックスを利用してインデックステーブルを検索し、各前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換するステップが、
前記インデックスを利用して前記インデックステーブルを検索することにより、前記パッチが０°回転したか、または２７０°鏡像回転したかを判断することと、
各前記パッチを判断した方向に基づいて反転させることと、
を含む請求項１５に記載のポイントクラウドパッチ処理方法。
【請求項１８】
前記インデックスを利用してインデックステーブルを検索し、各前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換するステップが、
前記インデックスを利用して前記インデックステーブルを検索することにより、前記パッチがｎ個の既定の方向のうちの１つに回転したかを判断し、ｎが２よりも大きい整数であることと、
各前記パッチを判断した前記既定の方向に基づいて反転させることと、
を含む請求項１５に記載のポイントクラウドパッチ処理方法。
【請求項１９】
前記ｎ個の方向が、０°、９０°、１８０°、２７０°回転および０°、９０°、１８０°、２７０°鏡像回転の任意の組み合わせを含む請求項１８に記載のポイントクラウドパッチ処理方法。
【請求項２０】
前記インデックスが、さらに、各前記パッチのオフセットを含み、前記オフセットに基づいて前記パッチ映像を変換するステップが、さらに、
前記オフセットに基づいて各前記パッチを反対向きに平行移動させることを含み、前記オフセットが、各前記パッチを平行移動させた後の位置の前記パッチの原点または前記ポイントクラウドの原点に対するオフセットを含む請求項１５に記載のポイントクラウドパッチ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像処理方法および装置に関するものであり、特にポイントクラウドパッチ処理方法および装置に関するものである。
【背景技術】
【０００２】
現在、大部分の現実世界の視覚要素を表示するための方法は、いずれもムービング・ピクチャー・エクスパーツ・グループ（Motion Picture Experts Group, MPEG）のビデオ符号化標準を用いてカメラの出力を圧縮し、伝送および保存を行ってから、最後にプレーヤーで復号化して平面ディスプレイに表示する方法である。現在、ますます多くのデバイスが現実世界の３Ｄ画像を取り込んで表示できるようになった。ポイントクラウドは、３Ｄ空間における複数の点の集合であり、各点は、いずれも３Ｄ座標を含み、いくつかの点は、映像の属性値を含み、例えば、色、材質、反射面強度、または他の属性を含むことができる。ポイントクラウドは、物体または情景をこれらの点の構成に再構築するために使用することができる。
【０００３】
例えば、近年、エンターテイメント産業において非常に流行している仮想現実感（virtual reality, VR）および拡張現実感（augmented reality, AR）の応用は、ポイントクラウドのデータポイントを応用してＶＲとＡＲの３Ｄ物体を表現することができる。しかしながら、再構築したい情景を忠実に表現するために、ポイントクラウドは、異なる設定により、複数のカメラと深さセンサで取り込んだ数千〜数十億個のポイントを含む。したがって、圧縮技術を使用してポイントクラウドを表示するデータ量を減らすことによって、高品質且つ高速の映像伝送を確保する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、本発明は、ポイントクラウド圧縮の符号化効率を改善し、高品質且つ高速の映像伝送を確保することのできるポイントクラウドパッチ処理方法および装置を提出する。
【課題を解決するための手段】
【０００５】
本発明の１つの実施形態におけるポイントクラウドパッチ処理装置は、入出力装置と、保存装置と、プロセッサとを含む。入出力装置は、ポイントクラウドデータを受信するために使用される。保存装置は、複数の方向に対応するインデックスを記録したインデックステーブルを保存するために使用される。プロセッサは、入出力装置および保存装置に結合され、プログラムを実行することにより、ポイントクラウドの複数のパッチ（patch）を生成し、ポイントクラウドが３Ｄ空間内の複数のポイントを含み、各パッチがポイントクラウドの一部に対応し、各パッチのパッチ映像を生成するのに適している方向を決定するとともに、決定した方向に基づいて各パッチを変換してパッチ映像を生成し、パッチ映像を実装して各パッチの方向に対応するインデックスを記録する。
【０００６】
本発明の１つの実施形態におけるポイントクラウドパッチ処理装置は、入出力装置と、保存装置と、プロセッサとを含む。入出力装置は、ポイントクラウドのビットストリームを受信するために使用される。保存装置は、複数の方向に対応するインデックスを記録したインデックステーブルを保存するために使用される。プロセッサは、入出力装置および保存装置に結合され、プログラムを実行することにより、ビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化し、インデックスを利用してインデックステーブルを検索して、複数のパッチの方向を取得するとともに、この方向に基づいてパッチ映像を変換および投影して、ポイントクラウドの複数のパッチを還元し、還元後のパッチを利用して、ポイントクラウドを再構築する。
【０００７】
本発明の１つの実施形態におけるポイントクラウドパッチ処理方法は、プロセッサを有するデコーダに適用される。この方法は、ポイントクラウドのビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化することと、インデックスを利用してインデックステーブルを検索して、複数のパッチの方向を取得するとともに、この方向に基づいてパッチ映像を変換することと、ポイントクラウドの複数のパッチを還元して、還元後のパッチを利用してポイントクラウドを再構築することを含む。
【発明の効果】
【０００８】
本発明のポイントクラウドパッチ処理方法および装置は、符号化時にポイントクラウドのパッチを回転および／または平行移動させることを考慮することによって、生成されたパッチ映像の中のパッチの配列をさらに緊密にすることができ、それにより、ポイントクラウド圧縮の符号化効率を改善することができる。また、各パッチの回転方向、オフセット等のパッチ情報を付属情報と共に追加してデコーダに提供することにより、デコーダがパッチを還元してポイントクラウドを再構築できるようにする。これにより、ポイントクラウド圧縮の符号化効率を改善し、高品質且つ高速の映像伝送を確保することができる。
【０００９】
本発明の上記および他の目的、特徴、および利点をより分かり易くするため、図面と併せた幾つかの実施形態を以下に説明する。
【図面の簡単な説明】
【００１０】
添付図面は、本発明の原理がさらに理解されるために含まれており、本明細書に組み込まれ、且つその一部を構成するものである。図面は、本発明の実施形態を例示しており、説明とともに、本発明の原理を説明する役割を果たしている。
【００１１】
【図１】図１は、本発明の１つの実施形態が示すポイントクラウドパッチ処理装置のブロック図である。
【図２】図２は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。
【図３】図３は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法の範例である。
【図４】図４Ａおよび図４Ｂは、本発明の１つの実施形態が示すパッチ投影方式の範例である。
【図５】図５は、本発明の１つの実施形態が示すパッチを回転および平行移動させることによりパッチ映像を生成する範例である。
【図６】図６は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法の詳しいフロー図である。
【図７】図７は、本発明の１つの実施形態が示すポイントクラウドパッチ処理装置のブロック図である。
【図８】図８は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。
【図９】図９は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法の詳しいフロー図である。
【図１０】図１０は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。
【図１１】図１１は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。
【発明を実施するための形態】
【００１２】
本発明のポイントクラウドパッチ処理方法は、符号化時にポイントクラウドの各パッチ（patch）が異なる投影方式を使用することを認めるとともに、別の情報を利用して各パッチが使用する投影方式を指示し、デコーダがこの情報に指示された投影方式に基づいてパッチを還元し、ポイントクラウドを再構築できるようにする。これにより、ポイントクラウド圧縮の符号化効率を改善し、高品質且つ高速の映像伝送を確保することができる。
【００１３】
図１は、本発明の１つの実施形態が示すポイントクラウドパッチ処理装置のブロック図である。図１を参照すると、本実施形態のポイントクラウドパッチ処理装置１０は、例えば、計算機能を備えたカメラ、ビデオカメラ、携帯電話、パソコン、仮想現実装置、拡張現実装置、クラウドサーバー、またはその他のデバイスであり、例えば、エンコーダとして本発明の実施形態のポイントクラウドパッチ処理方法を実行する。ポイントクラウドパッチ処理装置１０は、入出力装置１２、保存装置１４、およびプロセッサ１６を少なくとも含み、その機能は、それぞれ以下の通りである：
【００１４】
入出力装置１２は、例えば、ＵＳＢ（universal serial bus）、ＲＳ２３２、ブルートゥース（Bluetooth）、Ｗｉ-Ｆｉ（wireless fidelity）等の有線または無線の転送インターフェースであり、カメラ、ビデオカメラ等の映像ソースデバイスによって提供したポイントクラウドデータを受信し、処理後のビデオストリームを出力するために使用される。１つの実施形態において、入出力装置１２は、イーサネット（Ethernet）をサポートする、または８０２．１１ｇ、８０２．１１ｎ、８０２．１１ａｃ等の無線ネット標準をサポートするネットワークカードを含んでもよく、ポイントクラウドパッチ処理装置１０をネットワークに接続して、ネットワークを介してデータを入力および出力できるようにする。
【００１５】
保存装置１４は、例えば、任意の形態の固定式または移動式のランダムアクセスメモリ（random access memory, RAM）、読み出し専用メモリ（read-only memory, ROM）、フラッシュメモリ（flash memory）、ハードディスク、または類似素子、あるいは上述した素子の組み合わせであり、プロセッサ１６で実行することのできるプログラムを保存することために使用される。１つの実施形態において、保存装置１４は、例えば、複数の方向に対応するインデックスを記録したインデックステーブルを保存する。
【００１６】
プロセッサ１６は、入出力装置１２および保存装置１４に結合され、例えば、中央処理装置（central processing unit, CPU）、または他のプログラム可能な一般用途または特殊用途のマイクロプロセッサ（microprocessor）、デジタル信号プロセッサ（digital signal processor, DSP）、プログラマブルコントローラ、特定用途向け集積回路（application specific integrated circuits, ASIC）、プログラマブルロジックコントローラ（programmable logic controller, PLC）、またはその他の類似デバイス、あるいはこれらのデバイスの組み合わせであり、保存装置１４に保存したプログラムをロードして実行し、本発明の実施形態のポイントクラウドパッチ処理方法を実行することができる。
【００１７】
図２は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。図１および図２を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置１０に適用され、以下、ポイントクラウドパッチ処理装置１０の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【００１８】
まず、ステップ２０１において、プロセッサ１６でポイントクラウドの複数のパッチを生成する。ポイントクラウドは、３Ｄ空間内の複数のポイントを含み、各ポイントは、いずれも幾何位置を定義するための幾何情報、および色、視感度、透明度等の属性を定義するための属性情報を含む。各パッチは、ポイントクラウドの一部に対応し、例えば、互いの表面法線ベクトルの偏差が閾値よりも小さい複数のポイントの集合を含む。
【００１９】
ステップ２０２において、プロセッサ１６で各パッチのパッチ映像を生成するのに適した方向を決定するとともに、決定した方向に基づいて各パッチを変換し、パッチ映像を生成する。いくつかの実施形態において、プロセッサ１６は、例えば、空間最密、類似度比較、イントラ予測（intra prediction）、またはインター予測（inter prediction）等の演算法を採用して、各パッチのパッチ映像を生成するのに適した方向を決定する。
【００２０】
詳しく説明すると、１つの実施形態において、プロセッサ１６は、例えば、各パッチにおける複数のカラーブロックの位置と大きさを比較して、パッチの間のカラーブロックの類似度を計算し、それにより各パッチのパッチ映像の中の位置を決定する。プロセッサ１６は、例えば、各パッチを異なる方向に投影するとともに、異なる方向に投影したパッチを使用して類似度を計算し、各パッチのパッチ映像を生成するのに適した方向を決定する。その他の実施形態において、プロセッサ１６は、異なる方向に投影したパッチを使用してイントラ予測またはインター予測を行い、比較的優れた符号化効率を有する組み合わせを探し出して、それにより各パッチのパッチ映像を生成するのに適した方向を決定する。本実施形態は、投影方向の決定方式を限定しない。
【００２１】
１つの実施形態において、プロセッサ１６は、既定の、またはユーザーが選択した投影方式に基づいて各パッチのパッチ映像を生成するのに適した方向を決定する。上述した投影方式は、例えば、２個の方向、８個の方向、またはｎ個の方向の任意のサブセット（ｎは、２よりも大きい整数）を含むが、本発明はこれに限定されない。
【００２２】
２個の方向を例に挙げると、例えば、パッチを０°回転させ（つまり、回転させない）、既定の方向に回転させる（例えば、２７０°鏡像回転させる）投影方式を含む。１つの実施形態において、プロセッサ１６は、各パッチが既定の方向に回転するのに適しているかどうかを決定することができる。回転するのに適している場合は、パッチを既定の方向に回転させた後にパッチ映像に挿入し、回転するのに適していない場合は、直接パッチをパッチ映像に挿入する。別の実施形態において、プロセッサ１６は、各パッチの広さが高さよりも大きいかどうかを判断する。判断結果が大きくない場合は、パッチを既定の方向に回転させた後にパッチ映像に挿入し、判断結果が大きい場合は、直接パッチをパッチ映像に挿入する。
【００２３】
８個の方向を例に挙げると、例えば、パッチを０°（つまり、回転させない）、９０°、１８０°、２７０°回転させ、パッチの鏡像を０°、９０°、１８０°、２７０°回転させる投影方式を含む。プロセッサ１６は、各パッチがこれら８個の既定の方向のうちのどの方向に回転するのに適しているかどうかを決定することができ、それにより各パッチを決定した既定の方向に基づいて回転させた後にパッチ映像に挿入する。
【００２４】
ｎ個の方向の任意のサブセットを例に挙げると、例えば、８個の既定の方向（例えば、上述した実施形態で述べた方向）の中から任意の４個の方向を選択する。つまり、プロセッサ１６は、８個の方向の選択を提供できるよう予め設定するが、システムまたはユーザーの現要求に基づき、４個の方向のみをイネーブルにし、残りの４個の方向はディセーブルにする。したがって、プロセッサ１６が各パッチの回転方向を決定する時、イネーブルにした４個の方向のみにより各パッチが回転するのに適した方向を決定し、それにより各パッチを決定した方向に基づいて回転させた後にパッチ映像に挿入する。
【００２５】
図２のフローに戻ると、ステップ２０３において、プロセッサ１６でパッチ映像を実装して、各パッチの方向に対応するインデックスを記録する。詳しく説明すると、プロセッサ１６は、例えば、適切に変換した複数のパッチを含むパッチ映像を、各パッチの幾何位置を記録した幾何映像（geometry image）、各パッチの色構成を記録したテクスチャ映像（texture image）、および幾何映像とテクスチャ映像の中でどの画素が有効であるかを記録した占有マップ（occupancy map）として実装する。上述した幾何映像、テクスチャ映像、および占有マップは、映像パディング（image padding）、平滑化（smoothing）、圧縮等の処理を行った後、マルチプレクサで圧縮したビットストリームとして構成させ、入出力装置１２で出力する。また、プロセッサ１６は、例えば、予め作成したインデックステーブルに基づいて、前に決定した各パッチの方向を対応するインデックスに変換するとともに、このインデックスを付属のパッチ情報に記録して、実装後のパッチ映像と共に出力する。
【００２６】
例を挙げて説明すると、図３は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法の範例である。図３を参照すると、本実施形態は、ポイントクラウドの中の物体３０を例に挙げ、ポイントクラウドパッチ処理装置がパッチ映像を生成する過程を説明したものである。
【００２７】
まず、ポイントクラウドの中の物体３０の周囲における前、後、左、右、上、下６個の面の投影を計算して、６個のパッチ３０ａ〜３０ｆを生成する。続いて、各パッチ（ここでは、パッチ３２を例に挙げる）の中のカラーブロック分布（パッチ３２の中の異なるパターンは、異なるカラーブロックを示す）を分析して、類似度比較法を利用して、パッチ３０ａ〜３０ｆの異なる方向投影とその他のパッチの投影の間の類似度を順番に計算し、それにより各パッチ３０ａ〜３０ｆがパッチ映像の中の方向および位置に適しているかを決定する。最後に、決定した方向に基づいて各パッチ３０ａ〜３０ｆを変換して、全てのパッチ３０ａ〜３０ｆの内容を含むパッチ映像を生成し、このパッチ映像が実装されるのは、図３に示した各パッチ３０ａ〜３０ｆのカラー構成を記録したテクスチャ映像３４ａ、および各パッチ３０ａ〜３０ｆの幾何位置を記録した幾何映像３４ｂである。
【００２８】
説明すべきこととして、ポイントクラウドパッチ処理装置１０が、各パッチがパッチ映像の方向を生成するのに適していると決定した時は、例えば、既定の、またはユーザーが選択した投影方式に基づいて方向を決定するとともに、選択した投影方式に対応するインデックステーブルに基づいて、各パッチの方向に対応するインデックスを記録する。
【００２９】
例を挙げて説明すると、図４Ａおよび図４Ｂは、本発明の１つの実施形態が示すパッチ投影方式の範例である。２個の方向の投影方式を例に挙げると、図４Ａに示すように、パッチを０°回転させ、パッチの鏡像を２７０°回転させる方式を含み、対応するインデックスは、０、１である。また、８個の方向の投影方式を例に挙げると、図４Ｂに示すように、パッチを０°、９０°、１８０°、２７０°回転させ、パッチの鏡像を０°、９０°、１８０°、２７０°回転させる方式を含み、対応するインデックスは、それぞれ０〜７である。
【００３０】
１つの実施形態において、ポイントクラウドパッチ処理装置１０は、各パッチがパッチ映像を生成するのに適しているかを決定する過程において、各パッチの方向を決定する他に、各パッチのオフセット（offset）をさらに決定して、パッチを平行移動させることもできる。回転後のパッチを平行移動させることにより、パッチ映像の中の各パッチをさらに緊密に配列させることができ、それにより符号化効率を上げることができる。上述したオフセットは、例えば、各パッチが平行移動した後の位置のパッチの原点またはポイントクラウドの原点に対するオフセットであるが、本発明はこれに限定されない。
【００３１】
例を挙げて説明すると、図５は、本発明の１つの実施形態が示すパッチを回転および平行移動させることによりパッチ映像を生成する範例である。図５を参照すると、パッチ映像５２は、周知の方法で生成したものであり、パッチ５２ａ、５２ｂ、５２ｃを例に挙げると、周知の方法は、パッチを回転も平行移動もさせない状況で、直接パッチ映像５２の現在その他のパッチにより既に占有されているエリアに基づいて、上から下に列毎にパッチ映像５２の中の現在のパッチを挿入することのできる占有されていないエリアを探して、パッチ５２ａ、５２ｂ、５２ｃを順番にパッチ映像５２に挿入する。
【００３２】
反対に、パッチ映像５４は、本発明の実施形態のポイントクラウドパッチ処理方法に基づいて生成したものであり、パッチ５４ａ、５４ｂ、５４ｃを例に挙げると、ポイントクラウドパッチ処理装置は、現在のパッチを異なる方向に回転させた後、回転後のパッチをパッチ映像５４の中に平行移動させ、それにより現在のパッチの異なる方向に回転させて平行移動させた後のその他のパッチとの類似度に基づいて、現在のパッチのパッチ映像５４を生成するのに適している方向およびオフセットを決定し、最後に、決定した方向に基づいてパッチを回転させ、決定したオフセットに基づいて回転後のパッチを平行移動させて、パッチ映像５４を生成する。パッチ映像５２、５４を比較するとわかるように、パッチ映像５４の中のパッチを適切に回転および平行移動させることにより、パッチ映像５４の中のパッチの配列がより緊密になるため、その結果、符号化効率を上げることができる。
【００３３】
１つの実施形態において、プロセッサ１６は、例えば、上述した幾何映像、テクスチャ映像、および占有マップに対して映像パディング（image padding）、平滑化（smoothing）、圧縮等の処理を行い、各パッチ方向を記録したインデックスを付属パッチ情報に追加して、圧縮を行い、最後に、マルチプレクサで上述した圧縮後のデータを圧縮したビットストリームとして構成させ、入出力装置１２で出力する。
【００３４】
詳しく説明すると、図６は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法の詳しいフロー図である。図１および図６を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置１０に適用され、以下、ポイントクラウドパッチ処理装置１０の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【００３５】
まず、ステップ６０１において、プロセッサ１６は、入出力装置１２を介してポイントクラウドデータを受信した後、複数のパッチを生成するとともに、ステップ６０２において、上述したポイントクラウドデータパッチ処理方法でパッチ方向を変更して、パッチ映像およびパッチ情報（例えば、パッチ映像の中の各パッチの方向）を生成する。
【００３６】
ステップ６０３において、プロセッサ１６は、パッチ映像を実装して、占有マップを生成するとともに、ステップ６０４において、幾何映像を生成し、ステップ６０５において、テクスチャ映像を生成する。生成した幾何映像およびテクスチャ映像は、ステップ６０６の映像を介してパディングした後、ステップ６０７において映像圧縮を行い、圧縮した幾何映像および圧縮したテクスチャ映像を取得する。ステップ６０８において、プロセッサ１６は、前に生成したパッチ資料に基づいて、圧縮した幾何映像を使用して再構築した幾何映像に対して平滑化処理を行い、処理後の幾何映像をステップ６０５に戻って、テクスチャ映像を生成する依拠として使用する。
【００３７】
また、ステップ６０９において、プロセッサ１６は、ステップ６０３において生成した占有マップを圧縮し、ステップ６１０において、ステップ６０２で生成したパッチ資料を付属パッチ資料に追加して圧縮する。最後に、ステップ６１１において、プロセッサ１６は、上述したステップにおいて生成した圧縮した幾何映像、圧縮したテクスチャ映像、圧縮した占有マップ、および圧縮した付属パッチ資料を、マルチプレクサを使用して圧縮したビットストリームとして構成させ、入出力装置１２で出力する。
【００３８】
上述した方法により、本発明の実施形態のポイントクラウドパッチ処理装置１０は、ポイントクラウドで生成した複数のパッチを適切に変換した後、パッチ映像を生成することができ、パッチ映像およびパッチ方向を記録したインデックス等の情報を圧縮後に出力して、デコーダがこの情報に基づいてパッチを還元し、ポイントクラウドを再構築できるようにする。以下、実施例を挙げてデコーダの構造および対応するポイントクラウドパッチ処理方法（復号化方法）について説明する。
【００３９】
図７は、本発明の１つの実施形態が示すポイントクラウドパッチ処理装置のブロック図である。図７を参照すると、本実施形態のポイントクラウドパッチ処理装置７０は、例えば、計算機能を有するカメラ、ビデオカメラ、携帯電話、パソコン、仮想現実装置、拡張現実装置、クラウドサーバー、またはその他のデバイスであり、入出力装置７２、保存装置７４、およびプロセッサ７６を少なくとも含む。入出力装置７２、保存装置７４、およびプロセッサ７６の構成と上述した実施形態の入出力装置１２、保存装置１４、およびプロセッサ１６の構成は同じ、または類似するため、ここでは繰り返し説明しない。上述した実施形態と異なるのは、本実施形態のポイントクラウドパッチ処理装置７０がデコーダとして本発明の実施形態のポイントクラウドパッチ処理方法を実行することである。
【００４０】
詳しく説明すると、図８は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。図７および図８を参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置７０に適用され、以下、ポイントクラウドパッチ処理装置７０の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【００４１】
まず、ステップ８０１において、プロセッサ７６により入出力装置７２を利用してポイントクラウドのビットストリームを受信し、それによりポイントクラウドのビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化する。
【００４２】
続いて、ステップ８０２において、プロセッサ７６によりインデックスを利用して予め保存装置７４に保存したインデックステーブルを検索して、各パッチの方向を取得するとともに、検索した方向に基づいてパッチ映像を変換し、ポイントクラウドの複数のパッチを還元する。
【００４３】
１つの実施形態において、プロセッサ７６は、予め設定した投影方式に基づいてインデックステーブルを選択し、パッチの方向を検索することができる。上述した投影方式は、例えば、ｎ個の方向（ｎは、２の整数よりも大きいか、それに等しい）を含む。
【００４４】
２個の方向を例に挙げると、例えば、パッチを０°回転させ（つまり、回転させない）、既定の方向に回転させる（例えば、鏡像を９０°回転させる）投影方式を含み、プロセッサ７６は、インデックスを利用してインデックステーブルを検索し、パッチ映像の中の各パッチが回転したかどうかを判断する。回転した場合、プロセッサ７６は、パッチを既定の方向で反転させてパッチを還元し、回転していない場合、プロセッサ７６は、このパッチを変換しない。
【００４５】
説明すべきこととして、１つの実施形態において、プロセッサ７６は、インデックスを利用してパッチ映像の中の各パッチのオフセットを検索し、それにより検索したオフセットに基づいて各パッチを反対向きに平行移動させる。上述したオフセットは、例えば、各パッチを平行移動させた後の位置のパッチの原点またはポイントクラウドの原点に対するオフセットであるが、本発明はこれに限定されない。
【００４６】
例を挙げて説明すると。下の表１は、適応性パッチ回転関数のルックアップテーブルである。識別符の値は、例えば、インデックスＩｄｘに対応する。すなわち、インデックスＩｄｘが０の時、識別符はＦＰＯ＿ＮＵＬＬに設定され；インデックスＩｄｘが１の時、識別符はＦＰＯ＿ＳＷＡＰに設定される。
【００４７】
【表１】
2020017946.tif 000003
【００４８】
設定した識別符に基づくと、上述したルックアップテーブルを利用して、パッチ還元後の画面座標（ｘ，ｙ）を下記のように計算することができる：
【００４９】
【数１】
2020017946.tif 000004
【００５０】
式中、座標（ｕ，ｖ）は、パッチのパッチ映像中の最初の座標であり、回転関数Rotation(x)およびオフセット関数Offset(x)の出力は、上の表１において定義したマトリックスであり、インデックスｆＩｄｘは、映像中の何枚目の画面のインデックス値を表示したものであり、パッチ平行移動関数Patch2dShiftUおよびPatch2dShiftVは、それぞれパッチの左上角の頂点のパッチ映像の中のＸ位置とＹ位置である。
【００５１】
また、８個の方向を例に挙げると、例えば、パッチを０°（つまり、回転させない）、９０°、１８０°、２７０°回転させ、パッチの鏡像を０°、９０°、１８０°、２７０°回転させる投影方式を含み、プロセッサ７６は、インデックスを利用してインデックステーブルを検索し、パッチ映像の中の各パッチをこれら８個の既定の方向のうちのどの方向に回転させるかを判断して、それにより各パッチを検索した既定の方向で反転させる。
【００５２】
例を挙げて説明すると、下の表２は、適応性パッチ回転関数のルックアップテーブルである。回転関数Rotation(x)およびオフセット関数Offset(x)の値は、例えば、インデックスＩｄｘに対応する。
【００５３】
【表２】
2020017946.tif 000005
【００５４】
表中、BlockSizeは、占有マップの実装ブロックのサイズであり、Patch2dSizeUおよびPatch2dSizeVは、それぞれパッチの幅と高さをBlockSizeが得た値で割ったものである。上の表２を利用して回転関数Rotation(x)およびオフセット関数Offset(x)の出力を検索し、公式（１）によりパッチの画面座標（ｘ，ｙ）を計算することができる。
【００５５】
図８のフローに戻ると、ステップ８０３において、プロセッサ７６は、還元後のパッチを利用してポイントクラウドを再構築する。プロセッサ７６は、例えば、予め設定した投影方式を使用して各２Ｄのパッチを３Ｄ空間に投影し、ポイントクラウドを再構築する。詳しく説明すると、プロセッサ７６は、ポイントクラウドのビットストリームから各画面に対応する幾何映像、テクスチャ映像、占有マップ、および付属パッチ資料を解凍することができる。プロセッサ７６は、占有マップを介して幾何映像とテクスチャ映像の中のどの画素が有効データであるかを知ることができ、付属パッチ資料を介してパッチ資料、例えば、どのパッチに属するのかを知ることができる。プロセッサ７６は、有効データとパッチ資料を使用して、２Ｄのパッチを３Ｄ空間に投影し、ポイントクラウドを再構築することができる。
【００５６】
詳しく説明すると、図９は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法の詳しいフロー図である。図７および図９を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置７０に適用され、以下、ポイントクラウドパッチ処理装置７０の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【００５７】
まず、ステップ９０１において、プロセッサ７６は、入出力装置７２を利用してポイントクラウドの圧縮したビットストリームを受信した後、圧縮した幾何映像、圧縮したテクスチャ映像、圧縮した占有マップ、および圧縮した付属パッチ資料に逆多重化する。プロセッサ７６は、ステップ９０２において、圧縮したテクスチャ映像および圧縮した幾何映像をビデオ解凍し、解凍されたテクスチャ映像および解凍された幾何映像を生成する；ステップ９０３において、圧縮した占有マップを解凍し、解凍された占有マップを生成する；ステップ９０４において、圧縮した付属パッチ資料を解凍し、解凍された付属パッチ資料を生成する。
【００５８】
ステップ９０５において、プロセッサ７６は、解凍された占有マップに基づいて解凍された幾何映像の中のどの画素が有効データであるかを知ることができ、解凍された付属パッチ資料に記録された各パッチの方向、オフセット等のパッチ情報に基づいて、解凍された幾何映像の中の各パッチの方向を反転する。上述した反転は、方向反転および／または平行移動反転を含むが、本発明はこれに限定されない。
【００５９】
ステップ９０６において、プロセッサ７６は、反転後のパッチを３Ｄ空間に投影して、幾何部分（位置および形状を含む）を再構築し、ステップ９０７において、再構築した幾何部分を平滑化する。最後に、ステップ９０８において、プロセッサ７６は、解凍されたテクスチャ映像を、再構築した後の幾何部分に対してテクスチャ再構築を行い、再構築後のポイントクラウドを取得する。
【００６０】
上述した方法により、本発明の実施形態のポイントクラウドパッチ処理装置７０は、圧縮したビットストリームをポイントクラウドの再構築に必要なパッチ映像およびパッチ情報に分解して、パッチを反転し、３Ｄ空間に投影することによって、ポイントクラウドを再構築することができる。
【００６１】
１つの実施形態において、本発明のポイントクラウドパッチ処理方法は、符号化時に、例えば、現在のデバイスの計算資源、ネットワーク資源等のパラメータをさらに参考にして、適切な投影方式を選択してパッチを処理し、高品質且つ高速の映像伝送を確保する。
【００６２】
詳しく説明すると、図１０は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。図１および図１０を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置１０に適用され、以下、ポイントクラウドパッチ処理装置１０の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【００６３】
まず、ステップ１００１において、プロセッサ１６は、ポイントクラウドの複数のパッチを生成する。ステップ１００２において、プロセッサ１６は、現在使用可能な計算資源、ネットワーク帯域幅、エンコーダの符号化能力、デコーダの復号化能力等のパラメータに基づいて、２種類の回転方向、あるいは８種類の回転方向を使用してパッチを回転させるかを決定するとともに、決定結果に基づいて優先方向フラグを設定し、復号時の参考としてデコーダに提供する。優先方向フラグの数値を１に設定する場合、ステップ１００３において、２種類の回転方向を使用し；優先方向フラグの数値を０に設定する場合、ステップ１００４において、８種類の回転方向を使用する。
【００６４】
また、プロセッサ１６は、システムまたはユーザーの要求に応じてさらに多くのフラグを使用して、各パッチの処理方式を表記し、デコーダに提供してパッチを還元し、ポイントクラウドを再構築してもよい。
【００６５】
詳しく説明すると、図１１は、本発明の１つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。図１および図１１を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置１０に適用され、以下、ポイントクラウドパッチ処理装置１０の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【００６６】
まず、ステップ１１０１において、プロセッサ１６は、ポイントクラウドの複数のパッチを生成する。ステップ１１０２において、プロセッサ１６は、システムまたはユーザーの操作に基づいて、方向回転機能をイネーブルにするかどうかを判断する。方向回転機能をイネーブルにすると判断した場合、プロセッサ１６は、方向イネーブルフラグの数値を１に設定して、ステップ１１０３に進み、そうでない場合は、方向イネーブルフラグの数値を０に設定して、ステップ１１１に進むが、パッチを回転させない。
【００６７】
方向回転機能をイネーブルにする必要があると判断した場合、ステップ１１０３において、プロセッサ１６は、現在の資源パラメータに基づいて、２種類の回転方向、あるいは８種類の回転方向を使用してパッチを回転させるかを決定するとともに、決定結果に基づいて優先方向フラグを設定する。優先方向フラグの数値を１に設定する場合、ステップ１００４において、２種類の回転方向を使用し；優先方向フラグの数値を０に設定する場合、ステップ１００５において、８種類の回転方向を使用する。
【００６８】
２種類の回転方向を使用する状況では、ステップ１１０６において、プロセッサ１６は、各パッチが既定の方向に回転するのに適しているかどうかを決定することができ、決定結果に基づいて、パッチ回転フラグを設定する。パッチ回転フラグの数値を１に設定する場合、ステップ１１０８において、パッチを既定の回転方向に回転させ；パッチ回転フラグの数値を０に設定する場合、ステップ１１０９において、パッチを回転させない。
【００６９】
８種類の回転方向を使用する状況では、ステップ１１０７において、プロセッサ１６は、各パッチが既定の方向（すなわち、０°以外の７個の方向）に回転するのに適しているかどうかを決定することができ、決定結果に基づいて、パッチ回転フラグを設定する。パッチ回転フラグの数値を１に設定する場合、ステップ１１１０において、パッチを予め設定した７個の回転方向のうちの１つの方向に回転させ、この回転方向のインデックスを記録し（例えば、３個のビットを使用して７種類の状態を記録する）；パッチ回転フラグの数値を０に設定する場合、ステップ１１１２において、パッチを回転させない（つまり、０°回転させる）。
【００７０】
最後に、ステップ１１１２において、プロセッサ１６により上述したステップで処理した後のパッチおよび生成された付属情報に対して映像パディング、平滑化、圧縮等の処理を行う。詳しい内容については、上述した実施形態において既に説明しているため、ここでは繰り返し説明しない。
【００７１】
以上のように、本発明のポイントクラウドパッチ処理方法および装置は、符号化する時にポイントクラウドのパッチを回転および／または平行移動させることを考慮することによって、生成されたパッチ映像の中のパッチの配列をさらに緊密にすることができ、それにより、ポイントクラウド圧縮の符号化効率を改善することができる。また、本発明の方法は、さらに、各パッチの回転方向、オフセット等のパッチ情報を付属情報と共に追加してデコーダに提供することにより、デコーダがパッチを還元し、ポイントクラウドを再構築できるようにする。これにより、ポイントクラウド圧縮の符号化効率を改善し、高品質且つ高速の映像伝送を確保することができる。
【００７２】
以上のごとく、この発明を実施形態により開示したが、もとより、この発明を限定するためのものではなく、当業者であれば容易に理解できるように、この発明の技術思想の範囲内において、適当な変更ならびに修正が当然なされうるものであるから、その特許権保護の範囲は、特許請求の範囲および、それと均等な領域を基準として定めなければならない。
【符号の説明】
【００７３】
１０、７０  ポイントクラウドパッチ処理装置
１２、７２  入出力装置
１４、７４  保存装置
１６、７６  プロセッサ
３０  物体
３０ａ〜３０ｆ、３２、５２ａ、５２ｂ、５２ｃ、５４ａ、５４ｂ、５４ｃ  パッチ
３４ａ  テクスチャ映像
３４ｂ  幾何映像
５３、５４  パッチ映像
２０１〜２０３、６０１〜６１１、８０１〜８０３、９０１〜９０８、１００１〜１００４、１１０１〜１１１２  ステップ
【図１】
2020017946.tif 000006
【図２】
2020017946.tif 000007
【図３】
2020017946.tif 000008
【図４Ａ】
2020017946.tif 000009
【図４Ｂ】
2020017946.tif 000010
【図５】
2020017946.tif 000011
【図６】
2020017946.tif 000012
【図７】
2020017946.tif 000013
【図８】
2020017946.tif 000014
【図９】
2020017946.tif 000015
【図１０】
2020017946.tif 000016
【図１１】
2020017946.tif 000017
【外国語明細書】
2020017946000001.pdf