ステレオ3次元計測装置
【課題】回路規模および演算時間の増大を招くことなくキャリブレーションずれを再補正する。
【解決手段】キャリブレーションによって補正された左右のカメラステレオ平行化後画像間のずれ量を、キャリブレーションずれ再補正部15を含む対応点探索部9による対応点の探索処理中において、キャリブレーションずれ再補正部15によるキャリブレーションずれ再補正処理で得られるデータを用いて再補正する。こうして、距離計測装置1における内部ハードウェアの回路規模および演算時間を増大させることなく計測精度を高めることができる。また、上記右カメラステレオ平行化後画像を上下にずらして、左右のカメラステレオ平行化後画像の上下方向のずれを再補正する。こうして、問題になり易い上下方向のキャリブレーションずれを低減することができる。その際に、対応点の探索を行う際の右カメラステレオ平行化後画像の最適位置を確実に見出すことができる。
【解決手段】キャリブレーションによって補正された左右のカメラステレオ平行化後画像間のずれ量を、キャリブレーションずれ再補正部15を含む対応点探索部9による対応点の探索処理中において、キャリブレーションずれ再補正部15によるキャリブレーションずれ再補正処理で得られるデータを用いて再補正する。こうして、距離計測装置1における内部ハードウェアの回路規模および演算時間を増大させることなく計測精度を高めることができる。また、上記右カメラステレオ平行化後画像を上下にずらして、左右のカメラステレオ平行化後画像の上下方向のずれを再補正する。こうして、問題になり易い上下方向のキャリブレーションずれを低減することができる。その際に、対応点の探索を行う際の右カメラステレオ平行化後画像の最適位置を確実に見出すことができる。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、複数のカメラを用いて距離や形状等の計測を行うステレオ3次元計測装置に関する。
【背景技術】
【0002】
複数のカメラを用いて対象物までの距離や対象物の形状などを計測するステレオ3次元計測装置が実用化されている。ステレオ3次元計測の手法としては、一般に「相関法」と呼ばれる方法が知られている。
【0003】
上記「相関法」においては、カメラを左右に配置して対象物を同時に撮影し、得られた左右画像のペアから対応する画素の組である対応点を探索する。そして、左右画像の対応点同士が左右方向にどれだけ離れているかを表す視差を求め、この視差から三角測量の原理を適用して対象物までの距離を算出することができる。また、対象物に直線や多角形などの既知の光パターンを投影し、投影されたパターン形状の変化から対象物の形状を求める「光切断法」と呼ばれる方法も存在し、前述の「相関法」と併用して計測が行われることもある。
【0004】
ところで、複数のカメラを用いてステレオ3次元計測を行う場合に、レンズの歪みや撮像素子の中心ずれや左右カメラの位置関係のずれ等の誤差要因によって、計測誤差が生じる。これを補正するために、計測の前に「キャリブレーション」と呼ばれる作業が必要となる。
【0005】
すなわち、形状が既知の幾何学的パターンを印刷した「キャリブレーションボード」と呼ばれる被写体を異なる距離および異なる角度で複数枚撮影し、それらの画像情報から誤差要因に関する情報を含むキャリブレーションパラメータを算出しておく。その後、ステレオ計測を行う際に、撮影した左右画像にキャリブレーションパラメータを適用し、誤差要因を取り除いた補正後の左右画像対を生成する。この補正後の左右画像対を用いて対応点の探索および視差の算出を行うことによって、誤差の少ない計測を行うことができるのである。
【0006】
しかしながら、実際の3次元計測においては、計測中の経時変化によって上述の誤差要因に変化が発生し、キャリブレーションパラメータとの間にずれが生じて、計測誤差が次第に大きくなる現象が起こる場合がある。これを防止するには、計測の前に毎回キャリブレーションを行ったり、一定時間ごとに計測を一時停止してキャリブレーションを行ったりすることも考えられるが、手間と時間が掛かるため、計測の作業性を大きく損ねてしまう。
【0007】
そこで、上述のようなキャリブレーションパラメータのずれに起因するキャリブレーションずれを補正するために、特開2004‐354257号公報(特許文献1)に開示されたキャリブレーションずれ補正装置を備えたステレオカメラが提案されている。
【0008】
上記従来のステレオカメラにおいては、撮影装置が撮影したステレオ画像から、特徴抽出装置によって幾何学的形状が既知の特徴を抽出し、この抽出された特徴に基づいて、キャリブレーションデータ補正装置によって、キャリブレーションデータ記録装置に記憶されたキャリブレーションパラメータに関するキャリブレーションずれを補正するようにしている。
【0009】
しかしながら、上記従来のステレオカメラにおいては、以下のような問題がある。すなわち、通常の3次元計測に必要な対応点探索部以外に、上記特徴点を検出するための上記特徴抽出装置が別途必要になる。したがって、上記特徴抽出装置をハードウェアで実装する場合には回路規模の増大を招いてしまう一方、ソフトウェアとして実装する場合には演算時間の増大を招いてしまうという問題がある。
【0010】
また、上記特徴抽出装置による上記特徴の抽出は、計測対象物の大まかな形状が予め分かっている場合には比較的容易であるが、計測画像のコントラストが低い場合や計測対象物の形状が頻繁に変化するような場合には適用が非常に困難になるという問題がある。
【0011】
さらに、近年、ステレオ3次元計測に用いられる撮像素子の高画素化・狭画素ピッチ化が進んで、より高精度の計測を行う要求が高まっている。そして、撮像素子の画素ピッチが狭まると、それに比例して計測距離の分解能が高まるため、高精度の計測を行うことが可能となる。ところが、その反面、キャリブレーションに求められる精度も高くなるという問題がある。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2004‐354257号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
そこで、この発明の課題は、回路規模および演算時間の増大を招くことなくキャリブレーションずれを容易に再補正し、精度の高い3次元計測を行うことができるステレオ3次元計測装置を提供することにある。
【課題を解決するための手段】
【0014】
上記課題を解決するため、この発明のステレオ3次元計測装置は、
計測対象物を撮影して画像を取得する複数のカメラと、
上記複数のカメラによって取得された複数のカメラキャリブレーションボードの撮影画像を用いてカメラキャリブレーションを行ってキャリブレーションパラメータを算出するキャリブレーション演算部と、
上記算出されたキャリブレーションパラメータを記憶する記憶部と、
上記複数のカメラによって取得された複数の上記計測対象物の画像に含まれる歪み,傾きおよびずれのうちの少なくとも一つを含む誤差を、上記キャリブレーションパラメータを用いて補正するステレオ平行化処理を行うステレオ平行化処理と、
上記ステレオ平行化処理後の複数の画像間のずれを、上記ステレオ平行化処理後の各画像における互いに対応する画素を探索して得られたデータを用いて再補正するキャリブレーションずれ再補正部と、
上記キャリブレーションずれ再補正部によって再補正された複数の上記計測対象物の画像における互いに対応する画素を対応点として探索すると共に、探索された複数の上記対応点間の距離であって上記複数のカメラのうちの少なくとも2つが配列されている方向への距離を表す視差情報を生成する対応点探索部と、
上記対応点探索部によって生成された上記視差情報から上記計測対象物までの距離情報を求める距離情報生成部と
を備えたことを特徴としている。
【0015】
上記構成によれば、キャリブレーションずれ再補正部によって、ステレオ平行化処理によるステレオ平行化処理後の複数の画像間のずれを、上記ステレオ平行化処理後の各画像における互いに対応する画素を探索して得られたデータを用いて再補正するようにしている。したがって、キャリブレーション演算部で算出されたキャリブレーションパラメータを用いてステレオ平行化処理によって計測対象物の画像に含まれる誤差を補正した際に、複数の画像間の補正しきれないずれ量を、互いに対応する画素を探索して得られたデータを用いて再補正することができる。
【0016】
したがって、本ステレオ3次元計測装置における内部ハードウェアの回路規模の増大および演算時間の増大を招くことなくキャリブレーションずれを容易に再補正し、精度の高い3次元計測を行うことができる。
【0017】
また、1実施の形態のステレオ3次元計測装置では、
上記2つのカメラが配列されている方向をx方向とし、上記2つのカメラによって撮影されている画像の面内で上記x方に直交する方向をy方向とした場合に、
上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の各画像間における少なくとも上記y方向のずれを再補正する。
【0018】
この実施の形態によれば、上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の各画像間における少なくとも上記y方向のずれを再補正するようにしている。したがって、特に高画素数・狭画素ピッチの複数のカメラで取得された複数の計測対象物の画像に基づいて3次元計測を行う際に問題になり易い上記y方向(上下方向)のキャリブレーションずれを低減することができる。
【0019】
また、1実施の形態のステレオ3次元計測装置では、
上記計測対象物に対して2次元ランダムテクスチャを投影するためのプロジェクタを備えている。
【0020】
この実施の形態によれば、上記計測対象物に対して2次元ランダムテクスチャを投影するようにしている。したがって、上記計測対象物の表面におけるテクスチャの変化が乏しい場合やコントラストが低い場合であっても、上記計測対象物の表面に輝度変化を付与することによって上記対応点探索部による対応点の探索が容易になり、安定して3次元計測を行うことができる。
【0021】
また、1実施の形態のステレオ3次元計測装置では、
上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の複数の画像から基準となる基準画像とこの基準画像と比較される残りの比較画像の夫々とでなる画像対を順次選択し、この選択された画像対の上記比較画像を上記基準画像に対して上記y方向にずらしながら両画像における互いに対応する画素を探索して上記データとしての探索パラメータを得、この得られた探索パラメータに基づいて上記比較画像の最適なずらし位置を求め、上記比較画像を上記基準画像に対して上記最適なずらし位置まで上記y方向にずらすことによって上記複数の画像間のずれを再補正する。
【0022】
この実施の形態によれば、上記キャリブレーションずれ再補正部によって、上記ステレオ平行化処理後の複数の画像から選択された画像対において、比較画像を基準画像に対して上記y方向にずらしながら互いに対応する画素を探索して得られた探索パラメータに基づいて、上記比較画像の最適なずらし位置を求めるようにしている。したがって、上記比較画像の最適なずらし位置を確実に見出すことができる。
【0023】
また、1実施の形態のステレオ3次元計測装置では、
上記記憶部は、上記キャリブレーションずれ再補正部によって求められた上記最適なずらし位置をも記憶するようになっており、
上記キャリブレーションずれ再補正部は、上記複数の画像間のずれを再補正する場合には、上記記憶部に記憶されている上記最適なずらし位置を用いて、上記比較画像を上記基準画像に対して上記最適なずらし位置まで上記y方向にずらすようになっている。
【0024】
この実施の形態によれば、上記キャリブレーションずれ再補正部によって求められた上記最適なずらし位置を、上記記憶部に記憶するようにしている。したがって、上記対応点探索部が一端中断した上記対応点の探索および視差画像の生成を再開する場合には、上記キャリブレーションずれ再補正部は、上記記憶部に記憶されている上記最適なずらし位置を用いることよって、迅速に上記複数の画像間のずれを上記中断の前と同じ位置に再補正することができ、上記対応点探索部による処理の再開を迅速に行うことができる。
【0025】
また、1実施の形態のステレオ3次元計測装置では、
上記対応点探索部は、上記対応点探索および上記視差情報の生成を行っている際に上記探索パラメータを監視し、上記探索パラメータの値が最適値よりも所定の値を超えて悪化した場合には、上記キャリブレーションずれ再補正部に対して、上記最適なずらし位置の再取得を指示する。
【0026】
この実施の形態によれば、上記対応点探索部は、上記探索パラメータの値が最適値よりも所定の値を超えて悪化した場合には、上記キャリブレーションずれ再補正部に対して、上記最適なずらし位置の再取得を指示するようにしている。したがって、上記対応点探索部が連続して上記対応点探索および上記視差情報の生成を行う場合においても、計測誤差の発生を最小限に抑えることができる。
【0027】
また、1実施の形態のステレオ3次元計測装置では、
少なくとも上記距離情報生成部によって生成された上記距離情報を表示する表示部を備え、
上記キャリブレーションずれ再補正部は、得られた上記複数の探索パラメータの値が予め設定された設定値に満たない場合には、上記キャリブレーション演算部による上記カメラキャリブレーションの実行を促す情報を上記表示部に表示させるようになっている。
【0028】
この実施の形態によれば、上記キャリブレーションずれ再補正部によって得られた上記複数の探索パラメータの値が予め設定された設定値に満たない場合には、使用者に対して上記キャリブレーションの実行を促すようにしている。したがって、上記キャリブレーションずれ再補正部によって再補正しきれないような画像のずれにも対処して、3次元計測誤差の増大を防止することができる。
【発明の効果】
【0029】
以上より明らかなように、この発明のステレオ3次元計測装置は、キャリブレーションずれ再補正部によって、ステレオ平行化処理によるステレオ平行化処理後の複数の画像間のずれを、上記ステレオ平行化処理後の各画像における互いに対応する画素を探索して得られたデータを用いて再補正するので、キャリブレーションパラメータを用いたステレオ平行化処理によって計測対象物の複数の画像を補正しても補正しきれないずれ量を、上記互いに対応する画素を探索して得られたデータを用いて、再補正することができる。
【0030】
したがって、本ステレオ3次元計測装置における内部ハードウェアの回路規模の増大および演算時間の増大を招くことなくキャリブレーションずれ容易に再補正して、精度の高い3次元計測を行うことができる。
【図面の簡単な説明】
【0031】
【図1】この発明のステレオ3次元計測装置の一例である距離計測装置のブロック図である。
【図2】図1に示す距離計測装置による3次元計測処理のフローチャートである。
【図3】図2におけるステレオ平行化処理および対応点探索処理の説明図である。
【図4】キャリブレーションボードに用いられるパターンの一例を示す図である。
【図5】左右のカメラステレオ平行化後画像の上下方向の画素ずれを示す図である。
【図6】キャリブレーションずれ再補正処理を含む対応点探索処理のフローチャートである。
【図7】キャリブレーションずれ再補正処理時における上下方向ずれ調整量と認識率との関係を示す図である。
【図8】右カメラステレオ平行化後画像の下方向への画素ずらし量の変化と視差画像の変化とを示す図である。
【図9】図1とは異なる距離計測装置のブロック図である。
【図10】図9に示す距離計測装置による文字認識処理のフローチャートである。
【図11】図9におけるプロジェクタによって投影される2次元ランダムテクスチャの一例を示す図である。
【図12】2次元ランダムなテクスチャが投影された下地面および文字上面に付与される輝度変化の説明図である。
【発明を実施するための形態】
【0032】
以下、この発明を図示の実施の形態により詳細に説明する。
【0033】
・第1実施の形態
図1は、本実施の形態のステレオ3次元計測装置としての距離計測装置のブロック図である。図1において、距離計測装置1は、ステレオカメラ2,計測演算部3,表示部4および筺体(図示せず)から構成されている。そして、計測対象物5までの距離を表す上記距離情報としての距離画像を生成して表示部4に表示する。
【0034】
上記ステレオカメラ2は、一対の左カメラ6と右カメラ7とで構成されている。ここで、左カメラ6と右カメラ7とは、左カメラ6と右カメラ7との間の距離(即ち基線長)および左カメラ6と右カメラ7とのなす角(即ち輻輳角)が一定の値になるように、上記筐体の内部で機械的に固定されて配置されている。
【0035】
本距離計測装置1では、上記左カメラ6における撮像素子の光軸中心を原点として、左カメラ6と右カメラ7とにおける両撮像素子の光軸中心を結ぶ方向をx方向(左右方向)、左カメラ6の撮像素子面内で上記x方向に直交する方向をy方向(上下方向)、上記x方向および上記y方向に直交する方向をz方向(奥行き方向)と定義する。左カメラ6および右カメラ7は、夫々CMOS(complementary metal oxide semiconductor:相補型金属酸化膜半導体)撮像素子,集光用のレンズおよび制御用のDSP(Digital Signal Processor)が一体となったカメラモジュールであり、上記DSPに外部から制御信号を与えることによって、撮影画像サイズ,焦点距離,露出,ホワイトバランス等のカメラパラメータを電気的に制御することができる。
【0036】
上記計測演算部3は、ステレオ平行化部8,対応点探索部9,キャリブレーション演算部10,キャリブレーションパラメータ記憶部11,CPU(中央演算処理装置)12,上記距離情報生成部としての距離画像生成部13および距離計算部14を含んで構成されている。ここで、対応点探索部9は、後述するキャリブレーションずれの再補正機能を有している。すなわち、対応点探索部9は、キャリブレーションずれ再補正部15を含んだ構成を有している。
【0037】
本距離計測装置1を用いた3次元計測処理の全体的な流れを、図2のフローチャートに示す。また、図3に、ステレオ平行化部8によるステレオ平行化処理および対応点探索部9による対応点探索処理の説明図を示す。図2に従って3次元計測の全体的な流れを説明するに先立って、図3に従って上記ステレオ平行化処理および上記対応点探索処理に付いて説明する。
【0038】
上記ステレオカメラ2を計測対象物5に相対する適切な位置に配置し、焦点距離や露出等を調整した後、CPU12の制御の下に左カメラ6と右カメラ7との画像キャプチャが行われる。こうして、図3(a)に示すごとく、左カメラキャプチャ画像および右カメラキャプチャ画像が得られる。
【0039】
上記ステレオカメラ2のキャプチャ画像は、レンズの歪みや左右カメラの角度ずれ等が存在するため、図3(a)に示すように歪みや傾きやずれを含む画像になっている。これを補正して左右画像の対応点探索を容易にするために、キャリブレーション演算部10によってカメラキャリブレーションと呼ばれる作業が事前に行われる。カメラキャリブレーションの詳細については後述する。
【0040】
上記カメラキャリブレーションによって算出されて、キャリブレーションパラメータ記憶部11に記憶されているキャリブレーションパラメータに基づいて、ステレオ平行化部8によって、左カメラキャプチャ画像および右カメラキャプチャ画像に対してステレオ平行化処理が施される。左右カメラのステレオ平行化後画像は、図3(b)に示すように、互いに対応する画素が画像の上下方向に揃っていると考えられる。即ち、左カメラ6のステレオ平行化後画像におけるある画素に対して、右カメラ7のステレオ平行化後画像における対応する画素は必ず同一の行に存在する。したがって、エピポーラ線上の画素を探索すれば、左右画像の対応関係を探し出すことが可能となる。
【0041】
上記対応点探索部9による実際の対応点探索処理の手順は、図3(c)に示すようになる。先ず、左カメラステレオ平行化後画像に、注目する画素を中心として縦横夫々p画素の正方形状の「相関窓」と呼ばれる領域16を設定する。そして、右カメラステレオ平行化後画像における相関窓16との同一行に同じ大きさの相関窓17を設定し、この相関窓17を左右方向にスライドさせながら、左右の相関窓16,17に含まれる画素間の相関度合いを示す評価量を計算するのである。その場合における上記相関度合いを示す評価量としては、例えばSAD(Sum of Absolute Differrence:差分絶対値和)等の画素演算で計算できる量が用いられる。
【0042】
所定の相関探索範囲の端から端まで探索した場合に、相関度合いの上記相関窓に関する合計値が最も高くなる状態での右カメラステレオ平行化後画像における相関窓17の中心画素が、左カメラステレオ平行化後画像における注目画素に対する対応点(対応画素)となる。その際に、左カメラステレオ平行化後画像の注目画素と右カメラステレオ平行化後画像の対応画素との距離(相関窓16の中心点と相関窓17の対応点との距離)を、水平方向の画素単位で表したものが視差dと定義される。
【0043】
このような探索処理を左カメラ平行化後画像の全画素に対して実施することによって、各画素に対して視差dの値が夫々一意に定まる。この視差dの値をグレースケール画像として左カメラ平行化後画像に表すと、図3(d)に示すような上記視差情報としての視差画像が得られる。
【0044】
尚、上記対応点探索処理によって上記相関探索範囲の端から端まで探索しても相関度合いが所定の値以上になる相関窓17が得られない場合は、対応点が存在しないと見なされる。左カメラ6からは見えているが右カメラ7からは見えない部分(オクルージョン領域)を探索する場合や、計測対象物5のコントラストが低い場合には、対応点が存在しないという探索結果になることが多い。図3(d)においては、計測対象物5の一部がオクルージョン領域となっている。
【0045】
以下、図2に示すフローチャートに従って、CPU12の制御の下に実行される上記ステレオ平行化処理および上記対応点探索処理を含む3次元計測処理動作について説明する。
【0046】
ステップS1a,S1bで、ステレオカメラ2における左カメラ6と右カメラ7との画像キャプチャが同じタイミングで行われ、得られた左カメラキャプチャ画像および右カメラキャプチャ画像が、ステレオ平行化部8に送出される。同様にして、上記カメラキャリブレーションの場合には、後に詳述するキャリブレーションボードが左カメラ6と右カメラ7とで撮影され、キャリブレーションボード撮影画像がキャリブレーション演算部10に送出される。ステップS2で、キャリブレーション演算部10によって、後に詳述するようなカメラキャリブレーション処理が行われる。そして、算出されたキャリブレーションパラメータがキャリブレーションパラメータ記憶部11に記憶される。
【0047】
ステップS3で、上記ステレオ平行化部8によって、キャリブレーションパラメータ記憶部11に記憶されているキャリブレーションパラメータに基づいて、左カメラキャプチャ画像および右カメラキャプチャ画像に対し、上述したようなステレオ平行化処理が施される。そして、得られた左カメラ6および右カメラ7のステレオ平行化後画像は、対応点探索部9に送出される。
【0048】
ステップS4で、上記対応点探索部9によって、上述した対応点探索処理が実行される。先ず、ステップS4aで、プレフィルタ処理が行われる。ここで、プレフィルタ処理は、左右カメラのステレオ平行化後画像の輝度差や画像内の局所的な輝度レベルの変動等を吸収するためのエッジ強調処理である。その後、ステップS4bで、実際に上記対応点探索処理が行われる。本距離計測装置1においては、左カメラ6を基準として、左カメラ6の平行化後画像上の全画素に対して右カメラ7のステレオ平行化後画像から対応点を探索し、図3(d)に示すような視差画像を生成する。この探索によって対応点が見出せなかったり対応点を誤って検出したりした場合には、上記視差画像の一部にノイズが混じることがある。特に、対応点探索時の相関窓16,17のサイズが比較的小さい場合には、計測精度が高まる代わりにノイズの割合が大きくなる傾向にある。このようなノイズ成分を低減するため、ステップS4cで、対応点探索後の上記視差画像に、ポストフィルタ処理を行って画像整形を行う。ここで、上記ポストフィルタ処理としては、例えばガウシアンフィルタ処理やメディアンフィルタ処理等の平滑化フィルタ処理、あるいは、膨張収縮等のモルフォロジー処理が用いられる。
【0049】
こうして得られた画像整形後の上記視差画像が距離画像生成部13に送出される。
【0050】
これらの上記ステレオ平行化部8および対応点探索部9による処理は、CPU12から送出される制御信号に基づいて、適切なタイミングで実行される。
【0051】
ステップS5で、上記距離画像生成部13によって、上記視差画像から距離画像が生成される。
【0052】
上記視差画像上の任意の画素の視差値dは、三角測量の原理によって、左カメラ6における撮像素子の光軸中心である原点Oからの奥行き方向の距離Zに変換できる。具体的には、ステレオカメラ2の上記基線長をAとし、左カメラ6の焦点距離をfとして、
Z=A・f/d
で計算することができる。そこで、距離画像生成部13は、上記視差画像の各画素のグレースケール画像から各画素の視差dを求め、各画素に関して視差値dから距離Zを求めることによって、上記視差画像から距離画像を生成することができるのである。
【0053】
ステップS6で、上記ステップS5において生成された距離画像が、CPU12の制御に基づいて表示部4に表示される。そうした後、3次元計測処理動作が終了される。
【0054】
さらに、本距離計測装置1においては、入力手段(図示せず)によって、上記距離画像上の1点あるいは2点が指示選択されると、1点が指示された場合にはその1点の座標値が、2点が指示された場合にはその2点間の距離が、CPU12の制御に基づいて距離計算部14によって計算され、計算結果が表示部4に表示される。
【0055】
このように、本距離計測装置1においては、上記ステレオカメラ2で撮影した計測対象物5の左右カメラ画像から上記距離画像を生成して表示すると共に、上記距離画像における対象物上の任意の1点の座標値および対象物上の任意の2点間距離を表示することができる。
【0056】
尚、上記奥行き方向の距離Zだけでなく、水平方向の距離X、垂直方向の距離Yも、視差dから三角測量の原理を用いて算出することができる。こうして、原点Oを基準とした計測対象物5の3次元座標(X,Y,Z)を得ることができる。さらに、この3つの座標値に適当な視点変換行列を掛けることによって、計測対象物5を任意の視点から見た画像を生成することもできる。
【0057】
次に、上記ステレオ平行化部8によって、左カメラキャプチャ画像および右カメラキャプチャ画像に対してステレオ平行化処理を施す際に用いられるキャリブレーションパラメータを得るためのカメラキャリブレーションについて説明する。
【0058】
上記ステレオカメラ2でキャプチャされた左右のカメラキャプチャ画像は、様々な誤差要因によって歪みや傾きやずれを含んだ画像になっている。具体的な誤差要因としては、単体要因即ちカメラ単体の誤差要因と、相対要因即ち左右カメラ6,7間の位置関係に関する要因とに分類できる。上記単体要因は、レンズの半径方向および円周方向の歪みや撮像素子の中心ずれ等である。また、上記相対要因は、左右カメラ6,7間の回転行列および並進行列で表される。これらは直接計測することができない。
【0059】
そこで、上記カメラキャリブレーションにおいては、上記キャリブレーションボードと呼ばれる幾何的な形状および寸法が既知のパターンを印刷した平板を用意し、これをステレオカメラ2の前に様々な距離および角度で配置して、なるべく多くの回数撮影を行う。上記キャリブレーションボードとしては、例えば、図4(a)に示すようなチェッカー(市松)パターンや、図4(b)に示すようなグリッド状のドット(水玉)パターン等が用いられる。しかしながらこれらのパターンに限定されるものではない。
【0060】
上記撮影されたキャリブレーションボードの画像から、チェッカーパターンであればコーナー点、グリッドパターンであればグリッドの中心点のような、特徴となる点を見出す。次に、左右カメラ画像の組において、対応する特徴点が何れであるかを探索する。このようにして求められた左右カメラ画像上の特徴点の座標の組と、上記キャリブレーションボード上の相対距離が既知の2点が撮影画像上の2点に対応付けられるという条件と、上記キャリブレーションボード上の1点が左右カメラ画像上の各1点と同一であるという条件とから、複数の方程式を立てることができる。例えば、上記キャリブレーションボードとして図4(a)に示すチェッカーパターンを用いる場合、チェッカーのコーナー数を12×8、撮影回数を10回とすると、12×8×10=960個の式が得られる。これらの式を連立方程式として解くことによって、未知数であるキャリブレーションパラメータを求めることができる。
【0061】
このようなキャリブレーションの具体的な手順については、例えば非特許文献「Z.Zhang, “IEEE Transactions on Pattern Analysis and Machine Intelligence”,#22(2000),1330−1334」等に記載されている。
【0062】
実際のキャリブレーションにおいては、上述したように多数の誤差要因(キャリブレーションパラメータ)を未知数として求めるため、得られる解はばらつきを含むものになる。即ち、全く同じ条件でキャリブレーションを行っても、得られるキャリブレーションパラメータは完全には同じにならない。尚、キャリブレーションパラメータのばらつきを可能な限り低減するために、上記キャリブレーションボードのコーナー数や撮影回数を多くして非常に多くの方程式から最小自乗法で最適な解を求めたとしても、一定量のばらつきが残ってしまう。そして、計算で求められたキャリブレーションパラメータの値と真の値との差はキャリブレーション誤差となり、一定の計測誤差を発生させることになる。特に、ステレオカメラのフォーカス合わせの性能が低い場合には、上記キャリブレーションボードの撮影時にボケが残り、特徴点の対応付けに誤差を含むことになるので、キャリブレーション誤差が大きくなる傾向があることが知られている。
【0063】
上述したような一定量の(即ち定常的な)キャリブレーション誤差に加えて、キャリブレーション後の経時変化によって非定常的なキャリブレーション誤差が発生する。このような非定常誤差には、熱膨張・熱収縮によるレンズの形状変化のように環境に応じて可逆的に変動する成分と、機械的な衝撃等によって発生する不可逆な成分とが存在する。
【0064】
実際の計測におけるキャリブレーション誤差は、上記定常的な誤差成分と、キャリブレーション後の経時変化による可逆・不可逆を含めた非定常誤差成分との和になる。そのため、計測精度を高めるためにステレオカメラ2を高画素化・狭画素ピッチ化すると、キャリブレーションに求められる精度もそれに応じて高まるので、上記定常誤差および上記非定常誤差の両方を極めて小さい値に抑える必要が生ずる。これが高精度の計測を行う場合において大きな障害となる。
【0065】
様々なキャリブレーションパラメータが誤差を含んでいる場合、それらのキャリブレーションパラメータが左カメラ6および右カメラ7のステレオ平行化後画像に与える影響は、画面の「上下方向のずれ」,「左右方向のずれ」および「その他の影響」に大きく分けられる。
【0066】
上記「上下方向のずれ」は、主に、左カメラ6あるいは右カメラ7の撮像素子の上下方向のずれ(ΔcY)、左右カメラ6,7の上下方向の位置ずれ(ΔY)、および、左右カメラ6,7の水平軸周りの角度ずれ(θX)と、関係している。これに対し、上記「左右方向のずれ」は、主に上記撮像素子の左右方向のずれ(ΔcX)、左右カメラ6,7の左右方向の位置ずれ(ΔX)、および、左右カメラ6,7の垂直軸周りの角度ずれ(θY)と、関係している。また、上記「その他の影響」として、レンズの半径方向・円周方向の歪み係数はより高次の影響(画像の中心と周辺または上下左右とで異なる影響)を及ぼす。
【0067】
計測精度を高めるためにステレオカメラ2を高画素化・狭画素ピッチ化した場合、上述したステレオ平行化後画像に対する3つの影響のうち、「上下方向のずれ」が深刻な問題となる場合がある。その理由について、以下で説明する。
【0068】
上記ステレオ平行化後画像が左右方向にずれている場合、視差が真の値と異なる値となるので計測誤差が発生する。視差が真の値dからΔdだけずれた場合に、奥行き方向距離の計測値ZがΔZの計測誤差が発生したとする。このとき、三角測量の「Z=A・f/d」の関係式から、
ΔZ/Z=−Δd/(d+Δd)≒−Δd/d
が得られる。この式から、d>>Δdの条件下では、視差の左右方向ずれの割合Δd/dと計測誤差ΔZ/Zとは略同じオーダーになることが分かる。
【0069】
例えば、左右方向のずれ量が3%とすると、それによって発生する計測誤差も約3%となる。これを逆に考えると、3%の計測誤差が許容できるならば左右方向のずれ量は3%まで許されることになる。このように、左右方向のずれは計測誤差に直接影響を与えるが、誤差が生じても計測そのものは問題なく実行することができるのである。
【0070】
これに対し、左右カメラの上記ステレオ平行化後画像が左右方向にではなく上下方向にずれている場合には、計測誤差よりも寧ろ計測そのものの可否に影響を与えてしまう可能性がある。例えば、左カメラステレオ平行化後画像における相関窓16のサイズを13画素×13画素として上記対応点探索を行う場合、上下方向の画素ずれが全くない場合には、図5(a)に示すように、左右カメラステレオ平行化後画像の対応点が上下方向に完全に揃っているため、左カメラステレオ平行化後画像に対して右カメラステレオ平行化後画像の同じラインが探索される。ところが、上下方向の画素ずれ量が13画素以上である場合には、図5(b)に示すように、左カメラステレオ平行化後画像に対して右カメラステレオ平行化後画像の全く異なるラインを探索することになる。
【0071】
上記対応点探索部9は、前段のステレオ平行化処理によって得られた左右カメラステレオ平行化後画像の対応点が、上下方向に完全に揃っていることを前提として上記対応点探索を行う。そのために、図5(b)に示す状態では対応点が全く見出せず、計測不能になってしまうのである。
【0072】
このような現象は、上記左カメラ6および右カメラ7として、比較的画素ピッチが広く画素数の少ない(数万〜100万画素程度)カメラを用いる場合には問題にはならない。ところが、計測精度向上のために、画素ピッチの狭い高画素数のカメラ(300万画素以上)を用いる場合には、顕著に現れる。
【0073】
例えば、上記左右カメラ6,7における撮像素子のサイズが1/4インチであり、画素数が500万画素である場合には、画素ピッチが約1.4μmとなる。そのため、上下方向の画素ずれ量を13画素以内に抑えるためには、キャリブレーションによる上下方向のずれを18.2μm以下の精度に抑える必要がある。これは、キャリブレーション後の熱膨張収縮等による寸法変化によっても影響を受けるレベルである。そのため、上述した上下方向のずれ要因となるパラメータの全てを高精度に求めたとしても、キャリブレーションの誤差あるいはキャリブレーション後の温度変化等によって容易に上下方向ずれ量が許容範囲を超えてしまい、計測が不能になってしまうのである。このように、左右カメラ6,7として計測精度を向上させるために高画素数のカメラを採用しても、キャリブレーションの上下ずれのために計測精度が高めることができないという問題が発生することになる。
【0074】
そこで、本距離計測装置1においては、このような問題を解決するために、以下に詳述するように、対応点探索部9のキャリブレーションずれ再補正部15によって、対応点探索時に探索パラメータを得、この得られた探索パラメータを用いてキャリブレーションずれ再補正を行うのである。そのキャリブレーションずれ再補正処理を含む上記対応点探索処理の手順を図6のフローチャートに示す。また、キャリブレーションずれ再補正処理時における上下方向ずれ調整量と認識率との関係を図7に示す。図6に従ってキャリブレーションずれ再補正処理の手順を説明するに先立って、図7に従ってキャリブレーションずれ再補正処理に付いて説明する。
【0075】
本実施の形態においては、上記探索パラメータとして「認識率」を用いる。すなわち、キャリブレーションずれ再補正部15を含む対応点探索部9は、左右カメラステレオ平行化後画像の対応点(対応画素)を探索するに先立って、先ず、左カメラステレオ平行化後画像における注目する画素領域の全画素に占める対応点が見出された画素の割合(%)を上記認識率として算出する。
【0076】
以下、詳述すると、上記「注目する画素領域」とは、左カメラステレオ平行化後画像における上記認識率算出の対象となる画素領域であり、左カメラステレオ平行化後画像の全体であっても良いし、左カメラステレオ平行化後画像のうちの計測対象物が存在する領域であって良いし、左カメラステレオ平行化後画像から後の対応点探索の際に誤りが生じ易い領域を除いた領域であっても良い。こうして設定された「注目する画素領域」の全画素に対して、先に図3(c)で説明したように、左右のカメラステレオ平行化後画像に相関窓16,17を設定し、相関窓17をスライドさせながら相関窓16,17に含まれる画素間の相関度合の合計値を計算し、その値が最も高くなる状態での相関窓17の中心画素を対応点とする対応点探索を行う。そして、「注目する画素領域」の全画素に占める対応点が見出された画素の割合(%)を上記認識率として算出するのである。
【0077】
次に、上記左カメラステレオ平行化後画像に対して右カメラステレオ平行化後画像を上方向に1画素分ずらし、先程と同様に対応点探索と認識率算出とを行う。このような操作を所定の上下方向のずらし画素範囲(例えば、「開始位置−5画素」から「開始位置+5画素」まで)で行い、図7に示すように、上下方向画素ずらし量に対する上記認識率を示す曲線を求める。そして、得られた曲線のピーク位置における上記認識率が予め定められた所定の値以上である場合に、このピーク位置を最適位置とする。そして、右カメラステレオ平行化後画像を上記最適位置の画素ずらし量だけ上下方向にずらして、左カメラステレオ平行化後画像に設定された相関窓16と同じライン上の画素に対して本来の対応点の探索処理を行うのである。
【0078】
上記左カメラステレオ平行化後画像に対する右カメラステレオ平行化後画像の下方向への画素ずらし量を変化させた場合に得られる視差画像の変化を、図8(a)〜図8(c)に示す。ここで、図8(a)は、右カメラステレオ平行化後画像を最適位置から下方向に2画素ずらした場合の視差画像である。また、図8(b)は、最適位置での視差画像である。また、図8(c)は、最適位置から上方向に2画素ずらした場合の視差画像である。
【0079】
図8(b)に示す最適位置では、画面の略全面にわたって対応点が探索されて視差が算出されている。しかしながら、図8(a)に示す下方向への2画素ずらし位置では、画面の下付近対に応点探索不能の領域が発生しており、図8(c)に示す上方向への2画素ずらし位置では、画像の上付近に対応点探索不能の領域が発生している。そのために、上記認識率が低下することになる。したがって、上下方向に画素ずらしを行いながら上記認識率のピークを求めることによって、図8(b)に示すように、最適位置を見出すことが可能であることが分かる。
【0080】
以下、図6に示すフローチャートに従って、CPU12の制御の下に実行される上記3次元計測処理動作の上記ステップS4bにおいて、対応点探索部9によって実行される上記対応点探索処理について詳細に説明する。上記3次元計測処理動作の上記ステップS4aにおいてプレフィルタ処理が終了すると、キャリブレーションずれ再補正処理を含む上記対応点探索処理動作がスタートする。
【0081】
先ず、上記対応点探索部9のキャリブレーションずれ再補正部15によって、キャリブレーションずれ再補正処理が行われる。
【0082】
ステップS4b1で、上記基準画像である左カメラステレオ平行化後画像に上記「注目する画素領域(以下、注目画素領域と言う)」を設定し、この注目画素領域の全画素に関して、上述したように、上記比較画像である右カメラステレオ平行化後画像に対して対応点探索を行う。
【0083】
ステップS4b2で、上記「注目する画素領域」の全画素に占める上記ステップS4b1において対応点(対応画素)が見出された画素の割合(%)が、当該右カメラステレオ平行化後画像の上記認識率として算出される。
【0084】
ステップS4b3で、上記上下方向のずらし画素範囲である探索範囲内の探索が終了したか否かが判別される。その結果、終了していればステップS4b5に進む一方、終了していなければステップS4b4に進む。ステップS4b4で、右カメラステレオ平行化後画像が上方向あるいは下方向に1画素分だけ移動される。そうした後に、上記ステップS4b1にリターンして、左カメラステレオ平行化後画像と上下方向に1画素だけ移動された右カメラステレオ平行化後画像との間で、上記対応点の探索が行われる。
【0085】
ステップS4b5で、上記探索範囲内での対応点探索の結果得られた上記認識率のうちで最大認識率を呈する右カメラステレオ平行化後画像の上下方向のずらし位置が算出される。ステップS4b6で、上記ステップS4b5において得られた最大認識率が、予め設定された設定値(例えば80%)以上であるか否かが判別される。その結果、上記設定値以上であればステップS4b7に進み、上記設定値以上でなければステップS4b9に進む。
【0086】
ステップS4b7で、上記ステップS4b5において算出された上記最大認識率を呈する右カメラステレオ平行化後画像の位置が、最適位置として上記最大認識率と共にキャリブレーションパラメータ記憶部11に記憶される。
【0087】
ステップS4b8で、上記ステップS4b7において記憶された最適位置に、右カメラステレオ平行化後画像が移動される。こうして、キャリブレーションずれ再補正部15によるキャリブレーションずれ再補正処理が終了する。以後、上述した本来の対応点探索処理が行われる。すなわち、先に図3(c)で説明したように、左右のカメラステレオ平行化後画像に相関窓16,17を設定し、相関窓17をスライドさせながら相関窓16,17に含まれる画素間の相関度合の合計値を計算し、その値が最も高くなる状態での相関窓17の中心画素を対応点とする。そして、左カメラステレオ平行化後画像の注目画素と右カメラステレオ平行化後画像の対応点(対応画素)との距離を水平方向の画素単位で表した視差dが得られる。このような対応点探索処理を左カメラ平行化後画像の全画素に対して実施して、各画素の視差dの値を求め、この視差dの値に基づいて、図3(d)に示すような視差画像が生成される。
【0088】
そうした後、上記対応点探索処理動作が終了されて、上記3次元計測処理動作における上記ステップS4cでの上記ポストフィルタ処理にリターンする。
【0089】
ステップS4b9で、上記ステップS4b6において設定値以上の最大認識率が得られないと判別されたため、左右のカメラステレオ平行化後画像の上下方向のずれに起因するキャリブレーションずれの度合が、本実施の形態における上記キャリブレーションずれ再補正処理では修正しきれない度合であると判定して、以後の視差画像の生成を停止する。
【0090】
ステップS4b10で、上記キャリブレーションずれの度合が上記キャリブレーションずれ再補正処理では修正しきれないため、CPU12の制御に基づいて、キャリブレーション演算部10によるカメラキャリブレーションの要求が表示部4に表示される。そうした後に、上記3次元計測処理動作における上記ステップS6の後段にリターンして、3次元計測処理動作が終了される。
【0091】
以上のように、この実施の形態においては、上記キャリブレーションによって補正しきれない、つまり上記カメラキャリブレーションによって得られた上記キャリブレーションパラメータを用いたステレオ平行化処理によって補正しきれない左右のカメラステレオ平行化後画像間のずれ量を、キャリブレーションずれ再補正部15を含む対応点探索部9による対応点の探索処理中において、キャリブレーションずれ再補正部15によるキャリブレーションずれ再補正処理で得られるデータ(検索パラメータ:認識率)を用いて再補正するようにしている。したがって、本距離計測装置1における内部ハードウェアの回路規模の増大および演算時間の増大を招くことなくキャリブレーションずれを再補正して、3次元計測の精度を高めることができる。
【0092】
また、上記右カメラステレオ平行化後画像を上下にずらすことによって左右のカメラステレオ平行化後画像の上下方向のずれを再補正するため、特に高画素数・狭画素ピッチの撮像素子を有するステレオカメラでの計測において問題になり易い上下方向のキャリブレーションずれを低減することができる。その際に、左右のカメラステレオ平行化後画像対の一方(比較画像)を他方(基準画像)に対し上下方向に順次ずらして、上記認識率のピークを探索して最適位置を設定するという手順をとることで、対応点の探索を行う際の右カメラステレオ平行化後画像の最適位置を確実に見出すことができるのである。
【0093】
また、上記実施の形態においては、上記対応画素領域の探索で見出された上記最適位置とその最適位置での上記認識率の値を、CPU12の制御に基づいて、キャリブレーションパラメータ記憶部11に記憶するようにしている。したがって、本距離計測装置1の電源を落とさずに連続的にあるいは断続的に計測を行う場合には、この最適位置に合わせた状態から処理を開始することができる。このように、上下方向の最適位置を本距離計測装置1の内部に記憶しておくことによって、最適な計測条件で迅速に計測を続けることができる。
【0094】
尚、本距離計測装置1の電源を一旦落として再度電源を立ち上げた場合には、上記最適位置から計測を開始するようにしてもよいが、温度変化等に起因する不連続な変動が生じている可能性があるため、改めて上記キャリブレーションずれ再補正処理を行って、右カメラステレオ平行化後画像に対して上下方向に画素ずらしを行って、最適位置を求めることが望ましい。
【0095】
また、上記実施の形態においては、ここまで説明した比較的小さな状態変化とは別に、長期間の経時変化や強い機械的ショック等によって、キャリブレーションを行った時の状態から大きな状態変化が発生した場合には、上記上下方向のずらし画素範囲では吸収しきれないキャリブレーションずれが生じることになる。そのような場合には、上下方向画素ずらし量‐認識率の曲線は、図7(b)に示すように明確なピークが存在せず、且つ全域にわたって低い値となる。そこで、図6に示す上記対応点探索処理動作における上記ステップS4b6において、得られた最大認識率が予め設定された設定値(例えば、80%)を下回る場合には最適位置が存在しないと判断し、CPU12の制御に基づいて、再キャリブレーションの実施を促すメッセージを表示部4に表示させるようにしている。こうすることによって、本距離計測装置1の使用者に適切なタイミングでキャリブレーションを実行させて、計測精度の大幅な低下を防ぐことができる。
【0096】
尚、上記実施の形態においては、上記左カメラ6を基準として、左カメラステレオ平行化後画像の注目画素に対する対応画素を、右カメラステレオ平行化後画像から探索している。しかしながら、右カメラ7を基準として、右カメラステレオ平行化後画像の注目画素に対する対応画素を、左カメラステレオ平行化後画像から探索しても一向に差し支えない。
【0097】
また、上記対応点探索部9を、本距離計測装置1の電源を落とさずに連続的にあるいは断続的に計測を行う場合であっても、上記対応点探索処理動作中において、所定の時間間隔で当該最適位置での上記認識率を演算することによって、上記探索パラメータである上記認識率を監視する。そして、上記認識率が最適値(例えば、上記ステップS4b5において算出された最大認識率)から所定の値(例えば10%)を超えて低下した場合に、CPU12の制御の下に、上記対応点探索処理動作を一時中断して、右カメラステレオ平行化後画像を上下方向にずらしての最適位置の再設定を指示する制御信号をキャリブレーションずれ再補正部15に送信するように構成することも可能である。こうすることによって、経時変化による計測誤差の増大を最小限に抑えることができる。
【0098】
また、上記実施の形態においては、探索パラメータとして上記認識率を採用したが、他のパラメータを最適位置の探索に用いることも可能である。例えば、計測対象物5が比較的平らなx‐y方向に延在する面上に書かれた文字のような場合には、奥行き方向の位置変化が小さいので、算出される視差dの値が狭い範囲に分布すると予想される。したがって、キャリブレーションずれが大きくなると、誤検出等によって視差dの値は広い範囲に分布するようになる。したがって、視差dの値のばらつき(標準偏差)を探索パラメータとして利用し、この探索パラメータが最小となる上下画素ずれ量を探索するという手法も考えられる。
【0099】
この場合にも、対応点探索部9で得られるデータをそのまま利用できるため、本距離計測装置1の内部ハードウェアの回路規模の増大あるいは演算時間の増大を招くことなく計測精度を高めることができる。
【0100】
また、上記実施の形態においては、上記対応点探索部9は、キャリブレーションずれ再補正部15を含んだ構成を有しているが、この発明はこれに限定されるものではない。キャリブレーションずれ再補正部15を、対応点探索部9と別のハードウェアあるいはソフトウェアのブロックとして実現することも可能である。
【0101】
・第2実施の形態
本実施の形態は、車輪のタイヤ等のコントラストが低い計測対象物の表面に刻印されている文字を認識する距離計測装置に関する。
【0102】
本実施の形態における距離計測装置のブロック図を図9に示す。図9において、上記第1実施の形態と同一の構成部材には同一の符号を付して、詳細な説明は省略する。
【0103】
本実施の形態における距離計測装置21は、上記第1実施の形態において図1に示す距離計測装置1に対して、2次元ランダムパターン投影用のプロジェクタ22と、刻印文字を文字情報として取り出すための2値化部23およびOCR(Optical Character Reader:光学式文字読取装置)等の文字認識部24が付加されている。
【0104】
本距離計測装置1を用いた文字認識処理の全体的な流れを、図10のフローチャートに示す。また、図11に、プロジェクタ22によって計測対象物5に対して投影される2次元ランダムテクスチャの説明図を示す。また、図12に、計測対象物5の表面に2次元ランダムなテクスチャを投影することによって下地面および文字上面に付与される輝度変化の説明図を示す。図10に従って文字認識の全体的な流れを説明するに先立って、図11および図12に従って上記ランダムパターンの投影と刻印文字の文字認識とに付いて説明する。
【0105】
上記プロジェクタ22は、文字認識時において、計測対象物5に対して、図11(a)および図11(b)に示すような2次元ランダムテクスチャを投影する。この計測対象物5に投影する2次元テクスチャは、対応点探索時の誤検出を防ぐために、可能な限り周期性を排除した2次元的にランダムなパターンであることが望ましい。図11(a)に示すようなランダム2値ドットパターン以外に、図11(b)に示すようなグレースケール多諧調を含むパターンや、その他これらのランダムパターンをランダムな色で彩色したパターン等の、何れのパターンを用いることも可能である
上記計測対象物5が上記タイヤのようなコントラストの低い物体である場合に、上記第1実施の形態における通常の対応点探索では対応点を検出できない場合がある。例えば、図12(a)に示すように、タイヤの表面に刻印された文字「A」を読み取る場合、タイヤの表面は一様に黒色であり、下地面と文字「A」の上面との夫々の面に殆ど輝度変化が存在しないので、対応点を検出することができない。また、輝度変化が存在する場所であっても、文字の横方向のエッジ等の左右方向に一様な輝度変化が生ずる部分では、対応点を一意に決定することができない。そのため、結果として文字「A」の縦(上下)方向のエッジしか検出できないことになり、タイヤの刻印文字「A」を正しく認識することが非常に困難になる。
【0106】
これに対し、上記タイヤの表面に2次元的にランダムなテクスチャであるランダム2値ドットパターンを投影すると、図12(b)に示すように、タイヤ表面である下地面と文字「A」の上面とに、夫々テクスチャ起因の細かい輝度変化が付与される。そのため、テクスチャのランダム性によって、これらの輝度変化を左右のステレオ平行化後画像で一対一に対応づけて認識することが可能になる。したがって、2次元ランダムテクスチャを投影しない場合に比較して、上記認識率を飛躍的に高めることができる。その結果として、計測対象物5の表面のテクスチャの変化が乏しい場合やコントラストの低い場合であっても、安定した文字認識が可能になる。
【0107】
以下、図10に示すフローチャートに従って、CPU12の制御の下に実行される上記ステレオ平行化処理および上記対応点探索処理を含む文字認識処理動作について説明する。プロジェクタ22によって、計測対象物5の表面への2次元ランダムテクスチャの投影を開始した後、文字認識処理動作が開始される。
【0108】
ステップS11a,S11b〜ステップS15で、上述した第1実施の形態におけるステップS1a,S1b〜ステップS5と同様にして、ステレオカメラ2の左カメラ6と右カメラ7とによる画像キャプチャ、カメラキャリブレーション処理、ステレオ平行化処理、プレフィルタ処理,キャリブレーションずれ再補正処理およびポストフィルタ処理を含む対応点探索処理、および、距離画像生成が行われる。
【0109】
ステップS16で、上記ステップS15において生成された距離画像に対して、2値化部23によって2値化処理が行われ、2値化画像が生成される。この2値化処理は、例えば、上記距離画像における各画素の明るさを示す画素値として、文字「A」の上面に対応する距離を基準距離として、この基準距離以下の距離を表している画素の場合には、文字領域の明るさを示す第1の画素値に設定する。これに対し、上記基準距離を上回る距離を表している画素の場合には、上記第1の画素値よりも大きなあるいは小さな第2の画素値に設定することによって行われる。尚、ステレオカメラ2に対してタイヤ下地面が傾いている場合など、単純な2値化処理では文字と下地面とを分離するのが困難な場合には、所謂「適応2値化」等のより高度な2値化処理を行ったり、画像整形のための前処理を追加したりすることもできる。
【0110】
ステップS17で、上記ステップS16において生成された2値化画像に基づいて、光学文字認識等による文字認識処理が行われる。ステップS18で、上記ステップS17における文字認識処理の結果得られた文字情報が、CPU12の制御に基づいて表示部4に表示される。そうした後、文字認識処理動作が終了される。
【0111】
以上のごとく、本実施の形態においては、上記タイヤ等のコントラストが低い計測対象物5の表面に刻印されている文字を認識する場合等に、計測対象物5の表面に2次元的にランダムなテクスチャであるランダム2値ドットパターンを投影する。したがって、タイヤ表面である下地面と文字の上面とに輝度変化を付与することができ、これらの輝度変化を左右のステレオ平行化後画像において一対一に対応づけることによって、容易に対応点の探索を行うことが可能になる。したがって、左カメラステレオ平行化後画像における上記注目画素領域の全画素に占める対応点が見出された画素の割合(%)で算出される「認識率」を精度良く算出することができ、延いては、上記文字認識における認識率を高めることができるのである。
【0112】
尚、上記第2実施の形態においては、文字認識を例に挙げて説明しているが、文字認識に限定されるものではなく、コントラストが低い計測対象物5の表面に刻印されているものは記号やパターンであっても差し支えない。
【0113】
・その他の実施の形態
上記第1,第2実施の形態においては、上記左カメラ6と右カメラ7との2つのカメラを搭載し、左右2枚の画像対から対応点探索を行っている。しかしながら、カメラの個数は2つに限らず、3眼や4眼等の多眼ステレオの場合においてもこの発明を応用することは可能である。N眼カメラ(N≧3)の場合には、何れか1つのカメラを基準のカメラとし、他の(N−1)個のカメラのキャリブレーションおよびキャリブレーションずれ補正を行うことが望ましい。すなわち、基準のカメラに対して(N−1)個のカメラのキャリブレーションを行い、(N−1)セットのキャリブレーションパラメータをキャリブレーションパラメータ記憶部に記憶しておく。キャリブレーションずれが発生した場合は、(N−1)個のカメラの夫々について基準カメラに対して上下方向にスライドさせてキャリブレーションずれ再補正を行って、上記最適位置を求めることになる。
【0114】
また、上記第1,第2実施の形態においては、簡略化のため計測対象物5が静止物体である場合について説明している。しかしながら、計測対象物5が動く物体であっても、左カメラ6と右カメラ7とを同期させて動画像を撮影し、動画像の各フレームを静止画像として取り出すことで上記第1,第2実施の形態と同様の処理を行うことができる。但し、動画像から上記3次元計測処理や文字認識処理を行う場合には、1フレーム期間内に対応点の探索および視差演算処理を行う必要があるため、高速な演算回路が必要となる。
【0115】
尚、上記各距離計測装置である3次元計測装置は、独立した計測装置として、産業用や民生用、その他の用途に用いることができる他、汎用的な携帯情報端末などの一部に組み込んだり、演算回路の一部または全部を集積回路(IC)化して利用したりすることもできる。
【0116】
その他、本発明の趣旨を損なわない範囲で種々の変更を加えることが可能である。
【産業上の利用可能性】
【0117】
本発明のステレオ3次元計測装置は、複数のカメラを用いて距離・形状などの計測を行う場合に有用であり、独立した計測装置として産業用や民生用、その他の用途に用いることができる他、汎用的な携帯情報端末などの一部に組み込んで利用したり、演算回路の一部または全部を集積回路IC化して利用したりすることができる。
【符号の説明】
【0118】
1,21…距離計測装置、
2…ステレオカメラ、
3…計測演算部、
4…表示部、
5…計測対象物、
6…左カメラ、
7…右カメラ、
8…ステレオ平行化部、
9…対応点探索部、
10…キャリブレーション演算部、
11…キャリブレーションパラメータ記憶部、
12…CPU、
13…距離画像生成部、
14…距離計算部、
15…キャリブレーションずれ再補正部、
16,17…相関窓、
22…プロジェクタ、
23…2値化部、
24…文字認識部。
【技術分野】
【0001】
この発明は、複数のカメラを用いて距離や形状等の計測を行うステレオ3次元計測装置に関する。
【背景技術】
【0002】
複数のカメラを用いて対象物までの距離や対象物の形状などを計測するステレオ3次元計測装置が実用化されている。ステレオ3次元計測の手法としては、一般に「相関法」と呼ばれる方法が知られている。
【0003】
上記「相関法」においては、カメラを左右に配置して対象物を同時に撮影し、得られた左右画像のペアから対応する画素の組である対応点を探索する。そして、左右画像の対応点同士が左右方向にどれだけ離れているかを表す視差を求め、この視差から三角測量の原理を適用して対象物までの距離を算出することができる。また、対象物に直線や多角形などの既知の光パターンを投影し、投影されたパターン形状の変化から対象物の形状を求める「光切断法」と呼ばれる方法も存在し、前述の「相関法」と併用して計測が行われることもある。
【0004】
ところで、複数のカメラを用いてステレオ3次元計測を行う場合に、レンズの歪みや撮像素子の中心ずれや左右カメラの位置関係のずれ等の誤差要因によって、計測誤差が生じる。これを補正するために、計測の前に「キャリブレーション」と呼ばれる作業が必要となる。
【0005】
すなわち、形状が既知の幾何学的パターンを印刷した「キャリブレーションボード」と呼ばれる被写体を異なる距離および異なる角度で複数枚撮影し、それらの画像情報から誤差要因に関する情報を含むキャリブレーションパラメータを算出しておく。その後、ステレオ計測を行う際に、撮影した左右画像にキャリブレーションパラメータを適用し、誤差要因を取り除いた補正後の左右画像対を生成する。この補正後の左右画像対を用いて対応点の探索および視差の算出を行うことによって、誤差の少ない計測を行うことができるのである。
【0006】
しかしながら、実際の3次元計測においては、計測中の経時変化によって上述の誤差要因に変化が発生し、キャリブレーションパラメータとの間にずれが生じて、計測誤差が次第に大きくなる現象が起こる場合がある。これを防止するには、計測の前に毎回キャリブレーションを行ったり、一定時間ごとに計測を一時停止してキャリブレーションを行ったりすることも考えられるが、手間と時間が掛かるため、計測の作業性を大きく損ねてしまう。
【0007】
そこで、上述のようなキャリブレーションパラメータのずれに起因するキャリブレーションずれを補正するために、特開2004‐354257号公報(特許文献1)に開示されたキャリブレーションずれ補正装置を備えたステレオカメラが提案されている。
【0008】
上記従来のステレオカメラにおいては、撮影装置が撮影したステレオ画像から、特徴抽出装置によって幾何学的形状が既知の特徴を抽出し、この抽出された特徴に基づいて、キャリブレーションデータ補正装置によって、キャリブレーションデータ記録装置に記憶されたキャリブレーションパラメータに関するキャリブレーションずれを補正するようにしている。
【0009】
しかしながら、上記従来のステレオカメラにおいては、以下のような問題がある。すなわち、通常の3次元計測に必要な対応点探索部以外に、上記特徴点を検出するための上記特徴抽出装置が別途必要になる。したがって、上記特徴抽出装置をハードウェアで実装する場合には回路規模の増大を招いてしまう一方、ソフトウェアとして実装する場合には演算時間の増大を招いてしまうという問題がある。
【0010】
また、上記特徴抽出装置による上記特徴の抽出は、計測対象物の大まかな形状が予め分かっている場合には比較的容易であるが、計測画像のコントラストが低い場合や計測対象物の形状が頻繁に変化するような場合には適用が非常に困難になるという問題がある。
【0011】
さらに、近年、ステレオ3次元計測に用いられる撮像素子の高画素化・狭画素ピッチ化が進んで、より高精度の計測を行う要求が高まっている。そして、撮像素子の画素ピッチが狭まると、それに比例して計測距離の分解能が高まるため、高精度の計測を行うことが可能となる。ところが、その反面、キャリブレーションに求められる精度も高くなるという問題がある。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2004‐354257号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
そこで、この発明の課題は、回路規模および演算時間の増大を招くことなくキャリブレーションずれを容易に再補正し、精度の高い3次元計測を行うことができるステレオ3次元計測装置を提供することにある。
【課題を解決するための手段】
【0014】
上記課題を解決するため、この発明のステレオ3次元計測装置は、
計測対象物を撮影して画像を取得する複数のカメラと、
上記複数のカメラによって取得された複数のカメラキャリブレーションボードの撮影画像を用いてカメラキャリブレーションを行ってキャリブレーションパラメータを算出するキャリブレーション演算部と、
上記算出されたキャリブレーションパラメータを記憶する記憶部と、
上記複数のカメラによって取得された複数の上記計測対象物の画像に含まれる歪み,傾きおよびずれのうちの少なくとも一つを含む誤差を、上記キャリブレーションパラメータを用いて補正するステレオ平行化処理を行うステレオ平行化処理と、
上記ステレオ平行化処理後の複数の画像間のずれを、上記ステレオ平行化処理後の各画像における互いに対応する画素を探索して得られたデータを用いて再補正するキャリブレーションずれ再補正部と、
上記キャリブレーションずれ再補正部によって再補正された複数の上記計測対象物の画像における互いに対応する画素を対応点として探索すると共に、探索された複数の上記対応点間の距離であって上記複数のカメラのうちの少なくとも2つが配列されている方向への距離を表す視差情報を生成する対応点探索部と、
上記対応点探索部によって生成された上記視差情報から上記計測対象物までの距離情報を求める距離情報生成部と
を備えたことを特徴としている。
【0015】
上記構成によれば、キャリブレーションずれ再補正部によって、ステレオ平行化処理によるステレオ平行化処理後の複数の画像間のずれを、上記ステレオ平行化処理後の各画像における互いに対応する画素を探索して得られたデータを用いて再補正するようにしている。したがって、キャリブレーション演算部で算出されたキャリブレーションパラメータを用いてステレオ平行化処理によって計測対象物の画像に含まれる誤差を補正した際に、複数の画像間の補正しきれないずれ量を、互いに対応する画素を探索して得られたデータを用いて再補正することができる。
【0016】
したがって、本ステレオ3次元計測装置における内部ハードウェアの回路規模の増大および演算時間の増大を招くことなくキャリブレーションずれを容易に再補正し、精度の高い3次元計測を行うことができる。
【0017】
また、1実施の形態のステレオ3次元計測装置では、
上記2つのカメラが配列されている方向をx方向とし、上記2つのカメラによって撮影されている画像の面内で上記x方に直交する方向をy方向とした場合に、
上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の各画像間における少なくとも上記y方向のずれを再補正する。
【0018】
この実施の形態によれば、上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の各画像間における少なくとも上記y方向のずれを再補正するようにしている。したがって、特に高画素数・狭画素ピッチの複数のカメラで取得された複数の計測対象物の画像に基づいて3次元計測を行う際に問題になり易い上記y方向(上下方向)のキャリブレーションずれを低減することができる。
【0019】
また、1実施の形態のステレオ3次元計測装置では、
上記計測対象物に対して2次元ランダムテクスチャを投影するためのプロジェクタを備えている。
【0020】
この実施の形態によれば、上記計測対象物に対して2次元ランダムテクスチャを投影するようにしている。したがって、上記計測対象物の表面におけるテクスチャの変化が乏しい場合やコントラストが低い場合であっても、上記計測対象物の表面に輝度変化を付与することによって上記対応点探索部による対応点の探索が容易になり、安定して3次元計測を行うことができる。
【0021】
また、1実施の形態のステレオ3次元計測装置では、
上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の複数の画像から基準となる基準画像とこの基準画像と比較される残りの比較画像の夫々とでなる画像対を順次選択し、この選択された画像対の上記比較画像を上記基準画像に対して上記y方向にずらしながら両画像における互いに対応する画素を探索して上記データとしての探索パラメータを得、この得られた探索パラメータに基づいて上記比較画像の最適なずらし位置を求め、上記比較画像を上記基準画像に対して上記最適なずらし位置まで上記y方向にずらすことによって上記複数の画像間のずれを再補正する。
【0022】
この実施の形態によれば、上記キャリブレーションずれ再補正部によって、上記ステレオ平行化処理後の複数の画像から選択された画像対において、比較画像を基準画像に対して上記y方向にずらしながら互いに対応する画素を探索して得られた探索パラメータに基づいて、上記比較画像の最適なずらし位置を求めるようにしている。したがって、上記比較画像の最適なずらし位置を確実に見出すことができる。
【0023】
また、1実施の形態のステレオ3次元計測装置では、
上記記憶部は、上記キャリブレーションずれ再補正部によって求められた上記最適なずらし位置をも記憶するようになっており、
上記キャリブレーションずれ再補正部は、上記複数の画像間のずれを再補正する場合には、上記記憶部に記憶されている上記最適なずらし位置を用いて、上記比較画像を上記基準画像に対して上記最適なずらし位置まで上記y方向にずらすようになっている。
【0024】
この実施の形態によれば、上記キャリブレーションずれ再補正部によって求められた上記最適なずらし位置を、上記記憶部に記憶するようにしている。したがって、上記対応点探索部が一端中断した上記対応点の探索および視差画像の生成を再開する場合には、上記キャリブレーションずれ再補正部は、上記記憶部に記憶されている上記最適なずらし位置を用いることよって、迅速に上記複数の画像間のずれを上記中断の前と同じ位置に再補正することができ、上記対応点探索部による処理の再開を迅速に行うことができる。
【0025】
また、1実施の形態のステレオ3次元計測装置では、
上記対応点探索部は、上記対応点探索および上記視差情報の生成を行っている際に上記探索パラメータを監視し、上記探索パラメータの値が最適値よりも所定の値を超えて悪化した場合には、上記キャリブレーションずれ再補正部に対して、上記最適なずらし位置の再取得を指示する。
【0026】
この実施の形態によれば、上記対応点探索部は、上記探索パラメータの値が最適値よりも所定の値を超えて悪化した場合には、上記キャリブレーションずれ再補正部に対して、上記最適なずらし位置の再取得を指示するようにしている。したがって、上記対応点探索部が連続して上記対応点探索および上記視差情報の生成を行う場合においても、計測誤差の発生を最小限に抑えることができる。
【0027】
また、1実施の形態のステレオ3次元計測装置では、
少なくとも上記距離情報生成部によって生成された上記距離情報を表示する表示部を備え、
上記キャリブレーションずれ再補正部は、得られた上記複数の探索パラメータの値が予め設定された設定値に満たない場合には、上記キャリブレーション演算部による上記カメラキャリブレーションの実行を促す情報を上記表示部に表示させるようになっている。
【0028】
この実施の形態によれば、上記キャリブレーションずれ再補正部によって得られた上記複数の探索パラメータの値が予め設定された設定値に満たない場合には、使用者に対して上記キャリブレーションの実行を促すようにしている。したがって、上記キャリブレーションずれ再補正部によって再補正しきれないような画像のずれにも対処して、3次元計測誤差の増大を防止することができる。
【発明の効果】
【0029】
以上より明らかなように、この発明のステレオ3次元計測装置は、キャリブレーションずれ再補正部によって、ステレオ平行化処理によるステレオ平行化処理後の複数の画像間のずれを、上記ステレオ平行化処理後の各画像における互いに対応する画素を探索して得られたデータを用いて再補正するので、キャリブレーションパラメータを用いたステレオ平行化処理によって計測対象物の複数の画像を補正しても補正しきれないずれ量を、上記互いに対応する画素を探索して得られたデータを用いて、再補正することができる。
【0030】
したがって、本ステレオ3次元計測装置における内部ハードウェアの回路規模の増大および演算時間の増大を招くことなくキャリブレーションずれ容易に再補正して、精度の高い3次元計測を行うことができる。
【図面の簡単な説明】
【0031】
【図1】この発明のステレオ3次元計測装置の一例である距離計測装置のブロック図である。
【図2】図1に示す距離計測装置による3次元計測処理のフローチャートである。
【図3】図2におけるステレオ平行化処理および対応点探索処理の説明図である。
【図4】キャリブレーションボードに用いられるパターンの一例を示す図である。
【図5】左右のカメラステレオ平行化後画像の上下方向の画素ずれを示す図である。
【図6】キャリブレーションずれ再補正処理を含む対応点探索処理のフローチャートである。
【図7】キャリブレーションずれ再補正処理時における上下方向ずれ調整量と認識率との関係を示す図である。
【図8】右カメラステレオ平行化後画像の下方向への画素ずらし量の変化と視差画像の変化とを示す図である。
【図9】図1とは異なる距離計測装置のブロック図である。
【図10】図9に示す距離計測装置による文字認識処理のフローチャートである。
【図11】図9におけるプロジェクタによって投影される2次元ランダムテクスチャの一例を示す図である。
【図12】2次元ランダムなテクスチャが投影された下地面および文字上面に付与される輝度変化の説明図である。
【発明を実施するための形態】
【0032】
以下、この発明を図示の実施の形態により詳細に説明する。
【0033】
・第1実施の形態
図1は、本実施の形態のステレオ3次元計測装置としての距離計測装置のブロック図である。図1において、距離計測装置1は、ステレオカメラ2,計測演算部3,表示部4および筺体(図示せず)から構成されている。そして、計測対象物5までの距離を表す上記距離情報としての距離画像を生成して表示部4に表示する。
【0034】
上記ステレオカメラ2は、一対の左カメラ6と右カメラ7とで構成されている。ここで、左カメラ6と右カメラ7とは、左カメラ6と右カメラ7との間の距離(即ち基線長)および左カメラ6と右カメラ7とのなす角(即ち輻輳角)が一定の値になるように、上記筐体の内部で機械的に固定されて配置されている。
【0035】
本距離計測装置1では、上記左カメラ6における撮像素子の光軸中心を原点として、左カメラ6と右カメラ7とにおける両撮像素子の光軸中心を結ぶ方向をx方向(左右方向)、左カメラ6の撮像素子面内で上記x方向に直交する方向をy方向(上下方向)、上記x方向および上記y方向に直交する方向をz方向(奥行き方向)と定義する。左カメラ6および右カメラ7は、夫々CMOS(complementary metal oxide semiconductor:相補型金属酸化膜半導体)撮像素子,集光用のレンズおよび制御用のDSP(Digital Signal Processor)が一体となったカメラモジュールであり、上記DSPに外部から制御信号を与えることによって、撮影画像サイズ,焦点距離,露出,ホワイトバランス等のカメラパラメータを電気的に制御することができる。
【0036】
上記計測演算部3は、ステレオ平行化部8,対応点探索部9,キャリブレーション演算部10,キャリブレーションパラメータ記憶部11,CPU(中央演算処理装置)12,上記距離情報生成部としての距離画像生成部13および距離計算部14を含んで構成されている。ここで、対応点探索部9は、後述するキャリブレーションずれの再補正機能を有している。すなわち、対応点探索部9は、キャリブレーションずれ再補正部15を含んだ構成を有している。
【0037】
本距離計測装置1を用いた3次元計測処理の全体的な流れを、図2のフローチャートに示す。また、図3に、ステレオ平行化部8によるステレオ平行化処理および対応点探索部9による対応点探索処理の説明図を示す。図2に従って3次元計測の全体的な流れを説明するに先立って、図3に従って上記ステレオ平行化処理および上記対応点探索処理に付いて説明する。
【0038】
上記ステレオカメラ2を計測対象物5に相対する適切な位置に配置し、焦点距離や露出等を調整した後、CPU12の制御の下に左カメラ6と右カメラ7との画像キャプチャが行われる。こうして、図3(a)に示すごとく、左カメラキャプチャ画像および右カメラキャプチャ画像が得られる。
【0039】
上記ステレオカメラ2のキャプチャ画像は、レンズの歪みや左右カメラの角度ずれ等が存在するため、図3(a)に示すように歪みや傾きやずれを含む画像になっている。これを補正して左右画像の対応点探索を容易にするために、キャリブレーション演算部10によってカメラキャリブレーションと呼ばれる作業が事前に行われる。カメラキャリブレーションの詳細については後述する。
【0040】
上記カメラキャリブレーションによって算出されて、キャリブレーションパラメータ記憶部11に記憶されているキャリブレーションパラメータに基づいて、ステレオ平行化部8によって、左カメラキャプチャ画像および右カメラキャプチャ画像に対してステレオ平行化処理が施される。左右カメラのステレオ平行化後画像は、図3(b)に示すように、互いに対応する画素が画像の上下方向に揃っていると考えられる。即ち、左カメラ6のステレオ平行化後画像におけるある画素に対して、右カメラ7のステレオ平行化後画像における対応する画素は必ず同一の行に存在する。したがって、エピポーラ線上の画素を探索すれば、左右画像の対応関係を探し出すことが可能となる。
【0041】
上記対応点探索部9による実際の対応点探索処理の手順は、図3(c)に示すようになる。先ず、左カメラステレオ平行化後画像に、注目する画素を中心として縦横夫々p画素の正方形状の「相関窓」と呼ばれる領域16を設定する。そして、右カメラステレオ平行化後画像における相関窓16との同一行に同じ大きさの相関窓17を設定し、この相関窓17を左右方向にスライドさせながら、左右の相関窓16,17に含まれる画素間の相関度合いを示す評価量を計算するのである。その場合における上記相関度合いを示す評価量としては、例えばSAD(Sum of Absolute Differrence:差分絶対値和)等の画素演算で計算できる量が用いられる。
【0042】
所定の相関探索範囲の端から端まで探索した場合に、相関度合いの上記相関窓に関する合計値が最も高くなる状態での右カメラステレオ平行化後画像における相関窓17の中心画素が、左カメラステレオ平行化後画像における注目画素に対する対応点(対応画素)となる。その際に、左カメラステレオ平行化後画像の注目画素と右カメラステレオ平行化後画像の対応画素との距離(相関窓16の中心点と相関窓17の対応点との距離)を、水平方向の画素単位で表したものが視差dと定義される。
【0043】
このような探索処理を左カメラ平行化後画像の全画素に対して実施することによって、各画素に対して視差dの値が夫々一意に定まる。この視差dの値をグレースケール画像として左カメラ平行化後画像に表すと、図3(d)に示すような上記視差情報としての視差画像が得られる。
【0044】
尚、上記対応点探索処理によって上記相関探索範囲の端から端まで探索しても相関度合いが所定の値以上になる相関窓17が得られない場合は、対応点が存在しないと見なされる。左カメラ6からは見えているが右カメラ7からは見えない部分(オクルージョン領域)を探索する場合や、計測対象物5のコントラストが低い場合には、対応点が存在しないという探索結果になることが多い。図3(d)においては、計測対象物5の一部がオクルージョン領域となっている。
【0045】
以下、図2に示すフローチャートに従って、CPU12の制御の下に実行される上記ステレオ平行化処理および上記対応点探索処理を含む3次元計測処理動作について説明する。
【0046】
ステップS1a,S1bで、ステレオカメラ2における左カメラ6と右カメラ7との画像キャプチャが同じタイミングで行われ、得られた左カメラキャプチャ画像および右カメラキャプチャ画像が、ステレオ平行化部8に送出される。同様にして、上記カメラキャリブレーションの場合には、後に詳述するキャリブレーションボードが左カメラ6と右カメラ7とで撮影され、キャリブレーションボード撮影画像がキャリブレーション演算部10に送出される。ステップS2で、キャリブレーション演算部10によって、後に詳述するようなカメラキャリブレーション処理が行われる。そして、算出されたキャリブレーションパラメータがキャリブレーションパラメータ記憶部11に記憶される。
【0047】
ステップS3で、上記ステレオ平行化部8によって、キャリブレーションパラメータ記憶部11に記憶されているキャリブレーションパラメータに基づいて、左カメラキャプチャ画像および右カメラキャプチャ画像に対し、上述したようなステレオ平行化処理が施される。そして、得られた左カメラ6および右カメラ7のステレオ平行化後画像は、対応点探索部9に送出される。
【0048】
ステップS4で、上記対応点探索部9によって、上述した対応点探索処理が実行される。先ず、ステップS4aで、プレフィルタ処理が行われる。ここで、プレフィルタ処理は、左右カメラのステレオ平行化後画像の輝度差や画像内の局所的な輝度レベルの変動等を吸収するためのエッジ強調処理である。その後、ステップS4bで、実際に上記対応点探索処理が行われる。本距離計測装置1においては、左カメラ6を基準として、左カメラ6の平行化後画像上の全画素に対して右カメラ7のステレオ平行化後画像から対応点を探索し、図3(d)に示すような視差画像を生成する。この探索によって対応点が見出せなかったり対応点を誤って検出したりした場合には、上記視差画像の一部にノイズが混じることがある。特に、対応点探索時の相関窓16,17のサイズが比較的小さい場合には、計測精度が高まる代わりにノイズの割合が大きくなる傾向にある。このようなノイズ成分を低減するため、ステップS4cで、対応点探索後の上記視差画像に、ポストフィルタ処理を行って画像整形を行う。ここで、上記ポストフィルタ処理としては、例えばガウシアンフィルタ処理やメディアンフィルタ処理等の平滑化フィルタ処理、あるいは、膨張収縮等のモルフォロジー処理が用いられる。
【0049】
こうして得られた画像整形後の上記視差画像が距離画像生成部13に送出される。
【0050】
これらの上記ステレオ平行化部8および対応点探索部9による処理は、CPU12から送出される制御信号に基づいて、適切なタイミングで実行される。
【0051】
ステップS5で、上記距離画像生成部13によって、上記視差画像から距離画像が生成される。
【0052】
上記視差画像上の任意の画素の視差値dは、三角測量の原理によって、左カメラ6における撮像素子の光軸中心である原点Oからの奥行き方向の距離Zに変換できる。具体的には、ステレオカメラ2の上記基線長をAとし、左カメラ6の焦点距離をfとして、
Z=A・f/d
で計算することができる。そこで、距離画像生成部13は、上記視差画像の各画素のグレースケール画像から各画素の視差dを求め、各画素に関して視差値dから距離Zを求めることによって、上記視差画像から距離画像を生成することができるのである。
【0053】
ステップS6で、上記ステップS5において生成された距離画像が、CPU12の制御に基づいて表示部4に表示される。そうした後、3次元計測処理動作が終了される。
【0054】
さらに、本距離計測装置1においては、入力手段(図示せず)によって、上記距離画像上の1点あるいは2点が指示選択されると、1点が指示された場合にはその1点の座標値が、2点が指示された場合にはその2点間の距離が、CPU12の制御に基づいて距離計算部14によって計算され、計算結果が表示部4に表示される。
【0055】
このように、本距離計測装置1においては、上記ステレオカメラ2で撮影した計測対象物5の左右カメラ画像から上記距離画像を生成して表示すると共に、上記距離画像における対象物上の任意の1点の座標値および対象物上の任意の2点間距離を表示することができる。
【0056】
尚、上記奥行き方向の距離Zだけでなく、水平方向の距離X、垂直方向の距離Yも、視差dから三角測量の原理を用いて算出することができる。こうして、原点Oを基準とした計測対象物5の3次元座標(X,Y,Z)を得ることができる。さらに、この3つの座標値に適当な視点変換行列を掛けることによって、計測対象物5を任意の視点から見た画像を生成することもできる。
【0057】
次に、上記ステレオ平行化部8によって、左カメラキャプチャ画像および右カメラキャプチャ画像に対してステレオ平行化処理を施す際に用いられるキャリブレーションパラメータを得るためのカメラキャリブレーションについて説明する。
【0058】
上記ステレオカメラ2でキャプチャされた左右のカメラキャプチャ画像は、様々な誤差要因によって歪みや傾きやずれを含んだ画像になっている。具体的な誤差要因としては、単体要因即ちカメラ単体の誤差要因と、相対要因即ち左右カメラ6,7間の位置関係に関する要因とに分類できる。上記単体要因は、レンズの半径方向および円周方向の歪みや撮像素子の中心ずれ等である。また、上記相対要因は、左右カメラ6,7間の回転行列および並進行列で表される。これらは直接計測することができない。
【0059】
そこで、上記カメラキャリブレーションにおいては、上記キャリブレーションボードと呼ばれる幾何的な形状および寸法が既知のパターンを印刷した平板を用意し、これをステレオカメラ2の前に様々な距離および角度で配置して、なるべく多くの回数撮影を行う。上記キャリブレーションボードとしては、例えば、図4(a)に示すようなチェッカー(市松)パターンや、図4(b)に示すようなグリッド状のドット(水玉)パターン等が用いられる。しかしながらこれらのパターンに限定されるものではない。
【0060】
上記撮影されたキャリブレーションボードの画像から、チェッカーパターンであればコーナー点、グリッドパターンであればグリッドの中心点のような、特徴となる点を見出す。次に、左右カメラ画像の組において、対応する特徴点が何れであるかを探索する。このようにして求められた左右カメラ画像上の特徴点の座標の組と、上記キャリブレーションボード上の相対距離が既知の2点が撮影画像上の2点に対応付けられるという条件と、上記キャリブレーションボード上の1点が左右カメラ画像上の各1点と同一であるという条件とから、複数の方程式を立てることができる。例えば、上記キャリブレーションボードとして図4(a)に示すチェッカーパターンを用いる場合、チェッカーのコーナー数を12×8、撮影回数を10回とすると、12×8×10=960個の式が得られる。これらの式を連立方程式として解くことによって、未知数であるキャリブレーションパラメータを求めることができる。
【0061】
このようなキャリブレーションの具体的な手順については、例えば非特許文献「Z.Zhang, “IEEE Transactions on Pattern Analysis and Machine Intelligence”,#22(2000),1330−1334」等に記載されている。
【0062】
実際のキャリブレーションにおいては、上述したように多数の誤差要因(キャリブレーションパラメータ)を未知数として求めるため、得られる解はばらつきを含むものになる。即ち、全く同じ条件でキャリブレーションを行っても、得られるキャリブレーションパラメータは完全には同じにならない。尚、キャリブレーションパラメータのばらつきを可能な限り低減するために、上記キャリブレーションボードのコーナー数や撮影回数を多くして非常に多くの方程式から最小自乗法で最適な解を求めたとしても、一定量のばらつきが残ってしまう。そして、計算で求められたキャリブレーションパラメータの値と真の値との差はキャリブレーション誤差となり、一定の計測誤差を発生させることになる。特に、ステレオカメラのフォーカス合わせの性能が低い場合には、上記キャリブレーションボードの撮影時にボケが残り、特徴点の対応付けに誤差を含むことになるので、キャリブレーション誤差が大きくなる傾向があることが知られている。
【0063】
上述したような一定量の(即ち定常的な)キャリブレーション誤差に加えて、キャリブレーション後の経時変化によって非定常的なキャリブレーション誤差が発生する。このような非定常誤差には、熱膨張・熱収縮によるレンズの形状変化のように環境に応じて可逆的に変動する成分と、機械的な衝撃等によって発生する不可逆な成分とが存在する。
【0064】
実際の計測におけるキャリブレーション誤差は、上記定常的な誤差成分と、キャリブレーション後の経時変化による可逆・不可逆を含めた非定常誤差成分との和になる。そのため、計測精度を高めるためにステレオカメラ2を高画素化・狭画素ピッチ化すると、キャリブレーションに求められる精度もそれに応じて高まるので、上記定常誤差および上記非定常誤差の両方を極めて小さい値に抑える必要が生ずる。これが高精度の計測を行う場合において大きな障害となる。
【0065】
様々なキャリブレーションパラメータが誤差を含んでいる場合、それらのキャリブレーションパラメータが左カメラ6および右カメラ7のステレオ平行化後画像に与える影響は、画面の「上下方向のずれ」,「左右方向のずれ」および「その他の影響」に大きく分けられる。
【0066】
上記「上下方向のずれ」は、主に、左カメラ6あるいは右カメラ7の撮像素子の上下方向のずれ(ΔcY)、左右カメラ6,7の上下方向の位置ずれ(ΔY)、および、左右カメラ6,7の水平軸周りの角度ずれ(θX)と、関係している。これに対し、上記「左右方向のずれ」は、主に上記撮像素子の左右方向のずれ(ΔcX)、左右カメラ6,7の左右方向の位置ずれ(ΔX)、および、左右カメラ6,7の垂直軸周りの角度ずれ(θY)と、関係している。また、上記「その他の影響」として、レンズの半径方向・円周方向の歪み係数はより高次の影響(画像の中心と周辺または上下左右とで異なる影響)を及ぼす。
【0067】
計測精度を高めるためにステレオカメラ2を高画素化・狭画素ピッチ化した場合、上述したステレオ平行化後画像に対する3つの影響のうち、「上下方向のずれ」が深刻な問題となる場合がある。その理由について、以下で説明する。
【0068】
上記ステレオ平行化後画像が左右方向にずれている場合、視差が真の値と異なる値となるので計測誤差が発生する。視差が真の値dからΔdだけずれた場合に、奥行き方向距離の計測値ZがΔZの計測誤差が発生したとする。このとき、三角測量の「Z=A・f/d」の関係式から、
ΔZ/Z=−Δd/(d+Δd)≒−Δd/d
が得られる。この式から、d>>Δdの条件下では、視差の左右方向ずれの割合Δd/dと計測誤差ΔZ/Zとは略同じオーダーになることが分かる。
【0069】
例えば、左右方向のずれ量が3%とすると、それによって発生する計測誤差も約3%となる。これを逆に考えると、3%の計測誤差が許容できるならば左右方向のずれ量は3%まで許されることになる。このように、左右方向のずれは計測誤差に直接影響を与えるが、誤差が生じても計測そのものは問題なく実行することができるのである。
【0070】
これに対し、左右カメラの上記ステレオ平行化後画像が左右方向にではなく上下方向にずれている場合には、計測誤差よりも寧ろ計測そのものの可否に影響を与えてしまう可能性がある。例えば、左カメラステレオ平行化後画像における相関窓16のサイズを13画素×13画素として上記対応点探索を行う場合、上下方向の画素ずれが全くない場合には、図5(a)に示すように、左右カメラステレオ平行化後画像の対応点が上下方向に完全に揃っているため、左カメラステレオ平行化後画像に対して右カメラステレオ平行化後画像の同じラインが探索される。ところが、上下方向の画素ずれ量が13画素以上である場合には、図5(b)に示すように、左カメラステレオ平行化後画像に対して右カメラステレオ平行化後画像の全く異なるラインを探索することになる。
【0071】
上記対応点探索部9は、前段のステレオ平行化処理によって得られた左右カメラステレオ平行化後画像の対応点が、上下方向に完全に揃っていることを前提として上記対応点探索を行う。そのために、図5(b)に示す状態では対応点が全く見出せず、計測不能になってしまうのである。
【0072】
このような現象は、上記左カメラ6および右カメラ7として、比較的画素ピッチが広く画素数の少ない(数万〜100万画素程度)カメラを用いる場合には問題にはならない。ところが、計測精度向上のために、画素ピッチの狭い高画素数のカメラ(300万画素以上)を用いる場合には、顕著に現れる。
【0073】
例えば、上記左右カメラ6,7における撮像素子のサイズが1/4インチであり、画素数が500万画素である場合には、画素ピッチが約1.4μmとなる。そのため、上下方向の画素ずれ量を13画素以内に抑えるためには、キャリブレーションによる上下方向のずれを18.2μm以下の精度に抑える必要がある。これは、キャリブレーション後の熱膨張収縮等による寸法変化によっても影響を受けるレベルである。そのため、上述した上下方向のずれ要因となるパラメータの全てを高精度に求めたとしても、キャリブレーションの誤差あるいはキャリブレーション後の温度変化等によって容易に上下方向ずれ量が許容範囲を超えてしまい、計測が不能になってしまうのである。このように、左右カメラ6,7として計測精度を向上させるために高画素数のカメラを採用しても、キャリブレーションの上下ずれのために計測精度が高めることができないという問題が発生することになる。
【0074】
そこで、本距離計測装置1においては、このような問題を解決するために、以下に詳述するように、対応点探索部9のキャリブレーションずれ再補正部15によって、対応点探索時に探索パラメータを得、この得られた探索パラメータを用いてキャリブレーションずれ再補正を行うのである。そのキャリブレーションずれ再補正処理を含む上記対応点探索処理の手順を図6のフローチャートに示す。また、キャリブレーションずれ再補正処理時における上下方向ずれ調整量と認識率との関係を図7に示す。図6に従ってキャリブレーションずれ再補正処理の手順を説明するに先立って、図7に従ってキャリブレーションずれ再補正処理に付いて説明する。
【0075】
本実施の形態においては、上記探索パラメータとして「認識率」を用いる。すなわち、キャリブレーションずれ再補正部15を含む対応点探索部9は、左右カメラステレオ平行化後画像の対応点(対応画素)を探索するに先立って、先ず、左カメラステレオ平行化後画像における注目する画素領域の全画素に占める対応点が見出された画素の割合(%)を上記認識率として算出する。
【0076】
以下、詳述すると、上記「注目する画素領域」とは、左カメラステレオ平行化後画像における上記認識率算出の対象となる画素領域であり、左カメラステレオ平行化後画像の全体であっても良いし、左カメラステレオ平行化後画像のうちの計測対象物が存在する領域であって良いし、左カメラステレオ平行化後画像から後の対応点探索の際に誤りが生じ易い領域を除いた領域であっても良い。こうして設定された「注目する画素領域」の全画素に対して、先に図3(c)で説明したように、左右のカメラステレオ平行化後画像に相関窓16,17を設定し、相関窓17をスライドさせながら相関窓16,17に含まれる画素間の相関度合の合計値を計算し、その値が最も高くなる状態での相関窓17の中心画素を対応点とする対応点探索を行う。そして、「注目する画素領域」の全画素に占める対応点が見出された画素の割合(%)を上記認識率として算出するのである。
【0077】
次に、上記左カメラステレオ平行化後画像に対して右カメラステレオ平行化後画像を上方向に1画素分ずらし、先程と同様に対応点探索と認識率算出とを行う。このような操作を所定の上下方向のずらし画素範囲(例えば、「開始位置−5画素」から「開始位置+5画素」まで)で行い、図7に示すように、上下方向画素ずらし量に対する上記認識率を示す曲線を求める。そして、得られた曲線のピーク位置における上記認識率が予め定められた所定の値以上である場合に、このピーク位置を最適位置とする。そして、右カメラステレオ平行化後画像を上記最適位置の画素ずらし量だけ上下方向にずらして、左カメラステレオ平行化後画像に設定された相関窓16と同じライン上の画素に対して本来の対応点の探索処理を行うのである。
【0078】
上記左カメラステレオ平行化後画像に対する右カメラステレオ平行化後画像の下方向への画素ずらし量を変化させた場合に得られる視差画像の変化を、図8(a)〜図8(c)に示す。ここで、図8(a)は、右カメラステレオ平行化後画像を最適位置から下方向に2画素ずらした場合の視差画像である。また、図8(b)は、最適位置での視差画像である。また、図8(c)は、最適位置から上方向に2画素ずらした場合の視差画像である。
【0079】
図8(b)に示す最適位置では、画面の略全面にわたって対応点が探索されて視差が算出されている。しかしながら、図8(a)に示す下方向への2画素ずらし位置では、画面の下付近対に応点探索不能の領域が発生しており、図8(c)に示す上方向への2画素ずらし位置では、画像の上付近に対応点探索不能の領域が発生している。そのために、上記認識率が低下することになる。したがって、上下方向に画素ずらしを行いながら上記認識率のピークを求めることによって、図8(b)に示すように、最適位置を見出すことが可能であることが分かる。
【0080】
以下、図6に示すフローチャートに従って、CPU12の制御の下に実行される上記3次元計測処理動作の上記ステップS4bにおいて、対応点探索部9によって実行される上記対応点探索処理について詳細に説明する。上記3次元計測処理動作の上記ステップS4aにおいてプレフィルタ処理が終了すると、キャリブレーションずれ再補正処理を含む上記対応点探索処理動作がスタートする。
【0081】
先ず、上記対応点探索部9のキャリブレーションずれ再補正部15によって、キャリブレーションずれ再補正処理が行われる。
【0082】
ステップS4b1で、上記基準画像である左カメラステレオ平行化後画像に上記「注目する画素領域(以下、注目画素領域と言う)」を設定し、この注目画素領域の全画素に関して、上述したように、上記比較画像である右カメラステレオ平行化後画像に対して対応点探索を行う。
【0083】
ステップS4b2で、上記「注目する画素領域」の全画素に占める上記ステップS4b1において対応点(対応画素)が見出された画素の割合(%)が、当該右カメラステレオ平行化後画像の上記認識率として算出される。
【0084】
ステップS4b3で、上記上下方向のずらし画素範囲である探索範囲内の探索が終了したか否かが判別される。その結果、終了していればステップS4b5に進む一方、終了していなければステップS4b4に進む。ステップS4b4で、右カメラステレオ平行化後画像が上方向あるいは下方向に1画素分だけ移動される。そうした後に、上記ステップS4b1にリターンして、左カメラステレオ平行化後画像と上下方向に1画素だけ移動された右カメラステレオ平行化後画像との間で、上記対応点の探索が行われる。
【0085】
ステップS4b5で、上記探索範囲内での対応点探索の結果得られた上記認識率のうちで最大認識率を呈する右カメラステレオ平行化後画像の上下方向のずらし位置が算出される。ステップS4b6で、上記ステップS4b5において得られた最大認識率が、予め設定された設定値(例えば80%)以上であるか否かが判別される。その結果、上記設定値以上であればステップS4b7に進み、上記設定値以上でなければステップS4b9に進む。
【0086】
ステップS4b7で、上記ステップS4b5において算出された上記最大認識率を呈する右カメラステレオ平行化後画像の位置が、最適位置として上記最大認識率と共にキャリブレーションパラメータ記憶部11に記憶される。
【0087】
ステップS4b8で、上記ステップS4b7において記憶された最適位置に、右カメラステレオ平行化後画像が移動される。こうして、キャリブレーションずれ再補正部15によるキャリブレーションずれ再補正処理が終了する。以後、上述した本来の対応点探索処理が行われる。すなわち、先に図3(c)で説明したように、左右のカメラステレオ平行化後画像に相関窓16,17を設定し、相関窓17をスライドさせながら相関窓16,17に含まれる画素間の相関度合の合計値を計算し、その値が最も高くなる状態での相関窓17の中心画素を対応点とする。そして、左カメラステレオ平行化後画像の注目画素と右カメラステレオ平行化後画像の対応点(対応画素)との距離を水平方向の画素単位で表した視差dが得られる。このような対応点探索処理を左カメラ平行化後画像の全画素に対して実施して、各画素の視差dの値を求め、この視差dの値に基づいて、図3(d)に示すような視差画像が生成される。
【0088】
そうした後、上記対応点探索処理動作が終了されて、上記3次元計測処理動作における上記ステップS4cでの上記ポストフィルタ処理にリターンする。
【0089】
ステップS4b9で、上記ステップS4b6において設定値以上の最大認識率が得られないと判別されたため、左右のカメラステレオ平行化後画像の上下方向のずれに起因するキャリブレーションずれの度合が、本実施の形態における上記キャリブレーションずれ再補正処理では修正しきれない度合であると判定して、以後の視差画像の生成を停止する。
【0090】
ステップS4b10で、上記キャリブレーションずれの度合が上記キャリブレーションずれ再補正処理では修正しきれないため、CPU12の制御に基づいて、キャリブレーション演算部10によるカメラキャリブレーションの要求が表示部4に表示される。そうした後に、上記3次元計測処理動作における上記ステップS6の後段にリターンして、3次元計測処理動作が終了される。
【0091】
以上のように、この実施の形態においては、上記キャリブレーションによって補正しきれない、つまり上記カメラキャリブレーションによって得られた上記キャリブレーションパラメータを用いたステレオ平行化処理によって補正しきれない左右のカメラステレオ平行化後画像間のずれ量を、キャリブレーションずれ再補正部15を含む対応点探索部9による対応点の探索処理中において、キャリブレーションずれ再補正部15によるキャリブレーションずれ再補正処理で得られるデータ(検索パラメータ:認識率)を用いて再補正するようにしている。したがって、本距離計測装置1における内部ハードウェアの回路規模の増大および演算時間の増大を招くことなくキャリブレーションずれを再補正して、3次元計測の精度を高めることができる。
【0092】
また、上記右カメラステレオ平行化後画像を上下にずらすことによって左右のカメラステレオ平行化後画像の上下方向のずれを再補正するため、特に高画素数・狭画素ピッチの撮像素子を有するステレオカメラでの計測において問題になり易い上下方向のキャリブレーションずれを低減することができる。その際に、左右のカメラステレオ平行化後画像対の一方(比較画像)を他方(基準画像)に対し上下方向に順次ずらして、上記認識率のピークを探索して最適位置を設定するという手順をとることで、対応点の探索を行う際の右カメラステレオ平行化後画像の最適位置を確実に見出すことができるのである。
【0093】
また、上記実施の形態においては、上記対応画素領域の探索で見出された上記最適位置とその最適位置での上記認識率の値を、CPU12の制御に基づいて、キャリブレーションパラメータ記憶部11に記憶するようにしている。したがって、本距離計測装置1の電源を落とさずに連続的にあるいは断続的に計測を行う場合には、この最適位置に合わせた状態から処理を開始することができる。このように、上下方向の最適位置を本距離計測装置1の内部に記憶しておくことによって、最適な計測条件で迅速に計測を続けることができる。
【0094】
尚、本距離計測装置1の電源を一旦落として再度電源を立ち上げた場合には、上記最適位置から計測を開始するようにしてもよいが、温度変化等に起因する不連続な変動が生じている可能性があるため、改めて上記キャリブレーションずれ再補正処理を行って、右カメラステレオ平行化後画像に対して上下方向に画素ずらしを行って、最適位置を求めることが望ましい。
【0095】
また、上記実施の形態においては、ここまで説明した比較的小さな状態変化とは別に、長期間の経時変化や強い機械的ショック等によって、キャリブレーションを行った時の状態から大きな状態変化が発生した場合には、上記上下方向のずらし画素範囲では吸収しきれないキャリブレーションずれが生じることになる。そのような場合には、上下方向画素ずらし量‐認識率の曲線は、図7(b)に示すように明確なピークが存在せず、且つ全域にわたって低い値となる。そこで、図6に示す上記対応点探索処理動作における上記ステップS4b6において、得られた最大認識率が予め設定された設定値(例えば、80%)を下回る場合には最適位置が存在しないと判断し、CPU12の制御に基づいて、再キャリブレーションの実施を促すメッセージを表示部4に表示させるようにしている。こうすることによって、本距離計測装置1の使用者に適切なタイミングでキャリブレーションを実行させて、計測精度の大幅な低下を防ぐことができる。
【0096】
尚、上記実施の形態においては、上記左カメラ6を基準として、左カメラステレオ平行化後画像の注目画素に対する対応画素を、右カメラステレオ平行化後画像から探索している。しかしながら、右カメラ7を基準として、右カメラステレオ平行化後画像の注目画素に対する対応画素を、左カメラステレオ平行化後画像から探索しても一向に差し支えない。
【0097】
また、上記対応点探索部9を、本距離計測装置1の電源を落とさずに連続的にあるいは断続的に計測を行う場合であっても、上記対応点探索処理動作中において、所定の時間間隔で当該最適位置での上記認識率を演算することによって、上記探索パラメータである上記認識率を監視する。そして、上記認識率が最適値(例えば、上記ステップS4b5において算出された最大認識率)から所定の値(例えば10%)を超えて低下した場合に、CPU12の制御の下に、上記対応点探索処理動作を一時中断して、右カメラステレオ平行化後画像を上下方向にずらしての最適位置の再設定を指示する制御信号をキャリブレーションずれ再補正部15に送信するように構成することも可能である。こうすることによって、経時変化による計測誤差の増大を最小限に抑えることができる。
【0098】
また、上記実施の形態においては、探索パラメータとして上記認識率を採用したが、他のパラメータを最適位置の探索に用いることも可能である。例えば、計測対象物5が比較的平らなx‐y方向に延在する面上に書かれた文字のような場合には、奥行き方向の位置変化が小さいので、算出される視差dの値が狭い範囲に分布すると予想される。したがって、キャリブレーションずれが大きくなると、誤検出等によって視差dの値は広い範囲に分布するようになる。したがって、視差dの値のばらつき(標準偏差)を探索パラメータとして利用し、この探索パラメータが最小となる上下画素ずれ量を探索するという手法も考えられる。
【0099】
この場合にも、対応点探索部9で得られるデータをそのまま利用できるため、本距離計測装置1の内部ハードウェアの回路規模の増大あるいは演算時間の増大を招くことなく計測精度を高めることができる。
【0100】
また、上記実施の形態においては、上記対応点探索部9は、キャリブレーションずれ再補正部15を含んだ構成を有しているが、この発明はこれに限定されるものではない。キャリブレーションずれ再補正部15を、対応点探索部9と別のハードウェアあるいはソフトウェアのブロックとして実現することも可能である。
【0101】
・第2実施の形態
本実施の形態は、車輪のタイヤ等のコントラストが低い計測対象物の表面に刻印されている文字を認識する距離計測装置に関する。
【0102】
本実施の形態における距離計測装置のブロック図を図9に示す。図9において、上記第1実施の形態と同一の構成部材には同一の符号を付して、詳細な説明は省略する。
【0103】
本実施の形態における距離計測装置21は、上記第1実施の形態において図1に示す距離計測装置1に対して、2次元ランダムパターン投影用のプロジェクタ22と、刻印文字を文字情報として取り出すための2値化部23およびOCR(Optical Character Reader:光学式文字読取装置)等の文字認識部24が付加されている。
【0104】
本距離計測装置1を用いた文字認識処理の全体的な流れを、図10のフローチャートに示す。また、図11に、プロジェクタ22によって計測対象物5に対して投影される2次元ランダムテクスチャの説明図を示す。また、図12に、計測対象物5の表面に2次元ランダムなテクスチャを投影することによって下地面および文字上面に付与される輝度変化の説明図を示す。図10に従って文字認識の全体的な流れを説明するに先立って、図11および図12に従って上記ランダムパターンの投影と刻印文字の文字認識とに付いて説明する。
【0105】
上記プロジェクタ22は、文字認識時において、計測対象物5に対して、図11(a)および図11(b)に示すような2次元ランダムテクスチャを投影する。この計測対象物5に投影する2次元テクスチャは、対応点探索時の誤検出を防ぐために、可能な限り周期性を排除した2次元的にランダムなパターンであることが望ましい。図11(a)に示すようなランダム2値ドットパターン以外に、図11(b)に示すようなグレースケール多諧調を含むパターンや、その他これらのランダムパターンをランダムな色で彩色したパターン等の、何れのパターンを用いることも可能である
上記計測対象物5が上記タイヤのようなコントラストの低い物体である場合に、上記第1実施の形態における通常の対応点探索では対応点を検出できない場合がある。例えば、図12(a)に示すように、タイヤの表面に刻印された文字「A」を読み取る場合、タイヤの表面は一様に黒色であり、下地面と文字「A」の上面との夫々の面に殆ど輝度変化が存在しないので、対応点を検出することができない。また、輝度変化が存在する場所であっても、文字の横方向のエッジ等の左右方向に一様な輝度変化が生ずる部分では、対応点を一意に決定することができない。そのため、結果として文字「A」の縦(上下)方向のエッジしか検出できないことになり、タイヤの刻印文字「A」を正しく認識することが非常に困難になる。
【0106】
これに対し、上記タイヤの表面に2次元的にランダムなテクスチャであるランダム2値ドットパターンを投影すると、図12(b)に示すように、タイヤ表面である下地面と文字「A」の上面とに、夫々テクスチャ起因の細かい輝度変化が付与される。そのため、テクスチャのランダム性によって、これらの輝度変化を左右のステレオ平行化後画像で一対一に対応づけて認識することが可能になる。したがって、2次元ランダムテクスチャを投影しない場合に比較して、上記認識率を飛躍的に高めることができる。その結果として、計測対象物5の表面のテクスチャの変化が乏しい場合やコントラストの低い場合であっても、安定した文字認識が可能になる。
【0107】
以下、図10に示すフローチャートに従って、CPU12の制御の下に実行される上記ステレオ平行化処理および上記対応点探索処理を含む文字認識処理動作について説明する。プロジェクタ22によって、計測対象物5の表面への2次元ランダムテクスチャの投影を開始した後、文字認識処理動作が開始される。
【0108】
ステップS11a,S11b〜ステップS15で、上述した第1実施の形態におけるステップS1a,S1b〜ステップS5と同様にして、ステレオカメラ2の左カメラ6と右カメラ7とによる画像キャプチャ、カメラキャリブレーション処理、ステレオ平行化処理、プレフィルタ処理,キャリブレーションずれ再補正処理およびポストフィルタ処理を含む対応点探索処理、および、距離画像生成が行われる。
【0109】
ステップS16で、上記ステップS15において生成された距離画像に対して、2値化部23によって2値化処理が行われ、2値化画像が生成される。この2値化処理は、例えば、上記距離画像における各画素の明るさを示す画素値として、文字「A」の上面に対応する距離を基準距離として、この基準距離以下の距離を表している画素の場合には、文字領域の明るさを示す第1の画素値に設定する。これに対し、上記基準距離を上回る距離を表している画素の場合には、上記第1の画素値よりも大きなあるいは小さな第2の画素値に設定することによって行われる。尚、ステレオカメラ2に対してタイヤ下地面が傾いている場合など、単純な2値化処理では文字と下地面とを分離するのが困難な場合には、所謂「適応2値化」等のより高度な2値化処理を行ったり、画像整形のための前処理を追加したりすることもできる。
【0110】
ステップS17で、上記ステップS16において生成された2値化画像に基づいて、光学文字認識等による文字認識処理が行われる。ステップS18で、上記ステップS17における文字認識処理の結果得られた文字情報が、CPU12の制御に基づいて表示部4に表示される。そうした後、文字認識処理動作が終了される。
【0111】
以上のごとく、本実施の形態においては、上記タイヤ等のコントラストが低い計測対象物5の表面に刻印されている文字を認識する場合等に、計測対象物5の表面に2次元的にランダムなテクスチャであるランダム2値ドットパターンを投影する。したがって、タイヤ表面である下地面と文字の上面とに輝度変化を付与することができ、これらの輝度変化を左右のステレオ平行化後画像において一対一に対応づけることによって、容易に対応点の探索を行うことが可能になる。したがって、左カメラステレオ平行化後画像における上記注目画素領域の全画素に占める対応点が見出された画素の割合(%)で算出される「認識率」を精度良く算出することができ、延いては、上記文字認識における認識率を高めることができるのである。
【0112】
尚、上記第2実施の形態においては、文字認識を例に挙げて説明しているが、文字認識に限定されるものではなく、コントラストが低い計測対象物5の表面に刻印されているものは記号やパターンであっても差し支えない。
【0113】
・その他の実施の形態
上記第1,第2実施の形態においては、上記左カメラ6と右カメラ7との2つのカメラを搭載し、左右2枚の画像対から対応点探索を行っている。しかしながら、カメラの個数は2つに限らず、3眼や4眼等の多眼ステレオの場合においてもこの発明を応用することは可能である。N眼カメラ(N≧3)の場合には、何れか1つのカメラを基準のカメラとし、他の(N−1)個のカメラのキャリブレーションおよびキャリブレーションずれ補正を行うことが望ましい。すなわち、基準のカメラに対して(N−1)個のカメラのキャリブレーションを行い、(N−1)セットのキャリブレーションパラメータをキャリブレーションパラメータ記憶部に記憶しておく。キャリブレーションずれが発生した場合は、(N−1)個のカメラの夫々について基準カメラに対して上下方向にスライドさせてキャリブレーションずれ再補正を行って、上記最適位置を求めることになる。
【0114】
また、上記第1,第2実施の形態においては、簡略化のため計測対象物5が静止物体である場合について説明している。しかしながら、計測対象物5が動く物体であっても、左カメラ6と右カメラ7とを同期させて動画像を撮影し、動画像の各フレームを静止画像として取り出すことで上記第1,第2実施の形態と同様の処理を行うことができる。但し、動画像から上記3次元計測処理や文字認識処理を行う場合には、1フレーム期間内に対応点の探索および視差演算処理を行う必要があるため、高速な演算回路が必要となる。
【0115】
尚、上記各距離計測装置である3次元計測装置は、独立した計測装置として、産業用や民生用、その他の用途に用いることができる他、汎用的な携帯情報端末などの一部に組み込んだり、演算回路の一部または全部を集積回路(IC)化して利用したりすることもできる。
【0116】
その他、本発明の趣旨を損なわない範囲で種々の変更を加えることが可能である。
【産業上の利用可能性】
【0117】
本発明のステレオ3次元計測装置は、複数のカメラを用いて距離・形状などの計測を行う場合に有用であり、独立した計測装置として産業用や民生用、その他の用途に用いることができる他、汎用的な携帯情報端末などの一部に組み込んで利用したり、演算回路の一部または全部を集積回路IC化して利用したりすることができる。
【符号の説明】
【0118】
1,21…距離計測装置、
2…ステレオカメラ、
3…計測演算部、
4…表示部、
5…計測対象物、
6…左カメラ、
7…右カメラ、
8…ステレオ平行化部、
9…対応点探索部、
10…キャリブレーション演算部、
11…キャリブレーションパラメータ記憶部、
12…CPU、
13…距離画像生成部、
14…距離計算部、
15…キャリブレーションずれ再補正部、
16,17…相関窓、
22…プロジェクタ、
23…2値化部、
24…文字認識部。
【特許請求の範囲】
【請求項1】
計測対象物を撮影して画像を取得する複数のカメラと、
上記複数のカメラによって取得された複数のカメラキャリブレーションボードの撮影画像を用いてカメラキャリブレーションを行ってキャリブレーションパラメータを算出するキャリブレーション演算部と、
上記算出されたキャリブレーションパラメータを記憶する記憶部と、
上記複数のカメラによって取得された複数の上記計測対象物の画像に含まれる歪み,傾きおよびずれのうちの少なくとも一つを含む誤差を、上記キャリブレーションパラメータを用いて補正するステレオ平行化処理を行うステレオ平行化処理と、
上記ステレオ平行化処理後の複数の画像間のずれを、上記ステレオ平行化処理後の各画像における互いに対応する画素を探索して得られたデータを用いて再補正するキャリブレーションずれ再補正部と、
上記キャリブレーションずれ再補正部によって再補正された複数の上記計測対象物の画像における互いに対応する画素を対応点として探索すると共に、探索された複数の上記対応点間の距離であって上記複数のカメラのうちの少なくとも2つが配列されている方向への距離を表す視差情報を生成する対応点探索部と、
上記対応点探索部によって生成された上記視差情報から上記計測対象物までの距離情報を求める距離情報生成部と
を備えたことを特徴とするステレオ3次元計測装置。
【請求項2】
請求項1に記載のステレオ3次元計測装置において、
上記2つのカメラが配列されている方向をx方向とし、上記2つのカメラによって撮影されている画像の面内で上記x方に直交する方向をy方向とした場合に、
上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の各画像間における少なくとも上記y方向のずれを再補正する
ことを特徴とするステレオ3次元計測装置。
【請求項3】
請求項1あるいは請求項2に記載のステレオ3次元計測装置において、
上記計測対象物に対して2次元ランダムテクスチャを投影するプロジェクタを備えた
ことを特徴とするステレオ3次元計測装置。
【請求項4】
請求項2あるいは請求項3に記載のステレオ3次元計測装置において、
上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の複数の画像から基準となる基準画像とこの基準画像と比較される残りの比較画像の夫々とでなる画像対を順次選択し、この選択された画像対の上記比較画像を上記基準画像に対して上記y方向にずらしながら両画像における互いに対応する画素を探索して上記データとしての探索パラメータを得、この得られた探索パラメータに基づいて上記比較画像の最適なずらし位置を求め、上記比較画像を上記基準画像に対して上記最適なずらし位置まで上記y方向にずらすことによって上記複数の画像間のずれを再補正する
ことを特徴とするステレオ3次元計測装置。
【請求項5】
請求項4に記載のステレオ3次元計測装置において、
上記記憶部は、上記キャリブレーションずれ再補正部によって求められた上記最適なずらし位置をも記憶するようになっており、
上記キャリブレーションずれ再補正部は、上記複数の画像間のずれを再補正する場合には、上記記憶部に記憶されている上記最適なずらし位置を用いて、上記比較画像を上記基準画像に対して上記最適なずらし位置まで上記y方向にずらすようになっている
ことを特徴とするステレオ3次元計測装置。
【請求項6】
請求項5に記載のステレオ3次元計測装置において、
上記対応点探索部は、上記対応点探索および上記視差情報の生成を行っている際に上記探索パラメータを監視し、上記探索パラメータの値が最適値よりも所定の値を超えて悪化した場合には、上記キャリブレーションずれ再補正部に対して、上記最適なずらし位置の再取得を指示する
ことを特徴とするステレオ3次元計測装置。
【請求項7】
請求項6に記載のステレオ3次元計測装置において、
少なくとも上記距離情報生成部によって生成された上記距離情報を表示する表示部を備え、
上記キャリブレーションずれ再補正部は、得られた上記複数の探索パラメータの値が予め設定された設定値に満たない場合には、上記キャリブレーション演算部による上記カメラキャリブレーションの実行を促す情報を上記表示部に表示させるようになっている
ことを特徴とするステレオ3次元計測装置。
【請求項1】
計測対象物を撮影して画像を取得する複数のカメラと、
上記複数のカメラによって取得された複数のカメラキャリブレーションボードの撮影画像を用いてカメラキャリブレーションを行ってキャリブレーションパラメータを算出するキャリブレーション演算部と、
上記算出されたキャリブレーションパラメータを記憶する記憶部と、
上記複数のカメラによって取得された複数の上記計測対象物の画像に含まれる歪み,傾きおよびずれのうちの少なくとも一つを含む誤差を、上記キャリブレーションパラメータを用いて補正するステレオ平行化処理を行うステレオ平行化処理と、
上記ステレオ平行化処理後の複数の画像間のずれを、上記ステレオ平行化処理後の各画像における互いに対応する画素を探索して得られたデータを用いて再補正するキャリブレーションずれ再補正部と、
上記キャリブレーションずれ再補正部によって再補正された複数の上記計測対象物の画像における互いに対応する画素を対応点として探索すると共に、探索された複数の上記対応点間の距離であって上記複数のカメラのうちの少なくとも2つが配列されている方向への距離を表す視差情報を生成する対応点探索部と、
上記対応点探索部によって生成された上記視差情報から上記計測対象物までの距離情報を求める距離情報生成部と
を備えたことを特徴とするステレオ3次元計測装置。
【請求項2】
請求項1に記載のステレオ3次元計測装置において、
上記2つのカメラが配列されている方向をx方向とし、上記2つのカメラによって撮影されている画像の面内で上記x方に直交する方向をy方向とした場合に、
上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の各画像間における少なくとも上記y方向のずれを再補正する
ことを特徴とするステレオ3次元計測装置。
【請求項3】
請求項1あるいは請求項2に記載のステレオ3次元計測装置において、
上記計測対象物に対して2次元ランダムテクスチャを投影するプロジェクタを備えた
ことを特徴とするステレオ3次元計測装置。
【請求項4】
請求項2あるいは請求項3に記載のステレオ3次元計測装置において、
上記キャリブレーションずれ再補正部は、上記ステレオ平行化処理後の複数の画像から基準となる基準画像とこの基準画像と比較される残りの比較画像の夫々とでなる画像対を順次選択し、この選択された画像対の上記比較画像を上記基準画像に対して上記y方向にずらしながら両画像における互いに対応する画素を探索して上記データとしての探索パラメータを得、この得られた探索パラメータに基づいて上記比較画像の最適なずらし位置を求め、上記比較画像を上記基準画像に対して上記最適なずらし位置まで上記y方向にずらすことによって上記複数の画像間のずれを再補正する
ことを特徴とするステレオ3次元計測装置。
【請求項5】
請求項4に記載のステレオ3次元計測装置において、
上記記憶部は、上記キャリブレーションずれ再補正部によって求められた上記最適なずらし位置をも記憶するようになっており、
上記キャリブレーションずれ再補正部は、上記複数の画像間のずれを再補正する場合には、上記記憶部に記憶されている上記最適なずらし位置を用いて、上記比較画像を上記基準画像に対して上記最適なずらし位置まで上記y方向にずらすようになっている
ことを特徴とするステレオ3次元計測装置。
【請求項6】
請求項5に記載のステレオ3次元計測装置において、
上記対応点探索部は、上記対応点探索および上記視差情報の生成を行っている際に上記探索パラメータを監視し、上記探索パラメータの値が最適値よりも所定の値を超えて悪化した場合には、上記キャリブレーションずれ再補正部に対して、上記最適なずらし位置の再取得を指示する
ことを特徴とするステレオ3次元計測装置。
【請求項7】
請求項6に記載のステレオ3次元計測装置において、
少なくとも上記距離情報生成部によって生成された上記距離情報を表示する表示部を備え、
上記キャリブレーションずれ再補正部は、得られた上記複数の探索パラメータの値が予め設定された設定値に満たない場合には、上記キャリブレーション演算部による上記カメラキャリブレーションの実行を促す情報を上記表示部に表示させるようになっている
ことを特徴とするステレオ3次元計測装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2013−113600(P2013−113600A)
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願番号】特願2011−257349(P2011−257349)
【出願日】平成23年11月25日(2011.11.25)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願日】平成23年11月25日(2011.11.25)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
[ Back to top ]