(57)【特許請求の範囲】
【請求項１】
異なる高さに設けられた複数の撮像装置で撮像された複数の画像を取得する取得部と、
前記複数の画像における同一被写体の高さ方向の長さの相違に基づいて、前記同一被写体の前記撮像装置に対する立ち上がり部分を検出する検出部と、
を備える検出装置。
【請求項２】
前記検出部は、前記複数の画像における前記同一被写体に対応する領域の高さ方向の長さの比に基づいて、前記立ち上がり部分を検出する、
請求項１に記載の検出装置。
【請求項３】
前記検出部は、前記複数の撮像装置の設置位置の高さの比に更に基づいて、前記立ち上がり部分を検出する、
請求項２に記載の検出装置。
【請求項４】
より低い位置から撮像された画像における前記同一被写体に対応する領域の高さ方向の長さの、より高い位置から撮像された画像における前記同一被写体に対応する領域の高さ方向の長さに対する割合が、
予め定められた閾値よりも大きい場合、
前記検出部は、前記同一被写体の立ち上がり部分を検出する、
請求項３に記載の検出装置。
【請求項５】
前記複数の画像の視差量に基づいて、前記同一被写体までの距離を算出する距離算出部を更に備える、
請求項４に記載の検出装置。
【請求項６】
前記距離算出部は、高さ方向における前記複数の画像の視差量に基づいて、前記同一被写体までの距離を算出する、
請求項５に記載の検出装置。
【請求項７】
前記複数の撮像装置は移動体に設けられて前記移動体の移動方向を撮像するものであり、
前記同一被写体が立ち上がり部分を有するかの判定結果に基づいて、前記同一被写体が障害物であるか否かを判定する判定部を更に備える、
請求項１に記載の検出装置。
【請求項８】
前記判定部は、前記同一被写体までの距離に基づいて、前記同一被写体の高さを推定する、
請求項７に記載の検出装置。
【請求項９】
前記複数の画像から前記障害物の候補となる障害物候補を抽出する抽出部を更に備え、
前記判定部は、前記障害物候補のうち予め定められた高さ以上の立ち上がり部分を有する前記同一被写体を前記障害物と判定する、
請求項８に記載の検出装置。
【請求項１０】
前記検出部は、
前記複数の画像の一の画像に含まれる障害物候補の画像を複数の倍率候補の各々で縮小した複数のテンプレート画像を生成し、
前記複数の画像の別の画像に対して前記複数のテンプレート画像の各々を用いて、テンプレート・マッチングを行い、前記別の画像中の最も適合した位置での適合度を算出し、
前記複数の倍率候補の中から最大の適合度を与える倍率を算出し、
前記最大の適合度を与える倍率が予め定められた閾値よりも大きい場合、前記障害物候補の前記撮像装置に対する立ち上がり部分を検出する、
請求項９に記載の検出装置。
【請求項１１】
前記複数の撮像装置は移動体に設けられて前記移動体の移動方向を撮像するものであり、
前記複数の画像から障害物の候補となる障害物候補を抽出する抽出部と、
前記複数の画像の視差量に基づいて、前記障害物候補に対応する同一被写体までの距離を算出する距離算出部と、
前記同一被写体が障害物であるか否かを判定する判定部と、
を更に備え、
前記検出部は、前記複数の画像の一の画像に含まれる前記障害物候補の画像を複数の倍率候補の各々で縮小した複数のテンプレート画像を生成し、前記複数の画像の別の画像に対して前記複数のテンプレート画像の各々を用いて、テンプレート・マッチングを行い、前記別の画像中の最も適合した位置での適合度を算出し、前記複数の倍率候補の中から最大の適合度を与える倍率を算出し、
前記判定部は、前記最大の適合度を与える倍率が前記同一被写体までの距離に基づく閾値よりも大きい場合に、前記同一被写体が障害物であると判定する、
請求項１に記載の検出装置。
【請求項１２】
コンピュータを、請求項１から１１のいずれか１項に記載の検出装置として機能させるプログラム。
【請求項１３】
コンピュータにより実行される検出方法であって、
異なる高さに設けた複数の撮像装置で撮像された複数の画像を取得する取得段階と、
前記複数の画像における同一被写体の高さ方向の長さの相違に基づいて、前記同一被写体の前記撮像装置に対する立ち上がり部分を検出する検出段階と、
を備える検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検出装置、検出方法、及び、プログラムに関する。
【背景技術】
【０００２】
自動車の障害物等をステレオカメラの視差により検出する方法が知られている（例えば、特許文献１〜４）。しかし、従来の方法では、遠方の物体になるほど視差が小さくなるので遠方の障害物を正確に検出できない。たとえば、道路面に塗布された速度標識等は道路面と同一に扱われるので、誤って障害物として検出する(false alarm)ことはないが、一方で、遠方の障害物は小さく映るので道路面と大きな差異がなくなり見落とす(false negative)ことが多い。
［特許文献１］特開平４−１６１８１０号公報
［特許文献２］特開２００９−２８２７３６号公報
［特許文献３］特開２００５−２１７８８３号公報
［特許文献４］特開平１０−３８５６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
障害物となる可能性のある遠方の物体を正確に検出することを課題とする。
【課題を解決するための手段】
【０００４】
本発明の第１の態様においては、異なる高さに設けた複数の撮像装置で撮像された複数の画像を取得する取得部と、複数の画像における同一被写体の高さ方向の長さの相違に基づいて、同一被写体の撮像装置に対する立ち上がり部分を検出する検出部と、を備える検出装置、当該検出装置に用いるプログラム、当該検出装置を用いた検出方法を提供する。
【０００５】
なお、上記の発明の概要は、本発明の特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【０００６】
【図１】本実施形態の検出装置３０を搭載する移動体１のブロック図を示す。
【図２】本実施形態の検出装置３０の検出原理の概略を示す。
【図３】本実施形態の検出装置３０の検出原理の概略を示す。
【図４】本実施形態の検出装置３０の処理のフローを示す。
【図５】図４のＳ１３０の具体的な処理フローを示す。
【図６】複数の撮像装置２０等が撮像した複数の画像の例を示す。
【図７】本実施形態の変形例に係る立ち上がり角度がある場合の障害物の判定の概略を示す。
【図８】コンピュータ１９００のハードウェア構成の一例を示す。
【発明を実施するための形態】
【０００７】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【０００８】
図１は、本実施形態に係る検出装置３０を搭載する移動体１のブロック図を示す。移動体１は、例えば、自動車、自転車、及び鉄道車両等の車両、船舶、又は航空機等であってよく、複数の撮像装置を利用して移動の障害となる障害物を検出する。本実施形態の説明では、移動体１が自動車である場合について説明する。検出装置３０は、移動体１の移動方向で、移動体１に対して立ち上がった線分又は面部分（立ち上がり部分ともいう）を検出することにより、障害物を検出する。移動体１は、撮像装置２０、撮像装置２２、及び、検出装置３０を備える。
【０００９】
撮像装置２０及び２２は、異なる高さで移動体１に設けられたデジタルカメラであってよい。撮像装置２０及び２２は、例えば、撮像方向が移動体１の移動方向側に向けて設けられ、移動体１の移動方向の道路面を撮像した画像をそれぞれ生成する。一例として、撮像装置２０は自動車のバックミラー近傍に配置され、撮像装置２２は自動車の前側ナンバープレート近傍に配置されてよい。撮像装置２０及び撮像装置２２は、撮像した画像を検出装置３０に提供する。
【００１０】
検出装置３０は、複数の撮像装置２０及び２２が撮像した複数の画像に基づいて移動体１の移動方向にある障害物を検出する。検出装置３０は、取得部３１０、抽出部３２０、検出部３３０、距離算出部３４０、判定部３５０、及び、出力部３６０を有する。
【００１１】
取得部３１０は、複数の撮像装置２０及び２２で撮像された複数の画像を取得する。取得部３１０は、取得した複数の画像を抽出部３２０に供給する。
【００１２】
抽出部３２０は、複数の画像の一部から障害物の候補となる障害物候補を抽出する。例えば、抽出部３２０は、複数の画像の一つの画像（例えば、撮像装置２０からの画像）において、輝度等の特徴が周辺と異なる領域を障害物候補として抽出してよい。抽出部３２０は、抽出した障害物候補を検出部３３０に供給する。
【００１３】
検出部３３０は、複数の画像から移動体１に対して立ち上がり部分を有する物体を検出する。例えば、検出部３３０は、複数の画像のうち障害物候補の抽出に用いなかった画像（例えば、撮像装置２２からの画像）から、抽出された障害物候補に類似する領域を検出し、これを複数の撮像装置に共通して撮像された同一の障害物候補に対応する同一被写体として特定する。
【００１４】
そして、検出部３３０は、複数の画像における同一被写体の高さ方向の長さの相違に基づいて、同一被写体の撮像装置２０等に対する立ち上がり部分を検出する。検出部３３０による立ち上がり部分の具体的な検出方法は後述する。検出部３３０は、複数の画像で特定した同一被写体を距離算出部３４０に供給し、同一被写体について立ち上がり部分を検出したか否かの情報を判定部３５０に供給する。
【００１５】
距離算出部３４０は、複数の画像の視差量に基づいて、同一被写体までの距離を算出する。例えば、距離算出部３４０は、複数の画像における同一の被写体の中心部分の高さ方向のシフト量に基づいて移動体１から同一被写体までの距離を算出する。距離算出部３４０は算出した距離を判定部３５０に供給する。
【００１６】
判定部３５０は、同一被写体が立ち上がり部分を有するかの判定結果に基づいて、同一被写体が障害物であるか否かを判定する。例えば、判定部３５０は、複数の画像における障害物候補の同一被写体のうち、予め定められた高さ以上の立ち上がり部分を有する同一被写体を障害物と判定する。判定部３５０は、判定結果を出力部３６０に供給する。
【００１７】
出力部３６０は、判定部３５０による判定結果を出力する。例えば、出力部３６０は、移動体１のディスプレイに検出した障害物を表示して、搭乗者に障害物の存在を警告してよい。
【００１８】
このように検出装置３０は、異なる高さに設けられた複数の撮像装置２０等の画像中の同一被写体の視差に加えて／代えて、同一被写体の高さ方向の長さの相違を用いて障害物を判定する。同一被写体が遠方にある場合、同一被写体の高さ方向の長さの相違は同一被写体の視差よりも画像上で検出しやすいので、検出装置３０は、同一被写体の視差のみを用いる場合と比較して、遠方の物体が移動体１の障害物となるかをより正確に判定することができる。これにより、検出装置３０は移動体１の安全な移動を可能にする。
【００１９】
図２〜３は、本実施形態の検出装置３０の検出原理の概略を示す。図２は、高位置側（高さＰＨ）の撮像装置２０及び低位置側（高さＰＬ｜ＰＬ＜ＰＨ）の撮像装置２２が、高さＨを有し垂直（例えば、地面又は撮像装置２０等に対し垂直）に立ち上がった同一被写体１００を撮像する様子を示す。図中で撮像装置２０の画像中の同一被写体１００の高さ方向の長さはＶＨで示され、撮像装置２２の画像中の同一被写体１００の高さ方向の長さはＶＬで示される。
【００２０】
撮像装置２０及び撮像装置２２の画像中において長さＶＨと長さＶＬは略同じ長さとなる。すなわち、同一被写体１００が移動体１に対して立ち上がり部分を有する場合、複数の画像中の当該同一被写体１００の画像中の高さ方向の長さはほぼ同じとなる。
【００２１】
図３（ａ）は、高位置側（高さＰＨ）の撮像装置２０及び（高さＰＬ｜ＰＬ＜ＰＨ）低位置側の撮像装置２２が、奥行Ｄを有し水平方向（例えば、地面に対して平行又は撮像装置２０等に対して水平）に沿って設けられる同一被写体１００'を撮像する様子を示す。撮像装置２０の画像中の同一被写体１００'の高さ方向の長さはＶＨで示され、撮像装置２２の画像中の同一被写体１００の高さ方向の長さはＶＬで示される。
【００２２】
図示するように、撮像装置２０及び撮像装置２２の画像中において長さＶＨは長さＶＬより大きくなる。すなわち、同一被写体１００'が水平に配置されて移動体１に対して立ち上がり部分を有しない場合、高位置側の撮像装置２０が同一被写体１００'を撮像した際の高さ方向（縦方向）の長さは、低位置側の撮像装置２２が撮像した長さより大きくなる。
【００２３】
図３（ｂ）は、図３（ａ）の同一被写体１００'付近の拡大図を示す。図示するように、長さＶＨは図３（ｂ）の右側の矢印の長さＤＨと比例し、長さＶＬは図３（ｂ）の左側の矢印の長さＤＬと比例する。ここで、長さＤＨはＤＰＨ／Ｚとなり、長さＤＬはＤＰＬ／Ｚとなる。従って、複数の画像中の同一被写体１００'の高さ方向の長さ比ＶＨ：ＶＬは、撮像装置２０及び撮像装置２２の高さ比ＰＨ：ＰＬと等しくなる。
【００２４】
例えば、撮像装置２０及び撮像装置２２の高さ比が３：１であれば、高さ方向の長さ比ＶＨ：ＶＬも３：１となる。同一被写体１００'が遠方にある場合は同一被写体１００'の視差は数ピクセル以下と非常に小さくなる可能性があるが、長さ比ＶＨ：ＶＬも３：１は常に一定なので、同一被写体１００'の立ち上がりは視差に比べて検出しやすい。
【００２５】
これにより、検出部３３０は、複数の画像における同一被写体の高さ方向の長さに相違があれば、同一被写体の主要な面が撮像装置２０等の光軸と略平行な方向（すなわち水平方向）に沿って存在する状態であり、撮像装置２０等に対して立ち上がり部分を有しないと判断する。
【００２６】
また、検出部３３０は、複数の画像における同一被写体の高さ方向の長さに相違がなければ、同一被写体の主要な面が撮像装置２０等の光軸と略垂直な方向（すなわち鉛直方向）に沿って存在する状態であり、撮像装置２０等に対して立ち上がり部分を有すると判断する。
【００２７】
図４は、本実施形態の検出装置３０の処理のフローを示す。検出装置３０は、Ｓ１１０からＳ１６０までの処理を実行することにより、移動体１の障害物を検出する。
【００２８】
まず、Ｓ１１０において、取得部３１０は、異なる高さに設けられた複数の撮像装置２０及び２２で撮像された複数の画像を取得する。例えば、取得部３１０は、撮像装置２０及び２２のそれぞれが撮像したデジタル画像を取得する。取得部３１０は、撮像装置２０等から動画及び／又は静止画を取得してよい。
【００２９】
取得部３１０は、垂直方向に並ぶ複数の撮像装置２０等から複数の画像を取得してもよく、これに代えて、斜め方向（例えば、地面又は撮像装置２０等に対して斜め方向）に並ぶ複数の撮像装置２０等から複数の画像を取得してもよい。また、取得部３１０は、高さの異なる少なくとも２個の撮像装置のそれぞれから複数の画像を取得してよい。取得部３１０は、取得した複数の画像を抽出部３２０に供給する。
【００３０】
次に、Ｓ１２０において、抽出部３２０は、複数の画像から障害物の候補となる障害物候補を抽出する。例えば、抽出部３２０は、関心領域（ＲＯＩ：Ｒｅｇｉｏｎ  ｏｆ  Ｉｎｔｅｒｅｓｔ）を自動抽出する既存の手法を用いて、複数の画像の一つの画像（例えば、撮像装置２０からの画像）から障害物候補を抽出する。
【００３１】
一例として、抽出部３２０は、撮像装置２０からの画像を、複数のスーパーピクセル（複数の画素を含み、含まれる画素の色等の特徴が類似する所定の大きさ／形状の領域）に分割し、複数のスーパーピクセルのうち周囲と輝度及び／又は色度等の特徴が基準以上異なるものを障害物候補として抽出してよい。抽出部３２０は、抽出した障害物候補を検出部３３０に供給する。
【００３２】
次に、Ｓ１３０において、検出部３３０は、障害物候補の立ち上がり部分を検出する。例えば、まず検出部３３０は、複数の画像における同一被写体を特定する。具体的には、検出部３３０は、複数の画像のうちＳ１２０で障害物候補の抽出に使用していない画像（例えば、撮像装置２２からの画像）から、抽出された障害物候補に類似する領域を同一被写体とする。
【００３３】
その後、検出部３３０は、複数の画像における同一被写体に対応する領域の高さ方向の長さの比ＶＨ：ＶＬ及び複数の撮像装置２０等の高さの比ＰＨ：ＰＬに基づいて、立ち上がり部分を検出する。検出部３３０は、複数の画像における同一被写体の対応関係を距離算出部３４０に供給し、同一被写体について立ち上がり部分を検出したか否かの情報を判定部３５０に供給する。
【００３４】
次に、Ｓ１４０において、距離算出部３４０は、複数の画像の視差量に基づいて、同一被写体までの距離を算出する。例えば、距離算出部３４０は、高さ方向における複数の画像の視差量に基づいて、移動体１から同一被写体までの距離を算出する。一例として、距離算出部３４０は、複数の撮像装置の焦点距離及び相対位置、並びに複数の画像における対応関係を有する同一被写体の視差を利用し、三角測量により、撮像装置位置から障害物候補までの距離ｚを算出する。
【００３５】
高さ方向の視差量を用いることに代えて／加えて、移動体１が水平方向に設けられた複数の撮像装置を有する場合（例えば、水平な底辺を有する三角形の各頂点位置に撮像装置を設ける場合等）、距離算出部３４０は、水平方向における複数の画像の視差量に基づいて、同一被写体までの距離ｚを算出してよい。
【００３６】
これにより、縦方向に十分に離隔して複数の撮像装置２０等を配置できない場合等でも横方向に十分に離隔して撮像装置を設置することで、距離算出部３４０は、大きな視差量の視差画像を得ることができ、より正確に距離ｚを算出することができる。距離算出部３４０は、算出した同一被写体までの距離ｚを判定部３５０に供給する。
【００３７】
次に、Ｓ１５０において、判定部３５０は、同一被写体が移動体１の走行の障害となる障害物となるか否かを判定する。例えば、判定部３５０は、複数の画像で検出された同一被写体のうち立ち上がり部分を有するものを選択する。次に、判定部３５０は、選択した同一被写体の距離及び高さ方向の長さ、並びに撮像装置の焦点距離を用いて、立ち上がり部分の実際の高さｈを推定する。その後、判定部３５０は、推定した高さｈに基づき、同一被写体が障害物であるか否かを判定する。例えば、判定部３５０は、選択した同一被写体のうち、推定した高さｈが予め定められた閾値以上であるものを障害物と判定してよい。
【００３８】
ここで、判定部３５０による具体的な処理の一例を説明する。まず、判定部３５０は、障害物候補の距離ｚ［ｍ］及び一の画像中における障害物の高さ方向の長さＶＨ［ｐｉｘｅｌ］及び一の画像を撮像した撮像装置の焦点距離ｆ［ｐｉｘｅｌ］を用いて、障害物候補の実際の高さをｈ＝ｚＶＨ／ｆ［ｍ］として算出する。
【００３９】
次に、判定部３５０は、算出した高さｈを用いて障害物候補が移動体１の走行の障害となり得るかどうか、すなわち障害物であるか否か判定する。例えば、高さｈの閾値をＴｈ（例えば０．１［ｍ］）としてｈ＞Ｔｈの場合、判定部３５０は、障害物候補を障害物と判定する。
【００４０】
ここで、判定部３５０は、距離算出部３４０が算出した距離を用いず、立ち上がり部分を有する同一被写体を全て障害物と判定してもよい。判定部３５０は、判定結果を出力部３６０に供給する。
【００４１】
次に、Ｓ１６０において、出力部３６０は、判定部３５０による判定結果を出力する。例えば、出力部３６０は、移動体１の搭乗者用のディスプレイに検出した障害物の方向、及び／又は、障害物までの距離等を表示して、搭乗者に障害物の存在を警告してよい。また、出力部３６０は、移動体１に設けられたヘッドアップディスプレイに障害物の位置及び距離等を表示してもよい。
【００４２】
図５は、図４のＳ１３０の具体的な処理フローを示す。検出部３３０は、Ｓ１３１〜Ｓ１３９までの処理を実行することにより、Ｓ１３０の処理を遂行してよい。
【００４３】
検出部３３０では、複数の画像における同一被写体の高さ方向の長さの比ＶＨ：ＶＬに基づいて、立ち上がり部分を検出する。そのために、まず、検出部３３０は複数の画像中の同一被写体を特定する必要がある。複数の画像中の同一被写体の特定は容易ではないため、一例として、二つの撮像装置から同時に得られる二つの画像を使って、高さ方向の長さの比ｒ＝ＶＬ／ＶＨの算出と同時に同一被写体の特定を実施する方法を以下に示す。
【００４４】
まず、Ｓ１３１で、検出部３３０は、ｉ＝０をセットする。
【００４５】
次に、Ｓ１３２で、検出部３３０は、上側の撮像装置（撮像装置２０）で得られた画像から、抽出部３２０により抽出された障害物候補の画像を基準とし、高さ方向にｓ倍に縮小したテンプレート画像を作成するための倍率ｓを生成する。ｓは［ＰＬ／ＰＨ，１．０］の範囲でその両端を含む複数通りの離散値であり、例えばｓ＝ＰＬ／ＰＨ＋ｉ×ｄであってよい。例えば、ｉは１〜ｎ−１の整数値のうち検出部３３０がセットした値を取り、ｄは（１−ＰＬ／ＰＨ）／（ｎ−１）であってよい。これにより、ｓは、ＰＬ／ＰＨ、ＰＬ／ＰＨ＋ｄ、ＰＬ／ＰＨ＋２ｄ、・・・、ＰＬ／ＰＨ＋（ｎ−２）ｄ、１のｎ通りの値となる。ｉ＝０にセットされている場合、検出部３３０は倍率ｓとしてＰＬ／ＰＨを生成する。
【００４６】
次に、Ｓ１３３で、検出部３３０は、倍率ｓを用いて抽出部３２０により抽出された障害物候補の画像を基準とし、高さ方向にｓ倍に縮小したテンプレート画像を作成する。
【００４７】
次に、Ｓ１３４で、検出部３３０は、複数の画像のうちＳ１２０において下側の撮像装置（撮像装置２２）で得られた別の画像に対して、前記のｓ倍に縮小したテンプレート画像のテンプレート・マッチングを行い、別の画像中の最も適合した位置でのテンプレート画像との適合度ｍｓを算出する。
【００４８】
前記Ｓ１３４のテンプレート・マッチングにおいて、検出部３３０は、テンプレート画像を別の画像の全体に対して走査し、それぞれの位置で適合度を算出する。画像全体について適合度を算出した後、その中から最も適合度が高い位置を検出し、その適合度をｍｓとする。ここで、検出部３３０は、適合度の算出のために、正規化相互相関（Ｎｏｒｍａｌｉｚｅｄ  Ｃｒｏｓｓ−Ｃｏｒｒｅｌａｔｉｏｎ）またはＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）相違度などを使用してよい。
【００４９】
Ｓ１３５において、検出部３３０は、ｉ＜ｎとなるか否かの判断を行う。ｉ＜ｎと判断した場合、検出部３３０はｉに１を追加して処理をＳ１３２に戻す。これにより、検出部３３０は、Ｓ１３２〜Ｓ１３４の倍率ｓの生成及びテンプレート・マッチングの処理をｎ通りのｓについて実施し、複数のテンプレート画像の各々を用いて複数の倍率候補の中から最大の適合度を与える倍率を算出する。ｉ＜ｎでないと判断した場合、検出部３３０は、処理をＳ１３６に進める。
【００５０】
その後、Ｓ１３６において、検出部３３０は、ｒ＝ａｒｇ  ｍａｘｓ（ｍｓ）を計算することにより、最大のｍｓを与える倍率ｓの値を、高さ方向の長さの割合ｒとして算出する。ｒは、より低い位置から撮像された画像における同一被写体に対応する領域の高さ方向の長さＶＬの、より高い位置から撮像された画像における同一被写体に対応する領域の高さ方向の長さＶＨに対する割合を示し、ＶＨ：ＶＬ＝１：ｒとなる。
【００５１】
次いで、Ｓ１３７で、検出部３３０は、ｒ及び予め定められた閾値に基づいて障害物候補が立ち上がり部分を有するか否か判断する。例えば、ｒの閾値をＴｒとする場合、検出部３３０は、ｒ＞Ｔｒとなるか否か判断する。例えば、検出部３３０は、閾値ＴｒとしてＴｒ＝（１＋ＰＬ／ＰＨ）／２を用いてよい。検出部３３０は、ｒ＞Ｔｒとなると判断する場合、処理をＳ１３９に進め、そうでない場合、処理をＳ１３８に進める。
【００５２】
Ｓ１３８において、検出部３３０は、立ち上がり部分を検出しない。
【００５３】
Ｓ１３９において、検出部３３０は、同一被写体に対応する障害物候補が図２に示すように立ち上がり部分を有すると判定する。検出部３３０は、立ち上がり部分を有すると判断した障害物候補に関して、複数の画像における同一被写体の対応関係を距離算出部３４０に供給する。
【００５４】
このように検出部３３０は、より低い位置から撮像された画像における同一被写体に対応する領域の高さ方向の長さの、より高い位置から撮像された画像における同一被写体に対応する領域の高さ方向の長さに対する割合ｒが、予め定められた閾値Ｔｒよりも大きい場合に、障害物候補となる同一被写体の撮像装置２０等に対する立ち上がり部分を検出する。
【００５５】
なお、検出部３３０は、Ｓ１３３のテンプレート・マッチングの際、複数画像中の同一被写体の特定をより正確に実施するために、別の画像においてテンプレート画像を走査する範囲（探索範囲）を、画像全体ではなくエピポーラ線付近の範囲に限定してよい。例えば、検出部３３０は、別の画像においてエピポーラ線から予め定められた距離広がる領域を、探索範囲としてよい。
【００５６】
ここで利用するエピポーラ幾何とは、二つの撮像装置の相対位置関係が既知であることに基づいた幾何制約であり、一の画像上に撮像された同一被写体の中心点が、別の画像上ではエピポールを通る直線上に拘束されるという制約を指す。例えば、垂直方向に並ぶ二つの撮像装置を使用した場合、一の画像の障害物候補の中心と同じ水平位置において、別の画像で垂直方向に延伸する線がエピポーラ線である。
【００５７】
図６は、複数の撮像装置２０及び２２が撮像した複数の画像の例を示す。ここでは、高位置側の撮像装置２０が撮像した画像を上ビューとして示し、低位置側の撮像装置２２が撮像した画像を下ビューとして示す。両画像には、道路上に位置する同一被写体である障害物候補４０２及び障害物候補４０４が含まれる。
【００５８】
障害物候補４０２は、上ビューでは高さ方向（図における上下方向）に長いが下ビューでは高さ方向に短い。従って、検出装置３０は、障害物候補４０２を、図３に示すような水平方向に沿った物体として検出する。水平方向に沿った物体は、例えば道路面に塗装された交通標識等であると考えられるので、移動体１の移動の障害物にならない可能性が高い。
【００５９】
一方で、障害物候補４０４は、上ビューでの高さ方向の長さと下ビューでの高さ方向の長さはほぼ等しい。従って、検出装置３０は、障害物候補４０４を、図２に示すような立ち上がった物体として検出する。障害物候補４０４は、道路上に放置された高さを有する物体であると考えられるので、移動体１の移動の障害物となる。
【００６０】
次に、上記実施形態の変形例として、垂直に立ち上がった被写体か水平方向に沿う被写体かの二通りだけでなく、その間の傾きを有する被写体についても考慮する場合について以下に記載する。
【００６１】
本変形例では、検出装置３０は、取得部３１０及び抽出部３２０によるＳ１１０及びＳ１２０の処理を、前述した実施形態と同様に実行してよい。
【００６２】
本変形例において、検出部３３０は、前述した実施形態と同様にＳ１３１〜Ｓ１３６を含むＳ１３０の処理を実行して、複数の画像中の同一被写体の特定、及び高さ方向の長さの比ｒの算出してよい。次に、検出部３３０は、複数の画像中の同一被写体の対応を距離算出部３４０に供給する。また、検出部３３０は、高さ方向の長さの比ｒを判定部３５０に供給する。本変形例では、検出部３３０は、立ち上がり部分を有するか否かの判断は行わない。
【００６３】
距離算出部３４０は、Ｓ１４０の処理を前述した実施形態と同様に実行してよい。
【００６４】
判定部３５０は、Ｓ１５０において、複数の画像中の同一被写体の高さ方向の長さの比ｒ及び距離ｚ及び撮像装置の高さ方向の位置ＰＨとＰＬを用いて同一被写体が障害物であるか否か判定する。例えば、判定部３５０は、長さの比ｒ（Ｓ１３６で算出される最大の適合度を与える倍率ｓ）が同一被写体までの距離に基づく閾値よりも大きい場合に、同一被写体が障害物であると判定してよい。本変形例における、同一被写体の角度θを考慮した障害物判定の原理は後述する。次に、判定部３５０は、判定結果を出力部３６０に供給する。
【００６５】
出力部３６０は、Ｓ１６０と同様に実行してよい。
【００６６】
図７は、図３（ｂ）に対応する本変形例に係る判定部３５０による障害物判定原理の概略を示す。図示するように、同一被写体１００'は角度θの傾きを有する。この場合、より高い位置から撮像された画像における同一被写体に対応する高さＶＨは図中のＤＨに比例し、ＶＨ＝αＤＨの関係がある。また、より低い位置から撮像された画像における同一被写体に対応する高さＶＬは図中のＤＬに比例し、ＶＬ＝αＤＬの関係がある。ここで、αは比例係数、ＤＨ＝Ｄｃｏｓθ（ｚｔａｎθ＋ＰＨ）／（ｚ＋ｃｏｓθ）及びＤＬ＝Ｄｃｏｓθ（ｚｔａｎθ＋ＰＨ）／（ｚ＋ｃｏｓθ）である。
【００６７】
このとき、同一被写体の高さ方向の長さの比はｒ＝ＶＬ／ＶＨ＝（ｚｔａｎθ＋ＰＬ）／（ｚｔａｎθ＋ＰＨ）であり、角度θに対して単調増加となる。角度θ＝ψ以上を障害物と判定する場合、ｒの閾値はＴｒ＝（ｚｔａｎψ＋ＰＬ）／（ｚｔａｎψ＋ＰＨ）とする。判定部３５０は、距離ｚ及び撮像装置の高さ方向の位置ＰＨとＰＬを用いて、同一被写体のまでの距離ｚに基づく閾値Ｔｒを設定し、ｒ＞Ｔｒの場合は同一被写体を障害物と判定する。以上のように、本変形例では、閾値Ｔｒは距離ｚに応じて異なる値をとる。
【００６８】
このように、本変形例の検出装置３０は、複数の画像中における同一被写体１００'の高さ方向の長さＶＨ及びＶＬ、複数の撮像装置の設置位置の高さ及び同一被写体１００'の距離及び角度基準値を用いて定められた閾値Ｔｒに基づき、同一被写体１００'が障害物か否かを判定する。これにより、本変形例の検出装置３０は、障害物が垂直に立ち上がっておらず、一定の角度で立ち上がっている場合でも、障害物の存在をより詳細な条件により検出することができ、移動体１によるより安全な移動を可能にする。
【００６９】
なお、本実施形態及び変形例において、撮像装置２０及び撮像装置２２は、異なる高さに設けられていれば足りるが、検出部３３０による立ち上がりの検出を容易にし、検出精度を向上するため、高さの比がより大きい方が好ましい。例えば、撮像装置２０及び撮像装置２２の高さの比ＰＨ：ＰＬは３：１以上であることが望ましい。
【００７０】
上記説明では、検出装置３０が道路上等に存在する移動体１の障害物を検出する場合について説明したが、検出装置３０の検出対象はこれに限られない。検出装置３０は、説明した実施形態及び変形例の手法を用いて、地面、壁、天井等の検出装置３０の周囲に存在する面上の物体が、面から立ち上がっているかを検出してよい。例えば、検出装置３０は、壁面から垂直に配置された複数の撮像装置からの画像を用いて、壁から垂直に立ち上がった部分を有する物体を検出してよい。
【００７１】
図８は、検出装置３０として機能するコンピュータ１９００のハードウェア構成の一例を示す。本実施形態に係るコンピュータ１９００は、ホスト・コントローラ２０８２により相互に接続されるＣＰＵ２０００、ＲＡＭ２０２０、グラフィック・コントローラ２０７５、及び表示装置２０８０を有するＣＰＵ周辺部と、入出力コントローラ２０８４によりホスト・コントローラ２０８２に接続される通信インターフェイス２０３０、ハードディスクドライブ２０４０、及びＣＤ−ＲＯＭドライブ２０６０を有する入出力部と、入出力コントローラ２０８４に接続されるＲＯＭ２０１０、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０を有するレガシー入出力部を備える。
【００７２】
ホスト・コントローラ２０８２は、ＲＡＭ２０２０と、高い転送レートでＲＡＭ２０２０をアクセスするＣＰＵ２０００及びグラフィック・コントローラ２０７５とを接続する。ＣＰＵ２０００は、ＲＯＭ２０１０及びＲＡＭ２０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ２０７５は、ＣＰＵ２０００等がＲＡＭ２０２０内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置２０８０上に表示させる。これに代えて、グラフィック・コントローラ２０７５は、ＣＰＵ２０００等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００７３】
入出力コントローラ２０８４は、ホスト・コントローラ２０８２と、比較的高速な入出力装置である通信インターフェイス２０３０、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０を接続する。通信インターフェイス２０３０は、有線又は無線によりネットワークを介して他の装置と通信する。また、通信インターフェイスは、通信を行うハードウェアとして機能する。ハードディスクドライブ２０４０は、コンピュータ１９００内のＣＰＵ２０００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ２０６０は、ＣＤ−ＲＯＭ２０９５からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。
【００７４】
また、入出力コントローラ２０８４には、ＲＯＭ２０１０と、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０の比較的低速な入出力装置とが接続される。ＲＯＭ２０１０は、コンピュータ１９００が起動時に実行するブート・プログラム、及び／又は、コンピュータ１９００のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ２０５０は、フレキシブルディスク２０９０からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。入出力チップ２０７０は、フレキシブルディスク・ドライブ２０５０を入出力コントローラ２０８４へと接続するとともに、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ２０８４へと接続する。
【００７５】
ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供されるプログラムは、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、ＲＡＭ２０２０を介してコンピュータ１９００内のハードディスクドライブ２０４０にインストールされ、ＣＰＵ２０００において実行される。
【００７６】
コンピュータ１９００にインストールされ、コンピュータ１９００を検出装置３０として機能させるプログラムは、取得モジュール、抽出モジュール、検出モジュール、距離算出モジュール、判定モジュール、及び、出力モジュールを備える。これらのプログラム又はモジュールは、ＣＰＵ２０００等に働きかけて、コンピュータ１９００を、取得部３１０、抽出部３２０、検出部３３０、距離算出部３４０、判定部３５０、及び、出力部３６０としてそれぞれ機能させてよい。
【００７７】
これらのプログラムに記述された情報処理は、コンピュータ１９００に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である取得部３１０、抽出部３２０、検出部３３０、距離算出部３４０、判定部３５０、及び、出力部３６０として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ１９００の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の検出装置３０が構築される。
【００７８】
一例として、コンピュータ１９００と外部の装置等との間で通信を行う場合には、ＣＰＵ２０００は、ＲＡＭ２０２０上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス２０３０に対して通信処理を指示する。通信インターフェイス２０３０は、ＣＰＵ２０００の制御を受けて、ＲＡＭ２０２０、ハードディスクドライブ２０４０、フレキシブルディスク２０９０、又はＣＤ−ＲＯＭ２０９５等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス２０３０は、ＤＭＡ（ダイレクト・メモリ・アクセス）方式により記憶装置との間で送受信データを転送してもよく、これに代えて、ＣＰＵ２０００が転送元の記憶装置又は通信インターフェイス２０３０からデータを読み出し、転送先の通信インターフェイス２０３０又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【００７９】
また、ＣＰＵ２０００は、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０（ＣＤ−ＲＯＭ２０９５）、フレキシブルディスク・ドライブ２０５０（フレキシブルディスク２０９０）等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をＤＭＡ転送等によりＲＡＭ２０２０へと読み込ませ、ＲＡＭ２０２０上のデータに対して各種の処理を行う。そして、ＣＰＵ２０００は、処理を終えたデータを、ＤＭＡ転送等により外部記憶装置へと書き戻す。このような処理において、ＲＡＭ２０２０は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはＲＡＭ２０２０及び外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。
【００８０】
例えば、検出装置３０の記憶部は、取得部３１０、抽出部３２０、検出部３３０、距離算出部３４０、判定部３５０、及び、出力部３６０から受け取った／へ提供するデータを適宜記憶してよい。例えば、記憶部は、取得部３１０から入力されたデータを受け取って記憶してよい。また、記憶部は、検出部３３０が検出した結果及び出力部３６０が出力した結果等を記憶してよい。
【００８１】
なお、本実施形態の説明において、一の構成要素（例えば、取得部３１０）から別の構成要素（例えば、抽出部３２０）に情報（例えば、複数の画像）を供給したと記載するときは、一の構成要素から別の構成要素に直接情報を受け渡すことだけでなく、記憶部への情報の格納及び情報の読み出しを介して情報を渡すことをも含んでよい。
【００８２】
本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、ＣＰＵ２０００は、ＲＡＭ２０２０の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはＲＡＭ２０２０の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもＲＡＭ２０２０、メモリ、及び／又は記憶装置に含まれるものとする。
【００８３】
また、ＣＰＵ２０００は、ＲＡＭ２０２０から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、ＲＡＭ２０２０へと書き戻す。例えば、ＣＰＵ２０００は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすか否かを判断し、条件が成立した場合（又は不成立であった場合）に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【００８４】
また、ＣＰＵ２０００は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第１属性の属性値に対し第２属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、ＣＰＵ２０００は、記憶装置に格納されている複数のエントリの中から第１属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第２属性の属性値を読み出すことにより、所定の条件を満たす第１属性に対応付けられた第２属性の属性値を得ることができる。
【００８５】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００８６】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【００８７】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００８８】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００８９】
１  移動体、２０  撮像装置、２２  撮像装置、３０  検出装置、１００  同一被写体、３１０  取得部、３２０  抽出部、３３０  検出部、３４０  距離算出部、３５０  判定部、３６０  出力部、１９００  コンピュータ、２０００  ＣＰＵ、２０１０  ＲＯＭ、２０２０  ＲＡＭ、２０３０  通信インターフェイス、２０４０  ハードディスクドライブ、２０５０  フレキシブルディスク・ドライブ、２０６０  ＣＤ−ＲＯＭドライブ、２０７０  入出力チップ、２０７５  グラフィック・コントローラ、２０８０  表示装置、２０８２  ホスト・コントローラ、２０８４  入出力コントローラ、２０９０  フレキシブルディスク、２０９５  ＣＤ−ＲＯＭ
【図１】
0005959073.tif 000002
【図２】
0005959073.tif 000003
【図３】
0005959073.tif 000004
【図４】
0005959073.tif 000005
【図５】
0005959073.tif 000006
【図６】
0005959073.tif 000007
【図７】
0005959073.tif 000008
【図８】
0005959073.tif 000009