(57)【要約】【課題】本発明は、ステレオマッチング判定処理の探索幅を広げても、処理負荷とコスト増加を抑えることを目的とする。【解決手段】本発明は、複数のカメラを有するステレオカメラ装置において、前記複数のカメラのうちの一つで撮影される基準画像内の特定の画像要素に対応する画像要素を、他のカメラで撮影される参照画像内で所定の探索範囲に亘って画素の位置を変えて探索する探索処理部を有し、前記探索処理部は、前記探索範囲に含まれる画素のうち一部の画素の位置を除いて探索するものである。【選択図】図１
2017207279.tif 000002
【特許請求の範囲】
【請求項１】
複数のカメラを有するステレオカメラ装置において、
前記複数のカメラのうちの一つで撮影される基準画像内の特定の画像要素に対応する画像要素を、他のカメラで撮影される参照画像内で所定の探索範囲に亘って画素の位置を変えて探索する探索処理部を有し、
前記探索処理部は、前記探索範囲に含まれる画素のうち一部の画素の位置を除いて探索する、ステレオカメラ装置。
【請求項２】
請求項１に記載のステレオカメラ装置において、
前記探索範囲のうち前記視差が大きい側の大視差領域を、前記探索範囲のうち前記視差が小さい側の小視差領域よりも小さい密度で探索するように構成される、ステレオカメラ装置。
【請求項３】
請求項１に記載のステレオカメラ装置において、
前記ステレオマッチング部は、前記小視差領域では、該小視差領域に含まれる全ての画素の位置で探索を行い、前記大視差領域では、該大視差領域に含まれる複数の画素の位置を少なくとも一つ飛ばして探索するように構成される、ステレオカメラ装置。 
【請求項４】
請求項１に記載のステレオカメラ装置において、
前記探索処理部は、前記基準画像内の特定の画像要素を前記探索幅の一部の参照画像内で探索する第一の探索手段と、
前記基準画像内の特定の画像要素を前記探索幅の残りの参照画像内で探索する第二の探索手段を有し、
前記第一の探索手段と前記第二の探索手段で参照画像内の画素の位置の更新量が異なることを特徴とするステレオカメラ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のカメラを用いて車外の障害物の認識を行うステレオカメラ装置に関する。
【背景技術】
【０００２】
車両の走行安全性を向上させるために、車両に搭載したカメラで前方の障害物を検知して、その障害物に衝突する可能性がある場合は、ドライバへの警報や自動ブレーキを行うシステムが研究されている。
【０００３】
車両の前方を監視するセンサとして、ミリ波レーダー、レーザレーダ、カメラなどがある。カメラの種類としては、単眼カメラと、複数のカメラを使用したステレオカメラがある。ステレオカメラは、所定の間隔の２つのカメラで撮影された重複領域の視差を利用して、撮影された物体までの距離を計測することができる。このため、前方の物体までの衝突危険度を的確に把握することができる。
【０００４】
ステレオカメラは、２つのカメラで撮影された画像の視差を求めて、その視差を距離に変換する。視差を求めるためには、２つのカメラ間の画像のマッチング判定を行う必要がある。マッチング判定では、マッチング処理の探索幅を規定しておき、この幅の中で判定処理を行う。このため探索幅により視差の最大値が決定される。ステレオカメラは、視差が大きいほど距離が近いことを示すため、探索幅により、ステレオカメラで測定可能な最短計測距離が決まってしまう。近距離を計測するために探索幅を広くすると、マッチング判定処理の演算量が膨大になり、システムの性能低下、もしくはシステムの高コスト化を招くことになる。
【０００５】
そこで、演算量の増加を防ぎつつ、近距離の計測を可能とする方法として、特許文献１と特許文献２の方法が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−３９４９１号公報
【特許文献２】特開２０１３-１７４４９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、左右カメラで撮影された画像に対して等倍でステレオマッチング判定を処理する他に、近距離を計測する場合は画像を縮小して再度ステレオマッチング判定処理を行うものである。この方法によれば、画像を縮小する機能と、縮小された画像と等倍画像の両方のマッチング判定の演算パラメータを管理する機能などが必要となりコスト増加につながる。
【０００８】
特許文献２では、前方車窓から撮影される画像の上側は空などの遠方、画像の下側は近距離の路面が撮影されるケースが多いことを利用して、画像の下側に障害物が検知されなければ、画像の上側の探索幅を狭くする方法を示している。しかしこの方法では、前方車両が撮影さる場合は画像上側の探索幅を広げる必要があり、この方法が適用できるシーンが限定されるという課題がある。
【０００９】
本発明は、ステレオマッチング判定処理の探索幅を広げても、処理負荷とコスト増加を抑えることを目的としている。
【課題を解決するための手段】
【００１０】
本発明は、複数のカメラを有するステレオカメラ装置において、前記複数のカメラのうちの一つで撮影される基準画像内の特定の画像要素に対応する画像要素を、他のカメラで撮影される参照画像内で所定の探索範囲に亘って画素の位置を変えて探索する探索処理部を有し、前記探索処理部は、前記探索範囲に含まれる画素のうち一部の画素の位置を除いて探索するものである。
【００１１】
上記課題を解決するための本発明の特徴は、例えば以下の通りである。複数のカメラのうちの一つで撮影される基準画像内の特定の画像要素に対応する画像要素を、他のカメラで撮影される参照画像内で所定の探索範囲に亘って画素の位置を変えて探索する探索処理部30を有し、
前記探索処理部30は、前記探索範囲に含まれる画素のうち一部の画素の位置を除いて探索する。
【発明の効果】
【００１２】
本発明によれば、ステレオマッチング判定処理の探索幅を広げても、処理負荷とコスト増加を抑えることができる。
【図面の簡単な説明】
【００１３】
【図１】ステレオカメラ装置の機能ブロック図
【図２】ステレオカメラにおける視差算出の説明図
【図３】遠方の物体と近距離の物体に於ける視差の違い
【図４】視差と距離の関係を示す図
【図５】距離と測定精度を示す図
【図６】マッチング判定処理に於ける参照画像の参照位置飛び越しの説明図
【図７】ステレオマッチング判定処理のフローチャート
【図８】参照画像位置を飛び越した場合の距離測定精度を示す図
【図９】遠方部分と近距離部分を並列にマッチング判定処理を行うブロック図
【発明を実施するための形態】
【００１４】
本実施形態に係るステレオカメラ装置は、複数のカメラを有するステレオカメラ装置において、前記複数のカメラのうちの一つで撮影される基準画像内の特定の画像要素に対応する画像要素を、他のカメラで撮影される参照画像内で所定の探索範囲に亘って画素の位置を変えて探索する探索処理部を有し、前記探索処理部は、前記探索範囲に含まれる画素のうち一部の画素の位置を除いて探索するものである。
【００１５】
上記ステレオカメラ装置によれば、ステレオマッチング判定処理のための参照画像の探索位置を、探索の途中から飛び越しとするため、探索幅を広げてもマッチング判定処理の演算回数の増加を抑えることが出来る。このため、近距離計測のためにステレオカメラの探索幅を広げても演算量の増加を抑えることが可能となり、コスト増加も抑えることができる。
【００１６】
以下、図面等を用いて、本発明の実施形態について説明する。以下の説明は本発明の内容の具体例を示すものであり、本発明がこれらの説明に限定されるものではなく、本明細書に開示される技術的思想の範囲内において当業者による様々な変更および修正が可能である。また、本発明を説明するための全図において、同一の機能を有するものは、同一の符号を付け、その繰り返しの説明は省略する場合がある。
【実施例１】
【００１７】
図１は、ステレオカメラ装置１０のブロック図を示したものである。撮像部２０として右カメラ２２と左カメラ２１の２つのカメラを有する。右カメラ２２が撮影した画像は、基準画像として、基準画像メモリ２２０に格納される。左カメラ２１が撮影した画像は、参照画像として参照画像メモリ２１０に格納される。基準画像メモリ２２０の中から例えば８画素×８画素のような基準ブロック画像２２１を定義して、それを右ブロック画像メモリ２２２に格納する。ブロック画像のサイズはこの例に限るものではない。一方、参照画像メモリ２１０では、前記基準画像２２１と同じ縦位置（Ｙ座標）と横位置（Ｘ座標）を基準として、探索幅の分の画像２３１を選択し、それを探索画像メモリ２３２に格納する。その後、マッチング判定４０で右ブロック画像メモリ２２２の画像データを探索画像メモリ２３２から抽出した画像ブロックとの差分を計算する。この差分計算はＳＡＤと呼ばれ、次の計算を行う。
（数１）
SAD＝ΣΣ|I(i,j)-T(i,j)|  ・・・・・・(1)
但し、Ｉは探索画像メモリ２３２の中の８×８画像ブロック、Ｔは右ブロック画像メモリ２２２の画像データであり、ｉ，ｊは画像ブロック内の座標である。前記探索画像メモリ２３２から画像ブロックを抽出するための参照位置は、差分計算が行われるごとに探索位置更新部５０で更新される。通常は、探索位置更新部５０は参照位置を１つずつ更新する。そして、参照位置が飛び越し開始位置設定部６０で指定する値以上になると、参照位置を２つずつ更新する。
【００１８】
前記ＳＡＤ演算結果は探索画像メモリ２３２の参照位置とともに、評価関数バッファ４１に格納される。前記探索画像メモリ２３２の最後まで前記ＳＡＤ演算が終了すると、前記評価関数バッファ４１の中で最も小さい差分の参照位置を視差として出力する。この例では探索幅を１２８として説明するが、この数値に限定されるものではない。
【００１９】
図２において、ステレオカメラ装置１０が視差データを生成する動作概要について説明する。ステレオカメラ装置１０を搭載する車両の前方窓から見た実際の風景２３０には、前方車両２００がある。右カメラ２２で撮影した右画像２２０と、左カメラ２１で撮影した左画像２１０がある時、前方車両２００の一部２０１は、右画像２２０では位置２２１の位置に撮影され、左画像２１０では位置２１１の位置に撮影される。この結果、基準ブロック画像２２１の位置と参照ブロック画像２１１には視差ｄが生じる。この視差ｄは、前方車両２００がステレオカメラ装置１０に近い場合は大きい値となり、遠いものは小さい値となる。このように求めた視差を、画像全体で求める。この視差ｄを用いて、三角測量の原理でステレオカメラ装置１０までの距離を測定することが出来る。視差ｄから距離Ｚは次の式で求められる。
（数２）
Z ＝ (f × B) / d  ・・・・・・(2)
但し、ｆは右及び左カメラの焦点距離、Ｂは右カメラ２２と左カメラ２１の距離（基線長）である。また、視差データを３次元変換するために、上記Ｚを求めた地点の３次元上のＸ，Ｙ方向の距離を次の式で表す。
（数３）
X ＝ (Z × xr) / f  ・・・・・・(3)
（数４）
Y ＝ (Z × yr) / f  ・・・・・・(4)
但し、ｘｒは右画像２２０上でのｘ座標、ｙｒは右画像２２０上でのｙ座標である。以上のように、ステレオカメラ装置１０で撮影した画像によって、被写体の３次元空間上の位置（Ｘ，Ｙ，Ｚ）をステレオカメラ装置１０からの距離で求めることができる。
【００２０】
図３は、被写体（ここでは前方車両２００）と撮影部２０との距離の違いによる視差の値の傾向をまとめたものである。前方車両２００と撮像部２０の距離が遠い場合は、基準画像２２０上の前方車両２００のＸ方向の位置と、参照画像２１０上のＸ方向の前方車両２００の位置の差が大きい。つまり視差が大きい。一方、前方車両２００と撮像部２０の距離が近い場合は、基準画像２２０上の前方車両２００のＸ方向の位置と、参照画像２１０上のＸ方向の前方車両２００の位置の差が小さい。つまり視差が小さい。
【００２１】
図４は、視差と距離の関係をグラフ化したものである。式（２）により、距離は視差と反比例の関係であるため、近距離部分は視差の増加が顕著になる。探索幅が１２８の例で、例えば視差が１２７で２ｍ以遠が計測できると仮定すると、これを１ｍまで拡張する場合は、探索幅を倍程度まで拡張する必要がある。探索幅を拡張すると、画像全体の視差を求める演算量が膨大になる。
【００２２】
図５は、距離の違いに対する視差の測定分解能を示す。視差と距離の関係として図４に示すように、距離に対して視差は反比例する。このため、遠方部分に対して近距離部分は、極端に分解能が高くなる。つまり、近距離部分は分解能が高いので、探索位置更新部５０が遠方部分の参照位置を飛び越しで更新しても、システム全体の測距分解能は低下しないことになる。
【００２３】
図６は、飛び越し開始位置設定部６０に設定する値の考え方を示したものである。探索画像メモリ２３２の参照位置を視差が小さい部分から大きい部分に向けて更新すると仮定する。つまり探索画像メモリ２３２を遠方部分から近距離部分に向けて探索する。飛び越し開始位置設定部６０で指定する位置を、測距精度が保たれる位置に設定しておけば、参照位置を２つずつ更新してもシステム全体の測定精度は低下しない。しかも探索幅を１２８から２５６まで拡張しても演算量は倍にはならず、飛び越した分だけ演算量を抑えることができる。
【００２４】
図７は、視差を算出するフローチャートを示したものである。まず、撮影部２０の右カメラ２２と左カメラ２１で車両前方の画像を撮影する（Ｓ１１０）。次に、基準画像メモリ２２０から１ブロック（この例では８×８画素）のデータを抽出し、右ブロック画像メモリ２２０に格納する（Ｓ１２０）。次に参照画像メモリ２１０から、前記ブロック画像と同じＹ座標、Ｘ座標の位置から探索幅の分だけ画像データを抽出し、探索画像メモリ２３２に格納する（Ｓ１３０）。次に探索画像メモリ２３２を参照する探索位置ポインタをゼロクリアする（Ｓ１４０）。その後探索画像メモリ２３２から探索位置ポインタが指定するブロック画像を抽出し、右ブロック画像メモリ２２２との差分演算をマッチング判定４０で行う（Ｓ１５０）。
【００２５】
前記差分値は、参照位置とともに評価関数バッファ４１に記憶する（Ｓ１６０）。探索位置ポインタが飛び越し開始位置設定部６０に設定された値以上かどうかを判定し（Ｓ１７０）、もしＹｅｓなら探索位置ポインタに２を加算する（Ｓ１９０）。但し、加算する数値は２に限定されるものではない。もしＮｏなら探索位置ポインタに１を加算する（Ｓ１８０）。探索位置ポインタが探索幅以内ならＳ１５０に戻る。探索幅以上になると評価関数バッファ４１の差分値で最も小さい部分の参照位置を視差として出力する（Ｓ２１０）。基準画像メモリ２２０の中の全ての処理が終了したかどうかを判定し（Ｓ２２０）、もし終了していなければ基準画像メモリ２２０と参照画像メモリ２１０の読み出し位置を更新してＳ１２０に戻る（Ｓ２３０）。
【００２６】
図８は、前記のフローで処理したときの視差の距離測定分解能を示したグラフである。近距離部分で参照画像メモリの参照位置を飛び越した部分の分解能に対して、飛び越しを行っていない部分の分解能と不連続になるが、遠距離部分の分解能よりも高いので、システム全体の分解能低下にはならない。
【実施例２】
【００２７】
図９は、マッチング判定の処理において、近距離部分と遠方部分を並列に処理できるようにしたものである。そのため、図１と異なり、遠方部分のマッチング判定を行う遠方マッチング判定４２、遠方探索画像メモリ４３、探索位置更新部５１を有する。遠方探索位置更新部５１は、参照ポインタを１つずつ更新する。また、近距離部分のマッチング判定を行う近距離マッチング判定４４、近距離探索画像メモリ４４、近距離探索位置更新部５３を有する。近距離探索位置更新部５３は、初期値を遠方探索画像メモリの幅の値として、参照ポインタを２ずつ更新する。それぞれがマッチング判定を行った結果は、評価関数バッファ４６に格納され、その中で最も差分が小さい部分の参照位置が視差として出力される。このような構成にすることによって、近距離探索画像メモリ４４の探索幅を遠方探索画像メモリ４３の倍の値にしても、両方が同時に終了できるため、近距離部分の探索幅を広げてもシステム全体の処理時間を高速化できる。
【００２８】
以上の実施例によれば、ステレオカメラにおける視差算出のマッチング判定処理において、探索処理の途中から１画素飛びで探索処理を行うので、探索幅を広げても演算量の増大を防止することが出来る。
【００２９】
なお、本発明に係るステレオカメラ装置は、上記実施形態に記載された内容に限定されるものではない。即ち、探索処理部は、探索範囲に含まれる画素のうち一部の画素の位置を除いて探索するものであればよく、具体的には、探索範囲のうち大視差領域を小視差領域よりも大きい密度で探索するものであってもよい。この処理は、例えば、遠方には障害物が存在せず近傍にのみ存在することが判明している場合などで、小視差領域よりも大視差領域の方が高精度に探索を行う必要がある場合に有効である。
【符号の説明】
【００３０】
１０  ステレオカメラ装置
２０  撮影部        
２１  左カメラ
２２  右カメラ
３０  探索処理部
４０  マッチング判定
４１  評価関数バッファ
５０  探索位置更新部
６０  飛び越し開始位置設定部
２００  前方車両
２１０  参照画像メモリ
２１１  参照ブロック画像
２２０  基準画像メモリ
２２１  基準ブロック画像
２２２  右ブロック画像メモリ
２３１  探索幅の分の画像
【図１】
2017207279.tif 000003
【図２】
2017207279.tif 000004
【図３】
2017207279.tif 000005
【図４】
2017207279.tif 000006
【図５】
2017207279.tif 000007
【図６】
2017207279.tif 000008
【図７】
2017207279.tif 000009
【図８】
2017207279.tif 000010
【図９】
2017207279.tif 000011