(57)【要約】【課題】より簡素な処理で物体までの距離を特定できるようにする。【解決手段】距離検出装置においては、複数の画像のうちの基準画像中のある画素を表す基準画素における画素情報と、基準画像を除く他の画像中の画素を表す比較画素における画素情報と、の差異に基づく画素コストを、基準画素および比較画素を変更しつつ、基準画素毎に演算する（Ｓ２１０）。そして、基準画素を変更する際において基準画素と比較画素との座標差である視差の変化量に対するコストを表す視差コストを、基準画素毎に演算し、各基準画素に対して、画素コストと視差コストとの和を表す合計コストが最小値となる際の比較画素との組み合わせを演算する（Ｓ２２０〜Ｓ２６０）。また、各基準画素に対応する比較画素を、各基準画素に対応する対応点として設定し（Ｓ２７０）、各基準画素と対応点との関係に基づいて複数の撮像画像のそれぞれから物体までの距離を計算する。【選択図】図３
2016099932.tif 000002
【特許請求の範囲】
【請求項１】
複数の撮像画像に基づいて撮像画像中の物体までの距離を検出する距離検出装置（１）であって、
前記複数の画像のうちの基準画像中のある画素を表す基準画素における画素情報と、前記基準画像を除く他の画像中の画素を表す比較画素における画素情報と、の差異に基づく画素コストを、前記基準画素および前記比較画素を変更しつつ、前記基準画素毎に演算する画素コスト演算手段（Ｓ２１０）と、
前記基準画素を変更する際において前記基準画素と前記比較画素との座標差である視差の変化量に対するコストを表す視差コストを、前記基準画素毎に演算し、前記各基準画素に対して、前記画素コストと前記視差コストとの和を表す合計コストが最小値となる際の比較画素との組み合わせを演算する最小コスト画素演算手段（Ｓ２２０〜Ｓ２６０）と、
前記各基準画素に対応する比較画素を、前記各基準画素に対応する対応点として設定する対応点設定手段（Ｓ２７０）と、
前記各基準画素と対応点との関係に基づいて前記複数の撮像画像のそれぞれから物体を抽出する物体抽出手段（Ｓ６０）と、
前記複数の画像を、予め設定された周期を表す基準周期毎に得られた複数の撮像画像からなる第１撮像画像群、および前記第１撮像画像群の撮像タイミングに対して非同期時間だけタイミングをずらし、かつ前記基準周期毎に得られた第２撮像画像群としたときに、前記第１撮像画像群、および前記第２撮像画像群を構成する各撮像画像中における物体の座標を表す画像座標群をそれぞれ取得する画像座標群取得手段（Ｓ１２０）と、
前記第１撮像画像群と前記第２撮像画像群とが前記非同期時間だけずれた関係であることに基づいて、前記各画像座標群から前記物体までの距離を演算する距離演算手段（Ｓ１３０）と、
を備えたことを特徴とする距離検出装置。
【請求項２】
請求項１に記載の距離検出装置において、
前記最小コスト画素演算手段は、前記基準画素および前記比較画素を複数の方向に沿って順に変更したときにおける合計コストが最小となるときの最小コストを演算し、方向毎に演算された最小コストを互いに加算した値を前記最小値とすること、または、逐次、方向毎に最小コストを畳み込み演算して得られた値を最小値とすること
を特徴とする距離検出装置。
【請求項３】
請求項１または請求項２に記載の距離検出装置において、
前記物体抽出手段は、前記基準画像における各画素の横位置、および前記各画素から前記他の画像において前記各画素と対応する対応点までの視差、の関係を示す仮想平面に、前記各画素の横位置および該各画素に対応する視差との関係を投票し、相対的に多くの投票が得られた位置に物体が存在すると推定すること
を特徴とする距離検出装置。
【請求項４】
請求項１〜請求項３の何れか１項に記載の距離検出装置において、
前記画素コスト演算手段、前記対応点設定手段、前記物体抽出手段は、時系列に従って撮像された複数の撮像画像に対して前記物体を抽出する作動を実施し、
前記画像座標群取得手段および前記距離演算手段は、前記抽出された物体の数が、予め設定された基準数だけ揃ってから物体までの距離を演算する処理を実施すること
を特徴とする距離検出装置。
【請求項５】
請求項１〜請求項４の何れか１項に記載の距離検出装置において、
前記距離演算手段は、フーリエ変換により周波数空間において表記された物体の位置の軌跡を示す周波数空間軌跡を求め、該周波数空間軌跡に対してフーリエ逆変換を行うことによって前記物体までの距離を演算すること
を特徴とする距離検出装置。
【請求項６】
請求項５に記載の距離検出装置において、
前記距離演算手段は、前記周波数空間軌跡のうちの予め設定された高周波成分を除去した値に対してフーリエ逆変換を行うこと
を特徴とする距離検出装置。
【請求項７】
請求項１〜請求項６の何れか１項に記載の距離検出装置において、
前記合計コストの大きさに応じて前記物体の位置信頼度を推定する位置信頼度推定手段（Ｓ７０〜Ｓ９０）、
を備えたことを特徴とする距離検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の撮像画像に基づいて撮像画像中の物体までの距離を検出する距離検出装置に関する。
【背景技術】
【０００２】
上記の距離検出装置として、ステレオカメラで得られた撮像画像を画像処理することで、距離を求めようとする物体を特定し、特定した物体に対してさらに精度よく距離を求めるための処理を実施することで物体の位置を特定するものが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−０２０８４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記距離検出装置では、物体を特定するまでの処理に、パターンマッチング等を用いたステレオカメラによる画像処理を行うことが一般的である。このような処理を利用して物体を特定すると、物体を特定するまでの処理負荷が大きくなるという問題点がある。
【０００５】
そこで、このような問題点を鑑み、複数の撮像画像に基づいて撮像画像中の物体までの距離を検出する距離検出装置において、より簡素な処理で物体を特定できるようにすることを本発明の目的とする。
【課題を解決するための手段】
【０００６】
本発明の距離検出装置において画素コスト演算手段は、複数の画像のうちの基準画像中のある画素を表す基準画素における画素情報と、基準画像を除く他の画像中の画素を表す比較画素における画素情報と、の差異に基づく画素コストを、基準画素および比較画素を変更しつつ、基準画素毎に演算する。また、最小コスト画素演算手段は、基準画素を変更する際において基準画素と比較画素との座標差である視差の変化量に対するコストを表す視差コストを、基準画素毎に演算し、各基準画素に対して、画素コストと視差コストとの和を表す合計コストが最小値となる際の比較画素との組み合わせを演算する。
【０００７】
そして、対応点設定手段は、各基準画素に対応する比較画素を、各基準画素に対応する対応点として設定し、物体抽出手段は、各基準画素と対応点との関係に基づいて複数の撮像画像のそれぞれから物体を抽出する。
【０００８】
また、画像座標群取得手段は、複数の画像を、予め設定された周期を表す基準周期毎に得られた複数の撮像画像からなる第１撮像画像群、および第１撮像画像群の撮像タイミングに対して非同期時間だけタイミングをずらし、かつ基準周期毎に得られた第２撮像画像群としたときに、第１撮像画像群および第２撮像画像群を構成する各撮像画像中における物体の座標を表す画像座標群をそれぞれ取得する。
【０００９】
そして、距離演算手段は、第１撮像画像群と第２撮像画像群とが非同期時間だけずれた関係であることに基づいて、各画像座標群から物体までの距離を演算する。
このような距離検出装置１によれば、コスト演算により対応点を求めるので、簡素な処理で物体を認識することができる。よって、物体までの距離を求める際の処理負荷を簡素化することができる。
【００１０】
なお、各請求項の記載は、可能な限りにおいて任意に組み合わせることができる。この際、一部構成を除外してもよい。
【図面の簡単な説明】
【００１１】
【図１】本発明が適用された距離検出装置１の概略構成を示すブロック図である。
【図２】処理部１０（ＣＰＵ１１）が実行する距離演算処理を示すフローチャートである。
【図３】距離演算処理のうちの対応点探索処理を示すフローチャートである。
【図４】左右方向におけるコスト演算の概略を示す説明図である。
【図５】ＳＳＩＭを説明する模式図である。
【図６】上下方向におけるコスト演算の概略を示す説明図である。
【図７】斜め方向におけるコスト演算の概略を示す説明図である。
【図８】高速処理の概略の示す説明図である。
【図９】シーン画像と距離画像との関係の一例を示す画像図である。
【図１０】距離演算処理のうちの物体検出処理を示すフローチャートである。
【図１１】投票処理の概要を示す模式図である。
【図１２】非同期ステレオ法において利用する画像を示す説明図である。
【図１３】非同期ステレオ法の概要を示す説明図である。
【図１４】高周波領域を除去する処理を示す、周波数と出現頻度との関係を示すグラフである。
【発明を実施するための形態】
【００１２】
以下に本発明にかかる実施の形態を図面と共に説明する。
［本実施形態の構成］
本発明が適用された距離検出装置１は、複数の撮像画像の視差を検出することによって撮像画像中の各点（物体）までの距離を検出する装置である。特に、本実施形態の距離検出装置１では、動的計画法であるビタビアルゴリズムを複数の方向に適用することで複数の撮像画像を構成する画素間の対応関係（視差）を高精度かつ低負荷で求めることができるよう配慮されている。また、物体に対して非同期ステレオ法を用いて精度よく距離を推定できるよう設定されている。
【００１３】
詳細には、距離検出装置１は、乗用車等の車両に搭載されており、図１に示すように、処理部１０と、２つの撮像部２１，２２と、車両制御部３０とを備えている。なお、撮像部は２つに限られることなく、３以上設けられていてもよい。
【００１４】
撮像部２１，２２は、それぞれ車両の進行方向が撮像範囲内となる周知のカメラとして構成されている。撮像部２１，２２は、中心軸が平行かつ水平方向に所定の距離だけ離れて配置されたステレオカメラを構成している。これらの撮像部２１，２２は、予め決まった時間で周期的に同時に撮像を行うよう設定されている。
【００１５】
処理部１０は、ＣＰＵ１１と、ＲＯＭ、ＲＡＭ等のメモリ１２とを備えた周知のコンピュータとして構成されている。処理部１０（ＣＰＵ１１）は、撮像部２１，２２によって撮像された撮像画像を取得する。そして、メモリ１２に格納されたプログラムに基づいて後述する距離演算処理等の各種処理を実行する。
【００１６】
車両制御部３０は、処理部１０による処理結果を利用して車両を制御する処理を行う。例えば、車両制御部３０は、撮像部２１，２２による撮像範囲内の各点（各画素）における距離の情報を処理部１０から取得し、この距離の情報に基づいて物体の位置および相対速度を認識する。そして、物体が走行に支障を来す虞がある場合、走行軌道を変更する車両制御を行う。
【００１７】
［本実施形態の処理］
このように構成された距離検出装置１において、処理部１０（ＣＰＵ１１）は、図２以下に示す距離演算処理を実施する。距離演算処理は、撮像画像中の各点までの距離を演算する処理である。距離演算処理は、例えば距離検出装置１の電源が投入されると開始され、その後、一定周期毎に繰り返し実施される。
【００１８】
この処理では、まず、撮像部２１，２２によって撮像された撮像画像を取得する（Ｓ１０）。続いて、撮像された画像を平行化する（Ｓ２０）。ここで、画像の平行化とは、撮像画像のレンズによる画像の歪みや姿勢のずれを補正する処理等を示す。
【００１９】
続いて、対応点探索処理を実施する（Ｓ３０）。対応点探索処理は、基準画像（例えば撮像部２１による撮像画像）を構成する各画素と比較画像（例えば撮像部２２による撮像画像）を構成する各画素との対応関係、すなわち、同じものが写っている場所を関連付ける処理である。
【００２０】
詳細には図３に示すように、まず、節点のコストを算出する（Ｓ２１０）。ここで、節点とは、図４（ａ）に示すように、基準画像の画素位置を横軸に取り、基準画像の画素位置と比較画像の画素位置との視差を縦軸に取ったマトリクスにおいて、このマトリクスを構成する要素（基準画像の画素位置と視差との関係）の１つ１つを示す。なお、この処理では、基準画像の画素位置毎に、比較画像の視差探索する範囲内にある画素に対するコストを算出する。
【００２１】
ここで、ピクセル位置ｐ，視差ｕｐのときの節点のコストをＤ（ｐ，ｕｐ）と表現する。また、コストＤ（ｐ，ｕｐ）は、下記ＳＳＩＭ（Structual Similarity）を用いて求める。
【００２２】
【数１】
2016099932.tif 000003
なお、上記数式における各記号の定義については、図５に示す。また、上記数式中のα、β、γは、任意の定数である。
【００２３】
次に、ビタビアルゴリズムによるコストを求める（Ｓ２２０〜Ｓ２６０）。Ｓ２２０の処理では、コストＥｘを下記の手順を実施することで求める。
［手順１−１］
まず、基準画像の画素については、基準画像の左上の画素から右方向に順に選択し、右端まで選択し終わると、１段下の左端の画素を選択し、再び右方向に順に選択する処理を繰り返す。この際、比較画像については、基準画像の選択中の画素と同じ高さ（鉛直方向の位置）にある比較画像の画素を、左から右に向かう方向（右方向）に左端から右端まで順次選択する。すなわち、図４（ｂ）に示すように、基準画像および比較画像についてそれぞれ水平方向（Ｘ方向）について選択する画素の座標を遷移させる。
【００２４】
そして、比較画像の各画素について、視差（基準画像の画素の位置と比較画像の画素の位置の差）が大きくなるにつれてコストが大きくなるよう予め設定された関数を用いて視差コストＳ（ｕｐ，ｕｑ）を求める。なお、Ｓ（ｕｐ，ｕｑ）は、ｐからｑに視差が変化する際の視差コストを示す。
【００２５】
［手順１−２］
そして、節点のコストＤ（ｐ，ｕｐ）と、視差コストＳ（ｕｐ，ｕｑ）とについてビタビアルゴリズムを適用する。
【００２６】
【数２】
2016099932.tif 000004
上記式（ビタビアルゴリズムの式）では、前述のある節点について、図４（ａ）に示すマトリクスにおける左端の何れかの節点からその節点（ある節点）に至るまでの、節点のコストＤ（ｐ，ｕｐ）と、視差コストＳ（ｕｐ，ｕｑ）との和、を示している。
【００２７】
ここでは、節点毎に、このＥ（ｕｐ）が最小となる節点コストおよび視差コストの組み合わせをビタビアルゴリズムを用いて求める。この演算によって得られるこれらのデータを右方向のコストとする。
【００２８】
［手順１−３］
上記［手順１−１］〜［手順１−２］と同様の方法を、右から左に向かう方向（左方向）に適用することによって、ビタビアルゴリズムのコストを得る。この演算によって得られるこれらのデータを左方向のコストとする。
【００２９】
［手順１−４］
上記の手順にて求めた右方向のコストと左方向のコストとを対応する節点同士で加算し、得られたデータを左右方向のコストＥｘとしてメモリ１２に記録させる。
【００３０】
続いて、Ｓ２３０の処理では、コストＥｙを下記の手順を実施することで求める。
［手順２−１］
まず、図６（ｂ）に示すように、各節点について、Ｙ方向（画像の鉛直方向）からみた仮想的な平面を準備する。そしてこの平面に対応する画素を選択する。すなわち、基準画像の画素については、基準画像の左上の画素から下方向に順に選択し、下端まで選択し終わると、１段右側の上端の画素を選択し、再び下方向に順に選択する処理を繰り返す。この際、比較画像については、基準画像のうちの選択中の画素と同じ左右位置（水平方向の位置）にある比較画像の画素を、上から下に向かう方向（下方向）に上端から下端まで順次選択する。
【００３１】
そして、この際の視差コストＳ（ｕｐ，ｕｑ）を求める。
［手順２−２］
そして、計算済みの節点のコストＤ（ｐ，ｕｐ）と、視差コストＳ（ｕｐ，ｕｑ）とについてビタビアルゴリズムを適用する。
【００３２】
ここでは、図６（ａ）に示すように、前述のビタビアルゴリズムの式を利用して、節点毎に、このＥ（ｕｐ）が最小となる節点コストおよび視差コストの組み合わせを求める。この演算によって得られるこれらのデータを下方向のコストとする。
【００３３】
［手順２−３］
上記［手順２−１］〜［手順２−２］と同様の方法を、下から上に向かう方向（上方向）に適用することによって、ビタビアルゴリズムのコストを得る。この演算によって得られるこれらのデータを上方向のコストとする。
【００３４】
［手順２−４］
上記の手順にて求めた下方向のコストと上方向のコストとを対応する節点同士で加算し、得られたデータを上下方向のコストＥｙとしてメモリ１２に記録させる。
【００３５】
続いて、Ｓ２４０の処理では、コストＥｘ−ｙを下記の手順を実施することで求める。
［手順３−１］
まず、図７（ｂ）に示すように、各節点について、ＸＹ方向（画像の左下から４５度斜め右上方向）からみた仮想的な平面を準備する。そしてこの平面に対応する画素を選択する。すなわち、基準画像の画素については、基準画像の左上の画素を選択し、４５度右上の画素を順に選択する。
【００３６】
そして、端部まで選択し終わると、左端の画素のうちの最も上段の画素を選択し、再び４５度右上に順に選択する処理を繰り返す。この際、比較画像については、基準画像のうちの選択中の画素と対応する斜め方向に位置する画素を左下端から右上端まで順次選択する。
【００３７】
そして、この際の視差コストＳ（ｕｐ，ｕｑ）を求める。
［手順３−２］
そして、計算済みの節点のコストＤ（ｐ，ｕｐ）と、視差コストＳ（ｕｐ，ｕｑ）とについてビタビアルゴリズムを適用する。
【００３８】
ここでは、図７（ａ）に示すように、前述のビタビアルゴリズムの式を利用して、節点毎に、このＥ（ｕｐ）が最小となる節点コストおよび視差コストの組み合わせを求める。この演算によって得られるこれらのデータを右斜め上方向のコストとする。
【００３９】
［手順３−３］
上記［手順３−１］〜［手順３−２］と同様の方法を、右上から左斜め下に向かう方向に適用することによって、ビタビアルゴリズムのコストを得る。この演算によって得られるこれらのデータを右斜め下方向のコストとする。
【００４０】
［手順３−４］
上記の手順にて求めた右斜め下方向のコストと右斜め上方向のコストとを対応する節点同士で加算し、得られたデータを右斜め方向のコストＥｘ−ｙとしてメモリ１２に記録させる。
【００４１】
［手順４］
続いて、Ｓ２５０の処理では、コストＥｘ＋ｙを下記の手順を実施することで求める。この際には、［手順３−１］〜［手順３−４］と同様に、左斜め方向のコストＥｘ＋ｙを求め、メモリ１２に記録させる。
【００４２】
ここで、上記の各処理において、ビタビアルゴリズムのコストＥ（ｐ，ｕ）（Ｅｘ、Ｅｙ、Ｅｘ−ｙ、Ｅｘ＋ｙ）は以下の式（１１）で求められる。
【００４３】
【数３】
2016099932.tif 000005
ただし、Ｅ（ｐ，ｕ）は、ピクセル位置ｐ、ピクセル位置ｐ−１との視差ｕの際のビタビアルゴリズムによるコスト、ｓ（ｕ，ｖ）は、ピクセル位置ｐ−１からピクセル位置ｐ
になるときに、視差がｖからｕに変化する際のコスト、Ｄ（ｐ，ｕ）は、ピクセル位置ｐ、視差ｕのときの節点のコストを表す。
【００４４】
図８に示す例では、例えば、左から右方向に向けて、ピクセル位置ｐ-1からｐへのビタビアルゴリズムのコストを演算する例を示している。ピクセル位置ｐ, 視差ｕのビタビアルゴリズムのコストは、ピクセル位置ｐ−１にある全ての節点から接続される経路の内で、最も小さい｛Ｅｐ−１，ｖ｝＋ｓ（ｕ，ｖ）｝に自ノードのＤ（ｐ，ｕ）を足したものになる。
【００４５】
ここで、取り得る視差の範囲をｍ, 探索範囲(図８での矢印の本数)をｎ個とすると、ピクセル位置ｐ−１からｐへ遷移するためには、ｍ×ｎ回の探索を行う必要があるといえる。
【００４６】
しかしながら、本実施形態においては、下記式を用いてＥ（ｐ，ｕ）を求める。
【００４７】
【数４】
2016099932.tif 000006
この式（１２）では、視差（ｕ−１）かつピクセル位置ｐでのコストと、視差ｕ、ピクセル位置（ｐ−１）のコストと、節点のコストＤ（ｐ，ｕ）とを利用して、最適解を求めている。
【００４８】
本実施形態において式（１１）の代わりに式（１２）を用いるのは、式（１１）と式（１２）とが等価であるからである。式（１１）と式（１２）とが等価であることを以下に証明する。
【００４９】
【数５】
2016099932.tif 000007
式（１３）について、Ｅ（ｐ，ｕ）は上記のように，ｍｉｎの部分について，｛ｖ＝０，…，ｕ−１｝の範囲と｛ｖ＝ｕ｝のときの２項比較と等価となる。また、式（１４）は、式（１１）におけるｕを（ｕ−１）に置換した定義と同様の式である。
【００５０】
【数６】
2016099932.tif 000008
上記式（１４）の右辺のＤを左辺に移項し，両辺に−ｓ(ｕ−１，ｖ)＋ｓ（ｕ，ｖ）を足すと以下の式（１６）が得られる。
【００５１】
【数７】
2016099932.tif 000009
そして、式（１３）の右辺のｍｉｎ｛Ｅ（ｐ−１，ｖ）＋ｓ（ｕ，ｖ）｝の部分を式（１６）の左辺に置き換えると、Ｅ（ｐ，ｕ）は上記の式（１２）で表される。つまり、２項の比較演算（ｍｉｎ部分）と節点コストＤとの足し算により算出できることが分かる。
【００５２】
なお、上記においては、ｓ（ｕ, ｖ）＝ｕ−ｖとしている。このように式（１１）に換えて式（１２）を用いてコストＥ（ｐ，ｕ）を求めることで、ｍ×ｎ回の探索を２ｍ回の
探索とすることができる。すなわち、処理を高速化することができる。
【００５３】
続いて、図３に戻り、コストＥ（Ｅ（ｐ，ｕ））に従って、最小となる視差を選択し（Ｓ２７０）、基準画像における各画素と比較画像における各画素との対応関係をメモリ１２に記録し（Ｓ２８０）、対応点探索処理を終了する。
【００５４】
このような対応点探索処理が終了すると、図２に戻り、各画素における対応点の視差に応じて各画素に写っている物体までの距離を算出する（Ｓ４０）。そして、これらの画素と距離との対応データを車両制御部３０に対して出力する（Ｓ５０）。
【００５５】
ここで、この処理で出力される対応データは、図９（Ｂ）に示すようなものである。すなわち、上記処理を用いて図９（Ａ）に示すような撮像画像（シーン画像）を処理すると、図９（Ｂ）に示すような距離画像が得られる。図９（Ｂ）に示す距離画像では、濃淡によって距離を表現しており、濃度が高くなるにつれて距離が遠くなることを示す。図９（Ｂ）に示す距離画像では、エッジ成分がほとんど検出されない路面中央部分であっても、正確に距離が検出できていることが分かる。
【００５６】
ただし、他車両のような比較的距離が遠い位置にある物体については、ノイズ等の影響により継続的には物体の正確な距離が検出できない場合がある。このため、以下に示す処理を用いて正確な距離（軌跡）を検出する。
【００５７】
すなわち、図２に示すように、最初に、投票による物体検出処理を実施する（Ｓ６０）。投票による物体検出処理は、投票処理を用いて最も確からしい物体の座標を特定し、この物体についての属性を判定する処理である。詳細には、図１０に示すように、まず、横位置に対する視差の大きさを投票する（Ｓ３１０）。なお、横位置とは画像における水平方向の座標値を示す。
【００５８】
この処理では、図１１に示すように、左右何れかの基準となる基準画像における各画素の横位置、および各画素から他の画像において各画素と対応する対応点までの視差、の関係を示す仮想平面を設定する。視差はピクセル数を単位とする。
【００５９】
この処理では、例えば、処理の対象とする画素を基準画像の水平方向の左端から右端までを１列としたときのｎ列分（ｎは自然数。例えば２０列分など。）に含まれる画素とする。そして、処理の対象とする画素を順次、鉛直方向に移動しながら実施する。
【００６０】
そして、この仮想平面において各画素の横位置および該各画素に対応する視差との関係を投票する。すると、図１１に示すように、何らかの物体（特に、撮像部２１，２２の方向と概ね直交する面を有する物体）がある場合には、その物体までの距離に対応する視差の位置に相対的に多くの投票が得られる。このため、多くの投票が得られた位置に物体が存在すると推定できることになる。
【００６１】
続いて、比較的多くの投票が得られた領域を１の物体としてひとまとめにするグルーピングを行う（Ｓ３２０）。この処理では、比較的多くの投票が得られた画素のうちの水平方向および鉛直方向に隣接するものを抽出し、これらの画素が内接する矩形を得る。
【００６２】
そして、グルーピングによって得られた物体について属性を判定する（Ｓ３３０）。ここで、属性とは、歩行者、二輪車、乗用車、大型車等の種別を示す。また、これらの属性は、物体の大きさ（矩形の位置、矩形の水平方向および鉛直方向の長さ等）を用いて判定される。
【００６３】
このような処理が終了すると、物体検出処理を終了し、図２に戻る。
続いて、検出された物体についての信頼度を判定する（Ｓ７０）。この処理では、例えば、コストＥの値が予め設定された閾値以上となる場合、信頼度が低いと判定し、コストＥの値がこの閾値未満であれば、信頼度が高いと判定する。
【００６４】
信頼度が高ければ（Ｓ７０：ＹＥＳ）、この物体を追跡するよう設定する（Ｓ８０）。つまり、このフレーム（撮像画像）において検出された物体を、距離を演算する際に利用するよう設定する。また、信頼度が低ければ（Ｓ７０：ＮＯ）、このフレームにおいては物体を追跡しないよう設定する（Ｓ９０）。この場合、物体の情報は過去のフレームのうちの信頼度が高い最新のものを利用する。
【００６５】
続いて、物体位置が得られたフレーム数と予め設定された基準フレーム数とを比較する（Ｓ１１０）。基準フレーム数は、非同期ステレオ法を用いて物体の軌跡を推定する際に、精度を向上させるために必要となるフレーム数（例えば２０フレーム程度）であり、予め実験的に求められるものである。物体位置が得られたフレーム数が基準フレーム数に満たない場合（Ｓ１１０：ＮＯ）、Ｓ１０の処理に戻る。
【００６６】
また、物体位置が得られたフレーム数が基準フレーム数を満たす場合（Ｓ１１０：ＹＥＳ）、物体の代表点を選択する（Ｓ１２０）。この処理では、物体位置が得られたフレームのそれぞれから、代表点となる任意の点を選択する。
【００６７】
特に、図１２に示すように、左右の撮像部２１，２２から得られたそれぞれの画像の一方を交互に選択し、選択した画像から代表点を選択する。なお、図１２では、丸印を付した画像が選択されたことを示す。また、代表点となる任意の点を選択する際には、例えば、物体の重心の１点や、物体の中心付近の２点、或いはテールランプ等の１または複数の光源の中心等、物体中の任意の位置における任意の個数の点を選択すればよい。
【００６８】
続いて、選択した点を利用して、非同期ステレオ法を実施する（Ｓ１３０）。ここで、非同期ステレオ法とは、特開２０１４−０２０８４５号公報（特に、段落［００３８］〜［００９３］）記載された物体の軌跡を求めるための手法である。
【００６９】
この処理では、図１３に示すように、フーリエ変換により周波数空間において表記された物体の位置の軌跡を示す周波数空間軌跡を求め、周波数空間軌跡に対してフーリエ逆変換を行うことによって物体までの距離を演算する。つまり、左右の画像の撮像タイミングが所定の時間だけずれていること、およびカメラ行列が既知であることを利用して、物体の周波数空間軌跡を実空間の軌跡を求める。
【００７０】
なお、この処理の詳細は、上記公報に詳細に記載されているため、ここでの記載は省略する。ただし、未知変数Ｘｆ（ｎ）、Ｙｆ（ｎ）、Ｚｆ（ｎ）の解が得られると（上記公報の段落［００７８］参照）、これらの解の高周波成分を除去する。ここで、これらの解の高周波成分は、物体の移動速度が非常に速いことを示すため、通常の物体として考慮する必要がない程度に高速で移動するものについては、ノイズとして除去するよう設定する。
【００７１】
例えば、解として、図１４に示すような、周波数ｆと出現頻度との関係が得られた場合、閾値ＳＨよりも高周波側の成分（ハッチングで示す部分）を除去する。そして、高周波側の成分を除去した上で、フーリエ逆変換を行う。
【００７２】
続いて、このようにして得られた物体の軌跡に基づいて、物体の位置（物体までの距離）を出力し（Ｓ１４０）、距離演算処理を終了する。
［本実施形態による効果］
以上のように詳述した距離検出装置１において処理部１０は、複数の画像のうちの基準画像中のある画素を表す基準画素における画素情報と、基準画像を除く他の画像中の画素を表す比較画素における画素情報と、の差異に基づく画素コストを、基準画素および比較画素を変更しつつ、基準画素毎に演算する。また、処理部１０は、基準画素を変更する際において基準画素と比較画素との座標差である視差の変化量に対するコストを表す視差コストを、基準画素毎に演算し、各基準画素に対して、画素コストと視差コストとの和を表す合計コストが最小値となる際の比較画素との組み合わせを演算する。
【００７３】
そして、処理部１０は、各基準画素に対応する比較画素を、各基準画素に対応する対応点として設定し、各基準画素と対応点との関係に基づいて複数の撮像画像のそれぞれから物体を抽出する。
【００７４】
また、処理部１０は、複数の画像を、予め設定された周期を表す基準周期毎に得られた複数の撮像画像からなる第１撮像画像群、および第１撮像画像群の撮像タイミングに対して非同期時間だけタイミングをずらし、かつ基準周期毎に得られた第２撮像画像群としたときに、第１撮像画像群、および第２撮像画像群を構成する各撮像画像中における物体の座標を表す画像座標群をそれぞれ取得する。
【００７５】
そして、処理部１０は、第１撮像画像群と第２撮像画像群とが非同期時間だけずれた関係であることに基づいて、各画像座標群から物体までの距離を演算する。
このような距離検出装置１によれば、コスト演算により対応点を求めるので、簡素な処理で物体を認識することができる。よって、物体までの距離を求める際の処理負荷を簡素化することができる。
【００７６】
また、距離検出装置１において処理部１０は、基準画素および比較画素を複数の方向に沿って順に変更したときにおける合計コストが最小となるときの最小コストを演算し、方向毎に演算された最小コストを互いに加算した値を最小値、または逐次、方向毎に最小コストを畳み込み演算して得られた値を最小値とする。
【００７７】
このような距離検出装置１によれば、複数の方向について最小コストを演算するので、物体を認識する際の精度をより向上させることができる。
また、距離検出装置１において処理部１０は、基準画像における各画素の横位置、および各画素から他の画像において各画素と対応する対応点までの視差、の関係を示す仮想平面に、各画素の横位置および該各画素に対応する視差との関係を投票し、相対的に多くの投票が得られた位置に物体が存在すると推定する。
【００７８】
このような距離検出装置１によれば、投票処理によって撮像画像中の物体の位置を推定するので、簡素な処理で物体の位置を点または領域で求めることができる。
また、距離検出装置１において処理部１０は、時系列に従って撮像された複数の撮像画像に対して物体を抽出する作動を実施し、抽出された物体の数（フレーム数）が、予め設定された基準数だけ揃ってから物体までの距離を演算する処理を実施する。
【００７９】
このような距離検出装置１によれば、抽出された物体の数が基準数だけ揃ってから物体までの距離を演算する処理を実施するので、精度よく物体までの距離を演算できる場合だけ物体の位置を出力することができる。
【００８０】
また、距離検出装置１において処理部１０は、フーリエ変換により周波数空間において表記された物体の位置の軌跡を示す周波数空間軌跡を求め、周波数空間軌跡に対してフーリエ逆変換を行うことによって物体までの距離を演算する。
【００８１】
このような距離検出装置１によれば、既知であるカメラの撮像周期を用いてフーリエ逆変換を行うことができるので、精度よく物体までの距離を演算することができる。
また、距離検出装置１において処理部１０は、周波数空間軌跡のうちの予め設定された高周波成分を除去した値に対してフーリエ逆変換を行う。
【００８２】
このような距離検出装置１によれば、想定された物体としては不自然なほど高速移動するものをノイズとして除去することができる。
また、距離検出装置１において処理部１０は、物体領域内でコストの外れ値を除去して平均コストの大きさに応じて物体の位置信頼度を推定する。
【００８３】
このような距離検出装置１によれば、平均コストが小さくなるほど物体の検出精度が高い傾向があることを利用するので、平均コストの大きさに応じて位置信頼度を求めることができる。
【００８４】
［その他の実施形態］
本発明は、上記の実施形態によって何ら限定して解釈されない。また、上記の実施形態の説明で用いる符号を特許請求の範囲にも適宜使用しているが、各請求項に係る発明の理解を容易にする目的で使用しており、各請求項に係る発明の技術的範囲を限定する意図ではない。上記実施形態における１つの構成要素が有する機能を複数の構成要素として分散させたり、複数の構成要素が有する機能を１つの構成要素に統合させたりしてもよい。また、上記実施形態の構成の少なくとも一部を、同様の機能を有する公知の構成に置き換えてもよい。また、上記実施形態の構成の一部を、課題を解決できる限りにおいて省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言のみによって特定される技術思想に含まれるあらゆる態様が本発明の実施形態である。
【００８５】
上述した距離検出装置１の他、当該距離検出装置１を構成要素とするシステム、当該距離検出装置１としてコンピュータを機能させるためのプログラム、このプログラムを記録した媒体、位置検出方法など、種々の形態で本発明を実現することもできる。
【００８６】
［実施形態の構成と本発明の手段との対応関係］
上記実施形態において、処理部１０が実行する処理のうちのＳ６０の処理は本発明でいう物体抽出手段に相当し、上記実施形態においてＳ７０〜Ｓ９０の処理は本発明でいう位置信頼度推定手段に相当する。また、上記実施形態においてＳ１２０の処理は本発明でいう画像座標群取得手段に相当し、上記実施形態においてＳ１３０の処理は本発明でいう距離演算手段に相当する。
【００８７】
さらに、上記実施形態においてＳ２１０の処理は本発明でいう画素コスト演算手段に相当し、上記実施形態においてＳ２２０〜Ｓ２６０の処理は本発明でいう最小コスト画素演算手段に相当する。また、上記実施形態においてＳ２７０の処理は本発明でいう対応点設定手段に相当する。
【符号の説明】
【００８８】
１…距離検出装置、１０…処理部、１１…ＣＰＵ、１２…メモリ、２１…撮像部、２２…撮像部、３０…車両制御部。
【図１】
2016099932.tif 000010
【図２】
2016099932.tif 000011
【図３】
2016099932.tif 000012
【図４】
2016099932.tif 000013
【図５】
2016099932.tif 000014
【図６】
2016099932.tif 000015
【図７】
2016099932.tif 000016
【図８】
2016099932.tif 000017
【図９】
2016099932.tif 000018
【図１０】
2016099932.tif 000019
【図１１】
2016099932.tif 000020
【図１２】
2016099932.tif 000021
【図１３】
2016099932.tif 000022
【図１４】
2016099932.tif 000023