(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-16
(45)【発行日】2024-02-27
(54)【発明の名称】俯瞰データ生成装置、俯瞰データ生成プログラム、俯瞰データ生成方法、及びロボット
(51)【国際特許分類】
H04N 7/18 20060101AFI20240219BHJP
G05D 1/43 20240101ALI20240219BHJP
G06T 7/00 20170101ALI20240219BHJP
G06T 7/20 20170101ALI20240219BHJP
G06N 20/00 20190101ALI20240219BHJP
【FI】
H04N7/18 K
G05D1/02 H
G06T7/00 650B
G06T7/20 100
G06N20/00
(21)【出願番号】P 2021177665
(22)【出願日】2021-10-29
【審査請求日】2023-11-30
【早期審査対象出願】
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(73)【特許権者】
【識別番号】504132272
【氏名又は名称】国立大学法人京都大学
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】黒瀬(西村) 真衣
(72)【発明者】
【氏名】延原 章平
(72)【発明者】
【氏名】西野 恒
【審査官】秦野 孝一郎
(56)【参考文献】
【文献】特開2019-213039(JP,A)
【文献】国際公開第2021/095463(WO,A1)
【文献】国際公開第2021/095464(WO,A1)
【文献】特開2021-77287(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/18
G05D 1/00-1/12
G06T 7/00-7/90
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
動的な環境において観測装置を搭載した観測移動体からの視点で観測された少なくとも1つの移動体を表
す時系列データを取得する取得部と、
実空間における前記移動体の大きさに関する事前情報、並び
に前記移動体の大きさ及び位置を用いて求められる、実空間における前記観測移動体からの前記移動体の相対位置と、予め定められた、前記移動体の動きを表す動きモデルとを用いて、
前
記時系列データから、前記観測移動体を俯瞰した位置から観測した場合に得られる、前記観測移動体の地面上の移動軌跡、及び前記移動体の各々の地面上の移動軌跡を表す俯瞰データを生成する生成部と、
を含む俯瞰データ生成装置。
【請求項2】
前記事前情報は、実空間における前記移動体の大きさの分布に関するものであり、
前記生成部は、前記観測移動体からの前記移動体の相対位置の分布と、前記移動体の動きの分布を表す前記動きモデルとを用いて、
前
記時系列データから、前記観測移動体の各時刻の地面上の位置分布を表す前記移動軌跡、及び前記移動体の各々の各時刻の地面上の位置分布を表す前記移動軌跡を表す前記俯瞰データを生成する請求項1記載の俯瞰データ生成装置。
【請求項3】
前記動きモデルは、前記移動体の等速運動を表すモデル、又は前記移動体間の相互作用に応じた動きを表すモデルである請求項1又は2記載の俯瞰データ生成装置。
【請求項4】
前
記時系列データから、前記移動体の各々を追跡し
、前記移動体の各々の各時刻の位置及び大きさを取得する追跡部を更に含み、
前記生成部は、前記追跡部によって取得され
た前記移動体の各々の各時刻の位置及び大きさから、前記俯瞰データを生成する請求項1~請求項3の何れか1項記載の俯瞰データ生成装置。
【請求項5】
前記生成部は、各時刻についての、前記観測移動体からの前記移動体の相対位置と、前記動きモデルとを用いて表される事後分布であって、一時刻前の前記観測移動体及び前記移動体の各々の地面上の位置が与えられた下での、前記観測移動体及び前記移動体の各々の地面上の位置の事後分布を最大化するように、前記俯瞰データを生成する請求項1~請求項4の何れか1項記載の俯瞰データ生成装置。
【請求項6】
前記生成部は、
前記移動体の各々の地面上の位置を固定して、前記観測移動体の地面上の位置及び前記観測装置の観測方向を、前記事後分布を表すエネルギーコスト関数を最適化するように推定すること、及び
前記観測移動体の地面上の位置及び前記観測装置の観測方向を固定して、前記移動体の各々の地面上の位置を、前記事後分布を表すエネルギーコスト関数を最適化するように推定すること
を交互に繰り返すことにより、前記俯瞰データを生成する請求項5記載の俯瞰データ生成装置。
【請求項7】
前記生成部は
、静的なランドマークが検出される条件下では
、前記静的なランドマークを用いて前記俯瞰データを生成する請求項1~請求項6の何れか1項記載の俯瞰データ生成装置。
【請求項8】
コンピュータに、
動的な環境において観測装置を搭載した観測移動体からの視点で観測された少なくとも1つの移動体を表
す時系列データを取得する取得工程と、
実空間における前記移動体の大きさに関する事前情報、並び
に前記移動体の大きさ及び位置を用いて求められる、実空間における前記観測移動体からの前記移動体の相対位置と、予め定められた、前記移動体の動きを表す動きモデルとを用いて、
前
記時系列データから、前記観測移動体を俯瞰した位置から観測した場合に得られる、前記観測移動体の地面上の移動軌跡、及び前記移動体の各々の地面上の移動軌跡を表す俯瞰データを生成する生成工程と、
を含む処理を実行させるための俯瞰データ生成プログラム。
【請求項9】
コンピュータが、
動的な環境において観測装置を搭載した観測移動体からの視点で観測された少なくとも1つの移動体を表
す時系列データを取得する取得工程と、
実空間における前記移動体の大きさに関する事前情報、並び
に前記移動体の大きさ及び位置を用いて求められる、実空間における前記観測移動体からの前記移動体の相対位置と、予め定められた、前記移動体の動きを表す動きモデルとを用いて、
前
記時系列データから、前記観測移動体を俯瞰した位置から観測した場合に得られる、前記観測移動体の地面上の移動軌跡、及び前記移動体の各々の地面上の移動軌跡を表す俯瞰データを生成する生成工程と、
を含む処理を実行する俯瞰データ生成方法。
【請求項10】
動的な環境において観測装置を搭載したロボットからの視点で観測された少なくとも1つの移動体を表
す時系列データを取得する取得部と、
実空間における前記移動体の大きさに関する事前情報、並び
に前記移動体の大きさ及び位置を用いて求められる、実空間における前記ロボットからの前記移動体の相対位置と、予め定められた、前記移動体の動きを表す動きモデルとを用いて、
前
記時系列データから、前記ロボットを俯瞰した位置から観測した場合に得られる、前記ロボットの地面上の移動軌跡、及び前記移動体の各々の地面上の移動軌跡を表す俯瞰データを生成する生成部と、
前記ロボットを自律走行させる自律走行部と、
前記俯瞰データを用いて、前記ロボットが目的地に移動するように前記自律走行部を制御する制御部と、
を含むロボット。
【請求項11】
前記取得部は、カメラ、レーザーレーダー、及びミリ波レーダーのいずれかを含む請求項1の俯瞰データ生成装置。
【請求項12】
前記取得工程は、カメラ、レーザーレーダー、及びミリ波レーダーのいずれかを用いて観測された前記少なくとも1つの移動体を表す時系列データを取得する請求項9の俯瞰データ生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、俯瞰データ生成装置、俯瞰データ生成プログラム、俯瞰データ生成方法、及びロボットに関する。
【背景技術】
【0002】
従来より、一人称視点で撮影された映像で観測した人物骨格に基づき、俯瞰視点での人物位置分布を推定する技術が知られている(非特許文献1)。
【0003】
また、静的なランドマーク基準の自己位置推定(Simultaneously Localization and Mapping:SLAM)の最適化対象に移動体を加えて逐次最適化を行う技術が知られている(非特許文献2)。
【0004】
また、GNSS(Global Navigation Satellite System)により位置を推定する技術が知られている(非特許文献3)。
【0005】
また、俯瞰視点映像中における一人称映像の撮影位置を推定する技術が知られている(特許文献1)。この技術では、推定のために俯瞰視点及び一人称視点の両視点から抽出された動き特徴の照合を行っている。
【先行技術文献】
【非特許文献】
【0006】
【文献】"MonoLoco: Monocular 3D Pedestrian Localization and Uncertainty Estimation",インターネット検索<URL: https://arxiv.org/abs/1906.06059>, Jun 2019
【文献】"CubeSLAM: Monocular 3D Object SLAM",インターネット検索<URL: https://arxiv.org/abs/1806.00557>,Jun 2018
【文献】「フィールドロボティクスの現状と展望」、インターネット検索<URL: https://committees.jsce.or.jp/opcet_sip/system/files/0130_01.pdf>
【特許文献】
【0007】
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、上記非特許文献1記載の技術では、観測カメラの運動や周辺の移動体の移動軌跡を復元することはできない。
【0009】
また、上記非特許文献2記載の技術は、移動体と共に静的なランドマークが安定して観測可能な環境でしか適用できない。また、移動体の動きモデルが単純な剛体運動に限られ、相互作用を考慮した移動体の動きに対応できない。
【0010】
また、上記非特許文献3記載の技術では、GNSSを搭載した装置自身の自己位置の復元のみを対象とし,周辺の移動体の位置を復元できない。また、高層ビルなどによる遮蔽が生じる環境では、GPS(Global Positioning System)電波の受信が不安定となり、位置復元結果が不正確となる。
【0011】
また、上記特許文献1記載の技術は、俯瞰視点の映像が手に入らない場合には適用できない。
【0012】
本発明は、上記の点に鑑みてなされたものであり、静的なランドマークが検出されない状況であっても、動的な環境において観測装置を搭載した観測移動体からの視点で観測された2次元観測情報から、観測移動体の地面上の移動軌跡、及び移動体の各々の地面上の移動軌跡を表す俯瞰データを生成することができる俯瞰データ生成装置、俯瞰データ生成プログラム、俯瞰データ生成方法、及びロボットを提供することを目的とする。
【課題を解決するための手段】
【0013】
開示の第1態様は、俯瞰データ生成装置であって、動的な環境において観測装置を搭載した観測移動体からの視点で観測された少なくとも1つの移動体を表す2次元観測情報の時系列データを取得する取得部と、実空間における前記移動体の大きさに関する事前情報、並びに前記2次元観測情報上の前記移動体の大きさ及び位置を用いて求められる、実空間における前記観測移動体からの前記移動体の相対位置と、予め定められた、前記移動体の動きを表す動きモデルとを用いて、前記2次元観測情報の時系列データから、前記観測移動体を俯瞰した位置から観測した場合に得られる、前記観測移動体の地面上の移動軌跡、及び前記移動体の各々の地面上の移動軌跡を表す俯瞰データを生成する生成部と、を含む。
【0014】
上記第1態様において、前記事前情報は、実空間における前記移動体の大きさの分布に関するものであり、前記生成部は、前記観測移動体からの前記移動体の相対位置の分布と、前記移動体の動きの分布を表す前記動きモデルとを用いて、前記2次元観測情報の時系列データから、前記観測移動体の各時刻の地面上の位置分布を表す前記移動軌跡、及び前記移動体の各々の各時刻の地面上の位置分布を表す前記移動軌跡を表す前記俯瞰データを生成するようにしてもよい。
【0015】
上記第1態様において、前記動きモデルを、前記移動体の等速運動を表すモデル、又は前記移動体間の相互作用に応じた動きを表すモデルとしてもよい。
【0016】
上記第1態様において、俯瞰データ生成装置は、前記2次元観測情報の時系列データから、前記移動体の各々を追跡し、前記2次元観測情報上の前記移動体の各々の各時刻の位置及び大きさを取得する追跡部を更に含み、前記生成部は、前記追跡部によって取得された前記2次元観測情報上の前記移動体の各々の各時刻の位置及び大きさから、前記俯瞰データを生成するようにしてもよい。
【0017】
上記第1態様において、前記生成部は、各時刻についての、前記観測移動体からの前記移動体の相対位置と、前記動きモデルとを用いて表される事後分布であって、一時刻前の前記観測移動体及び前記移動体の各々の地面上の位置が与えられた下での、前記観測移動体及び前記移動体の各々の地面上の位置の事後分布を最大化するように、前記俯瞰データを生成するようにしてもよい。
【0018】
上記第1態様において、前記生成部は、前記移動体の各々の地面上の位置を固定して、前記観測移動体の地面上の位置及び前記観測装置の観測方向を、前記事後分布を表すエネルギーコスト関数を最適化するように推定すること、及び前記観測移動体の地面上の位置及び前記観測装置の観測方向を固定して、前記移動体の各々の地面上の位置を、前記事後分布を表すエネルギーコスト関数を最適化するように推定することを交互に繰り返すことにより、前記俯瞰データを生成するようにしてもよい。
【0019】
上記第1態様において、前記生成部は、前記2次元観測情報から静的なランドマークが検出される条件下では、前記2次元観測情報が表す前記静的なランドマークを用いて前記俯瞰データを生成するようにしてもよい。
【0020】
開示の第2態様は、俯瞰データ生成プログラムであって、コンピュータに、動的な環境において観測装置を搭載した観測移動体からの視点で観測された少なくとも1つの移動体を表す2次元観測情報の時系列データを取得する取得工程と、実空間における前記移動体の大きさに関する事前情報、並びに前記2次元観測情報上の前記移動体の大きさ及び位置を用いて求められる、実空間における前記観測移動体からの前記移動体の相対位置と、予め定められた、前記移動体の動きを表す動きモデルとを用いて、前記2次元観測情報の時系列データから、前記観測移動体を俯瞰した位置から観測した場合に得られる、前記観測移動体の地面上の移動軌跡、及び前記移動体の各々の地面上の移動軌跡を表す俯瞰データを生成する生成工程と、を含む処理を実行させるためのプログラムである。
【0021】
開示の第3態様は、俯瞰データ生成方法であって、コンピュータが、動的な環境において観測装置を搭載した観測移動体からの視点で観測された少なくとも1つの移動体を表す2次元観測情報の時系列データを取得する取得工程と、実空間における前記移動体の大きさに関する事前情報、並びに前記2次元観測情報上の前記移動体の大きさ及び位置を用いて求められる、実空間における前記観測移動体からの前記移動体の相対位置と、予め定められた、前記移動体の動きを表す動きモデルとを用いて、前記2次元観測情報の時系列データから、前記観測移動体を俯瞰した位置から観測した場合に得られる、前記観測移動体の地面上の移動軌跡、及び前記移動体の各々の地面上の移動軌跡を表す俯瞰データを生成する生成工程と、を含む処理を実行する。
【0022】
開示の第4態様は、ロボットであって、動的な環境において観測装置を搭載したロボットからの視点で観測された少なくとも1つの移動体を表す2次元観測情報の時系列データを取得する取得部と、実空間における前記移動体の大きさに関する事前情報、並びに前記2次元観測情報上の前記移動体の大きさ及び位置を用いて求められる、実空間における前記ロボットからの前記移動体の相対位置と、予め定められた、前記移動体の動きを表す動きモデルとを用いて、前記2次元観測情報の時系列データから、前記ロボットを俯瞰した位置から観測した場合に得られる、前記ロボットの地面上の移動軌跡、及び前記移動体の各々の地面上の移動軌跡を表す俯瞰データを生成する生成部と、前記ロボットを自律走行させる自律走行部と、前記俯瞰データを用いて、前記ロボットが目的地に移動するように前記自律走行部を制御する制御部と、を含む。
【発明の効果】
【0023】
本発明によれば、静的なランドマークが検出されない状況であっても、動的な環境において観測装置を搭載した観測移動体からの視点で観測された2次元観測情報から、観測移動体の地面上の移動軌跡、及び移動体の各々の地面上の移動軌跡を表す俯瞰データを生成することができる。
【図面の簡単な説明】
【0024】
【
図1】第1実施形態に係るロボットの概略構成を示す図である。
【
図2】カメラにより撮影される画像の一例を示す図である。
【
図3】画像から人物を検出した結果の一例を示す図である。
【
図5】第1、第2実施形態に係る俯瞰データ生成装置のハードウェア構成を示すブロック図である。
【
図6】第1、第2実施形態に係る俯瞰データ生成装置による俯瞰データ生成処理の流れを示すフローチャートである。
【
図7】第2実施形態に係る情報処理端末の概略構成を示す図である。
【
図11】画像から人物を検出した結果の一例を示す図である。
【発明を実施するための形態】
【0025】
以下、本発明の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されている場合があり、実際の比率とは異なる場合がある。
【0026】
[第1実施形態]
図1は、本発明の第1実施形態に係るロボット100の概略構成を示す図である。
図1に示すように、ロボット100は、カメラ10、俯瞰データ生成装置20、報知部50、及び自律走行部60を備える。俯瞰データ生成装置20は、取得部22、追跡部24、生成部26、及び制御部28を備える。なお、ロボット100が、観測移動体の一例であり、カメラ10が、観測装置の一例である。
【0027】
カメラ10は、スタート地点から目的地に移動するまでの間、ロボット100の周囲を予め定めた間隔で撮影し、撮影した画像を俯瞰データ生成装置20の取得部22に出力する。なお、画像が、2次元観測情報の一例である。
【0028】
例えば、動的な環境においてロボット100からの視点で観測された少なくとも1人の人物を表す画像が、カメラ10により撮影される(
図2参照)。
【0029】
カメラ10として、透視投影のRGBカメラを用いてもよいし、魚眼カメラや360度カメラを用いてもよい。
【0030】
取得部22は、カメラ10によって撮影された画像の時系列データを取得する。
【0031】
追跡部24は、取得した画像の時系列データから、人物の各々を追跡し、画像上の人物の各々の各時刻の位置及び大きさを取得する。
【0032】
例えば、
図3に示すように、画像上の人物の各々について、当該人物を表すバウンディングボックスを検出して追跡し、画像上の人物の中心位置(バウンディングボックスの中心位置)及び高さ(バウンディングボックスの高さ)を時刻毎に取得する。
【0033】
生成部26は、実空間における人物の大きさに関する事前情報、並びに画像上の人物の各々の大きさ及び位置を用いて求められる、実空間におけるロボット100からの人物の相対位置の分布と、予め定められた、人物の動きの分布を表す動きモデルとを用いて、画像の時系列データから、ロボット100を俯瞰した位置から観測した場合に得られる、ロボット100の地面上の移動軌跡、及び人物の各々の地面上の移動軌跡を表す俯瞰データを生成する。
【0034】
具体的には、実空間における人物の大きさに関する事前情報は、実空間における人物の大きさの分布に関するものであり、動きモデルは、人物の等速運動を表すモデル、又は人物間の相互作用に応じた動きを表すモデルである。また、生成部26は、各時刻についての、ロボット100からの人物の相対位置と、動きモデルとを用いて表される事後分布であって、一時刻前のロボット100及び人物の各々の地面上の位置、並びに現時刻における画像上の人物の各々の位置及び大きさが与えられた下での、ロボット100及び人物の各々の地面上の位置の事後分布を最大化するように、俯瞰データを生成する。
【0035】
上記の事後分布の最大化は、以下の式で表される。
【0036】
【0037】
ここで、^X0:K
tは、時刻tにおけるロボット100及び人物の各々の地面上の位置を表す。X1:K
tは、時刻tにおける人物の各々の地面上の位置を表す。Z1:K
tは、時刻tにおけるロボット100からの人物の各々の相対位置を表す。なお、数式中のハット(^)付きの変数Xは、明細書中では、^Xと表記する。
【0038】
本実施形態では、生成部26は、一例として、人物の各々の地面上の位置を固定して、ロボット100の地面上の位置及びカメラ10の観測方向を、上記の事後分布を表すエネルギーコスト関数を最小化するように推定すること、及びロボット100の地面上の位置及びカメラ10の観測方向を固定して、人物の各々の地面上の位置を、上記の事後分布を表すエネルギーコスト関数を最小化するように推定することを交互に繰り返すことにより、俯瞰データを生成する。
【0039】
ロボット100の地面上の位置及びカメラ10の観測方向を推定する際にエネルギーコスト関数を最小化することは、以下の(1)式で表される。また、人物の各々の地面上の位置を推定する際にエネルギーコスト関数を最小化することは、以下の(2)式で表される。
【0040】
【0041】
ここで、Δx0
tは、時刻tにおける、一時刻前t-1からのロボット100の地面上の位置の変化量及びカメラ10の観測方向の変化量を表す。X0:K
t-τ:t-1は、時刻t-τから時刻t-1までの各時刻におけるロボット100及び人物の各々の地面上の位置を示す。
【0042】
ここで、エネルギーコスト関数εcは、以下の式で表される。
【0043】
【0044】
本実施形態では、一例として、事後分布の負の対数をとることにより、エネルギーコスト関数を導出している。
【0045】
また、動きモデルを、等速運動を表すモデルとし、τ=2とし、ロボット100又は人物をkとすると、上記式の第1項目は、以下の式で表される。
【0046】
【0047】
k=0であれば、x0
tは、時刻tにおけるロボット100の地面上の位置及びカメラ10の観測方向を表し、k=1~Kであれば、xk
tは、時刻tにおける人物kの地面上の位置を表す。
【0048】
また、時刻tにおけるカメラ10に対するk番目の人物の相対位置zk
tは、以下の式に示すように、ガウシアン分布に従う。
【0049】
【0050】
ただし、hkは、実空間における人物の身長であり、μhは、平均を表し、σh2は、分散を表す。
【0051】
また、動きモデルを、人物間の相互作用に応じた動きを表すモデルとし、上記式の第1項目は、以下の式で表される。
【0052】
【0053】
また、上記のエネルギーコスト関数εcの第2項目は、以下の式で表される。
【0054】
【0055】
生成部26は、例えば、
図4に示すような俯瞰データを生成する。
図4は、黒丸をつないだ線でロボット100の地面上の移動軌跡を示し、破線でロボット100の地面上の移動軌跡を示す例を示している。
【0056】
制御部28は、俯瞰データを用いて、ロボット100が目的地に移動するように自律走行部60を制御する。例えば、制御部28は、ロボット100の移動方向及び速度を指定し、指定された移動方向及び速度で移動するように自律走行部60を制御する。
【0057】
また、制御部28は、俯瞰データを用いて、介入行動が必要と判断した場合には、「道を空けてください」等のメッセージを音声出力したり、警告音を鳴らすよう報知部50を制御する。
【0058】
次に、ロボット100の俯瞰データ生成装置20のハードウェア構成について説明する。
【0059】
図5に示すように、俯瞰データ生成装置20は、CPU(Central Processing Unit)61、ROM(Read Only Memory)62、RAM(Random Access Memory)63、ストレージ64、及び通信インタフェース(I/F)65を有する。各構成は、バス66を介して相互に通信可能に接続されている。
【0060】
本実施形態では、ストレージ64には、俯瞰データ生成プログラムが格納されている。CPU61は、中央演算処理ユニットであり、各種プログラムを実行したり、各構成を制御したりする。すなわち、CPU61は、ストレージ64からプログラムを読み出し、RAM63を作業領域としてプログラムを実行する。CPU61は、ストレージ64に記録されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。
【0061】
ROM62は、各種プログラム及び各種データを格納する。RAM63は、作業領域として一時的にプログラム又はデータを記憶する。ストレージ64は、HDD(Hard Disk Drive)又はSSD(Solid State Drive)により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【0062】
通信インタフェース65は、他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI又はWi-Fi(登録商標)等の規格が用いられる。
【0063】
次に、ロボット100の作用について説明する。
【0064】
ロボット100が、自律走行部60により目的地まで移動する際に、カメラ10は、ロボット100の周囲を予め定めた間隔で撮影し、俯瞰データ生成装置20は、定期的に、
図6に示す俯瞰データ生成処理により俯瞰データを生成し、俯瞰データに基づいて、ロボット100が目的地に移動するように自律走行部60を制御する。
【0065】
図6は、俯瞰データ生成装置20による俯瞰データ生成処理の流れを示すフローチャートである。CPU61がストレージ64から俯瞰データ生成プログラムを読み出して、RAM63に展開し実行することにより、俯瞰データ生成処理が行なわれる。
【0066】
ステップS100では、CPU61が、取得部22として、カメラ10によって撮影された画像の時系列データを取得する。
【0067】
ステップS102では、CPU61が、追跡部24として、取得した画像の時系列データから、人物の各々を追跡し、画像上の人物の各々の各時刻の位置及び大きさを取得する。
【0068】
ステップS104では、CPU61が、生成部26として、取得した画像の時系列データの各時刻についての、ロボット100の地面上の位置、カメラ10の観測方向、及び人物の各々の地面上の位置の各々に対し、初期値を設定する。
【0069】
ステップS106では、CPU61が、生成部26として、上記(1)式に従って、人物の各々の地面上の位置を固定して、ロボット100の地面上の位置及びカメラ10の観測方向を、上記の事後分布を表すエネルギーコスト関数を最適化するように推定する。
【0070】
ステップS108では、CPU61が、生成部26として、上記(2)式に従って、ロボット100の地面上の位置及びカメラ10の観測方向を固定して、人物の各々の地面上の位置を、上記の事後分布を表すエネルギーコスト関数を最適化するように推定する。
【0071】
ステップS110では、CPU61が、生成部26として、予め定められた反復終了条件を満たしたか否かを判定する。例えば、反復回数が上限回数に到達したことや、エネルギーコスト関数の値が収束したことなどを、反復終了条件として用いればよい。反復終了条件を満たした場合には、CPU61は、ステップS112へ移行する。一方、反復終了条件を満たしていない場合には、CPU61は、ステップS106へ戻る。
【0072】
ステップS112では、CPU61が、生成部26として、最終的に得られた、各時刻についての、ロボット100の地面上の位置、カメラ10の観測方向、及び人物の各々の地面上の位置を表す俯瞰データを生成し、制御部28に出力し、俯瞰データ生成処理を終了する。
【0073】
制御部28は、生成された俯瞰データを用いて、ロボット100が目的地に移動するように、ロボット100の移動方向及び速度を指定し、指定された移動方向及び速度で移動するように自律走行部60を制御する。また、制御部28は、俯瞰データを用いて、介入行動が必要と判断した場合には、「道を空けてください」等のメッセージを音声出力したり、警告音を鳴らすよう報知部50を制御する。
【0074】
このように、本実施形態では、動的な環境においてカメラ10を搭載したロボット100からの視点で観測された少なくとも1人の人物を表す画像の時系列データを取得し、実空間における人物の大きさに関する事前情報、並びに画像上の人物の大きさ及び位置を用いて求められる、実空間におけるロボット100からの人物の相対位置と、予め定められた、人物の動きを表す動きモデルとを用いて、画像の時系列データから、ロボット100の地面上の移動軌跡、及び人物の各々の地面上の移動軌跡を表す俯瞰データを生成する。これにより、静的なランドマークが検出されない状況であっても、動的な環境においてカメラ10を搭載したロボット100からの視点で観測された画像から、ロボット100の地面上の移動軌跡、及び人物の各々の地面上の移動軌跡を表す俯瞰データを生成することができる。
【0075】
[第2実施形態]
次に、第2実施形態に係る俯瞰データ生成装置について説明する。なお、第1実施形態と同様の構成となる部分については、同一符号を付して詳細な説明を省略する。
【0076】
第2実施形態では、俯瞰データ生成装置を、ユーザが保持している情報処理端末に備えられている場合を例に説明する。
【0077】
図7は、本発明の第2実施形態に係る情報処理端末200の概略構成を示す図である。
図7に示すように、情報処理端末200は、カメラ10、俯瞰データ生成装置220、及び出力部250を備える。俯瞰データ生成装置220は、取得部22、追跡部24、及び生成部26を備える。なお、ユーザが、観測移動体の一例であり、カメラ10が、観測装置の一例である。
【0078】
情報処理端末200は、ユーザにより直接保持されているか、あるいは、ユーザが保持する保持物体(例えば、スーツケース)に搭載されている。
【0079】
カメラ10は、ユーザの周囲を予め定めた間隔で撮影し、撮影した画像を俯瞰データ生成装置220の取得部22に出力する。
【0080】
生成部26は、実空間における人物の大きさに関する事前情報、並びに画像上の人物の各々の大きさ及び位置を用いて求められる、実空間におけるユーザからの人物の相対位置と、予め定められた、人物の動きを表す動きモデルとを用いて、画像の時系列データから、ユーザを俯瞰した位置から観測した場合に得られる、ユーザの地面上の移動軌跡、及び人物の各々の地面上の移動軌跡を表す俯瞰データを生成し、出力部250へ出力する。
【0081】
出力部250は、生成された俯瞰データをユーザに提示したり、インターネットを介してサーバ(図示省略)へ俯瞰データを送信する。
【0082】
また、俯瞰データ生成装置220は、
図5に示すように、上記第1実施形態の俯瞰データ生成装置20と同様のハードウェア構成を有する。
【0083】
なお、俯瞰データ生成装置220の他の構成及び作用については、第1実施形態と同様であるため、説明を省略する。
【0084】
このように、本実施形態では、動的な環境においてカメラ10を有する情報処理端末200を保持したユーザからの視点で観測された少なくとも1人の人物を表す画像の時系列データを取得し、実空間における人物の大きさに関する事前情報、並びに画像上の人物の大きさ及び位置を用いて求められる、実空間におけるユーザからの人物の相対位置と、予め定められた、人物の動きを表す動きモデルとを用いて、画像の時系列データから、ユーザの地面上の移動軌跡、及び人物の各々の地面上の移動軌跡を表す俯瞰データを生成する。これにより、静的なランドマークが検出されない状況であっても、動的な環境においてカメラ10を有する情報処理端末200を保持したユーザからの視点で観測された画像から、ユーザの地面上の移動軌跡、及び人物の各々の地面上の移動軌跡を表す俯瞰データを生成することができる。
【0085】
本発明は、自動運転車両にも応用することができる。この場合、観測移動体は自動運転車両であり、観測装置は、カメラ、レーザーレーダー、ミリ波レーダーであり、移動体は他の車両、オートバイ、歩行者等である。
【0086】
[実施例]
上記第1実施形態の俯瞰データ生成装置20により、画像の時系列データから、俯瞰データを生成した例について説明する。
【0087】
本実施例では、
図8に示すような混雑環境で撮影された画像の時系列データを入力とした。
図8では、時刻t、t+1、t+2の画像11、12、13からなる時系列データを入力とした例を示している。このとき、俯瞰データ生成装置20により、
図9に示すような俯瞰データが生成された。
図9では、俯瞰データが、時刻t、t+1、t+2におけるロボット100及び人物の各々の地面上の位置を表す例を示している。
【0088】
[変形例]
なお、上記の実施形態では、ロボット100や情報処理端末200が俯瞰データ生成装置20、220を備えた場合について説明したが、俯瞰データ生成装置20、220の機能を外部サーバに設けてもよい。この場合、ロボット100や情報処理端末200は、カメラ10で撮影した画像の時系列データを外部サーバに送信する。外部サーバは、送信された画像の時系列データから、俯瞰データを生成し、ロボット100や情報処理端末200に送信する。
【0089】
また、俯瞰データにおいて、各時刻のロボット100やユーザの位置、及び各人物の位置を、
図10に示すような確率分布として表すようにしてもよい。この場合、生成部26は、画像の時系列データから、ロボット100やユーザの各時刻の地面上の位置分布を表す移動軌跡、及び人物の各々の各時刻の地面上の位置分布を表す移動軌跡を表す俯瞰データを生成する。
【0090】
また、生成部26は、カメラ10により撮影される画像から静的なランドマークが検出される条件下では、画像が表す静的なランドマークを用いて俯瞰データを生成してもよい。例えば、上記の非特許文献2に記載の技術を用いてもよい。この場合、カメラ10により撮影される画像から静的なランドマークが検出される条件下では、画像が表す静的なランドマークを用いて俯瞰データを生成するようにし、カメラ10により撮影される画像から静的なランドマークが検出されない条件下(例えば、混雑した環境)では、上記の実施形態で説明した手法により、俯瞰データを生成してもよい。また、画像が表す静的なランドマークを用いて生成された俯瞰データと、上記の実施形態で説明した手法により生成された俯瞰データとを統合するようにしてもよい。
【0091】
また、移動モデルとして、数式で規定されるモデルを用いる場合を例に説明したが、これに限定されるものではない。移動モデルとして、予め学習されたDNN(Deep Neural Network)モデルを用いてもよい。例えば、周辺の人物の各々の相対位置を入力として、次の時刻ステップの対象人物の位置を出力するDNNモデルを、移動モデルとして用いてもよい。
【0092】
また、追跡部24は、画像上の人物の各々について、当該人物を表すバウンディングボックスを検出して追跡し、画像上の人物の中心位置(バウンディングボックスの中心位置)及び高さ(バウンディングボックスの高さ)を時刻毎に取得する場合を例に説明したが、これに限定されるものではない。例えば、追跡部24は、画像上の人物の各々について、当該人物を表す人物骨格を検出して追跡し、画像上の人物の中心位置(人物骨格の中心位置)及び高さ(人物骨格の高さ)を時刻毎に取得するようにしてもよい。また、
図11に示すように、追跡部24は、画像上の人物の各々について、当該人物を表す高さを示す線を検出して追跡し、画像上の人物の中心位置(線の中心位置)及び高さ(線の高さ)を時刻毎に取得するようにしてもよい。
【0093】
また、2次元観測情報が、画像である場合を例に説明したが、これに限定されるものではない。例えば、観測装置がイベントカメラであれば、各画素について、動きに応じた画素値を有するデータを、2次元観測情報として用いてもよい。
【0094】
また、俯瞰データが表す移動体が人物である場合を例に説明したが、これに限定されるものではない。例えば、俯瞰データが表す移動体が、自転車、車両などのパーソナルモビリティであってもよい。
【0095】
また、上記各実施形態でCPUがソフトウェア(プログラム)を読み込んで実行し俯瞰データ生成処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、俯瞰データ生成処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【0096】
また、上記各実施形態では、俯瞰データ生成プログラムがストレージ64に予め記憶されている態様を説明したが、これに限定されない。プログラムは、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の記録媒体に記録された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【符号の説明】
【0097】
10 カメラ
20 俯瞰データ生成装置
22 取得部
24 追跡部
26 生成部
28 制御部
50 報知部
60 自律走行部
100 ロボット
200 情報処理端末
220 俯瞰データ生成装置