(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-09
(45)【発行日】2024-01-17
(54)【発明の名称】位置推定方法及びシステム
(51)【国際特許分類】
G06T 7/70 20170101AFI20240110BHJP
G06T 7/00 20170101ALI20240110BHJP
G01C 15/00 20060101ALI20240110BHJP
【FI】
G06T7/70 Z
G06T7/00 350C
G01C15/00 103A
G01C15/00 103E
(21)【出願番号】P 2022550893
(86)(22)【出願日】2020-09-21
(86)【国際出願番号】 KR2020012697
(87)【国際公開番号】W WO2022045431
(87)【国際公開日】2022-03-03
【審査請求日】2022-08-24
(31)【優先権主張番号】10-2020-0110001
(32)【優先日】2020-08-31
(33)【優先権主張国・地域又は機関】KR
【新規性喪失の例外の表示】特許法第30条第2項適用 ウェブサイトの掲載日 2020年4月5日 ウェブサイトのアドレス https://www.youtube.com/watch?v=QpLGiARXvQw
(73)【特許権者】
【識別番号】319012978
【氏名又は名称】ネイバーラボス コーポレーション
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】チャン ミンヨン
(72)【発明者】
【氏名】ヨン スヨン
(72)【発明者】
【氏名】ユ スヒョン
(72)【発明者】
【氏名】イ ドンファン
【審査官】藤原 敬利
(56)【参考文献】
【文献】国際公開第2007/069721(WO,A1)
【文献】特表2018-531402(JP,A)
【文献】脇田 翔平ほか,LaserVAEによる特徴量生成とその特徴量に基づいた大域自己位置推定,計測自動制御学会論文集,日本,公益社団法人計測自動制御学会,2019年,第55巻 ,第7号,第476-483頁
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/70
G06T 7/00
G01C 15/00
(57)【特許請求の範囲】
【請求項1】
基準領域から出力されるレーザを用いて、周辺空間をスキャンするステップと、
前記レーザの反射信号に基づいて、前記周辺空間に関する空間情報を処理するステップと、
前記空間情報を入力データとするディープラーニングネットワークを用いて、前記空間情報が反映された特徴ベクトルを抽出するステップと、
予め特定された参照マップデータと前記特徴ベクトルとを比較し、前記基準領域に関する位置情報を推定するステップとを含み、
前記空間情報を処理するステップにおいては、
前記レーザが前記周辺空間に位置するオブジェクトに到達して反射する前記反射信号に基づいて、前記周辺空間に対応する球面座標上の複数のボクセルに対して前記オブジェクトの占有状態に関する占有情報を割り当て
、
前記特徴ベクトルを抽出するステップにおいては、
前記占有情報を含む前記空間情報を用いて前記特徴ベクトルを生成することを特徴とする位置推定方法。
【請求項2】
前記球面座標上の前記複数のボクセルは、
前記レーザが通過したボクセルに該当する第1ボクセルタイプと、
前記オブジェクトにより前記レーザが反射したボクセルに該当する第2ボクセルタイプと、
前記オブジェクトにより前記レーザが到達しないボクセルに該当する第3ボクセルタイプと、に分けられ、
前記空間情報を処理するステップにおいては、
前記第1ボクセルタイプ、前記第2ボクセルタイプ及び前記第3ボクセルタイプに該当するボクセル毎に異なる占有情報を割り当てることを特徴とする請求項1に記載の位置推定方法。
【請求項3】
前記異なる占有情報は、
前記第1ボクセルタイプに該当する前記レーザが通過したボクセルに割り当てられる第1占有情報と、
前記第2ボクセルタイプに該当する前記レーザが反射したボクセルに割り当てられる第2占有情報と、
前記第3ボクセルタイプに該当する前記レーザが到達しないボクセルに割り当てられる第3占有情報と、を含むことを特徴とする請求項2に記載の位置推定方法。
【請求項4】
前記第3ボクセルタイプに該当するボクセルに割り当てられる前記第3占有情報は、
前記第1ボクセルタイプに該当するボクセルに割り当てられる前記第1占有情報と前記第2ボクセルタイプに該当するボクセルに割り当てられる前記第2占有情報との間の値を有することを特徴とする請求項3に記載の位置推定方法。
【請求項5】
前記球面座標は、前記基準領域を基準として、半径距離(r)、極角(θ)及び方位角(Φ)のうちの少なくとも1つが異なる、前記複数のボクセルに分けられ、
前記空間情報を処理するステップにおいては、
前記複数のボクセルから前記レーザが反射したボクセルが特定された場合、前記特定されたボクセルを基準として、前記特定されたボクセルと同じ極角及び方位角を有する少なくとも1つのボクセルのボクセルタイプを決定することを特徴とする請求項4に記載の位置推定方法。
【請求項6】
前記空間情報を処理するステップにおいては、
前記特定されたボクセルを基準として、前記基準領域から前記特定されたボクセルより近くに位置するボクセルを、前記第1ボクセルタイプに決定し、
前記特定されたボクセルを基準として、前記基準領域から前記特定されたボクセルより遠くに位置するボクセルを、前記第3ボクセルタイプに決定し、
前記特定されたボクセルを、前記第2ボクセルタイプに決定することを特徴とする請求項5に記載の位置推定方法。
【請求項7】
前記特徴ベクトルを抽出するステップにおいては、
特定のボクセルの占有情報及び前記特定のボクセルに関連する少なくとも1つの周辺ボクセルの占有情報を用いて、前記特徴ベクトルを生成することを特徴とする請求項1に記載の位置推定方法。
【請求項8】
前記特定のボクセル及び前記特定のボクセルに関連する少なくとも1つの周辺ボクセルは、
前記基準領域を基準として、半径距離及び極角が同じであり、かつ方位角が異なることを特徴とする請求項7に記載の位置推定方法。
【請求項9】
前記少なくとも1つの周辺ボクセルは、
前記特定のボクセルとは異なる方位角を有する第1周辺ボクセル、第2周辺ボクセル及び第3周辺ボクセルを含み、
前記特定のボクセル
、並びに前記第1周辺ボクセル、前記第2周辺ボクセル及び前記第3周辺ボクセルは、
前記特定のボクセルの方位角を基準として、前記特定のボクセル
、並びに前記第1周辺ボクセル、前記第2周辺ボクセル及び前記第3周辺ボクセルのうち隣接するボクセルの方位角と+90度又は-90度の差を有することを特徴とする請求項8に記載の位置推定方法。
【請求項10】
前記特徴ベクトルを抽出するステップにおいては、
前記特定のボクセル、並びに前記第1周辺ボクセル、前記第2周辺ボクセル及び前記第3周辺ボクセルにそれぞれ対応する占有情報を組み合わせ、前記特定のボクセルに対応する単位ベクトルを生成することを特徴とする請求項9に記載の位置推定方法。
【請求項11】
前記特徴ベクトルを抽出するステップにおいては、
前記空間情報を微細特徴抽出器及び粗特徴抽出器のそれぞれの入力データとし、サブ特徴ベクトルを抽出することを特徴とする請求項1に記載の位置推定方法。
【請求項12】
前記サブ特徴ベクトルは、
前記微細特徴抽出器の出力ベクトルである第1サブ特徴ベクトルと、前記粗特徴抽出器の出力ベクトルである第2サブ特徴ベクトルとを組み合わせたベクトルであることを特徴とする請求項11に記載の位置推定方法。
【請求項13】
前記位置情報を推定するステップにおいては、
前記参照マップデータに含まれる複数の参照ベクトルと前記特徴ベクトルとを比較し、前記複数の参照ベクトルから、前記特徴ベクトルから基準距離内に位置する特定の参照ベクトルを抽出し、
前記特定の参照ベクトルにマッチングされた位置情報を前記基準領域に関する位置情報として推定することを特徴とする請求項1に記載の位置推定方法。
【請求項14】
前記位置情報を推定するステップにおいては、
前記基準距離内に位置する特定の参照ベクトルが複数である場合、
前記複数の特定の参照ベクトルから、前記特徴ベクトルの近くに位置する参照ベクトルにマッチングされた位置情報を、前記基準領域に関する位置情報として推定することを特徴とする請求項13に記載の位置推定方法。
【請求項15】
レーザを用いて、基準領域を基準として周辺空間をスキャンするスキャン部と、
前記レーザの反射信号に基づいて、前記周辺空間に関する空間情報を処理する処理部と、
前記空間情報を入力データとするディープラーニングネットワークを用いて、前記空間情報が反映された特徴ベクトルを抽出するディープラーニング部と、
予め特定された参照マップデータと前記特徴ベクトルとを比較し、前記基準領域に関する位置情報を推定する制御部とを含み、
前記処理部は、
前記レーザが前記周辺空間に位置するオブジェクトに到達して反射する前記反射信号に基づいて、球面座標上の複数のボクセルに対して前記オブジェクトの占有状態に関する占有情報を割り当て
、
前記ディープラーニング部は、
前記占有情報を含む前記空間情報を用いて前記特徴ベクトルを生成することを特徴とする位置推定システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デバイスの位置推定方法及びシステムに関する。
なお、本発明は、科学技術情報通信部(Ministry of Science and ICT)及び情報通信企画評価院(IITP)のICT融合産業革新技術開発事業の支援を受けたものである。本発明に係る課題の研究課題名は、不確実な地図ベースの室内/室外環境で最終目的地まで移動ロボットをガイドできるAI技術の開発(Development of AI Technology for Guidance of a Mobile Robot to its Goal with Uncertain Maps in Indoor/Outdoor Environments)であり、課題番号は、1711152900及び2019-0-01309(又は2019-0-01309-004)である。本発明に係る課題の研究期間は、2022年1月1日~2022年12月31日であり、主管機関は、韓国電子通信研究院(Electronics and Telecommunications Research Institute)である。
【背景技術】
【0002】
技術が発展するにつれて、様々なサービスデバイスが出現しており、特に近年は、様々なタスクやサービスを行うロボットに関する技術開発が盛んに行われている。
【0003】
さらに近年は、人工知能技術やクラウド技術などが発展するにつれて、ロボットの活用度がますます高くなっている。
【0004】
一方、ロボットにより様々なタスクやサービスを提供するためには、ロボットの現在位置を正確に把握することが非常に重要な要素である。よって、ロボットを含むデバイスの位置を推定するための様々な研究がなされている。
【0005】
例えば、位置を推定するための技術には、特許文献1(3次元ライダー(LiDAR)を用いたリアルタイム3次元地図生成方法及び装置)のように、ライダーを用いて周辺環境に関する情報を取得し、それをボクセル(voxel)で表現して得られた固有ベクトルに基づいて現在位置を推定する技術などがある。
【0006】
一方、近年、室内空間(例えば、空港、デパートなど)でもロボットの活用度がますます高くなっており、よって、室内空間でもロボットの位置を正確に推定できる技術に対するニーズが存在する。特に、室内空間の場合、室外に比べて空間が狭小であり、人の移動、構造物などのオブジェクト(object)の存在により混雑度が高く、それにより、従来の位置推定方法だけではその正確度が低くなるという問題が生じ得る。よって、人の動きや構造物などにより室内空間の閉塞が発生してもロボットの現在位置を正確に推定できる技術の開発が必要である。
【先行技術文献】
【特許文献】
【0007】
【発明の概要】
【発明が解決しようとする課題】
【0008】
本発明は、室内空間でロボットなどのデバイスの位置を正確に把握できる位置推定方法及びシステムを提供するものである。
【0009】
また、本発明は、室内空間での位置推定の限界を克服できる新たな方式のデータ処理方法を提案できる位置推定方法及びシステムを提供するものである。
【0010】
より具体的には、本発明は、人、構造物などのオブジェクトの特性を考慮できるポイントクラウド(point cloud)ベースの位置推定方法及びシステムを提供するものである。
【0011】
さらに、本発明は、ライダーベースの位置認識アルゴリズムの性能を向上させるディープラーニングネットワークを提供するためのものである。より具体的には、本発明は、より正確な位置を推定するために、ディープラーニングネットワークに入力される入力データに対する新たな方式の前処理方法を提供するためのものである。
【課題を解決するための手段】
【0012】
上記課題を解決するために、本発明による位置推定方法は、基準領域から出力されるレーザを用いて、周辺空間をスキャンするステップと、前記レーザの反射信号に基づいて、前記周辺空間に関する空間情報を処理するステップと、前記空間情報を含む空間ベクトルを入力データとするディープラーニングネットワークを用いて、前記空間情報が反映された特徴ベクトルを抽出するステップと、予め特定された参照マップデータと前記特徴ベクトルとを比較し、前記基準領域に関する位置情報を推定するステップとを含み、前記空間情報を処理するステップにおいては、前記レーザが前記周辺空間に位置するオブジェクトに到達して反射する前記反射信号に基づいて、前記周辺空間に対応する球面座標(spherical coordinate)上の複数のボクセル(voxel)に対して前記オブジェクトの占有状態に関する占有情報を割り当てることを特徴とする。
【0013】
また、本発明による位置推定システムは、レーザを用いて、基準領域を基準として周辺空間をスキャンするスキャン部と、前記レーザの反射信号に基づいて、前記周辺空間に関する空間情報を処理する処理部と、前記空間情報を含む空間ベクトルを入力データとするディープラーニングネットワークを用いて、前記空間情報が反映された特徴ベクトルを抽出するディープラーニング部と、予め特定された参照マップデータと前記特徴ベクトルとを比較し、前記基準領域に関する位置情報を推定する制御部とを含み、前記処理部は、前記レーザが前記周辺空間に位置するオブジェクトに到達して反射する前記反射信号に基づいて、球面座標(spherical coordinate)上の複数のボクセル(voxel)に対して前記オブジェクトの占有状態に関する占有情報を割り当てることを特徴とする。
【発明の効果】
【0014】
以上説明したように、本発明による位置推定方法及びシステムは、レーザの反射信号に基づいて、オブジェクトの占有状態に関する情報をボクセル上に表すことができる。このとき、本発明は、空間を球面座標(spherical coordinate)上のボクセルに分割することにより、球面座標上のボクセル上にレーザの放射特性をより正確に反映することができ、その結果、より正確な位置を推定することができる。
【0015】
また、本発明は、オブジェクトの占有状態に関する情報を表す際に、レーザが到達しない空間に対する占有状態を新たに定義することにより、人、構造物などのオブジェクトなどにより閉塞された空間をさらに考慮することができる。この場合、レーザが到達しない空間の占有情報は、レーザが通過した領域又はレーザが反射した領域の占有情報とは異なる占有情報として定義することができる。このように、本発明は、閉塞された空間をさらに考慮して位置推定を行うことにより、室内空間でも正確度の高い位置推定を行うことができる。
【0016】
なお、本発明は、特定のボクセルだけでなく、特定のボクセルを取り囲む空間に関する情報を共に反映できる積分器(integrator)を含むディープラーニングネットワークを提案することにより、位置推定の対象となる空間の特性を総合的に考慮することができ、その結果、位置推定の性能を向上させることができる。
【図面の簡単な説明】
【0017】
【
図1】本発明による位置推定方法及びシステムを説明するための概念図である。
【
図2】本発明による位置推定方法及びシステムを説明するための概念図である。
【
図3】本発明による位置推定方法における球面座標系を活用する方法を説明するための概念図である。
【
図4】本発明による位置推定方法における球面座標系を活用する方法を説明するための概念図である。
【
図5】本発明による位置推定方法を説明するためのフローチャートである。
【
図6A】本発明による位置推定方法及びシステムにおける占有状態を定義する方法を説明するための概念図である。
【
図6B】本発明による位置推定方法及びシステムにおける占有状態を定義する方法を説明するための概念図である。
【
図7A】本発明による位置推定方法及びシステムにおける占有状態を定義する方法を説明するための概念図である。
【
図7B】本発明による位置推定方法及びシステムにおける占有状態を定義する方法を説明するための概念図である。
【
図8A】本発明による位置推定方法及びシステムにおける占有状態を定義する方法を説明するための概念図である。
【
図8B】本発明による位置推定方法及びシステムにおける占有状態を定義する方法を説明するための概念図である。
【
図9A】本発明による位置推定方法及びシステムにおけるディープラーニングネットワーク構造を説明するための概念図である。
【
図9B】本発明による位置推定方法及びシステムにおけるディープラーニングネットワーク構造を説明するための概念図である。
【
図9C】本発明による位置推定方法及びシステムにおけるディープラーニングネットワーク構造を説明するための概念図である。
【発明を実施するための形態】
【0018】
以下、添付図面を参照して本発明の実施形態について詳細に説明するが、図面番号に関係なく同一又は類似の構成要素には同一の符号を付し、それについての重複する説明は省略する。以下の説明で用いられる構成要素の接尾辞である「モジュール」や「部」は、明細書の作成を容易にするために付与又は混用されるものであり、それ自体が有意性や有用性を有するものではない。また、本発明の実施形態について説明するにあたり、関連する公知技術についての具体的な説明が本発明の実施形態の要旨を不明にすると判断される場合は、その詳細な説明を省略する。さらに、添付図面は本発明の実施形態の理解を助けるためのものにすぎず、添付図面により本発明の技術的思想が限定されるものではなく、本発明の思想及び技術範囲に含まれるあらゆる変更、均等物乃至代替物を含むものと理解すべきである。
【0019】
「第1」、「第2」などのように序数を含む用語は様々な構成要素を説明するために用いられるが、上記構成要素は上記用語により限定されるものではない。上記用語は1つの構成要素を他の構成要素と区別する目的でのみ用いられる。
【0020】
ある構成要素が他の構成要素に「連結」又は「接続」されていると言及された場合は、他の構成要素に直接連結又は接続されていてもよく、中間にさらに他の構成要素が存在してもよいものと解すべきである。それに対して、ある構成要素が他の構成要素に「直接連結」又は「直接接続」されていると言及された場合は、中間にさらに他の構成要素が存在しないものと解すべきである。
【0021】
単数の表現には、特に断らない限り複数の表現が含まれる。
【0022】
本明細書において、「含む」や「有する」などの用語は、本明細書に記載された特徴、数字、ステップ、動作、構成要素、部品又はそれらの組み合わせが存在することを指定しようとするものであり、1つ又はそれ以上の他の特徴、数字、ステップ、動作、構成要素、部品又はそれらの組み合わせの存在や付加可能性を予め排除するものではないと理解すべきである。
【0023】
前述したように、本発明は、室内空間でロボットなどのデバイスの位置を正確に把握できる位置推定方法及びシステムを提供するものである。特に、本発明は、室内空間での位置推定の限界を克服できる新たな方式のデータ処理方法を提案できる位置推定方法及びシステムを提供するものである。
【0024】
より具体的には、本発明は、人、構造物などのオブジェクト(object)の特性を考慮できるポイントクラウド(point cloud)ベースの位置推定方法及びシステムを提供するものである。本発明においては、ライダー(LiDAR:Light Detection And Ranging)を用いて、位置を推定する方法を提案する。
【0025】
一方、本発明における「位置を推定する」は、「位置を探す」、「位置を特定する」、「位置を検索する」、「位置を確認する」などのように、様々な表現に代えることができ、説明の便宜上、「推定」という表現に統一して記載する。
【0026】
本発明においては、ライダーから出力されるレーザ(laser)及びレーザがオブジェクトに到達して反射する反射信号に基づいて、空間に配置されたオブジェクトを検知することにより、空間的な特性を検知し、それを予め特定された参照マップ(map)と比較することにより、レーザが出力された領域に関する位置情報を推定する。
【0027】
一方、本明細書においては、本発明の要旨を曖昧にしないようにするために、ライダーについての技術的説明及びオブジェクトの検知についての技術的説明は省略する。
【0028】
なお、本発明において用いられる「オブジェクト」という用語は、ライダーによるセンシングの対象となる空間に配置された事物を意味するものであり、人、動物及び物体を全て含む概念として理解される。すなわち、オブジェクトは、「事物」として理解される。
【0029】
また、本発明において、推定の対象となる位置(又は場所、領域)は、レーザを出力するセンサ(又はライダー)の位置を含む領域として理解される。
【0030】
ここで、ライダーは、デバイス内に備えられてもよく、ライダーを備えるデバイスの種類は非常に様々である。すなわち、デバイスは、ライダーを備えることができれば、その種類は問わない。例えば、デバイスには、ロボット(robot)、無人移動マシーン、自律移動マシーンなどがある。
【0031】
一例として、ライダーがロボットに備えられた場合、本発明による位置推定方法及びシステムは「ロボットの位置を推定する」と表現することができる。
【0032】
一方、本発明は、室内空間の特性を反映してより正確な位置を推定する方法及びシステムに関するものであり、以下、本発明について添付の図面と共により具体的に説明する。
図1及び
図2は本発明による位置推定方法及びシステムを説明するための概念図であり、
図3及び
図4は本発明による位置推定方法における球面座標系を活用する方法を説明するための概念図である。
【0033】
図1に示すように、本発明は、ライダー11が備えられたデバイス10の位置を推定するものであり、以下、説明の便宜上、「ライダー11が備えられたデバイス10の位置を推定する」を「デバイス10の位置を推定する」と表現する。
【0034】
本発明は、ライダー11を用いて、デバイス10が位置する空間(又は周辺空間)20をスキャンし、その後、スキャン結果に基づいて、デバイス10の位置を推定することができる。一方、デバイス10を取り囲む周辺空間20は、同図に示すように、室内空間であってもよく、このような室内空間は、デパート、空港、学校、ビル、地下鉄駅、汽車駅、書店などのように、非常に多様な空間であり得る。
【0035】
一方、このような室内空間は、室外に比べて絶対的な空間自体が狭小であり、人21、23の動きや構造物などにより空間の閉塞が発生するので、デバイス10において周辺空間を正確にセンシングできない場合が発生する。その場合、デバイス10によりセンシングされた空間情報は、周辺空間に対して予め作成された参照マップ(map)とは異なる結果となる。例えば、参照マップ(map)は、誰もいない状態で空間のセンシングに基づいて作成されたものであってもよい。よって、
図1に示すように空間20に人21、23が位置する場合、当該空間20が、参照マップが作成された空間20と同じ空間であるにもかかわらず、デバイス10においては、人21、23の存在により、参照マップとは異なる空間情報を取得するようになる。そこで、本発明においては、このようにオブジェクトが存在してもデバイス10の位置をより正確に推定できる方法について提案する。
【0036】
より具体的には、
図2に示すように、本発明による位置推定システム100は、スキャン部110、処理部120、ディープラーニング部130、保存部140及び制御部150のうちの少なくとも1つを含んでもよい。
【0037】
ここで、スキャン部110は、デバイス10のライダー11を含むものであって、ライダー11から出力されるレーザに基づいて、デバイス10を取り囲む周辺空間をスキャンするように構成されてもよい。
【0038】
処理部120は、スキャン部110による周辺空間のスキャンに基づいて、周辺空間に関する情報を処理するように構成されてもよい。処理部120は、レーザの反射信号に基づいて、周辺空間に関する空間情報を処理するように構成されてもよい。
【0039】
一方、空間情報は、
図3に示すように、球面座標系(又は球面座標(spherical coordinate))上に示される情報からなるようにしてもよい。
【0040】
すなわち、処理部120は、スキャン部110によりスキャンされた周辺空間に関する構造的な情報(ポイントクラウド)を球面座標上のボクセルに関する情報にエンコードするように構成されてもよい。
【0041】
ここで、構造的な情報は、オブジェクトにより領域が占有されているかに関する情報を含むものであって、レーザがオブジェクトに到達し、到達したレーザが反射することに基づいて取得されるものであってもよい。
【0042】
一方、空間情報は、球面座標系を形成するそれぞれのボクセル(voxel)に関する占有情報を含んでもよい。また、占有情報は、それぞれのボクセルに対するオブジェクトの占有状態に関する情報であり、それについては後半で具体的に説明する。
【0043】
次に、ディープラーニング部130は、空間情報を用いて、空間情報に対応する特徴ベクトルを抽出するように構成されてもよい。
【0044】
ディープラーニング部130は、少なくとも1つの人工知能アルゴリズムを用いて、特徴ベクトルを抽出するように構成されてもよい。
【0045】
ディープラーニング部130は、ディープラーニングネットワークを含み、そのディープラーニングネットワークは、少なくとも1つのデータ前処理モジュール(又は前処理器)を含んでもよい。
【0046】
より具体的には、本発明のディープラーニングネットワークは、空間情報の前処理を行う微細特徴抽出器(Fine Feature Extractor)、粗特徴抽出器(Coarse Feature Extractor)及び積分器(integrator)のうちの少なくとも1つを含んでもよい。
【0047】
また、本発明によるディープラーニング部130は、前述した前処理モジュールを通過したデータをNetVLADに入力することにより、特徴ベクトルを抽出することができる。
【0048】
ここで、特徴ベクトルは、スキャン部110によりスキャンされた周辺空間(又は空間)に関するスキャン情報(又は空間情報)をベクトルで表現したものであり、このような特徴ベクトルは、予め特定された参照マップとの比較対象となる。
【0049】
特徴ベクトルは、様々な用語で呼ばれ、例えばグローバルベクトル(global vector)、グローバルディスクリプタベクトル(global descriptor vector)とも呼ばれる。
【0050】
一方、予め特定された参照マップは、周辺空間に対して事前に構築された複数のベクトルを含んでもよく、このような複数のベクトルの集合は、グローバルディスクリプタセット(global descriptor set)とも呼ばれる。
【0051】
次に、保存部140は、本発明に関連する様々な情報を保存するように構成される。
【0052】
制御部150は、上記構成要素の少なくとも1つの制御を行い、本発明による位置推定のために全般的な制御を行うことができる。
【0053】
制御部150は、ディープラーニング部130により抽出された特徴ベクトルと、予め特定された参照マップとを比較し、位置推定の対象となる基準領域に関する位置情報を推定することができる。
【0054】
より具体的には、制御部150は、予め特定された参照マップデータ(例えば、複数のベクトルの集合)と特徴ベクトルとを比較し、予め特定された参照マップデータから、特徴ベクトルに最も近い(又は最も類似している)ベクトルを特定することができる。また、特定されたベクトルにマッチングされた位置情報を、基準領域に関する位置情報として推定することができる。
【0055】
一方、本発明において、特徴ベクトルとの比較対象は、予め特定された参照マップに含まれる複数のベクトルに限定されない。
【0056】
すなわち、本発明においては、予め特定された参照マップが存在しなくても、SLAM(Simultaneous Localization and Mapping)技術に基づいて生成されたマップと特徴ベクトルとを比較することもできる。その場合、制御部150は、スキャン部110によりスキャンされた情報に基づいて、空間20のマップを生成し、生成されたマップを構成するデータセット(set)(例えば、複数のベクトルの集合からなる)と特徴ベクトルとを比較することができる。ここで、生成されたマップを構成するデータセットと、特徴ベクトルとは、単一のデータセット内に含まれてもよい。
【0057】
一方、図示していないが、本発明による位置推定システム100は、通信部をさらに含み、通信部は、スキャン部110に含まれるライダー11が搭載されたデバイス10と通信するように構成されてもよい。
【0058】
また、通信部は、少なくとも1つの外部サーバ(又は外部ストレージ)200と通信するように構成されてもよい。ここで、外部サーバ200は、同図に示すように、クラウドサーバ210とデータベース220の少なくとも一方を含むように構成されてもよい。一方、外部サーバ200は、制御部150の少なくとも一部の役割を果たすように構成されてもよい。すなわち、データ処理やデータ演算などは、外部サーバ200により行われるようにしてもよく、本発明において、その方式に特に制限はない。
【0059】
一方、本発明において、制御部150は、スキャン部110から周辺空間をスキャンするためのレーザが出力され、レーザの反射信号に基づいて、周辺空間に関する空間情報が処理されるように、処理部120を制御することができる。
【0060】
ここで、空間情報は、反射信号に対応するものであり、制御部150は、このような空間情報を、
図3に示すように、球面座標300上の情報として表すことができる。
【0061】
球面座標300の原点301は、同図に示すように、レーザが出力された地点11aであって、スキャン部110に含まれるライダー11の位置11aに対応する。本発明においては、レーザが出力された地点11aを含む領域を「基準領域」とする。本発明において推定の対象となる位置は、「基準領域」を含む位置として理解される。
【0062】
球面座標300上の空間情報は、原点301を基準として、i)原点からの距離r、ii)z軸となす角度θ、及びiii)x軸となす角度Φに特定することができる。本発明において、球面座標300の原点は、レーザが出力された地点に対応し、よって、基準領域は、球面座標300の原点301に対応する。よって、本明細書においては、原点と基準領域を混用する。
【0063】
本発明においては、便宜上、i)原点からの距離rを「半径距離r」とし、ii)z軸となす角度θを「極角θ」とし、iii)x軸となす角度Φを「方位角(放射角)Φ」とする。ここで、球面座標300上の情報は、(r,θ,Φ)で表すことができる。
【0064】
球面座標300の原点301は、(0,0,0)に該当する座標を有し、それはレーザが出力された地点11aの座標である。
【0065】
図3に示すように、ライダー11から出力されるレーザ12a、12b、12c、12d、12e、12fのそれぞれは、空間に位置するオブジェクトで反射した地点を基準に、球面座標300上の特定の地点に該当する座標として表すことができる。
【0066】
ライダー11から出力されるレーザ12a、12b、12c、12d、12e、12fは、放射特性を有し、本発明においては、そのレーザの放射特性に応じて空間情報をより正確に表現するために、球面座標上に空間情報を表すことができる。
【0067】
一方、制御部150は、
図4の(a)に示すように、空間情報を球面座標上のボクセルにエンコードすることができる。
【0068】
一方、
図4の(a)に示すように、球面座標系は、複数のボクセルに分けられる。球面座標系を形成するボクセルは、所定の変位Δだけ半径距離r、極角θ及び方位角Φのそれぞれを分割することにより定義されるボリュームを有する。よって、それぞれのボクセルは、(Δr,Δθ,ΔΦ)に該当する体積を有する。
【0069】
ここで、所定の変位Δの程度は、半径距離r、極角θ及び方位角Φのそれぞれで異なり得る。このようなボクセルのそれぞれは、V(ri,θj,Φk)と定義することができる。ここで、i、j、kは、半径距離r、極角θ及び方位角Φの分割の数(手順又は次数)を示すものであって、原点を基準に遠くなるほどさらに大きくなる数を有する。
【0070】
本発明においては、説明の便宜上、半径距離rに対しては、特定の距離を基準に4個の領域に分割し、極角θに対しては、180度を15個の領域に分割(1個の領域当たり12度の変位を有する)し、方位角(Φ)に対しては、360度を8個の領域に分割(1個の領域当たり45度の変位を有する)する。ここで、半径距離rの分割の基準となる「特定の距離」は、ライダーの到達閾値距離であり得る。
【0071】
一方、上記の場合、球面座標は、i)半径距離を基準に4個の領域に分割され(Nr=4)、ii)極角を基準に15個の領域に分割され(Nθ=15)、方位角を基準に8個の領域に分割される(NΦ=8)。この場合、球面座標系は、合計320(4×15×8=320)個のボクセルに分割される。
【0072】
ここで、ボクセルV(ri,θj,Φk)を定義するためのi,j,kは、それぞれi∈[1,Nr=4]、j∈[1,Nθ=15]、k∈[1,NΦ=8]である。
【0073】
なお、本発明においては、説明の便宜上、3次元の球面座標を、
図4の(b)に示すように、簡単に2次元の座標で表現する。
図4の(b)に示す2次元座標は、極角θに関する表現が省略されているものであって、2次元座標の極角がθj=1であると仮定すると、特定のボクセル410は、V(r2,θ1,Φ1)に表現することができる。
【0074】
以下、前述した球面座標上のボクセルを用いて位置情報を推定する方法について、添付の図面と共に具体的に説明する。
図5は本発明による位置推定方法を説明するためのフローチャートであり、
図6A、
図6B、
図7A、
図7B、
図8A及び
図8Bは本発明による位置推定方法及びシステムにおける占有状態を定義する方法を説明するための概念図である。また、
図9A、
図9B及び
図9Cは本発明による位置推定方法及びシステムにおけるディープラーニングネットワーク構造を説明するための概念図である。
【0075】
まず、本発明においては、基準領域から出力されるレーザを用いて、周辺空間をスキャンするステップが行われる(S510)。前述したように、基準領域は、レーザが出力された地点11a(
図3参照)を含む領域であって、本発明において推定の対象となる位置に該当する。次に、本発明においては、レーザの反射信号に基づいて、周辺空間に関する空間情報を処理するステップが行われる(S520)。
【0076】
ここで、空間情報を処理するステップは、レーザの反射信号を受信し、受信した反射信号に対応して、球面座標上の複数のボクセル(voxel)のそれぞれに対して占有情報を割り当てるステップを含んでもよい。
【0077】
より具体的には、
図6Aの(a)に示すように、周辺空間にオブジェクト610が存在する場合、レーザは、オブジェクト610に到達することに基づいて屈折する。このような屈折に基づいて、レーザの反射信号が生成され、スキャン部110は、このような反射信号を受信することができる。また、処理部120は、このような反射信号を用いて空間情報を処理するように構成されてもよい。
【0078】
処理部120は、レーザが出力されてから反射信号が受信されるまでの時間に基づいて、基準領域601から特定のオブジェクト610までの距離を測定することができる。また、処理部120は、スキャン部110からレーザの極角情報及び方位角情報を収集することができる。このように、処理部120は、レーザが基準領域601からオブジェクトまで到達した距離、レーザの極角情報及び方位角情報を特定することができる。また、処理部120は、このように特定された情報に基づいて、特定のオブジェクト610が位置する(又は存在する)ボクセルを特定することができる。
【0079】
さらに、処理部120は、レーザの反射信号に基づいてボクセルが特定された場合、当該ボクセルにオブジェクトが存在することを示す情報を割り当てることができる。このように、処理部120は、ボクセル毎にオブジェクトの存在に関する占有情報を割り当てることができる。
【0080】
例えば、第1ボクセル602及び第2ボクセル603に該当する領域にオブジェクト610が存在する場合、基準領域601から出力されたレーザは、第1ボクセル602及び第2ボクセル603で反射する。処理部120は、第1ボクセル602及び第2ボクセル603での反射信号に基づいて、第1ボクセル602及び第2ボクセル603にオブジェクトが存在すると判断することができる。また、処理部120は、このようなオブジェクトの存在に関する占有情報を第1ボクセル602及び第2ボクセル603に割り当てることができる。
【0081】
一方、
図6Aの(a)に示すように、特定のオブジェクト610にレーザが到達した場合、レーザが到達した特定のオブジェクト610でレーザが反射するので、
図6Aの(b)に示すように、特定のオブジェクト610により遮蔽された他のオブジェクト620にはレーザが到達しなくなる。
【0082】
この場合、スキャン部110は、特定のオブジェクト610により遮蔽された領域に対しては、レーザを用いてセンシングすることができない。よって、処理部120は、レーザが到達しない領域を考慮して、ボクセル毎に占有情報を割り当てる。
【0083】
処理部120は、基準領域601を基準として、周辺空間に対応する球面座標(spherical coordinate)上の複数のボクセル(voxel)に対してオブジェクトの占有状態に関する占有情報を割り当てることができる。
【0084】
例えば、
図6Bの(a)を参照すると、従来は、ボクセル毎に占有情報を割り当てる場合、オブジェクトが存在するボクセル602、603に情報「1」を割り当て、オブジェクトが存在しないボクセル608、609に情報「0」を割り当てていた。ただし、その場合、オブジェクトにより遮蔽された領域(レーザが到達しない領域)に該当するボクセル604、605、606、607も、オブジェクトが存在しないボクセルとして処理していた。つまり、従来は、オブジェクトが存在しないボクセル608、609とオブジェクトにより遮蔽された領域(レーザが到達しない領域)に該当するボクセル604、605、606、607の両方に占有情報「0」を割り当てていた。このような従来方式の場合、実際にはオブジェクトにより遮蔽された領域にオブジェクトが存在するにもかかわらず、オブジェクトが存在しないものとして処理され、その結果、位置推定の性能が低下するという問題が生じていた。
【0085】
そこで、本発明においては、このような問題を解決するために、ボクセルの特性を少なくとも3つに分けて占有情報を割り当てることにより、位置推定の性能を向上させる方法を提案する。より具体的には、本発明において、球面座標上の複数のボクセルは、i)レーザが通過した第1ボクセルタイプ、ii)オブジェクトによりレーザが反射した第2ボクセルタイプ、及びiii)オブジェクトによりレーザが到達しない第3ボクセルタイプに分けられる。
【0086】
処理部120は、レーザの反射信号に基づいて、第1~第3ボクセルタイプにそれぞれ対応するボクセルにそれぞれ異なる占有情報を割り当てることができる。
【0087】
本発明においては、ボクセルを特定する情報(例えば、ボクセルの座標情報)及びボクセルの占有情報を含めて「空間情報」とする。
【0088】
一方、前述したように、処理部120は、レーザの反射信号に基づいて、第1~第3ボクセルタイプにそれぞれ対応するボクセルに異なる占有情報を割り当てることができる。ここで、異なる占有情報は、i)レーザが通過した第1ボクセルタイプに該当するボクセルに割り当てられる第1占有情報、ii)レーザが反射した第2ボクセルタイプに該当するボクセルに割り当てられる第2占有情報、及びiii)レーザが到達しない第3ボクセルタイプに該当するボクセルに割り当てられる第3占有情報を含んでもよい。
【0089】
本発明において、第3ボクセルタイプに該当するボクセルに割り当てられる第3占有情報は、第1ボクセルタイプに該当するボクセルに割り当てられる第1占有情報と第2ボクセルタイプに該当するボクセルに割り当てられる第2占有情報との間の値(value)を有するようにしてもよい。
【0090】
このように3つのタイプを有する占有情報は、Ternary Occupancy Valueとも呼ばれる。一方、占有情報は、ボクセルにオブジェクトが存在するか又は存在しないかの確率値であって、ボクセルにオブジェクトが存在する可能性が明らかな場合、当該ボクセルに「1」(オブジェクトが存在する確率が100%)の値を割り当てることができる。また、ボクセルにオブジェクトが存在する可能性がない場合、当該ボクセルに「0」(オブジェクトが存在する確率が0%)の値を割り当てることができる。さらに、オブジェクトにより遮蔽された領域は、オブジェクトが存在する可能性もあり、存在しない可能性もあるので、0と1との間の確率値を有するようにすることができる。
【0091】
よって、本発明において、処理部120は、
図6Bの(b)及び(c)に示すように、レーザが通過した第1ボクセルタイプに該当するボクセル608、609に第1占有情報を割り当てることができる。本発明において、第1占有情報は、「0」の値を有するようにすることができる。ここで、レーザが通過したとは、レーザが反射することなく該当領域を貫通したことをいい、これは、オブジェクトが該当領域に存在しないことに起因する。
【0092】
また、処理部120は、
図6Bの(b)及び(c)に示すように、レーザが反射した第2ボクセルタイプに該当するボクセル602、603に第2占有情報を割り当てることができる。本発明において、第2占有情報は、「1」の値を有するようにすることができる。ここで、レーザが反射したとは、レーザがオブジェクトに当たったことを意味するものであり、これは、オブジェクトが該当領域に存在することに起因する。
【0093】
さらに、処理部120は、
図6Bの(b)及び(c)に示すように、レーザが到達しない第3ボクセルタイプに該当するボクセル604、605、606、607に第3占有情報を割り当てることができる。本発明において、第3占有情報は、「0.5」の値に設定することができる。なお、本発明においては、第3占有情報を「0.5」の値に同一に設定しているが、場合によっては、第3占有情報が複数の値を含むようにしてもよい。すなわち、第3ボクセルタイプに該当するボクセルに割り当てられる占有情報は、異なる値を有するようにしてもよい。例えば、処理部120は、他の基準領域でのスキャン結果に基づいて、レーザが到達しない第3ボクセルタイプに該当するボクセルの占有情報を決定することができる。すなわち、処理部120は、他の基準領域でのスキャン結果に基づいて、第3ボクセルタイプに該当するボクセルに該当する領域にオブジェクトが存在する可能性が高い場合、0.5よりも1に近い値を割り当てることができる。それとは異なり、処理部120は、他の基準領域でのスキャン結果に基づいて、第3ボクセルタイプに該当するボクセルに該当する領域にオブジェクトが存在する可能性が低い場合、0.5よりも0に近い値を割り当てることができる。このように、処理部120は、他の基準領域でのスキャン結果に応じた確率に基づいて、第3ボクセルタイプに該当するボクセルに関する占有情報を割り当てることができる。
【0094】
前述したように、処理部120は、レーザの反射信号に基づいて、球面座標上の複数のボクセルに対して占有状態を定義することができる。占有状態を定義するとは、複数のボクセルのそれぞれに対して占有情報を割り当てることを意味する。
【0095】
なお、本発明において、処理部120は、球面座標上に存在する全てのボクセルに対して占有情報を割り当てることができる。その結果、球面座標に含まれる全てのボクセルにそれぞれ対応するベクトルを取得することができる。このようなベクトルの取得は、ディープラーニング部130により行うことができる。
【0096】
以下、複数のボクセルのそれぞれに対して占有情報を割り当てる方法についてより具体的に説明する。説明の便宜上、
図7Aに示すように、球面座標は、i)半径距離を基準に4個の領域に分割され(Nr=4)、ii)極角を基準に15個の領域に分割され(Nθ=15)、方位角を基準に8個の領域に分割される(NΦ=8)と仮定する。この場合、球面座標系は、合計320(4×15×8=320)個のボクセルに分割される。ここで、ボクセルV(ri,θj,Φk)を定義するためのi,j,kは、それぞれi∈[1,Nr=4]、j∈[1,Nθ=15]、k∈[1,NΦ=8]である。
【0097】
この場合、
図7Bに示すように、ボクセル領域のそれぞれの位置は、V(ri,θj,Φk)に特定することができる。
図7Bは極角θがj=1である場合の2次元座標である。
【0098】
説明のために、
図8Aに示すように、周辺空間に対応する球面座標領域上の第1、第2及び第3ボクセル905、906、908に対応する領域にオブジェクト910が存在する場合を仮定する。ここで、
図8Aは極角θがj=1である場合の2次元座標である。
【0099】
本発明においては、スキャン部110によりスキャンを行った結果、第1及び第2ボクセル905、906に対応する領域から反射信号が受信される。オブジェクト910は第3ボクセル908に対応する領域にも存在するが、第3ボクセル908に対応する領域は第2ボクセル906に対応する領域に位置するオブジェクトにより遮蔽されているので、第3ボクセル908に対応する領域からの反射信号は受信されない。
【0100】
処理部120は、特定の領域から反射信号を受信した場合、反射信号が受信された特定の領域に対応するボクセルと同じ極角及び方位角を有する全てのボクセルに対して占有情報を割り当てることができる。すなわち、反射信号に基づいて、オブジェクトが存在するボクセルが特定された場合、処理部120は、特定されたボクセルを基準として、特定されたボクセルと同じ極角及び方位角を有する全てのボクセルの占有情報を割り当てることができる。
【0101】
ここで、反射信号が受信された特定の領域に対応するボクセルは、前述した第2ボクセルタイプに該当するボクセルとして理解される。
【0102】
ここで、「特定されたボクセルと同じ極角及び方位角を有する全てのボクセル」とは、極角及び方位角はどちらも同じであるが、「半径距離」が異なるボクセルを意味する。
【0103】
本発明においては、説明の便宜上、「特定されたボクセルと同じ極角及び方位角を有し、半径距離が異なるボクセル」を、特定のボクセル906の「周辺ボクセル」とする。
【0104】
例えば、特定のボクセル906(V3,1,1)に対応する領域から反射信号を受信した場合、処理部120は、特定のボクセル906を基準として、特定のボクセル906の周辺ボクセル902、904、908の占有情報を割り当てることができる。
【0105】
すなわち、反射信号が受信されたボクセル906が特定された場合、処理部120は、特定されたボクセル906を基準として、周辺ボクセルのボクセルタイプを決定することができる。また、決定されたボクセルタイプによって、周辺ボクセルに占有情報を割り当てることができる。
【0106】
より具体的には、処理部120は、特定のボクセル906よりも、基準領域801に近くに位置する少なくとも1つのボクセル902、904を、「レーザ信号が通過したボクセル」に該当する第1ボクセルタイプに決定することができる。
【0107】
また、処理部120は、反射信号が受信された特定のボクセル906を、「レーザ信号が反射したボクセル」に該当する第2ボクセルタイプに決定することができる。
【0108】
さらに、処理部120は、反射信号が受信された特定のボクセル906よりも、基準領域801から遠くに位置する少なくとも1つのボクセル908を、「レーザ信号が到達しないボクセル」に該当する第3ボクセルタイプに決定することができる。
【0109】
さらに、処理部120は、第1ボクセルタイプに該当する少なくとも1つのボクセル902(V1,1,1)、904(V2,1,1)に対して、
図8BのNo.1行に示すように、占有情報として「0」の値を一括して割り当てることができる。
【0110】
さらに、処理部120は、第2ボクセルタイプに該当する特定のボクセル906(V3,1,1)に対して、同図に示すように、占有情報として「1」の値を割り当てることができる。
【0111】
さらに、処理部120は、第3ボクセルタイプに該当する周辺ボクセル908(V4,1,1)に対して、同図に示すように、占有情報として「0.5」の値を一括して割り当てることができる。
【0112】
このように、処理部120は、第2ボクセルタイプ(オブジェクトが存在するボクセル)のみ特定された場合、同じ極角及び方位角を有する周辺ボクセルに関するスキャン情報(反射信号)が存在しなくても、周辺ボクセルに対して占有情報を割り当てることができる。
【0113】
このような方式で、処理部120は、
図8Bの(a)及び(b)に示すように、球面座標上の全てのボクセルに対して占有情報を割り当てることができる。
図8Bの(b)はj=2である場合のボクセル情報であり、図示していないが、処理部120は、極角が15個の領域に分けられた場合、j=15までに該当するボクセル情報を全て割り当てることができる。
【0114】
処理部120は、このような方式で、球面座標上の全てのボクセルに対して占有情報を割り当てることができる。
【0115】
前述したように、レーザの反射信号に基づいてボクセルに関する占有情報が割り当てられた場合、それぞれのボクセル及びそれに関する占有情報を含む空間情報を用いて、特徴ベクトルを抽出するステップが行われる。
【0116】
本発明においては、空間情報を入力データとするディープラーニングネットワークを用いて、空間情報が反映された特徴ベクトルを抽出するステップが行われる(S530、
図5参照)。
【0117】
ここで、ディープラーニング部130は、空間情報を用いて、空間情報に対応する特徴ベクトルを抽出するように構成されてもよい。ディープラーニング部130は、
図9Aに示すように、ディープラーニングネットワークを含み、そのディープラーニングネットワークは、少なくとも1つのデータ前処理モジュール(又は前処理器)を含んでもよい。
【0118】
同図に示すように、ディープラーニングネットワークには、特定のボクセルに関する占有情報が入力データとして入力され、それぞれのボクセルは、Nr、Nθ、NΦとして特定することができる。
【0119】
ここで、ディープラーニングネットワークに入力されるデータ1001は、B×Nr×Nθ×NΦ×1であり、ここで、Bとは、バッチ数(B for number of batches)を意味する。Bは、場合によっては省略される。なお、ここで、「1」は、特定されたボクセルの占有情報であって、前述したように、特定されたボクセルの占有状態によって1、0、0.5などの値に変更することができる。
【0120】
一方、本発明のディープラーニングネットワークは、空間情報の前処理を行う微細特徴抽出器(Fine Feature Extractor)1010、粗特徴抽出器(Coarse Feature Extractor)1020及び積分器(integrator)1030のうちの少なくとも1つを含んでもよい。
【0121】
微細特徴抽出器(Fine Feature Extractor)1010と粗特徴抽出器(Coarse Feature Extractor)1020とは、並列構造で設計されてもよい。微細特徴抽出器(Fine Feature Extractor)1010及び粗特徴抽出器(Coarse Feature Extractor)1020からそれぞれ抽出されたベクトルは、列(column)に沿って連結され、連結されたベクトルは、さらに積分器(integrator)1030の入力データとなる。
【0122】
一方、微細特徴抽出器(Fine Feature Extractor)1010は、隣接するボクセル間の構造的関係をエンコードするように構成されてもよい。微細特徴抽出器(Fine Feature Extractor)1010は、入力されたボクセル情報に該当するボクセル(ターゲットボクセル)と隣接するボクセルに関する占有情報を用いて、周辺空間を細密に描くベクトルを抽出することができる。
【0123】
微細特徴抽出器(Fine Feature Extractor)1010は、3次元コンボリューションネットワークの複数の層で構成されてもよい。
【0124】
また、粗特徴抽出器(Coarse Feature Extractor)1020は、各ボクセルがより広い空間に関する情報を含むようにする構造を設計し、それからベクトルを抽出することができる。粗特徴抽出器(Coarse Feature Extractor)1020は、入力ボクセルから構造的にさらに粗い特徴をエンコードし、その結果、3Dプーリング層(pooling layer)により、特徴寸法を元の寸法の1/4に減少させる。また、粗特徴抽出器(Coarse Feature Extractor)1020は、デコンボリューション層により、減少した特徴寸法を原本の寸法に復元することができる。
【0125】
微細特徴抽出器(Fine Feature Extractor)1010及び粗特徴抽出器(Coarse Feature Extractor)1020により抽出されたベクトルは、それぞれ64次元のベクトルからなり、このような64次元のベクトルは、列に沿って連結され、128次元のベクトルとなる。
【0126】
本発明において、微細特徴抽出器(Fine Feature Extractor)1010及び粗特徴抽出器(Coarse Feature Extractor)1020により抽出された(又はエンコードされた)ベクトルは、サブ特徴ベクトルとする。この場合、微細特徴抽出器(Fine Feature Extractor)1010により抽出されるベクトルは、第1サブ特徴ベクトルとし、粗特徴抽出器(Coarse Feature Extractor)1020により抽出されるベクトルは、第2サブ特徴ベクトルとする。
【0127】
このように、第1及び第2サブ特徴ベクトルは、列に沿って連結され、第1及び第2サブ特徴ベクトルを組み合わせたベクトルは、「サブ特徴ベクトル」とする。このようなサブ特徴ベクトル1002は、積分器(integrator)1030の入力データとして入力される。
【0128】
次に、積分器(integrator)1030について説明すると、積分器は、特定のボクセルに対応するサブ特徴ベクトルと、特定のボクセルに関連する少なくとも1つの周辺ボクセルに対応するサブ特徴ベクトルとを組み合わせるように構成されてもよい。
【0129】
ここで、特定のボクセルに関連する少なくとも1つの周辺ボクセルとは、特定のボクセルと半径距離及び極角が同じであり、かつ方位角が異なるボクセルを意味する。
【0130】
すなわち、本発明における「周辺ボクセル」は、必ずしも互いに隣接するボクセルを意味するものではなく、互いに関連性のあるボクセルであれば十分である。
【0131】
このように、ディープラーニング部130は、特定のボクセルの占有情報及び特定のボクセルに関連する少なくとも1つの周辺ボクセルの占有情報を用いて、特徴ベクトルを生成することができる。
【0132】
例えば、
図9Bに示すように、積分器(integrator)1030は、特定のボクセル1041(V3,1,2)の方位角を基準として、+90度(degree)又は-90度を有する周辺ボクセルの占有情報(又はサブ特徴ベクトル)を用いて、単位ベクトルを生成することができる。この場合、積分器は、特定のボクセル1041と半径距離及び極角が同じであり、かつ方位角Φを基準として、Φ+90、Φ+180、Φ+270の方位角を有する第1~第3周辺ボクセル1042、1043、1044の占有情報(又はサブ特徴ベクトル)を用いて、単位ベクトルを生成することができる。積分器(integrator)1030は、
図9Bの(b)の表に示すように、特定のボクセル1041(V3,1,2)の占有情報「1」(1051参照)、第1周辺ボクセル1042(V3,1,4)の占有情報「0」(1052参照)、第2周辺ボクセル1043(V3,1,6)の占有情報「0」(1053参照)、第3周辺ボクセル1044(V3,1,8)の占有情報「0」(1054参照)を用いて、単位ベクトルを生成することができる。
【0133】
このように、90度を基準に4方向のボクセルの情報を用いる場合、積分器(integrator)1030は、クアッド・ビュー積分器(Quad-View Integrator)とも呼ばれる。
【0134】
一方、本発明において、特定のボクセルと共に考慮する方位角基準の方向の数、すなわちボクセルの数は制限されず、場合によっては様々に変形できる。
【0135】
ディープラーニング部130は、
図9Cに示すように、特定のボクセル1041及び第1~第3周辺ボクセル1042、1043、1044に関する空間情報(ボクセルを特定する情報(半径距離、極角、方位角情報)及び占有情報を含む)を、微細特徴抽出器(Fine Feature Extractor)1010及び粗特徴抽出器(Coarse Feature Extractor)1020の入力データとして入力することができる。また、ディープラーニング部130は、微細特徴抽出器(Fine Feature Extractor)1010及び粗特徴抽出器(Coarse Feature Extractor)1020を用いて、特定のボクセル1041及び第1~第3周辺ボクセル1042、1043、1044のそれぞれに対するサブ特徴ベクトル1002a、1002b、1002c、1002dを抽出することができる。さらに、ディープラーニング部130は、特定のボクセル1041及び第1~第3周辺ボクセル1042、1043、1044のそれぞれに対するサブ特徴ベクトル1002a、1002b、1002c、1002dを積分器1030により組み合わせ、特定のボクセルに対する単位ベクトル1030aを生成することができる。このように、積分器1030においては、球面座標上の全てのボクセルに対して単位ベクトルをそれぞれ生成し、生成された単位ベクトルをNetVLADに入力することにより、特徴ベクトルを抽出することができる。
【0136】
このように、本発明においては、特定のボクセルに対して、特定のボクセル周辺のボクセル情報まで含む特徴ベクトルを抽出することにより、周辺空間に関する情報まで考慮して位置推定を行う位置推定方法及びシステムを提供することができる。
【0137】
ここで、特徴ベクトルは、スキャン部110によりスキャンされた周辺空間に関する空間情報(スキャン情報)をベクトルで表現したものであり、このような特徴ベクトルは、予め特定された参照マップとの比較対象となる。前述したように、特徴ベクトルは、様々な用語で呼ばれ、例えばグローバルベクトル(global vector)、グローバルディスクリプタベクトル(global descriptor vector)とも呼ばれる。
【0138】
このように、特徴ベクトルが抽出されると、本発明においては、予め特定された参照マップデータと特徴ベクトルとを比較し、基準領域に関する位置情報を推定するステップが行われるようにしてもよい(S540)。制御部150は、ディープラーニング部130により抽出された特徴ベクトルと、予め特定された参照マップとを比較し、位置推定の対象となる基準領域に関する位置情報を推定することができる。より具体的には、制御部150は、予め特定された参照マップデータ(例えば、複数のベクトルの集合)と特徴ベクトルとを比較し、予め特定された参照マップデータから、特徴ベクトルに最も近い(又は最も類似している)ベクトルを特定することができる。また、特定されたベクトルにマッチングされた位置情報を、基準領域に関する位置情報として推定することができる。
【0139】
一方、制御部150は、参照マップデータに含まれる複数の参照ベクトルと特徴ベクトルとを比較し、複数の参照ベクトルから、特徴ベクトルから基準距離(又は閾値距離)内に位置する特定の参照ベクトルを抽出することができる。また、抽出された特定の参照ベクトルにマッチングされた位置情報を、基準領域に関する位置情報として推定することができる。
【0140】
一方、基準距離内に位置する特定の参照ベクトルが複数である場合、制御部150は、複数の特定の参照ベクトルから、特徴ベクトルの近くに位置する参照ベクトルにマッチングされた位置情報を、基準領域に関する位置情報として推定することができる。
【0141】
以上説明したように、本発明による位置推定方法及びシステムは、レーザの反射信号に基づいて、オブジェクトの占有状態に関する情報をボクセル上に示すことができる。このとき、本発明は、空間を球面座標(spherical coordinate)上のボクセルに分割することにより、球面座標上のボクセル上にレーザの放射特性をより正確に反映することができ、その結果、より正確な位置を推定することができる。
【0142】
また、本発明は、オブジェクトの占有状態に関する情報を示す際に、レーザが到達しない空間に対する占有状態を新たに定義することにより、人、構造物などのオブジェクトなどにより閉塞された空間をさらに考慮することができる。この場合、レーザが到達しない空間の占有情報は、レーザが通過した領域又はレーザが反射した領域の占有情報とは異なる占有情報として定義することができる。このように、本発明は、閉塞された空間をさらに考慮して位置推定を行うことにより、室内空間でも正確度の高い位置推定を行うことができる。
【0143】
なお、本発明は、特定のボクセルだけでなく、特定のボクセルを取り囲む周辺空間に関する情報を共に反映できる積分器(integrator)を含むディープラーニングネットワークを提案することにより、位置推定の対象となる空間の特性を総合的に考慮することができ、その結果、位置推定の性能を向上させることができる。
【0144】
一方、前述した本発明は、コンピュータで1つ以上のプロセスにより実行され、コンピュータ読取可能媒体に格納可能なプログラムとして実現することができる。
【0145】
また、前述した本発明は、プログラム記録媒体にコンピュータ読取可能コード又はコマンドとして実現することができる。すなわち、本発明は、プログラムの形態で提供することができる。
【0146】
一方、コンピュータ読取可能媒体は、コンピュータシステムにより読み取り可能なデータが記録されるあらゆる種類の記録装置を含む。コンピュータ読取可能媒体の例としては、HDD(Hard Disk Drive)、SSD(Solid State Disk)、SDD(Silicon Disk Drive)、ROM、RAM、CD-ROM、磁気テープ、フロッピーディスク、光データ記憶装置などが挙げられる。
【0147】
また、コンピュータ読取可能媒体は、ストレージを含み、電子機器が通信によりアクセスできるサーバ又はクラウドストレージであり得る。この場合、コンピュータは、有線又は無線通信により、サーバ又はクラウドストレージから本発明によるプログラムをダウンロードすることができる。
【0148】
さらに、本発明において、前述したコンピュータは、プロセッサ、すなわち中央処理装置(CPU)が搭載された電子機器であり、その種類は特に限定されない。
【0149】
一方、本発明の詳細な説明は例示的なものであり、あらゆる面で制限的に解釈されてはならない。本発明の範囲は添付の特許請求の範囲の合理的解釈により定められるべきであり、本発明の等価的範囲内でのあらゆる変更が本発明の範囲に含まれる。