特開2020-17946(P2020-17946A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 財團法人工業技術研究院の特許一覧

特開2020-17946ポイントクラウドパッチ処理方法および装置
<>
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000006
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000007
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000008
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000009
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000010
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000011
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000012
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000013
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000014
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000015
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000016
  • 特開2020017946-ポイントクラウドパッチ処理方法および装置 図000017
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2020-17946(P2020-17946A)
(43)【公開日】2020年1月30日
(54)【発明の名称】ポイントクラウドパッチ処理方法および装置
(51)【国際特許分類】
   H04N 19/597 20140101AFI20191227BHJP
   H04N 1/41 20060101ALI20191227BHJP
   H04N 19/85 20140101ALI20191227BHJP
   G06T 17/20 20060101ALI20191227BHJP
【FI】
   H04N19/597
   H04N1/41
   H04N19/85
   G06T17/20 500
【審査請求】有
【請求項の数】20
【出願形態】OL
【外国語出願】
【全頁数】20
(21)【出願番号】特願2019-124313(P2019-124313)
(22)【出願日】2019年7月3日
(31)【優先権主張番号】62/693,485
(32)【優先日】2018年7月3日
(33)【優先権主張国】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.ブルートゥース
2.BLUETOOTH
(71)【出願人】
【識別番号】390023582
【氏名又は名称】財團法人工業技術研究院
【氏名又は名称原語表記】INDUSTRIAL TECHNOLOGY RESEARCH INSTITUTE
(74)【代理人】
【識別番号】100147485
【弁理士】
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【弁護士】
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100188307
【弁理士】
【氏名又は名称】太田 昌宏
(72)【発明者】
【氏名】蔡 懿▲亭▼
(72)【発明者】
【氏名】林 俊隆
(72)【発明者】
【氏名】林 敬傑
【テーマコード(参考)】
5B080
5C159
5C178
【Fターム(参考)】
5B080AA19
5B080GA00
5C159MA04
5C159MA05
5C159MA16
5C159PP03
5C159SS10
5C159SS14
5C159SS26
5C159UA02
5C159UA05
5C159UA22
5C178AC24
5C178BC41
5C178CC55
5C178EC32
5C178EC41
5C178EC51
5C178HC09
5C178HC10
(57)【要約】      (修正有)
【課題】高品質・高速の映像伝送のためにポイントクラウドを圧縮するポイントクラウドパッチ処理方法および装置を提供する。
【解決手段】ポイントクラウドパッチ処理装置は、入出力装置と、保存装置と、プロセッサとを含む。入出力装置は、ポイントクラウドデータを受信するために使用される。保存装置は、複数の方向に対応するインデックスを記録したインデックステーブルを保存するために使用される。プロセッサは、入出力装置および保存装置に結合され、プログラムを実行することにより、ポイントクラウドのビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化し、インデックスを利用してインデックステーブルを検索し、複数のパッチの方向を取得するとともに、この方向に基づいてパッチ映像を変換して、ポイントクラウドの複数のパッチを還元し、還元後のパッチを利用して、ポイントクラウドを再構築する。
【選択図】図8
【特許請求の範囲】
【請求項1】
ポイントクラウドデータを受信する入出力装置と、
複数の方向に対応するインデックスを記録したインデックステーブルを保存する保存装置と、
前記入出力装置および前記保存装置に結合されたプロセッサと、
を含み、プログラムを実行することにより、
前記ポイントクラウドの複数のパッチ(patch)を生成し、前記ポイントクラウドが3D空間内の複数のポイントを含み、各前記パッチが前記ポイントクラウドの一部に対応し、
各前記パッチのパッチ映像を生成するのに適している方向を決定するとともに、前記方向に基づいて各前記パッチを変換してパッチ映像を生成し、
前記パッチ映像を実装して前記インデックステーブルを検索することにより、各前記パッチの前記方向に対応するインデックスを取得するポイントクラウドパッチ処理装置。
【請求項2】
前記プロセッサが、各前記パッチが既定の方向に回転するのに適しているかどうかを決定し、回転するのに適している場合、前記パッチを回転させた後に前記パッチ映像に挿入し、回転するのに適していない場合、直接前記パッチを前記パッチ映像に挿入する請求項1に記載のポイントクラウドパッチ処理装置。
【請求項3】
前記プロセッサが、各前記パッチの広さが高さよりも大きいかどうかを判断することを含み、判断結果が大きくない場合、前記パッチを既定の方向に回転させた後に前記パッチ映像に挿入し、判断結果が大きい場合、直接前記パッチを前記パッチ映像に挿入する請求項1に記載のポイントクラウドパッチ処理装置。
【請求項4】
前記プロセッサが、各前記パッチが0°回転するのに適しているか、または270°鏡像回転するのに適しているかを決定することと、各前記パッチを決定した方向に基づいて回転させた後に前記パッチ映像を挿入することと、を含む請求項1に記載のポイントクラウドパッチ処理装置。
【請求項5】
前記プロセッサが、各前記パッチがn個の既定の方向のうちの1つに回転するのに適しているかを決定し、nが2よりも大きい整数であることと、各前記パッチを決定した前記既定の方向に基づいて回転させた後に前記パッチ映像を挿入することと、を含む請求項1に記載のポイントクラウドパッチ処理装置。
【請求項6】
前記n個の方向が、0°、90°、180°、270°回転および0°、90°、180°、270°鏡像回転の任意の組み合わせを含む請求項5に記載のポイントクラウドパッチ処理装置。
【請求項7】
前記プロセッサが、前記n個の既定の方向からm個の既定の方向を選択し、nが2よりも大きい整数であり、mがnよりも小さい整数であることと、各前記パッチが前記m個の既定の方向のうちの1つに回転するのに適しているかを決定することと、各前記パッチを決定した前記方向に基づいて回転させた後に前記パッチ映像を挿入することと、を含む請求項1に記載のポイントクラウドパッチ処理装置。
【請求項8】
前記プロセッサが、さらに、前記方向に基づいて各前記パッチを回転させることと、回転後の各前記パッチの前記パッチ映像を生成するのに適しているオフセット(offset)を決定するとともに、前記オフセットに基づいて各前記パッチを平行移動させた後にパッチ映像を生成することと、を含み、前記オフセットが、各前記パッチを平行移動させた後の位置の前記パッチの原点または前記ポイントクラウドの原点に対するオフセットを含む請求項1に記載のポイントクラウドパッチ処理装置。
【請求項9】
ポイントクラウドのビットストリームを受信する入出力装置と、
複数の方向に対応するインデックスを記録したインデックステーブルを保存する保存装置と、
前記入出力装置および前記保存装置に結合されたプロセッサと、
を含み、プログラムを実行することにより、
前記ビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化し、
前記インデックスを利用してインデックステーブルを検索し、前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換し、前記ポイントクラウドの複数のパッチを還元し、
還元後の前記パッチを利用して前記ポイントクラウドを再構築するポイントクラウドパッチ処理装置。
【請求項10】
前記プロセッサが、前記インデックスを利用して前記インデックステーブルを検索することにより、各前記パッチが回転したかどうかを判断することを含み、回転した場合、前記パッチを反転させて前記パッチを還元し、回転していない場合、前記パッチを変換しない請求項9に記載のポイントクラウドパッチ処理装置。
【請求項11】
前記プロセッサが、前記インデックスを利用して前記インデックステーブルを検索することにより、前記パッチが0°回転したか、または270°鏡像回転したかを判断することと、各前記パッチを判断した方向に基づいて反転させることと、を含む請求項9に記載のポイントクラウドパッチ処理装置。
【請求項12】
前記プロセッサが、前記インデックスを利用して前記インデックステーブルを検索することにより、前記パッチがn個の既定の方向のうちの1つに回転したかを判断し、nが2よりも大きい整数であることと、各前記パッチを判断した前記既定の方向に基づいて反転させることと、を含む請求項9に記載のポイントクラウドパッチ処理装置。
【請求項13】
前記n個の方向が、0°、90°、180°、270°回転および0°、90°、180°、270°鏡像回転の任意の組み合わせを含む請求項12に記載のポイントクラウドパッチ処理装置。
【請求項14】
前記プロセッサが、さらに、各前記パッチのオフセットを含み、前記プロセッサが、さらに、前記オフセットに基づいて各前記パッチを反対向きに平行移動させ、前記オフセットが、各前記パッチを平行移動させた後の位置の前記パッチの原点または前記ポイントクラウドの原点に対するオフセットを含む請求項9に記載のポイントクラウドパッチ処理装置。
【請求項15】
プロセッサを有するデコーダに適用され、
ポイントクラウドのビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化するステップと、
前記インデックスを利用してインデックステーブルを検索し、各前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換し、前記ポイントクラウドの複数のパッチを還元するステップと、
還元後の前記パッチを利用して前記ポイントクラウドを再構築するステップと、
を含むポイントクラウドパッチ処理方法。
【請求項16】
前記インデックスを利用してインデックステーブルを検索し、各前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換するステップが、
前記インデックスを利用してインデックステーブルを検索することにより、各前記パッチが回転したかどうかを判断することと、
回転した場合に、前記パッチを反転させて前記パッチを還元することと、
回転していない場合に、前記パッチを変換しないことと、
を含む請求項15に記載のポイントクラウドパッチ処理方法。
【請求項17】
前記インデックスを利用してインデックステーブルを検索し、各前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換するステップが、
前記インデックスを利用して前記インデックステーブルを検索することにより、前記パッチが0°回転したか、または270°鏡像回転したかを判断することと、
各前記パッチを判断した方向に基づいて反転させることと、
を含む請求項15に記載のポイントクラウドパッチ処理方法。
【請求項18】
前記インデックスを利用してインデックステーブルを検索し、各前記パッチの方向を取得するとともに、前記方向に基づいて前記パッチ映像を変換するステップが、
前記インデックスを利用して前記インデックステーブルを検索することにより、前記パッチがn個の既定の方向のうちの1つに回転したかを判断し、nが2よりも大きい整数であることと、
各前記パッチを判断した前記既定の方向に基づいて反転させることと、
を含む請求項15に記載のポイントクラウドパッチ処理方法。
【請求項19】
前記n個の方向が、0°、90°、180°、270°回転および0°、90°、180°、270°鏡像回転の任意の組み合わせを含む請求項18に記載のポイントクラウドパッチ処理方法。
【請求項20】
前記インデックスが、さらに、各前記パッチのオフセットを含み、前記オフセットに基づいて前記パッチ映像を変換するステップが、さらに、
前記オフセットに基づいて各前記パッチを反対向きに平行移動させることを含み、前記オフセットが、各前記パッチを平行移動させた後の位置の前記パッチの原点または前記ポイントクラウドの原点に対するオフセットを含む請求項15に記載のポイントクラウドパッチ処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像処理方法および装置に関するものであり、特にポイントクラウドパッチ処理方法および装置に関するものである。
【背景技術】
【0002】
現在、大部分の現実世界の視覚要素を表示するための方法は、いずれもムービング・ピクチャー・エクスパーツ・グループ(Motion Picture Experts Group, MPEG)のビデオ符号化標準を用いてカメラの出力を圧縮し、伝送および保存を行ってから、最後にプレーヤーで復号化して平面ディスプレイに表示する方法である。現在、ますます多くのデバイスが現実世界の3D画像を取り込んで表示できるようになった。ポイントクラウドは、3D空間における複数の点の集合であり、各点は、いずれも3D座標を含み、いくつかの点は、映像の属性値を含み、例えば、色、材質、反射面強度、または他の属性を含むことができる。ポイントクラウドは、物体または情景をこれらの点の構成に再構築するために使用することができる。
【0003】
例えば、近年、エンターテイメント産業において非常に流行している仮想現実感(virtual reality, VR)および拡張現実感(augmented reality, AR)の応用は、ポイントクラウドのデータポイントを応用してVRとARの3D物体を表現することができる。しかしながら、再構築したい情景を忠実に表現するために、ポイントクラウドは、異なる設定により、複数のカメラと深さセンサで取り込んだ数千〜数十億個のポイントを含む。したがって、圧縮技術を使用してポイントクラウドを表示するデータ量を減らすことによって、高品質且つ高速の映像伝送を確保する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【0004】
したがって、本発明は、ポイントクラウド圧縮の符号化効率を改善し、高品質且つ高速の映像伝送を確保することのできるポイントクラウドパッチ処理方法および装置を提出する。
【課題を解決するための手段】
【0005】
本発明の1つの実施形態におけるポイントクラウドパッチ処理装置は、入出力装置と、保存装置と、プロセッサとを含む。入出力装置は、ポイントクラウドデータを受信するために使用される。保存装置は、複数の方向に対応するインデックスを記録したインデックステーブルを保存するために使用される。プロセッサは、入出力装置および保存装置に結合され、プログラムを実行することにより、ポイントクラウドの複数のパッチ(patch)を生成し、ポイントクラウドが3D空間内の複数のポイントを含み、各パッチがポイントクラウドの一部に対応し、各パッチのパッチ映像を生成するのに適している方向を決定するとともに、決定した方向に基づいて各パッチを変換してパッチ映像を生成し、パッチ映像を実装して各パッチの方向に対応するインデックスを記録する。
【0006】
本発明の1つの実施形態におけるポイントクラウドパッチ処理装置は、入出力装置と、保存装置と、プロセッサとを含む。入出力装置は、ポイントクラウドのビットストリームを受信するために使用される。保存装置は、複数の方向に対応するインデックスを記録したインデックステーブルを保存するために使用される。プロセッサは、入出力装置および保存装置に結合され、プログラムを実行することにより、ビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化し、インデックスを利用してインデックステーブルを検索して、複数のパッチの方向を取得するとともに、この方向に基づいてパッチ映像を変換および投影して、ポイントクラウドの複数のパッチを還元し、還元後のパッチを利用して、ポイントクラウドを再構築する。
【0007】
本発明の1つの実施形態におけるポイントクラウドパッチ処理方法は、プロセッサを有するデコーダに適用される。この方法は、ポイントクラウドのビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化することと、インデックスを利用してインデックステーブルを検索して、複数のパッチの方向を取得するとともに、この方向に基づいてパッチ映像を変換することと、ポイントクラウドの複数のパッチを還元して、還元後のパッチを利用してポイントクラウドを再構築することを含む。
【発明の効果】
【0008】
本発明のポイントクラウドパッチ処理方法および装置は、符号化時にポイントクラウドのパッチを回転および/または平行移動させることを考慮することによって、生成されたパッチ映像の中のパッチの配列をさらに緊密にすることができ、それにより、ポイントクラウド圧縮の符号化効率を改善することができる。また、各パッチの回転方向、オフセット等のパッチ情報を付属情報と共に追加してデコーダに提供することにより、デコーダがパッチを還元してポイントクラウドを再構築できるようにする。これにより、ポイントクラウド圧縮の符号化効率を改善し、高品質且つ高速の映像伝送を確保することができる。
【0009】
本発明の上記および他の目的、特徴、および利点をより分かり易くするため、図面と併せた幾つかの実施形態を以下に説明する。
【図面の簡単な説明】
【0010】
添付図面は、本発明の原理がさらに理解されるために含まれており、本明細書に組み込まれ、且つその一部を構成するものである。図面は、本発明の実施形態を例示しており、説明とともに、本発明の原理を説明する役割を果たしている。
【0011】
図1図1は、本発明の1つの実施形態が示すポイントクラウドパッチ処理装置のブロック図である。
図2図2は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。
図3図3は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法の範例である。
図4図4Aおよび図4Bは、本発明の1つの実施形態が示すパッチ投影方式の範例である。
図5図5は、本発明の1つの実施形態が示すパッチを回転および平行移動させることによりパッチ映像を生成する範例である。
図6図6は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法の詳しいフロー図である。
図7図7は、本発明の1つの実施形態が示すポイントクラウドパッチ処理装置のブロック図である。
図8図8は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。
図9図9は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法の詳しいフロー図である。
図10図10は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。
図11図11は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。
【発明を実施するための形態】
【0012】
本発明のポイントクラウドパッチ処理方法は、符号化時にポイントクラウドの各パッチ(patch)が異なる投影方式を使用することを認めるとともに、別の情報を利用して各パッチが使用する投影方式を指示し、デコーダがこの情報に指示された投影方式に基づいてパッチを還元し、ポイントクラウドを再構築できるようにする。これにより、ポイントクラウド圧縮の符号化効率を改善し、高品質且つ高速の映像伝送を確保することができる。
【0013】
図1は、本発明の1つの実施形態が示すポイントクラウドパッチ処理装置のブロック図である。図1を参照すると、本実施形態のポイントクラウドパッチ処理装置10は、例えば、計算機能を備えたカメラ、ビデオカメラ、携帯電話、パソコン、仮想現実装置、拡張現実装置、クラウドサーバー、またはその他のデバイスであり、例えば、エンコーダとして本発明の実施形態のポイントクラウドパッチ処理方法を実行する。ポイントクラウドパッチ処理装置10は、入出力装置12、保存装置14、およびプロセッサ16を少なくとも含み、その機能は、それぞれ以下の通りである:
【0014】
入出力装置12は、例えば、USB(universal serial bus)、RS232、ブルートゥース(Bluetooth)、Wi-Fi(wireless fidelity)等の有線または無線の転送インターフェースであり、カメラ、ビデオカメラ等の映像ソースデバイスによって提供したポイントクラウドデータを受信し、処理後のビデオストリームを出力するために使用される。1つの実施形態において、入出力装置12は、イーサネット(Ethernet)をサポートする、または802.11g、802.11n、802.11ac等の無線ネット標準をサポートするネットワークカードを含んでもよく、ポイントクラウドパッチ処理装置10をネットワークに接続して、ネットワークを介してデータを入力および出力できるようにする。
【0015】
保存装置14は、例えば、任意の形態の固定式または移動式のランダムアクセスメモリ(random access memory, RAM)、読み出し専用メモリ(read-only memory, ROM)、フラッシュメモリ(flash memory)、ハードディスク、または類似素子、あるいは上述した素子の組み合わせであり、プロセッサ16で実行することのできるプログラムを保存することために使用される。1つの実施形態において、保存装置14は、例えば、複数の方向に対応するインデックスを記録したインデックステーブルを保存する。
【0016】
プロセッサ16は、入出力装置12および保存装置14に結合され、例えば、中央処理装置(central processing unit, CPU)、または他のプログラム可能な一般用途または特殊用途のマイクロプロセッサ(microprocessor)、デジタル信号プロセッサ(digital signal processor, DSP)、プログラマブルコントローラ、特定用途向け集積回路(application specific integrated circuits, ASIC)、プログラマブルロジックコントローラ(programmable logic controller, PLC)、またはその他の類似デバイス、あるいはこれらのデバイスの組み合わせであり、保存装置14に保存したプログラムをロードして実行し、本発明の実施形態のポイントクラウドパッチ処理方法を実行することができる。
【0017】
図2は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。図1および図2を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置10に適用され、以下、ポイントクラウドパッチ処理装置10の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【0018】
まず、ステップ201において、プロセッサ16でポイントクラウドの複数のパッチを生成する。ポイントクラウドは、3D空間内の複数のポイントを含み、各ポイントは、いずれも幾何位置を定義するための幾何情報、および色、視感度、透明度等の属性を定義するための属性情報を含む。各パッチは、ポイントクラウドの一部に対応し、例えば、互いの表面法線ベクトルの偏差が閾値よりも小さい複数のポイントの集合を含む。
【0019】
ステップ202において、プロセッサ16で各パッチのパッチ映像を生成するのに適した方向を決定するとともに、決定した方向に基づいて各パッチを変換し、パッチ映像を生成する。いくつかの実施形態において、プロセッサ16は、例えば、空間最密、類似度比較、イントラ予測(intra prediction)、またはインター予測(inter prediction)等の演算法を採用して、各パッチのパッチ映像を生成するのに適した方向を決定する。
【0020】
詳しく説明すると、1つの実施形態において、プロセッサ16は、例えば、各パッチにおける複数のカラーブロックの位置と大きさを比較して、パッチの間のカラーブロックの類似度を計算し、それにより各パッチのパッチ映像の中の位置を決定する。プロセッサ16は、例えば、各パッチを異なる方向に投影するとともに、異なる方向に投影したパッチを使用して類似度を計算し、各パッチのパッチ映像を生成するのに適した方向を決定する。その他の実施形態において、プロセッサ16は、異なる方向に投影したパッチを使用してイントラ予測またはインター予測を行い、比較的優れた符号化効率を有する組み合わせを探し出して、それにより各パッチのパッチ映像を生成するのに適した方向を決定する。本実施形態は、投影方向の決定方式を限定しない。
【0021】
1つの実施形態において、プロセッサ16は、既定の、またはユーザーが選択した投影方式に基づいて各パッチのパッチ映像を生成するのに適した方向を決定する。上述した投影方式は、例えば、2個の方向、8個の方向、またはn個の方向の任意のサブセット(nは、2よりも大きい整数)を含むが、本発明はこれに限定されない。
【0022】
2個の方向を例に挙げると、例えば、パッチを0°回転させ(つまり、回転させない)、既定の方向に回転させる(例えば、270°鏡像回転させる)投影方式を含む。1つの実施形態において、プロセッサ16は、各パッチが既定の方向に回転するのに適しているかどうかを決定することができる。回転するのに適している場合は、パッチを既定の方向に回転させた後にパッチ映像に挿入し、回転するのに適していない場合は、直接パッチをパッチ映像に挿入する。別の実施形態において、プロセッサ16は、各パッチの広さが高さよりも大きいかどうかを判断する。判断結果が大きくない場合は、パッチを既定の方向に回転させた後にパッチ映像に挿入し、判断結果が大きい場合は、直接パッチをパッチ映像に挿入する。
【0023】
8個の方向を例に挙げると、例えば、パッチを0°(つまり、回転させない)、90°、180°、270°回転させ、パッチの鏡像を0°、90°、180°、270°回転させる投影方式を含む。プロセッサ16は、各パッチがこれら8個の既定の方向のうちのどの方向に回転するのに適しているかどうかを決定することができ、それにより各パッチを決定した既定の方向に基づいて回転させた後にパッチ映像に挿入する。
【0024】
n個の方向の任意のサブセットを例に挙げると、例えば、8個の既定の方向(例えば、上述した実施形態で述べた方向)の中から任意の4個の方向を選択する。つまり、プロセッサ16は、8個の方向の選択を提供できるよう予め設定するが、システムまたはユーザーの現要求に基づき、4個の方向のみをイネーブルにし、残りの4個の方向はディセーブルにする。したがって、プロセッサ16が各パッチの回転方向を決定する時、イネーブルにした4個の方向のみにより各パッチが回転するのに適した方向を決定し、それにより各パッチを決定した方向に基づいて回転させた後にパッチ映像に挿入する。
【0025】
図2のフローに戻ると、ステップ203において、プロセッサ16でパッチ映像を実装して、各パッチの方向に対応するインデックスを記録する。詳しく説明すると、プロセッサ16は、例えば、適切に変換した複数のパッチを含むパッチ映像を、各パッチの幾何位置を記録した幾何映像(geometry image)、各パッチの色構成を記録したテクスチャ映像(texture image)、および幾何映像とテクスチャ映像の中でどの画素が有効であるかを記録した占有マップ(occupancy map)として実装する。上述した幾何映像、テクスチャ映像、および占有マップは、映像パディング(image padding)、平滑化(smoothing)、圧縮等の処理を行った後、マルチプレクサで圧縮したビットストリームとして構成させ、入出力装置12で出力する。また、プロセッサ16は、例えば、予め作成したインデックステーブルに基づいて、前に決定した各パッチの方向を対応するインデックスに変換するとともに、このインデックスを付属のパッチ情報に記録して、実装後のパッチ映像と共に出力する。
【0026】
例を挙げて説明すると、図3は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法の範例である。図3を参照すると、本実施形態は、ポイントクラウドの中の物体30を例に挙げ、ポイントクラウドパッチ処理装置がパッチ映像を生成する過程を説明したものである。
【0027】
まず、ポイントクラウドの中の物体30の周囲における前、後、左、右、上、下6個の面の投影を計算して、6個のパッチ30a〜30fを生成する。続いて、各パッチ(ここでは、パッチ32を例に挙げる)の中のカラーブロック分布(パッチ32の中の異なるパターンは、異なるカラーブロックを示す)を分析して、類似度比較法を利用して、パッチ30a〜30fの異なる方向投影とその他のパッチの投影の間の類似度を順番に計算し、それにより各パッチ30a〜30fがパッチ映像の中の方向および位置に適しているかを決定する。最後に、決定した方向に基づいて各パッチ30a〜30fを変換して、全てのパッチ30a〜30fの内容を含むパッチ映像を生成し、このパッチ映像が実装されるのは、図3に示した各パッチ30a〜30fのカラー構成を記録したテクスチャ映像34a、および各パッチ30a〜30fの幾何位置を記録した幾何映像34bである。
【0028】
説明すべきこととして、ポイントクラウドパッチ処理装置10が、各パッチがパッチ映像の方向を生成するのに適していると決定した時は、例えば、既定の、またはユーザーが選択した投影方式に基づいて方向を決定するとともに、選択した投影方式に対応するインデックステーブルに基づいて、各パッチの方向に対応するインデックスを記録する。
【0029】
例を挙げて説明すると、図4Aおよび図4Bは、本発明の1つの実施形態が示すパッチ投影方式の範例である。2個の方向の投影方式を例に挙げると、図4Aに示すように、パッチを0°回転させ、パッチの鏡像を270°回転させる方式を含み、対応するインデックスは、0、1である。また、8個の方向の投影方式を例に挙げると、図4Bに示すように、パッチを0°、90°、180°、270°回転させ、パッチの鏡像を0°、90°、180°、270°回転させる方式を含み、対応するインデックスは、それぞれ0〜7である。
【0030】
1つの実施形態において、ポイントクラウドパッチ処理装置10は、各パッチがパッチ映像を生成するのに適しているかを決定する過程において、各パッチの方向を決定する他に、各パッチのオフセット(offset)をさらに決定して、パッチを平行移動させることもできる。回転後のパッチを平行移動させることにより、パッチ映像の中の各パッチをさらに緊密に配列させることができ、それにより符号化効率を上げることができる。上述したオフセットは、例えば、各パッチが平行移動した後の位置のパッチの原点またはポイントクラウドの原点に対するオフセットであるが、本発明はこれに限定されない。
【0031】
例を挙げて説明すると、図5は、本発明の1つの実施形態が示すパッチを回転および平行移動させることによりパッチ映像を生成する範例である。図5を参照すると、パッチ映像52は、周知の方法で生成したものであり、パッチ52a、52b、52cを例に挙げると、周知の方法は、パッチを回転も平行移動もさせない状況で、直接パッチ映像52の現在その他のパッチにより既に占有されているエリアに基づいて、上から下に列毎にパッチ映像52の中の現在のパッチを挿入することのできる占有されていないエリアを探して、パッチ52a、52b、52cを順番にパッチ映像52に挿入する。
【0032】
反対に、パッチ映像54は、本発明の実施形態のポイントクラウドパッチ処理方法に基づいて生成したものであり、パッチ54a、54b、54cを例に挙げると、ポイントクラウドパッチ処理装置は、現在のパッチを異なる方向に回転させた後、回転後のパッチをパッチ映像54の中に平行移動させ、それにより現在のパッチの異なる方向に回転させて平行移動させた後のその他のパッチとの類似度に基づいて、現在のパッチのパッチ映像54を生成するのに適している方向およびオフセットを決定し、最後に、決定した方向に基づいてパッチを回転させ、決定したオフセットに基づいて回転後のパッチを平行移動させて、パッチ映像54を生成する。パッチ映像52、54を比較するとわかるように、パッチ映像54の中のパッチを適切に回転および平行移動させることにより、パッチ映像54の中のパッチの配列がより緊密になるため、その結果、符号化効率を上げることができる。
【0033】
1つの実施形態において、プロセッサ16は、例えば、上述した幾何映像、テクスチャ映像、および占有マップに対して映像パディング(image padding)、平滑化(smoothing)、圧縮等の処理を行い、各パッチ方向を記録したインデックスを付属パッチ情報に追加して、圧縮を行い、最後に、マルチプレクサで上述した圧縮後のデータを圧縮したビットストリームとして構成させ、入出力装置12で出力する。
【0034】
詳しく説明すると、図6は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法の詳しいフロー図である。図1および図6を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置10に適用され、以下、ポイントクラウドパッチ処理装置10の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【0035】
まず、ステップ601において、プロセッサ16は、入出力装置12を介してポイントクラウドデータを受信した後、複数のパッチを生成するとともに、ステップ602において、上述したポイントクラウドデータパッチ処理方法でパッチ方向を変更して、パッチ映像およびパッチ情報(例えば、パッチ映像の中の各パッチの方向)を生成する。
【0036】
ステップ603において、プロセッサ16は、パッチ映像を実装して、占有マップを生成するとともに、ステップ604において、幾何映像を生成し、ステップ605において、テクスチャ映像を生成する。生成した幾何映像およびテクスチャ映像は、ステップ606の映像を介してパディングした後、ステップ607において映像圧縮を行い、圧縮した幾何映像および圧縮したテクスチャ映像を取得する。ステップ608において、プロセッサ16は、前に生成したパッチ資料に基づいて、圧縮した幾何映像を使用して再構築した幾何映像に対して平滑化処理を行い、処理後の幾何映像をステップ605に戻って、テクスチャ映像を生成する依拠として使用する。
【0037】
また、ステップ609において、プロセッサ16は、ステップ603において生成した占有マップを圧縮し、ステップ610において、ステップ602で生成したパッチ資料を付属パッチ資料に追加して圧縮する。最後に、ステップ611において、プロセッサ16は、上述したステップにおいて生成した圧縮した幾何映像、圧縮したテクスチャ映像、圧縮した占有マップ、および圧縮した付属パッチ資料を、マルチプレクサを使用して圧縮したビットストリームとして構成させ、入出力装置12で出力する。
【0038】
上述した方法により、本発明の実施形態のポイントクラウドパッチ処理装置10は、ポイントクラウドで生成した複数のパッチを適切に変換した後、パッチ映像を生成することができ、パッチ映像およびパッチ方向を記録したインデックス等の情報を圧縮後に出力して、デコーダがこの情報に基づいてパッチを還元し、ポイントクラウドを再構築できるようにする。以下、実施例を挙げてデコーダの構造および対応するポイントクラウドパッチ処理方法(復号化方法)について説明する。
【0039】
図7は、本発明の1つの実施形態が示すポイントクラウドパッチ処理装置のブロック図である。図7を参照すると、本実施形態のポイントクラウドパッチ処理装置70は、例えば、計算機能を有するカメラ、ビデオカメラ、携帯電話、パソコン、仮想現実装置、拡張現実装置、クラウドサーバー、またはその他のデバイスであり、入出力装置72、保存装置74、およびプロセッサ76を少なくとも含む。入出力装置72、保存装置74、およびプロセッサ76の構成と上述した実施形態の入出力装置12、保存装置14、およびプロセッサ16の構成は同じ、または類似するため、ここでは繰り返し説明しない。上述した実施形態と異なるのは、本実施形態のポイントクラウドパッチ処理装置70がデコーダとして本発明の実施形態のポイントクラウドパッチ処理方法を実行することである。
【0040】
詳しく説明すると、図8は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。図7および図8を参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置70に適用され、以下、ポイントクラウドパッチ処理装置70の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【0041】
まず、ステップ801において、プロセッサ76により入出力装置72を利用してポイントクラウドのビットストリームを受信し、それによりポイントクラウドのビットストリームをパッチ映像およびその中の複数のパッチに対応するインデックスに逆多重化する。
【0042】
続いて、ステップ802において、プロセッサ76によりインデックスを利用して予め保存装置74に保存したインデックステーブルを検索して、各パッチの方向を取得するとともに、検索した方向に基づいてパッチ映像を変換し、ポイントクラウドの複数のパッチを還元する。
【0043】
1つの実施形態において、プロセッサ76は、予め設定した投影方式に基づいてインデックステーブルを選択し、パッチの方向を検索することができる。上述した投影方式は、例えば、n個の方向(nは、2の整数よりも大きいか、それに等しい)を含む。
【0044】
2個の方向を例に挙げると、例えば、パッチを0°回転させ(つまり、回転させない)、既定の方向に回転させる(例えば、鏡像を90°回転させる)投影方式を含み、プロセッサ76は、インデックスを利用してインデックステーブルを検索し、パッチ映像の中の各パッチが回転したかどうかを判断する。回転した場合、プロセッサ76は、パッチを既定の方向で反転させてパッチを還元し、回転していない場合、プロセッサ76は、このパッチを変換しない。
【0045】
説明すべきこととして、1つの実施形態において、プロセッサ76は、インデックスを利用してパッチ映像の中の各パッチのオフセットを検索し、それにより検索したオフセットに基づいて各パッチを反対向きに平行移動させる。上述したオフセットは、例えば、各パッチを平行移動させた後の位置のパッチの原点またはポイントクラウドの原点に対するオフセットであるが、本発明はこれに限定されない。
【0046】
例を挙げて説明すると。下の表1は、適応性パッチ回転関数のルックアップテーブルである。識別符の値は、例えば、インデックスIdxに対応する。すなわち、インデックスIdxが0の時、識別符はFPO_NULLに設定され;インデックスIdxが1の時、識別符はFPO_SWAPに設定される。
【0047】
【表1】
【0048】
設定した識別符に基づくと、上述したルックアップテーブルを利用して、パッチ還元後の画面座標(x,y)を下記のように計算することができる:
【0049】
【数1】
【0050】
式中、座標(u,v)は、パッチのパッチ映像中の最初の座標であり、回転関数Rotation(x)およびオフセット関数Offset(x)の出力は、上の表1において定義したマトリックスであり、インデックスfIdxは、映像中の何枚目の画面のインデックス値を表示したものであり、パッチ平行移動関数Patch2dShiftUおよびPatch2dShiftVは、それぞれパッチの左上角の頂点のパッチ映像の中のX位置とY位置である。
【0051】
また、8個の方向を例に挙げると、例えば、パッチを0°(つまり、回転させない)、90°、180°、270°回転させ、パッチの鏡像を0°、90°、180°、270°回転させる投影方式を含み、プロセッサ76は、インデックスを利用してインデックステーブルを検索し、パッチ映像の中の各パッチをこれら8個の既定の方向のうちのどの方向に回転させるかを判断して、それにより各パッチを検索した既定の方向で反転させる。
【0052】
例を挙げて説明すると、下の表2は、適応性パッチ回転関数のルックアップテーブルである。回転関数Rotation(x)およびオフセット関数Offset(x)の値は、例えば、インデックスIdxに対応する。
【0053】
【表2】
【0054】
表中、BlockSizeは、占有マップの実装ブロックのサイズであり、Patch2dSizeUおよびPatch2dSizeVは、それぞれパッチの幅と高さをBlockSizeが得た値で割ったものである。上の表2を利用して回転関数Rotation(x)およびオフセット関数Offset(x)の出力を検索し、公式(1)によりパッチの画面座標(x,y)を計算することができる。
【0055】
図8のフローに戻ると、ステップ803において、プロセッサ76は、還元後のパッチを利用してポイントクラウドを再構築する。プロセッサ76は、例えば、予め設定した投影方式を使用して各2Dのパッチを3D空間に投影し、ポイントクラウドを再構築する。詳しく説明すると、プロセッサ76は、ポイントクラウドのビットストリームから各画面に対応する幾何映像、テクスチャ映像、占有マップ、および付属パッチ資料を解凍することができる。プロセッサ76は、占有マップを介して幾何映像とテクスチャ映像の中のどの画素が有効データであるかを知ることができ、付属パッチ資料を介してパッチ資料、例えば、どのパッチに属するのかを知ることができる。プロセッサ76は、有効データとパッチ資料を使用して、2Dのパッチを3D空間に投影し、ポイントクラウドを再構築することができる。
【0056】
詳しく説明すると、図9は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法の詳しいフロー図である。図7および図9を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置70に適用され、以下、ポイントクラウドパッチ処理装置70の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【0057】
まず、ステップ901において、プロセッサ76は、入出力装置72を利用してポイントクラウドの圧縮したビットストリームを受信した後、圧縮した幾何映像、圧縮したテクスチャ映像、圧縮した占有マップ、および圧縮した付属パッチ資料に逆多重化する。プロセッサ76は、ステップ902において、圧縮したテクスチャ映像および圧縮した幾何映像をビデオ解凍し、解凍されたテクスチャ映像および解凍された幾何映像を生成する;ステップ903において、圧縮した占有マップを解凍し、解凍された占有マップを生成する;ステップ904において、圧縮した付属パッチ資料を解凍し、解凍された付属パッチ資料を生成する。
【0058】
ステップ905において、プロセッサ76は、解凍された占有マップに基づいて解凍された幾何映像の中のどの画素が有効データであるかを知ることができ、解凍された付属パッチ資料に記録された各パッチの方向、オフセット等のパッチ情報に基づいて、解凍された幾何映像の中の各パッチの方向を反転する。上述した反転は、方向反転および/または平行移動反転を含むが、本発明はこれに限定されない。
【0059】
ステップ906において、プロセッサ76は、反転後のパッチを3D空間に投影して、幾何部分(位置および形状を含む)を再構築し、ステップ907において、再構築した幾何部分を平滑化する。最後に、ステップ908において、プロセッサ76は、解凍されたテクスチャ映像を、再構築した後の幾何部分に対してテクスチャ再構築を行い、再構築後のポイントクラウドを取得する。
【0060】
上述した方法により、本発明の実施形態のポイントクラウドパッチ処理装置70は、圧縮したビットストリームをポイントクラウドの再構築に必要なパッチ映像およびパッチ情報に分解して、パッチを反転し、3D空間に投影することによって、ポイントクラウドを再構築することができる。
【0061】
1つの実施形態において、本発明のポイントクラウドパッチ処理方法は、符号化時に、例えば、現在のデバイスの計算資源、ネットワーク資源等のパラメータをさらに参考にして、適切な投影方式を選択してパッチを処理し、高品質且つ高速の映像伝送を確保する。
【0062】
詳しく説明すると、図10は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。図1および図10を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置10に適用され、以下、ポイントクラウドパッチ処理装置10の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【0063】
まず、ステップ1001において、プロセッサ16は、ポイントクラウドの複数のパッチを生成する。ステップ1002において、プロセッサ16は、現在使用可能な計算資源、ネットワーク帯域幅、エンコーダの符号化能力、デコーダの復号化能力等のパラメータに基づいて、2種類の回転方向、あるいは8種類の回転方向を使用してパッチを回転させるかを決定するとともに、決定結果に基づいて優先方向フラグを設定し、復号時の参考としてデコーダに提供する。優先方向フラグの数値を1に設定する場合、ステップ1003において、2種類の回転方向を使用し;優先方向フラグの数値を0に設定する場合、ステップ1004において、8種類の回転方向を使用する。
【0064】
また、プロセッサ16は、システムまたはユーザーの要求に応じてさらに多くのフラグを使用して、各パッチの処理方式を表記し、デコーダに提供してパッチを還元し、ポイントクラウドを再構築してもよい。
【0065】
詳しく説明すると、図11は、本発明の1つの実施形態が示すポイントクラウドパッチ処理方法のフロー図である。図1および図11を同時に参照すると、本実施形態の方法は、上述したポイントクラウドパッチ処理装置10に適用され、以下、ポイントクラウドパッチ処理装置10の各素子を組み合わせて本実施形態のポイントクラウドパッチ処理方法の詳しいステップを説明する。
【0066】
まず、ステップ1101において、プロセッサ16は、ポイントクラウドの複数のパッチを生成する。ステップ1102において、プロセッサ16は、システムまたはユーザーの操作に基づいて、方向回転機能をイネーブルにするかどうかを判断する。方向回転機能をイネーブルにすると判断した場合、プロセッサ16は、方向イネーブルフラグの数値を1に設定して、ステップ1103に進み、そうでない場合は、方向イネーブルフラグの数値を0に設定して、ステップ111に進むが、パッチを回転させない。
【0067】
方向回転機能をイネーブルにする必要があると判断した場合、ステップ1103において、プロセッサ16は、現在の資源パラメータに基づいて、2種類の回転方向、あるいは8種類の回転方向を使用してパッチを回転させるかを決定するとともに、決定結果に基づいて優先方向フラグを設定する。優先方向フラグの数値を1に設定する場合、ステップ1004において、2種類の回転方向を使用し;優先方向フラグの数値を0に設定する場合、ステップ1005において、8種類の回転方向を使用する。
【0068】
2種類の回転方向を使用する状況では、ステップ1106において、プロセッサ16は、各パッチが既定の方向に回転するのに適しているかどうかを決定することができ、決定結果に基づいて、パッチ回転フラグを設定する。パッチ回転フラグの数値を1に設定する場合、ステップ1108において、パッチを既定の回転方向に回転させ;パッチ回転フラグの数値を0に設定する場合、ステップ1109において、パッチを回転させない。
【0069】
8種類の回転方向を使用する状況では、ステップ1107において、プロセッサ16は、各パッチが既定の方向(すなわち、0°以外の7個の方向)に回転するのに適しているかどうかを決定することができ、決定結果に基づいて、パッチ回転フラグを設定する。パッチ回転フラグの数値を1に設定する場合、ステップ1110において、パッチを予め設定した7個の回転方向のうちの1つの方向に回転させ、この回転方向のインデックスを記録し(例えば、3個のビットを使用して7種類の状態を記録する);パッチ回転フラグの数値を0に設定する場合、ステップ1112において、パッチを回転させない(つまり、0°回転させる)。
【0070】
最後に、ステップ1112において、プロセッサ16により上述したステップで処理した後のパッチおよび生成された付属情報に対して映像パディング、平滑化、圧縮等の処理を行う。詳しい内容については、上述した実施形態において既に説明しているため、ここでは繰り返し説明しない。
【0071】
以上のように、本発明のポイントクラウドパッチ処理方法および装置は、符号化する時にポイントクラウドのパッチを回転および/または平行移動させることを考慮することによって、生成されたパッチ映像の中のパッチの配列をさらに緊密にすることができ、それにより、ポイントクラウド圧縮の符号化効率を改善することができる。また、本発明の方法は、さらに、各パッチの回転方向、オフセット等のパッチ情報を付属情報と共に追加してデコーダに提供することにより、デコーダがパッチを還元し、ポイントクラウドを再構築できるようにする。これにより、ポイントクラウド圧縮の符号化効率を改善し、高品質且つ高速の映像伝送を確保することができる。
【0072】
以上のごとく、この発明を実施形態により開示したが、もとより、この発明を限定するためのものではなく、当業者であれば容易に理解できるように、この発明の技術思想の範囲内において、適当な変更ならびに修正が当然なされうるものであるから、その特許権保護の範囲は、特許請求の範囲および、それと均等な領域を基準として定めなければならない。
【符号の説明】
【0073】
10、70 ポイントクラウドパッチ処理装置
12、72 入出力装置
14、74 保存装置
16、76 プロセッサ
30 物体
30a〜30f、32、52a、52b、52c、54a、54b、54c パッチ
34a テクスチャ映像
34b 幾何映像
53、54 パッチ映像
201〜203、601〜611、801〜803、901〜908、1001〜1004、1101〜1112 ステップ

図1
図2
図3
図4A
図4B
図5
図6
図7
図8
図9
図10
図11
【外国語明細書】
2020017946000001.pdf