(57)【要約】【課題】  撮像装置が移動していても高速に、高精度に位置姿勢を算出する。【解決手段】撮像装置が第１の時刻に撮像した視覚情報を入力する入力部と、入力部が入力した視覚情報に基づいて、第１の時刻以降の第２の時刻の視覚情報または幾何情報の少なくとも一方を予測するための学習モデルを保持する保持部と、学習モデルを用いて、第２の時刻の視覚情報または幾何情報の少なくとも一方を予測する予測部と、予測部が予測した第２の時刻視覚情報または幾何情報の少なくとも一方に基づいて第２の時刻における撮像装置の位置姿勢を算出する第１の算出部とを備える。【選択図】  図１
2019124539.tif 000002
【特許請求の範囲】
【請求項１】
撮像装置が第１の時刻に撮像した視覚情報を入力する入力手段と、
前記入力手段が入力した視覚情報に基づいて、前記第１の時刻以降の第２の時刻の視覚情報または幾何情報の少なくとも一方を予測するための学習モデルを保持する保持手段と、
前記学習モデルを用いて、前記第２の時刻の視覚情報または幾何情報の少なくとも一方を予測する予測手段と、
前記予測手段が予測した第２の時刻の視覚情報または幾何情報の少なくとも一方に基づいて前記第２の時刻における前記撮像装置の位置姿勢を算出する第１の算出手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
撮像装置が第１の時刻に撮像した視覚情報を入力する入力手段と、
前記入力手段が入力した視覚情報に基づいて、前記第１の時刻以降の第２の時刻の視覚情報または幾何情報の少なくとも一方を予測するための学習モデルを保持する保持手段と、
前記学習モデルを用いて、前記第２の時刻の視覚情報または幾何情報の少なくとも一方を予測する予測手段と、
前記予測手段が予測し視覚情報または幾何情報の少なくとも一方に基づいて前記入力した第１の時刻における視覚情報、前記予測した第２の時刻の視覚情報または幾何情報の少なくとも一つに含まれる物体情報を算出する第２の算出手段と、
を備えることを特徴とする情報処理装置。
【請求項３】
前記予測手段は、前記予測手段が予測した前記第２の時刻の視覚情報または幾何情報の少なくとも一方をもとに前記第２の時刻以降の第３の時刻の視覚情報または幾何情報を予測することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記第１の算出手段は、前記予測した第２の時刻の視覚情報または幾何情報の少なくとも一方、および、撮像装置がさらに第２の時刻の近傍の時刻に取得した視覚情報に基づいて、前記撮像装置の位置姿勢を算出することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記第２の算出手段は、前記予測した第２の時刻の視覚情報または幾何情報の少なくとも一方、および、撮像装置がさらに第２の時刻の近傍の時刻に取得した視覚情報に基づいて、前記撮像装置の位置姿勢を算出することを特徴とする請求項２に記載の情報処理装置。
【請求項６】
前記物体情報は、前記入力した視覚情報、前記予測した視覚情報または幾何情報の少なくとも一つに含まれる物体の物体種であることを特徴とする請求項２に記載の情報処理装置。
【請求項７】
前記物体情報は、前記入力した視覚情報、前記予測した視覚情報または幾何情報の少なくとも一つに含まれる物体の位置を示す情報または移動量を示す情報の少なくとも一方であることを特徴とする請求項２または６に記載の情報処理装置。
【請求項８】
撮像装置が撮像した視覚情報を入力する入力手段と、
前記入力手段が入力した視覚情報に基づいて、前記視覚情報に関連づいた第１の時刻以降の第２の時刻の視覚情報または幾何情報の少なくとも一方を予測するための学習モデルを保持する保持手段と、
前記学習モデルを用いて、前記第２の時刻の視覚情報または幾何情報の少なくとも一方を予測する予測手段と
請求項１に記載の前記第１の算出手段と、
請求項２に記載の前記第２の算出手段と
を有することを特徴とする情報処理装置。
【請求項９】
前記予測手段が予測した視覚情報または幾何情報の少なくとも一方を基に、前記撮像装置を搭載した移動体を制御するための制御値を算出し、制御を行う制御手段をさらに備えることを特徴とする請求項１又は８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記制御手段は、前記予測した第２の時刻の視覚情報または幾何情報の少なくとも一方と、撮像装置が第２の時刻の近傍の時刻にさらに取得した視覚情報との一致度合をもとに、前記制御値を算出することを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
前記第１の算出手段が第２の時刻の前記撮像装置の位置姿勢を算出し、
前記制御手段が、前記第２の時刻の撮像装置の位置姿勢に前記撮像装置の位置姿勢が一致するよう前記移動体を制御する制御値を算出する
ことを特徴とする請求項９に記載の情報処理装置。
【請求項１２】
前記制御手段は、前記第２の算出手段が算出した前記物体情報に基づいて、前記移動体を制御する制御値を算出する
ことを特徴とする請求項９乃至１１のいずれか１項に記載の情報処理装置。
【請求項１３】
前記予測手段は、前記予測した第２の時刻の視覚情報または幾何情報の少なくとも一方、および、撮像装置が第２の時刻の近傍の時刻にさらに取得した視覚情報の一致度合に基づいて、予測パラメータを調節する
ことを特徴とする請求項１乃至１２のいずれか１項に記載の情報処理装置。
【請求項１４】
前記予測手段は、前記第１の算出手段が算出した第２の時刻の前記撮像装置の位置姿勢に基づいて予測パラメータを調節する
ことを特徴とする請求項１又は８のいずれか１項に記載の情報処理装置。
【請求項１５】
前記予測手段は、前記第２の算出手段が算出した前記物体情報に基づいて予測パラメータを調節する
ことを特徴とする請求項２、５、６、７、８のいずれか１項に記載の情報処理装置。
【請求項１６】
前記移動体の状態または前記移動体の周囲の状況の少なくとも一方の計測値を計測する計測手段を更に備え、
前記予測手段は、前記計測値をもとに予測パラメータを調節する
ことを特徴とする請求項９乃至１２のいずれか１項に記載の情報処理装置。
【請求項１７】
前記予測パラメータとは、前記予測手段が予測する時刻の時点、予測個数、予測時間間隔、予測範囲のうち少なくとも一つである
ことを特徴とする請求項１３乃至１６のいずれか１項に記載の情報処理装置。
【請求項１８】
前記撮像装置が撮像した視覚情報、前記予測手段が予測した第２の時刻の幾何情報、前記予測手段が予測した第２の時刻の視覚情報、前記第１の算出手段が算出した位置姿勢、のうち少なく一つをもとに表示情報を生成する生成手段と、  前記生成手段が生成した前記表示情報を提示する表示手段と、
を更に備えることを特徴とする請求項１、３、４、８乃至１２、１４，１６のいずれか１項に記載の情報処理装置。
【請求項１９】
前記撮像装置が撮像した視覚情報、前記予測手段が予測した第２の時刻の幾何情報、前記予測手段が予測した第２の時刻の視覚情報、前記第１の算出手段が算出した位置姿勢、のうち少なく一つをもとに表示情報を生成する生成手段と、
前記生成手段が生成した前記表示情報を提示する表示手段と、
を更に備えることを特徴とする請求項２、５、６、７、８乃至１２、１５のいずれか１項に記載の情報処理装置。
【請求項２０】
前記視覚情報は、濃淡画像、ＲＧＢ画像、奥行き情報、距離画像、三次元点群データを撮像した画像のいずれか１つを含むことを特徴とする請求項１乃至１９のいずれか１項に記載の情報処理装置。
【請求項２１】
前記幾何情報は、前記視覚情報のピクセルごとに推定した奥行き情報のデプスマップであることを特徴とする請求項１乃至２０のいずれか１項に記載の情報処理装置。
【請求項２２】
撮像装置が第１の時刻に撮像した視覚情報を入力する入力工程と、
前記入力工程が入力した視覚情報に基づいて、前記第１の時刻以降の第２の時刻の視覚情報または幾何情報の少なくとも一方を予測するための学習モデルを用いて、前記第２の時刻の視覚情報または幾何情報の少なくとも一方を予測する予測工程と、
前記予測工程が予測した第２の時刻の視覚情報または幾何情報の少なくとも一方に基づいて前記第２の時刻における前記撮像装置の位置姿勢を算出する第１の算出工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項２３】
撮像装置が第１の時刻に撮像した視覚情報を入力する入力工程と、
前記入力工程が入力した視覚情報に基づいて、前記第１の時刻以降の第２の時刻の視覚情報または幾何情報の少なくとも一方を予測するための学習モデルを用いて、前記第２の時刻の視覚情報または幾何情報の少なくとも一方を予測する予測工程と、
前記予測工程が予測し視覚情報または幾何情報の少なくとも一方に基づいて前記入力した第１の時刻における視覚情報、前記予測した第２の時刻の視覚情報または幾何情報の少なくとも一つに含まれる物体情報を算出する第２の算出工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項２４】
コンピュータが読み込み実行することで、前記コンピュータに、請求項２２又は２３に記載の各工程を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置及びその制御方法及びプログラムに関する。
【背景技術】
【０００２】
画像情報に基づく撮像装置の位置及び姿勢の計測は、複合現実感／拡張現実感における現実空間と仮想物体の位置合わせ、ロボットや自動車の自己位置推定、物体や空間の三次元モデリングなど様々な目的で利用される。
【０００３】
非特許文献１には、事前に学習した学習モデルを用いて画像から位置姿勢を算出するための指標である幾何情報（奥行き情報）を推定し、推定した奥行き情報をもとに位置姿勢を算出する方法が開示されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】K. Tateno, F. Tombari, I. Laina and N. Navab, "CNN-SLAM: Real-time dense monocular SLAM with learned depth prediction", In Proc. CVPR, 2017.
【非特許文献２】Z.Zhang,"A flexible new technique for camera calibration," Trans. Pattern Analysis and Machine Intelligence, vol.22, no.11, pp.1330-1334, 2000.
【非特許文献３】X. Shi, Z. Chen, H. Wang, and D. Yeung, "Convolutional LSTM Network: A Machine Learning Approach for Precipitation Nowcasting", In Proc. NIPS, 2015.
【非特許文献４】I. Laina, C. Rupprecht, V. Belagiannis, F. Tombari, and N. Navab. "Deeper depth prediction with fully convolutional residual networks". In Proc. 3DV, 2016.
【非特許文献５】K. He, G. Gkioxari, P. Dollar, and R. Girshick, "Mask R-CNN", In Proc. ICCV, 2017.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
非特許文献１においては、撮像装置が撮像した入力画像をもとに、その入力画像が撮像された時点の幾何情報（奥行き情報）を推定した後に撮像装置の位置姿勢を算出する。幾何情報の推定および位置姿勢の算出には多くの時間を要する。非特許文献１は、その算出中に、撮像装置が大きくは移動しないことを前提としていた。つまり、幾何情報の推定中や位置姿勢算出中に撮像装置が移動する状況下での、高速に且つ高精度に位置姿勢を算出するための解決策が求められている。
【課題を解決するための手段】
【０００６】
この課題を解決するため、例えば本発明の情報処理装置は以下の構成を備える。すなわち、
撮像装置が第１の時刻に撮像した視覚情報を入力する入力手段と、
前記入力手段が入力した視覚情報に基づいて、前記第１の時刻以降の第２の時刻の視覚情報または幾何情報の少なくとも一方を予測するための学習モデルを保持する保持手段と、
前記学習モデルを用いて、前記第２の時刻の視覚情報または幾何情報の少なくとも一方を予測する予測手段と、
前記予測手段が予測した第２の時刻の視覚情報または幾何情報の少なくとも一方に基づいて前記第２の時刻における前記撮像装置の位置姿勢を算出する第１の算出手段とを備える。
【発明の効果】
【０００７】
本発明によれば、撮像装置が移動していても高速に、高精度に位置姿勢を算出することができる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態における運転制御システムの構成例を示す構成図。
【図２】第１の実施形態における情報処理装置の構成を示す図。
【図３】第１の実施形態における保持部のデータ構造を示す図。
【図４】第１の実施形態における情報処理装置のハードウェア構成を示す図。
【図５】第１の実施形態における処理手順を示すフローチャート。
【図６】第２の実施形態における位置姿勢算出の処理手順を示すフローチャート。
【図７】第３の実施形態における処理手順を示すフローチャート。
【図８】第３の実施形態における物体情報算出の処理手順を示すフローチャート。
【図９】第３の実施形態における表示情報を提示するＧＵＩの一例を示す図。
【発明を実施するための形態】
【０００９】
以下図面に従って本発明に係る実施形態を詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１０】
［第１の実施形態］
本実施形態における情報処理装置は、自動車等の移動体に搭載する例を説明する。この情報処理装置は、自動車の位置及び姿勢（以降位置姿勢と記す）を算出し、算出結果を基に自動車のステアリング、アクセル、ブレーキ等の自動車の制御、すなわち自動運転を行うものである。また、本実施形態における撮像装置は、単眼であって１画素につきＲ、Ｇ、Ｂの３成分の画像データを撮像するカメラであり、自動車のフロントガラスの近傍に、且つ、その光軸方向は自動車の直進方向と一致するように取り付けられているものとする。そして、自動車の重心位置に対する撮像装置の自動車への相対的な取り付け位置情報は既知であって、不揮発性のメモリ等に事前に記憶保持されているものとする。故に、撮像装置が撮像した画像をもとに算出した撮像装置の位置姿勢を、記憶保持していた情報に基づく幾何変換を行うことで、自動車の位置姿勢が算出できる。つまり、撮像装置の位置姿勢を求めることは、自動車の位置姿勢を求めることと等価である。なお、撮像装置の位置姿勢の算出は後述する。そして、自動車の制御には、算出した自動車の位置姿勢と、あらかじめカーナビゲーションシステムにより算出しておいた自動車の目的地までの予定経路とが一致するように自動車を制御することになる。
【００１１】
撮像装置の位置姿勢の算出には、撮像装置が撮像した入力画像をもとに機械学習による推定器が推定した幾何情報が用いられる。本実施形態における機械学習による推定器が推定する幾何情報とは、入力画像のピクセルごとに推定した奥行き情報であるデプスマップのことである。具体的には、まず、撮像装置がある時刻ｔに撮像した入力画像に、時刻ｔ以外のある時刻ｔ’に撮像した入力画像を入力として推定器が推定したデプスマップの各点を時刻ｔの入力画像に射影する。ここでいう射影とは、時刻ｔ’におけるデプスマップの各奥行き値から求める三次元点（空間中のＸ，Ｙ，Ｚの位置を表す）が時刻ｔの画像上のどの画素に写るのか算出することである。次に、射影元のデプスマップの各画素と対応する時刻ｔの入力画像の画素の輝度と射影先の時刻ｔ’の入力画像の画素の輝度との差が最小となるように位置姿勢を算出する。なお、これらの方法は非特許文献１に詳細な記述があり、これを援用できるものとする。
【００１２】
このとき、位置姿勢が算出される時刻は、ｔ＋Δｔである。ここでいうΔｔとはＣＮＮ（Convolutional Neural Network）が奥行きを推定し、さらにそれらを基に位置姿勢を算出し終えるまでにかかる処理時間である。自動車が走行している場合にはΔｔ時間だけ自動車が移動することになる。しかしながら位置姿勢が算出され制御する時刻ｔ＋Δｔにおいては、時刻ｔにおける位置姿勢を用いて自動車を制御することになり、制御が遅れてしまう。そこで、本実施形態では、Δｔ時刻分だけ未来の画像およびデプスマップを予測することのできる学習モデルを用いて予測した画像およびデプスマップを基にｔ＋Δｔ時刻の位置姿勢を算出する方法について説明する。
【００１３】
本実施形態における撮像装置の位置姿勢とは、現実空間中に規定された世界座標におけるカメラの位置を表す３パラメータ、及びカメラの姿勢を表す３パラメータを合わせた６パラメータのことである。また、カメラの光軸をＺ軸、画像の水平方向をＸ軸、垂直方向をＹ軸とするカメラ上に規定される三次元の座標系をカメラ座標系と呼ぶ。
【００１４】
図１は、本第１の実施形態における情報処理装置１０を搭載する自動車１の構成概略図である。自動車１は、カメラである撮像装置１１、タイヤの回転数を変えることで自動車の速度を変化させることができるアクセル・ブレーキ機器やタイヤの向きを変えることで方向転換することができるステアリング装置の制御を行う制御装置１２が備え付けられている。
【００１５】
図２は、本実施形態における情報処理装置１０の機能構成図である。情報処理装置１０は、入力部１１０、予測部１２０、保持部１３０、算出部１４０、制御部１５０から構成されている。入力部１１０は、自動車に搭載した撮像装置１１と接続されている。制御部１５０は、自動車のステアリング、アクセル、ブレーキ機器である制御装置１２と接続されている。なお、図１は、機器構成の一例であり、本発明の適用範囲を限定するものではない。
【００１６】
入力部１１０は、撮像装置１１が撮像したシーンの二次元画像を入力画像として時系列（例えば毎秒６０フレーム）に入力し、予測部１２０および保持部１３０に出力する。
【００１７】
予測部１２０は、保持部１３０が保持する学習モデルに従って、入力部１１０から入力した画像から、予め設定された時間後の画像及びその幾何情報を予測する。以降、予測した画像を予測画像、予測した幾何情報を予測幾何情報と呼ぶ。
【００１８】
保持部１３０は、学習モデルを保持する。学習モデルは、画像を入力すると、Δｔ時刻分だけ未来の画像およびデプスマップを予測することができる。なお、この学習モデルは内部的に予測に用いた情報の履歴を保持しており、画像が入力されるごとに内部状態を更新する。つまり、過去の入力に対して最新の画像における各画素の移動量を考慮して予測するため、車速が変わる場合においても適用可能である。この学習モデルの詳細については後述する。さらに、保持部１３０は、事前に撮影したシーンの画像と位置姿勢を関連付けてキーフレームとし、キーフレーム群をマップとして保持する。保持部１３０におけるデータ構造、および学習モデルの詳細については後述する。
【００１９】
算出部１４０は、予測部１２０が予測した予測画像、予測幾何情報と、保持部１３０が保持するマップをもとに撮像装置１１の位置姿勢を算出する。そして、算出部１４０は、算出した撮像装置の位置姿勢を基に自動車の位置姿勢を求め、制御部１５０に供給する。
【００２０】
制御部１５０は、算出部１４０から入力した自動車の位置姿勢をもとに、自動車の制御値を算出し、制御装置１２に供給する。
【００２１】
制御装置１２は、制御部１５０が算出した制御値を基に、自動車１の制御を行う。
【００２２】
図３は、保持部１３０が保持するデータ構造を示す図である。本実施形態においては、保持部１３０は、予測部１２０が予測画像、および幾何情報を予測するための学習モデルを保持する。学習モデルは、例えばＣＮＮの識別器をバイナリ形式で保存したデータファイルであるものとする。また、保持部１３０は、位置姿勢算出の指標となるマップを保持する。マップはシーンの画像と位置姿勢を関連付けてキーフレームとし、キーフレームを複数保持する構成とした。なお、ここでいう位置姿勢とは該当キーフレームを撮像した撮像装置１１の位置姿勢の６パラメータのことである。
【００２３】
図４は、情報処理装置１０のハードウェア構成を示す図である。情報処理装置１０は、ＣＰＵ３１１、ＲＯＭ３１２、ＲＡＭ３１３、外部メモリ３１４、入力部３１５、表示部３１６、通信Ｉ／Ｆ３１７、Ｉ／Ｏ３１８を有する。
【００２４】
ＣＰＵ１１は、システムバス３２１に接続された各種デバイスの制御を行うことで、情報処理装置１０の全体の制御を司るも。ＲＯＭ３１２は、ＢＩＯＳのプログラムやブートプログラムを記憶する。ＲＡＭ３１３は、ＣＰＵ３１１の主記憶装置として使用されるメモリであり、情報処理装置１０として機能するＯＳ（オペレーティングシステム）やアプリケーションプログラムを格納する。外部メモリ３１４は、典型的にはハードディスク等の大容量の記憶装置であって、ＯＳ，実施形態で説明する運転支援用のアプリケーションプログラム、各種データを格納している。入力部３１５はタッチパネルディスプレイ、各種入力ボタンであり情報等の入力に係る処理を行う。表示部３１６は、ＣＰＵ３１１からの指示に従って情報処理装置１０の演算結果を表示装置に出力する。なお、表示装置は液晶表示装置やプロジェクタ、ＬＥＤインジケーターなど、種類は問わない。通信Ｉ／Ｆ（インターフェイス）３１７は、ネットワークを介して情報通信を行うものであり、例えばイーサネットＩ／Ｆでもよく、ＵＳＢやシリアル通信、無線通信等種類は問わない。Ｉ／Ｏ１８は、撮像装置１１が有する３１９、および制御装置１２と接続されている。
【００２５】
上記構成において、本装置に電源が投入されると、ＣＰＵ３１１はＲＯＭ３１２に格納されたブートプログラムを実行することで、外部メモリ３１４からＯＳをＲＡＭ３１３にロードし実行する。そして、ＣＰＵ３１１はＯＳの制御下で、外部メモリ３１４から自動車１の運転に係るアプリケーションプログラムをＲＡＭ３１３にロードし、実行することで図２に示す機能構成を実現することになる。なお、図２における保持部１３０はＲＡＭ３１３により実現することになる。また、実施形態では、図２の構成要素をＣＰＵ３１１が実行するソフトウェアで実現するとしているが、その一部をＣＰＵ３１１とは独立したハードウェアで実現させても構わない。
【００２６】
次に、本実施形態における情報処理装置１０の処理手順を図５のフローチャートに従って説明する。この処理を構成するステップは、初期化Ｓ１１０、画像撮像Ｓ１２０、画像入力Ｓ１３０、幾何情報予測Ｓ１４０、位置姿勢算出Ｓ１５０、制御値算出Ｓ１６０、制御Ｓ１７０、システム終了判定Ｓ１８０である。
【００２７】
ステップＳ１１０にて、ＣＰＵ３１１はシステムの初期化を行う。すなわち、外部メモリ１４からＯＳ，プログラムを読み込み、情報処理装置１０を動作可能な状態にする。また、情報処理装置１０に接続された各機器（撮像装置１１など）のパラメータや、撮像装置１１の初期位置姿勢を読み込む。撮像装置１１の内部パラメータ（焦点距離ｆｘ（画像の水平方向）、ｆｙ（画像の垂直方向）、画像中心位置ｃｘ（画像の水平方向）、ｃｙ（画像の垂直方向）、レンズ歪みパラメータ）は、Ｚｈａｎｇの方法（非特許文献２参）によって事前に校正されているものとする、また、自動車１の各制御装置を起動し、動作・制御可能な状態とする。
【００２８】
ステップＳ１２０にて、撮像装置１１がシーンの撮像を行い、入力部１１０に撮像して得た画像を供給する。
【００２９】
ステップＳ１３０にて、入力部１１０は、撮像装置１１が撮像した画像を入力画像として取得する。なお、本実施形態においては、入力画像とは１画素がＲ、Ｇ、Ｂの３成分で構成されるＲＧＢ画像である。
【００３０】
ステップＳ１４０にて、予測部１２０は、保持部１３０が保持する学習モデルを参照して、入力画像から予測画像および予測幾何情報を推定する。なお、本実施形態における機械学習による推定器とはＣＮＮ（Convolutional Neural Network）のことである。このＣＮＮはある時刻ｔの画像を入力すると、Δｔ時間後の時刻ｔ＋Δｔの予測画像、および予測幾何情報を予測することができるよう学習されているものとする。なお、ＣＮＮのネットワーク構成、学習方法については後述する。
【００３１】
ステップＳ１５０にて、算出部１４０は、予測部１２０が予測した予測画像および予測幾何情報と、保持部１３０が保持するマップとをもとに撮像装置１１の位置姿勢を算出する。具体的には、算出部１４０は、前述した位置姿勢算出方法によって、予測幾何情報をマップ中の最近傍のキーフレームに射影する。そして、算出部１４０は、予測画像の各画素値と、射影によって対応付けられたキーフレームの各画素値との輝度差が最小となるようにして、時刻ｔ＋Δｔの撮像装置１１の位置姿勢を算出する。
【００３２】
ステップＳ１６０にて、制御部１５０は、ステップＳ１５０の算出で得られた位置姿勢と、事前に自動車の目的地と出発地の情報から算出しておいたルート情報との距離が最小となるように自動車のステアリングを制御する制御値を算出する。ここでいうルート情報とは、事前にカーナビゲーションシステムにより出発地と目的地から算出しておいたルート上の位置を表す三次元の位置（アンカーポイントと呼ぶ）を格納したリストのことである。そして、制御部１５０は、算出した撮像装置１１の位置とアンカーポイントとの二乗距離が最小となるアンカーポイントを選び、さらにアンカーポイントと撮像装置１１の距離が小さくなる方向ベクトルを算出し、制御装置１２に供給する。
【００３３】
制御装置１２は、ステップＳ１７０にて、与えられた情報に従って自動車１を算出した方向ベクトル方向へのステアリングを制御する。
【００３４】
そして、ステップＳ１８０にて、ＣＰＵ３１１はシステムの終了（ユーザによる運転支援の中止指示、或いは目的地への到着）するまで、ステップＳ１２０以降の処理を繰り返す。
【００３５】
次に、前述した、予測画像および予測幾何情報を推定するためのＣＮＮのネットワーク構成および学習方法について説明する。本実施形態におけるＣＮＮは、過去の入力画像の情報を保持することのできるネットワーク構造であるＣｏｎｖＬＳＴＭ（Convolutional Long short-term memory）と、画像からデプスマップを推定することのできるネットワーク構造であるＦＣＮ（Fully Convolutional Network）をベースとした構成とした。ＣｏｎｖＬＳＴＭによって過去に入力した画像から未来の画像である予測画像を推定するとともに、ＦＣＮにより予測画像から予測幾何情報を推定できるようにした。具体的な構成としては、まず、ＣｏｎｖＬＳＴＭの出力層を２つに分岐する。一方を第一の出力とし予測画像を出力するよう構成する。また、もう一方の出力層をＦＣＮの入力層としてＦＣＮに接続し、ＦＣＮの出力を第二の出力として予測幾何情報を出力するようにする。そして、精度よく予測できるように次のような学習手順を行う。
【００３６】
具体的には、まずＣｏｎｖＬＳＴＭとＦＣＮを別々に学習し、次にそれらを結合して学習する。最初にＣｏｎｖＬＳＴＭが時刻ｔの画像を入力すると時刻ｔ＋Δｔの予測画像を推定できるように学習する。あらかじめ車載カメラでΔｔ時間毎に撮影した学習用画像のうち時刻ｔ以前の所定のＭ枚の画像をＣｏｎｖＬＳＴＭに順次入力する。このとき、時刻ｔの画像を入力し終えた時にＣｏｎｖＬＳＴＭが予測した予測画像と、ｔ＋Δｔの画像との誤差が最小となるようにＣｏｎｖＬＳＴＭのみ学習する。このように学習しておくことで、ＣｏｎｖＬＳＴＭ層は、撮像装置１１が画像を入力すると内部的には過去に入力した画像情報を保持し、それら過去の画像情報の変化量を考慮してΔｔ時刻後の画像を予測することができる。特に、車速を変えて撮影した学習画像を用いて学習しておくことで、推定時には、異なる車速の画像が入力されても、車速に応じてΔｔ時刻後の画像を予測することができるようになる。次に、ＦＣＮ層が画像から幾何情報を予測できるように、あらかじめ撮影した時刻ｔの学習画像をＦＣＮに入力して推定した予測幾何情報と、あらかじめ同時刻ｔに奥行きカメラで撮影したデプスマップとの奥行き値の誤差が最小となるようにＦＣＮを学習する。このようにすることで、ＦＣＮは画像を入力するとデプスマップを推定できるようになる。最後に、ＣｏｎｖＬＳＴＭとＦＣＮの予測結果の不整合を低減させるため、ＣｏｎｖＬＳＴＭとＦＣＮを接続して学習する。あらかじめ撮影したΔｔ時間毎に撮影した時刻ｔの学習用画像を入力として、ＣｏｎｖＬＳＴＭの第一の出力と時刻ｔ＋Δｔの画像、ＦＣＮの出力と時刻ｔ＋Δｔのデプスマップとの誤差が減少するようにネットワークを学習する。以上のようにして学習したＣＮＮを学習モデルとして用いた。
【００３７】
なお、ＣｏｎｖＬＳＴＭについては、非特許文献３に詳細が開示されている。そして、デプスマップを推定するＦＣＮについては、非特許文献４に詳細が開示されており、これらを援用することができる。
【００３８】
＜効果＞
第１の実施形態では、予測部が、撮像装置が入力画像を撮像した時刻以降の予測画像と予測幾何情報を予測し、算出部が予測結果を基に撮像装置の位置姿勢を算出する。以上のように予測結果を基に位置姿勢を算出することで、処理に時間のかかる幾何情報の推定や位置姿勢の算出による遅延の影響を受けずに済み、高速に位置姿勢を算出することができる。
【００３９】
＜変形例＞
第１の実施形態における算出部１４０は、予測幾何情報と予測画像、およびマップをもとに位置姿勢を算出していた。しかしながら、予測部１２０が予測した予測幾何情報または予測画像の少なくとも一方または両方を利用し、撮像装置１１が入力画像を撮像した時刻よりも後の撮像装置１１の位置姿勢を算出することができる構成であれば第１の実施形態で説明した方法に限るものではない。
【００４０】
具体的には、予測画像とマップ中のキーフレームに保持される画像から画像特徴を算出し、同じ特性をもつ特徴量の位置関係から位置姿勢を算出する５点アルゴリズムを用いて位置姿勢を算出することもできる。ここでいう画像特徴とは、画像中の角など特異的な特徴をもつ点のことで、特徴量とはそれぞれの画像特徴を一意に記述するための特徴点周りの小領域の画像パッチから算出する識別子のことである。なお、特徴量についてはＳＩＦＴ（Scale Invariant Feature Transform）特徴量やＡＫＡＺＥ（Accelerated-KAZE）特徴量を用いることができる。このような構成とした場合には、学習モデルは予測画像さえ予測できればよく、予測幾何情報を予測しなくてもよい。なお、このような構成における学習モデルの構成方法については後述する。
【００４１】
また、キーフレームがデプスマップをさらに保持する構成とした場合には、キーフレームのデプスマップを予測幾何情報であるデプスマップに射影し、それぞれの三次元点の最近傍の点同士の距離が最小となるように位置姿勢を算出するＩＣＰ（Iterative Closest Point）アルゴリズムを用いて位置姿勢を算出してもよい。このような構成とした場合には、学習モデルは予測幾何情報さえ予測できればよく、予測画像を予測しなくてもよい。このような構成における学習モデルの構成方法についても後述する。
【００４２】
第１の実施形態においては、学習モデルにＣｏｎｖＬＳＴＭとＦＣＮを組み合わせた学習モデルを用いていた。しかしながら、撮像装置１１が撮像した時刻ｔよりも後の時刻の位置姿勢を算出するための情報を予測することができる構成であればよい。具体的には、第１の実施形態ではＣｏｎｖＬＳＴＭやＦＣＮなど画像の局所的な位置関係を考慮するニューラルネットワークを用いていたが、それらの代わりにＬＳＴＭやＤｅｎｓｅ  Ｎｅｔｗｏｒｋを用いて画像全体を考慮するようなネットワーク構成としてもよい。また、本実施形態ではＣｏｎｖＬＳＴＭの出力を二つに分割し、片方の出力によって予測画像を、もう一方の出力を入力としてＦＣＮによりデプスマップを推定する構成としていた。しかしながら、予測画像のみ推定する学習モデルと、予測幾何情報を算出する学習モデルというようにそれぞれ別々の学習モデルを用意して予測してもよい。さらに言えば、前記変形例にて述べたように予測画像のみ予測すればよいときにはＣｏｎｖＬＳＴＭのみ用いる構成としてもよいし、予測幾何情報のみ予測すればよいときには第１の実施形態で述べたようなＣｏｎｖＬＳＴＭの出力を二つに分割する構成とせず、１つの出力層をＦＣＮの入力層と接続するような構成としてもよい。
【００４３】
第１の実施形態においては、画像を撮像する撮像装置１１がＲＧＢカメラである構成について説明した。ただし、ＲＧＢカメラに限るものではなく、現実空間の画像を撮像するカメラであれば特に制限はなく、たとえば濃淡画像を撮像するカメラでもあってもよい。また、単眼カメラであってもよいし、二台以上の複数のカメラやセンサを備えるカメラであってもよい。さらには、奥行き情報や距離画像、三次元点群データなどの幾何情報を取得することのできる装置であってもよい。具体的にはＴＯＦ（Time Of Flight）カメラやＬｉＤＡＲ（Laser Imaging Detection and Ranging）、ソナーセンサ等が該当する。これらＲＧＢカメラ以外を用いる場合には、学習モデルは使用するカメラや計測装置が取得する画像や幾何情報を入力として、それらの取得時刻より先の時刻の幾何情報を予測することができるように構成する。このような構成とする場合には、あらかじめ各種センサに合わせて学習モデルを用意しておけばよい。例えばＴＯＦカメラによって取得した時刻ｔの入力幾何情報（デプスマップ）から時刻ｔ＋Δｔの予測幾何情報を予測して位置姿勢を算出する場合には、学習モデルはあらかじめ、時刻ｔの入力幾何情報を入力としたときに、予測幾何情報と時刻ｔ＋Δｔの入力幾何情報との奥行き値の誤差が減少するように学習しておけばよい。
【００４４】
第１の実施形態においては、予測結果をもとに算出した位置姿勢を基に自動車を制御していた。一方で、予測画像ではなく、実際の入力画像をもとに位置姿勢を算出する場合の処理時間を短縮する場合にも用いることができる。具体的には、位置姿勢算出における最適化計算の初期値を、過去に予測画像から算出した位置姿勢とする。あらかじめ予測により求めた位置姿勢を初期値とすることで収束までの位置姿勢算出の繰り返し計算におけるループ回数を減らすことができ、さらに、不確実な予測を用いるのではなく実際の計測値に合わせて位置姿勢を算出することができ、高速に高精度に位置姿勢を算出することができる。
【００４５】
第１の実施形態では、予測部１２０が予測した予測画像や予測幾何情報を使って、算出部１４０が撮像装置１１の位置姿勢（結果的に自動車１の位置姿勢）を算出した。一方で、これら予測画像や予測幾何情報を、予測を用いないＳＬＡＭ（Simultaneous Localization and Mapping）の算出値と併用して用いる構成としてもよい。具体的には、まず時刻ｔ以前の複数の入力画像を用いて非特許文献１の方法でシーン中の三次元空間の点群を表す三次元点を算出しておく。次に、算出した三次元点を予測幾何情報に射影する。次に射影した三次元点と予測幾何情報の奥行きとを重み付和によって統合して高精度化した幾何情報を予測幾何情報として用いる。本変形例においては非特許文献１に記載の信頼度を重みとして用いることができる。非特許文献１の方法では、複数時刻の入力画像からモーションステレオによって三次元点を算出する。各点の信頼度とは、奥行き値の分散の逆数である。以上のような構成として、ＳＬＡＭによって求めた三次元点の信頼度が高い点を予測部１２０が予測した幾何情報のデプスマップの各点の代わりに用いる、またはそれらを統合することで、予測幾何情報を高精度化することができ、高精度に位置姿勢を算出する。
【００４６】
第１の実施形態においては、撮像装置１１が撮像した時刻ｔの入力画像をもとに、予測部１２０がある一時刻であるｔ＋Δｔ時刻の予測画像および予測幾何情報を推定し、算出部１４０がｔ＋Δｔ時刻後の撮像装置１１の位置姿勢を算出した。しかしながら、予測部１２０が予測するのは撮像装置１１が撮像した時刻ｔ以降の予測画像や幾何情報であれば、さらに先の複数の時刻の予測画像や予測幾何情報を推定する構成としてもよい。具体的には、予測部１２０が、時刻ｔ＋ｎΔτの予測画像を学習モデルに入力し、時刻ｔ＋（ｎ＋１）Δτの予測画像を予測する。こうすることで学習モデルの変更なしに時刻ｔ＋Δｔ以降のさらに先の時刻の予測画像や予測幾何情報が予測でき、それらの時刻の位置姿勢を算出することができる。このようにして算出した複数時刻の未来の位置姿勢と算出しておいたルートとの距離が最小となるように自動車を制御することで、直近のルートとの位置姿勢の誤差が大きくともさらに先の時刻での誤差が小さくなるように自動車を制御することができ、急制動しなくてもよく、安定して自動車を制御することができるようになる。
【００４７】
第１の実施形態においては、予測結果をもとに算出した位置姿勢を基に自動車を制御していた。一方で、予測性能に応じて予測を利用するか否か決めることもできる。具体的には、算出部１４０が、時刻ｔの入力画像を基に予測したｔ＋Δｔ時刻の予測画像と、実際にｔ＋Δｔ付近の時刻に撮像装置１１が撮像した入力画像との各画素の輝度差の平均、最大、最小、中央値が所定の閾値以内であれば予測性能が高いと判定し、位置姿勢算出に予測画像、予測幾何情報を利用する。一方、閾値以上となった場合には予測性能が低いとして位置姿勢算出に予測画像や予測幾何情報を利用せず、入力画像を基に位置姿勢を算出する構成である。また、予測性能が低い場合には予測を停止することもできる。このような構成とすることで、予測精度が低いときに位置姿勢推定精度が低下することを避けることができる。
【００４８】
前記変形例においては、予測画像と入力画像の一致度合に基づいて予測の利用の有無を判断していた。ところで、予測画像と入力画像の一致度合に基づいて制御値を変える構成としてもよい。例えば、前記予測精度が高いときには自動車の速度の上限を上げ、逆に予測精度が低いときには自動車の速度の上限を下げるよう自動車を制御する。このようにすることで、予測性能が悪いときには速度を下げることで安全に自動車を制御することができる。また、予測性能が悪いときには運転手に自動車の制御を要請してもよい。また、ネットワーク経由で管理センターに自動車の制御を要請してもよい。
【００４９】
前記変形例においては、予測画像と入力画像の一致度合に基づいて制御値を変える構成とした。ところで、予測画像と入力画像の一致度合に基づいて予測パラメータを動的に調整してもよい。ここでいう予測パラメータとは、予測する時刻を表すｔ＋Δｔにおける予測時間Δｔ、前記複数時刻の予測を行う場合における予測時刻ｔ＋ｎΔτにおけるどの時刻まで予測をするかを表す予測個数Ｎ（ｎの最大値）、予測間隔を表すΔτのことである。具体的な予測パラメータの調整例としては、算出部１４０が、予測精度が低いと判定した場合には予測時間Δｔを短くする、予測個数Ｎの値を小さくする、予測間隔Δτを小さくするという調整を行ってもよい。一般に、予測期間が長くなるほど予測精度が低下するが、このような調整をすることで予測部１２０の予測値の予測精度を担保できるようになる。なお、予測時間や予測間隔であるΔｔ、Δτを予測器において反映させるために、予測器に入力画像に加えて１つの時間情報を入力する入力層を加えた構成とする。また、このようなネットワーク構成とする場合には、時刻ｔの入力画像と任意のΔｔの値を入力し、時刻ｔ＋Δｔの画像と予測器の予測値が一致するように学習させる。また、予測を行う領域を表すＲＯＩ（region of interest）を予測パラメータとしてもよい。つまり、入力画像のうち一部の領域のみ予測を行うという構成としてもよい。この場合、入力画像と予測画像をそれぞれ既定の小領域に分割し、算出部１４０が小領域毎に予測精度を算出する。この時、予測精度が所定の閾値以上の小領域のみその後の時刻の予測に利用する。
【００５０】
前記変形例では、予測パラメータの調整には予測画像と入力画像の一致度合を用いていた。しかしながら、情報処理装置１０への入力、予測部１２０の予測値、算出部１４０の算出値、制御部１５０の制御値、または情報処理装置１を搭載する自動車の状態をもとに予測パラメータを調整するもので特に制約はない。具体的には、算出部１４０が予測画像、予測幾何情報を基に算出したｔ＋Δｔ時刻の予測位置姿勢と、撮像装置１１がｔ＋Δｔ時刻付近に撮像した入力画像を基に算出した算出位置姿勢との誤差の二乗誤差が大きい程、予測時刻Δｔや予測間隔Δτ、予測個数Ｎの値を小さくする。
【００５１】
また、自動車の状態を基に予測パラメータを調整してもよい。ここでは一例として、事前に計測しておいた自動車の制動距離で予測パラメータを調整する構成について述べる。制動距離が大きい自動車の場合には、制御してから自動車が所望の動作を完遂するまでに時間がかかるため、より先の予測を用い制御すること所望の動作を行うまでの時間を短くすることが望まれる。このために、自動車の重量が大きい程、予測時間Δｔを大きくする、予測個数Ｎの値を大きくする、予測間隔Δτを大きくする。制動距離以外にも、重量が大きい程、タイヤの接地面積が小さい程、自動車の速度が速い程、自動車の乗車人数が大きい程それぞれのパラメータを大きくする構成としてもよい。また、自動車の速度やステアリングに応じて予測を行う画像の範囲のことである予測範囲を調節してもよい。具体的には自動車の速度が速いときには予測範囲を小さく、速度が遅いときには予測範囲を大きくする。このように予測範囲を調節することで、予測時間間隔や予測時間が長くなる場合、予測個数が増大する場合においても、予測に係る時間を一定時間にすることができる。
【００５２】
第１の実施形態においては、保持部１３０が保持するマップは、事前に撮影したシーンの画像とその時の位置姿勢を関連付けたキーフレーム群のことであった。しかしながら、マップは以上の構成に限るものではなく、予測部１２０が予測した予測画像または予測幾何情報との間の位置姿勢を算出できるものであれば何でもよい。具体的には、ＬｉＤＡＲで取得した三次元空間の点群を表す三次元点群を全天周カメラで撮影した画像に射影し一致する点を求め、各三次元点に一致する画像の輝度パラメータを加えた４パラメータを持つ四次元点群をマップとして保持してもよい。この構成とした場合には、四次元点群を予測画像に射影し、予測画像と射影した点群との輝度差が減少するように予測画像の視点位置を算出できる。また、３Ｄマップとして、ＬｉＤＡＲで取得した三次元点群のみ保持する構成としてもよい。この場合には、三次元点群を予測幾何情報であるデプスマップに射影し、ＩＣＰアルゴリズムにより三次元点群と予測したデプスマップとの距離が最小となるように位置姿勢を算出してもよい。このような構成とすることで、保持部１３０が保持するマップが変わる構成に対しても本情報処理装置を適用することができる。
【００５３】
第１の実施形態においては、保持部１３０が事前に作成したマップを保持していた。しかしながら、算出部１４０が位置姿勢を算出する際に、事前に作成したマップを用いるのではなく、予測した位置姿勢をもとにマップを作成しつつ位置姿勢推定を行うＳＬＡＭの構成としてもよい。マップの生成方法に関しては、ＣＮＮ−ＳＬＡＭを援用することができる。なおＣＮＮ−ＳＬＡＭについては非特許文献１に詳細に開示されており、これを援用できるものとする。ただし、ＣＮＮ−ＳＬＡＭでは撮像装置１１が撮像した入力画像を用いていたが、本構成に適応する場合には入力画像の代わりに予測画像を用いることもできる。このような構成にすることで、事前にマップを作成しない場所においても、予測を行いつつ自動車の自己位置推定および制御を行うことができる。
【００５４】
第１の実施形態においては、保持部１３０はマップを保持していた。しかしながら、保持部１３０がマップを保持しない構成としてもよい。具体的には、予測部１２０が時刻ｔより一時刻前のｔ’’の入力画像をもとに予測した予測画像と算出部１４０が算出した位置姿勢、および予測部１２０が時刻ｔの入力画像に対して予測したｔ＋Δｔ時刻の予測画像とを用いて、算出部１４０が時刻ｔ’’に対する時刻ｔ＋Δｔの位置姿勢変化量を算出する。以上の処理を入力部１１０が画像を入力するごとに行い、毎時刻算出される位置姿勢変化量を積算することで、撮像装置１１の位置姿勢を算出することができる。
【００５５】
第１の実施形態においては、学習モデルが内部的に入力画像の履歴を保持する構成としたため、自動車の速度に応じた予測を行うことができる。しかしながら、車速に応じた複数の学習モデルを用意し、車速に応じて切り替えて用いてもよい。つまり、保持部１３０は、複数の学習モデルを保持する。保持する学習モデルの数は、車速に応じた数分望ましいが、例えば１０ｋｍ／、２０ｋｍ／ｈ、…と１０ｋｍ／ｈごとの学習モデルとし、利用する学習モデルはその時の自動車１の車速に最も近いものが選択されるものとする。車速は、制御装置１２から取得するものとする。このような構成とすることもできる。
【００５６】
第１の実施形態においては、算出部１４０が算出した位置姿勢をもとに自動車を制御する構成としていた。しかしながら、制御する対象は自動車に限らず、自律移動する装置であれば特に制限はない。例えば実施形態における情報処理装置１０を、工場や倉庫、商店において物資の搬送を行うＡＧＶ（automated guided vehicle）をはじめとする自律移動型ロボットやＡＭＲ（autonomous mobile robot）に適用してもよい。
【００５７】
また、自動走行に限らず、人が運転する操作をアシストする構成として用いてもよい。具体的には、予測により高速に算出した制御値と人の操作が乖離した場合にはアラートを鳴らすことで、素早く人に注意を喚起することができる。さらに、このような場合には、人が操作を誤ったとして算出した制御値で自動車を制御してもよい。
【００５８】
さらには、本情報処理装置を、位置姿勢を算出する装置として用いてもよい。具体的には、複合現実感システムにおける現実空間と仮想物体との位置合わせ、すなわち、仮想物体の描画に利用するための現実空間における撮像装置１１の位置及び姿勢の計測に本発明の方法を適用してもよい。このような構成とした場合には図１における制御部１５０、および制御装置１２は必要ではなく、算出部１４０が予測画像と予測幾何情報を基に算出した位置姿勢を基づいて描画された仮想物体のＣＧ像が重畳され、モバイル端末やヘッドマウントディスプレイのディスプレイを通してユーザに提示する。このような構成とすると、従来位置姿勢算出やＣＧの描画における計算時間による映像の提示までの遅延を低減することができる。
【００５９】
［第２の実施形態］
上記第１の実施形態では、予測画像、予測幾何情報および、過去の入力画像をもとに作成した位置姿勢の算出指標であるマップを用いて、撮像装置１１の位置姿勢を算出し自動車１の制御を行うものであった。本第２の実施形態では、過去の入力画像をもとに作成したマップだけでなく、予測画像、予測幾何情報を用いてマップを作成するとともに、作成したマップを用いて撮像装置の位置姿勢を算出する例を説明する。
【００６０】
事前に作成したマップが無くとも、入力画像を基にマップを作成しつつ自己位置推定をするＶｉｓｕａｌ  ＳＬＡＭ（Simultaneous Localization and Mapping）を用いることで撮像装置１１の位置姿勢を算出することが可能である。Ｖｉｓｕａｌ  ＳＬＡＭでは入力画像と、入力画像に基づいて算出した位置姿勢を関連付けてキーフレームとして保持する。従来のＶｉｓｕａｌ  ＳＬＡＭは、過去に通過した位置（入力画像を撮像した位置）にのみキーフレームを作成するものである。そこで第２の実施形態では、過去に通過した地点にのみキーフレームを作成するのでなく、予測画像、予測幾何情報を用いて、自動車がこれから進むと予測される地点付近のキーフレームを生成する。また、作成したキーフレームを、入力画像を用いて更新し高精度化する。本第２の実施形態においては、キーフレームの生成方法、および更新方法について説明し、これらを用いた自動車の位置姿勢算出および制御方法について説明する。
【００６１】
本第２の実施形態における装置の構成は、第１の実施形態で説明した情報処理装置１の構成を示す図１と同一であるため、その説明は省略する。本第２の実施形態では、算出部１４０が、撮像装置１１が入力画像を撮像した時刻ｔよりも後の時刻ｔ’のキーフレームを算出する。
【００６２】
また、算出部１４０は、保持部１３０が保持するキーフレームを更新する。そして、作成または更新したキーフレームを保持部１３０に出力し、保持する点が第１の実施形態と異なる。なお、本第２の実施形態においては、撮像装置１１が撮影したシーンのＲＧＢ画像または予測部１２０が予測した予測画像であるＲＧＢ画像と、幾何情報としてのデプスマップ、およびそれらの視点の位置姿勢を関連付けたデータ構造をキーフレームとする。さらに、キーフレーム群をマップとして保持部１３０に保持する。
【００６３】
第２の実施形態における全体の処理手順は、第１の実施形態で説明した情報処理装置１の処理手順を示す図５と同一であるため、説明を省略する。第１の実施形態と異なるのは、ステップＳ１５０において算出部１４０が位置姿勢を算出するのに加え、さらに時刻ｔよりも後の時刻ｔ’のキーフレームを算出し、更新する点である。
【００６４】
図６は、第２の実施形態における情報処理装置１０の算出部１４０におけるステップＳ１５０の処理手順の詳細を示すフローチャートである。
【００６５】
ステップＳ２１１０にて、算出部１４０は、予測部１２０からの予測画像、保持部１３０が保持するキーフレームを用いて撮像装置１１の位置姿勢を算出する。具体的には、まずキーフレームのデプスマップを予測画像上に射影する。次に、予測画像の各画素値と、射影によって対応付けられたキーフレームが保持する画像の各画素値との輝度差が最小となるようにｔ＋Δｔの位置姿勢を算出する。
【００６６】
ステップＳ２１２０にて、算出部１４０は、キーフレームを算出し、保持部１３０に出力する。まず算出部１４０がキーフレームを追加するかどうか判定する。具体的には、算出部１４０が、ステップＳ２１１０で算出した位置姿勢との二乗距離が最小となるキーフレームを選択し、当該キーフレームとの二乗距離が所定の距離以上でありかつ視線方向が所定の角度以上離れていればキーフレームを追加すると判断する。キーフレームを追加すると判断された場合には、算出部１４０が、予測部１２０が予測した予測画像、予測幾何情報、および算出部１４０がステップＳ２１１０で算出した位置姿勢をキーフレームとして保持部１３０に出力し、保持部１３０がこれを保持する。
【００６７】
ステップＳ２１３０にて、算出部１４０は、予測幾何情報とステップＳ２１１０で算出部１４０が算出した位置姿勢に基づきキーフレームが保持するデプスマップの奥行き値を更新する。まず算出部１４０は、保持部１３０が保持するマップから、ステップＳ２１１０において算出した位置姿勢との距離および視線方向が所定の閾値未満のキーフレームを選択する。次に選択したキーフレームに予測幾何情報であるデプスマップを射影する。そしてキーフレームが保持する幾何情報であるデプスマップと射影した予測幾何情報のデプスマップとを時系列フィルタリング（平滑化）により更新する。時系列フィルタリングとしては、まずＩＣＰアルゴリズムによって二つのデプスマップから算出できる三次元点のうち同一の三次元点とみなす対応関係を算出する。次に、同一であるとみなした２つの三次元点の重み付平均位置を算出する。算出した重み付き平均位置をデプスマップの当該画素の奥行き値として保持部１３０のキーフレームのデプスマップを更新する。
【００６８】
＜効果＞
以上のように、第２の実施形態では、予測画像、予測幾何情報を用いてキーフレームを作成する。さらに作成したキーフレームを予測画像、予測幾何情報を用いて時系列に更新する。そして、作成したマップを用いて位置姿勢を算出する。このような構成とすることで、従来のＶｉｓｕａｌ  ＳＬＡＭにおいて、撮像装置１１が通過した地点にしか作成できなかったキーフレームを、今後通過する地点付近に作成することができる。そして、あらかじめ作成したキーフレームをさらに時系列に更新することで精度良い幾何情報としてのデプスマップを算出することができる。以上により作成した精度良いマップを用いることで、高精度に位置姿勢を算出することができる。
【００６９】
＜変形例＞
第２の実施形態では、算出部１４０が、予測画像が予測される毎に時系列フィルタリングにより保持部１３０が保持するマップのキーフレームのデプスマップの奥行き値を更新した。しかしながら、マップの更新方法は、マップを高精度化することができる方法であれば特に制約はない。具体的には、入力画像や予測画像を用いてモーションステレオ法によって算出した奥行き値を用いて時系列フィルタリングによりキーフレームのデプスマップを更新する非特許文献１の方法で更新することもできる。また、過去に作成した複数のキーフレームを統合して更新してもよい。ここでいう統合とは、まず複数のキーフレームの位置姿勢に矛盾が無いように、ポーズグラフ最適化を用いてキーフレームの位置姿勢を算出する。次に、得られた位置姿勢を用いてさらに複数のキーフレームのデプスマップを平滑化することである。平滑化においては、前述の時系列フィルタリングと同様の方法を用いることができる。このように複数時刻の入力画像、予測画像を用いてマップを更新することで、高精度なマップが生成でき、位置姿勢の算出精度が向上する。
【００７０】
第２の実施形態では、予測部１２０が算出した予測値を基に生成したマップを基に位置姿勢を算出していた。一方、算出したマップを基に自動車の制御値を変更してもよい。具体的には、まず算出部１４０が、予測したキーフレームのデプスマップからシーンの三次元形状を算出する。この時、自動車の進行方向に三次元の構造物が存在する場合には、制御装置１２が自動車の速度を低下させるように制御値を算出する。また、予測したマップから三次元形状を算出し、路面の凹凸度合を算出し、凹凸が大きいと予想された位置を避けるような制御を行うための制御値を算出してもよい。このように、予測値を基に作成したマップを用いて自動車を制御することで、センサで計測する以前からあらかじめ制御することができ、自動車の急制動を減少させることができる。
【００７１】
また、第２の実施形態においても、第１の実施形態で述べたように事前に作成したマップを保持している場合には、予測したキーフレームと事前に作成したマップとの差分を基に、事前に作成したマップを用いて位置姿勢を算出するか否かを切り替えることもできる。ここでいう差分は、算出部１４０が算出する、予測したキーフレームとマップとの一致度合を表す値のことである。具体的には、事前に作成したマップを予測したキーフレームのデプスマップに射影し、それらの差の平均値、中央値、最大値、最小値や、デプスマップを小領域に区切り領域毎に算出した奥行き値の差の平均値、中央値、最大値、最小値を用いることができる。前述の差分値が所定の閾値を超えていれば事前に作成しマップとシーンが変わっているとして第２の実施形態の方法で位置姿勢を算出する。一方、閾値以下であれば第１の実施形態に示したように事前に作成したマップを用いて位置姿勢を算出する。以上のように、予測したマップと事前に作成したマップの一致度合を基に事前に作成したマップを利用するか否か判断することで、例えば工事により事前にマップを作成した時点と景観が変わった場合にも安定して高精度に位置姿勢を算出することができる。
【００７２】
［第３の実施形態］
第１の実施形態では、予測画像、予測幾何情報を用いて、事前に作成したマップを基に、撮像装置１１の位置姿勢を算出し自動車の制御を行う方法について説明した。第２の実施形態では、予測画像、予測幾何情報を用いてマップを生成、および更新する方法について説明した。第３の実施形態では、予測画像、予測幾何情報を用いて、それらに写る物体情報である物体種、それら物体の位置、移動量を算出し、それらをもとに自動車の制御を行う方法について説明する。
【００７３】
自動車制御においては、自己位置推定だけでなく、周囲の物体の位置姿勢や移動量の予測が重要である。具体的事例として、走行中に自動車の前方右よりに自転車が直進して走行しており、さらに自転車の前方に駐車している自動車があった場面を挙げる。この時、自転車は駐車している車を避けるために左方向に蛇行し、衝突することが予測される。このため、あらかじめ自動車の速度を減少させることで衝突を回避することができる。また別の具体的事例として、駐車している自動車の前方から不明瞭な物体が飛び出してくる場面を挙げる。この時、不明瞭な物体は人であって、衝突することが予想される。このため、衝突が予想された時点であらかじめ自動車の速度を低下させることで衝突を回避することができる。本第３の実施形態ではこのように、周囲の状況、周囲の物体の物体種や、それらの将来の位置や移動量を予測して、障害物と衝突しないように自動車を制御する方法について述べる。
【００７４】
第３の実施形態における装置の構成は、第１の実施形態で説明した情報処理装置１の構成を示す図１と同一であるため省略する。第３の実施形態では、算出部１４０が、撮像装置１１が入力画像を撮像した時刻ｔよりも後の時刻ｔ’における物体情報として物体種とそれらの位置を算出する。また、各物体との衝突確率を表す衝突可能性情報を算出する。また、衝突可能性情報を制御部１５０に出力する。制御部１５０は算出部１４０が算出した衝突可能性情報に基づき、自動車を制御する制御値を算出し、制御装置１２に出力する。
【００７５】
図７は、第２の実施形態における情報処理装置のフローチャートである。第１の実施形態におけるステップＳ１５０の位置姿勢算出の代わりに、ステップＳ３１０の物体情報算出が追加されている点が第１の実施形態と異なる。
【００７６】
ステップＳ３１０にて、算出部１４０は、予測部１２０が予測した予測画像、予測幾何情報に含まれる物体種とその位置、移動量を算出する。また、それらに基づき、自動車と物体との衝突可能性情報として、自動車と物体ごとの衝突確率値（０から１の範囲の実数であり、１となるほど衝突確率が高いとする）、衝突予測時刻、衝突予測時刻の物体の予測位置を算出する。なお、ステップＳ３１０の処理の詳細については後述する。
【００７７】
ステップＳ１６０においては、算出部１４０は、ステップＳ３１０において算出した衝突可能性情報に基づいて、制御部１５０が衝突を回避するよう自動車の制御値を算出する。具体的には、衝突可能性が所定の閾値以上の物体がある場合には速度を低下させるためのブレーキを制御し、かつ衝突予測時刻における物体の予測位置を避けるようステアリングを制御する。なお、本実施形態において、予測部１２０は、複数時刻（ｔ＋ｎΔｔ：ｎ＝１，…，Ｎ）の画像と幾何情報を予測するものとした。
【００７８】
図８は、第２の実施形態における情報処理装置のステップＳ３１０の物体情報算出処理の詳細を示すフローチャートである。本処理は、予測画像から物体種が何であるか検出するステップＳ２１１０、各物体の位置を算出するステップＳ２１２０、およびそれら物体と自動車の衝突可能性を算出するステップＳ２１３０で構成される。
【００７９】
ステップＳ２１１０にて、算出部１４０は、入力画像から物体種を検出する。本実施形態において画像からの物体種の検出には、画像から物体候補領域を算出し、それぞれの候補領域の物体種を推定し、さらに画像の画素毎に物体のラベルを算出するディープニューラルネットワークであるＭａｓｋ  Ｒ−ＣＮＮを用いる構成とした。なお、Ｍａｓｋ  Ｒ−ＣＮＮについては非特許文献５に詳細な記述があり、これを援用できる。ただし、画像から物体種を検出することができる方法であれば、上記方法に限るものではない。
【００８０】
ステップＳ２１２０にて、算出部１４０は、予測部１２０が予測した各時刻ｔ＋ｎΔｔの予測画像と入力画像との各画素の同一点を表す対応関係を求めることで、ステップＳ２１１０で検出した物体が予測画像中のどの位置するか算出する。具体的には、入力画像と予測画像との間でオプティカルフローを算出することで、入力画像の画素が予測画像のどの画素に対応するか求める。次に、算出部１４０は、ステップＳ２１１０で算出した各画素の物体種ラベルを対応する予測画像の各画素に割り振る。そして、予測画像の各画素と一致する予測幾何情報における各画素にも同様に物体種ラベルを割り振る。以上により予測幾何情報の各三次元点に物体種が割り当てられることになる。物体が各予測時刻ｔ＋ｎΔｔにおいて三次元空間中のどこに位置するかを表す三次元情報である予測位置を導出する。
【００８１】
ステップＳ２１３０にて、算出部１４０は、算出した各物体の予測位置をもとに各時刻ｔ＋ｎΔｔごとの自動車が物体との衝突可能性を算出する。この衝突可能性とは、自動車１の前方の所定の領域に、ステップＳ２１２０に物体種ラベルが割り振られた予測幾何情報の三次元点が位置している場合には大きく、所定の領域から離れるほど小さくなる値のことである。具体的な衝突可能性の値の算出方法を次に述べる。まず、自動車の制動距離から求めることのできる自動車が停止するまでに進む空間を制動距離空間として、各クラスの三次元点と制動距離空間との最小距離ｄを算出する。次に、自然対数の底の−ｄ乗根の値（０から１となる）を衝突可能性の値とする。なお、あらかじめステップＳ２１１０において検出した物体ごとに０から１の実数を格納するメモリを割り当てておき、当該メモリに衝突可能性の値を格納する。
【００８２】
＜効果＞
以上のように、第３の実施形態では、予測画像、予測幾何情報を用いて周囲の物体情報である物体の種類、物体の予測位置を算出し、自動車と各物体との将来の衝突可能性を算出する。そして、将来の衝突可能性が高ければ物体と自動車が衝突しないように自動車を制御する。このようにして実際に入力画像が取得されるより前に早期に物体位置を算出することができる。また、予測した物体位置をもとに物体と自動車との衝突可能性を求め、衝突可能性に基づき衝突を回避するように自動車を制御することで、安全に自動車を制御することができる。
【００８３】
＜変形例＞
第３の実施形態では、予測部１２０が予測した予測画像と入力画像とのオプティカルフローを算出し物体の予測位置を算出していた。しかしながら、予測部１２０が学習モデルを用いて、幾何情報として物体の移動量を算出する構成としてもよい。このとき、学習モデルは時刻ｔにおける入力画像を入力するとその画像における各画素が時刻ｔ＋Δｔにおいてどこの画素に写っているかを表す二次元（ｘ、ｙ）の移動量を画素毎に出力する。この学習モデルは、時系列画像（ｔ＝０，…，ｍ）を学習モデルに入力した際の出力と、ｔ＝ｍからｔ＝ｍ＋１の画像のオプティカルフローとの誤差を最小化するように学習しておけばよい。なお、この学習モデルとしては例えば第１の実施形態で述べたようなＣｏｎｖＬＳＴＭを用いることができる。また、学習モデルは画像の各画素の二次元の移動量を算出するのではなく、三次元空間上の移動量（ｘ、ｙ、ｚ）を画素毎に出力するように構成してもよい。具体的には、時系列画像（ｔ＝０，…，ｍ）を学習モデルに入力した際の出力と、ｔ＝ｍからｔ＝ｍ＋１のデプスマップの各ピクセルの対応関係を表す三次元ベクトルの三値を格納した三次元オプティカルフローとの誤差が最小化するように学習して置けばよい。なお、このときの学習モデルとしては例えば第１の実施形態で述べたＣｏｎｖＬＳＴＭとＦＣＮを接続した構成を利用することができる。以上のように、予測部１２０があらかじめ学習モデルを用いて予測幾何情報として二次元、または三次元のオプティカルフローを予測することで、算出部１４０がオプティカルフロー算出を行う必要が無く、高速に物体位置を算出することができ、迅速に衝突可能性情報を算出できる。
【００８４】
第３の実施形態では、物体種を検出し、物体種ごとに衝突可能性を算出していた。しかしながら、衝突可能性を算出できれば物体種を明示的に算出しない構成としてもよい。この場合には、予測した幾何情報を基に、各三次元点と制動距離空間との距離を算出し、三次元点群毎に衝突可能性を算出すればよい。また、前述した変形例のように予測部１２０が幾何情報としてオプティカルフローを予測する場合においても、算出部１４０が物体種を算出せず衝突可能性を算出してもよい。このような構成とすることで、物体種が明確にわからない場合においても、衝突回避を行うことができるようになり、安全に自動車を制御することができる。
【００８５】
第３の実施形態では、撮像装置１１が時刻ｔに撮像した入力画像を基に予測部１２０が予測した予測画像と予測幾何情報を予測していた。しかしながら、過去に予測した予測画像や予測幾何情報を用いて時系列的に予測結果を統合することもできる。具体的には、保持部１３０が保持するマップ中のキーフレームのデプスマップと時刻ｔの入力画像により予測した時刻ｔ＋Δｔの予測幾何情報であるデプスマップとを時系列フィルタリングにより統合する。このときさらに、時系列フィルタリングにより統合した各三次元点群の位置の分散の逆数を信頼度として、信頼度をもとに衝突可能性を算出することもできる。具体的には、各三次元点の信頼度と第３の実施形態における衝突可能性の値の積を信頼度付き衝突可能性値とする。そして、制御部１５０が、信頼度付き衝突可能性値が所定の閾値以上となった場合に当該物体と衝突を回避するように自動車を制御する。
【００８６】
第３の実施形態では、予測部１２０の予測を基に物体の予測位置を推定していた。一方、ＳＬＡＭによって求めた周囲の三次元点群と予測結果を統合することでよりさらに高精度に物体の予測位置を算出することができる。具体的には、まず過去の入力画像を基にＳＬＡＭによりシーンの三次元点群を算出する。なお、ＳＬＡＭの方式は入力画像から三次元点群を求めることができれば何を使ってもよく、例えば非特許文献１の方法が利用できる。次に、入力画像から物体検出を行い、物体ごとに三次元点群をセグメンテーションする。その後、時刻ｔ＋Δｔにおける予測幾何情報と物体ごとにセグメンテーションした三次元点群とをＩＣＰアルゴリズムによりマッチングする。以上のようにして、ＳＬＡＭで算出したそれぞれの物体が時刻ｔ＋Δｔにおいてどこに位置するのか算出する。以上の構成とすることで、予測精度が低いときにも大域的な物体の移動量を算出することができるため、物体の位置算出性能が向上する。
【００８７】
第３の実施形態では、算出部１４０は、入力画像からあらかじめ物体検出を行い予測画像に射影することで、物体の位置の予測を行った。しかしながら、物体が予測画像や予測幾何情報中のどこにあるのか算出することができれば、物体検出は入力画像から行うのに限らない。例えば予測画像に対して物体検出を行ってもよい。
【００８８】
また、複数時刻の予測画像に対して物体検出を行い、各時刻の予測画像の物体検出における尤度の変化を考慮して物体種判別を行ってもよい。具体的には、まず各時刻の予測画像に対して物体検出を行う。次に、物体の尤度の時系列変化を算出する。ここでいう尤度とは、物体検出器が出力する、各物体種別らしさを表す０から１の確率値のことである。
【００８９】
位置姿勢算出においては、動く物体などを外れ値として位置姿勢算出計算から除外することで高精度に位置姿勢を算出することができる。そこで、予測結果から物体の移動量を算出し、移動していない物体のみ用いて位置姿勢算出する構成としてもよい。具体的には、予測結果と入力画像との間のオプティカルフローを算出し、物体が移動しているかいないかを判定する。このとき静止物体と判定された物体上の三次元点群のみ用いて位置姿勢を算出する。このような構成とすることで、従来は位置姿勢を算出しつつ、ＲＡＮＳＡＣやＭ推定などを用いて外れ値除去をしていたのに対し、あらかじめ動く物体上の三次元点群を判別できるため高精度に位置姿勢を算出することができる。
【００９０】
第１乃至第３の実施形態では、予測部１２０の予測結果や、それらを用いた位置姿勢算出結果、物体の位置といった情報をユーザが確認することができなかった。そこで、それらの情報を液晶ディスプレイやＨＵＤ（Ｈｅａｄ−Ｕｐ  Ｄｉｓｐｌａｙ）に表示情報として提示する。図９は本変形例における表示装置の表示の一例を示す図である。本変形例においては表示情報を液晶画面に提示するものとする。なお、表示に係る処理は、制御部１５０（ＣＰＵ３１１が行うものとし、表示情報は表示部３１６に表示されるものとする。
【００９１】
ＧＵＩ１００は、表示情報を提示するためのウィンドウであり、Ｇ１２０は第１の実施形態における制御情報や第３の実施形態における物体の予測位置や衝突可能性情報を提示するためのウィンドウであり、Ｇ１４０は予測画像や予測幾何情報、第１の実施形態における位置姿勢算出結果を表示するためのウィンドウである。Ｇ１２１、Ｇ１２３は、算出部１４０が算出した物体の予測位置を入力画像に重畳表示した例である。このとき、実際の計測値と予測値との一致度合を基にしてＧ１２１、Ｇ１２３の色や枠の太さ、形状を変更してもよい。また、Ｇ１２２、Ｇ１２４はそれぞれの物体との衝突可能性値を表示した例である。ここでは、Ｇ１２１は対向車であり衝突可能性が低いと判定された例を挙げている。また、Ｇ１２３は自転車であり、自転車の先に駐車している自動車を避けるために道路に飛び出し手来ることを予測し、衝突可能性の値が大きくなった例を示している。Ｇ１２５は、衝突可能性が所定の閾値より大きくなった場合にアラートを提示した例である。同様に衝突可能性の値に応じてＧ１２１やＧ１２３の色や枠の太さ、形状を変更してもよい。また、衝突可能性の値をヒートマップとして可視化してもよい。Ｇ１２６は制御値を提示した例であり、現在の自動車の速度とステアリング角が矢印左側に提示されている。なお、制御方向を自動車の外部にいる人に提示するために、自動車前方に取り付けたディスプレイに矢印として提示する構成としてもよい。また、衝突可能性の上昇を受けて制御値の変更結果が矢印の右側に提示されている。また、Ｇ１２７は第１の実施形態で説明した予測位置姿勢を提示した。Ｇ１２８は、衝突可能性の上昇を受けて制御値を変更した場合の予測位置姿勢を提示した結果である。また、Ｇ１２９は第２の実施形態で説明した、予測結果を基に作成したマップを可視化した図である。具体的には、予測により作成したマップ中のキーフレームを入力画像に射影し重畳した。Ｇ１４０は一番下が入力画像であり、上の画像ほど先の未来を予測した予測画像を提示している。Ｇ１４１は各予測画像の時刻であり、Ｇ１４２にその時刻による予測位置姿勢が提示されている。本変形例では、予測画像を提示する方法を例示したが、予測幾何情報としてデプスマップから算出した三次元点群を提示する構成としてもよい。このとき、三次元点群の大きさや色を実際の計測値と予測値の一致度合や衝突可能性の値を基に変えてもよい。
【００９２】
＜効果のまとめ＞
第１の実施形態では、予測部が、撮像装置が入力画像を撮像した時刻以降の予測画像と予測幾何情報を予測し、算出部が予測結果を基に撮像装置の位置姿勢を算出する。以上のように予測結果を基に位置姿勢を算出することで、処理に時間のかかる幾何情報の推定や位置姿勢の算出による遅延の影響を受けずに済み、高速に位置姿勢を算出することができる。
【００９３】
第２の実施形態では、予測画像、予測幾何情報を用いて、位置姿勢算出の指標となるマップのキーフレームを撮像装置が今後通過すると予測される地点付近に作成する。さらに作成したキーフレームを予測画像、予測幾何情報を用いて時系列に更新する。そして、作成したマップを用いて位置姿勢を算出する。このような構成とすることで、従来のＶｉｓｕａｌ  ＳＬＡＭにおいて、撮像装置が通過した地点にしか作成できなかったキーフレームを、今後撮像装置が通過すると予測される地点にも作成することができる。そして、あらかじめ作成したキーフレームをさらに時系列に更新することで精度良い幾何情報としてのデプスマップを算出することができる。以上により作成した精度良いマップを用いることで、高精度に位置姿勢を算出することができる。
【００９４】
第３の実施形態では、予測画像、予測幾何情報を用いて周囲の物体情報である物体の種類、物体の予測位置を算出し、自動車と各物体との将来の衝突可能性を算出する。そして、将来の衝突可能性が高ければ物体と自動車が衝突しないように自動車を制御する。このようにして、実際に入力画像が取得されるより前に早期に物体位置を算出することができる。また、予測した物体位置をもとに物体と自動車との衝突可能性を求め、衝突可能性に基づき衝突を回避するように自動車を制御することで、安全に自動車を制御することができる。
【００９５】
＜定義のまとめ＞
本発明における画像入力部１１０は、現実空間を撮像した視覚情報である画像を入力するものであれば特にその種類は問わない。たとえば濃淡画像（モノクロ画像）を撮像するカメラの画像を入力してもよいし、ＲＧＢ画像を入力するカメラの画像を入力してもよい。奥行き情報や距離画像、三次元点群データを撮像できるカメラの画像を入力してもよい。また、単眼カメラであってもよいし、二台以上の複数のカメラやセンサを備えるカメラが撮像した画像を入力してもよい。さらに、カメラが撮像した画像を直接入力してもよいし、ネットワークを介して入力してもよい。
【００９６】
予測部１２０は、撮像装置が視覚情報を撮像した時刻以降の予測画像または予測幾何情報を予測するものである。ここでいう視覚情報とは、撮像装置が撮像した画像やデプスマップのことである。また、予測画像は、予測部が予測した画像のことである。予測幾何情報とは予測部が予測するデプスマップやオプティカルフローのことである。予測部が予測のために用いる学習モデルとは、ＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）のことである。このＣＮＮはある時刻ｔの画像を入力するとΔｔ時間後の時刻ｔ＋Δｔの予測画像、予測幾何情報のどちらか一方または両方を予測することができるよう学習されているものである。
【００９７】
保持部１３０は、前述した学習モデルを保持するものである。保持部１３０はさらに、位置姿勢算出の指標となるマップを保持しておいてもよい。マップとは、シーンの画像と位置姿勢を関連付けてキーフレームとし、キーフレームを複数保持する構成としてよい。シーンの画像とは、撮像装置が撮像した画像または予測部が予測した予測画像のどちらか一方、または両方のことである。また、マップは幾何情報を保持する構成としてもよく、さらにはシーンの画像と幾何情報の双方を保持する構成としてもよい。
【００９８】
算出部１４０は、予測部が予測した予測画像または予測幾何情報の少なくとも一方または両方を用いて、撮像装置の位置姿勢を算出するものである。また、算出部は、予測部が予測した予測画像または予測幾何情報の少なくとも一方または両方を用いて、位置姿勢算出の指標となるマップを算出するものであってもよい。さらに、算出部は、予測部が予測した予測画像、予測幾何情報に含まれる物体情報である物体種またはその移動量を算出するものであってもよい。算出部はさらに、物体との衝突確率である衝突可能性情報を算出してもよい。
【００９９】
制御部１５０は、入力画像、予測部が予測した予測画像、予測幾何情報や、算出部が算出した位置姿勢、マップ、物体情報、衝突可能性情報の少なくとも一つまたは複数を基に、本情報処理装置を搭載する装置を制御する制御値を算出するものである。
【０１００】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１０１】
１…自動車、１０…情報処理装置、１１…撮像装置、１２…制御装置、１１０…入力部、１２０…予測部、１３０…保持部、１４０…算出部、１５０…制御部
【図１】
2019124539.tif 000003
【図２】
2019124539.tif 000004
【図３】
2019124539.tif 000005
【図４】
2019124539.tif 000006
【図５】
2019124539.tif 000007
【図６】
2019124539.tif 000008
【図７】
2019124539.tif 000009
【図８】
2019124539.tif 000010
【図９】
2019124539.tif 000011