(57)【要約】【課題】視差マップの補正の際、ビンによって補正後の視差の値が粗くなってしまわないようにする。【解決手段】カメラ１、２によって互いに異なる視点からによって撮影された右カメラ画像および左カメラ画像を取得する画像取得部３１と、取得された右カメラ画像と左カメラ画像との各々対応する画素毎の画素位置の差で表される視差を含む視差マップを生成する視差マップ生成部３２と、視差マップ中の補正対象画素および補正対象画素の周辺に存在する周辺画素に対して補正に対する寄与度となる重みを決定する重み決定部３３と、決定された重みに基づいた加重平均により補正対象画素の視差を補正する視差マップ補正部３４と、を備える。【選択図】図１
2014038546.tif 000002
【特許請求の範囲】
【請求項１】
カメラ（１、２）によって互いに異なる視点からによって撮影された第１の画像（２１）および第２の画像（２２）を取得する画像取得手段（３１）と、
前記取得された前記第１の画像と前記第２の画像との各々対応する画素毎の画素位置の差で表される視差を含む視差マップを生成する視差マップ生成手段（３２）と、
前記視差マップ中の補正対象画素（４１）および前記補正対象画素の周辺に存在する周辺画素に対して補正に対する寄与度となる重みを決定する重み決定手段（３３）と、
決定された前記重みに基づいた加重平均により前記補正対象画素の視差を補正する視差マップ補正手段（３４）と、を備えた視差マップ生成装置。
【請求項２】
前記重み決定手段（３３）は、前記第１の画像における前記補正対象画素の輝度値と重みを算出する対象の重み算出対象画素の輝度値に基づいて、前記重み算出対象画素の重みを決定することを特徴とする請求項１に記載の視差マップ生成装置。
【請求項３】
前記重み決定手段（３３）は、前記第１の画像における前記補正対象画素の輝度値と重みを算出する対象の重み算出対象画素の輝度値との差が大きくなるほど、前記重み算出対象画素の重みを小さくすることを特徴とする請求項２に記載の視差マップ生成装置。
【請求項４】
前記重み決定手段（３３）は、前記補正対象画素と重みを算出する対象の重み算出対象画素との画像座標上の距離が長くなるほど、前記重み算出対象画素の重みを小さくすることを特徴とする請求項１ないし３のいずれか１つに記載の視差マップ生成装置。
【請求項５】
前記重み決定手段（３３）は、前記補正対象画素の視差と重みを算出する対象の重み算出対象画素の視差との差が大きくなるほど、前記重み算出対象画素の重みを小さくすることを特徴とする請求項１ないし４のいずれか１つに記載の視差マップ生成装置。
【請求項６】
前記視差マップ生成手段（３２）は、前記第１の画像中の注目画素に対応付ける画素を、前記第２の画像中で、注目画素と同じ上下位置において水平に探索し、
前記重み決定手段（３３）は、前記重み算出対象画素の位置において検出されるエッジの傾きが水平に近いほど、前記重み算出対象画素の重みを小さくすることを特徴とする請求項１ないし５のいずれか１つに記載の視差マップ生成装置。
【請求項７】
前記重み決定手段（３３）は、重みを算出する対象の重み算出対象画素の位置においてエッジが検出されなかった場合、前記重み算出対象画素の重みをゼロとすることを特徴とする請求項１ないし６のいずれか１つに記載の視差マップ生成装置。
【請求項８】
視差マップ生成装置を、
互いに異なる視点から撮影された第１の画像（２１）および第２の画像（２２）を取得する画像取得手段（３１）、
前記取得された前記第１の画像と前記第２の画像との各々対応する画素毎の画素位置の差で表される視差を含む視差マップを生成する視差マップ生成手段（３２）、
前記視差マップ中の補正対象画素（４１）および前記補正対象画素の周辺に存在する周辺画素に対して補正に対する寄与度となる重みを決定する重み決定手段（３３）、および
決定された前記重みに基づいて加重平均により前記補正対象画素の視差を補正する視差マップ補正手段（３４）として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、互いに異なる視点から撮影された複数の画像の各々対応する画素毎の画素位置の差で表される視差を含む視差マップを生成する視差マップ生成装置、および、当該視差マップ生成装置用のプログラム用のプログラムに関するものである。
【背景技術】
【０００２】
従来、上記のような視差マップ生成装置において、ある画素の視差を補正する際、補正対象の画素と色が類似する画素を、補正対象の周辺の画素群から抽出し、抽出した画素群の視差のヒストグラムを生成し、作成したヒストグラムの最頻値となる視差を、当該補正対象画素の視差とする技術が、特許文献１に記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−２０３８１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上記のようなヒストグラムを用いて補正する方法は、以下のような点で問題がある。まず、ヒストグラムの最頻値を決める必要があるため、ビンの区切り幅をある程度大きくする必要があり、その結果、補正後の視差の値がビンの区切り幅に応じて粗くなってしまう。そしてこの結果、例えば、実際には３次元空間中で連続的に配置されているもの（例えば道路上の白線）が、あたかもぶつ切りに配置されているかのように判定されてしまう可能性がある。
【０００５】
本発明は上記点に鑑み、視差マップの補正の際、ビンによって補正後の視差の値が粗くなってしまわないようにすることを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するための請求項１に記載の発明は、カメラ（１、２）によって互いに異なる視点からによって撮影された第１の画像（２１）および第２の画像（２２）を取得する画像取得手段（３１）と、前記取得された前記第１の画像と前記第２の画像との各々対応する画素毎の画素位置の差で表される視差を含む視差マップを生成する視差マップ生成手段（３２）と、前記視差マップ中の補正対象画素（４１）および前記補正対象画素の周辺に存在する周辺画素に対して補正に対する寄与度となる重みを決定する重み決定手段（３３）と、決定された前記重みに基づいた加重平均により前記補正対象画素の視差を補正する視差マップ補正手段（３４）と、を備えた視差マップ生成装置である。
【０００７】
このように、補正の方法として、加重平均を用いた方法を採用するので、ビンによって補正後の視差の値が粗くなってしまうことがない。なお、この発明は、対象（画像）の物理的性質（互いに異なる視点からカメラによって撮影されている）に基づく情報処理を具体的に行うものであるから、特許法上の発明に該当する。
【０００８】
なお、上記および特許請求の範囲における括弧内の符号は、特許請求の範囲に記載された用語と後述の実施形態に記載される当該用語を例示する具体物等との対応関係を示すものである。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態に係る視差マップ生成システムの構成図である。
【図２】演算回路が実行する処理のフローチャートである。
【図３】ステレオマッチングの概要を示す図である。
【図４】視差マップ中の補正対象画素４１と周辺画像とを
【図５】補正対象画素４１と重み算出対象画素の画像座標上の距離に応じた重み設定を概念的に示す図である。
【図６】補正対象画素４１と重み算出対象画素の輝度差に応じた重み設定の意義を概念的に示す図である。
【図７】補正対象画素４１と重み算出対象画素の奥行き方向の位置の差に応じた重み設定の意義を概念的に示す図である。
【図８】奥行き方向の位置Ｌと視差ｄとの関係を示す図である。
【図９】重み算出対象画素のエッジの勾配に応じた重み設定を概念的に示す図である。
【図１０】エッジの傾きと視差誤差ｅｄとの関係を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の一実施形態について説明する。図１に示すように、本実施形態に係る視差マップ生成システムは、右カメラ１、左カメラ２、演算回路３、メモリ４を備えている。
【００１１】
右カメラ１および左カメラ２は、互いに異なる位置に配置され、同じ被写体を互いに異なる視点から同時に撮影するようになっている。例えば、視差マップ生成システムが車両に搭載されている場合は、車両のフロントガラスの右端付近および左端付近にそれぞれ右カメラ１および左カメラ２が取り付けられ、右カメラ１および左カメラ２は共に車両前方を撮影するようになっていてもよい。
【００１２】
演算回路３（視差マップ生成装置の一例に相当する）は、右カメラ１が撮影した撮影画像および左カメラ２が撮影した撮影画像を取得し、取得した撮影画像に基づいて視差マップを作成する装置である。この演算回路３はメモリ４中のＲＯＭに記録されたプログラムを実行することで、後述する図２の処理を実現するようになっている。また、演算回路３は、図２の処理の実行において、メモリ４中のＲＡＭを、計算結果の一時保存用の作業領域として使用する。
【００１３】
また、演算回路３は、図２の処理を実行することで、画像取得部３１、視差マップ生成部３２、重み決定部３３、視差マップ補正部３４として機能する。
【００１４】
画像取得部３１は、右カメラ１、左カメラ２によって互いに異なる視点から撮影された２つの画像を取得し、視差マップ生成部３２は、取得された２つの画像の各々対応する画素毎の画素位置の差で表される視差を含む視差マップを生成する。
【００１５】
重み決定部３３は、視差マップ中の補正対象画素４１（順に１個ずつ選ばれる）および補正対象画素の周辺に存在する周辺画素に対して補正に対する寄与度となる重みを決定する。画像補正部３４は、決定された重みに基づいて加重平均により補正対象画素の視差を補正する。
【００１６】
次に、図２の処理について説明する。演算回路３は、図２の処理において、まずステップ１０５で、右カメラ１によって撮影された右カメラ画像（第１の画像の一例に相当する）と、左カメラ２によって撮影された左カメラ画像（第２の画像の一例に相当する）を取得してメモリ４のＲＡＭに記録する。このステップ１０５を実行することで、演算回路３が画像取得部３１として機能する。
【００１７】
続いてステップ１１０では、このＲＡＭ中に記録された右カメラ画像および左カメラ画像を用いて周知のステレオマッチングを行うことで、視差マップを生成する。このステップ１１０を実行することで、演算回路３が視差マップ生成部３２として機能する。
【００１８】
このステップ１１０において、視差は、右カメラ画像および左カメラ画像の双方に含まれる同じ被写体の、右カメラ画像および左カメラ画像横における横方向の画素位置の相違（乖離量）として算出される。
【００１９】
ステレオマッチングとしては、周知のブロックマッチング法を採用する。ブロックマッチング法においては、演算回路３は、図３に示すように、右カメラ画像２１中に、注目画素を中心に含む注目ブロック２３（例えば縦５画素×横５画素のブロック）を設定し、左カメラ画像２２中で、注目ブロック２３と同じ被写体が含まれているブロックを探索し、探索の結果見つかったブロックを選び出し、選び出したブロックの中心画素と、当該注目画素とを対応付ける、という一連の処理を、注目画素の位置をラスタスキャンで１画素ずつずらしながら、右カメラ画像２１中の全画素が注目画素となるまで、繰り返す。
【００２０】
この際、注目ブロック２３と同じ被写体が含まれているブロックを探索するため、候補となる比較ブロック２４（注目ブロックと同形状かつ同サイズのブロック）を左カメラ画像２２中に複数個設け、それら比較ブロック２４のうち、周知のＳＡＤ（Sum of Absolute Difference）が最も小さくなる比較ブロック（つまり、注目ブロック２３と最も相関が高い比較ブロック）を、注目ブロック２３と同じ被写体が含まれているブロックとして選び出す。なお、ＳＡＤとは、２つのブロック（注目ブロックと比較ブロック）内における対応する各画素の輝度差の絶対値の総和である。
【００２１】
ここで、上記複数の比較ブロック２４は、左カメラ画像２２中で、中心画素の画像座標中の上下位置（図３中の上下位置に相当する）が、右カメラ画像中の注目画素と同じになるブロックのみから選ぶ。つまり、注目ブロック２３と同じ被写体が含まれているブロックは、矢印２５のように、水平方向に探索する。したがって、注目画素に対応する画素も、注目画素と同じ上下位置において水平に探索される。
【００２２】
上述のように、ブロックマッチングによって、右カメラ画像２１中の各画素について、左カメラ画像２２中で対応する画素が決まる。これに基づき、右カメラ画像２１中の各画素について、左カメラ画像２２中の対応する画素との視差（横方向の画像座標位置の差）を算出し、算出した視差を、当該右カメラ画像２１中の画素に対応する視差として、メモリ４のＲＡＭに記録する。
【００２３】
このように、右カメラ画像２１中の各画素に対応付けられて記録された視差のデータが視差マップとなる。つまり、視差マップは、右カメラ画像２１中の各画素の座標に、当該画素に写された被写体の視差が対応付けられたデータである。
【００２４】
ステップ１１０に続いては、ステップ１１５〜１５０の処理を、視差マップの画素の数だけ繰り返す。繰り返しの各回におけるステップ１１５では、その回における補正対象画素および複数の周辺画素を新たに設定する。
【００２５】
図４に示すように、複数の周辺画素は、補正対象画素４１を中心とする縦９ドット×横９ドットのブロック領域４０を設定し、そのブロック領域４０内の全画素から補正対象画素４１を除外した残りの画素である。なお、ブロック領域４０のサイズおよび形状は適宜変更してもよい。
【００２６】
続くステップ１２０、１２５、１３０、１３５では、補正対象画素４１および周辺画素のそれぞれに対して各種重み設定を行う。設定された重みは、後述するステップ１４５で補正対象画素４１の視差を加重平均で補正する際に、補正に対する寄与度を表す量として用いられる。
【００２７】
まずステップ１２０では、補正対象画素４１および周辺画素のそれぞれに対して第１の重みｗｘを設定する。この重みｗｘは、重みを算出する対象の画素（補正対象画素４１または周辺画素、以下重み算出対象画素という）の補正対象画素４１に対する画像座標上の距離に応じて設定される。図５の矢印４１に示すように、右カメラ画像２１中のブロック領域４０内において、補正対象画素４１から遠く離れた位置ほど、その位置の重み算出対象画素と補正対象画素４１との画像座標上の距離は長くなる。
【００２８】
重み設定は、具体的には、図５に示すような画像座標（Ｘ、Ｙ）上の、補正対象画素４１の画素座標値を（ｘ、ｙ）とし、重み算出対象画素の画素座標値を（ｘ’、ｙ’）とすると、
【００２９】
【数１】
2014038546.tif 000003
のようになる。つまり、補正対象画素４１と重み算出対象画素との画像座標上の距離が長くなるほど、当該重み算出対象画素の重みｗｘを小さくする。なお、σｘは、あらかじめ定められた定数である。このようにするのは、補正対象画素４１に近い画素ほど、補正対象画素４１の視差との関連性が高いと考えられるからである。
【００３０】
続くステップ１２５では、補正対象画素４１および周辺画素のそれぞれに対して第２の重みｗＩを設定する。この重みｗＩは、重み算出対象画素と補正対象画素４１の輝度値の差（右カメラ画像２１における輝度値の差）に応じて設定される。図７に示すように、補正対象画素４１が人の一部を被写体としており、ブロック領域４０内において、人が写った領域４３の輝度と背景が写った領域４４の輝度とが明確に異なっている場合があるが、このような場合は、輝度の違いを利用して、補正対象画素４１の視差にあまり関係がない背景の視差については、補正対象画素４１の視差補正計算において寄与度を低くする。
【００３１】
具体的には、補正対象画素４１の（右カメラ画像２１における）輝度値をＩｘｙとし、重み算出対象画素の（右カメラ画像２１における）輝度値をＩｘ’ｙ’とすると、
【００３２】
【数２】
2014038546.tif 000004
のように算出する。つまり、補正対象画素４１の輝度値と重み算出対象画素の輝度値との差が大きくなるほど、当該重み算出対象画素の重みｗＩを小さくする。なお、σＩは、あらかじめ定められた定数である。
【００３３】
続くステップ１３０では、補正対象画素４１および周辺画素のそれぞれに対して第３の重みｗＺを設定する。この重みｗＺは、重み算出対象画素と補正対象画素４１の３次元座標変換時の奥行き方向の位置の差に応じて設定される。図７に示すように、補正対象画素４１が人の一部を被写体としており、ブロック領域４０内において、人の輝度に近いがカメラ１、２からの距離が大きく異なる被写体４５（例えば路面上の白線）がある場合は、そのカメラ１、２からの距離（すなわち、上記奥行き方向の位置）の違いを利用して、補正対象画素４１の視差にあまり関係がない被写体４５の視差については、補正対象画素４１の視差補正計算において寄与度を低くする。
【００３４】
具体的には、補正対象画素４１の上記奥行き方向の位置をＺｘｙとし、重み算出対象画素の上記奥行き方向の位置をＺｘ’ｙ’とすると、
【００３５】
【数３】
2014038546.tif 000005
のように算出する。つまり、補正対象画素４１の奥行き方向の位置（カメラから遠いほど大きくなる）と重み算出対象画素の奥行き方向の位置との差が大きくなるほど、当該重み算出対象画素の重みｗＺを小さくする。なお、σＺは、あらかじめ定められた定数である。
【００３６】
なお、ある画素の３次元座標変換時の奥行き方向の位置は、その画素の視差（直前のステップ１１０で算出された視差）に応じて決まる。具体的には、図８に示すように、２つのカメラ１、２の光軸１ａ、１ｂ間の距離をｂとし、カメラ１のレンズ１ｂから結増面１ｃまでの距離（カメラ２のレンズ２ｂから結増面２ｃまでの距離と同じ）に相当するレンズ焦点距離をｆとし、視差をｄとすると、被写体５１の奥行き方向の位置Ｌは、Ｌ＝ｂ×ｆ／ｄという式によって得られる。なお、焦点距離ｆおよび距離ｂは既知である。
【００３７】
従って、２つの画素の奥行き方向の位置の差が大きいときは、２つの画素の視差の差も大きくなるので、補正対象画素４１の視差と重み算出対象画素の視差との差が大きくなるほど、当該重み算出対象画素の重みｗＺが小さくなる。
【００３８】
続くステップ１３５では、補正対象画素４１および周辺画素のそれぞれに対して第４の重みｗθを設定する。
【００３９】
この重みｗθは、重み算出対象画素に存在するエッジ（右カメラ画像２１中のエッジ）の勾配に応じて設定される。具体的には、エッジの勾配が水平に近い画素ほど、その画素の重みｗθを小さくするので、図９に示すように、エッジ４６の位置の画素の重みは、エッジ４７の位置の画素の重みよりも小さくなる。
【００４０】
より具体的には、補正対象画素４１のエッジの傾きをθｘ’ｙ’とすると（ただし、θｘ’ｙ’は０≦θｘ’ｙ’＜πの間で決められる）、
【００４１】
【数４】
2014038546.tif 000006
のように算出する。ここで、σθは、あらかじめ定められた定数である。
【００４２】
このようにして第４の重みｗθを算出するのは、エッジが水平に近い重み算出対象画素ほど、ステップ１１０のステレオマッチングによる視差計算の誤差が高くなる傾向にあるので、補正対象画素４１の視差補正計算においてそのような重み算出対象画素の寄与度を低くしたいからである。
【００４３】
エッジが水平に近い画素ほどステレオマッチングの誤差が高くなる理由について説明する。本実施形態では、右カメラ画像および左カメラ画像において同じ被写体が写った２つの画素については、水平方向の位置がずれるものの、上下方向の位置がずれないように、あらかじめカメラ１、２の位置および向きが調整されている。
【００４４】
また、カメラ１、２の位置および向きの若干のずれを検出するため、演算回路３は、カメラ１、２の設置時に、右カメラ画像および左カメラ画像を用いたキャリブレーションを行い、そのキャリブレーションによって検出したずれを解消するよう、右カメラ画像および左カメラ画像の補正パラメータを決定し、以後のステップ１０５では毎回、この補正パラメータを用いた補正を、最新の右カメラ画像および左カメラ画像に対して施している。
【００４５】
しかしながら、キャリブレーションにも誤差が発生する場合がある。そのような場合には、図１０に示すように、画像座標上において、右カメラ画像中で或る被写体が写った画素６１と、左カメラ画像中で同じ被写体が写った画素６２とが、同じ水平ライン６１上にない（すなわち上下にずれている）場合が生じる。なお、図１０の例では、画素６１は右カメラ画像中のエッジ６１上にあり、画素６２は左カメラ画像中のエッジ６２（被写体としてはエッジ６１と同じ）上にある。
【００４６】
このような場合であっても、ステップ１１０のステレオマッチングでは、上述の通り、注目画素に対応する画素は、注目画素と同じ上下位置において水平に探索されるので、画素６１に真に対応する画素６２は、実際には画素６１に対応付けられることはない。
【００４７】
このような場合、左カメラ画像内で画素６１に実際に対応付けられる画素は、ブロックマッチングの性質上、水平ライン６３と画素６２を通るエッジ６５とが交わる位置の画素６６となる可能性が高い。その結果、画素６１について計算される視差は、視差誤差ｅｄを含むものとなってしまう。
【００４８】
この視差誤差ｅｄは、エッジ６１、６２の水平ラインを基準とした勾配をθとし、画素６１に対する画素６２の上下方向のずれを平行化誤差ｅｒとすると、画像左上端を原点とする座標系では
ｅｄ＝ｅｒ×ｔａｎ（π／２−θ）
となる（図１０の例ではｅｄ、ｅｒはマイナスの値を持つ）。つまり、視差誤差ｅｄは、０≦θ＜πの範囲内では、θ＝π／２のとき（すなわち、エッジが水平ラインに対して直交しているとき）最小であり、θ＝π／２から離れるほど（すなわち、エッジが水平に近づくほど）大きくなる。
【００４９】
なお、右カメラ画像２１中でエッジが検出されなかった画素については、重みｗθの値をゼロ（寄与度ゼロ）とする。このようにするのは、エッジが検出されない画素は、エッジが検出された画素に比べて、ステレオマッチングによる視差計算の誤差が高くなる傾向にあるからである。
【００５０】
また、右カメラ画像２１のエッジ検出は、Ｓｏｂｅｌフィルタを用いた方法等、周知のものを用いればよい。また、エッジ検出のタイミングは、ステップ１０５で右カメラ画像２１を取得した時点でもよいし、ステップ１３５の実行開始時点においてブロック領域４０に対してエッジ検出を行う方法でもよい。
【００５１】
ステップ１３５に続いては、ステップ１４０に進み、ステップ１２０、１２５、１３０、１３５で算出した重みｗｘ、ｗＩ、ｗＺ、ｗθを統合する。具体的には、今回のブロック領域４０中の重み算出対象画素のそれぞれについて、当該画素の重みｗｘ、ｗＩ、ｗＺ、ｗθの積ｗ０＝ｗｘ×ｗＩ×ｗＺ×ｗθを、最終的な当該画素の重みとする。
【００５２】
なお、このような統合方法によれば、最終的な重みｗ０は、重みｗｘ、ｗＩ、ｗＺ、ｗθのうちいずれかがゼロになれば必ずゼロになるので、第４の重みｗθを考慮すれば、重みｗ０も、エッジが検出されなかった画素については、ゼロとなる。
【００５３】
演算回路３は、上記のようなステップ１１５〜１４０を実行することで、重み決定部（３３）として機能する。
【００５４】
続くステップ１４５では、ステップ１４０で統合した重みｗ０を用いた加重平均によって、今回の補正対象画素４１の視差の補正を行う。演算回路３は、このステップ１４５を実行することで、視差マップ補整部として機能する。
【００５５】
具体的には、直前のステップ１１０で算出した画像座標値（ｘ’、ｙ’）の画素の視差をｄｘ’ｙ’とし、補正後の画像座標値（ｘ、ｙ）の画素の視差をｆｘｙとすると、ｆｘｙは、
【００５６】
【数５】
2014038546.tif 000007
のようになる。なお、この数式中の二重のΣは、今回のブロック領域４０中のすべての重み算出対象画素について総和を取ることを意味している。したがっって、ブロック領域４０が縦９画素×横９画素の領域の場合、Ｒは４画素分を表す量に相当する。
【００５７】
ステップ１５０では、対象となる全画素（右カメラ画像２１の全画素）が補正対象画素になったか否かを判定し、なっていない場合、ステップ１１５に戻り、なっている場合、補正後の視差マップをメモリ４のＲＡＭに記録した後、図２の処理を終了する。
【００５８】
このように、ステップ１１５〜１５０の処理を右カメラ画像２１の画素分実行することで、各画素の視差を補正することができる。
【００５９】
なお、このような補正によって得た視差マップは、どのような用途に用いてもよい。例えば、本実施形態に係る視差マップ生成システムが車両に搭載され、車両のフロントガラスの右端付近および左端付近にそれぞれ右カメラ１および左カメラ２が取り付けられ、右カメラ１および左カメラ２は共に車両前方を撮影するようになっている場合は、この視差マップに基づいて、自車両から障害物までの距離を検知するようになっていてもよい。
【００６０】
なお、上記実施形態においては、演算回路３の画像取得部３１、視差マップ生成部３２、重み決定部３３、および視差マップ生成部３２が、それぞれ、画像取得手段、視差マップ生成手段、重み決定手段、および視差マップ生成手段に対応する。
【００６１】
（他の実施形態）
以上、本発明の実施形態について説明したが、本発明の範囲は、上記実施形態のみに限定されるものではなく、本発明の各発明特定事項の機能を実現し得る種々の形態を包含するものである。例えば、以下のような形態も許容される。
【００６２】
（１）上記実施形態では、ステップ１４０で、重みｗｘ、ｗＩ、ｗＺ、ｗθをすべて掛け合わせた量ｗ０＝ｗｘ×ｗＩ×ｗＺ×ｗθを最終的な重みとして加重平均に用いているが、最終的な重みは必ずしもこのようになっておらずともよい。例えば、ｗｘ、ｗＩ、ｗＺ、ｗθのいずれか１つを最終的な重みとしてもよいし、ｗｘ、ｗＩ、ｗＺ、ｗθのうちどの２つを選んで掛け合わせたものも最終的な重みとしてよい。
【００６３】
（２）上記実施形態では、視差マップにおいては、右カメラ画像２１の各画素にその画素の視差が対応付けられている。しかし、視差マップにおいては、左カメラ画像２２の各画素にその画素の視差が対応付けられていてもよいし、右カメラ画像２１と左カメラ画像２２と視差とに基づいて仮想的に作成された中間視点の画像の各画素にその画素の視差が対応付けられていてもよい。
【００６４】
（３）また、上記の実施形態において、演算回路３がプログラムを実行することで実現している各機能は、それらの機能を有するハードウェア（例えば回路構成をプログラムすることが可能なＦＰＧＡ）を用いて実現するようになっていてもよい。
【符号の説明】
【００６５】
１、２        カメラ
３            演算回路
２１、２２    カメラ画像
３１          画像取得部
３２          視差マップ生成部
３３          重み決定部
３４          視差マップ補正部
【図１】
2014038546.tif 000008
【図２】
2014038546.tif 000009
【図３】
2014038546.tif 000010
【図４】
2014038546.tif 000011
【図５】
2014038546.tif 000012
【図６】
2014038546.tif 000013
【図７】
2014038546.tif 000014
【図８】
2014038546.tif 000015
【図９】
2014038546.tif 000016
【図１０】
2014038546.tif 000017