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

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

▶ キヤノン株式会社の特許一覧

特許7516339情報処理装置、情報処理方法およびプログラム
<>
  • 特許-情報処理装置、情報処理方法およびプログラム 図1
  • 特許-情報処理装置、情報処理方法およびプログラム 図2
  • 特許-情報処理装置、情報処理方法およびプログラム 図3
  • 特許-情報処理装置、情報処理方法およびプログラム 図4
  • 特許-情報処理装置、情報処理方法およびプログラム 図5
  • 特許-情報処理装置、情報処理方法およびプログラム 図6
  • 特許-情報処理装置、情報処理方法およびプログラム 図7
  • 特許-情報処理装置、情報処理方法およびプログラム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-05
(45)【発行日】2024-07-16
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
   G05D 1/43 20240101AFI20240708BHJP
【FI】
G05D1/43
【請求項の数】 13
(21)【出願番号】P 2021194639
(22)【出願日】2021-11-30
(65)【公開番号】P2023081005
(43)【公開日】2023-06-09
【審査請求日】2023-07-05
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【弁理士】
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【弁理士】
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【弁理士】
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【弁理士】
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【弁理士】
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】宮谷 その子
(72)【発明者】
【氏名】藤木 真和
(72)【発明者】
【氏名】小竹 大輔
(72)【発明者】
【氏名】仲 顕照
【審査官】田中 友章
(56)【参考文献】
【文献】米国特許出願公開第2021/0200237(US,A1)
【文献】特開2021-099384(JP,A)
【文献】国際公開第2019/131198(WO,A1)
【文献】特開2020-153956(JP,A)
【文献】特開2018-092682(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/43
(57)【特許請求の範囲】
【請求項1】
移動体に搭載された撮像装置で環境を撮影した画像と該画像を撮影した撮像装置の位置情報とを含む複数の地図要素に基づく3次元地図情報を保持する保持手段から、前記複数の地図要素を取得する取得手段と、
前記環境において、前記撮像装置の自己位置推定を誤りやすい位置で撮影された画像を含む地図要素を判定する判定手段と、
前記判定手段で判定された地図要素に含まれる画像が撮影された時系列順に基づいて、前記位置情報が表す位置を線でつないだ地図画像において、前記判定手段で判定された地図要素に含まれる位置情報が表す位置に対応させてCGを重畳させる表示データを生成する生成手段と、を有することを特徴とする情報処理装置。
【請求項2】
移動体に搭載された撮像装置で環境を撮影した画像と該画像を撮影した撮像装置の位置情報とを含む複数の地図要素に基づく3次元地図情報を保持する保持手段から、前記複数の地図要素を取得する取得手段と、
前記環境において、前記撮像装置の自己位置推定を誤りやすい位置で撮影された画像を含む地図要素を判定する判定手段と、
前記環境に存在するオブジェクトのレイアウトが示された地図画像において、前記判定手段で判定された地図要素に含まれる位置情報が表す位置に対応させてCGを重畳させる表示データを生成する生成手段と、を有することを特徴とする情報処理装置。
【請求項3】
前記生成手段は、前記判定手段で判定された地図要素を、前記地図要素に含まれる画像が類似する地図要素群ごとに共通するCGを前記地図画像上に表示する表示データを生成することを特徴とする請求項またはに記載の情報処理装置。
【請求項4】
前記生成手段は、前記取得手段で取得した第1の地図要素に含まれる画像と第2の地図要素に含まれる画像との類似度が閾値を超える場合に、前記地図画像上に、前記第1と第2の地図要素に含まれる位置情報が表す位置に対応させてCGを重畳させる表示データを生成することを特徴とする請求項またはに記載の情報処理装置。
【請求項5】
前記生成手段は、前記取得手段で取得した第1の地図要素に含まれる画像と他の地図要素に含まれる画像との類似度の順位を表すCGを前記地図上に表示する表示データを生成することを特徴とする請求項またはに記載の情報処理装置。
【請求項6】
移動体に搭載された撮像装置で環境を撮影した画像と該画像を撮影した撮像装置の位置情報とを含む複数の地図要素に基づく3次元地図情報を保持する保持手段から、前記複数の地図要素を取得する取得手段と、
前記環境において、前記取得手段で取得した第1の地図要素に含まれる画像と第2の地図要素に含まれる画像との類似度が閾値以上の場合に、前記第1の地図要素と前記第2の地図要素とを、自己位置推定を誤りやすい位置で撮影された画像を含む地図要素と判定する判定手段と、
前記判定手段で判定された地図要素に含まれる前記位置情報が表す位置を識別可能に表示する表示データを生成する生成手段と、
を有することを特徴とする情報処理装置。
【請求項7】
移動体に搭載された撮像装置で環境を撮影した画像と該画像を撮影した撮像装置の位置情報とを含む複数の地図要素に基づく3次元地図情報を保持する保持手段から、前記複数の地図要素を取得する取得手段と、
ユーザが指定した位置に対応する位置情報を含む地図要素に含まれる画像と類似度が閾値以上の画像を含む地図要素を、前記撮像装置の自己位置推定を誤りやすい位置で撮影された画像を含む地図要素と判定する判定手段と、
前記判定手段で判定された地図要素に含まれる前記位置情報が表す位置を識別可能に表
示する表示データを生成する生成手段と、
を有することを特徴とする情報処理装置。
【請求項8】
前記判定手段が前記類似度を求める地図要素を、地図要素に含まれる位置情報に基づく地図要素間の距離が閾値以上の地図要素に絞ることを特徴とする請求項4乃至の何れか1項に記載の情報処理装置。
【請求項9】
前記取得手段は、AGV(Automatic Guides Vehicle)に搭載された撮像装置で工場の環境を撮影した画像と該画像を撮影した撮像装置の位置情報とを含む複数の地図要素に基づく3次元地図情報を保持する保持手段から、前記複数の地図要素を取得することを特徴とする請求項1乃至の何れか1項に記載の情報処理装置。
【請求項10】
移動体に搭載された計測装置で環境を計測した形状情報と該形状情報を撮影した計測装置の位置情報とを含む複数の地図要素に基づく3次元地図情報を保持する保持手段から、前記複数の地図要素を取得する取得手段と、
前記環境において、前記取得手段で取得した第1の地図要素に含まれる形状情報と第2の地図要素に含まれる形状情報との類似度が閾値以上の場合に、前記第1の地図要素と前記第2の地図要素とを、自己位置推定を誤りやすい位置で撮影された形状情報を含む地図要素と判定する判定手段と、
前記判定手段で判定された地図要素に含まれる前記位置情報が表す位置を識別可能に表示する表示データを生成する生成手段と、を有することを特徴とする情報処理装置。
【請求項11】
移動体に搭載された撮像装置で環境を撮影した画像と該画像を撮影した撮像装置の位置情報とを含む複数の地図要素に基づく3次元地図情報を保持する保持手段から、前記複数の地図要素を取得する取得工程と、
前記環境において、前記取得手段で取得した第1の地図要素に含まれる画像と第2の地図要素に含まれる画像との類似度が閾値以上の場合に、前記第1の地図要素と前記第2の地図要素とを、自己位置推定を誤りやすい位置で撮影された画像を含む地図要素と判定する判定工程と、
前記判定工程で判定された地図要素に含まれる前記位置情報が表す位置を識別可能に表示する表示データを生成する生成工程と、を有することを特徴とする情報処理方法。
【請求項12】
移動体に搭載された計測装置で環境を計測した形状情報と該形状情報を撮影した計測装置の位置情報とを含む複数の地図要素に基づく3次元地図情報を保持する保持手段から、前記複数の地図要素を取得する取得工程と、
前記環境において、前記取得工程で取得した第1の地図要素に含まれる形状情報と第2の地図要素に含まれる形状情報との類似度が閾値以上の場合に、前記第1の地図要素と前記第2の地図要素とを、自己位置推定を誤りやすい位置で撮影された形状情報を含む地図要素と判定する判定工程と、
前記判定工程で判定された地図要素に含まれる前記位置情報が表す位置を識別可能に表示する表示データを生成する生成工程と、を有することを特徴とする情報処理方法。
【請求項13】
コンピュータを、請求項1乃至10のいずれか1項に記載の情報処理装置が有する各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体が移動する環境の地図情報を生成する技術に関する。
【背景技術】
【0002】
移動体に搭載されたカメラや距離センサ等のセンサで取得した情報から移動体の位置姿勢推定を行う方法として、SLAM(Simultaneous Localization and Mapping)技術が知られている。SLAMは、周辺の物体の位置の情報などを把握するための3次元の環境地図を生成する処理と、該環境地図を使用した自己位置姿勢推定処理を同時並行で行う。3次元の環境地図は地図要素(キーフレームとも呼ばれる)から構成される。非特許文献1では、自己位置姿勢推定に失敗した後の自己位置姿勢推定の復帰方法として、Relocalizationと呼ばれる処理の開示がある。Relocalizationでは、現在の自己位置姿勢の推定を行うために、現在の位置姿勢においてセンサが取得した情報(例えば、画像)と類似する情報を含む地図要素を、3次元環境地図から広く探索する。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2021-139785
【非特許文献】
【0004】
【文献】M.A.Raul,ORB-SLAM:A Versatile an d Accurate Monocular SLAM System,2015.
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、非特許文献1の方法では、類似する地図要素が複数存在していた場合、現在位置とは遠く離れた位置の地図要素を選択し、自己位置推定を誤る可能性がある。
【0006】
特許文献1には、現在のセンサの位置においてセンサが取得した情報と類似する情報を含む地図要素のうち、現在センサが存在する位置においてセンサが取得しているべき情報をユーザに選択させる方法が開示されている。しかし、特許文献1の方法では、閉経路を形成しそうなタイミングで、現在のセンサの位置においてセンサが取得した情報と類似する情報を含む地図要素があることを、ユーザに知らせることしか行っていない。
【0007】
本発明は、以上の課題を鑑みたものであり、自己位置推定を誤りやすい場所を分かりやすく示すことを目的とする。
【課題を解決するための手段】
【0008】
上記の課題を解決するため、本発明に係る情報処理装置は以下の構成を有する。移動体に搭載された撮像装置で環境を撮影した画像と該画像を撮影した撮像装置の位置情報とを含む複数の地図要素に基づく3次元地図情報を保持する保持手段から、前記複数の地図要素を取得する取得手段と、前記取得手段で取得した第1の地図要素に含まれる画像と第2の地図要素に含まれる画像との類似度が閾値以上の場合に、前記第1の地図要素と前記第2の地図要素とを、自己位置推定を誤りやすい位置で撮影された画像を含む地図要素と判定する判定手段と、前記判定手段で判定された地図要素に含まれる前記位置情報が表す位置を識別可能に表示する表示データを生成する生成手段と、を有する。
【発明の効果】
【0009】
本発明によれば、自己位置推定を誤りやすい場所を分かりやすく示すことができる。
【図面の簡単な説明】
【0010】
図1】実施形態1から3における情報処理装置の機能構成例を示すブロック図
図2】情報処理装置100のハードウェア構成
図3】実施形態1から3における情報処理装置が実行する処理を示すフローチャート
図4】生成した画像例その1
図5】生成した画像例その2
図6】生成した画像例その3
図7】生成した画像例その4
図8】利用場面例を示す図
【発明を実施するための形態】
【0011】
<実施形態1>
SLAM技術は、環境に存在する物体の位置の情報などを把握するための3次元地図情報を生成する処理と、該地図情報を使用した自己位置推定処理(自己位置推定処理では、姿勢も推定可能である。)を同時並行で行う。3次元地図情報は地図要素(キーフレームとも呼ばれる。)から構成される。3次元地図情報を生成するために撮影している動画に含まれる画像と、既に存在する地図要素に含まれる画像との一致度が閾値以下になった場合、3次元地図情報に、新しい地図要素が順次追加されてゆく。SLAMの処理をする装置では、移動体に搭載された撮像装置で環境を撮影した画像から得られる画像特徴と、事前に作成された3次元の地図情報に含まれる地図要素から得られる画像特徴とをマッチングし、移動体に搭載された撮像装置の自己位置を推定している。移動体は、例えば、AGV(Automatic Guides Vehicle)、AMR(Autonomous Mobile Robot)、お掃除ロボットなどの小型モビリティ、自律走行車、ドローンなどである。撮像装置と移動体との位置関係は既知であり、撮像装置の位置を移動体の位置に変換すれば、移動体の自己位置推定が可能である。
【0012】
SLAM技術を用いて移動体の移動を制御する装置は、自己位置推定の失敗からの復帰時や自己位置推定開始時は、自己位置推定が可能となるまで、移動体の現在位置の変更及び環境の撮影と、撮影画像と類似する画像を含む地図要素の探索とを繰り返し実施する。自己位置推定の失敗とは、現在位置での撮影画像と部分的に一致していると見做せる画像を含む地図要素が、3次元地図情報を構成する地図要素から探索できなかったことを示す。このとき、現在位置の撮影画像と類似する画像を含む地図要素が複数存在する場合には、現在位置と対応する地図要素とは異なる地図要素が表す位置を現在位置だとして誤って選択し、自己位置推定を誤る可能性がある。
【0013】
本実施形態では、地図要素ごとに類似する画像を含む他の地図要素を判定する。そして、判定結果を各地図要素に含まれる画像を撮影したときのカメラの位置を示す地図(例えば、図4のような地図。表示される地図の詳細は後述する。)上に重畳して表示するデータを生成する方法について説明する。この地図は、自己位置推定の失敗からの復帰時や自己位置推定開始時に、自己位置推定を誤る可能性のある撮影位置をユーザに提示するための地図である。このような地図を生成することで、例えば、自己位置推定を誤る可能性のある位置から復帰処理をさせないように促し、自己位置推定の誤りを抑制しやすくすることができる。
【0014】
図8は、本実施形態に記載の情報処理装置100の利用場面例を示す図である。移動体800が移動し、撮像装置801で環境を撮影して、環境の3次元地図情報が予め作成されている。ユーザ802は、情報処理装置100(例えばノートパソコン)の表示装置120に表示される画面を見ている。本実施形態で生成する図4のような地図は、表示装置120に表示される。ユーザは、表示装置120に表示された画面を見て、自己位置推定を誤りやすい位置を把握する。
【0015】
図1は、本実施形態の構成例を示す図である。情報処理装置100、記憶装置110及び表示装置120から構成される。記憶装置110は、自己位置推定のための3次元地図情報を保持する。該地図情報は、複数の地図要素から構成される。3次元地図情報は、複数の地図要素(キーフレーム)が連なっているように可視化することが可能である。地図要素の詳細については、後述する。表示装置120は、情報処理装置で生成したデータを表示する。情報処理装置100は、記憶装置110を有する装置と通信インターフェイスを介してデータの送受信を行う。情報処理装置100の内部に、記憶装置110、表示装置120を有することもできる。情報処理装置100は、例えば図8のように、工場などの現場に持ち込んだパーソナルコンピューターであり、パーソナルコンピューター上で情報処理を行う。情報処理装置100が遠隔に存在するサーバー装置である場合は、サーバー装置上で情報処理を行う。その場合、工場などでユーザが使用するパーソナルコンピューターとサーバー装置(情報処理装置100)とは、通信ネットワークを介して、サーバー装置(情報処理装置100)が処理したデータの送受信を行う。以下、情報処理装置100は、移動体の移動を制御する装置とは別の装置で情報処理を行うとして説明を行う。情報処理装置と移動体の移動制御を行うための自己位置推定を行う装置とは、有線又は無線の通信ネットワークを介して情報のやり取りを行う。情報処理装置と移動体の移動制御を行うための自己位置推定を行う装置とは、どちらもが移動体に搭載される形態、何れか一方が移動体に搭載される形態、どちらもが移動体に搭載されず移動体の外部に存在する形態がある。
【0016】
情報処理装置100は、地図要素取得部101、判定部102、表示データ生成部103の機能から構成される。
【0017】
地図要素取得部101は、記憶装置110から複数の地図要素を、通信インターフェイスを介して取得する。
【0018】
判定部102は、地図要素取得部101が取得した地図要素(第1の地図要素)ごとに、他の地図要素(第2~nの地図要素)との類似度を算出することにより、自己位置推定を誤りやすい位置で撮影された画像を含む地図要素を判定する。もちろん、反対に、自己位置推定を誤りにくい位置で撮影された画像を含む地図要素を判定することもできる。類似度の算出方法については、後述する。また、都度、類似度を算出するのではなく、類似する地図要素同士の情報を、情報処理装置100が備える記憶装置に保持しておき、その情報を取得して、地図要素が示す位置が自己位置推定を誤りやすい位置かどうか判定することもできる。
【0019】
表示データ生成部103は、判定部102で算出した類似度などの情報にもとづいて、ユーザに提示するためのデータを生成する。生成したデータを表示装置120へ出力する。データは画像とする。生成する画像の詳細については、後述する。
【0020】
次に、記憶装置110が保持する地図要素について説明する。地図要素は、移動体に搭載された撮像装置で環境をカメラで撮影した画像及び画像特徴とそのカメラの位置情報とを紐づけたキーフレームとする。地図要素には、カメラの姿勢情報も紐づけることができる。カメラは、環境を動画撮影する。動画中の画像と、既に存在する地図要素に含まれる画像との一致度が閾値以下になった場合に、新しい地図要素を3次元地図情報に順次追加している。移動体と記憶装置110を有する装置とは通信インターフェイスを介して通信可能であり、記憶装置110は、例えば、クラウドネットワーク上の情報処理装置に存在する。また、このような3次元地図情報が予め生成されており、記憶装置110若しくは、情報処理装置100が有する記憶保持部に保持されている。これらの地図要素の算出及び地図要素を使用したカメラの自己位置推定方法については、非特許文献1に詳細の記載があるため説明を省略する。また、環境をLidar(Light Detection and Ranging)でなどの計測装置で計測した場合には、地図要素には3次元形状情報が含まれる。その場合、判定部102は、3次元形状情報の類似を判定する。
【0021】
図2は、情報処理装置100のハードウェア構成を示す図である。H11はCPUであり、システムバスH20に接続された各種デバイスの制御を行う。H12はROMであり、BIOSのプログラムやブートプログラムを記憶する。H13はRAMであり、CPUであるH11の主記憶装置として使用される。H14は外部メモリであり、情報処理装置100が処理するプログラムを格納する。入力部H15はキーボードやマウス、ロボットコントローラーであり、情報等の入力に係る処理を行う。情報処理装置100が表示の機能も備える場合には、表示部H16はH11からの指示に従って情報処理装置100の演算結果を表示装置に出力する。なお、表示装置は液晶表示装置やプロジェクタ、LEDインジケーターなど、種類は問わない。H17は通信インターフェイスであり、ネットワークを介して情報通信を行うものであり、通信インターフェイスはイーサネットでもよく、USBやシリアル通信、無線通信等種類は問わない。
【0022】
図3は、本実施形態における処理手順を示すフローチャートである。図3で説明する処理は、例えば、自己位置推定の失敗からの復帰時や自己位置推定開始時に、ユーザが図4のような地図の表示を指示すると開始する。以下、フローチャートは、CPUが制御プログラムを実行することにより実現されるものとする。処理ステップは、地図要素取得S300、判定S301、表示データ生成S302から構成する。情報処理装置100に表示の機能を含まない場合には、S303の処理は行わない。以下に、各処理ステップについて詳しく説明する。
【0023】
ステップS300では、記憶装置110から複数の地図要素を取得する。地図要素の詳細については、前述したとおりである。
【0024】
ステップS301では、ステップS300で取得した複数の地図要素同士が類似しているか判定することにより、撮像装置の自己位置推定を誤りやすい位置で撮影された画像を含む地図要素を判定する。地図要素の類似度は、地図要素である画像の類似度とする。画像の類似度の算出には、BoW(Bag of Words)に基づく手法を適用する。具体的には、画像から特徴ベクトルを抽出し、その特徴ベクトルの類似度を、画像の類似度として計算する。特徴ベクトルの類似度は、ベクトルの内積とする。類似度を計算する地図要素の組み合わせは、記憶装置110が保持する地図要素の全ての組み合わせのうち、地図要素であるカメラの位置姿勢から算出する地図要素間の距離が予め定めた閾値以上となる組み合わせとする。例えば、地図要素間の距離が閾値以上であるにも関わらず、画像の類似度が閾値を超えると、自己位置推定を誤る原因になり、望ましくない。反対に、地図要素間の距離が閾値以下(若しくは閾値未満)なら、共通の環境を撮影しており類似度が高くなるのは当然であり自己位置推定を誤る原因にはならないと考えられるので、S301で類似度を計算する対象から外し絞っている。なお、BoWについての詳細は非特許文献1で公知である。S301では、予め保持している類似する地図要素の情報を用いて、地図要素が示す位置が自己位置推定を誤りやすい位置かどうか判定することもできる。
【0025】
ステップS302では、ステップS301の判定結果にもとづいて、ユーザに提示するためのデータを生成する。生成したデータを表示装置120へ出力する。データは画像とする。画像の生成方法については、後述する。
【0026】
ステップS303では、ステップS302で生成した画像を表示装置120に表示し、ユーザに提示する。
【0027】
次に、ステップS302で生成する画像の生成方法について説明する。具体的には、ステップS300で取得した各地図要素に含まれる画像を撮影したときのカメラの位置を示す地図画像の生成と、類似する地図要素同士の位置を示すCGの該地図画像上への重畳とを行う。
【0028】
まず、地図画像の生成方法について説明する。ステップS300で取得した各地図要素に含まれる画像を撮影したときのカメラの位置を2次元画像の座標に変換し、地図要素に含まれる画像を撮影したときのカメラの位置とそれ以外の位置とで、異なる画素値を設定する。例えば、地図要素に含まれる画像を撮影したときのカメラの位置は灰色、それ以外は白となるような画素値を設定する。地図要素に含まれる画像を撮影したときのカメラの位置を2次元画像の座標に変換する方法は、次の通りである。まず、地図要素に含まれる画像を撮影したときのカメラの位置が3次元の座標で表現されている場合には、各位置を2次元の平面に投影し、2次元の座標に変換する。例えば、地図要素に含まれる画像を撮影したときのカメラの位置が(x,y,z)の場合には、この変換によって(x,y)となる。次に、生成する地図画像のサイズ内の位置となるように、座標値の縮小率s及び座標値の平行移動(tx,ty)を算出し、この値を適用して算出したもの(s・x+tx,s・y+ty)を、地図画像上の位置とする。つまり、3次元地図情報を構成する地図要素(キーフレーム)の位置を、新しく生成する2次元の地図画像のサイズ内に収まるように変換している。地図要素がある位置とない位置とで異なる色(例えば、灰と白)が設定される。
【0029】
次に、類似する地図要素同士の位置を示すCGを該地図画像上へ重畳する方法について説明する。類似する地図要素とは、ステップS302で算出した類似度のうち、ベクトルの全ての類似度が所定値以上となる地図要素、または、予め類似することがテーブル化されている地図要素とする。類似する地図要素群ごとに同一の共通するCGを生成し、該地図要素の画像位置を含む領域に重畳する。CGは、地図要素の位置を示す矩形や丸などのマークに対する模様とする。模様に加えて、類似する地図要素の画像を表示するようにしてもよい。このCGによって、撮像装置の自己位置推定を誤りやすい位置を識別可能に示すことができる。
【0030】
生成した地図画像の一例を図4に示す。G400は、各地図要素に含まれる画像を撮影したときのカメラ位置(x、y)を、地図画像のサイズに対応させて(s・x+tx,s・y+ty)とした位置を、地図要素に含まれる画像を撮影した時系列順に線分でつないだものである。G401、G402及びG403は、これらが類似する地図要素であることを示すための同一の共通するCGであり、各CGは該地図要素の地図画像上の位置(s・x+tx,s・y+ty)を含む領域に重畳されている。同様に、G404、G405及びG406、また、G407、G408及びG409の矩形の模様は、それぞれ類似する地図要素を示したCGである。G410、G410及びG411は、それぞれG401、G402及びG403に該当する地図要素に含まれる画像である。尚、図4に示されている、G401~G409以外の灰色の矩形は、類似する地図要素であることを示しているのではなく、お互いに類似しない地図要素が存在する位置を示すものである。
【0031】
なお、距離が一定以下の範囲内で類似する地図要素が複数存在する場合には、地図要素ごとにCGを生成するのではなく、これらの領域を包含する大きさのCGを1つだけ生成し、計測画像上に重畳するようにする。
【0032】
図4のような地図画像の他にも、地図要素が示す位置を、工場などの施設のフロア地図や、工場のCAD図面を2次元化した図面などのサイズに合わせて、それらの地図上に表示するためのデータを上述の方法と同様に方法で生成することができる。工場などの施設のフロア地図や工場のCAD図面には、環境に存在するオブジェクトのレイアウトが示されている。工場などの施設のフロア地図や工場のCAD図面に、G401~G409の模様や、G410~G412の画像を重畳した表示データを生成する。
【0033】
実施形態1の方法を適用することで、自己位置推定の失敗からの復帰時や自己位置推定開始時に自己位置推定を誤る可能性のある撮影位置を、ユーザが知ることができる。これにより、該撮影位置での撮影を回避することが可能となり、自己位置推定の誤りを抑制しやすくすることができる。さらに、自己位置推定を誤りやすい位置に、ポスターやそれぞれ異なる模様付きの安全コーンなど、識別可能な画像特徴が得られるオブジェクトを配置するなどの対策を取ることができる。
【0034】
ステップS302において、現在の移動体の自己位置を示すCG、例えばマル印を地図画像上に重畳してもよい。このとき、表示装置120に表示された該CGをユーザがドラッグ操作することで、移動体800の位置を変更することができる。具体的には、表示画面上でのCGの移動方向及び移動量に応じて決定した移動体800の移動方向及び移動量を、通信ネットワークを介して、サーバー装置(情報処理装置100)に送信する。さらに、サーバー装置(情報処理装置100)から移動体の移動を制御する装置に送信し、受信した移動体の移動方向及び移動量にもとづいて、移動体800の位置を変更する。
【0035】
<変形例1-1>
実施形態1では、ステップS301で類似度を算出する場合、地図要素ごとに各地図要素に含まれる画像との類似度を算出した。これに加えて、類似度合の順位を算出してもよい。順位は、ベクトルの全ての類似度の平均値にもとづいて決定する。平均値が高いものほど、順位が高くなる。なお、平均値に限らず、類似度の順位が算出できる方法を適用可能である。例えば、全てのベクトルの類似度の最大値や中央値などであってもよい。
【0036】
ステップS302において、類似する地図要素の位置及び類似度の順位を示す画像を生成する。画像の生成方法は、実施形態1のステップS302で説明した方法に加えて、類似度の順位を示す数字を地図要素の画像上の位置付近に重畳する。あるいは、CGの色で順位を示すようにしてもよい。例えば、CGの色が濃いほど順位が高いことを示すようにしてもよい。
【0037】
<変形例1-2>
実施形態1では、ステップS301において、すべての地図要素に関して類似度を算出した。本変形例では、例えば、ディスプレイに表示された3次元環境地図上で指定した地図要素に関して、他の地図要素との類似度の算出を行い、該類似度を示す画像を生成する方法について説明する。
【0038】
ステップS301では、指定した地図要素に含まれる画像に関して、他の地図要素と類似していて、自己位置推定を誤りやすいのかを判定する。類似度の算出方法は、実施形態1で説明した通りである。
【0039】
ステップS302において、ステップS301で判定した情報を表す画像を生成する。具体的には、実施形態1のステップS302で説明した方法で、地図画像を生成する。このとき、地図要素に含まれる画像を撮影したときのカメラの位置に該当する地図画像上の位置の画素値を、類似度にもとづいて設定する。例えば、類似度が高いほど色が濃くなるように、画素値を設定する。図5に生成した画像の一例を示す。G501は、指定した地図要素を示している。便宜上、図4で示した他の地図要素は省略している。G500は各地図要素に含まれる画像を撮影したときのカメラの位置を示し、色の濃淡で類似度を示している。ここでは、色が濃いほど類似度が高いことを意味する。図5では3段階の色の濃淡を示しているが、さらに細かく段階を付けて色の濃淡で類似度を示してもよい。色の濃淡により、撮像装置(移動体)の自己位置推定を誤りやすい位置を識別可能としている。
【0040】
なお、地図要素に限らず、任意の位置をディスプレイに表示された3次元環境地図上で指定するようにしてもよい。この場合、指定した位置と最近傍になる地図要素を探索し、該地図要素が指定された場合と同じ処理を実施する。
【0041】
<変形例1-3>
実施形態1では、ステップS302で実施する類似度の算出において、画像から特徴ベクトルを抽出し、その特徴ベクトルの類似度を、画像の類似度として計算した。類似度の算出方法は、これに限らず、画像同士の類似度を算出する方法を適用可能である。例えば、画像の全画素の輝度の平均値を算出し、該輝度の平均値の差の逆数を類似度としてもよい。この場合、類似度の値が高いほど、両者の画像が類似していることを示す。また、画像間の画像特徴量ごとにハミング距離を算出し、これが所定の値よりも小さくなる特徴の数を類似度としてもよい。ここでのハミング距離は、各特徴量の対応する要素間の値の差の総和とする。この場合も同様に、類似度の値が高いほど、両者の画像が類似していることを示す。また、SIFT(Scale Invariant Feature Transform)特徴などが類似する特徴点の個数が閾値以上であるかどうかで画像の類似を判断することができる。
【0042】
<変形例1-4>
実施形態1では、ステップS303において、表示データを画像の場合として説明した。これに限らず、地図要素に含まれる画像の類似度を示す識別可能なデータであれば適用できる。例えば、カメラの撮影位置と対応させて画像の類似度を示す色付きの3次元点群データを表示する。この場合、図4図7で示す地図は3次元地図である。各点群の色は、類似度の大きさにもとづいたものとする。あるいは、表示データは、各地図要素の位置や類似する地図要素の位置を記述した、数値データであってもよい。
【0043】
<変形例1-5>
実施形態1では、地図画像上に重畳する画像として、類似する地図要素がある位置を示すマークに対する模様や画像そのものとして説明した。これに限らず、類似する地図要素を識別可能に示すものであれば適用できる。例えば、地図要素が保持するカメラの位置を示す座標値を、地図画像上に重畳してもよい。
【0044】
<変形例1-6>
SLAM技術を用いた自己位置推定において、自己位置推定開始時は現在位置姿勢に関連する情報が存在しないため、3次元地図情報の中から、現在位置での撮影画像と類似する地図要素を広く探索する必要がある。3次元地図情報中に、開始地点での撮影画像と類似する地図要素が複数含まれていた場合、現在位置と対応する地図要素とは異なる地図要素を選択し、自己位置推定を誤る可能性がある。これを回避するために、類似する地図要素が他に存在しない位置を推定開始位置とすることが望ましい。
【0045】
本変形例では、SLAM技術を用いた自己位置推定において、安定して自己位置推定するための推定開始位置の候補を識別可能にユーザに提示する方法について説明する。
【0046】
本変形例では、実施形態1で図3を用いて説明した処理のうち、ステップS302が異なる。ここでは、ステップS302の処理について説明する。
【0047】
ステップS302では、ステップS301で判定した情報にもとづいて、自己位置推定の開始位置の候補を示す地図画像を生成する。地図画像の生成方法は、次の通りである。まず、ステップS301で取得した複数の地図要素のうち、類似する地図要素が存在しない地図要素を抽出する。具体的には、他の地図要素との類似度全てが予め設定した閾値未満となる地図要素を抽出する。抽出される地図要素が存在しなかった場合には、閾値を高く設定し直し、上記の処理を再度実行する。
【0048】
次に、実施形態1のステップS302で説明した方法で、地図画像を生成する。このとき、類似する地図要素が存在する地図要素の位置またはその位置をつないだ線分、類似する地図要素が存在しない位置またはその位置をつないだ線分及び地図要素の位置以外の位置とで、それぞれ異なる画素値を設定する。例えば、類似する地図要素が存在する地図要素の位置または線分を灰色、類似する地図要素が存在しない地図要素の位置または線分を黒、地図要素の位置以外を白となるような画素値を設定する。
【0049】
画像の一例を図6に示す。G600は類似する地図要素が存在するカメラの位置を結んだ線分を示している。G600は、複数の通路が存在する環境において、各通路の左右のレイアウトが他の通路のものと酷似している場合の例である。G600の平行した3本の線分は、各通路上の位置を示している。また、G601は類似する地図要素が存在しないカメラの位置が端点となる線分、つまり、自己位置推定の開始位置候補を示している。
【0050】
なお、類似する地図要素の有無ではなく、類似する地図要素の数を示す画像を生成するようにしてもよい。例えば、数が少ないほど濃い色とする。
【0051】
変形例の方法を適用することで、自己位置推定開始時に適した位置を、ユーザが事前に知ることができる。これにより、自己位置推定開始時における、自己位置推定の誤りを抑制しやすくすることができる。
【0052】
<変形例1-7>
SLAM技術を用いた自己位置推定において、現在位置の撮影画像と部分的に類似する画像を含む地図要素が存在しない場合には、自己位置推定が失敗する。この状況からの復帰方法の1つとして、部分的に類似する地図要素が存在する撮影画像が取得できる位置にカメラを移動させ、該位置で自己位置推定を再開する方法がある。しかし、地図情報中に、復帰位置での撮影画像と類似する画像を含む地図要素が複数存在する場合、現在位置と対応する地図要素とは異なる地図要素を選択し、復帰位置での自己位置推定を誤る可能性がある。これを回避するために、自己位置推定が失敗した位置近傍かつ類似する地図要素が他に存在しない位置を復帰位置とすることが望ましい。
【0053】
本変形例では、SLAM技術を用いた自己位置推定において、自己位置推定の復帰位置候補をユーザに提示する方法について説明する。
【0054】
本変形例では、実施形態1で図3を用いて説明した処理のうち、ステップS302が異なる。ここでは、ステップS302の処理について説明する。
【0055】
ステップS302では、ステップS301で判定した情報にもとづいて、自己位置推定が失敗したときの、復帰位置候補を示す画像を生成する。画像の生成方法は、次の通りである。まず、ステップS300で取得した複数の地図要素のうち、自己位置推が失敗した直前の位置近傍の地図要素を抽出する。近傍の範囲は、予め設定した範囲とする。次に、抽出した地図要素の中から、さらに、他の地図要素との類似度全てが予め設定した閾値未満のものを抽出する。抽出される地図要素が存在しなかった場合には、閾値を高く設定し直し、上記の処理を再度実行する。ここで抽出した地図要素を、類似する地図要素がない地図要素とする。
【0056】
次に、実施形態1のステップS302で説明した方法で、地図画像を生成する。このとき、類似する地図要素が存在しない地図要素に含まれる画像を撮影したときのカメラの位置またはその位置をつないだ線分、それ以外のカメラの位置またはその位置をつないだ線分及びカメラの位置以外の位置とで、それぞれ異なる画素値を設定する。類似する地図要素が存在しない地図要素のカメラの位置または線分を黒、それ以外のカメラの位置を灰色、カメラの位置以外を白となるような画素値を設定する。画像の一例を図7に示す。G700は類似する地図要素が存在するカメラの位置を結んだ線分、G702は、自己位置推定が失敗した直前の位置を示している。また、G701は自己位置推定が失敗した直前の位置近傍で類似する地図要素が存在しないカメラの位置が端点となる線分、つまり、復帰位置候補を示している。なお、類似する地図要素の有無ではなく、類似する地図要素の数を示す画像を生成するようにしてもよい。例えば、自己位置推定が失敗した直前の位置近傍における位置の色を、類似する地図要素の数が少ないほど濃い色とする。
【0057】
なお、上記では、自己位置推定が失敗した直前の位置近傍の地図要素の中から、類似する地図要素がない地図要素を探索した。これに代わって、カメラの現在の撮影画像と類似しない画像を含む地図要素を探索するようにしてもよい。
【0058】
変形例の方法を適用することで、自己位置推定の失敗時に、適切な復帰位置をユーザが知ることができる。これにより、自己位置推定の失敗からの復帰時における、自己位置推定の誤りを抑制しやすくすることができる。
【0059】
<変形例1―8>
実施形態1では、自己位置推定を誤りやすい位置を分かりやすく示すことについて述べた。地図要素には、地図要素に含まれる画像を撮影したときのカメラの位置だけではなく、カメラの姿勢情報も含まれているため、S301では、自己位置推定を誤りやすい位置姿勢を判定していることになる。
【0060】
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。また、そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供してもよい。
【符号の説明】
【0061】
100 情報処理装置
101 地図要素取得部
102 判定部
103 表示データ生成部
110 記憶装置
120 表示装置
図1
図2
図3
図4
図5
図6
図7
図8