以下に、本発明に係る実施形態を図面に基づいて詳細に説明する。なお、この実施形態によりこの発明が限定されるものではない。また、下記実施形態における構成要素には、当業者が置換可能かつ容易なもの、あるいは実質的に同一のものが含まれる。
[実施形態1]
図1に示す本実施形態の状況検出システム1は、画像を用いて移動体Vとその周囲の状況を検出するためのシステムである。この状況検出システム1による状況検出の対象となる移動体Vは、典型的には、路面を走行する車両であり、例えば、自家用車、レンタカー、シェアリングカー、ライドシェアカー、バス、タクシー、トラック、輸送車、作業車等のいずれであってもよい。
ここで、画像を用いた検出技術としては、例えば、物体検出(Object Detection)、行動検出(Action Detection)等がある。
物体検出とは、図2に示すように、動画像を構成する静止画像内から物体の種類と位置を検出するものである。さらに言えば、物体検出とは、静止画像からある瞬間の物体の静的な位置、種類を検出するものである。物体検出によって検出される物体は、例えば、車両、通行人、自転車、障害物、街灯、看板、電柱、標識、停止線等である。図2は、一例として、静止画像内の物体検出によって、物体として「自転車」、「停止線」が検出された場合を表しており、当該検出された「自転車」、「停止線」の位置が矩形枠によって示されている。また、この物体検出では、図3に示すように、動画像を構成する複数の静止画像を比較して物体の位置変化を検出することも可能である。図3は、一例として、動画像を構成する複数の静止画像内の物体検出によって、物体として「自転車」、「停止線」が検出され、「自転車」の位置が右から左に変化したことが検出された場合を表している。
一方、行動検出とは、図4に示すように、動画像を構成する複数の静止画像から物体検出によって検出された物体の位置、状態等の時間的な変化から物体単独の動き(行動)を検出するものである。言い換えれば、行動検出とは、時間変化に伴う物体の動き(行動)を検出するものである。なおこの場合、例えば、「停止線」等のように、検出された物体がその位置で静止していること(言い換えれば、動いていないこと)も物体の動き(行動)の一例として、当該物体の動きの概念の範疇に含まれる。行動検出では、例えば、動画像を構成する静止画像から複数の物体が検出された場合でも、それぞれの物体単独の動きを検出する。図4は、一例として、動画像を構成する複数の静止画像内の物体検出によって2台の「自転車」が検出された上で、行動検出によって当該2台の「自転車」が「それぞれふらついて走行している」という物体単独の動きが検出された場合を表している。
この行動検出では、物体単独の状態や変化(例えば、「自転車」がふらついて走行している動き)を検出し、例えば、移動体Vの運転者等に対して危険予知を行うことはできるが、検出した複数の物体同士を関係づけて挙動の意味などを検出することはできない。このため、例えば、図4の例では、ふらついて走行している2台の「自転車」が他の物体との関係に関わりなく双方ともに危険であると判断されることとなる。
これに対して、本実施形態の状況検出システム1は、物体検出、行動検出に加えて、さらに関係行動検出(Relational Action Detection)を用いて、移動体Vや動画像から検出した物体同士との関係性を検出し、これらの動きを関係づけて相互の挙動の意味(種別)を検出することで、より詳細な状況検出の実現を図っている。
ここでいう関係行動検出とは、図5に示すように、動画像を構成する複数の静止画像から行動検出によって検出された物体単独の動きや移動体Vの動きから、複数の物体が関係することで生じる挙動(振る舞い)、物体同士の関係性を検出するものである。言い換えれば、関係行動検出とは、移動体Vを含む複数の物体のそれぞれの時間変化に伴う動きが関係して生じる挙動を検出するものである。複数の物体の動きが関係して生じる挙動は、例えば、「複数の物体の関係性の変化に応じて生じる事象」と言い換えることもできる。図5は、一例として、動画像を構成する複数の静止画像内の物体検出によって2台の「自転車」が検出され、行動検出によって当該2台の「自転車」が「それぞれふらついて走行している」という物体単独の動きが検出された場合を表している。そして、図5は、関係行動検出によって、左折しようとしている自車両(移動体V)の動きに対して、ふらついて走行している手前側の「自転車」が自車両の進行方向に向かっている一方、奥側の「自転車」が自車両の進行方向とは異なる方向に向かっているという挙動が検出された場合を表している。
本実施形態の状況検出システム1は、上記のような関係行動検出を用いて移動体Vを含む複数の物体の動きが関係して生じる挙動(振る舞い)を検出し、当該挙動の意味(種別)を特定する。これにより、状況検出システム1は、例えば、図5の例において、自車両の進行方向に向かっている手前側の「自転車」に対しては危険であると判断することが可能である一方、ふらついているものの自車両とは異なる方向に向かっている奥側の「自転車」に対しては危険ではないと判断することも可能となる。
ここで、本実施形態の状況検出システム1では、図6に示すように、学習済みモデルMを生成する処理を行う学習フェーズと、学習済みモデルMを用いて上記のような状況検出を実際に行う使用フェーズとがある。状況検出システム1は、例えば、パーソナルコンピュータ、ワークステーション、タブレット端末等の種々のコンピュータ機器によって実現される。以下、図1、図6、図7を参照して状況検出システムの各構成について詳細に説明する。
具体的には、状況検出システム1は、入力機器10と、出力機器20と、記憶回路30と、処理回路40とを備える。入力機器10、出力機器20、記憶回路30、及び、処理回路40は、ネットワークを介して相互に通信可能に接続されている。本実施形態の状況検出システム1は、学習フェーズにおける各処理と使用フェーズにおける各処理との双方を行うものである。ここでは、状況検出システム1は、学習フェーズにおける各処理を実行する学習済みモデル生成システムと、使用フェーズにおける各処理を実行する状況検出装置とを集約して1つのシステムで兼用して構成されたものである。
入力機器10は、状況検出システム1に対する種々の入力を行う機器である。入力機器10は、例えば、ユーザからの各種の操作入力を受け付ける操作入力機器、状況検出システム1外の他の機器からのデータ(情報)入力を受け付けるデータ入力機器等によって実現される。操作入力機器は、例えば、マウス、キーボード、トラックボール、スイッチ、ボタン、ジョイスティック、タッチパッド、タッチスクリーン、非接触入力回路、音声入力回路等により実現される。データ入力機器は、例えば、有線、無線を問わず通信を介して機器との間で各種データの送受信を行う通信インターフェース、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、フレキシブルディスク(FD)、光磁気ディスク(Magneto-Optical disk)、CD-ROM、DVD、USBメモリ、SDカードメモリ、Flashメモリ等の記録媒体から各種データを読み出す記録媒体インターフェース等によって実現される。
本実施形態の入力機器10は、種々の機器から少なくとも動画像データ、及び、計測データが入力される。
動画像データとは、移動体Vから撮影された当該移動体Vの周囲の動画像を表すデータである。移動体Vの周囲の動画像は、例えば、移動体Vに搭載されたカメラ50によって撮影され、当該カメラ50から動画像データとして入力機器10に入力される。
計測データとは、動画像の撮影に伴って計測された移動体Vの状態に応じた計測値を表すデータである。計測値は、典型的には、移動体Vにおいて動画像の撮影と同期して計測され、撮影時点における移動体Vの状態を表す。計測値は、例えば、移動体Vの速度、移動体Vの加減速度、移動体Vの走行用動力源回転数、移動体Vの方向変化量等の物理量である。また、計測値は、移動体Vの操舵角、アクセルペダルの操作量(アクセル踏み込み量)、ブレーキペダルの操作量(ブレーキ踏み込み量)等を含んでいてもよい。移動体Vの状態に応じた計測値は、例えば、移動体Vに搭載されたセンサ、検出器等の計測機器51によって計測され、当該計測機器51から計測データとして入力機器10に入力される。
なお、カメラ50、及び、計測機器51は、例えば、移動体Vに搭載されたドライブレコーダ等の車載機器を構成するものであってもよい。
出力機器20は、状況検出システム1から種々の出力を行う機器である。出力機器20は、例えば、各種画像情報を出力して表示するディスプレイ、音情報を出力するスピーカ、状況検出システム1外の他の機器に対するデータ(情報)出力を行うデータ出力機器等によって実現される。データ出力機器は、例えば、有線、無線を問わず通信を介して機器との間で各種データの送受信を行う通信インターフェース、上記と同様の記録媒体に各種データを書き込む記録媒体インターフェース等によって実現される。
なお、上述した入力機器10のデータ入力機器と出力機器20のデータ出力機器とは、一部又は全部の構成が兼用されてもよい。
記憶回路30は、各種データを記憶する回路である。記憶回路30は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、ハードディスク、光ディスク等によって実現される。記憶回路30は、例えば、状況検出システム1が各種の機能を実現するためのプログラムを記憶する。記憶回路30に記憶されるプログラムには、入力機器10を機能させるプログラム、出力機器20を機能させるプログラム、処理回路40を機能させるプログラム等が含まれる。また、記憶回路30は、入力機器10を介して入力された生データD0、処理回路40での各種処理に必要なデータ、学習済みモデルMの学習に用いる学習用データセットD3、学習済みモデルM、出力機器20を介して出力する種別特定結果データD5等の各種データを記憶する。記憶回路30は、処理回路40等によってこれらの各種データが必要に応じて読み出される。なお、記憶回路30は、ネットワークを介して状況検出システム1に接続されたクラウドサーバ等により実現されてもよい。
処理回路40は、状況検出システム1における各種処理機能を実現する回路である。処理回路40は、例えば、プロセッサによって実現される。プロセッサとは、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の回路を意味する。処理回路40は、例えば、記憶回路30から読み込んだプログラムを実行することにより、各処理機能を実現する。
以上、本実施形態に係る状況検出システム1の全体構成の概略について説明した。このような構成のもと、本実施形態に係る処理回路40は、学習フェーズにおいて、学習済みモデルMを生成する各種処理を行うための機能を有している。また、本実施形態に係る処理回路40は、使用フェーズにおいて、学習済みモデルMを用いた各種処理を行うための機能を有している。
具体的には、本実施形態の処理回路40は、上記各種処理機能を実現するために、機能概念的に、前処理部41、モデル生成部42、検出対象入力部43、種別特定部44、及び、出力部45を含んで構成される。処理回路40は、例えば、記憶回路30から読み込んだプログラムを実行することにより、これら前処理部41、モデル生成部42、検出対象入力部43、種別特定部44、及び、出力部45の各処理機能を実現する。
前処理部41は、学習フェーズにおいて、学習済みモデルMを学習させるためのデータに対して各種前処理を実行可能な機能を有する部分である。本実施形態の前処理部41は、説明変数となる入力データD1と目的変数となる教師データD2とからなる学習用データセットD3を取得する処理を実行可能である。
前処理部41によって取得される学習用データセットD3は、学習済みモデルMを機械学習によって生成する際に用いられる教師データセットである。学習用データセットD3は、説明変数となる入力データD1と、当該入力データD1に対応する目的変数となる教師データD2とが1組のセットとして紐づけられることで構成される。さらに言えば、学習用データセットD3は、説明変数として定量化された当該入力データD1と、目的変数として定量化された当該教師データD2とから構成される。
前処理部41は、例えば、状況検出システム1外の他の機器等から入力された生データD0に対して様々な前処理を施し、入力データD1と当該入力データD1に対応する教師データD2とを1組のセットとして紐づけることで学習用データセットD3を作成、取得することができる。
ここで、前処理部41によって前処理が施される生データD0は、入力機器10を構成するデータ入力機器を介して状況検出システム1外の他の機器から入力されてもよいし、入力機器10を構成する操作入力機器を介してユーザの操作によって入力されてもよい。本実施形態において、生データD0は、少なくとも上述した動画像データ、及び、計測データを含んでいる。
また、前処理部41によって生データD0に対して施す前処理とは、例えば、生データD0の収集・結合する処理、生データD0から入力データD1を抽出し説明変数として定量化する処理、生データD0に対してアノテーション処理(データに対して教師データD2として成り立たせるためのメタデータを付加する処理)を施し教師データD2を作成し目的変数として定量化する処理、定量化された入力データD1と定量化され教師データD2とを紐づけて組み合わせる処理等を含むものである。前処理部41は、例えば、生データD0が入力されたタイミングで、都度、生データD0に対して前処理を行ってもよいし、入力機器10を構成する操作入力機器を介したユーザの操作に応じて適時のタイミングで生データD0に対して前処理を行ってもよい。
また、前処理部41は、例えば、入力機器10を構成するデータ入力機器を介して、状況検出システム1外の他の機器から、予め作成された学習用データセットD3を取得してもよい。ここでの状況検出システム1外の他の機器とは、例えば、多数の入力データD1、教師データD2、学習用データセットD3等をデータベース化して記憶している学習用データ提供システム等である。
本実施形態において、前処理部41によって取得される学習用データセットD3は、第1学習用データセットD31、第2学習用データセットD32、第3学習用データセットD33、第4学習用データセットD34を含んで構成される。すなわち、本実施形態の前処理部41は、学習用データセットD3として、第1学習用データセットD31、第2学習用データセットD32、第3学習用データセットD33、及び、第4学習用データセットD34を取得する。
第1学習用データセットD31は、学習済みモデルMとして、学習済み物体検出モデルM1を機械学習によって生成する際に用いられる教師データセットである。学習済み物体検出モデルM1は、動画像データから物体検出特徴量を抽出するために用いられる学習済みモデルMである。ここで、物体検出特徴量とは、動画像データにおいて検出される物体を表す特徴量であり、動画像を構成する静止画像内のある瞬間の物体の静的な位置、種類の特徴を表す。学習済み物体検出モデルM1を用いて動画像データから当該物体検出特徴量を抽出する処理は、上述した物体検出に関する処理に相当する。第1学習用データセットD31は、「動画像データ」と、「当該動画像データに対応した物体検出特徴量に関する教師データ」とが1組のセットとして紐づけられることで構成される。つまり、第1学習用データセットD31は、入力データD1(説明変数)として定量化された当該動画像データと、教師データD2(目的変数)として定量化された当該物体検出特徴量に関する教師データとからなる。
第2学習用データセットD32は、学習済みモデルMとして、学習済み行動検出モデルM2を機械学習によって生成する際に用いられる教師データセットである。学習済み行動検出モデルM2は、計測データ及び物体検出特徴量から移動体行動検出特徴量及び物体行動検出特徴量を抽出するために用いられる学習済みモデルMである。ここで、移動体行動検出特徴量とは、計測データの時間変化に伴う移動体Vの動き(行動)を表す特徴量であり、時間変化に伴う移動体単体の動きの特徴を表す。物体行動検出特徴量とは、物体検出特徴量の時間変化に伴う物体の動き(行動)、言い換えれば、動画像を構成する静止画像内の物体の動きを表す特徴量であり、時間変化に伴う物体単体の動きの特徴を表す。学習済み行動検出モデルM2を用いて計測データ及び物体検出特徴量から移動体行動検出特徴量及び物体行動検出特徴量を抽出する処理は、上述した行動検出に関する処理に相当する。第2学習用データセットD32は、「計測データ及び物体検出特徴量」と、「当該計測データに対応した移動体行動検出特徴量に関する教師データ及び当該物体検出特徴量に対応した物体行動検出特徴量に関する教師データ」とが1組のセットとして紐づけられることで構成される。つまり、第2学習用データセットD32は、入力データD1(説明変数)として定量化された当該計測データ及び当該物体検出特徴量と、教師データD2(目的変数)として定量化された当該移動体行動検出特徴量に関する教師データ及び当該物体行動検出特徴量に関する教師データとからなる。
なおここでは、学習済み行動検出モデルM2は、計測データ及び物体検出特徴量から移動体行動検出特徴量及び物体行動検出特徴量の双方を抽出する学習済みモデルMであるものとして説明するがこれに限らず、例えば、複数のサブモデルによって構成されてもよい。すなわち、学習済み行動検出モデルM2は、計測データから移動体行動検出特徴量を抽出する移動体行動検出サブモデル、及び、物体検出特徴量から物体行動検出特徴量を抽出する物体行動検出サブモデルとに分かれて構成されていてもよい。この場合、第2学習用データセットD32は、計測データと、当該計測データの時間変化に伴う移動体Vの動きを表す移動体行動検出特徴量に関する教師データとからなる移動体行動検学習用サブデータセット、及び、物体検出特徴量と、当該物体検出特徴量の時間変化に伴う物体の動きを表す物体行動検出特徴量に関する教師データとからなる物体行動検出用サブデータセットに分かれて構成されていてもよい。
第3学習用データセットD33は、学習済みモデルMとして、学習済み関係行動検出モデルM3を機械学習によって生成する際に用いられる教師データセットである。学習済み関係行動検出モデルM3は、移動体行動検出特徴量及び物体行動検出特徴量から関係行動特徴量を抽出するために用いられる学習済みモデルMである。ここで、関係行動特徴量とは、移動体Vの動きと動画像を構成する静止画像内の物体の動きとが関係して生じる挙動(振る舞い)を表す特徴量であり、移動体Vを含む複数の物体のそれぞれの時間変化に伴う関係性の変化によって生じる挙動の特徴を表す。さらに言い換えれば、関係行動特徴量とは、移動体Vを含む複数の物体の動きの関係性が時間的にどのように変化しているのかを表す特徴量ということもできる。学習済み関係行動検出モデルM3を用いて移動体行動検出特徴量及び物体行動検出特徴量から関係行動特徴量を抽出する処理は、上述した関係行動検出に関する処理に相当する。第3学習用データセットD33は、「移動体行動検出特徴量及び物体行動検出特徴量」と、「当該移動体行動検出特徴量及び当該物体行動検出特徴量に対応した関係行動特徴量に関する教師データ」とが1組のセットとして紐づけられることで構成される。つまり、第3学習用データセットD33は、入力データD1(説明変数)として定量化された当該移動体行動検出特徴量及び当該物体行動検出特徴量と、教師データD2(目的変数)として定量化された当該関係行動特徴量に関する教師データとからなる。
第4学習用データセットD34は、学習済みモデルMとして、学習済み種別特定モデルM4を機械学習によって生成する際に用いられる教師データセットである。学習済み種別特定モデルM4は、関係行動特徴量から挙動の種別を特定するために用いられる学習済みモデルMである。ここで、挙動の種別とは、移動体Vの動きと動画像を構成する静止画像内の物体の動きとが関係して生じる挙動(振る舞い)の種類やその意味を表すものであり、関係行動特徴量が表す挙動の特徴の種類やその意味を表す。学習済み種別特定モデルM4を用いて関係行動特徴量から挙動の種別を特定する処理は、上述した関係行動検出において、移動体Vの動きと動画像を構成する静止画像内の物体の動きとが関係して生じる挙動の種別を特定する処理に相当する。第4学習用データセットD34は、「関係行動特徴量」と、「当該関係行動特徴量に対応した挙動の種別を表す関係行動種別データに関する教師データ」とが1組のセットとして紐づけられることで構成される。つまり、第4学習用データセットD34は、入力データD1(説明変数)として定量化された当該関係行動特徴量と、教師データD2(目的変数)として定量化された当該関係行動種別データに関する教師データとからなる。
前処理部41は、取得した複数の学習用データセットD3(第1学習用データセットD31、第2学習用データセットD32、第3学習用データセットD33、第4学習用データセットD34)を記憶回路30に記憶させる。
モデル生成部42は、学習フェーズにおいて、動画像データ及び計測データから移動体Vの動きと物体の動きとが関係して生じる挙動の種別を特定する学習済みモデルMを機械学習により生成する処理を実行可能な機能を有する部分である。本実施形態のモデル生成部42は、前処理部41によって取得された複数の学習用データセットD3を用いて、学習済みモデルMを機械学習により生成する処理を実行可能である。モデル生成部42は、例えば、新たな学習用データセットD3が取得されたタイミングで、都度、学習済みモデルMを学習させ、生成する処理を行ってもよいし、入力機器10を構成する操作入力機器を介したユーザの操作に応じて適時のタイミングで、学習済みモデルMを学習させ、生成する処理を行ってもよい。
モデル生成部42は、複数の学習用データセットD3を教師データセットとして、種々の機械学習アルゴリズムALに基づく機械学習を行うことによって、学習済みモデルMを生成する。使用する機械学習アルゴリズムALとしては、例えば、ディープラーニング(Deep Learning)、ニューラルネットワーク(Neural Network)、ロジスティック(Logistic)回帰、アンサンブル学習(Ensemble Learning)、サポートベクターマシン(Support Vector Machine)、ランダムフォレスト(Random Forest)、ナイーブベイズ(Naive Bays)等の公知のアルゴリズムが挙げられる。モデル生成部42は、学習用データセットD3のうち、入力データD1を説明変数とし、教師データD2を目的変数として、学習済みモデルMの機械学習を行う。モデル生成部42は、当該機械学習の結果として、動画像データ及び計測データから上記挙動の種別を特定するための機械学習を行った学習済みモデルMを生成する。
学習済みモデルMは、例えば、ニューラルネットワークにより実現される。ニューラルネットワークとしては、例えば、CNN(Convolution Neural Network)、RNN(Recurrent Neural Network)、LSTM(Long short-term memory) ネットワーク等の任意の構成を有するニューラルネットワークを採用することができる。この場合、モデル生成部42は、複数の学習用データセットD3を用いた機械学習を行うことにより、当該ニューラルネットワークにおいて重み付けとして用いられる学習重み付け係数等を学習し、当該学習済みモデルMを生成する。
より具体的には、本実施形態のモデル生成部42は、機能概念的に、物体検出モデル生成部42a、行動検出モデル生成部42b、関係行動検出モデル生成部42c、及び、種別特定モデル生成部42dを含んで構成される。
物体検出モデル生成部42aは、学習済みモデルMのうち、学習済み物体検出モデルM1を機械学習により生成する処理を実行可能な機能を有する部分である。物体検出モデル生成部42aは、前処理部41によって取得された複数の第1学習用データセットD31を用いて、学習済み物体検出モデルM1を機械学習により生成する処理を実行可能である。物体検出モデル生成部42aは、第1学習用データセットD31のうち、「動画像データ」を入力データD1(説明変数)とし、「物体検出特徴量に関する教師データ」を教師データD2(目的変数)として、学習済み物体検出モデルM1の機械学習を行う。物体検出モデル生成部42aは、当該機械学習の結果として、動画像データから物体検出特徴量を抽出するための機械学習を行った学習済み物体検出モデルM1を生成することができる。
物体検出モデル生成部42aによって生成された学習済み物体検出モデルM1は、入力を「動画像データ」とし、出力を「物体検出特徴量」としたモデルである。すなわち、学習済み物体検出モデルM1は、動画像データの入力を受け付けて当該動画像データから物体検出特徴量を出力するように機能付けられる。より詳しくは、学習済み物体検出モデルM1は、ニューラルネットワークの入力層に入力された動画像データに対して、ニューラルネットワークにおける学習重み付け係数に基づく演算を行い、ニューラルネットワークの出力層から物体検出特徴量を出力するようにコンピュータを機能させる。
行動検出モデル生成部42bは、学習済みモデルMのうち、学習済み行動検出モデルM2を機械学習により生成する処理を実行可能な機能を有する部分である。行動検出モデル生成部42bは、前処理部41によって取得された複数の第2学習用データセットD32を用いて、学習済み行動検出モデルM2を機械学習により生成する処理を実行可能である。行動検出モデル生成部42bは、第2学習用データセットD32のうち、「計測データ及び物体検出特徴量」を入力データD1(説明変数)とし、「移動体行動検出特徴量に関する教師データ及び物体行動検出特徴量に関する教師データ」を教師データD2(目的変数)として、学習済み行動検出モデルM2の機械学習を行う。行動検出モデル生成部42bは、当該機械学習の結果として、計測データ及び物体検出特徴量から移動体行動検出特徴量及び物体行動検出特徴量を抽出するための機械学習を行った学習済み行動検出モデルM2を生成することができる。
行動検出モデル生成部42bによって生成された学習済み行動検出モデルM2は、入力を「計測データ及び物体検出特徴量」とし、出力を「移動体行動検出特徴量及び物体行動検出特徴量」としたモデルである。すなわち、学習済み行動検出モデルM2は、計測データ及び物体検出特徴量の入力を受け付けて当該計測データ及び物体検出特徴量から移動体行動検出特徴量及び物体行動検出特徴量を出力するように機能付けられる。より詳しくは、学習済み行動検出モデルM2は、ニューラルネットワークの入力層に入力された計測データ及び物体検出特徴量に対して、ニューラルネットワークにおける学習重み付け係数に基づく演算を行い、ニューラルネットワークの出力層から移動体行動検出特徴量及び物体行動検出特徴量を出力するようにコンピュータを機能させる。
なお、行動検出モデル生成部42bは、上述したように、学習済み行動検出モデルM2が複数のサブモデル(移動体行動検出サブモデル、物体行動検出サブモデル)に分かれて構成される場合、学習済み行動検出モデルM2として、当該複数のサブモデルを個別に機械学習により生成するようにしてもよい。
関係行動検出モデル生成部42cは、学習済みモデルMのうち、学習済み関係行動検出モデルM3を機械学習により生成する処理を実行可能な機能を有する部分である。関係行動検出モデル生成部42cは、前処理部41によって取得された複数の第3学習用データセットD33を用いて、学習済み関係行動検出モデルM3を機械学習により生成する処理を実行可能である。関係行動検出モデル生成部42cは、第3学習用データセットD33のうち、「移動体行動検出特徴量及び物体行動検出特徴量」を入力データD1(説明変数)とし、「関係行動特徴量に関する教師データ」を教師データD2(目的変数)として、学習済み関係行動検出モデルM3の機械学習を行う。関係行動検出モデル生成部42cは、当該機械学習の結果として、移動体行動検出特徴量及び物体行動検出特徴量から関係行動特徴量を抽出するための機械学習を行った学習済み関係行動検出モデルM3を生成することができる。
関係行動検出モデル生成部42cによって生成された学習済み関係行動検出モデルM3は、入力を「移動体行動検出特徴量及び物体行動検出特徴量」とし、出力を「関係行動特徴量」としたモデルである。すなわち、学習済み関係行動検出モデルM3は、移動体行動検出特徴量及び物体行動検出特徴量の入力を受け付けて当該移動体行動検出特徴量及び物体行動検出特徴量から関係行動特徴量を出力するように機能付けられる。より詳しくは、学習済み関係行動検出モデルM3は、ニューラルネットワークの入力層に入力された移動体行動検出特徴量及び物体行動検出特徴量に対して、ニューラルネットワークにおける学習重み付け係数に基づく演算を行い、ニューラルネットワークの出力層から関係行動特徴量を出力するようにコンピュータを機能させる。
種別特定モデル生成部42dは、学習済みモデルMのうち、学習済み種別特定モデルM4を機械学習により生成する処理を実行可能な機能を有する部分である。種別特定モデル生成部42dは、前処理部41によって取得された複数の第4学習用データセットD34を用いて、学習済み種別特定モデルM4を機械学習により生成する処理を実行可能である。種別特定モデル生成部42dは、第4学習用データセットD34のうち、「関係行動特徴量」を入力データD1(説明変数)とし、「関係行動種別データに関する教師データ」を教師データD2(目的変数)として、学習済み種別特定モデルM4の機械学習を行う。種別特定モデル生成部42dは、当該機械学習の結果として、関係行動特徴量から上記挙動の種別を特定するための機械学習を行った学習済み種別特定モデルM4を生成することができる。
種別特定モデル生成部42dによって生成された学習済み種別特定モデルM4は、入力を「関係行動特徴量」とし、出力を、「移動体Vの動きと物体の動きとが関係して生じる挙動の種別を定量化した値」としたとしたモデルである。すなわち、学習済み種別特定モデルM4は、関係行動特徴量の入力を受け付けて当該関係行動特徴量から当該挙動の種別を定量化した値を出力するように機能付けられる。より詳しくは、学習済み種別特定モデルM4は、ニューラルネットワークの入力層に入力された関係行動特徴量に対して、ニューラルネットワークにおける学習重み付け係数に基づく演算を行い、ニューラルネットワークの出力層から当該挙動の種別を定量化した値を出力するようにコンピュータを機能させる。
モデル生成部42は、上記のようにして生成した学習済みモデルM(学習済み物体検出モデルM1、学習済み行動検出モデルM2、学習済み関係行動検出モデルM3、学習済み種別特定モデルM4)を記憶回路30に記憶させる。このとき、モデル生成部42は、以前に生成した学習済みモデルMが既に記憶回路30に記憶されていた場合には、記憶されている学習済みモデルMを新しく生成した学習済みモデルMで置き換える。
検出対象入力部43は、使用フェーズにおいて、検出対象となる動画像データ及び計測データを入力する処理を実行可能な機能を有する部分である。ここでは、検出対象となる動画像データ及び計測データは、「検出対象データ(入力データ)D4」という場合がある。また、「検出対象データD4」のうち動画像データを「動画像データD41」、計測データを「計測データD42」と記載する場合がある。
検出対象データD4は、入力機器10を構成するデータ入力機器を介して状況検出システム1外の他の機器から入力されてもよいし、入力機器10を構成する操作入力機器を介してユーザの操作によって入力されてもよい。本実施形態の検出対象入力部43は、カメラ50、計測機器51等から入力機器10を介して受け付けた検出対象データD4(動画像データD41、計測データD42)を種別特定部44に入力する処理を実行可能である。検出対象入力部43は、例えば、移動体Vの移動にあわせてリアルタイムで検出対象データD4を入力してもよいし、移動体Vの移動終了後に適時のタイミングで事後的に検出対象データD4を入力してもよい。検出対象入力部43は、入力する検出対象データD4を一旦記憶回路30に記憶させるようにしてもよい。
種別特定部44は、使用フェーズにおいて、学習済みモデルMを用いて移動体Vの動きと動画像を構成する静止画像内の物体の動きとが関係して生じる挙動の種別を特定する処理を実行可能な機能を有する部分である。本実施形態の種別特定部44は、モデル生成部42によって生成された学習済みモデルMを用いて、検出対象入力部43によって入力された検出対象となる検出対象データD4から当該挙動の種別を特定する処理を実行可能である。より詳細には、種別特定部44は、物体検出モデル生成部42aによって生成された学習済み物体検出モデルM1、行動検出モデル生成部42bによって生成された学習済み行動検出モデルM2、関係行動検出モデル生成部42cによって生成された学習済み関係行動検出モデルM3、及び、種別特定モデル生成部42dによって生成された学習済み種別特定モデルM4を用いて、検出対象入力部43によって入力された動画像データD41及び計測データD42から上記挙動の種別を特定する処理を実行可能である。
具体的には、本実施形態の種別特定部44は、図7に示すように、機能概念的に、物体検出特徴量抽出器44a、統合部44b、行動検出特徴量抽出器44c、関係行動特徴量抽出器44d、及び、分類器44eを含んで構成される。
物体検出特徴量抽出器44aは、物体検出モデル生成部42aによって生成された学習済み物体検出モデルM1を用いて、動画像データD41から物体検出特徴量D61を抽出する処理を実行可能な機能を有する部分である。物体検出特徴量抽出器44aは、学習済み物体検出モデルM1に対して、検出対象入力部43によって入力された検出対象データD4のうち「動画像データD41」を入力データとして入力し、これに応じて当該学習済み物体検出モデルM1から「物体検出特徴量D61」を出力させる。これにより、物体検出特徴量抽出器44aは、動画像データD41から当該動画像データD41において検出される物体を表す物体検出特徴量D61を抽出する。この物体検出特徴量抽出器44aによって動画像データD41から当該物体検出特徴量D61を抽出する処理は、上述した物体検出に関する処理に相当する。物体検出特徴量抽出器44aは、出力された物体検出特徴量D61を、記憶回路30に記憶させると共に、次段の統合部44bに入力する。
統合部44bは、物体検出特徴量D61と計測データD42とを統合する処理を実行可能な機能を有する部分である。統合部44bは、物体検出特徴量抽出器44aによって入力された「物体検出特徴量D61」と、検出対象入力部43によって入力された検出対象データD4のうち「計測データD42」とを、時系列的に同時刻の組み合わせとなるように統合し、記憶回路30に記憶させると共に、次段の行動検出特徴量抽出器44cに入力する。
行動検出特徴量抽出器44cは、行動検出モデル生成部42bによって生成された学習済み行動検出モデルM2を用いて、計測データD42及び物体検出特徴量D61から移動体行動検出特徴量D62及び物体行動検出特徴量D63を抽出する処理を実行可能な機能を有する部分である。行動検出特徴量抽出器44cは、学習済み行動検出モデルM2に対して、統合部44bによって入力された時系列的に同時刻の「計測データD42と物体検出特徴量D61」とを入力データとして入力し、これに応じて当該学習済み行動検出モデルM2から「移動体行動検出特徴量D62及び物体行動検出特徴量D63」を出力させる。これにより、行動検出特徴量抽出器44cは、計測データD42及び物体検出特徴量D61から、当該計測データD42の時間変化に伴う移動体Vの動きを表す移動体行動検出特徴量D62及び当該物体検出特徴量D61の時間変化に伴う物体の動きを表す物体行動検出特徴量D63を抽出する。この行動検出特徴量抽出器44cによって計測データD42及び物体検出特徴量D61から当該移動体行動検出特徴量D62及び当該物体行動検出特徴量D63を抽出する処理は、上述した行動検出に関する処理に相当する。行動検出特徴量抽出器44cは、出力された移動体行動検出特徴量D62、物体行動検出特徴量D63を、記憶回路30に記憶させると共に、次段の関係行動特徴量抽出器44dに入力する。
なお、行動検出特徴量抽出器44cは、学習済み行動検出モデルM2が複数のサブモデル(移動体行動検出サブモデル、物体行動検出サブモデル)に分かれて構成される場合、当該複数のサブモデルに対してそれぞれ計測データD42、物体検出特徴量D61を入力することで、移動体行動検出特徴量D62、物体行動検出特徴量D63をそれぞれ出力させればよい。
関係行動特徴量抽出器44dは、関係行動検出モデル生成部42cによって生成された学習済み関係行動検出モデルM3を用いて、移動体行動検出特徴量D62及び物体行動検出特徴量D63から関係行動特徴量D64を抽出する処理を実行可能な機能を有する部分である。関係行動特徴量抽出器44dは、学習済み関係行動検出モデルM3に対して、行動検出特徴量抽出器44cによって入力された「移動体行動検出特徴量D62及び物体行動検出特徴量D63」を入力データとして入力し、これに応じて当該学習済み関係行動検出モデルM3から「関係行動特徴量D64」を出力させる。これにより、関係行動特徴量抽出器44dは、移動体行動検出特徴量D62及び物体行動検出特徴量D63から、移動体Vの動きと動画像を構成する静止画像内の物体の動きとが関係して生じる挙動を表す関係行動特徴量D64を抽出する。この関係行動特徴量抽出器44dによって移動体行動検出特徴量D62及び物体行動検出特徴量D63から当該関係行動特徴量D64を抽出する処理は、上述した関係行動検出に関する処理に相当する。関係行動特徴量抽出器44dは、出力された関係行動特徴量D64を、記憶回路30に記憶させると共に、次段の分類器44eに入力する。
分類器44eは、種別特定モデル生成部42dによって生成された学習済み種別特定モデルM4を用いて、関係行動特徴量D64から移動体Vの動きと動画像を構成する静止画像内の物体の動きとが関係して生じる挙動の種別を特定する処理を実行可能な機能を有する部分である。分類器44eは、種別特定モデル生成部42dによって生成された学習済み種別特定モデルM4に対して、関係行動特徴量抽出器44dによって入力された「関係行動特徴量D64」を入力データとして入力し、これに応じて当該学習済み種別特定モデルM4から「上記挙動の種別を定量化した値」を出力させる。これにより、分類器44eは、当該関係行動特徴量が表す上記挙動の種別を特定する。
例えば、上述した図5の例では、分類器44eは、移動体Vの動きと物体の動きとが関係して生じる挙動の種別として、「手前側の自転車」、「自車両(移動体V)」の動きの関係性から「左折しようとしている自車両に対して、ふらついて走行している手前側の自転車が自車両の進行方向に向かっているという危険な挙動」を特定する。一方、分類器44eは、移動体Vの動きと物体の動きとが関係して生じる挙動の種別として、「奥側の自転車」、「自車両(移動体V)」の動きの関係性から「左折しようとしている自車両に対して、ふらついて走行している奥側の自転車が自車両の進行方向とは異なる方向に向かっているという危険ではない挙動」を特定する。
他の例として、図8の例では、分類器44eは、移動体Vの動きと物体の動きとが関係して生じる挙動の種別として、例えば、「赤信号」、「停止線」、「自車両(移動体V)」の動きの関係性から「赤信号で自車両が停止線上で停止したという交通違反ではない安全な挙動」を特定する。一方、図9の例では、分類器44eは、移動体Vの動きと物体の動きとが関係して生じる挙動の種別として、例えば、「赤信号」、「停止線」、「自車両(移動体V)」の動きの関係性から「赤信号で自車両が停止線上で停止しないという交通違反である危険な挙動(信号無視)」を特定する。
分類器44eは、出力された上記挙動の種別を定量化した値を、種別特定結果データ(出力データ)D5として記憶回路30に記憶させる。
出力部45は、種別特定部44による挙動の種別の特定結果に基づいて出力を行う処理を実行可能な機能を有する部分である。本実施形態の出力部45は、種別特定部44によって特定された種別特定結果データD5を、出力機器20を介して出力する処理を実行可能である。種別特定結果データD5は、出力機器20を構成するディスプレイを介して画像情報として出力されてもよいし、出力機器20を構成するスピーカを介して音情報として出力されてもよい。また、種別特定結果データD5は、出力機器20を構成するデータ出力機器を介して状況検出システム1外の他の機器に出力されてもよい。出力部45は、例えば、車両の走行にあわせてリアルタイムで種別特定結果データD5を出力してもよいし、入力機器10を構成する操作入力機器を介したユーザの操作に応じて適時のタイミングで種別特定結果データD5を出力してもよい。
出力部45は、一例として、種別特定部44によって挙動の種別として「危険な挙動」が特定された場合、すなわち、種別特定結果データD5が「危険な挙動」を表す場合、出力機器20を介して警報を出力するようにしてもよい。
次に、図10のフローチャート図を参照して、状況検出システム1おける状況検出方法の処理手順について説明する。
図10に示す状況検出システム1おける状況検出方法は、取得ステップ(ステップS1)、モデル生成ステップ(ステップS2~ステップS5)、入力ステップ(ステップS6)、種別特定ステップ(ステップS7)、出力ステップ(ステップS8)、判定ステップ(ステップS9)、警報ステップ(ステップS10)を含む。ここでは、上記各ステップに関する処理は、状況検出システム1の処理回路40によって実行される。
まず、処理回路40の前処理部41は、学習用データセットD3として、第1学習用データセットD31、第2学習用データセットD32、第3学習用データセットD33、及び、第4学習用データセットD34を取得するステップ(ステップS1)を実行する。この場合、前処理部41は、入力機器10を介して状況検出システム1外の他の機器から第1学習用データセットD31、第2学習用データセットD32、第3学習用データセットD33、及び、第4学習用データセットD34を直接取得してもよい。また、前処理部41は、入力機器10を介して状況検出システム1外の他の機器から入力された生データD0に対して、様々な前処理を施すことで第1学習用データセットD31、第2学習用データセットD32、第3学習用データセットD33、及び、第4学習用データセットD34を作成、取得してもよい。前処理部41は、取得した複数の第1学習用データセットD31、第2学習用データセットD32、第3学習用データセットD33、及び、第4学習用データセットD34を記憶回路30に記憶させる。
次に、処理回路40のモデル生成部42は、取得ステップ(ステップS1)で取得された複数の学習用データセットD3を用いて、学習済みモデルMを機械学習により生成するモデル生成ステップ(ステップS2~ステップS5)を実行する。
より具体的には、モデル生成部42の物体検出モデル生成部42aは、複数の第1学習用データセットD31を用いて、学習済み物体検出モデルM1を機械学習により生成する物体検出モデル生成ステップ(ステップS2)を実行する。モデル生成部42の行動検出モデル生成部42bは、複数の第2学習用データセットD32を用いて、学習済み行動検出モデルM2を機械学習により生成する行動検出モデル生成ステップ(ステップS3)を実行する。モデル生成部42の関係行動検出モデル生成部42cは、複数の第3学習用データセットD33を用いて、学習済み関係行動検出モデルM3を機械学習により生成する関係行動検出モデル生成ステップ(ステップS4)を実行する。モデル生成部42の種別特定モデル生成部42dは、複数の第4学習用データセットD34を用いて、学習済み種別特定モデルM4を機械学習により生成する種別特定モデル生成ステップ(ステップS5)を実行する。
モデル生成部42は、生成した学習済みモデルM(学習済み物体検出モデルM1、学習済み行動検出モデルM2、学習済み関係行動検出モデルM3、学習済み種別特定モデルM4)を記憶回路30に記憶させる。このとき、モデル生成部42は、以前に生成した学習済みモデルMが既に記憶回路30に記憶されていた場合には、記憶されている学習済みモデルMを新しく生成した学習済みモデルMで置き換える。
次に、処理回路40の検出対象入力部43は、検出対象となる検出対象データD4として動画像データD41、及び、計測データD42を処理回路40の種別特定部44に入力する入力ステップ(ステップS6)を実行する。この場合、検出対象入力部43は、入力機器10を介して状況検出システム1外の他の機器から受け付けた検出対象データD4を入力してもよいし、入力機器10を介してユーザの操作によって受け付けた検出対象データD4を入力してもよい。また、検出対象入力部43は、入力する検出対象データD4を一旦記憶回路30に記憶させるようにしてもよい。
次に、処理回路40の種別特定部44は、モデル生成ステップ(ステップS2~ステップS5)で生成された学習済み物体検出モデルM1、学習済み行動検出モデルM2、学習済み関係行動検出モデルM3、及び、学習済み種別特定モデルM4を用いて、入力ステップ(ステップS6)で入力された動画像データD41及び計測データD42(検出対象データD4)から移動体Vの動きと動画像を構成する静止画像内の物体の動きとが関係して生じる挙動の種別を特定する種別特定ステップ(ステップS7)を実行する。この場合、種別特定部44は、物体検出特徴量抽出器44a、統合部44b、行動検出特徴量抽出器44c、関係行動特徴量抽出器44d、及び、分類器44eが協働して、動画像データD41及び計測データD42から上記挙動の種別を特定する。種別特定部44は、特定した挙動の種別を定量化した値を、種別特定結果データD5として記憶回路30に記憶させる。
次に、処理回路40の出力部45は、種別特定ステップ(ステップS7)で特定された挙動の種別についての種別特定結果データD5を出力する出力ステップ(ステップS8)を実行する。この場合、出力部45は、種別特定結果データD5を、出力機器20を介して画像情報や音情報として出力してもよいし、出力機器20を介して状況検出システム1外の他の機器に出力してもよい。
ここでは、出力部45は、さらに、種別特定部44によって特定された挙動の種別が「危険な挙動」等の警報を要する挙動であるか否かを判定する判定ステップ(ステップS9)を実行する。出力部45は、種別特定部44によって特定された挙動の種別が警報を要する挙動でないと判定した場合(ステップS9:No)、本フローチャートによる処理を終了する。出力部45は、種別特定部44によって特定された挙動の種別が警報を要する挙動であると判定した場合(ステップS9:Yes)、出力機器20を介して警報を出力する警報ステップ(ステップS10)を実行し、本フローチャートによる処理を終了する。
上述した状況検出方法は、予め用意された状況検出プログラムをパーソナルコンピュータやワークステーション等のコンピュータで実行することによって実現することができる。この状況検出プログラムは、上述した取得ステップ(ステップS1)、モデル生成ステップ(ステップS2~ステップS5)、入力ステップ(ステップS6)、種別特定ステップ(ステップS7)、出力ステップ(ステップS8)、判定ステップ(ステップS9)、警報ステップ(ステップS10)の各処理をコンピュータに実行させる。
以上で説明した状況検出システム1、状況検出方法、状況検出プログラムは、学習済み物体検出モデルM1を用いて「動画像データ」から当該動画像データにおいて検出される物体を表す「物体検出特徴量」を抽出することで物体検出を行うことができる。また、状況検出システム1、状況検出方法、状況検出プログラムは、学習済み行動検出モデルM2を用いて「計測データ及び物体検出特徴量」から移動体の動きを表す「移動体行動検出特徴量」及び物体の動きを表す「物体行動検出特徴量」を抽出することで行動検出を行うことができる。そして、状況検出システム1、状況検出方法、状況検出プログラムは、学習済み関係行動検出モデルM3を用いて、上記のようにして抽出した「移動体行動検出特徴量及び物体行動検出特徴量」から移動体の動きと物体の動きとが関係して生じる挙動を表す「関係行動特徴量」を抽出することで関係行動検出を行うことができる。そして、状況検出システム1、状況検出方法、状況検出プログラムは、学習済み種別特定モデルM4を用いて、この「関係行動特徴量」から「当該挙動の種別」を特定することができる。
この結果、状況検出システム1、状況検出方法、状況検出プログラムは、物体検出、行動検出に加えて、さらに関係行動検出も用いて、移動体Vや動画像から検出した物体同士の関係性を検出し、これらの動きを関係づけて相互の挙動の意味(種別)を検出することができる。これにより、状況検出システム1、状況検出方法、状況検出プログラムは、適正に状況検出を行うことができ、例えば、状況検出をより精緻に行うことができる。
そして、状況検出システム1、状況検出方法、状況検出プログラムは、上記のようにして得られるより精緻な状況検出の結果を、例えば、リアルタイム安全運転診断システム、教育システム、危険予知システム、自動運転システム等に応用が可能である。この場合、状況検出システム1、状況検出方法、状況検出プログラムは、例えば、リアルタイムでの運転警告、運転技術の評価、危険運転・交通違反の発見・評価、危険抑制行動の指導・教育、安全な運行計画の作成、自動運転への反映等の様々な目的で供することができる。
例えば、状況検出システム1、状況検出方法、状況検出プログラムは、関係行動検出技術を利用して、バットやバールなどの器具を利用した車両のドアのこじ開けや車上荒らしなどの関係行動検出を行い、警報を発出することで犯罪予防等に活用することも可能である。また、状況検出システム1、状況検出方法、状況検出プログラムは、例えば、建造物や街灯等の構造物に設置された防犯カメラの動画像データも合わせて利用することで、より好適に犯罪予防等に活用することが可能である。
また、状況検出システム1、状況検出方法、状況検出プログラムは、例えば、関係行動検出技術を利用して、タクシー等の配車サービスシステムへの応用も可能である。この場合、状況検出システム1、状況検出方法、状況検出プログラムは、例えば、車両周辺の人物の動きと車両の動きに対して関係行動検出を行うことで、道端で車両の来る方向を凝視するような人物の動きや車両に向かって手を挙げる動き等に基づき、タクシーに対する乗車希望の意思を検出し、配車サービスに活用することも可能である。
さらに、状況検出システム1、状況検出方法、状況検出プログラムは、例えば、関係行動検出技術を利用して、駐車場の空車案内、空車予測案内サービスへの応用も可能である。また、状況検出システム1、状況検出方法、状況検出プログラムは、例えば、駐車場に設置されたカメラ等の動画像データも合わせて利用することで、満車の駐車場で人物が荷物を積み終えたり車に乗り込んだりする動き等の関係行動検出も行い、例えば、あと数分で空車が出る可能性が高い状況であることを特定し、登録者への案内サービス等に活用することも可能である。
なお、以上で説明した実施形態では、状況検出システム1として、1つのシステムで学習フェーズと使用フェーズとの双方を集約して行う場合の例を説明したが、実施形態はこれに限られない。
例えば、図11に例示する変形例に係る状況検出システム1Aは、学習フェーズにおける各処理を実行する学習済みモデル生成システム100と、使用フェーズにおける各処理を実行する状況検出装置200とに分かれて構成される点で上述した状況検出システム1と異なる。状況検出装置200は、例えば、カメラ50、計測機器51等と共に移動体Vに搭載されるものであってもよい。一方、学習済みモデル生成システム100は、例えば、移動体Vを運用する事業所等に設置されるものであってもよい。
学習済みモデル生成システム100は、入力機器110と、出力機器120と、記憶回路130と、処理回路140とを備え、学習用データセットD3を用いた機械学習によって学習済みモデルMを生成する処理を行う。処理回路140は、上記各種処理機能を実現するために、機能概念的に、前処理部141、及び、モデル生成部142を含んで構成される。
前処理部141は、上述した前処理部41と同様に、学習用データセットD3(第1学習用データセットD31、第2学習用データセットD32、第3学習用データセットD33、第4学習用データセットD34)を取得する処理を実行可能である。前処理部141は、取得した複数の学習用データセットD3を記憶回路130に記憶させる。
モデル生成部142は、上述したモデル生成部42と同様に、前処理部141によって取得された複数の学習用データセットD3を用いて、学習済みモデルMを機械学習により生成する処理を実行可能である。モデル生成部142は、上述したモデル生成部42と同様に、機能概念的に、物体検出モデル生成部142a、行動検出モデル生成部142b、関係行動検出モデル生成部142c、及び、種別特定モデル生成部142dを含んで構成される。モデル生成部142は、生成した学習済みモデルM(学習済み物体検出モデルM1、学習済み行動検出モデルM2、学習済み関係行動検出モデルM3、学習済み種別特定モデルM4)を記憶回路130に記憶させる。
状況検出装置200は、入力機器210と、出力機器220と、記憶回路230と、処理回路240とを備え、学習済みモデルMを用いて移動体Vの動きと動画像を構成する静止画像内の物体の動きとが関係して生じる挙動の種別を特定する処理を行う。処理回路240は、上記各種処理機能を実現するために、機能概念的に、検出対象入力部243、種別特定部244、及び、出力部245を含んで構成される。
検出対象入力部243は、上述した検出対象入力部43と同様に、検出対象となる検出対象データD4となる動画像データD41及び計測データD42を入力する処理を実行可能である。
種別特定部244は、上述した種別特定部44と同様に、学習済みモデルMを用いて、検出対象入力部243によって入力された検出対象データD4から移動体Vを含む複数の物体の動きが関係して生じる挙動の種別を特定する処理を実行可能である。この場合、種別特定部244は、例えば、学習済みモデル生成システム100の出力機器120、及び、状況検出装置200の入力機器210を介して予め記憶回路230に記憶させた学習済みモデルM(学習済み物体検出モデルM1、学習済み行動検出モデルM2、学習済み関係行動検出モデルM3、学習済み種別特定モデルM4)を用いることができる。この学習済みモデルMは、上述のように学習済みモデル生成システム100によって生成されたモデルである。
出力部245は、上述した出力部45と同様に、種別特定部44によって特定された種別特定結果データD5を、出力機器220を介して出力する処理を実行可能である。
入力機器110、210、出力機器120、220、記憶回路130、230、処理回路140、240のその他の構成は、上述の入力機器10、出力機器20、記憶回路30、処理回路40と略同様の構成である。本変形例では、移動体Vの周囲の動画像は、例えば、移動体Vに搭載されたカメラ50によって撮影され、当該カメラ50から動画像データとして入力機器210に入力される。同様に、移動体Vの状態に応じた計測値は、例えば、移動体Vに搭載された計測機器51によって計測され、当該計測機器51から動画像データとして入力機器210に入力される。
この場合であっても、状況検出システム1A、学習済みモデル生成システム100、状況検出装置200は、上述した状況検出システム1と同様に、適正に状況検出を行うことができ、例えば、状況検出をより精緻に行うことができる。
なお、この変形例の場合、状況検出装置200で用いる学習済みモデルMは、上述のように学習済みモデル生成システム100によって生成されたモデルに限らず、他のシステムで生成された学習済みモデルMであってもよい。
[実施形態2]
実施形態2に係る状況検出システム、状況検出方法、状況検出プログラム、学習済みモデル生成システム、及び、状況検出装置は、さらに、距離データを用いる点で実施形態1とは異なる。以下では、上述した実施形態と同様の構成要素には共通の符号が付されるとともに、共通する構成、作用、効果については、重複した説明はできるだけ省略する(以下同様。)。
図12、図13に示す本実施形態の状況検出システム1Bは、移動体行動検出特徴量、物体行動検出特徴量に加えて移動体Vと当該移動体Vの周囲物体との距離の変化を表す距離変化特徴量も用いて関係行動検出を行う点で上述した状況検出システム1と異なる。ここでは、状況検出システム1Bは、処理回路40がモデル生成部42、種別特定部44にかえてモデル生成部42B、種別特定部44Bを含んで構成される点で上述した状況検出システム1と異なる。状況検出システム1Bのその他の構成は、上述の状況検出システム1と略同様の構成である。
本実施形態の入力機器10は、種々の機器から少なくとも動画像データ、計測データに加えて距離データが入力される。
距離データとは、動画像の撮影に伴って計測された移動体Vと当該移動体Vの周囲物体(例えば、車両、通行人、自転車、障害物、街灯、看板、電柱、標識、停止線等)との距離を表すデータである。距離データは、典型的には、移動体Vにおいて動画像の撮影と同期して検出される。移動体Vと周囲物体との距離は、例えば、移動体Vに搭載された距離センサ52によって検出され、当該距離センサ52から距離データとして入力機器10に入力される。距離センサ52は、例えば、移動体Vに搭載され、赤外線、ミリ波、超音波等を用いて距離を検出する各種レーダやソナーによって構成される。また、距離センサ52は、例えば、カメラ50によって兼用され、当該カメラ50によって撮影された動画像データに各種処理を施して距離を検出するものであってもよい。
そして、本実施形態の第2学習用データセットD32は、計測データ、物体検出特徴量に加えて上記距離データと、移動体行動検出特徴量に関する教師データ、物体行動検出特徴量に関する教師データに加えて距離変化特徴量に関する教師データとからなる。ここで、距離変化特徴量とは、距離データの時間変化に伴う移動体Vと周囲物体との距離の変化を表す特徴量であり、時間変化に伴う移動体Vと周囲物体との動きに応じた当該距離の変化の特徴を表す。ここでは、第2学習用データセットD32は、「計測データ、物体検出特徴量及び距離データ」と、「当該計測データに対応した移動体行動検出特徴量に関する教師データ、当該物体検出特徴量に対応した物体行動検出特徴量に関する教師データ及び当該距離データに対応した距離変化特徴量に関する教師データ」とが1組のセットとして紐づけられることで構成される。つまり、本実施形態の第2学習用データセットD32は、入力データD1(説明変数)として定量化された当該計測データ、当該物体検出特徴量及び当該距離データと、教師データD2(目的変数)として定量化された当該移動体行動検出特徴量に関する教師データ、当該物体行動検出特徴量に関する教師データ及び当該距離変化特徴量に関する教師データとからなる。
また、本実施形態の第3学習用データセットD33は、移動体行動検出特徴量、物体行動検出特徴量及び距離変化特徴量と、関係行動特徴量に関する教師データとからなる。第3学習用データセットD33は、「移動体行動検出特徴量、物体行動検出特徴量及び距離変化特徴量」と、「当該移動体行動検出特徴量と当該物体行動検出特徴量と当該距離変化特徴量とに対応した関係行動特徴量に関する教師データ」とが1組のセットとして紐づけられることで構成される。つまり、本実施形態の第3学習用データセットD33は、入力データD1(説明変数)として定量化された当該移動体行動検出特徴量、当該物体行動検出特徴量及び当該距離変化特徴量と、教師データD2(目的変数)として定量化された当該関係行動特徴量に関する教師データとからなる。
そして、本実施形態のモデル生成部42Bは、行動検出モデル生成部42b、関係行動検出モデル生成部42cにかえて行動検出モデル生成部42Bb、関係行動検出モデル生成部42Bcを含んで構成される点で上述したモデル生成部42と異なる。モデル生成部42Bのその他の構成は、上述のモデル生成部42と略同様の構成である。
行動検出モデル生成部42Bbは、前処理部41によって取得された複数の第2学習用データセットD32を用いて、学習済み行動検出モデルM2を機械学習により生成する。本実施形態の行動検出モデル生成部42Bbは、第2学習用データセットD32のうち、「計測データ、物体検出特徴量及び距離データ」を入力データD1(説明変数)とし、「移動体行動検出特徴量に関する教師データ、物体行動検出特徴量に関する教師データ及び距離変化特徴量に関する教師データ」を教師データD2(目的変数)として、学習済み行動検出モデルM2の機械学習を行う。行動検出モデル生成部42Bbは、当該機械学習の結果として、計測データ、物体検出特徴量及び距離データから移動体行動検出特徴量、物体行動検出特徴量及び距離変化特徴量を抽出するための機械学習を行った学習済み行動検出モデルM2を生成する。行動検出モデル生成部42Bbによって生成された学習済み行動検出モデルM2は、入力を「計測データ、物体検出特徴量及び距離データ」とし、出力を「移動体行動検出特徴量、物体行動検出特徴量及び距離変化特徴量」としたモデルである。
なお、行動検出モデル生成部42Bbは、上述した行動検出モデル生成部42bと同様に、複数の第2学習用データセットD32を用いて、学習済み行動検出モデルM2として、複数のサブモデル(移動体行動検出サブモデル、物体行動検出サブモデル、距離変化検出サブモデル)を個別に機械学習により生成するようにしてもよい。
関係行動検出モデル生成部42Bcは、前処理部41によって取得された複数の第2学習用データセットD32を用いて、学習済み関係行動検出モデルM3を機械学習により生成する処理を実行可能である。本実施形態の関係行動検出モデル生成部42Bcは、第3学習用データセットD33のうち、「移動体行動検出特徴量、物体行動検出特徴量及び距離変化特徴量」を入力データD1(説明変数)とし、「関係行動特徴量に関する教師データ」を教師データD2(目的変数)として、学習済み関係行動検出モデルM3の機械学習を行う。関係行動検出モデル生成部42Bcは、当該機械学習の結果として、移動体行動検出特徴量、物体行動検出特徴量及び距離変化特徴量から関係行動特徴量を抽出するための機械学習を行った学習済み関係行動検出モデルM3を生成する。関係行動検出モデル生成部42Bcによって生成された学習済み関係行動検出モデルM3は、入力を「移動体行動検出特徴量、物体行動検出特徴量及び距離変化特徴量」とし、出力を「関係行動特徴量」としたモデルである。
そして、本実施形態の検出対象入力部43は、使用フェーズにおいて、検出対象となる検出対象データD4として、動画像データD41、計測データD42及び距離データD43を種別特定部44Bに入力する。
本実施形態の種別特定部44Bは、使用フェーズにおいて、物体検出モデル生成部42aによって生成された学習済み物体検出モデルM1、行動検出モデル生成部42bによって生成された学習済み行動検出モデルM2、関係行動検出モデル生成部42cによって生成された学習済み関係行動検出モデルM3、及び、種別特定モデル生成部42dによって生成された学習済み種別特定モデルM4を用いて、検出対象入力部43によって入力された動画像データD41、計測データD42及び距離データD43から上記挙動の種別を特定する。
具体的には、本実施形態の種別特定部44Bは、統合部44b、行動検出特徴量抽出器44c、関係行動特徴量抽出器44dにかえて統合部44Bb、行動検出特徴量抽出器44Bc、関係行動特徴量抽出器44Bdを含んで構成される。種別特定部44Bのその他の構成は、上述の種別特定部44と略同様の構成である。
統合部44Bbは、物体検出特徴量抽出器44aによって入力された「物体検出特徴量D61」と、検出対象入力部43によって入力された検出対象データD4のうち「計測データD42」と「距離データD43」とを、時系列的に同時刻の組み合わせとなるように統合し、記憶回路30に記憶させると共に、次段の行動検出特徴量抽出器44Bcに入力する。
行動検出特徴量抽出器44Bcは、行動検出モデル生成部42Bbによって生成された学習済み行動検出モデルM2を用いて、計測データD42、物体検出特徴量D61及び距離データD43から移動体行動検出特徴量D62、物体行動検出特徴量D63及び距離変化特徴量D65を抽出する。行動検出特徴量抽出器44Bcは、学習済み行動検出モデルM2に対して、統合部44Bbによって入力された時系列的に同時刻の「計測データD42、物体検出特徴量D61及び距離データD43」を入力データとして入力し、これに応じて当該学習済み行動検出モデルM2から「移動体行動検出特徴量D62、物体行動検出特徴量D63及び距離変化特徴量D65」を出力させる。行動検出特徴量抽出器44Bcは、出力された移動体行動検出特徴量D62、物体行動検出特徴量D63、距離変化特徴量D65を、記憶回路30に記憶させると共に、次段の関係行動特徴量抽出器44Bdに入力する。
関係行動特徴量抽出器44Bdは、関係行動検出モデル生成部42Bcによって生成された学習済み関係行動検出モデルM3を用いて、移動体行動検出特徴量D62、物体行動検出特徴量D63及び距離変化特徴量D65から関係行動特徴量D64を抽出する。関係行動特徴量抽出器44Bdは、学習済み関係行動検出モデルM3に対して、行動検出特徴量抽出器44Bcによって入力された「移動体行動検出特徴量D62、物体行動検出特徴量D63及び距離変化特徴量D65」を入力データとして入力し、これに応じて当該学習済み関係行動検出モデルM3から「関係行動特徴量D64」を出力させる。関係行動特徴量抽出器44Bdは、出力された関係行動特徴量D64を、記憶回路30に記憶させると共に、次段の分類器44eに入力する。
分類器44eは、種別特定モデル生成部42dによって生成された学習済み種別特定モデルM4に対して、関係行動特徴量抽出器44Bdによって入力された「関係行動特徴量D64」を入力データとして入力し、これに応じて当該学習済み種別特定モデルM4から「上記挙動の種別を定量化した値」を出力させる。
この場合であっても、状況検出システム1B、状況検出方法、状況検出プログラムは、上述した状況検出システム1と同様に、適正に状況検出を行うことができ、例えば、状況検出をより精緻に行うことができる。
ここでは、以上で説明した状況検出システム1B、状況検出方法、状況検出プログラムは、学習済み行動検出モデルM2を用いて「計測データ、物体検出特徴量に加えて距離データ」から「移動体行動検出特徴量、物体行動検出特徴量に加えて距離変化特徴量」を抽出することができる。そして、状況検出システム1、状況検出方法、状況検出プログラムは、学習済み関係行動検出モデルM3を用いて、「移動体行動検出特徴量、物体行動検出特徴量に加えて距離変化特徴量」も踏まえて「関係行動特徴量」を抽出することができる。そして、状況検出システム1、状況検出方法、状況検出プログラムは、学習済み種別特定モデルM4を用いて、この関係行動特徴量から当該挙動の種別を特定することができる。この結果、状況検出システム1、状況検出方法、状況検出プログラムは、移動体Vと当該移動体Vの周囲物体との距離を踏まえたより高次な状況検出を行うことができる。
なお、上述した本発明の実施形態に係る状況検出システム、状況検出方法、状況検出プログラム、学習済みモデル生成システム、及び、状況検出装置は、上述した実施形態に限定されず、特許請求の範囲に記載された範囲で種々の変更が可能である。
例えば、以上で説明した状況検出システム1、状況検出システム1Bにおいて、出力部45は、検出対象入力部43によって入力される距離データも踏まえて警報の要否を判定するようにしてもよい。
この場合、出力部45は、例えば、図14に例示するように、出力ステップ(ステップS8)の後、種別特定部44、44Bによって特定された挙動の種別が「危険な挙動」等であり、かつ、当該「危険な挙動」において警報の対象となる候補が有るか否かを判定する判定ステップ(ステップS9-1)を実行する。出力部45は、種別特定部44によって特定された挙動の種別が「危険な挙動」等ではない、あるいは、「危険な挙動」において警報の対象となる候補が無いと判定した場合(ステップS9-1:No)、本フローチャートによる処理を終了する。
一方、出力部45は、種別特定部44、44Bによって特定された挙動の種別が「危険な挙動」等であり、かつ、当該「危険な挙動」において警報の対象となる候補が有ると判定した場合(ステップS9-1:Yes)、距離データに基づいて移動体Vと警報の対象となる候補との距離が近いか否かを判定する(ステップS9-2)。出力部45は、例えば、移動体Vと警報の対象となる候補(周囲物体)との距離が予め設定される判定閾値以下であるか否かを判定することで移動体Vと警報の対象となる候補との距離が近いか否かを判定することができる。
出力部45は、移動体Vと警報の対象となる候補との距離が離れていると判定した場合(ステップS9-2:No)、警報を要しないものと判定し、本フローチャートによる処理を終了する。一方、出力部45は、移動体Vと警報の対象となる候補との距離が近いと判定した場合(ステップS9-2:Yes)、警報を要するものと判定し、出力機器20を介して警報を出力する警報ステップ(ステップS10)を実行し、本フローチャートによる処理を終了する。
この場合、状況検出システム1、1Bは、無駄な警報をより確実に抑制した上で、状況検出に応じて適正に警報を出力することができる。
以上で説明したモデル生成部42、42B、142は、教師データありの機械学習によって学習済みモデルMを生成するものとして説明したがこれに限らず、一部、又は、全部において、可能な範囲で教師データなしの機械学習によって学習済みモデルMを生成するようにしてもよい。例えば、行動検出モデル生成部42b、42Bb、142bは、いわゆる「LSTM Autoencoder」を利用して、移動体行動検出特徴量に関する教師データ等を用いない教師データなしの機械学習によって、学習済み行動検出モデルM2を生成してもよい。
以上で説明した処理回路40、140、240は、単一のプロセッサによって各処理機能が実現されるものとして説明したがこれに限らない。処理回路40、140、240は、複数の独立したプロセッサを組み合わせて各プロセッサがプログラムを実行することにより各処理機能が実現されてもよい。また、処理回路40、140、240が有する処理機能は、単一又は複数の処理回路に適宜に分散又は統合されて実現されてもよい。また、処理回路40、140、240が有する処理機能は、その全部又は任意の一部をプログラムにて実現してもよく、また、ワイヤードロジック等によるハードウェアとして実現してもよい。
以上で説明したプロセッサによって実行されるプログラムは、記憶回路30、130、230等に予め組み込まれて提供される。なお、このプログラムは、これらの装置にインストール可能な形式又は実行可能な形式のファイルで、コンピュータで読み取り可能な記憶媒体に記録されて提供されてもよい。また、このプログラムは、インターネット等のネットワークに接続されたコンピュータ上に格納され、ネットワーク経由でダウンロードされることにより提供又は配布されてもよい。
本実施形態に係る状況検出システム、状況検出方法、状況検出プログラム、学習済みモデル生成システム、及び、状況検出装置は、以上で説明した実施形態、変形例の構成要素を適宜組み合わせることで構成してもよい。