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

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

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

特許76837473次元マップ圧縮方法および装置、並びに、3次元マップ復元方法および装置
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-05-19
(45)【発行日】2025-05-27
(54)【発明の名称】3次元マップ圧縮方法および装置、並びに、3次元マップ復元方法および装置
(51)【国際特許分類】
   G06T 9/00 20060101AFI20250520BHJP
【FI】
G06T9/00
【請求項の数】 38
(21)【出願番号】P 2023574721
(86)(22)【出願日】2022-05-31
(65)【公表番号】
(43)【公表日】2024-06-11
(86)【国際出願番号】 CN2022096261
(87)【国際公開番号】W WO2022253228
(87)【国際公開日】2022-12-08
【審査請求日】2024-01-15
(31)【優先権主張番号】202110627636.9
(32)【優先日】2021-06-04
(33)【優先権主張国・地域又は機関】CN
(31)【優先権主張番号】202110823842.7
(32)【優先日】2021-07-21
(33)【優先権主張国・地域又は機関】CN
(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)【参考文献】
【文献】国際公開第2021/093153(WO,A1)
【文献】国際公開第2021/002604(WO,A1)
【文献】国際公開第2020/262019(WO,A1)
【文献】国際公開第2020/013249(WO,A1)
【文献】米国特許出願公開第2020/0107048(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 9/00 - 9/40
(57)【特許請求の範囲】
【請求項1】
3Dマップ圧縮方法であって、
エンコーディング対象記述子に対して圧縮処理を実行するステップであり、
前記エンコーディング対象記述子の第1コンパクト表現を取得し、
前記エンコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している、
ステップと、
前記エンコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得するステップであり、
前記少なくとも1つの参照記述子は、前記3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応している、
ステップと、
前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記エンコーディング対象記述子の第2コンパクト表現を取得するステップと、
前記第2コンパクト表現をカプセル化するステップであり、
前記3Dマップのビットストリームを取得する、
ステップと、
含み、
前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記エンコーディング対象記述子の第2コンパクト表現を取得する前記ステップは、
前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するステップ、または、
前記エンコーディング対象記述子の前記第1コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するステップであり、前記第2テーブルは、前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて確立されている、ステップ、または、
前記エンコーディング対象記述子の前記第2コンパクト表現として、前記少なくとも1つの参照記述子の前記コンパクト表現と前記エンコーディング対象記述子の前記第1コンパクト表現との排他的論理和値または差分を使用するステップ、
を含む、
方法。
【請求項2】
前記方法は、さらに、
電子デバイスによって送信された3Dマップ要求情報を受信するステップと、
前記3Dマップ要求情報に応答して前記電子デバイスに対して、前記3Dマップ要求情報に対応している前記3Dマップの前記ビットストリームを送信するステップ、または、
前記3Dマップの前記ビットストリームをサーバに送信するステップ、
を含む、請求項1に記載の方法。
【請求項3】
前記第1コンパクト表現のデータ分布が、前記第2コンパクト表現のデータ分布とは異なる、
請求項1に記載の方法。
【請求項4】
前記エンコーディング対象記述子の前記第1コンパクト表現は、前記エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、
前記エンコーディング対象記述子の前記第2コンパクト表現は、前記エンコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを含み、
前記少なくとも1つの第1コンパクト表現サブストリングは、前記少なくとも1つの第2コンパクト表現サブストリングとは異なる、
請求項3に記載の方法。
【請求項5】
前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以下であり、または、
前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以上である、
請求項4に記載の方法。
【請求項6】
前記第1テーブルは、少なくとも1つのエンコーディングされたコンパクト表現サブストリングおよび少なくとも1つの第2参照コンパクト表現サブストリングに対応する少なくとも1つの第3コンパクト表現サブストリングを含み、
前記少なくとも1つのエンコーディングされたコンパクト表現サブストリングは、前記エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、前記少なくとも1つの第2参照コンパクト表現サブストリングは、前記少なくとも1つの参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングを含み、
前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する前記ステップは、
前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングおよび前記エンコーディング対象記述子に対応する前記参照記述子の前記少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、前記第1テーブルから、前記少なくとも1つの第1コンパクト表現サブストリングおよび前記少なくとも1つの第1参照コンパクト表現サブストリングに対応する前記少なくとも1つの第3コンパクト表現サブストリングを取得するステップと、
前記少なくとも1つの第1コンパクト表現サブストリングおよび前記少なくとも1つの第1参照コンパクト表現サブストリングに対応する前記少なくとも1つの第3コンパクト表現サブストリングに基づいて、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するステップと、
を含む、請求項に記載の方法。
【請求項7】
前記第1テーブルは、多次元アレイであり、
前記多次元アレイにおける各要素は、前記少なくとも1つのエンコーディングされたコンパクト表現サブストリング、または、前記少なくとも1つの第2参照コンパクト表現サブストリングに対応している、
請求項に記載の方法。
【請求項8】
前記少なくとも1つの参照記述子の前記コンパクト表現は、少なくとも1つの第1参照コンパクト表現サブストリングを含み、かつ、
前記第2テーブルは、前記少なくとも1つの第1参照コンパクト表現サブストリング、および、前記エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングに対応する少なくとも1つの第4コンパクト表現サブストリングを含み、
前記エンコーディング対象記述子の前記第1コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する前記ステップは、
前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングに基づいて、前記第2テーブルから、前記少なくとも1つの第1コンパクト表現サブストリングに対応する前記少なくとも1つの第4コンパクト表現サブストリングを取得するステップであり、前記第2テーブルは、前記少なくとも1つの第1参照コンパクト表現サブストリングに基づいて確立されている、ステップと、
前記少なくとも1つの第1コンパクト表現サブストリングに対応する前記少なくとも1つの第4コンパクト表現サブストリングに基づいて、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するステップと、
を含む、請求項に記載の方法。
【請求項9】
前記第2テーブルは、少なくとも1次元のアレイであり、かつ、
前記少なくとも1次元のアレイにおける各要素は、前記少なくとも1つの第1コンパクト表現サブストリングに対応している、
請求項に記載の方法。
【請求項10】
前記エンコーディング対象記述子は、ゾーン記述子、または、3Dマップポイント記述子を含む、
請求項1乃至9いずれか一項に記載の方法。
【請求項11】
前記エンコーディング対象記述子に対応する前記少なくとも1つの参照記述子は、
前記エンコーディング対象記述子の前の少なくとも1つの圧縮記述子、
少なくとも1つの事前設定記述子、または、
ニューラルネットワークモデルを使用することによって、もしくは、クラスタリングを通して、決定された少なくとも1つの記述子、
を含む、請求項1乃至9いずれか一項に記載の方法。
【請求項12】
前記圧縮処理は、量子化処理または二値化処理を含み、かつ、
前記量子化処理または前記二値化処理は、前記エンコーディング対象記述子のビット数を低減するために使用される、
請求項1乃至9いずれか一項に記載の方法。
【請求項13】
3Dマップ解凍方法であって
3Dマップのビットストリームをカプセル化解除するステップであり、
デコーディング対象記述子の第2コンパクト表現を取得し、
前記デコーディング対象記述子は、前記3Dマップ上の少なくとも1つの3Dマップポイントに対応している、
ステップと、
前記デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得するステップであり、
前記少なくとも1つの参照記述子は、前記3Dマップ上の少なくとも1つのデコーディングされた3Dマップポイントに対応している、
ステップと、
前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記デコーディング対象記述子の第1コンパクト表現を取得するステップと、
前記デコーディング対象記述子の前記第1コンパクト表現に基づいて、前記少なくとも1つの3Dマップポイントの再構成データを取得するステップと、
含み、
前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記デコーディング対象記述子の第1コンパクト表現を取得する前記ステップは、
前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記デコーディング対象記述子の前記第1コンパクト表現を取得するステップ、または、
前記デコーディング対象記述子の前記第2コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記デコーディング対象記述子の前記第1コンパクト表現を取得するステップであり、前記第2テーブルは、前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて確立されている、ステップ、または、
前記少なくとも1つの参照記述子の前記コンパクト表現と、前記デコーディング対象記述子の前記第2コンパクト表現との排他的論理和値または和を、前記デコーディング対象記述子の前記第1コンパクト表現として使用するステップ、
を含む、
方法。
【請求項14】
前記方法は、さらに、
3Dマップ要求情報を送信するステップと、
前記3Dマップ要求情報に対応する前記3Dマップの前記ビットストリームを受信するステップと、
を含む、請求項13に記載の方法。
【請求項15】
第1コンパクト表現のデータ分布が、第2コンパクト表現のデータ分布とは異なる、
請求項13に記載の方法。
【請求項16】
前記デコーディング対象記述子の前記第1コンパクト表現は、前記デコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、
前記デコーディング対象記述子の前記第2コンパクト表現は、前記デコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを含み、
前記少なくとも1つの第1コンパクト表現サブストリングは、前記少なくとも1つの第2コンパクト表現サブストリングとは異なる、
請求項15に記載の方法。
【請求項17】
前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以下であり、または、
前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以上である、
請求項16に記載の方法。
【請求項18】
3Dマップ圧縮装置であって、
エンコーディング対象記述子に対して圧縮処理を実行するように構成された、圧縮処理モジュールであり、
前記エンコーディング対象記述子の第1コンパクト表現を取得し、
前記エンコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している、
圧縮処理モジュールと、
前記エンコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得するように構成された、マッピングモジュールであり、
前記少なくとも1つの参照記述子は、前記3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応しており、
さらに、前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記エンコーディング対象記述子の第2コンパクト表現を取得するように構成されている、
マッピングモジュールと、
前記第2コンパクト表現をカプセル化するように構成された、カプセル化モジュールであり、
前記3Dマップのビットストリームを取得する、
カプセル化モジュールと、
含み、
前記マッピングモジュールは、
前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するように構成されており、または、
前記エンコーディング対象記述子の前記第1コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するように構成されており、前記第2テーブルは、前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて確立され、または、
前記エンコーディング対象記述子の前記第2コンパクト表現として、前記少なくとも1つの参照記述子の前記コンパクト表現と前記エンコーディング対象記述子の前記第1コンパクト表現との排他的論理和値または差分を使用するように構成されている、
装置。
【請求項19】
前記装置は、さらに、送信モジュールを含み、
前記送信モジュールは、電子デバイスによって送信された3Dマップ要求情報を受信し、かつ、前記3Dマップ要求情報に応答して前記電子デバイスに対して、前記3Dマップ要求情報に対応している前記3Dマップの前記ビットストリームを送信するように構成されており、または、
前記送信モジュールは、前記3Dマップの前記ビットストリームをサーバに送信するように構成されている、
請求項18に記載の装置。
【請求項20】
第1コンパクト表現のデータ分布が、第2コンパクト表現のデータ分布とは異なる、
請求項18に記載の装置。
【請求項21】
前記エンコーディング対象記述子の前記第1コンパクト表現は、前記エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、
前記エンコーディング対象記述子の前記第2コンパクト表現は、前記エンコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを含み、
前記少なくとも1つの第1コンパクト表現サブストリングは、前記少なくとも1つの第2コンパクト表現サブストリングとは異なる、
請求項20に記載の装置。
【請求項22】
前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以下であり、または、
前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以上である、
請求項21に記載の装置。
【請求項23】
前記第1テーブルは、少なくとも1つのエンコーディングされたコンパクト表現サブストリングおよび少なくとも1つの第2参照コンパクト表現サブストリングに対応する少なくとも1つの第3コンパクト表現サブストリングを含み、
前記少なくとも1つのエンコーディングされたコンパクト表現サブストリングは、前記エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、前記少なくとも1つの第2参照コンパクト表現サブストリングは、前記少なくとも1つの参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングを含み、
前記マッピングモジュールは、
前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングおよび前記エンコーディング対象記述子に対応する前記参照記述子の前記少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、前記第1テーブルから、前記少なくとも1つの第1コンパクト表現サブストリングおよび前記少なくとも1つの第1参照コンパクト表現サブストリングに対応する前記少なくとも1つの第3コンパクト表現サブストリングを取得し、かつ、
前記少なくとも1つの第1コンパクト表現サブストリングおよび前記少なくとも1つの第1参照コンパクト表現サブストリングに対応する前記少なくとも1つの第3コンパクト表現サブストリングに基づいて、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する、
ように構成されている、
請求項18に記載の装置。
【請求項24】
前記第1テーブルは、多次元アレイであり、
前記多次元アレイにおける各要素は、前記少なくとも1つのエンコーディングされたコンパクト表現サブストリング、または、前記少なくとも1つの第2参照コンパクト表現サブストリングに対応している、
請求項23に記載の装置。
【請求項25】
前記少なくとも1つの参照記述子の前記コンパクト表現は、少なくとも1つの第1参照コンパクト表現サブストリングを含み、かつ、
前記第2テーブルは、前記少なくとも1つの第1参照コンパクト表現サブストリング、および、前記エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングに対応する少なくとも1つの第4コンパクト表現サブストリングを含み、
前記マッピングモジュールは、
前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングに基づいて、前記第2テーブルから、前記少なくとも1つの第1コンパクト表現サブストリングに対応する前記少なくとも1つの第4コンパクト表現サブストリングを取得し、前記第2テーブルは、前記少なくとも1つの第1参照コンパクト表現サブストリングに基づいて確立されており、かつ、
前記少なくとも1つの第1コンパクト表現サブストリングに対応する前記少なくとも1つの第4コンパクト表現サブストリングに基づいて、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する、
ように構成されている、
請求項18に記載の装置。
【請求項26】
前記第2テーブルは、少なくとも1次元のアレイであり、かつ、
前記少なくとも1次元のアレイにおける各要素は、前記少なくとも1つの第1コンパクト表現サブストリングに対応している、
請求項25に記載の装置。
【請求項27】
前記エンコーディング対象記述子は、ゾーン記述子、または、3Dマップポイント記述子を含む、
請求項18乃至26いずれか一項に記載の装置。
【請求項28】
前記エンコーディング対象記述子に対応する前記少なくとも1つの参照記述子は、
前記エンコーディング対象記述子の前の少なくとも1つの圧縮記述子、
少なくとも1つの事前設定記述子、または、
ニューラルネットワークモデルを使用することによって、もしくは、クラスタリングを通して、決定された少なくとも1つの記述子、
を含む、請求項18乃至26いずれか一項に記載の装置。
【請求項29】
前記圧縮処理は、量子化処理または二値化処理を含み、かつ、
前記量子化処理または前記二値化処理は、前記エンコーディング対象記述子のビット数を低減するために使用される、
請求項18乃至26いずれか一項に記載の装置。
【請求項30】
3Dマップ解凍装置であって、
3Dマップのビットストリームをカプセル化解除するように構成された、カプセル化解除モジュールであり、
デコーディング対象記述子の第2コンパクト表現を取得し、
前記デコーディング対象記述子は、前記3Dマップ上の少なくとも1つの3Dマップポイントに対応している、
カプセル化解除モジュールと、
前記デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得するように構成された、デマッピングモジュールであり、
前記少なくとも1つの参照記述子は、前記3Dマップ上の少なくとも1つのデコーディングされた3Dマップポイントに対応しており、さらに、
前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記デコーディング対象記述子の第1コンパクト表現を取得するように構成されている、
デマッピングモジュールと、
前記デコーディング対象記述子の前記第1コンパクト表現に基づいて、前記少なくとも1つの3Dマップポイントの再構成データを取得するように構成された、再構成モジュールと、
含み、
前記デマッピングモジュールは、
前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記デコーディング対象記述子の前記第1コンパクト表現を取得するように構成されており、または、
前記デコーディング対象記述子の前記第2コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記デコーディング対象記述子の前記第1コンパクト表現を取得するように構成されており、前記第2テーブルは、前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて確立され、または、
前記少なくとも1つの参照記述子の前記コンパクト表現と、前記デコーディング対象記述子の前記第2コンパクト表現との排他的論理和値または和を、前記デコーディング対象記述子の前記第1コンパクト表現として使用するように構成されている、
装置。
【請求項31】
前記装置は、さらに、
3Dマップ要求情報を送信し、かつ、前記3Dマップ要求情報に対応する前記3Dマップの前記ビットストリームを受信するように構成された、送信モジュール、
を含む、請求項30に記載の装置。
【請求項32】
第1コンパクト表現のデータ分布が、第2コンパクト表現のデータ分布とは異なる、
請求項30に記載の装置。
【請求項33】
前記デコーディング対象記述子の前記第1コンパクト表現は、前記デコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、
前記デコーディング対象記述子の前記第2コンパクト表現は、前記デコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを含み、
前記少なくとも1つの第1コンパクト表現サブストリングは、前記少なくとも1つの第2コンパクト表現サブストリングとは異なる、
請求項32に記載の装置。
【請求項34】
前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以下であり、または、
前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以上である、
請求項33に記載の装置。
【請求項35】
3Dマップ圧縮装置であって、
1つ以上のプロセッサと、
1つ以上のプログラムを保管するように構成された、メモリと、
を含み、
前記1つ以上のプログラムが、前記1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサは、
請求項1乃至12いずれか一項に記載の方法、
を実施することが可能になる、
装置。
【請求項36】
3Dマップ解凍装置であって、
1つ以上のプロセッサと、
1つ以上のプログラムを保管するように構成された、メモリと、
を含み、
前記1つ以上のプログラムが、前記1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサは、
請求項13乃至17いずれか一項に記載の方法、
を実施することが可能になる、
装置。
【請求項37】
コンピュータプログラムを含む、コンピュータ可読記憶媒体であって、
コンピュータ上で前記コンピュータプログラムが実行されると、
前記コンピュータは、
請求項1乃至12いずれか一項に記載の方法、
を実施することが可能になる、
コンピュータ可読記憶媒体。
【請求項38】
コンピュータプログラムを含む、コンピュータ可読記憶媒体であって、
コンピュータ上で前記コンピュータプログラムが実行されると、
前記コンピュータは、
請求項13乃至17いずれか一項に記載の方法、
を実施することが可能になる、
コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、3Dマップ技術に関する。そして、特には、3Dマップ圧縮方法および装置、並びに、3Dマップ解凍方法および装置に関する。
【0002】
本出願は、2021年6月4日に中国国家知識産権局に出願され、タイトルが“3D MAP COMPRESSION METHOD AND APPARATUS, AND 3D MAP DECOMPRESSION METHOD AND APPARATUS”である中国特許出願第202110627636.9号、および、2021年7月21日に中国国家知識産権局に出願され、タイトルが“3D MAP COMPRESSION METHOD AND APPARATUS, AND 3D MAP DECOMPRESSION METHOD AND APPARATUS”である中国特許出願第202110823842.7号について優先権を主張するものであり、これらの出願は、両方とも、参照によりその全体が本明細書に組み込まれている。
【背景技術】
【0003】
仮想現実(virtual reality、VR)、拡張現実(augmented reality、AR)、および、複合現実(mixed reality、MR)は、近年登場したマルチメディア仮想シーン技術である。これらの技術は、仮想現実を作成し、そして、仮想現実を現実世界と重ね合わせることができ、新しい視覚環境およびインタラクティブ体験を作成する。そうしたアプリケーションにおいて、電子デバイスは、仮想オブジェクトと現実シーンとの間の融合(fusion)を正確に実施するために、現在の環境における電子デバイスの姿勢情報(pose information)を決定する必要がある。
【0004】
加えて、無人航空機、産業用ロボット、などによる自動運転、自律ナビゲーション、自動検査のアプリケーションにおいて、車両、無人航空機、ロボットといったキャリア(carrier)は、正確な経路計画、ナビゲーション、検出、および操作を実行するために、キャリアで搬送される電子デバイスの姿勢を決定することによって、現在の環境におけるキャリアの姿勢を決定する必要がある。
【0005】
上記のアプリケーションにおいて、現在の環境における電子デバイスの姿勢が決定される必要があるという問題に対する典型的なソリューションは、以下のとおりである。電子デバイスは、サーバまたは別のデバイスから、電子デバイスが配置されている環境の3次元(3-dimension、3D)マップを受信し、ローカルセンサを使用することによって環境内の画像情報を収集し、そして、収集された画像情報およびダウンロードされた3Dマップを参照して、電子デバイスの現在の姿勢を決定する。
【0006】
しかしながら、オリジナルの3Dマップは、たいてい、大きなデータ量を含んでおり、そして、マップを送信するために、大量の帯域幅および大量の時間が消費される必要がある。このことは、アプリケーション性能を厳しく制限し、かつ、ユーザ体験に影響を及ぼす。
【発明の概要】
【0007】
本出願は、3Dマップ圧縮(compression)方法および装置、並びに、3Dマップ解凍(decompression)方法および装置を提供し、3Dマップ送信オーバーヘッドまたは3Dマップストレージオーバーヘッドを低減する。
【0008】
第1態様に従って、本出願の実施形態は、3Dマップ圧縮方法を提供する。本方法は、エンコーディング対象記述子に対して圧縮処理を実行するステップであり、前記エンコーディング対象記述子の第1コンパクト表現を取得し、前記エンコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応しているステップと、前記エンコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得するステップであり、前記少なくとも1つの参照記述子は、前記3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応しているステップと、前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記エンコーディング対象記述子の第2コンパクト表現を取得するステップと、前記第2コンパクト表現をカプセル化するステップであり、前記3Dマップのビットストリームを取得するステップと、を含み得る。
【0009】
例えば、エンコーディング対象記述子は、3Dマップ上のゾーン記述子または3Dマップポイント記述子であってよい。エンコーディング対象記述子は、また、現在記述子(current descriptor)とも呼ばれ得る。
【0010】
少なくとも1つの参照記述子は、3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応している。別の言葉で言えば、少なくとも1つの参照記述子は、3Dマップの少なくとも1つのエンコーディングされた3Dマップポイント記述子であってよく、または、3Dマップの少なくとも1つのエンコーディングされたゾーン記述子であってもよい。
【0011】
1つのエンコーディング対象記述子は、1つの参照記述子または複数の参照記述子を有し得る。エンコーディング対象記述子がゾーン記述子である場合、エンコーディング対象記述子に対応する参照記述子は、参照ゾーン記述子であり得る。エンコーディング対象記述子が3Dマップポイント記述子である場合、エンコーディング対象記述子に対応する参照記述子は、参照3Dマップポイント記述子であり得る。
【0012】
可能な設計において、本方法は、さらに、電子デバイスによって送信された3Dマップ要求情報を受信するステップと、前記3Dマップ要求情報に応答して前記電子デバイスに対して、前記3Dマップ要求情報に対応している前記3Dマップの前記ビットストリームを送信するステップ、または、前記3Dマップの前記ビットストリームをサーバに送信するステップ、を含み得る。
【0013】
可能な設計において、前記第1コンパクト表現のデータ分布が、前記第2コンパクト表現のデータ分布とは異なる。
【0014】
本出願のこの実施形態において、コンパクト表現(例えば、第1コンパクト表現または第2コンパクト表現)のデータ分布は、コンパクト表現における2進数(0,1)の分布である。本出願のこの実施形態においては、コンパクト表現のデータ分布が変更されて、カプセル化を通じて後で取得される3Dマップのビットストリームのデータ量を低減する。例えば、3Dマップのデータ量をテラバイト(Terabyte、TB)レベルからギガバイト(Gigabyte、GB)レベルに低減し、それによって、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。第1コンパクト表現のデータ分布と比較して、本出願のこの実施形態における第2コンパクト表現では、0がより密に分布しており、または、1がより密に分布している。
【0015】
可能な設計において、前記エンコーディング対象記述子の前記第1コンパクト表現は、前記エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、前記エンコーディング対象記述子の前記第2コンパクト表現は、前記エンコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを含み、前記少なくとも1つの第1コンパクト表現サブストリングは、前記少なくとも1つの第2コンパクト表現サブストリングとは異なる。
【0016】
例えば、少なくとも1つの第1コンパクト表現サブストリングそれぞれは、対応する第2コンパクト表現サブストリングとは異なる。例えば、第1コンパクト表現は、3つの第1コンパクト表現サブストリング(A1、A2、およびA3)を含み、そして、第2コンパクト表現は、3つの第2コンパクト表現サブストリング(B1、B2、およびB3)を含む。ここで、A1はB1とは異なり、A2はB2とは異なり、そして、A3はB3とは異なっている。
【0017】
可能な設計において、前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以下であり、または、前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以上である。
【0018】
この実施態様において、第1テーブルを使用することによるマッピング、第2テーブルを使用することによるマッピング、排他的論理和値を使用することによるマッピング、または、差分(difference)を使用することによるマッピングを通じて、少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、対応する第1コンパクト表現サブストリング以下であり、第1コンパクト表現サブストリングは、第1方向に向かってマッピングされる。ここで、第1方向は、第2コンパクト表現内に分布する0の密度を増加させ、かつ、カプセル化を通じて後で取得される3Dマップのビットストリームのデータ量を低減するように、小さい値を有する方向であり得る。代替的に、第1テーブルを使用することによるマッピング、第2テーブルを使用することによるマッピング、排他的論理和値を使用することによるマッピング、または、差分を使用することによるマッピングを通じて、少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、対応する第1コンパクト表現サブストリング以上であり、第1コンパクト表現サブストリングは、第2方向に向かってマッピングされる。ここで、第2方向は、第2コンパクト表現内に分布する1の密度を増加させ、かつ、カプセル化を通じて後で取得される3Dマップのビットストリームのデータ量を低減するように、大きい値を有する方向であり得る。
【0019】
可能な設計において、前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記エンコーディング対象記述子の第2コンパクト表現を取得する前記ステップは、前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するステップを含み得る。
【0020】
可能な設計において、前記第1テーブルは、少なくとも1つのエンコーディングされたコンパクト表現サブストリングおよび少なくとも1つの第2参照コンパクト表現サブストリングに対応する少なくとも1つの第3コンパクト表現サブストリングを含み、前記少なくとも1つのエンコーディングされたコンパクト表現サブストリングは、前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、前記少なくとも1つの第2参照コンパクト表現サブストリングは、前記少なくとも1つの参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングを含み、前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する前記ステップは、前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングおよび前記エンコーディング対象記述子に対応する前記参照記述子の前記少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、前記第1テーブルから、前記少なくとも1つの第1コンパクト表現サブストリングおよび前記少なくとも1つの第1参照コンパクト表現サブストリングに対応する前記少なくとも1つの第3コンパクト表現サブストリングを取得するステップと、前記少なくとも1つの第1コンパクト表現サブストリングおよび前記少なくとも1つの第1参照コンパクト表現サブストリングに対応する前記少なくとも1つの第3コンパクト表現サブストリングに基づいて、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するステップと、を含み得る。
【0021】
可能な設計において、前記第1テーブルは、多次元アレイであり、前記多次元アレイにおける各要素は、前記少なくとも1つのエンコーディングされたコンパクト表現サブストリング、または、前記少なくとも1つの第2参照コンパクト表現サブストリングに対応している。
【0022】
可能な設計において、前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記エンコーディング対象記述子の第2コンパクト表現を取得する前記ステップは、前記エンコーディング対象記述子の前記第1コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するステップであり、前記第2テーブルは、前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて確立されているステップ、を含み得る。
【0023】
可能な設計において、前記少なくとも1つの参照記述子の前記コンパクト表現は、少なくとも1つの第1参照コンパクト表現サブストリングを含み、かつ、前記第2テーブルは、前記少なくとも1つの第1参照コンパクト表現サブストリング、および、前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングに対応する少なくとも1つの第4コンパクト表現サブストリングを含む。そして、前記エンコーディング対象記述子の前記第1コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する前記ステップは、前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングに基づいて、前記第2テーブルから、前記少なくとも1つの第1コンパクト表現サブストリングに対応する前記少なくとも1つの第4コンパクト表現サブストリングを取得するステップであり、前記第2テーブルは、前記少なくとも1つの第1参照コンパクト表現サブストリングに基づいて確立されているステップと、前記少なくとも1つの第1コンパクト表現サブストリングに対応する前記少なくとも1つの第4コンパクト表現サブストリングに基づいて、前記エンコーディング対象記述子の前記第2コンパクト表現を取得するステップと、を含む。
【0024】
可能な設計において、前記第2テーブルは、少なくとも1次元のアレイであり、かつ、前記少なくとも1次元のアレイにおける各要素は、前記少なくとも1つの第1コンパクト表現サブストリングに対応している。
【0025】
可能な設計において、前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記エンコーディング対象記述子の第2コンパクト表現を取得する前記ステップは、前記エンコーディング対象記述子の前記第2コンパクト表現として、前記少なくとも1つの参照記述子の前記コンパクト表現と前記エンコーディング対象記述子の前記第1コンパクト表現との排他的論理和値または差分を使用するステップ、を含み得る。
【0026】
可能な設計において、前記エンコーディング対象記述子に対応する前記少なくとも1つの参照記述子は、前記エンコーディング対象記述子の前の少なくとも1つの圧縮(またはエンコーディング)記述子、少なくとも1つの事前設定記述子(preset descriptor)、または、ニューラルネットワークモデルを使用することによって、もしくは、クラスタリングを通して、決定された少なくとも1つの記述子、を含む。
【0027】
可能な設計において、前記圧縮処理は、量子化処理または二値化処理を含み、かつ、前記量子化処理または前記二値化処理は、前記エンコーディング対象記述子のビット数を低減するために使用される。
【0028】
第2態様に従って、本出願の実施形態は、3Dマップ解凍方法を提供する。本方法は、3Dマップのビットストリームをカプセル化解除するステップであり、デコーディング対象(to-be-decoded)記述子の第2コンパクト表現を取得し、前記デコーディング対象記述子は、前記3Dマップ上の少なくとも1つの3Dマップポイントに対応しているステップと、前記デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得するステップであり、前記少なくとも1つの参照記述子は、前記3Dマップ上の少なくとも1つのデコーディングされた3Dマップポイントに対応しているステップと、前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記デコーディング対象記述子の第1コンパクト表現を取得するステップと、前記デコーディング対象記述子の前記第1コンパクト表現に基づいて、前記少なくとも1つの3Dマップポイントの再構成データを取得するステップと、を含み得る。
【0029】
可能な設計において、本方法は、さらに、3Dマップ要求情報を送信するステップと、前記3Dマップ要求情報に対応する前記3Dマップの前記ビットストリームを受信するステップと、を含み得る。
【0030】
可能な設計において、第1コンパクト表現のデータ分布が、第2コンパクト表現のデータ分布とは異なる。
【0031】
可能な設計において、前記デコーディング対象記述子の前記第1コンパクト表現は、前記デコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、前記デコーディング対象記述子の前記第2コンパクト表現は、前記デコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを含み、前記少なくとも1つの第1コンパクト表現サブストリングは、前記少なくとも1つの第2コンパクト表現サブストリングとは異なる。
【0032】
可能な設計において、前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以下であり、または、前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以上である。
【0033】
可能な設計において、前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記デコーディング対象記述子の第1コンパクト表現を取得する前記ステップは、前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記デコーディング対象記述子の前記第1コンパクト表現を取得するステップ、を含み得る。
【0034】
可能な設計において、前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記デコーディング対象記述子の第1コンパクト表現を取得する前記ステップは、前記デコーディング対象記述子の前記第2コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記デコーディング対象記述子の前記第1コンパクト表現を取得するステップであり、前記第2テーブルは、前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて確立されているステップ、を含み得る。
【0035】
可能な設計において、前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、前記デコーディング対象記述子の第1コンパクト表現を取得する前記ステップは、前記少なくとも1つの参照記述子の前記コンパクト表現と、前記デコーディング対象記述子の前記第2コンパクト表現との排他的論理和値または和を、前記デコーディング対象記述子の前記第1コンパクト表現として使用するステップ、を含み得る。
【0036】
第3態様に従って、本出願の実施形態は、3Dマップ圧縮装置を提供する。本装置は、電子デバイスまたはサーバにおけるチップまたはシステムオンチップであってよく、もしくは、電子デバイスまたはサーバ内にあり、かつ、第1態様または第1態様の可能な実装形態のうちのいずれか1つに従った方法を実施するように構成された、機能モジュールであってよい。例えば、本装置は、圧縮処理モジュール、マッピングモジュール、および、カプセル化モジュールを含み得る。
【0037】
前記圧縮処理モジュールは、前記エンコーディング対象記述子の第1圧縮表現を取得するために、エンコーディング対象記述子に対して圧縮処理を実行するように構成されており、ここで、前記エンコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している。前記マッピングモジュールは、前記エンコーディング対象記述子に対応する少なくとも1つの参照記述子の圧縮表現を取得するように構成されており、ここで、少なくとも1つの参照記述子は、3Dマップ上の少なくとも1つのエンコーディングされた(または、圧縮)3Dマップポイントに対応している。前記マッピングモジュールは、さらに、前記エンコーディング対象記述子の前記第1圧縮表現および前記少なくとも1つの参照記述子の前記圧縮表現に基づいて、前記エンコーディング対象記述子の第2圧縮表現を取得するように構成されている。そして、前記カプセル化モジュールは、前記3Dマップのビットストリームを取得するために、前記第2圧縮表現をカプセル化するように構成されている。
【0038】
可能な設計において、本装置は、さらに、送信モジュールを含み得る。ここで、前記送信モジュールは、電子デバイスによって送信された3Dマップ要求情報を受信し、かつ、前記3Dマップ要求情報に応答して前記電子デバイスに対して、前記3Dマップ要求情報に対応している前記3Dマップの前記ビットストリームを送信するように構成されており、または、前記送信モジュールは、前記3Dマップの前記ビットストリームをサーバに送信するように構成されている。
【0039】
可能な設計において、第1コンパクト表現のデータ分布が、第2コンパクト表現のデータ分布とは異なる。
【0040】
可能な設計において、前記エンコーディング対象記述子の前記第1コンパクト表現は、前記エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、前記エンコーディング対象記述子の前記第2コンパクト表現は、前記エンコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを含み、前記少なくとも1つの第1コンパクト表現サブストリングは、前記少なくとも1つの第2コンパクト表現サブストリングとは異なる。
【0041】
可能な設計において、前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以下であり、または、前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以上である。
【0042】
可能な設計において、前記マッピングモジュールは、前記エンコーディング対象記述子の前記第1コンパクト表現および前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する、ように構成されている。
【0043】
可能な設計において、前記第1テーブルは、少なくとも1つのエンコーディングされたコンパクト表現サブストリングおよび少なくとも1つの第2参照コンパクト表現サブストリングに対応する少なくとも1つの第3コンパクト表現サブストリングを含み、前記少なくとも1つのエンコーディングされたコンパクト表現サブストリングは、前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、前記少なくとも1つの第2参照コンパクト表現サブストリングは、前記少なくとも1つの参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングを含み、前記マッピングモジュールは、前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングおよび前記エンコーディング対象記述子に対応する前記参照記述子の前記少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、前記第1テーブルから、前記少なくとも1つの第1コンパクト表現サブストリングおよび前記少なくとも1つの第1参照コンパクト表現サブストリングに対応する前記少なくとも1つの第3コンパクト表現サブストリングを取得し、かつ、前記少なくとも1つの第1コンパクト表現サブストリングおよび前記少なくとも1つの第1参照コンパクト表現サブストリングに対応する前記少なくとも1つの第3コンパクト表現サブストリングに基づいて、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する、ように構成されている。
【0044】
可能な設計において、前記第1テーブルは、多次元アレイであり、前記多次元アレイにおける各要素は、前記少なくとも1つのエンコーディングされたコンパクト表現サブストリング、または、前記少なくとも1つの第2参照コンパクト表現サブストリングに対応している。
【0045】
可能な設計において、前記マッピングモジュールは、前記エンコーディング対象記述子の前記第1コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する、ように構成されており、前記第2テーブルは、前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて確立されている。
【0046】
可能な設計において、前記少なくとも1つの参照記述子の前記コンパクト表現は、少なくとも1つの第1参照コンパクト表現サブストリングを含み、かつ、前記第2テーブルは、前記少なくとも1つの第1参照コンパクト表現サブストリング、および、前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングに対応する少なくとも1つの第4コンパクト表現サブストリングを含み、前記マッピングモジュールは、前記エンコーディング対象記述子の前記少なくとも1つの第1コンパクト表現サブストリングに基づいて、前記第2テーブルから、前記少なくとも1つの第1コンパクト表現サブストリングに対応する前記少なくとも1つの第4コンパクト表現サブストリングを取得し、前記第2テーブルは、前記少なくとも1つの第1参照コンパクト表現サブストリングに基づいて確立されており、かつ、前記少なくとも1つの第1コンパクト表現サブストリングに対応する前記少なくとも1つの第4コンパクト表現サブストリングに基づいて、前記エンコーディング対象記述子の前記第2コンパクト表現を取得する、ように構成されている。
【0047】
可能な設計において、前記第2テーブルは、少なくとも1次元のアレイであり、かつ、前記少なくとも1次元のアレイにおける各要素は、前記少なくとも1つの第1コンパクト表現サブストリングに対応している。
【0048】
可能な設計において、前記マッピングモジュールは、前記少なくとも1つの参照記述子の前記コンパクト表現と、前記エンコーディング対象記述子の前記第1コンパクト表現との排他的論理和値または差分を、前記エンコーディング対象記述子の前記第2コンパクト表現として使用する、ように構成されている。
【0049】
可能な設計において、前記エンコーディング対象記述子は、ゾーン記述子、または、3Dマップポイント記述子を含む。
【0050】
可能な設計において、前記エンコーディング対象記述子に対応する前記少なくとも1つの参照記述子は、前記エンコーディング対象記述子の前の少なくとも1つの圧縮記述子、少なくとも1つの事前設定記述子、または、ニューラルネットワークモデルを使用することによって、もしくは、クラスタリングを通して、決定された少なくとも1つの記述子、を含む。
【0051】
可能な設計において、前記圧縮処理は、量子化処理または二値化処理を含み、かつ、前記量子化処理または前記二値化処理は、前記エンコーディング対象記述子のビット数を低減するために使用される。
【0052】
第4態様に従って、本出願の実施形態は、3Dマップ解凍装置を提供する。本装置は、電子デバイスまたはサーバにおけるチップまたはシステムオンチップであってよく、もしくは、電子デバイスまたはサーバ内にあり、第2態様または第2態様の可能な実装形態のうちのいずれか1つに従った方法を実装するように構成された、機能モジュールであってよい。例えば、本装置は、カプセル化解除モジュール、デマッピングモジュール、および、構成モジュールを含み得る。
【0053】
前記カプセル化解除モジュールは、前記3Dマップ上の少なくとも1つの3Dマップポイントに対応するデコーディング対象記述子の第2コンパクト表現を取得するために、3Dマップのビットストリームをカプセル化解除するように構成されており、ここで、前記デコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している。前記デマッピングモジュールは、前記デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得するように構成されており、ここで、前記少なくとも1つの参照記述子は、3Dマップ上の少なくとも1つのデコーディングされた3Dマップポイントに対応している。前記デマッピングモジュールは、さらに、前記デコーディング対象記述子の第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子のコンパクト表現に基づいて、前記デコーディング対象記述子の第1コンパクト表現を取得するように構成されている。そして、前記再構成モジュールは、前記デコーディング対象記述子の前記第1コンパクト表現に基づいて、前記少なくとも1つの3Dマップポイントの再構成データを取得するように構成されている。
【0054】
可能な設計において、本装置は、さらに、3Dマップ要求情報を送信し、かつ、前記3Dマップ要求情報に対応する前記3Dマップの前記ビットストリームを受信するように構成された、送信モジュールを含み得る。
【0055】
可能な設計において、第1コンパクト表現のデータ分布が、第2コンパクト表現のデータ分布とは異なる。
【0056】
可能な設計において、前記デコーディング対象記述子の前記第1コンパクト表現は、前記デコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、前記デコーディング対象記述子の前記第2コンパクト表現は、前記デコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを含み、前記少なくとも1つの第1コンパクト表現サブストリングは、前記少なくとも1つの第2コンパクト表現サブストリングとは異なる。
【0057】
可能な設計において、前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以下であり、または、前記少なくとも1つの第2コンパクト表現サブストリングは、部分的に、または、全てが、前記対応する第1コンパクト表現サブストリング以上である。
【0058】
可能な設計において、前記デマッピングモジュールは、前記デコーディング対象記述子の前記第2コンパクト表現および前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて、第1テーブルをルックアップすることによって、前記デコーディング対象記述子の前記第1コンパクト表現を取得する、ように構成されている。
【0059】
可能な設計において、前記デマッピングモジュールは、前記デコーディング対象記述子の前記第2コンパクト表現に基づいて、第2テーブルをルックアップすることによって、前記デコーディング対象記述子の前記第1コンパクト表現を取得するように構成されており、前記第2テーブルは、前記デコーディング対象記述子に対応する前記少なくとも1つの参照記述子の前記コンパクト表現に基づいて確立されている。
【0060】
可能な設計において、前記デマッピングモジュールは、前記少なくとも1つの参照記述子の前記コンパクト表現と、前記デコーディング対象記述子の前記第2コンパクト表現との排他的論理和値または和を、前記デコーディング対象記述子の前記第1コンパクト表現として使用する、ように構成されている。
【0061】
第5態様に従って、本出願の実施形態は、3Dマップ圧縮装置を提供する。本装置は、1つ以上のプロセッサ、および、1つ以上のプログラムを保管するように構成されたメモリを含んでいる。ここで、1つ以上のプログラムが1つ以上のプロセッサによって実行されると、1つ以上のプロセッサは、第1態様または第1態様の可能な設計のいずれか1つに従った方法を実施することが可能になる。
【0062】
第6態様に従って、本出願の実施形態は、3Dマップ解凍装置を提供する。本装置は、1つ以上のプロセッサ、および、1つ以上のプログラムを保管するように構成されたメモリを含んでいる。ここで、1つ以上のプログラムが1つ以上のプロセッサによって実行されると、1つ以上のプロセッサは、第2態様または第2態様の可能な設計のいずれか1つに従った方法を実施することが可能になる。
【0063】
第7態様に従って、本出願の実施形態は、コンピュータプログラムを含む、コンピュータ可読記憶媒体を提供する。ここで、コンピュータプログラムがコンピュータ上で実行されると、コンピュータは、第1態様または第1態様の可能な設計のいずれか1つに従った方法を実施、もしくは、第2態様または第2態様の可能な設計のいずれか1つに従った方法を実施することが可能になる。
【0064】
第8態様に従って、本出願は、コンピュータプログラムまたはコンピュータプログラム製品を提供する。ここで、コンピュータプログラムまたはコンピュータプログラム製品がコンピュータ上で実行されると、コンピュータは、第1態様および第2態様、並びに、第1態様および第2態様の可能な実装形態のいずれか1つに従った方法を実施することが可能になる。
【0065】
第9態様に従って、本出願は、第1態様のいずれか1つに従った方法を使用することによってエンコーディングされたビットストリームを含む、非一時的記憶媒体を提供する。
【0066】
第10態様に従って、本出願の実施形態は、3Dマップ圧縮方法を提供する。本方法は、エンコーディング対象記述子に対してクラスタリング処理を実行するステップであり、前記エンコーディング対象記述子の少なくとも第1中心についての情報を取得し、前記エンコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応しており、かつ、前記少なくとも1つの第1中心についての情報は、前記エンコーディング対象記述子の少なくとも1つのサブ特徴に対して前記クラスタリング処理が実行された後で取得された中心を表しているステップと、前記エンコーディング対象記述子に対応する参照記述子の少なくとも第1参照中心についての情報を取得するステップであり、前記参照記述子は、前記3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応しており、前記少なくとも1つの第1参照中心についての情報は、前記参照記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で取得された中心を表しているステップと、前記少なくとも1つの第1中心についての情報および前記少なくとも1つの第1参照中心についての情報に基づいて、前記エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するステップと、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての情報に対して圧縮処理を実行するステップであり、前記エンコーディング対象記述子のコンパクト表現を取得するステップと、前記コンパクト表現をカプセル化するステップであり、前記3Dマップのビットストリームを取得するステップと、を含み得る。
【0067】
この実施形態においては、クラスタリング処理が、最初に、実行され、そして、オリジナルのエンコーディング対象記述子を表すために第1中心情報が使用されて、エンコーディング対象記述子のデータ量を低減する。そして、次いで、少なくとも1つの第1中心についての情報が、少なくとも1つの第2中心についての情報に対してマッピングされて、中心情報のデータ分布を変更し、それによって、さらに、圧縮処理およびカプセル化を通じて取得される3Dマップのビットストリームのデータ量を低減し、かつ、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減していることが分かる。
【0068】
例えば、エンコーディング対象記述子は、1つ以上のサブ特徴(subfeature)へと分割されてよく、そして、1つ以上の第1中心情報を取得するために、クラスタリング処理が各サブ特徴に対して実行される。1つ以上の第1中心情報は、1つ以上のクラスタリングセンターの番号であってよい。
【0069】
例えば、エンコーディング対象記述子は、3Dマップ上のゾーン記述子または3Dマップポイント記述子であってよい。エンコーディング対象記述子は、また、現在記述子とも呼ばれ得る。
【0070】
参照記述子は、3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応している。別の言葉で言えば、参照記述子は、3Dマップのエンコーディングされた3Dマップポイント記述子であってよく、または、3Dマップのエンコーディングされたゾーン記述子であってもよい。
【0071】
エンコーディング対象記述子がゾーン記述子である場合、エンコーディング対象記述子に対応する参照記述子は、参照ゾーン記述子であってよい。エンコーディング対象記述子が3Dマップポイント記述子である場合、エンコーディング対象記述子に対応する参照記述子は、参照3Dマップポイント記述子であってよい。
【0072】
可能な設計において、本方法は、さらに、電子デバイスによって送信された3Dマップ要求情報を受信するステップ、および、前記3Dマップ要求情報に応答して、前記3Dマップ要求情報に対応している3Dマップのビットストリームを、電子デバイスに送信するステップ、を含み得る。第10態様における圧縮方法を実施するためのエンティティ(電子デバイスであってよく、または、サーバ(例えば、クラウドサーバ)であってもよい)は、別の電子デバイスによって送信された3Dマップ要求情報を受信し、そして、前記3Dマップ要求情報に対応している3Dマップのビットストリームを、電子デバイスに送信し得る。
【0073】
可能な設計において、本方法は、さらに、前記3Dマップのビットストリームを、サーバに送信するステップを含み得る。第10態様における圧縮方法を実施するためのエンティティ(第1電子デバイスであってよい)は、3Dマップのビットストリームをサーバに送信し、そして、サーバは、前記3Dマップのビットストリームを、第2電子デバイスに送信し得る。
【0074】
可能な設計において、前記エンコーディング対象記述子の少なくとも1つの第1中心についての情報および前記少なくとも1つの第1参照中心についての情報に基づいて、前記エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得する前記ステップは、前記少なくとも1つの第1中心についての情報および前記少なくとも1つの第1参照中心についての情報に基づいて、第1テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての情報を取得するステップ、を含み得る。
【0075】
可能な設計において、前記第1テーブルは、少なくとも1つのコーディング中心についての情報および少なくとも1つの第2参照中心についての情報に対応する少なくとも1つの第3中心についての情報を含み、ここで、少なくとも前記コーディング中心についての情報は、前記少なくとも1つの第1中心についての情報を含み、かつ、前記少なくとも1つの第2参照中心についての情報が、前記少なくとも1つの第1参照中心についての前記情報を含む。そして。前記少なくとも1つの第1中心についての情報および前記少なくとも1つの第1参照中心についての情報に基づいて、第1テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての情報を取得する前記ステップは、前記少なくとも1つの第1中心についての情報および前記少なくとも1つの第1参照中心についての情報に基づいて、前記第1テーブルから、前記少なくとも1つの第1中心についての情報および前記少なくとも1つの第1参照中心についての情報に対応する前記少なくとも1つの第3中心についての情報を取得するステップと、前記少なくとも1つの第3中心についての情報を、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての情報として使用するステップと、を含む。
【0076】
可能な設計において、前記第1テーブルは多次元アレイであり、かつ、前記多次元アレイにおける各要素は、前記少なくともコーディング中心についての情報または前記少なくとも1つの第2参照中心についての情報に対応している。
【0077】
可能な設計において、前記少なくとも1つの第1中心についての情報および前記少なくとも1つの第1参照中心についての情報に基づいて、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての情報を取得する前記ステップは、前記少なくとも1つの第1中心についての情報に基づいて、第2テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての情報を取得するステップであり、前記第2テーブルは、前記少なくとも1つの第1参照中心についての情報に基づいて確立されているステップ、を含む。
【0078】
可能な設計において、前記第2テーブルは、前記少なくとも1つの第1参照中心についての情報、および、前記少なくとも1つの第1中心についての情報に対応する少なくとも1つの第4中心についての情報を含む。そして、前記少なくとも1つの第1中心についての情報に基づいて、第2テーブルをルックアップすることによって、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての情報を取得する前記ステップは、前記少なくとも1つの第1中心についての情報に基づいて、前記第2テーブルから、前記少なくとも1つの第1中心についての情報に対応する前記少なくとも1つの第4中心についての情報を取得するステップと、前記少なくとも1つの第1中心についての情報に対応する前記少なくとも1つの第4中心についての情報を、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての情報として使用するステップと、を含む。
【0079】
可能な設計において、前記第2テーブルは、少なくとも1つのディメンションを有するアレイであり、かつ、前記少なくとも1つのディメンション有するアレイにおける各要素は、前記少なくとも1つの第1中心についての情報に対応している。
【0080】
可能な設計において、前記エンコーディング対象記述子の少なくとも1つの第1中心についての情報および前記少なくとも1つの第1参照中心についての情報に基づいて、前記エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得する前記ステップは、前記少なくとも1つの第1中心についての情報と、前記少なくとも1つの第1参照中心についての情報との排他的論理和値または差分を、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての情報として使用するステップ、を含む。
【0081】
第11態様に従って、本出願の実施形態は、3Dマップ解凍方法を提供する。本方法は、3Dマップのビットストリームをカプセル化解除するステップであり、デコーディング対象記述子の少なくとも1つの第2中心についての情報を取得し、前記デコーディング対象記述子は、前記3Dマップ上の少なくとも1つの3Dマップポイントに対応しているステップと、前記デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報を取得するステップであり、前記参照記述子は、前記3Dマップ上の少なくとも1つのデコーディングされた3Dマップポイントに対応しており、かつ、前記少なくとも1つの第1参照中心についての情報は、前記参照記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で取得された中心を表しているステップと、前記少なくとも1つの第2中心についての情報および前記少なくとも1つの第1参照中心についての情報に基づいて、前記デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するステップと、前記デコーディング対象記述子の前記少なくとも1つの第1中心についての情報に基づいて、前記少なくとも1つの3Dマップポイントの再構成データを取得するステップと、を含み得る。
【0082】
可能な設計において、本方法は、さらに、3Dマップ要求情報を送信するステップ、および、3Dマップ要求情報に対応する3Dマップのビットストリームを受信するステップ、または、電子デバイスによって送信された3Dマップのビットストリームを受信するステップ、を含み得る。
【0083】
可能な設計において、デコーディング対象記述子の少なくとも1つの第2中心についての情報およびデコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて、デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するステップは、デコーディング対象記述子の少なくとも1つの第2中心についての情報およびデコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて、第1テーブルをルックアップすることによって、デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するステップを含み得る。
【0084】
可能な設計において、デコーディング対象記述子の少なくとも1つの第2中心についての情報およびデコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて、デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するステップは、デコーディング対象記述子の少なくとも1つの第2中心についての情報に基づいて、第2テーブルをルックアップすることによって、デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するステップを含む。ここで、第2テーブルは、デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて確立されている。
【0085】
可能な設計において、デコーディング対象記述子の少なくとも1つの第2中心についての情報およびデコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて、デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するステップは、デコーディング対象記述子の少なくとも1つの第2中心についての情報と、デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報との排他的論理和値または和を、デコーディング対象記述子の少なくとも1つの第1中心についての情報として使用するステップを含む。
【0086】
第12態様に従って、本出願の実施形態は、3Dマップ圧縮装置を提供する。本装置は、電子デバイスまたはサーバにおけるチップまたはシステムオンチップであってよく、もしくは、電子デバイスまたはサーバ内にあり、第10態様または第10態様の可能な実装形態のうちのいずれか1つに従った方法を実施するように構成された、機能モジュールであってよい。例えば、本装置は、マッピングモジュール、圧縮処理モジュール、および、カプセル化モジュールを含み得る。
【0087】
マッピングモジュールは、エンコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するために、エンコーディング対象記述子に対してクラスタリング処理を実行するように構成されており、ここで、エンコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応しており、そして、少なくとも1つの第1中心についての情報は、エンコーディング対象記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で取得された中心を表している。
前記マッピングモジュールは、さらに、前記エンコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報を取得するように構成され、ここで、前記参照記述子は、前記3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応し、そして、前記少なくとも1つの第1参照中心の前記情報は、前記参照記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後に取得された中心を表しており、かつ、前記エンコーディング対象記述子の前記少なくとも1つの第1中心について情報および前記少なくとも1つの第1参照中心について情報に基づいて、前記エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するように構成されている。
前記圧縮処理モジュールは、前記エンコーディング対象記述子のコンパクト表現を取得するために、前記エンコーディング対象記述子の前記少なくとも1つの第2中心についての前記情報に対して圧縮処理を実行するように構成されている。そして、
前記カプセル化モジュールは、前記3Dマップのビットストリームを取得するために、前記コンパクト表現をカプセル化するように構成されている。
【0088】
可能な設計において、本装置は、さらに、送信モジュールを含み得る。ここで、前記送信モジュールは、電子デバイスによって送信された3Dマップ要求情報を受信し、かつ、前記3Dマップ要求情報に応答して前記電子デバイスに対して、前記3Dマップ要求情報に対応している前記3Dマップの前記ビットストリームを送信するように構成されており、または、前記送信モジュールは、前記3Dマップの前記ビットストリームをサーバに送信するように構成されている。
【0089】
可能な設計において、前記マッピングモジュールは、特に、エンコーディング対象記述子の少なくとも1つの第1中心についての情報および少なくとも1つの第1参照中心についての情報に基づいて、第1テーブルをルックアップすることによって、エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するように構成されている。
【0090】
可能な設計において、前記第1テーブルは、少なくとも1つのコーディング中心についての情報および少なくとも1つの第2参照中心についての情報に対応する少なくとも1つの第3中心についての情報を含み、ここで、少なくともコーディング中心についての情報は、エンコーディング対象記述子の少なくとも1つの第1中心についての情報を含み、かつ、少なくとも1つの第2中心についての情報は、少なくとも1つの第1参照中心についての情報を含んでいる。そして、前記マッピングモジュールは、特に、エンコーディング対象記述子の少なくとも1つの第1中心についての情報および少なくとも1つの第1参照中心についての情報に基づいて、第1テーブルから、少なくとも1つの第1中心についての情報および少なくとも1つの第1参照中心についての情報に対応する少なくとも1つの第3中心についての情報を取得し、かつ、少なくとも1つの第3中心についての情報を、エンコーディング対象記述子の少なくとも1つの第2中心についての情報として使用するように構成されている。
【0091】
可能な設計において、前記第1テーブルは多次元アレイであり、前記多次元アレイにおける各要素は、前記少なくともコーディング中心についての情報、または、前記少なくとも1つの第2参照中心についての情報に対応している。
【0092】
可能な設計において、前記マッピングモジュールは、特に、前記エンコーディング対象記述子の前記少なくとも1つの第1中心についての情報に基づいて、第2テーブルをルックアップすることによって、前記エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得する、ように構成されており、ここで、前記第2テーブルは、前記少なくとも1つの第1参照中心についての情報に基づいて確立されている。
【0093】
可能な設計において、前記第2テーブルは、少なくとも1つの第1参照中心についての情報、および、エンコーディング対象記述子の少なくとも1つの第1中心についての情報に対応する少なくとも1つの第4中心についての情報を含む。そして、前記マッピングモジュールは、特に、エンコーディング対象記述子の少なくとも1つの第1中心についての情報に基づいて、第2テーブルから、少なくとも1つの第1中心についての情報に対応する少なくとも1つの第4中心についての情報を取得し、かつ、少なくとも1つの第1中心についての情報に対応する少なくとも1つの第4中心についての情報を、エンコーディング対象記述子の少なくとも1つの第2中心についての情報として使用する、ように構成されている。
【0094】
可能な設計において、前記第2テーブルは、少なくとも1次元のアレイであり、かつ、前記少なくとも1次元のアレイにおける各要素は、前記少なくとも1つの第1中心についての情報に対応している。
【0095】
可能な設計において、前記マッピングモジュールは、特に、エンコーディング対象記述子の少なくとも1つの第1中心についての情報と、少なくとも1つの第1参照中心についての情報との排他的論理和値または差分を、エンコーディング対象記述子の少なくとも1つの第2中心についての情報として使用するように構成されている。
【0096】
第13態様に従って、本出願の実施形態は、3Dマップ解凍装置を提供する。本装置は、電子デバイスまたはサーバにおけるチップまたはシステムオンチップであってよく、もしくは、電子デバイスまたはサーバ内にあり、第11態様または第11態様の可能な実装形態のうちのいずれか1つに従った方法を実装するように構成された、機能モジュールであってよい。例えば、本装置は、カプセル化解除モジュール、デマッピングモジュール、および、再構成モジュールを含み得る。
【0097】
前記カプセル化解除モジュールは、デコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するために、3Dマップのビットストリームをカプセル化解除するように構成されており、ここで、前記デコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している。
前記デマッピングモジュールは、前記デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報を取得するように構成されており、ここで、前記参照記述子は、前記3Dマップ上の少なくとも1つのデコーディングされた3Dマップポイントに対応し、そして、前記少なくとも1つの第1参照中心の前記情報は、前記参照記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で取得された中心を表しており、かつ、前記デコーディング対象記述子の前記少なくとも1つの第2中心について情報および前記デコーディング対象記述子に対応する前記参照記述子の前記少なくとも1つの第1参照中心について情報に基づいて、前記デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するように構成されている。そして、
前記再構成モジュールは、前記デコーディング対象記述子の前記少なくとも1つの第1中心についての情報に基づいて、前記少なくとも1つの3Dマップポイントの再構成データを取得するように構成されている。
【0098】
可能な設計において、本装置は、さらに、3Dマップ要求情報を送信し、かつ、前記3Dマップ要求情報に対応する前記3Dマップのビットストリームを受信するように構成された、または、電子デバイスによって送信された前記3Dマップのビットストリームを受信するように構成された、送信モジュールを含み得る。
【0099】
可能な設計において、前記デマッピングモジュールは、特に、前記デコーディング対象記述子の少なくとも1つの第2中心についての情報および前記デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて、第1テーブルをルックアップすることによって、前記デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するように構成されている。
【0100】
可能な設計において、前記デマッピングモジュールは、特に、前記デコーディング対象記述子の少なくとも1つの第2中心についての情報に基づいて、第2テーブルをルックアップすることによって、前記デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するように構成されており、ここで、前記第2テーブルは、前記デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて確立されている。
【0101】
可能な設計において、前記デマッピングモジュールは、特に、前記デコーディング対象記述子の少なくとも1つの第2中心についての情報と、前記デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報との排他的論理和値または和を、前記デコーディング対象記述子の少なくとも1つの第1中心についての情報として使用するように構成されている。
【0102】
第14態様に従って、本出願の実施形態は、3Dマップ圧縮装置を提供する。本装置は、1つ以上のプロセッサ、および、1つ以上のプログラムを保管するように構成されたメモリを含んでいる。ここで、1つ以上のプログラムが1つ以上のプロセッサによって実行されると、1つ以上のプロセッサは、第10態様または第10態様の可能な設計のいずれか1つに従った方法を実施することが可能になる。
【0103】
第15態様に従って、本出願の実施形態は、3Dマップ解凍装置を提供する。本装置は、1つ以上のプロセッサ、および、1つ以上のプログラムを保管するように構成されたメモリを含んでいる。ここで、1つ以上のプログラムが1つ以上のプロセッサによって実行されると、1つ以上のプロセッサは、第11態様または第11態様の可能な設計のいずれか1つに従った方法を実施することが可能になる。
【0104】
第16態様に従って、本出願の実施形態は、コンピュータプログラムを含む、コンピュータ可読記憶媒体を提供する。ここで、コンピュータプログラムがコンピュータ上で実行されると、コンピュータは、第10態様または第10態様の可能な設計のいずれか1つに従った方法を実施、もしくは、第11態様または第11態様の可能な設計のいずれか1つに従った方法を実施することが可能になる。
【0105】
第17態様に従って、本出願は、コンピュータプログラムまたはコンピュータプログラム製品を提供する。ここで、コンピュータプログラムまたはコンピュータプログラム製品がコンピュータ上で実行されると、コンピュータは、第10態様および第11態様、並びに、第10態様および第11態様の可能な実装形態のいずれか1つに従った方法を実施することが可能になる。
【0106】
第18態様に従って、本出願は、第10態様のいずれか1つに従った方法を使用することによってエンコーディングされたビットストリームを含む、非一時的記憶媒体を提供する。
【0107】
本願の第3態様から第9態様までの技術的ソリューションは、本願の第1態様および第2態様の技術的ソリューションと一貫性しており、態様および対応する実現可能な実装形態において、同様の有益な効果が達成されることが理解されるべきである。詳細は、再び説明されない。本出願の第12態様から第18態様までの技術的ソリューションは、本出願の第10態様および第11態様の技術的ソリューションと一貫しており、態様および対応する実現可能な実装形態において、同様の有益な効果が達成される。詳細は、再び説明されない。
【図面の簡単な説明】
【0108】
図1図1は、本出願の一つの実施形態に従った、アプリケーションアーキテクチャに係る概略図である。
図2図2は、本出願の一つの実施形態に従った、電子デバイス20の構造に係る概略図である。
図3図3は、本出願の一つの実施形態に従った、サーバ30の構造に係る概略図である。
図4a図4aは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。
図4b図4bは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。
図4c図4cは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。
図4d図4dは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。
図4e図4eは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。
図4f図4fは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。
図4g図4gは、本出願の一つの実施形態に従った、電子デバイスによって表示されるユーザインターフェイスに係る概略図である。
図5図5は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。
図6図6は、本出願の一つの実施形態に従った、第2コンパクト表現のデータ分布と第1コンパクト表現のデータ分布との間の比較に係る概略図である。
図7図7は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。
図8図8は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。
図9図9は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。
図10図10は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。
図11図11は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。
図12図12は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。
図13図13は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。
図14図14は、本発明の一つの実施形態に従った、3Dマップ圧縮装置の構造に係る概略図である。
図15図15は、本発明の一つの実施形態に従った、3Dマップ解凍装置の構造に係る概略図である。
図16図16は、本出願の一つの実施形態に従った、デコーディング装置1600に係る概略的なブロック図である。
図17図17は、本出願の一つの実施形態に従った、第1コンパクト表現をサブストリングに区分化するための概略図である。
図18図18は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。
図19図19は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。
【発明を実施するための形態】
【0109】
以下は、本発明の実施形態における添付図面を参照して、本発明の実施形態を説明している。本出願の実施形態で使用される用語は、単に本出願の特定の実施形態を説明するために使用されるに過ぎず、本出願を限定するように意図されたものではない。
【0110】
本出願の明細書、特許請求の範囲、および添付図面の実施形態において、「第1」、「第2」といった用語は、単に区別および説明を意図したものに過ぎず、そして、相対的な重要性の指示または含意、もしくは、順序の指示または含意として理解されるべきではない。加えて、「含む(“include”)」、「有する(“have”)」という用語、および、それらの任意の変形は、非排他的な包含をカバーすることが意図されており、例えば、一連のステップまたはユニットを含む。方法、システム、製品、または、デバイスは、必ずしも明確に列挙されたステップまたはユニットに限定されないが、明確に列挙されておらず、かつ、プロセス、方法、製品、または、デバイスに固有の他のステップまたはユニットを含み得る。
【0111】
本出願において、「少なくとも1つの(項目)(“at least one(item)”)」は1つ以上を意味し、そして、「複数(“plurality”)」は、2つ以上を意味することが理解されるべきである。「及び/又は(“and/or”)」という用語は、関連するオブジェクト間の関連関係を説明し、3つの関係が存在し得ることを示す。例えば、「A及び/又はB」は、以下の3つの場合を示し得る。Aのみが存在すること、Bのみが存在すること、AとBの両方が存在すること。ここで、AおよびBは、単数または複数であり得る。文字「/」は、一般的に、関連するオブジェクト間の「または(“or”)」関係を示す。「以下の項目の少なくとも1つ(“at least one of the following items”)」、または、これに類する表現は、項目の任意の組み合わせを示し、項目のうち1つ以上の項目の任意の組み合わせを含んでいる。例えば、a、b、またはcのうちの少なくとも1つは、a、b、c、「aかつb」、「aかつc」、「bかつc」、または「a、b、かつc」を表し得る。ここで、a、b、およびcは、単数または複数であり得る。
【0112】
本出願の実施形態において、「例(“example”)」、「例えば(“for example”)」といった用語は、例、例示、または説明を表している。本出願の実施形態において「例」または「例えば」として説明される任意の実施形態または設計方式は、別の実施形態または設計方式よりも好ましいか、または、有利であるものとして解釈されるべきではない。正確には、「例」または「例えば」といった用語は、特定の方法で相対的な概念を提示するように意図されたものである。
【0113】
本出願の実施形態または添付の特許請求の範囲において使用される単数形の「一つの(“a/an”)」、「それ(“the”)」、および「これ(“this”)」という用語は、文脈において明確に別段の定めがない限り、複数形を含むことも、また、意図されている。本明細書で使用される用語「及び/又は」は、1つ以上の関連する列挙された項目の任意の、または、全ての可能な組合せを示し、かつ、含むことも、また、理解されるべきである。本明細書で使用される場合、単数形「1つの(“one”、“a”、および“the”)」も、また、文脈において別段に明確に示されない限り、複数形を含むように意図されている。さらに、「備える(“comprise”)」、「有する(“have”)」、「含む(“include”)」、及び/又は「含有する(“contain”)」という用語は、本明細書において、述べられた特徴、整数、ステップ、動作、要素、及び/又は、コンポーネントの存在を指定するために使用されるが、1つ以上の他の特徴、整数、ステップ、動作、要素、コンポーネント、及び/又は、それらのグループの存在または追加を排除しないことが理解されるべきである。
【0114】
本出願の実施形態において使用される用語は、単に特定の実施形態を説明するように意図されたものに過ぎず、本出願を限定するように意図されたものではないことが留意されるべきである。
【0115】
図1は、本出願の一つの実施形態に従った、アプリケーションアーキテクチャに係る概略図である。図1に示されるように、アプリケーションアーキテクチャは、複数の電子デバイスおよびサーバを含んでいる。複数の電子デバイスは、第1電子デバイス、および、1つ以上の第2電子デバイスを含み得る(図1では、2つの第2電子デバイスが例として使用されている)。1つ以上の第2電子デバイスは、第1電子デバイス以外のいくつかの電子デバイスである。複数の電子デバイスはサーバと通信することができ、そして、複数の電子デバイスは相互に通信することができる。例えば、アプリケーションアーキテクチャ内の任意のデバイスは、ワイヤレスフィデリティ(Wireless Fidelity、Wi-Fi(登録商標))通信、Bluetooth(登録商標)通信、セルラ第2、第3、第4、または第5世代(2/3/4/5世代、2G/3G/4G/5G)通信といったモードで別のデバイスと通信し得る。将来の通信モードを含む別の通信モードが、サーバと電子デバイスとの間でさらに使用され得ることが理解されるべきである。これは、本明細書では特には限定されない。本出願のこの実施形態における「1つ以上の第2電子デバイス」という用語は、単に第1電子デバイス以外の電子デバイスを表すために使用されるに過ぎず、複数の電子デバイスのタイプが同じであるか否かを限定しないことが留意されるべきである。
【0116】
電子デバイスは、カメラおよびディスプレイコンポーネントを備えた様々なタイプのデバイスであり得る。例えば、電子デバイスは、携帯電話、タブレットコンピュータ、ノートブックコンピュータ、またはビデオレコーダといった端末デバイスであってよい(例えば、図1において、電子デバイスは携帯電話である)。代替的に、電子デバイスは、VR眼鏡、ARデバイス、MR対話デバイス、などを含む、仮想シーンにおける対話(interaction)に使用されるデバイスであってよい。代替的に、電子デバイスは、スマートウォッチまたはスマートバンドといったウェアラブル電子デバイスであってよい。代替的に、電子デバイスは、車両、自動運転車両、無人航空機、産業用ロボットといったキャリア(carrier)において搬送されるデバイスであってよい。電子デバイスの具体的な形態は、本出願のこの実施形態において特には限定されない。
【0117】
加えて、電子デバイスは、ユーザ機器(user equipment、UE)、加入者局、モバイルユニット、加入者ユニット、無線ユニット、リモートユニット、モバイルデバイス、ワイヤレスデバイス、ワイヤレス通信デバイス、リモートデバイス、モバイル加入者局、端末装置、アクセス端末、移動端末、ワイヤレス端末、インテリジェント端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、または、別の適切な用語で呼ばれてよい。
【0118】
サーバは、1つ以上の物理サーバであってよく、またはコンピュータクラスタであってよく(図1では、一つの例として1つの物理サーバが使用されている)、もしくは、クラウドコンピューティングシナリオにおける仮想マシンまたはクラウドサーバ、などであってよい。
【0119】
本出願のこの実施形態において、VRアプリケーション、ARアプリケーション、またはMRアプリケーションといった仮想シーンアプリケーションプログラム(application、APP)が、電子デバイスにインストールされてよく、そして、VRアプリケーション、ARアプリケーション、またはMRアプリケーションは、ユーザ操作(例えば、タップ、タッチ、スライド、シェイク、または音声制御)に基づいて実行され得る。電子デバイスは、センサを使用することによって環境内の任意のオブジェクトの画像情報を収集し、そして、次いで、収集された画像情報に基づいて、ディスプレイコンポーネント上に仮想オブジェクトを表示し得る。仮想オブジェクトは、VRシーン、ARシーン、またはMRシーンにおける仮想オブジェクト(すなわち、仮想環境におけるオブジェクト)であってよい。
【0120】
本出願のこの実施形態において、ナビゲーションアプリケーションプログラム、検出アプリケーションプログラム、または制御アプリケーションプログラムが、電子デバイスにインストールされてよく、そして、対応するアプリケーションが、ユーザ操作または事前設定されたプログラムに基づいて、実行され得る。電子デバイスは、現在の環境における電子デバイスの姿勢(pose)および他のステータス情報に基づいて、経路計画、オブジェクト検出、キャリア操作、および、他のアプリケーションを実行し得る。
【0121】
姿勢は、電子デバイスの位置(location)および向き(orientation)情報であり、そして、世界座標系における絶対姿勢であってよく、または、環境内のポイントに対する相対的な姿勢であってよい。
【0122】
本願のこの実施形態における画像情報は、これらに限定されるわけではないが、カメラによって収集された画像またはビデオ(深度情報なし)、深度センサ(depth sensor)によって収集された深度情報を有する画像またはビデオ、ライダー(LiDAR)によって収集されたデータ、または、ミリ波レーダ(RaDAR)によって収集されたデータを含んでいる。
【0123】
本願のこの実施形態において、電子デバイス内の仮想シーンアプリケーションプログラムは、電子デバイス内の内蔵アプリケーションプログラムであってよく、または、サードパーティのサービスプロバイダによって提供され、かつ、ユーザによってインストールされたアプリケーションプログラムであってよいことが留意されるべきである。これは、本明細書では特には限定されない。
【0124】
本出願のこの実施形態において、自己位置推定とマッピングの同時実行(simultaneous localization and mapping、SLAM)システムが、電子デバイスのために、さらに、構成され得る。SLAMシステムは、完全に未知の環境においてマップを作成し、そして、そのマップを使用して、測位(positioning)、姿勢(位置および姿勢)決定、ナビゲーション、などを実行することができる。本願のこの実施形態において、SLAMシステムによって作成されたマップは、SLAMマップと呼ばれる。SLAMマップは、収集装置によって収集された環境情報に基づいてSLAMシステムによって描かれたマップとして理解されてよい。収集デバイスは、電子デバイス内の視覚情報収集装置および慣性測定ユニット(inertial measurement unit、IMU)を含み得る。視覚情報収集装置は、例えば、カメラ、ビデオカメラ、深度カメラ、ライダー(LiDAR)、ミリ波レーダ、を含み得る。IMUは、例えば、ジャイロスコープまたは加速度計といったセンサを含み得る。
【0125】
本出願のこの実施形態において、SLAMマップは、また、3Dマップとも呼ばれる。3Dマップは、これに限定されるわけではないが、SLAMマップを含み、そして、さらに、別の技術を使用することによって作成された3次元マップを含み得ることが留意されるべきである。これは、本出願のこの実施形態において特には限定されない。
【0126】
可能な実装において、3Dマップは、複数の3Dマップポイントを含んでよく、そして、それに対応して、3Dマップのデータは、複数の3Dマップポイントのデータを含むことができる。3Dマップポイントは、環境内の興味あるポイント(point of interest)、または、顕著な特徴を有するポイントである。
【0127】
3Dマップポイントを取得する可能な方法は、LiDAR、ある視野角での航空写真(斜光写真)用無人航空機、高解像度パノラマカメラ、高解像度産業用カメラ、写真のための類似のもの、といった複数の装置を使用してすること、および、ORB(oriented fast and rotated brief)、SIFT(scale-invariant feature transform)、SURF(speeded up robust feature)、BRIEF(binary robust independent elementary feature)、BRISK(binary robust invariant scalable keypoint)、FREAK(fast retina keypoint)、D2Net、または、上記の装置によってキャプチャされたデータから3Dマップポイントを抽出するための、自己教師あり訓練に基づくfeature point detection and descriptor extraction(SuperPoint)方法といった、方法を使用することである。
【0128】
3Dマップポイントのデータは、以下を含み得る。
【0129】
(1)3Dマップポイント記述子(descriptor)
【0130】
3Dマップポイント記述子はベクトル(vector)であり、対応する3Dマップポイントの局所的特徴を表すために使用される。視覚的位置決めアルゴリズムでは、3Dマップポイント間のマッチングを実行するために、3Dマップポイント記述子が使用される。可能な方法は、2つの3Dマップポイント記述子間の距離(ユークリッド距離、内積距離、ハミング距離、などであり得る)を算出することである。距離が閾値未満である場合、2つの3Dマップポイントは一致すると考えられる。
【0131】
(2)3Dマップポイントの空間的位置
【0132】
3Dマップポイントの空間的位置は、3次元空間におけるx軸、y軸、およびz軸を使用することによって表されてよく、または、経度、緯度、および高度を使用することによって表されてよく、もしくは、極座標を使用することによって表されてもよい、等である。3Dマップポイントの空間的位置を表すための方法は、本出願のこの実施形態において特には限定されない。3Dマップポイントの空間的位置は、3Dマップポイントの絶対的位置であってよく、または、3Dマップポイントの相対的位置であってもよい。例えば、ゾーン全体の中心位置を原点として使用して、全ての3Dマップポイントの空間的位置は、原点の空間的位置に対するオフセット位置である。
【0133】
本出願のこの実施形態においては、各3Dマップポイントに対して番号が割り当てられ、そして、3Dマップのデータへと書き込まれてよく、または、メモリ内の複数の3Dマップポイントのストレージシーケンスが、3Dマップポイントの番号を暗黙的に示すために使用されてよい。3Dマップに含まれる複数の3Dマップポイントのシーケンスは、実際的な重要性を持たないことが留意されるべきである。従って、前述の番号は、3Dマップポイントを識別して、3Dマップポイント間を区別するために使用される識別子として見なされ得る。しかしながら、本番号は、複数の3Dマップポイントのシーケンスを限定するために使用されるものではない。例えば、3Dマップは、1、2、および3と番号付けされた3つの3Dマップポイントを含み、そして、3つの3Dマップポイントは、1、2、および3のシーケンスで処理されてよく、または、3、2、および1のシーケンスで処理されてよく、もしくは、2、1、および3のシーケンスで処理されてよい。
【0134】
可能な実施態様において、3Dマップのデータは、さらに、複数のゾーン記述子を含み、そして、複数のゾーン記述子のうち任意の1つは、複数の3Dマップポイントの一部または全部の特徴を記述するために使用される。別の言葉で言えば、複数のゾーン記述子のうちいずれか1つについて、複数の3Dマップポイントの一部または全部の特徴を記述するために、ゾーン記述子が使用され得る。従って、ゾーン記述子は、3Dマップポイントと一対多(one-to-many)の関係にある。複数の3Dマップポイントのそれぞれの特徴は、複数のゾーン記述子の一部または全部によって記述され得る。従って、3Dマップポイントは、ゾーン記述子と一対多の関係にある。複数のゾーン記述子が複数の3Dマップポイントと多対多(many-to-many)の関係にあることが分かる。ゾーン記述子を生成するための方法は、これに限定されるわけではないが、バッグオブワード(bag of words、BOW)、または、ローカルに集約された記述子のベクトル(vector of locally aggregated descriptors、VLAD)といった従来の方法、および、NetVLAD、または、人口知能(artificial intelligence、AI)に基づく新しい方法を含んでいる。同様に、複数のゾーン記述子を識別し、複数のゾーン記述子間を区別するためにも、また、番号が使用され得る。しかしながら、本番号は、複数のゾーン記述子の順序を限定するものでもない。
【0135】
可能な実施態様において、3Dマップのデータは、さらに、3Dマップポイントと記述子との間の対応関係を含み、そして、対応関係は、任意の記述子に対応する3Dマップポイント、および、任意の3Dマップポイントに対応する記述子を明確に記述している。
【0136】
任意的に、対応関係は、ゾーン記述子(zone descriptor)の番号と3Dマップポイントの番号との間の対応関係表を使用することによって明示的に記述されてよい。例えば、3Dマップは、T1からT3まで番号付けされた3個のゾーン記述子、および、6個の3Dマップポイントを含んでいる。ここで、6個の3Dマップポイントの空間的位置(spatial location of a 3D map point)の番号はP1からP6までであり、そして、6個の3Dマップポイント記述子(3D map point descriptor)の番号はF1からF6までである。この対応表が、表1に示されている。
【表1】
表1
【0137】
表1は、ゾーン記述子の番号と3Dマップポイントの番号との間の対応表の一つの例であることが留意されるべきである。しかしながら、対応表は、また、別のフォーマットまたは方法で提示されてもよい。これは、本出願において特には限定されない。
【0138】
任意的に、対応関係は、また、ゾーン記述子および3Dマップポイントのストレージ位置を使用することによって暗黙的に記述されてもよい。例えば、T1が最初にメモリに保管され、次いで、P1、P2、およびP3のデータが保管され、次いで、T2が保管され、次いで、P2およびP3のデータが保管されて、最後に、T3が保管され、そして、次いで、P3、P4、P5、およびP6のデータが保管される。
【0139】
図2は、本出願の一つの実施形態に従った、電子デバイス20の構造に係る概略図である。図2に示されるように、電子デバイス20は、図1に示される実施形態における第1電子デバイスおよび1つ以上の第2電子デバイスのうち少なくとも1つであってよい。図2に示される構造は、電子デバイス20に対する特定の限定を構成しないことが理解されるべきである。本出願のいくつかの他の実施形態において、電子デバイス20は、図2に示される構造のコンポーネントよりも多いか、または、少ないコンポーネントを含んでよく、いくつかのコンポーネントが組み合わされてよく、または、いくつかのコンポーネントが分割されてよく、もしくは、異なるコンポーネント配置が使用されてもよい。図2に示される各コンポーネントは、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含む、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアとの組み合わせで実装されてよい。
【0140】
電子デバイス20は、チップ21、メモリ22(1つ以上のコンピュータ可読記憶媒体)、ユーザインターフェイス23、ディスプレイコンポーネント24、カメラ25、センサ26、デバイス測位を実行するように構成された測位モジュール27、および、通信を実行するように構成されたトランシーバ28を含み得る。これらのコンポーネントは、1つ以上のバス29を使用することによって相互に通信し得る。
【0141】
1つ以上のプロセッサ211、クロックモジュール212、および電力管理モジュール213は、チップ21に統合され得る。チップ21に集積されたクロックモジュール212は、主に、データ伝送および時系列制御に必要なタイマをプロセッサ211に提供するように構成されており、ここで、タイマは、データ伝送および時系列制御のためのクロック機能を実装することができる。プロセッサ211は、命令フェッチおよび命令実行を制御するために、命令オペレーションコードおよびタイミング信号に基づいて、オペレーション制御信号を生成し得る。チップ21に集積された電力管理モジュール213は、主に、チップ21および電子デバイス20の他の部品に対して安定した高精度の電圧を供給するように構成されている。
【0142】
プロセッサ211は、また、中央処理装置(central processing unit、CPU)とも呼ばれてよい。プロセッサ211は、具体的には、1つ以上の処理ユニットを含み得る。例えば、プロセッサ211は、アプリケーションプロセッサ(application processor、AP)、モデムプロセッサ、グラフィックス処理ユニット(graphics processing unit、GPU)、画像信号プロセッサ(image signal processor、ISP)、コントローラ、ビデオコーデック、デジタル信号プロセッサ(digital signal processor、DSP)、ベースバンドプロセッサ、及び/又は、ニューラルネットワーク処理ユニット(neural-network processing unit、NPU)を含み得る。異なる処理ユニットは、独立したコンポーネントであってよく、または、1つ以上のプロセッサに統合されてもよい。
【0143】
可能な実装において、プロセッサ211は、1つ以上のインターフェイスを含み得る。インターフェイスは、集積回路間(inter-integrated circuit、I2C)インターフェイス、集積回路間サウンド(inter-integrated circuit sound、I2S)インターフェイス、パルスコード変調(pulse code modulation、PCM)インターフェイス、ユニバーサル非同期受信器/送信器(universal asynchronous receiver/transmitter、UART)インターフェイス、モバイル業界プロセッサインターフェイス(mobile industry processor interface、MIPI)、汎用入力/出力(general-purpose input/output、GPIO)インターフェイス、加入者識別モジュール(subscriber identity module、SIM)インターフェイス、ユニバーサルシリアルバス(universal serial bus、USB)インターフェイス、などを含み得る。
【0144】
メモリ22は、バス29を使用することによってプロセッサ211に接続されてよく、または、プロセッサ211に結合されてもよい。メモリ22は、様々なソフトウェアプログラム及び/又は複数の命令グループを保管するように構成されている。メモリ22は、高速ランダムアクセスメモリ(例えば、キャッシュ)を含んでよく、または、不揮発性メモリ、例えば、1つ以上の磁気ディスクストレージデバイス、フラッシュメモリデバイス、または、別の不揮発性ソリッドステートストレージデバイスを含んでよい。メモリ22は、オペレーティングシステム、例えば、アンドロイド(Android)、アップルモバイルプラットフォーム(iOS)、マイクロソフトウィンドウズ(登録商標)オペレーティングシステム(Windows)、または、リナックス(登録商標)といった組み込みオペレーティングシステムを保管し得る。メモリ22は、例えば、画像データ、点群(point cloud)データ、3Dマップデータ、姿勢データ、座標系変換情報、および、マップ更新情報のデータを、さらに保管し得る。メモリ22は、コンピュータ実行可能プログラムコードを、さらに保管し得る。コンピュータ実行可能プログラムコードは、命令、例えば、SLAMシステムの通信プログラム命令または関連プログラム命令、を含んでいる。メモリ22は、1つ以上のアプリケーションプログラム、例えば、AR/VR/MRといった仮想シーンアプリケーションプログラム、マップアプリケーションプログラム、画像管理アプリケーションプログラム、並びに、ナビゲーションおよび制御アプリケーションプログラムを、さらに保管し得る。メモリ22は、ユーザインターフェイスプログラムを、さらに保管し得る。ユーザインターフェイスプログラムは、グラフィカル操作インターフェイスを使用することによって、アプリケーションプログラムのコンテンツ、例えば、AR/VR/MRといった仮想シーン内の仮想オブジェクトを鮮明に表示し、そして、ディスプレイコンポーネント24を使用することによってコンテンツを提示し、そして、メニュー、ダイアログボックス、またはボタンといった入力コントロールを使用することによってユーザのアプリケーションプログラム制御操作を受信し得る。
【0145】
ユーザインターフェイス23は、例えば、タッチパネルであってよい。タッチパネルは、タッチパネル上のユーザの操作命令を検出することがきる。ユーザインターフェイス23は、代替的に、例えば、キーパッド、物理ボタン、または、マウスであってよい。
【0146】
電子デバイス20は、1つ以上のディスプレイコンポーネント24を含み得る。電子デバイス20は、ディスプレイコンポーネント24、チップ21におけるグラフィックス処理ユニット(GPU)およびアプリケーションプロセッサ(AP)、等と共に表示機能を実現し得る。GPUは、画像処理を実現するためのマイクロプロセッサである。GPUは、ディスプレイコンポーネント24およびアプリケーションプロセッサに接続されている。GPUは、グラフィックスレンダリングのための数学的および幾何学的計算を実行する。ディスプレイコンポーネント24は、電子デバイス20によって出力されたインターフェイスコンテンツを表示することができ、例えば、AR/VR/MRといった仮想シーン内に画像、ビデオ、などを表示し得る。インターフェイスコンテンツは、実行中のアプリケーションプログラム、システムレベルメニュー、といったインターフェイスを含んでよく、具体的には、ボタン(Button)、テキスト(Text)入力ボックス、スクロールバー(Scroll Bar)、または、メニュー(Menu)といった、入力インターフェイス要素、および、ウィンドウ(Window)、ラベル(Label)、画像、ビデオ、または、アニメーションといった、出力インターフェイス要素を含んでよい。
【0147】
ディスプレイコンポーネント24は、表示パネル、レンズ(例えば、VRメガネ)、投影スクリーン、等であり得る。ディスプレイパネルは、ディスプレイスクリーンとも呼ばれてよく、例えば、タッチスクリーン、フレキシブルスクリーン、湾曲スクリーン、等であってよく、または、別の光学コンポーネントであり得る。本出願のこの実施形態における電子デバイスの表示画面は、タッチスクリーン、フレキシブルスクリーン、曲面スクリーン、または、別の形態のスクリーンであってよいことが理解されるべきである。別の言葉で言えば、電子デバイスの表示画面は、画像表示機能を有するものであるが、表示画面の具体的な材料や形状は特には限定されない。
【0148】
例えば、ディスプレイコンポーネント24が表示パネルを含む場合、表示パネルは、液晶ディスプレイ(liquid crystal display、LCD)、有機発光ダイオード(organic light-emitting diode、OLED)、アクティブマトリクス有機発光ダイオードまたはアクティブマトリクス有機発光ダイオード(active-matrix organic light emitting diode、AMOLED)、フレキシブル発光ダイオード(flex light-emitting diode、FLED)、ミニLED、マイクロLED、マイクロOLED、量子ドット発光ダイオード(quantum dot light-emitting diode、QLED)、等であってよい。加えて、可能な実装において、ユーザインターフェイス23のタッチパネルは、ディスプレイコンポーネント24の表示パネルに接続されてよい。例えば、タッチパネルは、表示パネルの下に配置されてよく、タッチパネルは、表示パネルを使用することによってユーザがタッチ操作(例えば、タップ、スライド、または、タッチ)を実行するときに、表示パネルに加えられるタッチ圧力を検出するように構成されており、そして、表示パネルは、コンテンツを表示するように構成されている。
【0149】
カメラ25は、単眼カメラ、双眼カメラ、または深度カメラであってよく、そして、画像またはビデオを取得するために、環境を撮影または記録するように構成されている。カメラ25によって収集された画像またはビデオ画像は、例えば、SLAMシステムの入力データとして使用されてよく、または、画像またはビデオは、ディスプレイコンポーネント24を使用することによって表示されてもよい。
【0150】
可能な実装において、カメラ25は、また、センサとしても考えられ得る。カメラ25によって収集された画像は、IMGフォーマットであってよく、または、別のフォーマットタイプであってもよい。これは、本出願のこの実施形態において特には限定されない。
【0151】
センサ26は、電子デバイス20の状態変化(例えば、回転、スイング、移動、または振動)に関連するデータを収集するように構成され得る。センサ26によって収集されたデータは、SLAMシステムの入力データとして使用され得る。センサ26は、1つ以上のセンサ、例えば、慣性測定ユニット(inertial measurement unit、IMU)および飛行時間(time of flight、TOF)センサを含み得る。IMUは、ジャイロスコープおよび加速度計といったセンサを含み得る。ジャイロスコープは、電子デバイスが移動するときに、電子デバイスの角速度を測定するように構成されており、そして、加速度計は、電子デバイスが移動するときに、電子デバイスの加速度を測定するように構成されている。TOFセンサは、光送信器および光受信器を含み得る。光送信器は、光、例えば、レーザ、赤外線、またはレーダ波を送信するように構成されている。光受信器は、反射光、例えば、反射されたレーザ、赤外線、またはレーダ波を検出するように構成されている。
【0152】
センサ26は、慣性センサ、気圧計、磁力計、およびサイクロメーターといった、より多くの他のセンサをさらに含み得ることが留意されるべきである。これは、本出願のこの実施形態において特には限定されない。
【0153】
測位モジュール27は、電子デバイス20の物理的測位を実施するように構成され、例えば、電子デバイス20の初期位置を取得するように構成されている。測位モジュール27は、Wi-Fi測位モジュール、Bluetooth測位モジュール、基地局測位モジュール、および、衛星測位モジュールのうち1つ以上を含み得る。全地球的航法衛星システム(global navigation satellite system、GNSS)は、測位を支援するために衛星測位モジュールに配置されてよい。GNSSは、北斗システム(BeiDou system)、全地球測位システム(global positioning system、GPS)、GLONASS(global navigation satellite system、GLONASS)、および、ガリレオ航法衛星システム(Galileo)に限定されない。
【0154】
トランシーバ28は、電子デバイス20と別のデバイス(例えば、サーバまたは別の電子デバイス)との間の通信を実施するように構成されている。トランシーバ28は、無線周波数信号を送信および受信するように、それぞれ構成された送信器および受信器を統合する。特定の実装において、トランシーバ28は、これらに限定されるわけではないが、アンテナシステム、無線周波数(radiofrequency、RF)トランシーバ、1つ以上の増幅器、チューナ、1つ以上の発振器、デジタル信号プロセッサ、コーデック(CODEC)チップ、加入者識別モジュール(subscriber identity module、SIM)カード、記憶媒体、等を含む。可能な実装において、トランシーバ28は、さらに、別個のチップ上に実装され得る。トランシーバ28は、2G、3G、4G、および5Gネットワーク、等のうち少なくとも1つにおけるデータ通信をサポートし、かつ/あるいは、ブルートゥース(Bluetooth、BT)通信、ワイヤレスフィデリティ(Wireless Fidelity、Wi-Fi)通信、近距離無線通信(near field communication、NFC)、赤外線(infrared、IR)無線通信、超広帯域(ultra wide band、UWB)通信、および、ZigBee(登録商標)通信のうち少なくとも1つの短距離無線通信モードをサポートする。
【0155】
本出願のこの実施形態において、プロセッサ211は、メモリ22に保管されたプログラムコードを実行して、電子デバイス20の様々な機能アプリケーションおよびデータ処理を実行する。
【0156】
図3は、本出願の一つの実施形態に従った、サーバ30の構造に係る概略図である。図3に示されるように、サーバ30は、図1に示される実施形態におけるサーバであってよい。サーバ30は、プロセッサ301、メモリ302(1つ以上のコンピュータ可読記憶媒体)、および、トランシーバ303を含んでいる。これらのコンポーネントは、1つ以上のバス304を使用することによって相互に通信し得る。
【0157】
プロセッサ301は、1つ以上のCPUであってよい。プロセッサ301が1つのCPUである場合、CPUは、シングルコアCPUであってよく、または、マルチコアCPUであってもよい。
【0158】
メモリ302は、バス304を使用することによってプロセッサ301に接続されてよく、または、プロセッサ301に結合されてもよい。メモリ302は、様々なタイプのプログラムコード及び/又は複数の命令グループ、並びに、データ(例えば、マップデータおよび姿勢データ)を保管するように構成されている。具体的な実装において、メモリ302は、これらに限定されるわけではないが、ランダムアクセスメモリ(Random Access Memory、RAM)、リードオンリメモリ(Read-Only Memory、ROM)、消去可能プログラマブルリードオンリメモリ(Erasable Programmable Read Only Memory、EPROM)、コンパクトディスクリードオンリメモリ(Compact Disc Read-Only Memory、CD-ROM)、等を含む。
【0159】
トランシーバ303は、主に、受信器と送信器とを統合する。受信器は、電子デバイスによって送信されたデータ(例えば、要求または画像)を受信するように構成され、そして、送信器は、データ(例えば、マップデータまたは姿勢データ)を電子デバイスに送信するように構成されている。
【0160】
図3に示されるサーバ30は、単に、本出願のこの実施形態において提供される例に過ぎないことが理解されるべきである。サーバ30は、図示されたコンポーネントよりも多くのコンポーネントを、さらに有してよい。これは、本出願のこの実施形態において特には限定されない。
【0161】
本出願のこの実施形態において、プロセッサ301は、メモリ302に保管されたプログラムコードを実行して、サーバ30の様々な機能アプリケーションおよびデータ処理を実行する。
【0162】
本願のこの実施形態において使用される用語「結合する(“coupling”)」は、直接的な接続、もしくは、1つ以上の中間コンポーネントまたは回路を介した接続を意味する。
【0163】
図4aは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。図4aに示されるように、この適用シナリオにおいて、電子デバイスは、センサを使用することによって画像情報を収集し、そして、画像情報とサーバからの3Dマップとを参照して電子デバイスの現在の姿勢を決定する。
【0164】
3Dマップは、サーバによって提供される。具体的には、サーバは、3Dマップを作成し、次いで、3Dマップに対して圧縮処理を実行し、そして、3Dマップの圧縮データを電子デバイスに送信する。3Dマップの圧縮データを受信した後で、電子デバイスは、3Dマップの再構築データを取得するために解凍処理を実行し、そして、収集された画像情報および3Dマップの再構築データを参照して、電子デバイスの現在の姿勢を決定する。姿勢は、電子デバイスの位置情報であり、かつ、世界座標系における絶対姿勢であってよく、または、環境内のポイントに対する相対姿勢であってもよい。
【0165】
本出願のこの実施形態において、サーバは、3Dマップを事前に作成し、そして、圧縮処理を実行した後で、3Dマップをローカルに保管してよく、その結果、ストレージ空間を節約することができる。加えて、サーバは、代替的に、3Dマップの圧縮データを他の装置(例えば、クラウドストレージ)に送信してもよい。
【0166】
1.サーバは、3Dマップを作成し、3Dマップを圧縮して3Dマップの圧縮データを取得し、そして、圧縮データをローカルに保管する。
【0167】
サーバは、3Dマップに対して圧縮処理を実行して、ローカルなストレージ空間を節約する。
【0168】
2.電子デバイスは、マップダウンロード要求をサーバに送信する。マップダウンロード要求は、2つの方法でトリガされる。
【0169】
(1)ユーザが、電子デバイスにインストールされたマップアプリケーションプログラムを起動し、そして、アプリケーションプログラムが、GPS測位またはWi-Fi測位に基づいて取得された位置情報を、アプリケーションプログラムに対応するサーバにアップロードする。アップロード操作は、マップダウンロード要求をトリガし得る。アップロードされたコンテンツは位置情報を含むので、サーバは、位置情報に基づいて予備推定(preliminary estimation)を実行し、そして、位置情報によって示される測位点が属するゾーンの3Dマップの圧縮データを電子デバイスに送信することができる。位置情報によって示される測位点が属するゾーンの範囲は、事前設定されてよい。例えば、測位点が属するゾーンは、測位点が位置する各レベルの行政区域(郡、市、国、行政区域、等を含む)であってよく、または、測位点を中心とし、指定された距離を半径とする円形ゾーンであってもよい。
【0170】
(2)ユーザは、電子デバイスにインストールされたマップアプリケーションプログラムを起動し、そして、アプリケーションプログラム内のゾーンを能動的に入力または選択する。例えば、ユーザは、能動的に、「xxビジネスセンター」に入るか、または、リスト「ストリートA、ストリートB、およびストリートC」から「ストリートA」を選択する。ユーザの前述の操作は、マップダウンロード要求をトリガし得る。ユーザが地理的位置を入力するか選択するか否かに関わらず、サーバは、地理的位置の3Dマップの圧縮データを電子デバイスに送信する。
【0171】
本願のこの実施形態において、マップダウンロード要求は、前述の2つの方式に加えて、別の方式でもトリガされ得ることが理解されるべきである。例えば、電子デバイスは、3Dマップをダウンロードするため、または、3Dマップのダウンロードを開始するための条件が満たされているか否かを自動的に検出するか、もしくは、電子デバイスは、周囲光の変化または環境の変化を検出することによって3Dマップのダウンロードを開始して、サーバからゾーンの範囲内の3Dマップをダウンロードするように要求する。ゾーンの広がりのサイズは、特には限定されない。
【0172】
3.サーバは、3Dマップの圧縮データを電子デバイスに送信する。
【0173】
4.電子デバイスは、センサを使用することによって画像情報を収集する。
【0174】
ステップ3およびステップ4は相互に独立しており、かつ、その順序は限定されないことが留意されるべきである。
【0175】
5.電子デバイスは、3Dマップの圧縮データを解凍して、3Dマップの再構成データを取得する。
【0176】
6.電子デバイスは、画像情報に基づいて、3Dマップ上で位置決めを実行して、画像情報に対応する姿勢を取得する。
【0177】
3Dマップの圧縮データを受信した後で、電子デバイスは、圧縮データを直ちに解凍する必要はなく、そして、画像情報に基づいて位置決めを実行する前に、3Dマップの再構成データを取得するために圧縮データを解凍する必要があるだけである。例えば、ユーザは、「オフラインマップ(“offline map”)」をダウンロードする方式で、ゾーンの範囲内の3Dマップの圧縮データを事前にダウンロードし、そして、測位が必要なときにだけ、3Dマップの圧縮データを解凍し得る。
【0178】
図4bは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。図4bに示されるように、この適用シナリオにおいて、電子デバイスは、センサを使用することによって、画像情報を収集し、そして、サーバは、電子デバイスの画像情報および3Dマップを参照して、電子デバイスの現在の姿勢を決定する。
【0179】
3Dマップは、サーバによって提供される。具体的には、サーバは、3Dマップを作成し、次いで、3Dマップを圧縮し、そして、3Dマップの圧縮されたデータをローカルに保管する。電子デバイスから画像情報を受信すると、サーバは、解凍処理を実行して、3Dマップの再構築データを取得し、そして、画像情報および3Dマップの再構築データを参照して、電子デバイスの現在の姿勢を決定する。
【0180】
1.サーバは、3Dマップを作成し、3Dマップを圧縮して、3Dマップの圧縮データを取得し、そして、圧縮データをローカルに保管する。
【0181】
2.電子デバイスは、センサを使用することによって、画像情報を収集する。
【0182】
3.電子デバイスは、画像情報をサーバに送信する。
【0183】
4.サーバは、3Dマップの圧縮データを解凍して、3Dマップの再構築データを取得する。
【0184】
サーバは、ストレージ空間を節約するために3Dマップに対して圧縮処理を実行することが理解されるべきである。
【0185】
5.サーバは、画像情報に基づいて3Dマップ上で位置決めを実行して、画像情報に対応する姿勢を取得する。
【0186】
6.サーバは、姿勢を電子デバイスに送信する。
【0187】
図4cは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。図4cに示されるように、この適用シナリオにおいて、電子デバイスは、センサを使用することによって、画像情報を収集し、そして、収集された画像情報および3Dマップを参照して、電子デバイスの現在の姿勢を決定する。
【0188】
3Dマップは、電子デバイスによって提供される。具体的には、電子デバイスは、3Dマップを作成し、次いで、3Dマップを圧縮し、そして、3Dマップの圧縮されたデータをローカルに保管する。画像情報が収集されると、電子デバイスは、解凍処理を実行して、3Dマップの再構築データを取得し、そして、収集された画像情報と3Dマップの再構築データとを参照して、電子デバイスの現在の姿勢を決定する。
【0189】
1.電子デバイスは、3Dマップを作成し、3Dマップを圧縮して、3Dマップの圧縮データを取得し、そして、圧縮データをローカルに保管する。
【0190】
電子デバイスは、ストレージ空間を節約するために3Dマップに対して圧縮処理を実行することが理解されるべきである。
【0191】
2.電子デバイスは、センサを使用することによって、画像情報を収集する。
【0192】
3.電子デバイスは、3Dマップの圧縮データを解凍して、3Dマップの再構成データを取得する。
【0193】
4.電子デバイスは、画像情報に基づいて3Dマップ上で位置決めを実行して、画像情報に対応する姿勢を取得する。
【0194】
図4dは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。図4dに示されるように、この適用シナリオにおいて、第2電子デバイスは、センサを使用することによって、画像情報を収集し、そして、画像情報とサーバからの3Dマップとを参照して、第2電子デバイスの現在の姿勢を決定する。
【0195】
3Dマップは、第1電子デバイスによって作成される。具体的には、第1電子デバイスは、3Dマップを作成し、3Dマップに対して圧縮処理を実行し、そして、次いで、3Dマップの圧縮データをサーバに送信する。次いで、サーバは、3Dマップの圧縮データを第2電子デバイスに送信する。第2電子デバイスは、解凍処理を実行して、3Dマップの再構成データを取得し、そして、収集された画像情報および3Dマップの再構成データを参照して、第2電子デバイスの現在の姿勢を決定する。
【0196】
本出願のこの実施形態において、第1電子デバイスは、3Dマップを事前に作成し、そして、圧縮処理を実行した後で、3Dマップをサーバに送信してよく、その結果、送信帯域幅を節約することができる。
【0197】
1.第1電子デバイスは、3Dマップを作成し、そして、3Dマップを圧縮して、3Dマップの圧縮データを取得する。
【0198】
2.第1電子デバイスは、3Dマップの圧縮データをサーバに送信する。
【0199】
第1電子デバイスは、圧縮処理の後で3Dマップを送信するので、送信帯域幅を節約することができ、そして、送信効率を改善することができる。
【0200】
3.第2電子デバイスは、マップダウンロード要求をサーバに送信する。
【0201】
代替的に、第2電子デバイスは、図4aに示されるトリガ方式に基づいて、マップダウンロード要求を送信することができる。
【0202】
4.サーバは、3Dマップの圧縮データを第2電子デバイスに送信する。
【0203】
5.第2電子デバイスは、3Dマップの圧縮データを解凍して、3Dマップの再構築データを取得する。
【0204】
6.第2電子デバイスは、センサを使用することによって、画像情報を収集する。
【0205】
7.第2電子デバイスは、画像情報に基づいて3Dマップ上で位置決めを実行して、画像情報に対応する姿勢を取得する。
【0206】
図4eは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。図4eに示されるように、この適用シナリオにおいて、第2電子デバイスは、センサを使用することによって、画像情報を収集し、そして、サーバは、第2電子デバイスからの画像情報および第1電子デバイスからの3Dマップを参照して、第2電子デバイスの現在の姿勢を決定する。
【0207】
3Dマップは、第1電子デバイスによって作成される。具体的には、第1電子デバイスは、3Dマップを作成し、3Dマップに対して圧縮処理を実行し、そして、次いで、3Dマップの圧縮データをサーバに送信する。サーバは、解凍処理を実行して、3Dマップの再構築データを取得し、そして、第2電子デバイスからの画像情報および3Dマップの再構築データを参照して、第2電子デバイスの現在の姿勢を決定する。
【0208】
1.第1電子デバイスは、3Dマップを作成し、そして、3Dマップを圧縮して、3Dマップの圧縮データを取得する。
【0209】
2.第1電子デバイスは、3Dマップの圧縮データをサーバに送信する。
【0210】
3.第2電子デバイスは、センサを使用することによって、画像情報を収集する。
【0211】
4.第2電子デバイスは、位置決め要求をサーバに送信し、ここで、位置決め要求は、画像情報を搬送する。
【0212】
5.サーバは、3Dマップの圧縮データを解凍して、3Dマップの再構築データを取得する。
【0213】
6.サーバは、画像情報に基づいて、3Dマップ上で位置決めを実行して、画像情報に対応する姿勢を取得する。
【0214】
7.サーバは、測位を通じて取得された姿勢を第2電子デバイスに送信する。
【0215】
図4fは、本出願の一つの実施形態に従った、適用シナリオに係る概略図である。図4fに示されるように、この応用シナリオにおいて、第2電子デバイスは、センサを使用することによって、画像情報を収集し、そして、第1電子デバイスからの画像情報および3Dマップを参照して、第2電子デバイスの現在の姿勢を決定する。
【0216】
3Dマップは、第1電子デバイスによって作成される。具体的には、第1電子デバイスは、3Dマップを作成し、3Dマップに対して圧縮処理を実行し、そして、次いで、3Dマップの圧縮データを第2電子デバイスに送信する。第2電子デバイスは、解凍処理を実行して、3Dマップの再構成データを取得し、そして、第1電子デバイスからの収集された画像情報および3Dマップを参照して、第2電子デバイスの現在の姿勢を決定する。
【0217】
1.第1電子デバイスは、3Dマップを作成し、3Dマップを圧縮して、3Dマップの圧縮データを取得し、そして、圧縮データをローカルに保管する。
【0218】
2.第2電子デバイスは、第1電子デバイスにマップダウンロード要求を送信する。
【0219】
3.第1電子デバイスは、3Dマップの圧縮データを第2電子デバイスに送信する。
【0220】
4.第2電子デバイスは、3Dマップの圧縮データを解凍して、3Dマップの再構築データを取得する。
【0221】
5.第2電子デバイスは、センサを使用することによって、画像情報を収集する。
【0222】
6.第2電子デバイスは、画像情報に基づいて、3Dマップ上で位置決めを実行して、画像情報に対応する姿勢を取得する。
【0223】
図4aから図4fまでに示される実施形態において使用される位置決めアルゴリズムは、以下のステップを含み得る。
【0224】
(1)画像情報から検索対象(to-be-retrieved)ゾーン記述子を抽出する。検索対象ゾーン記述子を抽出するために使用されるアルゴリズムは、3Dマップからゾーン記述子を抽出するために使用されるアルゴリズムと一致(consistent with)する。
【0225】
(2)画像情報から検索対象3Dマップポイントを抽出し、そして、検索対象3Dマップポイントの空間的位置および検索対象3Dマップポイント記述子を取得する。ここで、検索対象3Dマップポイント記述子を抽出するために使用されるアルゴリズムは、3Dマップから3Dマップポイント記述子を抽出するために使用されるアルゴリズムと一致する。
【0226】
(3)検索対象ゾーン記述子に基づいて、3Dマップのデータに含まれる複数のゾーン記述子から複数の候補ゾーン記述子を検索する。
【0227】
本出願の実施形態において、検索対象ゾーン記述子と、複数のゾーン記述子それぞれとの間の距離が計算され得る。距離は、ハミング距離、マンハッタン距離、ユークリッド距離、等を含み得る。次いで、条件を満たす(例えば、距離が閾値より小さい)少なくとも1つのゾーン記述子が、候補ゾーン記述子として選択される。
【0228】
(4)検索対象3Dマップポイント記述子を、複数の候補ゾーン記述子に対応する3Dマップポイント記述子と別々にマッチングする。ここで、マッチングは、検索対象3Dマップポイント記述子と、複数の候補ゾーン記述子に対応する3Dマップポイント記述子それぞれとの間の類似度を計算して、最も類似する3Dマップポイントを見つけることである。
【0229】
(5)一致した3Dマップポイントに基づいて、パースペクティブn点カメラ姿勢推定(perspective-n-point、PnP)、または、効率的パースペクティブn点カメラ姿勢推定(efficient perspective-n-point camera pose estimation、EPnP)といった、姿勢解決アルゴリズムを使用することによる計算を通じて、電子デバイスの姿勢を取得する。
【0230】
図4aから図4fまでの適用シナリオのいずれか1つにおいて、電子デバイスの現在の姿勢を取得するために、本出願の実施形態における3Dマップに基づく測位が実行される。姿勢は、ARナビゲーション、ARマンマシンインタラクション、支援運転、自律運転、等の分野に適用され得る。ARナビゲーションが姿勢に基づいて実行されると仮定すると、図4gは、本出願の一つの実施形態に従った、電子デバイスによって表示されるユーザインターフェイスに係る概略図である。電子デバイスは、姿勢に基づいて、図4gに示されるユーザインターフェイスを表示し得る。ユーザインターフェイスは、会議室2にナビゲートするためのナビゲーション矢印表示を含み得る。そして、会議室2にナビゲートするためのナビゲーション矢印表示は、サーバから取得された、または、姿勢に基づいてローカルに取得された仮想オブジェクトであり得る。ユーザインターフェイスは、センサによって収集された画像情報を、さらに含み得る。例えば、図4gに示される建物である。ユーザは、図4gに示されるように、電子デバイスのユーザインターフェイスを参照して、会議室2に行く。
【0231】
本出願の実施形態において、解凍を通じて取得される、3Dマップの再構築されたデータは、また、3Dマップの再確立されたデータとも呼ばれ得ることが留意されるべきである。
【0232】
図4aから図4fまでに示される実施形態は、全てが、3Dマップの圧縮処理および解凍処理に関する。本出願の実施形態は、前述の圧縮処理および解凍処理を実行するための複数の方法を提供する。以下は、圧縮処理および解凍処理の方法について説明している。
【0233】
上記の説明に基づいて、以下は、本出願の一実施形態において提供される3Dマップ圧縮方法を提供する。便宜上、以下に説明される方法の実施形態は、一連の動作ステップの組み合わせとして表現されている。しかしながら、当業者であれば、本出願の技術的ソリューションの具体的な実装が、説明された一連の動作ステップのシーケンスに限定されないことを理解すべきである。
【0234】
図5は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。いくつかの実施態様において、方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用され得る。この方法は、これらに限定されるわけではないが、以下のステップを含んでいる。
【0235】
S101.エンコーディング対象(to-be-encoded)記述子に対して圧縮処理を実行して、エンコーディング対象記述子の第1圧縮表現を取得する。
【0236】
エンコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している。エンコーディング対象記述子は、ゾーン記述子であってよく、そして、ゾーン記述子は、3Dマップ上の複数の3Dマップポイントに対応している。代替的に、エンコーディング対象記述子は、3Dマップポイント記述子であってよく、そして、3Dマップポイント記述子は、3Dマップ上の1つの3Dマップポイントに対応している。
【0237】
可能な実装では、エンコーディング対象記述子の第1コンパクト表現(compact representation)を取得するために、エンコーディング対象記述子に対して量子化処理が実行される。量子化処理は、これらに限定されるわけではないが、スカラ量子化、ベクトル量子化、積量子化などを含む。例えば、エンコーディング対象記述子は、量子化処理を通じて1つ以上の量子化インデックスに対してマッピングされてよく、そして、1つ以上の量子化インデックスは、エンコーディング対象記述子の第1コンパクト表現である。1つ以上の量子化インデックスそれぞれは、1つの量子化中心(quantization center)に対応している。
【0238】
別の可能な実装では、エンコーディング対象記述子の第1コンパクト表現を取得するために、エンコーディング対象記述子に対して二値化処理が実行される。二値化処理は、これらに限定されるわけではないが、反復量子化(iterative quantization、ITQ)ハッシュ、局所性鋭敏型ハッシュ(locality-sensitive hashing、LSH)、スペクトルハッシュ法(spectral hashing)、などを含む。例えば、バイナリ化処理は、エンコーディング対象記述子をハミング空間(バイナリ空間とも呼ばれる)に対してマッピングしてバイナリ表現を取得し得る。ここで、バイナリ表現は、エンコーディング対象記述子の第1コンパクト表現である。
【0239】
量子化処理が実行されるか、または、二値化処理が実行されるか、いずれかにかかわらず、エンコーディング対象記述子の第1コンパクト表現内のビットの量は、たいてい、オリジナルのエンコーディング対象記述子のビットの量より明らかに少ない。従って、ストレージ空間及び/又は伝送帯域幅を節約するという目的が達成される。
【0240】
S102.エンコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得する。
【0241】
少なくとも1つの参照記述子は、3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応している。例えば、3Dマップポイント記述子および3Dマップポイントの空間的位置は、別々にエンコーディングされ、そして、少なくとも1つのエンコーディングされた3Dマップポイントは、少なくとも1つのエンコーディングされた3Dマップポイント記述子であり得る。3Dマップポイントの空間的位置のエンコーディングは、本出願のこの実施形態において特には限定されない。確かに、いくつかの場合において、少なくとも1つのエンコーディングされた3Dマップポイントは、少なくとも1つのエンコーディングされた3Dマップポイント記述子および少なくとも1つのエンコーディングされた3Dマップポイントの空間的位置であり得ることが理解されるだろう。これは、本出願のこの実施形態において限定されない。
【0242】
エンコーディング対象記述子に対して実行される圧縮処理と同様に、いくつかの実施形態において、少なくとも1つの参照記述子の圧縮表現を取得するために、少なくとも1つの参照記述子に対して圧縮処理が実行され得る。例えば、エンコーディング対象記述子の第1コンパクト表現を取得するために、エンコーディング対象記述子に対して量子化処理が実行される場合には、少なくとも1つの参照記述子のコンパクト表現を取得するために、少なくとも1つの参照記述子に対して量子化処理が実行される。エンコーディング対象記述子の第1コンパクト表現を取得するために、エンコーディング対象記述子に対して二値化処理が実行される場合には、少なくとも1つの参照記述子のコンパクト表現を取得するために、少なくとも1つの参照記述子に対して二値化処理が実行される。
【0243】
エンコーディング対象記述子に対応する少なくとも1つの参照記述子は、以下のように記述される。可能な実装において、少なくとも1つの参照記述子は、エンコーディング対象記述子の前に少なくとも1つのエンコーディングまたは圧縮された記述子を含み得る。1つの参照記述子が例として使用され、そして、参照記述子は、エンコーディング対象記述子の前のエンコーディングまたは圧縮された記述子であり得る。別の可能な実装において、少なくとも1つの参照記述子は、少なくとも1つの事前設定記述子(preset descriptor)を含み得る。事前設定記述子は、要件に基づいてフレキシブルに設定されてよい。例えば、事前設定記述子は、10101010であってよい。さらに別の可能な実装において、少なくとも1つの参照記述子は、ニューラルネットワークモデルを使用することによって、または、クラスタリングアルゴリズムに従って、決定された少なくとも1つの記述子を含み得る。ニューラルネットワークモデルは、畳み込みネットワーク(convolutional neural network、CNN)、ディープニューラルネットワーク(deep neural network、DNN)、リカレントニューラルネットワーク(recurrent neural network、RNN)、再帰的残差畳み込みネットワーク(recursive residual convolutional neuron network、RR-CNN)、などであってよい。これは、本出願のこの実施形態において特には限定されない。例えば、少なくとも1つの参照記述子は、CNNを使用することによって、データベース内の複数の記述子または検索対象(to-be-retrieved)画像の複数の記述子に基づいて、決定され得る。
【0244】
S103.エンコーディング対象記述子の第1コンパクト表現、および、少なくとも1つの参照記述子のコンパクト表現に基づいて、エンコーディング対象記述子の第2コンパクト表現を取得する。
【0245】
エンコーディング対象記述子の第1コンパクト表現は、第2コンパクト表現に対してマッピングされるので、第2コンパクト表現のデータ分布は、第1コンパクト表現のデータ分布とは異なる。本出願のこの実施形態において、コンパクト表現(例えば、第1コンパクト表現または第2コンパクト表現)のデータ分布は、コンパクト表現における2進数の分布である。本出願のこの実施形態においては、コンパクト表現のデータ分布が変更されるので、カプセル化を介して後で取得される3Dマップのビットストリームのデータ量が低減され、そして、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドが低減される。
【0246】
いくつかの実施形態において、第1コンパクト表現は、少なくとも1つの第1コンパクト表現サブストリングを含んでよく、そして、第2コンパクト表現は、少なくとも1つの第2コンパクト表現サブストリングを含んでよい。それに対応して、少なくとも1つの参照記述子それぞれのコンパクト表現は、少なくとも1つの第1参照コンパクト表現サブストリングを含んでいる。図6は、本出願の一つの実施形態に従った、第2コンパクト表現のデータ分布と第1コンパクト表現のデータ分布との間の比較に係る概略図である。図6に示されるように、横軸はコンパクト表現サブストリングであり、縦軸は発生頻度であり、斜線のバーは第1コンパクト表現のデータ分布であり、そして、空白のバーは第2コンパクト表現のデータ分布である。図6から分かるように、第1コンパクト表現に含まれる第1コンパクト表現サブストリングは、異なる値で、概ね均等に分布している。しかしながら、第1コンパクト表現とは異なり、第2コンパクト表現に含まれる第2コンパクト表現サブストリングは、ある値を中心に分布している(例えば、図6における0から22まで)。従って、第2コンパクト表現のデータ分布は、第1コンパクト表現のデータ分布とは異なることが分かる。
【0247】
図6は、単なる説明のための例に過ぎないことが留意されるべきである。本出願のこの実施形態における第2コンパクト表現のデータ分布は、代替的に、別の形態であってよい。例えば、第2コンパクト表現に含まれる第2コンパクト表現サブストリングは、他のある値を中心に分布している(例えば、230から255まで)。本出願のこの実施形態における第2コンパクト表現のデータ分布は、図6に限定されるものではない。
【0248】
S104.第2コンパクト表現をカプセル化して、3Dマップのビットストリームを取得する。
【0249】
3Dマップのビットストリームを取得するために、エントロピー符号化(entropy encoding)といった処理が第2コンパクト表現に対して実行され得る。
【0250】
S101からS103までの圧縮処理を実行することによって取得される第2コンパクト表現は、また、圧縮データとも称され得る。次いで、S104において、圧縮データがカプセル化され、その結果、3Dマップのビットストリームが取得される。そうした圧縮処理は、また、encoding処理とも称される。
【0251】
任意的に、この実施形態は、サーバによって実行されてよく、そして、サーバは、電子デバイスによって送信された3Dマップ要求情報(例えば、図4aのマップダウンロード要求)をさらに受信し、そして、3Dマップ要求情報に応答して、3Dマップ要求情報に対応する3Dマップのビットストリームを電子デバイスに送信し得る。代替的に、この実施形態は、電子デバイスによって実行されてよく、そして、電子デバイスは、3Dマップのビットストリームをサーバにさらに送信し得る。電子デバイスは、ユーザ端末デバイス、または、キャリアで搬送される電子デバイスであってよい。
【0252】
いくつかの実施形態においては、エンコーディング対象記述子に対応する少なくとも1つの参照記述子の番号(number)、または、参照記述子の番号とエンコーディング対象記述子の番号との間の差が、さらにカプセル化されてよく、その結果、3Dマップのビットストリームは、少なくとも1つの参照記述子の番号、または、番号間の差を、さらに搬送する。解凍の最中に、少なくとも1つの参照記述子は、少なくとも1つの参照記述子の番号または番号間の差に基づいて、取得され得る。そして、解凍は、少なくとも1つの参照記述子に基づいて実行される。
【0253】
この実施形態においては、エンコーディング対象記述子の第1コンパクト表現を取得するために、エンコーディング対象記述子に対して圧縮処理が実行され、エンコーディング対象記述子の第1コンパクト表現および少なくとも1つの参照記述子のコンパクト表現に基づいて、エンコーディング対象記述子の第2コンパクト表現が取得されそして、3Dマップのビットストリームを取得するために、第2コンパクト表現がカプセル化される。圧縮処理が、エンコーディング対象記述子のデータ量を低減するために、最初に実行され、そして、次いで、第1コンパクト表現が第2コンパクト表現に対してマッピングされ、その結果、コンパクト表現のデータ分布が変更される。それによって、さらに、カプセル化を通じて取得される3Dマップのビットストリームのデータ量を低減し、そして、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。
【0254】
図7は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。いくつかの実施態様において、本方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用されてもよい。この方法は、これらに限定されるわけではないが、以下のステップを含む。
【0255】
S201.デコーディング対象(to-be-decoded)記述子の第2コンパクト表現を取得するために、3Dマップのビットストリームをカプセル化解除(decapsulate)する。
【0256】
デコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している。デコーディング対象記述子はゾーン記述子であってよく、そして、ゾーン記述子は3Dマップ上の複数の3Dマップポイントに対応している。代替的に、デコーディング対象記述子は3Dマップポイント記述子であってよく、そして、3Dマップポイント記述子は3Dマップ上の1つの3Dマップポイントに対応している。
【0257】
この実施形態におけるデコーディング対象記述子の第2コンパクト表現は、図5の実施形態におけるエンコーディング対象記述子の第2コンパクト表現である。
【0258】
第2コンパクト表現は、S201において3Dマップのビットストリームをカプセル化解除することによって取得されることが留意されるべきである。そうした解凍処理は、また、復号(decoding)処理とも呼ばれる。カプセル化解除を通じて取得された第2コンパクト表現は、また、圧縮データとも呼ばれ得る。ついで、S202からS20までにおいて圧縮データの解凍処理が実行される。
【0259】
S202.デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得する。
【0260】
少なくとも1つの参照記述子は、3Dマップ上の少なくとも1つの復号(decoded)3Dマップポイントに対応している。例えば、3Dマップポイント記述子および3Dマップポイントの空間的位置は、別々にデコーディングされ、少なくとも1つのデコーディングされた3Dマップポイントは、少なくとも1つのデコーディングされた3Dマップポイント記述子であり得る。3Dマップポイントの空間的位置のデコーディングは、本出願のこの実施形態において特には限定されない。確かに、いくつかの事例において、少なくとも1つのデコーディングされた3Dマップポイントは、少なくとも1つのデコーディングされた3Dマップポイント記述子および少なくとも1つのデコーディングされた3Dマップポイントの空間的位置であり得ることが理解されるだろう。これは、本出願のこの実施形態において限定されない。
【0261】
デコーディング対象記述子に対応する少なくとも1つの参照記述子に係る説明および記述は、図5に示される実施形態における参照記述子に係る説明および記述と同様である。可能な実装において、少なくとも1つの参照記述子は、デコーディング対象記述子の前に少なくとも1つのデコーディングまたは解凍された記述子を含み得る。1つの参照記述子が例として使用されており、そして、参照記述子は、デコーディング対象記述子の前のデコーディングまたは解凍された記述子であってよい。別の可能な実装において、少なくとも1つの参照記述子は、少なくとも1つの事前設定記述子を含み得る。事前設定記述子は、要件に基づいて、フレキシブルに設定され得る。例えば、事前設定記述子は、10101010であり得る。さらに別の可能な実装において、少なくとも1つの参照記述子は、ニューラルネットワークモデルを使用することによって、または、クラスタリングアルゴリズムに従って、決定された少なくとも1つの記述子を含み得る。さらに別の可能な実装においては、3Dマップのビットストリームがカプセル化解除されるとき、デコーディング対象記述子に対応する少なくとも1つの参照記述子の番号(number)、または、参照記述子の番号とデコーディング対象記述子の番号との間の差が、さらに取得され得る。そして、デコーディング対象記述子に対応する少なくとも1つの参照記述子は、デコーディング対象記述子に対応する少なくとも1つの参照記述子の番号、または、参照記述子の番号とデコーディング対象記述子の番号との間の差に基づいて取得される。
【0262】
S203.デコーディング対象記述子の第2コンパクト表現、および、デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現に基づいて、デコーディング対象記述子の第1コンパクト表現を取得する。
【0263】
デコーディング対象記述子の第2コンパクト表現は、デコーディング対象記述子の第1コンパクト表現に対してデマッピング(demapped)される。ここにおけるデコーディング対象記述子の第1コンパクト表現は、図5の実施形態におけるエンコーディング対象記述子の第1コンパクト表現である。
【0264】
S204.デコーディング対象記述子の第1コンパクト表現に基づいて、少なくとも1つの3Dマップポイントの再構成データを取得する。
【0265】
少なくとも1つの3Dマップポイントの再構成データは、デコーディング対象記述子の第1コンパクト表現に基づいて取得される。少なくとも1つの3Dマップポイントの再構成されたデータは、3Dマップに基づく位置決めのために使用され得る。例えば、第1コンパクト表現が1つ以上の量子化インデックスである場合には、3Dマップポイントの再構成データを取得するために、1つ以上の量子化インデックスに対して逆量子化処理が実行され得る。
【0266】
この実施形態において、デコーディング対象記述子の第2コンパクト表現を取得するために3Dマップのビットストリームがカプセル化解除され、デコーディング対象記述子の第1コンパクト表現は、デコーディング対象記述子の第2コンパクト表現およびデコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現に基づいて取得され、そして、少なくとも1つの3Dマップポイントの再構築データは、デコーディング対象記述子の第1コンパクト表現に基づいて取得される。エンコーダは、最初に、エンコーディング対象記述子のデータ量を低減するために圧縮処理を実行し、そして、次いで、第1コンパクト表現を第2コンパクト表現に対してマッピングし、その結果、コンパクト表現のデータ分布が変更される。それによって、カプセル化を通じて取得される3Dマップのビットストリームのデータ量がさらに低減し、そして、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。デコーダは、第1コンパクト表現を取得するために、カプセル化解除を通して取得された第2コンパクト表現をデマッピングし、そして、3Dマップポイントの再構築されたデータをさらに取得し得る。
【0267】
前述の実施形態において、第1コンパクト表現は、異なる方法で第2コンパクト表現に対してマッピングされてよい。
【0268】
方式1:第1テーブルを使用することによるマッピング(静的テーブルを使用することによるマッピングとしても、また、呼ばれる)
【0269】
エンコーディング対象記述子の第2コンパクト表現は、エンコーディング対象記述子の第1コンパクト表現および少なくとも1つの参照記述子のコンパクト表現に基づいて、第1テーブルをルックアップすることによって取得される。第1テーブルは、事前設定されてよい。
【0270】
方式2:第2テーブルを使用することによるマッピング(動的テーブルを使用することによるマッピングとしても、また、呼ばれる)
【0271】
エンコーディング対象記述子の第2コンパクト表現は、エンコーディング対象記述子の第1コンパクト表現に基づいて、第2テーブルをルックアップすることによって取得される。第2テーブルは、少なくとも1つの参照記述子のコンパクト表現に基づいて確立される。
【0272】
方式3:差分(difference)または排他的論理和
【0273】
少なくとも1つの参照記述子のコンパクト表現とエンコーディング対象記述子の第1コンパクト表現との排他的論理和値または差分が、エンコーディング対象記述子の第2コンパクト表現として使用される。
【0274】
以下では、前述の方式1、方式2、および方式3を詳細に説明し、かつ、記述するために、いくつかの特定のエンコーディングおよびデコーディングの実施形態を使用する。
【0275】
図8は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。いくつかの実施態様において、本方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用されてもよい。この実施形態における3Dマップ圧縮方法では、第1コンパクト表現を第2コンパクト表現に対してマッピングするために、前述の方式1が使用されている。この実施形態は、第1コンパクト表現が少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、第2コンパクト表現が少なくとも1つの第2コンパクト表現サブストリングを含む、一つの例を使用することによって説明される。この方法は、これに限定されるわけではないが、以下のステップを含む。
【0276】
S301.エンコーディング対象記述子の第1圧縮表現を取得するために、エンコーディング対象記述子に対して圧縮処理を実行する。第1コンパクト表現は、少なくとも1つの第1コンパクト表現サブストリングを含んでいる。
【0277】
S302.エンコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得する。少なくとも1つの参照記述子のコンパクト表現は、少なくとも1つの参照記述子それぞれの少なくとも1つの第1参照コンパクト表現サブストリングを含んでいる。
【0278】
S301およびS302の関連する説明および記述については、図5に示されている実施形態におけるS101およびS102の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0279】
S303.少なくとも1つの第1コンパクト表現サブストリングおよび少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、第1テーブルから、少なくとも1つの第1コンパクト表現サブストリングおよび少なくとも1つの第1参照コンパクト表現サブストリングに対応する、少なくとも1つの第3コンパクト表現サブストリングを取得する。
【0280】
この実施形態において、第1テーブルは、少なくとも1つのエンコーディングされたコンパクト表現サブストリング、および、少なくとも1つの第2参照コンパクト表現サブストリングに対応する少なくとも1つの第3コンパクト表現サブストリングを含み得る。
【0281】
第1テーブル内の少なくとも1つのエンコーディングされたコンパクト表現サブストリングは、エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、そして、第1テーブル内の少なくとも1つの第2参照コンパクト表現サブストリングは、少なくとも1つの参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングを含んでいる。従って、少なくとも1つの対応する第3コンパクト表現サブストリングは、少なくとも1つの第1コンパクト表現サブストリングおよび少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、第1テーブルから取得され得る。
【0282】
第1テーブルは、複数の異なる形式を有し得る。一つの例において、第1テーブルは、多次元アレイ、例えば、2次元アレイまたは3次元アレイであってよい。
【0283】
第1テーブルが2次元アレイであると仮定すると、T[i][j]は、エンコーディングされたコンパクト表現サブストリングi、および、第2参照コンパクト表現サブストリングjに対応している第3コンパクト表現サブストリングを表している。ここで、iは0からN-1であり、jは0からM-1であり、NおよびMは1より大きい正の整数であり、Nはエンコーディングされたコンパクト表現サブストリングの総数を表し、Mは第2参照コンパクト表現サブストリングの総数を表している。1つの第1コンパクト表現サブストリングが、例として使用される。第1コンパクト表現サブストリングをマッピングするために第1テーブルが使用される場合、第1コンパクト表現サブストリングは、N個のエンコーディングされたコンパクト表現サブストリングの中で、第1コンパクト表現サブストリングと同じである、サブストリングxを見つけるために使用され得る。ここで、x∈[0,N-1]である。そして、第1コンパクト表現サブストリングに対応する第1参照コンパクト表現サブストリングが使用され、M個の第2参照コンパクト表現サブストリングの中で第1参照コンパクト表現サブストリングと同じであるサブストリングyを見つける。ここで、y∈[0,M-1]である。この場合、T[x][y]は、対応する第3コンパクト表現サブストリング(substring)である。
【0284】
T[i][j]は、関数を使用することによって、マッピングを通して取得され得る。本関数は、エンコーディングされたコンパクト表現サブストリングiおよび参照コンパクト表現サブストリングjについての関数であり得る。確かに、機能は、代替的に別の機能であってよいことが理解され得る。機能の具体的な形態は、本出願のこの実施形態において、特には限定されない。
【0285】
いくつかの実施形態において、T[i][j]は、エンコーディングされたコンパクト表現サブストリングi以下であるか、または、エンコーディングされたコンパクト表現サブストリングi以上である。
【0286】
第1テーブル内のT[i][j]が、エンコーディングされたコンパクト表現サブストリングi以下である場合、第1テーブルを使用することによって取得された第3コンパクト表現サブストリングは、第1コンパクト表現サブストリング以下である。
【0287】
第1テーブル内のT[i][j]が、エンコーディングされたコンパクト表現サブストリングi以上である場合、第1テーブルを使用することによって取得された第3コンパクト表現サブストリングは、第1コンパクト表現サブストリング以上である。
【0288】
第1テーブルが3次元アレイであると仮定すると、一つの例において、T[i][j][1]、T[i][j][2]、…、T[i][j][K]は、エンコーディングされたコンパクト表現サブストリングiおよび参照コンパクト表現サブストリングjに対応しているK個の第3コンパクト表現サブストリングを表している。ここで、iは0からN-1であり、jは0からM-1であり、N、M、およびKは、1より大きい正の整数であり、Nはエンコーディングされたコンパクト表現サブストリングの総数を表し、そして、Mは参照コンパクト表現サブストリングの総数を表している。1つの第1コンパクト表現サブストリングが例として使用されている。第1コンパクト表現サブストリングをマッピングするために第1テーブルが使用される場合、第1コンパクト表現サブストリングが使用され、N個のエンコーディングされたコンパクト表現サブストリングの中で第1コンパクト表現サブストリングと同じであるサブストリングxを見つける。ここで、x∈[0,N-1]である。そして、前記第1コンパクト表現サブストリングに対応するコンパクト表現サブストリングが使用され、前記M個の参照コンパクト表現サブストリングの中で前記コンパクト表現サブストリングと同じであるサブストリングyを見つける。ここで、y∈[0,M-1]である。この場合、T[x][y][1]、T[x][y][2]、…、T[x][y][K]は、複数の対応する第3コンパクト表現サブストリングである。
【0289】
T[i][j][1]、T[i][j][2]、…、T[i][j][K]は、関数を使用することによって、マッピングを通して取得され得る。本関数は、エンコーディングされたコンパクト表現サブストリングiおよび参照コンパクト表現サブストリングjについての関数であり得る。一つの例において、関数はランダム関数であり得る。確かに、関数は代替的に別の関数であってもよいことが理解されるだろう。本関数の具体的な形態は、本出願のこの実施形態において、特には限定されない。
【0290】
別の例において、T[i][j1][j2]は、エンコーディングされたコンパクト表現サブストリングi、第2参照コンパクト表現サブストリングj1、および、第2参照コンパクト表現サブストリングj2に対応している第3コンパクト表現サブストリングを表している。ここで、iは0からN-1であり、j1およびj2はそれぞれ0からM-1であり、NおよびMは1より大きい正の整数であり、Nはエンコーディングされたコンパクト表現サブストリングの総数を表し、そして、Mは第2参照コンパクト表現サブストリングの総数を表している。1つの第1コンパクト表現サブストリングが例として使用されている。第1コンパクト表現サブストリングをマッピングするために第1テーブルが使用される場合、第1コンパクト表現サブストリングが使用され、N個のエンコーディングされたコンパクト表現サブストリングの中で第1コンパクト表現サブストリングと同じであるサブストリングxを見つける。ここで、x∈[0,N-1]である。第1コンパクト表現サブストリングに対応する1つの第2参照コンパクト表現サブストリングj1が使用され、M個の第2参照コンパクト表現サブストリングの中で第2参照コンパクト表現サブストリングj1と同じであるサブストリングyを見つける。ここで、y∈[0,M-1]である。そして、第1コンパクト表現サブストリングに対応する別の第2参照コンパクト表現サブストリングj2が使用され、M個の第2参照コンパクト表現サブストリングの中で第2参照コンパクト表現サブストリングj2と同じであるサブストリングzを見つける。ここで、z∈[0,M-1]である。この場合、T[x][y][z]は、対応する第3コンパクト表現サブストリングである。
【0291】
T[x][y][z]は、関数を使用することによって、マッピングを通して取得され得る。本関数は、エンコーディングされたコンパクト表現サブストリングi、第2参照コンパクト表現サブストリングj1、および、第2参照コンパクト表現サブストリングj2に関する関数であり得る。一つの例において、関数は、ランダム関数であってよい。確かに、本機能は、代替的に別の関数であってもよいことが理解されるだろう。関数の具体的な形態は、本出願のこの実施形態において特には限定されない。
【0292】
S304.少なくとも1つの第1コンパクト表現サブストリング、および、少なくとも1つの第1参照コンパクト表現サブストリングに対応する少なくとも1つの第3コンパクト表現サブストリングに基づいて、エンコーディング対象記述子の第2コンパクト表現を取得する。
【0293】
可能な実装において、1つの第1コンパクト表現サブストリングおよび1つの第1参照コンパクト表現サブストリングは、1つの第3コンパクト表現サブストリングに対応している。少なくとも1つの対応する第3コンパクト表現サブストリングそれぞれは、1つの第2コンパクト表現サブストリングとして使用され、そして、取得された少なくとも1つの第2コンパクト表現サブストリングは、エンコーディング対象記述子の第2コンパクト表現である。第1テーブル内のT[i][j]が、エンコーディングされたコンパクト表現サブストリングi以下であるので、第1テーブルを使用することにより第1コンパクト表現サブストリングをマッピングすることによって取得される第2コンパクト表現サブストリングは、第1コンパクト表現サブストリング以下である。従って、第1テーブルを使用することによるマッピングを通じて、第1コンパクト表現サブストリングは、第1方向に向かってマッピングされ得る。ここで、第1方向は、小さい値を有する方向であってよい(例えば、図6に示されるような水平軸の左方向)。従って、第2コンパクト表現サブストリングが小さい値である、より高い確率が存在し、第2コンパクト表現のデータ分布がより集中化され、そして、エントロピー符号化を通じて取得される3Dマップのビットストリームのデータ量が低減される。代替的に、第1テーブル内のT[i][j]がエンコーディングされたコンパクト表現サブストリングi以上であるため、第1テーブルを使用することにより第1コンパクト表現サブストリングをマッピングすることによって取得される第2コンパクト表現サブストリングは、第1コンパクト表現サブストリング以上である。従って、第1テーブルを使用することによるマッピングを通じて、第1コンパクト表現サブストリングは、第2方向に向かってマッピングされ得る。ここで、第2方向は、大きい値を有する方向であってよい(例えば、図6に示されるような水平軸の右方向)。従って、第2コンパクト表現サブストリングが大きい値である、より高い確率が存在し、第2コンパクト表現のデータ分布がより集中化され、エントロピー符号化を通じて取得される3Dマップのビットストリームのデータ量が低減される。
【0294】
別の可能な実装において、1つの第1コンパクト表現サブストリングおよび1つの第1参照コンパクト表現サブストリングは、複数の第3コンパクト表現サブストリングに対応している。1つの第2コンパクト表現サブストリングが、複数の対応する第3コンパクト表現サブストリングに基づいて取得される。このようにして取得された少なくとも1つの第2コンパクト表現サブストリングは、エンコーディング対象記述子の第2コンパクト表現である。例えば、1つの第1コンパクト表現サブストリング、および、1つの第1参照コンパクト表現サブストリングに対応する複数の第3コンパクト表現サブストリングは、T[i][j][1]、T[i][j][2]、…、T[i][j][K]である。この場合、1つの第2コンパクト表現サブストリングは、T[i][j][1]、T[i][j][2]、…、T[i][j][K]に基づいて取得され得る。例えば、T[i][j][1]、T[i][j][2]、…、T[i][j][K]が平均されてよく、そして、1つの第2コンパクト表現サブストリングとして、平均値が使用される。確かに、1つの第2コンパクト表現サブストリングは、複数の第3コンパクト表現サブストリングに基づいて、別の方式で取得され得ることが理解るだろう。本出願のこの実施形態においては、実施例を1つずつ説明していない。第1テーブルを使用することによって取得された第2コンパクト表現サブストリングは、エンコーディングされたコンパクト表現サブストリングi以下であるので、第1テーブルを使用することにより第1コンパクト表現サブストリングをマッピングすることによって取得される第2コンパクト表現サブストリングは、第1コンパクト表現サブストリング以下である。従って、第1テーブルを使用することによるマッピングを通じて、第1コンパクト表現サブストリングは、第1方向に向かってマッピングされ得る。ここで、第1方向は、小さい値を有する方向であってよい(例えば、図6に示されるような水平軸の左方向)。従って、第2コンパクト表現サブストリングが小さい値である、より高い確率が存在し、第2コンパクト表現のデータ分布がより集中化され、そして、エントロピー符号化を通じて取得される3Dマップのビットストリームのデータ量が低減される。代替的に、第1テーブルを使用することによって取得される第2コンパクト表現サブストリングが、エンコーディングされたコンパクト表現サブストリングi以上であるので、第1テーブルを使用することにより第1コンパクト表現サブストリングをマッピングすることによって取得される第2コンパクト表現サブストリングは、第1コンパクト表現サブストリング以上である。従って、第1テーブルを使用することによるマッピングを通じて、第1コンパクト表現サブストリングは、第2方向に向かってマッピングされ得る。ここで、第2方向は、大きい値を有する方向であってよい(例えば、図6に示されるような水平軸の右方向)。従って、第2コンパクト表現サブストリングが大きい値である、より高い確率が存在し、第2コンパクト表現のデータ分布がより集中化され、そして、エントロピー符号化を通じて取得される3Dマップのビットストリームのデータ量が低減される。
【0295】
本出願のこの実施形態において、少なくとも1つの第1コンパクト表現サブストリングのシーケンスは、少なくとも1つの第2コンパクト表現サブストリングのシーケンスとは異なる。
【0296】
S305.3Dマップのビットストリームを取得するために、第2コンパクト表現をカプセル化する。
【0297】
S305の関連する説明および記述については、図5に示される実施形態におけるS104の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0298】
この実施形態においては、エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングが取得するために、エンコーディング対象記述子に対して圧縮処理が実行され、少なくとも1つの第1コンパクト表現サブストリング、および、少なくとも1つの第1参照コンパクト表現サブストリングに対応する少なくとも1つの第3コンパクト表現サブストリングが、少なくとも1つの第1コンパクト表現サブストリングおよび少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、第1テーブルから取得され、エンコーディング対象記述子の第2コンパクト表現が、少なくとも1つの第1コンパクト表現サブストリング、および、少なくとも1つの第1参照コンパクト表現サブストリングに対応する少なくとも1つの第3コンパクト表現サブストリングに基づいて取得され、そして、3Dマップのビットストリームを取得するために、第2コンパクト表現がカプセル化され。エンコーディング対象記述子のデータ量を低減するために、最初に、圧縮処理が実行され、そして、次いで、第1テーブルを使用することによって、第1コンパクト表現が第2コンパクト表現に対してマッピングされ、その結果、コンパクト表現のデータ分布が変更され、それによって、カプセル化を通じて取得される3Dマップのビットストリームのデータ量をさらに低減し、そして、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。
【0299】
図9は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。いくつかの実施態様において、本方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用されてもよい。この実施形態における3Dマップ解凍方法において、第2コンパクト表現は、第1テーブルを使用することによって、第1コンパクト表現に対してデマッピングされる。この実施形態は、第1コンパクト表現が少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、第2コンパクト表現が少なくとも1つの第2コンパクト表現サブストリングを含む、一つの例を使用することによって説明される。この方法は、これらに限定されるわけではないが、以下のステップを含んでいる。
【0300】
S401.デコーディング対象記述子の第2コンパクト表現を取得するために、3Dマップのビットストリームをカプセル化解除する。第2コンパクト表現は、少なくとも1つの第2コンパクト表現サブストリングを含んでいる。
【0301】
3Dマップのビットストリームは、図8に示される実施形態に従って取得される3Dマップのビットストリームであってよく、または、図10に示される実施形態に従って取得される3Dマップのビットストリームであってもよい。本出願の実施形態における圧縮方法および解凍方法は、フレキシブルに組み合わされてよい。
【0302】
S402.デコーディング対象記述子に対応している少なくとも1つの参照記述子のコンパクト表現を取得する。少なくとも1つの参照記述子のコンパクト表現は、少なくとも1つの参照記述子それぞれの少なくとも1つの第1参照コンパクト表現サブストリングを含んでいる。
【0303】
S401およびS402の関連する説明および記述については、図7に示されている実施形態におけるS201およびS202の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0304】
S403.少なくとも1つの第2コンパクト表現サブストリングおよび少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、第1テーブルから、少なくとも1つの第2コンパクト表現サブストリングおよび少なくとも1つの第1参照コンパクト表現サブストリングに対応している少なくとも1つの第1コンパクト表現サブストリングを取得する。
【0305】
この実施形態における第1テーブルは、図8に示される実施形態における第1テーブルと同じテーブルであってよく、または、図8に示される実施形態における第1テーブルとは異なるテーブルであってもよい。例えば、第1テーブルは、図8に示される実施形態における第1テーブルに対応するデマッピングテーブルであり得る。この実施形態においては、第1テーブルを使用することによってマッピング前のコンパクトな表現が取得され、そして、さらに、3Dマップポイントの再構成データが取得される。
【0306】
第1テーブルが2次元アレイであると仮定すると、T[i][j]は、エンコーディングされたコンパクト表現サブストリングi、および、第2参照コンパクト表現サブストリングjに対応している第3コンパクト表現サブストリングを表しており、そして、第3コンパクト表現サブストリングは、1つの第2コンパクト表現サブストリングとして使用される。i'=T[i][j]であると仮定すると、i'は、第2コンパクト表現サブストリングを表し、この実施形態におけるデマッピングテーブルはT'[i'][j]として表されてよく、すなわち、マッピング前のコンパクト表現サブストリングは、デマッピングテーブルを使用することによって取得される。ここで、i=T'[i'][j]である。
【0307】
S404.少なくとも1つの第1コンパクト表現サブストリングに基づいて、少なくとも1つの3Dマップポイントの再構築されたデータを取得する。
【0308】
S404の関連する説明および記述については、図7に示されている実施形態におけるS204の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0309】
この実施形態においては、デコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを取得するために、3Dマップのビットストリームがカプセル化解除され、デコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングは、デコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリング、および、少なくとも1つの参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、第1テーブルから取得され、そして、少なくとも1つの3Dマップポイントの再構成データは、デコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングに基づいて取得される。エンコーダは、エンコーディング対象記述子のデータ量を低減するために、最初に、圧縮処理を実行し、そして、次いで、第1コンパクト表現を第2コンパクト表現に対してマッピングし、その結果、コンパクト表現のデータ分布が変更され、それによって、カプセル化を介して取得される3Dマップのビットストリームのデータ量をさらに低減し、そして、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。デコーダは、第1テーブルを使用することによって、カプセル化解除を通じて取得された第2コンパクト表現をデマッピングして、第1コンパクト表現を取得し、そして、さらに、3Dマップポイントの再構築されたデータを取得する。
【0310】
図10は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。いくつかの実施態様において、本方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用されてもよい。この実施形態における3Dマップ圧縮方法では、第1コンパクト表現を第2コンパクト表現に対してマッピングするために、前述の方式2が使用される。この実施形態は、第1コンパクト表現が少なくとも1つの第1コンパクト表現サブストリングを含み、第2コンパクト表現が少なくとも1つの第2コンパクト表現サブストリングを含む、一つの例を使用することによって説明される。この方法は、これらに限定されるわけではないが、以下のステップを含んでいる。
【0311】
S501.エンコーディング対象記述子の第1圧縮表現を取得するために、エンコーディング対象記述子に対して圧縮処理を実行する。第1コンパクト表現は、少なくとも1つの第1コンパクト表現サブストリングを含んでいる。
【0312】
S502.エンコーディング対象記述子に対応している少なくとも1つの参照記述子のコンパクト表現を取得する。少なくとも1つの参照記述子のコンパクト表現は、少なくとも1つの参照記述子それぞれの少なくとも1つの第1参照コンパクト表現サブストリングを含む。
【0313】
S501およびS502の関連する説明および記述については、図5に示されている実施形態におけるS101およびS102の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0314】
S503.少なくとも1つの第1コンパクト表現サブストリングに基づいて、第2テーブルから、少なくとも1つの第1コンパクト表現サブストリングに対応している少なくとも1つの第4コンパクト表現サブストリングを取得する。
【0315】
第2テーブルは、エンコーディング対象記述子に対応している少なくとも1つの参照記述子のコンパクト表現に基づいて、確立される。
【0316】
1つの第1参照コンパクト表現サブストリングが一つの例として使用される。この実施形態における第2テーブルは、第1参照コンパクト表現サブストリング、および、少なくとも1つの第1コンパクト表現サブストリングに対応する少なくとも1つの第4コンパクト表現サブストリングを含み得る。別の言葉で言えば、1つの第1参照コンパクト表現サブストリングに基づく、1つの第2テーブルが存在している。複数の第2テーブルが、複数の第1参照コンパクト表現サブストリングに基づいて、確立されてよい。
【0317】
第2テーブルは、複数の異なる形式を有してよい。一つの例において、第2テーブルは、1次元アレイまたは多次元アレイであってよい。多次元アレイは、例えば、2次元アレイまたは3次元アレイであってよい。
【0318】
第2テーブルが1次元アレイであると仮定すると、T[k]は、第1コンパクト表現サブストリングkに対応する第4コンパクト表現サブストリングを表している。ここで、kは0からN-1であり、Nは第1コンパクト表現サブストリングの量であり、Nは1より大きい正の整数であり、そして、kは第1コンパクト表現サブストリングkである。
【0319】
T[k]は、関数を使用することによって、マッピングを通して取得され得る。一つの例において、本関数は、ランダム関数であってよい。もちろん、関数は、代替的に別の関数であってよいことが理解されるだろう。関数の具体的な形態は、本出願のこの実施形態において、特には限定されない。
【0320】
T[k]は、第1コンパクト表現サブストリングk以下であるか、または、第1コンパクト表現サブストリングk以上である。
【0321】
第2テーブル内のT[k]が第1コンパクト表現サブストリングk以下である場合に、第2テーブルを使用することによって取得された第4コンパクト表現サブストリングは、第1コンパクト表現サブストリング以下である。
【0322】
第2テーブル内のT[k]が第1コンパクト表現サブストリングk以上である場合に、第2テーブルを使用することによって取得された第4コンパクト表現サブストリングは、第1コンパクト表現サブストリング以上である。
【0323】
S504.少なくとも1つの第4コンパクト表現サブストリングに基づいて、エンコーディング対象記述子の第2コンパクト表現を取得する。
【0324】
可能な実装において、1つの第1コンパクト表現サブストリングは、1つの第4コンパクト表現サブストリングに対応している。少なくとも1つの対応する第4コンパクト表現サブストリングそれぞれは、1つの第2コンパクト表現サブストリングとして使用され、そして、取得された少なくとも1つの第2コンパクト表現サブストリングは、エンコーディング対象記述子の第2コンパクト表現である。第2テーブル内のT[k]は第1コンパクト表現サブストリングk以下であるので、第2テーブルを使用することにより第1コンパクト表現サブストリングをマッピングすることによって取得される第2コンパクト表現サブストリングは、第1コンパクト表現サブストリング以下である。従って、第2テーブルを使用することによるマッピングを通じて、第1コンパクト表現サブストリングは、第1方向に向けてマッピングされ得る。ここで、第1方向は、小さい値を有する方向であってよい(例えば、図6に示されるような水平軸の左方向)。従って、第2コンパクト表現サブストリングが小さい値である、より高い確率が存在し、第2コンパクト表現のデータ分布がより集中化され、エントロピー符号化を通じて取得される3Dマップのビットストリームのデータ量が低減される。代替的に、第2テーブル内のT[k]は第1コンパクト表現サブストリングk以上であるので、第2テーブルを使用することにより第1コンパクト表現サブストリングをマッピングすることによって取得される第2コンパクト表現サブストリングは、第1コンパクト表現サブストリング以上である。従って、第2テーブルを使用することによるマッピングを通じて、第1コンパクト表現サブストリングは、第2方向に向かってマッピングされ得る。ここで、第2方向は、大きい値を有する方向であってよい(例えば、図6に示されるような水平軸の右方向)。従って、第2コンパクト表現サブストリングが大きい値である、より高い確率が存在し、第2コンパクト表現のデータ分布がより集中化され、エントロピー符号化を通じて取得される3Dマップのビットストリームのデータ量が低減される。
【0325】
本出願のこの実施形態において、少なくとも1つの第1コンパクト表現サブストリングのシーケンスは、少なくとも1つの第2コンパクト表現サブストリングのシーケンスとは異なる。
【0326】
S505.3Dマップのビットストリームを取得するために、第2コンパクト表現をカプセル化する。
【0327】
S505の関連する説明および記述については、図5に示される実施形態におけるS104の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0328】
この実施形態においては、エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングが取得するために、エンコーディング対象記述子に対して圧縮処理が実行され、そして、少なくとも1つの第1コンパクト表現サブストリングに対応する少なくとも1つの第4コンパクト表現サブストリングが、少なくとも1つの第1コンパクト表現サブストリングに基づいて第2テーブルから取得される。第2テーブルは、少なくとも1つの参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、確立される。エンコーディング対象記述子の第2コンパクト表現は、少なくとも1つの第4コンパクト表現サブストリングに基づいて取得され、そして、3Dマップのビットストリームを取得するために、第2コンパクト表現がカプセル化される。エンコーディング対象記述子のデータ量を低減するために、最初に、圧縮処理が実行され、そして、次いで、第2テーブルを使用することによって、第1コンパクト表現が第2コンパクト表現に対してマッピングされ、その結果、コンパクト表現のデータ分布が変更され、それによって、カプセル化を通じて取得される3Dマップのビットストリームのデータ量をさらに低減し、かつ、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。
【0329】
図11は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。いくつかの実施態様において、本方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用されてもよい。この実施形態における3Dマップ解凍方法において、第2コンパクト表現は、第2テーブルを使用することによって、第1コンパクト表現に対してデマッピングされる。この実施形態は、第1コンパクト表現が少なくとも1つの第1コンパクト表現サブストリングを含み、かつ、第2コンパクト表現が少なくとも1つの第2コンパクト表現サブストリングを含む、一つの例を使用することによって説明される。この方法は、これらに限定されるわけではないが、以下のステップを含んでいる。
【0330】
S601.デコーディング対象記述子の第2コンパクト表現を取得するために、3Dマップのビットストリームをカプセル化解除する。第2コンパクト表現は、少なくとも1つの第2コンパクト表現サブストリングを含んでいる。
【0331】
3Dマップのビットストリームは、図8に示される実施形態に従って取得される3Dマップのビットストリームであってよく、または、図10に示される実施形態に従って取得される3Dマップのビットストリームであってもよい。本出願の実施形態における圧縮方法および解凍方法は、フレキシブルに組み合わされてよい。
【0332】
S602.デコーディング対象記述子に対応している少なくとも1つの参照記述子のコンパクト表現を取得する。少なくとも1つの参照記述子のコンパクト表現は、少なくとも1つの参照記述子それぞれの少なくとも1つの第1参照コンパクト表現サブストリングを含んでいる。
【0333】
S601およびS602の関連する説明および記述については、図7に示されている実施形態におけるS201およびS202の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0334】
S603.少なくとも1つの第2コンパクト表現サブストリングに基づいて、第2テーブルから、少なくとも1つの第2コンパクト表現サブストリングに対応している少なくとも1つの第1コンパクト表現サブストリングを取得する。
【0335】
第2テーブルは、1つ以上の参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、確立される。
【0336】
この実施形態における第2テーブルは、図10に示された実施形態における第2テーブルに対応するデマッピングテーブルであってよい。この実施形態においては、第2テーブルを使用することによって、マッピング前のコンパクト表現を取得し、そして、さらに、3Dマップポイントの再構成データを取得する。
【0337】
第2テーブルが1次元アレイであると仮定すると、T[k]は、第1コンパクト表現サブストリングkに対応する第4コンパクト表現サブストリングを表し、そして、1つの第2コンパクト表現サブストリングとして、第4コンパクト表現サブストリングが使用されている。k'=T[k]であると仮定すると、ここで、k'は第2コンパクト表現サブストリングを表し、この実施形態におけるデマッピングテーブルはT'[k']として表され得る。すなわち、デマッピングテーブルを使用することによって、マッピング前のコンパクト表現サブストリングが取得される。ここで、k=T'[k']であり、そして、T'[k']は参照記述子のコンパクト表現サブストリングjに基づいて取得される。
【0338】
S604.少なくとも1つの第1コンパクト表現サブストリングに基づいて、少なくとも1つの3Dマップポイントの再構築されたデータを取得する。
【0339】
S604の関連する説明および記述については、図7に示されている実施形態におけるS204の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0340】
この実施形態において、デコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングを取得するために、3Dマップのビットストリームがカプセル化解除され、デコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングは、デコーディング対象記述子の少なくとも1つの第2コンパクト表現サブストリングに基づいて第2テーブルから取得され、そして、少なくとも1つの3Dマップポイントの再構築データは、デコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングに基づいて取得される。第2テーブルは、少なくとも1つの参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングに基づいて確立される。エンコーダは、エンコーディング対象記述子のデータ量を低減するために、最初に、圧縮処理を実行し、そして、次いで、第1コンパクト表現を第2コンパクト表現に対してマッピングし、その結果、コンパクト表現のデータ分布が変更される。それによって、さらに、カプセル化を通じて取得される3Dマップのビットストリームのデータ量を低減し、そして、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。デコーダは、第2テーブルを使用することによって、カプセル化解除を通じて取得された第2コンパクト表現をデマッピングすることができ、第1コンパクト表現を取得し、そして、3Dマップポイントの再構築されたデータをさらに取得し得る。
【0341】
図12は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。いくつかの実施態様において、本方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用されてもよい。この実施形態における3Dマップ圧縮方法では、第1コンパクト表現を第2コンパクト表現に対してマッピングするために、前述の方式3が使用される。この実施形態は、第1コンパクト表現が少なくとも1つの第1コンパクト表現サブストリングを含み、第2コンパクト表現が少なくとも1つの第2コンパクト表現サブストリングを含む、一つの例を使用することによって説明される。この方法は、これらに限定されるわけではないが、以下のステップを含んでいる。
【0342】
S701.エンコーディング対象記述子の第1圧縮表現を取得するために、エンコーディング対象記述子に対して圧縮処理を実行する。第1コンパクト表現は、少なくとも1つの第1コンパクト表現サブストリングを含んでいる。
【0343】
S702.エンコーディング対象記述子に対応している少なくとも1つの参照記述子のコンパクト表現を取得する。少なくとも1つの参照記述子のコンパクト表現は、少なくとも1つの参照記述子それぞれの少なくとも1つの第1参照コンパクト表現サブストリングを含んでいる。
【0344】
S701およびS702の関連する説明および記述については、図5に示されている実施形態におけるS101およびS102の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0345】
S703.少なくとも1つの第1コンパクト表現サブストリングと、少なくとも1つの参照記述子の対応するコンパクト表現サブストリングとの排他的論理和値または差分を、少なくとも1つの第2コンパクト表現サブストリングとして使用する。
【0346】
少なくとも1つの第1コンパクト表現サブストリングがN個の第1コンパクト表現サブストリングを含むと仮定すると、N個の排他的論理和値または差分が、N個の第2コンパクト表現サブストリングとして使用される。N個の排他的論理和値または差分は、N個の第1コンパクト表現サブストリングと、少なくとも1つの参照記述子の対応するコンパクト表現サブストリングとの排他的論理和値または差分である。
【0347】
S704.少なくとも1つの第2コンパクト表現サブストリングに基づいて、エンコーディング対象記述子の第2コンパクト表現を取得する。
【0348】
エンコーディング対象記述子の第2コンパクト表現は、少なくとも1つの第2コンパクト表現サブストリングを組み合わせることによって取得される。
【0349】
S705.3Dマップのビットストリームを取得するために、第2コンパクト表現をカプセル化する。
【0350】
S705の関連する説明および記述については、図5に示される実施形態におけるS104の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0351】
この実施形態においては、エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを取得するために、圧縮処理がエンコーディング対象記述子に対して実行され、エンコーディング対象記述子の第2コンパクト表現をさらに取得するために、少なくとも1つの第2コンパクト表現サブストリングとして、少なくとも1つの第1コンパクト表現サブストリングと少なくとも1つの参照記述子の対応するコンパクト表現サブストリングとの排他的論理和値または差分が使用され、そして、3Dマップのビットストリームを取得するために、第2コンパクト表現がカプセル化される。エンコーディング対象記述子のデータ量を低減するために、最初に、圧縮処理が実行され、そして、次いで、排他的論理和値または差分を使用することによって、第1コンパクト表現が第2コンパクト表現に対してマッピングされ、その結果、コンパクト表現のデータ分布が変更され、それによって、カプセル化を通じて取得される3Dマップのビットストリームのデータ量をさらに低減し、かつ、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。
【0352】
図13は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。いくつかの実施態様において、本方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用されてもよい。本実施形態の3Dマップ解凍方法において、第2コンパクト表現は、排他的論理和値または和を使用することによって、第1コンパクト表現に対してデマッピングされる。この実施形態は、第1コンパクト表現が少なくとも1つの第1コンパクト表現サブストリングを含み、第2コンパクト表現が少なくとも1つの第2コンパクト表現サブストリングを含む、一つの例を使用することによって説明される。この方法は、これらに限定されるわけではないが、以下のステップを含んでいる。
【0353】
S801.デコーディング対象記述子の第2コンパクト表現を取得するために、3Dマップのビットストリームをカプセル化解除する。第2コンパクト表現は、少なくとも1つの第2コンパクト表現サブストリングを含んでいる。
【0354】
3Dマップのビットストリームは、図12に示される実施形態に従って取得される、3Dマップのビットストリームであり得る。
【0355】
S802.デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得する。少なくとも1つの参照記述子のコンパクト表現は、少なくとも1つの参照記述子それぞれの少なくとも1つの第1参照コンパクト表現サブストリングを含んでいる。
【0356】
S801およびS802の関連する説明および記述については、図7に示されている実施形態におけるS201およびS202の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0357】
S803.少なくとも1つの第2コンパクト表現サブストリングと、少なくとも1つの参照記述子の対応するコンパクト表現サブストリングとの排他的論理和値または和を、少なくとも1つの第1コンパクト表現サブストリングとして使用する。
【0358】
少なくとも1つの第2コンパクト表現サブストリングがN個の第2コンパクト表現サブストリングを含むと仮定すると、N個の排他的論理和値または和が、N個の第1コンパクト表現サブストリングとして使用される。N個の排他的論理和値または和は、N個の第2コンパクト表現サブストリングと、少なくとも1つの参照記述子の対応するコンパクト表現サブストリングとの排他的論理和値または和である。
【0359】
S804.少なくとも1つの第1コンパクト表現サブストリングに基づいて、デコーディング対象記述子の第1コンパクト表現を取得する。
【0360】
デコーディング対象記述子の第1コンパクト表現は、少なくとも1つの第1コンパクト表現サブストリングを組み合わせることによって取得される。
【0361】
S805.デコーディング対象記述子の第1コンパクト表現に基づいて、少なくとも1つの3Dマップポイントの再構成データを取得する。
【0362】
S805の関連する説明および記述については、図7に示されている実施形態におけるS204の詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0363】
この実施形態においては、デコーディング対象記述子の第2コンパクト表現を取得するために、3Dマップのビットストリームがカプセル化解除され、デコーディング対象記述子の第2コンパクト表現と、デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現とに基づいて、デコーディング対象記述子の第1コンパクト表現が取得され、そして、デコーディング対象記述子の第1コンパクト表現に基づいて、少なくとも1つの3Dマップポイントの再構築データが取得される。エンコーダは、エンコーディング対象記述子のデータ量を低減するために、最初に、圧縮処理を実行し、そして、次いで、第1コンパクト表現を第2コンパクト表現に対してマッピングし、その結果、コンパクト表現のデータ分布が変更され、それによって、カプセル化を通じて取得される3Dマップのビットストリームのデータ量をさらに低減し、かつ、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。デコーダは、第1コンパクト表現を取得するために、カプセル化解除を通して取得された第2コンパクト表現をデマッピングし、そして、3Dマップポイントの再構築されたデータをさらに取得し得る。
【0364】
本出願の前述の実施形態におけるエンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングは、以下の方式で取得され得る。エンコーディング対象記述子の第1コンパクト表現を取得するために、エンコーディング対象記述子に対して圧縮処理を実行すること、そして、第1コンパクト表現を1つ以上の第1コンパクト表現サブストリングへと分割すること。第1コンパクト表現は、複数の方法で分割されてよい。例えば、第1コンパクト表現は、複数のバイナリ情報のピースを含み、そして、1つ以上の連続するバイナリ情報のピースは、1つの第1コンパクト表現サブストリングであり、または、事前設定された量(例えば、2)だけ離間されたバイナリ情報は、1つの第1コンパクト表現サブストリングである。例えば、詳細については、図17の(a)および(b)を参照のこと。図17の(a)に示されるように、3つの連続するバイナリ情報のピースが1つの第1コンパクト表現サブストリングとして使用され、そして、第1コンパクト表現は、3つの第1コンパクト表現サブストリングへと分割され得る。図17(a)では、説明のために、第1コンパクト表現サブストリングの長さが同じである、一つの例を使用されていることが留意されるべきである。これは、本出願のこの実施形態において限定されない。例えば、代替的に、第1コンパクト表現サブストリングの長さは異なってよい。本出願のこの実施形態においては、実施例を1つずつ説明しない。図17の(b)に示されるように、第1コンパクト表現における第1バイナリ情報のピース、第4バイナリ情報のピース、および第7バイナリ情報のピースが、1つの第1コンパクト表現サブストリングとして使用され、第1コンパクト表現における第2バイナリ情報のピース、第5バイナリ情報のピース、および第8バイナリ情報のピースが、1つの第1コンパクト表現サブストリングとして使用され、そして、第1コンパクト表現における第3バイナリ情報のピース、第6バイナリ情報のピース、および第9バイナリ情報のピースが、1つの第1コンパクト表現サブストリングとして使用される。図17の(b)では、2つのバイナリ情報による間隔が、説明のための一つの例として使用されていることが留意されるべきである。これは、本出願のこの実施形態において限定されない。本出願のこの実施形態においては、実施例を1つずつ説明しない。
【0365】
本出願の前述の実施形態においては、エンコーディング対象記述子のデータ量を低減するために、最初に、圧縮処理が実行され、そして、次いで、第1コンパクト表現が第2コンパクト表現に対してマッピングされ、その結果、コンパクト表現のデータ分布が変更され、それによって、カプセル化を通じて取得される3Dマップのビットストリームのデータ量をさらに低減し、かつ、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。本出願は、同じ技術的効果を達成するために、以下の実施形態をさらに提供する。実施形態の詳細な説明および記述については、以下の実施形態を参照のこと。
【0366】
図18は、本出願の一つの実施形態に従った、3Dマップ圧縮方法に係る概略的なフローチャートである。いくつかの実施態様において、方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用されてもよい。この方法は、これらに限定されるわけではないが、以下のステップを含んでいる。
【0367】
S901.エンコーディング対象記述子の少なくとも1つの第1中心(center)についての情報を取得するために、エンコーディング対象記述子に対してクラスタリング処理を実行する。
【0368】
エンコーディング対象記述子の詳細な説明および記述については、図5に示される実施形態におけるS101の関連する説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0369】
少なくとも1つの第1中心についての情報は、エンコーディング対象記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で取得された中心を表している。エンコーディング対象記述子の任意のサブ特徴(subfeature)は、少なくとも1つのディメンション(dimension)を含んでいる空間における点として理解され得る。ここにおける中心は、1つ以上の点の幾何学的中心、図心、または、重心であってよい。1つの点に対して、中心は、その点またはサブ特徴自体である。複数の点について、複数の点は、エンコーディング対象記述子の複数のサブ特徴を含んでよく、または、複数の点は、エンコーディング対象記述子の1つ以上のサブ特徴およびエンコーディングされた記述子の1つ以上のサブ特徴を含んでよい。第1中心情報の任意のピースは、中心の数、中心の少なくとも1つのディメンションの値、などのうち少なくとも1つを含み得る。別の言葉で言えば、第1中心情報は、中心を表しており、そして、さらに、サブ特徴のタイプを表している。同じタイプのサブ特徴は類似しており、そして、異なるタイプのサブ特徴は異なっている。同じタイプのサブ特徴から中心までの距離の和は、サブ特徴から別のサブ特徴までの距離の和よりも小さい。
【0370】
例えば、エンコーディング対象記述子は、1つ以上のサブ特徴へと分割されてよく、そして、1つ以上の第1中心情報を取得するために、クラスタリング処理が各サブ特徴に対して実行されている。1つ以上の第1中心情報は、1つ以上のクラスタリングセンターの番号であってよい。
【0371】
S902.エンコーディング対象記述子に対応している参照記述子の少なくとも1つの第1参照中心についての情報を取得する。
【0372】
参照記述子は、3Dマップにおける少なくとも1つのエンコーディングされた3Dマップポイントに対応している。参照記述子の詳細な説明および記述については、図5に示される実施形態におけるS102の関連する説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0373】
少なくとも1つの第1参照中心(reference center)の情報は、参照記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で、取得された中心を表している。少なくとも1つの第1参照中心についての情報は、少なくとも1つの基準クラスタリング中心の数であってよい。
【0374】
S903.少なくとも1つのエンコーディング対象記述子の第1中心についての情報と、少なくとも1つの第1参照中心についての情報とに基づいて、エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得する。
【0375】
少なくとも1つのエンコーディング対象記述子の第1中心についての情報は、少なくとも1つの第1参照中心についての情報に基づいて、少なくとも1つの第2中心についての情報に対してマッピングされる。少なくとも1つの第1中心についての情報を少なくとも1つの第2中心についての情報に対してマッピングする実施態様は、前述の実施形態において、第1コンパクト表現を第2コンパクト表現に対してマッピングする実施態様と同じであり得る。具体的な実装については、前述の実施形態における詳細な説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0376】
例えば、少なくとも1つの第1中心についての情報が(C1、C2、C3)であり、かつ、少なくとも1つの第1参照中心についての情報が(PC1、PC2、PC3)である場合に、少なくとも1つの第2中心についての情報(C1'、C2'、C3')は、(PC1、PC2、PC3)および(C1、C2、C3)に基づいて取得され得る。
【0377】
S904.エンコーディング対象記述子のコンパクト表現を取得するために、エンコーディング対象記述子の少なくとも1つの第2中心についての情報に対して圧縮処理を実行する。
【0378】
圧縮処理の詳細な説明および記述については、図5に示される実施形態におけるS101を参照のこと。詳細は、本明細書では、再び説明されない。
【0379】
例えば、エンコーディング対象記述子のコンパクト表現を取得するために、少なくとも1つの第2中心(C1'、C2'、C3')についての情報に対して圧縮処理が実行されて、そして、コンパクト表現は、(D_bin_1'、D_bin_2'、D_bin_3')であってよい。
【0380】
S905.3Dマップのビットストリームを取得するために、コンパクト表現をカプセル化する。
【0381】
3Dマップのビットストリームを取得するために、コンパクト表現に対してエントロピー符号化といった処理が実行され得る。
【0382】
いくつかの実施形態において、エンコーディング対象記述子に対応する参照記述子の番号、または、参照記述子の番号とエンコーディング対象記述子の番号との間の差が、さらにカプセル化されてよく、その結果、3Dマップのビットストリームは、参照記述子の番号、または、番号間の差をさらに搬送する。解凍の最中に、参照記述子の番号または番号間の差に基づいて、参照記述子が取得され得る。そして、解凍は、参照記述子に基づいて実行される。
【0383】
この実施形態においては、エンコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するために、エンコーディング対象記述子に対してクラスタリング処理が実行され、エンコーディング対象記述子の少なくとも1つの第1中心についての情報と、少なくとも1つの第1参照中心についての情報とに基づいて、少なくとも1つのエンコーディング対象記述子の第2中心についての情報が取得され、エンコーディング対象記述子のコンパクト表現を取得するために、エンコーディング対象記述子の少なくとも1つの第2中心についての情報に対して圧縮処理が実行され、そして、3Dマップのビットストリームを取得するために、コンパクト表現がカプセル化される。クラスタリング処理が、最初に、実行され、そして、オリジナルのエンコーディング対象記述子を表すために第1中心情報が使用され、エンコーディング対象記述子のデータ量を低減し、そして、次いで、少なくとも1つの第1中心についての情報が、少なくとも1つの第2中心についての情報に対してマッピングされて、中心情報のデータ分布を変更し、それによって、圧縮処理およびカプセル化を通して取得される3Dマップのビットストリームのデータ量をさらに低減し、かつ、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。
【0384】
図19は、本出願の一つの実施形態に従った、3Dマップ解凍方法に係る概略的なフローチャートである。いくつかの実施態様において、本方法は、図1から図4fまでのいずれか1つに示された電子デバイスに適用されてよく、または、図1から図4fまでのいずれか1つに示されたサーバに適用されてもよい。この方法は、これらに限定されるわけではないが、以下のステップを含んでいる。
【0385】
S1001.デコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するために、3Dマップのビットストリームをカプセル化解除する。
【0386】
デコーディング対象記述子の詳細な説明および記述については、図7に示される実施形態におけるS201の関連する説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0387】
この実施形態における、少なくとも1つのデコーディング対象記述子の第2中心についての情報は、図18に示される実施形態における、少なくとも1つのエンコーディング対象記述子の第2中心についての情報である。
【0388】
S1002.デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報を取得する。
【0389】
参照記述子は、3Dマップ上の少なくとも1つのデコーディングされた3Dマップポイントに対応している。参照記述子の詳細な説明および記述については、図7に示された実施形態におけるS202の関連する説明および記述を参照のこと。詳細は、本明細書では、再び説明されない。
【0390】
少なくとも1つの第1参照中心についての情報は、参照記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で、取得された中心を表している。
【0391】
S1003.デコーディング対象記述子の少なくとも1つの第2中心についての情報と、デコーディング対象記述子に対応している参照記述子の少なくとも1つの第1参照中心についての情報とに基づいて、デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得する。
【0392】
デコーディング対象記述子の少なくとも1つの第2中心についての情報は、デコーディング対象記述子の少なくとも1つの第1中心についての情報にデマッピングされる。デコーディング対象記述子の少なくとも1つの第1中心についての情報は、図18に示される実施形態における、エンコーディング対象記述子の少なくとも1つの第1中心についての情報である。
【0393】
S1004.デコーディング対象記述子の少なくとも1つの第1中心についての情報に基づいて、少なくとも1つの3Dマップポイントの再構成データを取得する。
【0394】
少なくとも1つの3Dマップポイントの再構成データは、デコーディング対象記述子の少なくとも1つの第1中心についての情報に基づいて取得される。少なくとも1つの3Dマップポイントの再構成されたデータは、3Dマップに基づく位置決めのために使用され得る。
【0395】
この実施形態においては、デコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するために、3Dマップのビットストリームをカプセル化解除し、デコーディング対象記述子の少なくとも1つの第1中心についての情報が、デコーディング対象記述子の少なくとも1つの第2中心についての情報と、デコーディング対象記述子に対応している参照記述子の少なくとも1つの第1参照中心についての情報とに基づいて取得され、そして、デコーディング対象記述子の少なくとも1つの第1中心についての情報に基づいて、少なくとも1つの3Dマップポイントの再構成データが取得される。エンコーダは、最初に、クラスタリング処理を実行し、オリジナルのエンコーディング対象記述子を表すために第1中心情報を使用して、エンコーディング対象記述子のデータ量を低減し、そして、次いで、少なくとも1つの第1中心についての情報を少なくとも1つの第2中心についての情報に対してマッピングして、中心情報のデータ分布を変更し、それによって、圧縮処理およびカプセル化を通じて取得される3Dマップのビットストリームのデータ量をさらに低減し、かつ、3Dマップのビットストリームを送信するために必要とされるリソースオーバーヘッドを低減している。デコーダは、少なくとも1つの第1中心についての情報を取得するために、カプセル化解除を通じて取得された少なくとも1つの第2中心についての情報をデマッピングし、そして、3Dマップポイントの再構成されたデータをさらに取得し得る。
【0396】
上記は、添付図面を参照して、本出願の実施形態における3Dマップ圧縮方法および3Dマップ解凍方法を詳細に説明している。以下では、図14から図16までを参照して、本出願の実施形態における3Dマップ圧縮装置および3Dマップ解凍装置について説明する。3Dマップ圧縮装置は、本出願の実施形態における3Dマップ圧縮方法を実行することができ、そして、3Dマップ解凍装置は、本出願の実施形態における3Dマップ解凍方法を実行することができることが理解されるべきである。不必要な繰り返しを避けるために、以下で本出願の実施形態における3Dマップ圧縮装置および3Dマップ解凍装置を説明するとき、繰り返される説明は、適宜省略される。
【0397】
図14は、本出願の一つの実施形態に従った、3Dマップ圧縮装置の構造に係る概略図である。図14に示されるように、3Dマップ圧縮装置1400は、圧縮処理モジュール1401、マッピングモジュール1402、および、カプセル化モジュール1403を含み得る。
【0398】
圧縮処理モジュール1401は、エンコーディング対象記述子の第1コンパクト表現を取得するために、エンコーディング対象記述子に対して圧縮処理を実行するように構成されている。ここで、エンコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している。
【0399】
マッピングモジュール1402は、エンコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得するように構成されている。ここで、少なくとも1つの参照記述子は、3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応している。マッピングモジュール1402は、さらに、エンコーディング対象記述子の第1コンパクト表現と少なくとも1つの参照記述子のコンパクト表現とに基づいて、エンコーディング対象記述子の第2コンパクト表現を取得するように構成されている。カプセル化モジュール1403は、3Dマップのビットストリームを取得するために、第2コンパクト表現をカプセル化するように構成されている。
【0400】
いくつかの実施形態において、本装置は、さらに、送信モジュール1404を含み得る。送信モジュール1404は、電子デバイスによって送信された3Dマップ要求情報を受信し、かつ、3Dマップ要求情報に応答して、電子デバイスに対して、3Dマップ要求情報に対応する3Dマップのビットストリームを送信するように構成され、もしくは、送信モジュール1404は、3Dマップのビットストリームをサーバに送信するように構成されている。
【0401】
いくつかの実施形態において、マッピングモジュール1402は、エンコーディング対象記述子の第1コンパクト表現および少なくとも1つの参照記述子のコンパクト表現に基づいて、第1テーブルを検索することによって、エンコーディング対象記述子の第2コンパクト表現を取得するように構成されている。
【0402】
いくつかの実施形態において、第1テーブルは、少なくとも1つのエンコーディングされたコンパクト表現サブストリング、および、少なくとも1つの第2参照コンパクト表現サブストリングに対応する少なくとも1つの第3コンパクト表現サブストリングを含んでいる。ここで、エンコーディング対象記述子の第1コンパクト表現は、エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、少なくとも1つのエンコーディングされたコンパクト表現サブストリングは、少なくとも1つの第1コンパクト表現サブストリングを含み、そして、少なくとも1つの第2参照コンパクト表現サブストリングは、少なくとも1つの参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングを含んでいる。マッピングモジュール1402は、エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリング、および、エンコーディング対象記述子に対応している参照記述子の少なくとも1つの第1参照コンパクト表現サブストリングに基づいて、第1テーブルから、少なくとも1つの第1コンパクト表現サブストリング、および、少なくとも1つの第1参照コンパクト表現サブストリングに対応している少なくとも1つの第3コンパクト表現サブストリングを取得し、かつ、少なくとも1つの第1コンパクト表現サブストリング、および、少なくとも1つの第1参照コンパクト表現サブストリングに対応している少なくとも1つの第3コンパクト表現サブストリングに基づいて、エンコーディング対象記述子の第2コンパクト表現を取得するように構成されている。
【0403】
いくつかの実施形態において、マッピングモジュール1402は、エンコーディング対象記述子の第1コンパクト表現に基づいて第2テーブルをルックアップ(looking up)することによって、エンコーディング対象記述子の第2コンパクト表現を取得するように構成されている。ここで、第2テーブルは、少なくとも1つの参照記述子のコンパクト表現に基づいて確立される。
【0404】
いくつかの実施形態において、エンコーディング対象記述子の第1コンパクト表現は、エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングを含み、少なくとも1つの参照記述子のコンパクト表現は、少なくとも1つの第1参照コンパクト表現サブストリングを含み、そして、第2テーブルは、少なくとも1つの第1参照コンパクト表現サブストリング、および、なくとも1つの第1コンパクト表現サブストリングに対応する少なくとも1つの第4コンパクト表現サブストリングを含んでいる。マッピングモジュール1402は、エンコーディング対象記述子の少なくとも1つの第1コンパクト表現サブストリングに基づいて、第2テーブルから、少なくとも1つの第1コンパクト表現サブストリングに対応する少なくとも1つの第4コンパクト表現サブストリングを取得するように構成され、ここで、第2テーブルは、少なくとも1つの第1参照コンパクト表現サブストリングに基づいて確立されており、かつ、少なくとも1つの第1コンパクト表現サブストリングに対応する少なくとも1つの第4コンパクト表現サブストリングに基づいて、エンコーディング対象記述子の第2コンパクト表現を取得するように構成されている。
【0405】
いくつかの実施形態において、マッピングモジュール1402は、少なくとも1つの参照記述子のコンパクト表現と、エンコーディング対象記述子の第1コンパクト表現との排他的論理和値または差分を、エンコーディング対象記述子の第2コンパクト表現として使用するように構成されている。
【0406】
3Dマップ圧縮装置1400は、図5図8図10、または図12に示された実施形態における3Dマップ圧縮方法を実行し得ることが留意されるべきである。具体的な実施原理および技術的効果については、前述の方法の実施形態の詳細な説明を参照のこと。詳細は、本明細書では、再び説明されない。
【0407】
本出願の実施形態は、さらに、別の3Dマップ圧縮装置を提供する。本3次元マップ圧縮装置は、図14におけるものと同一の構造を有し得る。
【0408】
マッピングモジュール1402は、エンコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するために、エンコーディング対象記述子に対してクラスタリング処理を実行するように構成されている。ここで、エンコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応しており、そして、少なくとも1つの第1中心についての情報は、エンコーディング対象記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で取得された中心を表している。マッピングモジュール1402は、さらに、エンコーディング対象記述子に対応している参照記述子の少なくとも1つの第1参照中心についての情報を取得するように構成され、ここで、参照記述子は、3Dマップ上の少なくとも1つのエンコーディングされた3Dマップポイントに対応しており、少なくとも1つの第1参照中心についての情報は、参照記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で取得された中心を表しており、かつ、エンコーディング対象記述子の少なくとも1つの第1中心についての情報および少なくとも1つの第1参照中心についての情報に基づいて、エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するように構成されている。
【0409】
圧縮処理モジュール1401は、エンコーディング対象記述子の圧縮表現を取得するために、エンコーディング対象記述子の少なくとも1つの第2中心についての情報に対して圧縮処理を実行するように構成されている。
【0410】
カプセル化モジュール1403は、3Dマップのビットストリームを取得するために、コンパクト表現をカプセル化するように構成されている。
【0411】
可能な設計において、本装置は、さらに、送信モジュール1404を含み得る。送信モジュール1404は、電子デバイスによって送信された3Dマップ要求情報を受信し、かつ、3Dマップ要求情報に応答して、電子デバイスに対して、3Dマップ要求情報に対応する3Dマップのビットストリームを送信するように構成されており、もしくは、送信モジュール1404は、サーバに対して3Dマップのビットストリームを送信するように構成されている。
【0412】
可能な設計において、マッピングモジュール1402は、特に、エンコーディング対象記述子の少なくとも1つの第1中心についての情報および少なくとも1つの第1参照中心についての情報に基づいて、第1テーブルをルックアップすることによって、エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するように構成されている。
【0413】
可能な設計において、第1テーブルは、少なくとも1つのコーディング中心(coding center)についての情報および少なくとも1つの第2参照中心についての情報に対応している、少なくとも1つの第3中心についての情報を含んでいる。ここで、少なくともコーディング中心についての情報は、エンコーディング対象記述子の少なくとも1つの第1中心についての情報を含み、そして、少なくとも1つの第2参照中心についての情報は、少なくとも1つの第1参照中心についての情報を含んでいる。マッピングモジュール1402は、特に、エンコーディング対象記述子の少なくとも1つの第1中心についての情報および少なくとも1つの第1参照中心についての情報に基づいて、第1テーブルから、少なくとも1つの第1中心についての情報および少なくとも1つの第1参照中心についての情報に対応している少なくとも1つの第3中心についての情報を取得するように構成され、かつ、少なくとも1つの第3中心についての情報を、エンコーディング対象記述子の少なくとも1つの第2中心についての情報として使用するように構成されている。
【0414】
可能な設計において、第1テーブルは多次元アレイであり、そして、多次元アレイにおける各要素は、少なくともコーディング中心についての情報または少なくとも1つの第2参照中心についての情報に対応している。
【0415】
可能な設計において、マッピングモジュール1402は、特に、エンコーディング対象記述子の少なくとも1つの第1中心についての情報に基づいて第2テーブルをルックアップすることによって、エンコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するように特に構成されている。ここで、第2テーブルは、少なくとも1つの第1参照中心についての情報に基づいて確立されている。
【0416】
可能な設計において、第2テーブルは、少なくとも1つの第1参照中心についての情報、および、エンコーディング対象記述子の少なくとも1つの第1中心についての情報に対応する少なくとも1つの第4中心についての情報を含んでいる。マッピングモジュール1402は、特に、エンコーディング対象記述子の少なくとも1つの第1中心についての情報に基づいて第2テーブルから、少なくとも1つの第1中心についての情報に対応する少なくとも1つの第4中心についての情報を取得するように構成され、かつ、少なくとも1つの第1中心についての情報に対応する少なくとも1つの第4中心についての情報を、エンコーディング対象記述子の少なくとも1つの第2中心についての情報として使用するように構成されている。
【0417】
可能な設計において、第2テーブルは、少なくとも1つのディメンションを有するアレイであり、少そして、なくとも1つのディメンションを有するアレイにおける各要素は、少なくとも1つの第1中心についての情報に対応している。
【0418】
可能な設計において、マッピングモジュール1402は、特に、エンコーディング対象記述子の少なくとも1つの第1中心についての情報と、少なくとも1つの第1参照中心についての情報との排他的論理和値または差分を、エンコーディング対象記述子の少なくとも1つの第2中心についての情報として使用するように構成されている。
【0419】
3Dマップ圧縮装置は、図18に示される実施形態における3Dマップ圧縮方法を実行し得ることが留意されるべきである。具体的な実施原理および技術的効果については、前述の方法の実施形態の詳細な説明を参照のこと。詳細は、本明細書では、再び説明されない。
【0420】
図15は、本出願の一つの実施形態に従った3Dマップ解凍装置の構造に係る概略図である。図15に示されるように、3Dマップ解凍装置1500は、カプセル化解除モジュール1501、デマッピングモジュール1502、および、再構成モジュール1503を含み得る。
【0421】
カプセル化解除モジュール1501は、デコーディング対象記述子の第2コンパクト表現を取得するために、3Dマップのビットストリームをカプセル化解除するように構成されており、ここで、デコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している。デマッピングモジュール1502は、デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現を取得するように構成されており、ここで、少なくとも1つの参照記述子は、3Dマップ上の少なくとも1つのデコーディングされた3Dマップポイントに対応している。デマッピングモジュール1502は、さらに、デコーディング対象記述子の第2コンパクト表現およびデコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現に基づいて、デコーディング対象記述子の第1コンパクト表現を取得するように構成されている。再構成モジュール1503は、デコーディング対象記述子の第1コンパクト表現に基づいて、少なくとも1つの3Dマップポイントの再構成データを取得するように構成されている。
【0422】
いくつかの実施形態において、本装置は、さらに、3Dマップ要求情報を送信し、かつ、3Dマップ要求情報に対応する3Dマップのビットストリームを受信するように構成された、送信モジュール1504を含み得る。
【0423】
いくつかの実施形態において、デマッピングモジュール1502は、デコーディング対象記述子の第2コンパクト表現およびデコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現に基づいて、第1テーブルをルックアップすることによって、デコーディング対象記述子の第1コンパクト表現を取得するように構成されている。
【0424】
いくつかの実施形態において、デマッピングモジュール1502は、デコーディング対象記述子の第2コンパクト表現に基づいて、第2テーブルをルックアップすることによって、デコーディング対象記述子の第1コンパクト表現を取得するように構成されている。ここで、第2テーブルは、デコーディング対象記述子に対応する少なくとも1つの参照記述子のコンパクト表現に基づいて、確立される。
【0425】
いくつかの実施形態において、デマッピングモジュール1502は、少なくとも1つの参照記述子のコンパクト表現と、デコーディング対象記述子の第2コンパクト表現との排他的論理和値または和を、デコーディング対象記述子の第1コンパクト表現として使用するように構成されている。
【0426】
3Dマップ解凍装置1500は、図7図9図11、または図13に示された実施形態における3Dマップ解凍方法を実行し得ることが留意されるべきである。具体的な実施原理および技術的効果については、前述の方法の実施形態の詳細な説明を参照のこと。詳細は、本明細書では、再び説明されない。
【0427】
本出願の一つの実施形態は、さらに、別の3Dマップ解凍装置を提供する。3次元マップ解凍装置は、図15におけるものと同一の構造を有し得る。
【0428】
カプセル化解除モジュール1501は、デコーディング対象記述子の少なくとも1つの第2中心についての情報を取得するために、3Dマップのビットストリームをカプセル化解除するように構成されている。ここでデコーディング対象記述子は、3Dマップ上の少なくとも1つの3Dマップポイントに対応している。
【0429】
デマッピングモジュール1502は、デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報を取得するように構成され、ここで、参照記述子は、3Dマップ上の少なくとも1つのデコーディングされた3Dマップポイントに対応し、そして、少なくとも1つの第1参照中心についての情報は、参照記述子の少なくとも1つのサブ特徴に対してクラスタリング処理が実行された後で取得された中心を表しており、かつ、デコーディング対象記述子の少なくとも1つの第2中心についての情報、および、デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて、デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するように構成されている。
【0430】
再構成モジュール1503は、デコーディング対象記述子の少なくとも1つの第1中心についての情報に基づいて、少なくとも1つの3Dマップポイントの再構成データを取得するように構成されている。
【0431】
可能な設計において、本装置は、さらに、3Dマップ要求情報を送信し、かつ、3Dマップ要求情報に対応する3Dマップのビットストリームを受信するように構成され、もしくは、電子デバイスによって送信された3Dマップのビットストリームを受信するように構成された、送信モジュール1504を含み得る。
【0432】
可能な設計において、デマッピングモジュール1502は、特に、デコーディング対象記述子の少なくとも1つの第2中心についての情報、および、デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて、第1テーブルをルックアップすることによって、デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するように構成されている。
【0433】
可能な設計において、デマッピングモジュール1502は、デコーディング対象記述子の少なくとも1つの第2中心についての情報に基づいて、第2テーブルをルックアップすることによって、デコーディング対象記述子の少なくとも1つの第1中心についての情報を取得するように特に構成されている。ここで、第2テーブルは、デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報に基づいて確立されている。
【0434】
可能な設計において、デマッピングモジュール1502は、特に、デコーディング対象記述子の少なくとも1つの第2中心についての情報と、デコーディング対象記述子に対応する参照記述子の少なくとも1つの第1参照中心についての情報との排他的論理和値または和を、デコーディング対象記述子の少なくとも1つの第1中心についての情報として使用するように構成されている。
【0435】
3Dマップ解凍装置は、図19に示される実施形態における3Dマップ解凍方法を実行し得ることが留意されるべきである。具体的な実施原理および技術的効果については、前述の方法の実施形態の詳細な説明を参照のこと。詳細は、本明細書では、再び説明されない。
【0436】
図16は、本出願の一つの実施形態に従った、デコーディング装置1600に係る概略ブロック図である。取得装置1600は、プロセッサ1601、メモリ1602、および、バスシステム1603を含み得る。プロセッサ1601およびメモリ1602は、バスシステム1603を使用することによって接続されている。メモリ1602は、命令を保管するように構成されている。プロセッサ1601は、メモリ1602に保管された命令を実行して、本出願に記載された様々な3Dマップ圧縮方法または3Dマップ解凍方法を実行するように構成されている。繰り返しを避けるために、詳細は、本明細書では、再び説明されない。
【0437】
本出願のこの実施形態におけるプロセッサ1601は、中央処理装置(central processing unit、CPU)であってよい。代替的に、プロセッサ1601は、別の汎用プロセッサ、DSP、ASIC、FPGAまたは別のプログラマブル論理デバイス、個別ゲートまたはトランジスタ論理デバイス、個別ハードウェアコンポーネント、などであり得る。汎用プロセッサは、マイクロプロセッサであってよく、または、プロセッサは、任意の従来のプロセッサ、などであってよい。
【0438】
メモリ1602は、ROMデバイスまたはRAMデバイスを含み得る。他の任意の適切なタイプのストレージデバイスも、また、メモリ1602として使用され得る。メモリ1602は、バス1603を使用することによりプロセッサ1601によってアクセスされる、コードおよびデータ16021を含み得る。メモリ1602は、さらに、オペレーティングシステム16023およびアプリケーションプログラム16022を含み得る。アプリケーションプログラム16022は、プロセッサ1601が本出願に記載された3Dマップ圧縮または解凍方法を実行することを可能にする少なくとも1つのプログラムを含んでいる。例えば、アプリケーションプログラム16022は、アプリケーション1からNまでを含み、本出願に記載された3Dマップ圧縮または解凍方法を実行する3Dマップ圧縮または解凍アプリケーション(略して、3Dマップデコーディングアプリケーションと呼ばれる)をさらに含み得る。
【0439】
データバスに加えて、バスシステム1603は、さらに、電力バス、制御バス、ステータス信号バス、など含み得る。しかしながら、説明を明確にするために、図においては、様々なバスがバスシステム1603として示されている。
【0440】
任意的に、デコーディング装置1600は、さらに、ディスプレイ1604といった、1つ以上の出力デバイスを含み得る。一つの例において、ディスプレイ1604は、タッチディスプレイであってよく、そして、タッチディスプレイは、ディスプレイ、および、タッチ入力を動作可能に感知するタッチユニットを組み合わせている。ディスプレイ1604は、バス1603を使用することにより、プロセッサ1601に接続され得る。
【0441】
デコーディング装置1600は、この出願における3Dマップ圧縮方法を実行し、または、この出願における3Dマップ解凍方法を実行し得ることに留意すべきである。
【0442】
前述の実施形態において言及されたプロセッサは、集積回路チップであってよく、そして、信号処理能力を有している。実装プロセスにおいて、前述の方法の実施形態のステップは、プロセッサ内のハードウェア集積論理回路によって、または、ソフトウェアの形態の命令を使用することによって、完了され得る。プロセッサは、汎用プロセッサ、デジタル信号プロセッサ(digital signal processor、DSP)、特定用途向けIC(application-specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)または別のプログラマブル論理デバイス、個別ゲートまたはトランジスタ論理デバイス、もしくは、個別ハードウェアコンポーネントであってよい。汎用プロセッサは、マイクロプロセッサであってよく、または、プロセッサは、任意の従来のプロセッサなどであってもよい。本出願の実施形態において開示される方法のステップは、ハードウェアエンコーディングプロセッサによって直接実行され、かつ、完了されてよく、または、コーディングプロセッサ内のハードウェアとソフトウェアモジュールとの組合せによって実行され、かつ、完了されてよい。ソフトウェアモジュールは、当技術分野における成熟したストレージ媒体、例えば、ランダムアクセスメモリ、フラッシュメモリ、読取り専用メモリ、プログラマブル読取り専用メモリ、電気的消去可能プログラマブルメモリ、またはレジスタに配置され得る。ストレージ媒体は、メモリ内に配置されている。プロセッサは、メモリ内の情報を読み取り、そして、プロセッサのハードウェアと組み合わせて、前述の方法のステップを完了する。
【0443】
前述の実施形態において言及されたメモリは、揮発性メモリ、または不揮発性メモリであってよく、または、揮発性メモリおよび不揮発性メモリの両方を含んでもよい。不揮発性メモリは、読み出し専用メモリ(read-only memory、ROM)、プログラマブル読み出し専用メモリ(programmable ROM、PROM)、消去可能プログラマブル読み出し専用メモリ(erasable PROM、EPROM)、および、電気的消去可能プログラマブル読み出し専用メモリ(electrically EPROM、EEPROM)、または、フラッシュメモリであってよい。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(random access memory、RAM)であってよい。限定的な説明ではなく、実施例を通して、多くの形態のRAM、例えば、スタティックランダムアクセスメモリ(static RAM、SRAM)、ダイナミックランダムアクセスメモリ(dynamic RAM、DRAM)、同期型ダイナミックランダムアクセスメモリ(synchronous DRAM、SDRAM)、ダブルデータレート同期型ダイナミックランダムアクセスメモリ(double data rate SDRAM、DDRSDRAM)、拡張同期型ダイナミックランダムアクセスメモリ(enhanced SDRAM、ESDRAM)、同期リンクダイナミックランダムアクセスメモリ(synchlink DRAM、SLDRAM)、および、ダイレクトラムバスランダムアクセスメモリ(direct rambus RAM、DRRAM)が使用され得る。本明細書において説明されたシステムおよび方法におけるメモリは、これに限定されるわけではないが、これら及び任意の他の適切なタイプのメモリを含んでいる。
【0444】
当業者であれば、本明細書に開示された実施形態で説明される実施例と組み合わせて、ユニットおよびアルゴリズムステップが、電子ハードウェア、または、コンピュータソフトウェアと電子ハードウェアとの組み合わせによって実装され得ることを認識することがきる。機能がハードウェアまたはソフトウェアのいずれによって実行されるかは、技術的ソリューションの特定のアプリケーションおよび設計制約に依存している。当業者であれば、各特定のアプリケーションについて説明された機能を実装するために異なる方法を使用し得るが、その実装が本出願の範囲を超えるものと考えられるべきではない。
【0445】
当業者であれば、説明を便利かつ簡潔にするために、前述のシステム、装置、およびユニットの詳細な動作プロセスについては、前述の方法の実施形態における対応するプロセスを参照することを明確に理解し得る。そして、詳細は、本明細書では、再び説明されない。
【0446】
本出願において提供されるいくつかの実施形態において、開示されるシステム、装置、および方法は、他の方式で実装され得ることが理解されるべきである。例えば、前述の装置の実施形態は、単なる例に過ぎない。例えば、ユニットの分割は、単なる論理的な機能分割に過ぎず、そして、実際の実装の最中には他の分割であってよい。例えば、複数のユニットまたはコンポーネントは、別のシステムへと組み合わされ、または、統合されてよく、もしくは、いくつかの機能は無視され、または、実行されなくてよい。加えて、表示され、もしくは、論じられた相互結合、または直接結合、または通信接続は、いくつかのインターフェイスを使用することによって、実装され得る。装置またはユニット間の間接的な結合または通信接続は、電子的、機械的、または他の形態で実装され得る。
【0447】
別個の部分として説明されたユニットは、物理的に別個であっても、なくてもよく、そして、ユニットとして表示された部分は、物理的ユニットであっても、なくてもよく、そして、1つの位置に配置されてよく、または、複数のネットワークユニット上に分散されてよい。ユニットの一部または全部は、実施形態におけるソリューションの目的を達成するために、実際の要件に応じて選択され得る。
【0448】
加えて、本出願の実施形態における機能ユニットは、1つの処理ユニットへと統合され得る。ユニットそれぞれは、物理的に単独で存在してよく、または、2つ以上のユニットは、1つのユニットへと統合されている。
【0449】
機能が、ソフトウェア機能ユニットの形態で実装され、そして、独立した製品として販売または使用される場合、機能は、コンピュータ可読記憶媒体に保管され得る。そうした理解に基づいて、本出願の技術的ソリューションが本質的に、または、従来技術に寄与する部分、もしくは、技術的ソリューションのいくつかは、ソフトウェア製品の形態で実装され得る。コンピュータソフトウェア製品は、ストレージ媒体に保管され、そして、コンピュータデバイス(パーソナルコンピュータ、サーバ、ネットワークデバイス、など)に、本出願の実施形態において説明された方法のステップの全てまたは一部を実行するように命令するためのいくつかの命令を含んでいる。ストレージ媒体は、プログラムコードを保管することができる任意の媒体、例えば、USBフラッシュドライブ、リムーバブルハードディスク、リードオンリメモリ(read-only memory、ROM)、ランダムアクセスメモリ(random access memory、RAM)、磁気ディスク、または、光ディスクを含んでいる。
【0450】
前述の説明は、単に本出願の特定の実施形態に過ぎないが、本出願の保護範囲は、それに限定されるものではない。本出願において開示される技術的範囲内で当業者によって容易に考え出される任意の変形または置換は、本出願の保護範囲内に入るものとする。従って、本出願の保護範囲は、特許請求の範囲の保護範囲に従うものである。
図1
図2
図3
図4a
図4b
図4c
図4d
図4e
図4f
図4g
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19