(57)【要約】【課題】算出された視差に関するミスマッチングを簡素な構成で、かつ、精度よく検出することにより、信頼性の高い視差を特定する。【解決手段】ステレオカメラ２は、カメラの視軸を回転軸として、この回転軸中心にカメラを回転させて互いに撮像範囲の一部が共通する景色をそれぞれ撮像することにより、第１および第２のステレオ画像データを出力する。このとき、視差決定部１２は、第１のステレオ画像データに基づき算出された第１の距離データＤ１と、第２のステレオ画像データに基づき算出された第２の距離データＤ２とにおいて、撮像範囲が対応する領域をそれぞれ処理対象とする。そして、第１の距離データＤ１を構成する第１の視差ｄ１と撮像位置的に対応する第２の距離データＤ２を構成する第２の視差ｄ２が特定される。これにより、この特定された第２の視差ｄｓｕｂに基づき、第１の距離データＤ１を構成する第１の視差ｄ１が決定される。【選択図】　図１
2004053407.tif 000002
【特許請求の範囲】
【請求項１】
ステレオ画像処理装置において、
カメラの視軸を回転軸として、当該回転軸中心に前記カメラを回転させて互いに撮像範囲の一部が共通する景色をそれぞれ撮像することにより、第１のステレオ画像データと第２のステレオ画像データとを出力するステレオカメラと、
ステレオ画像データに基づいて、ステレオマッチングにより視差を算出するとともに、一フレーム相当の画像データに関する視差群と、当該ステレオ画像データにより規定される画像平面上の座標位置とが対応付けられた距離データを出力するステレオ処理部と、
前記第１のステレオ画像データに基づき算出された第１の距離データと、前記第２のステレオ画像データに基づき算出された第２の距離データとにおいて、前記撮像範囲が対応する領域をそれぞれ処理対象として、前記第１の距離データを構成する第１の視差と撮像位置的に対応する前記第２の距離データを構成する第２の視差を特定するとともに、当該特定された第２の視差に基づき、前記第１の距離データを構成する第１の視差を決定する視差決定部と
を有することを特徴とするステレオ画像処理装置。
【請求項２】
前記第１の距離データを基準として、前記カメラの回転に起因した前記第２の距離データの相対的な座標位置のずれを幾何学的に変換する座標変換部をさらに有することを特徴とする請求項１に記載されたステレオ画像処理装置。
【請求項３】
前記ステレオカメラは、メインカメラとサブカメラとにより構成されており、前記回転軸は、前記メインカメラの光学中心線と一致することを特徴とする請求項１または２に記載されたステレオ画像処理装置。
【請求項４】
前記視差決定部は、前記第２の視差に基づき算出された実空間上の位置が、前記第１の視差に基づき算出された実空間上の位置と位置的に対応しないと判断した場合には、前記第１の視差を、前記第１の距離データを構成する視差から棄却することを特徴とする請求項１から３のいずれかに記載されたステレオ画像処理装置。
【請求項５】
前記視差決定部は、前記第２の視差が、前記第１の視差に対応しないと判断した場合には、前記第１の視差を、前記第１の距離データを構成する視差から棄却することを特徴とする請求項１から３のいずれかに記載されたステレオ画像処理装置。
【請求項６】
前記ステレオカメラは、前記カメラを回転させて、前記撮像範囲の一部が共通する景色をさらに撮像することにより、１フレーム以上のステレオ画像データを出力し、
前記視差決定部は、前記第１の距離データと、前記第２の距離データと、前記１フレーム以上のステレオ画像データに基づき算出された１フレーム以上の距離データとにおいて、前記撮像範囲が対応する領域をそれぞれ処理対象として、前記第１の視差と撮像位置的に対応する前記１フレーム以上の距離データを構成する視差を特定するとともに、前記第１の視差と、前記第２の視差と、前記特定された視差とに基づき、前記第１の距離データを構成する第１の視差を決定することを特徴とする請求項１から５のいずれかに記載されたステレオ画像処理装置。
【請求項７】
ステレオ画像処理方法において、
第１のステレオ画像データを出力する第１のステップと、
カメラの視軸を回転軸として、当該回転軸中心に撮像範囲が回転されて、前記第１のステレオ画像データによって規定される撮像範囲の一部を含む景色が撮像された第２のステレオ画像データを出力する第２のステップと、
ステレオ画像データに基づいて、ステレオマッチングにより視差を算出するとともに、一フレーム相当の画像データに関する視差群と、当該ステレオ画像データにより規定される画像平面上の座標位置とが対応付けられた距離データを出力する第３のステップと、
前記第１のステレオ画像データに基づき算出された第１の距離データと、前記第２のステレオ画像データに基づき算出された第２の距離データとにおいて、前記撮像範囲が対応する領域をそれぞれ処理対象として、前記第１の距離データを構成する第１の視差と撮像位置的に対応する前記第２の距離データを構成する第２の視差を特定するとともに、当該特定された第２の視差に基づき、前記第１の距離データを構成する第１の視差を決定する第４のステップと
を有することを特徴とするステレオ画像処理方法。
【請求項８】
前記第１の距離データを基準として、前記撮像範囲の回転に起因した前記第２の距離データの相対的な座標位置のずれを幾何学的に変換するステップをさらに有することを特徴とするステレオ画像処理方法。
【請求項９】
前記第４のステップは、前記第２の視差に基づき算出された実空間上の位置が、前記第１の視差に基づき算出された実空間上の位置と位置的に対応しないと判断した場合には、前記第１の視差を、前記第１の距離データから構成する視差から棄却することを特徴とする請求項７または８に記載されたステレオ画像処理方法。
【請求項１０】
前記第４のステップは、前記第２の視差が、前記第１の視差に対応しないと判断した場合には、前記第１の視差を、前記第１の距離データを構成する視差から棄却することを特徴とする請求項７または８に記載されたステレオ画像処理方法。
【請求項１１】
前記撮像範囲をさらに回転させて、前記撮像範囲の一部を含む景色が撮像された１フレーム以上のステレオ画像データを出力するステップをさらに有し、
前記第４のステップは、前記第１の距離データと、前記第２の距離データと、前記１フレーム以上のステレオ画像データに基づき算出された１フレーム以上の距離データとにおいて、前記撮像範囲が対応する領域をそれぞれ処理対象として、前記第１の視差と撮像位置的に対応する前記１フレーム以上の距離データを構成する視差を特定するとともに、前記第１の視差と、前記第２の視差と、前記特定された視差とに基づき、前記第１の距離データを構成する第１の視差を決定することを特徴とする請求項７から１０のいずれかに記載されたステレオ画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般に、ステレオ画像処理装置およびステレオ画像処理方法に係り、特に、ステレオ画像処理におけるミスマッチングを検出する装置および方法に関する。
【０００２】
【従来の技術】
近年、撮像画像に写し出された対象物の認識を行うために、一対の撮像画像を用いて対象物の距離（すなわち視差）を算出するステレオ画像処理装置が知られている。このステレオ画像処理装置は、ステレオカメラから取得した一対の撮像画像に基づき、この一対の撮像画像に写し出された同一対象物に関する位置的なずれ量、すなわち視差を算出する。この視差算出に関する処理では、一方の撮像画像（基準画像）中にある画素ブロック、すなわち、基準画像の一部を構成する小領域毎の画素群に関して、その相関先を他方の撮像画像（比較画像）において特定する、所謂、ステレオマッチングが用いられる。そして、対象物に関して算出された視差に基づいて、対象物の実空間上の距離が一義的に算出される。
【０００３】
対象物の認識では、対象物の実空間上の距離を正確に把握することは重要であるが、その距離算出パラメータである視差を精度よく算出することはより重要である。しかしながら、ステレオ画像処理では、本来相関先とされるべき領域以外の領域を比較画像において特定してしまうことがある（ミスマッチング）。そこで、算出された視差に関し、ミスマッチングの判別を行う様々な手法が提案されている。ミスマッチング判別手法の一例としては、算出された視差が、周囲の画素ブロックに関して算出された視差と大きく異なる場合には、その視差を無効とするといった如くである。また、別の一例としては、３台以上のカメラ（すなわち、一つのカメラを共有する２組以上のステレオ画像処理装置）を用いて、算出された視差の値をそれぞれ比較することにより、ミスマッチングを検出するといった如くである。
【０００４】
【発明が解決しようとする課題】
しかしながら、従来の技術において、前者の例では、例えば、周囲の画素ブロックがまとめて同じようにミスマッチングする状況では、ミスマッチングの特定が難しい。また、後者の例では、２組以上のステレオカメラを有するため、装置の大規模化・複雑化につながる可能性がある。また、同一輝度が水平方向に連続的に並ぶ画像では、視差自体の算出が困難となる場合もある。
【０００５】
本発明は、このような事情に鑑みてなされたものであり、その目的は、算出された視差に関するミスマッチングを簡素な構成で、かつ、精度よく検出することにより、信頼性の高い視差を特定することである。
【０００６】
また、本発明の別の目的は、ミスマッチングを特定することで、より正確な距離測定を行い、対象物の認識精度向上を図ることである。
【０００７】
【課題を解決するための手段】
かかる課題を解決するために、第１の発明は、ステレオ画像処理装置において、ステレオカメラと、ステレオ画像処理部と、視差決定部とを有するステレオ画像処理装置を提供する。かかるステレオ画像処理装置において、ステレオカメラは、カメラの視軸を回転軸として、この回転軸中心にカメラを回転させて互いに撮像範囲の一部が共通する景色をそれぞれ撮像する。これにともない、第１のステレオ画像データと第２のステレオ画像データとが出力される。また、ステレオ画像処理部は、ステレオ画像データに基づいて、ステレオマッチングにより視差を算出する。また、ステレオ画像処理部は、一フレーム相当の画像データに関する視差群と、ステレオ画像データにより規定される画像平面上の座標位置とが対応付けられた距離データを出力する。視差決定部は、第１のステレオ画像データに基づき算出された第１の距離データと、第２のステレオ画像データに基づき算出された第２の距離データとにおいて、撮像範囲が対応する領域をそれぞれ処理対象とする。そして、第１の距離データを構成する第１の視差と撮像位置的に対応する第２の距離データを構成する第２の視差が特定される。これにより、この特定された第２の視差に基づき、第１の距離データを構成する第１の視差が決定される。
【０００８】
ここで、第１の発明において、第１の距離データを基準として、カメラの回転に起因した第２の距離データの相対的な座標位置のずれを幾何学的に変換する座標変換部をさらに有することが好ましい。
【０００９】
また、第１の発明において、ステレオカメラは、メインカメラとサブカメラとにより構成されていることが好ましい。このとき、回転軸は、メインカメラの光学中心線と一致することが望ましい。
【００１０】
また、第１の発明において、視差決定部は、第２の視差に基づき算出された実空間上の位置が、第１の視差に基づき算出された実空間上の位置と位置的に対応しないと判断した場合には、第１の視差を、第１の距離データを構成する視差から棄却することが好ましい。あるいは、視差決定部は、第２の視差が、第１の視差に対応しないと判断した場合には、第１の視差を、第１の距離データを構成する視差から棄却することを好ましい。
【００１１】
さらに、第１の発明において、ステレオカメラは、カメラを回転させて、撮像範囲の一部が共通する景色をさらに撮像することにより、１フレーム以上のステレオ画像データを出力することが好ましい。このとき、視差決定部は、第１の距離データと、第２の距離データと、１フレーム以上のステレオ画像データに基づき算出された１フレーム以上の距離データとにおいて、撮像範囲が対応する領域をそれぞれ処理対象とする。そして、第１の視差と撮像位置的に対応する１フレーム以上の距離データを構成する視差を特定するとともに、前記第１の視差と、第２の視差と、特定された視差とに基づき、第１の距離データを構成する第１の視差を決定することが好ましい。
【００１２】
また、第２の発明は、ステレオ画像処理方法において、以下に示す４つのステップを有するステレオ画像処理方法を提供する。このステレオ画像処理方法において、第１のステップは、第１のステレオ画像データを出力する。第２のステップは、カメラの視軸を回転軸として、この回転軸中心に撮像範囲が回転されて、第１のステレオ画像データによって規定される撮像範囲の一部を含む景色が撮像された第２のステレオ画像データを出力する。第３のステップは、ステレオ画像データに基づいて、ステレオマッチングにより視差を算出するとともに、一フレーム相当の画像データに関する視差群と、ステレオ画像データにより規定される画像平面上の座標位置とが対応付けられた距離データを出力する。第４のステップは、第１のステレオ画像データに基づき算出された第１の距離データと、第２のステレオ画像データに基づき算出された第２の距離データとにおいて、撮像範囲が対応する領域をそれぞれ処理対象とする。このとき、第１の距離データを構成する第１の視差と撮像位置的に対応する第２の距離データを構成する第２の視差が特定される。そして、この特定された第２の視差に基づき、第１の距離データを構成する第１の視差が決定される。
【００１３】
ここで、第２の発明は、第１の距離データを基準として、撮像範囲の回転に起因した第２の距離データの相対的な座標位置のずれを幾何学的に変換するステップをさらに有することが好ましい。
【００１４】
また、第２の発明において、第４のステップは、第２の視差に基づき算出された実空間上の位置が、第１の視差に基づき算出された実空間上の位置と位置的に対応しないと判断した場合には、第１の視差を、第１の距離データから構成する視差から棄却することが好ましい。あるいは、第４のステップは、第２の視差が、第１の視差に対応しないと判断した場合には、第１の視差を、第１の距離データを構成する視差から棄却することが好ましい。
【００１５】
また、第２の発明において、さらなるステップとして、撮像範囲をさらに回転させて、撮像範囲の一部を含む景色が撮像された１フレーム以上のステレオ画像データを出力することが好ましい。このとき、上述した第４のステップは、第１の距離データと、第２の距離データと、１フレーム以上のステレオ画像データに基づき算出された１フレーム以上の距離データとにおいて、撮像範囲が対応する領域をそれぞれ処理対象とする。そして、第１の視差と撮像位置的に対応する１フレーム以上の距離データを構成する視差を特定する。さらに、第１の視差と、第２の視差と、特定された視差とに基づき、第１の距離データを構成する第１の視差を決定することが好ましい。
【００１６】
【発明の実施の形態】
図１は、本実施形態にかかるステレオ画像処理装置１のブロック構成図である。本実施形態にかかるステレオ画像処理装置１は、一例として、屋内外で用いられる移動ロボットに搭載される。このステレオ画像処理装置１は、一対のステレオ画像データを用いてステレオ画像処理を行うとともに、この処理された情報に基づき、ロボット前方の監視領域内の状況を監視する。
【００１７】
監視領域を含む景色を撮像するステレオカメラ２は、例えば、移動ロボットの頭部に、カメラ台（図示せず）を介して取り付けられている。このカメラ台にはサーボモータ３が接続されており、サーボモータ３は後段のマイクロコンピュータ１０からの指示に基づき、カメラ台を動作させるべく駆動する。サーボモータ３の駆動に伴いカメラ台が動作することで、ステレオカメラ２は、カメラの視軸を回転軸として、この回転軸中心に回転させられる。
【００１８】
図２は、ステレオカメラの回転状態を示した説明図である。同図に示すように、本実施形態では、この回転軸は、一方のカメラ（本実施形態では、後述するメインカメラ２ａ）の光学中心線と一致している。この光学中心線を基準にステレオカメラ２を回転させた場合、一方のカメラは光学中心線上で軸回転するとともに、他方のカメラはカメラ基線長を半径とした円周方向に移動させられる。このとき、ステレオカメラ２で監視領域を含む景色を撮像したのならば、回転前後において、この回転軸中心に撮像範囲が回転されることとなる。このような構成において、ステレオカメラ２は、様々な角度での撮像を可能とされ、本実施形態との関係では、互いに撮像範囲の一部が共通する少なくとも２フレーム以上のステレオ画像データを出力する。
【００１９】
ステレオカメラ２は、一対のカメラ２ａ，２ｂで構成されており、それぞれのカメラ２ａ，２ｂには、イメージセンサ（例えば、ＣＣＤまたはＣＭＯＳセンサ等）が内蔵されている。メインカメラ２ａは、ステレオ画像処理を行う際に必要な基準画像（右画像）を撮像し、サブカメラ２ｂは、比較画像（左画像）を撮像する。互いの同期が取れている状態において、カメラ２ａ，２ｂから出力された各アナログ画像は、Ａ／Ｄコンバータ４，５により、所定の輝度階調（例えば、２５６階調のグレースケール）のデジタル画像に変換される。
【００２０】
デジタル化された一対の画像データは、画像補正部６において、輝度の補正や画像の幾何学的な変換等が行われる。通常、一対のカメラ２ａ，２ｂの取付位置は、程度の差はあるものの誤差が存在するため、それに起因したずれが左右の各画像に生じている。このずれを補正するために、アフィン変換等を用いて、画像の回転や平行移動等の幾何学的な変換が行われる。数式１は、アフィン変換の基本形を示す。なお、本明細書では、「アフィン変換」という用語を、画像データを回転、移動または拡大・縮小する幾何学的な座標変換を総称する意味で用いる。
【数１】
2004053407.tif 000003
【００２１】
この数式において、（ｉ，ｊ）は変換前の画像データの座標であり、（ｉ’，ｊ’）は変換後の画像データの座標である。また、アフィンパラメタＳＨＦＴＩ，ＳＨＦＴＪはそれぞれ、ｉ方向（画像の水平方向）への移動、ｊ方向（画像の垂直方向）への移動を表している。また、アフィンパラメータθ，Ｋはそれぞれθの回転、Ｋ倍の角度（｜Ｋ｜＜１の場合は縮小）を示している。
【００２２】
このような画像処理を経て、メインカメラ２ａより基準画像データが得られ、サブカメラ２ｂより比較画像データが得られる。これらの画像データ（ステレオ画像データ）は、各画素の輝度値（０〜２５５）の集合である。ここで、画像データによって規定される画像平面は、ｉ−ｊ座標系で表現され、画像の左下隅を原点として、水平方向をｉ座標軸、垂直方向をｊ座標軸とする。一フレーム（一画像の表示単位）相当のステレオ画像データは、後段のステレオ画像処理部７と、画像データメモリ８とに出力される。
【００２３】
ステレオ画像処理部７は、基準画像データと比較画像データとに基づいて、一フレーム相当の撮像画像に関する距離データを算出する。ここで、「距離データ」とは、画像データによって規定される画像平面において小領域毎に算出された視差ｄの集合であり、個々の視差ｄは画像平面上の位置（ｉ，ｊ）と対応付けられている。それぞれの視差ｄは、基準画像の一部を構成する所定面積（例えば、４×４画素）の画素ブロック毎に１つ算出される。
【００２４】
図３は、基準画像に設定される画素ブロックの説明図である。例えば、基準画像が２００×５１２画素で構成されている場合、一フレーム相当の撮像画像から、画素ブロックＰＢｉｊの個数相当（５０×１２８個）の視差群が算出され得る。周知のように、視差ｄは、その算出単位である画素ブロックＰＢｉｊに関する水平方向のずれ量であり、画素ブロックＰＢｉｊに写し出された対象物までの距離と大きな相関がある。すなわち、画素ブロックＰＢｉｊ内に写し出されている対象物がカメラ２ａ，２ｂに近いほど、この画素ブロックＰＢｉｊの視差ｄは大きくなり、対象物が遠いほど視差ｄは小さくなる（無限に遠い場合、視差ｄは０になる）。
【００２５】
ある画素ブロックＰＢｉｊ（相関元）に関する視差ｄを算出する場合、この画素ブロックＰＢｉｊの輝度特性と相関を有する領域（相関先）を比較画像において特定する。上述したように、カメラ２ａ，２ｂから対象物までの距離は、基準画像と比較画像との間における水平方向のずれ量として現れる。したがって、比較画像において相関先を探索する場合、相関元となる画素ブロックＰｉｊのｊ座標と同じ水平線（エピポーラライン）上を探索すればよい。ステレオ画像処理部７は、相関元のｉ座標を基準に設定した所定の探索範囲内において、エピポーラライン上を一画素ずつシフトしながら、相関元と相関先の候補との間の相関性を順次評価する（ステレオマッチング）。そして、原則として、最も相関が高いと判断される相関先（相関先の候補の内のいずれか）の水平方向のずれ量を、その画素ブロックＰＢｉｊの視差ｄとする。
【００２６】
２つの画素ブロックの相関は、例えば、シティブロック距離ＣＢを算出することにより評価することができる。数式２は、シティブロック距離ＣＢの基本形を示す。同数式において、ｐ１ｉｊは一方の画素ブロックのｉｊ番目の画素の輝度値であり、ｐ２ｉｊは他方の画素ブロックのｉｊ番目の輝度値である。シティブロック距離ＣＢは、位置的に対応した輝度値ｐ１ｉｊ，ｐ２ｉｊの差（絶対値）の画素ブロック全体における総和であって、その差が小さいほど両画素ブロックの相関が大きいことを意味している。
【数２】
2004053407.tif 000004
【００２７】
基本的に、エピポーラライン上に存在する画素ブロック毎に算出されたシティブロック距離ＣＢのうち、その値が最小となる画素ブロックが相関先と判断される。このようにして特定された相関先と相関元との間のずれ量が視差ｄとなる。なお、シティブロック距離ＣＢを算出するステレオ画像処理部７のハードウェア構成については、特開平５−１１４０９９号公報に開示されているので、必要ならば参照されたい。このような処理を経て算出された距離データ、すなわち、画像上の位置（ｉ，ｊ）と対応付けられた視差ｄの集合は、距離データメモリ９に出力される。
【００２８】
マイクロコンピュータ１０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、入出力インターフェース等で構成されているが、これを機能的に捉えた場合、座標変換部１１，視差決定部１２、認識部１３および制御部１４を有する。マイクロコンピュータ１０は、後述する視差決定処理に際し、カメラ２ａ，２ｂを回転させて互いに撮像範囲の一部が共通する景色が撮像された２フレームのステレオ画像データに基づきそれぞれ算出された２フレーム相当の距離データを用いる。以下、本明細書では、これらの距離データのうち一方の距離データを「第１の距離データＤ１」と称し、また、他方の距離データを「第２の距離データＤ２」と称する。また、マイクロコンピュータ１０は、上述したサーボモータ３からの出力に基づき、現在のステレオカメラ２の回転角θ（すなわち、ある基準方向（例えば、水平面）とカメラ基線とのなす角度）を把握している。
【００２９】
座標変換部１１は、距離データメモリ９から第１の距離データＤ１、および、第２の距離データＤ２を順次読み出す。このとき、座標変換部１１は、読み出された距離データのうち、例えば、第２の距離データＤ２を処理対象として、カメラ２ａ，２ｂの回転に起因した座標位置のずれを、上述したアフィン変換等を用いて、幾何学的に変換する。この変換により、第１の距離データＤ１を基準として、ステレオカメラ２の回転に起因した第２の距離データＤ２の相対的な座標位置のずれが補正される。
【００３０】
視差決定部１２は、座標変換部１１から出力される第１および第２の距離データＤ１，Ｄ２を処理対象として、距離データ（本実施形態では、第１の距離データＤ１）を構成する視差ｄを決定する。本実施形態の主な特徴は、距離データを構成する視差ｄを決定する処理にあり、その詳細な手法については後述する。この処理を経て、これら２フレーム相当の距離データのうち、第１の距離データＤ１が、認識部１３に対して出力される。
【００３１】
認識部１３は、取得した第１の距離データＤ１に基づき、監視領域内の状況を認識する。ただし、認識部１３は、監視領域内の状況認識にあたって、適宜、画像データメモリ８に格納された画像データ（例えば、第１の距離データＤ１に対応するステレオ画像データ）を用いることもできる。制御部１４は、認識部１３による認識結果に基づいて、必要に応じてモニタやスピーカー等の警報装置を作動させて、周囲に注意を促す。また、必要に応じて制御装置を制御することにより、進行方向の変更、或いは、ブレーキの作動といった制御が実行される。
【００３２】
図４および図５は、本実施形態にかかる視差決定処理の手順を示したフローチャートである。なお、このフローチャートに示したルーチンは、適宜呼び出され、マイクロコンピュータ１０によって実行される。まず、ステップ１において、ステレオカメラ２の回転量を指定する変数θｒｅｖとして、０がセットされる（初期化）。そして、ステップ２において、座標変換部１１は、距離データメモリ９から第１の距離データＤ１を読み出す。このとき、座標変換部１１は、ステップ１で回転量θｒｅｖとして、０がセットされたことを受けて、このステップ２では、読み出された第１の距離データＤ１について、基本的に、変換処理を行わない。
【００３３】
ステップ３において、視差決定部１２は、第１の距離データＤ１を構成する全ての視差ｄ（以下、「第１の視差ｄ１」と称する場合もある）を処理対象として、実空間上の位置（ｘ，ｙ，ｚ）を算出する。この実空間上の位置（ｘ，ｙ，ｚ）は、周知の座標変換式に基づき、視差ｄ、さらにはこの視差ｄに対応付けられている座標位置（ｉ，ｊ）から一義的に特定される。実空間を表すｘｙｚ軸の座標系は、メインカメラ２ａのレンズ焦点位置を基準として、ステレオカメラ２前方の距離方向をｚ軸、地面からの高さ方向をｙ軸、ｙ軸と直交する平面内でのｚ軸との直交方向をｘ軸として定義される。
【００３４】
ステップ４において、ステレオカメラ２の回転量θｒｅｖが決定される。このステップ４では、第１の距離データＤ１とともに視差決定処理で用いられる第２の距離データＤ２を算出し得る第２のステレオ画像データの撮像に関する回転角θへの回転量として、回転量θｒｅｖが決定される。すなわち、この回転量θｒｅｖは、第１のステレオ画像データと、第２のステレオ画像データとの撮像時におけるステレオカメラ２の回転角θのなす角である。この回転量θｒｅｖは、予め設定された値を用いてもよいし、複数の既定値の中から任意の値を選択して用いるなどしてもよい。また、入力装置（図示せず）等を用いることで、移動ロボットのオペレータに対して回転量θｒｅｖの入力を促し、この入力結果に基づき回転量θｒｅｖを決定してもよい。さらに、第１の距離データＤ１に基づき、視差の分散が大きな領域（すなわち、ミスマッチングが起こっているであろう領域）を特定し、この領域を含む景色が第２のステレオ画像データとして撮像されるように、その回転量θｒｅｖを決定してもよい。
【００３５】
この特定された回転量θｒｅｖは、マイクロコンピュータ１０からサーボモータ３に対して出力される。この出力とタイミングを同期してサーボモータ３が駆動し、ステレオカメラ２が回転量θｒｅｖ相当回転させられる。このとき、ステレオカメラ２が、第１のステレオ画像データによって規定される撮像範囲の一部を含む景色を撮像することにより、第２のステレオ画像データが出力される。
【００３６】
ステップ５において、座標変換部１１は、距離データメモリ９から第２の距離データＤ２を読み出す。そして、座標変換部１１は、読み出された第２の距離データＤ２を処理対象として、決定された回転量θｒｅｖに基づき、その座標位置を変換する（ステップ６）。この変換処理では、上述した画像補正部６によって取り扱われて数式１でその基本形が示されるアフィン変換と基本的に同一の処理が行われる。この処理により、第１の距離データＤ１を基準として、ステレオカメラ２の回転（すなわち、回転量θｒｅｖ）に起因した第２の距離データＤ２の相対的な座標位置のずれが、幾何学的に変換される。この結果、第１の距離データＤ１と第２の距離データＤ２とにおいて、同一対象物に関する視差ｄは、画像平面上での座標位置が一致することとなる。
【００３７】
ステップ７において、ステップ３に示した処理と同様に、視差決定部１２は、第２の距離データＤ２を構成する全ての視差ｄ（以下、「第２の視差ｄ２」と称する場合もある）を処理対象として、周知の座標変換式に基づき、実空間上の位置（ｘ，ｙ，ｚ）を算出する。
【００３８】
ステップ８において、第１の距離データＤ１と第２の距離データＤ２とにおいて、処理対象とする領域（以下、単に「処理領域」と称する）がそれぞれ特定される。この処理領域は、両距離データＤ１，Ｄ２において撮像範囲がそれぞれ対応する領域である。第１および第２のステレオ画像データには、撮像範囲の一部が共通する景色に関する情報がそれぞれ含まれる。それ故に、これら第１および第２のステレオ画像データに基づき算出された第１および第２の距離データＤ１，Ｄ２には、同一景色を示す視差ｄがそれぞれ含まれている。両距離データＤ１，Ｄ２において、撮像範囲が対応する領域は、ステレオカメラ２の回転量θｒｅｖと、画像上の位置（ｉ，ｊ）に基づき、それぞれ一義的に特定される。なお、この処理領域は、第１および第２の距離データＤ１，Ｄ２において、撮像範囲が完全に一致する領域のみを指すものばかりでなく、その領域内に存在する特定の領域（例えば、上述した視差ｄの分散が大きな領域）のみを限定的に指すものであってもよい。
【００３９】
図６は、撮像画像の一例を示す説明図である。本実施形態において注目すべきは、第１の距離データＤ１と第２の距離データＤ２とでは、これらのデータを構成する視差ｄを算出する際のエピポーララインが異なる点である。上述したように、第１および第２の距離データＤ１，Ｄ２は、第１のステレオ画像データと第２のステレオ画像データとに関してそれぞれ算出されている。同図に示すように、第１のステレオ画像データによって規定される画像平面を基準とすると、第２のステレオ画像データによって規定される画像平面は、ステレオカメラ２の回転に起因してそれよりも傾いている。
【００４０】
したがって、画像平面上に写し出された景色を基準として考えた場合、撮像範囲が対応する領域において、第１のステレオ画像データと第２のステレオ画像データとでは、比較画像上の探索領域がそれぞれ異なることとなる。たとえば、第１のステレオ画像データには、エピポーラライン上に、似たような輝度が連続的に存在したとする（すなわち、ミスマッチングを起こし得るような領域が存在する）。一方、第２のステレオ画像データでは、探索領域が第１のステレオ画像データとは異なるため、このような領域がエピポーラライン上には存在し難い。よって、第２のステレオ画像データでは、ミスマッチングが起こり得る可能性は低くなる。すなわち、回転前後で算出される第１の距離データＤ１と第２の距離データＤ２とにおいて、どちらか一方のデータにミスマッチングデータが含まれる可能性があったとしても、他方のデータではこの影響が低減される。なお、一般に、ミスマッチングデータが存在しないのであれば、撮像範囲が対応する領域では、第１の距離データＤ１と第２の距離データＤ２とを構成する視差の値が大きく異なることはない。したがって、これら距離データＤ１，Ｄ２において、対応する領域の視差同士を評価すれば、ミスマッチングデータを検出することができるはずである。
【００４１】
そこで、本実施形態では、第１の距離データＤ１を構成する視差ｄ（第１の視差ｄ１）と撮像位置的に対応する第２の距離データＤ２を構成する視差ｄ（第２の視差ｄ２）に基づき、第１の距離データＤ１を構成する視差ｄが決定される。
【００４２】
ステップ９において、第１の距離データＤ１上の処理領域において、第１の視差ｄ１の中からある視差（以下、「基準視差ｄｍａｉｎ」と称する）が選択される。このとき、選択された基準視差ｄｍａｉｎに関する実空間上の基準位置（ｘｍａｉｎ，ｙｍａｉｎ，ｚｍａｉｎ）が、この基準視差ｄｍａｉｎに対応付けられる。
【００４３】
そして、ステップ１０において、選択されたある基準視差ｄｍａｉｎと撮像位置的に対応する第２の視差ｄ２（以下、「比較視差ｄｓｕｂ」と称する）が、第２の距離データＤ２上で特定される。これらの基準視差ｄｍａｉｎおよび比較視差ｄｓｕｂの位置は、上述したステップ６の処理により、距離データ上では位置的に一致した座標となる。したがって、この対応する座標位置に基づき、この位置に関する視差ｄが比較視差ｄｓｕｂとして一義的に特定される。比較視差ｄｓｕｂが特定されると、この比較視差ｄｓｕｂに関する実空間上の比較位置（ｘｓｕｂ，ｙｓｕｂ，ｚｓｕｂ）が、比較視差ｄｓｕｂに対応付けられる。
【００４４】
ステップ１１において、基準視差ｄｍａｉｎに関する基準位置（ｘｍａｉｎ，ｙｍａｉｎ，ｚｍａｉｎ）と比較視差ｄｓｕｂに関する比較位置（ｘｓｕｂ，ｙｓｕｂ，ｚｓｕｂ）との間の距離Ｌが算出されるとともに、この距離Ｌが所定のしきい値Ｌｔｈより小さいか否かが判断される。この判断で肯定された場合、すなわち、基準位置と比較位置との位置が近似している場合には、基準視差ｄｍａｉｎは、ミスマッチングデータではないと判断される。なぜならば、基準視差ｄｍａｉｎと比較視差ｄｓｕｂとのいずれかがミスマッチングデータであるならば、基準位置と比較位置との位置は、実空間上で近似することはないからである。このとき、第１の距離データＤ１において、選択された基準視差ｄｍａｉｎが、第１の距離データＤ１を構成する視差ｄ（第１の視差ｄ１）としてそのまま維持される（ステップ１２）。
【００４５】
一方、この判断で否定された場合、すなわち、基準位置と比較位置との位置が近似していない場合、基準視差ｄｍａｉｎがミスマッチングデータであると判断され。このとき、第１の距離データＤ１において、選択された基準視差ｄｍａｉｎが、第１の距離データＤ１を構成する視差ｄ（第１の視差ｄ１）から棄却される（ステップ１３）。換言すれば、これらステップ１２およびステップ１３の処理は、第２の視差ｄ２（比較視差ｄｓｕｂ）に基づき、第１の距離データＤ１を構成する第１の視差（基準視差ｄｍａｉｎ）を決定することである。
【００４６】
そして、ステップ１２またはステップ１３に続くステップ１４において、第１の距離データＤ１上の処理領域において、全ての視差ｄが基準視差ｄとして選択されたか否かが判断される。この判断で肯定された場合には、本ルーチンを抜ける。一方、この判断で否定された場合には、全ての視差ｄを基準視差ｄとして選択するべく、一度基準視差ｄｍａｉｎとして選択された視差ｄを除く視差ｄ（或いは視差群）を処理対象として、ステップ９以降の処理が繰り返し実行される。
【００４７】
以上の処理により、第１の距離データＤ１は、この第１の距離データＤ１を構成する視差ｄのうち、ミスマッチングデータが排除されて、値として信頼度の高い視差ｄのみで構成された第１の距離データＤ１となる。
【００４８】
以上説明したように、本実施形態によれば、ステレオカメラ２を回転させて互いに撮像範囲の一部が共通する景色を撮像することにより、第１のステレオ画像データと第２のステレオ画像データとが出力される。これらステレオ画像データに関するステレオマッチング処理に際し、両ステレオ画像データにおいて撮像範囲が対応する領域では、画像上に設定されるエピポーララインがそれぞれ異なる。これにより、少なくともどちらか一方の距離データでは、ミスマッチングが起こり得る状況が低減される。したがって、対応する領域の視差同士を評価することにより、ミスマッチングデータであるか否かを判断することができる。周囲の画素ブロックがまとめて同じようにミスマッチングする状況であっても、エピポーララインを変化させるという本手法を用いることで、これらに関係なくミスマッチングを特定することができる。また、一対のカメラ２ａ，２ｂのみの組合わせでミスマッチングを検出することができるので、装置の大型化・複雑化を低減することができる。
【００４９】
なお、上述した実施形態では、エピポーララインを変化させて算出された基準視差ｄｍａｉｎと比較視差ｄｓｕｂとに関する実空間上の位置をそれぞれ比較することにより、両視差ｄｍａｉｎ，ｄｓｕｂの評価を行っている。しかしながら、本発明は、基準視差ｄｍａｉｎと基準視差ｄｓｕｂとを直接比較する手法を採用してもよい。この処理は、上述した実施形態と比べて、処理工程の煩雑化を低減することができる。しかしながら、上述した実施形態では、実空間上において、基準視差ｄｍａｉｎと比較視差ｄｓｕｂとを評価しているので、ミスマッチングの検出を高精度に行えるという長所がある。
【００５０】
また、上述した実施形態では、カメラ２ａ，２ｂを一度のみ回転させて、対応する領域に関してのみ処理を行っている。しかしながら、第１の距離データＤ１の全ての領域に対して、上述した処理が行われるように、ステレオカメラ２の回転量θｒｅｖを決定することで、ステップ４からステップ１４までの処理をさらに繰り返し行ってもよい。すなわち、本明細書において、上述した第２のステレオ画像データとは、これら複数フレーム相当の距離データを算出し得るステレオ画像データをも含むものであることに理解されたい。
【００５１】
また、上述した実施形態において、ステップ１１の処理では実空間上の位置を比較するのみであるため、実際は、比較視差ｄｓｕｂがミスマッチングの視差である可能性もある（すなわち、基準視差ｄｍａｉｎは真の値を示している）。しかしながら、本実施形態では、いずれかの視差にミスマッチングデータが含まれている場合でも、この基準視差ｄｍａｉｎは、ミスマッチングデータとしての可能性があるものとして、第１の距離データＤ１を構成する視差ｄから棄却される。また、棄却される視差ｄが多数存在すると、距離データ自体の信頼性を損なってしまうことが考えられる。そこで、このような問題を解決する手法として、以下に示す手順が考えられる。
【００５２】
一例としては、まず、回転角θの異なる複数フレーム相当の距離データＤを用いて、比較視差ｄｓｕｂをそれぞれ特定する。そして、基準視差ｄｍａｉｎと複数の比較視差ｄｓｕｂとにより、多数決法などを採用して、第１の距離データＤ１を構成する視差ｄの値を決定するといった如くである。また別な一例としては、まず、回転角θの異なる複数フレーム相当の距離データＤを用いて、比較視差ｄｓｕｂをそれぞれ特定する。そして、基準視差ｄｍａｉｎおよび複数の比較視差ｄｓｕｂに基づき、視差に関するヒストグラムを生成し、そのピーク値を、第１の距離データＤ１を構成する視差ｄの値として採用する。この際の、全投票数に対する一定割合以上のピーク値を持たない場合には、この基準視差ｄｍａｉｎを、第１の距離データＤ１を構成する視差から棄却するといった如くである。
【００５３】
これらの処理を換言すれば、ステレオカメラ２は、カメラ２ａ，２ｂをさらに回転させて、撮像範囲の一部が共通する景色を撮像することにより、１フレーム以上のステレオ画像データをさらに出力する。そして、視差決定部１２は、第１および第２の距離データＤ１，Ｄ２と、新たに出力された１フレーム以上のステレオ画像データに基づき算出された１フレーム以上の距離データとにおいて、撮像範囲が対応する領域をそれぞれ処理対象とする。そして、第１の距離データを構成する視差と撮像位置的に対応する１フレーム以上の距離データを構成する視差が特定される。これにより、基準視差ｄｍａｉｎと、比較視差ｄｓｕｂと、新たに特定された視差ｄとに基づき、多数決法またはヒストグラムを用いて、第１の距離データＤ１を構成する第１の視差（ｄｍａｉｎ）が決定可能となる。このような手法であっても、上述した実施形態と同様の効果を奏する。また、棄却される視差ｄが減少するので、距離データの信頼性向上を図ることができる。また、例えば、多数決法などを用いる手法では、同一輝度が水平方向に連続的に並ぶ画像であっても、複数の視差に基づき視差の算出を行うことができるので、より好ましい。
【００５４】
また、ステレオ画像処理装置１の適用例は、本実施形態に示した移動ロボットに限定されない。例えば、車両、または、航空機等に搭載されたステレオカメラ、或いは、踏切近傍の支柱等に固定的に配置されたステレオカメラによって、所定の監視領域内の景色を撮像する。これにより得られたステレオ画像に基づいて、ステレオ画像処理装置１は、車両前方の走行状況や移動ロボットの周囲の状況、または、航空機等の高度、或いは、踏切エリア内の状況などを認識することができる。
【００５５】
【発明の効果】
このように、本発明によれば、ステレオカメラをカメラの視軸上で回転させて互いに撮像範囲の一部が共通する景色を撮像している。これにともない出力されるステレオ画像データに基づき、第１および第２の距離データを算出した場合、ステレオマッチングを行う際の探索領域は、第１の距離データと第２の距離データとでは相違する。したがって、第１の距離データと第２の距離データとのいずれかにミスマッチングデータ含まれる可能性があったとしても、他方のデータではミスマッチングデータを排除することができる。したがって、これら距離データにおいて、対応する領域の視差を評価することにより、ミスマッチングを有効に検出することができる。
【図面の簡単な説明】
【図１】本実施形態にかかるステレオ画像処理装置のブロック構成図
【図２】ステレオカメラの回転状態を示した説明図
【図３】基準画像に設定される画素ブロックの説明図
【図４】本実施形態にかかる視差決定処理の手順を示したフローチャート
【図５】本実施形態にかかる視差決定処理の手順を示したフローチャート
【図６】撮像画像の一例を示す説明図
【符号の説明】
１　　　　ステレオ画像処理装置
２　　　　ステレオカメラ
２ａ　　　メインカメラ
２ｂ　　　サブカメラ
３　　　　サーボモータ
４　　　　Ａ／Ｄコンバータ
５　　　　Ａ／Ｄコンバータ
６　　　　画像補正部
７　　　　ステレオ画像処理部
８　　　　画像データメモリ
９　　　　距離データメモリ
１０　　　　マイクロコンピュータ
１１　　　　座標変換部
１２　　　　視差決定部
１３　　　　認識部
１４　　　　制御部
【図１】
2004053407.tif 000005
【図２】
2004053407.tif 000006
【図３】
2004053407.tif 000007
【図４】
2004053407.tif 000008
【図５】
2004053407.tif 000009
【図６】
2004053407.tif 000010