説明

視差算出装置、距離算出装置及び視差算出方法

【課題】二つの視点それぞれから得られた画像間の視差を算出する際、画像間の歪み又はずれの影響を抑え、精度の高い視差を簡易に算出する視差算出装置、距離算出装置及び視差算出方法を提供する。
【解決手段】視差算出装置100は、第一カメラ1から得られた基準画像及び第二カメラ2から参照画像を取得する。画像分割部101は、条件設定部102によって設定される分割条件に従い、基準画像及び参照画像それぞれを複数の領域に分割する。補正量決定部103は、分割された領域毎に画像ずれ量を算出し、その画像ずれ量に基づき補正量を決定する。視差算出部104は、補正量決定部103によって決定された補正量に基づいて画像分割部101から得られる分割基準画像及び分割参照画像の各領域に対して画像の補正を行い、補正後の画像に基づいて視差を求める。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のカメラで被写体を撮影し、各カメラ画像から視差を算出する視差算出装置、カメラ及び被写体間の距離を算出する距離算出装置及び視差算出方法に関する。
【背景技術】
【0002】
複数の視点から同一被写体をカメラで撮像して得られる複数の画像に基づいて立体画像又は自由視点画像を生成する撮像システムが知られている。この撮像システムでは、画像間の相対的なずれ量である視差から三角測量の原理を用いて被写体の距離情報(奥行き情報)を算出し、その距離情報に基づき、任意の仮想視点から見た画像を生成する処理が行われる。
【0003】
2つの画像間の視差を算出する場合、一般的に、2つの画像間における対応点の検出が行われる。対応点を検出する方法としては、例えば、差分絶対値和(SAD:Sum Of Absolute Difference)を用いたSAD法又は差分二乗和(SSD:Sum of Squared Difference)を用いたSSD法が知られている。これらの方法では、先ず、2つの画像の内、一方の画像を基準画像とし、他方の画像を参照画像とする。また、基準画像内の注目点に対して、この注目点を含む領域を設定し、参照画像内にもその領域と同じ大きさの領域を複数設定する。そして、基準画像内の領域と、参照画像内の各領域との間の相関度をブロックマッチングにより求め、相関度が最も高い参照画像内の領域の中心点を当該注目点に対応する対応点として検出する。対応点の検出は、エピポーラ線上を探索することにより行われる。エピポーラ線とは、2つの視点及び空間中又は物体上の対象点を含む平面であるエピポーラ面が、それぞれの画像と交わった直線である。
【0004】
図23は、エピポーラ面とエピポーラ線を示す模式図である。
空間中の対象点3を左カメラである第一カメラ1及び右カメラである第二カメラ2により撮影した場合を例にして説明する。この場合、エピポーラ線7及び8は、空間中の対象点3及び2つの視点(第一カメラ1及び第二カメラ2それぞれのレンズの中心)の3点と、それらを結ぶ3つの線分からなる三角形の平面(エピポーラ平面)4と、第一カメラ1が撮影した画像平面5及び第二カメラ2が撮影した画像平面6との交線のことである。一方の画像内の注目点に対応する他方の画像内の対応点はエピポーラ線上に存在するためエピポーラ線上を探索すれば対応点を検出できる。
図24A,Bは、第一カメラ1及び第二カメラ2の光軸が平行になるように第一カメラ1及び第二カメラ2を配置した場合を示す模式図である。この場合、エピポーラ線7及び8は両画像面において同じ高さの水平な直線になるため、両画像において同一ライン上で対応点を探索すればよい。
【0005】
しかし、2台のカメラの取り付け精度、あるいはレンズの歪み等により2つの画像間に画像ずれが生じる場合があり、各カメラにおけるエピポーラ線は、2つの画像内において同一ラインになるとは限らない。ずれが大きい場合、対応点を見つけることができず、正確な視差が算出できない領域が増える。正確に視差を算出するためには画像ずれを補正する必要があるが、例えば画面全体を移動して調整するといった単純な方法は補正の精度が低く、カメラの取り付け精度又はレンズの歪み等に起因した画像ずれを十分に補正することができない。
【0006】
一方、特許文献1には、画像の回転ずれ又は並進ずれを幾何学的な座標変換であるアフィン変換を用いてリアルタイムで補正する装置が記載されている。また、特許文献2には、一方の画像内の第1のパターンと相関が最も高い第2のパターンを他方の画像内の複数の水平及び垂直ライン中から検出し、第1及び第2のパターンの第1及び第2の位置情報から視差を算出する装置が記載されている。この装置によれば、画像内の水平ライン及び垂直ライン上で対応点の探索を行うため、画像全体を補正しなくとも、画像ずれによる誤測距を防止することができる。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2001-82955号公報
【特許文献2】特開2003-4442号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
画像表示装置の解像度が高まるのに伴いカメラの解像度も高まっている。そのため高解像度画像に関しても精度の高い視差を算出する必要がある。しかし、特許文献1に記載の装置にあっては、画像全体に対して補正が行われるため、高解像度画像に対する補正に要する計算量は大きい。
【0009】
特許文献2に記載の装置にあっては、画像に対して水平方向及び垂直方向の探索を行っているため、画素数が多い高解像度画像の場合、低解像度画像の場合と比べて視差が大きくなり、それに伴い対応点の探索範囲が広まる。つまり、画像の解像度が上がるにつれて対応点の探索範囲が広まり、対応点探索に要する計算量は膨大になる。
【0010】
本発明は、斯かる事情に鑑みてなされたものであり、画像を複数の領域に分割し、領域毎に画像ずれを補正することにより、正確な視差を簡易に算出する視差算出装置、その正確な視差に基づきカメラ及び被写体間の距離を算出する距離算出装置及び視差算出方法を提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明の視差算出装置は、二つの視点から得られた画像間の画像ずれとしての視差を算出する視差算出装置において、前記画像それぞれを複数の領域に分割する画像分割部と、該画像分割部により分割された領域毎に二つの視点を結ぶ方向に垂直な方向における前記画像間の画像ずれ量を算出し、画像ずれ量に対応する補正量を決定する補正量決定部と、該補正量決定部により決定された補正量に基づき前記領域毎に画像を補正し、補正された画像に基づき視差を算出する視差算出部とを備えることを特徴とする。
【0012】
本発明によれば、画像を複数の領域に分割し、垂直方向の画像ずれの補正を領域毎に行うため、正確な視差を簡易に算出することができる。
【0013】
本発明の視差算出装置は、前記補正量決定部に補正量の決定を指示する補正指示部を更に備え、前記補正量決定部は、該補正指示部からの指示に従って補正量を決定するようにしてあることを特徴とする。
【0014】
本発明によれば、外部条件に応じて適切なタイミングで画像ずれを補正することができる。
【0015】
本発明の視差算出装置にあっては、前記補正指示部は、前記画像が動画像データである場合に、所定数のフレームを取得する度に、前記補正量決定部に補正量の決定を指示するようにしてあることを特徴とする。
【0016】
本発明によれば、視差算出のための処理量を少なくすることができ、消費電力を削減することができる。
【0017】
本発明の視差算出装置にあっては、前記補正指示部は、映像シーンの切り替えを検知し、映像シーンの切り替えを検知した場合、前記補正量決定部に補正量の決定を指示するようにしてあることを特徴とする。
【0018】
本発明によれば、画像ずれ量が変わる映像シーンの切り替わり時に補正量を決定することができる。
【0019】
本発明の視差算出装置にあっては、前記補正指示部は、加速度を検出し、所定の閾値以上の加速度を検出した場合、前記補正量決定部に補正量の決定を指示するようにしてあることを特徴とする。
【0020】
本発明によれば、撮影シーンの変更又は外部からの衝撃等によりカメラが移動した場合の画像ずれを補正することができる。
【0021】
本発明の視差算出装置は、前記各領域の補正量を記憶する記憶部を更に備え、前記補正量決定部は、該記憶部に記憶されている過去の補正量に基づき補正量を決定するようにしてあることを特徴とする。
【0022】
本発明によれば、補正量を決定する処理を軽減できる。
【0023】
本発明の視差算出装置は、前記領域毎の画像ずれの方向が同一方向である場合、前記視差算出部は、領域毎に算出された画像ずれ量の中から最小値を選択し、該最小値に従い画像全体を補正してから、領域毎に画像を補正するようにしてあることを特徴とする。
【0024】
本発明によれば、領域毎の画像ずれの方向が同一方向である場合、最小の画像ずれ量に基づいて全領域に対する補正を行うことにより領域毎の画像ずれ量を減らしているため、視差を算出する際の対応点探索範囲を狭めることができ、そのための計算量を減らすことができる。
【0025】
本発明の視差算出装置は、前記画像分割部は、大きさが異なるように領域を分割するようにしてあることを特徴とする。
【0026】
本発明によれば、画像ずれ量が画像内の場所によって大きく異なるような場合であって、画像内の場所によって異なる大きさの領域を設定するため、画像ずれ量の大きさに応じ、きめ細かく補正を行うことができる。
【0027】
本発明の視差算出装置は、前記画像分割部は、前記画像の中央部分の領域が大きく、前記画像の周辺部分の領域が小さくなるように分割するようにしてあることを特徴とする。
【0028】
本発明によれば、レンズの歪みにより画像ずれ量が大きくなる画像周辺部分においては領域を小さくしているため、きめ細かく補正を行うことができ、精度の高い視差を得ることができる。
【0029】
本発明の視差算出装置は、前記補正量決定部が決定した前記各領域の補正量に基づいて、隣接する領域間における補正量の差分を算出する差分算出部を備え、前記画像分割部は、該差分算出部が算出した領域間における差分が所定の閾値以上である場合、該領域各々を更に分割するようにしてあることを特徴とする。
【0030】
本発明によれば、補正量の差分から特定される画像ずれ量が大きい領域を更に分割することにより、より正確に補正を行うことができる。
【0031】
本発明の視差算出装置は、前記画像分割部は、前記差分算出部が算出した差分に応じて隣接する前記領域各々を分割する分割数を決定し、決定した分割数で更に分割するようにしてあることを特徴とする。
【0032】
本発明によれば、レンズの歪みによる画像ずれ量が大きいほど分割数を多く設定することにより、正確に補正を行い、視差を算出し易くすることができる。
【0033】
本発明の距離算出装置は、前記視差算出装置と、該視差算出装置により算出された視差に基づき、前記視点及び被写体間の距離を算出する距離算出部とを備えることを特徴とする。
【0034】
本発明によれば、正確な被写体距離を簡易に算出することができる。
【0035】
本発明の視差算出方法は、二つの視点から得られた画像それぞれを複数の領域に分割する画像分割ステップと、該画像分割ステップにより分割された領域毎に二つの視点を結ぶ方向に垂直な方向における前記画像間の画像ずれ量を算出し、画像ずれ量に対応する補正量を決定する補正量決定ステップと、該補正量決定ステップにより決定された補正量に基づき前記領域毎に画像を補正し、補正された画像に基づき、前記二つの視点から得られた画像間の視差を算出する視差算出ステップとを含むことを特徴とする。
【0036】
本発明によれば、正確な視差を簡易に算出することができる。
【発明の効果】
【0037】
本発明によれば、画像を複数の領域に分割し、領域毎に画像の補正を行うことにより、正確な視差を簡易に算出することができる。また、本発明によれば、その正確な視差に基づきカメラ及び被写体間の距離を算出することができる。
【図面の簡単な説明】
【0038】
【図1】実施の形態1に係る視差算出装置の構成例を示すブロック図である。
【図2】分割基準画像及び分割参照画像を模式的に示す説明図である。
【図3】図2に示す分割基準画像及び分割参照画像内の一領域、及びそれに含まれる被写体画像の一部を模式的に示す説明図である。
【図4】ブロックマッチングを模式的に示す説明図である。
【図5】分割基準画像及び分割参照画像を模式的に示す説明図である。
【図6】図5に示す分割基準画像及び分割参照画像内の一領域、及びそれに含まれる被写体画像の一部を模式的に示す説明図である。
【図7】分割基準画像及び分割参照画像内の一領域及びそれに含まれる被写体画像の一部を模式的に示す説明図である。
【図8】垂直方向の画像ずれの補正について説明するための説明図である。
【図9】分割参照画像内の9つの領域毎の画像ずれ量を示す説明図である。
【図10】実施の形態2に係る視差算出装置の構成例を示すブロック図である。
【図11】基準画像及び参照画像を模式的に示す説明図である。
【図12】ブロックマッチングを模式的に示す説明図である。
【図13】基準画像及び参照画像を示す説明図である。
【図14】基準画像及び参照画像を示す説明図である。
【図15】基準画像及び参照画像の一領域における被写体画像の垂直方向の画像ずれを模式的に示す説明図である。
【図16】実施の形態3に係る視差算出装置の構成例を示すブロック図である。
【図17】基準画像及び参照画像を模式的に示した説明図である。
【図18】実施の形態4に係る視差算出装置の構成例を示すブロック図である。
【図19】実施の形態5に係る視差算出装置の構成例を示すブロック図である。
【図20】基準画像及び参照画像を示す説明図である。
【図21】補正量決定部が算出した各領域の補正量を示す説明図である。
【図22】図20A及び図20Bそれぞれにおける左上領域及び被写体画像を重ね合わせた状態を模式的に示す説明図である。
【図23】エピポーラ面とエピポーラ線を示す模式図である。
【図24】第一カメラ及び第二カメラの光軸が平行になるように第一カメラ及び第二カメラを配置した場合を示す模式図である。
【発明を実施するための形態】
【0039】
実施の形態1
以下、図面を参照して実施の形態1を具体的に説明する。
図1は、実施の形態1に係る視差算出装置の構成例を示すブロック図である。
第一カメラ1及び第二カメラ2は、同一の被写体を同じタイミングで撮影し、撮影した左右一対の基準画像及び参照画像を視差算出装置100に与える。ここでは、被写体に対して左寄りに位置する第一カメラの画像を基準画像、その被写体に対して右寄りに位置する第二カメラの画像を参照画像とする。また、第一カメラ及び第二カメラは平行法により配置されているものとする。平行法とは、2台のカメラの向き、すなわちそれらの光軸が略平行になるように、同じ高さで各カメラを配置する方法である。
視差算出装置100は、第一カメラ1及び第二カメラ2が撮影した基準画像及び参照画像を入力し、基準画像及び参照画像を用いて対応点探索処理及び視差算出処理を実行する。
視差算出装置100は、画像分割部101、条件設定部102、補正量決定部103、視差算出部104及び視差統合部105を有する。
【0040】
画像分割部101は、条件設定部102により設定された分割数に従い基準画像及び参照画像を複数の領域に分割し、分割された基準画像(以下、分割基準画像と呼ぶ)及び分割された参照画像(以下、分割参照画像と呼ぶ)を画像メモリ(図示せず)の所定領域に記憶させる。
画像分割部101は、分割基準画像及び分割参照画像を補正量決定部103及び視差算出部104に与える。条件設定部102は、画像の分割数を設定する。分割数は、例えば、9個(縦3×横3)、16個(縦4×横4)、25個(縦5×横5)等である。つまり、画像分割部101は、基準画像及び参照画像それぞれを9領域、16領域又は25領域等に分割する。
【0041】
補正量決定部103は、画像分割部101から分割基準画像及び分割参照画像を取得する。補正量決定部103は、分割基準画像及び分割参照画像間に各カメラ1、2の取り付け精度又はそれらのレンズの精度の違い等に起因した垂直方向の画像ずれがある場合、分割基準画像及び分割参照画像間の画像ずれ量を算出し、画像ずれを軽減するための補正量を領域毎に決定する。補正量決定部103は、領域毎の補正量を視差算出部104に与える。ここで、垂直方向の画像ずれとは、例えば二台のカメラが離れている方向に対して垂直方向に存在する二つの撮像画像間のずれを意味する。これは、人が画像を見る場合で言うと、二つの視点を結ぶ方向に垂直な方向における画像間の画像ずれである。
【0042】
視差算出部104は、補正量決定部103から領域毎の補正量を受け取り、その補正量に応じて画像メモリから分割基準画像及び分割参照画像を読み出す。具体的には、視差算出部104は、分割基準画像の各領域の画像が記憶された記憶領域から当該画像を読み出すと共に、分割参照画像の各領域の画像が記憶された記憶領域から分割参照画像を読み出し、補正量に応じて対応点探索を行うラインを変えて視差を算出する。
【0043】
視差算出部104は、補正量決定部103から受け取った補正量に従って、分割参照画像を補正し、分割基準画像及び補正後の分割参照画像を用いて対応点探索を行い、領域毎に視差を算出する。視差算出部104は、算出した領域毎の視差を視差統合部105へ与える。なお、ここでの視差とは、右目及び左目で夫々見える像の位置の差異の意味であり、画像間における相対的な像のずれ量である。
視差統合部105は、視差算出部104から受け取った領域毎の視差を統合し、分割前の画像サイズに合わせた視差を求める。これを統合視差とする。
【0044】
まず、分割基準画像及び分割参照画像間に垂直方向の画像ずれが生じていない場合の視差の算出方法について説明する。
図2は、分割基準画像及び分割参照画像を模式的に示す説明図である。
図2Aは分割基準画像、図2Bは分割参照画像を示す。画像分割部101は、基準画像及び参照画像それぞれを例えば9領域に分割する。
【0045】
分割基準画像10及び分割参照画像20は同一の被写体を示す被写体画像11及び被写体画像21を含む。ここでは、被写体画像以外の背景部分は一様な色の背景であるとする。被写体画像11及び21は、3個の横長の矩形から成るとする。第一カメラ1及び第二カメラ2のレンズ位置(視点)が異なるため、被写体に対して右寄りに位置する第二カメラで撮影された分割参照画像20内の被写体画像21は、被写体に対して左寄りに位置する第一カメラで撮影された分割基準画像10内の被写体画像11に対して左方向にずれた位置に存在する。ここで分割基準画像10内の領域10a及び分割参照画像20内の領域20aに着目した場合、分割参照画像20の領域20a内の被写体画像21の一部は、分割基準画像10の領域10a内の被写体画像11の一部に対して左方向に幅Dずれた位置に存在する。幅Dは分割基準画像及び分割参照画像間の視差であり、画素数で表される。本例では、視差はD画素である。第一カメラ1及び第二カメラ2は輻輳をもたない平行な配置とされているため、視差は無限遠で0となり、カメラに近い被写体ほど大きな視差となる。輻輳とは、眼球運動の一種であり、対象に視線を交差させようとする両眼の動きであり、カメラにおいては各カメラの光軸が交わることを意味する。
【0046】
図3は、図2に示す分割基準画像及び分割参照画像内の一領域、及びそれに含まれる被写体画像の一部を模式的に示す説明図である。
図3Aは分割基準画像内の一領域及びそれに含まれる被写体画像の一部、図3Bは分割参照画像内の一領域及びそれに含まれる被写体画像の一部、図3Cは図3A及び図3Bそれぞれが示す一領域及び被写体画像の一部を重ね合わせた状態を模式的に示す。
図3において、分割基準画像10内の領域10aは被写体画像11の一部を含み、分割参照画像20内の領域20aは被写体画像21の一部を含む。領域15aは、領域10a及び領域20aを重ね合わせた状態を仮想的に表したものである。領域15aからわかるように、領域10a及び領域20aには視差Dがある。
以下、視差Dを求める手法を説明する。
【0047】
分割基準画像10内の領域10aに含まれる被写体画像11の一部及び分割参照画像20内の領域20aに含まれる被写体画像21の一部は、両画像内における垂直方向の座標が同一である水平ライン(以下、「同一ライン」と呼ぶ)上に位置する。そこで、視差算出部104は、分割基準画像10内の領域10aに含まれる被写体画像11の一部内に注目点(任意の点)を設定し、被写体画像21の一部内において注目点に対応する対応点を探索する。具体的には、視差算出部104は、被写体画像11の一部及び被写体画像21の一部に対して所定サイズの画素ブロックを用いたブロックマッチングを行う。視差算出部104は、ブロックマッチングを同一ライン上で行い、対応する画素ブロック間の相関度を求め、対応点を検出する。
【0048】
視差算出部104は、相関度に基づいて注目点に対応する対応点を検出し、注目点及び対応点の距離、つまり視差を求める。視差算出部104は、分割基準画像10及び分割参照画像20内の他の領域においても同様にブロックマッチングを行うことにより対応点を検出し、注目点及び対応点から領域毎の視差を求める。
【0049】
次に、上述の対応点探索について説明する。
図4は、ブロックマッチングを模式的に示す説明図である。
視差算出部104は、分割基準画像10内の領域10aに基準画像ウインドウ10wを設定し、分割参照画像20内の領域20aに参照画像ウインドウ20wを設定する。基準画像ウインドウ10w及び参照画像ウインドウ20wは同一ライン(点線)上に位置する。図4において、基準画像ウインドウ10w及び参照画像ウインドウ20wそれぞれは、領域10a及び領域20aに含まれる画像から3×3画素から成る画素ブロックを抽出する。注目点は、基準画像ウインドウ10wにより抽出される画素ブロックの重心位置(中心位置)に存在する。
【0050】
視差算出部104は、基準画像ウインドウ10wを用いて抽出した画素ブロックから当該画素ブロックに含まれる画素の画素値を求める。同様に、視差算出部104は、参照画像ウインドウ20wを用いて抽出した画素ブロックから当該画素ブロックに含まれる画素の画素値を求める。
【0051】
視差算出部104は、基準画像ウインドウ10w及び参照画像ウインドウ20wを水平方向に移動させながら、領域10a及び領域20aそれぞれから同一サイズ(3×3画素)の画素ブロックを抽出し、抽出した画素ブロックに対してブロックマッチングを行い、両画素ブロックの相関度を求める。相関度は、例えばSAD法による相関値演算により求めることができる。SAD法において相関度はSAD値で表される。SAD値とは、基準画像ウインドウ10w及び参照画像ウインドウ20wにより抽出された2つの画素ブロックにおける対応画素の画素値の差分絶対値を対応画素毎に求め、それらの差分絶対値を両ウインドウ内の全画素にわたって加算した値である。
【0052】
基準画像ウインドウ10wにより抽出される画素ブロックが画素値X0〜X8を有し、参照画像ウインドウ20wにより抽出される画素ブロックが画素値X’0〜X’8を有する場合、SAD値は、次の式から得られる。
【数1】

