ポイントクラウド等の符号化データを実際の装置又はサービスにおいて使用する際には、所望の空間位置又はオブジェクトなどに対するランダムアクセスが必須となるが、これまで、三次元の符号化データにおけるランダムアクセスは機能として存在せず、そのための符号化方法も存在しなかった。
本開示では、符号化三次元データにおいてランダムアクセス機能を提供できる三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置又は三次元データ復号装置について説明する。
本開示の一態様に係る三次元データ符号化方法は、三次元データを符号化する三次元データ符号化方法であって、前記三次元データを、ランダムアクセス単位であって、各々が三次元座標に対応付けられている第1処理単位に分割する分割ステップと、複数の前記第1処理単位の各々を符号化することで符号化データを生成する符号化ステップとを含む。
これによれば、第1処理単位ごとのランダムアクセスが可能となる。このように、当該三次元データ符号化方法は、符号化三次元データにおいてランダムアクセス機能を提供できる。
例えば、前記三次元データ符号化方法は、前記複数の第1処理単位と、前記複数の第1処理単位の各々に対応付けられている三次元座標とを示す第1情報を生成する生成ステップを含み、前記符号化データは、前記第1情報を含んでもよい。
例えば、前記第1情報は、さらに、前記複数の第1処理単位の各々に対応付けられている、オブジェクト、時刻及びデータ格納先のうち少なくとも一つを示してもよい。
例えば、前記分割ステップでは、さらに、前記第1処理単位を複数の第2処理単位に分割し、前記符号化ステップでは、前記複数の第2処理単位の各々を符号化してもよい。
例えば、前記符号化ステップでは、処理対象の第1処理単位に含まれる処理対象の第2処理単位を、前記処理対象の第1処理単位に含まれる他の第2処理単位を参照して符号化してもよい。
これによれば、他の第2処理単位を参照することで符号化効率を向上できる。
例えば、前記符号化ステップでは、前記処理対象の第2処理単位のタイプとして、他の第2処理単位を参照しない第1タイプ、他の一つの第2処理単位を参照する第2タイプ、及び他の二つの第2処理単位を参照する第3タイプのうちいずれかを選択し、選択したタイプに従い前記処理対象の第2処理単位を符号化してもよい。
例えば、前記符号化ステップでは、前記三次元データに含まれるオブジェクトの数又は粗密さに応じて、前記第1タイプを選択する頻度を変更してもよい。
これによれば、トレードオフの関係にあるランダムアクセス性と符号化効率とを適切に設定できる。
例えば、前記符号化ステップでは、前記三次元データに含まれるオブジェクト又は動的オブジェクトの数又は粗密さに応じて、前記第1処理単位のサイズを決定してもよい。
これによれば、トレードオフの関係にあるランダムアクセス性と符号化効率とを適切に設定できる。
例えば、前記第1処理単位は、予め定められた方向に空間分割され、各々が1以上の前記第2処理単位を含む複数のレイヤを含み、前記符号化ステップでは、前記第2処理単位を、当該第2処理単位と同一レイヤ又は当該第2処理単位より下層のレイヤに含まれる前記第2処理単位を参照して符号化してもよい。
これによれば、例えば、システムにおいて重要なレイヤのランダムアクセス性を向上できるとともに、符号化効率の低下を抑制できる。
例えば、前記分割ステップでは、静的オブジェクトのみを含む第2処理単位と、動的オブジェクトのみを含む第2処理単位とを異なる第1処理単位に割り当ててもよい。
これによれば、動的オブジェクトと静的オブジェクトとの制御を容易に行える。
例えば、前記符号化ステップでは、複数の動的オブジェクトを個別に符号化し、前記複数の動的オブジェクトの符号化データは、静的オブジェクトのみを含む第2処理単位に対応付けられてもよい。
これによれば、動的オブジェクトと静的オブジェクトとの制御を容易に行える。
例えば、前記分割ステップでは、さらに、前記第2処理単位を複数の第3処理単位に分割し、前記符号化ステップでは、前記複数の第3処理単位の各々を符号化してもよい。
例えば、前記第3処理単位は、位置情報が対応付けられる最小単位である1以上のボクセルを含んでもよい。
例えば、前記第2処理単位は、センサで得られた情報から導出された特徴点群を含んでもよい。
例えば、前記符号化データは、前記複数の第1処理単位の符号化順を示す情報を含んでもよい。
例えば、前記符号化データは、前記複数の第1処理単位のサイズを示す情報を含んでもよい。
例えば、前記符号化ステップでは、前記複数の第1処理単位を並列に符号化してもよい。
また、本開示の一態様に係る三次元データ復号方法は、三次元データを復号する三次元データ復号方法であって、ランダムアクセス単位であって、各々が三次元座標に対応付けられている第1処理単位の符号化データの各々を復号することで前記第1処理単位の三次元データを生成する復号ステップを含む。
これによれば、第1処理単位ごとのランダムアクセスが可能となる。このように、当該三次元データ復号方法は、符号化三次元データにおいてランダムアクセス機能を提供できる。
また、本開示の一態様に係る三次元データ符号化装置は、三次元データを符号化する三次元データ符号化装置であって、前記三次元データを、ランダムアクセス単位であって、各々が三次元座標に対応付けられている第1処理単位に分割する分割部と、複数の前記第1処理単位の各々を符号化することで符号化データを生成する符号化部とを含んでもよい。
これによれば、第1処理単位ごとのランダムアクセスが可能となる。このように、当該三次元データ符号化装置は、符号化三次元データにおいてランダムアクセス機能を提供できる。
また、本開示の一態様に係る三次元データ復号装置は、三次元データを復号する三次元データ復号装置であって、ランダムアクセス単位であって、各々が三次元座標に対応付けられている第1処理単位の符号化データの各々を復号することで前記第1処理単位の三次元データを生成する復号部を含んでもよい。
これによれば、第1処理単位ごとのランダムアクセスが可能となる。このように、当該三次元データ復号装置は、符号化三次元データにおいてランダムアクセス機能を提供できる。
なお、本開示は空間を分割して符号化する構成により、空間の量子化、予測等を可能とし、必ずしもランダムアクセスを行わない場合であっても有効である。
また、本開示の一態様に係る三次元データ符号化方法は、第1三次元データから特徴量が閾値以上の第2三次元データを抽出する抽出ステップと、前記第2三次元データを符号化することで第1符号化三次元データを生成する第1符号化ステップとを含む。
これによれば、当該三次元データ符号化方法は、特徴量が閾値以上のデータを符号化した第1符号化三次元データを生成する。これにより、第1三次元データをそのまま符号化する場合に比べて符号化三次元データのデータ量を削減できる。よって、当該三次元データ符号化方法は、伝送するデータ量を削減できる。
例えば、前記三次元データ符号化方法は、さらに、前記第1三次元データを符号化することで第2符号化三次元データを生成する第2符号化ステップを含んでもよい。
これによれば、当該三次元データ符号化方法は、例えば、使用用途等に応じて、第1符号化三次元データと第2符号化三次元データとを選択的に伝送できる。
例えば、前記第2三次元データは、第1符号化方法により符号化され、前記第1三次元データは、前記第1符号化方法とは異なる第2符号化方法により符号化されてもよい。
これによれば、当該三次元データ符号化方法は、第1三次元データと第2三次元データとにそれぞれ適した符号化方法を用いることができる。
例えば、前記第1符号化方法では、前記第2符号化方法よりもイントラ予測及びインター予測のうちインター予測が優先されてもよい。
これによれば、当該三次元データ符号化方法は、隣接するデータ間の相関が低くなりやすい第2三次元データに対して、インター予測の優先度を上げることができる。
例えば、前記第1符号化方法と前記第2符号化方法とでは、三次元位置の表現手法が異なってもよい。
これによれば、当該三次元データ符号化方法は、データ数が異なる三次元データに対して、より適した三次元位置の表現手法を用いることができる。
例えば、前記第1符号化三次元データ及び前記第2符号化三次元データの少なくとも一方は、当該符号化三次元データが前記第1三次元データを符号化することで得られた符号化三次元データであるか、前記第1三次元データのうちの一部を符号化することで得られた符号化三次元データであるかを示す識別子を含んでもよい。
これによれば、復号装置は、取得した符号化三次元データが第1符号化三次元データであるか第2符号化三次元データであるかを容易に判定できる。
例えば、前記第1符号化ステップでは、前記第1符号化三次元データのデータ量が前記第2符号化三次元データのデータ量より小さくなるように前記第2三次元データを符号化してもよい。
これによれば、当該三次元データ符号化方法は、第1符号化三次元データのデータ量を第2符号化三次元データのデータ量より小さくできる。
例えば、前記抽出ステップでは、さらに、前記第1三次元データから予め定められた属性を有する物体に対応するデータを前記第2三次元データとして抽出してもよい。
これによれば、当該三次元データ符号化方法は、復号装置で必要となるデータを含む第1符号化三次元データを生成できる。
例えば、前記三次元データ符号化方法は、さらに、クライアントの状態に応じて、前記第1符号化三次元データ及び前記第2符号化三次元データの一方を前記クライアントに送信する送信ステップを含んでもよい。
これによれば、当該三次元データ符号化方法は、クライアントの状態に応じて適切なデータを送信できる。
例えば、前記クライアントの状態は、前記クライアントの通信状況、又は前記クライアントの移動速度を含んでもよい。
例えば、前記三次元データ符号化方法は、さらに、クライアントの要求に応じて、前記第1符号化三次元データ及び前記第2符号化三次元データの一方を前記クライアントに送信する送信ステップを含んでもよい。
これによれば、当該三次元データ符号化方法は、クライアントの要求に応じて適切なデータを送信できる。
また、本開示の一態様に係る三次元データ復号方法は、第1三次元データから抽出された特徴量が閾値以上の第2三次元データが符号化されることで得られた第1符号化三次元データを第1復号方法により復号する第1復号ステップと、前記第1三次元データが符号化されることで得られた第2符号化三次元データを、前記第1復号方法とは異なる第2復号方法により復号する第2復号ステップとを含む。
これによれば、当該三次元データ復号方法は、特徴量が閾値以上のデータを符号化した第1符号化三次元データと、第2符号化三次元データとを、例えば、使用用途等に応じて選択的に受信できる。これにより、当該三次元データ復号方法は、伝送するデータ量を削減できる。さらに、当該三次元データ復号方法は、第1三次元データと第2三次元データとにそれぞれ適した復号方法を用いることができる。
例えば、前記第1復号方法では、前記第2復号方法よりもイントラ予測及びインター予測のうちインター予測が優先されてもよい。
これによれば、当該三次元データ復号方法は、隣接するデータ間の相関が低くなりやすい第2三次元データに対して、インター予測の優先度を上げることができる。
例えば、前記第1復号方法と前記第2復号方法とでは、三次元位置の表現手法が異なってもよい。
これによれば、当該三次元データ復号方法は、データ数が異なる三次元データに対して、より適した三次元位置の表現手法を用いることができる。
例えば、前記第1符号化三次元データ及び前記第2符号化三次元データの少なくとも一方は、当該符号化三次元データが前記第1三次元データを符号化することで得られた符号化三次元データであるか、前記第1三次元データのうちの一部を符号化することで得られた符号化三次元データであるかを示す識別子を含み、前記識別子を参照して、前記第1符号化三次元データ及び前記第2符号化三次元データを識別してもよい。
これによれば、当該三次元データ復号方法は、取得した符号化三次元データが第1符号化三次元データであるか第2符号化三次元データであるかを容易に判定できる。
例えば、前記三次元データ復号方法は、さらに、クライアントの状態をサーバに通知する通知ステップと、前記クライアントの状態に応じて、前記サーバから送信された前記第1符号化三次元データ及び前記第2符号化三次元データの一方を受信する受信ステップとを含んでもよい。
これによれば、当該三次元データ復号方法は、クライアントの状態に応じて適切なデータを受信できる。
例えば、前記クライアントの状態は、前記クライアントの通信状況、又は前記クライアントの移動速度を含んでもよい。
例えば、前記三次元データ復号方法は、さらに、前記第1符号化三次元データ及び前記第2符号化三次元データの一方をサーバに要求する要求ステップと、前記要求に応じて、前記サーバから送信された前記第1符号化三次元データ及び前記第2符号化三次元データの一方を受信する受信ステップを含んでもよい。
これによれば、当該三次元データ復号方法は、用途に応じた適切なデータを受信できる。
また、本開示の一態様に係る三次元データ符号化装置は、第1三次元データから特徴量が閾値以上の第2三次元データを抽出する抽出部と、前記第2三次元データを符号化することで第1符号化三次元データを生成する第1符号化部とを備える。
これによれば、当該三次元データ符号化装置は、特徴量が閾値以上のデータを符号化した第1符号化三次元データを生成する。これにより、第1三次元データをそのまま符号化する場合に比べてデータ量を削減できる。よって、当該三次元データ符号化装置は、伝送するデータ量を削減できる。
また、本開示の一態様に係る三次元データ復号装置は、第1三次元データから抽出された特徴量が閾値以上の第2三次元データが符号化されることで得られた第1符号化三次元データを第1復号方法により復号する第1復号部と、前記第1三次元データが符号化されることで得られた第2符号化三次元データを、前記第1復号方法とは異なる第2復号方法により復号する第2復号部とを備える。
これによれば、当該三次元データ復号装置は、特徴量が閾値以上のデータを符号化した第1符号化三次元データと、第2符号化三次元データとを、例えば、使用用途等に応じて選択的に受信できる。これにより、当該三次元データ復号装置は、伝送するデータ量を削減できる。さらに、当該三次元データ復号装置は、第1三次元データと第2三次元データとにそれぞれ適した復号方法を用いることができる。
また、本開示の一態様に係る三次元データ作成方法は、センサで検知した情報から第1三次元データを作成する作成ステップと、第2三次元データが符号化された符号化三次元データを受信する受信ステップと、受信した前記符号化三次元データを復号することで前記第2三次元データを取得する復号ステップと、前記第1三次元データと前記第2三次元データとを合成することで第3三次元データを作成する合成ステップとを含む。
これによれば、当該三次元データ作成方法は、作成した第1三次元データと、受信した第2三次元データとを用いて、詳細な第3三次元データを作成できる。
例えば、前記合成ステップでは、前記第1三次元データと前記第2三次元データを合成することで、前記第1三次元データ及び前記第2三次元データよりも密度が高い第3三次元データを作成してもよい。
例えば、前記第2三次元データは、第4三次元データから特徴量が閾値以上のデータが抽出されることで生成された三次元データであってもよい。
これによれば、当該三次元データ作成方法は、伝送される三次元データのデータ量を削減できる。
例えば、前記三次元データ作成方法は、さらに、前記符号化三次元データの送信元である送信装置を探索する探索ステップを含み、前記受信ステップでは、探索された前記送信装置から前記符号化三次元データを受信してもよい。
これによれば、当該三次元データ作成方法は、例えば、必要な三次元データを所有する送信装置を探索により特定できる。
例えば、前記三次元データ作成方法は、さらに、三次元データを要求する三次元空間の範囲である要求範囲を決定する決定ステップと、前記要求範囲を示す情報を前記送信装置に送信する送信ステップとを含み、前記第2三次元データは、前記要求範囲の三次元データを含んでもよい。
これによれば、当該三次元データ作成方法は、必要な三次元データを受信できるとともに、伝送される三次元データのデータ量を削減できる。
例えば、前記決定ステップでは、前記センサで検知できないオクルージョン領域を含む空間範囲を前記要求範囲に決定してもよい。
本開示の一態様に係る三次元データ送信方法は、センサで検知した情報から第5三次元データを作成する作成ステップと、前記第5三次元データの一部を抽出することで第6三次元データを作成する抽出ステップと、前記第6三次元データを符号化することで符号化三次元データを生成する符号化ステップと、前記符号化三次元データを送信する送信ステップとを含む。
これによれば、当該三次元データ送信方法は、自身が作成した三次元データを他の装置に送信できるとともに、伝送される三次元データのデータ量を削減できる。
例えば、前記作成ステップでは、前記センサで検知した情報から第7三次元データを作成し、前記第7三次元データから特徴量が閾値以上のデータを抽出することで前記第5三次元データを作成してもよい。
これによれば、当該三次元データ送信方法は、伝送される三次元データのデータ量を削減できる。
例えば、前記三次元データ送信方法は、さらに、受信装置から、三次元データを要求する三次元空間の範囲である要求範囲を示す情報を受信する受信ステップを含み、前記抽出ステップでは、前記第5三次元データから、前記要求範囲の三次元データを抽出することで前記第6三次元データを作成し、前記送信ステップでは、前記受信装置に前記符号化三次元データを送信してもよい。
これによれば、当該三次元データ送信方法は、伝送される三次元データのデータ量を削減できる。
また、本開示の一態様に係る三次元データ作成装置は、センサで検知した情報から第1三次元データを作成する作成部と、第2三次元データが符号化された符号化三次元データを受信する受信部と、受信した前記符号化三次元データを復号することで前記第2三次元データを取得する復号部と、前記第1三次元データと前記第2三次元データとを合成することで第3三次元データを作成する合成部とを含む。
これによれば、当該三次元データ作成装置は、作成した第1三次元データと、受信した第2三次元データとを用いて、詳細な第3三次元データを作成できる。
また、本開示の一態様に係る三次元データ送信装置は、センサで検知した情報から第5三次元データを作成する作成部と、前記第5三次元データの一部を抽出することで第6三次元データを作成する抽出部と、前記第6三次元データを符号化することで符号化三次元データを生成する符号化部と、前記符号化三次元データを送信する送信部とを含む。
これによれば、当該三次元データ送信装置は、自身が作成した三次元データを他の装置に送信できるとともに、伝送される三次元データのデータ量を削減できる。
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
以下、実施の形態について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
(実施の形態1)
まず、本実施の形態に係る符号化三次元データ(以下、符号化データとも記す)のデータ構造について説明する。図1は、本実施の形態に係る符号化三次元データの構成を示す図である。
本実施の形態では、三次元空間は、動画像の符号化におけるピクチャに相当するスペース(SPC)に分割され、スペースを単位として三次元データが符号化される。スペースは、さらに、動画像符号化におけるマクロブロックなどに相当するボリューム(VLM)に分割され、VLMを単位として予測及び変換が行われる。ボリュームは、位置座標が対応付けられる最小単位である複数のボクセル(VXL)を含む。なお、予測とは、二次元画像で行われる予測と同様に、他の処理単位を参照し、処理対象の処理単位と類似する予測三次元データを生成し、当該予測三次元データと処理対象の処理単位との差分を符号化することである。また、この予測は、同一時刻の他の予測単位を参照する空間予測のみならず、異なる時刻の予測単位を参照する時間予測を含む。
例えば、三次元データ符号化装置(以下、符号化装置とも記す)は、ポイントクラウドなどの点群データにより表現される三次元空間を符号化する際には、ボクセルのサイズに応じて、点群の各点、又は、ボクセル内に含まれる複数点をまとめて符号化する。ボクセルを細分化すれば点群の三次元形状を高精度に表現でき、ボクセルのサイズを大きくすれば点群の三次元形状をおおまかに表現できる。
なお、以下では、三次元データがポイントクラウドである場合を例に説明を行うが、三次元データはポイントクラウドに限定されず、任意の形式の三次元データでよい。
また、階層構造のボクセルを用いてもよい。この場合、n次の階層では、n−1次以下の階層(n次の階層の下層)にサンプル点が存在するかどうかを順に示してもよい。例えば、n次の階層のみを復号する際において、n−1次以下の階層にサンプル点が存在する場合は、n次階層のボクセルの中心にサンプル点が存在するとみなして復号できる。
また、符号化装置は、点群データを、距離センサ、ステレオカメラ、単眼カメラ、ジャイロ、又は慣性センサなどを用いて取得する。
スペースは、動画像の符号化と同様に、単独で復号可能なイントラ・スペース(I−SPC)、単方向の参照のみ可能なプレディクティブ・スペース(P−SPC)、及び、双方向の参照が可能なバイディレクショナル・スペース(B−SPC)を含む少なくとも3つの予測構造のいずれかに分類される。また、スペースは復号時刻と表示時刻との2種類の時刻情報を有する。
また、図1に示すように、複数のスペースを含む処理単位として、ランダムアクセス単位であるGOS(Group Of Space)が存在する。さらに、複数のGOSを含む処理単位としてワールド(WLD)が存在する。
ワールドが占める空間領域は、GPS又は緯度及び経度情報などにより、地球上の絶対位置と対応付けられる。この位置情報はメタ情報として格納される。なお、メタ情報は、符号化データに含まれてもよいし、符号化データとは別に伝送されてもよい。
また、GOS内では、全てのSPCが三次元的に隣接してもよいし、他のSPCと三次元的に隣接しないSPCが存在してもよい。
なお、以下では、GOS、SPC又はVLM等の処理単位に含まれる三次元データに対する、符号化、復号又は参照等の処理を、単に、処理単位を符号化、復号又は参照する等とも記す。また、処理単位に含まれる三次元データは、例えば、三次元座標等の空間位置と、色情報等の特性値との少なくとも一つの組を含む。
次に、GOSにおけるSPCの予測構造について説明する。同一GOS内の複数のSPC、又は、同一SPC内の複数のVLMは、互いに異なる空間を占めるが、同じ時刻情報(復号時刻及び表示時刻)を持つ。
また、GOS内で復号順で先頭となるSPCはI−SPCである。また、GOSにはクローズドGOSとオープンGOSとの2種類が存在する。クローズドGOSは、先頭I−SPCから復号開始する際に、GOS内の全てのSPCを復号できるGOSである。オープンGOSでは、GOS内で先頭I−SPCよりも表示時刻が前となる一部のSPCは異なるGOSを参照しており、当該GOSのみで復号を行うことができない。
なお、地図情報などの符号化データでは、WLDを符号化順とは逆方向から復号することがあり、GOS間に依存性があると逆方向再生が困難である。よって、このような場合には、基本的にはクローズドGOSが用いられる。
また、GOSは、高さ方向にレイヤ構造を有し、下のレイヤのSPCから順に符号化又は復号が行われる。
図2はGOSの最下層レイヤに属するSPC間の予測構造の一例を示す図である。図3はレイヤ間の予測構造の一例を示す図である。
GOS内には1つ以上のI−SPCが存在する。三次元空間内には、ヒト、動物、車、自転車、信号、又はランドマークとなる建物などのオブジェクトが存在するが、特にサイズが小さいオブジェクトはI−SPCとして符号化すると有効である。例えば、三次元データ復号装置(以下、復号装置とも記す)は、GOSを低処理量又は高速に復号する際には、GOS内のI−SPCのみを復号する。
また、符号化装置は、WLD内のオブジェクトの粗密さに応じてI−SPCの符号化間隔又は出現頻度を切替えてもよい。
また、図3に示す構成において、符号化装置又は復号装置は、複数のレイヤを下層(レイヤ1)から順に符号化又は復号する。これにより、例えば自動走行車などにとってより情報量の多い地面付近のデータの優先度を上げることができる。
なお、ドローンなどで用いられる符号化データでは、GOS内において高さ方向で上のレイヤのSPCから順に符号化又は復号してもよい。
また、符号化装置又は復号装置は、復号装置が荒くGOSを把握でき、徐々に解像度を上げるようにできるように、複数のレイヤを符号化又は復号してもよい。例えば、符号化装置又は復号装置は、レイヤ3、8、1、9…の順に符号化又は復号してもよい。
次に、静的オブジェクト及び動的オブジェクトの扱い方について説明する。
三次元空間には、建物又は道路など静的なオブジェクト又はシーン(以降、まとめて静的オブジェクトと呼ぶ)と、車又はヒトなどの動的なオブジェクト(以降、動的オブジェクトと呼ぶ)とが存在する。オブジェクトの検出は、ポイントクラウドのデータ、又は、ステレオカメラなどのカメラ映像などから特徴点を抽出するなどして、別途行われる。ここでは、動的オブジェクトの符号化方法の例について説明する。
第1方法は、静的オブジェクトと動的オブジェクトとを区別せずに符号化する方法である。第2方法は、静的オブジェクトと動的オブジェクトとを識別情報により区別する方法である。
例えば、GOSが識別単位として用いられる。この場合、静的オブジェクトを構成するSPCを含むGOSと、動的オブジェクトを構成するSPCを含むGOSとが、符号化データ内、又は符号化データとは別途格納される識別情報により区別される。
または、SPCが識別単位として用いられてもよい。この場合、静的オブジェクトを構成するVLMを含むSPCと、動的オブジェクトを構成するVLMを含むSPCとが、上記識別情報により区別される。
または、VLM或いはVXLが識別単位として用いられてもよい。この場合、静的オブジェクトを含むVLM又はVXLと、動的オブジェクトを含むVLM又はVXLとが上記識別情報により区別される。
また、符号化装置は、動的オブジェクトを1以上のVLM又はSPCとして符号化し、静的オブジェクトを含むVLM又はSPCと、動的オブジェクトを含むSPCとを、互いに異なるGOSとして符号化してもよい。また、符号化装置は、動的オブジェクトのサイズに応じてGOSのサイズが可変となる場合には、GOSのサイズをメタ情報として別途格納する。
また、符号化装置は、静的オブジェクトと動的オブジェクトとを互いに独立に符号化し、静的オブジェクトから構成されるワールドに対して、動的オブジェクトを重畳してもよい。このとき、動的オブジェクトは1以上のSPCから構成され、各SPCは、当該SPCが重畳される静的オブジェクトを構成する1以上のSPCに対応付けられる。なお、動的オブジェクトをSPCではなく、1以上のVLM又はVXLにより表現してもよい。
また、符号化装置は、静的オブジェクトと動的オブジェクトとを互いに異なるストリームとして符号化してもよい。
また、符号化装置は、動的オブジェクトを構成する1以上のSPCを含むGOSを生成してもよい。さらに、符号化装置は、動的オブジェクトを含むGOS(GOS_M)と、GOS_Mの空間領域に対応する静的オブジェクトのGOSとを同一サイズ(同一の空間領域を占める)に設定してもよい。これにより、GOS単位で重畳処理を行うことができる。
動的オブジェクトを構成するP−SPC又はB−SPCは、符号化済みの異なるGOSに含まれるSPCを参照してもよい。動的オブジェクトの位置が時間的に変化し、同一の動的オブジェクトが異なる時刻のGOSとして符号化されるケースでは、GOSを跨いだ参照が圧縮率の観点から有効となる。
また、符号化データの用途に応じて、上記の第1方法と第2方法とを切替えてもよい。例えば、符号化三次元データを地図として用いる場合は、動的オブジェクトを分離できることが望ましいため、符号化装置は、第2方法を用いる。一方、符号化装置は、コンサート又はスポーツなどのイベントの三次元データを符号化する場合に、動的オブジェクトを分離する必要がなければ、第1方法を用いる。
また、GOS又はSPCの復号時刻と表示時刻とは符号化データ内、又はメタ情報として格納できる。また、静的オブジェクトの時刻情報は全て同一としてもよい。このとき、実際の復号時刻と表示時刻は、復号装置が決定するものとしてもよい。あるいは、復号時刻として、GOS、あるいは、SPC毎に異なる値が付与され、表示時刻として全て同一の値が付与されてもよい。さらに、HEVCのHRD(Hypothetical Reference Decoder)など動画像符号化におけるデコーダモデルのように、デコーダが所定のサイズのバッファを有し、復号時刻に従って所定のビットレートでビットストリームを読み込めば破綻なく復号できることを保証するモデルを導入してもよい。
次に、ワールド内におけるGOSの配置について説明する。ワールドにおける三次元空間の座標は、互いに直交する3本の座標軸(x軸、y軸、z軸)により表現される。GOSの符号化順に所定のルールを設けることで、空間的に隣接するGOSが符号化データ内で連続するように符号化を行える。例えば、図4に示す例では、xz平面内のGOSを連続的に符号化する。あるxz平面内の全てのGOSの符号化終了後にy軸の値を更新する。すなわち、符号化が進むにつれて、ワールドはy軸方向に伸びていく。また、GOSのインデックス番号は符号化順に設定される。
ここで、ワールドの三次元空間は、GPS、或いは緯度及び経度などの地理的な絶対座標と1対1に対応付けておく。或いは、予め設定した基準位置からの相対位置により三次元空間が表現されてもよい。三次元空間のx軸、y軸、z軸の方向は、緯度及び経度などに基づいて決定される方向ベクトルとして表現され、当該方向ベクトルはメタ情報として符号化データと共に格納される。
また、GOSのサイズは固定とし、符号化装置は、当該サイズをメタ情報として格納する。また、GOSのサイズは、例えば、都市部か否か、又は、室内か外かなどに応じて切替えられてもよい。つまり、GOSのサイズは、情報としての価値があるオブジェクトの量又は性質に応じて切替えられてもよい。あるいは、符号化装置は、同一ワールド内において、オブジェクトの密度などに応じて、GOSのサイズ、又は、GOS内のI−SPCの間隔を適応的に切替えてもよい。例えば、符号化装置は、オブジェクトの密度が高いほど、GOSのサイズを小さくし、GOS内のI−SPCの間隔を短くする。
図5の例では、3番目から10番目のGOSの領域では、オブジェクトの密度が高いため、細かい粒度でのランダムアクセスを実現するために、GOSが細分化されている。なお、7番目から10番目のGOSは、それぞれ、3番目から6番目のGOSの裏側に存在する。
次に、本実施の形態に係る三次元データ符号化装置の構成及び動作の流れを説明する。図6は、本実施の形態に係る三次元データ符号化装置100のブロック図である。図7は、三次元データ符号化装置100の動作例を示すフローチャートである。
図6に示す三次元データ符号化装置100は、三次元データ111を符号化することで符号化三次元データ112を生成する。この三次元データ符号化装置100は、取得部101と、符号化領域決定部102と、分割部103と、符号化部104とを備える。
図7に示すように、まず、取得部101は、点群データである三次元データ111を取得する(S101)。
次に、符号化領域決定部102は、取得した点群データに対応する空間領域のうち、符号化対象の領域を決定する(S102)。例えば、符号化領域決定部102は、ユーザ又は車両の位置に応じて、当該位置の周辺の空間領域を符号化対象の領域に決定する。
次に、分割部103は、符号化対象の領域に含まれる点群データを、各処理単位に分割する。ここで処理単位とは、上述したGOS及びSPC等である。また、この符号化対象の領域は、例えば、上述したワールドに対応する。具体的には、分割部103は、予め設定したGOSのサイズ、又は、動的オブジェクトの有無或いはサイズに基づいて、点群データを処理単位に分割する(S103)。また、分割部103は、各GOSにおいて符号化順で先頭となるSPCの開始位置を決定する。
次に、符号化部104は、各GOS内の複数のSPCを順次符号化することで符号化三次元データ112を生成する(S104)。
なお、ここでは、符号化対象の領域をGOS及びSPCに分割した後に、各GOSを符号化する例を示したが、処理の手順は上記に限らない。例えば、一つのGOSの構成を決定した後にそのGOSを符号化し、その後、次のGOSの構成を決定する等の手順を用いてもよい。
このように、三次元データ符号化装置100は、三次元データ111を符号化することで符号化三次元データ112を生成する。具体的には、三次元データ符号化装置100は、三次元データを、ランダムアクセス単位であって、各々が三次元座標に対応付けられている第1処理単位(GOS)に分割し、第1処理単位(GOS)を複数の第2処理単位(SPC)に分割し、第2処理単位(SPC)を複数の第3処理単位(VLM)に分割する。また、第3処理単位(VLM)は、位置情報が対応付けられる最小単位である1以上のボクセル(VXL)を含む。
次に、三次元データ符号化装置100は、複数の第1処理単位(GOS)の各々を符号化することで符号化三次元データ112を生成する。具体的には、三次元データ符号化装置100は、各第1処理単位(GOS)において、複数の第2処理単位(SPC)の各々を符号化する。また、三次元データ符号化装置100は、各第2処理単位(SPC)において、複数の第3処理単位(VLM)の各々を符号化する。
例えば、三次元データ符号化装置100は、処理対象の第1処理単位(GOS)がクローズドGOSである場合には、処理対象の第1処理単位(GOS)に含まれる処理対象の第2処理単位(SPC)を、処理対象の第1処理単位(GOS)に含まれる他の第2処理単位(SPC)を参照して符号化する。つまり、三次元データ符号化装置100は、処理対象の第1処理単位(GOS)とは異なる第1処理単位(GOS)に含まれる第2処理単位(SPC)を参照しない。
一方、処理対象の第1処理単位(GOS)がオープンGOSである場合には、処理対象の第1処理単位(GOS)に含まれる処理対象の第2処理単位(SPC)を、処理対象の第1処理単位(GOS)に含まれる他の第2処理単位(SPC)、又は、処理対象の第1処理単位(GOS)とは異なる第1処理単位(GOS)に含まれる第2処理単位(SPC)を参照して符号化する。
また、三次元データ符号化装置100は、処理対象の第2処理単位(SPC)のタイプとして、他の第2処理単位(SPC)を参照しない第1タイプ(I−SPC)、他の一つの第2処理単位(SPC)を参照する第2タイプ(P−SPC)、及び他の二つの第2処理単位(SPC)を参照する第3タイプのうちいずれかを選択し、選択したタイプに従い処理対象の第2処理単位(SPC)を符号化する。
次に、本実施の形態に係る三次元データ復号装置の構成及び動作の流れを説明する。図8は、本実施の形態に係る三次元データ復号装置200のブロックのブロック図である。図9は、三次元データ復号装置200の動作例を示すフローチャートである。
図8に示す三次元データ復号装置200は、符号化三次元データ211を復号することで復号三次元データ212を生成する。ここで、符号化三次元データ211は、例えば、三次元データ符号化装置100で生成された符号化三次元データ112である。この三次元データ復号装置200は、取得部201と、復号開始GOS決定部202と、復号SPC決定部203と、復号部204とを備える。
まず、取得部201は、符号化三次元データ211を取得する(S201)。次に、復号開始GOS決定部202は、復号対象のGOSに決定する(S202)。具体的には、復号開始GOS決定部202は、符号化三次元データ211内、又は符号化三次元データとは別に格納されたメタ情報を参照して、復号を開始する空間位置、オブジェクト、又は、時刻に対応するSPCを含むGOSを復号対象のGOSに決定する。
次に、復号SPC決定部203は、GOS内で復号するSPCのタイプ(I、P、B)を決定する(S203)。例えば、復号SPC決定部203は、(1)I−SPCのみを復号するか、(2)I−SPC及びP−SPCを復号するか、(3)全てのタイプを復号するかを決定する。なお、全てのSPCを復号するなど、予め復号するSPCのタイプが決定している場合は、本ステップは行われなくてもよい。
次に、復号部204は、GOS内で復号順(符号化順と同一)で先頭となるSPCが符号化三次元データ211内で開始するアドレス位置を取得し、当該アドレス位置から先頭SPCの符号化データを取得し、当該先頭SPCから順に各SPCを順次復号する(S204)。なお、上記アドレス位置は、メタ情報等に格納されている。
このように、三次元データ復号装置200は、復号三次元データ212を復号する。具体的には、三次元データ復号装置200は、ランダムアクセス単位であって、各々が三次元座標に対応付けられている第1処理単位(GOS)の符号化三次元データ211の各々を復号することで第1処理単位(GOS)の復号三次元データ212を生成する。より具体的には、三次元データ復号装置200は、各第1処理単位(GOS)において、複数の第2処理単位(SPC)の各々を復号する。また、三次元データ復号装置200は、各第2処理単位(SPC)において、複数の第3処理単位(VLM)の各々を復号する。
以下、ランダムアクセス用のメタ情報について説明する。このメタ情報は、三次元データ符号化装置100で生成され、符号化三次元データ112(211)に含まれる。
従来の二次元の動画像におけるランダムアクセスでは、指定した時刻の近傍となるランダムアクセス単位の先頭フレームから復号を開始していた。一方、ワールドにおいては、時刻に加えて、空間(座標又はオブジェクトなど)に対するランダムアクセスが想定される。
そこで、少なくとも座標、オブジェクト、及び時刻の3つの要素へのランダムアクセスを実現するために、各要素とGOSのインデックス番号とを対応付けるテーブルを用意する。さらに、GOSのインデックス番号とGOSの先頭となるI−SPCのアドレスを対応付ける。図10は、メタ情報に含まれるテーブルの一例を示す図である。なお、図10に示す全てのテーブルが用いられる必要はなく、少なくとも一つのテーブルが用いられればよい。
以下、一例として、座標を起点とするランダムアクセスについて説明する。座標(x2、y2、z2)にアクセスする際には、まず、座標−GOSテーブルを参照して、座標が(x2、y2、z2)である地点は2番目のGOSに含まれることが分かる。次に、GOSアドレステーブルを参照し、2番目のGOSにおける先頭のI−SPCのアドレスがaddr(2)であることが分かるため、復号部204は、このアドレスからデータを取得して復号を開始する。
なお、アドレスは、論理フォーマットにおけるアドレスであっても、HDD又はメモリの物理アドレスであってもよい。また、アドレスの代わりにファイルセグメントを特定する情報が用いられてもよい。例えば、ファイルセグメントは、1つ以上のGOSなどをセグメント化した単位である。
また、オブジェクトが複数のGOSに跨る場合には、オブジェクト−GOSテーブルにおいて、オブジェクトが属するGOSを複数示してもよい。当該複数のGOSがクローズドGOSであれば、符号化装置及び復号装置は、並列に符号化又は復号を行うことができる。一方、当該複数のGOSがオープンGOSであれば、複数のGOSが互いに参照しあうことでより圧縮効率を高めることができる。
オブジェクトの例としては、ヒト、動物、車、自転車、信号、又はランドマークとなる建物などがある。例えば、三次元データ符号化装置100は、ワールドの符号化時に三次元のポイントクラウドなどからオブジェクトに特有の特徴点を抽出し、当該特徴点に基づきオブジェクトを検出し、検出したオブジェクトをランダムアクセスポイントとして設定できる。
このように、三次元データ符号化装置100は、複数の第1処理単位(GOS)と、複数の第1処理単位(GOS)の各々に対応付けられている三次元座標とを示す第1情報を生成する。また、符号化三次元データ112(211)は、この第1情報を含む。また、第1情報は、さらに、複数の第1処理単位(GOS)の各々に対応付けられている、オブジェクト、時刻及びデータ格納先のうち少なくとも一つを示す。
三次元データ復号装置200は、符号化三次元データ211から第1情報を取得し、第1情報を用いて、指定された三次元座標、オブジェクト又は時刻に対応する第1処理単位の符号化三次元データ211を特定し、当該符号化三次元データ211を復号する。
以下、その他のメタ情報の例について説明する。ランダムアクセス用のメタ情報の他に、三次元データ符号化装置100は、以下のようなメタ情報を生成及び格納してもよい。また、三次元データ復号装置200は、このメタ情報を復号時に利用してもよい。
三次元データを地図情報として用いる場合などには、用途に応じてプロファイルが規定され、当該プロファイルを示す情報がメタ情報に含まれてもよい。例えば、市街地或いは郊外向け、又は、飛行物体向けのプロファイルが規定され、それぞれにおいてワールド、SPC又はVLMの最大又は最小サイズなどが定義される。例えば、市街地向けでは、郊外向けよりも詳細な情報が必要なため、VLMの最小サイズが小さく設定される。
メタ情報は、オブジェクトの種類を示すタグ値を含んでもよい。このタグ値はオブジェクトを構成するVLM、SPC、又はGOSと対応付けられる。例えば、タグ値「0」は「人」を示し、タグ値「1」は「車」を示し、タグ値「2」は「信号機」を示す、などオブジェクトの種類ごとにタグ値が設定されてもよい。または、オブジェクトの種類が判定しにくい又は判定する必要がない場合はサイズ、又は、動的オブジェクトか静的オブジェクトかなどの性質を示すタグ値が用いられてもよい。
また、メタ情報は、ワールドが占める空間領域の範囲を示す情報を含んでもよい。
また、メタ情報は、符号化データのストリーム全体、又は、GOS内のSPCなど、複数のSPCに共通のヘッダ情報として、SPC又はVXLのサイズを格納してもよい。
また、メタ情報は、ポイントクラウドの生成に用いた距離センサ或いはカメラなどの識別情報、又は、ポイントクラウド内の点群の位置精度を示す情報を含んでもよい。
また、メタ情報は、ワールドが静的オブジェクトのみから構成されるか、動的オブジェクトを含むかを示す情報を含んでもよい。
以下、本実施の形態の変形例について説明する。
符号化装置又は復号装置は、互いに異なる2以上のSPC又はGOSを並列で符号化又は復号してもよい。並列で符号化又は復号するGOSは、GOSの空間位置を示すメタ情報などに基づいて決定できる。
三次元データを車又は飛行物体などが移動する際の空間地図として用いる、又はこのような空間地図を生成するケースなどでは、符号化装置又は復号装置は、GPS、経路情報、又はズーム倍率などに基づいて特定される空間に含まれるGOS又はSPCを符号化又は復号してもよい。
また、復号装置は、自己位置又は走行経路に近い空間から順に復号を行ってもよい。符号化装置又は復号装置は、自己位置又は走行経路から遠い空間を、近い空間に比べて優先度を落として符号化又は復号してもよい。ここで、優先度を落とすとは、処理順を下げる、解像度を下げる(間引いて処理する)、又は、画質を下げる(符号化効率を上げる。例えば、量子化ステップを大きくする。)等である。
また、復号装置は、空間内で階層的に符号化されている符号化データを復号する際は、低階層のみを復号してもよい。
また、復号装置は、地図のズーム倍率又は用途に応じて、低階層から優先的に復号してもよい。
また、車又はロボットの自律走行時に行う自己位置推定又は物体認識などの用途では、符号化装置又は復号装置は、路面から特定高さ以内の領域(認識を行う領域)以外は解像度を落として符号化又は復号を行ってもよい。
また、符号化装置は、室内と室外との空間形状を表現するポイントクラウドをそれぞれ個別に符号化してもよい。例えば、室内を表現するGOS(室内GOS)と室外を表現するGOS(室外GOS)とを分けることで、復号装置は、符号化データを利用する際に、視点位置に応じて復号するGOSを選択できる。
また、符号化装置は、座標が近い室内GOSと室外GOSとを、符号化ストリーム内で隣接するように符号化してもよい。例えば、符号化装置は、両者の識別子を対応付け、符号化ストリーム内、又は別途格納されるメタ情報内に対応付けた識別子を示す情報を格納する。これにより、復号装置は、メタ情報内の情報を参照して、座標が近い室内GOSと室外GOSとを識別できる。
また、符号化装置は、室内GOSと室外GOSとで、GOS又はSPCのサイズを切替えてもよい。例えば、符号化装置は、室内では室外に比べてGOSのサイズを小さく設定する。また、符号化装置は、室内GOSと室外GOSとで、ポイントクラウドから特徴点を抽出する際の精度、又はオブジェクト検出の精度などを変更してもよい。
また、符号化装置は、復号装置が動的オブジェクトを静的オブジェクトと区別して表示するための情報を符号化データに付加してもよい。これにより、復号装置は、動的オブジェクトと赤枠又は説明用の文字などとを合わせて表示できる。なお、復号装置は、動的オブジェクトの代わりに赤枠又は説明用の文字のみを表示してもよい。また、復号装置は、より細かいオブジェクト種別を表示してもよい。例えば、車には赤枠が用いられ、ヒトには黄色枠が用いられてもよい。
また、符号化装置又は復号装置は、動的オブジェクトの出現頻度、又は、静的オブジェクトと動的オブジェクトとの割合などに応じて、動的オブジェクトと静的オブジェクトとを異なるSPC又はGOSとして符号化又は復号するかどうかを決定してもよい。例えば、動的オブジェクトの出現頻度又は割合が閾値を超える場合には、動的オブジェクトと静的オブジェクトとが混在するSPC又はGOSが許容され、動的オブジェクトの出現頻度又は割合が閾値を超えない場合には、動的オブジェクトと静的オブジェクトとが混在するSPC又はGOSが許容されない。
動的オブジェクトをポイントクラウドではなく、カメラの二次元画像情報から検出する際には、符号化装置は、検出結果を識別するための情報(枠又は文字など)とオブジェクト位置とを別途取得し、これらの情報を三次元の符号化データの一部として符号化してもよい。この場合、復号装置は、静的オブジェクトの復号結果に対して、動的オブジェクトを示す補助情報(枠又は文字)を重畳して表示する。
また、符号化装置は、静的オブジェクトの形状の複雑さなどに応じて、SPCにおけるVXL又はVLMの粗密さを変更してもよい。例えば、符号化装置は、静的オブジェクトの形状が複雑なぼど、VXL又はVLMを密に設定する。さらに、符号化装置は、空間位置又は色情報を量子化する際の量子化ステップなどをVXL又はVLMの粗密さに応じて決定してもよい。例えば、符号化装置は、VXL又はVLMが密なほど量子化ステップを小さく設定する。
以上のように、本実施の形態に係る符号化装置又は復号装置は、座標情報を有するスペース単位で空間の符号化又は復号を行う。
また、符号化装置及び復号装置は、スペース内において、ボリューム単位で符号化又は復号を行う。ボリュームは、位置情報が対応付けられる最小単位であるボクセルを含む。
また、符号化装置及び復号装置は、座標、オブジェクト、及び時間等を含む空間情報の各要素とGOPとを対応付けたテーブル、又は各要素間を対応付けたテーブルにより任意の要素間を対応付けて符号化又は復号を行う。また、復号装置は、選択された要素の値を用いて座標を判定し、座標からボリューム、ボクセル又はスペースを特定し、当該ボリューム又はボクセルを含むスペース、又は特定されたスペースを復号する。
また、符号化装置は、特徴点抽出又はオブジェクト認識により、要素により選択可能なボリューム、ボクセル又はスペースを判定し、ランダムアクセス可能なボリューム、ボクセル又はスペースとして符号化する。
スペースは、当該スペース単体で符号化又は復号可能なI−SPCと、任意の1つの処理済みスペースを参照して符号化又は復号されるP−SPCと、任意の二つの処理済みスペースを参照して符号化又は復号されるB−SPCとの3種類のタイプに分類される。
1以上のボリュームが、静的オブジェクト又は動的なオブジェクトに対応する。静的オブジェクトを含むスペースと動的オブジェクトを含むスペースとは互いに異なるGOSとして符号化又は復号される。つまり、静的オブジェクトを含むSPCと、動的オブジェクトを含むSPCとが異なるGOSに割り当てられる。
動的オブジェクトはオブジェクトごとに符号化又は復号され、静的オブジェクトを含む1以上のスペースに対応付けられる。つまり、複数の動的オブジェクトは個別に符号化され、得られた複数の動的オブジェクトの符号化データは、静的オブジェクトを含むSPCに対応付けられる。
符号化装置及び復号装置は、GOS内のI−SPCの優先度を上げて、符号化又は復号を行う。例えば、符号化装置は、I−SPCの劣化が少なくなるように(復号後に元の三次元データがより忠実に再現されるように)符号化を行う。また、復号装置は、例えば、I−SPCのみを復号する。
符号化装置は、ワールド内のオブジェクトの疎密さ又は数(量)に応じてI−SPCを用いる頻度を変えて符号化を行ってもよい。つまり、符号化装置は、三次元データに含まれるオブジェクトの数又は粗密さに応じて、I−SPCを選択する頻度を変更する。例えば、符号化装置は、ワールド内のオブジェクトが密であるほどIスペースを用いる頻度を上げる。
また、符号化装置は、ランダムアクセスポイントをGOS単位で設定し、GOSに対応する空間領域を示す情報をヘッダ情報に格納する。
符号化装置は、GOSの空間サイズとして、例えば、デフォルト値を使用する。なお、符号化装置は、オブジェクト又は動的オブジェクトの数(量)又は粗密さに応じてGOSのサイズを変更してもよい。例えば、符号化装置は、オブジェクト或いは動的オブジェクトが密なぼど、又は数が多いほど、GOSの空間サイズを小さくする。
また、スペース又はボリュームは、デプスセンサ、ジャイロ、又はカメラ等のセンサで得られた情報を用いて導出された特徴点群を含む。特徴点の座標はボクセルの中心位置に設定される。また、ボクセルの細分化により位置情報の高精度化を実現できる。
特徴点群は、複数のピクチャを用いて導出される。複数のピクチャは、実際の時刻情報と、スペースに対応付けられた複数のピクチャで同一の時刻情報(例えば、レート制御等に用いられる符号化時刻)との少なくとも2種類の時刻情報を有する。
また、1以上のスペースを含むGOS単位で符号化又は復号が行われる。
符号化装置及び復号装置は、処理済みのGOS内のスペースを参照して、処理対象のGOS内のPスペース又はBスペースの予測を行う。
または、符号化装置及び復号装置は、異なるGOSを参照せず、処理対象のGOS内の処理済スペースを用いて処理対象のGOS内のPスペース又はBスペースの予測を行う。
また、符号化装置及び復号装置は、1以上のGOSを含むワールド単位で符号化ストリームを送信又は受信する。
また、GOSは少なくともワールド内で1方向にレイヤ構造を持ち、符号化装置及び復号装置は、下位レイヤから符号化又は復号を行う。例えば、ランダムアクセス可能なGOSは最下位レイヤに属する。上位レイヤに属するGOSは同一レイヤ以下に属するGOSを参照する。つまり、GOSは、予め定められた方向に空間分割され、各々が1以上のSPCを含む複数のレイヤを含む。符号化装置及び復号装置は、各SPCを、当該SPCと同一レイヤ又は当該SPCより下層のレイヤに含まれるSPCを参照して符号化又は復号する。
また、符号化装置及び復号装置は、複数のGOSを含むワールド単位内で、連続してGOSを符号化又は復号する。符号化装置及び復号装置は、符号化又は復号の順序(方向)を示す情報をメタデータとして書き込む又は読み出す。つまり、符号化データは、複数のGOSの符号化順を示す情報を含む。
また、符号化装置及び復号装置は、互いに異なる2以上のスペース又はGOSを並列で符号化又は復号する。
また、符号化装置及び復号装置は、スペース又はGOSの空間情報(座標、サイズ等)を符号化又は復号する。
また、符号化装置及び復号装置は、GPS、経路情報、又は倍率など、自己の位置又は/及び領域サイズに関する外部情報に基づいて特定される特定空間に含まれるスペース又はGOSを符号化又は復号する。
符号化装置又は復号装置は、自己の位置から遠い空間は、近い空間に比べて優先度を落として符号化又は復号する。
符号化装置は、倍率又は用途に応じて、ワールドのある1方向を設定し、当該方向にレイヤ構造を持つGOSを符号化する。また、復号装置は、倍率又は用途に応じて設定されたワールドのある1方向にレイヤ構造を持つGOSを、下位レイヤから優先的に復号する。
符号化装置は、室内と室外とでスペースに含まれる特徴点抽出、オブジェクト認識の精度、又は空間領域サイズなどを変化させる。ただし、符号化装置及び復号装置は、座標が近い室内GOSと室外GOSとをワールド内で隣接して符号化又は復号し、これらの識別子も対応付けて符号化又は復号する。
(実施の形態2)
ポイントクラウドの符号化データを実際の装置又はサービスにおいて使用する際には、ネットワーク帯域を抑制するために用途に応じて必要な情報を送受信することが望ましい。しかしながら、これまで、三次元データの符号化構造にはそのような機能が存在せず、そのための符号化方法も存在しなかった。
本実施の形態では、三次元のポイントクラウドの符号化データにおいて用途に応じて必要な情報のみを送受信する機能を提供するための三次元データ符号化方法及び三次元データ符号化装置、並びに、当該符号化データを復号する三次元復号方法及び三次元データ装置について説明する。
特徴量を一定以上持つボクセル(VXL)を特徴ボクセル(FVXL)と定義し、FVXLで構成されるワールド(WLD)をスパースワールド(SWLD)と定義する。図11は、スパースワールド及びワールドの構成例を示す図である。SWLDには、FVXLで構成されるGOSであるFGOSと、FVXLで構成されるSPCであるFSPCと、FVXLで構成されるVLMであるFVLMと含まれる。FGOS、FSPS及びFVLMのデータ構造及び予測構造はGOS、SPS及びVLMと同様であっても構わない。
特徴量とは、VXLの三次元位置情報、又はVXL位置の可視光情報を表現する特徴量であり、特に立体物のコーナー及びエッジ等で多く検出される特徴量である。具体的には、この特徴量は、下記のような三次元特徴量又は可視光の特徴量であるが、その他、VXLの位置、輝度、又は色情報などを表す特徴量であれば、どのようなものでも構わない。
三次元特徴量として、SHOT特徴量(Signature of Histograms of OrienTations)、PFH特徴量(Point Feature Histograms)、又はPPF特徴量(Point Pair Feature)が用いられる。
SHOT特徴量は、VXL周辺を分割し、基準点と分割された領域の法線ベクトルとの内積を計算してヒストグラム化することで得られる。このSHOT特徴量は、次元数が高く、特徴表現力が高いという特徴を有する。
PFH特徴量は、VXL近傍の多数の2点組を選択し、その2点から法線ベクトル等を算出してヒストグラム化することで得られる。このPFH特徴量は、ヒストグラム特徴なので、多少の外乱に対してロバスト性を有し、特徴表現力も高いという特徴を有する。
PPF特徴量は、2点のVXL毎に法線ベクトル等を用いて算出される特徴量である。このPPF特徴量には、全VXLが使われるため、オクルージョンに対してロバスト性を有する。
また、可視光の特徴量として、画像の輝度勾配情報等の情報を用いたSIFT(Scale−Invariant Feature Transform)、SURF(Speeded Up Robust Features)、又はHOG(Histogram of Oriented Gradients)等を用いることができる。
SWLDは、WLDの各VXLから上記特徴量を算出し、FVXLを抽出することで生成される。ここで、SWLDはWLDが更新される度に更新しても構わないし、WLDの更新タイミングに関わらず、一定時間経過後に定期的に更新するようにしても構わない。
SWLDは特徴量毎に生成しても構わない。例えば、SHOT特徴量に基づくSWLD1とSIFT特徴量に基づくSWLD2とのように、特徴量毎に別々のSWLDが生成され、用途に応じてSWLDを使い分けるようにしても構わない。また、算出した各FVXLの特徴量を特徴量情報として各FVXLに保持するようにしても構わない。
次に、スパースワールド(SWLD)の利用方法について説明する。SWLDは特徴ボクセル(FVXL)のみを含むため、全てのVXLを含むWLDと比べて一般的にデータサイズが小さい。
特徴量を利用して何らかの目的を果たすアプリケーションにおいては、WLDの代わりにSWLDの情報を利用することで、ハードディスクからの読み出し時間、並びにネットワーク転送時の帯域及び転送時間を抑制することができる。例えば、地図情報として、WDLとSWLDとをサーバに保持しておき、クライアントからの要望に応じて、送信する地図情報をWLD又はSWLDに切り替えることにより、ネットワーク帯域及び転送時間を抑制することができる。以下、具体的な例を示す。
図12及び図13は、SWLD及びWLDの利用例を示す図である。図12に示すように、車載装置であるクライアント1が自己位置判定用途として地図情報を必要な場合は、クライアント1はサーバに自己位置推定用の地図データの取得要望を送る(S301)。サーバは、当該取得要望に応じてSWLDをクライアント1に送信する(S302)。クライアント1は、受信したSWLDを用いて自己位置判定を行う(S303)。この際、クライアント1はレンジファインダなどの距離センサ、ステレオカメラ、又は複数の単眼カメラの組合せ等の様々な方法でクライアント1の周辺のVXL情報を取得し、得られたVXL情報とSWLDとから自己位置情報を推定する。ここで自己位置情報は、クライアント1の三次元位置情報及び向き等を含む。
図13に示すように、車載装置であるクライアント2が三次元地図等の地図描画の用途として地図情報が必要な場合は、クライアント2はサーバに地図描画用の地図データの取得要望を送る(S311)。サーバは、当該取得要望に応じてWLDをクライアント2に送信する(S312)。クライアント2は、受信したWLDを用いて地図描画を行う(S313)。この際、クライアント2は、例えば、自己が可視光カメラ等で撮影した画像と、サーバから取得したWLDとを用いてレンダリング画像を作成し、作成した画像をカーナビ等の画面に描画する。
上記のように、サーバは、自己位置推定のような各VXLの特徴量を主に必要とする用途ではSWLDをクライアントに送信し、地図描画のように詳細なVXL情報が必要な場合はWLDをクライアントに送信する。これにより、地図データを効率よく送受信することが可能となる。
なお、クライアントは、自分でSWLDとWLDのどちらが必要かを判断し、サーバへSWLD又はWLDの送信を要求しても構わない。また、サーバは、クライアント又はネットワークの状況に合わせて、SWLDかWLDのどちらを送信すべきかを判断しても構わない。
次に、スパースワールド(SWLD)とワールド(WLD)との送受信を切り替える方法を説明する。
ネットワーク帯域に応じてWLD又はSWLDを受信するかを切替えるようにしてもよい。図14は、この場合の動作例を示す図である。例えば、LTE(Long Term Evolution)環境下等の使用できるネットワーク帯域が限られている低速ネットワークが用いられている場合には、クライアントは、低速ネットワーク経由でサーバにアクセスし(S321)、サーバから地図情報としてSWLDを取得する(S322)。一方、WiFi環境下等のネットワーク帯域に余裕がある高速ネットワークが用いられている場合には、クライアントは、高速ネットワーク経由でサーバにアクセスし(S323)、サーバからWLDを取得する(S324)。これにより、クライアントは、当該クライアントのネットワーク帯域に応じて適切な地図情報を取得することができる。
具体的には、クライアントは、屋外ではLTE経由でSWLDを受信し、施設等の屋内に入った場合はWiFi経由でWLDを取得する。これにより、クライアントは、屋内のより詳細な地図情報を取得することが可能となる。
このように、クライアントは、自身が用いるネットワークの帯域に応じてサーバにWLD又はSWLDを要求してもよい。または、クライアントは、自身が用いるネットワークの帯域を示す情報をサーバに送信し、サーバは当該情報に応じて当該クライアントに適したデータ(WLD又はSWLD)を送信してもよい。または、サーバは、クライアントのネットワーク帯域を判別し、当該クライアントに適したデータ(WLD又はSWLD)を送信してもよい。
また、移動速度に応じてWLD又はSWLDを受信するかを切替えるようにしてもよい。図15は、この場合の動作例を示す図である。例えば、クライアントが高速移動をしている場合は(S331)、クライアントはSWLDをサーバから受信する(S332)。一方、クライアントが低速移動をしている場合は(S333)、クライアントはWLDをサーバから受信する(S334)。これにより、クライアントは、ネットワーク帯域を抑制しながら、速度に合った地図情報を取得することができる。具体的には、クライアントは、高速道路を走行中にはデータ量の少ないSWLDを受信することにより、大まかな地図情報を適切な速度で更新することができる。一方、クライアントは、一般道路を走行中にはWLDを受信することにより、より詳細な地図情報を取得することが可能となる。
このように、クライアントは、自身の移動速度に応じてサーバにWLD又はSWLDを要求してもよい。または、クライアントは、自身の移動速度を示す情報をサーバに送信し、サーバは当該情報に応じて当該クライアントに適したデータ(WLD又はSWLD)を送信してもよい。または、サーバは、クライアントの移動速度を判別し、当該クライアントに適したデータ(WLD又はSWLD)を送信してもよい。
また、クライアントは、最初にSWLDをサーバより取得し、その中で重要な領域のWLDを取得しても構わない。例えば、クライアントは、地図データを取得する際に、最初に大まかな地図情報をSWLDで取得し、そこから建物、標識、又は人物等の特徴が多く出現する領域を絞り込み、絞り込んだ領域のWLDを後から取得する。これにより、クライアントは、サーバからの受信データ量を抑制しつつ、必要な領域の詳細な情報を取得することが可能となる。
また、サーバは、WLDから物体毎に別々のSWLDを作成し、クライアントは、用途に合わせて、それぞれを受信してもよい。これにより、ネットワーク帯域を抑制できる。例えば、サーバは、WLDから予め人又は車を認識し、人のSWLDと車のSWLDを作成する。クライアントは、周囲の人の情報を取得したい場合には人のSWLDを、車の情報を取得したい場合には車のSWLDを受信する。また、このようなSWLDの種類はヘッダ等に付加された情報(フラグ又はタイプ等)によって区別するようにしても構わない。
次に、本実施の形態に係る三次元データ符号化装置(例えばサーバ)の構成及び動作の流れを説明する。図16は、本実施の形態に係る三次元データ符号化装置400のブロック図である。図17は、三次元データ符号化装置400による三次元データ符号化処理のフローチャートである。
図16に示す三次元データ符号化装置400は、入力三次元データ411を符号化することで符号化ストリームである符号化三次元データ413及び414を生成する。ここで、符号化三次元データ413はWLDに対応する符号化三次元データであり、符号化三次元データ414はSWLDに対応する符号化三次元データである。この三次元データ符号化装置400は、取得部401と、符号化領域決定部402と、SWLD抽出部403と、WLD符号化部404と、SWLD符号化部405とを備える。
図17に示すように、まず、取得部401は、三次元空間内の点群データである入力三次元データ411を取得する(S401)。
次に、符号化領域決定部402は、点群データが存在する空間領域に基づいて、符号化対象の空間領域を決定する(S402)。
次に、SWLD抽出部403は、符号化対象の空間領域をWLDと定義し、WLDに含まれる各VXLから特徴量を算出する。そして、SWLD抽出部403は、特徴量が予め定められた閾値以上のVXLを抽出し、抽出したVXLをFVXLと定義し、当該FVXLをSWLDへ追加することで、抽出三次元データ412を生成する(S403)。つまり、入力三次元データ411から特徴量が閾値以上の抽出三次元データ412が抽出される。
次に、WLD符号化部404は、WLDに対応する入力三次元データ411を符号化することでWLDに対応する符号化三次元データ413を生成する(S404)。このとき、WLD符号化部404は、符号化三次元データ413のヘッダに、当該符号化三次元データ413がWLDを含むストリームであることを区別するための情報を付加する。
また、SWLD符号化部405は、SWLDに対応する抽出三次元データ412を符号化することでSWLDに対応する符号化三次元データ414を生成する(S405)。このとき、SWLD符号化部405は、符号化三次元データ414のヘッダに、当該符号化三次元データ414がSWLDを含むストリームであることを区別するための情報を付加する。
なお、符号化三次元データ413を生成する処理と、符号化三次元データ414を生成する処理との処理順は上記と逆でもよい。また、これらの処理の一部又は全てが並列に行われてもよい。
符号化三次元データ413及び414のヘッダに付与される情報として、例えば、「world_type」というパラメータが定義される。world_type=0の場合はストリームがWLDを含むことを表し、world_type=1の場合はストリームがSWLDを含むことを表す。更にその他の多数の種別を定義する場合には、world_type=2のように割り当てる数値を増やすようにしても構わない。また、符号化三次元データ413及び414の一方に特定のフラグが含まれてもよい。例えば、符号化三次元データ414に、当該ストリームがSWLDを含むことを含むフラグが付与されてもよい。この場合、復号装置は、フラグの有無によりWLDを含むストリームか、SWLDを含むストリームかを判別できる。
また、WLD符号化部404がWLDを符号化する際に使用する符号化方法と、SWLD符号化部405がSWLDを符号化する際に使用する符号化方法とは異なってもよい。
例えば、SWLDではデータが間引かされているため、WLDに比べ、周辺のデータとの相関が低くなる可能性がある。よって、SWLDに用いられる符号化方法では、WLDに用いられる符号化方法よりもイントラ予測及びインター予測のうちインター予測が優先されてもよい。
また、SWLDに用いられる符号化方法とWLDに用いられる符号化方法とでは、三次元位置の表現手法が異なってもよい。例えば、SWLDでは、三次元座標によりSVXLの三次元位置を表現し、WLDでは、後述する8分木により三次元位置が表現されてもよいし、その逆でもよい。
また、SWLD符号化部405は、SWLDの符号化三次元データ414のデータサイズがWLDの符号化三次元データ413のデータサイズより小さくなるように符号化を行う。例えば、上述したようにSWLDは、WLDに比べ、データ間の相関が低くなる可能性がある。これにより、符号化効率が下がり、符号化三次元データ414のデータサイズがWLDの符号化三次元データ413のデータサイズより大きくなる可能性がある。よって、SWLD符号化部405は、得られた符号化三次元データ414のデータサイズが、WLDの符号化三次元データ413のデータサイズより大きい場合には、再符号化を行うことで、データサイズを低減した符号化三次元データ414を再生成する。
例えば、SWLD抽出部403は、抽出する特徴点の数を減らした抽出三次元データ412を再生成し、SWLD符号化部405は、当該抽出三次元データ412を符号化する。または、SWLD符号化部405における量子化の程度をより粗くしてもよい。例えば、後述する8分木構造において、最下層のデータを丸め込むことで、量子化の程度を粗くすることができる。
また、SWLD符号化部405は、SWLDの符号化三次元データ414のデータサイズをWLDの符号化三次元データ413のデータサイズより小さくできない場合は、SWLDの符号化三次元データ414を生成しなくてもよい。または、WLDの符号化三次元データ413がSWLDの符号化三次元データ414にコピーされてもよい。つまり、SWLDの符号化三次元データ414としてWLDの符号化三次元データ413がそのまま用いられてもよい。
次に、本実施の形態に係る三次元データ復号装置(例えばクライアント)の構成及び動作の流れを説明する。図18は、本実施の形態に係る三次元データ復号装置500のブロック図である。図19は、三次元データ復号装置500による三次元データ復号処理のフローチャートである。
図18に示す三次元データ復号装置500は、符号化三次元データ511を復号することで復号三次元データ512又は513を生成する。ここで、符号化三次元データ511は、例えば、三次元データ符号化装置400で生成された符号化三次元データ413又は414である。
この三次元データ復号装置500は、取得部501と、ヘッダ解析部502と、WLD復号部503と、SWLD復号部504とを備える。
図19に示すように、まず、取得部501は、符号化三次元データ511を取得する(S501)。次に、ヘッダ解析部502は、符号化三次元データ511のヘッダを解析し、符号化三次元データ511がWLDを含むストリームか、SWLDを含むストリームかを判別する(S502)。例えば、上述したworld_typeのパラメータが参照され、判別が行われる。
符号化三次元データ511がWLDを含むストリームである場合(S503でYes)、WLD復号部503は、符号化三次元データ511を復号することでWLDの復号三次元データ512を生成する(S504)。一方、符号化三次元データ511がSWLDを含むストリームである場合(S503でNo)、SWLD復号部504は、符号化三次元データ511を復号することでSWLDの復号三次元データ513を生成する(S505)。
また、符号化装置と同様に、WLD復号部503がWLDを復号する際に使用する復号方法と、SWLD復号部504がSWLDを復号する際に使用する復号方法とは異なってもよい。例えば、SWLDに用いられる復号方法では、WLDに用いられる復号方法よりもイントラ予測及びインター予測のうちインター予測が優先されてもよい。
また、SWLDに用いられる復号方法とWLDに用いられる復号方法とでは、三次元位置の表現手法が異なってもよい。例えば、SWLDでは、三次元座標によりSVXLの三次元位置を表現し、WLDでは、後述する8分木により三次元位置が表現されてもよいし、その逆でもよい。
次に、三次元位置の表現手法である8分木表現について説明する。三次元データに含まれるVXLデータは8分木構造に変換された後、符号化される。図20は、WLDのVXLの一例を示す図である。図21は、図20に示すWLDの8分木構造を示す図である。図20に示す例では、点群を含むVXL(以下、有効VXL)である3つVXL1〜3が存在する。図21に示すように、8分木構造はノードとリーフで構成される。各ノードは最大で8つのノードまたはリーフを持つ。各リーフはVXL情報を持つ。ここで、図21に示すリーフのうち、リーフ1、2、3はそれぞれ図20に示すVXL1、VXL2、VXL3を表す。
具体的には、各ノード及びリーフは三次元位置に対応する。ノード1は、図20に示す全体のブロックに対応する。ノード1に対応するブロックは8つのブロックに分割され、8つのブロックのうち、有効VXLを含むブロックがノードに設定され、それ以外のブロックはリーフに設定される。ノードに対応するブロックは、さらに8つのノードまたはリーフに分割され、この処理が木構造の階層分繰り返される。また、最下層のブロックは、全てリーフに設定される。
また、図22は、図20に示すWLDから生成したSWLDの例を示す図である。図20に示すVXL1及びVXL2は特徴量抽出の結果、FVXL1及びFVXL2と判定され、SWLDに加えられている。一方で、VXL3はFVXLと判定されず、SWLDに含まれていない。図23は、図22に示すSWLDの8分木構造を示す図である。図23に示す8分木構造では、図21に示す、VXL3に相当するリーフ3が削除されている。これにより、図21に示すノード3が有効VXLを持たなくなり、リーフに変更されている。このように一般的にSWLDのリーフ数はWLDのリーフ数より少なくなり、SWLDの符号化三次元データもWLDの符号化三次元データより小さくなる。
以下、本実施の形態の変形例について説明する。
例えば、車載装置等のクライアントは、自己位置推定を行う場合に、SWLDをサーバから受信し、SWLDを用いて自己位置推定を行い、障害物検知を行う場合は、レンジファインダなどの距離センサ、ステレオカメラ、又は複数の単眼カメラの組合せ等の様々な方法を用いて自分で取得した周辺の三次元情報に基づいて障害物検知を実施してもよい。
また、一般的にSWLDには平坦領域のVXLデータが含まれにくい。そのため、サーバは、静的な障害物の検知用に、WLDをサブサンプルしたサブランプルワールド(subWLD)を保持し、SWLDとsubWLDをクライアントに送信してもよい。これにより、ネットワーク帯域を抑制しつつ、クライアント側で自己位置推定及び障害物検知を行うことができる。
また、クライアントが三次元地図データを高速に描画する際には、地図情報がメッシュ構造である方が便利な場合がある。そこで、サーバは、WLDからメッシュを生成し、メッシュワールド(MWLD)として予め保持してもよい。例えばクライアントは、粗い三次元描画を必要としている場合にはMWLDを受信し、詳細な三次元描画を必要としている場合にはWLDを受信する。これにより、ネットワーク帯域を抑制することができる。
また、サーバは、各VXLのうち、特徴量が閾値以上であるVXLをFVXLに設定したが、異なる方法にてFVXLを算出しても構わない。例えば、サーバは、信号又は交差点などを構成するVXL、VLM、SPS、又はGOSを、自己位置推定、運転アシスト、又は自動運転等に必要と判断し、FVXL、FVLM、FSPS、FGOSとしてSWLDに含めるようにしても構わない。また、上記判断は手動で行われてもよい。なお、特徴量に基づき設定されたFVXL等に、上記方法で得られたFVXL等を加えてもよい。つまり、SWLD抽出部403は、さらに、入力三次元データ411から予め定められた属性を有する物体に対応するデータを抽出三次元データ412として抽出してもよい。
また、それらの用途に必要な旨を特徴量とは別にラベリングするようにしても構わない。また、サーバは、SWLDの上位レイヤ(例えばレーンワールド)として、信号又は交差点などの自己位置推定、運転アシスト、又は自動運転等に必要なFVXLを別途保持してもよい。
また、サーバは、WLD内のVXLにもランダムアクセス単位又は所定の単位毎に属性を付加してもよい。属性は、例えば、自己位置推定に必要或いは不要かを示す情報、又は、信号或いは交差点などの交通情報として重要かどうかなどを示す情報を含む。また、属性は、レーン情報(GDF:Geographic Data Filesなど)におけるFeature(交差点又は道路など)との対応関係を含んでもよい。
また、WLD又はSWLDの更新方法として下記のような方法を用いても構わない。
人、工事、又は並木(トラック向け)の変化などを示す更新情報が点群又はメタデータとしてサーバにアップロードされる。サーバは、当該アップロードに基づき、WLDを更新し、その後、更新したWLDを用いてSWLDを更新する。
また、クライアントは、自己位置推定時に自身で生成した三次元情報とサーバから受信した三次元情報との不整合を検知した場合、自身で生成した三次元情報を更新通知とともにサーバに送信してもよい。この場合、サーバは、WLDを用いてSWLDを更新する。SWLDが更新されない場合、サーバは、WLD自体が古いと判断する。
また、符号化ストリームのヘッダ情報として、WLDかSWLDかを区別する情報が付加されるとしたが、例えば、メッシュワールド又はレーンワールド等、多種類のワールドが存在する場合には、それらを区別する情報がヘッダ情報に付加されても構わない。また、特徴量が異なるSWLDが多数存在する場合には、それぞれを区別する情報がヘッダ情報に付加されても構わない。
また、SWLDは、FVXLで構成されるとしたが、FVXLと判定されなかったVXLを含んでもよい。例えば、SWLDは、FVXLの特徴量を算出する際に使用する隣接VXLを含んでもよい。これにより、SWLDの各FVXLに特徴量情報が付加されない場合でも、クライアントは、SWLDを受信した際にFVXLの特徴量を算出することができる。なお、その際には、SWLDは各VXLがFVXLかVXLかを区別するための情報を含んでもよい。
以上のように、三次元データ符号化装置400は、入力三次元データ411(第1三次元データ)から特徴量が閾値以上の抽出三次元データ412(第2三次元データ)を抽出し、抽出三次元データ412を符号化することで符号化三次元データ414(第1符号化三次元データ)を生成する。
これによれば、三次元データ符号化装置400は、特徴量が閾値以上のデータを符号化した符号化三次元データ414を生成する。これにより、入力三次元データ411をそのまま符号化する場合に比べてデータ量を削減できる。よって、三次元データ符号化装置400は、伝送するデータ量を削減できる。
また、三次元データ符号化装置400は、さらに、入力三次元データ411を符号化することで符号化三次元データ413(第2符号化三次元データ)を生成する。
これによれば、三次元データ符号化装置400は、例えば、使用用途等に応じて、符号化三次元データ413と符号化三次元データ414とを選択的に伝送できる。
また、抽出三次元データ412は、第1符号化方法により符号化され、入力三次元データ411は、第1符号化方法とは異なる第2符号化方法により符号化される。
これによれば、三次元データ符号化装置400は、入力三次元データ411と抽出三次元データ412とにそれぞれ適した符号化方法を用いることができる。
また、第1符号化方法では、第2符号化方法よりもイントラ予測及びインター予測のうちインター予測が優先される。
これによれば、三次元データ符号化装置400は、隣接するデータ間の相関が低くなりやすい抽出三次元データ412に対して、インター予測の優先度を上げることができる。
また、第1符号化方法と第2符号化方法とでは、三次元位置の表現手法が異なる。例えば、例えば、第2符号化方法では、8分木により三次元位置が表現され、第1符号化方法では、三次元座標により三次元位置を表現される。
これによれば、三次元データ符号化装置400は、データ数(VXL又はSVXLの数)が異なる三次元データに対して、より適した三次元位置の表現手法を用いることができる。
また、符号化三次元データ413及び414の少なくとも一方は、当該符号化三次元データが入力三次元データ411を符号化することで得られた符号化三次元データであるか、入力三次元データ411のうちの一部を符号化することで得られた符号化三次元データであるかを示す識別子を含む。つまり、当該識別子は、符号化三次元データがWLDの符号三次元データ413であるかSWLDの符号化三次元データ414であるかを示す。
これによれば、復号装置は、取得した符号化三次元データが符号化三次元データ413であるか符号化三次元データ414であるかを容易に判定できる。
また、三次元データ符号化装置400は、符号化三次元データ414のデータ量が符号化三次元データ413のデータ量より小さくなるように抽出三次元データ412を符号化する。
これによれば、三次元データ符号化装置400は、符号化三次元データ414のデータ量を符号化三次元データ413のデータ量より小さくできる。
また、三次元データ符号化装置400は、さらに、入力三次元データ411から予め定められた属性を有する物体に対応するデータを抽出三次元データ412として抽出する。例えば、予め定められた属性を有する物体とは、自己位置推定、運転アシスト、又は自動運転等に必要な物体であり、信号又は交差点などである。
これによれば、三次元データ符号化装置400は、復号装置で必要となるデータを含む符号化三次元データ414を生成できる。
また、三次元データ符号化装置400(サーバ)は、さらに、クライアントの状態に応じて、符号化三次元データ413及び414の一方をクライアントに送信する。
これによれば、三次元データ符号化装置400は、クライアントの状態に応じて適切なデータを送信できる。
また、クライアントの状態は、クライアントの通信状況(例えばネットワーク帯域)、又はクライアントの移動速度を含む。
また、三次元データ符号化装置400は、さらに、クライアントの要求に応じて、符号化三次元データ413及び414の一方をクライアントに送信する。
これによれば、三次元データ符号化装置400は、クライアントの要求に応じて適切なデータを送信できる。
また、本実施の形態に係る三次元データ復号装置500は、上記三次元データ符号化装置400により生成された符号化三次元データ413又は414を復号する。
つまり、三次元データ復号装置500は、入力三次元データ411から抽出された特徴量が閾値以上の抽出三次元データ412が符号化されることで得られた符号化三次元データ414を第1復号方法により復号する。また、三次元データ復号装置500は、入力三次元データ411が符号化されることで得られた符号化三次元データ413を、第1復号方法とは異なる第2復号方法により復号する。
これによれば、三次元データ復号装置500は、特徴量が閾値以上のデータを符号化した符号化三次元データ414と、符号化三次元データ413とを、例えば、使用用途等に応じて選択的に受信できる。これにより、三次元データ復号装置500は、伝送するデータ量を削減できる。さらに、三次元データ復号装置500は、入力三次元データ411と抽出三次元データ412とにそれぞれ適した復号方法を用いることができる。
また、第1復号方法では、第2復号方法よりもイントラ予測及びインター予測のうちインター予測が優先される。
これによれば、三次元データ復号装置500は、隣接するデータ間の相関が低くなりやすい抽出三次元データに対して、インター予測の優先度を上げることができる。
また、第1復号方法と第2復号方法とでは、三次元位置の表現手法が異なる。例えば、例えば、第2復号方法では、8分木により三次元位置が表現され、第1復号方法では、三次元座標により三次元位置を表現される。
これによれば、三次元データ復号装置500は、データ数(VXL又はSVXLの数)が異なる三次元データに対して、より適した三次元位置の表現手法を用いることができる。
また、符号化三次元データ413及び414の少なくとも一方は、当該符号化三次元データが入力三次元データ411を符号化することで得られた符号化三次元データであるか、入力三次元データ411のうちの一部を符号化することで得られた符号化三次元データであるかを示す識別子を含む。三次元データ復号装置500は、当該識別子を参照して、符号化三次元データ413及び414を識別する。
これによれば、三次元データ復号装置500は、取得した符号化三次元データが符号化三次元データ413であるか符号化三次元データ414であるかを容易に判定できる。
また、三次元データ復号装置500は、さらに、クライアント(三次元データ復号装置500)の状態をサーバに通知する。三次元データ復号装置500は、クライアントの状態に応じて、サーバから送信された符号化三次元データ413及び414の一方を受信する。
これによれば、三次元データ復号装置500は、クライアントの状態に応じて適切なデータを受信できる。
また、クライアントの状態は、クライアントの通信状況(例えばネットワーク帯域)、又はクライアントの移動速度を含む。
また、三次元データ復号装置500は、さらに、符号化三次元データ413及び414の一方をサーバに要求し、当該要求に応じて、サーバから送信された符号化三次元データ413及び414の一方を受信する。
これによれば、三次元データ復号装置500は、用途に応じた適切なデータを受信できる。
(実施の形態3)
本実施の形態では、車両間での三次元データを送受信する方法について説明する。
図24は、自車両600と周辺車両601との間での三次元データ607の送受信の様子を示す模式図である。
自車両600に搭載されたセンサ(レンジファインダなどの距離センサ、ステレオカメラ、又は複数の単眼カメラの組合せなど)により三次元データを取得する場合、周辺車両601などの障害物により自車両600のセンサ検知範囲602内であるものの三次元データを作成できない領域(以降、これをオクルージョン領域604という)が発生する。また、三次元データを取得する空間が大きくなると自律動作の精度が高まるが、自車両600のみのセンサ検知範囲は有限である。
自車両600のセンサ検知範囲602は、三次元データを取得可能な領域603とオクルージョン領域604とを含む。自車両600が、三次元データを取得したい範囲は、自車両600のセンサ検知範囲602とそれ以外の領域とを含む。また、周辺車両601のセンサ検知範囲605は、オクルージョン領域604と、自車両600のセンサ検知範囲602に含まれない領域606とを含む。
周辺車両601は、周辺車両601が検知した情報を自車両600に伝送する。自車両600は、前走車などの周辺車両601が検知した情報を取得することで、オクルージョン領域604、及び、自車両600のセンサ検知範囲602以外の領域606の三次元データ607を取得することが可能となる。自車両600は、周辺車両601が取得した情報を用いて、オクルージョン領域604及びセンサ検知範囲外の領域606の三次元データを補完する。
車両、又はロボットの自律動作における三次元データの用途は、自己位置推定、周辺状況の検知、またはその両方である。例えば、自己位置推定には、自車両600のセンサ情報に基づき自車両600で生成した三次元データが使用される。周辺状況の検知には、自車両600で生成した三次元データに加え、周辺車両601から取得した三次元データも使用される。
三次元データ607を自車両600に伝送する周辺車両601は、自車両600の状態に応じて決定されてもよい。例えば、この周辺車両601は、自車両600の直進時には前走車であり、自車両600の右折時には対向車であり、自車両600の後退時には後方車である。また、自車両600のドライバが、三次元データ607を自車両600に伝送する周辺車両601を直接指定してもよい。
また、自車両600は、三次元データ607を取得したい空間内に含まれる、自車両600で取得できない領域の三次元データを所有している周辺車両601を探索してもよい。自車両600で取得できない領域とは、オクルージョン領域604又はセンサ検知範囲602外の領域606などである。
また、自車両600は、オクルージョン領域604を自車両600のセンサ情報に基づいて特定してもよい。例えば、自車両600は、自車両600のセンサ検知範囲602内に含まれる、三次元データを作成できない領域をオクルージョン領域604であると特定する。
以下、三次元データ607を伝送するのが前走車である場合の動作例を説明する。図25は、この場合の伝送される三次元データの一例を示す図である。
図25に示すように、前走車から伝送される三次元データ607は、例えば、ポイントクラウドのスパースワールド(SWLD)である。つまり、前走車は、当該前走車のセンサで検知した情報からWLDの三次元データ(ポイントクラウド)を作成し、WLDの三次元データから特徴量が閾値以上のデータを抽出することでSWLDの三次元データ(ポイントクラウド)を作成する。そして、前走車は、作成したSWLDの三次元データを自車両600に伝送する。
自車両600は、SWLDを受け取り、自車両600で作成したポイントクラウドに、受け取ったSWLDをマージする。
伝送されるSWLDは絶対座標(三次元マップの座標系におけるSWLDの位置)の情報を持っている。自車両600は、この絶対座標に基づいて、自車両600で生成したポイントクラウドを上書きすることによりマージ処理を実現できる。
周辺車両601から伝送されるSWLDは、自車両600のセンサ検知範囲602外かつ周辺車両601のセンサ検知範囲605内の領域606のSWLD、或いは、自車両600にとってのオクルージョン領域604のSWLD、又は、その両方のSWLDでもよい。また、伝送されるSWLDは、上記のSWLDのうち、周辺車両601が周辺状況の検知に使用している領域のSWLDでもよい。
また、周辺車両601は、自車両600と周辺車両601との速度差に基づく通信可能時間に応じて、伝送されるポイントクラウドの密度を変化させてもよい。例えば、速度差が大きく通信可能時間が短い場合は、周辺車両601は、SWLDの中から、特徴量の大きな三次元点を抽出することで、ポイントクラウドの密度(データ量)を低くしてもよい。
また、周辺状況の検知とは、人、車両、及び道路工事用の機材などの存在の有無を判定し、その種類を特定し、その位置、移動方向、及び移動速度などを検知することである。
また、自車両600は、周辺車両601で生成された三次元データ607の代わりに、又は、三次元データ607に加え、周辺車両601の制動情報を取得してもよい。ここで、周辺車両601の制動情報とは、例えば、周辺車両601のアクセル或いはブレーキが踏まれたこと、又はその度合いを示す情報である。
また、各車両で生成されるポイントクラウドでは、車両間の低遅延通信を考慮して、ランダムアクセス単位に三次元空間が細分化される。一方で、サーバからダウンロードされる地図データである三次元地図等は、三次元空間が、車両間通信の場合と比べて大きなランダムアクセス単位に分割される。
前走車の前方の領域又は後走車の後方の領域などのオクルージョン領域になりやすい領域のデータは低遅延向けデータとして、細かいランダムアクセス単位に分割される。
高速走行時には正面の重要性が高まるため、各車両は、高速走行時には、視野角を狭めた範囲のSWLDを細かいランダムアクセス単位で作成する。
前走車が伝送用に作成したSWLD内に自車両600でポイントクラウドの取得が可能な領域が含まれる場合、前走車は、その領域のポイントクラウドを取り除くことにより伝送量を削減してもよい。
次に、本実施の形態に係る三次元データ受信装置である三次元データ作成装置620の構成及び動作を説明する。
図26は、本実施の形態に係る三次元データ作成装置620のブロック図である。この三次元データ作成装置620は、例えば、上述した自車両600に含まれ、三次元データ作成装置620が作成した第1三次元データ632に、受信した第2三次元データ635を合成することで、より密な第3三次元データ636を作成する。
この三次元データ作成装置620は、三次元データ作成部621と、要求範囲決定部622と、探索部623と、受信部624と、復号部625と、合成部626とを備える。図27は、三次元データ作成装置620の動作を示すフローチャートである。
まず、三次元データ作成部621は、自車両600が備えるセンサで検知したセンサ情報631を用いて第1三次元データ632を作成する(S621)。次に、要求範囲決定部622は、作成した第1三次元データ632の中でデータが不足している三次元空間範囲である要求範囲を決定する(S622)。
次に、探索部623は、要求範囲の三次元データを所有する周辺車両601を探索し、探索により特定した周辺車両601に要求範囲を示す要求範囲情報633を送信する(S623)。次に、受信部624は、周辺車両601から、要求範囲の符号化ストリームである符号化三次元データ634を受信する(S624)。なお、探索部623は、特定範囲に存在する全ての車両に対し、無差別にリクエストを出し、応答があった相手から符号化三次元データ634を受信してもよい。また、探索部623は、車両に限らず、信号機又は標識などの物体にリクエストを出し、当該物体から符号化三次元データ634を受信してもよい。
次に、復号部625は、受信した符号化三次元データ634を復号することで第2三次元データ635を取得する(S625)。次に、合成部626は、第1三次元データ632と第2三次元データ635とを合成することで、より密な第3三次元データ636を作成する(S626)。
次に、本実施の形態に係る三次元データ送信装置640の構成及び動作を説明する。図28は、三次元データ送信装置640のブロック図である。
三次元データ送信装置640は、例えば、上述した周辺車両601に含まれ、周辺車両601が作成した第5三次元データ652を自車両600が要求する第6三次元データ654に加工し、第6三次元データ654を符号化することで符号化三次元データ634を生成し、符号化三次元データ634を自車両600に送信する。
三次元データ送信装置640は、三次元データ作成部641と、受信部642と、抽出部643と、符号化部644と、送信部645とを備える。図29は、三次元データ送信装置640の動作を示すフローチャートである。
まず、三次元データ作成部641は、周辺車両601が備えるセンサで検知したセンサ情報651を用いて第5三次元データ652を作成する(S641)。次に、受信部642は、自車両600から送信された要求範囲情報633を受信する(S642)。
次に、抽出部643は、第5三次元データ652から、要求範囲情報633で示される要求範囲の三次元データを抽出することで、第5三次元データ652を第6三次元データ654に加工する(S643)。次に、符号化部644は、第6三次元データ654を符号化することで、符号化ストリームである符号化三次元データ634を生成する(S644)。そして、送信部645は、自車両600へ符号化三次元データ634を送信する(S645)。
なお、ここでは、自車両600が三次元データ作成装置620を備え、周辺車両601が三次元データ送信装置640を備える例を説明するが、各車両が、三次元データ作成装置620と三次元データ送信装置640との機能を有してもよい。
以下、三次元データ作成装置620が、自車両600の周辺状況の検知処理を実現する周辺状況検知装置である場合の構成及び動作を説明する。図30は、この場合の三次元データ作成装置620Aの構成を示すブロック図である。図30に示す三次元データ作成装置620Aは、図26に示す三次元データ作成装置620の構成に加え、さらに、検知領域決定部627と、周辺状況検知部628と、自律動作制御部629とを備える。また、三次元データ作成装置620Aは、自車両600に含まれる。
図31は、三次元データ作成装置620Aによる自車両600の周辺状況検知処理のフローチャートである。
まず、三次元データ作成部621は、自車両600が備えるセンサで検知した、自車両600の検知範囲のセンサ情報631を用いてポイントクラウドである第1三次元データ632を作成する(S661)。なお、三次元データ作成装置620Aは、さらに、センサ情報631を用いて自己位置推定を行ってもよい。
次に、検知領域決定部627は、周辺状況を検知したい空間領域である検知対象範囲を決定する(S662)。例えば、検知領域決定部627は、自車両600の走行方向及び速度などの自律動作(自動運転)の状況に応じて、自律動作を安全に行うための周辺状況検知に必要な領域を算出し、当該領域を検知対象範囲に決定する。
次に、要求範囲決定部622は、オクルージョン領域604と、自車両600のセンサの検知範囲外であるが周辺状況検知に必要な空間領域とを要求範囲をとして決定する(S663)。
ステップS663において決定された要求範囲が存在する場合(S664でYes)、探索部623は、要求範囲に関する情報を所有する周辺車両を探索する。例えば、探索部623は、周辺車両に、要求範囲に関する情報を所有しているか問合せてもよいし、要求範囲と周辺車両との位置に基づき、当該周辺車両が要求範囲に関する情報を所有しているかを判断してもよい。次に、探索部623は、探索により特定した周辺車両601に対して、三次元データの伝送を依頼する依頼信号637を送信する。そして、探索部623は、周辺車両601から送信された、依頼信号637の依頼を受ける旨を示す許可信号を受信した後、要求範囲を示す要求範囲情報633を周辺車両601に送信する(S665)。
次に、受信部624は、要求範囲に関する情報である送信データ638の伝送通知を検知し、当該送信データ638を受信する(S666)。
なお、三次元データ作成装置620Aは、リクエストを送る相手を探索することなく、特定範囲に存在する全ての車両に対し、無差別にリクエストを出し、要求範囲に関する情報を持っていると応答があった相手から送信データ638を受信してもよい。また、探索部623は、車両に限らず、信号機又は標識などの物体にリクエストを出し、当該物体から送信データ638を受信してもよい。
また、送信データ638は、周辺車両601で生成された、要求範囲の三次元データが符号化された符号化三次元データ634、及び、要求範囲の周辺状況検知結果639の少なくとも一方を含む。周辺状況検知結果639は、周辺車両601が検知した人及び車両の位置、移動方向及び移動速度等を示す。また、送信データ638は、周辺車両601の位置及び動き等を示す情報を含んでもよい。例えば、送信データ638は、周辺車両601の制動情報を含んでもよい。
受信された送信データ638に符号化三次元データ634が含まれる場合(S667でYes)、復号部625は、符号化三次元データ634を復号することでSWLDの第2三次元データ635を取得する(S668)。つまり、第2三次元データ635は、第4三次元データ(WLD)から特徴量が閾値以上のデータが抽出されることで生成された三次元データ(SWLD)である。
次に、合成部626は、第1三次元データ632と第2三次元データ635とを合成することで第3三次元データ636を生成する(S669)。
次に、周辺状況検知部628は、周辺状況検知に必要な空間領域のポイントクラウドである第3三次元データ636を用いて、自車両600の周辺状況を検知する(S670)。なお、受信された送信データ638に周辺状況検知結果639が含まれる場合には、周辺状況検知部628は、第3三次元データ636に加えて周辺状況検知結果639を用いて、自車両600の周辺状況を検知する。また、受信された送信データ638に周辺車両601の制動情報が含まれる場合には、周辺状況検知部628は、第3三次元データ636に加えて当該制動情報を用いて、自車両600の周辺状況を検知する。
次に、自律動作制御部629は、周辺状況検知部628による周辺状況検知結果に基づき自車両600の自律動作(自動運転)を制御する(S671)。なお、UI(ユーザインタフェース)などを通して周辺状況検知結果がドライバに提示されてもよい。
一方、ステップS663において要求範囲が存在しない場合、(S664でNo)、つまり、周辺状況検知に必要な全ての空間領域の情報を、センサ情報631に基づき作成できた場合、周辺状況検知部628は、周辺状況検知に必要な空間領域のポイントクラウドである第1三次元データ632を用いて、自車両600の周辺状況を検知する(S672)。そして、自律動作制御部629は、周辺状況検知部628による周辺状況検知結果に基づき自車両600の自律動作(自動運転)を制御する(S671)。
また、受信された送信データ638に符号化三次元データ634が含まれない場合(S667でNo)、つまり、送信データ638に、周辺車両601の周辺状況検知結果639又は制動情報のみが含まれる場合、周辺状況検知部628は、第1三次元データ632と、周辺状況検知結果639又は制動情報を用いて、自車両600の周辺状況を検知する(S673)。そして、自律動作制御部629は、周辺状況検知部628による周辺状況検知結果に基づき自車両600の自律動作(自動運転)を制御する(S671)。
次に、上記三次元データ作成装置620Aに送信データ638を送信する三次元データ送信装置640Aについて説明する。図32は、この三次元データ送信装置640Aのブロック図である。
図32に示す三次元データ送信装置640Aは、図28に示す三次元データ送信装置640の構成に加え、さらに、伝送可否判定部646を備える。また、三次元データ送信装置640Aは、周辺車両601に含まれる。
図33は、三次元データ送信装置640Aの動作例を示すフローチャートである。まず、三次元データ作成部641は、周辺車両601が備えるセンサで検知したセンサ情報651を用いて第5三次元データ652を作成する(S681)。
次に、受信部642は、自車両600から、三次元データの伝送要求を依頼する依頼信号637を受信する(S682)。次に、伝送可否判定部646は、依頼信号637で示される依頼に応じるかどうかを決定する(S683)。例えば、伝送可否判定部646は、ユーザにより予め設定されている内容に基づき、依頼に応じるかどうかを決定する。なお、受信部642が要求範囲などの相手のリクエストを先に受け取り、伝送可否判定部646は、その内容によって依頼に応じるかどうか決定してもよい。例えば、伝送可否判定部646は、要求範囲の三次元データを所持している場合に、依頼に応じると決定し、要求範囲の三次元データを所持していない場合に、依頼に応じないと決定してもよい。
依頼に応じる場合(S683でYes)、三次元データ送信装置640Aは許可信号を自車両600に送信し、受信部642は要求範囲を示す要求範囲情報633を受信する(S684)。次に、抽出部643は、ポイントクラウドである第5三次元データ652から要求範囲のポイントクラウドを切り出し、切り出したポイントクラウドのSWLDである第6三次元データ654を含む送信データ638を作成する(S685)。
つまり、三次元データ送信装置640Aは、センサ情報651から第7三次元データ(WLD)を作成し、第7三次元データ(WLD)から特徴量が閾値以上のデータを抽出することで第5三次元データ652(SWLD)を作成する。なお、三次元データ作成部641が予めSWLDの三次元データを作成しておき、抽出部643においてSWLDの三次元データから要求範囲のSWLDの三次元データが抽出されてもよいし、抽出部643が、要求範囲のWLDの三次元データから要求範囲のSWLDの三次元データを生成してもよい。
また、送信データ638は、周辺車両601による要求範囲の周辺状況検知結果639、及び、周辺車両601の制動情報を含んでもよい。また、送信データ638は、第6三次元データ654を含まず、周辺車両601による要求範囲の周辺状況検知結果639、及び、周辺車両601の制動情報のうちの少なくとも一方のみを含んでもよい。
送信データ638が第6三次元データ654を含む場合(S686でYes)、符号化部644は、第6三次元データ654を符号化することで符号化三次元データ634を生成する(S687)。
そして、送信部645は、符号化三次元データ634を含む送信データ638を自車両600に送信する(S688)。
一方、送信データ638が第6三次元データ654を含まない場合(S686でNo)、送信部645は、周辺車両601による要求範囲の周辺状況検知結果639、及び、周辺車両601の制動情報の少なくとも一方を含む送信データ638を自車両600に送信する(S688)。
以下、本実施の形態の変形例について説明する。
例えば、周辺車両601から伝送される情報は、周辺車両が作成した三次元データ又は周辺状況検知結果でなくてもよく、周辺車両601自身の正確な特徴点情報であってもよい。自車両600は、この周辺車両601の特徴点情報を用いて、自車両600で取得したポイントクラウド内の前走車の特徴点情報を補正する。これにより、自車両600は、自己位置推定時のマッチング精度を向上できる。
また、前走車の特徴点情報は、例えば、色情報及び座標情報からなる三次元点情報である。これにより、自車両600のセンサがレーザセンサであっても、ステレオカメラであっても、その種類に依存することなく前走車の特徴点情報を使用できる。
なお、自車両600は、伝送時に限らず、自己位置推定時の精度を算出する際に、SWLDのポイントクラウドを用いてもよい。例えば、自車両600のセンサがステレオカメラなどの撮像装置である場合、自車両600がカメラで撮影した画像上で二次元点を検出し、その二次元点を用いて自己位置を推定する。また、自車両600は、自己位置と同時に周辺物体のポイントクラウドを作成する。自車両600は、その中のSWLDの三次元点を二次元画像上に再投影し、二次元画像上での検出点と再投影点との誤差に基づき自己位置推定の精度を評価する。
また、自車両600のセンサがLIDARなどのレーザセンサである場合、自車両600は、作成したポイントクラウドのSWLDと、三次元地図のSWLDとを用いてIterative Closest Pointにより算出した誤差に基づき自己位置推定の精度を評価する。
また、5Gなど基地局又はサーバ経由の通信状態が悪い場合には、自車両600は、周辺車両601から三次元地図を取得してもよい。
また、自車両600の周辺の車両から取得できない遠方の情報を車車間通信により取得してもよい。例えば、自車両600は、数百メートル、又は数キロ先の発生直後の交通事故情報などを対向車からのすれ違い通信、又は周辺車両に順次伝えていくリレー方式などにより取得してもよい。この時、伝送されるデータのデータ形式が、動的三次元地図の上位レイヤのメタ情報として伝送される。
また、周辺状況の検知結果、及び自車両600が検知した情報が、ユーザインタフェースを通じてユーザに提示されてもよい。例えば、カーナビの画面、又はフロントウィンドウへの重畳によりこれらの情報の提示が実現される。
また、自動運転をサポートしておらず、クルーズコントロールを有する車両は、自動運転モードで走行中の周辺車両を発見し、当該周辺車両を追尾してもよい。
また、自車両600は、三次元地図を取得できない、又はオクルージョン領域が多過ぎるなどの理由から自己位置推定が不可能な場合に動作モードを、自動運転モードから周辺車両の追尾モードに切り替えてもよい。
また、追尾される車両には、追尾されていることをユーザに警告し、追尾を許可するかどうかをユーザが指定できるユーザインタフェースが搭載されてもよい。その際、追尾する車両に広告表示し、追尾される側にインセンティブを支払うなどの仕組みが設けられてもよい。
また、伝送される情報は、三次元データであるSWLDを基本とするが、自車両600に設定されている要求設定又は前走車の公開設定に応じた情報であってもよい。例えば、伝送される情報は、密なポイントクラウドであるWLDでもよいし、前走車による周辺状況の検知結果でもよいし、前走車の制動情報でもよい。
また、自車両600は、WLDを受信し、WLDの三次元データを視覚化し、視覚化した三次元データをGUIを用いてドライバに提示してもよい。その際、自車両600は、自車両600で作成したポイントクラウドと受信したポイントクラウドとをユーザが区別できるように、情報に色分けなどを施して提示してもよい。
また、自車両600は、自車両600で検知した情報と周辺車両601の検知結果とをGUIでドライバに提示する場合、自車両600で検知した情報と受信した検知結果とをユーザが区別できるのうように、情報に色分けなどを施して提示してもよい。
以上のように、本実施の形態に係る三次元データ作成装置620では、三次元データ作成部621は、センサで検知したセンサ情報631から第1三次元データ632を作成する。受信部624は、第2三次元データ635が符号化された符号化三次元データ634を受信する。復号部625は、受信した符号化三次元データ634を復号することで第2三次元データ635を取得する。合成部626は、第1三次元データ632と第2三次元データ635とを合成することで第3三次元データ636を作成する。
これによれば、三次元データ作成装置620は、作成した第1三次元データ632と、受信した第2三次元データ635とを用いて、詳細な第3三次元データ636を作成できる。
また、合成部626は、第1三次元データ632と第2三次元データ635を合成することで、第1三次元データ632及び第2三次元データ635よりも密度が高い第3三次元データ636を作成する。
また、第2三次元データ635(例えばSWLD)は、第4三次元データ(例えばWLD)から特徴量が閾値以上のデータが抽出されることで生成された三次元データである。
これによれば、三次元データ作成装置620は、伝送される三次元データのデータ量を削減できる。
また、三次元データ作成装置620は、さらに、符号化三次元データ634の送信元である送信装置を探索する探索部623を含む。受信部624は、探索された送信装置から符号化三次元データ634を受信する。
これによれば、三次元データ作成装置620は、例えば、必要な三次元データを所有する送信装置を探索により特定できる。
また、三次元データ作成装置は、さらに、三次元データを要求する三次元空間の範囲である要求範囲を決定する要求範囲決定部622を備える。探索部623は、要求範囲を示す要求範囲情報633を送信装置に送信する。第2三次元データ635は、要求範囲の三次元データを含む。
これによれば、三次元データ作成装置620は、必要な三次元データを受信できるとともに、伝送される三次元データのデータ量を削減できる。
また、要求範囲決定部622は、センサで検知できないオクルージョン領域604を含む空間範囲を要求範囲に決定する。
また、本実施の形態に係る三次元データ送信装置640では、三次元データ作成部641は、センサで検知したセンサ情報651から第5三次元データ652を作成する。抽出部643は、第5三次元データ652の一部を抽出することで第6三次元データ654を作成する。符号化部644は、第6三次元データ654を符号化することで符号化三次元データ634を生成する。送信部645は、符号化三次元データ634を送信する。
これによれば、三次元データ送信装置640は、自身が作成した三次元データを他の装置に送信できるとともに、伝送される三次元データのデータ量を削減できる。
また、三次元データ作成部641は、センサで検知したセンサ情報651から第7三次元データ(例えばWLD)を作成し、第7三次元データから特徴量が閾値以上のデータを抽出することで第5三次元データ652(例えばSWLD)を作成する。
これによれば、三次元データ送信装置640は、伝送される三次元データのデータ量を削減できる。
また、三次元データ送信装置640は、さらに、受信装置から、三次元データを要求する三次元空間の範囲である要求範囲を示す要求範囲情報633を受信する受信部642を含む。抽出部643は、第5三次元データ652から、要求範囲の三次元データを抽出することで第6三次元データ654を作成する。送信部645は、受信装置に符号化三次元データ634を送信する。
これによれば、三次元データ送信装置640は、伝送される三次元データのデータ量を削減できる。
以上、本開示の実施の形態に係る三次元データ作成装置及び三次元データ送信装置について説明したが、本開示は、この実施の形態に限定されるものではない。
また、上記実施の形態に係る三次元データ作成装置又は三次元データ送信装置に含まれる各処理部は典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。
また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
また、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
また、本開示は、三次元データ作成装置又は三次元データ送信装置により実行される三次元データ作成方法又は三次元データ送信方法として実現されてもよい。
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
また、フローチャートにおける各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。
以上、一つまたは複数の態様に係る三次元データ作成装置及び三次元データ送信装置について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。