(57)【要約】【課題】より高精度に画像から車両を検出する。【解決手段】学習器２４は、車両を含む学習用画像２６、学習用画像２６に含まれる車両に関する複数の特徴点２８の位置を示す情報、及び、各特徴点２８が示す車両の箇所を示す情報を含む学習用データを用いて学習される。学習済みの学習器２４は、入力画像４０に含まれる車両に関する複数の特徴点５２の位置を示すヒートマップ５０と、車両毎の各特徴点間の向きを示すベクトルマップ６０を出力する。車両検出部３２は、入力画像４０から特徴点５２が検出されたことをもって入力画像４０から車両を検出する。また、車両の箇所が識別された複数の特徴点５２の位置関係に基づいて、車両の向き及び種別を検出する。入力画像４０に複数の車両が含まれている場合には、車両検出部３２は、ベクトルマップ６０に基づいて複数の特徴点５２を車両毎に区別した上で、複数の車両の向き、種別、及び台数を検出する。【選択図】図２
2019106149.tif 000002
【特許請求の範囲】
【請求項１】
車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習する学習器と、
学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出する車両検出部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記車両検出部は、前記学習器が前記入力画像から検出した、対応する車両の箇所が識別された複数の特徴点の位置関係に基づいて、前記入力画像中に含まれる車両の向きを検出する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記学習器は、前記学習用画像に含まれる前記車両の前記複数の特徴点間の向きを学習し、
前記車両検出部は、前記学習器が前記入力画像から検出した複数の特徴点間の向きに基づいて、前記入力画像に含まれる複数の車両を区別した上で、複数の車両の向き及び台数の少なくとも一方を検出する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記学習用データは、前記学習用画像が撮影された時の天気を示す情報を含み、
前記学習器は、前記学習用画像が撮影された時の天気を考慮して学習する、
ことを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記学習用データは、前記学習用画像に含まれる車両のライトの点灯有無を示す情報を含み、
前記学習器は、前記学習用画像に含まれる車両のライトの点灯有無を考慮して学習する、
ことを特徴とする請求項１から４のいずれか１項に記載の情報処理装置。
【請求項６】
前記車両検出部は、前記学習器が前記入力画像から検出した、対応する車両の箇所が識別された複数の特徴点の位置関係に基づいて、前記入力画像に含まれる車両の種別を検出する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項７】
前記車両検出部は、前記入力画像に対する前記学習器の出力に基づいて、前記入力画像に含まれる車両の種別がタクシーであることを識別し、
前記情報処理装置は、さらに、
前記入力画像を解析することで、前記入力画像に含まれる人物を検出する人物検出部と、
前記入力画像に含まれるタクシーの台数と人物の数とに基づいて、タクシーの需要を判定するタクシー需要判定部と、
を備えることを特徴とする請求項６に記載の情報処理装置。
【請求項８】
コンピュータを、
車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習する学習器と、
学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出する車両検出部と、
として機能させることを特徴とする情報処理プログラム。
【請求項９】
車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習器を学習させる学習ステップと、
学習済みの前記学習器に入力画像を入力して、コンピュータが、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出する車両検出ステップと、
を含むことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理プログラム、及び、情報処理方法に関する。
【背景技術】
【０００２】
従来、画像の中から車両を自動検出する技術が提案されている。特に、昨今、例えば畳み込みニューラルネットワークなどの機械学習手法の研究が盛んであり、機械学習を用いて画像の中から車両を自動検出する技術が提案されている。
【０００３】
例えば、特許文献１には、車両の正面画像を用いて学習された、車両の正面を検出するための識別器に、自車両の後方カメラで撮影された画像を入力することで、当該画像から他車両を検出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−４１１３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来の画像から車両を自動検出する技術においては、検出精度の観点から改善の余地があった。例えば、特許文献１の技術では、正面を向いた車両が画像に含まれている場合にしか車両を検出することができず、その他のアングルから車両を撮影した画像からは好適に車両を検出することができなかった。また、他の物体に隠れる、あるいは見切れてしまっていることなどによって、車両の一部が画像に含まれていない場合、画像から車両を検出することが困難となっていた。すなわち、限られた場面でしか画像中に存在する車両を検出することができなかった。
【０００６】
本発明の目的は、より高精度に画像から車両を検出することにある。
【課題を解決するための手段】
【０００７】
本発明は、車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習する学習器と、学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出する車両検出部と、を備えることを特徴とする情報処理装置である。
【０００８】
望ましくは、前記車両検出部は、前記学習器が前記入力画像から検出した、対応する車両の箇所が識別された複数の特徴点の位置関係に基づいて、前記入力画像中に含まれる車両の向きを検出する、ことを特徴とする。
【０００９】
望ましくは、前記学習器は、前記学習用画像に含まれる前記車両の前記複数の特徴点間の向きを学習し、前記車両検出部は、前記学習器が前記入力画像から検出した複数の特徴点間の向きに基づいて、前記入力画像に含まれる複数の車両を区別した上で、複数の車両の向き及び台数の少なくとも一方を検出する、ことを特徴とする。
【００１０】
望ましくは、前記学習用データは、前記学習用画像が撮影された時の天気を示す情報を含み、前記学習器は、前記学習用画像が撮影された時の天気を考慮して学習する、ことを特徴とする。
【００１１】
望ましくは、前記学習用データは、前記学習用画像に含まれる車両のライトの点灯有無を示す情報を含み、前記学習器は、前記学習用画像に含まれる車両のライトの点灯有無を考慮して学習する、ことを特徴とする。
【００１２】
望ましくは、前記車両検出部は、前記学習器が前記入力画像から検出した、対応する車両の箇所が識別された複数の特徴点の位置関係に基づいて、前記入力画像に含まれる車両の種別を検出する、ことを特徴とする。
【００１３】
望ましくは、前記車両検出部は、前記入力画像に対する前記学習器の出力に基づいて、前記入力画像に含まれる車両の種別がタクシーであることを識別し、前記情報処理装置は、さらに、前記入力画像を解析することで、前記入力画像に含まれる人物を検出する人物検出部と、前記入力画像に含まれるタクシーの台数と人物の数とに基づいて、タクシーの需要を判定するタクシー需要判定部と、を備えることを特徴とする。
【００１４】
また、本発明は、コンピュータを、車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習する学習器と、学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出する車両検出部と、として機能させることを特徴とする情報処理プログラムである。
【００１５】
また、本発明は、車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習器を学習させる学習ステップと、学習済みの前記学習器に入力画像を入力して、コンピュータが、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出する車両検出ステップと、を含むことを特徴とする情報処理方法である。
【発明の効果】
【００１６】
本発明によれば、より高精度に画像から車両を検出することができる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態に係る情報処理システムの構成概略図である。
【図２】本実施形態に係るサーバの構成概略図である。
【図３】学習用画像の例を示す図である。
【図４】入力画像の例を示す図である。
【図５】学習器が出力するヒートマップの例を示す図である。
【図６】学習器が出力するベクトルマップの例を示す図である。
【図７】入力画像の他の例を示す図である。
【図８】第１入力画像と第２入力画像における各特徴点同士の色差及び類似度の例を示す図である。
【図９】本実施形態に係るサーバの処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明の実施形態について説明する。
【００１９】
図１には、本実施形態に係る情報処理システム１０の構成概略図が示されている。情報処理システム１０は、カメラ１２と、ユーザ端末１４と、情報処理装置としてのサーバ１６とを含んで構成される。カメラ１２とサーバ１６との間、及び、ユーザ端末１４とサーバ１６との間は、ＬＡＮあるいはインターネットなどの通信回線１８を介して通信可能に接続されている。
【００２０】
カメラ１２は、自動車などの車両を撮影するためのカメラである。カメラ１２は、例えば、駐車場や高速道路などに設置される監視カメラである。あるいは、カメラ１２は車載カメラであってもよい。また、カメラ１２としては、静止画を撮影するカメラであってもよく、動画像を撮影するビデオカメラであってもよい。カメラ１２によって撮影された画像は、通信回線１８を介してサーバ１６に送られる。
【００２１】
ユーザ端末１４は、ユーザ（サーバ１６で実行される画像からの車両検出処理の結果を確認する者）が利用する端末である。ユーザ端末１４は、例えばパーソナルコンピュータやタブレット端末などであってよい。ユーザ端末１４は、ＣＰＵ（Central Processing Unit）などの処理部、ハードディスク、ＲＯＭ（Read Only Memory）あるいはＲＡＭ（Random Access Memory）などの記憶部、液晶パネルなどの表示部、マウス、キーボード、タッチパネルなどの入力部、ネットワークアダプタなどの通信部などを含んで構成される。ユーザ端末１４は、サーバ１６にアクセスすることによって、サーバ１６における車両検出処理の結果を受信することができる。
【００２２】
図２に、サーバ１６の構成概略図が示されている。本実施形態においては、サーバ１６はコンピュータによって構成されるが、情報処理装置としては、以下に示す機能を有する限りにおいて、どのような装置であってもよい。
【００２３】
通信部２０は、例えばネットワークアダプタなどから構成される。通信部２０は、通信回線１８を介して、カメラ１２及びユーザ端末１４と通信する機能を発揮する。具体的には、通信部２０は、カメラ１２から画像を受信する。また、通信部２０は、ユーザ端末１４からの要求に応じて、後述の制御部３０による車両検出処理の結果をユーザ端末１４に送信する。
【００２４】
記憶部２２は、例えばＲＯＭ、ＲＡＭあるいはハードディスクなどから構成される。記憶部２２には、サーバ１６の各部を動作させるための情報処理プログラムが記憶される。また、記憶部２２には、学習器２４が記憶される。
【００２５】
学習器２４は、詳しくは後述するように、カメラ１２が撮影した画像を入力画像とし、当該入力画像に含まれる車両に関する複数の特徴点を検出するものである。本実施形態における学習器２４は、例えば畳み込みニューラルネットワークを含んで構成される。
【００２６】
なお、畳み込みニューラルネットワークは、一般的に、複数の層を含んで構成される。畳み込みニューラルネットワークの各層は、配列（例えば２次元配列）されたニューロン群から構成される。また、畳み込みニューラルネットワークにおいては、ニューロン群と同様に２次元配列された複数の要素を含むフィルタが用いられる。フィルタは各層に応じて設けられ、通常、フィルタのサイズ（配列された要素の数）は、それが適用されるニューロン群のサイズ（配列されたニューロンの数）よりも小さくなっている。フィルタの各要素には、重みが設定されている。
【００２７】
各層のニューロン群に対してフィルタが適用される。概念的には、ニューロン群の一部に対してフィルタが重ね合わされる。フィルタの各要素に設定された各重みと、フィルタが重なる複数のニューロン（ニューロン群の一部）の活性との積和が計算される。すなわち、フィルタの各要素に設定された重みをベクトルの要素として持つ重みベクトルと、複数のニューロンの活性をベクトルの要素として持つ活性ベクトルとの内積が計算される。当該内積が当該層の出力の１つの活性となる。
【００２８】
フィルタは、ニューロン群上を縦横方向に１つ（１ニューロン）ずつ、あるいは、数ニューロンずつずらしながら適用されていく。これにより、当該層の出力として、配列された活性群が出力される。当該活性群が次層のニューロン群の活性となる。複数の層のニューロン群に対してフィルタを適用していくことで、入力画像から最終的に車両に関する複数の特徴点が検出される。
【００２９】
以上のように、本実施形態においては、学習器２４の実態は、畳み込みニューラルネットワークに関する各種パラメータ（層構造、各層のニューロン構造、各層におけるフィルタ数、フィルタサイズ、及び各フィルタの各要素の重みなど）、並びに、入力画像に対して処理を行うための処理実行プログラムである。したがって、記憶部２２に学習器２４が記憶されるとは、上記各種パラメータ及び処理実行プログラムが記憶部２２に記憶されることを意味する。なお、学習器２４としては、複数のニューラルネットワークを含むものであってもよい。
【００３０】
学習器２４の学習方法について説明する。学習器２４は、車両を含む学習用画像と、それに関連する情報を含む学習用データを用いて学習を行う。ちなみに、学習器２４の学習とは、学習器２４が畳み込みニューラルネットワークであれば、フィルタの各要素の重みを調整することを意味する。
【００３１】
図３には、学習用画像２６の例が示されている。学習用画像２６は、車両を含む限りにおいてどのような画像であってもよく、その取得方法もどのような方法であってもよい。また、図３の例では、学習用画像２６は１つの車両を含むものであるが、学習用画像２６に複数の車両が含まれていてもよい。
【００３２】
学習用データには、学習用画像２６に含まれる車両に関する複数の特徴点（２８ａ〜２８ｋ、以後、学習用画像２６に含まれる車両に関する複数の特徴点を総称して特徴点２８と記載する）の位置を示す情報が含まれる。本実施形態では、車両に関する特徴点２８として、車両のルーフの４隅（特徴点２８ａ〜２８ｄ）、特徴点２８ａと２８ｄを結ぶ線分と、特徴点２８ｂと２８ｃを結ぶ線分との交点である特徴点２８ｅ、２つのヘッドライト（特徴点２８ｆ及び２８ｇ）、２つテールライト（特徴点２８ｈ及び２８ｉ）、及び、４つのタイヤ（特徴点２８ｊ及び２８ｋ）の１３個の特徴点２８の位置が既知となっている。なお、図３に示す画像のように、１３個の特徴点全てが画像に含まれない場合もある。また、車両に関する特徴点２８としては、上述の位置に限られず、その他の位置（例えば前後のナンバープレートの位置など）が含まれていてもよい。複数の特徴点は、画像中において車両がどのような向きであっても、できるだけ多くの特徴点が画像に現れるように、その位置が設定される。
【００３３】
これら特徴点２８の位置を示す情報としては、例えば、学習用画像２６における座標である。
【００３４】
また、学習用データには、各特徴点２８が示す車両の箇所を示す情報が含まれる。車両の箇所とは、車両の特定の部位であり、例えば、ルーフ中央、あるいは右前輪などである。図３の例では、特徴点２８ａがルーフ右前隅、特徴点２８ｂがルーフ左前隅、特徴点２８ｃがルーフ右後隅、特徴点２８ｄがルーフ左後隅、特徴点２８ｅがルーフ中央、特徴点２８ｆが右ヘッドライト、特徴点２８ｇが左ヘッドライト、特徴点２８ｈが右テールライト、特徴点２８ｉが左テールライト、特徴点２８ｊが左前輪、特徴点２８ｋが左後輪であることを示す情報が学習用データに含まれる。なお、学習用画像２６に複数の車両が含まれる場合は、学習用データには、車両毎に区別された、各特徴点２８の箇所を示す情報が含まれる（例えば、特徴点２８ａは、「車両Ａの」ルーフ右前隅である、など）。
【００３５】
また、学習用データには、各特徴点２８から他の特徴点へ向かう向き（本実施形態ではベクトル）を示す情報が含まれる。なお、特徴点同士を結ぶベクトルは、各特徴点２８の位置を示す情報に基づいて所定のプログラムにより自動的に生成されたものを用いることができる。
【００３６】
好適には、学習用データには、学習用画像２６が撮影された時の天気を示す情報を含んでいてもよい。天気としては、例えば、晴れ、曇り、雨、あるいは雪などである。また、好適には、学習用データには、学習用画像２６に含まれる車両の各ライト（ヘッドライト及びテールライトなど含む）の点灯有無を示す情報を含んでいてもよい。
【００３７】
なお、上述した、車両の複数の特徴点２８の位置、各特徴点２８が示す車両の箇所、学習用画像２６が撮影された時の天気、及び、学習用画像２６に含まれる車両の各ライトの点灯有無をそれぞれ示す各情報は、例えば学習用画像２６のメタデータとして付加されていてもよい。
【００３８】
学習器２４は、多数の学習用データを用いて学習することで、入力画像から車両に関する複数の特徴点を検出することが可能となる。特に、学習器２４は、車両に関する複数の特徴点２８の位置と、各特徴点２８が示す車両の箇所が既知である学習用データを用いて学習する。これにより、学習器２４は、検出した特徴点が車両のどの箇所に対応するものであるかを識別して検出可能となる。
【００３９】
対応する車両の箇所を識別した上で複数の特徴点を検出可能であることは、入力画像に含まれる車両の各箇所間の位置関係を検出可能であることを意味する。換言すれば、学習器２４は、学習用データから、車両のある箇所（特徴点）から他の箇所（特徴点）へ向かう向き（本実施形態ではベクトル）を学習し、学習済みの学習器２４は、入力画像から検出した各特徴点間の向き（ベクトル）を検出可能になると言える。また、学習器２４は、学習用画像２６に複数の車両が含まれている場合であっても、学習用データにおいては、車両毎に区別された上で、各特徴点２８が示す車両の箇所が既知であるから、車両毎に区別して、各特徴点間の向きを学習することができる。
【００４０】
好適には、学習器２４は、特徴点及び各特徴点間の向きに加え、学習用画像２６が撮影された時の天気を出力するように学習する。例えば、天気が雪である場合、積雪によって車両のルーフの４隅及びルーフ中央が隠れてしまう場合がある。このような場合でも、天気を示す情報を含む学習用画像２６を用いて入力画像の天気を出力するように学習することで、学習器２４は、学習用画像２６が撮影された時の天気が雪であることを考慮した上で特徴点を検出するようになると考えられる。これにより、学習器２４が、入力画像から車両に関する複数の特徴点を検出する際の検出精度を向上させることができる。
【００４１】
同様に、好適には、学習器２４は、特徴点及び各特徴点間の向きに加え、学習用画像２６に含まれる車両の各ライトの点灯有無を出力するように学習する。昼間に撮影された画像と夜間に撮影された画像とを比較したときに、ライトの点灯有無に応じて入力画像のライトの位置付近の輝度値が変化するなど画像の見た目が大きく異なる。このような場合でも、車両の各ライトの点灯有無を示す情報を含む学習用画像２６を用いて入力画像に含まれる車両の各ライトの点灯有無を出力するように学習することで、学習器２４は、学習用画像２６が撮影された時の車両の各ライトの点灯有無を考慮した上で特徴点を検出するようになると考えられる。これにより、学習器２４が、入力画像から車両に関する複数の特徴点を検出する際の検出精度を向上させることができる。
【００４２】
図２に戻り、制御部３０は、例えばＣＰＵあるいはマイクロコントローラなどを含んで構成される。制御部３０は、記憶部２２に記憶された情報処理プログラムに従ってサーバ１６の各部を制御する。また、図２に示される通り、制御部３０は、車両検出部３２、人物検出部３４、処理演算部３６、及び、同一性判定部３８としても機能する。
【００４３】
車両検出部３２は、カメラ１２が撮影した画像である入力画像から車両を検出する処理を実行する。具体的には、車両検出部３２は、入力画像を学習済みの学習器２４に入力し、入力画像に対する学習器２４による複数の特徴点の検出結果に基づいて、当該入力画像から車両を検出する。
【００４４】
図４には、入力画像の例が示されている。以下、図４に示す入力画像４０に対する、学習器２４の出力及び車両検出部３２による車両検出処理の詳細を説明する。図４に示す通り、本実施形態においては、入力画像４０には複数の車両４２が含まれている。なお、車両検出部３２の処理対象となる入力画像としては、１つの車両４２のみを含むものであってもよく、車両４２が含まれない画像でもよい。
【００４５】
車両検出部３２が、十分に学習された学習器２４に入力画像４０を入力すると、学習器２４は、ヒートマップ及びベクトルマップを出力する。
【００４６】
図５には、入力画像４０に対するヒートマップ５０が示されている。上述のように、学習器２４は、入力画像４０から各車両に関する複数の特徴点を検出する。ヒートマップ５０は、検出された複数の特徴点５２の位置を示すマップである。なお、検出された複数の特徴点５２の位置は、入力画像４０における座標で表される。
【００４７】
図６には、入力画像４０に対するベクトルマップ６０が示されている。上述の通り、学習器２４は、入力画像から検出した各特徴点５２間の向きを検出する。特に、学習器２４は、入力画像に複数の車両が含まれている場合には、車両毎に区別して、各特徴点５２間の向きを検出する。ベクトルマップ６０は、車両毎の各特徴点５２間の向きを示すベクトル６２の位置及び向きを示すマップである。なお、図６に示すベクトルマップ６０には特徴点５２が示されているが、ベクトルマップ６０は特徴点５２を含んでいなくてもよい。
【００４８】
各ベクトル６２は、一の特徴点５２と他の特徴点５２との間に示されるものであるが、その向き（一の特徴点５２から他の特徴点５２へ向かう向きなのか、他の特徴点５２から一の特徴点５２へ向かう向きなのか）は、予め定義されておいてよい。例えば、本実施形態においては、各ベクトル６２は、原則的に、前から後ろ（例えばルーフ右前隅からルーフ右後隅へ向かう方向）、右から左（例えばルーフ右前隅からルーフ左前隅へ向かう方向）の向きとなっている。
【００４９】
ベクトルマップ６０においては、隣接する（近傍にある）特徴点５２間のみのベクトル６２が示されるようにしてもよいが、ある特徴点５２から、当該特徴点５２と同一車両に対応する他の全ての特徴点５２との間にベクトル６２が示されるようにしてもよい。図６に示すベクトルマップ６０においては、一部のベクトル６２のみが示されている。
【００５０】
車両検出部３２は、ヒートマップ５０において検出された特徴点５２とベクトルマップ６０に基づいて、入力画像４０から車両を検出する。具体的な検出処理の内容を以下に説明する。
【００５１】
車両検出部３２は、ヒートマップ５０に対してフィルタリング処理を施し、ヒートマップ５０に含まれる特徴点群から確率が所定値以上である特徴点を有効な複数の特徴点として抽出する。次に、抽出された有効な複数の特徴点の間の全ての組合せについて、特徴点と特徴点を結ぶ線分上でベクトルマップ６０の積分を行う。そして、ベクトルの積分値の平均が所定値以上の２つの特徴点の組を正解の組合せとして特定する。このようにして、有効な複数の特徴点を複数のグループにグルーピングしていく。そうすると、例えば、特徴点を３つ有するグループＡ、特徴点を５つ有するグループＢ、特徴点を６つ有するグループＣ、あるいは他の特徴点と組み合わされなかった単独の特徴点などといったように分類される。そして、所定数以上の特徴点を含むグループを、車両を表すグループとして特定する。すなわち、車両として検出する。
【００５２】
このように、本実施形態によれば、入力画像４０から検出された特徴点５２に基づいて車両を検出するから、入力画像４０において、車両の一部が隠れたり、見切れていたり、あるいは車両のアングルに関わらず、入力画像４０から車両を検出することができる。一方、ヒートマップ５０において特徴点５２が検出されなかった場合には、車両検出部３２は、入力画像４０に車両は含まれていない、と判定することができる。
【００５３】
また、上述の通り、学習器２４は、対応する車両の箇所が識別された複数の特徴点５２を検出可能である。例えば、学習器２４は、特徴点５２ａがルーフ右前隅、特徴点５２ｂがルーフ左前隅、特徴点５２ｃがルーフ右後隅、特徴点５２ｄがルーフ左後隅、特徴点５２ｅがルーフ中央、特徴点５２ｆが右ヘッドライト、特徴点５２ｇが左ヘッドライト、特徴点５２ｈが右前輪、特徴点５２ｉが右後輪であることを識別した上で、各特徴点５２を検出する。
【００５４】
車両検出部３２は、車両の箇所が識別された複数の特徴点５２の位置関係に基づいて、入力画像４０に含まれる車両の向きを検出することができる。例えば、図５に示されたヒートマップ５０の例では、ルーフ右前隅に対応する特徴点５２ａの左上側に、ルーフ右後隅に対応する特徴点５２ｃ位置しており、また、ルーフ右前隅に対応する特徴点５２ａの右上側に、ルーフ左前隅に対応する特徴点５２ｂが位置している。このような位置関係から、車両検出部３２は、複数の特徴点５２ａ〜ｉにより表される車両は、入力画像４０において前側を右下方向に向けていることを検出することができる。
【００５５】
また、車両検出部３２は、車両の箇所が識別された複数の特徴点５２の位置関係に基づいて、車両の種別を検出することができる。車両の種別とは、その外形の違いにより区別されるものであり、例えば、セダン、バン、軽自動車、トラック、あるいはタクシーなどの種別である。
【００５６】
例えば、バンは、タイヤの位置からルーフの位置までの距離がセダンに比して長い。また、トラックは、タイヤの位置からルーフの位置までの距離がセダンに比して比較的長い上、ルーフの前後方向の長さがセダンあるいはバンに比して長い。各種別の車両は、このように外形上の違いを有しているため、車両検出部３２は、複数の特徴点５２の位置によって入力画像４０に含まれる車両の種別を検出することができる。なお、入力画像４０における車両のアングルによって、複数の特徴点５２間の距離が変動し得るので、例えば、車両のルーフの４隅の特徴点の位置関係などに基づいて当該車両のアングルを推定した上で、車両の種別を検出するのが好適である。
【００５７】
図４に示すように、入力画像４０が複数の車両４２を含む場合、特に、複数の車両４２が近接あるいは重なっている場合、ヒートマップ５０において、複数の車両に対応する複数の特徴点５２が密集して検出されることになる。例えば、図５のヒートマップ５０の下部に位置する特徴点群６４がその例である。この場合、各特徴点５２が対応する車両の箇所が識別されているとはいえ、ヒートマップ５０からだけでは、特徴点群６４を各車両に対応するグループに適切に区別するのが困難になる場合がある。
【００５８】
本実施形態では、ベクトルマップ６０を用いることで、複数の車両に対応する特徴点５２が密集した特徴点群６４が形成された場合であっても、特徴点群６４を各車両に対応するグループに適切に区別することができる。具体的には、ベクトルマップ６０に含まれる各ベクトル６２は、ある車両の特徴点５２と、当該車両の他の特徴点５２との間に示されるものである。したがって、特徴点群６４に含まれる各特徴点５２間の向きに基づいて、特徴点群６４を、各車両に対応した特徴点グループ６４ａと特徴点グループ６４ｂに区別することができる。
【００５９】
入力画像４０から検出された複数の特徴点５２が適切に車両毎に区別されることで、車両検出部３２は、入力画像４０に含まれる各車両の向きを検出することが可能となる。それと同時に、車両検出部３２は、入力画像４０に含まれる車両の台数を検出することが可能になる。
【００６０】
図２に戻り、人物検出部３４は、入力画像４０に含まれる人物を検出する。入力画像４０からの人物の検出方法としては、車両を検出するための学習器２４と同様の構成であって、人物を検出するように学習された他の学習器を用いてもよいし、あるいは、既知の画像解析処理などを用いるようにしてもよい。特に、人物検出部３４は、入力画像４０に含まれる人物の数を検出する。
【００６１】
処理演算部３６は、車両検出部３２による入力画像からの車両の検出結果と、人物検出部３４による入力画像からの人物の検出結果に基づいて演算を行う。本実施形態においては、図７に示されるような、タクシー乗り場を俯瞰的に撮影した入力画像４０−２に対して、車両検出部３２がタクシー７０の数を検出し、人物検出部３４が人物７２の数を検出する。そして、処理演算部３６は、入力画像４０−２におけるタクシー７０の台数と人物７２の数とに基づいて演算を行い、タクシーの需要を判定する。このように、処理演算部３６は、タクシー需要判定部として機能する。
【００６２】
車両検出部３２によるタクシーの検出方法としては、様々な方法を採用することができる。まず、学習器２４によりヒートマップ５０（図５参照）が出力された後に、ルーフ中央に対応する特徴点５２を含む一定の領域に対して画像解析を実施し、行灯を検出するようにしてもよい。もちろん、行灯が検出されれば当該車両はタクシーであると判定できるし、行灯が検出されなければ当該車両はタクシーではないと判定できる。
【００６３】
また、学習用画像２６（図３参照）に含まれる車両がタクシーであることを示す情報を学習データに付加し、学習器２４が入力画像４０−２からタクシーを識別可能なように学習器２４を学習させてもよい。
【００６４】
あるいは、カメラ１２の撮影対象場所によっては、入力画像４０−２に含まれる車両はすべてタクシーであるとみなすようにしてもよい。
【００６５】
処理演算部３６は、上述した方法により入力画像４０−２に含まれるタクシー７０及び人物７２を検出し、タクシー７０の台数よりも人物７２の数が多い場合は、タクシーの需要有りと判定し、例えばタクシーの配車担当者が利用するユーザ端末１４に当該タクシー乗り場でタクシーの需要があることを示す情報を送信する。また、処理演算部３６は、入力画像４０−２におけるタクシー７０の台数と人物７２の数との差分を算出し、当該差分（すなわち必要なタクシーの台数）を示す情報をユーザ端末１４に送信するようにしてもよい。
【００６６】
また、処理演算部３６は、タクシー乗り場における過去の複数の入力画像４０−２に含まれるタクシー７０の台数及び人物７２の数の統計データに基づいて、当該タクシー乗り場における将来のタクシーの需要量を予測するようにしてもよい。
【００６７】
図２に戻り、同一性判定部３８は、同一のカメラ１２で異なるタイミングで撮影された複数の入力画像において、車両の同一性を判定する（つまり同じ車両を識別する）処理を行う。同一性判定部３８によれば、あるカメラ１２の撮影範囲の中で、同一車両を追従することが可能になり、車両がどのような動きをするのかを検出することが可能になる。以下の説明においては、同一のカメラ１２で異なるタイミングで撮影された、車両Ａを含む第１入力画像と車両Ｂを含む第２入力画像との間で、車両Ａと車両Ｂの同一性を判定する処理について説明する。
【００６８】
まず、同一性判定部３８は、第１入力画像から学習器２４が検出した車両Ａに関する複数の特徴点の各画素の色情報と、第２入力画像から学習器２４が検出した車両Ｂに関する複数の特徴点の各画素の色情報とを取得する。なお、色情報とは、色相、明度（輝度）、及び彩度を含む概念である。
【００６９】
本実施形態では、学習器２４は、第１入力画像あるいは第２入力画像の１つの画素の座標として各特徴点を検出しているところ、同一性判定部３８は、学習器２４により検出された１つの画素を中心とする一定の面積を持った領域を色情報の取得対象の領域（以後画素領域と記載する）とする。また、第１入力画像あるいは第２入力画像の車両の大きさに応じて、画素領域の面積を変化させるようにしてもよい。例えば、入力画像中の車両が大きい程、画素領域の面積を大きくするようにしてもよい。なお、入力画像中の車両の大きさは、車両の箇所が識別された複数の特徴点の位置に基づいて検出することができる。
【００７０】
本実施形態では、同一性判定部３８は、各画素領域に含まれる複数の画素の色をL*a*b*色空間で表現した上で、複数の画素の色の代表値（例えば平均値、中央値、最頻値）を求める。そして、求めた色の代表値を画素領域の色情報とする。なお、各画素の色をL*a*b*色空間で表現するのは、L*a*b*色空間が人間の視覚に近似するように設計されているためである。
【００７１】
なお、各画素領域の色情報として上記以外の特徴量を採用してもよい。例えば、画素領域に含まれる複数の画素におけるHOG（Histograms of Oriented Gradients）特徴量を算出するようにしてもよい。ここで、HOG特徴量とは、画素領域内の各画素の輝度の勾配方向をヒストグラム化した特徴量である。
【００７２】
以上のようにして、第１入力画像に含まれる車両Ａの各特徴点に対応する画素の色情報、及び、第２入力画像に含まれる車両Ｂの各特徴点に対応する画素の色情報が取得される。
【００７３】
次いで、同一性判定部３８は、車両Ａの各特徴点の色情報と、車両Ｂの各特徴点の色情報とを比較する。詳しくは、車両の箇所毎に、車両Ａの特徴点の色情報と車両Ｂの特徴点の色情報を比較する。これにより、同一性判定部３８は車両Ａと車両Ｂとの同一性を判定する。具体的には、車両Ａのある特徴点（ここではルーフ右前隅とする）と、車両Ｂの対応する箇所であるルーフ右前隅の特徴点との色情報の差分（色差）を算出する。このように、全ての箇所について色差を算出する。
【００７４】
本実施形態では、ＣＩＥ２０００色差式により、各特徴点の画素の色情報の色差を算出する。これは、ＣＩＥ２０００色差式は、人間の目の色識別域の特徴である、色相依存性、明度依存性、及び彩度依存性を考慮した計算式であるためである。すなわち、ＣＩＥ２０００色差式に基づく色差は、人間の視覚による色の差に近い値となるためである。
【００７５】
図８に、車両Ａの各特徴点の色情報と、車両Ｂの各特徴点の色情報との差（色差）が示されている。同一性判定部３８は、算出された色差に基づいて、特徴点毎に類似度を算出する。具体的には、同一性判定部３８は、色差が小さい程類似度が大きくなるように算出する。本実施形態では、以下の式によって色差から類似度を算出する。
【数１】
2019106149.tif 000003
ここで、ｄは色差であり、α及びβは定数である。α及びβを適宜設定することにより、色差の値に対する類似度の値を調整することができる。
【００７６】
図８には、特徴点毎に算出された類似度が示されている。このようにして、車両Ａと車両Ｂとの間において、複数の（本実施形態では１３個）特徴点についての複数の類似度が算出される。同一性判定部３８は、算出された複数の類似度の代表値（例えば平均値、中央値、最頻値）を求める。このように求められた類似度の代表値が車両Ａと車両Ｂとの類似度となる。なお、第１入力画像又は第２入力画像における見切れ、あるいは隠れなどにより、車両Ａ又は車両Ｂの複数の特徴点のうち検出されなかった特徴点がある場合には、当該特徴点に関する類似度は予め定められた値（本実施形態では５０％）とする。
【００７７】
以上のようにして、第１入力画像に含まれる車両Ａと第２入力画像に含まれる車両Ｂの類似度が算出される。同一性判定部３８は、算出された類似度が予め定められた類似度閾値以上である場合に車両Ａと車両Ｂが同一車両であると判定し、算出された類似度が類似度閾値未満である場合に車両Ａと車両Ｂが同一車両ではないと判定する。
【００７８】
上述のように、同一性判定部３８は、異なるタイミングで撮影された複数の入力画像間において車両の同一性を判定する。好適には、カメラ１２が撮像した動画に含まれる、隣接するフレーム画像間毎に上記処理を行うことによって、動画像において同一車両をトラッキングすることができる。
【００７９】
以下、図９に示すフローチャートに従って、本実施形態に係るサーバ１６の処理の流れを説明する。
【００８０】
ステップＳ１０において、サーバ１６の制御部３０は、車両を含む学習用画像２６、学習用画像２６に含まれる車両に関する複数の特徴点２８の位置を示す情報、及び、各特徴点２８が示す車両の箇所を示す情報を含む学習用データを学習器２４に入力することを繰り返すことで、学習器２４を学習させる。ステップＳ１０が学習ステップに相当する。
【００８１】
ステップＳ１２において、車両検出部３２は、カメラ１２が撮影した入力画像４０を学習済みの学習器２４に入力する。
【００８２】
ステップＳ１４において、学習器２４は、ステップＳ１２で入力された入力画像４０に対して、ヒートマップ５０及びベクトルマップ６０を出力する。
【００８３】
ステップＳ１６において、車両検出部３２は、ステップＳ１４で出力されたヒートマップ５０に基づいて、入力画像４０に車両が含まれるか否かを判定する。具体的には、入力画像４０から学習器２４が車両に関する特徴点５２を検出した場合には、車両検出部３２は、入力画像４０に車両が含まれると判定する。入力画像４０に車両が含まれると判定された場合はステップＳ１８に進み、入力画像４０に車両が含まれていないと判定された場合は処理を終了する。ない。ステップＳ１２〜Ｓ１６が車両検出ステップに相当する。
【００８４】
ステップＳ１８において、車両検出部３２は、車両の箇所が識別された複数の特徴点５２の位置関係に基づいて、車両の向き及び種別を検出する。入力画像４０に複数の車両が含まれる場合には、車両検出部３２は、ステップＳ１４で出力されたベクトルマップを用いて複数の特徴点５２を車両毎に区別した上で、複数の車両の向き、種別、あるいは台数を検出する。
【００８５】
以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。
【００８６】
例えば、本実施形態では、情報処理装置としてのサーバ１６が、学習器２４の学習処理と、学習器２４を用いた車両検出処理の両方を実行しているが、学習処理と車両検出処理を別の主体（装置）で実行するようにしてもよい。例えば、他の装置において学習された学習済みの学習器２４をサーバ１６の記憶部２２に記憶させて、当該学習器２４を用いてサーバ１６が車両検出処理を実行するようにしてもよい。
【００８７】
また、本発明は車両以外にも、船や飛行機などの乗り物にも適用可能である。
【符号の説明】
【００８８】
１０  情報処理システム、１２  カメラ、１４  ユーザ端末、１６  サーバ、１８  通信回線、２０  通信部、２２  記憶部、２４  学習器、３０  制御部、３２  車両検出部、３４  人物検出部、３６  処理演算部、３８  同一性判定部。
【図１】
2019106149.tif 000004
【図２】
2019106149.tif 000005
【図３】
2019106149.tif 000006
【図４】
2019106149.tif 000007
【図５】
2019106149.tif 000008
【図６】
2019106149.tif 000009
【図７】
2019106149.tif 000010
【図８】
2019106149.tif 000011
【図９】
2019106149.tif 000012
【手続補正書】
【提出日】平成30年10月26日(2018.10.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習する学習器と、
学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出し、さらに、前記入力画像に対する学習済みの前記学習器の出力に基づいて、前記入力画像に含まれる車両の種別がタクシーであることを識別する車両検出部と、
前記入力画像を解析することで、前記入力画像に含まれる人物を検出する人物検出部と、
前記入力画像に含まれるタクシーの台数と人物の数とに基づいて、タクシーの需要を判定するタクシー需要判定部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記車両検出部は、前記学習器が前記入力画像から検出した、対応する車両の箇所が識別された複数の特徴点の位置関係に基づいて、前記入力画像中に含まれる車両の向きを検出する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記学習器は、前記学習用画像に含まれる前記車両の前記複数の特徴点間の向きを学習し、
前記車両検出部は、前記学習器が前記入力画像から検出した複数の特徴点間の向きに基づいて、前記入力画像に含まれる複数の車両を区別した上で、複数の車両の向き及び台数の少なくとも一方を検出する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記学習用データは、前記学習用画像が撮影された時の天気を示す情報を含み、
前記学習器は、前記学習用画像が撮影された時の天気を考慮して学習する、
ことを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記学習用データは、前記学習用画像に含まれる車両のライトの点灯有無を示す情報を含み、
前記学習器は、前記学習用画像に含まれる車両のライトの点灯有無を考慮して学習する、
ことを特徴とする請求項１から４のいずれか１項に記載の情報処理装置。
【請求項６】
前記車両検出部は、前記学習器が前記入力画像から検出した、対応する車両の箇所が識別された複数の特徴点の位置関係に基づいて、前記入力画像に含まれる車両の種別を検出する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項７】
コンピュータを、
車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習する学習器と、
学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出し、さらに、前記入力画像に対する学習済みの前記学習器の出力に基づいて、前記入力画像に含まれる車両の種別がタクシーであることを識別する車両検出部と、
前記入力画像を解析することで、前記入力画像に含まれる人物を検出する人物検出部と、
前記入力画像に含まれるタクシーの台数と人物の数とに基づいて、タクシーの需要を判定するタクシー需要判定部と、
として機能させることを特徴とする情報処理プログラム。
【請求項８】
車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習器を学習させる学習ステップと、
学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出し、さらに、前記入力画像に対する学習済みの前記学習器の出力に基づいて、前記入力画像に含まれる車両の種別がタクシーであることを識別する車両検出ステップと、
前記入力画像を解析することで、前記入力画像に含まれる人物を検出する人物検出ステップと、
前記入力画像に含まれるタクシーの台数と人物の数とに基づいて、タクシーの需要を判定するタクシー需要判定ステップと、
を含むことを特徴とする情報処理方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明は、車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習する学習器と、学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出し、さらに、前記入力画像に対する学習済みの前記学習器の出力に基づいて、前記入力画像に含まれる車両の種別がタクシーであることを識別する車両検出部と、前記入力画像を解析することで、前記入力画像に含まれる人物を検出する人物検出部と、
前記入力画像に含まれるタクシーの台数と人物の数とに基づいて、タクシーの需要を判定するタクシー需要判定部と、を備えることを特徴とする情報処理装置である。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】削除
【補正の内容】
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
また、本発明は、コンピュータを、車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習する学習器と、学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出し、さらに、前記入力画像に対する学習済みの前記学習器の出力に基づいて、前記入力画像に含まれる車両の種別がタクシーであることを識別する車両検出部と、前記入力画像を解析することで、前記入力画像に含まれる人物を検出する人物検出部と、前記入力画像に含まれるタクシーの台数と人物の数とに基づいて、タクシーの需要を判定するタクシー需要判定部と、として機能させることを特徴とする情報処理プログラムである。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
また、本発明は、車両を含む学習用画像、前記学習用画像に含まれる前記車両に関する複数の特徴点の位置を示す情報、及び、各特徴点が示す前記車両の箇所を示す情報を含む学習用データを用いて学習器を学習させる学習ステップと、学習済みの前記学習器に入力画像を入力して、前記学習器が前記入力画像から検出した車両に関する特徴点に基づいて、前記入力画像に含まれる車両を検出し、さらに、前記入力画像に対する学習済みの前記学習器の出力に基づいて、前記入力画像に含まれる車両の種別がタクシーであることを識別する車両検出ステップと、前記入力画像を解析することで、前記入力画像に含まれる人物を検出する人物検出ステップと、前記入力画像に含まれるタクシーの台数と人物の数とに基づいて、タクシーの需要を判定するタクシー需要判定ステップと、を含むことを特徴とする情報処理方法である。