(57)【特許請求の範囲】
【請求項１】
第１の画像の１または複数の画素である第１の画素と、第２の画像において前記第１の画素に対応する位置にある１または複数の画素である第２の画素とについて、前記第１の画像と前記第２の画像との間のバックマッチングによって第１の指標値を算出するステップと、
前記第１の画素と前記第２の画素との間の相関性を示す相関性指標値を、前記第１の画素によって示される画像の複雑度を示す複雑度指標値を用いて正規化することによって第２の指標値を算出するステップと、
前記第１の指標値と前記第２の指標値とをかけ合わせることによって第３の指標値を算出するステップと、
を含む画像処理方法。
【請求項２】
前記第１の画像および前記第２の画像は、相異なる視点に対応する視点画像であり、
前記第３の指標値は、前記第１の画像と前記第２の画像との間のマッチング処理によって検出された視差のうち、前記第１の画素に対応する位置での視差の信頼度を示す指標値である、
請求項１に記載の画像処理方法。
【請求項３】
前記第３の指標値に基づいて、前記第１の画素に対応する位置での視差が信頼し得るか否かを判定するステップと、
信頼し得ないと判定された前記第１の画素に対応する位置での視差を、前記検出された視差のうち信頼し得ると判定された別の位置での視差に基づいて推定された視差によって代替するステップと、
をさらに含む、請求項２に記載の方法。
【請求項４】
前記第１の指標値は、前記第１の画像と前記第２の画像との間の水平方向および垂直方向のバックマッチングによってそれぞれ算出される指標値を足し合わせることによって算出される、請求項１に記載の画像処理方法。
【請求項５】
第１の画像の１または複数の画素である第１の画素と、第２の画像において前記第１の画素群に対応する位置にある１または複数の画素である第２の画素とについて、前記第１の画像と前記第２の画像との間のバックマッチングによって第１の指標値を算出し、
前記第１の画素と前記第２の画素との間の相関性を示す相関性指標値を、前記第１の画素によって示される画像の複雑度を示す複雑度指標値を用いて正規化することによって第２の指標値を算出し、
前記第１の指標値と前記第２の指標値とをかけ合わせることによって第３の指標値を算出する指標値算出部を備える画像処理装置。
【請求項６】
表示部と、
指標値算出部とを備え、
前記指標値算出部は、
第１の画像の１または複数の画素である第１の画素と、第２の画像において前記第１の画素群に対応する位置にある１または複数の画素である第２の画素とについて、前記第１の画像と前記第２の画像との間のバックマッチングによって第１の指標値を算出し、
前記第１の画素と前記第２の画素との間の相関性を示す相関性指標値を、前記第１の画素によって示される画像の複雑度を示す複雑度指標値を用いて正規化することによって第２の指標値を算出し、
前記第１の指標値と前記第２の指標値とをかけ合わせることによって第３の指標値を算出する表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法、画像処理装置および表示装置に関し、特に、立体視画像の視差を検出する画像処理方法、画像処理装置および表示装置に関する。
【背景技術】
【０００２】
立体視画像を生成するために、例えば左眼画像と右眼画像に相当する２つの視点画像から視差を求める場合、ある画像を基準画像、他の画像を参照画像として、これらの画像の間でマッチング処理が行われる。具体的には、基準画像上のある画素（基準画素）について、参照画像上の相関性が高い画素（対応画素）が検出され、基準画素と対応画素との間の位置の差が、基準画素によって表示される画像の基準画像と参照画像との間の視差として検出される。
【０００３】
この場合、基準画像では表示されているオブジェクトが参照画像では手前のオブジェクトに遮られて表示されていない状態（オクルージョン）が生じていると、基準画素に対する対応画素が正しく検出されない領域（オクルージョン領域）が発生する。そこで、基準画像と参照画像とを入れ替えてマッチング処理をするバックマッチングを用いてオクルージョン領域を検出し、検出されたオクルージョン領域における視差を、周辺領域で正しく検出された視差に基づいて推定する技術が開発されている（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平７−２８２２５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に記載された技術では、オクルージョン領域の判定、およびそれに基づいた視差の推定の精度が十分ではない場合がある。そのため、より高い精度でオクルージョン領域を判定し、その結果としてより高い精度で視差を推定する技術が求められている。
【０００６】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、より高い精度で立体視画像の視差を推定することが可能な、新規かつ改良された画像処理方法、画像処理装置および表示装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある観点によれば、第１の画像の１または複数の画素である第１の画素と、第２の画像において上記第１の画素群に対応する位置にある１または複数の画素である第２の画素とについて、上記第１の画像と上記第２の画像との間のバックマッチングによって第１の指標値を算出するステップと、上記第１の画素と上記第２の画素との間の相関性を示す相関性指標値を、上記第１の画素によって示される画像の複雑度を示す複雑度指標値を用いて正規化することによって第２の指標値を算出するステップと、上記第１の指標値と上記第２の指標値とをかけ合わせることによって第３の指標値を算出するステップとを含む画像処理方法が提供される。
【０００８】
上記第１の画像および上記第２の画像は、相異なる視点に対応する立体視画像であり、上記第３の指標値は、上記第１の画像と上記第２の画像との間のマッチング処理によって検出された視差のうち、上記第１の画素に対応する位置での視差の信頼度を示す指標値であってもよい。
【０００９】
上記画像処理方法は、上記第３の指標値に基づいて、上記第１の画素に対応する位置での視差が信頼し得るか否かを判定するステップと信頼し得ないと判定された上記第１の画素に対応する位置での視差を、上記検出された視差のうち信頼し得ると判定された別の位置での視差に基づいて推定された視差によって代替するステップとをさらに含んでもよい。
【００１０】
上記第１の指標値は、上記第１の画像と上記第２の画像との間の水平方向および垂直方向のバックマッチングによってそれぞれ算出される指標値を足し合わせることによって算出されてもよい。
【００１１】
また、上記課題を解決するために、本発明の別の観点によれば、第１の画像の１または複数の画素である第１の画素と、第２の画像において上記第１の画素群に対応する位置にある１または複数の画素である第２の画素とについて、上記第１の画像と上記第２の画像との間のバックマッチングによって第１の指標値を算出し、上記第１の画素と上記第２の画素との間の相関性を示す相関性指標値を、上記第１の画素によって示される画像の複雑度を示す複雑度指標値を用いて正規化することによって第２の指標値を算出し、上記第１の指標値と上記第２の指標値とをかけ合わせることによって第３の指標値を算出する指標値算出部を備える画像処理装置が提供される。
【００１２】
また、上記課題を解決するために、本発明のさらに別の観点によれば、表示部と、指標値算出部とを備え、上記指標値算出部は、第１の画像の１または複数の画素である第１の画素と、第２の画像において上記第１の画素群に対応する位置にある１または複数の画素である第２の画素とについて、上記第１の画像と上記第２の画像との間のバックマッチングによって第１の指標値を算出し、上記第１の画素と上記第２の画素との間の相関性を示す相関性指標値を、上記第１の画素によって示される画像の複雑度を示す複雑度指標値を用いて正規化することによって第２の指標値を算出し、上記第１の指標値と上記第２の指標値とをかけ合わせることによって第３の指標値を算出する表示装置が提供される。
【発明の効果】
【００１３】
以上説明したように本発明によれば、より高い精度で立体視画像の視差を推定することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施形態に係る画像処理装置の機能構成を示すブロック図である。
【図２】本発明の一実施形態に係る画像処理装置のパラメータ生成部の機能構成を示すブロック図である。
【図３】本発明の一実施形態における画像処理装置による処理の例を示すフローチャートである。
【図４】本発明の一実施形態における水平方向のバックマッチングの例を示す図である。
【図５】本発明の一実施形態における指標値算出の例を示す図である。
【発明を実施するための形態】
【００１５】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１６】
なお、説明は以下の順序で行うものとする。
１．関連技術の説明
２．画像処理装置の構成
３．パラメータ生成部の構成
４．画像処理装置による処理
５．補足
【００１７】
＜１．関連技術の説明＞
まず、本願発明の実施形態を理解するために必要な関連技術について説明する。
【００１８】
（１−１．マッチング処理によるディスパリティの検出）
左眼画像と右眼画像に相当する２つの視点画像から視差（ディスパリティ）を検出する場合、マッチング処理が行われる。マッチング処理では、２つの視点画像のうちの第１の画像が基準画像になり、第２の画像が参照画像になる。マッチング処理は、基準画像および参照画像にそれぞれ含まれる、１または複数の画素を処理単位とする。具体的には、基準画像に含まれる任意の基準画素について、参照画像に含まれる画素の中で最も相関性が高い画素が対応画素として特定され、基準画素から対応画素への動きベクトル、すなわち基準画素と対応画素との位置の差が、基準画素によって表示される画像についてのディスパリティとして検出される。
【００１９】
（１−２．オクルージョン領域におけるディスパリティの誤検出）
２つの視点画像の間では、第１の画像では表示されている領域が、第２の画像では手前のオブジェクトに遮られるなどして表示されていない場合がある。このような状態をオクルージョンという。これは、例えば、第１の画像では、第１のオブジェクトが第２のオブジェクトの背後に表示されているのに対して、第２の画像では、視点の変化によって、第１のオブジェクトが第２のオブジェクトの陰に隠れて表示されていないような場合である。ここで、オクルージョンが生じている場合に第１の画像でしか表示されない領域を、オクルージョン領域という。マッチング処理によるディスパリティの検出において、オクルージョン領域に含まれる基準画素については、対応画素にあたる画素が参照画像に存在しない。この場合、基準画素との相関性が最も高い参照画像の画素は、例えば基準画素の位置とはかけ離れた位置にある画素でありうる。それゆえ、マッチング処理において、オクルージョン領域に含まれる基準画素については、正しいディスパリティが検出されない場合がある。
【００２０】
（１−３．バックマッチング）
バックマッチングは、例えば上記のようなオクルージョン領域におけるマッチング処理によるディスパリティの誤検出を判定する手法である。バックマッチングでは、ディスパリティの検出のための第１のマッチング処理の基準画像と参照画像とを入れ替えた第２のマッチング処理が行われる。つまり、第２のマッチング処理では、第２の画像が基準画像になり、第１の画像が参照画像になる。ある画素について、第２のマッチング処理の結果が第１のマッチング処理の結果と符合した場合、その画素についてマッチング処理によって検出されたディスパリティの信頼度は高いとみなされる。具体的には、第１のマッチング処理において画素ｘ１を基準画素として特定された対応画素が画素ｘ２である場合、第２のマッチング処理において画素ｘ２を基準画素として特定された対応画素が画素ｘ１、または画素ｘ１の近傍の画素であれば、画素ｘ１についてのマッチング処理によって検出されたディスパリティの信頼度は高いと推定される。
【００２１】
（１−４．バックマッチングの課題）
上記のバックマッチングによって、オクルージョン領域におけるマッチング処理によるディスパリティの誤検出をある程度の精度で判定することは可能である。しかし、オクルージョン領域以外の領域でも、バックマッチングにおける第１のマッチング処理の結果と第２のマッチング処理の結果とは、必ずしも符合しない。例えば、画像が平坦な部分で、相隣接する画素が同様の画素値を有する場合などには、第１のマッチング処理の結果と第２のマッチング処理の結果との間には若干のずれが生じうる。それゆえ、各画素における第１のマッチング処理の結果と第２のマッチング処理の結果との差分値は、分散が大きい分布をとりうる。この場合、ディスパリティが誤検出されている領域としてオクルージョン領域を特定するためには、差分値に閾値を設定する必要がある。しかし、閾値の設定についての定量的な指標がないため、適切な閾値を設定することは難しい。結果として、バックマッチングによるディスパリティの誤検出の判定の精度は、十分ではない場合がある。
【００２２】
以下で、かかる関連技術の課題に対処するための本発明の一実施形態について説明する。
【００２３】
＜２．画像処理装置の構成＞
まず、図１を参照して、本発明の一実施形態に係る画像処理装置の概略構成について説明する。図１は、本発明の一実施形態に係る画像処理装置１０の機能構成を示すブロック図である。
【００２４】
画像処理装置１０は、入力画像ＶＬ，ＶＲから出力画像Ｖ１，Ｖ２，・・・Ｖｎを生成する。入力画像ＶＬ，ＶＲは、それぞれ右眼画像および左眼画像に対応する視点画像であり、相異なる視点に対応する第１の画像および第２の画像の例である。一方、出力画像Ｖ１，Ｖ２，・・・Ｖｎは、立体視画像を表示するための複数の視点画像である。出力画像Ｖ１，Ｖ２，・・・Ｖｎは、例えば、４視点、６視点、８視点などの多視点に対応する画像でありうる。画像処理装置１０は、入力画像ＶＬ，ＶＲを用いたマッチング処理によってディスパリティを検出し、検出したディスパリティに基づいて入力画像ＶＬ，ＶＲを合成することによって、出力画像Ｖ１，Ｖ２，・・・Ｖｎを生成する。
【００２５】
ここで、上述のように、マッチング処理は、各画像に含まれる１または複数の画素を単位として実行される。画像処理装置１０では、マッチング処理にブロックマッチング法が用いられる。ブロックマッチング法は、画像を所定の大きさの画素ブロックに分割し、基準画像に含まれる任意の基準画素ブロックについて、参照画像に含まれる画素ブロックの中で最も相関性が高い画素ブロックを対応画素ブロックとして特定する。基準画素ブロックから対応画素ブロックへのベクトル（例えば、それぞれのブロックの左上端の画素の位置を結ぶベクトル）が、基準画素ブロックにおけるディスパリティＰとして検出される。
【００２６】
なお、画像処理装置１０では、各画素の輝度値の差分絶対値和（ＳＡＤ：Sum  of  Absolute  Difference）が、画素ブロック間の相関性を示す相関性指標値として用いられる。相関性指標値としては、ＳＡＤの他に、例えば差分２乗和（ＳＳＤ：Sum  of  Squared  Difference）、または正規化相互相関（ＺＮＣＣ：Zero-mean  Normalized  Cross-Correlation）などが用いられうる。マッチング処理には、ブロックマッチング法の他に、例えばＤＰマッチング法または位相相関限定法などの手法が用いられうる。これらの手法でも、処理の単位となる１または複数の画素について相関性指標値が設定される。
【００２７】
画像処理装置１０は、上記の機能を少なくとも有する、例えば映像編集装置、撮像装置、またはＰＣ（Personal  Computer）などの装置でありうる。画像処理装置１０は、上記の機能を実現するために、パラメータ生成部１００、オクルージョン判定部２００および画像合成部３００を少なくとも含む。これらの各部は、例えばＤＳＰ（Digital  Signal  Processor）によって実現されうる。画像処理装置１０は、さらに、入力画像ＶＬ，ＶＲおよび出力画像Ｖ１，Ｖ２，・・・Ｖｎの入出力のためのＨＤＭＩ（High  Definition  Multimedia  Interface）などのインターフェース、ならびに処理に用いる画像および数値を格納するＲＡＭ（Random  Access  Memory）などの記憶装置を有してもよい。また、画像処理装置１０は、入力画像ＶＬ，ＶＲを撮像するための撮像部、および出力画像Ｖ１，Ｖ２，・・・Ｖｎを表示するための表示部を有してもよい。
【００２８】
パラメータ生成部１００は、入力画像ＶＬ，ＶＲを用いて、マッチング処理、バックマッチング、および画像のアクティビティを算出する処理などを実行し、各種パラメータを生成する。パラメータ生成部１００で生成されるパラメータには、ブロックマッチング処理において検出された入力画像ＶＬ，ＶＲのディスパリティＰ、およびディスパリティＰの信頼度を示す指標値Ｄが含まれる。ディスパリティＰは、画像合成部３００に提供され、指標値Ｄは、オクルージョン判定部２００に提供される。なお、指標値Ｄは、バックマッチングによって得られたディスパリティ検出の信頼度を示す指標値Ｄ１に、入力画像ＶＬ，ＶＲの間の相関性指標値を画像のアクティビティで正規化した指標値Ｄ２をかけ合わせることによって生成される。かかるパラメータ生成部１００の詳細な構成については後述する。
【００２９】
オクルージョン判定部２００は、パラメータ生成部１００から提供された、ディスパリティＰの信頼度を示す指標値Ｄに基づいて、入力画像ＶＬ，ＶＲにおけるオクルージョン領域を判定する。オクルージョン領域ではディスパリティは正しく検出されない、すなわち誤検出されていると考えられるため、オクルージョン領域は、指標値Ｄによって示されるディスパリティ検出の信頼度が所定の閾値を下回る画素ブロックとして特定されうる。特定されたオクルージョン領域の情報は、画像合成部３００に提供される。後述するように、パラメータ生成部１００から入力される指標値Ｄは、２極化した分布を有する値である。それゆえ、関連技術として紹介したディスパリティの結果に基づくディスパリティの誤検出判定に比べて、適切な閾値の設定が容易である。従って、オクルージョン判定部２００は、高い精度でオクルージョン領域を判定することが可能である。
【００３０】
画像合成部３００は、パラメータ生成部１００から提供されたディスパリティＰと、オクルージョン判定部２００から入力されるオクルージョン領域の情報とに基づいて、入力画像ＶＬ，ＶＲを合成することによって出力画像Ｖ１，Ｖ２，・・・Ｖｎを生成する。上述のように、オクルージョン領域において、パラメータ生成部１００から提供されるディスパリティＰは、誤検出されている可能性が高い。それゆえ、画像合成部３００は、オクルージョン領域において、マッチング処理によって検出されたディスパリティＰに代えて、オクルージョン領域の周辺の、ディスパリティＰが正しく検出されている領域のディスパリティＰから推定されたディスパリティの値を用いる。
【００３１】
従って、オクルージョン判定部２００によるオクルージョン領域の判定の精度は、画像合成部３００によって生成される出力画像Ｖ１，Ｖ２，・・・Ｖｎの品質に影響する。オクルージョン領域の判定の精度が低い場合、例えば、オクルージョン領域において誤検出されているディスパリティＰがそのまま用いられたり、正しく検出されているディスパリティＰが用いられずに周辺領域のディスパリティから推定されたりしうる。結果として、出力画像Ｖ１，Ｖ２，・・・Ｖｎは不自然な立体視画像になりうる。一方、オクルージョン領域の判定の精度が高い場合、出力画像Ｖ１，Ｖ２，・・・Ｖｎはより自然な立体視画像になりうる。
【００３２】
＜３．パラメータ生成部の構成＞
次に、図２を参照して、本発明の一実施形態に係る画像処理装置のパラメータ生成部の構成について説明する。図２は、本発明の一実施形態に係る画像処理装置１０のパラメータ生成部１００の機能構成を示すブロック図である。
【００３３】
上述のように、パラメータ生成部１００は、入力画像ＶＬ，ＶＲを用いて、マッチング処理、バックマッチング、および画像のアクティビティを算出する処理などを実行し、各種パラメータを生成する。パラメータ生成部１００で生成されるパラメータには、ブロックマッチング処理において検出された入力画像ＶＬ，ＶＲのディスパリティＰ、および入力画像ＶＬ，ＶＲのディスパリティ検出の信頼度を示す指標値Ｄが含まれる。パラメータ生成部１００は、上記の機能を実現するために、ブロックマッチング部１１１，１１３、アクティビティ算出部１２１，１２３、および指標値算出部１３０を有する。
【００３４】
ブロックマッチング部１１１，１１３は、入力画像ＶＬ，ＶＲを用いたマッチング処理を実行する。上述のように、画像処理装置１０では、マッチング処理にブロックマッチング法が用いられる。ブロックマッチング部１１１は、入力画像ＶＬを基準画像、入力画像ＶＲを参照画像としてマッチング処理を実行する。一方、ブロックマッチング部１１３は、入力画像ＶＲを基準画像、入力画像ＶＬを参照画像としてマッチング処理を実行する。入力画像ＶＬを基準としてディスパリティＰが検出される場合、ブロックマッチング部１１１によるマッチング処理の結果がディスパリティＰとして画像合成部３００に提供される。また、入力画像ＶＲを基準としてディスパリティＰが検出される場合、ブロックマッチング部１１３によるマッチング処理の結果がディスパリティＰとして画像合成部３００に提供される。
【００３５】
ここで、ブロックマッチング部１１１，１１３のそれぞれにおけるマッチング処理は、互いに基準画像と参照画像が逆転した２つのマッチング処理である。それゆえ、ブロックマッチング部１１１，１１３のそれぞれにおけるマッチング処理の結果を相互に参照することによって、マッチング処理によるディスパリティの誤検出を判定するバックマッチングを行うことが可能である。例えば、ブロックマッチング部１１１におけるマッチング処理で、入力画像ＶＬの画素ブロックＢ１を基準画素ブロックとして特定された、入力画像ＶＲの対応画素が画素ブロックＢ２であるとする。この場合、ブロックマッチング部１１３におけるマッチング処理で、入力画像ＶＲの画素ブロックＢ２を基準画素ブロックとして特定された入力画像ＶＬの対応画素ブロックが、画素ブロックＢ１、または画素ブロックＢ１の近傍の画素ブロックであれば、ブロックマッチング部１１１におけるマッチング処理によって検出されたディスパリティの信頼度は高いと推定される。
【００３６】
アクティビティ算出部１２１，１２３は、入力画像ＶＬ，ＶＲについて、画像のアクティビティＡＬ，ＡＲをそれぞれ算出する。アクティビティ算出部１２１は、入力画像ＶＬのアクティビティを算出する。また、アクティビティ算出部１２３は、入力画像ＶＲのアクティビティを算出する。画像のアクティビティＡは、画像の複雑度を示す複雑度指標値であって、画素または画素ブロックごとに算出されうる。例えば、画素単位のアクティビティＡは、対象になる画素と、その近傍（例えば８近傍）の各画素との間の輝度値の差分絶対値の平均値でありうる。また、例えば、画素ブロック単位のアクティビティＡは、画素ブロック内の画素についての画素単位のアクティビティＡの総和でありうる。なお、アクティビティＡの算出には、輝度値の差分絶対値の他に、例えば輝度値の分散、またはダイナミックレンジなどが用いられてもよい。
【００３７】
指標値算出部１３０は、ブロックマッチング部１１１，１１３、およびアクティビティ算出部１２１，１２３によって算出された値に基づいて、ブロックマッチング部１１１またはブロックマッチング部１１３において検出された入力画像ＶＬ，ＶＲのディスパリティＰの信頼度を示す指標値Ｄを算出する。指標値算出部１３０の処理については、後に詳述する。
【００３８】
＜４．画像処理装置による処理＞
次に、図３〜５を参照して、本発明の一実施形態に係る画像処理装置による処理の例について説明する。
【００３９】
図３は、本発明の一実施形態における画像処理装置１０による処理の例を示すフローチャートである。ここでは、画像処理装置１０が、入力画像ＶＬを基準にしてディスパリティＰを検出し、それとともに指標値Ｄによってオクルージョン領域を判定して、周辺領域のディスパリティＰを用いてオクルージョン領域のディスパリティを補充する。
【００４０】
まず、パラメータ生成部１００のブロックマッチング部１１１が、マッチング処理によって、入力画像ＶＬを基準にしたディスパリティＰを検出する（ステップＳ１０１）。次に、指標値算出部１３０が、ブロックマッチング部１１１によるマッチング処理の結果に加えて、ブロックマッチング部１１３によるマッチング処理の結果を参照して、入力画像ＶＬの位置（ｘ，ｙ）にある画素ブロックについて、バックマッチングによって第１の指標値Ｄ１（ｘ，ｙ）を算出する（ステップＳ１０３）。
【００４１】
ここで、ステップＳ１０３は、第１の画像（入力画像ＶＬ）の位置（ｘ，ｙ）にある１または複数の画素である第１の画素と、第２の画像（入力画像ＶＲ）の位置（ｘ，ｙ）にある１または複数の画素である第２の画素とについて、第１の画像と第２の画像との間のバックマッチングによって第１の指標値Ｄ１（ｘ，ｙ）を算出するステップである。
【００４２】
次に、指標値算出部１３０が、入力画像ＶＬの位置（ｘ，ｙ）にある画素ブロックについて、ブロックマッチング部１１１によって算出された入力画像ＶＬ，ＶＲの間のＳＡＤ値を、アクティビティ算出部１２１によって算出された入力画像ＶＬのアクティビティＡＬ（ｘ，ｙ）で正規化することによって、第２の指標値Ｄ２（ｘ，ｙ）を算出する（ステップＳ１０５）。
【００４３】
ここで、ステップＳ１０５は、第１の画素と第２の画素との間の相関性指標値（入力画像ＶＬ，ＶＲの間のＳＡＤ値）を、第１の画素によって示される画像の複雑度指標値（アクティビティＡＬ（ｘ，ｙ））を用いて正規化することによって第２の指標値Ｄ２（ｘ，ｙ）を算出するステップである。
【００４４】
次に、指標値算出部１３０が、第１の指標値Ｄ１（ｘ，ｙ）と第２の指標値Ｄ２（ｘ，ｙ）とをかけ合わせることによって、第３の指標値Ｄ３（ｘ，ｙ）を算出する（ステップＳ１０７）。指標値算出部１３０は、第３の指標値Ｄ３（ｘ，ｙ）を、ディスパリティＰの信頼度を示す指標値Ｄとしてオクルージョン判定部２００に提供する。
【００４５】
次に、オクルージョン判定部２００が、指標値算出部１３０から提供された指標値Ｄ、すなわち第３の指標値Ｄ３（ｘ，ｙ）に基づいて、入力画像ＶＬにおけるオクルージョン領域を判定する（ステップＳ１０９）。オクルージョン判定部２００は、判定されたオクルージョン領域の情報を画像合成部３００に提供する。
【００４６】
ここで、ステップＳ１０９は、第３の指標値Ｄ３（ｘ，ｙ）に基づいて、マッチング処理によって検出された位置（ｘ，ｙ）での視差（ディスパリティ）が信頼し得るか否かを判定するステップである。検出された視差が信頼し得る場合とは、位置（ｘ，ｙ）がオクルージョン領域に含まれない場合であり、検出された視差が信頼し得ない場合とは、位置（ｘ，ｙ）がオクルージョン領域に含まれる場合でありうる。
【００４７】
次に、画像合成部３００が、オクルージョン判定部２００によって判定されたオクルージョン領域のディスパリティを、周辺領域のディスパリティから推定されたディスパリティによって代替する（ステップＳ１１１）。ここで、オクルージョン領域は、ブロックマッチング部１１１によるマッチング処理で検出されたディスパリティＰの信頼度が低い、すなわちディスパリティが誤検出されていると推定される領域である。一方、周辺領域は、ディスパリティＰの信頼度が高い、すなわちディスパリティが正しく検出されていると推定される領域である。
【００４８】
ここで、ステップＳ１１１は、信頼し得ないと判定された位置（ｘ，ｙ）での視差（ディスパリティ）を、信頼し得ると判定された別の位置での視差に基づいて推定された視差によって代替するステップである。信頼し得ない視差とは、オクルージョン領域において検出されたディスパリティであり、信頼し得る視差とは、オクルージョン領域の周辺領域で正しく検出されたディスパリティでありうる。
【００４９】
続いて、図４および図５を参照して、上記のステップＳ１０３、ステップＳ１０５、およびステップＳ１０７における処理について、さらに詳しく説明する。
【００５０】
図４は、本発明の一実施形態における水平方向のバックマッチングの例を示す図である。図４において示される例では、入力画像ＶＬを基準画像にした水平方向の第１のマッチング処理によって、各画素ブロックの座標（ｘ，ｙ）ごとに検出されるディスパリティｕＬ（ｘ，ｙ）、および入力画像ＶＲを基準画像にした水平方向の第２のマッチング処理によって同様に検出されるディスパリティｕＲ（ｘ，ｙ）から、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）が算出される。
【００５１】
ここで、ディスパリティｕＬ（ｘ，ｙ）およびディスパリティｕＲ（ｘ，ｙ）は、いずれもマッチング処理において画素ブロック間で抽出されるベクトル量である。マッチング処理が水平方向について行われているため、これらのディスパリティのベクトルの向きは、左向きまたは右向きのいずれかである。それゆえ、図示されているように、ディスパリティは、単一の軸上で＋と−によって表現されうる。なお、入力画像ＶＬ，ＶＲは、それぞれ左眼画像および右眼画像に対応する画像であるため、ディスパリティは主として水平方向に発生する。それゆえ、マッチング処理は図示されているように水平方向について行われる。後述するように、垂直方向についてのマッチング処理がさらに行われてもよい。
【００５２】
上記の例において、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）は、以下の式１によって算出される。
【００５３】
【数１】
0005636993.tif 000002
【００５４】
ここで、ディスパリティｕＲ（ｘ＋ｕＬ（ｘ，ｙ），ｙ）は、第１のマッチング処理によって検出されたディスパリティｕＬ（ｘ，ｙ）を第１のマッチング処理における基準画素ブロックのｘ座標に加えた位置の画素ブロック、すなわち第１のマッチング処理における対応画素ブロックについて、第２のマッチング処理で検出されるディスパリティである。つまり、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）は、第１のマッチング処理において「行くベクトル」と、第２のマッチング処理において「戻るベクトル」との和の絶対値である。「行くベクトル」と「戻るベクトル」とは、水平方向について逆向きのベクトルであるため、これらのベクトルが同じ大きさに近づくほど、和の絶対値である水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）の値は０に近づく。
【００５５】
図５は、本発明の一実施形態における指標値算出の例を示す図である。図５には、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）と垂直方向バックマッチング差分値Ｄｖ（ｘ，ｙ）とが加算されて第１の指標値Ｄ１（ｘ，ｙ）が生成され、さらに、第１の指標値Ｄ１（ｘ，ｙ）に、第２の指標値Ｄ２（ｘ，ｙ）がかけ合わされて、第３の指標値Ｄ３（ｘ，ｙ）が生成される例が示されている。
【００５６】
水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）は、図４を参照して説明したように、入力画像ＶＬを基準画像にした水平方向のマッチング処理によって検出されるディスパリティｕＬ（ｘ，ｙ）と、入力画像ＶＲを基準画像にした水平方向のマッチング処理によって検出されるディスパリティｕＲ（ｘ，ｙ）との間の差分絶対値である。
【００５７】
垂直方向バックマッチング差分値Ｄｖ（ｘ，ｙ）は、水平方向と同様にして求められる。すなわち、垂直方向バックマッチング差分値Ｄｖ（ｘ，ｙ）は、入力画像ＶＬを基準画像にした垂直方向のマッチング処理によって検出されるディスパリティｖＬ（ｘ，ｙ）と、入力画像ＶＲを基準画像にした垂直方向のマッチング処理によって検出されるディスパリティｖＲ（ｘ，ｙ）との間の差分絶対値である。
【００５８】
第１の指標値Ｄ１（ｘ，ｙ）は、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）と垂直方向バックマッチング差分値Ｄｖ（ｘ，ｙ）を足し合わせることによって算出されうる。第１の指標値Ｄ１（ｘ，ｙ）は、位置（ｘ，ｙ）の画素ブロックについて、ブロックマッチング部１１１またはブロックマッチング部１１３によって検出されたディスパリティの信頼度を示す指標値でありうる。第１の指標値Ｄ１（ｘ，ｙ）は、例えば以下の式２によって算出されうる。
【００５９】
【数２】
0005636993.tif 000003
【００６０】
なお、本実施形態において、入力画像ＶＬと入力画像ＶＲとは、それぞれ左眼画像と右眼画像とに対応する画像である。それゆえ、入力画像ＶＬと入力画像ＶＲとの間で生じているディスパリティは、主に水平方向のディスパリティである。しかし、例えば解像度が高い場合には、左眼画像と右眼画像とを撮像する撮像装置の位置の垂直方向のずれなどによって、垂直方向のディスパリティが生じる場合がある。そこで、本実施形態では、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）と、垂直方向バックマッチング差分値Ｄｖ（ｘ，ｙ）とを加算して、マッチング処理によって検出されるディスパリティの信頼度を示す第１の指標値Ｄ１（ｘ，ｙ）を生成する。例えば解像度がそれほど高くなく、垂直方向のディスパリティｖ（ｘ，ｙ）を無視しうる場合には、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）がそのまま第１の指標値Ｄ１（ｘ，ｙ）として用いられてもよい。
【００６１】
第２の指標値Ｄ２（ｘ，ｙ）は、位置（ｘ，ｙ）の画素ブロックについて、入力画像ＶＬと入力画像ＶＲとの間の相関性指標値Ｉ（ｘ，ｙ）を、画素ブロックのアクティビティＡ（ｘ，ｙ）で正規化することによって算出されうる。なお、指標値Ｉ（ｘ，ｙ）は、ブロックマッチング部１１１またはブロックマッチング部１１３によって算出される。また、アクティビティＡ（ｘ，ｙ）は、アクティビティ算出部１２１またはアクティビティ算出部１２３によって算出される。入力画像ＶＬを基準にする場合は、アクティビティ算出部１２１によって算出されたアクティビティＡＬ（ｘ，ｙ）が、入力画像ＶＲを基準にする場合は、アクティビティ算出部１２３によって算出されたアクティビティＡＲ（ｘ，ｙ）が、それぞれアクティビティＡ（ｘ，ｙ）として用いられうる。第２の指標値Ｄ２（ｘ，ｙ）は、位置（ｘ，ｙ）の画素ブロックについて、ブロックマッチング部１１１またはブロックマッチング部１１３によって検出されたディスパリティの信頼度を示す指標値でありうる。第２の指標値Ｄ２（ｘ，ｙ）は、例えば以下の式３によって算出される。
【００６２】
【数３】
0005636993.tif 000004
【００６３】
第３の指標値Ｄ３（ｘ，ｙ）は、第２の指標値Ｄ２（ｘ，ｙ）に、上記の第１の指標値Ｄ１（ｘ，ｙ）をかけ合わせることによって算出されうる。第３の指標値Ｄ３（ｘ，ｙ）は、位置（ｘ，ｙ）の画素ブロックについて、ブロックマッチング部１１１またはブロックマッチング部１１３によって検出されたディスパリティの信頼度を示す指標値でありうる。第３の指標値Ｄ３（ｘ，ｙ）は、例えば以下の式４によって算出されうる。
【００６４】
【数４】
0005636993.tif 000005
【００６５】
ここで、図示されている例を参照して、指標値算出部１３０が指標値Ｄとして出力する第３の指標値Ｄ３について、第１の指標値Ｄ１（ｘ，ｙ）と比較してさらに説明する。
【００６６】
まず、第１の指標値Ｄ１（ｘ，ｙ）は、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）、および垂直方向バックマッチング差分値Ｄｖ（ｘ，ｙ）を足し合わせたものである。図示された例において、例えば水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）は、オブジェクト（魚）の左側において、検出されたディスパリティの信頼度が比較的低いことを示している。なお、図示された例において、色がより白に近い部分には、検出されたディスパリティの信頼度がより高いことを示す値が分布している。一方、色がより黒に近い部分には、検出されたディスパリティの信頼度がより低いことを示す値が分布している。
【００６７】
しかし、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）では、信頼度が高い部分から低い部分までの値が段階的に分布している。例えば、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）では、信頼度が最も高いことを示す値が分布している部分（白い部分）と、信頼度が最も低いことを示す値が分布している部分（黒い部分）との間に、これらの値の中間の値（ハッチング部分）が段階的に分布している。
【００６８】
そのため、水平方向バックマッチング差分値Ｄｕ（ｘ，ｙ）を用いてオクルージョン領域を特定するためには、検出されたディスパリティについてどの程度の信頼度を示す値を閾値に設定するかが問題になる。例えば、閾値によって示される信頼度が低すぎれば、実際にはオクルージョンが発生している部分がオクルージョン領域とは判定されず、誤検出されたディスパリティがそのまま画像の合成に用いられてしまう。一方、閾値によって示される信頼度が高すぎれば、実際にはオクルージョンが発生していない部分がオクルージョン領域であると判定され、ディスパリティを推定によって補う部分が必要以上に広くなってしまう。
【００６９】
これに対して、第３の指標値Ｄ３（ｘ，ｙ）では、値が、検出されたディスパリティについて、信頼度が高いことを示す部分と、信頼度が低いことを低い部分とに二極化している。図示された例では、画像が、信頼度が最も高いことを示す値が分布している部分（白い部分）と、信頼度が最も低いことを示す値が分布している部分（黒い部分）とにほぼ二分されている。それゆえ、第３の指標値Ｄ３（ｘ，ｙ）を用いてオクルージョン領域を特定する場合、閾値の設定は比較的容易である。従って、オクルージョン判定部２００は、オクルージョン領域をより明確に判定することができる。その結果、画像合成部３００では、より高い精度での視差の推定に基づいて、出力画像Ｖ１，Ｖ２，・・・Ｖｎを生成することができる。
【００７０】
＜５．補足＞
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【００７１】
例えば、上記実施形態では、画像処理装置の各部がＤＳＰによって実現されうるものとしたが、本発明はかかる例に限定されない。例えば、画像処理装置の各部は、専用のハードウェアによって実現されてもよく、またＣＰＵ（Central  Processing  Unit）が、ＲＯＭ（Read  Only  Memory）もしくはハードディスクなどの記憶装置、またはリムーバブルディスクもしくはフラッシュメモリなどの記憶媒体に格納されたプログラムを実行することによってソフトウェアとして実現されてもよい。
【００７２】
また、例えば、上記実施形態では、２つのマッチング処理と、画像のアクティビティを算出する処理とが並列された要素によって実行されるものとしたが、これは必ずしも各処理の順序および各処理のための回路構成を限定するものではない。例えば、各処理は、並行して処理されてもよいし、順次処理されてもよい。また、各処理のための回路構成は、処理の順序に合わせて適宜設計されうる。
【００７３】
また、上記実施形態では、画像処理装置について説明したが、本発明はかかる例に限定されない。例えば、本発明は、表示装置として実施されてもよい。この場合、表示装置は、例えば上記実施形態で説明された画像処理装置の各部と同様の機能構成を有し、さらに画像合成部によって生成された出力画像を表示する表示部を有してもよい。
【符号の説明】
【００７４】
１０      画像処理装置
１００    パラメータ生成部
２００    オクルージョン判定部
３００    画像合成部
１１１，１１３    ブロックマッチング部
１２１，１２３    アクティビティ算出部
１３０    指標値算出部
Ｄ１      第１の指標値
Ｄ２      第２の指標値
Ｄ３      第３の指標値
【図１】
0005636993.tif 000006
【図２】
0005636993.tif 000007
【図３】
0005636993.tif 000008
【図４】
0005636993.tif 000009
【図５】
0005636993.tif 000010