JP2019125112A - 情報処理装置及びその制御方法及びプログラム、並びに、運転制御システム - Google Patents

情報処理装置及びその制御方法及びプログラム、並びに、運転制御システム Download PDF

Info

Publication number
JP2019125112A
JP2019125112A JP2018004469A JP2018004469A JP2019125112A JP 2019125112 A JP2019125112 A JP 2019125112A JP 2018004469 A JP2018004469 A JP 2018004469A JP 2018004469 A JP2018004469 A JP 2018004469A JP 2019125112 A JP2019125112 A JP 2019125112A
Authority
JP
Japan
Prior art keywords
geometric information
image
unit
information
orientation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018004469A
Other languages
English (en)
Other versions
JP2019125112A5 (ja
JP7149707B2 (ja
Inventor
智昭 肥後
Tomoaki Higo
智昭 肥後
小竹 大輔
Daisuke Kotake
大輔 小竹
鈴木 雅博
Masahiro Suzuki
雅博 鈴木
望 糟谷
Nozomu Kasuya
望 糟谷
誠 冨岡
Makoto Tomioka
誠 冨岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018004469A priority Critical patent/JP7149707B2/ja
Priority to PCT/JP2018/041667 priority patent/WO2019138677A1/ja
Publication of JP2019125112A publication Critical patent/JP2019125112A/ja
Priority to US16/921,389 priority patent/US11393123B2/en
Publication of JP2019125112A5 publication Critical patent/JP2019125112A5/ja
Application granted granted Critical
Publication of JP7149707B2 publication Critical patent/JP7149707B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • G06T7/85Stereo camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30168Image quality inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Abstract

【課題】より安定的に位置姿勢推定を行う技術を提供する。【解決手段】撮像視野の少なくとも一部が重複するように配置される第1の撮像装置及び第2の撮像装置を含む撮像部10と、撮像部10から、第1の撮像装置が得た第1の画像、及び、第2の撮像装置が得た第2の画像を入力する入力部100と、与えられた画像が表す幾何情報を推定するための学習モデルを保持する保持部101と、第1の画像及び第2の画像から第1の仮の幾何情報を推定する第1の推定部と、第1の画像と保持部に保持された学習モデルに基づいて第2の仮の幾何情報を推定する第2の推定部と、第2の画像と保持部に保持された学習モデルに基づいて第3の仮の幾何情報を推定する第2の推定部と、第1、第2、第3の仮の幾何情報の少なくとも一つに基づいて、撮像部10の位置姿勢情報、撮像部10が撮像した画像が表す幾何情報の少なくとも一方を生成する生成部とを有する。【選択図】図2

Description

本発明は情報処理装置及びその制御方法及びプログラム、並びに、運転制御システムに関する。
画像情報に基づく撮像装置の位置及び姿勢を計測する技術は、自動車やロボットの自己位置推定、複合現実感/拡張現実感における現実空間と仮想物体の位置合わせ、物体や空間の三次元モデリングなど様々な目的で利用される。
特許文献1にはステレオカメラを用いてランドマークを精度良く計測することによって自己位置姿勢を推定する技術が開示されている。また、非特許文献1には単眼のカメラのみを用いて、深層学習で予め学習したモデルを利用してシーンの奥行きを推定することによって、自己位置推定を行う技術が開示されている。
特開2009−20014号公報
K. Tateno, F. Tombari, I. Laina and N. Navab, "CNN-SLAM: Real-time dense monocular SLAM with learned depth prediction", IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR), 2017. J. Engel, T. Schps, and D. Cremers. "LSD-SLAM: Large-Scale Direct Monocular SLAM", In European Conference on Computer Vision (ECCV), 2014.
しかしながら、自動車の自動運転や運転アシストに用いる自己位置推定のためのモジュールとして利用することなどを考えると、特許文献1や非特許文献1の手法よりも、より安定的に位置姿勢推定を行うことが求められる。
本発明は上記問題に鑑みてなされたものであり、より安定的に位置姿勢推定を行う技術を提供しようとするものである。
この課題を解決するため、例えば本発明の情報処理装置は以下の構成を備える。すなわち、
撮像視野の少なくとも一部が重複するように配置される第1の撮像装置及び第2の撮像装置を含む撮像手段からの画像に基づき、当該撮像手段の位置姿勢もしくは撮像した画像が表す幾何情報を求める情報処理装置であって、
前記撮像手段から、前記第1の撮像装置が得た第1の画像、及び、前記第2の撮像装置が得た第2の画像を入力する入力手段と、
与えられた画像が表す幾何情報を推定するための学習モデルを保持する保持手段と、
前記第1の画像及び前記第2の画像から第1の仮の幾何情報を推定する第1の推定手段と、
前記第1の画像と前記保持手段に保持された学習モデルに基づいて第2の仮の幾何情報を推定する第2の推定手段と、
前記第2の画像と前記保持手段に保持された学習モデルに基づいて第3の仮の幾何情報を推定する第2の推定手段と、
前記第1、第2、第3の仮の幾何情報の少なくとも一つに基づいて、前記撮像手段の位置姿勢情報、当該撮像手段が撮像した画像が表す幾何情報の少なくとも一方を生成する生成手段とを有する。
本発明によれば、撮像装置の不具合に対してロバストに位置姿勢推定を行うことができる。
第1の実施形態における自動車の構成を示した図。 第1の実施形態における情報処理装置と運転処理部の機能構成例を示す図。 第1の実施形態における情報処理装置のハードウェア構成を示す図。 第1の実施形態における情報処理システムが実施する処理手順を示すフローチャート。 第1の実施形態における計測結果処理の手順を示すフローチャート。 第1の実施形態における変形例の処理手順を示すフローチャート。 第1の実施形態における変形例の計測結果処理の手順を示すフローチャート。 第2の実施形態における情報処理システムが実施する処理手順を示すフローチャート。 第2の実施形態における計測結果処理部が位置姿勢の不具合の有無を判定する手順を示すフローチャート。 第2の実施形態における変形例の処理手順を示すフローチャート。 第2の実施形態における計測結果処理部が幾何情報の不具合の有無を判定する手順を示すフローチャート。 第3の実施形態における情報処理装置と運転処理部の機能構成例を示す図。 第3の実施形態における情報処理システムが実施する処理手順を示すフローチャート。 第3の実施形態における計測結果処理部が不具合を解消する手順を示すフローチャート。 第4の実施形態における情報処理装置と運転処理部の機能構成例を示す図。 第4の実施形態における教師データを取得して学習を行う処理手順を示すフローチャート。 第5の実施形態における自動車の構成を示した図。 第5の実施形態における情報処理装置と運転処理部の機能構成例を示す図。 第5の実施形態における情報処理システムが実施する処理手順を示すフローチャート。
以下、本発明にかかる実施形態の情報処理装置を詳細に説明する。
本実施形態を説明するのに先立ち、用語の定義について説明する。
幾何情報とは、撮影したシーンの三次元形状を表すものであり、画像の各画素に距離値を格納した距離画像として表される。距離画像を必ずしも形成する必要はなく、距離画像の各画素を、X、Y、Zの座標値で表すポイントクラウドなど三次元点群として表しても良く、三次元位置を表現可能な距離情報であれば良い。
位置姿勢とは位置を表す3自由度のパラメータと、姿勢を表す3自由度のパラメータとの合計6自由度のパラメータで表される。本実施形態では、主に撮像装置の位置と姿勢を表し、間接的に本装置が搭載される車両の位置姿勢をも表すものとする。
学習モデルは、複数の画像とそれと同時刻に同視野を撮影した対応する距離画像に基づいて、入力画像に対応する距離画像が推定できるように予め学習したモデルを表す。学習モデルはCNN(Convolutional Neural Network)などの画像を入出力とするモデルとする。ただし、学習モデルはこれに限るものではなく、画像を入力として、三次元点群などの幾何情報を出力するようなモデルでもよい。
不具合(又は非適正)とは、推定した幾何情報や位置姿勢が、理想的な幾何情報や位置姿勢とは大きく異なる状態にあることを示す。不具合が生じる要因としては、撮像装置や撮影シーン環境からくる画像に生じたノイズによるもの、学習モデルを用いた幾何情報推定において、学習が不十分なシーンで推定をすることによるもの、校正パラメータが実際とは異なることによるもの、撮像装置自体が故障しているなどの、様々な要因が考えられる。
異常とは、撮像装置の故障や撮像装置のレンズに傷や汚れが付くなど、正常な状態とは異なる状態にあることを示す。また、不具合についても広義の意味で異常と呼ぶことがある。
[第1の実施形態]
第1の実施形態では、情報処理装置が、車などの自動運転または運転アシストのため、車体の自己位置を推定する例を説明する。車体に取り付けた撮像装置の位置姿勢を安定的に求めるために複数のセンサ情報を用いることがしばしば行われるが、本実施形態では、2つの撮像装置を用いたステレオ構成のセンサを用いて、3系統の仮の幾何情報、3系統の仮の位置姿勢情報を推定し、それらの推定結果から安定的な幾何情報、及び、位置姿勢情報を求める。図1は本実施形態における自動車10000の運転制御システムの構成を示した図である。本実施形態では、自動車10000に取り付けられた撮像部10の位置姿勢を安定的に求め、求めた位置姿勢に従って運転制御を行うことで、自動運転または運転アシストを行う。そのために、情報処理装置1を用いて周囲の幾何情報や撮像部10の位置姿勢を算出する。算出した幾何情報および位置姿勢は運転処理装置12に供給される。そして、運転処理装置12は、それらに基づいてアクチュエータ部13を動作させることによって自動車10000を制御する。尚、仮の幾何情報とは、最終的に決定する幾何情報の候補、材料、参考となる幾何情報である。
<情報処理装置の構成>
図2は、主として、本実施形態における情報処理装置1と運転処理装置12のブロック構成図である。
情報処理装置1は、画像入力部100、学習モデル保持部101、幾何情報推定部102、位置姿勢算出部103、計測結果処理部104、表示情報生成部105、及び、装置全体の制御を司る制御部15を有する。この制御部15は、CPU(プロセッサ)、このCPUが実行するプログラムを記憶するため、及び、ワークエリアとして使用するためのメモリ(ROM及びRAM)で構成される。
また、運転処理装置12は、周囲環境取得部106、目的地取得部107、及び、運転処理装置12の全体の制御を司る運転制御部108を備えている。この運転制御部108も、CPUと、CPUが実行するプログラム及びワークエリアとしてするメモリ(ROM及びRAM)とで構成される。
画像入力部100は、車体に取り付けられた撮像部10と接続される。表示情報生成部105は表示部11と接続される。そして、運転制御部108は、車両の車輪のトルク及び方向等を制御するアクチュエータ部13と接続されている。ただし、図2は、機器構成の一例であり、本発明の適用範囲を限定するものではない。
撮像部10は、三角測量に基づくステレオによる幾何情報推定を行うための2つの撮像装置から構成される。つまり、これら2つの撮像装置は、それら光軸方向が平行であり、それぞれの撮像視野範囲の大部分が互いに重複するように配置される。また、これら撮像装置は車の周囲環境を画像として時系列(例えば毎秒60フレーム)に撮像可能であって、1画素当たりR、G、Bの3成分の画像を撮像するビデオカメラである。
画像入力部100は、撮像部10の二つの撮像装置それぞれが撮像するシーンの2次元画像の画像データを時系列に入力し、学習モデル保持部101、幾何情報推定部102、位置姿勢算出部103、表示情報生成部105、運転処理装置12に供給する。以下では、二つの撮像装置について、どちらか一方を特定する場合には、第一の撮像装置および第二の撮像装置と言い、それぞれの撮像装置から得られる画像を特定する場合には第一の画像および第二の画像と言う。
学習モデル保持部101は、1枚の画像から幾何情報を推定するための学習モデルを保持する。幾何情報推定部102は、図示しない校正パラメータ保持部が保持する校正パラメータを用いて、第一の画像と第二の画像(ステレオ画像)から三角測量法によって第一の幾何情報を推定する。更に、幾何情報推定部102は、学習モデル保持部101に保持された学習モデルを用いて、画像入力部100から入力した第一の画像に対応する第二の幾何情報を推定する。幾何情報推定部102は、同様に、学習モデルを用いて、第二の画像に対応する第三の幾何情報を推定する。そして、幾何情報推定部102は、推定した第一、第二、第三の幾何情報を位置姿勢算出部103に供給する。
位置姿勢算出部103は、画像入力部100が入力した画像と、幾何情報推定部102から入力した第一、第二、第三の幾何情報それぞれに基づいて、撮像部10の第一、第二、第三の位置姿勢を算出する。そして、位置姿勢算出部103は、算出した第一、第二、第三の位置姿勢を計測結果処理部104に供給する。
計測結果処理部104は、位置姿勢算出部103より入力した第一、第二、第三の位置姿勢に基づいて、安定的な位置姿勢を算出する。算出方法については後述する。さらに、計測結果処理部104は、算出した位置姿勢に基づいて、前フレームで求めた幾何情報を更新する。つまり、計測結果処理部104は、位置姿勢算出部103が算出した第一、第二、第三の位置姿勢から、最終的な現在の位置姿勢、及び、最終的な現在の幾何情報を生成(決定)する。そして、計測結果処理部104は、決定した位置姿勢及び幾何情報を表示情報生成部105及び運転処理装置12に供給する。
表示情報生成部105は、計測結果処理部104より入力した幾何情報と位置姿勢に基づいて表示情報を生成する。そして、表示情報生成部105は、生成した表示情報を表示部11に出力する。表示部11は車内に搭載されたディスプレイであり、表示情報生成部105から入力した表示情報を表示する。
運転処理装置12は、画像入力部100が入力した画像と、計測結果処理部104から受信した幾何情報と位置姿勢とに基づいて、アクチュエータ部13の制御と表示部11への表示情報の生成と出力を行う。その詳細について以下に説明する。
周囲環境取得部106は、画像入力部100が入力した画像と、計測結果処理部104が入力した幾何情報と位置姿勢に基づいて、車体の周囲環境を表す情報(以下、周囲環境情報)を取得する。そして、周囲環境取得部106は、取得した周囲環境情報を運転制御部108に供給する。
目的地取得部107は、図示しないユーザインターフェースを用いて、車の目的地をユーザから取得する。そして、目的地取得部107は、取得した目的地を示す情報を運転制御部108に供給する。
運転制御部108は、周囲環境取得部106が入力した周囲環境と、目的地取得部107が入力した目的地に基づいて、安全に目的地に向かうためのアクチュエータ部13への制御値の算出及び出力を行う。また、運転制御部108は、目的地に向けて走行中における各種情報の生成と、表示部11への出力も行う。アクチュエータ部13は、運転制御部108から受信した制御値や信号に従って車の動きを制御/駆動を行う。
図3は、情報処理装置1の主要ハードウェア構成を示す図である。情報処理装置1はCPU151、ROM152、RAM153、外部メモリ154、入力部155、表示制御部156、通信I/F157、I/O158、及び、これらを接続するバス160を有する。ROM152は、BIOS(Basic Input/Output System)のプログラムやブートプログラムを記憶する。RAM13は、CPU151の主記憶装置として使用される。外部メモリ154は、情報処理装置1が実行するOS(オペレーティングシステム)や情報処理装置1が運転支援装置として機能するためのアプリケーションプログラム、並びに、学習モデルを保持する記憶装置であって、典型的にはハードディスク装置等の書き込み可能な大容量の不揮発性メモリである。入力部155はタッチパネルやキーボード、マウス、ロボットコントローラーであり、情報等の入力に係る処理を行う。表示制御部156はCPU151からの指示に従って表示部11に表示すべきメニュー等の各種画像を生成し、表示部11に向けて出力する。なお、表示部11は液晶表示装置やプロジェクタ、LEDインジケータなど、種類は問わない。通信インターフェイス157は、ネットワークを介して情報通信を行うものであり、通信インターフェイスはイーサネットでもよく、USBやシリアル通信、無線通信等種類は問わない。I/O158は、情報処理装置1と外部装置との接続を行う入出力部(I/O)であり、実施形態の場合、撮像部10、運転処理装置12が接続される。
上記構成において、情報処理装置1のメイン電源がONになると、CPU151はROM152に格納されたブートプログラムを実行することにより、外部メモリ154からOSをRAM153にロードし、実行する。そして、CPU151は、OSの制御下にて、運転支援アプリケーションプログラムを外部メモリ154からRAM153にロードし、実行することで、情報処理装置1は運転支援装置として機能することになる。図2に示した、学習モデル保持部101は外部メモリ154により実現するものであるが、これ以外の処理部は、上記アプリケーションを実行するCPU151により実現されるものである。なお、図2に示す各種処理部の一部は、CPU151とは独立したハードウェアで実現させても構わない。
撮像部10は、先に説明したように、二つの撮像装置からなる。本実施形態における撮像部10の位置姿勢とは、第一の撮像装置を基準とした座標系における6自由度のパラメータで表されるものとする。第一の撮像装置と第二の撮像装置間は固定されており、一方の撮像装置における他方への相対的な位置姿勢は校正パラメータとして、予めキャリブレーションを行って求めておき、図示しない校正パラメータ保持部に保持されている。そのため、どちらかの撮像装置の位置姿勢を算出すれば、もう一方の撮像装置の位置姿勢を求めることができる。ここでは、撮像部10の位置姿勢とは第一の撮像装置を基準とした座標系であるとしたが、これに限るものではなく、第二の撮像装置を基準としてもよいし、二つの撮像装置とは異なる点に撮像部10の基準座標系を設定しても良い。その場合には、基準座標系からそれぞれの撮像装置への相対的な位置姿勢変換パラメータも既知であるとする。また、自動車10000と撮像部10との間の位置姿勢の関係については、予めキャリブレーションによって6自由度のパラメータが得られているものとする。このとき、基準座標系を自動車10000に対して固定しておいてもよい。故に、撮像部10の位置姿勢を求めることは、自動車10000の位置姿勢を求めることと等価の意味を持つ。また、先に説明した測定結果処理部104が決定する幾何情報も、基準となる撮像装置(実施形態では第一の撮像装置)の視点からの情報である。
<処理>
次に、本実施形態における処理手順について説明する。図4は、本実施形態における情報処理装置1及び運転処理装置12を含む情報処理システムが実施する処理手順を示すフローチャートである。同図において、ステップS1000〜S1050、S1090が情報処理装置1(制御部15)の処理を示し、ステップS1000、S1060〜S1080が運転処理装置12(運転制御部108)の処理を表すことになる。
ステップS1000にて、制御部15はシステムの初期化を行う。すなわち、制御部15は、外部メモリ144からOS、アプリケーションプログラムをRAM153に読み込み実行することで、情報処理装置1を運転支援を行う装置として動作可能な状態にする。また、制御部15は学習モデル保持部101(外部メモリ154)が保持する学習モデルをRAM153に読み込む。また、制御部15は、情報処理装置1に接続された各機器(撮像部10など)の起動やパラメータの読み込み、撮像部10が有する二つの撮像装置の初期位置姿勢を読み込む。二つの撮像装置の内部パラメータ(焦点距離、画像中心位置、レンズ歪み等)は、事前に校正したものを用いる。さらに、運転処理装置12の運転制御部108は、ユーザが指定した目的地を目的地取得部107から受信し、自動車10000の目的地として設定する。
ステップS1010にて、制御部15は撮像部10を制御し、第一、第二の撮像装置によるシーン(画像)の撮影を行わせる。ステップS1020にて、制御部15は画像入力部100を制御し、第一の撮像装置と第二の撮像装置が撮像したシーンである、第一の画像と第二の画像を取得させる。
ステップS1030にて、制御部15は幾何情報推定部102を制御し、第一の画像と第二の画像に基づいて、第一、第二、第三の幾何情報を推定(生成)させる。幾何情報推定部102は、ステレオ法を用いて2枚の画像から第一の幾何情報を生成する。具体的には、幾何情報推定部102は、第一の画像と第二の画像における対応関係を求めて視差画像を算出し、二つの撮像装置間の既知の校正情報に基づいて三角測量を行って距離画像を推定する。また、幾何情報推定部102は、第一の画像を学習モデルに入力して第二の幾何情報を推定する。同様に、幾何情報推定部102は、第二の画像を学習モデルに入力して第三の幾何情報を推定する。
ステップS1040にて、制御部15は位置姿勢算出部103を制御し、ステップS1030で算出された第一、第二、第三の幾何情報それぞれを用いて、撮像部10の位置姿勢を算出する。算出される位置姿勢は、第一、第二、第三の幾何情報それぞれから求められる第一、第二、第三の位置姿勢の3つである。具体的には、位置姿勢算出部103は前フレームの画像における各画素を、第一の幾何情報に基づいて現フレームに射影する。次に、位置姿勢算出部103は、前射影した前フレームの画素の画素値と現フレームの画素値との輝度差が最小となるように、Engelらの方法(非特許文献2)により位置姿勢を求めることで、第一の位置姿勢を得る。位置姿勢算出部103は、第二、第三の幾何姿勢についても同様の処理を行うことで、第二の位置姿勢、及び、第三の位置姿勢を得る。また、位置姿勢算出部103は位置姿勢を算出した後に、さらに対応する幾何情報を更新してもよい。具体的には、位置姿勢算出部103は、求めた第一、第二、第三の位置姿勢に基づいて第一、第二、第三の幾何情報それぞれを現在の時刻tにおける幾何情報として、過去の時刻t−iからの時系列フィルタリングによって幾何情報を更新する(非特許文献1に記載)。
ステップS1050にて、制御部15は計測結果処理部104を制御し、ステップS1040で算出された第一、第二、第三の位置姿勢に基づいて、撮像部10の最終的な位置姿勢を算出する。具体的な処理については後述する。また、制御部15は、求めた位置姿勢に基づいて、幾何情報を更新する。
ステップS1060にて、運転制御部108は周囲環境取得部106を制御し、ステップS1050で算出された位置姿勢、更新された幾何情報、第一の画像および第二の画像に基づいて、周囲環境マップを取得させる。周囲環境マップとは、道路や車、建物などが三次元空間のどこに存在しているかを示したマップである。周囲環境取得部106は、幾何情報と第一の画像および第二の画像から意味的領域分割を行い、画像中の道路や車、建物などを特定する。そして、周囲環境取得部106は、前フレームまでに得られていた周囲環境マップ上で算出された位置姿勢に従って、幾何情報および意味的領域分割結果を用いて、周囲環境マップを更新する。
ステップS1070にて、運転制御部108は表示情報生成部105を制御し、ステップS1060で求められた周囲環境マップに基づいて、指定した視点における周囲環境をレンダリングして得た画像にユーザに必要な情報を付加した表示情報を画像として生成する。そして、運転制御部108は、生成した画像を、ユーザが視認できるように、表示部11のディスプレイに表示させる。ここで、ユーザに必要な情報とは、例えば周囲環境マップと位置姿勢から求めた、周囲環境に対する自動車10000の位置姿勢である。
ステップS1080にて、運転制御部108は、撮像部10の位置姿勢と周囲環境マップと目的地に基づいて、目的地に向かって車が安全に走行するための、アクチュエータの制御値を生成する。そして、運転制御部108は、生成したアクチュエータの制御値を用いてアクチュエータ部13を制御し、車を走行させる。
ステップS1090では、制御部15は、システムを終了するか否か判定する。具体的には、不図示の入力部によりユーザが終了コマンドを入力していれば終了し、そうでなければステップS1010に戻り、上記処理を繰り返す。
<計測結果処理部における位置姿勢を求める処理>
図5は、本実施形態におけるステップS1050の処理、すなわち、計測結果処理部104の手順を示すフローチャートである。以下、同図を参照して、計測結果処理部104の処理内容を説明する。
ステップS1100にて、計測結果処理部104は初期化を行う。この初期化において、計測結果処理部104は、第一、第二、第三の位置姿勢の読み込みや、この後の処理で必要となる前フレーム画像や、周囲環境マップの幾何情報の読み込み、また、最適化問題を解く際のパラメータなどの読み込みを行う。
ステップS1110にて、計測結果処理部104は、1フレーム前の画像と2フレーム前の画像における位置姿勢から、線形補間によって現フレームの位置姿勢を推定し、これを初期位置姿勢とする。ただし、初期位置姿勢はこれに限るものではなく、加速度センサやGPSセンサなどから初期位置姿勢を求めてもよい。
ステップS1120にて、計測結果処理部104は、第一、第二、第三の位置姿勢に関する信頼度を計算する。信頼度は第一、第二、第三の位置姿勢それぞれについて信頼できる度合いを数値化したものである。信頼度が高いほど、その位置姿勢は正しい位置姿勢からの誤差が小さい可能性が高いことを示す。信頼度の求め方としては、ステップS1040にて、非特許文献2の方法により位置姿勢を求めた際に、最小化した輝度差を用いて信頼度を表すものとする。つまり、ここで言う輝度差が小さいほど信頼度が高くなる関数を用いるものとする。
ただし、信頼度は輝度差に限るものではなく、例えば、対応する幾何情報を求めた際に、非特許文献1の方法から得られる幾何情報の信頼度や、ステレオのマッチング度合いを信頼度として用いてもよい。
ステップS1130にて、計測結果処理部104は、第一、第二、第三の位置姿勢とそれに対応する信頼度、および初期位置姿勢に基づいて、最終出力の位置姿勢を求める。ここで、第一、第二、第三の位置姿勢をP1、P2、P3、初期位置姿勢をPI、計測結果処理部104が出力する位置姿勢をPOとし、第一、第二、第三の位置姿勢に対応する信頼度をc1、c2、c3とする。また、関数f(Pi,Pj)を位置姿勢PiとPjの差を求める関数とする。POは、以下の式Eを最小化する最適化問題を解くことによって得られる。
E=k*f(PI,PO)+c1*f(P1,PO)+c2*f(P2,PO)+c3*f(P3,PO) …(1)
ここで、kは調整パラメータである。ただし、POの求め方はこの方法に限るものではなく、カルマンフィルタを用いてPI、P1、P2、P3を入力として真の状態POを求めてもよい。
ステップS1140にて、計測結果処理部104は、ステップS1130で求めた位置姿勢に基づいて、幾何情報を更新する。具体的には、求めた位置姿勢に基づいて第一、第二、第三の幾何情報を現在の時刻tにおける幾何情報として、過去の時刻t−iからの幾何情報との信頼度を重みとした時系列フィルタリングによって幾何情報を更新する(非特許文献1に記載)。
上記フローチャートではステップS1110の次にステップS1120を行う処理について説明したが、フローチャートは必ずしもこの順序であるとは限らない。ステップS1120の処理を先に行い、その後にステップS1110を行ってもよい。以上の処理により、計測結果処理部104は位置姿勢と幾何情報を求める。
<効果>
以上に述べたように、本第1の実施形態では、複数の計測系統から複数の幾何情報および複数の位置姿勢を推定する。それぞれの計測結果は画像を入力された後、独立して処理を行っているため、いずれかの計測結果に大きなノイズが生じていたとしても、他の計測結果に影響を及ぼすことは無い。そのため、複数の計測結果の全てが大きなノイズを生じる可能性は低く、時系列情報から予測される位置姿勢に対して誤差の少ない計測結果の重みを大きくすることによって、計測結果に何らかのノイズが紛れ込んだ場合であっても、安定的に位置姿勢を推定することができる。さらに、安定的な位置姿勢に基づいて幾何情報を更新することによって、より精度の高い幾何情報を求めることができる。
<変形例>
第1の実施形態においては、図4に示すフローチャートに従って処理を行う例について述べたが、これに限るものではない。ここで本実施形態における変形例の機能構成例および処理手順について説明する。変形例の機能構成例は図2に示す第1の実施形態と同様であるため、違いのある幾何情報推定部102、位置姿勢算出部103、計測結果処理部104についてのみ説明する。
幾何情報推定部102は、先に説明した第1の実施形態と同様、第一、第二、第三の幾何情報を推定し、推定した第一、第二、第三の幾何情報を計測結果処理部104に出力する。または、幾何情報推定部102は、第一、第二、第三の幾何情報をいったん位置姿勢算出部103に供給し、それぞれの幾何情報に対応する第一、第二、第三の位置姿勢の算出結果に応じて対応する幾何情報を更新してもよい。具体的には、求めた第一、第二、第三の位置姿勢に基づいて、第一、第二、第三の幾何情報それぞれを現在の時刻tにおける幾何情報として、過去の時刻t−iからの時系列フィルタリングによって幾何情報を更新する(非特許文献1に記載)。
計測結果処理部104は、幾何情報推定部102が更新した第一、第二、第三の幾何情報に基づいて、正確な幾何情報を算出する。算出方法については後述する。また、計測結果処理部104は、算出した幾何情報を位置姿勢算出部103に出力する。また、計測結果処理部104は、後述する位置姿勢算出部103が入力した位置姿勢に基づいて、幾何情報を更新する。さらに計測結果処理部104は、更新した幾何情報を表示情報生成部105、運転処理装置12に出力する。また、計測結果処理部104は、位置姿勢を表示情報生成部105、運転処理装置12に出力する。
位置姿勢算出部103は、画像入力部100が入力した画像と計測結果処理部104が入力した幾何情報とに基づいて、撮像部10の位置姿勢を算出する。また、算出した位置姿勢を計測結果処理部104に入力する。
次に、本変形例の処理手順について説明する。図6は、本変形例における、情報処理装置1を含む情報処理システムが実施する処理手順を示すフローチャートである。本フローチャートの多くのステップは図4のフローチャートと同様であるため、違いのあるステップS1041、ステップS1051について説明する。
ステップS1041にて、制御部15は計測結果処理部104を制御し、ステップS1030で算出された第一、第二、第三の幾何情報を用いて撮影シーンの幾何情報を算出させる。具体的には、第一、第二、第三の幾何情報はそれぞれ計測点または計測領域ごとに信頼度を保持しており、信頼度の高い点や領域に三次元点や面を成すように幾何情報を構成することで求める。詳細は後述する。
ステップS1051にて、制御部15は位置姿勢算出部103を制御し、ステップS1041で算出された幾何情報に基づいて、撮像部10の位置姿勢を算出させる。具体的には、これまでのフレームで求められている周囲環境マップにおける幾何情報に対して、計測結果処理部114が算出した幾何情報の位置合わせを行うことによって周囲環境マップに対する位置姿勢を算出する。また、1フレーム前の画像と2フレーム前の画像における位置姿勢から、線形補間によって現フレームの位置姿勢を求め、これを位置合わせする際の初期位置姿勢として用いる。また、位置合わせを行うことで、周囲環境マップの幾何情報も更新する。
<計測結果処理部における幾何情報を求める処理>
ここで、図7は、図6のステップS1041の計測結果処理部104の処理手順を示すフローチャートである。
ステップS1200にて、計測結果処理部104は初期化処理を行う。すなわち、計測結果処理部104は、第一、第二、第三の幾何情報の読み込みや、この後の処理で必要となる前フレーム画像や、周囲環境マップの幾何情報の読み込み、また、最適化問題を解く際のパラメータなどの読み込みを行う。
ステップS1210にて、計測結果処理部104は、第一、第二、第三の幾何情報それぞれに関する信頼度を計算する。信頼度は第一、第二、第三の幾何情報に対して、各計測点または各計測領域に対してそれぞれ信頼できる度合いを数値化したものである。信頼度が高いほど、その計測点や計測領域の存在する三次元位置は正しい可能性が高いことを示す。信頼度の求め方としては、第一の幾何情報については、ステレオにより第一の画像と第二の画像の対応関係を求める際に、微小領域ごとの類似度を計算する。この類似度が高いほど信頼度の高い領域であるとして信頼度を求める。第二、第三の幾何情報については、非特許文献1に示される方法により、幾何情報の信頼度を得ることが出来る。
ステップS1220にて、計測結果処理部104は、第一、第二、第三の幾何情報とそれに対応する信頼度に基づいて、計測結果処理部104が出力する幾何情報を求める。具体的には各計測点または各計測領域における信頼度を重みとして、重み付きのICP(Iterative Closest Point)を行うことによって、三つの幾何情報を統合することによって、より正しい幾何情報を推定する。また、ICPによって第一、第二、第三の幾何情報を統合した際に、幾何情報を移動回転させるために用いた変換行列を用いて、撮像部10に対して計測結果処理部104が求めた幾何情報の位置姿勢を求めておく。以上の処理により、計測結果処理部104は幾何情報を求める。
第1の実施形態では計測結果処理部104は複数の位置姿勢から、位置姿勢を求めたが、上記の変形例で示したように、計測結果処理部104は複数の幾何情報から、幾何情報を求めてもよい。
図1の例では、画像入力部100は一つしか描かれていないが、これに限るものではなく、二つの撮像装置に対して一つずつ画像入力部を備えていてもよいし、一つの画像入力部が二つの撮像装置から画像を受け取っても良い。同様に、幾何情報推定部102や位置姿勢算出部103を複数備えていてもよい。また、学習モデル保持部101は二つの撮像装置それぞれに対して別々の学習モデルを保持していてもよい。
ステップS1070にて、表示情報生成部105が生成する表示情報は周囲環境に対する自動車10000の位置姿勢であるとして説明したが、これに限るものではない。例えば、撮像部10が撮像した画像や、周囲環境マップから得られる意味的領域分割の結果を二次元画像上にレンダリングした画像などでもよい。また、目的地などの情報であってもよい。これにより、ユーザは情報処理システムが認識した自動車10000に対する周囲の状況を視覚的に確認することができる。
ステップS1090では、システムを終了する条件として、ユーザが終了コマンドを入力する例を説明した。しかしながら、これに限るものではなく、システムを終了させる条件として、運転手であるユーザが、車の制御をシステムに委ねる自動運転モードから、人が運転するドライビングモードへ変更することとしてもよい。また、運転処理装置12が、得られた幾何情報や位置姿勢と目的地の不整合などにより、自動運転または運転アシストを行えない状況になったと判断したときに、システムを終了するようにしてもよい。
第1の実施形態では、位置姿勢推定を車の自動運転または運転アシストのアプリケーションに適用した例を説明した。しかしながら、本実施形態で説明した情報処理装置1に適用可能なのは当該アプリケーションに限らず、学習モデルが出力した結果を含む複数の幾何情報、または位置姿勢結果を用いるものであればよい。例えば、工業用ロボットハンドの先端に取り付けてロボットハンドの位置姿勢を計測するロボットシステムとして用いてもよい。このときのロボットシステムには、ロボットアーム等のマニピュレータや、吸着ハンド等の把持装置、および計測結果処理部104が算出した位置姿勢に基づいてマニピュレータや把持装置を制御する制御部を備えていてもよい。また、複合現実感システムにおける現実空間と仮想物体との位置合わせとして用いてもよい。このときの複合現実感システムには、周囲環境を取得するための撮像装置が搭載されたヘッドマウントディスプレイを備えていてもよい。室内を清掃するロボット・空中を飛行するドローン・水中を移動する装置などが、上述の学習モデルを保持し学習モデルに基づいた仮の幾何情報を推定し、2つの撮像装置の画像を用いて生成される3次元の仮の幾何情報を推定しても良い。さらに、幾何情報または位置姿勢を推定して、自身の移動や周囲環境の取得に利用しても良い。
また、情報処理装置1の使用用途は位置姿勢推定に限らず、三次元再構成に用いてもよい。例えば、工業部品や建物といったCADモデルを生成するための計測システムとして用いてもよい。このときの計測システムは、計測結果処理部104が更新した幾何情報から三次元モデルを生成する三次元モデル生成部をさらに備えていてもよい。また 、RGBカメラや濃淡画像を取得するカメラなど、距離画像を取得することのできないカメラから高精度に距離画像を取得する装置として用いてもよい。
第1の実施形態では、車内の情報処理装置1が学習モデル保持部101、幾何情報推定部102、位置姿勢算出部103、計測結果処理部104を有する構成を説明した。しかしながら、クラウドサーバが本実施形態で示した情報処理装置1の一部の機能を有し、実行してもよい。例えば、クラウドサーバが学習モデル保持部101、幾何情報推定部102、位置姿勢算出部103、計測結果処理部104を有する構成であってもよい。この構成では、まず情報処理装置1が入力画像を不図示の通信部を用いてクラウドサーバに転送する。次に、クラウドサーバ上の学習モデル保持部101の保持する学習モデルを用いて幾何情報を推定する。また幾何情報推定部102は複数の幾何情報を推定する。そして、位置姿勢算出部103複数の位置姿勢を算出し、計測結果処理部104は安定的な位置姿勢を求め、幾何情報を更新する。そして、クラウドサーバが推定した幾何情報と位置姿勢を、通信部を用いて情報処理装置1に転送する。このような構成にすることで、情報処理装置1は計算負荷を減らすことができるため、小規模な計算機で省スペース化することができる。
本実施形態においては、画像を撮像する撮像装置がRGBのビデオカメラである構成について説明した。ただし、RGBのビデオカメラに限るものではなく、現実空間の画像を撮像するカメラであれば何でもよく、たとえば濃淡画像を撮像するカメラでもあってもよいし、赤外画像や紫外画像、距離画像、三次元点群データを撮像できるカメラであってもよい。また、二台の撮像装置からなるステレオ構成として説明したが、これに限るものではなく、三台以上の複数のカメラやセンサを備えるカメラであってもよい。その場合、4つ以上の複数の幾何情報や位置姿勢を算出できるが、計測結果処理部104はこれら複数の計測結果に基づいて計算を行う。
[第2の実施形態]
第1の実施形態では、計測結果処理部104は複数の幾何情報または位置姿勢から、より正しい幾何情報または位置姿勢を算出した。これに対して、第2の実施形態では、計測結果処理部104は幾何情報または位置姿勢に対して判定を行い、幾何情報または位置姿勢に不具合が生じていれば、別の幾何情報または位置姿勢を用いるように切り替えを行う。このようにして、最適な幾何情報または位置姿勢を得られるセンサおよび計算結果を用いて自動運転または運転アシストを行う。本第2の実施形態における自動車の構成は第1の実施形態に示した図1と同様であるため、その説明は省略する。
<情報処理装置の構成>
本実施形態における情報処理装置2の機能構成例は第1の実施形態に示した図2と略同様である。異なる点は、幾何情報推定部102、位置姿勢算出部103、計測結果処理部104における処理内容である。よって、以下では、これらについて説明する。他の構成要素については第1の実施形態を参照されたい。
幾何情報推定部102は、第1の実施形態と同様に、第一、第二、第三の幾何情報を推定できる機能を有するが、図示しないパラメータ保持部が保持するパラメータに従って、第一、第二、第三の幾何情報のいずれか一つを推定して、位置姿勢算出部103と計測結果処理部104に出力する。ここでのパラメータとは、第一、第二、第三の幾何情報のうちどの幾何情報を用いるかを指示したものである。
位置姿勢算出部103は、画像入力部100が入力した画像と幾何情報推定部102が入力した幾何情報とに基づいて、撮像部10の位置姿勢を算出する。さらに位置姿勢算出部103は、算出した位置姿勢に基づいて幾何情報を更新する。そして、位置姿勢算出部103は、算出した位置姿勢および更新した幾何情報を計測結果処理部104に供給する。
計測結果処理部104は、位置姿勢算出部103から入力した位置姿勢における不具合の有無を判定する。計測結果処理部104は、位置姿勢に不具合が無いと判定した場合、幾何情報および位置姿勢を表示情報生成部105、運転処理装置12に供給する。また、位置姿勢に不具合があった場合には、計測結果処理部104は、図示しないパラメータ保持部のパラメータを変更して、幾何情報推定部102に別の幾何情報を推定させ、さらに、位置姿勢算出部103にも、新たに推定した幾何情報に基づいて位置姿勢を算出させて、それらの不具合の有無を判定することを繰り返し、不具合の無いと判定された情報を出力対象として決定する。
<処理>
次に、本第2の実施形態における処理手順について説明する。図8は、第2の実施形態における情報処理装置1を含む情報処理システムが実施する処理手順を示すフローチャートである。
本実施形態におけるフローチャートは、第1の実施形態における図4のフローチャートと略同様であり、ステップS2000、ステップS2010、ステップS2020、ステッステップS2060、ステップS2070、ステップS2080、ステップS2090はそれぞれステップS1000、ステップS1010、ステップS1020、ステップS1060、ステップS1070、ステップS1080、ステップS1090と同様の処理であるため説明を省略し、違いのあるステップS2030、ステップS2040、ステップS2050について説明を行う。
ステップS2030にて、制御部15が幾何情報推定部102を制御し、第一の画像と第二の画像に基づいて、第一、第二、第三の幾何情報のうち、指定されたいずれか一つの幾何情報を推定する。なお、それぞれの幾何情報の求め方についてはステップS1030で説明した処理と同様である。
ステップS2040にて、制御部15は位置姿勢算出部103を制御し、ステップS2030で算出された幾何情報を用いて撮像部10の位置姿勢を算出する。また、位置姿勢算出部103は位置姿勢を算出した後に、さらに対応する幾何情報を更新してもよい。
ステップS2050では、制御部15は計測結果処理部104を制御し、ステップS2040で算出された位置姿勢における不具合の有無を判定する。不具合が無かった場合はステップS2060に処理を進める。不具合があった場合には、ステップS2030に戻って別の幾何情報の推定からやり直す。ここで不具合の有無を判定する具体的な処理については後述する。
<計測結果処理部における位置姿勢の不具合の有無を判定する処理>
ここで、図9は、本第2の実施形態におけるステップS2050において計測結果処理部104が位置姿勢の不具合の有無を判定する手順を示すフローチャートである。
ステップS2100にて、計測結果処理部104は初期化を行う。すなわち、位置姿勢の読み込みや、この後の処理で必要となる前フレーム画像や、周囲環境マップの幾何情報の読み込み、信頼度や類似度の閾値のパラメータの読み込みなどである。
ステップS2110では、計測結果処理部104は位置姿勢に関する信頼度を計算する。ここでは第一、第二、第三の位置姿勢のいずれか入力された位置姿勢について信頼度を求める。信頼度の求め方については、第1の実施形態におけるステップS1120で既に説明したので省略する。
ステップS2120にて、計測結果処理部104は、ステップS2110で求めた信頼度が閾値Thpよりも大きいかどうかを確認する。信頼度がThpよりも大きい場合にはステップS2130に進む。信頼度がThp以下の場合には不具合有りと判定して処理を終了する。
ステップS2130にて、計測結果処理部104は、1フレーム前の画像と2フレーム前の画像における位置姿勢から、線形補間によって現フレームの位置姿勢を求め、これを初期位置姿勢とする。ただし、初期位置姿勢はこれに限るものではなく、加速度センサやGPSセンサなどから初期位置姿勢を求めてもよい。
ステップS2140にて、計測結果処理部104は、ステップS2130で求めた初期位置姿勢とステップS2040で算出した位置姿勢との類似度を計算する。ここで、二つの位置姿勢の類似度とは、二つの位置姿勢が似ているほど高く、遠く離れて向きも異なるほど低い。例えば、類似度Sは次式(2)で求められる。
S=k1*|ti−t|+k2*||qi−q|| …(2)
ここで、k1、k2は調整パラメータであり、tiとtはそれぞれ初期位置姿勢と位置姿勢の位置を表す3次元のベクトル、qiとqはそれぞれ初期位置姿勢と位置姿勢の姿勢を表す四元数であり、|x|は実数3次元ベクトルxのノルムを表しており、||y||は四元数yのノルムを表している。ここでは、類似度の計算方法として式(2)について述べたが、これに限るものではない。位置姿勢が似ているほど高く、異なるほど低い値になるように計算されるものであれば、類似度はどのような計算式で求めてもよい。
ステップS2150にて、計測結果処理部104は、ステップS2140で求めた類似度が閾値Tspよりも大きいかどうかを確認する。類似度がTspよりも大きい場合には不具合無しと判定して処理を終了する。類似度がTsp以下の場合には不具合有りと判定して処理を終了する。
以上の処理により、計測結果処理部104は位置姿勢の不具合の有無を判定する。
<効果>
以上に述べたように、第2の実施形態では、複数の幾何情報の中から一つを選んで幾何情報および位置姿勢の推定を行い、得られた位置姿勢の不具合の有無を判定することによって、その位置姿勢を用いるか、別の幾何情報を推定し直すかを決める。計算処理中はどれか一つの幾何情報および位置姿勢を計算するだけでよいため、第1の実施形態で説明した複数の幾何情報や複数の位置姿勢を計算する場合と比較して、同時に処理するべき計算コストが低いため、比較的小規模な計算リソースであっても処理を行うことができる。また、計算した位置姿勢の不具合の有無を判定することによって、間違った位置姿勢を用いる可能性が低くなり、自動運転や運転アシストにおける安全性が高まる。
<変形例>
第2の実施形態においては、図8に示すフローチャートに従って処理を行う例について述べたが、これに限るものではない。ここで本実施形態における変形例の機能構成例および処理手順について説明する。変形例の機能構成例は第2の実施形態と同様であるため、違いのある幾何情報推定部102、位置姿勢算出部103、計測結果処理部104についてのみ説明する。
幾何情報推定部102は、第2の実施形態と同様にして第一、第二、第三の幾何情報のいずれか一つを推定して、計測結果処理部104に出力する。または、第一、第二、第三のいずれか一つの幾何情報をいったん位置姿勢算出部103に供給し、幾何情報に対応する位置姿勢を算出して対応する幾何情報を更新してもよい。
計測結果処理部104は、幾何情報推定部102から入力した幾何情報における不具合の有無を判定する。幾何情報に不具合が無かった場合には、幾何情報を位置姿勢算出部103に出力する。また、幾何情報に不具合があった場合には、図示しないパラメータ保持部のパラメータを変更して幾何情報推定部102に別の幾何情報を推定させて、その幾何情報の不具合の有無を判定することを繰り返す。また、後述する位置姿勢算出部103が入力した位置姿勢に基づいて、幾何情報を更新する。さらに更新した幾何情報を表示情報生成部105、運転処理装置12に出力する。また、位置姿勢を表示情報生成部105、運転処理装置12に出力する。
位置姿勢算出部103は、画像入力部100が入力した画像と計測結果処理部104が入力した幾何情報とに基づいて、撮像部10の位置姿勢を算出する。また、位置姿勢算出部103は、算出した位置姿勢を計測結果処理部104に供給する。
次に、本実施形態における変形例の処理手順について説明する。ここで、図10は、本第2の実施形態における情報処理装置1を含む情報処理システムが実施する変形例の処理手順を示すフローチャートである。本フローチャートの多くのステップは図8のフローチャートと同様であるため、違いのあるステップS2041、ステップS2051について説明する。
ステップS2041にて、計測結果処理部104はステップS2030で算出された幾何情報における不具合の有無を判定する。判定方法の詳細は後述する。幾何情報に不具合が無かった場合には、ステップS2051に処理を進める。また、幾何情報に不具合があった場合には、ステップS2030に戻り、幾何情報推定部102に別の幾何情報を推定させる。
ステップS2051にて、位置姿勢算出部103は、ステップS2041で算出された幾何情報に基づいて、撮像部10の位置姿勢を算出する。具体的には、これまでのフレームで求められている周囲環境マップにおける幾何情報に対して、計測結果処理部104が算出した幾何情報の位置合わせを行うことによって周囲環境マップに対する位置姿勢を算出する。また、1フレーム前の画像と2フレーム前の画像における位置姿勢から、線形補間によって現フレームの位置姿勢を求め、これを位置合わせする際の初期位置姿勢として用いる。また、位置合わせを行うことで、周囲環境マップの幾何情報も更新する。
<計測結果処理部における幾何情報の不具合の有無を判定する処理>
ここで、図11は、本第2の実施形態の変形例における、S2041の計測結果処理部104における幾何情報の不具合の有無を判定する手順を示すフローチャートである。
ステップS2200にて、計測結果処理部104は初期化を行う。すなわち、幾何情報の読み込みや、この後の処理で必要となる前フレーム画像や、周囲環境マップの幾何情報の読み込み、また、最適化問題を解く際のパラメータなどの読み込みである。
ステップS2210にて、計測結果処理部104は、ステップS2030で求めた幾何情報に関する信頼度を計算する。計測結果処理部104は、第一、第二、第三の幾何情報のいずれが入力されたかに応じて、その入力された幾何情報について信頼度を求める。信頼度の求め方については、第1の実施形態における変形例の処理ステップS1210で既に説明したので省略する。
ステップS2220にて、計測結果処理部104は、ステップS2210で求めた信頼度付きの幾何情報と、これまでの周囲環境マップにおける幾何情報との位置合わせを重み付きICPによって行う。
ステップS2230にて、計測結果処理部104は、重み付きICPにおいて位置合わせの誤差が収束したかどうかを判定する。収束した場合には幾何情報には不具合無として処理を終了する。収束しなかった場合には幾何情報に不具合有として処理を終了する。以上の処理により、計測結果処理部104は幾何情報の不具合の有無を判定する。
以上に述べたように、第2の実施形態では計測結果処理部104は位置姿勢の不具合の有無を判定していたが、変形例で示したように、計測結果処理部104は幾何情報の不具合の有無を判定してもよい。
第2の実施形態では幾何情報推定部102およびステップ2030において、第一、第二、第三の幾何情報のいずれかを指定するパラメータをパラメータ保持部が保持しているとして説明したが、これに限るものではない。パラメータとして、第一、第二、第三の幾何情報の信頼度を保持しておき、信頼度が最も高い幾何情報を選んで推定するようにしてもよい。また、信頼度はパラメータ保持部では保持せず、前フレームまでに得られた情報から計算される信頼度を用いてもよい。
第2の実施形態およびその変形例では、図9や図11のフローチャートを用いて、計測結果処理部104における位置姿勢または幾何情報の不具合の有無判定を行う方法について述べた。しなしながら、不具合の有無を判定する方法はこれらに限るものではない。例えば、第一の撮像装置および第二の撮像装置それぞれに異常が生じた場合にはエラー状態を示す信号を出すように設定してある場合、計測結果処理部は撮像装置のどちらかがエラー状態であることを示す信号を受け取った時点で、不具合有と判定し、エラー状態ではない撮像装置に基づいて幾何情報および位置姿勢を推定するように図示しないパラメータ保持部のパラメータを変更してもよい。
第2の実施形態における処理の流れを示す図8および図10のフローチャートでは、位置姿勢または幾何情報に不具合が無いと判定するまで幾何情報の推定に戻り、運転制御まではたどり着かないような説明を行ったが、これに限るものではない。運転制御は常に行いながら、最新の情報で更新されれば、運転制御のパラメータも更新してもよい。すなわち、運転制御については別スレッドを割り当てて継続的に制御を行っておき、位置姿勢や幾何情報に不具合が無いと判定された時には、それらの情報によって位置姿勢や周囲環境マップの更新を行うことで、運転制御にも反映させるようにしてもよい。これにより、幾何情報や位置姿勢に不具合が生じている場合であっても、自動運転や運転アシスト機能が停止することなく動作を続けることができる。
第2の実施形態における処理の流れを示す図8および図10のフローチャートでは、位置姿勢または幾何情報に不具合が無いと判定するまで幾何情報の推定に戻るため、第一、第二、第三の幾何情報および位置姿勢のすべてに不具合が生じている場合には、無限ループから抜け出せなくなる可能性があった。不具合有りの判定が3回連続で続いた場合には、画像撮像からやり直してもよい。または、表示情報生成部105が計測の不具合を知らせる画像を生成して表示をしてもよい。または、表示情報生成部105は人が運転するドライビングモードへ変更することを促すような表示をしてもよい。
第2の実施形態において、ステップS2010およびステップS2020では二つの撮像装置が第一の画像と第二の画像を撮像して入力するものとして説明したが、これに限るものではない。例えば、通常は第一の撮像装置のみを用いて第一の画像を入力して用い、以降の処理では第二の幾何情報を推定してもよい。さらに、第二の幾何情報に不具合が有ると判定された場合には、ステップS2010の画像撮像に戻り、第二の撮像装置のみ、または第一の撮像装置と第二の撮像装置両方でシーンを撮像するようにしてもよい。これにより、通常は撮像装置一つだけを用いるため、電力の消費や計算コストを抑えることができる。
第2の実施形態において、ステップS2070では、表示情報生成部105は不具合の有無を知らせるための表示情報を生成し、表示部11で表示してもよい。例えば、不具合が無い場合には、どの幾何情報または位置姿勢を用いて運転制御を行っているかを表示してもよい。どの撮像装置で撮像した画像であるかを表示してもよい。また、不具合が有る場合には、第一、第二、第三の幾何情報または位置姿勢のうち、どれに不具合が有るのかを表示してもよい。または、第一の撮像装置または第二の撮像装置の異常を知らせるような表示をしてもよい。または、不具合が一定時間連続して生じるようであれば、原因として考えられる部分の点検やメンテナンスを促す表示を行ってもよい。これにより、ユーザは情報処理システムの状態を視覚的に確認することができる。
第2の実施形態では、幾何情報をいずれか一つ推定する場合について述べたが、これに限るものではない。例えば、第1の実施形態と同様にして、第一、第二、第三の幾何情報または第一、第二、第三の位置姿勢を推定し、それぞれの不具合の有無を確認してもよい。不具合の無い幾何情報または位置姿勢が複数存在する場合には、その中からランダムに一つを選んで次のステップに進んでもよいし、第1の実施形態におけるステップS1050やステップS1041のように、不具合の無い複数の幾何情報または位置姿勢から、幾何情報または位置姿勢を求めてもよい。または、不具合の有る幾何情報または位置姿勢は式1における信頼度やICPを行う際の重みを不具合の無いものよりも低く設定することによって求めてもよい。こうすることにより、不具合の有るデータを明示的に除外することで、第1の実施形態における推定結果よりもロバストな推定を行うことができる。
[第3の実施形態]
上記第2の実施形態では、計測結果処理部は幾何情報または位置姿勢における不具合の有無を判定し、不具合の無い推定結果を用いて幾何情報または位置姿勢を算出していた。これに対して、第3の実施形態では、計測結果処理部は幾何情報または位置姿勢に対して判定を行うだけでなく、不具合が有る場合には、不具合の原因の解消や、不具合の回避によって、不具合の解決を図る。このようにして、不具合が有る場合でもロバストに幾何情報または位置姿勢を推定して自動運転または運転アシストを行う。本第3の実施形態における自動車の構成は第1の実施形態に示した図1と同様であるため省略する。
<情報処理装置の構成>
図12は、本第3の実施形態における情報処理装置1と運転処理装置12の機器構成例を示す図である。情報処理装置1は、画像入力部300、学習モデル保持部301、幾何情報推定部302、位置姿勢算出部303、計測結果処理部304、表示情報生成部305、校正算出部309、及び、装置全体の制御を司る制御部35を備えている。また、運転処理装置12は、周囲環境取得部306、目的地取得部307、及び、装置全体の制御を司る運転制御部308を備えている。画像入力部300、学習モデル保持部301、幾何情報推定部302、位置姿勢算出部303、表示情報生成部305、周囲環境取得部306、目的地取得部307、運転制御部308、並びに、制御部35は、第1の実施形態における画像入力部100、学習モデル保持部101、幾何情報推定部102、位置姿勢算出部103、表示情報生成部105、周囲環境取得部106、目的地取得部107、運転制御部108、及び、制御部15に対応する。同様の機能については説明を省略し、違いのある計測結果処理部304、校正算出部309について説明を行う。
計測結果処理部304は、位置姿勢算出部303が算出した第一、第二、第三の位置姿勢と、第一、第二、第三の幾何情報に基づいて、不具合や異常を検知し、それを解消するための動作を行う。そして、位置姿勢および幾何情報を算出し、表示情報生成部305、運転処理装置12に出力する。詳細は後述する。
校正算出部309は、計測結果処理部304から校正を行う指示を受けると、第一の撮像装置と第二の撮像装置の校正を行い、校正パラメータを求める。求めた校正パラメータによって図示しない校正パラメータ保持部の校正パラメータを更新する。
<処理>
次に、本第3の実施形態における処理手順について説明する。図13は、本実施形態における情報処理装置3を含む情報処理システムが実施する処理手順を示すフローチャートである。
本第3の実施形態におけるフローチャートは、第1の実施形態における図4のフローチャートと略同様であり、ステップS3000、ステップS3010、ステップS3020、ステップS3030、ステップS3040、ステッステップS3060、ステップS3070、ステップS3080、ステップS3090は、それぞれステップS1000、ステップS1010、ステップS1020、ステップS1030、ステップS1040、ステップS1060、ステップS1070、ステップS1080、ステップS1090と同様の処理であるため説明を省略し、違いのあるステップS3050、ステップS3051について説明を行う。
ステップS3050にて、計測結果処理部304は、ステップS3040で算出された第一、第二、第三の位置姿勢および第一、第二、第三の幾何情報における不具合の有無をそれぞれ判定する。不具合が一つも無かった場合にはステップS3060に進む。不具合があった場合には、ステップS3051へ進む。不具合の有無を判定する具体的な処理については、第2の実施形態における図9および図11のフローチャートを用いて既に述べたため省略する。
ステップS3051では、計測結果処理部304は、第一、第二、第三の位置姿勢および第一、第二、第三の幾何情報において不具合が有ったものに基づいて、その不具合を解消するための処理を行う(詳細後述)。そして、計測結果処理部304は、処理をステップS3010に戻る。
なお、不具合を解消する間の運転制御については、人が運転するドライビングモードに切り替えて自動運転または運転アシストは行わないようにする。ただし、これに限るものではなく、不具合を解消するまでの時間が比較的短く、これまでの推定結果のままでも問題ない場合であれば、これまでの推定結果および時系列的な予測に基づいて運転制御を行ってもよい。例えば、周囲に障害物等がなく直線一本道を走行中で、その状態が続くことが推定可能である場合は、自動運転または運転アシストを行ってもよい。
<計測結果処理部が不具合を解消する処理>
ここで、図14は、本第3の実施形態におけるステップS3051における、計測結果処理部304が不具合を解消する手順を示すフローチャートである。
ステップS3100にて、計測結果処理部304は、第一、第二、第三の位置姿勢および第一、第二、第三の幾何情報において不具合の有ったものはどれなのかを示す情報を取得する。
ステップS3110にて、計測結果処理部304は、入力された情報の分類を行う。分類方法の表記として、以下では、第一の位置姿勢または幾何情報に不具合があった場合は第一:×、不具合が無かった場合には第一:○などと表記するものとする。例えば、第一:○、第二:×、第三:×と表記した場合、第一の位置姿勢および幾何情報には不具合は無く、第二の位置姿勢または幾何情報に不具合が有り、第三の位置姿勢または幾何情報に不具合が有ることを示す。不具合の分類により、第一:○、第二:×、第三:×の場合、計測結果処理部304はステップS3111に処理を進める。また、第一:○、第二:○、第三:×または第一:○、第二:×、第三:○の場合、計測結果処理部304は処理をステップS3112に進める。また、第一:×、第二:○、第三:○の場合、計測結果処理部304はステップS3113に処理を進める。また、第一:×、第二:○、第三:×または第一:×、第二:×、第三:○の場合、計測結果処理部304はステップS3114に処理を進める。そして、第一:×、第二:×、第三:×の場合、計測結果処理部304はステップS3115に処理を進める。
ステップS3111にて、計測結果処理部304は、学習モデル保持部301が保持する学習モデルの変更を行うことで、幾何情報推定部302における第二、第三の幾何情報の推定を改善させる。変更する学習モデルは撮像シーンと類似したシーンで学習を行ったモデルが好ましい。変更方法としては、撮像シーンの画像から特徴量を抽出し、抽出した特徴量に基づいて学習モデルを決定してもよいし、現在の自動車の位置に基づいて、他の自動車が過去に同様の位置で変更した経験から学習モデルを選択してもよい。
ステップS3112にて、計測結果処理部304は、第二、第三の幾何情報を推定する際に用いる学習モデル保持部301が保持する学習モデルそれぞれを統一することで、幾何情報推定部302における第二、第三の幾何情報いずれか一方の推定を改善する。統一する学習モデルとして採用するのは、不具合の無い幾何情報を推定するのに用いた学習モデルである。ただし、これに限るものではなく、一方の学習モデルに他方の学習モデルを統一するのではなく、ステップS3111と同様に両方の学習モデルを変更してもよい。
ステップS3113にて、計測結果処理部304は、校正算出部309が撮像した時点での第一の撮像装置と第二の撮像装置の間の校正パラメータを算出する。校正パラメータは第二の位置姿勢と第三の位置姿勢に基づいて、一方から他方への変換を求めることで算出する。ただし、算出方法はこれに限るものではなく、第一の画像と第二の画像に基づいて算出してもよいし、第二の幾何情報と第三の幾何情報に基づいて算出してもよい。そして、計測結果処理部304はステップS3116に処理を進める。
ステップS3116にて、計測結果処理部304は、ステップS3113で算出した校正パラメータと図示しない校正パラメータ保持部が保持する校正パラメータを比較して、その誤差を求める。校正誤差が大きく、第一の画像と第二の画像が撮像するシーンが重なる領域が画像中の半分の領域にも満たない場合、計測結果処理部304はステップS3117に処理を進める。校正誤差は存在するが、その誤差が小さい場合、計測結果処理部304はステップS3118に処理を進める。校正誤差はほぼゼロで算出した校正パラメータと校正パラメータ保持部が保持する校正パラメータがほぼ同一であると見なせる場合、計測結果処理部304はステップS3119に処理を進める。
ステップS3117にて、表示情報生成部305は、第一の撮像装置と第二の撮像装置の少なくとも一つを適切な位置姿勢に設置し直すように、ユーザに指示を行うための画像を生成し、表示部11を用いて表示する。具体的には、車内における第一の撮像装置と第二の撮像装置それぞれの位置姿勢を求めて、予め設定してある撮像装置の理想的な位置姿勢の範囲に入るように、ユーザが撮像装置を動かす。この時、表示情報生成部305は、理想的な撮像装置の位置姿勢と、現在の撮像装置の位置姿勢とがどの程度一致しているか、また、どのように動かせば理想的な位置姿勢に近づくかを示す画像を生成し、表示部31を用いて表示する。ユーザが撮像装置の設置を終えると、校正算出部309は現在の校正パラメータを算出し、これを図示しない校正パラメータ保持部の保持する校正パラメータとして更新する。このようにして、ユーザが撮像装置を適切な位置姿勢に設置し直すことによって、幾何情報推定部302における第一の幾何情報の推定を改善する。また、車内における撮像装置の位置姿勢を安定して求めるために、車内で計測した学習データによって学習した学習モデルを予め準備しておき、学習モデル保持部301が保持する学習モデルをこれに変更してもよい。
ステップS3118にて、計測結果処理部304は、ステップS3113で算出した校正パラメータを用いて、図示しない校正パラメータ保持部が保持する校正パラメータを更新する。これにより、幾何情報推定部302における第一の幾何情報の推定を改善する。
ステップS3119にて、幾何情報推定部302が第一の幾何情報を推定するために、第一の画像と第二の画像の対応関係を求める際に用いる特徴点の検出方法を変更する。これにより、幾何情報推定部302における第一の幾何情報の推定を改善する。特徴点の検出方法としては、SIFTやORB、AKAZEなど様々な特徴量が存在するが、特に限定するものではない。また、ここでは特徴点の検出方法を変更するものとして説明したが、これに限るものではない。例えば、ステレオの対応関係を求める類似度指標をSADやSSD、NCC、ZNCCなどの中で変更を行うことでステレオによる幾何情報推定を改善してもよいし、探索範囲や閾値などを変更してもよい。
ステップS3114にて、計測結果処理部304は、撮像部10のうち不具合の有る撮像装置の再起動を行うことで撮像装置自体の改善を行う。また、第一の撮像装置および第二の撮像装置それぞれが撮像した第一の画像と第二の画像に不具合の有無をユーザが確認できるように、表示情報生成部305は第一の画像と第二の画像を並べて表示するための画像を生成し、表示部11を用いて表示する。ここでは、撮像装置の再起動によって撮像装置の改善を行う例について説明したが、これに限るものではない。例えば、撮像装置が壊れて撮像できない場合には、撮像装置の交換を行うために、表示情報生成部305は撮像装置の交換を促す表示を行ってもよい。また、撮像装置のレンズに異常が生じている場合には、表示情報生成部305はレンズの交換やクリーニングを促す表示を行ってもよい。
ステップS3115にて、表示情報生成部305は自動運転や運転アシスト機能を行えない状況にあること、および人が運転するドライビングモードに切り替えることを示す画像を生成して、表示部11を用いて表示する。さらに、人が運転している間に、ステップS3111、ステップS3112、ステップS3114、ステップS3117、ステップS3118、ステップS3119などの改善策を実行することで、システムの復旧を図る。以上の処理により、計測結果処理部304は不具合を解消する。
<効果>
以上に述べたように、第3の実施形態によれば、推定した幾何情報や位置姿勢に不具合が有った場合には、それを解消するための対処を行うことによって、より安全かつ安定してシステムを連続的に動作させることができる。また、不具合の状況を表示してユーザに知らせることによって、ユーザは安心して自動運転や運転アシストの機能を用いることができる。
<変形例>
第3の実施形態においては、図13に示すフローチャートに従って処理を行う例について述べたが、これに限るものではない。第3の実施形態ではステップS3040で位置姿勢を算出した後で、ステップS3050で不具合の有無を判定して、その対処を行う例について述べたが、第1の実施形態の変形例や第2の実施形態の変形例で示した例と同様にして、ステップS3030で算出した幾何情報を用いて不具合の有無を判定し、その対処を行い、その後で位置姿勢を算出してもよい。
第3の実施形態において、ステップS3050では、不具合の有無に応じてステップS3060またはステップS3051のどちらかに進む例について述べた。しかしながら、これに限るものではない。例えば、不具合が有った場合でも、第一、第二、第三の幾何情報および位置姿勢のいずれかに不具合が無い場合には、処理を二つに分け、ステップS3051で不具合への対処を行うとともに、不具合の無い幾何情報および位置姿勢を用いてステップS3060の処理を行ってもよい。これにより、不具合が有った場合でも、継続して自動運転または運転アシストの機能を使うことができる。
第3の実施形態において、ステップS3051では、不具合があった場合にはすぐにその対処を行う例について述べた。しかしながら、これに限るものではない。例えば、第一の撮像装置の前を遮蔽物が横切った場合には、第一、第二の幾何情報に不具合が有ると判定されるが、遮蔽物が無くなれば自然と不具合は改善される場合もある。そのため、不具合が数フレームに渡って連続的に生じた場合に対処を行うようにしてもよい。これにより、不要な計算負荷の増大を防ぐことができる。
[第4の実施形態]
第1、第2、第3の実施形態における幾何情報推定部は、既存の学習モデルを用いて幾何情報を推定する例について述べた。これに対して、第4の実施形態では、学習モデルを学習するための教師データを取得して学習を行い、学習モデルを生成する。このようにして、既存の学習モデルでは幾何情報を推定できないような未知のシーンに対しても、幾何情報の推定が可能となる新たな学習モデルを生成して自動運転または運転アシストを行う。本第4の実施形態における自動車の構成は第1の実施形態に示した図1と同様であるため省略する。
<情報処理装置の構成>
図15は本実施形態における情報処理装置1と運転処理装置12の機器構成例を示す図である。情報処理装置1は、画像入力部400、学習モデル保持部401、幾何情報推定部402、位置姿勢算出部403、計測結果処理部404、表示情報生成部405、学習部409、並びに制御部25を備えている。また、運転処理装置12は、周囲環境取得部406、目的地取得部407、運転制御部408を備えている。画像入力部400、学習モデル保持部401、幾何情報推定部402、位置姿勢算出部403、計測結果処理部404、表示情報生成部405、周囲環境取得部406、目的地取得部407、運転制御部408、アクチュエータ部43、及び、制御部45は、第3の実施形態における画像入力部300、学習モデル保持部301、幾何情報推定部302、位置姿勢算出部303、計測結果処理部304、表示情報生成部305、周囲環境取得部306、目的地取得部307、運転制御部308、アクチュエータ部33、及び、制御部35に対応する。同様の機能については説明を省略し、違いのある学習モデル保持部401、計測結果処理部404、学習部409について説明を行う。
学習モデル保持部401は、画像から幾何情報を推定するためのモデルを保持する。また、学習モデル保持部401は、後述する学習部409から供給された学習モデルを保持する。これにより、幾何情報推定部402が状況に応じて適切な学習モデルを選択できるようになる。
計測結果処理部404は、第3の実施形態における計測結果処理部304の機能に加えて、第一の画像および第二の画像と、それらの画像に対応する幾何情報に基づいて、学習モデルを学習する際に用いる教師データを生成する。そして、計測結果処理部404は、生成した教師データは学習部409に出力する。
学習部409は、計測結果処理部404から入力した教師データに基づいて学習を行い、学習モデルを生成する。生成した学習モデルは学習モデル保持部401に出力する。
<処理>
次に、本第4の実施形態における処理手順について説明する。本第4の実施形態における処理手順は、第3の実施形態において図13を用いて説明したフローチャートに一部処理を追加するだけで、その他は同様であるため、説明を省略する。本第4の実施形態において教師データを取得して学習を行う処理手順は、第3の実施形態における図13のステップS3060の後に並行して行われる。ここで、図16は、この教師データを取得して学習を行う処理手順を示すフローチャートである。
ステップS4100にて、計測結果処理部404は、第一の画像と第二の画像を取得し、取得リストに保持する。ただし、これに限るものではなく、どちらか一方の画像のみを取得、保持してもよい。
ステップS4110にて、計測結果処理部404は、位置姿勢を取得し、既に取得リストに保持してある画像と対応付けて取得リストに保持する。ただし、ここでの位置姿勢とは、計測結果処理部404が最終的に算出した位置姿勢であり、運転制御に用いられる位置姿勢である。
ステップS4120にて、計測結果処理部404は、取得リストに保持された画像に対応する幾何情報を取得可能であるかどうか判定する。取得可能であると判定した場合、計測結果処理部404は処理をステップS4130へ進める。また、取得不可能である場合には、計測結果処理部404は、取得リストは保持したままで処理を終了する。この場合、次のフレームまたは数フレーム後で、教師データを取得する処理を再度開始した際には、保持した取得リストに対してさらに追加していくことになる。ここで、幾何情報を取得可能であるとは、画像に対して更新した幾何情報が得られる場合である。
ステップS4130にて、計測結果処理部404は、取得リストに保持された画像および位置姿勢に基づいて、画像に対応する幾何情報を取得する。
ステップS4140にて、計測結果処理部404は、ステップS4130で対応付けた画像と幾何情報をセットにし、教師データとして学習部409に出力する。学習部409は計測結果処理部404から入力した教師データを保持する。
ステップS4150にて、学習部409は、学習を開始するかどうか判断し、学習を開始する場合にはステップS4160に処理を進める。学習を開始しない場合には処理を終了する。この場合、教師データを取得する処理を再度開始した際には、教師データを追加で保持していく。また、学習を開始するかどうかの判断は、保持する教師データの量が十分かどうかで判断する。
ステップS4160にて、学習部409は、保持する教師データ群を用いて学習を行い、学習モデルを生成する。具体的には、学習部409は、教師データは画像と幾何情報のペアとして与えられ、入力として画像を与えたときに出力として画像に対応する幾何情報を出力するようなCNNの重みを推定することで学習を行う。ただし、学習方法はこれに限るものではなく、CNN以外のモデルであってもよい。
ステップS4170にて、学習モデル保持部401は、ステップS4160で学習部409が生成した学習モデルを追加して保持する。追加して保持することによって、幾何情報推定部402が幾何情報を推定する際には、複数の学習モデルの中から学習モデルを選択して幾何情報を推定することができる。ただし、これに限るものではなく、学習モデル保持部401は学習モデルを新しい学習モデルに更新してもよい。以上の処理により、教師データを取得して学習を行う。
<効果>
以上に述べたように第4の実施形態によれば、学習モデルを生成することによって、既存の学習モデルでは幾何情報を推定できなかったシーンに対して、生成した学習モデルを用いて幾何情報を推定し、安定した位置姿勢の推定を行い、より安全に自動運転または運転アシストを行うことができる。また、本情報処理装置が処理を行う中で教師データを自動的に生成することによって、学習モデルを学習するために必要となる膨大な教師データを別途作成したり、ラベル付けを行ったりする手間を省くことができる。
<変形例>
第4の実施形態において、計測結果処理部404は第3の実施形態における図13のステップS3060の後に教師データを取得する例について述べたが、これに限るものではない。例えば、第3の実施形態における図14のステップS3111の前後もしくは並行して画像を取得リストに保持してもよい。すなわち、学習モデルを用いて幾何情報を推定する第二、第三の幾何情報、およびそれらに対応する第二、第三の位置姿勢に不具合が生じている場合に限定して、画像を取得リストに保存してもよい。これにより、既存の学習モデルでは幾何情報を推定できないシーンの画像群を取得できるため、それらに基づいて生成した教師データで学習を行うことによって、より効率良く幾何情報を推定できるシーンを拡大することができる。
第4の実施形態において、計測結果処理部404は第3の実施形態における図13のステップS3060の後に学習を行う例について述べたが、これに限るものではない。例えば、学習を行うために必要となる画像や位置姿勢、幾何情報などは全てデータとして保存しておき、別途オフラインで学習を行うための情報処理装置を用いて教師データを生成し、学習を行ってもよい。この場合、学習部409は情報処理装置1とは別の情報処理装置にその機能を移動させてもよい。これにより、学習を行うための計算リソースを自動車内部に所持する必要がなくなり、情報処理装置41コストを抑えることができる。
第4の実施形態において、学習部409は計測結果処理部404が生成した教師データのみを用いて学習を行う例について述べたが、これに限るものではない。例えば、既存の学習モデルを学習した時に用いた教師データ群の一部または全てを加えて学習を行ってもよい。また、既存の学習モデルをベースとして、追加学習を行ってもよい。
第4の実施形態において、ステップS4120では画像に対して更新した幾何情報が得られる場合に幾何情報が取得可能であるとして説明したが、これに限るものではない。例えば、幾何情報が取得可能である条件として、画像に対して得られている幾何情報の割合が閾値以上としてもよい。または、画像に対応する一定範囲内のエリアから外に車が出た時に、幾何情報を更新した後に取得可能としてもよい。
第4の実施形態において、ステップS4100での画像の取得やステップS4130での幾何情報の取得は、いずれも自車が計測したものであり、それらを用いて教師データを生成する例について述べたが、これに限るものではない。例えば、サーバー上から必要となるエリアの画像または幾何情報をダウンロードして、それらを用いて教師データを生成してもよい。
第4の実施形態において、幾何情報推定部402は学習モデル保持部401が保持する複数の学習モデルの中から状況に応じて適切な学習モデルを選択するとして説明したが、その具体例について述べる。学習モデルは予め、学習モデルに対応する教師データの一部の画像をサンプルシーン画像として紐付けておく。幾何情報推定部402は入力された画像とサンプルシーン画像との類似度を評価し、評価値の高いサンプルシーン画像に紐付いた学習モデルを用いて幾何情報の推定を行う。また、一つの学習モデルに対して複数のサンプルシーン画像が紐付けられていてもよい。
第4の実施形態において、幾何情報推定部402は学習モデル保持部401が保持する複数の学習モデルの中から状況に応じて適切な学習モデルを選択するとして説明したが、これに限るものではない。例えば、複数の学習モデルに対して、それぞれ幾何情報を生成して、第四、第五の幾何情報をさらに生成して後の処理を行ってもよい。
[第5の実施形態]
第1、第2、第3、第4の実施形態では、三角測量に基づく幾何情報を推定する方法として、撮像装置を二つ用いたステレオによる推定方法について述べた。これに対して、第5の実施形態では、撮像部が撮像する空間に向けて、所定のパターンを投影する投影部を備え、撮像装置一つと投影部によるアクティブステレオによって幾何情報を推定する。本実施形態における自動車の構成を図17に示す。本第5の実施形態では、自動車50000に取り付けられた撮像部50の位置姿勢を求めるために、投影部54と撮像部50によるアクティブステレオによる幾何情報と、第1の実施形態で既に説明した学習モデルを用いて推定する幾何情報の2系統の幾何情報と、それに対応する位置姿勢から、安定的な幾何情報および位置姿勢を求める。
<情報処理装置の構成>
図18は、本第5の実施形態における情報処理装置5と運転処理装置52の機能構成例を示す図である。情報処理装置5は、画像入力部500、学習モデル保持部501、幾何情報推定部502、位置姿勢算出部503、計測結果処理部504、表示情報生成部505、投影制御部509、及び、装置全体の制御を司る制御部55を備えている。また、運転処理装置52は、周囲環境取得部506、目的地取得部507、及び装置全体の制御を司る運転制御部508を備えている。画像入力部500、学習モデル保持部501、幾何情報推定部502、位置姿勢算出部503、計測結果処理部504、表示情報生成部505、周囲環境取得部506、目的地取得部507、運転制御部508、撮像部50、表示部51、運転処理装置52、アクチュエータ部53、並びに制御部55は、第1の実施形態における画像入力部100、学習モデル保持部101、幾何情報推定部102、位置姿勢算出部103、計測結果処理部104、表示情報生成部105、周囲環境取得部106、目的地取得部107、運転制御部108、撮像部10、表示部11、運転処理部12、アクチュエータ部13、並びに制御部15に対応する。同様の機能については説明を省略し、違いのある投影制御部509、画像入力部500、幾何情報推定部502について説明を行う。なお、位置姿勢算出部503、計測結果処理部504については、第1の実施形態における位置姿勢算出部103と計測結果処理部104と同様で、第1の実施形態では第一、第二、第三と3系統の幾何情報や位置姿勢を扱っていたのに対して、本実施形態では第一と第二の2系統の幾何情報と位置姿勢を扱うという違いだけであるため、説明を省略する。また、撮像部50は撮像装置一つで構成されており、撮像部50の撮像装置と投影部54の間の位置姿勢関係は予めキャリブレーションによって求めておき、図示しない校正パラメータ保持部に校正パラメータが保持されているものとする。
投影制御部509は、撮像部の撮像空間に向けたパターン光の投影を制御し、投影部54を用いて投影を行う。また投影制御部509は、投影したパターンに関する情報を幾何情報推定部502に出力する。
画像入力部500は、撮像部50の撮像装置が、パターンが投影された被写体空間の2次元画像の画像データを時系列に入力し、処理を行った後で、学習モデル保持部501、幾何情報推定部502、位置姿勢算出部503、表示情報生成部505、運転処理装置52に出力する。画像入力部500が行う処理は、撮像した画像に対して、投影パターンの影響を受けた第一の画像と投影パターンの影響を受けない第二の画像とに分離することである。具体的には、投影部54が投影するパターンは赤外光とし、撮像部50は可視光と赤外光の2チャネルを撮像できるものとする。そして、画像入力部500は、赤外光チャネルの画像を第一の画像、可視光チャネルの画像を第二の画像として処理し、第一の画像、第二の画像を出力する。
幾何情報推定部502は、画像入力部500が入力する第一の画像と投影制御部509が入力するパターンに関する情報に基づくアクティブステレオによって第一の幾何情報を推定する。また、幾何情報推定部502は、学習モデル保持部501が保持する学習モデルを用いて、画像入力部500から入力した第二の画像から、第二の幾何情報を推定する。推定した第一、第二の幾何情報を位置姿勢算出部103に出力する。
<処理>
次に、本第5の実施形態における処理手順について説明する。図19は、本第5の実施形態における情報処理装置5を含む情報処理システムが実施する処理手順を示すフローチャートである。
本第5の実施形態におけるフローチャートは、第1の実施形態における図4のフローチャートと略同様であり、ステップS5040、ステップS5050、ステッステップS5060、ステップS5070、ステップS5080、ステップS5090はそれぞれステップS1040、ステップS1050、ステップS1060、ステップS1070、ステップS1080、ステップS1090と同様の処理であるため説明を省略する。そして、違いのあるステップS5000、ステップS5010、ステップS5020、ステップS5030について以下に説明する。
ステップS5000にて、制御部55はシステムの初期化を行う。第1の実施形態におけるステップS1000の処理に追加して、制御部55は、投影部54の起動および投影制御部509が投影するパターンの設定を読み込みも行うことになる。
ステップS5010にて、制御部55は投影制御部509を制御し、投影部54からシーンにパターンを投影し、撮像部50の撮像装置によるシーンの撮影を行わせ、撮像画像を画像入力部500に出力させる。
ステップS5020にて、制御部55は、画像入力部500を制御し、ステップS5010で撮像された画像を取得し、第一の画像と第二の画像に分離させる。
ステップS5030にて、制御部55は幾何情報推定部502を制御し、第一の画像と第二の画像それぞれに基づいて、第一、第二の幾何情報を推定させる。第一の幾何情報はアクティブステレオにより求める。具体的には、幾何情報推定部502は、第一の画像と投影制御部509が入力する投影パターンの情報に基づいて、第一の画像と投影パターンとの対応関係を求める。そして、幾何情報推定部502は、図示しない校正パラメータ保持部から撮像部50の撮像装置と投影部54の位置姿勢関係を表す校正パラメータに基づいて三角測量を行って距離画像を推定する。また、幾何情報推定部502は、第1の実施形態と同様に、学習モデルを用いて、第二の画像から第二の幾何情報を推定することになる。
<効果>
以上に述べたように第5の実施形態によれば、パターン投影によるアクティブステレオを用いて幾何情報を推定する機能を有する。そのため、特徴の少ない未知のシーンにおいても、幾何情報を安定して求めることができるため、自動運転や運転アシストにおける安全性が高まる。
<変形例>
第5の実施形態において、画像入力部500は赤外光と可視光の2チャネルで分離を行う例を述べたが、第一の画像と第二の画像に分離する方法はこれに限らない。例えば、投影部54は赤外光のランダムドットパターンを投影するものとし、撮像部50は赤外光のモノクロ画像を撮像できるものとした場合、撮像した画像を第一の画像、ガウシアンブラーやフィルタ処理によってランダムドットパターンの影響が見えなくなるようにブラーさせた画像を第二の画像としてもよい。または、投影部54と撮像部50が高速に制御され、投影パターンが有る状態で撮像した画像を第一の画像、投影パターンが無い状態で撮像した画像を第二の画像としてもよい。
第5の実施形態において、画像入力部500は第一の画像と第二の画像に分離する例について述べたが、これに限るものではない。例えば、画像を分離する処理については、幾何情報推定部502、位置姿勢推定部503、計測結果処理部504などの中で最初に分離する処理を行い、画像入力部500は一つの画像を入力してもよい。
第5の実施形態において、投影制御部509が投影するパターンはランダムドットパターンであるとして述べたが、投影パターンはこれに限るものではない。例えば、投影パターンはグリッドパターンでもよいし、高速に投影と撮像を行えるならば、位相シフトパターンやグレイコードパターンを用いて、複数の投影パターン撮像画像から幾何情報を推定してもよい。
第5の実施形態において、ステップS5050における計算結果処理は位置姿勢算出の後に行うものとして説明したが、これに限るものではない。第1の実施形態の変形例や第2の実施形態における変形例と同様に、幾何情報推定の後に計算結果処理を行って幾何情報を一つ求め、その後で位置姿勢算出を行ってもよい。
第5の実施形態における処理手順は、第1の実施形態と略同様であると説明したが、これに限るものではない。第2の実施形態に対して、同様に処理を行うことによって、第一の幾何情報と第二の幾何情報を適切に切り替えてもよい。これにより比較的小規模な計算リソースであっても処理を行うことができる。
第5の実施形態における処理手順は、第1の実施形態と略同様であると説明したが、これに限るものではない。第3の実施形態に対して、同様に処理を行うことによって、不具合が有ったとしても、それを解消するための対処を行うことで、より安全かつ安定してシステムを連続的に動作させることができる。
第5の実施形態における処理手順は、第1の実施形態と略同様であると説明したが、これに限るものではない。第4の実施形態に対して、同様に処理を行うことによって、学習モデルを生成し、既存の学習モデルでは幾何情報を推定できなかったシーンであっても、安定した位置姿勢の推定を行い、より安全に自動運転または運転アシストを行うことができる。
第5の実施形態において、投影部54は撮像するシーンにパターンを投影する役割のみを持つ例について述べたが、これに限るものではない。例えば、投影部54が表示部51の機能を兼ねて、ユーザに対する表示を投影によって行ってもよい。また、投影部54は自動車50000のフロントライトとして用いてもよい。または、図示しないフロントライトを用いて投影部54の機能を兼ねてもよい。
第5の実施形態において、他の光源や他の投影パターンが存在する場合であっても、一意にパターンを特定できるように、投影部54が投影するパターンは変調されていてもよい。これにより、近くに同じ機能を持った自動車が複数台存在している場合であっても、お互いの投影パターンが干渉を起こすことなく、安定して幾何情報を推定することができる。
第5の実施形態において、投影部54は一つの投影装置で、撮像部50は一つの撮像装置からなる例について述べた。ただし、これに限るものではない。例えば、投影装置が複数台、撮像装置が複数台備わっていてもよい。その場合、幾何情報や位置姿勢が3つ以上の多数求めることができる。また、多数のうち一部を用いて処理を行ってもよい。これにより、多数の幾何情報や位置姿勢を用いて推定するため、より精度が高くロバスト性も高い幾何情報や位置姿勢を求めることができる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
1:情報処理装置、10:撮像部、11:表示部、12:運転処理装置、13:アクチュエータ部、100:画像入力部、101:学習モデル保持部、102:幾何情報推定部、103:位置姿勢算出部、104:計測結果処理部

Claims (19)

  1. 撮像視野の少なくとも一部が重複するように配置される第1の撮像装置及び第2の撮像装置を含む撮像手段からの画像に基づき、当該撮像手段の位置姿勢もしくは撮像した画像が表す幾何情報を求める情報処理装置であって、
    前記撮像手段から、前記第1の撮像装置が得た第1の画像、及び、前記第2の撮像装置が得た第2の画像を入力する入力手段と、
    与えられた画像が表す幾何情報を推定するための学習モデルを保持する保持手段と、
    前記第1の画像及び前記第2の画像から第1の仮の幾何情報を推定する第1の推定手段と、
    前記第1の画像と前記保持手段に保持された学習モデルに基づいて第2の仮の幾何情報を推定する第2の推定手段と、
    前記第2の画像と前記保持手段に保持された学習モデルに基づいて第3の仮の幾何情報を推定する第2の推定手段と、
    前記第1、第2、第3の仮の幾何情報の少なくとも一つに基づいて、前記撮像手段の位置姿勢情報、当該撮像手段が撮像した画像が表す幾何情報の少なくとも一方を生成する生成手段と、
    を有することを特徴とする情報処理装置。
  2. 前記生成手段は、
    前記第1の仮の幾何情報に基づいて前記撮像手段の第1の仮の位置姿勢を算出する第1の算出手段と、
    前記第2の仮の幾何情報に基づいて前記撮像手段の第2の仮の位置姿勢を算出する第2の算出手段と、
    前記第3の仮の幾何情報に基づいて前記撮像手段の第3の仮の位置姿勢を算出する第3の算出手段と、
    前記第1、第2、第3の仮の位置姿勢の少なくとも一つに基づいて、前記撮像手段の位置姿勢を出力するための処理を行う処理手段と
    を含むことを特徴とする請求項1に記載の情報処理装置。
  3. 前記生成手段は、
    前記第1、第2、第3の仮の幾何情報に基づいて、前記撮像手段における基準となる撮像装置で撮像した画像が表す幾何情報を生成する
    ことを特徴とする請求項1に記載の情報処理装置。
  4. 前記生成手段は、
    前記第1、第2、第3の仮の幾何情報の1つを前記撮像手段の仮の幾何情報として出力する出力手段と、
    該出力手段で出力する仮の幾何情報の適正、非適正を判定する判定手段と、
    該判定手段が非適正であるとの判定をした場合、他の仮の幾何情報を前記出力手段の出力の対象として設定する設定手段と
    を含むことを特徴とする請求項1に記載の情報処理装置。
  5. 前記生成手段は、生成した幾何情報に基づいて前記撮像手段の位置姿勢を算出するとともに、幾何情報の更新を行う
    ことを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 更に、前記幾何情報または位置姿勢に基づいて、撮像手段または幾何情報に関する異常を検出する検出手段を有する
    ことを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 更に、前記生成手段が生成した情報に基づいて、ユーザへの表示情報を生成する表示情報生成手段を有することを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
  8. 更に、前記第2、第3の仮の幾何情報に基づいて前記撮像手段が有する前記第1、第2の撮像装置間の校正を行う校正算出手段を備え、
    前記検出手段が、前記第1の撮像装置と第2の撮像装置との間のキャリブレーションに異常が生じたことを検出した場合に、前記校正算出手段が校正を行う
    ことを特徴とする請求項6に記載の情報処理装置。
  9. 前記第1の仮の幾何情報に異常が生じたことを前記検出手段が検出した場合、前記生成手段は、前記第2、第3の仮の位置姿勢の少なくとも一つに基づいて位置姿勢を生成する
    ことを特徴とする請求項6に記載の情報処理装置。
  10. 前記第1の仮の幾何情報に異常が生じたことを前記検出手段が検出した場合、前記生成手段は、前記第2、第3の仮の幾何情報の少なくとも一つに基づいて幾何情報を生成する
    ことを特徴とする請求項6に記載の情報処理装置。
  11. 更に、前記幾何情報に基づいて、前記保持手段が新たに保持すべきモデルを学習する学習手段を備えることを特徴とする請求項6乃至10のいずれか1項に記載の情報処理装置。
  12. 前記第2、第3の仮の幾何情報に異常が生じたことを前記検出手段が検出した場合、前記学習手段は、学習に用いるための追加の教師データを取得することを特徴とする請求項11に記載の情報処理装置。
  13. 撮像装置を含む撮像手段からの画像に基づき、当該撮像手段の位置姿勢もしくは撮像した画像が表す幾何情報を求める情報処理装置であって、
    前記撮像装置が撮像しようとする空間に向けて所定のパターンを投影する投影手段と、
    前記撮像手段から、前記投影手段による前記パターンの影響を受けた第1の画像、及び、前記パターンの投影の影響の無い第2の画像を入力する入力手段と、
    与えられた画像に基づいて、当該画像が表す幾何情報を推定するための学習モデルを保持する保持手段と、
    前記第1の画像から、当該第1の画像が表す第1の仮の幾何情報を推定する第1の推定手段と、
    前記第2の画像と前記保持手段に保持された学習モデルに基づいて第2の仮の幾何情報を推定する第2の推定手段と、
    前記第1、第2の仮の幾何情報の少なくとも一つに基づいて、前記撮像手段の位置姿勢情報、当該撮像手段が撮像した画像が表す幾何情報の少なくとも一方の生成する生成手段と、
    を有することを特徴とする情報処理装置。
  14. 前記投影手段は、赤外光のパターンを投影し、
    前記入力手段は、前記撮像手段が撮像した画像における赤外光の成分を前記第1の画像として入力し、可視光の成分を前記第2の画像として入力する
    ことを特徴とする請求項13に記載の情報処理装置。
  15. 前記撮像装置を有することを特徴とする請求項13又は14に記載の情報処理装置。
  16. 更に、前記生成手段が生成した情報に基づき表示情報を生成する表示情報生成手段と、
    前記表示情報を表示する表示手段と
    を有すること特徴とする請求項1乃至15のいずれか1項に記載の情報処理装置。
  17. 撮像視野の少なくとも一部が重複するように配置される第1の撮像装置及び第2の撮像装置を含む撮像手段と、与えられた画像が表す幾何情報を推定するための学習モデルを保持する保持手段とを有する情報処理装置の制御方法であって、
    前記撮像手段から、前記第1の撮像装置が得た第1の画像、及び、前記第2の撮像装置が得た第2の画像を入力する入力工程と、
    前記第1の画像及び前記第2の画像から第1の仮の幾何情報を推定する第1の推定工程と、
    前記第1の画像と前記保持手段に保持された学習モデルに基づいて第2の仮の幾何情報を推定する第2の推定工程と、
    前記第2の画像と前記保持手段に保持された学習モデルに基づいて第3の仮の幾何情報を推定する第2の推定工程と、
    前記第1、第2、第3の仮の幾何情報の少なくとも一つに基づいて、前記撮像手段の位置姿勢情報、当該撮像手段が撮像した画像が表す幾何情報の少なくとも一方を生成する生成工程と、
    を有することを特徴とする情報処理装置の制御方法。
  18. 撮像視野の少なくとも一部が重複するように配置される第1の撮像装置及び第2の撮像装置を含む撮像手段と、与えられた画像が表す幾何情報を推定するための学習モデルを保持する保持手段とを有するコンピュータが実行するプログラムであって、
    前記コンピュータに、
    前記撮像手段から、前記第1の撮像装置が得た第1の画像、及び、前記第2の撮像装置が得た第2の画像を入力する入力工程と、
    前記第1の画像及び前記第2の画像から第1の仮の幾何情報を推定する第1の推定工程と、
    前記第1の画像と前記保持手段に保持された学習モデルに基づいて第2の仮の幾何情報を推定する第2の推定工程と、
    前記第2の画像と前記保持手段に保持された学習モデルに基づいて第3の仮の幾何情報を推定する第2の推定工程と、
    前記第1、第2、第3の仮の幾何情報の少なくとも一つに基づいて、前記撮像手段の位置姿勢情報、当該撮像手段が撮像した画像が表す幾何情報の少なくとも一方を生成する生成工程
    を実行させるためのプログラム。
  19. 請求項1乃至16のいずれか1項に記載の情報処理装置と、
    前記情報処理装置における前記生成手段が生成した情報に基づいて運転を制御する運転制御手段と、
    当該運転制御手段によって動作するアクチュエータ部とを有する
    ことを特徴とする運転制御システム。
JP2018004469A 2018-01-15 2018-01-15 情報処理装置及びその制御方法及びプログラム、並びに、運転制御システム Active JP7149707B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018004469A JP7149707B2 (ja) 2018-01-15 2018-01-15 情報処理装置及びその制御方法及びプログラム、並びに、運転制御システム
PCT/JP2018/041667 WO2019138677A1 (ja) 2018-01-15 2018-11-09 情報処理装置及びその制御方法及びコンピュータ可読記憶媒体、並びに、運転制御システム
US16/921,389 US11393123B2 (en) 2018-01-15 2020-07-06 Information processing device, control method therefor, non-transitory computer-readable storage medium, and driving control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018004469A JP7149707B2 (ja) 2018-01-15 2018-01-15 情報処理装置及びその制御方法及びプログラム、並びに、運転制御システム

Publications (3)

Publication Number Publication Date
JP2019125112A true JP2019125112A (ja) 2019-07-25
JP2019125112A5 JP2019125112A5 (ja) 2021-01-28
JP7149707B2 JP7149707B2 (ja) 2022-10-07

Family

ID=67218581

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018004469A Active JP7149707B2 (ja) 2018-01-15 2018-01-15 情報処理装置及びその制御方法及びプログラム、並びに、運転制御システム

Country Status (3)

Country Link
US (1) US11393123B2 (ja)
JP (1) JP7149707B2 (ja)
WO (1) WO2019138677A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019182412A (ja) * 2018-04-13 2019-10-24 バイドゥ ユーエスエイ エルエルシーBaidu USA LLC 自動運転車に用いられる自動データラベリング
JP2021047479A (ja) * 2019-09-17 2021-03-25 株式会社東芝 推定装置、推定方法及びプログラム
JPWO2021065009A1 (ja) * 2019-10-04 2021-04-08
DE102021118175A1 (de) 2020-07-20 2022-01-20 Toyota Jidosha Kabushiki Kaisha Umgebungserfassungsvorrichtung für ein Fahrzeug
WO2022054422A1 (ja) * 2020-09-10 2022-03-17 株式会社日立製作所 障害物検知装置、障害物検知システム及び障害物検知方法
JP7127901B1 (ja) 2021-05-24 2022-08-30 Necプラットフォームズ株式会社 情報処理端末、制御方法、及びプログラム
JP2022546643A (ja) * 2019-10-04 2022-11-04 三菱電機株式会社 不確実性を有するランドマーク位置推定のための画像処理システムおよび方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11900258B2 (en) * 2018-05-23 2024-02-13 Sony Interactive Entertainment Inc. Learning device, image generating device, learning method, image generating method, and program
EP3954968A4 (en) * 2019-04-09 2023-05-03 Pioneer Corporation POSITION ESTIMATION DEVICE, ESTIMATION DEVICE, CONTROL METHOD, PROGRAM AND STORAGE MEDIA
CN113487684A (zh) * 2021-07-23 2021-10-08 浙江华睿科技股份有限公司 一种标定参数确定方法、装置、存储介质及电子装置
WO2023007559A1 (ja) * 2021-07-26 2023-02-02 日本電信電話株式会社 点群データを生成する装置、方法及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012058188A (ja) * 2010-09-13 2012-03-22 Ricoh Co Ltd 校正装置、距離計測システム、校正方法および校正プログラム
JP2013142991A (ja) * 2012-01-10 2013-07-22 Nippon Telegr & Teleph Corp <Ntt> 物体領域検出装置、方法、及びプログラム
JP2015203680A (ja) * 2014-04-16 2015-11-16 キヤノン株式会社 情報処理装置、方法、プログラム
JP2017027520A (ja) * 2015-07-27 2017-02-02 キヤノン株式会社 3dデータ生成装置及び方法、プログラム、記憶媒体
WO2017213052A1 (ja) * 2016-06-08 2017-12-14 パナソニックIpマネジメント株式会社 測距システム及び測距方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3436074B2 (ja) * 1997-06-10 2003-08-11 トヨタ自動車株式会社 車載ステレオカメラ
JP4985166B2 (ja) 2007-07-12 2012-07-25 トヨタ自動車株式会社 自己位置推定装置
DE102009049849B4 (de) 2009-10-19 2020-09-24 Apple Inc. Verfahren zur Bestimmung der Pose einer Kamera, Verfahren zur Erkennung eines Objekts einer realen Umgebung und Verfahren zur Erstellung eines Datenmodells
JP5496008B2 (ja) * 2010-08-06 2014-05-21 キヤノン株式会社 位置姿勢計測装置、位置姿勢計測方法、およびプログラム
JP5644468B2 (ja) * 2010-12-20 2014-12-24 株式会社ニコン 撮像装置および撮像装置の制御プログラム
US9254846B2 (en) 2013-05-03 2016-02-09 Google Inc. Predictive reasoning for controlling speed of a vehicle
WO2016084926A1 (ja) * 2014-11-28 2016-06-02 日立マクセル株式会社 撮像システム
JP6747044B2 (ja) * 2016-05-11 2020-08-26 株式会社豊田中央研究所 走行経路生成装置、モデル学習装置、及びプログラム
US9940729B1 (en) * 2016-11-18 2018-04-10 Here Global B.V. Detection of invariant features for localization
US10957068B2 (en) * 2017-01-06 2021-03-23 Canon Kabushiki Kaisha Information processing apparatus and method of controlling the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012058188A (ja) * 2010-09-13 2012-03-22 Ricoh Co Ltd 校正装置、距離計測システム、校正方法および校正プログラム
JP2013142991A (ja) * 2012-01-10 2013-07-22 Nippon Telegr & Teleph Corp <Ntt> 物体領域検出装置、方法、及びプログラム
JP2015203680A (ja) * 2014-04-16 2015-11-16 キヤノン株式会社 情報処理装置、方法、プログラム
JP2017027520A (ja) * 2015-07-27 2017-02-02 キヤノン株式会社 3dデータ生成装置及び方法、プログラム、記憶媒体
WO2017213052A1 (ja) * 2016-06-08 2017-12-14 パナソニックIpマネジメント株式会社 測距システム及び測距方法

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10816984B2 (en) 2018-04-13 2020-10-27 Baidu Usa Llc Automatic data labelling for autonomous driving vehicles
JP2019182412A (ja) * 2018-04-13 2019-10-24 バイドゥ ユーエスエイ エルエルシーBaidu USA LLC 自動運転車に用いられる自動データラベリング
JP7249919B2 (ja) 2019-09-17 2023-03-31 株式会社東芝 推定装置、推定方法及びプログラム
JP2021047479A (ja) * 2019-09-17 2021-03-25 株式会社東芝 推定装置、推定方法及びプログラム
JP7264268B2 (ja) 2019-10-04 2023-04-25 日本電気株式会社 表面性状推定システム
JP2022546643A (ja) * 2019-10-04 2022-11-04 三菱電機株式会社 不確実性を有するランドマーク位置推定のための画像処理システムおよび方法
WO2021065009A1 (ja) * 2019-10-04 2021-04-08 日本電気株式会社 表面性状推定システム
JPWO2021065009A1 (ja) * 2019-10-04 2021-04-08
JP7345664B2 (ja) 2019-10-04 2023-09-15 三菱電機株式会社 不確実性を有するランドマーク位置推定のための画像処理システムおよび方法
DE102021118175A1 (de) 2020-07-20 2022-01-20 Toyota Jidosha Kabushiki Kaisha Umgebungserfassungsvorrichtung für ein Fahrzeug
JP2022020511A (ja) * 2020-07-20 2022-02-01 トヨタ自動車株式会社 車両の周辺検知装置
JP7298562B2 (ja) 2020-07-20 2023-06-27 トヨタ自動車株式会社 車両の周辺検知装置
WO2022054422A1 (ja) * 2020-09-10 2022-03-17 株式会社日立製作所 障害物検知装置、障害物検知システム及び障害物検知方法
JP7389729B2 (ja) 2020-09-10 2023-11-30 株式会社日立製作所 障害物検知装置、障害物検知システム及び障害物検知方法
JP7127901B1 (ja) 2021-05-24 2022-08-30 Necプラットフォームズ株式会社 情報処理端末、制御方法、及びプログラム
JP2022179960A (ja) * 2021-05-24 2022-12-06 Necプラットフォームズ株式会社 情報処理端末、制御方法、及びプログラム

Also Published As

Publication number Publication date
WO2019138677A1 (ja) 2019-07-18
US11393123B2 (en) 2022-07-19
US20200334855A1 (en) 2020-10-22
JP7149707B2 (ja) 2022-10-07

Similar Documents

Publication Publication Date Title
WO2019138677A1 (ja) 情報処理装置及びその制御方法及びコンピュータ可読記憶媒体、並びに、運転制御システム
JP6586532B2 (ja) ロボットの把持のための深層機械学習方法および装置
WO2019149061A1 (en) Gesture-and gaze-based visual data acquisition system
US10706331B2 (en) Task execution system, task execution method, training apparatus, and training method
Rambach et al. Learning to fuse: A deep learning approach to visual-inertial camera pose estimation
WO2019138678A1 (ja) 情報処理装置及びその制御方法及びプログラム、並びに、車両の運転支援システム
US9330472B2 (en) System and method for distorted camera image correction
KR20200091298A (ko) 핸드 아이 캘리브레이션 방법 및 시스템
TWI756844B (zh) 自走車導航裝置及其方法
Morales et al. Image generation for efficient neural network training in autonomous drone racing
US20200159229A1 (en) System and method for creating a single perspective synthesized image
CN110622210A (zh) 用于处理360度图像的方法和装置
CN113165178A (zh) 使用高级策略模型和经训练的低级策略模型进行机器人导航
US11559888B2 (en) Annotation device
EP4301557A1 (en) System(s) and method(s) of using imitation learning in training and refining robotic control policies
JP7358108B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP7223587B2 (ja) 物体運動推定方法及び物体運動推定装置
JP7095559B2 (ja) 区画線検出装置及び区画線検出方法
JP6770488B2 (ja) 注視対象物推定装置、注視対象物推定方法、およびプログラム
JP2021109291A (ja) ロボット制御装置
JP2021099384A (ja) 情報処理装置、情報処理方法およびプログラム
JP2021099383A (ja) 情報処理装置、情報処理方法およびプログラム
US20240013433A1 (en) Information processing device, information processing method, and storage medium
JP2024062773A (ja) 情報処理装置、地図作成システム、移動体システム、情報処理方法、及びコンピュータプログラム
Müller et al. OpenBot-Fleet: A System for Collective Learning with Real Robots

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201214

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201214

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220411

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220829

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220927

R151 Written notification of patent or utility model registration

Ref document number: 7149707

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151