説明

画像処理装置および方法並びにプログラム

【課題】視差に基づいて距離画像を生成する際に、視差を精度良く算出できるようにする。
【解決手段】ステレオマッチング部30が、基準画像G1上の各画素に対応する対応点を参照画像G2において探索する。距離画像生成部31が対応点に基づいて距離画像を生成する。1つの対象画素に対して複数の対応点が探索された場合、対応点決定部32が、対象画素の周囲にある複数画素の距離値に基づいて、対象画素およびその周囲における被写体形状を算出し、対象画素と複数の対応点のそれぞれとに基づいて、対象画素における距離情報である対象距離情報を複数の対応点毎に算出し、被写体形状との差異が最も小さい対象距離情報を算出した対応点を有効な対応点に決定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体の立体形状を表す距離画像を生成するための視差を複数の画像に基づいて算出する画像処理装置および方法並びに画像処理方法をコンピュータに実行させるためのプログラムに関するものである。
【背景技術】
【0002】
異なる位置に設けられた2台以上のカメラを用いて被写体を撮像し、これにより取得された複数の画像(基準カメラによる基準画像および参照カメラによる参照画像)の間で対応する画素である対応点を探索し(ステレオマッチング)、互いに対応する基準画像上の画素と、参照画像上の画素との位置の差(視差)を算出し、視差に三角測量の原理を適用することにより、基準カメラまたは参照カメラから当該画素に対応する被写体上の点までの距離を計測して、被写体の立体形状を表す距離画像を生成する手法が提案されている。
【0003】
ここで、ステレオマッチングを行う際には、図3に示すように、基準画像G1上のある画素Paに写像される実空間上の点は、点P1,P2,P3というように点O1からの視線上に複数存在するため、実空間上の点P1 ,P2 ,P3 等の写像である直線(エピポーラ線)上に、画素Paに対応する参照画像G2上の画素Pa′が存在することに基づいて、画素Paに対応する参照画像G2上の画素である対応点が探索される。
【0004】
なお、図3において点O1は基準画像を取得するカメラの視点、点O2は参照画像を取得する参照カメラの視点である。ここで、視点とは各カメラの光学系の焦点である。このようにステレオマッチングを行う際には、基準画像上に対応点探索の対象となる画素Paを含む相関ウィンドウWを設定し、参照画像上において基準画像に設定したものと同一の相関ウィンドウWをエピポーラ線上に沿って移動し、移動位置毎に各画像上の相関ウィンドウ内の各画素についての相関を算出し、参照画像G2上における相関が所定のしきい値以上となる相関ウィンドウの中央の位置にある画素を、画素Paの対応点として求めている。なお、基準画像を基準とした場合、参照画像において対応点を探索することとなるが、この場合、参照画像上の画素から見た基準画像上の対応する画素は、参照画像の画素についての対応点と見なすことができる。
【0005】
ところで、距離画像を生成する被写体は様々なものがあることから、基準画像および参照画像に類似する物体が複数含まれる場合がある。このように類似する物体が画像に複数含まれると、対応点を探索した際に、図5に示すように基準画像G1上の1つの画素Paに対して、参照画像G2上における複数(ここでは2つ)の画素Pb,Pcが対応点として探索される場合がある。このように基準画像G1上の1つの画素に対して参照画像G2上に複数の対応点が探索された場合、1つの対応点を視差の算出のための有効な対応点に決定する必要がある。しかしながら、誤った対応点を有効な対応点として選択してしまうと、視差を正しく算出することができない。
【0006】
このため、1つの画素に対して複数の対応点が探索された場合、最も視差が小さくなる対応点を有効な対応点として選択する手法が提案されている(特許文献1参照)。
【特許文献1】特開2001−92969号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1に記載された手法は1つの対応点を選択することができるものの、最も視差が小さくなる対応点が必ずしも正しい対応点であるとかは限らない。このため、特許文献1に記載された手法によっては視差を正しく算出することができない場合がある。
【0008】
本発明は上記事情に鑑みなされたものであり、視差に基づいて距離画像を生成する際に、視差を精度良く算出できるようにすることを目的とする。
【課題を解決するための手段】
【0009】
本発明による画像処理装置は、互いに異なる位置において被写体を撮影することにより取得した複数の画像に基づいて距離画像生成のための視差を算出する画像処理装置において、
前記複数の画像間における各画素の相関に基づいて、前記複数の画像間において互いに対応する対応点を探索する対応点探索手段と、
前記複数の画像のうちの1つの画像における1つの対象画素について、該1つの画像以外の他の画像に複数の対応点が探索された場合、前記対象画素の周囲にある複数画素についての距離値に基づいて前記対象画素およびその周囲における被写体形状を算出し、前記対象画素と前記複数の対応点のそれぞれとに基づいて、該対象画素についての距離値である対象距離値を前記複数の対応点毎に算出し、該被写体形状との差異が最も小さい対象距離値を算出した対応点を有効な対応点に決定する対応点決定手段とを備えたことを特徴とするものである。
【0010】
「被写体形状」とは、対象画素の周囲にある複数画素についての距離値に基づいて算出するものであるため、対象画素についての距離値は使用しないものとなる。したがって、算出した被写体形状における対象画素の部分は、その周囲の複数画素についての距離値から近似的に求めた距離値を有するものとなる。
【0011】
なお、本発明による画像処理装置においては、前記対応点決定手段を、前記対象画素を通る所定方向における被写体形状を表す近似曲線を前記被写体形状として算出する手段としてもよい。
【0012】
ここで、所定方向としては、対象画素を基準とする上下方向、左右方向、左下右上方向および右下左上方向の4方向のうちのいずれかの方向を用いることができる。
【0013】
また、本発明による画像処理装置においては、前記対応点決定手段を、前記対象画素を通る複数方向に隣接する複数画素と該複数画素のそれぞれの対応点との相関に基づいて、前記所定方向を決定する手段としてもよい。
【0014】
ここで、複数方向としては、対象画素を基準とする上下方向、左右方向、左下右上方向および右下左上方向の4方向を用いることができる。
【0015】
また、本発明による画像処理装置においては、前記対応点決定手段を、前記所定方向に隣接して並ぶ画素について、前記対応点との相関が所定値以上となる画素が、前記近似曲線の算出に必要な必要数あるか否かを判定し、該判定が肯定された場合には前記必要数の画素に基づいて近似曲線を算出し、前記判定が否定された場合には該判定が肯定されるまで、該所定方向に隣接する画素にさらに隣接する画素を含めての前記判定を繰り返す手段としてもよい。
【0016】
本発明による画像処理方法は、互いに異なる位置において被写体を撮影することにより取得した複数の画像に基づいて距離画像生成のための視差を算出する画像処理方法において、
前記複数の画像間における各画素の相関に基づいて、前記複数の画像間において互いに対応する対応点を探索し、
前記複数の画像のうちの1つの画像における1つの対象画素について、該1つの画像以外の他の画像に複数の対応点が探索された場合、前記対象画素の周囲にある複数画素についての距離値に基づいて前記対象画素およびその周囲における被写体形状を算出し、
前記対象画素と前記複数の対応点のそれぞれとに基づいて、該対象画素についての距離値である対象距離値を前記複数の対応点毎に算出し、
該被写体形状との差異が最も小さい対象距離値を算出した対応点を有効な対応点に決定することを特徴とするものである。
【発明の効果】
【0017】
ある画素(対象画素)の対応点が真の対応点の場合、その対応点に基づいて算出した距離値は、対象画素の周囲における被写体形状とほぼ連続するものとなる。しかしながら、その対応点が真の対応点でないと、その対応点に基づいて算出した距離値は、対象画素の周囲における被写体形状とは大きく異なるものとなる。
【0018】
本発明による画像処理装置および方法は、複数の画像のうちの1つの画像における1つの対象画素について、1つの画像以外の他の画像に複数の対応点が存在する場合、対象画素の周囲にある複数画素についての距離値に基づいて対象画素およびその周囲における被写体形状を算出し、対象画素と複数の対応点のそれぞれとに基づいて、対象画素についての距離値である対象距離値を複数の対応点毎に算出し、被写体形状との差異が最も小さい対象距離値を算出した対応点を、有効な対応点に決定するようにしたものである。このため、視差の算出に有効な対応点を精度良く決定することができ、これにより、視差ひいては距離値の算出を精度良く行うことができる。
【0019】
また、対象画像を通る所定方向における被写体形状を表す近似曲線を被写体形状として算出することにより、少ない演算により迅速に有効な対応点を決定することができる。
【0020】
また、対象画素を通る複数方向に隣接する複数の画素と、複数の画素のそれぞれの対応点との相関に基づいて、近似曲線を算出する所定方向を決定することにより、より相関が大きく距離値の算出精度が高い方向について近似曲線を求めることができるため、有効な対応点をより精度良く決定することができる。
【0021】
また、所定方向に隣接して並ぶ画素について、対応点との相関が所定値以上となる画素が、近似曲線の算出に必要な必要数あるか否かを判定し、判定が肯定された場合には必要数の画素に基づいて近似曲線を算出し、判定が否定された場合には判定が肯定されるまで、所定方向に隣接する画素にさらに隣接する画素を含めての判定を繰り返すことにより、より相関が大きく距離値の精度が高い画素に基づいて近似曲線を求めることができるため、有効な対応点をより精度良く決定することができる。
【発明を実施するための最良の形態】
【0022】
以下、図面を参照して本発明の実施形態について説明する。図1は本発明の第1の実施形態による画像処理装置を適用した距離測定装置1の内部構成を示す概略ブロック図である。図1に示すように第1の実施形態による距離測定装置1は、2つの撮像部21A,21B、撮像制御部22、信号処理部23、圧縮/伸長処理部24、フレームメモリ25、メディア制御部26、内部メモリ27、および表示制御部28を備える。
【0023】
図2は撮像部21A,21Bの構成を示す図である。図2に示すように、撮像部21A,21Bは、レンズ10A,10B、絞り11A,11B、シャッタ12A,12B、CCD13A,13B、アナログフロントエンド(AFE)14A,14BおよびA/D変換部15A,15Bをそれぞれ備える。
【0024】
レンズ10A,10Bは、被写体に焦点を合わせるためのフォーカスレンズ、ズーム機能を実現するためのズームレンズ等の複数の機能別レンズにより構成され、不図示のレンズ駆動部によりその位置が調整される。なお、本実施形態においては焦点位置は固定されているものとする。
【0025】
絞り11A,11Bは、不図示の絞り駆動部により、AE処理により得られる絞り値データに基づいて絞り径の調整が行われる。なお、本実施形態においては絞り値データは固定されているものとする。
【0026】
シャッタ12A,12Bはメカニカルシャッタであり、不図示のシャッタ駆動部により、AE処理により得られるシャッタスピードに応じて駆動される。なお、本実施形態においてはシャッタスピードは固定されているものとする。
【0027】
CCD13A,13Bは、多数の受光素子を2次元的に配列した光電面を有しており、被写体光がこの光電面に結像して光電変換されてアナログ撮像信号が取得される。また、CCD13A,13Bの前面にはR,G,B各色のフィルタが規則的に配列されたカラーフィルタが配設されている。
【0028】
AFE14A,14Bは、CCD13A,13Bから出力されるアナログ撮像信号に対して、アナログ撮像信号のノイズを除去する処理、およびアナログ撮像信号のゲインを調節する処理(以下アナログ処理とする)を施す。
【0029】
A/D変換部15A,15Bは、AFE14A,14Bによりアナログ処理が施されたアナログ撮像信号をデジタル信号に変換する。なお、撮像部21A,21BのCCD13A,13Bにおいて取得され、デジタル信号に変換されることにより得られる画像データは、画素毎にR,G,Bの濃度値を持つRAWデータである。なお、撮像部21Aにより取得される画像データにより表される画像を基準画像G1、撮像部21Bにより取得される画像データにより表される画像を参照画像G2とする。
【0030】
撮像制御部22は、レリーズボタン押下後に撮像の制御を行う。
【0031】
なお、本実施形態においては、焦点位置、絞り値データおよびシャッタスピードは固定されているが、AF処理およびAE処理を行って、撮影の都度、焦点位置、絞り値データおよびシャッタスピードを設定するようにしてもよい。
【0032】
信号処理部23は、撮像部21A,21Bが取得したデジタルの画像データに対して、画像データの感度分布のばらつきおよび光学系の歪みを補正する補正処理を施すとともに、2つの画像を並行化するための並行化処理を施す。さらに、並行化処理後の画像に対してホワイトバランスを調整する処理、階調補正、シャープネス補正、および色補正等の画像処理を施す。なお、信号処理部23における処理後の基準画像および参照画像についても、処理前の参照符号G1,G2を用いるものとする。また、補正処理、並行化処理および画像処理の3つの処理を合わせて信号処理と称するものとする。
【0033】
圧縮/伸長処理部24は、信号処理部23によって処理が施された基準画像G1および参照画像G2を表す画像データ対して、例えば、JPEG等の圧縮形式で圧縮処理を施し、後述するように生成された距離画像の画像データと併せて距離画像の画像ファイルを生成する。この画像ファイルは、基準画像G1、参照画像G2および距離画像の画像データを含むものとなる。また、この画像ファイルには、Exifフォーマット等に基づいて、撮影日時等の付帯情報が記述されたヘッダが付与される。
【0034】
フレームメモリ25は、撮像部21A,21Bが取得した基準画像G1および参照画像G2を表す画像データに対して、前述の信号処理部23が行う処理を含む各種処理を行う際に使用する作業用メモリである。
【0035】
メディア制御部26は、記録メディア29にアクセスして距離画像の画像ファイルの書き込みと読み込みの制御を行う。
【0036】
内部メモリ27は、距離測定装置1において設定される各種定数、およびCPU33が実行するプログラム等を記憶する。
【0037】
表示制御部28は、フレームメモリ25に格納された画像データをモニタ20に表示させたり、記録メディア29に記録されている画像をモニタ20に表示させたりするためのものである。
【0038】
また、距離測定装置1は、ステレオマッチング部30、距離画像生成部31および対応点決定部32を備える。
【0039】
ステレオマッチング部30は、図3に示すように、基準画像G1上のある画素Paに写像される実空間上の点は、点P1,P2,P3というように点O1からの視線上に複数存在するため、実空間上の点P1 ,P2 ,P3 等の写像である直線(エピポーラ線)上に、画素Paに対応する参照画像R上の画素Pa′が存在するという事実に基づいて、基準画像G1と参照画像G2との対応点を参照画像G2上において探索する。なお、図3において点O1は基準カメラとなる撮像部21Aの視点、点O2は参照カメラとなる撮像部21Bの視点である。ここで、視点とは撮像部21A,21Bの光学系の焦点である。また、対応点の探索は、信号処理のうちの画像処理が施された基準画像G1および参照画像G2を用いてもよいが、画像処理前の補正処理および並行化処理のみが施された基準画像G1および参照画像G2を用いることが好ましい。以降では、対応点の探索は画像処理前の基準画像G1および参照画像G2を用いるものとして説明する。
【0040】
具体的には、ステレオマッチング部30は、対応点の探索を行う際に、あらかじめ定められた相関ウィンドウWをエピポーラ線に沿って移動し、各移動位置において基準画像G1および参照画像G2の相関ウィンドウW内の画素についての相関を算出し、参照画像G2上の相関が所定のしきい値以上となる位置における相関ウィンドウWの中心画素を、基準画像G1上の画素Paに対応する対応点とする。なお、相関を評価するための相関評価値としては、差分絶対値和および差分2乗和の逆数等を用いることができる。この場合、相関評価値が小さいほど、相関が大きいものとなる。また、参照画像G2上の画素と対応する基準画像G1上の画素については、参照画像G2の画素から見た対応点となる。本実施形態においては、いずれの場合も対応点と称するものとする。
【0041】
図4は並行化処理後の基準画像および参照画像の位置関係を説明するための図である。図4に示すように、撮像部21A,21Bにおける基準画像G1および参照画像G2が得られる面となる画像面は、撮像部21A,21Bの光軸との交点を原点とする。また、画像面上における撮像部21A,21Bの座標系をそれぞれ(u,v)、(u′,v′)とする。ここで、並行化処理により撮像部21A,21Bの光軸は平行となるため、画像面におけるu軸およびu′軸は同一直線上において同一方向を向くこととなる。また、並行化処理により、参照画像G2上におけるエピポーラ線は、u′軸に平行なものとなるため、基準画像G1上におけるu軸も、参照画像G2のエピポーラ線の方向と一致することとなる。
【0042】
ここで、撮像部21A,21Bの焦点距離をf、基線長をbとする。なお、焦点距離fおよび基線長bはキャリブレーションパラメータとしてあらかじめ算出されて内部メモリ27に記憶されている。このとき、3次元空間上における位置(X,Y,Z)は、撮像部21Aの座標系を基準とすると、下記の式(1)〜(3)により表される。
【0043】
X=b・u/(u−u′) (1)
Y=b・v/(u−u′) (2)
Z=b・f/(u−u′) (3)
ここでu−u′は、撮像部21A,21Bの画像面上における投影点の横方向のずれ量(視差)である。また、式(3)より、奥行きである距離Zは視差に反比例することが分かる。なお、このようにして算出したX,Y,Zを距離値とする。また、距離値X,Yはその画素の位置を表す位置情報であり、距離値Zは距離すなわち奥行き情報である。なお、距離値X,Y,Zは基準画像G1および参照画像G2の共通する範囲においてのみ算出される。このため、後の処理を容易に行うために、距離値X,Y,Zについては、撮像部21Aの座標系から、撮像部21A,21Bそれぞれの画像面の原点の中間位置を原点とする座標系に変換することとする。以降では、座標系は撮像部21A,21Bのそれぞれの画像面の原点の中間位置を原点とするものとして説明する。
【0044】
距離画像生成部31は、ステレオマッチング部30が求めた対応点を用いて、視差(u−u′)を算出するとともに、上記式(1)〜(3)により撮像部21A,21Bから被写体までの距離を表す距離値X,Y,Zを算出し、算出した距離値X,Y,Zを各画像の画素値とする距離画像の画像データを生成する。なお、距離画像の各画素の距離値Zが撮像部21A,21Bから被写体までの距離を表すものとなる。
【0045】
なお、上記第1の実施形態においては、エピポーラ線に沿って相関ウィンドウWを移動して対応点を探索しているが、まずエピポーラ線に沿って相関ウィンドウWを移動して対応点を探索した後、探索した対応点を基準とした所定範囲内の領域において、エピポーラ線の方向とは関係なく相関ウィンドウWを移動してさらに相関を算出し、より相関が大きい対応点を探索するようにしてもよい。さらに、エピポーラ線を全く考慮することなく、対応点を探索するようにしてもよい。
【0046】
ところで、距離画像を生成する被写体は様々なものがあることから、基準画像および参照画像に類似する物体が複数含まれる場合がある。このように類似する物体が画像に複数含まれると、対応点を探索した際に、図5に示すように基準画像G1上の1つの画素Paに対して、参照画像G2上における複数(ここでは2つ)の画素Pb,Pcが対応点として探索される場合がある。このように基準画像G1上の1つの画素に対して参照画像G2上に複数の対応点が探索された場合、1つの対応点を視差の算出のための有効な対応点に決定する必要がある。しかしながら、誤った対応点を有効な対応点として選択してしまうと、視差を正しく算出することができない。
【0047】
第1の実施形態においては、ステレオマッチング部30において、基準画像G1上の1つの画素に対して参照画像G2上に複数の対応点が探索された場合、対応点決定部32が有効な対応点を決定するようにしたものである。なお、対応点決定部32は、近似曲線算出部40、対象距離値算出部41および決定部42を備える。近似曲線算出部40、対象距離値算出部41および決定部42が行う処理については後述する。
【0048】
CPU33は、レリーズボタンを含む入出力部34からの信号に応じて距離測定装置1の各部を制御する。
【0049】
データバス35は、距離測定装置1を構成する各部およびCPU33に接続されており、距離測定装置1における各種データおよび各種情報のやり取りを行う。
【0050】
次いで、第1の実施形態において行われる処理について説明する。図6は第1の実施形態において行われる処理を示すフローチャートである。なお、ここでは、レリーズボタンが全押しされて撮像の指示が行われた以降の処理について説明する。
【0051】
レリーズボタンが全押しされることによりCPU33が処理を開始し、撮像部21A,21BがCPU33からの指示により被写体を撮影し(ステップST1)、さらに信号処理部23が、取得した画像データに対して補正処理、並行化処理および画像処理(信号処理)を施して基準画像G1および参照画像G2を取得し(ステップST2)、ステレオマッチング部30が基準画像G1の各画素に対応する参照画像G2上の対応点を探索する(ステップST3)。次いで、対応点決定部32が有効な対応点を決定する処理である対応点決定処理を行う(ステップST4)。
【0052】
図7は第1の実施形態における対応点決定処理のフローチャートである。なお、ここでは、基準画像G1における左上隅の画素から順に対応点を決定する処理を行うものとして説明する。また、画素位置は基準画像G1上において2次元となるが、説明を簡単にするために1次元で示すものとする。対応点決定部32は、対応点決定処理の対象となる対象画素を最初の画素に設定し(i=1、iは基準画像上の画素の位置、ステップST11)、対象画素に複数の対応点が探索されたか否かを判定する(ステップST12)。ステップST12が否定されると、探索された対応点は1つであることからその対応点を有効な対応点に決定し(ステップST13)、ステップST26の処理に進む。
【0053】
ステップST12が肯定されると、対応点決定部32は、対象画素を中心とする上下方向、左右方向、左下右上方向および右下左上方向の4方向の少なくとも1つの方向に隣接する画素について、有効な対応点が決定されているか否かを判定する(第1の判定:ステップST14)。すなわち、図8に示すように対象画素Aについて、上下方向に隣接する画素B1,B1′、左右方向に隣接する画素B2,B2′、左下右上方向に隣接する画素B3,B3′および右下左上方向に隣接する画素B4,B4′について、少なくとも1つの方向に有効な対応点が決定されているか否かを判定する。
【0054】
ステップST14が否定されると、第1の判定を行った回数が所定回数(例えば10回)となったか否かを判定する(ステップST15)。ステップST15が否定されると、有効な対応点が決定されていない方向について、第1の判定の対象をさらに外側に隣接する画素に変更し(ステップST16)、ステップST14に戻る。すなわち、有効な対応点が決定されていない方向が図8に示す上下方向である場合、判定の対象を対象画素Aの上下方向に隣接する画素B1,B1′のさらに外側に隣接する画素C1,C1′に変更する。また、左右方向の場合は対象画素Aの左右方向に隣接する画素B2,B2′のさらに外側に隣接する画素C2,C2′に、左下右上方向の場合は対象画素Aの左下右上方向に隣接する画素B3,B3′のさらに外側に隣接する画素C3,C3′に、右下左上方向の場合は対象画素Aの右下左上方向に隣接する画素B4,B4′のさらに外側に隣接する画素C4,C4′に判定の対象を変更する。これにより、有効な対応点が決定された画素が上記4方向のうちの少なくとも1つの方向において見つかるまでステップST14〜ST16の処理が繰り返される。
【0055】
なお、ステップST15が肯定された場合は、対象画素について有効な対応点を決定することができないことから、対象画素を対応点欠落画素に設定し(ステップST17)、後述するステップST26の処理に進む。なお、対応点欠落画素については、距離値は算出されないこととなる。
【0056】
ステップST14が肯定されると、有効な対応点が決定されている方向に隣接する画素の組について、その画素の組について対応点を探索した際の相関が最も大きい画素の組を選択する(ステップST18)。例えば、対応画素を通る4方向のすべてに隣接する画素について有効な対応点が決定されている場合、図8に示す4つの画素の組(B1,B1′)、(B2,B2′)、(B3,B3′)、(B4,B4′)のうち、対応点を探索した際に算出した各画素の相関の和が最も大きい(すなわち相関評価値の和が最も小さい)画素の組の方向を選択する。なお、有効な対応点が決定されている方向が1つのみの場合には、その方向が選択される。
【0057】
次いで、対応点決定部32は、対象画素における選択した方向に隣接して並ぶ画素について、対応点を探索した際の相関がしきい値Th1以上となる画素が、後述する近似曲線を算出するために必要な数あるか否かを判定する(第2の判定:ステップST19)。なお、近似曲線を算出するために必要な画素数としては、例えば4を用いることができるが、これに限定されるものではない。ステップST19が否定されると、選択した方向について、対象画素のさらに外側に隣接する画素をステップST19の第2の判定の対象に含めるように変更し(ステップST20)、ステップST19に戻る。
【0058】
ステップST19が肯定されると、対応点決定部32の近似曲線算出部40が、選択した方向における近似曲線を算出するために必要な数の画素について距離値Zj(jは近似曲線算出に必要な画素数)を算出し(ステップST21)、算出した距離値Zjにより対象画素およびその周囲における被写体形状を表す近似曲線を算出する(ステップST22)。また、対象距離値算出部41が、対象画素とこれに対応する複数の対応点のそれぞれとから、対象画素についての距離値である対象距離値Zkを対応点毎に算出する(kは対応点の数)(ステップST23)。例えば、対象画素に対応する対応点が2つある場合、2つの対象距離値Z1,Z2を算出する。
【0059】
次いで、対応点決定部32の決定部42が、近似曲線における対象画素に対応する距離値Zrと、各対象距離値Zkとの差の絶対値を算出し(ステップST24)、差の絶対値が最小となる対象距離値Zkを算出した対応点を有効な対応点に決定する(ステップST25)。
【0060】
すなわち、図9に示すように対象画素の周囲の4つの画素を用いて近似曲線L1を算出した場合において、2つの対象距離値Z1,Z2が図9に示すように算出された場合、対象画素における距離値Zrと対象距離値Z1,Z2との差を比較すると、対象距離値Z1との差の方が小さいことから、対象距離値Z1を算出した対応点を有効な対応点に決定する。
【0061】
そして、対応点決定部32は、すべての画素について有効な対応点を決定したか否かを判定し(ステップST26)、ステップST26が否定されると、対象画素を次の画素に変更して(ステップST27)、ステップST12に戻る。ステップST26が肯定されると、対応点決定処理を終了する。
【0062】
図6に戻り、距離画像生成部31が有効な対応点に基づいて、距離値X,Y,Zを算出する(ステップST5)。そして、圧縮/伸長処理部24が、基準画像G1および参照画像G2の画像データ並びに距離値からなる距離画像の画像データを含む距離画像の画像ファイルを生成する(ステップST6)。そして、CPU33からの指示によりメディア制御部26が画像ファイルを記録メディア29に記録し(ステップST7)、処理を終了する。
【0063】
ここで、対象画素の対応点が真の対応点の場合、その対応点に基づいて算出した距離値は、対象画素の周囲における被写体形状とほぼ連続するものとなる。しかしながら、その対応点が真の対応点でないと、その対応点に基づいて算出した距離値は、対象画素の周囲における被写体形状とは大きく異なるものとなる。
【0064】
第1の実施形態においては、基準画像G1における1つの対象画素について、参照画像G2に複数の対応点が探索された場合、対象画素の周囲にある複数画素についての距離値に基づいて対象画素およびその周囲における被写体形状を表す近似曲線を算出し、対象画素と複数の対応点のそれぞれとに基づいて、対象画素についての距離値である対象距離値を複数の対応点毎に算出し、近似曲線との差異が最も小さい対象距離値を算出した対応点を、有効な対応点に決定するようにしたものである。このため、視差の算出に有効な対応点を精度良く決定することができ、これにより、視差ひいては距離値の算出を精度良く行うことができる。
【0065】
また、対象画像を通る所定方向における近似曲線を被写体形状として算出することにより、少ない演算により迅速に有効な対応点を決定することができる。
【0066】
また、対象画素を通る複数方向に隣接する複数の画素と、複数の画素のそれぞれの対応点との相関に基づいて、近似曲線を算出する方向を決定することにより、より相関が大きく距離値の算出精度が高い方向について近似曲線を算出することができるため、有効な対応点をより精度良く決定することができる。
【0067】
また、近似曲線を算出する方向に隣接して並ぶ画素について、対応点との相関がしきい値Th1以上となる画素が、近似曲線の算出に必要な必要数あるか否かを判定し、判定が肯定された場合には必要数の画素に基づいて近似曲線を算出し、判定が否定された場合には判定が肯定されるまで、近似曲線を算出する方向に隣接する画素にさらに隣接する画素を含めての判定を繰り返すことにより、より相関が大きく距離値の精度が高い画素に基づいて近似曲線を算出することができるため、有効な対応点をより精度良く決定することができる。
【0068】
次いで、本発明の第2の実施形態について説明する。なお、第2の実施形態による画像処理装置を適用した距離測定装置の構成は、上記第1の実施形態における距離測定装置の構成と同一であり、対応点決定部32が行う処理のみが異なるため、ここでは構成についての詳細な説明は省略する。
【0069】
第2の実施形態においては、対応点決定処理において、第2の判定の処理を行わないようにした点が第1の実施形態と異なる。
【0070】
次いで、第2の実施形態において行われる処理について説明する。図10は第2の実施形態における対応点決定処理のフローチャートである。なお、ここでは、基準画像G1における左上隅の画素から順に対応点を選択する処理を行うものとして説明する。また、画素位置は基準画像G1上において2次元となるが、説明を簡単にするために1次元で示すものとする。対応点決定部32は、対応点決定処理の対象となる対象画素を最初の画素に設定し(i=1、iは基準画像上の画素の位置、ステップST31)、対象画素に複数の対応点が探索されたか否かを判定する(ステップST32)。ステップST32が否定されると、探索された対応点は1つであることからその対応点を有効な対応点に決定し(ステップST33)、ステップST44の処理に進む。
【0071】
ステップST32が肯定されると、対応点決定部32は、対象画素を中心とする上下方向、左右方向、左下右上方向および右下左上方向の4方向の少なくとも1つの方向に隣接する画素について、有効な対応点が決定されているか否かを判定する(第1の判定:ステップST34)。
【0072】
ステップST34が否定されると、第1の判定を行った回数が所定回数(例えば10回)となったか否かを判定し(ステップST35)、ステップST35が否定されると、有効な対応点が決定されていない方向について、第1の判定の対象をさらに外側に隣接する画素に変更し(ステップST36)、ステップST34に戻る。これにより、有効な対応点が決定された画素が上記4方向のうちの少なくとも1つの方向において見つかるまでステップST34〜ST36の処理が繰り返される。
【0073】
なお、ステップST35が肯定された場合は、対象画素について有効な対応点を決定することができないことから、対象画素を対応点欠落画素に設定し(ステップST37)、後述するステップST44の処理に進む。
【0074】
ステップST34が肯定されると、有効な対応点が決定されている方向に隣接する画素の組について、その画素の組について対応点を探索した際の相関が最も大きい画素の組を選択する(ステップST38)。なお、有効な対応点が決定されている方向が1つのみの場合には、その方向が選択される。
【0075】
次いで、対応点決定部32の近似曲線算出部40が、選択した方向における近似曲線を算出するために必要な数の画素について距離値Zj(jは近似曲線算出に必要な画素数)を算出し(ステップST39)、算出した距離値Zjにより対象画素およびその周囲における被写体形状を表す近似曲線を算出する(ステップST40)。また、対象距離値算出部41が、対象画素とこれに対応する複数の対応点のそれぞれとから、対象画素についての距離値である対象距離値Zkを対応点毎に算出する(kは対応点の数)(ステップST41)。例えば、対象画素に対応する対応点が2つある場合、2つの対象距離値Z1,Z2を算出する。
【0076】
次いで、対応点決定部32の決定部42が、近似曲線における対象画素に対応する距離値Zrと、各対象距離値Zkとの差の絶対値を算出し(ステップST42)、差の絶対値が最小となる対象距離値Zkを算出した対応点を有効な対応点に決定する(ステップST43)。
【0077】
そして、対応点決定部32は、すべての画素について有効な対応点を決定したか否かを判定し(ステップST44)、ステップST44が否定されると、対象画素を次の画素に変更して(ステップST45)、ステップST32に戻る。ステップST44が肯定されると、対応点決定処理を終了する。
【0078】
このように、第2の実施形態においては、第1の実施形態よりも若干精度は落ちるものの、有効な対応点を精度よく決定することができる。
【0079】
なお、上記第1および第2の実施形態においては、対象画素を通る4方向のうち1つの方向を選択して近似曲線を算出しているが、あらかじめ近似曲線を算出する方向を定めておくようにしてもよい。これにより、精度は若干落ちるものの近似曲線の算出を高速に行うことができる。
【0080】
また、上記第1および第2の実施形態においては、対象画素を通る1つの方向について近似曲線を算出しているが、対象画素を通る所定範囲の複数の画素における距離値を用いて、対象画素およびその周囲の被写体形状を表す近似曲面を算出し、近似曲面と対象距離値との差に基づいて有効な対応点を決定するようにしてもよい。
【0081】
なお、上記第1および第2の実施形態においては、距離測定装置1内において対応点の探索、対応点の決定および距離画像の生成を行っているが、ステレオマッチング部30、距離画像生成部31および対応点決定部32からなる画像処理装置を装置1外に設け、入出力部34から基準画像G1および参照画像G2の画像データを外部の画像処理装置に出力して、対応点の探索、対応点の決定および距離画像の生成を行うようにしてもよい。
【0082】
また、上記第1および第2の実施形態においては、距離測定装置1において撮像部21A,21Bにより取得した基準画像G1および参照画像G2を用いて距離画像を生成しているが、撮像部21A,21Bを距離測定装置1とは別個に設け、撮像部21A,21Bが取得した基準画像G1および参照画像G2を距離測定装置に入力し、入力された基準画像G1および参照画像G2を用いて距離画像を生成するようにしてもよい。
【0083】
また、上記第1および第2の実施形態においては、距離測定装置1に2つの撮像部を設け、基準画像G1および参照画像G2の2つの画像を用いて距離画像を生成しているが、3以上の撮像部を設け、2以上の参照画像を用いて距離画像を生成する場合にも本発明を適用することができる。
【0084】
以上、本発明の実施形態について説明したが、コンピュータを、上記のステレオマッチング部30、距離画像生成部31および対応点決定部32に対応する手段として機能させ、図6,7,10に示すような処理を行わせるプログラムも、本発明の実施形態の1つである。また、そのようなプログラムを記録したコンピュータ読取り可能な記録媒体も、本発明の実施形態の1つである。
【図面の簡単な説明】
【0085】
【図1】本発明の第1の実施形態による画像処理装置を適用した距離測定装置の内部構成を示す概略ブロック図
【図2】撮像部の構成を示す図
【図3】ステレオマッチングを説明するための図
【図4】並行化処理後の基準画像および参照画像の位置関係を説明するための図
【図5】基準画像上の1つの画素について、参照画像上における2つの画素が対応点として探索された状態を示す図
【図6】第1の実施形態において行われる処理を示すフローチャート
【図7】第1の実施形態における対応点決定処理のフローチャート
【図8】対象画素の周囲の画素を示す図
【図9】対応点の決定を説明するための図
【図10】第2の実施形態における対応点決定処理のフローチャート
【符号の説明】
【0086】
1 距離測定装置
21A,21B 撮像部
30 ステレオマッチング部
31 距離画像生成部
32 対応点決定部
40 近似曲線算出部
41 対処距離値算出部
42 決定部

