IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ パナソニックオートモーティブシステムズ株式会社の特許一覧

<>
  • 特開-情報処理装置および情報処理方法 図1
  • 特開-情報処理装置および情報処理方法 図2
  • 特開-情報処理装置および情報処理方法 図3
  • 特開-情報処理装置および情報処理方法 図4
  • 特開-情報処理装置および情報処理方法 図5
  • 特開-情報処理装置および情報処理方法 図6
  • 特開-情報処理装置および情報処理方法 図7
  • 特開-情報処理装置および情報処理方法 図8
  • 特開-情報処理装置および情報処理方法 図9
  • 特開-情報処理装置および情報処理方法 図10
  • 特開-情報処理装置および情報処理方法 図11
  • 特開-情報処理装置および情報処理方法 図12
  • 特開-情報処理装置および情報処理方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024096168
(43)【公開日】2024-07-12
(54)【発明の名称】情報処理装置および情報処理方法
(51)【国際特許分類】
   G01C 21/30 20060101AFI20240705BHJP
   G08G 1/16 20060101ALI20240705BHJP
【FI】
G01C21/30
G08G1/16 A
【審査請求】有
【請求項の数】26
【出願形態】OL
(21)【出願番号】P 2024067627
(22)【出願日】2024-04-18
(62)【分割の表示】P 2020015870の分割
【原出願日】2020-01-31
(71)【出願人】
【識別番号】322003857
【氏名又は名称】パナソニックオートモーティブシステムズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】徳弘 崇文
(57)【要約】
【課題】教師走行を行った場所で自動走行できない可能性が高いことを、自動走行を行うことなくユーザが確認することができる。
【解決手段】本開示の情報処理装置は、移動体の周辺を撮影した情報である画像情報を受け取り、受け取った画像情報から得られる自己位置推定に用いる情報を抽出する抽出部と、走行経路において、抽出部により抽出された自己位置推定に用いる情報の量が所定値に対して不足している場合に、自己位置推定に用いる情報の量が所定値に対して不足していない場合と異なる指示情報を出力部に出力する出力制御部と、を備え、教師走行の開始位置は自動走行の開始位置であり、教師走行の開始位置は自動走行におけるユーザの降車位置であり、出力制御部は、自己位置推定に用いる情報の量が所定値に対して不足していない場合、ユーザに教師走行の正常終了を報知し、指示情報は、走行経路データに基づく自動走行を行うよりも前に出力される。
【選択図】図2
【特許請求の範囲】
【請求項1】
ユーザが手動で車両を教師走行した際の走行経路を示す走行経路データに基づき、自動走行を行う情報処理装置において、
前記教師走行の際に、移動体の周辺を撮影した情報である画像情報を受け取り、受け取った前記画像情報から得られる自己位置推定に用いる情報を抽出する抽出部と、
前記走行経路において、前記抽出部により抽出された前記自己位置推定に用いる情報の量が所定値に対して不足している場合に、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合と異なる指示情報を出力部に出力する出力制御部と、
を備え、
前記教師走行の開始位置は前記自動走行の開始位置であり、
前記教師走行の開始位置は前記自動走行における前記ユーザの降車位置であり、
前記出力制御部は、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合、前記ユーザに教師走行の正常終了を報知し、
前記指示情報は、前記走行経路データに基づく前記自動走行を行うよりも前に出力される、
情報処理装置。
【請求項2】
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足している場合に、前記自己位置推定に用いる情報の量が前記所定値に対して不足していることを示す情報である、
請求項1に記載の情報処理装置。
【請求項3】
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合に、前記自己位置推定に用いる情報の量が前記所定値に対して不足していないことを示す情報である、
請求項1に記載の情報処理装置。
【請求項4】
抽出された前記自己位置推定に用いられる情報から地図データを作成する作成部をさらに備え、
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足している場合に、前記地図データのうち前記自己位置推定に用いる情報の量が前記所定値に対して不足している箇所を示す情報である、
請求項1または請求項2に記載の情報処理装置。
【請求項5】
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足している箇所に対応して、前記自己位置推定に用いる情報の量を多く含む物体を用いて、前記自己位置推定に用いる情報を前記地図データに追加するように前記物体を設置する場所を報知する情報である、
請求項4に記載の情報処理装置。
【請求項6】
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足している箇所に対応して、位置マーカなどの予め記憶されたランドマークを用いて、前記自己位置推定に用いる情報を前記地図データに追加するように前記ランドマークを設置する場所を報知する情報である、
請求項4または請求項5に記載の情報処理装置。
【請求項7】
前記出力制御部は、
前記自己位置推定に用いる情報の量が前記所定値に対して不足している場合、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合と異なる情報を示す指示音声を、前記指示情報として出力する、
請求項1または請求項2に記載の情報処理装置。
【請求項8】
前記出力制御部は、
前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合、前記自己位置推定に用いる情報の量が前記所定値に対して不足していないことを示す指示音声を、前記指示情報として出力する、
請求項3に記載の情報処理装置。
【請求項9】
前記出力制御部は、
前記自己位置推定に用いる情報の量が前記所定値に対して不足している場合、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合と異なる情報を示す指示画像を、前記指示情報として出力する、
請求項1,2,4,5,6,7の何れか1項に記載の情報処理装置。
【請求項10】
前記出力制御部は、
前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合、前記自己位置推定に用いる情報の量が前記所定値に対して不足していないことを示す指示画像を、前記指示情報として出力する、
請求項3または請求項8に記載の情報処理装置。
【請求項11】
前記自己位置推定に用いる情報の量は、特徴点の数で表される、
請求項1乃至請求項10の何れか1項に記載の情報処理装置。
【請求項12】
前記自己位置推定に用いる情報の量は、特徴点の数で表される、
請求項11に記載の情報処理装置。
【請求項13】
前記自己位置推定に用いる情報は、連続する前記画像情報から抽出された同一の特徴点を追跡する処理であるトラッキング処理により得られる情報であり、
前記自己位置推定に用いる情報の量は、前記トラッキング処理の結果、トラッキングされた特徴点の数で表される、
請求項1乃至請求項12の何れか1項に記載の情報処理装置。
【請求項14】
ユーザが手動で車両を教師走行した際の走行経路を示す走行経路データに基づき、自動走行を行う情報処理方法において、
前記教師走行の際に移動体の周辺を撮影した情報である画像情報を受け取り、受け取った前記画像情報から得られる自己位置推定に用いる情報を抽出するステップと、
前記走行経路において、抽出された、移動体の周辺の自己位置推定に用いる情報の量が所定値に対して不足している場合に、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合と異なる指示情報を、出力制御部が出力部に出力するステップと、
を含み、
前記教師走行の開始位置は前記自動走行の開始位置であり、
前記教師走行の開始位置は前記自動走行における前記ユーザの降車位置であり、
前記出力制御部は、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合、前記ユーザに教師走行の正常終了を報知し、
前記指示情報は、前記走行経路データに基づく前記自動走行を行うよりも前に出力される、
情報処理方法。
【請求項15】
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足している場合に、前記自己位置推定に用いる情報の量が前記所定値に対して不足していることを示す情報である、
請求項14に記載の情報処理方法。
【請求項16】
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合に、前記自己位置推定に用いる情報の量が前記所定値に対して不足していないことを示す情報である、
請求項14に記載の情報処理方法。
【請求項17】
抽出された前記自己位置推定に用いられる情報から地図データを作成するステップをさらに含み、
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足している場合に、前記地図データのうち前記自己位置推定に用いる情報の量が前記所定値に対して不足している箇所を示す情報である、
請求項14または請求項15に記載の情報処理方法。
【請求項18】
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足している箇所に対応して、前記自己位置推定に用いる情報の量を多く含む物体を用いて、前記自己位置推定に用いる情報を前記地図データに追加するように前記物体を設置する場所を報知する情報である、
請求項17に記載の情報処理方法。
【請求項19】
前記指示情報は、前記自己位置推定に用いる情報の量が前記所定値に対して不足している箇所に対応して、位置マーカなどの予め記憶されたランドマークを用いて、前記自己位置推定に用いる情報を前記地図データに追加するように前記ランドマークを設置する場所を報知する情報である、
請求項17または請求項18に記載の情報処理方法。
【請求項20】
前記出力制御部が前記指示情報を前記出力部に出力するステップでは、
前記自己位置推定に用いる情報の量が前記所定値に対して不足している場合、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合と異なる情報を示す指示音声を、前記指示情報として出力する、
請求項14または請求項15に記載の情報処理方法。
【請求項21】
前記出力制御部が前記指示情報を前記出力部に出力するステップでは、
前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合、前記自己位置推定に用いる情報の量が前記所定値に対して不足していないことを示す指示音声を、前記指示情報として出力する、
請求項16に記載の情報処理方法。
【請求項22】
前記出力制御部が前記指示情報を前記出力部に出力するステップでは、
前記自己位置推定に用いる情報の量が前記所定値に対して不足している場合、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合と異なる情報を示す指示画像を、前記指示情報として出力する、
請求項14,15,17,18,19,20の何れか1項に記載の情報処理方法。
【請求項23】
前記出力制御部が前記指示情報を前記出力部に出力するステップでは、
前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合、前記自己位置推定に用いる情報の量が前記所定値に対して不足していないことを示す指示画像を、前記指示情報として出力する、
請求項16または請求項21に記載の情報処理方法。
【請求項24】
前記自己位置推定に用いる情報の量は、特徴点の数で表される、
請求項14乃至請求項23の何れか1項に記載の情報処理方法。
【請求項25】
前記自己位置推定に用いる情報の量は、特徴点の数で表される、
請求項24に記載の情報処理方法。
【請求項26】
前記自己位置推定に用いる情報は、連続する前記画像情報から抽出された同一の特徴点を追跡する処理であるトラッキング処理により得られる情報であり、
前記自己位置推定に用いる情報の量は、前記トラッキング処理の結果、トラッキングされた特徴点の数で表される、
請求項14乃至請求項25の何れか1項に記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置および情報処理方法に関する。
【背景技術】
【0002】
従来、車両が走行する周囲に存在する物体の特徴に基づき地図データを作成する技術が開示されている。そして、作成された地図データと、車両に搭載された撮影装置により取得された画像とを比較することにより、当該車両が地図データのうちのどこに位置するかを推定する処理である自己位置推定を実行し、走行する経路に沿って自動走行を行う技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2019-133318号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、一般に、このような技術では、自動走行を行う場所で予めユーザが手動で車両を走行(以下、教師走行と称する。)し、当該の場所で自動走行を行うために必要となる自己位置推定に用いる地図データおよび走行経路を示す走行経路データを作成し、それ以降は作成された地図データおよび走行経路データを用いることで、自動走行を実現する。
【0005】
自動走行の際に、自己位置推定に用いられる地図データは、実景中に存在する物体の特徴点の三次元位置を記憶したデータである。自動走行時に、車両により撮影された画像から特徴点を抽出し、その特徴点が地図データに含まれる何れの特徴点であるかを照合する。このとき、地図データと一致する特徴点の数が所定数以上であれば、車両の自己位置を推定できたと判定する。
【0006】
しかし、凹凸、色の変化、の何れもない物体に囲まれた場所等、車両周囲の環境の特徴が十分でない場所で、その周囲の地図データを作成するために車両を走行させる教師走行を行った場合、作成された地図データに含まれる特徴点の数が自己位置推定するために必要な所定数に対して不足するため、自己位置推定ができない可能性が高い。しかしながら、従来技術では、実際に自動走行を行うまで、教師走行を行った場所で自動走行できない可能性が高いことをユーザが確認することができなかった。
【0007】
本開示が解決しようとする課題は、教師走行を行った場所で自動走行できない可能性が高いことを、自動走行を行うことなくユーザが確認することができる、情報処理装置および情報処理方法を提供することである。
【課題を解決するための手段】
【0008】
本開示の情報処理装置は、ユーザが手動で車両を教師走行した際の走行経路を示す走行経路データに基づき、自動走行を行う情報処理装置において、前記教師走行の際に、移動体の周辺を撮影した情報である画像情報を受け取り、受け取った前記画像情報から得られる自己位置推定に用いる情報を抽出する抽出部と、前記走行経路において、前記抽出部により抽出された前記自己位置推定に用いる情報の量が所定値に対して不足している場合に、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合と異なる指示情報を出力部に出力する出力制御部と、を備え、前記教師走行の開始位置は前記自動走行の開始位置であり、前記教師走行の開始位置は前記自動走行における前記ユーザの降車位置であり、前記出力制御部は、前記自己位置推定に用いる情報の量が前記所定値に対して不足していない場合、前記ユーザに教師走行の正常終了を報知し、前記指示情報は、前記走行経路データに基づく前記自動走行を行うよりも前に出力される。
【発明の効果】
【0009】
本開示に係る情報処理装置および情報処理方法によれば、教師走行した場所で自動走行できない可能性が高いことを、自動走行を行うことなくユーザが確認することができる。
【図面の簡単な説明】
【0010】
図1図1は、実施形態1に係る、移動体の一例を示す図である。
図2図2は、実施形態1に係る、撮影装置の設置位置の一例を示す模式図である。
図3図3は、実施形態1に係る、情報処理装置のハードウェア構成図の一例を示す図である。
図4図4は、実施形態1に係る、移動体の機能的構成の一例を示すブロック図である。
図5図5は、実施形態1に係る、移動体の適用場面の一例を示す模式図である。
図6図6は、実施形態1に係る、指示画像の一例を示す模式図である。
図7図7は、実施形態1に係る、教師走行の情報処理の手順の一例を示すフローチャートである。
図8図8は、実施形態1に係る、自動走行の情報処理の手順の一例を示すフローチャートである。
図9図9は、変形例2に係る、教師走行の情報処理の手順の一例を示すフローチャートである。
図10図10は、変形例2に係る、自動走行の情報処理の手順の一例を示すフローチャートである。
図11図11は、実施形態2に係る、移動体の機能的構成の一例を示すブロック図である。
図12図12は、実施形態2に係る、教師走行の情報処理の手順の一例を示すフローチャートである。
図13図13は、実施形態2に係る、自動走行の情報処理の手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
<実施形態1>
以下に添付図面を参照して、本開示に係る情報処理装置、情報処理方法、および移動体の実施形態について説明する。
【0012】
図1は、本実施の形態の移動体10の一例を示す図である。
【0013】
移動体10は、情報処理装置20と、出力部10Aと、入力部10Bと、内界センサ10Cと、撮影装置10Dと、駆動制御部10Fと、駆動部10Gと、を備える。
【0014】
情報処理装置20は、例えば、専用または汎用コンピュータである。本実施の形態では、情報処理装置20が、移動体10に搭載された形態を一例として説明する。
【0015】
移動体10は、移動可能な物である。本実施の形態では、移動体10は、ユーザが乗車可能な物である。移動体10は、例えば、車両である。車両は、二輪自動車、三輪自動車、または、四輪自動車などである。また、移動体10は、例えば、人による運転操作を介して進行する移動体、または、人による運転操作を介さずに自動的に進行(自律進行)可能な移動体である。本実施の形態では、移動体10が、車両である場合を一例として説明する。
【0016】
出力部10Aは、情報を出力する。本実施の形態では、出力部10Aは、情報処理装置20で生成された指示情報などの情報を出力する。指示情報の詳細は後述する。
【0017】
出力部10Aは、情報を表示する表示機能を備える。なお、出力部10Aは、情報を外部装置などへ送信する通信機能、音を出力する音出力機能、光を点灯または点滅させる機能、などを更に備えていてもよい。例えば、出力部10Aは、表示部10Kと、通信部10H、スピーカ10I、および照明部10Jの少なくとも1つと、を含む。本実施の形態では、出力部10Aは、通信部10H、スピーカ10I、照明部10J、表示部10Kを含む場合を、一例として説明する。
【0018】
通信部10Hは、情報を他の装置へ送信する。例えば、通信部10Hは、公知の通信回線を介して情報を他の装置へ送信する。スピーカ10Iは、音を出力する。照明部10Jは、光を点灯または点滅させるライトである。表示部10Kは、情報を表示する。表示部10Kは、例えば、公知の有機EL(Electro Luminescence)ディスプレイ、液晶ディスプレイ(Liquid Crystal Display)、または投影装置などである。
【0019】
出力部10Aの設置位置は、移動体10に乗車したユーザが出力部10Aから出力される情報を確認可能な位置であればよい。
【0020】
例えば、移動体10は、複数の表示部を備える(以下、総称として「表示部10K」と称する。)。これらの複数の表示部10Kは、移動体10の車室内における、互いに異なる位置に配置されている。なお、移動体10に設けられた表示部10Kの数は、1つでもよく、複数に限定されない。本実施の形態では、移動体10は、1つの表示部10Kを備える形態を一例として説明する。
【0021】
詳細には、表示部10Kは、移動体10に乗車したユーザUが表示面を視認可能となるように、表示面の向きが予め調整されている。
【0022】
図1に戻り説明を続ける。入力部10Bは、ユーザUからの指示または情報の入力を受け付ける。入力部10Bは、例えば、ユーザUの操作入力により入力を受付ける指示入力デバイス、および、音声の入力を受付けるマイク、の少なくとも一方である。指示入力デバイスは、例えば、ボタン、マウスまたはトラックボール等のポインティングデバイス、または、キーボードなどである。指示入力デバイスは、表示部10Kと一体的に設けられたタッチパネルにおける入力機能であってもよい。
【0023】
内界センサ10Cは、移動体10自体の情報を観測するセンサである。内界センサ10Cは、移動体10の位置、移動体10の速度、または移動体10の加速度などを検出する。
【0024】
内界センサ10Cは、例えば、慣性計測装置(IMU:Inertial Measurement Unit)、速度センサ、またはGPS(Global Positioning System)等である。
【0025】
撮影装置10Dは、移動体10の周辺を観測するセンサである。撮影装置10Dは、移動体10に搭載されていてもよいし、該移動体10の外部に搭載されていてもよい。移動体10の外部とは、例えば、他の移動体または外部装置などを示す。
【0026】
移動体10の周辺とは、移動体10から予め定めた範囲内の領域である。この範囲は、撮影装置10Dの観測可能な範囲である。この範囲は、予め設定すればよい。
【0027】
撮影装置10Dは、移動体10の周辺を観測し、周辺情報を取得する。周辺情報は、移動体10の周辺の画像、および、移動体10の周辺の物体と移動体10との距離および方向を示す情報、の少なくとも一方を含む。
【0028】
撮影装置10Dは、撮影によって撮影画像データ(以下、撮影画像と称する。)を得る。この撮影装置は、デジタルカメラ、ステレオカメラ、などである。撮影画像は、画素ごとに画素値を規定したデジタル画像データである。
【0029】
本実施の形態では、撮影装置10Dが取得する周辺情報は、移動体10の周辺の撮影画像である場合を一例として説明する。以下、移動体10の周辺の撮影画像を、周辺画像と称して説明する。
【0030】
撮影装置10Dは、移動体10の周囲を撮影可能となるように、設置位置および画角が予め調整されている。本実施の形態では、移動体10は、撮影方向の異なる複数の撮影装置10Dを備える。
【0031】
図2は、撮影装置10Dの設置位置の一例を示す模式図である。例えば、移動体10は、4つの撮影装置10Dを備える。なお、移動体10に設けられる撮影装置10Dの数は4つに限定されない。
【0032】
なお、撮影装置10Dは、水平面における、移動体10を中心とした略全領域(例えば、360°)の方向の撮影画像を取得可能となるように、設置位置および数が調整されていればよく、図2に示す設置位置および数に限定されない。
【0033】
図1に戻り説明を続ける。駆動部10Gは、移動体10に搭載された駆動デバイスである。駆動部10Gは、例えば、エンジン、モータ、車輪、などである。
【0034】
駆動制御部10Fは、移動体10を自動的に運転するために、駆動部10Gを制御する。駆動制御部10Fは、内界センサ10Cまたは撮影装置10Dから得られる情報、または情報処理装置20から受付けた情報などに基づいて、駆動部10Gを制御する。駆動制御部10Fの制御によって、移動体10のアクセル量、ブレーキ量、操舵角などが制御される。例えば、駆動制御部10Fは、情報処理装置20から受付けた情報によって示される経路に移動体10を進入させて、停車または走行するように、移動体10の制御を行う。
【0035】
次に、情報処理装置20のハードウェア構成を説明する。図3は、情報処理装置20のハードウェア構成図の一例である。
【0036】
情報処理装置20は、CPU(Central Processing Unit)11A、ROM(Read Only Memory)11B、RAM(Random Access Memory)11C、およびI/F11D等がバス11Eにより相互に接続されており、通常のコンピュータを利用したハードウェア構成となっている。
【0037】
CPU11Aは、本実施の形態の情報処理装置20を制御する演算装置である。ROM11Bは、CPU11Aによる処理を実現するプログラム等を記憶する。RAM11Cは、CPU11Aによる処理に必要なデータを記憶する。I/F11Dは、データを送受信するためのインターフェースである。
【0038】
本実施の形態の情報処理装置20で実行される情報処理を実行するためのプログラムは、ROM11B等に予め組み込んで提供される。なお、本実施の形態の情報処理装置20で実行されるプログラムは、情報処理装置20にインストール可能な形式または実行可能な形式のファイルでコンピュータで読み取り可能な記憶媒体(例えば、フラッシュメモリ)に記憶されて提供するように構成してもよい。
【0039】
次に、移動体10の機能的構成を説明する。図4は、移動体10の機能的構成の一例を示すブロック図である。
【0040】
移動体10は、情報処理装置20と、出力部10Aと、入力部10Bと、内界センサ10Cと、撮影装置10Dと、駆動制御部10Fと、駆動部10Gと、を備える。
【0041】
情報処理装置20、出力部10A、入力部10B、内界センサ10C、撮影装置10D、および駆動制御部10Fは、バス10Lを介してデータまたは信号を授受可能に接続されている。駆動制御部10Fは、駆動部10Gとデータまたは信号を授受可能に接続されている。
【0042】
情報処理装置20は、記憶部20Bと、処理部20Aと、を有する。処理部20Aおよび記憶部20Bは、バス10Lを介してデータまたは信号を授受可能に接続されている。また、出力部10A、入力部10B、内界センサ10C、撮影装置10D、および駆動制御部10Fと、処理部20Aとは、バス10Lを介してデータまたは信号を授受可能に接続されている。
【0043】
なお、記憶部20B、出力部10A(通信部10H、スピーカ10I、照明部10J、表示部10K)、入力部10B、内界センサ10C、撮影装置10D、および駆動制御部10Fの少なくとも1つは、有線または無線で処理部20Aに接続すればよい。また、記憶部20B、出力部10A(通信部10H、スピーカ10I、照明部10J、表示部10K)、入力部10B、内界センサ10C、撮影装置10D、および駆動制御部10Fの少なくとも1つと、処理部20Aとを、ネットワークを介して接続してもよい。
【0044】
記憶部20Bは、データを記憶する。記憶部20Bは、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、ハードディスク、光ディスク等である。なお、記憶部20Bは、情報処理装置20の外部に設けられた記憶装置であってもよい。また、記憶部20Bは、プログラムまたは情報を、LAN(Local Area Network)またはインターネットなどを介してダウンロードして記憶または一時記憶したものであってもよい。また、記憶部20Bを、複数の記憶媒体から構成してもよい。
【0045】
移動体は、ユーザの指示に応じて、複数の走行モードのうちの何れかの走行モードで走行する。走行モードは、移動体の周辺の地図データを作成するためにユーザが教師走行を実施するモードである教師走行モードと、教師走行を行った場所で移動体を自動走行させるモードである自動走行モードとを含む。
【0046】
処理部20Aは、教師走行モードにおける処理を行う教師走行処理部20A1と、自動走行モードにおける処理を行う自動走行処理部20A2と、を含む。教師走行処理部20A1は、教師走行モードを実行する処理部20Aである。自動走行処理部20A2は、自動走行モードを実行する処理部20Aである。
【0047】
教師走行処理部20A1は、取得部20Cと、抽出部20Dと、作成部20Eと、判定部20Fと、特定部20Gと、出力制御部20Hと、受付部20Iと、を含む。
【0048】
取得部20Cと、抽出部20Dと、作成部20Eと、判定部20Fと、特定部20Gと、出力制御部20Hおよび受付部20Iは、例えば、1または複数のプロセッサにより実現される。例えば上記各部は、CPUなどのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上記各部は、専用のIC(Integrated Circuit)などのプロセッサ、すなわちハードウェアにより実現してもよい。上記各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、複数のプロセッサの各々は、複数の各部のうち1つを実現してもよいし、複数の各部のうち2以上を実現してもよい。
【0049】
プロセッサは、記憶部20Bに保存されたプログラムを読み出し実行することで、上記複数の各部を実現する。なお、記憶部20Bにプログラムを保存する代わりに、プロセッサの回路内にプログラムを直接組み込むよう構成してもよい。この場合、プロセッサは回路内に組み込まれたプログラムを読み出し実行することで、上記複数の各部を実現する。
【0050】
取得部20Cは、撮影装置10Dから周辺情報を取得する。上述したように、本実施の形態では、撮影装置10Dは、周辺情報として、移動体10の周辺の撮影画像である周辺画像40を得る。このため、取得部20Cは、撮影装置10Dから移動体10の周辺画像40を取得する。
【0051】
撮影装置10Dは、時系列に沿って所定のタイミングごとに周辺画像40を得る。そして、撮影装置10Dは、周辺画像40を取得するごとに、取得した周辺画像40を教師走行処理部20A1へ出力する。このため、教師走行処理部20A1の取得部20Cは、撮影装置10Dから順次、周辺画像40を取得する。
【0052】
抽出部20Dは、取得部20Cが撮影装置10Dから取得した周辺画像40を解析することで、移動体10の走行した経路周辺の特徴点を抽出する。
【0053】
抽出部20Dによる特徴点の抽出方法には、公知の方法を用いればよく、抽出方法は限定されない。
【0054】
抽出部20Dは、抽出した特徴点に識別情報を付与し、該識別情報と、実空間における特徴点の位置および範囲を示す情報と、を対応付けて記憶部20Bへ記憶する。抽出部20Dは、内界センサ10Cから取得した移動体10の位置情報などを用いて、実空間における特徴点の位置および範囲を示す情報を抽出すればよい。
【0055】
作成部20Eは、抽出部20Dが抽出した特徴点の位置情報を有する地図データを作成する。
【0056】
作成部20Eによって作成される地図データは、自己位置推定に用いる情報であり、予め広域(移動体10の周囲の領域を含む)で得られた実景中の複数の特徴点各々について、実空間における三次元位置と、地図データ作成時に撮影された画像情報から抽出された特徴点の特徴を示すデータである特徴量と、を関連付けて記憶する。地図データとして記憶される特徴点は、例えば、実景中において目印となり得る物体(例えば、建物、標識、または看板等)の画像情報から特徴的な画像パターンが得られる部分(例えば、コーナー部)である。また、実景中の位置情報として、位置マーカなどの予め記憶されたランドマークが用いられてもよい。なお、地図データの複数の特徴点は、例えば、識別番号によって各別に識別可能に記憶されている。
【0057】
地図データに記憶される特徴点の実空間における三次元位置は、例えば、緯度、経度および高さを基準として、三次元の直交座標系(X、Y、Z)で表されている。なお、特徴点の実空間における三次元位置は、例えば、複数の位置で撮影されたカメラ画像から三角測量の原理による測定や、LIDAR(Light Detection and Ranging)やステレオカメラを用いた測定によって記憶されている。
【0058】
地図データに記憶される特徴点の特徴量としては、画像情報の輝度や濃度の他、SIFT(Scale Invariant Feature Transform)特徴量、またはSURF(Speeded Up Robust Features)特徴量等が用いられる。なお、地図データに記憶される特徴点の特徴量データは、同一の三次元位置の特徴点であっても、当該特徴点を撮影したときの撮影装置の撮影位置や撮影方向ごとに別個に記憶されていてもよい。また、地図データに記憶される特徴点の特徴量データは、当該特徴点を有する物体の画像情報と関連付けて記憶されていてもよい。
【0059】
作成部20Eによる地図データ作成方法には、公知の方法を用いればよく、地図データ作成方法は限定されない。例えば、作成部20Eは、抽出部20Dが抽出した特徴点の位置を示す位置情報を作成することで、特徴点の位置情報を有する地図データを作成する。
【0060】
図5は、本実施の形態の移動体10の適用場面の一例を示す模式図である。例えば、移動体10を地点Aから地点Bまで矢印に沿って自動走行させるために、その経路を学習させることを目的として、ユーザUが移動体10を地点Aから地点Bまで教師走行をしている場面を想定する。地点Aは、例えば、ユーザUが移動体10から降りる位置であり、且つ、移動体10を無人で自動走行させる開始位置である。地点Bは、例えば、移動体10の駐車目標位置である。ドライバU1は、移動体10に乗車したユーザUの一例である。
【0061】
この場合、移動体10に設けられた撮影装置10Dが移動体10の周辺を撮影することで、取得部20Cが該周辺の周辺画像40を取得する。このため、抽出部20Dは、移動体10の周辺の周辺画像40を、取得部20Cから取得する。そして、抽出部20Dは、周辺画像40を解析することで、周辺画像40に含まれる特徴点を抽出する。さらに、作成部20Eは、抽出部20Dが抽出した特徴点の位置情報を有する地図データを作成する。作成部20Eは、作成した地図データを地図データ記憶部20B3に保存する。
【0062】
図4に戻り説明を続ける。判定部20Fは、移動体10が走行した経路を、予め定めた所定条件により一部を抽出し、抽出された経路(以下、「部分経路」と称する。)のそれぞれにおいて、抽出された特徴点の数が自己位置推定するために必要な所定数に対して不足しているか否か判定する。抽出された特徴点の数が所定数より多ければ、自己位置推定が成功する可能性が高い場所であると考えられる。なお、所定条件は、例えば、所定の距離(例えば20cm)を車両が移動すること、もしくは撮影装置10Dにより取得された時間的に連続する画像内に、同一とされる特徴点が所定数以上抽出され続けること、などである。
【0063】
判定部20Fは、部分経路ごとに判定を繰り返し、特徴点の数が所定数に対して不足している箇所を特定する。
【0064】
特定部20Gは、自動走行を行う際に移動体10の位置を特定するために、自己位置推定を実行する。特定部20Gは、作成部20Eによって作成された地図データと、移動体10に搭載された撮影装置10Dにより取得された画像とを比較する。これにより、特定部20Gは、当該移動体10が作成された地図データのうちのどこに位置するかを特定することができる。
【0065】
次に、出力制御部20Hについて説明する。出力制御部20Hは、情報を出力部10Aへ出力する。本実施の形態では、出力制御部20Hは、指示情報を出力部10Aへ出力する。
【0066】
指示情報は、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、特徴点の数が所定数に対して不足していない場合と異なる情報を示す。なお、指示情報は、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、特徴点の数が所定数に対して不足していることを示す情報であってもよい。また、指示情報は、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、特徴点の数が所定数に対して不足している箇所を示す情報であってもよい。併せて、指示情報は、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、位置情報を地図データに追加するために、特徴量を多く含む物体(以下、特徴物と称する。)、もしくは予め教師走行処理部20A1に記憶されたランドマークである位置マーカを設置する場所を報知する情報であってもよい。特徴物もしくは位置マーカを設置する場所は、特徴物もしくは位置マーカが設置された状態で再度教師走行をした場合に、特徴点の数の不足が解消される可能性が高い場所である。つまり、その場所は、特徴点の数の不足を解消するのに効果的な場所である。
【0067】
本実施の形態では、指示情報は、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、位置情報を地図データに追加するために、特徴物もしくは位置マーカを設置する場所を報知する形態を、一例として説明する。
【0068】
指示情報は、画像によって表される指示画像、音声によって表される指示音声、および、テキストによって表される指示文字、の何れであってもよい。また、これらの組合せであってもよい。なお、指示情報が画像である場合、指示情報を指示画像と称して説明する。
【0069】
図6は、指示画像52の一例を示す模式図である。図6に示すように、指示画像52は移動体10の周辺において、位置情報を地図データに追加するために、特徴物もしくは位置マーカを設置すべき場所を報知する画像である。
【0070】
出力制御部20Hは、作成部20Eが作成した地図データと、判定部20Fが部分経路ごとに特徴点の数が所定数に対して不足しているか否か判定した情報と、特定部20Gが推定した移動体10の位置情報と、を用いて、指示画像52を生成する。
【0071】
例えば、出力制御部20Hは、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、特徴点の数が所定数に対して不足している箇所を示す指示画像52を生成する。詳細には、出力制御部20Hは、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、特徴点の数が所定数に対して不足している箇所について、特徴物もしくは位置マーカを設置すべき場所として、指示画像52を生成する。
【0072】
ここで、移動体10の自己位置を推定するために必要な所定数に対して特徴点の数が不足する部分経路を以下、自動走行不可経路RPと称する。図6に示すように、出力制御部20Hは、自動走行不可経路RPを強調した指示画像52を生成することが好ましい。例えば、自動走行不可経路RPは、自動走行不可経路RPを示す画像である枠線画像、または、自動走行不可経路RPの色をユーザUの注意を喚起する色で示した画像である色画像である。注意を喚起する色は、例えば、黄色または赤色であるが、これらの色に限定されない。指示情報として、画像を用いてユーザに示すことで、自動走行不可経路RPがどこであるかの具体的位置をユーザが知ることができる。
【0073】
そして、出力制御部20Hは、教師走行終了の指示に応じて、生成した指示画像52を、出力部10Aへ出力する。
【0074】
本実施の形態では、出力制御部20Hは、移動体10に設けられた複数の表示部10Kのうちの1つもしくは複数へ指示画像52を表示する。
【0075】
なお、出力制御部20Hは、指示情報として、音声によって表される指示音声を用いる場合に、指示音声をスピーカ10Iから出力すればよい。例えば、出力制御部20Hは、「自動運転が難しいと思われる場所が存在します。教師走行を終了します。」などの指示音声を、スピーカ10Iから出力すればよい。併せて、指示画像の表示も行ってもよい。
【0076】
図4に戻り説明を続ける。次に、受付部20Iについて説明する。受付部20Iは、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、指示画像52における教師走行の再試行の指示の入力を受付ける。
【0077】
例えば、表示部10Kに、図6に示す指示画像52が表示されたと想定する。ユーザUは、指示画像52において、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、特徴点の数が所定数に対して不足している箇所について、特徴物もしくは位置マーカを設置したのちに、教師走行の再試行の指示を入力する。
【0078】
ユーザUは、例えば、入力部10Bを操作することで、指示画像52において教師走行の再試行の指示を入力する。詳細には、入力部10Bがタッチパネルである場合、ユーザUは、このタッチパネル上に表示された再試行ボタンをタッチすることで、教師走行の再試行の指示を入力する。受付部20Iは、ユーザUによって指示された情報を入力部10Bから受付けることで、教師走行の再試行の指示の入力を受付ける。
【0079】
なお、受付部20Iは、ユーザUのジェスチャ、または、ユーザUから発せられた音声を解析することで、教師走行の再試行の指示の入力を受付けてもよい。
【0080】
また、例えば、ユーザUは、教師走行を所望することを示す音声を、発する。この場合、受付部20Iは、入力部10Bとしてのマイクで集音された音声の音声データを、公知の音声解析方法を用いて解析することで、教師走行の再試行の指示の入力を受付ければよい。
【0081】
受付部20Iは、教師走行の再試行の指示に応じて、教師走行の再試行の指示を示す情報を、自動走行処理部20A2へ出力する。
【0082】
自動走行処理部20A2は、記憶部20Bに保存された地図データをもとに自己位置推定を行い、自動走行を行う。
【0083】
記憶部20Bは、教師走行プログラム20B1と、自動走行プログラム20B2と、地図データ記憶部20B3と、を含む。
【0084】
教師走行処理部20A1により教師走行プログラム20B1が読み出されると、教師走行プログラム20B1に基づいて教師走行モードの処理が実行される。自動走行処理部20A2により自動走行プログラム20B2が読み出されると、自動走行プログラム20B2に基づいて自動走行モードの処理が実行される。地図データ記憶部20B3は、作成部20Eにより作成された地図データを保存する。
【0085】
次に、移動体10が実行する実施形態1における教師走行の情報処理の手順の一例を説明する。図7は、移動体10が実行する実施形態1における教師走行の情報処理の手順の一例を示すフローチャートである。
【0086】
まず、取得部20Cが、撮影装置10Dから周辺画像40を取得する(ステップS101)。次に、抽出部20Dが、ステップS101で取得した周辺画像40から、特徴点を抽出する(ステップS103)。つまり、ステップS101で取得した周辺画像40から、自己位置推定に用いる情報を抽出する。
【0087】
ステップS105では、作成部20Eは、ステップS103で抽出した特徴点の位置情報を有する地図データを地図データ記憶部20B3に追加する(ステップS105)。
【0088】
ステップS107では、判定部20Fが、作成された地図データにおいて、予め定めた所定条件により部分経路を抽出する(ステップS107)。なお、所定条件は、例えば、撮影装置10Dにより取得された時間的に連続する画像内に、同一とされる特徴点が所定数以上抽出され続けること、などである。
【0089】
次に、判定部20Fが部分経路ごとに、特徴点の数が所定数に対して不足しているか否か、つまり所定数より少ないか否かを記憶する(ステップS109)。
【0090】
ステップS111では、入力部10Bが、ユーザから教師走行が終了したか否かを判断する(ステップS111)。教師走行が終了した場合(ステップS111:Yes)、ステップS113へ進む。教師走行が終了していない場合(ステップS111:No)、上記ステップS101へ戻る。なお、教師走行終了地点に到達したことを認識する方法には、公知の方法を用いればよく、その方法は限定されない。例えば、入力部10Bを介してユーザから教師走行終了の指示を受け付けることで、教師走行終了地点に到達したことを認識する。または、シフトレバーがパーキングレンジに入ったことによって、教師走行終了地点に到達したことを認識してもよい。
【0091】
次に、判定部20Fが、部分経路ごとに、特徴点の数が自己位置を推定するために必要な所定数に対して不足しているか否かを判断する(ステップS113)。つまり、自己位置推定に用いる情報の量が所定値に対して不足しているか否かを判断する。教師走行した経路のうち各部分経路の何れも特徴点の数が所定数に対して不足していない場合、つまり、所定数より多い場合(ステップS113:No)、ステップS115へ進む。ステップS115では、ユーザに教師走行の正常終了を報知し、本ルーチンを終了する。なお、ユーザに教師走行の終了を報知する際に、自動走行モードでの自動走行が可能であることとともに教師走行の終了を報知してもよい。教師走行した経路のうち抽出された各経路の何れか1つ以上が、特徴点の数が所定数に対して不足している場合、つまり、所定数より少ない場合(ステップS113:Yes)、ステップS117へ進む。
【0092】
抽出された各経路の何れか1つ以上が、特徴点の数が所定数に対して不足している場合、つまり、所定数より少ない場合(ステップS113:Yes)、出力制御部20Hが、指示情報を出力部10Aへ出力する(ステップS117)。指示情報は、例えば、表示部10Kが、指示画像52において自動走行できない可能性が高い箇所があることを報知するための情報である。これにより、ユーザは、この教師走行の後、自動走行できない可能性が高い箇所があることを知ることができる。つまり、ユーザは、自動走行を試行しなくても、自動走行できない可能性が高いことを知ることができる。なお、この指示情報は、音声で報知するようにしてもよい。音声で指示情報を報知する場合、ドライバU1は、表示部10Kを見ることなく、自動走行できない可能性が高いことを知ることができる。これにより、ドライバU1が表示部10K以外の箇所を見ている場合に、自動走行できない可能性が高いことを知ることができる。
【0093】
次に、入力部10Bは、教師走行の再試行の指示を入力されたか否かを判断する(ステップS119)。例えば、入力部10Bは、表示部10Kがタッチパネルである場合はこのタッチパネル上に表示された再試行ボタンであり、ユーザUは、表示部10Kにおいて再試行ボタンをタッチすることで、教師走行の再試行の指示を入力する。教師走行の再試行の指示が入力された場合(ステップS119:Yes)、上記ステップS101へ戻る。教師走行の再試行の指示が入力されなかった場合(ステップS119:No)、ステップS121へ進む。
【0094】
ステップS121では、指示情報を報知してから(ステップS117)、所定時間が経過したか否かを判断する。所定時間は、例えば、5分間である。所定時間が経過したと判断した場合(ステップS121:Yes)、ステップS123へ進む。ステップS123では、ユーザに教師走行が正常に終わらなかったことを示す異常終了を報知し、本ルーチンを終了する。なお、ユーザに教師走行の終了を報知する際は、ステップS115とステップS123とで報知の仕方が異なるようにすればよい。所定時間が経過していないと判断した場合(ステップS121:No)、上記ステップS119へ戻る。
【0095】
次に、移動体10が実行する実施形態1における自動走行の情報処理の手順の一例を説明する。図8は、移動体10が実行する実施形態1における自動走行の情報処理の手順の一例を示すフローチャートである。
【0096】
まず、自動走行処理部20A2は、地図データ記憶部20B3に保存された地図データと撮影された画像とをもとに初期位置推定を行う(ステップS200)。推定された初期位置を自己位置とする(ステップS201)。次に、自動走行処理部20A2は、ステップS201で推定した自己位置から、自動走行を行う(ステップS203)。ステップS205では、自動走行処理部20A2が、移動体10が目的地に到着したか否かを判断する(ステップS205)。移動体10が目的地に到着していないと判断した場合(ステップS205:No)、上記ステップS201へ戻る。移動体10が目的地に到着していないと判断した場合(ステップS205:No)、ステップS201からステップ205までの処理を繰り返し行う。繰り返し行うステップS201では、地図データ記憶部20B3に保存された地図データと撮影された画像とをもとに自己位置推定を行う。また、ステップS205で、移動体10が目的地に到着したと判断した場合(ステップS205:Yes)、本ルーチンを終了する。
【0097】
このように、自動走行を実際に行わなくても、自動走行できない可能性が高いことをユーザが知ることができ、ユーザの利便性が向上する。
【0098】
<変形例1>
図7における教師走行では、特徴点の数が所定数に対して不足する場合、ステップS117で自動走行できない可能性が高い箇所があることを報知する。しかし、ユーザが特徴点の数が所定数に対して不足している箇所を確認できないため、円滑に特徴点の数を補い、自動走行可能な状態にしたうえで教師走行を終了することができない可能性がある。そこで、ステップS117で、図6に示すような指示画像を用いて、特徴点の数が所定数に対して不足している箇所を、特徴物を設置すべき場所として報知するようにしてもよい。このようにすることで、ユーザは特徴物を設置すべき場所を知ることができる。ユーザは、特徴物を設置すべき場所を知ることができれば、特徴物をその場所へ設置することで、教師走行時には自動走行できない場所においても、自動走行可能な周囲環境を整備することができる。
【0099】
<変形例2>
変形例1における教師走行では、特徴点の数が不足する場合、特徴点の数が所定数に対して不足している部分経路を、特徴物を設置すべき場所として報知するようにしたが、特徴物の代わりに位置マーカを設置すべき場所として報知するようにしてもよい。図9は、移動体10が実行する変形例2における教師走行の情報処理の手順の一例を示すフローチャートである。以下に、図9に示す変形例2における教師走行の情報処理の手順を説明する。
【0100】
まず、判定部20Fが、予め定めた所定条件により部分経路を抽出する(ステップS301)。なお、所定条件は、例えば、撮影装置10Dにより取得された時間的に連続する画像内に、同一とされる特徴点が所定数以上抽出され続けること、などである。次に、取得部20Cが、ステップS301で抽出した部分経路の周辺画像40を取得する(ステップS303)。
【0101】
ステップS305では、抽出部20Dが、ステップS303で取得した部分経路の周辺画像40から、位置マーカを抽出したか否かを判断する(ステップS305)。つまり、ステップS303で取得した部分経路の周辺画像40から、自己位置推定に用いる情報を抽出したか否かを判断する。部分経路の周辺画像40から、位置マーカが抽出されなかった場合(ステップS305:No)、ステップS311へ進む。部分経路の周辺画像40から、位置マーカが抽出された場合(ステップS305:Yes)、ステップS307へ進む。
【0102】
ステップS307では、作成部20Eは、ステップS307で抽出した位置マーカの位置情報を有する地図データを地図データ記憶部20B3に記憶する(ステップS307)。2回目以降であれば、記憶されている地図データに、今回抽出した位置マーカの位置を追加する。
【0103】
次に、判定部20Fが、部分経路の位置マーカの数が自己位置を推定するために必要な所定数に対して不足しているか否かを判断する(ステップS309)。つまり、自己位置推定に用いる情報の量が所定値に対して不足しているか否かを判断する。部分経路の位置マーカの数が自己位置を推定するために必要な所定数に対して不足していない場合、つまり、所定数より多い場合(ステップS309:No)、ステップS317へ進む。部分経路の位置マーカの数が自己位置を推定するために必要な所定数に対して不足している場合、つまり、所定数より少ない場合(ステップS309:Yes)、ステップS311へ進む。
【0104】
ステップS311では、抽出部20Dが、ステップS303で取得した部分経路の周辺画像40から、特徴点を抽出する(ステップS311)。次に、作成部20Eは、ステップS311で抽出した特徴点の位置情報を有する地図データを地図データ記憶部20B3に追加する(ステップS313)。次に、ステップS315では、判定部20Fが、部分経路の特徴点の数が所定数に対して不足しているか否か、つまり、所定数より少ないか否かを記憶する(ステップS315)。
【0105】
ステップS317では、教師走行終了地点までの全ての部分経路の周辺画像40に対して、ステップS301からステップS315までの処理を行ったか否かを判断する(ステップS317)。なお、教師走行終了地点に到達したことを認識する方法には、公知の方法を用いればよく、その方法は限定されない。例えば、入力部10Bを介してユーザから教師走行終了の指示を受け付けることで、教師走行終了地点に到達したことを認識する。または、シフトレバーがパーキングレンジに入ったことによって、教師走行終了地点に到達したことを認識してもよい。
【0106】
教師走行終了地点までの全ての部分経路について周辺画像40を処理したと判断した場合(ステップS317:Yes)、ステップS319へ進む。教師走行終了地点までの全ての部分経路について周辺画像40を処理していないと判断した場合(ステップS317:No)、上記ステップS301へ戻る。
【0107】
ステップS319では、位置マーカが所定数に対して不足している部分経路の全てのうち、特徴点の数が所定数に対して不足している部分経路があるか否かを判断する(ステップS319)。位置マーカが所定数に対して不足している部分経路の全てのうち、特徴点の数が所定数に対して不足している部分経路がない場合(ステップS319:No)、ステップS321へ進む。ステップS321では、ユーザに教師走行の正常終了を報知し、本ルーチンを終了する。なお、ユーザに教師走行の終了を報知する際に、自動走行モードでの自動走行が可能であることとともに教師走行の終了を報知してもよい。位置マーカが所定数に対して不足している部分経路の全てのうち、特徴点の数が所定数に対して不足している部分経路がある場合、つまり、教師走行で走行した経路に、位置マーカの数および特徴点の数の何れも所定数に対して不足している部分経路が含まれる場合(ステップS319:Yes)、ステップS323へ進む。
【0108】
ステップS323では、出力制御部20Hが、指示情報を出力部10Aへ出力する(ステップS323)。指示情報は、例えば、表示部10Kが、特徴物もしくは位置マーカの設置場所を報知するための情報である。
【0109】
次に、入力部10Bは、教師走行の再試行の指示が入力されたか否かを判断する(ステップS325)。例えば、入力部10Bは、表示部10Kがタッチパネルである場合はこのタッチパネル上に表示された再試行ボタンであり、ユーザUは、表示部10Kにおいて再試行ボタンをタッチすることで、教師走行の再試行の指示を入力する。教師走行の再試行の指示が入力された場合(ステップS325:Yes)、上記ステップS301へ戻る。教師走行の再試行の指示が入力されなかった場合(ステップS325:No)、ステップS327へ進む。
【0110】
ステップS327では、指示情報を報知してから(ステップS323)、所定時間が経過したか否かを判断する。所定時間は、例えば、5分間である。所定時間が経過したと判断した場合(ステップS327:Yes)、ステップS329へ進む。ステップS329では、ユーザに教師走行が正常に終わらなかったことを示す異常終了を報知し、本ルーチンを終了する。なお、ユーザに教師走行の終了を報知する際は、ステップS321とステップS329とで報知の仕方が異なるようにすればよい。所定時間が経過していないと判断した場合(ステップS329:No)、上記ステップS325へ戻る。
【0111】
次に、移動体10が実行する変形例2における自動走行の情報処理の手順の一例を説明する。図10は、移動体10が実行する変形例2における自動走行の情報処理の手順の一例を示すフローチャートである。
【0112】
まず、自動走行処理部20A2は、初期位置推定を行う(ステップS401)。次に、ステップS403では、自動走行処理部20A2は、移動体10の周辺に位置マーカがあるか否かを判断する(ステップS403)。移動体10の周辺に位置マーカがあると判断した場合(ステップS403:Yes)、ステップS405へ進む。ステップS405では、自動走行処理部20A2は、地図データ記憶部20B3に保存された地図データから位置マーカの位置を特定する(ステップS405)。次に、ステップS407では、自動走行処理部20A2は、ステップS405で特定された位置マーカの位置から自己位置を推定する。(ステップS407)。
【0113】
ステップS403で、移動体10の周辺に位置マーカがないと判断した場合(ステップS403:No)、ステップS409へ進む。ステップS409では、自動走行処理部20A2は、地図データ記憶部20B3に保存された地図データから特徴点の位置を特定する(ステップS409)。次に、ステップS411では、自動走行処理部20A2は、ステップS409で特定された特徴点の位置から自己位置を推定する。(ステップS411)。次に、自動走行処理部20A2は、ステップS407またはステップS411で推定した自己位置から、自動走行を行う(ステップS412)。
【0114】
ステップS413では、自動走行処理部20A2は、目的地に到着したか否かを判断する(ステップS413)。目的地に到着していないと判断した場合(ステップS413:No)、上記ステップS401へ戻る。目的地に到着したと判断した場合(ステップS413:Yes)、本ルーチンを終了する。
【0115】
以上説明したように、本実施の形態の情報処理装置20は、抽出部20Dと、判定部20Fと、出力制御部20Hと、を備える。抽出部20Dは、移動体の周辺を撮影した情報である画像情報を受け取り、受け取った画像情報の特徴点を抽出する。判定部20Fは、抽出部20Dにより抽出された特徴点の数が所定数に対して不足しているか否かを判定する。出力制御部20Hは、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、特徴点の数が所定数に対して不足していない場合と異なる指示情報(指示画像52)を出力する。
【0116】
ここで、従来技術では、凹凸、色の変化、の何れもない物体に囲まれた場所等、車両周囲の環境の特徴が十分でない場所で、その周囲の地図データを作成するために車両を走行させる教師走行を行った場合、作成された地図データに含まれる特徴点の数が自己位置を推定するために必要な所定数に対して不足するため、自己位置推定ができない可能性が高い。しかしながら、従来技術では、実際に自動走行を行うまで、教師走行を行った場所で自動走行できない可能性が高いことをユーザが確認できなかった。
【0117】
一方、本実施の形態の情報処理装置20は、教師走行により、移動体の周辺の特徴点の数が所定数に対して不足している場合に、特徴点の数が所定数に対して不足していない場合と異なる指示画像52を出力する。このため、情報処理装置20は、判定部20Fにより特徴点の数が所定数に対して不足していると判定された場合に、特徴点の数が所定数に対して不足していることを示す指示画像52を出力することが出来る。例えば、ユーザUが実際に自動走行を行うことなく、特徴点の数が所定数に対して不足している箇所を示す情報を出力することができる。
【0118】
従って、本実施の形態の情報処理装置20では、ユーザは、教師走行した場所で自動走行できない可能性が高いことを、自動走行を行うことなく確認することができる。また、特徴量を多く含む物体がどのようなものであるかユーザが判断することが難しい場合があるため、予め教師走行のために用意された位置マーカをユーザに提供し、ユーザが位置マーカを用いることにより、自動走行できない可能性が高い環境をより簡便な方法で自動走行ができる環境に変えることができる。
【0119】
<実施形態2>
実施形態1では、自己位置推定に用いる情報の量は、特徴点の数を用いたが、実施形態2では、自己位置推定に用いる情報として、連続する画像情報から抽出された同一の特徴点を追跡する処理であるトラッキング処理により得られる情報を用い、自己位置推定に用いる情報の量は、このトラッキング処理の結果、トラッキングされた特徴点の数を用いる。以下、実施形態2について詳細に述べるが、実施形態1と同一の構成については、同一の符号を付して説明を省略する。
【0120】
図11は、実施形態2における移動体10の機能的構成の一例を示すブロック図である。実施形態2では、マッチング処理部20Jと、トラッキング処理部20Kと、作成部20Eが、実施形態1の図4の構成と異なる。
【0121】
マッチング処理部20Jは、特徴量の類似性を利用して、連続する画像から抽出された特徴点が同一であるか否かを判定する(以下、該処理をマッチング処理と称する。)。つまり、マッチング処理に用いられる画像のうち、過去の画像であるフレームAに含まれる特徴点a1と、現在の画像であるフレームBに含まれる特徴点b1とが、同じ特徴点であるか否かを判定する。フレーム間における特徴点が同じであるか否かを判定する方法であるマッチング方法には、公知の方法を用いればよく、マッチング方法は限定されない。
【0122】
トラッキング処理部20Kは、マッチング処理においてマッチングされた特徴点に対しトラッキング処理を行う。トラッキング処理部20Kは、フレームAから抽出された特徴点a1がフレームBにおいて推定された位置Xと、フレームBから抽出された特徴点b1の位置Yとの距離が所定値より小さいか否かを判定する(以下、該処理をトラッキング処理と称する。)。推定された位置Xと抽出された位置Yとの距離が所定値より小さい場合、特徴点はトラッキングされたとする。所定値は、例えば、5ピクセルである。なお、トラッキング方法には、公知の方法を用いればよく、トラッキング方法は限定されない。例えば、移動体10の速度やタイヤ角などから撮影装置の移動量を推定することで、画像Aにおける特徴点の位置から画像Bにおける特徴点の位置を推定することが可能である。特徴点の位置とは、例えば、画像上の座標である。トラッキングされた特徴点の数が所定数より多ければ、自己位置推定が成功する可能性が高い場所であると考えられる。
【0123】
作成部20Eは、トラッキングされた特徴点の位置情報を有する地図データを作成する。なお、作成部20Eは、抽出部20Dが抽出した特徴点の位置として、トラッキングされなかった特徴点を含めないようにしてもよい。
【0124】
図12は、移動体10が実行する実施形態2における教師走行の情報処理の手順の一例を示すフローチャートである。
【0125】
まず、取得部20Cが撮影装置10Dから周辺画像40を取得する(ステップS501)。次に、抽出部20Dが、ステップS501で取得した周辺画像40から、特徴点を抽出する(ステップS503)。つまり、ステップS501で取得した周辺画像40から、自己位置推定に用いる情報を抽出する。
【0126】
ステップS505では、マッチング処理部20Jが、現在の画像から抽出された特徴点と、現在の画像と連続する過去の画像から抽出された特徴点との間でマッチング処理を行う(ステップS505)。次に、トラッキング処理部20Kが、ステップS505でマッチングされた特徴点についてトラッキング処理を行う(ステップS507)。
【0127】
ステップS509では、作成部20Eは、ステップS507でトラッキングされた特徴点の位置情報を有する地図データを作成し、地図データ記憶部20B3に記憶する(ステップS509)。2回目以降のステップS509の処理では、既に記憶されている地図データに今回作成した地図データを追加する。
【0128】
ステップS511では、判定部20Fが、地図データにおいて、予め定めた所定条件により部分経路を抽出する(ステップS511)。なお、所定条件は、例えば、撮影装置10Dにより取得された時間的に連続する画像内に、同一とされる特徴点が所定数以上抽出され続けること、などである。
【0129】
次に、判定部20Fが抽出された部分経路ごとに、特徴点の数が所定数に対して不足しているか否か、つまり所定数より少ないか多いかを記憶する(ステップS513)。
【0130】
ステップS515では、入力部10Bが、ユーザから教師走行終了の指示が入力されたか否かを判断する(ステップS515)。
【0131】
次に、判定部20Fが、部分経路ごとに、トラッキングされた特徴点の数が自己位置を推定するために必要な所定数に対して不足しているか否かを判断する(ステップS517)。つまり、自己位置推定に用いる情報の量が所定値に対して不足しているか否かを判断する。各部分経路の何れも特徴点の数が所定数に対して不足していない場合、つまり、所定数より多い場合(ステップS517:No)、ステップS519へ進む。ステップS519では、ユーザに教師走行の正常終了を報知し、本ルーチンを終了する。なお、ユーザに教師走行の終了を報知する際に、自動走行モードでの自動走行が可能であることとともに教師走行の終了を報知してもよい。抽出された各経路の何れか1つ以上が、トラッキングされた特徴点の数が所定数に対して不足している場合、つまり、所定数より少ない場合(ステップS517:Yes)、ステップS521へ進む。
【0132】
抽出された各経路の何れか1つ以上が、トラッキングされた特徴点の数が所定数に対して不足している場合、つまり、所定数より少ない場合(ステップS517:Yes)、出力制御部20Hが、自動走行できない可能性が高い箇所があることを示す指示情報を出力部10Aへ出力する(ステップS521)。指示情報は、例えば、表示部10Kが、指示画像52において自動走行できないことを報知するための情報である。これにより、ユーザは、この教師走行の後、自動走行できないことを知ることができる。つまり、ユーザは、自動走行を試行しなくても、自動走行できないことを知ることができる。なお、この指示情報は、音声で報知するようにしてもよい。音声で指示情報を報知する場合、ドライバU1は、表示部10Kを見ることなく、自動走行できないことを知ることができる。これにより、ドライバU1が表示部10K以外の箇所を見ている場合に、自動走行ができないことを知ることができる。
【0133】
次に、入力部10Bは、教師走行の再試行の指示を入力されたか否かを判断する(ステップS523)。例えば、入力部10Bは、表示部10Kがタッチパネルである場合はこのタッチパネル上に表示された再試行ボタンであり、ユーザUは、表示部10Kにおいて再試行ボタンをタッチすることで、教師走行の再試行の指示を入力する。教師走行の再試行の指示が入力された場合(ステップS523:Yes)、上記ステップS501へ戻る。教師走行の再試行の指示が入力されなかった場合(ステップS523:No)、ステップS525へ進む。
【0134】
ステップS525では、指示情報を報知してから(ステップS521)、所定時間が経過したか否かを判断する。所定時間は、例えば、5分間である。所定時間が経過したと判断した場合(ステップS525:Yes)、本ルーチンを終了する。所定時間が経過していないと判断した場合(ステップS525:No)、上記ステップS523へ戻る。
【0135】
次に、移動体10が実行する実施形態2における自動走行の情報処理の手順の一例を説明する。図13は、移動体10が実行する実施形態2における自動走行の情報処理の手順の一例を示すフローチャートである。
【0136】
まず、自動走行処理部20A2は、地図データ記憶部20B3に保存された地図データと撮影された画像とをもとに自己位置推定を行う(ステップS601)。次に、自動走行処理部20A2は、ステップS601で推定した自己位置から、自動走行を行う(ステップS603)。ステップS605では、自動走行処理部20A2が、移動体10が目的地に到着したか否かを判断する。(ステップS605)。移動体10が目的地に到着していないと判断した場合(ステップS605:No)、上記ステップS601へ戻る。移動体10が目的地に到着したと判断した場合(ステップS605:Yes)、本ルーチンを終了する。
【0137】
このように、自動走行を実際に行わなくても、自動走行できない可能性が高いことをユーザが知ることができる。
【0138】
<その他の実施形態>
変形例1では、特徴点の数が所定数に対して不足している部分経路を、特徴物を設置すべき場所として報知するようにし、変形例2では、特徴物の代わりに位置マーカを設置すべき場所として報知するようにしたが、特徴点の数が所定数に対して不足している部分経路を、特徴物または位置マーカ、若しくは、特徴物および位置マーカの両方を設置すべき場所として報知するようにしてもよい。これにより、設置する物体の自由度が高まり、ユーザの利便性をさらに向上させることができる。
【0139】
また、本実施の形態では、情報処理装置20を、移動体10に搭載した形態を一例として説明した。しかし、情報処理装置20を、移動体10の外部に搭載した構成としてもよい。この場合、情報処理装置20は、移動体10に搭載された内界センサ10Cなどの電子機器の各々と、ネットワークを介して通信可能な構成とすればよい。
【0140】
なお、上述した実施の形態における、上記情報処理を実行するためのプログラムは、上記複数の機能部の各々を含むモジュール構成となっており、実際のハードウェアとしては、例えば、CPU(プロセッサ回路)がROMまたはHDDから情報処理プログラムを読み出して実行することにより、上述した複数の機能部の各々がRAM(主記憶)上にロードされ、上述した複数の機能部の各々がRAM(主記憶)上に生成されるようになっている。なお、上述した複数の機能部の各々の一部または全部を、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)などの専用のハードウェアを用いて実現することも可能である。
【0141】
なお、上記には、実施の形態を説明したが、上記実施の形態は、例として提示したものであり、本開示の範囲を限定することは意図していない。上記新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。上記実施の形態は、本開示の範囲または要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0142】
10 移動体
10A 出力部
10B 入力部
10C 内界センサ
10D 撮影装置
10F 駆動制御部
10G 駆動部
10H 通信部
10I スピーカ
10J 照明部
10K 表示部
10L バス
11A CPU
11B ROM
11C RAM
11D I/F
11E バス
20 情報処理装置
20A 処理部
20A1 教師走行処理部
20A2 自動走行処理部
20B 記憶部
20B1 教師走行プログラム
20B2 自動走行プログラム
20B3 地図データ記憶部
20C 取得部
20D 抽出部
20E 作成部
20F 判定部
20G 特定部
20H 出力制御部
20I 受付部
20J マッチング処理部
20K トラッキング処理部





図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13