上式からわかるように、SAD値が小さいほど両画素ブロックの相関度は高く、SAD値が大きいほど相関度は低い。つまり、SAD値の大小に基づいて基準画像ウインドウ10w及び参照画像ウインドウ20wそれぞれにより抽出される画素ブロックの相関度が判定される。
尚、基準画像及び参照画像がモノクロ画像である場合には、モノクロ画像の画素値を用いてSAD値を算出し、基準画像及び参照画像がRGB画像の場合には、R(赤)、G(緑)、B(青)の内の少なくとも1色の画素値を用いてSAD値を算出すればよい。また、RGBの情報を輝度情報等に変換し、それを用いてSAD値を算出してもよい。
【0053】
図4を用いて対応点検出の処理を具体的に説明する。
視差算出部104は、先ず、基準画像ウインドウ10wを領域10aの右端から距離W離れた位置に設定し、その位置に基準画像ウインドウ10wを固定する。視差算出部104は、参照画像ウインドウ20wを領域20aの右端から距離(W+S)離れた位置に設定する。視差算出部104は、幅Sを探索範囲として、その探索範囲で参照画像ウインドウ20wを1画素数ずつ移動させながら基準画像ウインドウ10w内及び参照画像ウインドウ20w内の画素ブロック間でブロックマッチングを行う。
【0054】
尚、本実施の形態のようにカメラを平行に設置した場合には、視差はカメラ基線長が長いほど大きくなる。また、視差は被写体の奥行き距離が短くなるほど大きくなり、無限遠に近づくほど0に近づいていく。したがって、カメラ基線長又はカメラから被写体までの奥行き距離に応じて探索範囲を設定するのが好ましく、基線長が長くなるほど、あるいは奥行き距離が長くなるほど大きい値となる。例えば、探索範囲の最大値を予め設定しておき、被写体の奥行き距離が1メートル以下の場合には探索範囲を最大値に、1メートル以上の場合には探索範囲をその最大値の半分程度に設定するといった方法がある。
【0055】
視差算出部104は、基準画像ウインドウ10wを領域10aの右端から距離W離れた位置に固定した状態で、参照画像ウインドウ20wを領域20aの右端から距離(W+S)離れた位置から、当該右端から距離W離れた位置まで右方向に1画素ずつ移動させながらブロックマッチングを行う。視差算出部104は、領域10a内に固定された基準画像ウインドウ10wにより抽出される画素ブロックと最も小さいSAD値(最小SAD値)、つまり、最も高い相関度を有する画素ブロックを領域20a内に特定する。基準画像ウインドウ10wにより抽出された画素ブロックの中心に位置する注目点に対応する対応点は、その特定された画素ブロックの中心に位置する。このようにして、視差算出部104は対応点を検出する。
【0056】
視差算出部104は、領域毎に注目点とその対応点との距離から視差を算出し、基準画像10の全ての画素において視差を算出する。
【0057】
尚、図4で示した例では、基準画像ウインドウ10w及び参照画像ウインドウ20wを3×3画素の画素ブロックに対応するサイズにしたが、各ウインドウのサイズを5×5画素又は9×9画素の画素ブロックに対応するサイズ、又は4×4画素等の縦横画素数が偶数である画素ブロックに対応するサイズなど様々なウインドウサイズとしてよい。
上記の例では、参照画像ウインドウ20wを右方向に移動させたが、左方向に移動させるようにしてもよい。つまり、領域20aの右端から距離W離れた位置から当該右端から距離(W+S)離れた位置まで左方向に1画素ずつ参照画像ウインドウ20wを移動させながらブロックマッチングを行ってもよい。
以上、分割基準画像及び分割参照画像間に垂直方向の画像ずれがない場合の対応点探索の手法を説明した。上述のように、画像ずれが存在しない場合、両画像間で同一ライン上を単に対応点探索を行えばよい。
【0058】
次に、分割基準画像及び分割参照画像間に垂直方向の画像ずれがある場合の対応点探索の手法を説明する。垂直方向の画像ずれは、レンズに歪みが存在する場合、カメラの取り付け精度が低く、本来であれば平行にずれなく配置すべきところでカメラ自体が傾いている場合、又はカメラが垂直方向にずれて配置されている場合などに生ずる。垂直方向の画像ずれをそのままにして上述のように同一ライン上で対応点探索を行った場合、対応点が同一ライン上に存在しないことにより対応点を誤検出する可能性が高く、正確な視差を算出できない。そこで、視差算出部104は、垂直方向の画像ずれを補正した後に対応点探索を行い、視差を算出する。以下、垂直方向の画像ずれを補正する処理等について詳細に説明する。
【0059】
垂直方向の画像ずれがない場合、注目点とそれに対応する対応点は同一ライン上に存在するが、垂直方向の画像ずれがある場合、注目点とそれに対応する対応点は同一ライン上に存在しない。そこで、補正量決定部103は、分割基準画像及び分割参照画像間の垂直方向の画像ずれ量を領域毎に算出し、その領域毎の画像ずれ量に基づき分割参照画像の補正量を決定する。視差算出部104は、補正量決定部103から補正量を受け取り、その補正量に基づき分割参照画像を補正し、分割基準画像及び補正後の分割参照画像を用いた対応点探索を行う。
【0060】
先ず、分割基準画像及び分割参照画像間に垂直方向の画像ずれがある状態を例に挙げて説明する。
図5は、分割基準画像及び分割参照画像を模式的に示す説明図である。
図5Aは分割基準画像、図5Bは分割参照画像を示す。画像分割部101は、基準画像及び参照画像それぞれを例えば9領域に分割する。
【0061】
分割基準画像30及び分割参照画像40それぞれは被写体画像31及び被写体画像41を含む。被写体画像31及び41は、例えば3個の横長の矩形から成る。第一カメラ1及び第二カメラ2のレンズ位置(視点)が異なり、且つ、各カメラの取り付け精度又はレンズの精度の違い等があるため、分割参照画像40内の被写体画像41は、分割基準画像30内の被写体画像31に対して左方向且つ下方向にずれた位置に存在する。つまり、分割基準画像30及び参照画像40間には垂直方向の画像ずれが存在する。
【0062】
図6は、図5に示す分割基準画像及び分割参照画像内の一領域、及びそれに含まれる被写体画像の一部を模式的に示す説明図である。
図6Aは分割基準画像内の一領域及びそれに含まれる被写体画像の一部、図6Bは分割参照画像内の一領域及びそれに含まれる被写体画像の一部、図6Cは、図6A及び図6Bそれぞれが示す領域及び被写体画像を重ね合わせた状態を模式的に示す。
領域30aは被写体画像31の一部を含み、領域40aは被写体画像41の一部を含む。
【0063】
図6Cからわかるように、領域40a内の被写体画像41は、領域30a内の被写体画
像31に対して左方向にE画素数ずれ、且つ、下方向にF画素数ずれている。左方向のずれは視差であり、下方向のずれは各カメラの取り付け精度又はレンズの精度の違い等に起因した垂直方向の画像ずれである。このように部分的な垂直方向の画像ずれが生じている状態で上述の水平方向のブロックマッチングを行う場合、対応点を検出できず、正しい視差を算出できないことがある。被写体画像31の左端の垂直方向エッジにおける中央近傍部分の形状及び色は、被写体画像41の左端の形状及び色とほぼ同一であるため、当該部分に位置する注目点に対応する視差は、上述の水平方向のブロックマッチングにより正しく検出できる可能性がある。しかし、被写体画像31の左上角隅の部分に位置する注目点に対応する対応点は同一ライン上には存在しない為、誤検出される可能性が高い。そのため、分割基準画像30及び分割参照画像40の画像全体から得られる視差の確度は高くない。
【0064】
続いて、分割基準画像30及び分割参照画像40間に大きな垂直方向の画像ずれが生じている状態を例に挙げて説明する。
図7は、分割基準画像及び分割参照画像内の一領域及びそれに含まれる被写体画像の一部を模式的に示す説明図である。
図7Aは分割基準画像内の一領域及びそれに含まれる被写体画像の一部、図7Bは分割参照画像内の一領域及びそれに含まれる被写体画像の一部を示す。
領域50aは分割基準画像30内の領域であり、領域60aは分割参照画像40内の領域である。領域50aは被写体画像51の一部を含み、領域60aは被写体画像61の一部を含む。
【0065】
図7からわかるように、領域60a内の被写体画像61は、領域50a内の被写体画像51に対して垂直方向に大きくずれている。分割基準画像30及び分割参照画像40間に完全な垂直方向の画像ずれが生じている状態で上述の水平方向のブロックマッチングを行った場合、対応点を誤検出する可能性は非常に高い。そのため、分割基準画像30及び分割参照画像40間に部分的な垂直方向の画像ずれがある場合と比べて、正確な視差を算出することが一層困難になる。
【0066】
このように分割基準画像30及び分割参照画像40間に垂直方向の画像ずれがある場合、対応点を誤検出する可能性があり、正確な視差を算出することが困難になる。そこで、補正量決定部103は、分割基準画像30内の各領域の水平方向の中心線を基準にして分割基準画像30及び分割参照画像40間の垂直方向の画像ずれ量を領域毎に算出し、領域毎の画像ずれ量に基づき補正量を決定し、視差算出部104に与える。視差算出部104は、補正量決定部103から受け取った補正量に基づき分割参照画像40を補正し、補正後の分割参照画像を用いて対応点探索を行う。以下、その処理を具体的に説明する。
【0067】
図8は、垂直方向の画像ずれの補正について説明するための説明図である。
図8Aは分割基準画像及び分割参照画像内の一領域、図8Bは分割基準画像及び補正後の分割参照画像内の一領域を示す。
図8Aにおいて、分割基準画像30内の領域30aは被写体画像31の一部を含み、分割参照画像40内の領域40aは被写体画像41の一部を含む。
【0068】
補正量決定部103は、分割基準画像30内の領域30aの中心線(点線)上に対して、3×3画素の画像ブロックを抽出する基準画像ウインドウを設定し、分割参照画像40内の領域40aの中心線上に対して3×3画素の画素ブロックを抽出する参照画像ウインドウを設定する。
【0069】
補正量決定部103は、基準画像ウインドウの位置を固定し、参照画像ウインドウの位置を中心線に沿って水平方向に1画素ずつ移動させながらブロックマッチングを行い、各位置におけるSAD値を求める。ある1つの注目点に対応する対応点を検出するまでの探索範囲が例えば10画素の長さであれば、補正量決定部103は、10個のSAD値を求め、それらのSAD値の中から最小SAD値を選択する。
【0070】
補正量決定部103は、基準画像ウインドウを水平方向に1画素数移動させて固定し、再び、参照画像ウインドウを水平方向に1画素数ずつ移動させながら、ブロックマッチングを行い最小SAD値の算出を繰り返していく。
【0071】
このように、補正量決定部103は基準画像の各画素において探索範囲分のSAD値を求め、そのSAD値の中から最小SAD値を算出する。すなわち、補正量決定部103は、基準画像ウインドウを移動させた移動量である画素数と等しい数の最小SAD値を得ることになる。補正量決定部103は、得られた最小SAD値を全て加算し、最小SAD値の総和を求める。この最小SAD値の総和は、図8Aに示す状態でブロックマッチングしたことにより得られる値である。
【0072】
次に、補正量決定部103は、分割参照画像40内の領域40aを上方向に1画素移動させ、上記と同じ処理を行い最小SAD値の総和を求める。移動は、基本的な対応点探索の方法で説明した同一ラインでの対応点探索と異なり、基準画像ウインドウの中心となるラインに対して、対応点探索を行う参照画像ウインドウの中心ラインを垂直方向にずらすことに相当し、これは簡易な処理である。ここでは、補正量決定部103は、分割参照画像40内の領域40aを上下方向に5画素ずつ移動させるものとする。
【0073】
補正量決定部103は、1画素数移動させる毎に最小SAD値の総和を求める。その結果、補正量決定部103は、最小SAD値の総和をF個得る。補正量決定部103は、それらの最小SAD値の総和の中から最も小さい最小SAD値の総和を選択する。その最も小さい最小SAD値の総和が得られたときの領域40aの移動量が垂直方向の画像ずれ量に相当する。
【0074】
例えば、補正量決定部103は、分割参照画像40を垂直方向に−5画素〜+5画素の範囲で1画素ずつ移動させる毎に最小SAD値の総和を求め、最小SAD値の総和が最小となる場合を特定し、その場合の領域40aの移動量を画像ずれ量とする。領域40aを上方向に例えば2画素数移動したときの最小SAD値の総和が最も小さい場合、図8Bに示す画像ずれ量Fは2画素数であり、補正量を+2と決定する。尚、領域40aを上方向に移動する場合の補正量の符号を+とし、下方向に移動する場合の補正量の符号を−とする。
【0075】
このように、補正量決定部103は、領域毎に分割基準画像と分割参照画像の画像ずれ量を求めて補正量を決定し、視差算出部104へ送る。視差算出部104は、分割参照画像を補正量にしたがって移動した後に対応点探索を行う。これにより、各画像の対応点が同一ライン上に存在する可能性が増加することから、補正前に対し正確な視差を算出することが可能となる。
【0076】
視差算出部104は、領域毎に算出された視差を視差統合部105へ与える。視差統合部105は、視差算出部104から受け取った領域毎の視差を統合し、分割前の画像サイズに合わせた統合視差を求める。つまり、視差統合部105において、領域毎の視差は、基準画像の各画素に対応した視差データ(視差マップ)として統合される。
【0077】
分割参照画像40内の全ての領域の画像が分割基準画像30内の対応領域の画像に対して、画像ずれ量は異なるが全て同じ方向(上方向又は下方向のいずれか一方)にずれている場合、補正量決定部103は、領域毎に求めた画像ずれ量の中から最小の画像ずれ量を選択し、その最小の画像ずれ量に応じて補正量を決定してもよい。その場合、視差算出部104は、分割参照画像内の全ての領域の画像に対して、その最小画像ずれ量分だけ移動した後に、移動後の画像に対する各領域の補正量に従い補正したのちに対応点探索を行い、視差を算出する。以下、その処理を具体的に説明する。
【0078】
図9は、分割参照画像内の9つの領域毎の画像ずれ量を示す説明図である。
図9Aは、補正前の分割参照画像内の9つの領域の画像ずれ量を領域毎に示す。ここでは、分割参照画像40内の領域1〜3は、分割基準画像30内の領域1〜3に対して下方向に3画素数ずれ、分割参照画像40内の領域4〜6は、分割基準画像30内の領域4〜6に対して下方向に4画素数ずれ、分割参照画像40内の領域7〜9は、分割基準画像30内の領域7〜9に対して下方向に5画素数ずれているものとする。この場合、最小画像ずれ量は3画素であるため、分割参照画像内の9つの領域全てを上方向に3画素数移動させる。
【0079】
図9Bは、分割参照画像の9つの領域全てを上方向に3画素数移動させた後の各領域の画像ずれ量を示す。図9Bからわかるように、分割参照画像の9つの領域の全てを3画素数上方向に移動させることにより、分割参照画像40内の領域1〜3の画像ずれ量は0、領域4〜6の画像ずれ量は1画素、領域7〜9の画像ずれ量は2画素になる。つまり、分割参照画像内の全ての領域を最小の画像ずれ量分だけ移動させておくことにより、画像ずれ量の最大値は2画素になり、画像ずれ量は全体的に小さくなる。よって、次回の補正量算出の際には、上下方向により狭い範囲で画像ずれ量を算出すればよく、高解像度画像における処理量の削減に繋がる。また、例えばカメラ起動時には画像全体に対して前述の最小の画像ずれ量分の補正を行い画像ずれ量を小さくしておく。これにより、衝撃等がカメラに加わり新たな画像ずれが発生した場合、もともとの画像ずれ量を小さくしてある為、大きなずれが発生した場合でも比較的狭い上下方向の範囲で画像ずれ量を算出できる。
【0080】
実施の形態1は、画素単位で画像ずれを補正する手法とは異なり、領域単位で画像ずれを補正しているため、画素数の多い画像、つまり高解像度画像を処理する場合であっても処理量が大幅に増えることはない。したがって、画像の解像度が高くなるにつれ、実施の形態1における処理量と、画素単位で画像ずれを補正する手法における処理量との差は大きくなる。
【0081】
尚、補正量決定部103は分割参照画像40内の各領域を上下方向に所定範囲ずらすことにより垂直方向の画像ずれ量を算出するが、その所定範囲をどの程度にするかは、カメラの取り付け精度に応じて設定すればよい。例えば、カメラの取り付け精度が低い場合には広い範囲に設定し、精度が高い場合には狭い範囲に設定すればよく、本実施の形態で示した5画素に限定するものではない。また、本実施の形態では上下方向に画像ずれ量の算出を行っているが、いずれか一方の方向に画像ずれが発生しているか予め判明している場合は、上方向の範囲又は下方向の範囲のいずれか一方の範囲に対してのみ画像ずれ量の算出を行ってもよい。
【0082】
また、本実施の形態では最初の補正量決定時に各領域で補正方向が同じであった場合、その各領域の補正量の最小値分補正しておくとしたが、これ以外にも、領域毎に前回の補正量を元に、その補正位置から相関値を算出して画像ずれ量を算出するようにしてもよい。例えば、ある領域で補正量が+2であった場合、この値を記憶装置に記憶させておき、次回の補正量決定時に、その補正量の位置から最小SAD値の総和の算出を始めてもよい。そして、その最小SAD値の総和が一定値(例えば、予め設定済みの規定値や、横のピクセル数とブロックサイズに応じた閾値)以下になった時点で画像ずれ量の算出をやめてもよい。この場合、前回の補正量付近で相関を調べ、充分な相関が得られた場合にはそれ以外のラインに対して相関を調べる為の探索を行わなくなる為、処理量が削減でき、すばやく補正量を決定することができる。
【0083】
画像分割部101は、基準画像及び参照画像を上下左右均等に分割しなくてもよい。レンズの歪みによる画像ずれの場合、基準画像及び参照画像の端近傍の領域の画像ずれ量が大きいため、その領域での分割数を多くし、中央近辺の分割数を小さくしてもよい。画像内の位置に応じて分割数を異ならせることにより、画像ずれを画像内の位置に応じてきめ細かく補正することができ、対応点探索の精度を向上させることができる。
また、本実施の形態では被写体に対して左側に寄ったカメラである第一カメラの画像を基準画像、つまり第一カメラを基準として視差データを算出した。しかし、これに限らず、視差の関係から探索範囲の方向は変化するが、被写体に対して右側に寄ったカメラである第二カメラの画像を基準画像、つまり第二カメラを基準として視差データを算出してもよい。
【0084】
また、本実施の形態では、画像内の1ラインにおけるSAD値の総和が最小となる位置を特定することによって、基準画像及び参照画像間の画像ずれ量を算出したが、これ以外の手法を用いて画像ずれ量を算出してもよい。例えば、ブロックマッチング時に最小SAD値に近いSAD値が複数存在する場合、算出された視差の信頼度は低いとみなし、その視差をエラーとしてエラー処理する。このエラー処理を行うことにより、信頼度の高い視差だけを抽出し、抽出された信頼度の高い視差の数が最大となるように補正量を決定してもよい。また、SADに限らずSSDなどの他の手法を用いても良い。
【0085】
また、例えばエッジ抽出などの特徴点抽出を行い、抽出した特徴点の対応度に従って補正量を決定してもよい。例えば、基準画像及び参照画像に対してエッジ検出処理を行い、基準画像及び参照画像それぞれのエッジ画像を作成する。次いで、各エッジ画像を領域分割し、領域毎にエッジの対応度を求める。基準画像及び参照画像の水平方向には視差が存在するため、基準画像及び参照画像のエッジ画像を領域毎にそのまま重ね合わせても、両画像のエッジの位置は一致しない。そこで、分割参照画像を領域毎に垂直方向に1画素移動する毎に、分割参照画像を水平方向に予め決められた探索範囲分移動する。そして、分割参照画像を移動させながら分割基準画像と分割参照画像とを重ね合わせ、エッジが一致した位置の数を算出する。この処理を繰り返し、エッジが一致した位置の数を求め、この数を基準画像及び参照画像の垂直方向の対応度とする。つまり、エッジが一致した位置の数が多い程、対応度が大きいと判断する。この対応度が最も大きくなる垂直方向の位置を特定することで、垂直方向の画像ずれ量を算出し、補正量を決定する。そして、その補正量に基づいて画像を補正することにより、正確な視差を算出することができる。
【0086】
実施の形態2
以下、図面を参照して実施の形態2を具体的に説明する。
図10は、実施の形態2に係る視差算出装置の構成例を示すブロック図である。
第一カメラ1及び第二カメラ2は、同一の被写体を同じタイミングで撮影し、撮影した左右一対の基準画像及び参照画像を視差算出装置200に与える。視差算出装置200は、第一カメラ1及び第二カメラ2が撮影した基準画像及び参照画像を入力し、基準画像及び参照画像を用いて対応点探索処理及び視差算出処理を実行する
視差算出装置200は、画像分割部201、補正量決定部202、映像シーン検出部203、視差算出部204及び視差統合部205を有する。
【0087】
画像分割部201及び補正量決定部202それぞれは、第一カメラ1及び第二カメラ2から基準画像及び参照画像を受け取る。基準画像及び参照画像は動画像である。
映像シーン検出部203は、第一カメラ1から基準画像を受け取り、基準画像に対して映像シーン解析を行い、映像シーンの切り替わりを検出する。映像シーンの切り替わりは、輝度又は色情報、又は第一カメラ1の動作において一時停止又は動作再開等に操作が行われたかによって検出する。映像シーン検出部203は、映像シーンの切り替わりを検出した場合、補正量決定部202に補正指示を与える。映像シーン検出部203は、補正量決定部202に補正指示を与える補正指示部としての機能を有する。
【0088】
第一カメラ1及び第二カメラ2の位置が垂直方向にずれている場合、カメラと被写体との距離(奥行き距離)に応じて垂直方向に画像ずれが生じる。第一カメラ1及び第二カメラ2と被写体との距離が短いほど、基準画像及び参照画像間の垂直方向の画像ずれ量は大きくなり、その距離が長いほど基準画像及び参照画像間の垂直方向の画像ずれ量は小さくなる。つまり、第一カメラ1及び第二カメラ2と被写体との距離が大きく変わるような映像シーンの切り替え時、基準画像及び参照画像間の垂直方向の画像ずれ量は大きく変化する。そのため、映像シーンの切り替え前後の画像ずれ量は大きく異なる。そこで、補正量決定部202は、映像シーンが切り替わった後、基準画像及び参照画像間の垂直方向の画像ずれ量を算出し、その画像ずれ量に対応する補正量を決定し、画像分割部201に与える。画像分割部201は、補正量決定部202から受け取った補正量に基づき、基準画像及び参照画像を分割し、分割基準画像及び分割参照画像を視差算出部204に与える。視差算出部204は、分割基準画像及び分割参照画像を用いて対応点探索処理及び視差算出処理を行う。
【0089】
実施の形態1では、画像分割部101が基準画像及び参照画像を所定の領域に分割した後、補正量決定部103は領域毎の補正量を決定する。これに対して、実施の形態2では、補正量決定部202は、画像分割部201で分割されることになる領域毎に画像ずれ量を算出し、その画像ずれ量に対応する補正量を決定し、画像分割部201に与える。画像分割部201は、補正量決定部202から補正量を受け取り、その補正量に基づいて基準画像及び参照画像を分割し、分割基準画像及び分割参照画像を視差算出部204に与える。視差算出部204及び視差統合部205の構成及び動作は、実施の形態1で示したものと同様であるため説明は省略する。
【0090】
図11は、基準画像及び参照画像を模式的に示す説明図である。
図11Aは、基準画像50に含まれる3領域50a、50b、50c及び各領域の中心線51c〜53c、図11Bは、参照画像60に含まれる3領域60a、60b、60c及び各領域の中心線61c〜63cを示す。この3領域は、後に画像分割部201により分割されることにより得られる領域である。図11Bにおいて、領域60a〜60cは、中心線61c〜63c及びそれらの上下2ラインから成る3つの領域60d、60e、60fを含む。
補正量決定部202は、基準画像ウインドウを中心線51c、52c、53c上に設定し、参照画像ウインドウを領域60d、60e、60f上に設定し、画像ずれ量を算出するためブロックマッチングを行う。
【0091】
図12は、ブロックマッチングを模式的に示す説明図である。
補正量決定部202は、基準画像50内の領域50aの中心線51cを中心にして3×3画素の画像ブロックに対応する基準画像ウインドウ50wを設定し、参照画像60内の領域60aの中心線61c及び中心線61c及びその上下2ラインを含む3ライン内に参照画像ウインドウ60wを設定し、基準画像ウインドウ50w及び参照画像ウインドウ60wそれぞれにより抽出される画素ブロック間でブロックマッチングを行い、SAD値を算出する。
【0092】
補正量決定部202は、領域50aの中心線51cに対して基準画像ウインドウ50wを設定し、領域60aの中心線61cの上の2ライン目に参照画像ウインドウ60wの中心が位置するように参照画像ウインドウを設定する。
補正量決定部202は、基準画像ウインドウ50w及び参照画像ウインドウ60wをそれぞれ右方向に移動させながらブロックマッチングを行い、最小SAD値を算出する。基準画像50及び参照画像60の水平方向の画素数が120画素であり、且つ、画像分割部201による水平方向の分割数が3である場合、補正量決定部202は、左から40画素の長さ毎の探索範囲で最小SAD値の総和を算出する。補正量決定部202は、同様な処理を中心線52c、53c及び領域60e、60fに対して行い、最小SAD値の総和を算出する。次いで、補正量決定部202は、最小SAD値の総和が最も小さくなるときのラインを40画素幅の領域毎に特定し、基準画像50及び参照画像60間の垂直方向の画像ずれ量を40画素幅の領域毎に算出する。
補正量決定部202は、画像分割部204で分割されることになる9個の領域毎の画像ずれ量を算出し、それらの画像ずれ量に対応する領域毎の補正量を決定する。
【0093】
補正量決定部202は、決定した領域毎の補正量を内蔵する記憶部(図示せず)に記憶させる。補正量決定部202は、映像シーン検出部203から補正指示を受ける度に、上記処理を行い、領域毎の補正量を決定し、記憶部に記憶している領域毎の補正量を更新する。
【0094】
画像分割部201は、補正量決定部202の記憶部から領域毎の補正量を読み出し、その領域毎の補正量に応じて参照画像を分割する。具体的には、画像分割部201は、内蔵する画像メモリ(図示せず)から基準画像及び参照画像を読み出す際、領域毎の補正量により特定される記憶領域から参照画像の領域毎の画像を読み出す。
【0095】
図13は、基準画像及び参照画像を示す説明図である。
図13Aは基準画像50、図13Bは参照画像60を示す。
画像分割部201は、基準画像50及び参照画像60それぞれが例えば9領域に分割された画像を画像メモリから読み出す。補正量決定部202が基準画像50内の領域50xに対応する参照画像60の領域60xの補正量を例えば−2画素と決定した場合、画像分割部201は、その補正量に基づき、参照画像60が記憶されている記憶領域から領域60xに対応する領域に含まれる画像を読み出し、視差算出部204へ与える。
【0096】
補正量決定部202が基準画像50の領域50yに対応する参照画像60の領域60yの補正量を例えば−2画素と決定した場合、画像分割部201は、その補正量に基づき、参照画像60が記憶されている記憶領域から領域60yに対応する領域に含まれる画像を読み出し、視差算出部204へ与える。このように、画像分割部201は、画像メモリから参照画像60を読み出す際、補正量決定部202が決定した補正量に応じて画像の読み出し位置をずらす。
【0097】
図14は、基準画像及び参照画像を示す説明図である。
図14Aは基準画像50、図14Bは参照画像60を示す。
基準画像50及び参照画像60内には同一の被写体画像51及び61が含まれる。被写体画像51及び61は、カメラの視点位置又はカメラの姿勢により異なる位置に存在する。ここでは、第一カメラ1に対し第二カメラ2が傾いているものとする。上述したように、画像分割部201は、基準画像50内の領域50xに対して、参照画像内の領域60xに含まれる画像を画像メモリから読み出す。
【0098】
図15は、基準画像及び参照画像の一領域における被写体画像の垂直方向の画像ずれを模式的に示す説明図である。
図15Aは、基準画像50の領域50xに含まれる画像及び領域50xに対応する参照画像60の領域に含まれる画像を重ねた状態を模式的に示す。図15Bは基準画像50の領域50xに含まれる画像及び領域60xに含まれる画像を重ねた状態を模式的に示す。換言すると、図15Aは基準画像50及び補正前の参照画像60を示し、図15Bは基準画像50及び補正後の参照画像60を示す。
【0099】
基準画像50内に含まれる被写体画像51及び参照画像60内に含まれる被写体画像61の左側角部分の垂直方向の画像ずれ量を比較した場合、図15Aで示す画像ずれ量はFであり、図15Bで示す画像ずれ量はGである。ここでF>Gであるため、参照画像60を補正することにより、基準画像及び参照画像間の垂直方向の画像ずれは減少する。それにより対応点探索の範囲が狭まるため、対応点探索に要する処理時間を短くすることができる。
【0100】
実施の形態1では画像を分割した後、分割画像毎に補正量を求め、分割参照画像を移動するため、対応点の存在しない領域が出てくる場合がある。例えば、図8Bに示す例では、分割参照画像を上方向に移動させた結果、分割基準画像の最下部に対応する分割参照画像がなくなり、同様に、分割参照画像の最上部に対応する分割基準画像がなくなる現象が生じる。これに対して、実施の形態2では、補正量を求めた後に画像を分割するため、中間部分の分割領域では、補正量に応じて読出し位置を変更することで、そのような現象の発生を抑えることができる。
【0101】
尚、実施の形態2では、映像シーン検出部203に補正指示部としての機能をもたせているが、カメラ自体への衝撃又はカメラ位置の変化を検出する加速度検出部に補正指示部の機能をもたせてもよい。すなわち、カメラに設けられた加速度検出部が所定の閾値以上の加速度を検出した場合、加速度検出部が補正量決定部202に補正指示を与えるようにしてもよい。これにより、撮影シーンが変わったことをカメラの移動によって判断することができる他、大きな衝撃を受けカメラの位置関係が崩れて配置が変わったときに補正することが可能となる。
補正指示部の機能を有する加速度検出部をカメラ自体に設ける必要はなく、カメラを搭載した携帯情報機器に設けてもよい。これによって、携帯情報機器に強い衝撃等が加わり、カメラの位置ずれが起きた場合、携帯情報機器は、加速度検出部が検出した動きに応じて補正量を算出し、カメラの位置ずれを補正することができる。
【0102】
補正指示部は、画像が動画像データであった場合に補正量決定部202に対してフレーム毎に補正指示を送るのではなく、予め設定された複数のフレーム単位又は、例えばユーザによって必要に応じて設定された複数のフレーム単位に補正指示を送ってもよい。このように複数のフレーム単位に補正指示を送ることにより、補正量決定部202は、フレーム毎に補正を行う場合よりも処理量を減らすことができる。更に、補正量決定部202の処理量を減らすことにより、携帯情報端末の消費電力を節約させることができる。また、補正指示部はカメラの起動を判断し、起動時のみ補正指示を送ってもよい。このように撮影前の起動時に補正量の算出を行うことによって、常に精度良く視差を算出できるようになる。
補正指示部は、単にユーザからの指示を受け取り、補正指示を補正量決定部202に与えるようにしてもよい。
【0103】
本実施の形態では、説明の簡略化のため、図13に示すように、領域分割を行う際に、基準画像(被写体に対して左側に寄った第一カメラから得られる画像)の一領域と、対応する参照画像(被写体に対して右側に寄った第二カメラから得られる画像)の一領域とは、各画像の横端から等距離の位置で分割されるようにしている。しかし実際には、基準画像の対応点は、参照画像上ではより左側の位置に存在する。そのため、視差算出時に参照画像から切り出す領域は、被写体の最大視差を考慮し、参照画像の分割位置を左側に最大視差分ずらしたところに設定されるのが好ましい。そのように領域を設定しない場合、基準画像内の領域内の左端付近に関しては、参照画像から切り出した領域内に対応点が含まれない状況が起こり、正しい視差が算出できなくなる。このように基準画像の領域に対応する参照画像の領域を左側にずらして分割することにより、視差の算出できない領域を減少させることができる。また、SADの場合、左右とも分割する領域をウインドウサイズ分大きく設定し、分割する各領域の一部が重複するように切り出した方が、正確なSAD値を算出することができる。
【0104】
また、縦方向に画像ずれが存在する場合、被写体距離に応じて縦方向に視差が存在することになる。すなわち、被写体距離が短いほど上下の画像ずれ量が大きくなり、被写体距離が長いほど上下の画像ずれ量が小さくなる。そのため、被写体距離が大きく変わるような映像シーンの切り替え時において補正量を決定することは有効である。尚、縦方向の画像ずれの影響以外にも回転又は歪みの影響があるため、前述のように被写体距離に応じて画像ずれ量の大小が決定されるとは限らないが、映像シーン切り替え毎に画像ずれ量が変化することには変わりはない。よって、映像シーン切り替え毎に画像ずれ量を算出し、補正量を決定することは有効である。
【0105】
実施の形態3
以下、図面を参照して実施の形態3を具体的に説明する。
図16は、実施の形態3に係る視差算出装置の構成例を示すブロック図である。
第一カメラ1及び第二カメラ2は、同一の被写体を同じタイミングで撮影し、撮影した左右一対の基準画像及び参照画像を視差算出装置300に与える。視差算出装置300は、第一カメラ1及び第二カメラ2が撮影した基準画像及び参照画像を入力し、基準画像及び参照画像を用いて対応点探索処理及び視差算出処理を実行する。
視差算出装置300は、画像分割部301、補正量決定部302、映像シーン検出部303、画像縮小部304、視差算出部305及び視差統合部306を有する。
【0106】
画像分割部301、映像シーン検出部303及び視差算出部305の構成及び動作は、実施の形態2で示したものと同様であるため説明は省略する。
以下、補正量決定部302、画像縮小部304及び視差統合部306の構成及び動作を説明する。
【0107】
図17は、基準画像及び参照画像を模式的に示した説明図である。
図17Aは基準画像70を上下2つの領域に分割した状態を示し、図17Bは参照画像80を上下2つの領域に分割した状態を示す。以下、基準画像70及び参照画像80の上半分の領域に対する補正量の算出処理について説明する。基準画像70及び参照画像80の下半分の領域に対する補正量の算出処理は、上半分の領域に対する処理と同様であるため説明は省略する。
【0108】
補正量決定部302は、基準画像70内の水平ライン71及び72上及び参照画像80内の水平ライン81及び82上でブロックマッチングを行い、垂直方向の画像ずれ量を算出し、参照画像80に対する補正量を決定する。具体的には、実施の形態2で説明したように、補正量決定部302は、基準画像70内の水平ライン71上に3×3画素の画素ブロックを抽出する基準画像ウインドウを設定し、参照画像80内の水平ライン81上に3×3画素の画素ブロックを抽出する参照画像ウインドウを設定する。
【0109】
補正量決定部302は、実施の形態2と同様に、基準画像ウインドウを水平方向に移動させると共に参照画像ウインドウを水平方向及び垂直方向に移動させながらブロックマッチングを行い、最小SAD値の総和が最小となる場合を特定し、その場合の画像ずれ量を求め、補正量を決定する。
【0110】
実施の形態3では、補正量決定部302は、基準画像70内の水平ライン71に対して決定された参照画像80の補正量と、水平ライン72に対して決定された参照画像80の補正量とが異なる場合、両補正量の平均値を画像分割部301に与える。
【0111】
画像分割部301は、実施の形態2と同様に、補正量決定部302から受け取った補正量に基づいて基準画像70及び参照画像80を分割し、分割基準画像及び分割参照画像を画像縮小部304へ与える。
【0112】
画像縮小部304は、分割基準画像及び分割参照画像に対して縮小処理を行う。例えば、画像縮小部304は、分割基準画像及び分割参照画像それぞれの縦横長を半分にし、それらの画像サイズを縮小前の画像サイズの1/4にする。つまり、画像縮小部304は、分割基準画像及び分割参照画像の解像度を縮小前の解像度の1/4にする。分割基準画像及び分割参照画像の水平方向の画素数は半分になるため、分割基準画像及び分割参照画像を縮小しない場合と比べて、視差算出部305により算出される視差も半分になる。一方、分割基準画像及び分割参照画像の垂直方向の画素数も半分になるため、分割基準画像及び分割参照画像間の垂直方向の画像ずれ量も半分になる。つまり、図15Bで示したように参照画像を補正した後の画像ずれ量がGである場合、縮小処理を行うことで更に画像ずれ量は半分、つまりG/2になる。
【0113】
画像縮小部304により視差が半分になったため、視差統合部306は、視差算出部305から受け取った視差に対して拡大処理を施し、その視差を2倍にする。拡大処理としては、例えば、バイリニア補間又はニアレストネイバー補間等がある。
【0114】
実施の形態3では、分割基準画像及び分割参照画像の画像サイズを縮小することにより画像ずれ量を小さくする。その結果、画像ずれ量が小さくなることで視差が算出できる可能性が上がるとともに、対応点探索の検索範囲が狭まり、対応点探索に要する処理時間を短くすることができる。
【0115】
尚、上記例では、分割基準画像及び分割参照画像の画像サイズを縮小しているが、基準画像及び参照画像を縮小した後に分割を行ってもよい。予め基準画像及び参照画像を所定の縮小率で縮小した場合、両画像の縮小に伴い画像ずれ量も縮小率に応じて小さくなる。よって、画像の上下方向の短い範囲でブロックマッチングを行うことで画像ずれ量を算出できる。縮小後の画像に対して上下方向の短い範囲でブロックマッチングを行い画像ずれ量を算出することは、縮小前の画像に対して上下方向の広い範囲で画像ずれ量を算出することと同じであるため、両画像が大きくずれている場合の画像ずれ量の算出が容易になる。また、上記例では、基準画像及び参照画像内の2つの水平ラインを用いて補正量を決定したが、より多くの水平ラインを用いて補正量を決定してもよい。例えば、3つの水平ラインを用いて補正量を決定する場合、ライン毎に算出される補正量の中央値を補正量として決定してもよい。
【0116】
実施の形態4
以下、図面を参照して実施の形態4を具体的に説明する。
図18は、実施の形態4に係る視差算出装置の構成例を示すブロック図である。
第一カメラ1及び第二カメラ2は、同一の被写体を同じタイミングで撮影し、撮影した左右一対の基準画像及び参照画像を視差算出装置400に与える。視差算出装置400は、第一カメラ1及び第二カメラ2が撮影した基準画像及び参照画像を入力し、基準画像及び参照画像を用いて対応点探索処理及び視差算出処理を実行する。
視差算出装置400は、画像分割部401、補正量決定部402、色情報算出部403、視差算出部404及び視差統合部405を有する。
【0117】
画像分割部401、視差算出部404、視差統合部405の構成及び動作は、実施の形態2で示したものと同様であるため説明は省略する。
【0118】
以下、補正量決定部402及び色情報算出部403の構成及び動作を説明する。
色情報算出部403は基準画像を入力し、画像分割部401が分割すると想定される領域毎に、画像を解析し色情報を算出する。例えば、色情報算出部403は、各領域に含まれるRGB画像のRGBそれぞれの画素値の平均(以下、「RGBの平均値」と呼ぶ)を算出し、RGBの平均値を色情報として出力する。この色情報からは、各領域内においてどのような色合いの被写体が多いかがわかる。例えば、被写体として空が大半を占める領域においては、RGBの平均値のBの値が高くなるため、その領域の画像の色は大半が青色であることがわかる。色情報算出部403は、色情報を補正量決定部402に与える。
【0119】
補正量決定部402では、画像ずれ量を算出するためのブロックマッチングを行うが、その際に色情報を用いて、ブロックマッチングに用いる色を領域毎に決定する。例えば、前述のようにRGBの平均値のBの値が高い場合、青色の被写体が多い領域であることがわかり、Bを使って相関値を算出した場合、どれも似たような色であるため、相関値がどれも高くなり、正確な画像ずれ量が算出されない可能性がある。そこで、R又はGを用いて相関度を算出することで、正確な画像ずれ量を算出できるようになる。
尚、色情報に応じて何色を利用して画像ずれ量を算出するかは、予め内部メモリ(図示せず)に色情報の参照テーブルを格納しておき、その参照テーブルを参照することにより、ブロックマッチングで使用する色を決定するようにすればよい。また、RGBそれぞれの平均値を比較し、平均値が最も小さい色を用いてブロックマッチングを行ってもよい。
このように、色情報に応じてブロックマッチングで用いる色を選択することにより、より正確に画像ずれ量を算出し補正量を決定することができる。
【0120】
また、上記の例では色情報を領域毎のRGBの平均値としたが、これに限らず、色情報に基づいて各領域を更に複数の小領域に分割し、それらの複数の領域の中で最も大きな面積を有する領域のRGBの平均値を色情報としてもよい。また、各領域を更に複数の小領域に分割し、各小領域のRGB値の画素値において、例えばRが200以上である、G及びBが50以下である場合、その小領域の色は赤であるとし、赤の小領域の数が所定数以上の場合には、領域の色を赤として扱ってもよい。
【0121】
実施の形態1〜4では、2台のカメラを用いた視差算出装置を例として挙げたが、3台以上のカメラを用いてもよい。すなわち、基準となるカメラを1台決め、そのカメラから基準画像を得、他のカメラから参照画像を得るようにしてもよい。
【0122】
実施の形態1〜4によれば水平方向の画像ずれ量を示す視差データを正確に算出することができるが、更に、その視差データに基づき距離データを算出する構成を追加してもよい。具体的には、カメラ間の間隔である基線長、カメラの傾き、解像度等のカメラパラメータが判明している場合、視差データを算出した後、公知の計算法を用いて視差データから距離データ(奥行データ)を算出する距離算出装置の構成にしてもよい。
【0123】
実施の形態1〜4では、2台のカメラを平行法により配置する例を示したが、2台のカメラの光軸が輻輳を持つように配置してもよい。2台のカメラの光軸が輻輳するようにカメラが配置されている場合、平行法を用いてカメラが配置されている場合と異なり、基準画像上の注目点に対応する対応点が参照画像上の左側に存在するとは限らない。よって、そのような場合には参照画像上において左右両方向に対して対応点探索を行う。また、2台のカメラの光軸が輻輳している場合、撮影された画像は最初から歪みを有しており、注目点及び対応点は同一直線上に存在しないため、そのままでは正確な視差を算出できない。しかし、実施の形態1〜4によれば、基準画像及び参照画像を分割して上下方向の位置調整を行い、参照画像上において左右両方向に対する対応点探索を行う処理を行うため正確な視差を算出できる。
【0124】
実施の形態1〜4は、2つのカメラモジュールを備えるカメラシステム又はそのカメラシステムを備えた携帯端末、表示装置、車載用カメラシステム若しくは距離検出装置等に適用することができる。
また、カメラでの撮影画像をパーソナルコンピュータ等の計算機に入力して処理してもよく、記憶装置に画像を保存し、その画像を用いて視差又は距離を算出してもよい。
【0125】
実施の形態5
以下、図面を参照して実施の形態5を具体的に説明する。
図19は、実施の形態5に係る視差算出装置の構成例を示すブロック図である。
第一カメラ1及び第二カメラ2は、同一の被写体を同じタイミングで撮影し、撮影した左右一対の基準画像及び参照画像を視差算出装置500に与える。実施の形態1と同様、被写体に対して左寄りに位置する第一カメラ1の画像を基準画像、その被写体に対して右寄りに位置する第二カメラ2の画像を参照画像とする。また、第一カメラ1及び第二カメラ2は平行法により被写体を撮影するように配置されている。
視差算出装置500は、第一カメラ1及び第二カメラ2が撮影した基準画像及び参照画像を入力し、入力した基準画像及び参照画像を用いて対応点探索処理及び視差算出処理を実行する。
【0126】
視差算出装置500は、画像分割部501、条件設定部502、補正量決定部503、補正量解析部(差分算出部)504、視差算出部505、視差統合部506及び記憶部509を有する。
視差算出部505、視差統合部506の構成及び動作は、実施の形態1で示したものと同様であるため説明は省略する。
【0127】
記憶部509は、実施の形態2において補正量決定部202が決定した領域毎の補正量を記憶するメモリである。また、記憶部509は、画像分割部501が分割した分割基準画像及び分割参照画像を記憶する画像メモリである。
【0128】
画像分割部501は、条件設定部502により設定された分割数に従い基準画像及び参照画像を複数の領域に分割し、分割した分割基準画像及び分割参照画像を記憶部509の所定領域に記憶させる。
画像分割部501は、分割した分割基準画像及び分割参照画像を補正量決定部503及び視差算出部505に与える。条件設定部502は、画像の分割数を設定する。当初の分割数は例えば9(縦3×横3)である。つまり、画像分割部501は、基準画像及び参照画像それぞれを9領域に分割する。
【0129】
補正量決定部503は、画像分割部501又は記憶部509から分割基準画像及び分割参照画像を取得する。補正量決定部503は、分割基準画像及び分割参照画像間における垂直方向の画像ずれ量を算出し、算出した画像ずれを軽減するための補正量を領域毎に決定する。
補正量解析部504は、補正量決定部503が決定した領域毎の補正量を解析する。補正量解析部504は、解析した領域毎の補正量に基づいて、画像を分割する分割数を変更するように条件設定部502に通知する。
【0130】
条件設定部502は、補正量解析部504から分割数の変更に係る通知を受け付けた場合、画像の分割数を再設定する。画像分割部501は、条件設定部502が再設定した分割数に従い、基準画像及び参照画像を複数の領域に再度分割する。画像分割部501は、再度分割した分割基準画像及び分割参照画像を補正量決定部503及び視差算出部505に与える。
【0131】
以下、視差算出装置500の各構成部の動作について詳細に説明する。
図20は、基準画像及び参照画像を示す説明図である。図20は、第一カメラ1で撮影した左画像である基準画像507と、第二カメラ2で撮影した右画像である参照画像508とを示している。ここで、参照画像508には、第二カメラ2が備えるレンズによるたる型歪みが存在しているものとする。そのため、参照画像508の左右端に近い画像部分又は画像領域ほど、たる型歪みの影響により、基準画像507に対する垂直方向のずれ量が大きい。
【0132】
図20に示す基準画像507及び参照画像508において、画像分割部501は、図20において点線で示すように基準画像507及び参照画像508を9分割する。補正量決定部503は、画像分割部501が9分割した基準画像507及び参照画像508に基づいて、補正量を算出する。補正量決定部503は、算出した補正量のデータを補正量解析部504へ与える。
【0133】
図21は、補正量決定部が算出した各領域の補正量を示す説明図である。
図21における数値は、補正量決定部503が算出した補正量(ピクセル)を表す。図21において、符合の+は参照画像508を補正のためにずらす方向が上方向であることを、符号の−は参照画像508を補正のためにずらす方向が下方向であることを意味する。図21Aは、一回目の画像の分割に対応する各領域について算出された補正量を示す。図21Bは、再分割された画像に対応する各領域について算出された補正量を示す。
【0134】
補正量解析部504は、補正量決定部503が算出した補正量を受け取る。補正量解析部504は、受け取った補正量に基づいて、左右の隣接する画像の領域間における補正量の差分を解析する。例えば、図21Aにおける左上の領域に着目した場合、当該左上領域の補正量は+3である。また、左上領域に対して右側の隣接領域(上部中央の領域)における補正量は0である。これら各領域における補正量の差分の絶対値は、3となる。画像における各領域全体が同一の方向に対応するずれ量を持つ場合には、各領域の補正量はほぼ同一になることから、各領域における補正量の差分の絶対値が大きいほど、画像が大きく歪んでいることがわかる。
【0135】
図22は、図20A及び図20Bそれぞれにおける左上領域及び被写体画像を重ね合わせた状態を模式的に示す説明図である。
画像の歪みが大きい場合、図22に示すように左上領域における上下方向のずれが被写体画像の中央付近でなくなるように補正しても、被写体画像の左右でずれが残存し、かつ残存するずれの方向も被写体画像の左右で逆方向となる。
そこで、画像における歪みが大きい場合には、画像を既に分割した数よりも多い数でより細かく画像を分割する手法が考えられる。より細かく分割した画像の領域において、補正量の算出を再び実行することにより、基準画像507及び参照画像508の視差を算出し易くすることが可能となる。これは、細かく分割することにより分割後の領域において上下方向のずれがより小さくなるためである。ずれが小さくなることにより、ある一定のブロックサイズで対応点を探索することから、視差が算出され易くなる。
【0136】
ここでは、補正量解析部504が画像の再分割を行うか否かを判定するための閾値をあらかじめ設定しておくものとし、この閾値を例えば2とする。補正量解析部504は、例えば図21Aにおける左上領域と上部中央領域との補正量の差分は閾値2よりも大きい3であるため、左上領域と上部中央領域との間の歪みは大きく、当該領域各々について再分割を行うと判定する。そこで、補正量解析部504は、条件設定部502に分割数の変更を通知する。条件設定部502は、補正量解析部504からの通知に基づいて、隣接領域との補正量の差分が大きい領域における分割数を増大させる。画像分割部501は、条件設定部502が再設定した各領域の分割数に基づいて、基準画像507及び参照画像508を再び分割する。そして、補正量決定部503は、画像分割部501が再び分割した分割基準画像及び分割参照画像に基づいて、より細かく補正量の算出及び決定を行う。
【0137】
条件設定部502は、図20A及び図20Bの画像上部と画像下部とのそれぞれの領域において、分割数を左右方向に当初の例えば2倍に再設定する。なお、歪みが大きい隣接領域における再分割のための分割数は、当初の2倍に限らず、2倍より多くてもよいことは勿論である。
【0138】
画像分割部501は、条件設定部が再設定した各領域の分割数に基づいて、基準画像507及び参照画像508を再度分割する。補正量決定部503は、画像分割部501が再度分割した領域毎に補正量の算出を行う。その結果を示した説明図が図21Bである。条件設定部502が歪みの大きな領域の分割数を増加させたことにより、補正量決定部503は補正量をより正確に算出できる。そして、視差算出装置500は、基準画像507に対する補正後の参照画像508における上下方向のずれ量を少なくすることにより、視差を算出し易くすることができる。
【0139】
実施の形態5では、カメラのレンズにたる型歪みが存在しているとした。しかし、視差算出装置500はあくまで補正量の差分が大きい領域における分割数を増大させるため、カメラのレンズに例えば糸巻き型歪み又はピンクッション歪みが存在していても、正確に視差を算出することができる。
【0140】
実施の形態5では、補正量解析部504が画像を再度分割するか否かを判定するための閾値を2とした。しかし、この閾値は、画像の解像度、視差等を算出する際のブロックサイズ、画像を縮小するか否か等のパラメータに応じて、適宜変更されてよい。そして、視差算出装置500は、これらのパラメータに応じて、ユーザが閾値を適宜変更することができる手段を備えていてもよい。あるいは、視差算出装置500は、ユーザが適宜変更した閾値を記憶部509に保持し、管理するようにしてもよい。
また、視差算出装置500は、閾値を複数設定し、設定した複数の閾値に応じて、分割数を変更するようにしてもよい。視差算出装置500は、隣接領域との補正量の差分が大きいほど分割数をより多く増やすことで、歪み量に応じてより正確にずれ量を補正し、視差を算出し易くすることができる。
【0141】
立体画像を構成する左画像及び右画像において、被写体が撮影されている画像上の位置は異なる。このことから、歪みが大きい画像ほど被写体の位置毎に上下のずれ量が大きいため、通常のステレオマッチング、オブジェクトを認識することにより対応点を探す手法等では、正確な視差の算出は困難である。しかし、実施の形態5に係る手法では、このような場合にも対応が可能である。
また、ソフトウェア処理においては最初から分割数を多くした場合、補正量の算出に多大な時間を要する。しかし、視差算出装置500によれば、画像に応じて適応的に補正量を算出できるようになるため、処理量、処理時間等の短縮に資する。
また、画像中央部にはカメラからの距離が近い被写体が撮影されている場合が多く、大きく被写体が写っていることが多い。このような画像に対して分割数を多く設定し過ぎた場合、視差を算出する手がかりとなる被写体の特徴量に乏しい領域が分割されることになり、補正量を誤る可能性がある。しかし、視差算出装置500によれば、補正量を算出した後に画像の分割数を再設定し、補正量を再度決定することにより、このような誤動作を防止する効果も奏する。
【0142】
尚、今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0143】
1 第一カメラ
2 第二カメラ
100 視差算出装置
101 画像分割部
102 条件設定部
103 補正量決定部
104 視差算出部
105 視差統合部
200 視差算出装置
201 画像分割部
202 補正量決定部
203 映像シーン検出部
204 視差算出部
205 視差統合部
300 視差算出装置
301 画像分割部
302 補正量決定部
303 映像シーン検出部
304 画像縮小部
305 視差算出部
306 視差統合部
400 視差算出装置
401 画像分割部
402 補正量決定部
403 色情報算出部
404 視差算出部
405 視差統合部
500 視差算出装置
501 画像分割部
502 条件設定部
503 補正量決定部
504 補正量解析部(差分算出部)
505 視差算出部
506 視差統合部
509 記憶部