【特許請求の範囲】
【請求項1】
互いに異なる位置において被写体を撮影することにより取得した複数の画像に基づいて距離画像生成のための視差を算出する画像処理装置において、
前記複数の画像間における各画素の相関に基づいて、前記複数の画像間において互いに対応する対応点を探索する対応点探索手段と、
前記複数の画像のうちの1つの画像における1つの対象画素について、該1つの画像以外の他の画像に複数の対応点が探索された場合、前記対象画素の周囲にある複数画素についての距離値に基づいて前記対象画素およびその周囲における被写体形状を算出し、前記対象画素と前記複数の対応点のそれぞれとに基づいて、該対象画素についての距離値である対象距離値を前記複数の対応点毎に算出し、該被写体形状との差異が最も小さい対象距離値を算出した対応点を有効な対応点に決定する対応点決定手段とを備えたことを特徴とする画像処理装置。
【請求項2】
前記対応点決定手段は、前記対象画素を通る所定方向における被写体形状を表す近似曲線を前記被写体形状として算出する手段であることを特徴とする請求項1記載の画像処理装置。
【請求項3】
前記対応点決定手段は、前記対象画素を通る複数方向に隣接する複数画素と該複数画素のそれぞれの対応点との相関に基づいて、前記所定方向を決定する手段であることを特徴とする請求項2記載の画像処理装置。
【請求項4】
前記対応点決定手段は、前記所定方向に隣接して並ぶ画素について、前記対応点との相関が所定値以上となる画素が、前記近似曲線の算出に必要な必要数あるか否かを判定し、該判定が肯定された場合には前記必要数の画素に基づいて近似曲線を算出し、前記判定が否定された場合には該判定が肯定されるまで、該所定方向に隣接する画素にさらに隣接する画素を含めての前記判定を繰り返す手段であることを特徴とする請求項2または3記載の画像処理装置。
【請求項5】
互いに異なる位置において被写体を撮影することにより取得した複数の画像に基づいて距離画像生成のための視差を算出する画像処理方法において、
前記複数の画像間における各画素の相関に基づいて、前記複数の画像間において互いに対応する対応点を探索し、
前記複数の画像のうちの1つの画像における1つの対象画素について、該1つの画像以外の他の画像に複数の対応点が探索された場合、前記対象画素の周囲にある複数画素についての距離値に基づいて前記対象画素およびその周囲における被写体形状を算出し、
前記対象画素と前記複数の対応点のそれぞれとに基づいて、該対象画素についての距離値である対象距離値を前記複数の対応点毎に算出し、
該被写体形状との差異が最も小さい対象距離値を算出した対応点を有効な対応点に決定することを特徴とする画像処理方法。
【請求項6】
互いに異なる位置において被写体を撮影することにより取得した複数の画像に基づいて距離画像生成のための視差を算出する画像処理方法をコンピュータに実行させるためのプログラムにおいて、
前記複数の画像間における各画素の相関に基づいて、前記複数の画像間において互いに対応する対応点を探索する手順と、
前記複数の画像のうちの1つの画像における1つの対象画素について、該1つの画像以外の他の画像に複数の対応点が探索された場合、前記対象画素の周囲にある複数画素についての距離値に基づいて前記対象画素およびその周囲における被写体形状を算出する手順と、
前記対象画素と前記複数の対応点のそれぞれとに基づいて、該対象画素についての距離値である対象距離値を前記複数の対応点毎に算出する手順と、
該被写体形状との差異が最も小さい対象距離値を算出した対応点を有効な対応点に決定する手順とを有することを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2009−205193(P2009−205193A)
【公開日】平成21年9月10日(2009.9.10)
【国際特許分類】
【出願番号】特願2008−43732(P2008−43732)
【出願日】平成20年2月26日(2008.2.26)
【出願人】(306037311)富士フイルム株式会社 (25,513)
【復代理人】
【識別番号】100104189
【弁理士】
【氏名又は名称】福尾 勲将
【Fターム(参考)】