(57)【要約】【課題】ＧＰＳ等の外部測位系に依存することなく、移動物体の存在による影響を抑制した端末位置推定処理を実施することができる装置を提供する。【解決手段】本装置は、所定エリアにおける端末位置を推定する装置であって、端末の周辺に存在する物体観測結果である周辺物体情報を取得する周辺物体情報取得手段と、周辺物体情報に含まれる個々の物体の物体情報が、可動物体情報か否かを判定する周辺物体情報判定手段と、可動物体情報であると判定された物体情報に対し、除去処理、無効化処理又は情報量低減処理を施すことによって、周辺に存在する不動物体情報である周辺不動物体モデルを生成する周辺モデル生成手段と、予め生成されたモデルであってエリアに存在する不動物体情報である参照不動物体モデルにおける不動物体と、周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、端末の位置に係る情報を決定する端末位置決定手段とを有する。【選択図】図１
2020042447.tif 000002
【特許請求の範囲】
【請求項１】
所定のエリアにおける端末の位置を推定する端末位置推定装置であって、
当該端末の周辺に存在する物体に係る情報であって当該端末の位置における観測結果である周辺物体情報を取得する周辺物体情報取得手段と、
当該周辺物体情報に含まれる個々の物体に係る情報である物体情報が、可動物体に係る情報か否かを判定する周辺物体情報判定手段と、
当該周辺物体情報に含まれる情報のうち、可動物体に係る情報であると判定された物体情報に対し、除去処理、無効化処理又は情報量低減処理を施すことによって、周辺に存在する不動物体に係る情報である周辺不動物体モデルを生成する周辺モデル生成手段と、
予め生成されたモデルであって当該エリアに存在する不動物体に係る情報である参照不動物体モデルにおける不動物体と、当該周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、当該端末の当該エリア内における位置に係る情報を決定する端末位置決定手段と
を有することを特徴とする端末位置推定装置。
【請求項２】
当該エリアにおける複数の位置の各々における観測結果の情報であって当該位置の周辺に存在する物体に係る情報に基づいて、当該エリアに存在する物体に係る情報であるエリア内物体情報を生成し、
当該エリア内物体情報に含まれる情報のうち、可動物体に係る情報であると判定された物体情報に対し、除去処理、無効化処理又は情報量低減処理を施すことによって生成されたエリア内不動物体情報によって、当該参照不動物体モデルを生成又は更新する
参照モデル管理手段を更に有することを特徴とする請求項１に記載の端末位置推定装置。
【請求項３】
当該不動物体に係る情報は、当該不動物体における物体種別情報と不動物体間距離に係る情報とを含むことを特徴とする請求項１又は２に記載の端末位置推定装置。
【請求項４】
前記端末位置決定手段は、
当該端末の当該エリア内における位置に係る情報として、当該端末の当該エリア内における位置の候補に係る情報である端末位置候補情報を決定し、
参照不動物体モデルにおける当該端末位置候補情報に係る位置に存在する不動物体と、当該周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、当該端末の位置に係る情報を決定する
ことを特徴とする請求項１から３のいずれか１項に記載の端末位置推定装置。
【請求項５】
前記端末位置決定手段は、当該参照不動物体モデルに含まれる所定の不動物体についての当該周辺不動物体モデルとの照合結果に基づいて、当該端末位置候補情報を決定することを特徴とする請求項４に記載の端末位置推定装置。
【請求項６】
前記端末位置決定手段は、当該参照不動物体モデルにおける当該端末位置候補情報に係る位置に存在する不動物体に係る情報と、当該周辺不動物体モデルにおける該不動物体に対応する不動物体に係る情報との間における重畳の度合いに基づいて、当該端末の位置を決定することを特徴とする請求項４又は５に記載の端末位置推定装置。
【請求項７】
当該周辺物体情報は、当該端末の周辺に存在する物体に係る周辺点群情報であり、
前記周辺物体情報判定手段は、点群情報の識別器を用いて、当該周辺点群情報に含まれる個々の物体に係る点群情報が、予め設定された可動物体に係る点群情報であるか否かを判定し、
前記周辺モデル生成手段は、当該周辺点群情報に含まれる情報のうち、可動物体に係る点群情報であると判定された点群情報を除去することによって、周辺に存在する不動物体に係る点群情報である周辺不動物体モデルを生成し、
前記端末位置決定手段は、
予め生成されたモデルであって当該エリアに存在する不動物体に係る点群情報である参照不動物体モデルから、個々の不動物体をノードとして当該不動物体間の距離をエッジとした参照不動物体モデルに係るグラフを生成し、当該参照不動物体モデルに係るグラフと、当該周辺不動物体モデルに含まれる個々の不動物体をノードとして当該不動物体間の距離をエッジとした周辺不動物体モデルに係るグラフとの間でマッチング処理を行って、当該端末位置候補情報から、当該端末の位置に係る端末位置候補情報を選択し、
当該参照不動物体モデルにおける選択された端末位置候補情報に係る位置に存在する不動物体に係る点群情報と、当該周辺不動物体モデルにおける該不動物体に対応する不動物体に係る点群情報との間の重畳の度合いを最大にする点群平行移動量及び点群回転量に基づいて、当該端末の位置を決定する
ことを特徴とする請求項４から６のいずれか１項に記載の端末位置推定装置。
【請求項８】
前記端末位置決定手段は、当該重畳の度合いを最大にする点群平行移動量及び点群回転量に基づいて、当該端末の向きも決定することを特徴とする請求項７に記載の端末位置推定装置。
【請求項９】
前記端末位置推定装置は、当該周辺点群情報を、点データ間の距離に基づいて、互いに隣接した点データの集合である物体毎の点群情報に区分する周辺物体情報区分手段を更に有し、
前記周辺モデル生成手段は、当該物体毎の点群情報のうち、可動物体に係る点群情報であると判定された点群情報を除去することによって当該周辺不動物体モデルを生成する
ことを特徴とする請求項７又は８に記載の端末位置推定装置。
【請求項１０】
当該周辺物体情報は、当該端末の周辺に存在する物体に係る周辺画像情報であり、
前記周辺物体情報判定手段は、画像情報の識別器を用いて、当該周辺画像情報に含まれる個々の物体に係る画像部分情報が、予め設定された可動物体に係る画像部分情報であるか否かを判定し、
前記周辺モデル生成手段は、当該周辺画像情報に含まれる情報のうち、可動物体に係る画像部分情報であると判定された画像部分情報に対しマスキング処理を施すことによって、周辺に存在する不動物体に係る画像情報である周辺不動物体モデルを生成し、
前記端末位置決定手段は、
予め生成されたモデルであって当該エリアに存在する不動物体に係る画像情報である参照不動物体モデルから又は該モデルにおける端末位置の候補となる部分から、個々の不動物体に係る画像部分情報を抽出し、当該画像部分情報と、当該周辺不動物体モデルに含まれる個々の不動物体に係る画像部分情報との間における画像重畳の度合いに基づいて、当該端末の位置を決定する
ことを特徴とする請求項１から５のいずれか１項に記載の端末位置推定装置。
【請求項１１】
当該周辺画像情報は、当該端末に搭載されたカメラによって生成されたカメラ画像情報、又は当該端末に搭載されたデプスカメラによって生成された距離画像情報であることを特徴とする請求項１０に記載の端末位置推定装置。
【請求項１２】
所定のエリアにおける端末の位置を推定する装置に搭載されたコンピュータを機能させるプログラムであって、
当該端末の周辺に存在する物体に係る情報であって当該端末の位置における観測結果である周辺物体情報を取得する周辺物体情報取得手段と、
当該周辺物体情報に含まれる個々の物体に係る情報である物体情報が、可動物体に係る情報か否かを判定する周辺物体情報判定手段と、
当該周辺物体情報に含まれる情報のうち、可動物体に係る情報であると判定された物体情報に対し、除去処理、無効化処理又は情報量低減処理を施すことによって、周辺に存在する不動物体に係る情報である周辺不動物体モデルを生成する周辺モデル生成手段と、
予め生成されたモデルであって当該エリアに存在する不動物体に係る情報である参照不動物体モデルにおける不動物体と、当該周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、当該端末の当該エリア内における位置に係る情報を決定する端末位置決定手段と
してコンピュータを機能させることを特徴とする端末位置推定プログラム。
【請求項１３】
所定のエリアにおける端末の位置を推定する装置に搭載されたコンピュータにおける端末位置推定方法であって、
当該端末の周辺に存在する物体に係る情報であって当該端末の位置における観測結果である周辺物体情報を取得するステップと、
当該周辺物体情報に含まれる個々の物体に係る情報である物体情報が、可動物体に係る情報か否かを判定するステップと、
当該周辺物体情報に含まれる情報のうち、可動物体に係る情報であると判定された物体情報に対し、除去処理、無効化処理又は情報量低減処理を施すことによって、周辺に存在する不動物体に係る情報である周辺不動物体モデルを生成するステップと、
予め生成されたモデルであって当該エリアに存在する不動物体に係る情報である参照不動物体モデルにおける不動物体と、当該周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、当該端末の当該エリア内における位置に係る情報を決定するステップと
を有することを特徴とする端末位置推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末の位置を自律的に推定する技術に関する。
【背景技術】
【０００２】
現在、自動運転車や自律移動ロボット等の自律移動体に見られるように、機外・外部からの操作・制御に依らず、自律的に移動を行う技術の開発が盛んに進められている。この技術では、例えばカメラで撮影された画像や、ＬｉＤＡＲによるポイントクラウド（point cloud，点群）等を取得して周囲の状況を把握するのであるが、その際、自らの位置を推定することも重要な課題となっている。
【０００３】
また、通信端末を所持したユーザの現在位置や移動経路を、ＧＰＳ（Global Positioning System）等に依らず、当該端末によって取得される情報を用いて推定する歩行者デッドレコニング（ＰＤＲ）技術も大きな進展を見せている。
【０００４】
このような自律的な位置推定技術として、例えば特許文献１には、３次元のＬｉＤＡＲマップに対して１つのカメラから取得された情報を適用し、視覚的な位置特定を行う技術が開示されている。この技術では、最初にＧＰＳによって大まかな位置を決定し、次にカメラによる画像データと比較するための合成画像を生成している。ここで、規格化された共通する画像情報が最大限取得されるように設定されているので、生成したマップ上にリアルタイムで画像データを逐次位置合わせ（registration）することが可能となっている。
【０００５】
また、例えば非特許文献１には、広範な室内・建物内での位置推定技術として、順次厳密化していく一連の位置検証ステップにおいて、デンス特徴量（dense feature）を抽出してマッチング処理を行う技術が開示されている。この技術では、壁、天井や床のようなテクスチャの乏しい背景に対処すべく、ローカル特徴量（local feature）ではなくデンス特徴量によるマッチング処理を行うことによって、カメラの向き（姿勢）が推定される。ここで、対象画像を撮影したカメラの向きとして、３次元マップにおける6DoF（6 Degrees of Freedom）についての向きも決定される。
【０００６】
さらに、例えば非特許文献２には、ＳＬＡＭ（Simultaneously Localization and Mapping）と大域での位置推定とを結合させた位置推定技術が開示されている。このうちＳＬＡＭは、移動端末で実施され、6DoFの端末向きの推定を行う。一方、キーフレームを用いた大域での位置推定はサーバにおいて実施され、当該位置推定結果は移動端末へ通知されて、ＧＰＳ測位結果と合わせて使用される。ここで、連続するキーフレームを用いてマッチング処理を行うことによって、端末方位の推定性能を向上させ、大域での位置推定における推定情報の範囲を拡大している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】米国特許出願公開第２０１６／０２０９８４６号明細書
【非特許文献】
【０００８】
【非特許文献１】H. Taira, M. Okutomi, T. Sattler, M. Cimpoi, M. Pollefeys, J. Sivic, T. Pajdla, and A. Torii, “InLoc: Indoor Visual Localization with Dense Matching and View Synthesis” In proc. Computer Vision and Pattern Recognition, ２０１８年
【非特許文献２】J. Ventura, C. Arth, G. Reitmayr, and Di. Schmalstieg, “Global Localization from Monocular SLAM on a Mobile Phone,” IEEE Transactions on Visualization and Computer Graphics, 20(4), p531-539, ２０１４年
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、以上に述べたような技術を含む従来技術においては、ＧＰＳに依存することによって、又は移動物体の影響によって、位置推定誤差の増大する問題が依然解決されていないのが実情である。
【００１０】
例えば、特許文献１に記載された技術では、合成画像とのマッチング処理を行うことによって、参照ポイントクラウド上で対象画像の位置合わせを行っている。ここで、当初の位置はＧＰＳによって取得されるので、ＧＰＳの測位精度が低い場合、合成画像は誤った位置に生成されてしまう可能性が生じる。またこの後、対象画像と合成画像との比較を行っていくことによって、画像位置合わせにおける誤差が累積してしまうこともあり得る。さらに、対象画像において動的障害物が広範囲で出現したり、画像のブレのような画像情報の劣化が生じたりすることによって、位置合わせ処理や位置推定処理において問題が発生する可能性もあるのである。
【００１１】
また、例えば非特許文献１に記載された技術では、多数の移動物体を含む場面や非常に動きの激しい場面において、一連のカメラ向き検証ステップが、そのような急激の変化に対処できず検証処理に失敗してしまう懸念が生じる。特に、移動物体が対象画像の大部分を占めるような場合、位置推定処理やカメラ向き推定処理は、当該移動物体から極めて深刻な影響を受けてしまうのである。
【００１２】
さらに、例えば非特許文献２に記載された技術では、キーフレームを付加することにより局所モデルが常時調整されている。その結果、移動端末側のマップとサーバ側のマップとの間で矛盾の生じる可能性がある。キーフレームから検出された特徴量は、カメラの視野に入った全ての物体の特徴を含むことになるので、移動端末側のマップ及び大域での位置推定結果を更新する際、移動物体の存在によって位置合わせ誤差が生じ得るのである。
【００１３】
そこで、本発明は、ＧＰＳ等の外部測位系に依存することなく、移動物体の存在による影響を抑制した端末位置推定処理を実施することができる装置、プログラム及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明によれば、所定のエリアにおける端末の位置を推定する端末位置推定装置であって、
当該端末の周辺に存在する物体に係る情報であって当該端末の位置における観測結果である周辺物体情報を取得する周辺物体情報取得手段と、
当該周辺物体情報に含まれる個々の物体に係る情報である物体情報が、可動物体に係る情報か否かを判定する周辺物体情報判定手段と、
当該周辺物体情報に含まれる情報のうち、可動物体に係る情報であると判定された物体情報に対し、除去処理、無効化処理又は情報量低減処理を施すことによって、周辺に存在する不動物体に係る情報である周辺不動物体モデルを生成する周辺モデル生成手段と、
予め生成されたモデルであって当該エリアに存在する不動物体に係る情報である参照不動物体モデルにおける不動物体と、当該周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、当該端末の当該エリア内における位置に係る情報を決定する端末位置決定手段と
を有する端末位置推定装置が提供される。
【００１５】
この本発明による端末位置推定装置の一実施形態として、本端末位置推定装置は、
当該エリアにおける複数の位置の各々における観測結果の情報であって当該位置の周辺に存在する物体に係る情報に基づいて、当該エリアに存在する物体に係る情報であるエリア内物体情報を生成し、
当該エリア内物体情報に含まれる情報のうち、可動物体に係る情報であると判定された物体情報に対し、除去処理、無効化処理又は情報量低減処理を施すことによって生成されたエリア内不動物体情報によって、当該参照不動物体モデルを生成又は更新する
参照モデル管理手段を更に有することも好ましい。
【００１６】
また、本発明に係る当該不動物体に係る情報は、当該不動物体における物体種別情報と不動物体間距離に係る情報とを含むことも好ましい。
【００１７】
さらに、本発明による端末位置推定装置の他の実施形態として、端末位置決定手段は、
当該端末の当該エリア内における位置に係る情報として、当該端末の当該エリア内における位置の候補に係る情報である端末位置候補情報を決定し、
参照不動物体モデルにおける当該端末位置候補情報に係る位置に存在する不動物体と、当該周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、当該端末の位置に係る情報を決定する
ことも好ましい。またここで、端末位置決定手段は、当該参照不動物体モデルに含まれる所定の不動物体についての当該周辺不動物体モデルとの照合結果に基づいて、当該端末位置候補情報を決定することも好ましい。
【００１８】
さらにまた、上記の端末位置候補情報を決定する実施形態において、端末位置決定手段は、当該参照不動物体モデルにおける当該端末位置候補情報に係る位置に存在する不動物体に係る情報と、当該周辺不動物体モデルにおける該不動物体に対応する不動物体に係る情報との間における重畳の度合いに基づいて、当該端末の位置を決定することも好ましい。
【００１９】
また、本発明による端末位置推定装置における、周辺物体情報として当該端末の周辺に存在する物体に係る周辺点群情報を採用する具体例において、
周辺物体情報判定手段は、点群情報の識別器を用いて、当該周辺点群情報に含まれる個々の物体に係る点群情報が、予め設定された可動物体に係る点群情報であるか否かを判定し、
周辺モデル生成手段は、当該周辺点群情報に含まれる情報のうち、可動物体に係る点群情報であると判定された点群情報を除去することによって、周辺に存在する不動物体に係る点群情報である周辺不動物体モデルを生成し、
端末位置決定手段は、
予め生成されたモデルであって当該エリアに存在する不動物体に係る点群情報である参照不動物体モデルから、個々の不動物体をノードとして当該不動物体間の距離をエッジとした参照不動物体モデルに係るグラフを生成し、当該参照不動物体モデルに係るグラフと、当該周辺不動物体モデルに含まれる個々の不動物体をノードとして当該不動物体間の距離をエッジとした周辺不動物体モデルに係るグラフとの間でマッチング処理を行って、当該端末位置候補情報から、当該端末の位置に係る端末位置候補情報を選択し、
当該参照不動物体モデルにおける選択された端末位置候補情報に係る位置に存在する不動物体に係る点群情報と、当該周辺不動物体モデルにおける該不動物体に対応する不動物体に係る点群情報との間の重畳の度合いを最大にする点群平行移動量及び点群回転量に基づいて、当該端末の位置を決定する
ことも好ましい。
【００２０】
さらに、上記の周辺点群情報を採用した具体例において、端末位置決定手段は、当該重畳の度合いを最大にする点群平行移動量及び点群回転量に基づいて、当該端末の向きも決定することも好ましい。
【００２１】
さらにまた、上記の周辺点群情報を採用した具体例において、端末位置推定装置は、当該周辺点群情報を、点データ間の距離に基づいて、互いに隣接した点データの集合である物体毎の点群情報に区分する周辺物体情報区分手段を更に有し、
周辺モデル生成手段は、当該物体毎の点群情報のうち、可動物体に係る点群情報であると判定された点群情報を除去することによって当該周辺不動物体モデルを生成する
ことも好ましい。
【００２２】
また、本発明による端末位置推定装置における、周辺物体情報として当該端末の周辺に存在する物体に係る周辺画像情報を採用する具体例において、
周辺物体情報判定手段は、画像情報の識別器を用いて、当該周辺画像情報に含まれる個々の物体に係る画像部分情報が、予め設定された可動物体に係る画像部分情報であるか否かを判定し、
周辺モデル生成手段は、当該周辺画像情報に含まれる情報のうち、可動物体に係る画像部分情報であると判定された画像部分情報に対しマスキング処理を施すことによって、周辺に存在する不動物体に係る画像情報である周辺不動物体モデルを生成し、
端末位置決定手段は、
予め生成されたモデルであって当該エリアに存在する不動物体に係る画像情報である参照不動物体モデルから又は該モデルにおける端末位置の候補となる部分から、個々の不動物体に係る画像部分情報を抽出し、当該画像部分情報と、当該周辺不動物体モデルに含まれる個々の不動物体に係る画像部分情報との間における画像重畳の度合いに基づいて、当該端末の位置を決定する
ことも好ましい。
【００２３】
さらに、上記の周辺画像情報を採用した具体例において、当該周辺画像情報は、当該端末に搭載されたカメラによって生成されたカメラ画像情報、又は当該端末に搭載されたデプスカメラによって生成された距離画像情報であることも好ましい。
【００２４】
本発明によれば、また、所定のエリアにおける端末の位置を推定する装置に搭載されたコンピュータを機能させるプログラムであって、
当該端末の周辺に存在する物体に係る情報であって当該端末の位置における観測結果である周辺物体情報を取得する周辺物体情報取得手段と、
当該周辺物体情報に含まれる個々の物体に係る情報である物体情報が、可動物体に係る情報か否かを判定する周辺物体情報判定手段と、
当該周辺物体情報に含まれる情報のうち、可動物体に係る情報であると判定された物体情報に対し、除去処理、無効化処理又は情報量低減処理を施すことによって、周辺に存在する不動物体に係る情報である周辺不動物体モデルを生成する周辺モデル生成手段と、
予め生成されたモデルであって当該エリアに存在する不動物体に係る情報である参照不動物体モデルにおける不動物体と、当該周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、当該端末の当該エリア内における位置に係る情報を決定する端末位置決定手段と
してコンピュータを機能させる端末位置推定プログラムが提供される。
【００２５】
本発明によれば、さらに、所定のエリアにおける端末の位置を推定する装置に搭載されたコンピュータにおける端末位置推定方法であって、
当該端末の周辺に存在する物体に係る情報であって当該端末の位置における観測結果である周辺物体情報を取得するステップと、
当該周辺物体情報に含まれる個々の物体に係る情報である物体情報が、可動物体に係る情報か否かを判定するステップと、
当該周辺物体情報に含まれる情報のうち、可動物体に係る情報であると判定された物体情報に対し、除去処理、無効化処理又は情報量低減処理を施すことによって、周辺に存在する不動物体に係る情報である周辺不動物体モデルを生成するステップと、
予め生成されたモデルであって当該エリアに存在する不動物体に係る情報である参照不動物体モデルにおける不動物体と、当該周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、当該端末の当該エリア内における位置に係る情報を決定するステップと
を有する端末位置推定方法が提供される。
【発明の効果】
【００２６】
本発明の端末位置推定装置、プログラム及び方法によれば、ＧＰＳ等の外部測位系に依存することなく、移動物体の存在による影響を抑制した端末位置推定処理を実施することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明による端末位置推定装置を含む端末位置推定システムの一実施形態を示す模式図である。
【図２】周辺モデル生成部における周辺モデル生成処理の一実施例を概略的に示した模式図である。
【図３】端末位置決定部における端末位置候補情報決定処理の一実施例を説明するための模式図である。
【図４】端末位置決定部における端末位置候補情報決定処理の一実施例を説明するための模式図である。
【図５】本発明による端末位置推定装置を含む端末位置推定システムの他の実施形態を示す模式図である。
【図６】周辺モデル生成部における周辺モデル生成処理の一実施例を概略的に示した模式図である。
【図７】本発明による端末位置推定方法における参照不動物体モデルの構築・更新処理の一実施形態を概略的に示すフローチャートである。
【図８】本発明による端末位置推定方法における参照不動物体モデルを用いた端末位置推定処理の一実施形態を概略的に示すフローチャートである。
【発明を実施するための形態】
【００２８】
以下、本発明の実施形態について、図面を用いて詳細に説明する。
【００２９】
図１は、本発明による端末位置推定装置を含む端末位置推定システムの一実施形態を示す模式図である。
【００３０】
図１に示した、本実施形態の端末位置推定システムは、
（ａ）所定のエリア内を移動する、通信機能を備えた端末としての自律移動ロボットに設置されたＬｉＤＡＲ３と、
（ｂ）無線（無線ＬＡＮ、近距離無線通信、無線系事業者アクセスネットワーク等）又は有線（ケーブル等）を介してＬｉＤＡＲ３と通信接続された端末位置推定装置１と
を含んでいる。
【００３１】
このうち、（ａ）のＬｉＤＡＲ３は、可視スペクトル外のレーザパルスを放射し、当該パルスが対象に反射して戻ってくるまでの時間を計測して、当該対象までの距離を測定する測距センサとしてのＬｉＤＡＲ（Light Detection And Ranging）デバイスである。
【００３２】
ここで、ＬｉＤＡＲ３の測定対象は、このエリア内においてＬｉＤＡＲ３の周辺に存在し得る、
（ア）人物、ペット等の動物、カートや自動車、地下鉄車両等の乗り物、さらには、台車、椅子のような移動している又は移動し得る「可動物体」、及び
（イ）エスカレータ等のエリア内設備、店舗等のエリア施設、花壇・花瓶やサイネージ等のエリア内設置物、天井や壁・柱・床等のエリア内構造物のような通常、設置場所から移動することのない又は移動し得ない「不動物体」
となっている。
【００３３】
ＬｉＤＡＲ３は具体的に、センサを備えたヘッドを回転させ、全周（0〜359.9°）の各角度位置（座標）における反射強度（又はそれから算定される３次元距離）を含む点データを、ヘッド１周毎に１フレーム（１ファイル）として出力するデバイスとなっている。また、このヘッドは、垂直方向については、例えばプラスマイナス10°〜20°の範囲に例えば10〜20本のレーザを放射して各反射波を計測し、所定の角分解能をもって点データを取得する。
【００３４】
一方、上記（ｂ）の端末位置推定装置１は、最初に、端末（図１では自律移動ロボット）に設置されたＬｉＤＡＲ３によって生成された当該端末の周辺に存在する「物体に係る情報」、具体的には、上記点データの集合である点群（ポイントクラウド，point cloud）情報を取得する。次いで、取得したポイントクラウドを解析することによって、当該端末（自律移動ロボット）のエリア内での位置を推定し、当該端末に推定位置情報を通知するのである。
【００３５】
より具体的に、端末位置推定装置１は、その特徴として、
（Ａ）端末（自律移動ロボット）の周辺に存在する「物体に係る情報」であって端末の位置における観測結果である「周辺物体情報」、本実施形態では周辺ポイントクラウド、を取得する周辺点群取得部（周辺物体情報取得部）１２１と、
（Ｂ）周辺ポイントクラウド（周辺物体情報）に含まれる個々の物体に係る情報である対象ポイントクラウドが、「可動物体」に係る情報か否かを判定する周辺点群可不動判定部（周辺物体情報判定部）１２３と、
（Ｃ）周辺ポイントクラウド（周辺物体情報）に含まれる情報のうち、「可動物体」に係る情報であると判定された対象ポイントクラウドに対し、除去処理、無効化処理又は情報量低減処理（本実施形態では除去処理）を施すことによって、周辺に存在する「不動物体」に係る情報である「周辺不動物体モデル」を生成する周辺モデル生成部１２４と、
（Ｄ）予め生成されたモデルであってこのエリアに存在する「不動物体」に係る情報である「参照不動物体モデル」における「不動物体」と、「周辺不動物体モデル」に含まれる「不動物体」との照合結果に基づいて、端末（自律移動ロボット）のこのエリア内における位置に係る情報を決定する端末位置決定部１２５と
を有している。
【００３６】
このように端末位置推定装置１は、端末のセンサ（ＬｉＤＡＲ３）の測定結果である周辺ポイントクラウドに基づいて、周辺に存在する「不動物体」に係る情報である「周辺不動物体モデル」を生成し、これを「参照不動物体モデル」と照合することによって端末位置の情報を推定している。すなわち、ＧＰＳ等の外部測位系に依存することなく、端末が自ら取得可能な情報をもって、端末位置推定処理を実施することができるのである。
【００３７】
したがって、端末位置推定装置１によれば、勿論、屋外での端末位置推定を実施し、例えば自動車やカート等のナビゲーションサービスを提供することもできるが、正確なＧＰＳ測位の困難である屋内、例えば巨大ショッピングセンタや工場の内部といった屋内や、さらには地下通路・広場や地下室のような地下エリアにおける端末位置把握・通知サービスを提供することも可能となるのである。またさらに、端末位置推定装置１における端末位置推定方法を、ＡＲ（Augmented Reality）提供サービスにおけるユーザ端末位置の推定処理に適用することも可能となっている。
【００３８】
さらに、使用する両モデルにおいて「可動物体」に係る情報を除去（又は無効化若しくは低減化）しているので、周辺ポイントクラウド（周辺物体情報）における移動物体の存在による影響を抑制した端末位置推定処理を実施することが可能となっている。実際に従来は、端末のセンサで得られた例えば画像情報が、歩行者や自動車等の移動物体を含む場合に、当該端末の位置推定誤差が増大したり、推定処理にエラーが生じたりすることが大きな問題となってきた。これに対し、端末位置推定装置１では、上述したように移動し得る「可動物体」の影響を抑制しているので、位置推定処理におけるエラーを回避し、より高い位置推定精度を実現することも可能となるのである。
【００３９】
さらにまた、端末位置推定装置１は、不動物体の位置合わせによって端末位置を推定しているので、例えば背景の位置合わせによる位置推定手法と比較すると、より位置合わせが容易となり、端末センサに起因するエラー要因に対しより頑健な推定結果が取得可能となっている。
【００４０】
なお当然に、本発明による端末位置推定装置１がポイントクラウド情報を取得する先は、ＬｉＤＡＲデバイスに限定されるものではない。例えば、レーダ（Radar，Radio detecting and ranging）デバイスや、スキャニングソナー（Scanning Sonar (Sound navigation and ranging)）デバイスからポイントクラウド情報を取得し、解析することも可能である。
【００４１】
また当然に、このような測距センサデバイスが搭載される端末も、自律移動ロボットに限定されるものではない。例えば、歩行者・走者の所持する携帯・ウェアラブル端末、各種自動車や、飛行するドローン、さらには各種交通機関等、通信機能を有していてその位置を把握したいニーズがあるものならば様々なものが、本発明に係る位置推定対象としての端末に該当し得る。
【００４２】
さらに、本発明に係る「物体に係る情報」も、ポイントクラウド情報に限定されるものではない。例えば、端末に搭載されたカメラ（イメージセンサ）によって生成される（ＲＧＢ）画像情報であってもよく、または、端末に搭載されたデプスカメラによって取得されるデプス値から生成された距離画像情報とすることもできる。これらの画像情報を用いた端末位置推定の実施形態は、後に図５を用いて詳細に説明する。
【００４３】
ちなみに、ポイントクラウド情報を利用する本実施形態では、３次元のポイントクラウド情報である「周辺物体情報」について、３次元の「参照不動物体モデル」を用いて端末位置を推定する。これに対し、後に詳述する画像情報を利用する実施形態では、２次元の画像情報である「周辺物体情報」について、３次元の「参照不動物体モデル」を用いて端末位置を推定することになる。
【００４４】
［端末位置推定装置の一実施形態］
同じく図１の機能ブロック図によれば、本実施形態の端末位置推定装置１は、ＬｉＤＡＲ３から測定情報を受信可能な通信インタフェース１０１と、ポイントクラウド蓄積部１０２と、位置情報保存部１０３と、プロセッサ・メモリとを有する。
【００４５】
ここで、このプロセッサ・メモリは、本発明による端末位置推定プログラムの一実施形態を保存しており、また、コンピュータ機能を有していて、この端末位置推定プログラムを実行することによって、端末位置推定処理を実施する。このことから、端末位置推定装置１は、端末位置推定専用装置又はユニットであってもよいが、本発明による端末位置推定プログラムを搭載した、例えばパーソナル・コンピュータ（ＰＣ）、ノート型若しくはタブレット型コンピュータとしてもよい。さらには、計算処理能力の向上した（位置推定対象の）端末自身、例えば通信可能ロボットや、スマートフォン等とすることも可能である。
【００４６】
さらに、プロセッサ・メモリは、参照モデル管理部１１１と、周辺点群取得部１２１と、周辺点群区分部１２２と、周辺点群可不動判定部１２３と、周辺モデル生成部１２４と、端末位置決定部１２５と、通信制御部１３１と、アプリケーション・プログラム部（ＡＰ）１３２とを有する。なお、これらの機能構成部は、プロセッサ・メモリに保存された端末位置推定プログラムの機能と捉えることができる。また、図１における端末位置推定装置１の機能構成部間を矢印で接続して示した処理の流れは、本発明による端末位置推定方法の一実施形態としても理解される。
【００４７】
同じく図１の機能ブロック図において、通信制御部１３１は、ＬｉＤＡＲ３から通信インタフェース１０１を介し、１フレームにヘッド１周（360°）分のポイントクラウドを含む信号を取得し、このポイントクラウドを、ポイントクラウド蓄積部１０２に適宜バッファしつつ、参照モデル管理部１１１や周辺点群情報取得部１２１へ出力する。この際、ポイントクラウドに対し、ノイズやまばらに存在する外れ値を除去すべく公知の方法でフィルタ処理が実施されることも好ましい。
【００４８】
参照モデル管理部１１１は、
（ａ）端末位置を推定すべき範囲である所定エリアでの複数の位置の各々におけるポイントクラウド（観測結果情報）であって当該位置の周辺に存在する物体に係るポイントクラウドに基づいて、このエリアに存在する物体に係る情報であるエリア内ポイントクラウド（エリア内物体情報）を生成し、
（ｂ）このエリア内ポイントクラウドに含まれる情報のうち、可動物体に係る情報であると判定された対象ポイントクラウドに対し、除去処理を施すことによって生成されたエリア内不動物体情報によって、「参照不動物体モデル」を生成又は更新する。
【００４９】
ここで、上記処理（ａ）においては、（例えば、端末がエリア内を隈なく移動することによってエリア内の各位置で順次生成されて）入力されたポイントクラウドのフレーム毎に、当該ポイントクラウドを、ポイント（点データ）間の距離に基づいて、互いに隣接したポイント（点データ）の集合である対象ポイントクラウドに区分する。ここで、区分された対象ポイントクラウド全体がエリア内物体情報となるのである。この際、所定の距離条件を適用してポイントクラウド内のポイントをグループ化してもよい。また、ポイント間の距離にはユークリッド距離が採用されることも好ましい。
【００５０】
より具体的に当該区分処理として、最初に、リストが空であるクラスタを有するkd木（kd-tree，k-dimensional tree）を生成し、所定の距離条件を満たして互いに近接するポイントの集合を同一のクラスタに割り当てて、ポイントクラウドをクラスタに分類し、各クラスタに属するポイントの集合を、区分された各対象ポイントクラウドとしてもよい。ここで、kd木は、k次元のユークリッド空間にある点を分類するための公知の空間分割データ構造の一種である。
【００５１】
また、上記処理（ｂ）においては、例えば、ポイントクラウド識別用の深層学習識別器を用いた公知技術であるPointNetを利用し、ポイントクラウドのフレーム毎に、当該フレームに含まれる対象ポイントクラウドの物体種別を判別する。このように識別対象を物体自体ではなく物体種別といった形で粗くすることによって、この判別処理における演算量がより少なくて済む。ここで、物体種別毎に当該種別が可動物体か不動物体かを予め設定しておくことで、当該フレームに含まれる物体が可動物体であるか否かを判定することができる。例えば、人物、自動車及び椅子は可動物体と設定されてもよい。また、不動物体は、可動物体に設定されていないその他の物体とすることができる。なお、PointNetについては、例えば非特許文献： Charles R. Qi, Hao Su, Kaichun Mo, Leonidas J. Guibas, “PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation”, In Proc. Computer Vision and Pattern Recognition (CVPR), ２０１７年に記載されている。
【００５２】
またさらに上記処理（ｂ）において、可動物体であると判定された対象ポイントクラウドを除去することによって、不動物体の対象ポイントクラウドの集合であるエリア内不動物体情報を生成する。この情報では、残った不動物体に係る対象ポイントクラウド毎に、不動物体種別のラベルが付与され、さらに、エリア内に存在する不動物体の種別のリストも生成される。
【００５３】
次いで、このエリア内不動物体情報から、例えば公知の３次元モデル構築技術であるKinectfusionを用いて、３次元の参照不動物体モデルを生成する。なお、このモデルは、入力されるポイントクラウドのフレーム毎に生成されるエリア内不動物体情報に基づいて、当該フレーム毎に更新されることも好ましい。なお、Kinectfusionについては、例えば非特許文献：T. Whelan, M. Kaess, M.Fallon, H. Johannsson, John. J. Leonard and J. McDonald, “Kintinuous: Spatially Extended KinectFusion”, InRSS RGB-D Workshop, ２０１２年に記載されている。
【００５４】
このように、参照不動物体モデルから可動物体の痕跡を予め除去しておくことによって、この後、この参照不動物体モデルを用いた端末位置推定において、可動物体がその位置を変化させることによるポイントクラウド照合処理の失敗を、回避することが可能となるのである。また、可能物体の痕跡を除去することによってデータ量が低減し、照合処理演算量がより少なくて済む。
【００５５】
同じく図１の機能ブロック図において、周辺点群取得部１２１は、端末（ＬｉＤＡＲ３を備えた自律移動ロボット）の周辺に存在する物体に係るポイントクラウドであって、それをもって端末位置の推定処理を行うことになる周辺物体情報としてのポイントクラウドを入力する。例えば、当該ポイントクラウドの時系列フレームを刻々と入力し、端末の現在位置の推定を、連続して概ねリアルタイムで実施させることも可能となる。
【００５６】
周辺点群区分部１２２は、周辺点群取得部１２１で取得された周辺物体情報としての周辺ポイントクラウドを、点データ間の距離に基づいて、互いに隣接した点データの集合である対象ポイントクラウドに区分する。ここでの区分処理は、上述した参照モデル管理部１１１で実施される区分処理と同様に実施することができる。
【００５７】
周辺点群可不動判定部１２３は、区分された個々の対象ポイントクラウドが、可動物体に係る情報か否かを判定する。ここでの判定処理も、上述した参照モデル管理部１１１で実施される判定処理と同様に実施することができる。
【００５８】
周辺モデル生成部１２４は、可能物体に係る情報であると判定された対象ポイントクラウドを、周辺物体情報としての周辺ポイントクラウドから除去し、周辺に存在する不動物体に係る情報である周辺不動物体モデルを生成する。また、この際、残った不動物体に係る対象ポイントクラウド毎に、不動物体種別のラベルが付与され、さらに、周辺不動物体モデル内に存在する不動物体のリストも生成される。このようなモデル生成処理も、上述した参照モデル管理部１１１で実施されるモデル生成処理と同様に実施することができる。
【００５９】
ちなみに、上述したように可動物体分を除去した周辺不動物体モデルと、同じく可動物体分を除去した参照不動物体モデルとを照合させることによって、可動物体がその位置を変化させることに起因するエラーの発生を抑制し、より高い端末位置推定精度を確保することが可能となるのである。
【００６０】
図２は、周辺モデル生成部１２４における周辺モデル生成処理の一実施例を概略的に示した模式図である。
【００６１】
図２（Ａ）に示すように本実施例において、端末位置を推定すべきエリアはショッピングセンタ内の所定範囲であり、当初、ＬｉＤＡＲ３から取得された周辺物体情報としてのポイントクラウドには、可動物体である複数の人物に係る対象ポイントクラウドが含まれている。これに対し、周辺モデル生成部１２４は、図２（Ｂ）に示すように、（予め可動物体であると設定された）「人物」であると判定された対象ポイントクラウドを除去してエリア内不動物体情報を生成する。
【００６２】
次いで、周辺モデル生成部１２４は、エリア内不動物体情報に含まれる不動物体に係る対象ポイントクラウドの各々に対し、周辺点群可不動判定部１２３での判定器による判定結果を利用して、又は不動物体識別用の識別器を用いて、天井、店舗Ａ、植木鉢、エスカレータ、床等といった該当する不動物体種別のラベルを付与するのである。
【００６３】
同じく図１の機能ブロック図において、端末位置決定部１２５は、参照モデル管理部１１１で生成又は更新された参照不動物体モデルにおける不動物体と、周辺モデル生成部１２４で生成された周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、端末（ＬｉＤＡＲ３を備えた自律移動ロボット）のエリア内における位置情報を決定する。
【００６４】
ここで、３次元の周辺不動物体モデルを３次元の参照不動物体モデルの全体と照合していく中で端末位置を割り出すことも可能ではある。しかしながら、３次元モデル同士の照合処理であるので、処理演算量が増大し処理時間も長くなることが懸念される。そこで本実施形態では、エリア内において、端末位置の存在し得る複数の候補領域を予め決定した上で、参照不動物体モデルにおける候補領域相当部分との照合処理を行い、端末位置を推定する。これにより、処理演算量を低減させ、処理時間を短縮することが可能となるのである。
【００６５】
具体的には、端末位置決定部１２５の候補位置生成部１２５ａは、端末の位置に係る情報として、端末（ＬｉＤＡＲ３を備えた自律移動ロボット）のエリア内における複数の端末位置候補情報である複数の候補領域を決定する。例えば、エリアを予め複数の区域に分けておき、区域毎に、当該区域に存在する又は当該区域から観察し得る不動物体のリストを決定しておく。ここで、隣接する区域同士は互いに重畳する部分を有していてもよい。次いで、各区域の不動物体のリストと、周辺不動物体モデルに含まれる不動物体のリストとを照合し、両リスト内容が一致する又は両リストが所定条件を満たすようなリストを有する区域を候補領域とすることができる。
【００６６】
またこの際、当該所定条件としては、例えば、所定の不動物体（例えばエスカレータ）については両リストの間で必ずその有無が一致するとの条件を設定することもできる。さらに、両リストの照合において、不動物体のうち所定のもの、例えば天井や床は通常、いずれの区域でも見られるものなので、上記リストに入れない、又は照合対象としない（リスト間でその有無を比較しない）とすることも好ましい。
【００６７】
図３及び図４は、端末位置決定部１２５における端末位置候補情報決定処理の一実施例を説明するための模式図である。
【００６８】
図３には、端末位置を推定すべきエリアのフロアマップが示されており、当該エリアは、ショッピングセンタ内の所定範囲となっていることが分かる。ここで、周辺不動物体モデルに含まれる不動物体のリストが、エスカレータと、店舗と、植木鉢とを含む場合を説明する。この場合、このリストと一致するリストを有する端末位置候補情報として、２つの候補領域１及び２が決定されるのである。
【００６９】
次に、端末位置決定部１２５は、参照不動物体モデルにおける上述したように決定された端末位置候補情報（図３の実施例では候補領域１及び２）の各々に係る位置に存在する不動物体と、周辺不動物体モデルにおける不動物体との「照合処理」の結果に基づいて、端末位置を含む端末位置候補情報を選択するのである。本実施例では具体的に、図４に示すように、候補領域１が選択されている。
【００７０】
ここで、上述した「照合処理」の一実施形態について説明する。最初に前提として、ＬｉＤＡＲ３から取得されるポイントクラウドを解析して得られた不動物体に係る対象ポイントクラウドの各々は、隣接する他の不動物体に係る対象ポイントクラウドとの距離が決定されているものとする。この距離は、対象ポイントクラウド自体が３次元空間内での位置が決定している点データの集合であるので、例えば、その重心位置を算出し、この重心間の距離を算出することによっても決定可能である。またさらに、不動物体に係る対象ポイントクラウドの各々には、当該不動物体の物体種別情報としてのラベルが付与されている。
【００７１】
図１の機能ブロック図に戻って、次に、端末位置決定部１２５のグラフマッチング処理部１２５ｂは、
（ａ）参照不動物体モデルの各「端末位置候補情報」部分から、個々の不動物体をノードとして不動物体間の距離をエッジとした参照不動物体モデルのグラフである「参照モデルグラフ」を生成し、
（ｂ）周辺不動物体モデルから、個々の不動物体をノードとして不動物体間の距離をエッジとした周辺不動物体モデルのグラフである「周辺モデルグラフ」を生成し、
（ｃ）「参照モデルグラフ」と「周辺モデルグラフ」との間でマッチング処理を行って、端末位置候補情報（図３では候補領域１及び２）から、端末位置を含み得るものを選択する。
【００７２】
具体的には、参照モデルグラフGr(Vr, Er)、及び周辺モデルグラフGt(Vt, Et)を定義する。ここで、Vr及びVtは、それぞれ参照不動物体モデルの「端末位置候補情報」部分及び周辺不動物体モデルにおける、各々が物体種別情報を付与された不動物体群に相当するノード群である。また、Er及びEtは、それぞれ参照不動物体モデルの「端末位置候補情報」部分及び周辺不動物体モデルにおける、各々が不動物体間の距離を付与されたエッジ群である。
【００７３】
ちなみに、Gr(Vr, Er)の領域は、Gt(Vt, Et)の領域よりも大きいので、以下、両グラフの照合にはサブマッチング処理を行う。具体的には、Vr⊇Vt及びEr⊇Etであって、次式
（１）  f(f(u), f(v))∈Er
が満たされるならば、次式
（２）  (u, v)∈Et
の関係が成立するような関数f：Vt→Vr
が存在する場合に、周辺モデルグラフGt(Vt, Et)は、参照モデルグラフGr(Vr, Er)のサブセットであると判断し、この参照モデルグラフGr(Vr, Er)に係る端末位置候補情報（候補領域）を、端末位置を含み得るものとして選択するのである（図４では候補領域１が選択されている）。
【００７４】
なお、両モデルにおける不動物体の「照合処理」は、上述した方法に限定されるものではない。例えば、参照不動物体モデル（の各「端末位置候補情報」部分）上において、周辺不動物体モデルを直接マッピングすることも可能である。しかしながら実際に、モデル内には、ポイントクラウドからモデルを生成・更新したことに起因する歪みが存在しており、不動物体位置がドリフトしていることも少なくない。したがって、例えば直接のマッピング処理によって適切な照合が困難となる可能性が生じる。これに対し、上述したように、グラフマッチング処理を行うことによって、このような歪みによる物体ドリフトの影響を抑制し、より適切な照合を行うことが可能となる。
【００７５】
以上説明したようにこの段階では、端末位置決定部１２５は、端末の存在する大まかな位置範囲を決定している。次に本実施形態では、端末位置決定部１２５のＩＣＰ処理部１２５ｃが、端末の詳細な位置と、端末（に搭載されたＬｉＤＡＲ３）の向きとを決定する。
【００７６】
具体的に、ＩＣＰ処理部１２５ｃは、
（ａ）選択された端末位置候補情報（図４では候補領域１）に係る位置に存在する不動物体に係る対象ポイントクラウド（以下、参照対象ポイントクラウドと略称）と、
（ｂ）周辺不動物体モデルにおけるこの不動物体に対応する不動物体に係る対象ポイントクラウド（以下、周辺対象ポイントクラウドと略称）と
の間の重畳の度合いを最大にする点群平行移動量及び点群回転量に基づいて、端末の位置及び向きを決定する。ちなみに、選択された端末位置候補情報（候補領域）に存在する不動物体と、周辺不動物体モデルの不動物体とは、上述した照合処理によって対応関係（マッチング関係）が決定している。
【００７７】
ここで、このような端末位置・向き決定処理を、ＩＣＰ（Iterative Closest Point）アルゴリズムを用いて実施することも好ましい。ＩＣＰアルゴリズムは、ポイントクラウド間の位置合わせを行う公知の手法であって、
（ａ）一方のポイントクラウドに含まれる各点について、他方のポイントクラウドにおける最も近傍となる点を決定して、当該点同士を最近傍点とし、
（ｂ）決定した最近傍点間の距離を最小化するような剛体変換を求め、
上記（ａ）及び（ｂ）を繰り返し実施することによって、両ポイントクラウドの位置合わせを完成させる変換を決定するものである。
【００７８】
ＩＣＰ処理部１２５ｃは、具体的にまず、参照対象ポイントクラウド群を、
（３）  Pr＝[pr1, pr2, ・・・, prn]
とし、周辺対象ポイントクラウド群を、
（４）  Pt＝[pt1, pt2, ・・・, ptm]
とし、さらに、Rを回転変換（演算子）とし、tを並進変換（演算子）として、マッピング誤差を、次式
（５）  E(R, t)＝Σi=1nΣj=1m wi,j・||pri−(Rptj＋t)||2
をもって定義する。ここで、Σi=1n及びΣj=1mはそれぞれ、i＝1からnまでの総和（summation）及びj＝1からmまでの総和である。また、wi,jは、priとptjとが同じ不動物体種別である場合に1（wi,j＝1）となり、その他の場合に0（wi,j＝0）となる係数である。
【００７９】
この上で、ＩＣＰ処理部１２５ｃは、上式（５）のマッピング誤差を最小化するような回転変換R及び並進変換tを算出し、これにより、参照対象ポイントクラウド群Prに対する変換前の対象ポイントクラウド群Ptの位置及び向きのズレ分が判明する。その結果、３次元の参照不動物体モデルにおける周辺不動物体モデルの適合位置を確定することができ、最終的に、当該周辺不動物体モデルに係る時点における、端末（ＬｉＤＡＲ３）のエリア内での位置及び向きに係る情報を決定することが可能となるのである。
【００８０】
端末位置決定部１２５は、以上に説明したように決定した端末の位置及び向きに係る情報を、位置情報保存部１０３に保存しつつ適宜、通信制御部１３１及び通信インタフェース１０１を介して、端末（ＬｉＤＡＲ３を備えた自律移動ロボット）へ送信する。この位置及び向きに係る情報を取得した端末（ＬｉＤＡＲ３を備えた自律移動ロボット）は、当該情報に基づいて、エリア内における自らの位置及び向きを知ることが可能となるのである。
【００８１】
また、端末位置決定部１２５で決定された端末位置及び向き情報は、装置１に搭載された（例えば自律ロボット制御用の）アプリケーション・プログラム（ＡＰ）１３２に取り込まれ、その出力（制御信号）が、通信制御部１３１及び通信インタフェース１０１を介して、端末（ＬｉＤＡＲ３を備えた自律移動ロボット）に提供されてもよい。さらに、変更態様として、端末位置決定部１２５で決定された端末位置及び向き情報が、端末以外の別の情報処理装置へ送信され、当該情報処理装置での情報処理に利用されることも可能である。
【００８２】
［端末位置推定装置の他の実施形態］
図５は、本発明による端末位置推定装置を含む端末位置推定システムの他の実施形態を示す模式図である。
【００８３】
図５に示した、本実施形態の端末位置推定システムは、
（ａ）所定のエリア内を移動するユーザの所持するスマートフォン４に搭載されたカメラ４１と、
（ｂ）無線（無線ＬＡＮ、近距離無線通信、無線系事業者アクセスネットワーク等）を介してスマートフォン４と通信接続された端末位置推定装置２と
を含んでいる。
【００８４】
ここで、（ａ）のカメラ４１の撮影対象は、本実施形態において、図１を用いて説明したＬｉＤＡＲ３の測定対象と同様となっており、エリア内においてユーザ(カメラ４１)の周辺に存在し得る人物等の「可動物体」、及びエリア内設備、設置物や施設、さらには天井や壁・柱・床等のエリア内構造物のような「不動物体」となっている。
【００８５】
一方、上記（ｂ）の端末位置推定装置２は、最初に、スマートフォン４のカメラ４１によって生成された、スマートフォン４の周辺に存在する「物体に係る情報」、具体的には、撮影された画像情報（動画像情報）を取得する。次いで、取得した画像情報を解析することによって、スマートフォン４のエリア内での位置を推定し、当該端末に推定位置情報を通知するのである。
【００８６】
より具体的に、端末位置推定装置２は、その特徴として、
（Ａ）スマートフォン４の周辺に存在する「物体に係る情報」であって端末の位置における観測結果である「周辺物体情報」、本実施形態では周辺画像情報、を取得する周辺画像取得部（周辺物体情報取得部）２２１と、
（Ｂ）周辺画像情報（周辺物体情報）に含まれる個々の物体に係る画像部分情報が、「可動物体」に係る画像部分情報か否かを判定する周辺画像可不動判定部（周辺物体情報判定部）２２３と、
（Ｃ）周辺画像情報（周辺物体情報）に含まれる情報のうち、「可動物体」に係る画像部分情報であると判定された画像部分情報に対し、無効化処理又は情報量低減処理（本実施形態では1色によるマスク処理）を施すことによって、周辺に存在する「不動物体」に係る画像情報である「周辺不動物体モデル」を生成する周辺モデル生成部２２４と、
（Ｄ）予め生成されたモデルであってこのエリアに存在する「不動物体」に係る画像情報である「参照不動物体モデル」から又はこのモデルにおける端末位置の候補となる部分から、個々の「不動物体」に係る画像部分情報を抽出し、当該画像部分情報と、「周辺不動物体モデル」に含まれる個々の不動物体に係る画像部分情報との間における画像重畳の度合いに基づいて、当該端末の位置を決定する端末位置決定部２２５と
を有している。
【００８７】
このように端末位置推定装置２においても、上述した端末位置推定装置１と同様、ＧＰＳ等の外部測位系に依存することなく、端末が自ら取得可能な情報をもって、端末位置推定処理を実施することができるのである。またそれ故、端末位置推定装置２によれば、勿論、屋外での端末位置推定を実施し、例えば自動車やカート等のナビゲーションサービスを提供することもできるが、正確なＧＰＳ測位の困難である屋内、例えば巨大ショッピングセンタや工場の内部といった屋内や、さらには地下通路・広場や地下室のような地下エリアにおける端末位置把握・通知サービスを提供することも可能となるのである。またさらに、端末位置推定装置２における端末位置推定方法を、ＡＲ提供サービスにおけるユーザ端末位置の推定処理に適用することも可能となっている。
【００８８】
さらに、使用する両モデルにおいて「可動物体」に係る情報を無効化若しくは低減化しているので、周辺画像情報（周辺物体情報）における移動物体の存在による影響を抑制した端末位置推定処理を実施することが可能となっている。実際に従来は、端末のカメラで得られた画像情報が、歩行者や自動車等の移動物体を含む場合に、当該端末の位置推定誤差が増大したり、推定処理にエラーが生じたりすることが大きな問題となってきた。これに対し、端末位置推定装置２では、上述したように移動し得る「可動物体」の影響を抑制しているので、位置推定処理におけるエラーを回避し、より高い位置推定精度を実現することも可能となるのである。
【００８９】
ちなみに、本実施形態において取り扱われる周辺画像情報は、カメラ画像情報に限定されるものではなく、例えば、端末に搭載されたデプスカメラによって生成された距離画像情報とすることも可能である。
【００９０】
図５の機能ブロック図によれば、本実施形態の端末位置推定装置２は、スマートフォン４から、カメラ４１によって生成された画像情報を受信可能な通信インタフェース２０１と、画像データ蓄積部２０２と、位置情報保存部２０３と、プロセッサ・メモリとを有する。
【００９１】
ここで、このプロセッサ・メモリは、本発明による端末位置推定プログラムの一実施形態を保存しており、また、コンピュータ機能を有していて、この端末位置推定プログラムを実行することによって、端末位置推定処理を実施する。このことから、端末位置推定装置２は、端末位置推定専用装置又はユニットであってもよいが、本発明による端末位置推定プログラムを搭載した、例えばパーソナル・コンピュータ（ＰＣ）、ノート型若しくはタブレット型コンピュータとしてもよい。さらには、計算処理能力の向上した（位置推定対象の）端末自身、例えばスマートフォンや、通信可能ロボット等とすることも可能である。
【００９２】
さらに、プロセッサ・メモリは、参照モデル管理部２１１と、周辺画像取得部２２１と、周辺画像可不動判定部２２３と、周辺モデル生成部２２４と、端末位置決定部２２５と、通信制御部２３１と、アプリケーション・プログラム部（ＡＰ）２３２とを有する。なお、これらの機能構成部は、プロセッサ・メモリに保存された端末位置推定プログラムの機能と捉えることができる。また、図５における端末位置推定装置２の機能構成部間を矢印で接続して示した処理の流れは、本発明による端末位置推定方法の一実施形態としても理解される。
【００９３】
ここで以下、上記の機能構成部のうち、端末位置推定装置１の機能構成部と比較して、画像情報を取り扱うが故に特有の処理を実施するものについて説明を行う。
【００９４】
参照モデル管理部２１１は、
（ａ）端末位置を推定すべき範囲である所定エリアでの複数の位置の各々における画像情報（観測結果情報）であって当該位置の周辺に存在する物体に係る画像情報に基づいて、このエリアに存在する物体に係る情報であるエリア内画像部分情報（エリア内物体情報）を生成し、
（ｂ）このエリア内画像部分情報に含まれる情報のうち、可動物体に係る情報であると判定された画像部分情報に対し、マスク処理を施すことによって生成されたエリア内不動物体情報によって、「参照不動物体モデル」を生成又は更新する。
【００９５】
ここで、上記処理（ａ）においては、例えば、高速Ｒ-ＣＮＮ（Faster Regions with Convolutional Neural Networks）の識別器を用いた公知の画像識別技術を用いて、画像情報（動画像情報）のフレーム毎に、当該フレームに含まれる画像部分情報に係る物体の種別を判定することができる。なお、高速Ｒ-ＣＮＮについては、例えば非特許文献： Shaoqing Ren, Kaiming He, Ross Girshick, Jian Sun “Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol.39, Issue.6, p1137-1149, ２０１７年に記載されている。
【００９６】
またさらに上記処理（ｂ）においては、物体種別毎に当該種別が可動物体か不動物体かを予め設定しておき、このうち可動物体である物体種別に係る画像部分情報であると判定された画像部分情報に対し、当該画像部分を含む黒色の矩形領域を設定するマスク処理を実施することができる。さらに、このマスク処理後のエリア内不動物体情報では、残った不動物体に係る画像部分情報毎に、不動物体種別のラベルが付与され、さらに、エリア内に存在する不動物体のリストも生成されて、これにより、３次元の参照不動物体モデルが生成される。
【００９７】
このように、参照不動物体モデルから可動物体の痕跡を予め除去しておくことによって、この後、この参照不動物体モデルを用いた端末位置推定において、可動物体がその位置を変化させることによる画像照合処理の失敗を、回避することが可能となるのである。また、可動物体の痕跡を除去することによってデータ量が低減し、照合処理演算量がより少なくて済む。
【００９８】
同じく図５の機能ブロック図において、周辺画像取得部２２１は、スマートフォン４（カメラ４１）の周辺に存在する物体に係る画像情報であって、それをもって端末位置の推定処理を行うことになる周辺物体情報としての周辺画像情報を入力する。例えば、当該画像情報の時系列フレームを刻々と入力し、端末の現在位置の推定を、連続して概ねリアルタイムで実施させることも可能となる。
【００９９】
周辺画像可不動判定部２２３は、周辺画像情報において、物体に係る画像部分情報を識別し、識別した画像部分情報の物体の種別が、予め設定された可動物体に係る物体種別か否かを判定する。なお、このような識別・判定処理は、上述した参照モデル管理部２１１で実施される識別・判定処理と同様に実施することができる。
【０１００】
周辺モデル生成部２２４は、可能物体に係る情報であると判定された画像部分情報に対してマスク処理を実施し、周辺に存在する不動物体に係る情報である周辺不動物体モデルを生成する。また、この際、残った不動物体に係る画像部分情報毎に、不動物体種別のラベルが付与され、さらに、周辺不動物体モデル内に存在する不動物体の種別のリストも生成される。このようなモデル生成処理も、上述した参照モデル管理部２１１で実施されるモデル生成処理と同様に実施することができる。
【０１０１】
ちなみに、上述したように可動物体分を無効化した周辺不動物体モデルと、同じく可動物体分を無効化した参照不動物体モデルとを照合させることによって、可動物体がその位置を変化させることに起因するエラーの発生を抑制し、より高い端末位置推定精度を確保することが可能となるのである。
【０１０２】
図６は、周辺モデル生成部２２４における周辺モデル生成処理の一実施例を概略的に示した模式図である。
【０１０３】
図６（Ａ）に示すように本実施例において、端末位置を推定すべきエリアはショッピングセンタ内の所定範囲であり、当初、カメラ４１から取得された周辺物体情報としての画像情報には、可動物体である複数の人物に係る画像部分情報が含まれている。これに対し、周辺モデル生成部２２４は、図２（Ｂ）に示すように、（予め可動物体であると設定された）「人物」であると識別された画像部分情報に対しマスク処理を実施して、エリア内不動物体情報を生成する。
【０１０４】
次いで、周辺モデル生成部２２４は、エリア内不動物体情報に含まれる不動物体に係る画像部分情報の各々に対し、周辺点群可不動判定部２２３での識別器による物体種別結果を利用して、天井、店舗Ａ、エスカレータ、床等といった該当する物体種別のラベルを付与するのである。
【０１０５】
同じく図１の機能ブロック図において、端末位置決定部２２５は、参照モデル管理部２１１で生成又は更新された参照不動物体モデルにおける不動物体と、周辺モデル生成部１２４で生成された周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、スマートフォン４（を所持したユーザ）のエリア内における位置情報を決定する。
【０１０６】
具体的に、端末位置決定部２２５は、公知のマッチング技術、例えば非特許文献：a preprint for the paper accepted for publication in ICCV 2011, “Fast Image-Based Localization using Direct 2D-to-3D Matching”，[online]，［平成３０年８月２３日検索］、インターネット＜URL: https://www.graphics.rwth-aachen.de/media/papers/sattler_iccv11_preprint_011.pdf＞に記載された２Ｄ-３Ｄ間マッチング技術を用い、参照不動物体モデルに対し、周辺不動物体モデルを照合する。
【０１０７】
これにより、参照不動物体モデルにおける周辺不動物体モデルの適合位置を確定することができ、最終的に、当該周辺不動物体モデルに係る時点における、スマートフォン４（を所持したユーザ）のエリア内での位置及び向きに係る情報を決定することが可能となるのである。
【０１０８】
ちなみに、上述したポイントクラウドに係るモデル同士の照合処理と同様、参照不動物体モデルにおいて、端末位置の存在し得る複数の候補領域を予め決定した上で、参照不動物体モデルにおける候補領域相当部分との照合処理を行い、端末位置を推定することも可能である。これにより、処理演算量を低減させ、処理時間を短縮することが可能となる。
【０１０９】
具体的には、端末位置決定部２２５の候補位置生成部２２５ａは、エリア内における複数の端末位置候補情報である少なくとも１つの候補領域を決定する。例えば、エリアを予め複数の区域に分けておき、区域毎に、当該区域に存在する又は当該区域から観察し得る不動物体のリストを決定しておく。ここで、隣接する区域同士は互いに重畳する部分を有していてもよい。次いで、各区域の不動物体のリストと、周辺不動物体モデルに含まれる不動物体のリストとを照合し、両リスト内容が一致する又は両リストが所定条件を満たすようなリストを有する区域を候補領域とすることができる。
【０１１０】
またこの際、当該所定条件としては、例えば、所定の不動物体（例えばエスカレータ）については両リストの間で必ずその有無が一致するとの条件を設定することもできる。さらに、両リストの照合において、不動物体のうち所定のもの、例えば天井や床は、いずれの区域でも見られるものなので、上記リストに入れない、又は照合対象としない（リスト間でその有無を比較しない）とすることも好ましい。
【０１１１】
次いで、端末位置決定部２２５の候補位置生成部２２５ａは、参照不動物体モデルの候補領域における不動物体と、周辺モデル生成部１２４で生成された周辺不動物体モデルに含まれる不動物体との照合結果に基づいて、スマートフォン４（を所持したユーザ）のエリア内における位置情報を決定するのである。これにより、参照不動物体モデルに含まれる全不動物体との間で照合処理を行う必要がなくなり、その結果、照合処理演算量を低減させ、照合処理時間を短縮することが可能となる。
【０１１２】
［端末位置推定方法］
図７は、本発明による端末位置推定方法における参照不動物体モデルの構築・更新処理の一実施形態を概略的に示すフローチャートである。ここで、以下に説明するステップＳ１０１〜Ｓ１０６は、観察対象エリアについての参照不動物体モデルを構築し、さらに取得されるフレーム毎に更新する処理となっている。
【０１１３】
（Ｓ１０１）最初に、時系列ポイントクラウドデータ、又は時系列画像データを取得する。
（Ｓ１０２）取得されたデータの各フレームにおいて、物体を検出する物体検出処理を実施する。
（Ｓ１０３）検出された物体のうち、予め可動であると設定された可動物体に対し、ポイントクラウドの場合には削除処理を実施し、一方画像データの場合にはマスク処理を実施する。
【０１１４】
（Ｓ１０４）削除／マスク処理後のデータに基づき、観察対象エリアに存在する不動物体のリストを生成し、あるいは既に生成されている場合には更新する。
（Ｓ１０５）観察対象エリアにおける不動物体情報である参照不動物体モデルを構築し、あるいは既に構築されている場合には更新する。
（Ｓ１０６）当該時点までの処理について、処理時間、処理フレーム数、及び処理データ量のうちの１つにつき、予め設定した所定閾値を超過しているか否かを判定する。ここで、超過しているとの判定を行った場合、本処理は終了される。一方、超過していないとの判定を行った場合、再度ステップＳ１０１からの処理を繰り返す。
【０１１５】
図８は、本発明による端末位置推定方法における参照不動物体モデルを用いた端末位置推定処理の一実施形態を概略的に示すフローチャートである。ここで、以下に説明するステップＳ２０１〜Ｓ２１０は、所定の時系列データを取得してから、端末位置を決定して当該端末に通知するまでの１サイクルに相当する。
【０１１６】
（Ｓ２０１）時系列ポイントクラウドデータ、又は時系列画像データを取得する。
（Ｓ２０２）取得されたデータの各フレームにおいて、物体を検出する物体検出処理を実施する。
（Ｓ２０３）検出された物体のうち、予め可動であると設定された可動物体に対し、ポイントクラウドの場合には削除処理を実施し、一方画像データの場合にはマスク処理を実施する。
【０１１７】
（Ｓ２０４）削除／マスク処理後のデータに基づき、端末の周辺に存在する不動物体のリストを生成し、あるいは既に生成されている場合には更新する。
（Ｓ２０５）端末の周辺に存在する不動物体情報である参照不動物体モデルを構築し、あるいは既に構築されている場合には更新する。
（Ｓ２０６）当該時点までの処理について、処理時間、処理フレーム数、及び処理データ量のうちの１つにつき、予め設定した所定閾値を超過しているか否かを判定する。ここで、超過しているとの判定を行った場合、ステップＳ２０７へ移行する。一方、超過していないとの判定を行った場合、再度ステップＳ２０１からの処理を繰り返す。
【０１１８】
（Ｓ２０７）生成／更新した不動物体のリストに基づき、参照不動物体モデルにおける、周辺不動物体モデルに相当し得る複数の候補領域を決定する。
（Ｓ２０８，Ｓ２０９）参照不動物体モデル及び周辺不動物体モデルにおける不動物体同士の照合処理を行い、参照不動物体モデルにおける、周辺不動物体モデルとマッチングする候補領域を選択し、さらに、選択された候補領域における端末の位置及び向きを決定する。
（Ｓ２１０）決定した端末の位置及び向きの情報を当該端末に送信する。
【０１１９】
ここで、以上に説明したステップＳ２０１〜Ｓ２１０の１サイクルを繰り返すことによって、その都度、端末に位置及び向き情報を通知することができ、また、このサイクルを十分に高速に行うことによって、概ねリアルタイムで、端末に対し現在位置及び向きを通知することも可能となるのである。
【０１２０】
以上詳細に説明したように、本発明によれば、端末のセンサの測定結果である周辺物体情報に基づいて、周辺に存在する不動物体に係る情報である周辺不動物体モデルを生成し、これを参照不動物体モデルと照合することによって端末位置の情報を推定している。すなわち、ＧＰＳ等の外部測位系に依存することなく、端末が自ら取得可能な情報をもって、端末位置推定処理を実施することができるのである。
【０１２１】
したがって、端末位置推定装置１によれば、勿論、屋外での端末位置推定を実施し、例えば自動車やカート等のナビゲーションサービスを提供することもできるが、正確なＧＰＳ測位の困難である屋内、例えば巨大ショッピングセンタや工場の内部といった屋内や、さらには地下通路・広場や地下室のような地下エリアにおける端末位置把握・通知サービスを提供することも可能となるのである。またさらに、端末位置推定装置１における端末位置推定方法を、ＡＲ提供サービスにおけるユーザ端末位置の推定処理に適用することも可能となっている。
【０１２２】
以上に述べた本発明の種々の実施形態において、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【０１２３】
１、２  端末位置推定装置
１０１、２０１  通信インタフェース
１０２  ポイントクラウド蓄積部
１０３、２０３  位置情報保存部
１１１、２１１  参照モデル管理部
１２１  周辺点群取得部
１２２  周辺点群区分部
１２３  周辺点群可不動判定部
１２４、２２４  周辺モデル生成部
１２５、２２５  端末位置決定部
１３１、２３１  通信制御部
１３２、２３２  アプリケーション・プログラム部（ＡＰ）
２０２  画像データ蓄積部
２２１  周辺画像取得部
２２３  周辺画像可不動判定部
３  ＬｉＤＡＲ
４  スマートフォン
４１  カメラ
【図１】
2020042447.tif 000003
【図２】
2020042447.tif 000004
【図３】
2020042447.tif 000005
【図４】
2020042447.tif 000006
【図５】
2020042447.tif 000007
【図６】
2020042447.tif 000008
【図７】
2020042447.tif 000009
【図８】
2020042447.tif 000010