(57)【要約】【課題】マイクロレンズアレイを用いた距離検出をより高精度に行う。【解決手段】実施形態の画像処理方法は、メインレンズと複数のマイクロレンズを含むマイクロレンズアレイを通って光が照射される撮像素子により撮像された画像を取得する。取得した画像に含まれる複数のマイクロレンズによる像のうち、注目マイクロレンズ像と複数の対象マイクロレンズ像とによる配列を像高に応じて設定し、注目マイクロレンズ像と複数の対象マイクロレンズ像とを比較して注目マイクロレンズ像と複数の対象マイクロレンズ像それぞれとの間の各像ずれ量を検出する。各像ずれ量を用いて注目マイクロレンズ像に対応する距離を算出する。【選択図】図１１
2015185998.tif 000002
【特許請求の範囲】
【請求項１】
複数のマイクロレンズを含むマイクロレンズアレイと、
前記マイクロレンズアレイに被写体からの光を照射させるメインレンズと、
前記メインレンズおよび前記マイクロレンズアレイを通って光が照射される撮像素子と
を備える固体撮像装置の画像処理方法であって、
前記撮像素子により撮像された画像を取得する取得ステップと、
前記画像に含まれる前記複数のマイクロレンズによる像のうち、注目マイクロレンズ像と複数の対象マイクロレンズ像とによる配列を像高に応じて設定する設定ステップと、
前記注目マイクロレンズ像と前記複数の対象マイクロレンズ像とを比較して該注目マイクロレンズ像と該複数の対象マイクロレンズ像それぞれとの間の各像ずれ量を検出する検出ステップと、
前記各像ずれ量を用いて前記注目マイクロレンズ像に対応する距離を算出する算出ステップと
を有する
ことを特徴とする画像処理方法。
【請求項２】
前記設定ステップは、
前記注目マイクロレンズ像の、該注目マイクロレンズ像の中心と像高中心とを結ぶ方向の径に対する、該方向に直角の方向の径の比に応じて前記配列を設定する
ことを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記設定ステップは、
前記比の値が閾値以上の場合に、前記配列を、前記注目マイクロレンズ像の全周に前記複数の対象マイクロレンズを配置して構成し、
前記比の値が閾値未満の場合に、前記配列を、前記注目マイクロレンズ像の周囲の、該注目マイクロレンズ像が配置される前記像高中心に対する周の方向に前記複数の対象マイクロレンズ像を配置して構成する
ことを特徴とする請求項２に記載の画像処理方法。
【請求項４】
前記算出ステップは、
前記各像ずれ量を平均した値を用いて前記距離を算出する
ことを特徴とする請求項１乃至請求項３の何れか１項に記載の画像処理方法。
【請求項５】
前記検出ステップは、
前記注目マイクロレンズ像内に設けられたテンプレート領域と、前記複数の対象マイクロレンズ像のうちの１の対象マイクロレンズ像内に設けられたマッチング領域とを、該マッチング領域の位置を該対象マイクロレンズ像内で移動させながらそれぞれ比較して、該テンプレート領域と該マッチング領域との類似度を求めて前記像ずれ量の検出を行い、該検出を、前記複数の対象マイクロレンズ像のうち２以上の対象マイクロレンズ像について行って複数の前記像ずれ量を取得し、
前記算出ステップは、
前記複数の像ずれ量を、検出された位置が対応する像ずれ量同士で加算した結果を用いて前記距離を算出する
ことを特徴とする請求項１乃至請求項４の何れか１項に記載の画像処理方法。
【請求項６】
前記設定ステップは、
予め記憶された、前記像高に応じた前記注目マイクロレンズ像および前記複数の対象マイクロレンズ像の前記画像上の領域を用いて前記配列を設定する
ことを特徴とする請求項１乃至請求項５の何れか１項に記載の画像処理方法。
【請求項７】
前記設定ステップは、
前記注目マイクロレンズ像および前記複数の対象マイクロレンズ像の前記画像上の領域を前記像高に応じて計算して前記配列を設定する
ことを特徴とする請求項１乃至請求項５の何れか１項に記載の画像処理方法。
【請求項８】
前記検出ステップは、
前記注目マイクロレンズ像内に設けたテンプレート領域と、前記複数の対象マイクロレンズ像のうち１の対象マイクロレンズ像内に設けたマッチング領域とを比較して前記像ずれ量を検出し、
前記設定ステップは、
前記テンプレート領域および前記マッチング領域のうち少なくとも前記マッチング領域の形状を前記像高に応じて設定する
ことを特徴とする請求項１乃至請求項７の何れか１項に記載の画像処理方法。
【請求項９】
複数のマイクロレンズを含むマイクロレンズアレイと、
前記マイクロレンズアレイに被写体からの光を照射させるメインレンズと、
前記メインレンズおよび前記マイクロレンズアレイを通って光が照射される撮像素子と、
前記撮像素子により撮像された画像を取得する取得部と、
前記画像に含まれる前記複数のマイクロレンズによる像のうち、注目マイクロレンズ像と複数の対象マイクロレンズ像とによる配列を像高に応じて設定する設定部と、
前記注目マイクロレンズ像と前記複数の対象マイクロレンズ像とを比較して該注目マイクロレンズ像と該複数の対象マイクロレンズ像それぞれとの間の各像ずれ量を検出する検出部と、
前記各像ずれ量を用いて前記注目マイクロレンズ像に対応する距離を算出する算出部と
を有する
ことを特徴とする固体撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法および撮像装置に関する。
【背景技術】
【０００２】
２次元アレイ情報として奥行方向の距離を取得可能な撮像技術に関し、参照光を用いる方法や、複数のカメラを使用してステレオ測距を行う方法など、様々な方法が検討されている。近年では、民生用途での新たな測距デバイスとして、比較的廉価な製品の需要が高まっている。
【０００３】
このような、距離取得のための撮像技術において、システムコストを抑制するために参照光を用いない撮像方式の一つとして、視差を利用した三角測量方式がある。この方式を適用可能なカメラとしては、ステレオカメラや多眼カメラが知られている。一方、ステレオカメラや多眼カメラは、複数台のカメラを用いるものであり、システムの巨大化や部品点数の増大により故障率が増大してしまうおそれがある。
【０００４】
一方、撮像光学系の構造として、マイクロレンズアレイを画素上方に配置し、各マイクロレンズ下部には複数の画素を配置し、メインレンズの像をさらにマイクロレンズアレイを用いて画素上に結像する構造が提案されている。この構造により、画素ブロック単位で視差を有する画像群を取得することが可能であり、この視差により、被写体の距離推定や距離情報を元にしたリフォーカス処理等が可能となる。この、メインレンズの像をさらにマイクロレンズアレイを用いて結像する光学構成を、リフォーカス光学系と呼ぶ。
【０００５】
リフォーカス光学系を用いた構成によれば、各マイクロレンズの画像は、隣接する画像に同一の被写体が位置をずらされて撮像された画像となる。そのため、各マイクロレンズの画像をずらして重ね合わせて画像マッチングを行うことで、画像内に指定した任意の距離に焦点を合わせたリフォーカス画像を再構成することができる。また、これにより、画像内に指定した被写体の位置までの距離を取得することができる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】T.  Georgiev  and  A.  Lumsdaine,  COMPUTER  GRAPHICS  forum,  Volume  29  (2010),  number  6  pp.  1955-1968,  "Reducing  Plenoptic  Camera  Artifacts"
【発明の概要】
【発明が解決しようとする課題】
【０００７】
マイクロレンズアレイにおいて、メインレンズの光軸から離れた像高の高い領域においては、マイクロレンズ像は、ケラレなどにより変形してしまう。したがって、像高の高い領域と、メインレンズの光軸により近い像高の小さい領域とで同様のマッチング方法を適用した場合、マイクロレンズエッジの誤検出や、像歪みによるマッチング誤差により、距離検出精度が低下してしまうおそれがあるという問題点があった。
【０００８】
本発明が解決しようとする課題は、マイクロレンズアレイを用いた距離検出をより高精度に行うことが可能な画像処理方法および撮像装置を提供することにある。
【課題を解決するための手段】
【０００９】
実施形態の画像処理方法は、メインレンズと複数のマイクロレンズを含むマイクロレンズアレイを通って光が照射される撮像素子により撮像された画像を取得する。取得した画像に含まれる複数のマイクロレンズによる像のうち、注目マイクロレンズ像と複数の対象マイクロレンズ像とによる配列を像高に応じて設定し、注目マイクロレンズ像と複数の対象マイクロレンズ像とを比較して注目マイクロレンズ像と複数の対象マイクロレンズ像それぞれとの間の各像ずれ量を検出する。各像ずれ量を用いて注目マイクロレンズ像に対応する距離を算出する。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施形態に適用可能な撮像装置の一例の構成を示すブロック図である。
【図２】図２は、実施形態に適用可能な光学系の一例の構成を示す図である。
【図３】図３は、実施形態に適用可能な光学系の他の例の構成を示す図である。
【図４】図４は、実施形態に係る画像データの例を模式的に示す図である。
【図５】図５は、実施形態に係る画像処理部の機能を説明するための一例の機能ブロック図である。
【図６】図６は、実施形態に係る、対象マイクロレンズ像に対してレベルを定義することを説明するための図である。
【図７】図７は、マイクロレンズ像が像高に応じて変形する様子を模式的に示す図である。
【図８】図８は、実施形態に係る、像高に応じてマイクロレンズ像の探索範囲を異ならせる例を示す図である。
【図９】図９は、実施形態に係るマスクデータの例を示す図である。
【図１０】図１０は、実施形態に係る、マイクロレンズ像の探索範囲を異ならせる第２の方法を説明するための図である。
【図１１】図１１は、実施形態に係る、像高に応じた注目マイクロレンズ像および対象マイクロレンズ像の配列の設定について説明するための図である。
【図１２】図１２は、実施形態に係る像ずれ量検出処理を示す一例のフローチャートである。
【図１３】図１３は、実施形態に係るマイクロレンズ像の探索と像ずれ量検出とについて説明するための図である。
【図１４】図１４は、被写体が周期的なテクスチャである場合の、各マイクロレンズ像の例を示す図である。
【図１５】図１５は、実施形態の変形例による各画像マッチング結果の加算結果の例を示す図である。
【発明を実施するための形態】
【００１１】
以下、実施形態に係る画像処理方法および固体撮像装置について説明する。図１は、実施形態に適用可能な撮像装置の一例の構成を示す。図１において、撮像装置１は、レンズユニットとしてのカメラモジュール１０と、ＩＳＰ(Image  Signal  Processor)２０とを有する。
【００１２】
カメラモジュール１０は、メインレンズ１１を含む結像光学系と、マイクロレンズアレイ１２および撮像素子１３を含む固体撮像素子と、撮像部１４と、信号処理部１５とを有する。結像光学系は、１以上のレンズを含み、被写体からの光をマイクロレンズアレイ１２および撮像素子１３に導く。結像光学系に含まれるレンズのうち、最も撮像素子１３側のレンズをメインレンズ１１とする。
【００１３】
撮像素子１３は、例えばＣＣＤ(Charge  Coupled  Device)やＣＭＯＳ(Complementary  Metal  Oxide  Semiconductor)イメージャを用い、それぞれ受光した光を光電変換により電気信号に変換して出力する複数の画素からなる画素アレイを含む。
【００１４】
マイクロレンズアレイ１２は、所定の規則で配列された複数のマイクロレンズ１２０、１２０、…を含む。マイクロレンズアレイ１２は、メインレンズ１１によって結像面に結像する光線群を、各マイクロレンズ１２０、１２０、…に対応する撮像素子１３上の複数の画素を含む画素ブロックに対して縮小最結像させる。ここで、メインレンズ１１は円形であって、メインレンズ１１の光軸と、撮像素子１３における有効画素領域の中心とが一致しているものとする。
【００１５】
なお、マイクロレンズアレイ１２の撮像素子１３側またはメインレンズ１１側に、カラーフィルタアレイを設けてもよい。カラーフィルタアレイは、複数色のカラーフィルタを有して構成される。カラーフィルタアレイを構成する複数色のカラーフィルタは、１種類の光学フィルタが１のマイクロレンズ１２０に対応するように構成される。
【００１６】
カメラモジュール１０は、例えばメインレンズ１１を含む撮像光学系と、その他の部分とを分離して構成し、メインレンズ１１を交換可能とすることができる。これに限らず、カメラモジュール１０は、メインレンズ１１を含む撮像光学系とマイクロレンズアレイ１２とを１の筐体に収めたユニットとして構成することも可能である。この場合には、撮像光学系とマイクロレンズアレイ１２とを含むユニットが交換可能とされる。
【００１７】
撮像部１４は、撮像素子１３の各画素を駆動するための駆動回路を含む。駆動回路は、例えば駆動する画素を垂直方向に、水平ライン（行）単位で順次選択する垂直選択回路と、列単位で順次選択する水平選択回路と、これら垂直選択回路および水平選択回路を各種パルスにて駆動するタイミングジェネレータとを含む。撮像部１４は、垂直選択回路および水平選択回路で選択された画素から、受光した光を光電変換した電荷を読み出し、読み出した電荷を電気信号に変換して出力する。
【００１８】
信号処理部１５は、撮像部１４から出力されたアナログ信号による電気信号に対してゲイン調整処理、ノイズ除去処理および増幅処理などを施す。信号処理部１５は、Ａ／Ｄ変換回路を有し、これら各処理を施された信号をディジタル信号に変換し、ＲＡＷ画像の画像データとして出力する。
【００１９】
ＩＳＰ２０は、カメラモジュールＩ／Ｆ２１と、メモリ２２と、画像処理部２３と、出力Ｉ／Ｆ２４とを有する。カメラモジュールＩ／Ｆ２１は、カメラモジュール１０に対する信号のインターフェイスである。カメラモジュール１０の信号処理部１５から出力されたＲＡＷ画像の画像データは、カメラモジュールＩ／Ｆ２１を介して、例えばフレームメモリであるメモリ２２に格納される。
【００２０】
画像処理部２３は、メモリ２２に格納されたＲＡＷ画像の画像データから、各マイクロレンズ１２０、１２０、…からの光が撮像素子１３に照射されて得られる各像（マイクロレンズ像と呼ぶ）を取得する。画像処理部２３は、取得した各マイクロレンズ像のうち、注目する注目マイクロレンズ像と、比較の対象とする対象マイクロレンズ像とを比較する。画像処理部２３は、この比較結果から注目マイクロレンズ像と対象マイクロレンズ像との像ずれ量を求め、求めた像ずれ量に基づき注目マイクロレンズ像の被写体までの距離を算出する。
【００２１】
各マイクロレンズ像について算出された距離値は、例えば距離マップとして出力Ｉ／Ｆ２４から出力される。
【００２２】
なお、メモリ２２に格納された画像データを外部の記憶媒体に記憶させることもできる。この場合には、外部の記憶媒体から読み出した画像データを、例えばカメラモジュールＩ／Ｆ２１を介してメモリ２２に格納し、画像処理部２３で距離計算処理を行うことで、所望のタイミングで距離マップを得ることができる。
【００２３】
なお、画像処理部２３は、メモリ２２に格納された画像データのうち、マイクロレンズアレイ１２を通った光に基づく画像データに基づき後述するリフォーカス処理を行い、リフォーカス画像を得ることもできる。すなわち、画像処理部２３は、メモリ２２から読み出した画像データに対し、各マイクロレンズ１２０、１２０、…に対応する領域の画像を拡大し、位置をずらして重ね合わせるリフォーカス処理を行うことにより、再構成したリフォーカス画像を得る。このリフォーカス画像は、出力Ｉ／Ｆ２４から出力させて、図示されない表示デバイスに表示したり、外部の記憶媒体に記憶したりできる。
【００２４】
（実施形態に適用可能な光学系）
次に、実施形態に適用可能な光学系について説明する。ここで、光学系は、メインレンズ１１、マイクロレンズアレイ１２および撮像素子１３を含む。図２は、実施形態に適用可能な光学系の一例の構成を示す。図２において、距離Ａは、メインレンズ１１と被写体との間の距離、距離Ｂは、メインレンズ１１による結像距離をそれぞれ示す。また、距離Ｃは、メインレンズ１１の結像面とマイクロレンズアレイ１２の各マイクロレンズ１２０との間の最短距離、距離Ｄは、マイクロレンズアレイ１２と撮像素子１３との間の距離をそれぞれ示す。メインレンズ１１は、焦点距離ｆを有し、各マイクロレンズ１２０、１２０、…は、焦点距離ｇを有する。以下、説明のため、光軸に対して被写体側を前方、撮像素子１３側を後方と定義する。
【００２５】
光学系内において、マイクロレンズアレイ１２は、メインレンズ１１からの光線を各マイクロレンズ１２０、１２０、…により各視点の像として撮像素子１３上に結像させる。なお、マイクロレンズ毎にカラーフィルタを設ける場合は、各マイクロレンズ１２０、１２０、…に対して、ＲＧＢ各色のうち１色のカラーフィルタをそれぞれ設けるようにする。センサ上にカラーフィルタを設ける場合は、画素毎に例えばベイヤ配列のような並び方で配置する。
【００２６】
なお、図２の例では、マイクロレンズアレイ１２がメインレンズ１１の結像面より後方に設置されている。これはこの例に限定されず、例えば図３に例示されるように、マイクロレンズアレイ１２がメインレンズ１１の結像面より前方に設置されていてもよい。以下では、光学系は、特に記載の無い限り、図２に示す、マイクロレンズアレイ１２がメインレンズ１１の結像面より後方に設置されているものとする。
【００２７】
図４は、実施形態に係る、メインレンズ１１による結像面を撮像素子１３の後方側に位置させた場合の、撮像素子１３の出力に基づく画像データの例を模式的に示す。マイクロレンズアレイ１２の各マイクロレンズ１２０、１２０、…により撮像素子１３の受光面に結像されたマイクロレンズ像３０、３０、…がマイクロレンズの配列に対応して配置された画像３００が、ＲＡＷ画像による画像データとして信号処理部１５から出力される。
【００２８】
図４によれば、同一の被写体（例えば数字の「３」）が、各マイクロレンズ１２０、１２０、…の配列に応じて、各マイクロレンズ像３０において所定量ずつずれて撮像されていることが分かる。この、同一の被写体の各マイクロレンズ像３０におけるずれを以下「像ずれ」と呼び、各マイクロレンズ像間の所定量のずれ量を「像ずれ量」と呼ぶ。
【００２９】
ここで、各マイクロレンズ１２０、１２０、…による各マイクロレンズ像３０、３０、…は、撮像素子１３上に重なり無く結像されることが望ましい。また、図４では、マイクロレンズアレイ１２において各マイクロレンズ１２０、１２０、…が六方格子の格子点上に配置された六方配列とされているが、各マイクロレンズ１２０、１２０、…の配列は、この例に限定されず、他の配列でもよい。例えば、各マイクロレンズ１２０、１２０、…は、正方格子上に配置されていてもよい。
【００３０】
次に、リフォーカス画像作成の原理について、上述した図２を参照しながら説明する。図２において、距離Ｂ＋距離Ｃを距離Ｅとする。距離Ｅは、メインレンズ１１の位置が固定であれば、定数となる。ここでは、距離Ｅおよび距離Ｄがそれぞれ定数であるものとして説明する。
【００３１】
メインレンズ１１において、被写体までの距離Ａと、被写体からの光が結像する距離Ｂと、焦点距離ｆとの間には、レンズの公式に従い式（１）に示す関係が成り立つ。同様に、マイクロレンズアレイ１２の各マイクロレンズ１２０、１２０、…についても、レンズの公式に従い式（２）に示す関係が成り立つ。
【数１】
2015185998.tif 000003
【数２】
2015185998.tif 000004
【００３２】
メインレンズ１１と被写体との間の距離Ａが変化した場合、式（１）のレンズの公式における距離Ｂの値が変化する。光学系の位置関係から、上述したように距離Ｂ＋距離Ｃ＝距離Ｅであり、距離Ｅが固定であるため、距離Ｂの変化に伴い距離Ｃの値も変化する。各マイクロレンズ１２０、１２０、…について、上述の式（２）のレンズの公式を用いると、距離Ｃの変化に伴って、さらに距離Ｄの値も変化することが分かる。
【００３３】
この結果、各マイクロレンズ１２０、１２０、…を通って結像する各マイクロレンズ像は、メインレンズ１１の仮想イメージである結像面を倍率Ｎ（Ｎ＝Ｄ／Ｃ）に縮小した画像として得られる。この縮小倍率Ｎは、次式（３）のように表すことができる。
【数３】
2015185998.tif 000005
【００３４】
式（３）により、各マイクロレンズ１２０、１２０、…による撮像素子１３上の各マイクロレンズ像の縮小率は、メインレンズ１１から被写体までの距離Ａに依存することが分かる。したがって、元の２次元画像を再構成するためには、例えば各マイクロレンズ１２０、１２０、…による各マイクロレンズ像３０、３０、…をそれぞれ倍率１／Ｎで拡大して拡大マイクロレンズ像を各々作成する。そして、各拡大マイクロレンズ像の重ね合わせ合成を行うことで、距離Ａにピントが合った再構成画像を得ることができる。
【００３５】
重ね合わせ時には、距離Ａ以外の部分については、各拡大マイクロレンズ像がずれながら重なることになり、暈けのような効果を得ることができる。このように撮影したマイクロレンズ像から任意の位置にピントを合わせる処理をリフォーカス処理と呼ぶ。
【００３６】
次に、距離算出方法について説明する。式（３）にて既に説明したように、図２において距離Ａの値が変化すると、その変化に伴い距離Ｂ、ＣおよびＤの値も変化するため、マイクロレンズ像の縮小倍率Ｎも変化することになる。
【００３７】
ここで、式（３）を距離Ａについて整理すると、次式（４）が得られる。この式（４）から、マイクロレンズ１２０による像の縮小倍率Ｎを画像マッチングなどにより算出し、且つ、距離ＤおよびＥ、ならびに、焦点距離ｆが既知であれば、式（４）から距離Ａの値を算出することが可能である。
【数４】
2015185998.tif 000006
【００３８】
なお、図３に示される光学系の場合は、距離Ｅ＋距離Ｃ＝距離Ｂであり、さらに、マイクロレンズ１２０に関するレンズの公式は、次式（５）で表される。したがって、この場合の距離Ａと縮小倍率Ｎとの関係は、次式（６）で表すことができる。
【数５】
2015185998.tif 000007
【数６】
2015185998.tif 000008
【００３９】
縮小倍率Ｎは、マイクロレンズ１２０間のマイクロレンズ像３０のずれ量を値Δ’、マイクロレンズ１２０間の中心間距離を値Ｌとすると、光線の幾何的関係から、次式（７）で表される。したがって、縮小倍率Ｎを求めるためには、画像処理部２３は、ＳＡＤ(Sum  of  Absolute  Difference)やＳＳＤ(Sum  of  Squared  Difference)といった評価関数を用いて、各マイクロレンズ像３０に対する画像マッチング処理を行って、マイクロレンズ１２０間のずれ量Δ’を求めればよい。
【数７】
2015185998.tif 000009
【００４０】
なお、撮像素子１３にカラーフィルタアレイを適用した場合には、画像処理部２３は、同色のカラーフィルタによるマイクロレンズ像３０同士で画像マッチングを行えばよい。
【００４１】
図５は、上述した画像処理部２３の機能を説明するための一例の機能ブロック図である。図５において、画像処理部２３は、取得部２３０と、検出部２３１と、設定部２３２と、算出部２３３とを有する。これら取得部２３０、検出部２３１、設定部２３２および算出部２３３は、１のハードウェア上の機能であってもよいし、互いに協働して動作する複数のハードウェアで構成してもよい。また、これら取得部２３０、検出部２３１、設定部２３２および算出部２３３は、ＣＰＵ(Central  Processing  Unit)上で動作するプログラムにより実現してもよい。
【００４２】
取得部２３０は、撮像素子１３から読み出された電荷に基づく画像データをメモリ２２から取得する。設定部２３２は、取得部２３０で取得された画像データによる画像上の、複数のマイクロレンズ１２０、１２０、…による各マイクロレンズ像３０、３０、…から注目マイクロレンズ像を選択する。そして、選択された注目マイクロレンズ像と、各マイクロレンズ像３０、３０、…のうち複数の対象マイクロレンズ像とによる配列を、注目マイクロレンズ像の像高に応じて設定する。
【００４３】
なお、像高は、撮像素子１３の撮像面における、メインレンズ１１の光軸位置からの距離に相当する。メインレンズ１１の光軸が撮像素子１３による撮像画像の中心に一致している場合には、像高は、撮像画像の中心からの距離に相当し、撮像画像の中心に近いほど像高が低く、当該中心から離れるほど、像高が高いとされる。
【００４４】
検出部２３１は、設定部２３２で設定された注目マイクロレンズ像と複数の対象マイクロレンズ像とを画像マッチングを用いて比較して、注目マイクロレンズ像と複数の対象マイクロレンズ像それぞれとの間の各像ずれ量を検出する。算出部２３３は、検出部２３１で検出された各像ずれ量に基づき、注目マイクロレンズ像に対応する距離を算出する。算出部２３３は、各マイクロレンズ１２０、１２０、…をそれぞれ注目マイクロレンズ像として距離算出を行うことで、画像上の各マイクロレンズ１２０、１２０、…に対応する各位置の距離が示される距離マップを作成することができる。
【００４５】
実施形態に係る画像処理部２３における画像処理を実行するための画像処理プログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ(Compact  Disk)、ＤＶＤ(Digital  Versatile  Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供される。これに限らず、画像処理プログラムを、撮像装置１が有するＲＯＭ(Read  Only  Memory)に予め記憶させて提供してもよい。
【００４６】
さらに、実施形態に係る画像処理を実行するための画像処理プログラムを、インターネットなどの通信ネットワークに接続されたコンピュータ上に格納し、通信ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、実施形態に係る画像処理を実行するための画像処理プログラムを、インターネットなどの通信ネットワーク経由で提供または配布するように構成してもよい。
【００４７】
実施形態に係る画像処理を実行するための画像処理プログラムは、例えば、上述した各部（取得部２３０、検出部２３１、設定部２３２および算出部２３３）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵが例えばハードディスクドライブや不揮発性メモリなどによるストレージから当該画像処理プログラムを読み出して実行することにより上記各部が主記憶装置（例えばＲＡＭ(Random  Access  Memory)上にロードされ、各部が主記憶装置上に生成されるようになっている。
【００４８】
実施形態に係る画像処理を実行するための画像処理ハードウェアは、例えば当該処理方法がＦＰＧＡ(Field-Programmable  Gate  Array)やＡＳＩＣ(Application  Specific  Integrated  Circuit)などのチップ上や、アナログ回路上に実装されていてもよい。
【００４９】
（実施形態に係る処理の詳細）
（像ずれ検出処理）
像ずれ量検出時の画像マッチングでは、光学系のセッティングや被写体までの距離によっては、距離を算出したい注目マイクロレンズ像に隣接する対象マイクロレンズ像のみならず、隣接対象マイクロレンズ像にさらに隣接するマイクロレンズ像を対象マイクロレンズ像とする場合も有り得る。すなわち、注目マイクロレンズ像に含まれる像が、隣接する第１の対象マイクロレンズ像に像内で位置がずれて含まれ、当該像が第１の対象マイクロレンズ像に隣接する第２の対象マイクロレンズ像にも、位置がさらにずれて含まれることがある。
【００５０】
実施形態では、注目マイクロレンズ像に順次隣接する対象マイクロレンズ像を想定し、これら対象マイクロレンズ像に対し、注目マイクロレンズ像からの距離に応じてレベルを定義する。
【００５１】
図６を用いて説明する。図６において、六方格子状に配置された各マイクロレンズ１２０、１２０、…により、各マイクロレンズ像３０1、３０2、…が六方格子状に形成される。この場合、注目マイクロレンズ像３０Tに対して、６０°ずつ角度の異なる方位＃１〜＃６に対して６のマイクロレンズ像３０1〜３０6が隣接することになる。
【００５２】
図６において、例えば方位＃２を例に取ると、注目マイクロレンズ像３０Tの中心から方位＃２に向けた線３１上に、マイクロレンズ像３０2、３０2、…が順次隣接して並ぶ。このとき、注目マイクロレンズ像３０Tに隣接するマイクロレンズ像３０2のレベルをレベルＬ１と定義し、このマイクロレンズ像３０2に注目マイクロレンズ像３０Tから離れる方向にさらに隣接するマイクロレンズ像３０2のレベルをレベルＬ２と定義する。同様に、このレベルＬ２のマイクロレンズ像３０2に注目マイクロレンズ像３０Tから離れる方向にさらに隣接するマイクロレンズ像３０2のレベルをレベルＬ３と定義する。同様にしてレベルＬ４、レベルＬ５、…を定義してもよい。
【００５３】
ここでは、注目マイクロレンズ像３０Tに含まれる像が最大でレベルＬ３のマイクロレンズ像３０2まで含まれるものとして、実施形態による処理を説明する。すなわち、図６に示される、注目マイクロレンズ像３０T以外の各マイクロレンズ像３０1、３０2、…は、注目マイクロレンズ像３０Tと比較を行う対象マイクロレンズ像である。
【００５４】
ここで、注目マイクロレンズ像３０Tに対応するマイクロレンズ１２０（第１のマイクロレンズと呼ぶ）と、注目マイクロレンズ像３０Tに方位＃２について隣接する対象マイクロレンズ像３０2に対応するマイクロレンズ１２０（第２のマイクロレンズと呼ぶ）とを考える。このとき、これら第１および第２のマイクロレンズに共通して写る被写体を考えると、この被写体が投影される投影面すなわち注目マイクロレンズ像３０Tおよび対象マイクロレンズ像３０2において、当該被写体の画像は、被写体の位置と、第１および第２のマイクロレンズの中心点とにより形成されるエピポーラ平面に基づくエピポーラ線に乗る。したがって、エピポーラ拘束により、被写体画像は、対象マイクロレンズ像３０2においてエピポーラ線上で像ずれを発生する。
【００５５】
これは、注目マイクロレンズ像３０Tに対する他の対象マイクロレンズ像３０1、３０3、３０4、３０5および３０6についても同様である。すなわち、注目マイクロレンズ像と対象マイクロレンズ像とに共通して含まれる像について、対象マイクロレンズ像における像ずれは、エピポーラ線すなわち注目マイクロレンズ像の中心と対象マイクロレンズ像の中心とを結んだ線上で発生する。
【００５６】
例えば、図６において、注目マイクロレンズ像３０Tと、注目マイクロレンズ像３０Tに対して方位＃２の方向に順次隣接して並ぶ各対象マイクロレンズ像３０2、３０2、…との中心を結んだ線３１は、エピポーラ線に平行となる。
【００５７】
なお、ここでは各マイクロレンズ像３０1、３０2、…が六方格子状に並んでいるものとして説明しているが、これはこの例に限定されず、例えば正方格子状各マイクロレンズ像３０1、３０2、…が並んでいてもよい。
【００５８】
先ず、画像処理部２３において設定部２３２は、注目マイクロレンズ像３０T内に、対象マイクロレンズ像３０2と画像を比較する基準となるテンプレート領域２００ａ0を設定する。次に、設定部２３２は、例えば方位＃２において、レベルＬ１〜レベルＬ３の各対象マイクロレンズ像３０2内に、テンプレート領域２００ａ0との類似度を計算するマッチング領域２００ａ1、２００ａ2および２００ａ3を設定する。像ずれはエピポーラ線に沿った方向で発生するため、各マッチング領域２００ａ1、２００ａ2および２００ａ3は、各対象マイクロレンズ像３０2の中心座標を結んだ線３１上に配置する。
【００５９】
検出部２３１は、例えばマッチング領域２００ａ1をこのエピポーラ線に並行な線３１上でずらしながら移動させて、画像マッチングにより、テンプレート領域２００ａ0とマッチング領域２００ａ1との類似度を予め定められた複数の位置で求める。検出部２３１は、複数の位置で求めた各類似度のうち最も高い類似度が得られた位置を、像ずれの位置であるとして検出する。算出部２３３は、検出部２３１により得られた像ずれ量と、像ずれ量を求めた注目マイクロレンズ像３０Tと対象マイクロレンズ像３０2とによるマイクロレンズ間距離を用いて、上述した式（７）により、縮小倍率Ｎを求めることができる。
【００６０】
注目マイクロレンズ像３０Tの周囲には、複数の対象マイクロレンズ像３０1〜３０6が存在する。図６では、説明のため方位＃２にのみ、レベルＬ３までの３の対象マイクロレンズ像３０2を示しているが、実際には、各方位＃１〜＃６にそれぞれレベルＬ３までの３の対象マイクロレンズ像３０1〜３０6が存在する。すなわち、注目マイクロレンズ像３０Tに対して、１８の対象マイクロレンズ像が存在することになる。
【００６１】
そのため、複数の対象マイクロレンズ像による画像マッチング結果を平均化することで、像ずれ量のマッチング精度を統計的に改善することが可能である。ここで、注目マイクロレンズ像３０T周囲の対象マイクロレンズ像における像ずれ量を像蔵ずれ量Δi’、周囲のマイクロレンズ間の中心間距離を距離Ｌi、平均化する対象マイクロレンズ像の数をＭ個とすると、像の縮小倍率Ｎは、次の式（８）で表される。算出部２３３は、この式（８）に従い縮小倍率Ｎを算出することで、より高精度に像ずれ量を求めることができ、距離算出の精度が向上される。
【数８】
2015185998.tif 000010
【００６２】
ところで、上述した画像マッチングにおいて、テクスチャの少ない領域をテンプレート領域２００ａ0とした場合、ＳＡＤなどの評価値の変動が小さいため、撮像素子１３のノイズなどに脆弱となり、得られる結果の信頼性が低くなるおそれがある。そのため、設定部２３２は、画像マッチングを行う際にテンプレート領域２００ａ0のテクスチャ量の判定を行うことが好ましい。
【００６３】
例えば、設定部２３２は、テンプレート領域２００ａ0のテクスチャ量に対して閾値判定を行い、テクスチャ量が閾値以下の場合は、テンプレート領域２００ａ0を注目マイクロレンズ像３０T内でずらす。また例えば、設定部２３２は、テクスチャ量が閾値以下の場合は、その対象マイクロレンズ像方向（図６の例では、方位＃２）への探索を行わないようにしてもよい。
【００６４】
テンプレート領域２００ａ0のテクスチャ量の指標としては、例えば、テンプレート領域２００ａ0内の輝度値の分散値などを用いることができる。この場合、設定部２３２は、例えば、分散値が閾値以上である場合に、当該テンプレート領域２００ａ0を用いた画像マッチングが可能であると判定する。テンプレート領域２００ａ0のテクスチャ量で画像マッチング可否の判定を行う事により、高精度での像ずれ量の検出を維持できる。
【００６５】
また、設定部２３２は、マイクロレンズ１２０、１２０、…の個別情報を用いて画像マッチングの可否を判定することもできる。設定部２３２は、各マイクロレンズ１２０、１２０、…について、例えば、製造時の欠陥やマイクロレンズ上のゴミなどにより使用不能なマイクロレンズ１２０を判定し、当該マイクロレンズ１２０によるマイクロレンズ像３０を画像マッチングに用いないようにしてもよい。
【００６６】
マイクロレンズ１２０、１２０、…の個別情報には、例えばマイクロレンズ使用の可否や、焦点距離を示す情報が含まれる。また、例えば、マイクロレンズアレイ１２の情報としては、マイクロレンズ間距離Ｌiが含まれる。画像処理部２３は、これらのマイクロレンズ１２０、１２０、…の個別情報やマイクロレンズアレイ１２の情報を用いることで、各マイクロレンズ１２０、１２０、…において、上述の式（７）および式（６）による被写体距離Ａの計算をより精度よく実行することができる。
【００６７】
（像高に応じた処理）
マイクロレンズ像３０は、像高が高くなるに連れ、より大きく変形する。図７は、マイクロレンズ像３０が像高に応じて変形する様子を模式的に示す。撮像素子１３の撮像面１３０がメインレンズ１１によるイメージサークル１１０に含まれる。メインレンズ１１の中心点４０から半径ｒ0の円周４１0上のマイクロレンズ像３０10は、略円形であるのに対して、より像高の高い中心点４０から半径ｒ0＋ｒ1の円周４１1上のマイクロレンズ像３０20は、円周４１1による円の半径方向に縮み、円周４１1方向を長軸方向とする楕円に変形している。さらに像高の高い中心点４０から半径ｒ0＋ｒ1＋ｒ2の円周４１2上のマイクロレンズ像３０30は、マイクロレンズ像３０20よりもさらに円周４１2による円の半径方向に縮み、より扁平な、楕円に近似できる形状に変形している。
【００６８】
このように、アパーチャによるケラレが生じている場合、マイクロレンズ像は、像高が高くなるに連れ、より扁平な形状に変形する。したがって、例えば像高が低い領域でのマッチング領域が円形であった場合、同じマッチング領域を像高のより高い領域で設定すると、例えばマッチング領域がマイクロレンズ像からはみ出してしまうような事態が起こり得る。この場合、画像マッチングにおいて、変形したマイクロレンズ像のエッジをマッチング領域内で検出してしまうといった、マイクロレンズ像内とは異なる領域を誤検出してしまう可能性が生じる。
【００６９】
また、上述のように、マイクロレンズ像の変形は、メインレンズ１１の光軸位置からの距離に応じて生じる。そのため、マイクロレンズ像の変形の度合いの高い領域においては、メインレンズ１１の光軸を中心とした円周方向に沿ったマイクロレンズ像間で画像マッチングを行うと、より好ましい。
【００７０】
図８は、像高の低い領域と高い領域とでマイクロレンズ像の探索範囲を異ならせる例を示す。図８（ａ）は、像高の高さが所定値以下の領域における注目マイクロレンズ像３０Tと対象マイクロレンズ像３０S、３０S、…とを示している。像高が低い領域では、各マイクロレンズ像の形状をメインレンズアパーチャと同じ形状に近似できる。そのため、メインレンズアパーチャが円形の場合、注目マイクロレンズ像３０Tおよび対象マイクロレンズ像３０S、３０S、…の形状を円形とする。
【００７１】
また、像高の低い領域においては、注目マイクロレンズ像３０Tおよび対象マイクロレンズ像３０S、３０S、…の配列を、注目マイクロレンズ像３０Tの周囲六方に配置されるマイクロレンズ像を対象マイクロレンズ像３０S、３０S、…として用いる配列とする。また、テンプレート領域５０Tおよびマッチング領域５０Sについては、この例では、各マイクロレンズ像の形状に従いそれぞれ円形とされ、エピポーラ線に平行な線５１上に設定される。
【００７２】
図８（ｂ）は、像高の高さが所定値以上の領域における注目マイクロレンズ像３０T’と対象マイクロレンズ像３０S’、３０S’、…とを示している。
【００７３】
像高が高くなるに連れ、各マイクロレンズ像の変形の度合いが高くなるため、注目マイクロレンズ像３０T’に対してメインレンズ１１の光軸を中心とした円の半径方向に配置されるマイクロレンズ像を画像マッチングの対象として用いる対象マイクロレンズ像として選択することは好ましくない。
【００７４】
そのため、実施形態においては、像高が高い領域では、注目マイクロレンズ像３０T’に対して、メインレンズ１１の光軸を中心とした円周方向に配置される各マイクロレンズ像を、対象マイクロレンズ像３０S’、３０S’、…として用いる。図８（ｂ）の例では、注目マイクロレンズ像３０T’の周囲の６のマイクロレンズ像のうち、注目マイクロレンズ像３０T’に対してメインレンズ１１の光軸を中心とした円の半径方向に配置される２のマイクロレンズ像を除いた４のマイクロレンズ像と、注目マイクロレンズ像３０T’に円周上で隣接する２のマイクロレンズ像とを、対象マイクロレンズ像３０S’、３０S’、…として選択している。
【００７５】
このように、実施形態では、注目マイクロレンズ像に対する対象マイクロレンズ像の配列を像高に応じて設定している。そのため、像高の高い領域においても高い精度で画像マッチングを行うことができる。
【００７６】
さらに、像高が高い領域では、各マイクロレンズ像の形状が、像高の増加方向すなわちメインレンズ１１の光軸を中心とした円の半径方向に向けて扁平な、楕円に近似できる形状となる。そのため、注目マイクロレンズ像３０T’および対象マイクロレンズ像３０S’、３０S’、…の形状を低像高領域と同様に円形とすると、画像マッチングにおいて、マイクロレンズ像のエッジなど、マイクロレンズ像内とは異なる領域を検出してしまうおそれがある。
【００７７】
そのため、実施形態では、像高が高い領域では、注目マイクロレンズ像３０T’および対象マイクロレンズ像３０S’、３０S’、…の形状を、図８（ｂ）に例示されるように、像高に応じて近似的に楕円形に変形させる。また、テンプレート領域およびマッチング領域も、像高に応じて変形する。そのため、像高が高い領域においては、注目マイクロレンズ像３０T’内のテンプレート領域５０T’と、対象マイクロレンズ像３０S’内の、テンプレート領域５０T’と同一のエピポーラ線と平行な線５１’上のマッチング領域５０s’とを、それぞれ像高に応じて近似的に楕円形状に変形させる。
【００７８】
このように、実施形態では、注目マイクロレンズ像および対象マイクロレンズ像の形状と、テンプレート領域およびマッチング領域の形状とを像高に応じて変形させる。これにより、像高の高い領域での画像マッチングにおいて、マイクロレンズ像内とは異なる領域を検出してしまうことが防がれる。
【００７９】
マイクロレンズ像の探索範囲を異ならせる方法について、より具体的に説明する。先ず、第１の方法について説明する。第１の方法は、像高に応じた探索範囲を予め座標情報として記憶しておく方法である。検出部２３１は、この座標情報をマスクデータとして用いて画像マッチングを行い、像ずれ量の検出を行う。
【００８０】
図９は、このマスクデータの例を示す。マスクデータは、マイクロレンズ像内の領域６０、６０、…とマイクロレンズ像外の領域６１とを判定する識別情報で構成される。識別情報は、例えば、撮像面１３０による画像データの座標情報に関連付けられて構成される。検出部２３１は、識別情報に従い、画像マッチングをマイクロレンズ像内の領域６０、６０、…においてのみ、行う。
【００８１】
より具体的には、設定部２３２は、座標情報に従いマイクロレンズ像内の領域６０に存在するようにテンプレート領域を設定する。検出部２３１は、画像マッチングの処理時に、識別情報に基づきマッチング領域がマイクロレンズ像内領域６０に含まれているか否かを判定する。検出部２３１は、若し、マッチング領域がマイクロレンズ像外領域６１を含む場合には、このマッチング領域での画像マッチング処理を行わない。検出部２３１は、このようにして、マイクロレンズ像外領域６１を含まないマッチング領域について探索を行い、最も類似度の高い領域を、像ずれ位置として出力する。
【００８２】
次に、マイクロレンズ像の探索範囲を異ならせる第２の方法について説明する。第２の方法は、マイクロレンズ像およびマッチング領域を楕円に近似して記述する方法である。図１０に例示されるように、像高中心を原点(０，０)、像高中心(０，０)に対するマイクロレンズ像中心方向をｘ軸、ｘ軸に垂直な方向をｙ軸とする。マイクロレンズ像中心の座標を(ｘ0，ｙ0)とし、マイクロレンズ像を楕円７０として近似できる場合、マイクロレンズ像は次式（９）によって表される。
【数９】
2015185998.tif 000011
【００８３】
マイクロレンズ像は、ｘ軸方向に変形するため、短辺の長さａの値は、次式（１０）の通り、像高すなわち座標ｘ0に依存する。上述の式（９）における短辺の長さａを、この式（１０）の関係を用いて像高に依存する変数で置き換える。
【数１０】
2015185998.tif 000012
【００８４】
探索範囲およびテンプレート領域の変形においては、マイクロレンズ像毎に式（９）を適用する。一方、マッチング領域に関しては、テンプレート領域の形状を保存して画像マッチングを行う。短辺の長さａ、長辺の長さｂおよび定数Ｒについては、予め初期値を設定しておき、像高に応じて撮像装置１や画像処理プログラム内で初期値を参照して探索範囲やマッチング領域の計算を行う。
【００８５】
次に、図１１を用いて、像高に応じた注目マイクロレンズ像および対象マイクロレンズ像の配列の設定について説明する。図１１において、像高中心を中心とする円の半径方向に向けた線１４０と、線１４０に直交する線１４１が示されている。線１４１は、像高中心を中心とした円の線１４０との交点における円周を概略的に示すことになる。
【００８６】
図１１（ａ）を参照し、注目マイクロレンズ像３０Tの周囲六方の６の対象マイクロレンズ像３０S1〜３０S6（太線で示す）による配列を第１の配列とする。第１の配列は、注目マイクロレンズ像３０Tの周囲六方の方位＃１〜＃６を画像マッチングの際の探索軸として用いる配列である。
【００８７】
また、注目マイクロレンズ像３０Tの周囲六方のうち像高中心を中心とする円の半径方向に並ぶ２の対象マイクロレンズ像３０S1および３０S4を除く４の対象マイクロレンズ像３０S2、３０S3、３０S5および３０S6と、注目マイクロレンズ像３０Tと同一円周上に並ぶ２の対象マイクロレンズ像３０S7および３０S8と（それぞれ斜線を付して示す）による配列を第２の配列とする。第２の配列は、当該円周方向を探索軸として用いる配列である。
【００８８】
実施形態では、注目マイクロレンズ像３０Tの像高に応じて、これら第１の配列および第２の配列のうち何れを用いるかを選択する。これは、注目マイクロレンズ像３０Tの像高に応じて、画像マッチングの際の探索軸を選択することと同義である。
【００８９】
すなわち、像高中心を中心とする円の半径方向に向けてマイクロレンズ像が変形する場合、像高が高い領域においては画像マッチングにおける探索可能範囲が狭くなり、像の探索が困難になる。また、像高中心を中心とする円の半径方向に向けて像が歪むため、相対的に、検出された像ずれ量の信頼性を維持することが困難となる。像高に応じて第１の配列と第２の配列とを切り替えることで、これらの問題を解決できる。
【００９０】
より具体的には、例えば、設定部２３２は、上述した式（９）および式（１０）に従い、選択された注目マイクロレンズ像の位置に基づき短辺の長さａと長辺の長さｂとを算出する。設定部２３２は、算出した長さａと長さｂとの比の値を閾値と比較した結果に従い、第１の配列と第２の配列とのうち何れを用いるかを設定する。
【００９１】
一例として、設定部２３２は、長さａおよび長さｂの比(ａ／ｂ)が所定の範囲内（例えば０．７＜ａ／ｂ＜１．３）の場合にマイクロレンズ像が円であると見做し、第１の配列を選択する。一方、設定部２３２は、０．７≧ａ／ｂまたは１．３≦ａ／ｂの場合に、第２の配列を選択する。
【００９２】
なお、実際には、マイクロレンズ像は、像高中心を中心とする円の半径方向が長軸となるようには変形しないと考えられる。この場合、設定部２３２は、比(ａ／ｂ)を１の閾値ｔｈ（例えばｔｈ＝０．７）と比較して、ａ／ｂ＞ｔｈの場合にマイクロレンズ像が円であると見做して第１の配列を選択し、ａ／ｂ≦ｔｈの場合に第２の配列を選択するようにもできる。
【００９３】
また、像の形状変化に対して像自体の歪みの方が大きい場合は、像高の値によって第１の配列と第２の配列とを切り替えてもよい。さらに、第２の配列は、図１１（ａ）に例示される配列に限るものではなく、注目マイクロレンズの位置によって適した第２の配列が決定される。
【００９４】
図１１（ｂ）は、第２の配列の他の例を示す。図１１（ｂ）の例では、注目マイクロレンズ像３０Tの周囲六方のうち、像高中心を中心とする円の、注目マイクロレンズ像３０Tの中心を通る半径に接する４の対象マイクロレンズ像３０S11、３０S13、３０S14および３０S16を除く２の対象マイクロレンズ３０S12および３０S15と、これら対象マイクロレンズ３０S12および３０S15にそれぞれ接する対象マイクロレンズ像３０S21および３０S22、ならびに、対象マイクロレンズ像３０S23および３０S24とで、第２の配列の他の例を構成している。
【００９５】
図１２は、実施形態に係る像ずれ量検出処理を示す一例のフローチャートである。ステップＳ１０で、撮像装置１において各種のキャリブレーション処理がなされ、撮像装置１の各部が所定に設定される。例えば、キャリブレーション処理により、設定部２３２に対して、各マイクロレンズ像について、座標、マイクロレンズ間距離、像高中心の座標、上述した式（９）および式（１０）を計算するための各種定数などが与えられる。また、キャリブレーション処理により、算出部２３３に対して、上述した式（６）および式（７）などの計算を行うための各種定数などが与えられる。キャリブレーション処理の後、取得部２３０は、撮像素子１３により撮像された画像の画像データをメモリ２２から取得する。
【００９６】
次のステップＳ１１で、設定部２３２は、画像データによる画像に含まれる各マイクロレンズ像のうち注目マイクロレンズ像を選択する。設定部２３２は、選択した注目マイクロレンズ像の像高に応じて、上述した式（９）および式（１０）に従い、テンプレート領域を設定する。次のステップＳ１２で、設定部２３２は、選択した注目マイクロレンズ像の像高に応じて上述した式（９）および式（１０）で求めた長さａおよびｂに従い、上述の第１の配列および第２の配列のうち何れを用いるかを決定し、画像マッチングの際の探索軸を設定する。
【００９７】
次のステップＳ１３で、検出部２３１は、設定部２３２においてステップＳ１１およびステップＳ１２でそれぞれ設定されたテンプレート領域および探索軸に従い対象マイクロレンズ像の探索を行う。次のステップＳ１４で、検出部２３１は、ステップＳ１３で行われた探索により、対象マイクロレンズ像においてテンプレート領域と類似度の高いマッチング領域を求め、像ずれ量を検出する。算出部２３３は、検出部２３１で検出された像ずれ量に基づき、上述した式（６）〜式（８）を用いて注目マイクロレンズ像における像の被写体までの距離を計算する。
【００９８】
図１３を用いて、ステップＳ１３で行われる探索と、ステップＳ１４で行われる像ずれ量検出について、概略的に説明する。図１３は、注目マイクロレンズ像３０Tと、レベルＬ１の対象マイクロレンズ像３０Sとの間で探索が行われる様子を模式的に示している。
【００９９】
図１３において、注目マイクロレンズ像３０T内にテンプレート領域３５が設定され、対象マイクロレンズ像３０S内の、エピポーラ線に平行な線３１上における一端にマッチング領域３６1が設定されるものとする。検出部２３１は、テンプレート領域３５とマッチング領域３６1との間でＳＡＤやＳＳＤなどの評価関数を用いて画像マッチングを行い、類似度を求める。
【０１００】
次に、設定部２３２は、対象マイクロレンズ像３０S内において、マッチング領域３６1を線３１上で予め決められた距離だけ移動させた位置にマッチング領域３６2を設定する。検出部２３１は、テンプレート領域３５とこのマッチング領域３６2との間で画像マッチングを行い、類似度を求める。設定部２３２および検出部２３１は、この動作を繰り返し、マッチング領域を所定距離ずつ移動させながら画像マッチングを行い、それぞれ類似度を求める。
【０１０１】
対象マイクロレンズ像３０Sの他端のマッチング領域３６nによる画像マッチングが終了すると、検出部２３１は、各マッチング領域３６1、３６2、…、３６nで求められた各類似度に基づき像ずれ量を求める。算出部２３３は、検出部２３１に求められた像ずれ量から、上述した式（６）〜式（８）を用いて注目マイクロレンズ像３０Tにおける像の被写体までの距離を算出する。
【０１０２】
なお、ステップＳ１３の対象マイクロレンズ像の探索処理は、ステップＳ１２で設定された探索軸に従い、注目マイクロレンズ像に対する全ての対象マイクロレンズ像に対して実行される。
【０１０３】
ステップＳ１４で、選択された注目マイクロレンズ像について距離計算が行われると、処理がステップＳ１５に移行され、全てのマイクロレンズ像について処理が終了したか否かが判定される。若し、未だ処理を終えていないマイクロレンズ像があると判定された場合、処理がステップＳ１１に戻され、次の注目マイクロレンズ像が選択されて、この注目マイクロレンズ像について、ステップＳ１１〜ステップＳ１４の処理が実行される。
【０１０４】
ステップＳ１５で、全てのマイクロレンズ像について処理が終了したと判定された場合、図１２のフローチャートによる一連の処理が終了される。
【０１０５】
実施形態では、このように、マイクロレンズ像同士で画像マッチングを行う際に、テンプレート領域の変形と探索方向の決定を行う。この処理を全てのマイクロレンズ像で行うことにより、算出される距離精度を向上できる。
【０１０６】
（実施形態の変形例）
次に、実施形態の変形例について説明する。被写体のテクスチャが周期的な場合は、正しいマッチング位置を検出できずに誤った領域を検出してしまう場合がある。図１４は、被写体が周期的なテクスチャである場合の、各マイクロレンズ像の例を示す。なお、図１４では、図３で示した光学系を想定している。図１４は、被写体のテクスチャがコントラストの強い縦縞である例を示す。
【０１０７】
マイクロレンズ間距離、すなわちベースラインが異なるマイクロレンズによるマイクロレンズ像を複数比較した場合、正しいマッチング位置以外では距離算出結果がそれぞれ異なってしまうことになる。
【０１０８】
一例として、マイクロレンズ間距離Ｌおよびマイクロレンズ間の像ずれ量Δ’の場合において、図１４に例示されるような、マイクロレンズ像に間隔ｋのテクスチャが含まれている場合について考える。上述の式（７）によれば、注目レンズ像３０Tに対してレベルＬ１の対象マイクロレンズ像３０Ｌ1では、Ｎ＝Δ’／Ｌとなる。レベルＬ２の対象マイクロレンズ像３０Ｌ2では、注目マイクロレンズ像３０Tのマイクロレンズとのマイクロレンズ間距離が距離２Ｌとなる。理想状態では、各レベルの対象マイクロレンズ像において縮小倍率Ｎは定数として考えることができ、式（７）に従いＮ＝２Δ’／２Ｌとなる。
【０１０９】
これに対して、テクスチャの間隔ｋは、各マイクロレンズ像において一定である。したがって、例えば注目マイクロレンズ像３０Tにおいて位置０，k，２ｋ，…に出現するテクスチャは、レベルＬ１の対象マイクロレンズ像３０L1においては、位置Δ’，Δ’＋ｋ，Δ’＋２ｋ，…の位置に出現する。同様に、当該テクスチャは、レベルＬ２の対象マイクロレンズ像３０L2においては、位置２Δ’，２Δ’＋ｋ，２Δ’＋２ｋ，…に出現する。
【０１１０】
このため、例えば注目マイクロレンズ像３０Tにおける位置ｋのテクスチャは、対象マイクロレンズ像３０L1において位置Δ’＋ｋで検出され、さらに対象マイクロレンズ像３０L2において位置２Δ’＋ｋで検出される。したがって、対象マイクロレンズ像３０L1の検出結果に基づく縮小倍率Ｎ1は、Ｎ1＝(Δ’＋ｋ)／Ｌとなる。また、対象マイクロレンズ像３０L2の検出結果に基づく縮小倍率Ｎ2は、Ｎ2＝(２Δ’＋ｋ)／２Ｌとなる。この場合、縮小倍率Ｎ1と縮小倍率Ｎ2とが等しくならないため、誤った距離が算出されることになる。
【０１１１】
本実施形態の変形例では、複数の対象マイクロレンズ像による画像マッチングの結果を加算することで、周期性のあるテクスチャに対する誤検出を抑制する。図１５は、本実施形態の変形例による各画像マッチング結果の加算結果の例を示す。図１５において、縦軸は、ＳＡＤやＳＳＤといった評価関数による画像マッチング結果の評価値を示す。横軸は、縮小率の逆数を示し、これは、例えば図１３を用いて説明した、対象マイクロレンズ像３０Sにおけるマッチング領域３６1、３６2、…、３６nのずらし方に対応し、より具体的には、これらの間隔に対応する。
【０１１２】
図１５の例では、レベルＬ１の検出結果（図中の□：四角）では、１／Ｎ＝９付近に評価値のディップ点が認められる。一方、レベルＬ２の検出結果（図中の○：白丸）では、１／Ｎ＝９付近と１／Ｎ＝５付近とに評価値のディップ点が存在している。レベルＬ１の検出結果とレベルＬ２の検出結果とを比較すると、レベルＬ１の検出結果では、１／Ｎ＝５付近の評価値は高い値となっており、類似度が低いことが示されている。したがって、レベルＬ２の検出結果における１／Ｎ＝５付近のディップ点は、例えば周期性のあるテクスチャに起因する誤検出であると推定できる。
【０１１３】
ここで、レベルＬ１の検出結果とレベルＬ２の検出結果とを加算した加算結果（図中で◇：菱型）を見ると、レベルＬ２における１／Ｎ＝５付近のディップ点は、レベルＬ１の評価値により相殺されており、レベルＬ１およびレベルＬ２に共通してディップ点が認められる１／Ｎ＝９付近に明確にディップ点が存在することが分かる。このように、各対象マイクロレンズ像におけるによる画像マッチングの結果を加算することで、周期性の存在するテクスチャにロバストな結果を得ることができる。
【０１１４】
式（８）で示した平均化の前に、マルチベースラインにより複数の対象マイクロレンズ像の検出結果を用いて正しい検出位置を予め算出しておく。そして、その後に、式（８）による平均化処理を施すことで、周期性テクスチャであっても距離計算を高精度に行うことができる。また、本実施形態の変形例による手法は、上述した実施形態で説明したテンプレート領域の変形などと組み合わせて使用することが可能である。
【０１１５】
なお、上述では、レベルＬ１およびレベルＬ２の２の対象マイクロレンズ像による検出結果を加算した場合について説明したが、これはこの例に限定されない。例えば、図１４に例示されるレベルＬ３の対象マイクロレンズ像３０L3による検出結果をさらに加算してもよい。
【０１１６】
なお、本発明は上述した各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、各実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１１７】
１  撮像装置
１０  カメラモジュール
１１  メインレンズ
１２  マイクロレンズアレイ
１３  撮像素子
２３  画像処理部
３０，３０1〜３０6  マイクロレンズ像
３０T  注目マイクロレンズ像
３０S，３０Ｓ1〜３０Ｓ8  対象マイクロレンズ像
３５，５０T，５０T’  テンプレート領域
３６1〜３６n，５０S，５０S'  マッチング領域
１２０  マイクロレンズ
２３０  取得部
２３１  検出部
２３２  設定部
２３３  算出部
【図１】
2015185998.tif 000013
【図２】
2015185998.tif 000014
【図３】
2015185998.tif 000015
【図５】
2015185998.tif 000016
【図６】
2015185998.tif 000017
【図７】
2015185998.tif 000018
【図８】
2015185998.tif 000019
【図９】
2015185998.tif 000020
【図１０】
2015185998.tif 000021
【図１１】
2015185998.tif 000022
【図１２】
2015185998.tif 000023
【図１３】
2015185998.tif 000024
【図１４】
2015185998.tif 000025
【図１５】
2015185998.tif 000026
【図４】
2015185998.tif 000027