【特許請求の範囲】
【請求項1】
二つの視点から得られた画像間の画像ずれとしての視差を算出する視差算出装置において、
前記画像それぞれを複数の領域に分割する画像分割部と、
該画像分割部により分割された領域毎に二つの視点を結ぶ方向に垂直な方向における前記画像間の画像ずれ量を算出し、画像ずれ量に対応する補正量を決定する補正量決定部と、
該補正量決定部により決定された補正量に基づき前記領域毎に画像を補正し、補正された画像に基づき視差を算出する視差算出部と
を備えることを特徴とする視差算出装置。
【請求項2】
前記補正量決定部に補正量の決定を指示する補正指示部を更に備え、
前記補正量決定部は、該補正指示部からの指示に従って補正量を決定するようにしてある
ことを特徴とする請求項1に記載の視差算出装置。
【請求項3】
前記補正指示部は、前記画像が動画像データである場合に、所定数のフレームを取得する度に、前記補正量決定部に補正量の決定を指示するようにしてある
ことを特徴とする請求項2に記載の視差算出装置。
【請求項4】
前記補正指示部は、映像シーンの切り替えを検知し、映像シーンの切り替えを検知した場合、前記補正量決定部に補正量の決定を指示するようにしてある
ことを特徴とする請求項2に記載の視差算出装置。
【請求項5】
前記補正指示部は、加速度を検出し、所定の閾値以上の加速度を検出した場合、前記補正量決定部に補正量の決定を指示するようにしてある
ことを特徴とする請求項2に記載の視差算出装置。
【請求項6】
前記各領域の補正量を記憶する記憶部を更に備え、
前記補正量決定部は、該記憶部に記憶されている過去の補正量に基づき補正量を決定するようにしてある
ことを特徴とする請求項1から5のいずれか1項に記載の視差算出装置。
【請求項7】
前記領域毎の画像ずれの方向が同一方向である場合、
前記視差算出部は、領域毎に算出された画像ずれ量の中から最小値を選択し、該最小値に従い画像全体を補正してから、領域毎に画像を補正するようにしてある
ことを特徴とする請求項1から6のいずれか1項に記載の視差算出装置。
【請求項8】
前記画像分割部は、大きさが異なるように領域を分割することを特徴とする請求項1から7のいずれか1項に記載の視差算出装置。
【請求項9】
前記画像分割部は、前記画像の中央部分の領域が大きく、前記画像の周辺部分の領域が小さくなるように分割するようにしてある
ことを特徴とする請求項8に記載の視差算出装置。
【請求項10】
前記補正量決定部が決定した前記各領域の補正量に基づいて、隣接する領域間における補正量の差分を算出する差分算出部を備え、
前記画像分割部は、該差分算出部が算出した領域間における差分が所定の閾値以上である場合、該領域各々を更に分割するようにしてある
ことを特徴とする請求項1から7のいずれか1項に記載の視差算出装置。
【請求項11】
前記画像分割部は、前記差分算出部が算出した差分に応じて隣接する前記領域各々を分割する分割数を決定し、決定した分割数で更に分割するようにしてある
ことを特徴とする請求項10に記載の視差算出装置。
【請求項12】
請求項1から11のいずれか1項に記載の視差算出装置と、
該視差算出装置により算出された視差に基づき、前記視点及び被写体間の距離を算出する距離算出部と
を備えることを特徴とする距離算出装置。
【請求項13】
二つの視点から得られた画像それぞれを複数の領域に分割する画像分割ステップと、
該画像分割ステップにより分割された領域毎に二つの視点を結ぶ方向に垂直な方向における前記画像間の画像ずれ量を算出し、画像ずれ量に対応する補正量を決定する補正量決定ステップと、
該補正量決定ステップにより決定された補正量に基づき前記領域毎に画像を補正し、補正された画像に基づき、前記二つの視点から得られた画像間の視差を算出する視差算出ステップと
を含むことを特徴とする視差算出方法。

【図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

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate


【公開番号】特開2012−212428(P2012−212428A)
【公開日】平成24年11月1日(2012.11.1)
【国際特許分類】
【出願番号】特願2012−49635(P2012−49635)
【出願日】平成24年3月6日(2012.3.6)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】