(57)【要約】【課題】異なる方向から光学系に到達する被写体像を、異なる画素ブロックに結像させて画像を撮像する撮像装置において、一部の画素ブロックが故障したことを検出することで、故障した画素ブロックの画像を適切に補正することができる技術を実現する。【解決手段】異なる方向から光学系に到達する被写体像を、異なる画素ブロックに結像させて画像を撮像する撮像装置であって、検出対象の第１の画素ブロックから得られた第１の画像データと、前記第１の画素ブロックから所定の範囲内にある比較対象の第２の画素ブロックから得られた第２の画像データとを比較して前記第１の画像データと前記第２の画像データの相関情報を取得する取得手段と、前記取得手段により取得された相関情報を用いて前記第１の画像データを撮像した第１の画素ブロックが故障しているか判定する判定手段と、を有する。【選択図】図４
2016001852.tif 000002
【特許請求の範囲】
【請求項１】
異なる方向から光学系に到達する被写体像を、異なる画素ブロックに結像させて画像を撮像する撮像装置であって、
検出対象の第１の画素ブロックから得られた第１の画像データと、前記第１の画素ブロックから所定の範囲内にある比較対象の第２の画素ブロックから得られた第２の画像データとを比較して前記第１の画像データと前記第２の画像データの相関情報を取得する取得手段と、
前記取得手段により取得された相関情報を用いて前記第１の画像データを撮像した第１の画素ブロックが故障しているか判定する判定手段と、を有することを特徴とする撮像装置。
【請求項２】
前記取得手段は、前記第１の画像データと前記第２の画像データとが重複する領域をずらしながら相関演算を行い、最大の相関を持つ部分を前記相関情報とすることを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記取得手段は、前記第１の画素ブロックと前記第２の画素ブロックとの相対的な位置関係に基づいて、前記重複する領域をずらす方向を決定することを特徴とする請求項２に記載の撮像装置。
【請求項４】
前記取得手段は、前記第１の画像データと、前記第１の画素ブロックに近接する複数の前記第２の画素ブロックにより得られた前記第２の画像データとの相関演算を行い、
前記判定手段は、前記相関演算の結果が所定値以下となる個数を検出し、当該個数が所定数以上ある場合に、前記第１の画素ブロックが故障していると判定することを特徴とする請求項１ないし３のいずれか１項に記載の撮像装置。
【請求項５】
前記取得手段は、
前記第２の画素ブロックを検出対象とした場合の比較対象である第３の画素ブロックのずらし量を算出する手段を有し、
前記算出されたずらし量から、前記第１の画像データと前記第２の画像データとが重複する領域をずらしながら相関演算を行う際のずらし量を推定することを特徴とする請求項１ないし４のいずれか１項に記載の撮像装置。
【請求項６】
前記判定手段により故障と判定された第１の画素ブロックにより撮像された画像データを補正する第１の補正手段をさらに有することを特徴とする請求項１ないし５のいずれか１項に記載の撮像装置。
【請求項７】
前記第１の補正手段により補正されない欠陥を補正する第２の補正手段をさらに有することを特徴とする請求項６に記載の撮像装置。
【請求項８】
複数の光学系および撮像部が二次元状に配置された撮像手段をさらに有することを特徴とする請求項１ないし７のいずれか１項に記載の撮像装置。
【請求項９】
単一の撮像素子の前段に、複数のマイクロレンズが二次元状に配置された撮像手段をさらに有し、
前記画素ブロックは、前記マイクロレンズの後段に配置されることを特徴とする請求項１ないし７のいずれか１項に記載の撮像装置。
【請求項１０】
前記マイクロレンズを透過した光が照射されない不感画素を検出する検出手段をさらに有し、
前記第１の画素ブロックおよび前記第２の画素ブロックに前記不感画素がある場合、前記判定手段は、前記第１の画素ブロックと前記第２の画素ブロックの相関情報を取得しないことを特徴とする請求項９に記載の撮像装置。
【請求項１１】
前記検出手段は、光学系の絞り値およびマイクロレンズの絞り値を取得し、当該絞り値に基づいて不感画素の位置を検出することを特徴とする請求項１０に記載の撮像装置。
【請求項１２】
異なる方向から光学系に到達する被写体像を、異なる画素ブロックに結像させて画像を撮像する撮像装置における故障検出方法であって、
取得手段が、検出対象の第１の画素ブロックから得られた第１の画像データと、前記第１の画素ブロックから所定の範囲内にある比較対象の第２の画素ブロックから得られた第２の画像データとを比較して前記第１の画像データと前記第２の画像データの相関情報を取得するステップと、
判定手段が、前記取得手段により取得された相関情報を用いて前記第１の画像データを撮像した第１の画素ブロックが故障しているか判定するステップと、を有することを特徴とする方法。
【請求項１３】
コンピュータを、請求項１ないし１１のいずれか１項に記載された撮像装置の各手段として機能させるためのプログラム。
【請求項１４】
コンピュータを、請求項１ないし１１のいずれか１項に記載された撮像装置の各手段として機能させるためのプログラムを格納したコンピュータにより読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異なる方向から光学系に到達する被写体像を撮像可能な撮像装置に関する。
【背景技術】
【０００２】
近年、多視点からの撮影画像を記録する多眼カメラと呼ばれる撮像装置が特許文献１に記載されている。特許文献２には、複数の撮像部を持つ撮像装置において、任意の撮像部に対する故障の発生を検出し、異常を通知する手法が記載されている。特許文献２では、各撮像部で撮影された画像に対してそのヒストグラムを作成し、ヒストグラムを比較することにより故障検出を行っている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−２３６３４４号公報
【特許文献２】特開２００８−１９６８９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
多眼カメラで撮影された画像データは、その一部の撮像部が故障してしまった場合に、多眼カメラで撮影された画像データを再構成するリフォーカス処理において正しい画像を得ることができないため、故障した撮像部を適切に検出する必要がある。しかしながら、特許文献１には、一部の撮像部が故障した場合の検出手法については考慮されていない。また、特許文献２には、複数の撮像部が配置された構造において適切な故障検出を行う方法の記載はなく、また、撮像素子に異物が付着するなど、画像の一部分に異常が発生するような場合の具体的な処理について記載されていない。
【０００５】
本発明は、上記課題に鑑みてなされ、その目的は、異なる方向から光学系に到達する被写体像を、異なる画素ブロックに結像させて画像を撮像する撮像装置において、一部の画素ブロックが故障したことを検出することで、故障した画素ブロックの画像を適切に補正することができる技術を実現することである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の撮像装置は、異なる方向から光学系に到達する被写体像を、異なる画素ブロックに結像させて画像を撮像する撮像装置であって、検出対象の第１の画素ブロックから得られた第１の画像データと、前記第１の画素ブロックから所定の範囲内にある比較対象の第２の画素ブロックから得られた第２の画像データとを比較して前記第１の画像データと前記第２の画像データの相関情報を取得する取得手段と、前記取得手段により取得された相関情報を用いて前記第１の画像データを撮像した第１の画素ブロックが故障しているか判定する判定手段と、を有する。
【発明の効果】
【０００７】
本発明によれば、異なる方向から光学系に到達する被写体像を、異なる画素ブロックに結像させて画像を撮像する撮像装置において、一部の画素ブロックが故障したことを検出することで、故障した画素ブロックの画像を適切に補正することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態の装置構成を示すブロック図。
【図２】本実施形態の撮像装置の外観図。
【図３】本実施形態の欠陥が発生したサブ画像の相関性を示す図。
【図４】本実施形態の故障検出処理を示すフローチャート。
【図５】本実施形態の差分値算出処理を示すフローチャート。
【図６】本実施形態の欠陥が発生したサブ画像の補間処理を示すフローチャート。
【図７】実施形態２の故障検出処理を示すフローチャート。
【図８】実施形態２の差分値算出処理を示すフローチャート。
【図９】実施形態３の装置構成を示すブロック図。
【図１０】実施形態３の光線空間情報の取得方法を説明する図。
【図１１】実施形態３の差分値算出処理を示すフローチャート。
【発明を実施するための形態】
【０００９】
以下に、本発明を実施するための形態について詳細に説明する。尚、以下に説明する実施の形態は、本発明を実現するための一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。また、後述する各実施形態の一部を適宜組み合わせて構成しても良い。
【００１０】
［実施形態１］以下、本発明を、例えば、光線空間を撮像できる多眼カメラなどの撮像装置に適用した実施形態について説明する。
【００１１】
＜装置構成＞図１を参照して、本発明に係る実施形態の多眼カメラの構成及び機能の概略について説明する。
【００１２】
図１において、多眼カメラ１００は、複数の撮像部１０７を持ち、各撮像部１０７は、光学系１０１、撮像素子１０５、ＡＤコンバータ１０６を含む。
【００１３】
光学系１０１は、フォーカスレンズ１０２やズームレンズ１０３を含むレンズ群、絞り機能を有するシャッター１０４などを含む。
【００１４】
撮像素子１０５は、ＣＣＤやＣＭＯＳなどの光電変換素子を備え、光学系１０１を介して結像された被写体像を電気信号に変換して、アナログ画像信号を生成する。
【００１５】
ＡＤコンバータ１０６は、撮像素子１０５から出力されるアナログ画像信号をデジタル画像信号に変換し、メモリ１０８へ出力する。
【００１６】
信号処理部１０９は、メモリ１０８に格納されたデジタル画像信号に対して、所定の画素補間、リサイズ、色補正やガンマ処理といった各種信号処理を行う。信号処理部１０９により生成された画像データは、メモリ１０８に出力される。
【００１７】
メモリ１０８は、ＲＡＭなどの一時記憶装置であり、撮像部１０７や信号処理部１０９から出力される画像データを記憶する。また、メモリ１０８は、画像データの他に、ファイルシステムの情報や管理情報など、各種の情報を記憶し、更に、制御部１１４のためのワークメモリなどの役割を果たす。さらに、メモリ１０８は、画像の記録時や再生時におけるバッファメモリの役割を果たす。なお、制御部１１４のワークエリアは、メモリ１０８に限られず、後述する外付けハードディスクやメモリカードなどであってもよい。
【００１８】
記録処理部１１０は、メモリ１０８に格納された画像データを符号化して画像ファイルに変換し、記録部１１１へ出力する。符号化処理は、静止画では例えばＪＰＥＧなどを、動画では例えばＭＰＥＧ−２、Ｈ．２６４、Ｈ．２６５などが適用できる。
【００１９】
記録部１１１は、装置に内蔵されたフラッシュメモリやハードディスク、あるいは外付けのメモリーカードなどである。記録部１１１には、撮像部１０７で撮像された画像データ、制御部１１４の動作用の定数、プログラムなどが記憶される。ここでいう、プログラムとは、後述する各種フローチャートを実行するためのプログラムのことである。
【００２０】
表示処理部１１２は、メモリ１０８に格納された画像データやＯＳＤなどの情報に基づいて表示信号を生成し、表示部１１３へ出力する。また、表示部１１３に撮像した画像データを逐次表示することで電子ファインダ機能を実現することが可能である。
【００２１】
表示部１１３は、撮影時のスルー画像の表示、撮影した画像の表示、対話的な操作のための文字表示などを行う。表示部１１３は、例えば、液晶ディスプレイ、有機ＥＬディスプレイ等の表示デバイスである。表示部１１３は、多眼カメラ１００と一体化された構成であっても、多眼カメラ１００と接続された外部機器であってもよい。
【００２２】
制御部１１４は、ＣＰＵ、入出力回路、タイマー回路などを有し、ＣＰＵが記録部１１１に格納されたプログラムをメモリ１０８のワークエリアに展開し、実行することにより、撮影、画像処理、再生、記録などの装置全体の動作を制御する。
【００２３】
制御値取得部１１５は、撮像部１０７のレンズ位置や絞り開口径などの現在の制御値を取得し、制御部１１４へフィードバックするとともに、表示処理部１１２を介して表示部１１３に制御値に関する情報を表示する。
【００２４】
操作部１１６は、例えば、電源のオン／オフ、画像の撮影、ズーム操作、ＧＵＩ画面などによるユーザ操作を受け付けるスイッチ、カーソルキー、タッチパネルなどである。
【００２５】
図２は、本実施形態の多眼カメラ１００の外観を示している。
【００２６】
多眼カメラ１００は、複数の撮像部１０７が、垂直方向にｘ列、水平方向にｙ行の二次元状に配置される。以下、各撮像部１０７で撮像されたＵピクセル×Ｖピクセルの画素ブロックからなる画像をサブ画像２０１（以下、ＳＩ（ｘ，ｙ））、各サブ画像２０１の画素データをＬ（ｘ，ｙ，ｕ，ｖ）と称して説明を行う。
【００２７】
＜故障検出方法＞次に、本実施形態の多眼カメラ１００により撮像された画像に欠陥が発生する様子について説明する。
【００２８】
図３（ａ）は、被写体３０１を撮像して得られた各サブ画像２０１を示し、図３（ｂ）は、（ａ）と同様の条件において、複数の撮像部１０７のうち、いずれかで撮像された画像に、故障の発生や異物の混入などにより欠陥が発生してしまった様子を例示している。
【００２９】
多眼カメラは、光線空間（Ｌｉｇｈｔ Ｆｉｅｌｄ））を撮像するという特性上、異なる方向から光学系に到達する同一の被写体像が異なるサブ画像として撮像されるため、近接するサブ画像同士の相関性は高くなる。しかしながら、図３（ｂ）のように、サブ画像２０１の一部に欠陥が発生した場合は、このサブ画像と近接する撮像部１０７で撮像されたサブ画像との相関性が低下する。本実施形態では、このような特性を利用してサブ画像に影響を及ぼす撮像部の故障を検出するものである。
【００３０】
次に、図４を参照して、本実施形態によるサブ画像ＳＩ（ｘ，ｙ）に影響を及ぼす故障を検出する処理について説明する。
【００３１】
なお、図４の処理は、制御部１１４が、記録部１１１に格納された制御プログラムをメモリ１０８に展開し、実行することで実現される。
【００３２】
ステップＳ４００では、制御部１１４は、検出対象の撮像部１０７（第１の画素ブロック）に対応するサブ画像（第１のサブ画像）ＳＩ（ｘ，ｙ）を選択する。
【００３３】
ステップＳ４０１では、制御部１１４は、検出対象の第１のサブ画像に対する最小差分値Ｄ（ｘ，ｙ）を変数Ｄ（ｘ，ｙ）の最大値で初期化する。
【００３４】
ステップＳ４０２では、制御部１１４は、比較対象の複数の撮像部１０７に対応するサブ画像群（第２のサブ画像群）を決定する。ここで選択する比較対象のサブ画像群は、ステップＳ４００にて選択した検出対象のサブ画像を撮像した撮像部１０７から所定の範囲内にある撮像部１０７により撮像されたサブ画像とする。なお、所定の範囲として設定する距離は、ユークリッド距離でもマンハッタン距離でも構わないが、同一の被写体が写り込むような距離とすることが望ましい。
【００３５】
ステップＳ４０３では、制御部１１４は、ステップＳ４０２にて決定した比較対象のサブ画像群の中から１つ（第２のサブ画像）を選択する。
【００３６】
ステップＳ４０４では、制御部１１４は、検出対象のサブ画像と比較対象のサブ画像の間の画像データの差分値ｄを算出する。ここでの処理の詳細については、図５を用いて後述する。
【００３７】
ステップＳ４０５では、制御部１１４は、最小差分値Ｄ（ｘ，ｙ）と、ステップＳ４０４にて算出した差分値ｄとの比較を行う。比較の結果、Ｄ（ｘ，ｙ）の方が大きい場合はステップＳ４０６へ進み、そうでない場合はステップＳ４０７へ進む。
【００３８】
ステップＳ４０６では、制御部１１４は、最小差分値Ｄ（ｘ，ｙ）に対してステップＳ４０４にて算出した差分値ｄを代入する。
【００３９】
ステップＳ４０７では、制御部１１４は、ステップＳ４０２にて決定した全ての比較対象のサブ画像群に対して差分値ｄの算出（ステップＳ４０４からＳ４０６の処理）を行ったか判定する。判定の結果、全ての比較対象サブ画像群に対して差分値ｄの算出を行った場合はステップＳ４０８へ進み、そうでない場合はステップＳ４０３へ戻り、新たな比較対象のサブ画像を決定し、ステップＳ４０４からＳ４０６の処理を行う。
【００４０】
ステップＳ４０８では、制御部１１４は、最小差分値Ｄ（ｘ，ｙ）と所定値とを比較し、最小差分値Ｄ（ｘ，ｙ）が所定値より大きい場合はステップＳ４０９へ進み、そうでない場合はＳ４１０へ進む。
【００４１】
ステップＳ４０９では、制御部１１４は、検出対象のサブ画像が、故障した撮像部１０７により撮像されたサブ画像（故障サブ画像）であると判定する。
【００４２】
ステップＳ４１０では、制御部１１４は、全てのサブ画像に対して上記ステップＳ４００〜Ｓ４０９までの故障検出処理を実行したか否かを判定する。判定の結果、全てのサブ画像に対して故障検出処理を実行した場合はステップＳ４１１へ進み、そうでない場合はステップＳ４００へ戻り、次の第１のサブ画像を選択する。
【００４３】
ステップＳ４１１では、制御部１１４は、ステップＳ４０９で判定された故障サブ画像（故障サブ画像が複数ある場合は故障サブ画像群の中から１つ）を選択する。
【００４４】
ステップＳ４１２では、制御部１１４は、ステップＳ４１１で選択した故障サブ画像に近接するサブ画像のうち、故障と判定されているサブ画像の個数と所定数とを比較し、故障と判定されたサブ画像が所定数以上である場合はステップＳ４１３へ進み、そうでない場合はステップＳ４１４へ進む。
【００４５】
ステップＳ４１３では、制御部１１４は、ステップＳ４１１で選択した故障サブ画像に対して削除フラグを付与する。削除フラグは、サブ画像の相関情報を取得できない原因が、ＳＩ（ｘ，ｙ）を撮影した撮像部１０７の故障によるものではなく、異なる隣接した撮像部１０７によるものであることを識別するためのフラグである。
【００４６】
ステップＳ４１４では、制御部１１４は、全ての故障サブ画像に対してステップＳ４１１からＳ４１３までの処理を実行したか否かを判定する。判定の結果、全ての故障サブ画像に対して処理を実施した場合はステップＳ４１５へ進み、そうでない場合はステップＳ４１１へ戻り、次の故障サブ画像を選択する。
【００４７】
ステップＳ４１５では、制御部１１４は、ステップＳ４１３において削除フラグが付与されたサブ画像群を、ステップＳ４０９で判定した故障サブ画像群から除外する。
【００４８】
ステップＳ４１６では、制御部１１４は、ステップＳ４１５で判定された故障サブ画像群に対して補正処理を実行する。ここでの補正処理の詳細については、図６を用いて後述する。
【００４９】
ステップＳ４１７では、制御部１１４は、ステップＳ４１６では補正しきれない微小な欠陥の検出および補正処理を行い、本処理を終了する。ここでの欠陥検出および補正処理は、例えば、特開２００５−２３６７４９号公報に記載された、欠陥画素の周辺画素と画素値を比較し補間を行う手法を用いる。
【００５０】
＜差分値算出処理＞次に、図５を参照して、図４のステップＳ４０４における差分値算出処理について説明する。
【００５１】
ステップＳ５００では、制御部１１４は、処理方向ベクトルを決定する。
【００５２】
処理方向ベクトルとは、異なる方向（角度）から光学系に到達する同一の被写体像が、異なる画素ブロックに結像する方向を示すものである。処理方向ベクトルは具体的には下記式１より算出される。
（式１）
ｆ＝（ｘ２−ｘ１）／（ｘ２−ｘ１＋ｙ２−ｙ１）
ｇ＝（ｙ２−ｙ１）／（ｘ２−ｘ１＋ｙ２−ｙ１）
ステップＳ５０１では、制御部１１４は、ずらし量ｔに０を代入する。ずらし量ｔは、第１のサブ画像と第２のサブ画像の重複領域の相対的な位置関係を示す。
【００５３】
ステップＳ５０２では、制御部１１４は、差分値ｄ（ｔ）を算出する。差分値ｄ（ｔ）は、第１のサブ画像と第２のサブ画像の、重複領域における画像の類似度を示す。差分値ｄ（ｔ）は、第１のサブ画像の位置を（ｘ１，ｙ１）、第２のサブ画像の位置を（ｘ２，ｙ２）として下記式２から算出する。記号｜｜は絶対値を示し、関数ａｖｇは全加算値の平均値を取得することを示す。
（式２）
ｄ(ｔ)＝ａｖｇ（ΣΣ｜Ｌ（ｘ１，ｙ１，ｕ，ｖ）−Ｌ（ｘ２，ｙ２，ｕ＋ｆ・ｔ，ｖ＋ｇ・ｔ）｜）
また、ここでは差分絶対値和ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）演算を用いた例を説明したが、差分平方和ＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）演算などの他のパターンマッチング演算を用いても良い。また、ｆ・ｔやｇ・ｔが整数値でない場合は、Ｌ（ｘ２，ｙ２，ｕ＋ｆ・ｔ，ｖ＋ｇ・ｔ）の値として画像補間処理を用いた近似値を利用することも可能である。
【００５４】
ステップＳ５０３では、制御部１１４は、ずらし量ｔに１を加算する。
【００５５】
ステップＳ５０４では、制御部１１４は、第１のサブ画像と第２のサブ画像との重複領域の画素数を演算し、所定値との比較を行う。比較の結果、画素数が所定値以下の場合はステップＳ５０５へ進み、そうでない場合はステップＳ５０２へ進む。重複領域の画素数は、下記式３から算出される。
（式３）
（Ｕ−｜ｆ・ｔ｜）・（Ｖ−｜ｇ・ｔ｜）
所定値との比較の結果、重複領域の画素数が少ない場合は、差分値算出の対象となる画素数が少なくなるため演算結果に誤差が生じる可能性がある。そのため、重複領域の画素数が所定値以下の場合は差分値算出を行わない。また、本処理において重複領域の画素数は、ｔが０から離れるほど全て減少する方向であるため、画素数が所定値以下となった場合には処理を終了する。
【００５６】
ステップＳ５０５では、制御部１１４は、ずらし量ｔに−１を代入する。
【００５７】
ステップＳ５０６では、制御部１１４は、上記式２を用いて差分値ｄ(ｔ)の算出を行う。
【００５８】
ステップＳ５０７では、制御部１１４は、ずらし量ｔから１を減算する。
【００５９】
ステップＳ５０８では、制御部１１４は、上記式３を用いて第１のサブ画像と第２のサブ画像との重複領域の画素数を演算し、所定値との比較を行う。比較の結果、画素数が所定値以下の場合はステップＳ５０９へ進み、そうでない場合はステップＳ５０２へ進む。
【００６０】
ステップＳ５０９では、制御部１１４は、ステップＳ５０２およびＳ５０６にて算出された差分値ｄ(ｔ)のうち、最小の差分値ｄ(ｔ)を第１のサブ画像と第２のサブ画像の相関情報として算出し、戻り値として出力する。また、ずらし量ｔから水平ずらし量、垂直ずらし量をそれぞれｆ・ｔ，ｇ・ｔとして算出し、差分値ｄ(ｔ)とともにメモリ１０８へ格納し、本処理を終了する
＜故障サブ画像の補正処理＞次に、図６を参照して、図４のステップＳ４１６における故障サブ画像の補正処理について説明する。
【００６１】
ステップＳ６００では、制御部１１４は、補正対象のサブ画像を決定する。なお、補正対象のサブ画像は、ステップＳ４０９にて故障と判定した撮像部１０７により撮像されたサブ画像とする。
【００６２】
ステップＳ６０１では、制御部１１４は、比較対象のサブ画像群を決定する。なお、比較対象のサブ画像群は、ステップＳ４０２と同様に、補正対象サブ画像を撮像した撮像部１０７から所定の範囲内にあるステップＳ４０９にて故障と判定された撮像部１０７以外の撮像部１０７により撮像されたサブ画像とする。
【００６３】
ステップＳ６０２では、制御部１１４は、ステップＳ６０１にて決定した比較対象のサブ画像群から１つのサブ画像ＳＩ（ｘ２，ｙ２）を選択（第２のサブ画像）する。
【００６４】
ステップＳ６０３では、制御部１１４は、ステップＳ５０９にてメモリ１０８へ格納した第１のサブ画像と第２のサブ画像の差分値、水平ずらし量、垂直ずらし量のそれぞれ変数Ｄｔ，Ｆｔ，Ｇｔを取得する。
【００６５】
ステップＳ６０４では、制御部１１４は、ステップＳ６０３にて取得した差分値の変数Ｄｔの値と所定値とを比較し、変数Ｄｔが所定値以下である場合はステップＳ６０５へ進み、そうでない場合はステップＳ６０６へ進む。
【００６６】
ステップＳ６０５では、制御部１１４は、第１のサブ画像に対する、第２のサブ画像の重複領域を決定し、下記式４を用いて予め０に初期化した画素値Ｌ´（ｘ，ｙ，ｕ，ｖ）に対して加算する。
（式４）
Ｌ´（ｘ，ｙ，ｕ，ｖ）＝Ｌ´（ｘ，ｙ，ｕ，ｖ）＋Ｌ（ｘ２，ｙ２，ｕ＋Ｆｔ，ｖ＋Ｇｔ）
ステップＳ６０６では、制御部１１４は、全ての比較対象のサブ画像群に対してステップＳ６０２からＳ６０５の補間処理を実行したか否かを判定する。判定の結果、全ての比較対象のサブ画像群に対して処理を実行した場合はステップＳ６０７へ進み、そうでない場合はステップＳ６０２へ戻り、次の比較対象のサブ画像を選択する。
【００６７】
ステップＳ６０７では、制御部１１４は、第１のサブ画像の画素値Ｌ´（ｘ，ｙ，ｕ，ｖ）の各画素毎に加算された回数に基づいて平均値を算出し、Ｌ（ｘ，ｙ，ｕ，ｖ）に代入する。
【００６８】
ステップＳ６０８では、制御部１１４は、加算回数が１度もない第１のサブ画像の画素の有無を判定し、加算回数が１度もない画素がある場合はステップＳ６０９へ進み、そうでない場合は本処理を終了する。
【００６９】
ステップＳ６０９では、制御部１１４は、未決定画素に対する補間処理を実行し、本処理を終了する。
【００７０】
なお、図４のステップＳ４０５、Ｓ４０６、Ｓ４０８では、制御部１１４は、最小差分値を算出し、その値と所定値と比較しているが、最小値ではなく、最小値から所定の順位の差分値と所定値とを比較することも可能である。
【００７１】
また、図５のステップＳ５０３、Ｓ５０７では、制御部１１４は、それぞれ媒介変数に１を加算または減算していたが、特に１である必要はない。
【００７２】
また、本実施形態では、補正処理の一例として近接するサブ画像から画素値を補間する処理について説明したが、これに限定されず、リフォーカス画像を作成する場合に故障サブ画像を利用しないなどの手法で故障サブ画像の影響を無視することも可能である。
【００７３】
上記実施形態によれば、近接するサブ画像に対する重複領域の相関演算を行うことにより、故障が発生しているサブ画像を検出することが可能となる。
【００７４】
［実施形態２］次に、図７および図８を参照して、実施形態２によるサブ画像ＳＩ（ｘ，ｙ）に影響を及ぼす故障を検出する処理について説明する。
【００７５】
なお、図７および図８の処理は、制御部１１４が、記録部１１１に格納された制御プログラムをメモリ１０８に展開し、実行することで実現される。
【００７６】
実施形態１では、差分値算出処理におけるずらし量ｔを探索する範囲を、処理方向ベクトルに基づく画像の全範囲としたが、本実施形態では、その範囲を小さくし、また初期値を任意に決定することにより高速にずらし量ｔを算出できるようにしている。
【００７７】
なお、本実施形態の装置構成は実施形態１と同様である。
【００７８】
また、図７において、図４と同様の処理には同じステップ番号を付しており、以下では、図４との相違点を中心に説明を行う。
【００７９】
ステップＳ７００では、制御部１１４は、検出対象の第１のサブ画像と比較対象の第２のサブ画像との画像データの差分値ｄを算出する。ここでの処理の詳細については、図８を用いて後述する。
【００８０】
ステップＳ７０１では、制御部１１４は、ステップＳ４０６で算出した最小差分値Ｄ（ｘ，ｙ）と所定値とを比較し、最小差分値Ｄ（ｘ，ｙ）が所定値より大きい場合はステップＳ４０９へ進み、そうでない場合はＳ４１０へ進む。
【００８１】
以降の処理は、図４の実施形態１と同一であるため省略する。
【００８２】
＜差分値算出処理＞次に、図８を参照して、図７のステップＳ７００における差分値算出処理について説明する。
【００８３】
ステップＳ８００では、制御部１１４は、処理方向ベクトルとΔｘ、Δｙを算出する。Δｘ、Δｙは、検出対象の第１のサブ画像ＳＩ（ｘ１，ｙ１）と、比較対象の第２のサブ画像ＳＩ（ｘ２，ｙ２）との位置データの差分を表し、それぞれ下記式５より算出される値である。
（式５）
Δｘ＝ｘ２−ｘ１
Δｙ＝ｙ２−ｙ１
処理方向ベクトルは、上記式１から算出される（ステップＳ５００）。
【００８４】
ステップＳ８０１では、制御部１１４は、ステップＳ４０２にて決定した比較対象のサブ画像群の中から１つ（ＳＩ（ｘ´，ｙ´））を選択する。
【００８５】
ステップＳ８０２では、制御部１１４は、ｔ´（ｘ´，ｙ´，Δｘ，Δｙ）の値が算出済みであるか否かを判定し、算出済みである場合はステップＳ８０３へ進み、そうでない場合はステップＳ８０４へ進む。ここで、ｔ´（ｘ´，ｙ´，Δｘ，Δｙ）は、サブ画像ＳＩ（ｘ´，ｙ´）と、サブ画像ＳＩ（ｘ´＋Δｘ，ｙ´＋Δｙ）とのずらし量を表す関数である。
【００８６】
ステップＳ８０３では、制御部１１４は、検出対象の第１のサブ画像と、比較対象の第２のサブ画像の間のずらし量ｔにｔ´（ｘ´，ｙ´，Δｘ，Δｙ）を加算する。
【００８７】
ステップＳ８０４では、制御部１１４は、全ての比較対象のサブ画像群に対してステップＳ８０２およびＳ８０３の処理を実行したか否か判定する。判定の結果、実行した場合はステップＳ８０５へ進み、そうでない場合はステップＳ８０１へ進み、新たに比較対象サブ画像を決定する。
【００８８】
ステップＳ８０５では、制御部１１４は、ステップＳ８０３にてｔ´を複数回加算した値の平均をずらし量ｔ１として取得する。
【００８９】
ステップＳ８０６では、制御部１１４は、ステップＳ８０５にて算出したずらし量ｔ１における検出対象の第１のサブ画像と比較対象の第２のサブ画像の重複領域の差分値ｄ（ｔ１）を算出する。重複領域の差分値ｄ（ｔ１）は上記式２から算出される。
【００９０】
ステップＳ８０７では、制御部１１４は、ステップ８０６にて算出した差分値ｄ（ｔ１）と所定値とを比較し、差分値ｄ（ｔ１）が所定値以下である場合はステップＳ８１１へ進み、そうでない場合はステップＳ８０８へ進む。
【００９１】
ステップＳ８０８では、制御部１１４は、ずらし量ｔ１の値を所定値ａだけ前後したずらし量（ｔ１±ａ）を算出する。
【００９２】
ステップＳ８０９では、制御部１１４は、ステップＳ８０８にて算出したずらし量ｔ１±ａにおける、第１のサブ画像と第２のサブ画像の重複領域の差分値ｄ（ｔ１±ａ）を算出する。重複領域の差分値ｄ（ｔ１±ａ）は、上記式２から算出される。
【００９３】
ステップＳ８１０では、制御部１１４は、ステップＳ８０９にて算出した差分値ｄ（ｔ１±ａ）と所定値とを比較し、差分値ｄ（ｔ１±ａ）が所定値以下である場合はステップＳ８１１へ進み、そうでない場合はステップＳ８１２へ進む。
【００９４】
ステップＳ８１１では、制御部１１４は、算出済みの差分値ｄ（ｔ１）の中から最小のものを選択し、戻り値として出力し、さらに、差分値ｄ（ｔ１）が最小になる場合のずらし量をｔ（ｘ１，ｙ１，Δｘ，Δｙ）としてメモリ１０８に格納し、本処理を終了する。
【００９５】
ステップＳ８１２では、制御部１１４は、戻り値として＋∞を出力し、本処理を終了する。
【００９６】
なお、ステップＳ８０２では、制御部１１４は、算出済みのずらし量ｔ´を参照することでずらし量ｔ１を推定しているが、参照できるずらし量ｔ´が存在しない場合は、図５の処理を用いて、ずらし量ｔを算出する必要がある。
【００９７】
また、ステップＳ８０８では、制御部１１４は、ずらし量ｔ１を前後に２回変化させて差分値ｄ（ｔ１±ａ）の算出を行ったが、２回に限定する必要はなく、３回以上変化させることにより、処理速度は多少犠牲になるが、精度の高いマッチングを行うことが可能となる。
【００９８】
上記実施形態によれば、マッチング演算処理の回数を削減し、高速に故障が発生しているサブ画像を検出することが可能となる。
【００９９】
［実施形態３］次に、図９を参照して、実施形態３について説明する。
【０１００】
実施形態１、２では、複数の撮像部１０７を持つ多眼カメラに適用した例を説明したが、本実施形態では、単一の撮像部を用いて異なる角度から被写体像を撮像して光線空間情報を取得することが可能な、いわゆるライトフィールドカメラに適用した場合を説明する。
【０１０１】
図９は、実施形態３の撮像装置の構成を示すブロック図であり、図１と同様の構成には同一の符号を付して示している。
【０１０２】
実施形態１、２の構成とは異なり、本実施形態のカメラ９００には撮像部１０７が１つだけ搭載されている。また、撮像素子１０５の前段には、マイクロレンズを二次元状に配列したマイクロレンズアレイ９１６が配置される。このようにマイクロレンズアレイ９１６の後段に撮像素子を配置することで、単一の撮像素子１０５による光線空間情報の取得が可能となる。
【０１０３】
その他の構成は、図１と同様であるため、説明を省略する。
【０１０４】
＜光線空間情報の取得方法＞次に、図１０を参照して、実施形態３による光線空間情報の取得方法について説明する。
【０１０５】
図１０（ａ）は、焦点１００１に光学系１０１の焦点距離が設定されている場合に、光学系１０１およびマイクロレンズアレイ９１６を通過した光線が撮像素子１００３Ｌ，１００３Ｒに結像される様子を例示している。
【０１０６】
図１０（ｂ）は、図（ａ）の状態で撮像された場合に、被写体１００２が撮像素子１００３Ｌ、１００３Ｒに結像される画像１００４Ｌ、１００４Ｒを例示している。
【０１０７】
本実施形態によれば、異なる角度から撮像された被写体１００２が、撮像素子１００３Ｌ、１００３Ｒにそれぞれ結像している。このように、マイクロレンズアレイ９１６を利用することで、単一の撮像素子を用いて異なる角度から被写体像を撮像することが可能となる。
【０１０８】
また、本実施形態では、マイクロレンズの形状や絞り値、光学系１０１の絞り値などに応じて、マイクロレンズを透過した光線が撮像素子に照射されない部分を表す不感帯１００５が撮像される。不感帯の下に存在する画素を不感画素と称する。
【０１０９】
＜差分値算出処理＞次に、図１１を参照して、実施形態３による差分値算出処理について説明する。
【０１１０】
なお、図１１において、図５と同様の処理には同じステップ番号を付しており、以下では、図５との相違点を中心に説明を行う。
【０１１１】
ステップＳ１１００では、制御部１１４は、不感画素を適用的に避けながら差分値ｄ（ｔ）を算出する。検出対象の第１のサブ画像をＳＩ（ｘ１，ｙ１）、比較対象の第２のサブ画像をＳＩ（ｘ２，ｙ２）とすると、Ｌ（ｘ１，ｙ１，ｕ，ｖ）、Ｌ（ｘ２，ｙ２，ｕ＋ｆ・ｔ，ｖ＋ｇ・ｔ）がそれぞれ不感画素であるかを判定し、どちらも不感画素でない画素に対して、下記式６により画素値を算出する。
（式６）
ｄ(ｔ)＝ａｖｇ（ΣΣ｜Ｌ（ｘ１，ｙ１，ｕ，ｖ）−Ｌ（ｘ２，ｙ２，ｕ＋ｆ・ｔ，ｖ＋ｇ・ｔ）｜）
また、ｆ・ｔやｇ・ｔが整数値でない場合は、Ｌ（ｘ２，ｙ２，ｕ＋ｆ・ｔ，ｖ＋ｇ・ｔ）の値として画素補間処理を用いた近似値を利用することも可能である。また、不感画素については、マイクロレンズの形状や絞り値、光学系１０１の絞り値から一意に決定することが可能である。
【０１１２】
ステップＳ１１０１では、制御部１１４は、検出対象の第１のサブ画像と比較対象の第２のサブ画像の重複領域のうち、不感画素を除く画素数を演算し、所定値と比較する。比較の結果、画素数が所定値以下である場合はステップＳ５０５へ進み、そうでない場合はステップＳ１１００へ進む。
【０１１３】
ステップＳ１１０２では、制御部１１４は、不感画素を考慮した差分値ｄ（ｔ）の算出を行う。差分値ｄ（ｔ）は上記式２から算出される。
【０１１４】
ステップＳ５０７は実施形態１と同一であるため省略する。
【０１１５】
ステップＳ１１０３では、制御部１１４は、重複領域のうち、不感画素を除く画素数を算出し、所定値と比較する。比較の結果、画素数が所定値以下である場合はステップＳ５０９へ進み、そうでない場合はステップＳ１１０２へ進む。
【０１１６】
また、図５のステップＳ５０３、Ｓ５０７では、制御部１１４は、それぞれ媒介変数に１を加算または減算していたが、特に１である必要はない。
【０１１７】
上記実施形態によれば、ライトフィールドカメラにおいて、故障サブ画像を検出することが可能となる。
【０１１８】
［他の実施形態］本発明は、以下の処理を実行することによっても実現される。即ち上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【０１１９】
１００…多眼カメラ、１０１…光学系、１０５…撮像素子、１０７…撮像部、１０８…メモリ、１０９…信号処理部、１１０…記録処理部、１１１…記録部、１１２…表示処理部、１１３…表示部、１１４…制御部、１１５…制御値取得部、１１６…操作部
【図１】
2016001852.tif 000003
【図２】
2016001852.tif 000004
【図３】
2016001852.tif 000005
【図４】
2016001852.tif 000006
【図５】
2016001852.tif 000007
【図６】
2016001852.tif 000008
【図７】
2016001852.tif 000009
【図８】
2016001852.tif 000010
【図９】
2016001852.tif 000011
【図１０】
2016001852.tif 000012
【図１１】
2016001852.tif 000013