(57)【要約】【課題】複雑な環境においても高精度・高速に立体物を検出することが可能な立体物認識装置、撮像装置および車両を提供する。【解決手段】ステレオ画像取得部（取得手段）が、画素毎に距離情報を有する時系列の視差画像（距離画像）を取得して、路面推定部（識別手段）が、時系列の視差画像の中から立体物を識別して、俯瞰画像群生成部（マッピング手段）が、路面推定部が立体物として識別した領域を、ステレオ画像取得部の設置位置とは異なる位置から見た時系列の俯瞰マップにマッピングする。そして、学習モデル生成部（モデル作成手段）が、ステレオ画像取得部によって立体物として識別された領域について、当該立体物のモデルを予め作成するとともに、判別部（判別手段）が、俯瞰画像群生成部によってマッピングされた俯瞰マップと、学習モデル生成部が予め作成したモデルと、に基づいて、時系列の視差画像が含む立体物を判別する。【選択図】図４
2019139420.tif 000002
【特許請求の範囲】
【請求項１】
画素毎に距離情報を有する距離画像を時系列で取得する取得手段と、
前記取得手段が取得した時系列の距離画像の中から立体物を識別する識別手段と、
前記識別手段によって立体物として識別された領域を、時系列の俯瞰マップにマッピングするマッピング手段と、
立体物として識別された領域について、当該立体物のモデルを作成するモデル作成手段と、
前記マッピング手段によってマッピングされた俯瞰マップと、前記モデル作成手段が予め作成したモデルと、に基づいて、時系列の前記距離画像が含む立体物を判別する判別手段と、
を備えたことを特徴とする立体物認識装置。
【請求項２】
前記距離画像は、ステレオカメラで撮像された画像情報に基づくものであるとともに、
前記識別手段は、前記取得手段が取得した時系列の距離画像の中から、路面を検出する路面検出手段を更に備えて、
前記マッピング手段は、前記路面検出手段が検出した路面よりも高い位置に存在する立体物までの距離に対応する視差値を、前記俯瞰マップにマッピングする、
ことを特徴とする請求項１に記載の立体物認識装置。
【請求項３】
前記俯瞰マップは、
横軸が実距離に対応する量であり、
縦軸が前記視差値に対応する量であって、
当該俯瞰マップを構成する画素に対して、当該画素の位置における前記視差値の発生頻度をマッピングした２次元ヒストグラムである、
ことを特徴とする請求項２に記載の立体物認識装置。
【請求項４】
前記判別手段は、
一つの入力画像に対して、複数の異なる空間フィルタを作用させて、複数のフィルタ画像を生成する生成手段と、
前記複数のフィルタ画像の各々に対して、予め立体物の形状を表現するパラメータを有する１以上のモデルを含むモデル群を用いて、前記入力画像の各部分の発生確率を算出することによって、前記入力画像の中から非定常領域を検出する非定常領域検出手段と、
を備えて、
前記非定常領域検出手段は、前記複数の異なる空間フィルタに対応するモデル毎の前記入力画像の各部分の発生確率を、対応する部分を合わせて一の画像に統合した発生確率に基づいて、前記入力画像の中から非定常領域を検出する、
ことを特徴とする請求項１から請求項３のいずれか１項に記載の立体物認識装置。
【請求項５】
前記非定常領域検出手段は、
前記入力画像の各部分の発生確率の同時確率に基づいて前記一の画像に統合した発生確率を算出する、
ことを特徴とする請求項４に記載の立体物認識装置。
【請求項６】
前記非定常領域検出手段は、
前記入力画像の各部分の発生確率を、ある値が分布の中でどのあたりに位置するかを、平均値０、標準偏差１の標準正規分布に置き換えて表したＺスコアの平均値に基づいて前記一の画像に統合した発生確率を算出する、
ことを特徴とする請求項４または請求項５に記載の立体物認識装置。
【請求項７】
前記生成手段は、
多重解像度を有するとともに、エッジ方向を算出する複数の空間フィルタを備える、
ことを特徴とする請求項４から請求項６のいずれか１項に記載の立体物認識装置。
【請求項８】
前記非定常領域検出手段は、
複数の立体物を表現する複数のモデル毎に、前記モデルの中の複数の領域の特徴量を算出するとともに、
入力画像が、前記複数のモデルのいずれに当てはまるかを表す確率を計算して、
前記確率に基づいて前記特徴量を最適化した前記複数のモデルを用いて、前記入力画像を前記複数のモデルと比較する、
ことを特徴とする請求項４から請求項７のいずれか１項に記載の立体物認識装置。
【請求項９】
前記非定常領域検出手段は、
前記入力画像の各部分の発生確率を、正規分布に基づくモデルを用いて算出する、
ことを特徴とする請求項４から請求項８のいずれか１項に記載の立体物認識装置。
【請求項１０】
画素毎に距離情報を有する距離画像を時系列で取得する取得手段と、
前記取得手段が取得した時系列の距離画像の中から立体物を識別する識別手段と、
時系列の前記距離画像の中から、立体物として識別された領域を、時系列の俯瞰マップにマッピングするマッピング手段と、
立体物として識別された領域について、当該立体物のモデルを作成するモデル作成手段と、
前記マッピング手段によってマッピングされた俯瞰マップと、前記モデル作成手段が作成したモデルと、に基づいて、時系列の前記距離画像が含む立体物を判別する判別手段と、
を備えて、
前記判別手段は、前記取得手段が時系列で取得した距離画像に基づき前記モデル作成手段が随時作成した立体物のモデルを用いて、前記距離画像が含む立体物を判別する、
ことを特徴とする立体物認識装置。
【請求項１１】
ステレオ画像を時系列で撮像する撮像手段と、
前記撮像手段により撮像された前記ステレオ画像から、画素毎に距離情報を有する距離画像を時系列で取得する取得手段と、
前記取得手段が取得した時系列の前記距離画像の中から立体物を識別する識別手段と、
前記識別手段によって立体物として識別された領域を、時系列の俯瞰マップにマッピングするマッピング手段と、
立体物として識別された領域について、当該立体物のモデルを作成するモデル作成手段と、
前記マッピング手段によってマッピングされた俯瞰マップと、前記モデル作成手段が予め作成したモデルと、に基づいて、時系列の前記距離画像が含む立体物を判別する判別手段と、
を備えたことを特徴とする撮像装置。
【請求項１２】
請求項１から請求項１０に記載の立体物認識装置、または請求項１１に記載の撮像装置を備えた車両。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、立体物認識装置、撮像装置および車両に関する。
【背景技術】
【０００２】
周囲環境を認識するために、画像や測距センサ等を用いて、対象物体の位置やセンサからの距離を測定する手法がある。例えば、ステレオカメラを用いた測位技術は、近年、車載用途などで活発に技術開発が行われている（例えば、特許文献１、特許文献２）。
【０００３】
特許文献１では、ステレオカメラから得られる視差画像に基づいて、視差塊毎に物体を検出した後で、検出された物体毎に、画像特徴や時間特徴に基づいて物体を特定している。
【０００４】
また、特許文献２では、輝度画像や視差画像等の２次元画像特徴に基づいて、検出対象の種別毎に物体を検出している。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、例えば特許文献１にあっては、検出対象以外の構造物が多く存在するシーンでは高精度な検出が困難という問題があった。すなわち、検出結果に対して検出対象を判別する手法であるため、判別精度がその検出精度に依存していた。そのため、物体同士が隣接している場合、異なる物体が一つの視差塊になるという問題があった。また、視差が出にくい環境において、一つの物体を分離して検出してしまうおそれがある場合に、判別性能が低下するという問題があった。
【０００６】
また、特許文献２にあっては、検出対象の画像上での写り方が多様である場合、高精度な検出が困難であるという問題があった。例えば、人間が検出対象の場合、人間の動作（歩行や腰曲げ動作、静止、物を抱えている、車両に乗っている）が様々であることや、服装によっても画像特徴が異なる。したがって、動作や服装等が統一されていない環境では安定した検出が難しかった。また、近場から遠方に亘って同じ手法で物体を検出するため、距離によらずに高い精度を発揮させるのが困難であるという問題があった。すなわち、遠方の物体ほど画像内で小さくなり、特徴が少なくなるため、情報量の多い近場の物体と情報量の少ない遠方の物体とを単一の手法で高精度に検出することが難しかった。
【０００７】
本発明は、上記に鑑みてなされたものであり、３次元空間情報と２次元輝度画像情報とを効率的に用いて、画像の中で時刻とともにその位置が変化する非定常領域を検出することによって、複雑な環境においても高精度・高速に立体物を検出することが可能な立体物認識装置、撮像装置および車両を提供することを目的とする。
【課題を解決するための手段】
【０００８】
前記した課題を解決し、目的を達成するために、本発明は、画素毎に距離情報を有する距離画像を時系列で取得する取得手段と、前記取得手段が取得した時系列の距離画像の中から立体物を識別する識別手段と、前記識別手段によって立体物として識別された領域を、時系列の俯瞰マップにマッピングするマッピング手段と、立体物として識別された領域について、当該立体物のモデルを作成するモデル作成手段と、前記マッピング手段によってマッピングされた俯瞰マップと、前記モデル作成手段が予め作成したモデルと、に基づいて、時系列の前記距離画像が含む立体物を判別する判別手段と、を備える立体物認識装置である。
【発明の効果】
【０００９】
本発明によれば、複雑な環境においても高精度かつ高速に立体物を検出することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態の立体物認識装置を搭載した車両の概略構成を示す模式図である。
【図２】図２は、立体物認識装置のハードウェアの構成の一例を示すハードウェアブロック図である。
【図３】図３は、被写体と各撮像部の撮像レンズとの位置関係の一例を示す図である。
【図４】図４は、立体物認識装置の機能構成の一例を示す機能ブロック図であり、図４（ａ）は、背景データ処理を実現する機能構成の一例を示す機能ブロック図である。図４（ｂ）は、学習モデル生成処理を実現する機能構成の一例を示す機能ブロック図である。図４（ｃ）は、物体検出処理を実現する機能構成の一例を示す機能ブロック図である。
【図５】図５（ａ）は、撮像ユニットで撮像された撮影画像の一例を示す図である。図５（ｂ）は、撮影画像に対応するＶマップの一例を示す図である。
【図６】図６（ａ）は、撮像ユニットで撮像された撮影画像の一例を示す図である。図６（ｂ）は、図６（ａ）の撮影画像に対応する俯瞰画像の一例を示す図である。
【図７】図７は、学習モデル生成部の詳細構成を示す機能ブロック図である。
【図８】図８は、学習部が行う処理の流れの一例を示すフローチャートである。
【図９】図９は、学習部が行う処理の前提となるモデル推定問題についての説明図である。
【図１０】図１０は、学習モデル生成部が統合スコアを算出するアルゴリズムの全体構成を示す模式図である。
【図１１】図１１は、学習モデル生成部が行う処理の変形例の流れを示す模式図である。
【図１２】図１２は、孤立領域検出部が行うラベリング処理について説明する図であり、図１２（ａ）は、仮の番号を付与した状態の一例を示す図である。図１２（ｂ）は、付与された仮の番号を付け替える処理の一例を示す図である。図１２（ｃ）は、ラベリング処理を完了した状態の一例を示す図である。
【図１３】図１３は、棄却処理で用いる設定値の一例を示す図である。
【図１４】図１４は、物体検出処理の具体例を示す図であり、図１４（ａ）は、撮像ユニットで撮像された撮影画像の一例を示す図である。図１４（ｂ）は、図１４（ａ）の撮影画像に対応する俯瞰画像の一例を示す図である。図１４（ｃ）は、非定常領域の検出結果の一例を示す図である。図１４（ｄ）は、孤立領域の検出結果の一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、実施の形態の立体物認識装置１０を詳細に説明する。図１は、実施の形態の立体物認識装置１０を搭載した車両１の概略構成を示す模式図である。図１に示すように、立体物認識装置１０は、移動体の一例である自動車等の車両１に設けられる。立体物認識装置１０は、撮像ユニット２と解析ユニット３とを備える。なお、立体物認識装置１０を撮像装置１０ａとして使用してもよい。また、車両１は、立体物認識装置１０の出力に基づいて動作する、制御ユニット４と、表示部５と、を備える。
【００１２】
撮像ユニット２は、車両１のフロントガラス６のルームミラー付近に設けられ、車両１の、例えば進行方向等の画像を撮像する。撮像ユニット２の撮像動作で得られる画像データを含む各種データは、解析ユニット３に供給される。解析ユニット３は、撮像ユニット２から供給される各種データに基づいて、車両１が走行中の路面を検出するとともに、路面から高さを有する立体物である、車両１の先行車両、歩行者、障害物等の立体物（オブジェクト）を解析する。
【００１３】
制御ユニット４は、解析ユニット３の解析結果に基づいて、表示部５を介して、車両１の運転者へ警告等を行う。また、制御ユニット４は、解析結果に基づいて、各種車載機器の制御、車両１の操舵制御、加速制御、減速制御等の走行支援を行う。
【００１４】
（立体物認識装置のハードウェア構成の説明）
次に、図２を用いて、立体物認識装置１０（撮像装置１０ａ）のハードウェア構成について説明する。図２は、立体物認識装置１０のハードウェアの構成の一例を示すハードウェアブロック図である。図２に示すように、撮像ユニット２は、例えば２つの撮像部１０Ａ、１０Ｂを備えたステレオカメラ構成となっている。すなわち、２つの撮像部１０Ａ、１０Ｂの光軸は、略平行になるように配置されている。なお、２つの撮像部１０Ａ、１０Ｂは同じ構成を有している。具体的には、撮像部１０Ａ、１０Ｂは、撮像レンズ１１Ａ、１１Ｂと、受光素子が２次元配置された、例えばＣＣＤ（Charge  Coupled  Device）やＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）センサ等で構成された画像センサ１２Ａ、１２Ｂと、画像センサ１２Ａ、１２Ｂを撮像駆動するコントローラ１３Ａ、１３Ｂとを有している。
【００１５】
解析ユニット３は、ＦＰＧＡ（Field-Programmable  Gate  Array）１４と、ＲＡＭ（Random  Access  Memory）１５およびＲＯＭ（Read  Only  Memory）１６とを有している。また、解析ユニット３は、ＣＰＵ（Central  Processing  Unit）１７と、シリアルインタフェース（シリアルＩＦ）１８と、データインタフェース（データＩＦ）１９とを有している。ＦＰＧＡ１４からデータＩＦ１９は、解析ユニット３の内部に設けられたデータバスライン２１を介して、相互に接続されている。また、撮像ユニット２と解析ユニット３とは、データバスライン２１およびシリアルバスライン２０を介して、相互に接続されている。
【００１６】
ＲＡＭ１５には、撮像ユニット２から供給される輝度画像データに基づいて生成された視差画像等が記憶される。ＲＯＭ１６には、オペレーションシステムおよびオブジェクト検出プログラム等の各種プログラムが記憶されている。
【００１７】
ＦＰＧＡ１４は、各撮像部１０Ａ、１０Ｂでそれぞれ撮像された撮影画像のうち、一方を基準画像とすると共に他方を比較画像とする。そして、ＦＰＧＡ１４は、撮像領域の中の同一地点に対応する基準画像上の対応画像部分と比較画像上の対応画像部分との位置ズレ量を、対応画像部分の視差値Ｄとして算出する。
【００１８】
ここで、図３を用いて、視差値Ｄの算出方法について説明する。図３は、被写体３０と各撮像部１０Ａ、１０Ｂの撮像レンズ１１Ａ、１１Ｂとの位置関係の一例を示す図である。なお、各撮像部１０Ａ、１０Ｂは、撮像レンズ１１Ａの中心から撮像レンズ１１Ｂの中心に向かう方向をＸ軸として、各撮像部１０Ａ、１０Ｂの光軸方向をＺ軸とする、ＸＹＺ座標系に置かれているとする。また、各撮像レンズ１１Ａ、１１Ｂの間の間隔ｂ、および各撮像レンズ１１Ａ、１１Ｂの焦点距離ｆは、ともに固定値であるとする。このとき、被写体３０上の点Ｐの結像位置Ｐａの撮像レンズ１１Ａの中心からのずれ量をΔ１とする。また、被写体３０上の点Ｐの結像位置Ｐｂの撮像レンズ１１Ｂの中心からのずれ量をΔ２とする。この場合、ＦＰＧＡ１４は、被写体３０上の点Ｐに対する各撮像部１０Ａ、１０Ｂの各撮像レンズ１１Ａ、１１Ｂを通した結像位置の差である視差値Ｄを、式１によって算出する。
【００１９】
Ｄ＝｜Δ１−Δ２｜・・・（式１）
【００２０】
ＦＰＧＡ１４は、撮像ユニット２から供給される輝度画像データに対して、例えばガンマ補正処理および歪み補正処理（左右の撮影画像の平行化）等のリアルタイム性が要求される処理を施す。また、ＦＰＧＡ１４は、このようなリアルタイム性が要求される処理を施した輝度画像データを用いて、式１の演算を行うことで、視差値Ｄを生成してＲＡＭ１５に書き込む。
【００２１】
ＣＰＵ１７は、ＲＯＭ１６に記憶されているオペレーションシステムに基づいて動作し、各撮像部１０Ａ、１０Ｂの撮像制御を行う。また、ＣＰＵ１７は、ＲＯＭ１６からオブジェクト検出プログラムをロードし、ＲＡＭ１５に書き込まれた視差値Ｄを用いて各種処理を実行する。具体的には、ＣＰＵ１７は、オブジェクト検出プログラムに基づいて、車両１に設けられた各センサから、データＩＦ１９を介して取得した車速、加速度、操舵角、ヨーレート等のＣＡＮ（Controller  Area  Network）情報を参照する。そして、ＣＰＵ１７は、路面、ガードレール、車両、人間等の認識対象物の認識処理、視差計算、認識対象物との間の距離の計算等を行う。なお、認識対象物の視差検出精度を向上させるために、視差検出中は車両１を停止させておいてもよい。
【００２２】
ここで、視差値Ｄは、図３に示す各撮像レンズ１１Ａ、１１Ｂから被写体３０までの距離をＺｏとして、以下の式２で算出できる。
【００２３】
Ｄ＝（ｂ×ｆ）／Ｚｏ・・・（式２）
【００２４】
式２からわかるように、各撮像レンズ１１Ａ、１１Ｂから被写体３０までの距離Ｚｏは、視差値Ｄを用いて、以下の式３で算出できる。
【００２５】
Ｚｏ＝（ｂ×ｆ）／Ｄ・・・（式３）
【００２６】
ＣＰＵ１７は、撮像ユニット２から供給される前記の視差値Ｄを用いて、被写体３０との間の距離Ｚｏを算出する。
【００２７】
（立体物認識装置の機能構成の説明）
次に、図４を用いて、立体物認識装置１０の機能構成について説明する。図４は、立体物認識装置１０の機能構成の一例を示す機能ブロック図である。
【００２８】
立体物認識装置１０は、背景データ処理と、学習モデル生成処理と、物体検出処理とを行う。背景データ処理は、撮像ユニット２で撮像したステレオ画像から視差画像Ｄ（ｘ，ｙ）（不図示）を生成するとともに、生成された視差画像Ｄ（ｘ，ｙ）の中から路面と物体（立体物、オブジェクト）とを識別して、識別された立体物を俯瞰画像にマッピングする処理である。学習モデル生成処理は、道路環境において、路面から高さを有する先行車両、歩行者、障害物等の立体物の学習モデルを生成する処理である。物体検出処理は、背景データ処理で生成した俯瞰画像と、学習モデル生成処理で生成したオブジェクトの学習モデルとに基づいて、撮像ユニット２で撮像したステレオ画像の中から、路面から高さを有する立体物を検出する処理である。
【００２９】
立体物認識装置１０は、ＦＰＧＡ１４と、ＲＡＭ１５と、ＲＯＭ１６とが協働することによって、前記した各処理を実行する。そして、立体物認識装置１０は、前記した各処理に応じた機能構成を実現する。
【００３０】
（背景データ処理を実現する機能構成の説明）
図４（ａ）に示すように、背景データ処理は、ステレオ画像取得部４０と、視差画像生成部４１と、路面推定部４２と、俯瞰画像群生成部４３とで実現される。
【００３１】
ステレオ画像取得部４０は、画素毎に距離情報を有する距離画像を時系列で取得する。より具体的には、ステレオ画像取得部４０は、撮像ユニット２で撮像したステレオ画像を取得する。なお、ステレオ画像取得部４０は、取得手段の一例である。
【００３２】
視差画像生成部４１は、ステレオ画像取得部４０が取得したステレオ画像から、画素毎に距離情報を備えた距離画像の一例である視差画像Ｄ（ｘ，ｙ）を生成する。視差画像Ｄ（ｘ，ｙ）は、画素毎に視差値Ｄを有する画像である。
【００３３】
すなわち、視差画像生成部４１は、撮像部１０Ａの輝度画像データを基準画像データとし、撮像部１０Ｂの輝度画像データを比較画像データとし、前記した式１に示す演算を行うことで、基準画像データと比較画像データの視差値Ｄを算出する。具体的には、視差画像生成部４１は、基準画像データの所定の「行」について、一つの注目画素を中心とした複数画素（例えば１６画素×１画素）からなるブロックを定義する。一方、比較画像データにおける同じ「行」において、定義した基準画像データのブロックと同じサイズのブロックを１画素ずつ横ライン方向（Ｘ方向）へずらす。そして、視差画像生成部４１は、基準画像データにおいて定義したブロックの画素値（画素に格納された値、輝度値）の特徴を示す特徴量と比較画像データにおける各ブロックの画素値の特徴を示す特徴量との相関を示す相関値を、それぞれ算出する。
【００３４】
また、視差画像生成部４１は、算出した相関値に基づき、比較画像データにおける各ブロックの中で最も基準画像データのブロックと相関があった比較画像データのブロックを選定するマッチング処理を行う。その後、基準画像データのブロックの注目画素と、マッチング処理で選定された比較画像データのブロックの対応画素との位置ズレ量を視差値Ｄとして算出する。このような視差値Ｄを算出する処理を基準画像データの全域、または特定の一領域について行うことで、視差画像Ｄ（ｘ，ｙ）を得る。
【００３５】
マッチング処理に用いるブロックの特徴量としては、例えばブロックの中の各画素の値（輝度値）を用いることができる。また、相関値としては、例えば基準画像データのブロックの中の各画素の値（輝度値）と、これらの画素にそれぞれ対応する比較画像データのブロックの中の各画素の値（輝度値）との差分の絶対値の総和を用いることができる。この場合、総和が最も小さくなるブロックが、最も相関があるブロックとして検出される。
【００３６】
視差画像生成部４１が行うマッチング処理としては、例えば、ＳＳＤ（Sum  of  Squared  Difference）、ＺＳＳＤ（Zero-mean  Sum  of  Squared  Difference）、ＳＡＤ（Sum  of  Absolute  Difference）、またはＺＳＡＤ（Zero-mean  Sum  of  Absolute  Difference）等の手法がよく知られている。なお、マッチング処理において、１画素未満のサブピクセルレベルの視差値Ｄが必要な場合は、推定値を用いる。推定値の推定手法としては、例えば等角直線方式、または二次曲線方式等を用いることができる。ただし、推定したサブピクセルレベルの視差値Ｄには誤差が発生する。このため、推定誤差を減少させるＥＥＣ（推定誤差補正）等の手法を用いてもよい。
【００３７】
なお、本実施の形態においては、視差値Ｄと距離値が等価に扱えることから、距離画像の一例として視差画像Ｄ（ｘ，ｙ）を示すが、距離画像の形態はこれに限られない。例えば、ミリ波レーダやレーザレーダから得られる距離情報と、ステレオカメラで生成される視差値Ｄとを融合させて距離画像を生成しても良い。
【００３８】
路面推定部４２は、取得手段が取得した視差画像Ｄ（ｘ，ｙ）（距離画像）から、横軸を視差値Ｄ、縦軸をｙ座標値として、画素値を頻度とする２次元ヒストグラムを作成する。以下、この２次元ヒストグラムを「V-Disparityマップ（Ｖマップ）」と呼ぶ。そして、路面推定部４２は、２次元ヒストグラムの中から立体物を識別する。なお、路面推定部４２は、識別手段および路面検出手段の一例である。
【００３９】
具体的には、路面推定部４２は、例えば、撮像ユニット２が撮像した撮影画像Ｐ１（ｘ，ｙ）が、図５（ａ）に示すように、画面の奥に向かって延びる平坦な路面６０上を走行する車両６１の左側に電柱６２が存在する景色である場合に、以下の処理を行う。すなわち、撮影画像Ｐ１（ｘ，ｙ）の中の、視差値Ｄおよびｙ座標値を有する画素（Ｄ，ｙ）について、対応するＶマップＶ（Ｄ，ｙ）の画素（Ｄ，ｙ）に、画素値を一つカウントアップした度数（頻度）を付与する。そして、路面推定部４２は、横軸を視差値Ｄ、縦軸をｙ座標値、画素値を頻度とした２次元ヒストグラム上の各画素（Ｄ，ｙ）に投票を行うことで、図５（ｂ）に示すＶマップＶ（Ｄ，ｙ）を作成する。
【００４０】
作成されたＶマップＶ（Ｄ，ｙ）には、図５（ｂ）に示すように、右下がりの直線として路面６０を表す領域が投票される。そして、路面６０を表す領域の上方に、車両６１および電柱６２を表す領域が投票される。路面推定部４２は、このＶマップＶ（Ｄ，ｙ）における右下がりの直線状の画素群を特定することによって、路面６０に相当する画素群を特定する。すなわち、図５（ｂ）に示すＶマップＶ（Ｄ，ｙ）においては、路面６０より下の部分の視差値Ｄは検出されない。このため、図５（ｂ）に斜線で示す領域Ａに相当する視差値Ｄはカウントされることはない。このように、路面推定部４２は、ステレオ画像取得部４０が取得した時系列のＶマップＶ（Ｄ，ｙ）の中から路面６０を検出するとともに、路面６０と路面６０から高さを有する立体物とを識別する。
【００４１】
もしノイズ等により路面６０より下の領域（路面６０より低い部分）において視差値Ｄが検出されれば、これらの視差値Ｄは、以降のオブジェクト検出において利用しないようにすればよい。なお、オブジェクトの高さを検出するためには、路面６０を正確に検出することが必要となる。そのため、立体物認識装置１０を搭載した車両１が停止している状態において検出される路面６０に相当する仮想直線（図５（ｂ）における右下がりの直線）を用いて、当該仮想直線から所定距離内における画素（Ｄ，ｙ）のみをマッピングしたＶマップＶ（Ｄ，ｙ）（制限Ｖマップ）、すなわち、路面から所定の高さ範囲を有する画素（Ｄ，ｙ）のみを路面検出に利用してもよい。
【００４２】
次に、生成されたＶマップＶ（Ｄ，ｙ）を用いて路面形状を検出する路面推定部４２の動作を説明する。路面推定部４２は、各オブジェクトの高さの基準とする基準オブジェクトの一例である路面６０を検出する。路面推定部４２は、ＶマップＶ（Ｄ，ｙ）上で路面６０と推定される位置を直線近似する。路面６０が平坦な場合は、一本の直線で近似する。また、途中で勾配が変わる路面６０の場合、ＶマップＶ（Ｄ，ｙ）上を複数の区間に分割して直線近似を行う。これにより、途中で勾配が変わる路面６０の場合でも、精度よく直線近似を行うことができる。
【００４３】
具体的に説明すると、路面推定部４２は、まず、ＶマップＶ（Ｄ，ｙ）を用いて路面候補点を検出する。路面候補点の検出は、横軸を二つに分割し、それぞれの領域で候補点の検出方法を変える。具体的には、路面推定部４２は、視差値Ｄの大きい近距離の領域においては、第１の候補点検出方法で路面候補点の検出を行う。また、路面推定部４２は、視差値Ｄの小さい遠距離の領域においては、第２の候補点検出方法で路面候補点の検出を行う。
【００４４】
ここで、上記のように視差値Ｄの大きい近距離の領域と視差値Ｄの小さい遠距離の領域とで路面候補点の検出方法を変更する理由は、以下の通りである。すなわち、例えば、図５（ａ）に示す撮影画像Ｐ１（ｘ，ｙ）のように、近距離では路面６０の面積が大きく、路面上の視差データがＶマップＶ（Ｄ，ｙ）に投票される頻度が大きいのに対し、遠距離では路面６０の面積が小さくなり、路面６０を表す座標の頻度が相対的に小さくなる。つまり、ＶマップＶ（Ｄ，ｙ）で路面６０として予測される点の頻度値は、遠距離では小さく、近距離では大きい。このため、同じ基準で路面候補点を検出すると、近距離では路面６０の候補点は検出できるが、遠距離の路面候補点は検出困難となり、遠距離の路面検出精度が低下する。
【００４５】
このような欠点を解消するために、ＶマップＶ（Ｄ，ｙ）を視差値Ｄの大きい領域と視差値Ｄの小さい領域とに分け、各領域で、路面候補点の検出の方法および基準を変更してもよい。これにより、近距離および遠距離の双方の路面検出精度を向上させることができる。
【００４６】
俯瞰画像群生成部４３は、マッピング手段の一例であって、ステレオ画像取得部４０が取得した時系列の距離画像の中から、路面推定部４２が立体物として識別した領域を、ステレオ画像取得部４０の設置位置とは異なる位置、例えば路面を真上から見下ろした時系列の俯瞰マップＪ２（ｘ，Ｄ）にマッピングする。より具体的には、俯瞰画像群生成部４３は、横軸に実距離ｘ、縦軸に視差値Ｄをとり、画素値として頻度ｄをプロットした俯瞰画像、すなわち２次元ヒストグラムを生成する。なお、２次元ヒストグラムの横軸は実距離ｘに限定されるものではなく、実際の画素の位置としてもよい。
【００４７】
俯瞰画像群生成部４３は、ＶマップＶ（Ｄ，ｙ）に投票された点のうち、路面６０からの高さが所定の範囲、例えば２０ｃｍから３ｍの範囲にあることを示す画素（Ｄ，ｙ）のみを選択する。そして、俯瞰画像群生成部４３は、選択された画素（Ｄ，ｙ）を俯瞰画像にマッピングする。なお、俯瞰画像群生成部４３が生成した俯瞰画像は、後述する学習モデル生成部４４と、非定常領域検出部４５および孤立領域検出部４６に対する入力データとする。
【００４８】
俯瞰画像群生成部４３は、俯瞰画像と高さの俯瞰画像を同時に作成する。これは、横軸に実距離ｘ、縦軸に視差値Ｄをとり、画素値にその画素（ｘ，Ｄ）に投票された視差値Ｄの最大高さ（検出した路面６０からのｙ方向の差分最大値）を記録したマップを作成することに相当する。画素（ｘ，Ｄ）の分解能を、俯瞰画像と同じにすることによって、俯瞰画像の生成処理を簡便に行うことができる。作成された俯瞰画像は、後述する対応領域検出部４７の入力データとする。なお、学習モデル生成時に、ノイズ等の影響を受けにくくするために、俯瞰画像生成時に平滑化等の処理を行ってもよい。
【００４９】
次に、図６を用いて、俯瞰画像群生成部４３の作用を具体的に説明する。図６（ａ）は、撮像ユニット２で撮像された撮影画像Ｐ２（ｘ，ｙ）の一例を示す図である。図６（ｂ）は、図６（ａ）の撮影画像Ｐ２（ｘ，ｙ）に対応する俯瞰画像Ｊ２（ｘ，Ｄ）の一例を示す図である。なお、俯瞰画像Ｊ２（ｘ，Ｄ）は、俯瞰マップの一例である。
【００５０】
図６（ａ）の撮影画像Ｐ２（ｘ，ｙ）は、左右に壁状のガードレール７０ａ、７０ｂが設けられた路面６０に、３人の歩行者、すなわち、歩行者８０ａ、８０ｂ、８０ｃが立っている状態を示している。
【００５１】
俯瞰画像群生成部４３が、撮影画像Ｐ２（ｘ，ｙ）から俯瞰画像Ｊ２（ｘ，Ｄ）を生成する。俯瞰画像Ｊ２（ｘ，Ｄ）の横軸は、実距離ｘとなっている。なお、俯瞰画像Ｊ２（ｘ，Ｄ）の縦軸Ｄは、例えば、距離に応じた間引き率を用いて間引き処理した視差値Ｄとしてもよい。例えば、５０ｍ以上の遠距離の場合、俯瞰画像群生成部４３は、間引き処理しない視差値Ｄを用いてもよい。また、例えば、２０〜５０ｍ等の中距離の場合、俯瞰画像群生成部４３は、１／２に間引き処理した視差値Ｄを用いてもよい。また、例えば１０〜２０ｍ等の近距離の場合、俯瞰画像群生成部４３は、１／３に間引き処理した視差値Ｄを用いてもよい。また、例えば０〜１０ｍ等の最近距離の場合、俯瞰画像群生成部４３は、１／８に間引き処理した視差値Ｄを用いてもよい。
【００５２】
遠方では、認識すべき立体物が小さいため、視差情報が少ない。また、距離の分解能も大きいため、間引き処理は行わない。これに対して、近距離の場合は、立体物が大きく写るため、視差情報が多く距離の分解能も小さい。このため、大きな間引き処理を行うことが可能となる。図６（ｂ）の俯瞰画像Ｊ２（ｘ，Ｄ）からわかるように、ガードレール７０ａ、７０ｂは、道路に沿って縦方向（奥行方向）に延びる直線状に表される。また、歩行者８０ａ、８０ｂ、８０ｃは、実際の存在位置に応じた位置に射影される。
【００５３】
俯瞰画像群生成部４３は、前記した俯瞰画像Ｊ２（ｘ，Ｄ）の生成処理を、所定の時間間隔ｔ０で周期的に実行する。これにより、俯瞰画像Ｊ２（ｘ，Ｄ，ｔ）、Ｊ２（ｘ，Ｄ，ｔ＋ｔ０）、Ｊ２（ｘ，Ｄ，ｔ＋２ｔ０）、…が生成される。なお、俯瞰画像Ｊ２（ｘ，Ｄ，ｔ）は、時刻ｔにおいて生成された俯瞰画像Ｊ２（ｘ，Ｄ）を表す。以下、簡単のため、俯瞰画像Ｊ２（ｘ，Ｄ，ｔ）を、単にＪ２（ｘ，Ｄ）と表記する。生成された一連の俯瞰画像群５１は、例えばＲＡＭ１５、または図２に不図示のＨＤＤ（Hard  Disk  Drive）等の記憶装置に記憶される。この俯瞰画像群５１は、後述する学習モデル生成処理で用いられる。
【００５４】
（学習モデル生成処理を実現する機能構成の説明）
再び図４に戻って、立体物認識装置１０の機能構成の説明を続ける。図４（ｂ）に示すように、立体物認識装置１０が行う学習モデル生成処理は、学習モデル生成部４４で実現される。すなわち、学習モデル生成部４４は、路面推定部４２によって、立体物として識別された領域について、当該立体物の学習モデル５２を作成する。なお、学習モデル生成部４４は、モデル作成手段の一例である。
【００５５】
次に、学習モデル生成部４４の機能構成について、図７を用いて説明する。図７は、学習モデル生成部４４の詳細構成を示す機能ブロック図である。
【００５６】
図７に示すように、学習モデル生成部４４は、撮影画像取得部９０と、生成手段の一例である生成部９１と、学習部９２と、非定常領域検出手段の一例である算出部９３と、判別手段の一例である判別部９４とを備える。
【００５７】
学習モデル生成処理は、立体物認識装置１０が検出する立体物（オブジェクト）、具体的には路面６０上に存在する、路面６０から高さを有して、時刻とともにその位置が変化する先行車両、歩行者、障害物等のいわゆる非定常領域を、予め学習させる処理である。なお、学習モデル生成処理は、後述する物体検出処理とは独立して実行してもよいし（オフライン処理）、物体検出処理を実行しながら学習モデル生成処理を実行してもよい（オンライン処理）。すなわち、オブジェクトの学習を事前に行ってもよいし、オブジェクトの検出を行いながらオブジェクトの学習を行ってもよい。なお、オンライン処理によって学習モデル５２を生成する場合には、立体物認識装置１０は、学習モデル生成部４４をモデル生成装置４４ａとして、学習モデル生成処理を、物体検出処理と同時に動作させる。
【００５８】
撮影画像取得部９０は、撮像ユニット２から撮影画像Ｐ１（ｘ，ｙ）（図５（ａ）参照）を取得する。生成部９１は、１枚の撮影画像Ｐ１（ｘ，ｙ）に対して、複数の異なる空間フィルタＦｉ（ｉ＝１，２，…）を作用させて、図示しない複数のフィルタ画像Ｆｉ（ｘ，ｙ）を生成する。本実施の形態では、空間フィルタＦｉを作用させることによって、撮影画像Ｐ１（ｘ，ｙ）の中の、各空間フィルタＦｉに対応する方向を有するエッジ強度を表す複数のフィルタ画像Ｆｉ（ｘ，ｙ）を生成する。作用させる空間フィルタＦｉの数は、例えば１２とするが、これに限るものではない。１２個の空間フィルタＦｉ（ｉ＝１〜１２）を用いる場合は、例えば、３つのスケール×４つのエッジ方向（０度方向、４５度方向、９０度方向、１３５度方向）等とする。フィルタ係数としては、例えば、以下の式４〜式７で表される４つの係数の組を使用する。なお、式４〜式７に示す空間フィルタＦｉ（ｉ＝１〜４）の各係数は、代表的なエッジ検出フィルタであるＰｒｅｗｉｔｔフィルタを構成しているが、他の形式のフィルタであってもよい。
【００５９】
【数１】
2019139420.tif 000003
【数２】
2019139420.tif 000004
【数３】
2019139420.tif 000005
【数４】
2019139420.tif 000006
【００６０】
また、スケールとしては、等倍のものに加えて、例えば、撮影画像Ｐ１（ｘ，ｙ）を１／４倍、１／８倍に縮小したものを用いる。そして、各スケールの画像に対して前記した空間フィルタＦｉを作用させて、空間フィルタＦｉを作用させた結果を等倍に戻すことで、合計１２個のフィルタ画像Ｆｉ（ｘ，ｙ）が得られる。また、本実施の形態では、前記の空間フィルタＦｉを作用させない状態の撮影画像Ｐ１（ｘ，ｙ）（例外的に、フィルタ画像Ｆｉ（ｘ，ｙ）の一態様と考えてもよい）も加えて、合計１３個のフィルタ画像Ｆｉ（ｘ，ｙ）を用いて学習モデル５２の生成を行う。
【００６１】
学習部９２は、予め用意された、オブジェクトの複数の画像を元に、当該オブジェクトを学習する。より具体的には、学習部９２は、空間フィルタＦｉ毎に、対象形状を表現するパラメータを有する１以上の学習モデル５２を含むモデル群を学習する。すなわち、本実施の形態では、学習部９２は、１３個のフィルタ画像Ｆｉ（ｘ，ｙ）と１対１に対応する１３個のモデル群を学習することになる。そして、本実施の形態では、パラメータとして、複数の撮影画像Ｐ１（ｘ，ｙ）の各画素値の平均（画素平均値）μ（ｘ，ｙ）と分散（画素分散値）σ２（ｘ，ｙ）とを採用する。ただし、パラメータの種類は、これに限られるものではない。
【００６２】
以下、学習部９２が行うオブジェクトの学習方法について説明する。ここでは、任意の一の空間フィルタＦｉに対して、複数（Ｋ個）のモデルを含むモデル群である学習モデル５２を学習する場合を例に挙げて説明する。モデルとしては、撮影画像Ｐ１（ｘ，ｙ）の画素値が正規分布を持つと仮定して、そのようなモデルが複数（Ｋ個）存在することを前提とする。そして、撮影画像Ｐ１（ｘ，ｙ）は、複数の学習モデル５２のうちの何れかから生成された画像であるとする。ここで、学習モデル５２のいずれから生成された画像が観測されたものかは不明であり、隠れ変数となっている。オブジェクトの学習（学習モデル５２の推定）が完了すると、モデル毎の画素平均値μ（ｘ，ｙ）と画素分散値σ２（ｘ，ｙ）とが得られる。
【００６３】
隠れ変数とパラメータとは同時に決めることができないため、ここでは、隠れ変数を持つ場合のパラメータの推定に有効なＥＭアルゴリズムを用いて学習を行う。以下、ＥＭアルゴリズムのＥステップとＭステップについて説明する。
【００６４】
オブジェクトの学習は、まずＥステップからスタートする。学習部９２は、入力画像（前記した一の空間フィルタＦｉに対応するｎ枚の画像（オブジェクトを含むフィルタ画像Ｆｉ（ｘ，ｙ）））の各画素（ｘ，ｙ）について、Ｋ個のモデル毎のＺスコアＺｎｋ（ｘ，ｙ）を算出する。ここで、入力画像であるｎ番目のフィルタ画像Ｆｉ（ｘ，ｙ）を、入力画像Ｉｎ（ｘ，ｙ）とすると、入力画像Ｉｎ（ｘ，ｙ）の画素（ｘ，ｙ）のｋ番目のモデルであるモデルｋ（ｋ＝１，…，Ｋ）に対するＺスコアＺｎｋ（ｘ，ｙ）は、以下の式８で表される。
【数５】
2019139420.tif 000007
【００６５】
式８において、μｋ（ｘ，ｙ）およびσ２ｋ（ｘ，ｙ）は、モデルｋの画素（ｘ，ｙ）のパラメータである。より具体的には、μｋ（ｘ，ｙ）は、モデルｋの画素（ｘ，ｙ）の画素平均値、σ２ｋ（ｘ，ｙ）は、モデルｋの画素（ｘ，ｙ）の画素分散値である。なお、このＺスコアＺｎｋ（ｘ，ｙ）は、ある値が分布の中でどのあたりに位置するかを、平均値０、標準偏差１の標準正規分布に置き換えて表した値である。なお、本実施の形態では、特徴量としてＺスコアＺｎｋ（ｘ，ｙ）を用いるが、確率モデル的に画素値を用いて計算することができれば、特徴量はＺスコアＺｎｋ（ｘ，ｙ）に限定されない。
【００６６】
次に、学習部９２は、ｎ番目の入力画像Ｉｎ（ｘ，ｙ）がモデルｋに当てはまる確率ｅｎｋを求める。確率ｅｎｋは、以下の式９で表すことができる。式９において、記号Πは、総乗を示す記号である。本実施の形態では、学習部９２は、ＺスコアＺｎｋ（ｘ，ｙ）を平均０、分散１の標準正規分布の式に代入して、確率密度を画素（ｘ，ｙ）毎に求め、画素（ｘ，ｙ）毎または領域毎の確率密度の積を計算して同時確率を求める。なお、式９におけるＸ、Ｙは、それぞれ入力画像Ｉｎ（ｘ，ｙ）の横方向および縦方向の画素数である。ここでは、画素（ｘ，ｙ）毎ではなく入力画像Ｉｎ（ｘ，ｙ）全体に亘る画素値の分布から確率ｅｎｋを求めている。このようにすることで、入力画像Ｉｎ（ｘ，ｙ）全体を見ながら、どの学習モデル５２に該当するかを示す確率ｅｎｋを適切に求めることができる。
【数６】
2019139420.tif 000008
【００６７】
次に、学習部９２は、確率ｅｎｋを使用して、入力画像Ｉｎ（ｘ，ｙ）が、それぞれどの学習モデル５２から生成されたものかの期待値に相当する負担率γｎｋを求める。負担率γｎｋは、以下の式１０により求めることができる。式１０におけるＮは、入力画像Ｉｎ（ｘ，ｙ）の総数、Ｋはモデル数を表す。以上がＥステップの内容である。
【数７】
2019139420.tif 000009
【００６８】
Ｅステップ完了後、学習部９２は、Ｍステップで各モデルｋのパラメータを推定する。より具体的には、学習部９２は、負担率γｎｋで重みを付けたモデルｋの各画素（ｘ，ｙ）の画素平均値μｋ（ｘ，ｙ）を求める。本実施の形態の例では、画素平均値μｋ（ｘ，ｙ）は、以下の式１１により求めることができる。
【数８】
2019139420.tif 000010
【００６９】
また、学習部９２は、負担率γｎｋで重みを付けたモデルｋの各画素（ｘ，ｙ）の画素分散値σ２ｋ（ｘ，ｙ）を求める。本実施の形態の例では、画素分散値σ２ｋ（ｘ，ｙ）は、以下の式１２により求めることができる。
【数９】
2019139420.tif 000011
【００７０】
なお、式１１、式１２におけるＮｋは、以下の式１３により求める。
【数１０】
2019139420.tif 000012
【００７１】
Ｍステップが完了した後、学習部９２は、前回からのパラメータの変動がしきい値以下になるまで（収束条件を満たすまで）、Ｅステップに戻って処理を繰り返す。Ｅステップの処理とＭステップの処理とを繰り返すことにより、隠れ変数がある状態でモデルのパラメータを推定することができる。なお、初期値は一例として、μｋ（ｘ，ｙ）は乱数、σ２ｋ（ｘ，ｙ）は１であってもよいし、立体物認識装置１０の操作者が入力画像Ｉｎ（ｘ，ｙ）を見ながら、種類を分類できるように、入力画像Ｉｎ（ｘ，ｙ）をどちらのモデルに判別すべきかが明確な場合には、モデルの初期値として、その入力画像Ｉｎ（ｘ，ｙ）の画素値をμｋ（ｘ，ｙ）としてもよい。このようにして、学習部９２は、モデルｋ（ｋ＝１，…，Ｋ）のパラメータ（μｋ（ｘ，ｙ）、σ２ｋ（ｘ，ｙ））を学習する。
【００７２】
なお、前記したＥステップとＭステップとを備えたアルゴリズム（ＥＭアルゴリズム）は、統計学において、確率モデルのパラメータを最尤推定する手法の一つであり、確率モデルが観測不可能な潜在変数に依存する場合に用いられる手法である。ＥＭアルゴリズムは、反復法の一種であり、期待値（expectation、Ｅ）ステップと最大化（maximization、Ｍ）ステップとを交互に繰り返すことで計算が進行する。Ｍステップでは、Ｅステップで求められた尤度の期待値を最大化するようなパラメータを求める。Ｍステップで決まったパラメータは、次のＥステップで使われる潜在変数の分布を決定するために用いられる。
【００７３】
図８は、学習部９２が行う処理の流れの一例を示すフローチャートである。各ステップの具体的な内容は前記した通りであるので、適宜説明を省略する。なお、図８に示す各ステップの処理は、作用させる空間フィルタＦｉの個数分だけ実施されるが、ここでは、説明の便宜上、１つの空間フィルタＦｉに対応する処理を説明する。図８に示すように、学習部９２は、対象となる空間フィルタＦｉに対応する入力画像Ｉｎ（ｘ，ｙ）に含まれる複数の画素（ｘ，ｙ）の各々について、Ｋ個のモデル毎のＺスコアＺｎｋ（ｘ，ｙ）を算出する（ステップＳ１１）。次に、学習モデル生成部４４は、確率ｅｎｋを求める（ステップＳ１２）。次に、学習部９２は、負担率γｎｋを求める（ステップＳ１３）。次に、学習部９２は、各モデルｋのパラメータ（μｋ（ｘ，ｙ）、σ２ｋ（ｘ，ｙ））を算出する（ステップＳ１４）。なお、ステップＳ１１からステップＳ１３の処理はＥステップに該当し、ステップＳ１４の処理はＭステップに該当する。
【００７４】
次に、学習モデル生成部４４は、前回からのパラメータ（μｋ（ｘ，ｙ）、σ２ｋ（ｘ，ｙ））の変動がしきい値以下であるか否かを判断する（ステップＳ１５）。ステップＳ１５の結果が否定の場合（ステップＳ１５：Ｎｏ）、前記のステップＳ１１以降の処理を繰り返す。ステップＳ１５の結果が肯定の場合（ステップＳ１５：Ｙｅｓ）、ステップＳ１４で算出したパラメータ（μｋ（ｘ，ｙ）、σ２ｋ（ｘ，ｙ））を最終的なパラメータとして決定する（ステップＳ１６）。以上のようにして決定されたパラメータ（μｋ（ｘ，ｙ）、σ２ｋ（ｘ，ｙ））は、学習モデル５２（図４（ｂ）参照）として、例えばＲＡＭ１５、または図２に不図示のＨＤＤ等の記憶装置に記憶される。
【００７５】
図９は、学習部９２が行う処理の前提となるモデル推定問題についての説明図である。なお、図９のサンプル画像は、「画像応用技術専門委員会  外観検査アルゴリズムコンテスト２０１４」（外観検査アルゴリズムコンテスト２０１４、主催：精密工学会  画像応用技術専門委員会）の課題画像から引用したものを加工して使用している。図９は、モデルｋが２種類（何れかの空間フィルタＦｉに対応するモデル群に含まれるモデルが２種類）、すなわちモデル数Ｋが２の場合の例である。図９では、各画素（ｘ，ｙ）（の画素値）が正規分布を持つと仮定したモデルが２つあり、観測できる画像は何れかのモデルｋから生成された画像であるとする。ここで、観測画像がどのモデルｋから生成されたのかは不明であり、隠れ変数となっている。学習が完了、つまりモデルｋの推定が完了すると、図９の左に示すモデル毎の画素平均画像と画素分散画像とが得られる。
【００７６】
前記したように、本実施の形態の学習処理では、負担率γｎｋを最適化させる画素平均値μｋ（ｘ，ｙ）および画素分散値σ２ｋ（ｘ，ｙ）が決定されて記憶される。図９（ａ）は、図８のステップＳ１６で決定された画素平均値μｋ（ｘ，ｙ）および画素分散値σ２ｋ（ｘ，ｙ）を画素（ｘ，ｙ）毎にマッピングして可視化したものである。本実施の形態では、図９（ａ）に示す情報を使用して、確率ｅｎｋおよび負担率γｎｋに基づいて、隠れ変数であるモデルを観測画像から推定する。
【００７７】
再び、学習モデル生成部４４の機能の説明を続ける。算出部９３は、生成された複数のフィルタ画像Ｆｉ（ｘ，ｙ）と、学習されたモデル群とに基づいて、全てのモデルを考慮したＺスコアである統合スコアを算出する。
【００７８】
まず、算出部９３は、複数のフィルタ画像Ｆｉ（ｘ，ｙ）と１対１に対応する複数のモデル群を用いて、複数のフィルタ画像Ｆｉ（ｘ，ｙ）の画素（ｘ，ｙ）毎に、対応するモデル群との差分に応じた値を示す（本実施の形態の例ではモデル群との差が大きいほど高い値を示す）スコアを算出する。算出部９３は、複数のフィルタ画像Ｆｉ（ｘ，ｙ）の画素（ｘ，ｙ）毎に、該画素（ｘ，ｙ）の画素値と、対応するモデル群のパラメータとに基づいて、ＺスコアＺｎｋ（ｘ，ｙ）を算出する。
【００７９】
以下、任意の一のフィルタ画像Ｆｉ（ｘ，ｙ）に対応するモデル群を用いて、該フィルタ画像Ｆｉ（ｘ，ｙ）に含まれる各画素（ｘ，ｙ）のＺスコアＺｎｋ（ｘ，ｙ）を算出する方法を説明する。ここでは、任意の一のフィルタ画像Ｆｉ（ｘ，ｙ）に対応するモデル群にはＫ個のモデルが含まれている場合を例に挙げて説明するが、これに限らず、例えばモデル群には１個のモデルのみが含まれる形態であってもよい（モデル群に含まれるモデルの数は任意である）。
【００８０】
算出部９３は、上記一のフィルタ画像Ｆｉ（ｘ，ｙ）に含まれる各画素（ｘ，ｙ）について、式８を用いて、モデル毎のＺスコアＺｎｋ（ｘ，ｙ）を求める。また、算出部９３は、式９を用いて、確率ｅｎｋを求める。そして、算出部９３は、上記一のフィルタ画像Ｆｉ（ｘ，ｙ）に含まれる各画素（ｘ，ｙ）について、以下の式１４を用いて、モデルからのハズレ量、つまり乖離量Ｓｎ（ｘ，ｙ）を求める。モデル群が複数のモデルを含む多モデルでは、この乖離量Ｓｎ（ｘ，ｙ）が、学習したモデルの発生確率に基づくＺスコアＺｎｋ（ｘ，ｙ）となる。本実施の形態の例では、算出部９３は、上記一のフィルタ画像Ｆｉ（ｘ，ｙ）の各画素（ｘ，ｙ）の乖離量Ｓｎ（ｘ，ｙ）を最終的なＺスコアＺｎｋ（ｘ，ｙ）として算出する。つまり、本実施の形態では、何れかのフィルタ画像Ｆｉ（ｘ，ｙ）に対応するモデル群が複数のモデルを含む場合、算出部９３は、該フィルタ画像Ｆｉ（ｘ，ｙ）に含まれる複数の画素（ｘ，ｙ）の各々について、該画素（ｘ，ｙ）の各モデルとの差分に応じた値を示す単位スコア（本実施の形態の例ではＫ個のモデル毎のＺスコアＺｎｋ（ｘ，ｙ））と、該フィルタ画像が各モデルに当てはまる確率ｅｎｋと、に基づいて該画素（ｘ，ｙ）の最終的なＺスコアＺｎｋ（ｘ，ｙ）を決定している。
【数１１】
2019139420.tif 000013
【００８１】
算出部９３は、以上のようにして、複数のフィルタ画像Ｆｉ（ｘ，ｙ）の各々に含まれる画素（ｘ，ｙ）毎にＺスコアＺｎｋ（ｘ，ｙ）を算出する。なお、以下の説明では、ｍ番目のフィルタ画像Ｆｉ（ｘ，ｙ）の画素（ｘ，ｙ）のＺスコアをＺｍ（ｘ，ｙ）と表記する場合がある。
【００８２】
なお、ここでは、各画素（ｘ，ｙ）の発生確率に正規分布を仮定しているので、このＺスコアＺｎｋ（ｘ，ｙ）は、入力した画像の該当画素が学習したモデルを考えた時に、標準正規分布で何σ（σは標準偏差）の発生確率となるということを示している。なお、本実施の形態の例では多モデルを用いる場合について記載したが、もちろん単モデルを仮定して同じことを行ってもよく、その場合には、ｋ＝１として、学習時に式１１および式１２でモデルを求めて、検出時に式５によってＺスコアＺｎｋ（ｘ，ｙ）を算出すればよい。また、ここでは各画素（ｘ，ｙ）は正規分布を持つと仮定したが、より精度を上げるには、上記多モデルで行ったのと同じように、ＥＭアルゴリズムを用いて混合ガウス分布としてモデル化しても良い。なお、混合ガウス分布とは、複数のガウス分布の線形重ね合わせで表されるモデルである。
【００８３】
さらに算出部９３は、複数のフィルタ画像Ｆｉ（ｘ，ｙ）に亘って互いに対応する複数の画素（ｘ，ｙ）の各々のＺスコアＺｍ（ｘ，ｙ）を統合した結果を示す統合スコアＺｔｏｔａｌ（ｘ，ｙ）を算出する。つまり、複数のフィルタ画像Ｆｉ（ｘ，ｙ）を統合した１枚の画像の各画素（ｘ，ｙ）の統合スコアＺｔｏｔａｌ（ｘ，ｙ）を算出すると考えてよい。本実施の形態の例では１３個のフィルタ画像Ｆｉ（ｘ，ｙ）の画素数は同じであり、各画素（ｘ，ｙ）は互いに対応しているものとする。また、ここでは、ＺスコアＺｍ（ｘ，ｙ）は、標準正規分布における標準偏差であるので、算出部９３は、複数のフィルタ画像Ｆｉ（ｘ，ｙ）に亘って互いに対応する画素（ｘ，ｙ）毎に、該複数の画素（ｘ，ｙ）の各々のＺスコアＺｍ（ｘ，ｙ）に対応する発生確率Ｐｍ（ｘ，ｙ）の同時確率に基づいて統合スコアＺｔｏｔａｌ（ｘ，ｙ）を算出する。より具体的には、算出部９３は、以下の式１５によりＺスコアＺｍ（ｘ，ｙ）に対応する発生確率Ｐｍ（ｘ，ｙ）を算出し、以下の式１６により統合スコアＺｔｏｔａｌ（ｘ，ｙ）を算出する。
【数１２】
2019139420.tif 000014
【数１３】
2019139420.tif 000015
【００８４】
なお、ここでは統合スコアＺｔｏｔａｌ（ｘ，ｙ）を統合するために同時確率を使用したが、それ以外にも以下の式のように、ＺスコアＺｍ（ｘ，ｙ）の平均値、または合計値などを用いても良い。
【数１４】
2019139420.tif 000016
【数１５】
2019139420.tif 000017
【００８５】
なお、当然のことながら、学習時には、正常な画像（モデルとなる立体物の、途切れや階調異常のない画像）を用いることが望ましいが、正常な画像に対して、若干の異常が混入している場合であっても、本手法は異常が混入した画像の発生確率が若干低下するだけで適用が可能である。
【００８６】
前記した統合スコアＺｔｏｔａｌ（ｘ，ｙ）は、全てのモデル群を考慮した値である。この値は、全ての空間フィルタＦｉ、つまり多様なスケールや多様なエッジ方向などの要素を全て統一的に、標準正規分布における標準偏差という根拠ある発生確率として示したものであり、いわゆる生産工程などで良く用いられる何σまで許容するかという値と一致する。そのため、この統合スコアＺｔｏｔａｌ（ｘ，ｙ）でしきい値を決めることで、空間フィルタＦｉ毎に個別のしきい値を設定する必要がなくなる。
【００８７】
以上のように、学習モデル生成部４４は、１枚の撮影画像Ｐ１（ｘ，ｙ）に複数の異なる空間フィルタＦｉを作用させて、複数のフィルタ画像Ｆｉ（ｘ，ｙ）を生成する。そして、学習部９２は、生成した複数のフィルタ画像Ｆｉ（ｘ，ｙ）の各々に含まれる画素（ｘ，ｙ）毎に、対応するモデル群との差分に応じたＺスコアＺｍ（ｘ，ｙ）を算出する。そして、複数のフィルタ画像Ｆｉ（ｘ，ｙ）に亘って互いに対応する複数の画素（ｘ，ｙ）の各々のＺスコアＺｍ（ｘ，ｙ）を統合した統合スコアＺｔｏｔａｌ（ｘ，ｙ）を算出する。算出された統合スコアＺｔｏｔａｌ（ｘ，ｙ）は、学習モデル５２として、例えばＲＡＭ１５、または図２に不図示のＨＤＤ等の記憶装置等に記憶される。図１０は、学習モデル生成部４４が統合スコアＺｔｏｔａｌ（ｘ，ｙ）を算出するアルゴリズムの全体構成を示す模式図であり、前記した処理の流れを模式的に示した図である。
【００８８】
なお、学習モデル生成部４４は、フィルタ群を一括して演算するＷａｖｅｌｅｔ変換を使用しても良い。その場合、学習モデル生成部４４は、図１１に示す処理を実行する。図１１は、学習モデル生成部４４が行う処理の変形例の流れを示す模式図である。
【００８９】
すなわち、学習モデル生成部４４は、図１１に示すように、まず入力画像Ｉｎ（ｘ，ｙ）をＷａｖｅｌｅｔ変換することで、多階層の画像（前記した複数の空間フィルタＦｉと１対１に対応する複数の階層と考えてもよい）を含む１枚の画像に変換する（ステップＳ２０）。すなわち、入力画像Ｉｎ（ｘ，ｙ）は、Ｗａｖｅｌｅｔ変換により、マルチスケールと縦横のエッジを抽出した１枚の画像となる。次に、その画像を、予め学習により得られた学習モデル５２と比較し（ステップＳ２１）、前記した実施の形態と同様に、各画素（ｘ，ｙ）のＺスコアＺｍ（ｘ，ｙ）を算出する（ステップＳ２２）。なお、この場合の１つのモデルは、フィルタ画像Ｆｉ（ｘ，ｙ）毎のモデル（階層毎のモデル）を統合した１つのモデルであると考えることができる。見方を変えれば、この場合の１つのモデルは、複数のフィルタ画像Ｆｉ（ｘ，ｙ）と１対１に対応する複数のモデルを含むと考えることもできる。
【００９０】
その後、学習モデル５２に当てはまるかを判別するしきい値処理を行う（ステップＳ２３）。すなわち、ＺスコアＺｍ（ｘ，ｙ）が何σ以下であれば、学習モデル５２に当てはまるかの判別基準となるしきい値を設定してしきい値処理を行う。そして、逆Ｗａｖｅｌｅｔ変換により元の１枚の画像に戻す（ステップＳ２４）ことで、画素（ｘ，ｙ）毎のＺスコアＺｍ（ｘ，ｙ）を統合した統合スコアＺｔｏｔａｌ（ｘ，ｙ）が得られる。結果として、前記した実施の形態と同様に、入力画像Ｉｎ（ｘ，ｙ）に含まれる各画素（ｘ，ｙ）の統合スコアＺｔｏｔａｌ（ｘ，ｙ）を得ることができる。この形態によれば、Ｗａｖｅｌｅｔ変換を用いることで、フィルタ群を一括して演算するため、計算時間を減らすことができるというメリットがある。
【００９１】
なお、学習モデル生成部４４は、１枚の撮影画像Ｐ１（ｘ，ｙ）の中に存在する複数種類のオブジェクトをそれぞれ学習するようにしてもよい。例えば、撮影画像Ｐ１（ｘ，ｙ）の中に、先行車両と歩行者とが同時に写っている場合である。また、学習モデル生成部４４は、１枚の撮影画像Ｐ１（ｘ，ｙ）の中に存在する複数の状態を有する立体物をそれぞれ学習するようにしてもよい。例えば、撮影画像Ｐ１（ｘ，ｙ）の中に、異なるポーズの複数の歩行者が写っている場合等である。
【００９２】
（物体検出処理を実現する機能構成の説明）
再び図４に戻って、立体物認識装置１０の機能構成の説明を続ける。立体物認識装置１０が行う物体検出処理は、背景データ処理（図４（ａ）参照）で説明した各機能部に加えて、図４（ｃ）に示す非定常領域検出部４５と、孤立領域検出部４６と、対応領域検出部４７と、実空間情報算出部４８と、棄却処理部４９と、トラッキング処理部５０とで実現される。
【００９３】
非定常領域検出部４５は、撮像ユニット２で撮像したステレオ画像の中から、時間とともにその位置が変化する非定常領域であって、尚且つ路面から高さを有する先行車両、歩行者、障害物等の立体物を検出する。
【００９４】
孤立領域検出部４６は、非定常領域を形成する画素群を一つのグループとして出力する孤立領域検出処理を行う。例えば、立体物認識装置１０は、２人の隣接した歩行者が画像内に進入してきた場合等に、２人の歩行者を一つの非定常領域として出力する可能性がある。孤立領域検出部４６は、そのような検出結果に対して俯瞰画像Ｊ２（ｘ，Ｄ）上における画素の隣接状態をチェックすることにより、孤立領域毎にグルーピングし直して、立体物の分離性能を向上させる。
【００９５】
孤立領域検出処理は、非定常領域検出部４５で得られる俯瞰画像Ｊ２（ｘ，Ｄ）の中の検出矩形内を非定常領域としてその内部の視差に対して、隣接画素の連結から孤立領域毎にグルーピングする処理である。隣接画素を検出する手法としては、画像処理においてよく用いられているラベリング手法を用いる。本処理では８近傍の隣接関係を持つ画素に対して孤立領域を検出している。これは４近傍の隣接関係を持つ画素に対して実施しても良い。立体物が密接しているようなシーンでは、４近傍画素のラベリングを用いて分離性能を上げる等の処理を行ってもよい。
【００９６】
図１２は、孤立領域検出部４６が行うラベリング処理について説明する図であり、図１２（ａ）は、仮の番号を付与した状態の一例を示す図である。図１２（ｂ）は、付与された仮の番号を付け替える処理の一例を示す図である。図１２（ｃ）は、ラベリング処理を完了した状態の一例を示す図である。ラベリング処理は、２値画像、すなわち、立体物を示す画素に、例えば「１」が格納されて、立体物を示さない画素に、例えば「０」が格納された画像に対して適用される。
【００９７】
ラベリング処理のアルゴリズムは種々提案されているが、一般には、２段階に亘る処理が行われる。まず、図１２（ａ）に示すように、対象となる画像上をラスタースキャンすることによって、立体物を示す画素、すなわち「１」が格納された画素に、仮の番号を付与する。図１２（ａ）の例では、該当する画素に、１から４までの仮の番号が付与される。ここで、着目画素Ｑは、現在着目している画素を表す。図１２（ａ）の例では、画素Ｑが立体物を示す画素である場合、着目画素Ｑには「５」が格納される。
【００９８】
そして、対象となる画像全体に亘って、図１２（ａ）に示す処理を行った後で、付与された仮の番号を付け替える処理を行う。このとき、立体物を示す着目画素Ｑに隣接する画素が存在する場合、隣接する画素に付与された最も小さい仮の番号を、画素Ｑに付与する。なお、本実施の形態では、着目画素Ｑに隣接する画素は、着目画素Ｑの上下左右、斜め上下の合計８画素とする（８隣接）。また、着目画素Ｑの上下左右の計４画素を隣接画素としてもよい（４隣接）。
【００９９】
すなわち、図１２（ｂ）の例では、着目画素Ｑに隣接する８画素には、「８、９」が付与されているため、着目画素Ｑには、図１２（ａ）の処理で付与された仮の番号である「５」が、図１２（ｃ）に示すように、「８」に付け替えられる。以上の処理を画像全体に対して行うことによって、画像内にある立体物毎に、立体物の数を示す番号が付与される。
【０１００】
再び、図４に戻って説明を続ける。対応領域検出部４７は、俯瞰画像Ｊ２（ｘ，Ｄ）上で検出した立体物の位置と幅、最小視差に基づいて、視差画像Ｄ（ｘ，ｙ）の中から、検出するべき立体物の候補領域、すなわち、撮影画像Ｐ１（ｘ，ｙ）における立体物の水平範囲（ｘmin，ｘmax）（不図示）を決定する。
【０１０１】
また、対応領域検出部４７は、視差画像Ｄ（ｘ，ｙ）において、立体物の高さと位置を決定する。すなわち、視差画像Ｄ（ｘ，ｙ）において、立体物の最小視差値Ｄmin（不図示）を与える、撮影画像Ｐ１（ｘ，ｙ）における路面６０からの高さに相当する縦方向位置ｙmin（不図示）と、視差画像Ｄ（ｘ，ｙ）において、立体物の最大視差値Ｄmax（不図示）を与える、撮影画像Ｐ１（ｘ，ｙ）における路面６０からの高さに相当する縦方向位置ｙmax（不図示）と、を決定する。
【０１０２】
そして、対応領域検出部４７は、立体物の正確な位置を検出するために、設定した立体物の候補領域の内部を走査して、検出した矩形領域の奥行きが、最小視差値Ｄmin（不図示）と最大視差値Ｄmax（不図示）の範囲である視差値Ｄを有する画素を、立体物の候補画素として抽出する。
【０１０３】
実空間情報算出部４８は、対応領域検出部４７の検出結果から、撮像ユニット２に対する相対的な横位置と距離、実空間上での幅、奥行き（サイズ情報）をそれぞれ決定する。
【０１０４】
棄却処理部４９は、実空間情報算出部４８が算出したオブジェクトのサイズ情報に基づいて、オブジェクトを判別する「サイズ棄却処理」を行う。検出対象が明確に決まっている場合は、ステレオカメラで得られる視差画像Ｄ（ｘ，ｙ）を用いた立体物の３次元的な形状に基づいた棄却処理である「形状棄却処理」や、輝度画像の特徴を用いた「輝度特徴処理」を用いても良い。
【０１０５】
棄却処理部４９は、画像上のサイズ、立体物の実空間上のサイズに基づいて、出力すべき立体物を選別する棄却処理を行う。撮影画像Ｐ１（ｘ，ｙ）上のサイズを用いた棄却処理では、立体物までの距離により考え方が異なるため、下限しきい値のみを設ける。例えば、ｉ番目の立体物の画像幅をＯＰＷi（不図示）、画像高さをＯＰＨi（不図示）とし、幅下限しきい値をＴＨＷ（不図示）、高さ下限しきい値をＴＨＨ（不図示）とすると、棄却処理部４９は、ＯＰＷi＜ＴＨＷ、またはＯＰＨi＜ＴＨＨとなる立体物を、検出対象となる立体物ではないと判断して棄却する。実空間上のサイズを用いた棄却処理では、検出対象を分類する場合は、検出したい立体物以外のサイズを持つ立体物を棄却する。
【０１０６】
例えば、形状棄却処理は、検出対象が人の場合はステレオカメラで得られる人が持つ山の形状特徴に基づいて棄却判断を行う処理としても良い。また検出対象が色で判別できる場合は、検出結果の中の色差に基づいて、棄却判断を行っても良い。
【０１０７】
棄却処理部４９は、対応領域検出部４７の検出結果に基づき、出力すべき立体物を選別する棄却処理を行う。棄却処理部４９は、立体物のサイズに着目したサイズ棄却と、立体物同士の位置関係に着目したオーバラップ棄却とを実行する。例えば、図１３は、棄却処理で用いる設定値の一例を示す図である。
【０１０８】
図１３に示すオブジェクト情報は、ＲＡＭ１５等の記憶装置に記憶されている。図１３に示すように、例えば、「幅１１００ｍｍ未満、高さ２５００ｍｍ未満、奥行き１０００ｍｍを超える」サイズのオブジェクトの種類は、自転車として規定されている。同様に、「幅１１００ｍｍ未満、高さ２５００ｍｍ未満、奥行き１０００ｍｍ以下」のサイズのオブジェクトの種類は、歩行者として規定されている。同様に、「幅１１００ｍｍ以下、高さ２５００ｍｍ未満、奥行き５０００ｍｍ未満」のサイズのオブジェクトの種類は、車両として規定されている。
【０１０９】
棄却処理部４９は、撮影画像Ｐ１（ｘ，ｙ）上の立体物のサイズと、図１３に示すオブジェクト情報とを比較することによって、立体物の種類を特定する。そして、棄却処理部４９は、図１３に示すサイズ範囲に当てはまらないサイズの検出結果を棄却する。
【０１１０】
トラッキング処理部５０は、時系列で得られる俯瞰画像群５１に対して、前回の物体検出結果を利用して、新たな俯瞰画像Ｊ２（ｘ，Ｄ）に対する物体検出処理を行う。具体的には、過去の撮像フレームの画像検出処理で検出されたオブジェクト（立体物）を追跡する処理を実行する。
【０１１１】
具体的には、過去の画像検出処理で検出されたオブジェクトの情報を示すオブジェクトデータリスト５３が、例えばＲＡＭ１５、または図２に不図示のＨＤＤ等の記憶装置に保存される。オブジェクトデータリスト５３は、例えば、検出したオブジェクトデータの最新情報（最新の位置、大きさ、距離、相対速度、視差情報）に加え、オブジェクト予測データ（次の撮像フレームにおいて当該オブジェクトがどの位置にいるかを推測する情報）、非定常領域検出部４５やトラッキング処理部５０で利用するオブジェクト特徴量、当該オブジェクトが検出されたフレーム数、または連続して検出されなかったかを示す検出／未検出フレーム数、当該オブジェクトが追跡すべき対象かどうかを示す要追跡確度（安定フラグ）等を含む。
【０１１２】
（物体検出処理の具体例の説明）
次に、図１４を用いて、物体検出処理の具体例について説明する。図１４は、物体検出処理の具体例を示す図であり、図１４（ａ）は、撮像ユニット２で撮像された撮影画像Ｐ３（ｘ，ｙ）の一例を示す図である。図１４（ｂ）は、図１４（ａ）の撮影画像Ｐ３（ｘ，ｙ）に対応する俯瞰画像Ｊ３（ｘ，Ｄ）の一例を示す図である。図１４（ｃ）は、非定常領域の検出結果の一例を示す図である。図１４（ｄ）は、孤立領域の検出結果の一例を示す図である。
【０１１３】
図１４（ａ）に示す撮影画像Ｐ３（ｘ，ｙ）の中には、路面６０の左右に設けられた壁状のガードレール７０ａ、７０ｂと、２人の歩行者８０ｄ、８０ｅが写っている。俯瞰画像群生成部４３（図４参照）は、撮影画像Ｐ３（ｘ，ｙ）から生成したＶマップＶ（Ｄ，ｙ）（図１４に不図示）を俯瞰画像Ｊ３（ｘ，Ｄ）にマッピングする。
【０１１４】
次に、非定常領域検出部４５（図４参照）は、俯瞰画像Ｊ３（ｘ，Ｄ）の中から、非定常領域を検出する。図１４（ｃ）の例では、左のガードレール７０ａに対応する領域と、右のガードレール７０ｂに対応する領域と、歩行者８０ｆに対応する領域とが検出される。
【０１１５】
孤立領域検出部４６は、非定常領域の検出結果（図１４（ｃ））に対して、孤立領域検出処理を行う。その結果、図１４（ｄ）に示すように、歩行者８０ｄと歩行者８０ｅとを分離して検出することができる。
【０１１６】
なお、本実施の形態の例では、立体物認識装置１０は、ＣＰＵ１７が、各種処理をソフトウェアで実現することとしたが、一部または全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよい。また、オブジェクト検出プログラムは、インストール可能な形式、または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ、ブルーレイディスク（登録商標）、半導体メモリ等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。ＤＶＤは、「Digital  Versatile  Disk」の略記である。また、オブジェクト検出プログラムは、インターネット等のネットワーク経由でインストールする形態で提供してもよい。また、オブジェクト検出プログラムは、機器内のＲＯＭ等に予め組み込んで提供してもよい。
【０１１７】
以上説明したように、本実施の形態に係る立体物認識装置１０によれば、ステレオ画像取得部４０（取得手段）が、画素毎に距離情報を有する視差画像Ｄ（ｘ，ｙ）（距離画像）を時系列で取得して、路面推定部４２（識別手段）が、ステレオ画像取得部４０が取得した時系列の視差画像Ｄ（ｘ，ｙ）の中から立体物（オブジェクト）を識別して、俯瞰画像群生成部４３（マッピング手段）が、ステレオ画像取得部４０が取得した視差画像Ｄ（ｘ，ｙ）の中から、路面推定部４２によって立体物として識別された領域を、ステレオ画像取得部４０の設置位置とは異なる位置から見た時系列の俯瞰マップＪ２（ｘ，Ｄ）にマッピングする。そして、学習モデル生成部４４（モデル作成手段）が、ステレオ画像取得部４０によって立体物として識別された領域について、当該立体物の学習モデル５２（モデル）を予め作成するとともに、判別部９４（判別手段）が、俯瞰画像群生成部４３によってマッピングされた俯瞰マップＪ２（ｘ，Ｄ）と、学習モデル生成部４４が予め作成した学習モデル５２と、に基づいて、時系列の視差画像Ｄ（ｘ，ｙ）が含む立体物を判別する。したがって、複雑な環境においても高精度・高速に動体を検出することができる。特に、予め生成した立体物の学習モデル５２を用いて物体検出処理を行う（オフライン処理）ことができる。なお、ステレオ画像取得部４０は、前記した一連の処理を完了するまでの間、すなわち、距離画像の取得から立体物を検出するまでの間、同じ位置に留まっている必要がある。
【０１１８】
また、本実施の形態に係る立体物認識装置１０によれば、視差画像Ｄ（ｘ，ｙ）は、撮像ユニット２（ステレオカメラ）で撮像された画像情報に基づくものであるとともに、路面推定部４２（識別手段）は、ステレオ画像取得部４０（取得手段）が取得した時系列の視差画像Ｄ（ｘ，ｙ）の中から、路面６０を検出する路面推定部４２（路面検出手段）を更に備えて、俯瞰画像群生成部４３（マッピング手段）は、路面推定部４２が検出した路面６０よりも高い位置に存在する立体物までの距離に対応する視差値Ｄを、俯瞰マップＪ２（ｘ，Ｄ）にマッピングする。したがって、路面６０を検出した後、路面６０から高さを有する領域のみに処理範囲を限定することによって、路面６０の写り込みや路面６０に引かれた白線等の影響を受けることなく、立体物を確実に検出することができる。
【０１１９】
また、本実施の形態に係る立体物認識装置１０によれば、俯瞰マップＪ２（ｘ，Ｄ）は、横軸を実距離ｘ、縦軸を視差値Ｄとして、画素値に、当該画素の位置における視差値Ｄの発生頻度をマッピングした２次元ヒストグラムである。視差値Ｄは実距離に対応する量であるため、したがって、縦軸、横軸ともに実距離に相当するため、遠方の立体物も確実に検出することができる。
【０１２０】
また、本実施の形態に係る立体物認識装置１０によれば、判別部９４（判別手段）は、生成部９１（生成手段）が、一つの入力画像Ｉｎ（ｘ，ｙ）に対して、複数の異なる空間フィルタＦｉを作用させることによって生成した複数のフィルタ画像Ｆｉ（ｘ，ｙ）に対して、算出部９３（非定常領域検出手段）が、フィルタ画像Ｆｉ（ｘ，ｙ）の各々に対して、予め立体物の形状を表現するパラメータを有する１以上の学習モデル５２を含むモデル群を用いて、複数の空間フィルタＦｉに対応するモデル毎の、入力画像Ｉｎ（ｘ，ｙ）の各部分の発生確率Ｐｍ（ｘ，ｙ）を、対応する部分を一の画像に統合した結果に基づいて、非定常領域を検出する。したがって、検出対象の種類によらずに、統一的な方法で、学習モデル５２に合致する立体物を検出することができる。
【０１２１】
また、本実施の形態に係る立体物認識装置１０によれば、算出部９３（非定常領域検出手段）は、入力画像Ｉｎ（ｘ，ｙ）の各部分の発生確率Ｐｍ（ｘ，ｙ）の同時確率に基づく統合スコアＺｔｏｔａｌ（ｘ，ｙ）に基づいて、非定常領域を検出する。したがって、非定常領域を検出する際に、空間フィルタＦｉ毎に個別のしきい値を設定する必要がなくなる。
【０１２２】
また、本実施の形態に係る立体物認識装置１０によれば、算出部９３（非定常領域検出手段）は、入力画像Ｉｎ（ｘ，ｙ）の各部分の発生確率Ｐｍ（ｘ，ｙ）を、ある値が分布の中でどのあたりに位置するかを、平均値０、標準偏差１の標準正規分布に置き換えて表したＺスコアＺｍ（ｘ，ｙ）の平均値に基づいて、非定常領域を検出する。したがって、様々な入力画像Ｉｎ（ｘ，ｙ）に対して、統一的に一定の基準で、学習モデル５２に合致する立体物を検出することができる。
【０１２３】
また、本実施の形態に係る立体物認識装置１０によれば、生成部９１（生成手段）は、多重解像度を有するとともに、エッジ方向を算出する複数の空間フィルタＦｉを備える。したがって、路面６０上に存在して、路面６０との間に輝度差を有する立体物を、確実に検出することができる。
【０１２４】
また、本実施の形態に係る立体物認識装置１０によれば、算出部９３（非定常領域検出手段）は、複数の立体物を表現する複数の学習モデル５２毎に、学習モデル５２の中の複数の領域の特徴量である画素平均値μｋ（ｘ，ｙ）および画素分散値σ２ｋ（ｘ，ｙ）を算出するとともに、入力画像Ｉｎ（ｘ，ｙ）が、複数の学習モデル５２のいずれに当てはまるかを表す確率ｅｎｋを計算して、算出した確率ｅｎｋに基づいて特徴量を最適化した複数の学習モデル５２を用いて、入力された入力画像Ｉｎ（ｘ，ｙ）を複数の学習モデル５２と比較する。したがって、検出対象となる立体物の形状や姿勢に関する制約条件を緩和することができる。
【０１２５】
また、本実施の形態に係る立体物認識装置１０によれば、算出部９３（非定常領域検出手段）は、入力画像Ｉｎ（ｘ，ｙ）の各部分の発生確率Ｐｍ（ｘ，ｙ）を、正規分布に基づくモデルを用いて算出する。したがって、算出された発生確率Ｐｍ（ｘ，ｙ）に基づいて算出される統合スコアＺｔｏｔａｌ（ｘ，ｙ）は、いわゆる生産工程などで良く用いられる何σまで許容するかという値と一致する。そのため、モデルに合致する立体物であるかを判別する際に、この統合スコアＺｔｏｔａｌ（ｘ，ｙ）でしきい値を決めることによって、空間フィルタＦｉ毎に個別のしきい値を設定する必要がなくなる。
【０１２６】
また、本実施の形態に係る立体物認識装置１０によれば、ステレオ画像取得部４０（取得手段）が、画素毎に距離情報を有する視差画像Ｄ（ｘ，ｙ）（距離画像）を時系列で取得して、路面推定部４２（識別手段）が、ステレオ画像取得部４０が取得した時系列の視差画像Ｄ（ｘ，ｙ）の中から立体物を識別して、俯瞰画像群生成部４３（マッピング手段）が、ステレオ画像取得部４０が取得した時系列の視差画像Ｄ（ｘ，ｙ）の中から、路面推定部４２によって立体物として識別された領域を、ステレオ画像取得部４０の設置位置とは異なる位置から見た時系列の俯瞰マップＪ２（ｘ，Ｄ）にマッピングする。そして、学習モデル生成部４４（モデル作成手段）が、ステレオ画像取得部４０によって立体物として識別された領域について、当該立体物の学習モデル５２を作成するとともに、判別部９４（判別手段）が、ステレオ画像取得部４０が時系列で取得した視差画像Ｄ（ｘ，ｙ）に基づき学習モデル生成部４４が随時作成した立体物の学習モデル５２を用いて、視差画像Ｄ（ｘ，ｙ）が含む立体物を判別する。したがって、撮影画像Ｐ１（ｘ，ｙ）を撮像しながら、学習モデル生成処理と物体検出処理を同時に実行する（オンライン処理）ことができる。
【０１２７】
また、本実施の形態に係る撮像装置１０ａは、撮像ユニット２（撮像手段）が、ステレオ画像を撮像して、ステレオ画像取得部４０（取得手段）が、撮像ユニット２により撮像されてから、画素毎に距離情報を有する視差画像Ｄ（ｘ，ｙ）（距離画像）を時系列で取得して、路面推定部４２（識別手段）が、ステレオ画像取得部４０が取得した時系列の視差画像Ｄ（ｘ，ｙ）の中から立体物を識別して、俯瞰画像群生成部４３（マッピング手段）が、ステレオ画像取得部４０が取得した時系列の視差画像Ｄ（ｘ，ｙ）の中から、路面推定部４２によって立体物として識別された領域を、ステレオ画像取得部４０の設置位置とは異なる位置から見た時系列の俯瞰マップＪ２（ｘ，Ｄ）にマッピングする。そして、学習モデル生成部４４（モデル作成手段）が、ステレオ画像取得部４０によって立体物として識別された領域について、当該立体物の学習モデル５２を予め作成するとともに、判別部９４（判別手段）が、俯瞰画像群生成部４３によってマッピングされた俯瞰マップＪ２（ｘ，Ｄ）と、学習モデル生成部４４が予め作成した学習モデル５２と、に基づいて、時系列の視差画像Ｄ（ｘ，ｙ）が含む立体物を判別する。したがって、複雑な環境においても高精度・高速に立体物を検出することができる。
【０１２８】
また、本実施の形態に係る車両１は、立体物認識装置１０または撮像装置１０ａを備える。したがって、走行中に路面６０上の立体物を高精度・高速に検出することができる。特に、視差検出中は車両１を停止させておくことによって、立体物の視差検出精度を向上させることができる。なお、前記した一連の処理をリアルタイム（例えば、略ビデオレート）で実行することができれば、車両１が走行中であっても、立体物の検出を行うことができる。
【０１２９】
以上、本発明の実施の形態について説明したが、前記した実施の形態は、例として提示したものであり、本発明の範囲を限定することは意図していない。この新規な実施の形態は、その他の様々な形態で実施されることが可能である。また、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。また、この実施の形態は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１３０】
１      車両
２      撮像ユニット（撮像手段）
１０      立体物認識装置
１０ａ      撮像装置
４０      ステレオ画像取得部（取得手段）
４２      路面推定部（識別手段、路面検出手段）
４３      俯瞰画像群生成部（マッピング手段）
４４      学習モデル生成部（モデル作成手段）
４４ａ      モデル生成装置
４５      非定常領域検出部（非定常領域検出手段）
５１      俯瞰画像群
５２      学習モデル
５３      オブジェクトデータリスト
６０      路面
９１      生成部（生成手段）
９３      算出部（非定常領域検出手段）
９４      判別部（判別手段）
Ｄ      視差値
ｅｎｋ      確率
Ｆｉ      空間フィルタ
Ｋ      モデル数
ｋ      モデル
Ｄ（ｘ，ｙ）      視差画像（距離画像）
Ｆｉ（ｘ，ｙ）    フィルタ画像
Ｉｎ（ｘ，ｙ）    入力画像
Ｊ２（ｘ，Ｄ）、Ｊ３（ｘ，Ｄ）、Ｊ２（ｘ，Ｄ，ｔ）    俯瞰画像（俯瞰マップ）
Ｐ１（ｘ，ｙ）、Ｐ２（ｘ，ｙ）、Ｐ３（ｘ，ｙ）    撮影画像
Ｐｍ（ｘ，ｙ）    発生確率
Ｓｎ（ｘ，ｙ）    乖離量
Ｖ（Ｄ，ｙ）      Ｖマップ
Ｚｎｋ（ｘ，ｙ）、Ｚｍ（ｘ，ｙ）      Ｚスコア
Ｚｔｏｔａｌ（ｘ，ｙ）                  統合スコア
（ｘ，ｙ）、（Ｄ，ｙ）、（ｘ，Ｄ）    画素
【先行技術文献】
【特許文献】
【０１３１】
【特許文献１】特開２０１３−００３７８７号公報
【特許文献２】特開２０１３−２１０９０８号公報
【図１】
2019139420.tif 000018
【図２】
2019139420.tif 000019
【図３】
2019139420.tif 000020
【図４】
2019139420.tif 000021
【図５】
2019139420.tif 000022
【図６】
2019139420.tif 000023
【図７】
2019139420.tif 000024
【図８】
2019139420.tif 000025
【図９】
2019139420.tif 000026
【図１０】
2019139420.tif 000027
【図１１】
2019139420.tif 000028
【図１２】
2019139420.tif 000029
【図１３】
2019139420.tif 000030
【図１４】
2019139420.tif 000031