JP5882789B2 - 画像処理装置、画像処理方法、及びプログラム - Google Patents

画像処理装置、画像処理方法、及びプログラム Download PDF

Info

Publication number
JP5882789B2
JP5882789B2 JP2012045627A JP2012045627A JP5882789B2 JP 5882789 B2 JP5882789 B2 JP 5882789B2 JP 2012045627 A JP2012045627 A JP 2012045627A JP 2012045627 A JP2012045627 A JP 2012045627A JP 5882789 B2 JP5882789 B2 JP 5882789B2
Authority
JP
Japan
Prior art keywords
image
calibration
image data
unit
lens array
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012045627A
Other languages
English (en)
Other versions
JP2013183278A (ja
JP2013183278A5 (ja
Inventor
堤 正平
正平 堤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2012045627A priority Critical patent/JP5882789B2/ja
Priority to EP13156808.1A priority patent/EP2635019B1/en
Priority to CN201310061171.0A priority patent/CN103297683B/zh
Priority to US13/778,355 priority patent/US8937662B2/en
Publication of JP2013183278A publication Critical patent/JP2013183278A/ja
Publication of JP2013183278A5 publication Critical patent/JP2013183278A5/ja
Application granted granted Critical
Publication of JP5882789B2 publication Critical patent/JP5882789B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/002Diagnosis, testing or measuring for television systems or their details for television cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/631Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/633Control of cameras or camera modules by using electronic viewfinders for displaying additional information relating to control or operation of the camera
    • H04N23/634Warning indications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/67Focus control based on electronic image sensor signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Studio Devices (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)
  • Automatic Focus Adjustment (AREA)

Description

本発明は、マイクロレンズアレイのキャリブレーションに関する。
これまで、カメラのピント調整を誤って撮像した場合は、ピント調整をやり直して再撮像する必要があった。また、奥行きの異なる複数の被写体に対してそれぞれにピントが合った画像を得たい場合には、被写体毎にピントを合わせた撮像を複数回行う必要があった。
近年、光学系に新たな光学素子を追加することで多視点からの画像を取得し、後で画像処理によってピント位置を調節すること(リフォーカス)が可能なライトフィールドフォトグラフィという技術が発展している。
この技術を用いれば、撮像後にピント調整を行えるため、撮像時のピント調整の失敗を画像処理で補うことができるという利点がある。さらに、画像処理方法を変えることで画像中の任意の被写体にピントを合わせた複数の画像を一枚の撮像画像から得る事ができ、撮像回数を減らす事ができるという利点もある。
ライトフィールドフォトグラフィでは、多視点の画像データから、空間中の複数の位置について、それぞれの位置を通過する光線の方向と強度(ライトフィールド、以下、「LF」という。)を計算する。そして、得られたLFの情報を用いて、仮想の光学系を通過して仮想のセンサに結像した場合の画像を計算する。このような仮想の光学系やセンサを適宜設定する事で、前述したリフォーカスも可能となる。LFを取得するための撮像装置としてはメインレンズの後ろにマイクロレンズアレイを置いたPlenoptic Camera(例えば、特許文献1)や、小型のカメラを並べたカメラアレイが知られている。いずれも被写体を異なる方向から撮像した多視点画像を一回の撮像で得る事ができる。ライトフィールドフォトグラフィとは、多視点の画像データから仮想の光学条件下での仮想センサの取得する画像を計算することと言い換えることもできる。なお、以下では、この仮想のセンサが取得する画像を計算する処理を「リフォーカス処理」と呼ぶこととする。リフォーカス処理としては、取得した多視点の画像データを仮想センサ上に射影変換し加算して平均化する方法が知られている(例えば、特許文献2)。
リフォーカス処理では、仮想センサ上の画素の値を、該画素の位置に対応する多視点画像の画素を用いて計算する。通常、仮想センサの1画素には、多視点画像の複数の画素が対応している。したがって、マイクロレンズアレイの取り付け位置が基準位置(設計値)からずれると、計算によって求められる仮想センサ上の画素が、本来の加算されるべき画素と異なってしまい、リフォーカス処理にて得られる画像の鮮鋭度が損なわれてしまう。このような問題を解決するため、マイクロレンズアレイにおけるマイクロレンズ間のシフト量を、取得される多視点の画像データから計算によって求める方法が提案されている(例えば、特許文献3)。具体的には、各マイクロレンズを介して得られるそれぞれの画像データについて相関演算を行い、マイクロレンズ間のシフト量を計算によって求める方法である。
特開2009−124213号公報 WO2008050904 特開2003−141529号公報
特許文献3で提案される手法では、各マイクロレンズを介して得られるそれぞれの画像データ間の相対的なシフト量を求めることができるものの、設計値からのマイクロレンズアレイ取り付け位置のずれを求めることはできない。したがって、所望の被写体距離において正確にリフォーカス処理された画像を提供することができない。
本発明に係る画像処理装置は、入射光量を調節する開口絞りと、複数のレンズを配置したレンズアレイと、前記レンズアレイを介して被写体の像を光電変換する撮像素子とを有する撮像装置によって得られたキャリブレーション画像データを取得する画像データ取得手段と、前記キャリブレーション画像データが前記レンズアレイのキャリブレーションに適しているかどうかを、前記キャリブレーション画像データに含まれる前記レンズアレイを介した前記被写体の像の少なくとも1つの形状に基づいて判定する判定手段と、前記キャリブレーション画像データがキャリブレーションに適している場合、前記キャリブレーション画像データを用いて、前記レンズアレイを介して前記被写体の像が形成された前記撮像素子上での領域の位置を取得する位置取得手段と、を備え、前記キャリブレーション画像データは、前記レンズアレイを介した被写体の像を含み、各像は前記複数のレンズのうちの1つに対応する、ことを特徴とする。
本発明によれば、マイクロレンズアレイ(便宜上、各レンズのサイズに関わらず「マイクロレンズアレイ」と呼ぶ。)における各マイクロレンズの位置の設計値からのずれを高精度に求めることができる。また、ずれがあった場合において、リフォーカス処理時にずれ量を考慮し、所望の合焦位置にてボケを抑制したリフォーカス画像を得ることができる。
実施例1に係る撮像装置の内部構成を示すブロック図である。 撮像部の内部構成を示す図である。 通常の撮像光学系の構成を示す図である。 撮像部の構成を通常の撮像光学系に対応させて示した図である。 (a)は、絞りを解放した状態で均一な被写体を撮像した場合の、センサに記録される被写体像を模式的に示す図である。(b)は、絞りを絞った状態で同じ被写体を撮像した場合の、センサに記録される被写体像を模式的に示す図である。 (a)〜(c)は、絞りを解放にした状態で均一な面光源を撮像した際のセンサ上での撮像画像を示す図である。 (a)〜(c)は、絞りを絞った状態で均一な面光源を撮像した際のセンサ上での撮像画像を示す図である。 実施例1に係る画像処理部の内部構成を示すブロック図である。 実施例1に係る撮像装置における、キャリブレーションの実行〜合成画像データの出力までの一連の処理の流れを示すフローチャートである。 キャリブレーション処理の流れを示すフローチャートである。 重心位置算出処理の流れを示すフローチャートである。 重心位置を算出する際の参照範囲を説明する図である。 ずれ算出処理の流れを示すフローチャートである。 各マイクロレンズに対応するセンサ上での像の重心位置と各マイクロレンズの実際の光学中心位置との関係を示す図である。 ずれ算出部が出力し得る情報の一例を示すテーブルである。 画像合成部の内部構成を示すブロック図である。 画像合成処理の流れを示すフローチャートである。 合成画像における画素位置の算出方法を説明する図である。 バッファに格納された中間データの一例である。 本発明に適用可能なその他の撮像部の構成の一例を示す図である。 実施例2に係る画像処理部の内部構成を示すブロック図である。 実施例2に係る撮像装置における、キャリブレーションの実行〜合成画像データの出力までの一連の処理の流れを示すフローチャートである。 画像解析部の内部構成を示すブロック図である。 画像解析処理の流れを示すフローチャートである。 重心境界間距離の概念を説明する図である。 像解析処理の流れを示すフローチャートである。 (a)は、絞りを解放の状態にして撮像した画像データから算出した変動量のヒストグラムを示す図である。(b)は、絞りを絞って撮像した画像データから算出した変動量のヒストグラムを示す図である。 実施例3に係る撮像装置における、キャリブレーションの実行〜任意のフォーカス位置における合成画像データの出力までの一連の処理の流れを示すフローチャートである。
[実施例1]
図1は、本実施例に係る撮像装置の内部構成を示すブロック図である。
撮像部100は、被写体の光情報を撮像素子で受光し、受光した信号をA/D変換して、カラー画像データ(デジタルデータ)を取得する。撮像部100の詳細については後述する。中央処理装置(CPU)101は、以下に述べる各部を統括的に制御する。RAM102は、CPU101の主メモリ、ワークエリア等として機能する。ROM103は、CPU101で実行される制御プログラム等を格納している。バス104は各種データの転送経路であり、例えば、撮像部100によって取得されたデジタル画像データはこのバス104を介して所定の処理部に送られる。ユーザの指示を受け取る操作部105には、ボタンやモードダイヤルなどが含まれる。撮像画像や文字の表示を行う表示部106には、例えば、液晶ディスプレイが用いられる。表示部106はタッチスクリーン機能を有していても良く、その場合はタッチスクリーンを用いたユーザ指示を操作部105の入力として扱うことも可能である。表示制御部107は、表示部106に表示される撮像画像や文字の表示制御を行う。撮像部制御部108は、フォーカスを合わせる、シャッターを開く・閉じる、開口絞りを調節するなどの、CPU101からの指示に基づいた撮像系の制御を行う。デジタル信号処理部109は、バス104を介して受け取ったデジタルデータに対し、ホワイトバランス処理、ガンマ処理、ノイズ低減処理などの各種処理を行う。エンコーダ部110は、デジタルデータをJPEGやMPEGなどのファイルフォーマットに変換する処理を行う。外部メモリ制御部111は、PCやその他のメディア(例えば、ハードディスク、メモリーカード、CFカード、SDカード、USBメモリ)に繋ぐためのインターフェースである。画像処理部112は、撮像部100で取得されたカラー画像データ或いは、デジタル信号処理部109から出力されるカラー画像データから、撮像部100に具備されるマイクロレンズアレイのキャリブレーション、並びにリフォーカス処理を行う。画像処理部112の詳細については後述する。
なお、撮像装置の構成要素は上記以外にも存在するが、本実施例の主眼ではないので、説明を省略する。
図2は、撮像部100の内部構成を示す図である。
撮像部100は、撮像レンズ201〜203、開口絞り(以下、単に「絞り」と呼ぶ。)204、シャッター205、マイクロレンズアレイ206、光学ローパスフィルタ207、iRカットフィルタ208、カラーフィルタ209、光電変換する撮像素子(以下、センサ)210及びA/D変換部211で構成される。撮像レンズ201〜203は夫々、ズームレンズ201、フォーカスレンズ202、ぶれ補正レンズ203である。絞りを調整することにより、撮像部100に入射される入射光量を調整することができる。なお、各レンズのサイズがマイクロメートル単位、あるいはミリメートル単位であっても、便宜上、各レンズのサイズに関わらず「マイクロレンズアレイ」と呼ぶことにする。
<リフォーカスの原理>
図3は、通常の撮像光学系の構成を示す図であり、ピントがずれてしまった状態を表している。なお、図3では、説明を簡単にするため、シャッター、光学ローパスフィルタ、iRカットフィルタ、カラーフィルタ、ズームレンズなどの構成については省略してある。また、レンズ構成についても、メインレンズ302でレンズ群を代表して表している。
物点301からの光はメインレンズ302で集光され、センサ304の一部領域305に到達している。メインレンズ302で集光された光が一点に結像する前にセンサ304に到達しているので、センサ304の一部領域305では物点301からの光が広がって記録され、先鋭性の低いぼけた画像になっている。鮮鋭性の高い画像を得たい場合には、ピント位置を調整し、物点301の像がセンサ304上の1点に結像されるようにして再度撮像を行う必要がある。
図4は、図2で示した撮像部100の構成を図3で示した通常の撮像光学系に対応させて示した図である。図4では、図2のマイクロレンズアレイ206に対応するマイクロレンズアレイ405が追加され、センサ404の位置がメインレンズ402により近い位置に変更されている。図4において、物点401から放たれた光はメインレンズ402により集光された後、結像する前にマイクロレンズアレイ405を通過して、センサ404により記録される。この時、物点401から放たれた光は、センサ404上の複数の画素位置において、光線の強度に応じた値として記録される。つまり、1つのマイクロレンズにより生成されるセンサ上(撮像素子上)の光学像は、物点401を異なる方向から観察した画像となるため、センサ404では多視点の画像が一枚の画像として記録されることになる。
リフォーカス処理では、この光線群を延長し、仮想センサ位置における光強度の計算を通して、仮想センサに記録される画像(リフォーカス画像)を演算により求めることができる。いま、仮想センサA(409)の位置で記録される画像を計算すると、物点401のからの光は広がり、ぼけた画像が得られる。一方、仮想センサB(410)の位置で記録される画像を計算すると、物点401からの光は一点に集まり、ピントが合った画像が得られる。このように、仮想センサの位置を調整し、該仮想センサ位置で記録される画像を計算によって取得する処理が、通常の光学系でピント位置を調整する行為に相当する。なお、図4に示されるように、より多くの異なる方向から物点401を観察した画像を得るためには、撮像部に具備される絞り403は、できるだけ開口を開いた状態である方が好ましい。以上が、撮像後にピント位置調整した画像を計算により得るリフォーカス処理の原理である。
図5の(a)は、図4において絞り403を解放した状態で均一な被写体501を撮像した場合の、センサ404に記録される被写体像502を模式的に示す図である。ここで、絞り403の形状は円形であるとする。被写体501のような均一な被写体を撮像する場合、ケラレの影響がない状態においては、センサ404上での像の形状は、絞り403の形状と略同一、すなわち円形となる。図5の(a)におけるマイクロレンズアレイ405を通して得られるセンサ404上での像502を見ると、その上下端部の形状は、メインレンズ402のケラレにより、中央付近の像の形状と比べて、円形から大きく変化する。
一方、図5の(b)は、図4において絞り403を絞った状態で同じ被写体501を撮像した場合の、センサ404に記録される被写体像503を模式的に示す図である。絞り403を絞ることにより、メインレンズ402のケラレの影響が抑制され、マイクロレンズアレイ405を通して得られるセンサ404上での像503の形状は、どの位置においても略均一な円形となる。
図6の(a)〜(c)は、絞り403を解放にした状態(例えば、Fナンバー2.8)で均一な面光源を撮像した際のセンサ404上での撮像画像を示している。同図の(a)は撮像画像の全体を表し、(b)はその上左端部の拡大図、(c)はその中央部の拡大図である。上左端部拡大図では、レンズのケラレにより、各マイクロレンズを通した像が楕円状に変形している。これに対し、中央部拡大図では、レンズのケラレの影響が少ないため、各マイクロレンズを通した像が変形することなく、真円に近い形を維持している。このように、絞りを解放した状態で撮像すると、センサ上での像の形状に空間的な不均一が発生する。しかしながら、図4で説明したように、より多くの異なる視点から観察した被写体像を得るためには、絞りを解放した状態で被写体を撮像する方が好ましい。
図7の(a)〜(c)は、絞り403を絞った状態(例えば、Fナンバー11)で均一な面光源を撮像した際のセンサ404上での撮像画像を示している。同図の(a)は撮像画像の全体を表し、(b)はその上左端部の拡大図、(c)はその中央部の拡大図である。図6と異なり、どの部分でもレンズのケラレの影響が少ないため、上左端部の拡大図(b)においても各マイクロレンズを通した像は変形することなく円形を維持している。
後述するマイクロレンズアレイのキャリブレーションは、絞りを絞った状態で撮像すると、各マイクロレンズアレイを通して得られるセンサ上での像の形状がこのように略同一となる特性を利用して実行される。
<画像処理部112の説明>
図8は、画像処理部112の内部構成を示したブロック図である。
画像処理部112は主に、キャリブレーション部803と、メモリ部808と、画像合成部809から構成される。キャリブレーション部803は、撮像部100のマイクロレンズアレイ206における各マイクロレンズの光学中心位置を算出する。メモリ部808は、キャリブレーション部803の結果を格納する。画像合成部809は、キャリブレーション結果に基づいて画像を合成する。
撮像モード判定部801は、ユーザからの指示が、マイクロレンズアレイのキャリブレーションであるか否か、本撮像であるか否か、を判定する。
802は画像取得部(撮像画像データ取得部)であり、撮像部100からバス104を経由して供給されるカラー画像データを取得する。
キャリブレーションパラメータ取得部804は、キャリブレーションに必要となる各種パラメータを取得する。具体的には、マイクロレンズアレイ206に配置されるマイクロレンズの縦横方向の個数、設計値から得られるセンサ上での各マイクロレンズの光学中心の位置とマイクロレンズを介した時のセンサ上での像の重心位置を取得する。
805は二値画像変換部であり、カラー画像データを二値画像データに変換する。
重心位置算出部806は、キャリブレーションパラメータ取得部804から供給されるパラメータと二値画像変換部805から供給される二値画像データを入力し、各マイクロレンズを通したセンサ上でのそれぞれの像の重心位置を算出する。
ずれ算出部807は、マイクロレンズアレイ206における各マイクロレンズの位置の設計値からのずれ或いは当該ずれを反映した各マイクロレンズの実際の光学中心位置等、画像合成処理で正確なリフォーカス処理を行うための情報を算出する。
合成パラメータ取得部810は、画像合成部809で必要となる撮像部100の光学データ等を取得する。
画像合成部809では、任意のフォーカス位置における合成画像データを生成する。
なお、本実施例に係る画像処理部112の全部又は一部は、独立した画像処理装置として成立し得るものであり、適宜、撮像装置本体やPC等に組み込まれることにより実施可能なものである。
図9は、本実施例に係る撮像装置における、キャリブレーションの実行〜合成画像データの出力までの一連の処理の流れを示すフローチャートである。なお、この一連の処理は、以下に示す手順を記述したコンピュータ実行可能なプログラムをROM103からRAM102上に読み込んだ後、CPU101によって該プログラムを実行することによって実施される。
ステップ901において、撮像モード判定部801は、操作部105から供給される撮像モードに関するユーザ指示が、キャリブレーションの指示か否かを判定する。キャリブレーションの指示であればステップ902に進む。一方、キャリブレーションの指示でなければステップ907に進む。
ステップ902において、撮像部制御部108は、メインレンズ402の絞りを絞る。具体的には、本撮像時における絞り値(Fナンバー)よりも相対的に大きい値(例えば、F11)となるようにメインレンズ402の絞りを調整する。
ステップ903において、撮像部100は、マイクロレンズアレイ405のキャリブレーションに使用する被写体像を撮像する。キャリブレーションに使用する被写体像としては、キャリブレーションの精度を高めるため、比較的均一な輝度分布を持つ明るい被写体が好ましい。
ステップ904において、デジタル信号処理部109は、キャリブレーション用に撮像された画像データ(キャリブレーション画像データ)を出力する。
ステップ905において、キャリブレーション部803は、マイクロレンズアレイ405のキャリブレーションを実行する。キャリブレーション処理の詳細については後述する。
ステップ906において、メモリ部808は、キャリブレーション部803から供給されるキャリブレーションの結果を保持する。
ステップ907において、撮像モード判定部801は、操作部105から供給される撮像モードに関するユーザ指示が、本撮像の指示か否かを判定する。本撮像の指示であればステップ908に進む。一方、本撮像の指示でなければステップ901に戻る。
ステップ908において、撮像部制御部108は、メインレンズ402の絞りを任意の値に設定する。具体的には、キャリブレーション時の絞り値(Fナンバー)よりも相対的に小さい値(例えば、F2.8)となるようにメインレンズ402の絞りが調整される。
ステップ909において、撮像部100は、本撮像の被写体像を撮像する。
ステップ910において、デジタル信号処理部109は、本撮像用に撮像された画像データを出力する。
ステップ911において、画像合成部809は、任意のフォーカス位置における画像合成処理を実施する。画像合成処理の詳細については後述する。
<キャリブレーション処理>
次に、ステップ905におけるキャリブレーション処理の詳細について説明する。
図10は、キャリブレーション部803における処理の流れを示すフローチャートである。
ステップ1001において、キャリブレーション部803は、画像取得部802からキャリブレーション画像データを受け取る。ここで受け取るキャリブレーション画像データは、絞りを絞った状態で撮像されたカラーの画像データである(図7を参照。)。
ステップ1002において、二値画像変換部805は、カラー画像データを二値画像データI(x,y)に変換する。ここで、(x,y)はセンサ上における画素位置を示す座標である。二値画像変換部805は、カラー画像データにおける画素値と予め規定される閾値とを比較し、白色で表される画素位置の画素値を1、黒色で表される画素位置の画素値を0となるように、二値画像データI(x,y)に変換する。例えば、カラー画像からモノクロ画像に変換した後、モノクロ画像の画素値の中央値を閾値に設定して、二値画像に変換する。
ステップ1003において、キャリブレーションパラメータ取得部804は、マイクロレンズアレイのキャリブレーションに必要となる、各種パラメータを取得する。具体的には、センサ画素数、マイクロレンズの縦横方向の個数、設計値から得られる各マイクロレンズに対応するセンサ上での像の重心位置、設計値から得られる各マイクロレンズの光学中心位置などの情報を取得する。なお、マイクロレンズアレイは、横方向にM個、縦方向にN個(M、Nは自然数)のマイクロレンズが並んだ構成であるものとする。
ステップ1004において、重心位置算出部806は、各マイクロレンズを介したセンサ上における像の重心位置を、ステップ1002で得た二値画像データから算出する。重心位置算出処理の詳細については後述する。
ステップ1005において、ずれ算出部807は、各マイクロレンズの位置の設計値からのずれ(或いはそれと等価の情報)を算出する。ずれ算出処理の詳細については後述する。
<重心位置算出処理>
次に、ステップ1004における重心位置算出処理の詳細について説明する。
図11は、重心位置算出部806における処理の流れを示すフローチャートである。
ステップ1101において、重心位置算出部806は、処理対象となる着目マイクロレンズ(m,n)を設定する。ここで、(m,n)はマイクロレンズの位置を示す座標を表しており、mは横方向の座標位置、nは縦方向の座標位置を表している。なお、(m,n)は、m=0,1,・・・,M−1、n=0,1,・・・,N−1の値を持つ整数値であり、Mは横方向のマイクロレンズの個数、Nは縦方向のマイクロレンズの個数である。処理開始時には、初期値として(m,n)=(0,0)に設定される。
ステップ1102において、重心位置算出部806は、重心位置を算出する際の参照範囲を設定する。具体的には、以下の式(1)〜式(4)を満たすような参照範囲が設定される。
Lx(m)≦x<Lx(m+1) ・・・式(1)
Ly(n)≦y<Ly(n+1) ・・・式(2)
Lx(m)=(Sx/M)×m+a ・・・式(3)
Ly(n)=(Sy/N)×n+b ・・・式(4)
ここで、(x,y)はセンサ上における画素位置、Sxはセンサの横画素数、Syはセンサの縦画素数、a,bはオフセット値である。図12は、本ステップで設定される参照範囲を説明する図である。同図において、左上端部が着目マイクロレンズ(m,n)を示しており、オフセット値a、bの値を好適に設定することで、着目マイクロレンズのセンサ上での像が含まれるように参照範囲が設定される。
図11のフローチャートの説明に戻る。
ステップ1102にて重心位置を算出する際の参照範囲が設定されると、ステップ1103において、重心位置算出部806は、着目マイクロレンズ(m,n)に対応するセンサ上での像の重心位置(Cx(m,n),Cy(m,n))を求める。具体的には、以下の式(5)〜式(7)を使用して重心位置を算出する。
Figure 0005882789
Figure 0005882789
Figure 0005882789
ここで、I(x,y)は、二値画像変換部805で変換された二値画像データであり、マイクロレンズに対応するセンサ上での像に相当する画素には1の値が入力され、その他の画素位置には0の値が入力されている。Sは参照範囲に含まれる画像データI(x,y)のうち、画素値が1となる画素の個数を表している。
ステップ1104において、重心位置算出部806は、全てのマイクロレンズについてセンサ上での像の重心位置の算出処理が完了したか否かを判定する。未処理のマイクロレンズがある場合にはステップ1101に戻って次の着目マイクロレンズ(m,n)を設定し、ステップ1102からステップ1104までの処理を繰り返す。一方、全てのマイクロレンズについてセンサ上での像の重心位置の算出処理が完了したと判定した場合には、ステップ1105に進む。
ステップ1105において、重心位置算出部806は、撮像画像データ(二値画像データ)から得た各マイクロレンズに対応するセンサ上での像の重心位置(Cx(m,n),Cy(m,n))を出力する。
<ずれ算出処理>
次に、ステップ1005におけるずれ算出処理の詳細について説明する。なお、ここでは、各マイクロレンズの位置の設計値からのずれ量を算出し、さらに当該ずれ量を反映した各マイクロレンズの実際の光学中心位置を算出して出力する場合の処理について説明するものとする。
図13は、ずれ算出部807における処理の流れを示すフローチャートである。
ステップ1301において、ずれ算出部807は、撮像画像データ及び設計値にそれぞれ基づくセンサ上での像の重心位置、設計値に基づく各マイクロレンズの光学中心位置を取得する。撮像画像データに基づくセンサ上での像の重心位置(Cx(m,n),Cy(m,n))は、重心位置算出部806から取得する。設計値に基づくセンサ上での像の重心位置(Cx_s(m,n),Cy_s(m,n))及び設計値に基づく各マイクロレンズの光学中心位置(Ox_s(m,n),Oy_s(m,n))は、キャリブレーションパラメータ取得部804から取得する。
ステップ1302において、ずれ算出部807は、処理対象となる着目マイクロレンズ(m,n)を設定する。処理開始時には、初期値として(m,n)=(0,0)に設定される。
ステップ1303において、ずれ算出部807は、撮像画像データから算出したセンサ上での像の重心位置(Cx(m,n),Cy(m,n))と、設計値から得られるセンサ上での像の重心位置(Cx_s(m,n),Cy_s(m,n))とのずれを求める。具体的には、以下の式(8)と式(9)とから、両重心位置間のずれ量(Sx(m,n),Sy(m,n))を算出する。
Sx(m,n)=Cx(m,n)−Cx_s(m,n) ・・・式(8)
Sy(m,n)=Cy(m,n)−Cy_s(m,n) ・・・式(9)
ステップ1304において、ずれ算出部807は、算出されたずれ量(Sx(m,n),Sy(m,n))と、設計値に基づく光学中心位置(Ox_s(m,n),Oy_s(m,n))とから、着目マイクロレンズの実際の光学中心位置を求める。具体的には、以下の式(10)と式(11)とから、マイクロレンズの実際の光学中心位置(Ox(m,n),Oy(m,n))を算出する。
Ox(m,n)=Ox_s(m,n)+Sx(m,n) ・・・式(10)
Oy(m,n)=Oy_s(m,n)+Sy(m,n) ・・・式(11)
なお、本実施例では、各マイクロレンズに対応するセンサ上での像の重心位置のずれ量を求め、求められたずれ量を基に各マイクロレンズの実際の光学中心位置を算出しているが、その理由は以下のとおりである。
図14は、各マイクロレンズに対応するセンサ上での像の重心位置と各マイクロレンズの実際の光学中心位置との関係を示す図である。同図から明らかなように、本実施例においてマイクロレンズアレイ405を通して得られるセンサ404上での像1404〜1406は、ほぼ真円の形に形成される。この場合において、マイクロレンズアレイ405の中央付近に配置されるマイクロレンズ1402への入射光は正面方向から平行に入射される。そのため、センサ404上における像1405の重心位置1408は、マイクロレンズの光学中心位置1411と一致する。しかしながら、マイクロレンズアレイ405の端部に配置されるマイクロレンズ1401や1403への入射光は斜め方向から入射される。そのため、センサ404上での像1404の重心位置1407(像1406の重心位置1409)は、マイクロレンズの光学中心位置1410(光学中心位置1412)と一致しない。このように、センサ404上で形成される像の重心位置からマイクロレンズの実際の光学中心位置を求めることは、特にマイクロレンズアレイ405の端部で難しいことが分かる。そこで、本実施例では、撮像画像データから算出される各マイクロレンズに対応するセンサ上での像の重心位置と設計値から得られるセンサ上での像の重心位置とのずれ量を求めることで、各マイクロレンズの実際の光学中心位置を得ている。
図13のフローチャートの説明に戻る。
ステップ1305において、ずれ算出部807は、全てのマイクロレンズについてマイクロレンズの実際の光学中心位置の算出が完了したか否かを判定する。未処理のマイクロレンズがある場合にはステップ1302に戻って次の着目マイクロレンズ(m,n)を設定し、ステップ1302〜ステップ1304の処理を繰り返す。一方、全てのマイクロレンズについてマイクロレンズの実際の光学中心位置の算出が完了したと判定した場合には、ステップ1306に進む。
ステップ1306において、ずれ算出部807は、算出された各マイクロレンズの実際の光学中心位置を出力する。なお、ここではセンサ上の像の重心位置のずれ量から求めた各マイクロレンズの実際の光学中心位置のみを出力するものとしたが、これに限るものではない。要は、後述の画像合成処理において、各マイクロレンズの位置の設計値からのずれが反映できればよいのであり、そのために必要な情報が出力される。図15は、本ステップで出力され得る情報の一例を示すテーブルである。ここでは、撮像画像データに基づくセンサ上での像の重心位置、設計値に基づくセンサ上での像の重心位置、設計値に基づくマイクロレンズの光学中心位置、センサ上での像の重心位置のずれ量、マイクロレンズの実際の光学中心位置の各情報が示されている。例えば、本実施例では、設計値に基づくマイクロレンズの光学中心位置の情報を、予めRAM102等に記憶したものを画像合成処理中(後述のステップ1701)で読み出して取得している。これを、実際の光学中心位置の情報と共に設計値に基づくマイクロレンズの光学中心位置の情報も本ステップで出力するようにして、画像合成処理中での設計値に基づくマイクロレンズの光学中心位置の取得を省いてもよい。このように、ずれ算出処理における出力の内容は、後続の処理内容を考慮した上で決定される。
<画像合成処理>
次に、ステップ911における画像合成処理の詳細について説明する。
図16は、画像合成部809の内部構成を示す図である。
画像合成部809は、画素位置算出部1601、色導出部1602および画素値算出部1603とからなり、さらに画素値算出部1603は、バッファ1604と画素値合成部1605とで構成される。画像合成部809では、これら各部によって、画像取得部802から送られてくるデジタル値の入力画像データ(多視点画像データ)から合成画像における画素値の算出を行い、算出が完了した画素値から順に出力する処理を行う。以下、詳しく説明する。
図17は、画像合成処理の流れを示すフローチャートである。なお、説明を簡単にするため、画像取得部802から供給されるデジタル値の入力画像データが1次元であるものとして説明する。
ステップ1701において、画像合成部809は、入力画像データにおける所定の画素の画素値と画素位置、さらに画像合成に必要となる光学パラメータおよび合成パラメータを取得する。ここで、光学パラメータとは、撮像時における物理的に定まった各種のパラメータであって、例えば、設計値から得られるマイクロレンズの光学中心位置や、σrealなどの値を指す。これらの情報は、予めRAM102等に保持されているものを読み出すことで取得される。また、合成パラメータとは、画像処理に関わる適宜設定変更が可能な各種のパラメータであって、例えば、任意のフォーカス位置に相当するσvirtualなどの値を指す。これらの情報は、例えば操作部105を介した任意のフォーカス位置を指定するユーザからの入力操作に基づいて取得される。
ステップ1702おいて、画素位置算出部1601は、入力画像データにおける所定の画素の合成画像における画素位置を算出する。図18は、その算出方法を説明する図である。ここで、センサ1801上のセンサ画素領域1803に対応する画素が画像合成部809に入力されたと仮定する。この場合、画素位置算出部1601は、センサ画素領域1803に対応する、仮想センサ1802上の投影領域1806を計算することになる。なお、図18において、Ox(m,n)はマイクロレンズ1804の光学中心の位置を示しており、(m,n)はマイクロレンズの座標位置を示す。xは入力画素の位置(この図では、センサ画素領域1803の中心)を表す。X1及びX2は計算によって求められる仮想センサ1802上の位置であって、算出されたX1とX2との間の領域が投影領域1806となる。本実施例に係る発明では、Ox(m,n)として、設計値ではなく、上述のずれ算出処理で算出された実際の光学中心位置が用いられることになる。すなわち、図18に示す通り、センサ画素領域1803を、算出されたマイクロレンズ1804の実際の光学中心位置を基準として仮想センサ1802に投影した投影領域1806が、入力画像データの画素の合成画像における位置となる。そして、σrealはセンサ1801と各マイクロレンズとの距離であり、σvirtualは各マイクロレンズと仮想センサ1802との距離である。図18から明らかなように、投影領域1806はセンサ画素領域1803に対して拡大されており、その拡大率はσvirtual/σreal倍である。なお、σvirtualは、ユーザによって指定された任意のフォーカス位置に応じて予め設定される。例えば、予め光学シミュレーションによって、任意のフォーカス位置と、当該フォーカス位置の被写体が鮮明に結像するような仮想センサの位置との対応関係を求めてROM103等に保持しておき、これを画像合成部809が適宜参照することにより設定される。投影領域1806を画定するX1及びX2の位置の算出は、以下の式(12)及び式(13)に従ってなされる。
X1=Ox(m,n)+(σvirtual/σreal)(x+s/2−Ox(m,n))
・・・式(12)
X2=Ox(m,n)+(σvirtual/σreal)(x−s/2−Ox(m,n))
・・・式(13)
上記式(12)及び式(13)において、sはセンサ画素領域1803のサイズである。算出されたX1及びX2の情報は画素値算出部1603に送られる。
このようにして、マイクロレンズの実際の光学中心の位置を考慮して、入力画像データの各画素の画素位置と、任意のフォーカス位置に応じた合成画像の画素位置とが対応付けられる。図17のフローチャートの説明に戻る。
ステップ1703において、色導出部1602は、入力画像データの各画素の色を導出する。色の種別としてはカラーフィルタアレイのフィルタ分光感度に応じてRGBや、赤外+RGB、CMYなどがある。ここでは、RGBの三色の場合を考える。色導出部1602は、入力画素位置と色の対応を示すテーブルを参照して、入力画素の色を導出する。入力画素位置と色の対応を示すテーブルは、例えば、解像度が600万画素の場合、縦2000pxl×横3000pxlのテーブルであり、ROM103等に保持しておけばよい。さらに、撮像部100が、ベイヤー配列のカラーフィルタアレイを具備するなど、入力画素位置と色の関係が数式的に明らかな場合は、入力画素位置から所定の演算により色を求めても良い。導出された色の情報は画素値算出部1603に出力される。
ステップ1704において、画素値算出部1603は、バッファ1604内のデータ(中間データ)を更新する。具体的には、算出された合成画像における画素位置と導出された色に対応する、入力画像データにおける画素値をバッファ1604に格納する。図19は、バッファ1604に格納された中間データの一例を示している。図19において、インデックス1901〜1903には、それぞれ1又は複数の画素値が保持されている。本ステップでは、画素位置算出部1601から受け取った合成画像における画素位置と色導出部1602から受け取った色の情報に従って入力画素値が追加・格納され、中間データが更新される。なお、図19の例では、合成画像における画素位置が整数で表記されているが、上記式(12)、(13)で算出されるX1、X2は一般に非整数となる。そこで、合成画像における画素位置を特定するための数値として非整数を許容し、小数部分を重みとして合成画像の画素値の計算に用いてもよい。例えば、合成画像における画素位置を示す座標(10,10.4)に対して画素値20、同じく座標(10,10.1)に対して画素値10が割り当てられている場合を考える。この場合、合成画像における画素位置を示す座標(10,10)には、(0.1*20+0.4*10)/(0.1+0.4)といった重み付けの計算により画素値12を割り当てる、といった具合である。
ステップ1705において、画素値算出部1603は、所定のインデックスについて中間データの更新が完了したかどうか、すなわち、いずれかのインデックスに画素値がすべて揃ったかどうかを判定する。例えば、図19のインデックス1901(座標(10,10)の画素位置で、かつ、色がRの部分)において2つの画素値(24及び26)が格納されると、中間データの更新が完了と判定される。この判定は、例えば、格納されるはずの画素値の数をインデックス毎に予め計算しておき、格納された画素値の数がその数に達したかどうかにより行うことができる。
ここで、インデックス毎の格納されるはずの画素値の数は、以下のようにして予め求めておく。まず、全ての画素値が1となるようなダミーの撮像画像を用意し、これを入力画像データとしてステップ1702〜ステップ1704の処理を行う。そして、全ての画素について処理を行った後、格納された画素値の数をインデックス毎にカウントすれば良い。このような判定処理により、いずれかのインデックスについて追加されるはずの画素値がすべて揃ったと判定された場合にはステップ1707に進む。一方、いずれのインデックスについても画素値が揃っていないと判定された場合にはステップ1702に戻り、次の画素についてステップ1701〜ステップ1704の処理を繰り返す。
ステップ1706において、画素値合成部1605は、更新が完了したインデックスの中間データ(多視点画像の画素値)をバッファ1604から取得し、これらの平均値を算出して合成画像の画素値として出力する。例えば、図19のインデックス1901の更新が完了した場合であれば、まず、合成に用いられる画素値の数として“2”、合成に用いられる多視点画像の画素値として“24”と“26”が取得される。そして、合成に用いられる多視点画像の画素値の総和“24+26”を合成に用いられる画素値の数“2”で除算して得られた平均値“25”が算出される。そして、算出された平均値“25”が、座標(10,10)、色:Rに対応する合成画像の画素値として出力される。
ステップ1707において、画像合成部809は、入力画像データのすべての画素に対して、上述の処理が完了したかどうかを判定する。未処理の入力画素がなければ本処理を終える。一方、未処理の入力画素があればステップ1702に戻り、ステップ1702〜ステップ1707を繰り返す。
以上の処理により、各マイクロレンズの実際の光学中心位置を考慮し、任意のフォーカス位置における合成画像の画素値が順次計算される。
なお、本実施例では、マイクロレンズアレイを、メインレンズの結像位置に配置していたが(前述の図5を参照)、マイクロレンズアレイの配置位置はメインレンズの結像位置に限定されない。例えば、図20に示されるように、メインレンズの結像位置に形成される空中像を観察するように、結像位置から離れたセンサに近い位置にマイクロレンズアレイを配置しても構わない。また、図20の例とは逆に、メインレンズの結像位置よりもメインレンズに近い側に配置しても良い。本実施例に係る発明では、絞りとセンサとの間にマイクロレンズアレイが配置される構成である限りにおいて、いかなる構成でも良い。
以上説明したように、本実施例に係る発明によれば、マイクロレンズアレイにおける各マイクロレンズの位置の設計値からのずれを考慮したリフォーカス処理となるため、より鮮鋭なリフォーカス画像を提供することができる。
[実施例2]
実施例1では、マイクロレンズアレイのキャリブレーション時に選択されるメインレンズの絞り値(Fナンバー)は、本撮像時のメインレンズの絞り値よりも相対的に大きい値(絞りを絞った状態)に設定する様態であった。次に、キャリブレーション時に撮像される画像データを解析し、好適なメインレンズの絞り値を選択した上で、マイクロレンズアレイのキャリブレーションを行う態様について、実施例2として説明する。なお、実施例1と共通する部分については説明を簡略化ないしは省略し、ここでは差異点を中心に説明することとする。
<画像処理部の構成図>
図21は、本実施例における画像処理部112の内部構成を示したブロック図である。図8で説明した実施例1の画像処理部112に対して、画像解析部2101が追加されている。画像解析部2101は、画像取得部802から供給されるキャリブレーション用に撮像された画像データを解析し、メインレンズの絞り値が好適な設定か否かを判定する。その他の処理部については、基本的に図8と同様であるため説明を省略する。
図22は、本実施例に係る撮像装置での、キャリブレーションの実行〜任意のフォーカス位置における合成画像データの出力までの一連の処理の流れを示すフローチャートである。なお、この一連の処理は、実施例1の図9のフローチャート同様、以下に示す手順を記述したコンピュータ実行可能なプログラムをROM103からRAM102上に読み込んだ後、CPU101によって該プログラムを実行することによって実施される。
ステップ2201において、撮像部制御部108は、メインレンズの絞りを開放した状態に設定する。例えば、メインレンズ解放時のFナンバーがF2.8の場合には、F2.8となるように絞りを設定する。
ステップ2202において、撮像モード判定部801は、操作部105から供給される撮像モードの指示が、キャリブレーション指示か否かを判定する。撮像モードの指示がキャリブレーション指示であればステップ2203に進む。一方、ステップ2202において、撮像モードの指示がキャリブレーション指示でなければステップ2209に進む。ステップ2203〜2204は、実施例1に係る図9のフローチャートのステップ903〜904と同様であり、キャリブレーション用の被写体像を撮像したキャリブレーション画像データが取得される。
ステップ2205において、画像解析部2101は、画像取得部802から入力されるキャリブレーション画像データを解析する。解析処理の詳細については後述する。
ステップ2206において、画像解析部2101は、入力された画像データの画像がキャリブレーション可能な画像か否かを判定する。キャリブレーション可能な画像であると判定した場合には、ステップ2208に進む。一方、入力された画像データの画像がキャリブレーション可能な画像ではないと判定した場合には、ステップ2207に進む。
ステップ2207において、メインレンズの絞りの設定を変更する。具体的には、メインレンズの絞りを例えば一段絞る。仮に、ステップ2201でメインレンズのFナンバーをF2.8に設定していた場合には、Fナンバーを一段大きな値(例えばF4)に変更する。メインレンズの絞りの設定変更を終えると、ステップ2203に戻り、変更された絞り値の下で、キャリブレーション用の被写体像が撮像される。以上の処理が、キャリブレーション可能な画像データが得られるまで繰り返される。
ステップ2208において、キャリブレーション部803は、マイクロレンズアレイのキャリブレーション処理を実行する。
ステップ2208〜ステップ2214までの処理は、実施例1に係る図9のフローチャートのステップ905〜911と同様であるため説明を省略する。ただし、ステップ2210で撮像モードの指示が本撮像の指示でないと判定された場合の行き先は、実施例1と異なる。つまり、撮像モードの指示がキャリブレーション指示か否かの判定処理(ステップ2202)に戻るのではなく、メインレンズの絞りを開放した状態に設定する処理(ステップ2201)に戻ることになる。
なお、ステップ2201では、メインレンズのFナンバーを解放時の値であるF2.8に設定したが、ユーザが任意のFナンバーに設定してよい。また、ステップ2207では、メインレンズの絞りを一段絞ったがその他の段数分(例えば、二段や三段)変更してもよいし、或いは所望の絞り値を操作部105を介したユーザ入力に基づいて設定するようにしてもよい。
<画像解析部2101の説明>
図23は、画像処理部2101の内部構成を示したブロック図である。
パラメータ取得部2301は、画像解析に必要となるセンサ画素数、マイクロレンズの縦横方向の個数などの情報を取得する。
二値画像変換部2302、重心位置算出部2303は、図8のキャリブレーション部803に含まれる二値画像変換部805、重心位置算出部806と同様である。なお、画像解析部2101内に二値画像変換部805と重心位置算出部806を持つため、本実施例におけるキャリブレーション部803内には、二値画像変換部805と重心位置算出部806は不要となる。
解析部2304は、二値画像変換部2302から供給される二値画像データと、重心位置算出部2303から供給される各マイクロレンズを介してセンサ上に記録される像の重心位置とを用いて、キャリブレーションの適否を解析する。
判定部2305は、解析部2304の解析結果に基づいて、マイクロレンズアレイのキャリブレーション処理を実行するのか、メインレンズの絞りを変更してキャリブレーション用の画像を再撮像するのかを判定する。
図24は、画像解析部2101における画像解析処理の流れを示すフローチャートである。
ステップ2401において、画像解析部2101は、画像取得部802から供給されるキャリブレーション画像データを受け取る。ここで受け取るキャリブレーション画像データはカラーの画像データである。
ステップ2402において、二値画像変換部2302は、カラー画像データを二値画像データI(x,y)に変換する。(x,y)はセンサ上における画素位置である。
ステップ2403において、パラメータ取得部2301は、画像解析に必要となるセンサ画素数、マイクロレンズの縦横方向の個数の情報を取得する。
ステップ2404において、重心位置算出部2303は、二値画像変換部2302から供給される二値画像データから、各マイクロレンズを介してセンサ上に記録される像の重心位置を算出する。重心位置の算出方法は実施例1で説明した内容(図11のフローチャートを参照)と同様であるため説明を省略する。
ステップ2405において、解析部2304は、各マイクロレンズを介したセンサ上における像を解析する。ここでは、各マイクロレンズを介したセンサ上における像の重心位置と当該像の境界部に隣接する画素(境界画素)との距離(以下、「重心境界間距離」と呼ぶ)を求め、その変動量に基づくヒストグラムによって解析する手法について説明する。図25は、重心境界間距離の概念を説明する図であり、重心位置から角度θi方向に向かって、像の境界画素を探索する過程が示されている。ここで、d(m,n,θi)は、マイクロレンズ(m,n)に対して、角度θiについて求めた重心境界間距離である。iは着目している角度を表すインデックスである。本実施例では、全周360°を15°刻みで重心境界間距離d(m,n,θi)を求める。
図26は、像解析処理の流れを示すフローチャートである。
ステップ2601において、解析部2304は、二値画像変換部2302から供給される二値画像データを受け取る。
ステップ2602において、解析部2304は、重心位置算出部2303が算出した各マイクロレンズ(m,n)に対応するセンサ上での像の重心位置(Cx(m,n),Cy(m,n))を取得する。
ステップ2603において、解析部2304は、解析の対象となる着目マイクロレンズを設定する。処理開始時には、初期値として(m,n)=(0,0)に設定される。
ステップ2604において、解析部2304は、重心境界間距離d(m,n,θi)を求める際の角度θiを設定する。上述のとおり角度θiは、θ0=0°,θ1=15°,・・・,θ23=345°と順次設定されることになる。処理開始時には、初期値として、θ0=0°に設定される。
ステップ2605において、解析部2304は、設定された角度θiにおける、像の重心位置、及び当該重心位置から境界画素までの距離を算出する。具体的には、重心位置に該当する画素位置から、設定された角度θi方向に向かって画像を走査し、像以外の画素(ここでは、画素値が0となる画素)を探索する。その後、像の画素(ここでは、画素値が1となる画素)に隣接する画素(境界画素)を探索する。境界画素が見つかると、像の重心位置と当該見つかった境界画素との距離d_θiを算出する。
ステップ2606において、解析部2304は、全ての角度θiにおいて、重心境界間距離d(m,n,θi)の算出が完了したか否かを判定する。全ての角度について重心境界間距離の算出が完了した場合には、ステップ2507に進む。重心境界間距離の算出が未処理の角度がある場合には、ステップ2504に戻り、θ23=345°に達するまで、ステップ2604〜2606の処理を繰り返す。
ステップ2607において、解析部2304は、マイクロレンズ(m,n)に対して、重心境界間距離d(m,n,θi)の変動量を算出する。変動量div(m,n)は、以下の式(14)を用いて算出する。
div(m,n)=std(d(m,n,θi)) ・・・式(14)
ここで、std()は、θiについて標準偏差を算出する関数である。
ステップ2608において、解析部2304は、全てのマイクロレンズに対して、変動量div(m,n)を算出したか否かを判定する。未処理のマイクロレンズがある場合には、ステップ2603に戻って次の着目マイクロレンズアレイを設定し、全てのマイクロレンズについて処理が完了するまで、ステップ2604〜ステップ2608の処理を繰り返す。一方、全てのマイクロレンズについて変動量div(m,n)の算出処理が完了したと判定した場合にはステップ2609に進む。
ステップ2609において、解析部2304は、変動量div(m,n)のヒストグラムを作成する。図27の(a)は、絞りを解放の状態にして撮像した画像データから算出した変動量div(m,n)のヒストグラム、同(b)は、絞りを絞って撮像した画像データ(図7参照)から算出した変動量div(m,n)のヒストグラムをそれぞれ示している。なお、図27の(a)及び(b)において、横軸は変動量を、縦軸は頻度を表している。図27の(a)に示すヒストグラムでは、撮像画像の端部における像の形状に空間的な不均一が発生していることから(図6参照)、それらの影響を受け、大きな変動量を示すマイクロレンズの頻度が多くなっている。これに対し、図27の(b)に示すヒストグラムでは、空間的に不均一な形状のマイクロレンズが無いため(図7参照)、大きな変動量を示すマイクロレンズの頻度が出現しない。
ステップ2610において、解析部2304は、ヒストグラムを参照し、変動量div(m,n)が予め設定した閾値を超えるマイクロレンズの個数を算出する。図27の(a)に示すヒストグラムでは、閾値を超えるマイクロレンズが複数個出現する一方で、同(b)に示すヒストグラムでは、閾値を超えるマイクロレンズが出現していないのが分かる。
ステップ2611において、解析部2304は、キャリブレーションの可否を出力する。例えば、ステップ2610で算出された個数が0の場合にはキャリブレーション可能、算出された個数が1以上の場合にはキャリブレーション不可能といった解析結果を判定部2305へ出力する。
なお、本実施例では変動量div(m,n)のヒストグラムを生成した後、予め設定した閾値との比較によって、キャリブレーション可否を決定していた。しかし、その他の方法、例えば、変動量div(m,n)の最大値、平均値など、その他の指標に着目してキャリブレーション可否を決定してもよい。
また、本実施例では、ステップ2405でマイクロレンズ像を解析する際に、重心境界間距離の標準偏差に着目して解析したが、その他の解析方法でも構わない。例えば、各マイクロレンズを介したセンサ上における像に外接する四角形を求め、その外接四角形の縦横比に着目して解析を行っても良い。マイクロレンズアレイにおける各マイクロレンズを介したセンサ上における像の空間的な形状変動が把握できる指標であれば、その他の解析方法を採用することも可能である。
以上説明したように、本実施例に係る発明によれば、マイクロレンズアレイのキャリブレーション用に取得したキャリブレーション画像データを解析し、キャリブレーションに適しているか否かを判断することにより、より正確なキャリブレーションを行うことが可能となる。
[実施例3]
実施例2では、マイクロレンズアレイのキャリブレーション用に撮像される画像データを解析し、好適なメインレンズの絞り値(Fナンバー)を選択した上でキャリブレーションを実行する態様であった。次に、キャリブレーション用に撮像される画像データを解析し、撮像された画像データがキャリブレーションに適していない場合には、その旨をユーザに警告する態様について、実施例3として説明する。なお、実施例2と共通する部分については説明を簡略化ないしは省略し、ここでは差異点を中心に説明することとする。
実施例3における画像処理部112の内部構成は、実施例2に係る図21に示した画像処理部112の内部構成と基本的に同じである。違いは、解析処理部2101における解析結果が、操作部205とキャリブレーション部803以外に、表示制御部107へも送られる点である(不図示)。
図28は、本実施例に係る撮像装置における、キャリブレーションの実行〜任意のフォーカス位置における合成画像データの出力までの一連の処理の流れを示すフローチャートである。
ステップ2801〜2806は、図22のフローチャートにおけるステップ2201〜2206と同様であるため、説明を省略する。
ステップ2806において、画像解析部2101は、入力された画像データがキャリブレーションに適していないと判断した場合には、ステップ2808に進む。一方、入力された画像データがキャリブレーションに適していると判断した場合には、ステップ2807〜ステップ2814の各処理を行う。なお、ステップ2807〜ステップ2814は、図22のフローチャートにおけるステップ2208〜2214と同様であるため、説明を省略する。
ステップ2808において、表示制御部107は、撮像されたキャリブレーション画像データがキャリブレーションに適していないことを示すメッセージ(不図示)等を表示部106に表示し、ユーザに警告する。ユーザへの警告が完了したら、本処理を終了する。警告を受けたユーザは、メインレンズの絞り値の設定を変更するなどして、再度、キャリブレーション指示を行うことになる。
以上説明したように、本実施例に係る発明によれば、マイクロレンズアレイのキャリブレーション用に取得した画像データを解析し、画像データがキャリブレーションに適していない場合には、ユーザに警告する。これにより、キャリブレーションの失敗、キャリブレーション精度の低下を抑制することが可能となる。
[その他の実施形態]
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。

Claims (13)

  1. 入射光量を調節する開口絞りと、複数のレンズを配置したレンズアレイと、前記レンズアレイを介して被写体の像を光電変換する撮像素子とを有する撮像装置によって得られたキャリブレーション画像データを取得する画像データ取得手段と、
    前記キャリブレーション画像データが前記レンズアレイのキャリブレーションに適しているかどうかを、前記キャリブレーション画像データに含まれる前記レンズアレイを介した前記被写体の像の少なくとも1つの形状に基づいて判定する判定手段と、
    前記キャリブレーション画像データがキャリブレーションに適している場合、前記キャリブレーション画像データを用いて、前記レンズアレイを介して前記被写体の像が形成された前記撮像素子上での領域の位置を取得する位置取得手段と、
    を備え、
    前記キャリブレーション画像データは、前記レンズアレイを介した被写体の像を含み、各像は前記複数のレンズのうちの1つに対応する、
    ことを特徴とする画像処理装置。
  2. 前記判定手段は、前記キャリブレーション画像データに含まれる前記レンズアレイを介した前記被写体の像の形状が、前記開口絞りの形状から予測される形状から所定の範囲を超えて変形している場合に、前記キャリブレーション画像データは前記キャリブレーションに適していないと判定することを特徴とする請求項1に記載の画像処理装置。
  3. 前記キャリブレーション画像データに基づいて、前記各レンズに対応する前記撮像素子上での前記領域の位置の設計値からのずれを算出するずれ算出手段を更に有することを特徴とする請求項1又は2に記載の画像処理装置。
  4. 前記位置取得手段は、前記領域の重心位置を、前記領域の位置として取得することを特徴とする請求項1乃至3のいずれか一項に記載の画像処理装置。
  5. 前記ずれ算出手段は、算出した前記ずれを基に、前記各レンズの実際の光学中心位置を算出することを特徴とする請求項3乃至4のいずれか一項に記載の画像処理装置。
  6. 前記開口絞りの状態が前記キャリブレーション画像データが取得されたときよりも開放された状態で得られた画像データを用いて、前記ずれ算出手段で算出された前記ずれ或いは前記実際の光学中心位置に基づいて、任意のフォーカス位置における合成画像データを生成する画像合成手段をさらに備えることを特徴とする請求項5に記載の画像処理装置。
  7. 前記判定手段は、前記複数のレンズのうちの1つを介した前記被写体の像が形成された前記撮像素子上における領域の重心位置と当該領域の境界部に隣接する境界画素の位置との距離を求め、求められた距離の変動量に基づいて、前記キャリブレーション画像データが前記キャリブレーションに適しているかどうかを判定することを特徴とする請求項4に記載の画像処理装置。
  8. 前記キャリブレーション画像データが前記キャリブレーションに適していない場合に、前記開口絞りをより絞った状態に変更する手段をさらに備えることを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
  9. 前記キャリブレーション画像データが前記キャリブレーションに適していない場合に、ユーザにその旨を警告することを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
  10. 前記キャリブレーション画像データは、前記開口絞りが絞られ、前記撮像装置が前記開口絞りが開放された状態におけるFナンバーよりも大きなFナンバーを有する状態で取得されることを特徴とする請求項1乃至9のいずれか一項に記載の画像処理装置。
  11. 前記キャリブレーション画像データは、前記レンズアレイに対するキャリブレーションの指示に従って前記開口絞りが絞られた状態で取得されることを特徴とする請求項10に記載の画像処理装置。
  12. 入射光量を調節する開口絞りと、複数のレンズを配置したレンズアレイと、前記レンズアレイを介して被写体の像を光電変換する撮像素子とを有する撮像装置によって得られたキャリブレーション画像データを取得する画像データ取得ステップと、
    前記キャリブレーション画像データが前記レンズアレイのキャリブレーションに適しているかどうかを、前記キャリブレーション画像データに含まれる前記レンズアレイを介した前記被写体の像の少なくとも1つの形状に基づいて判定する判定ステップと、
    前記キャリブレーション画像データがキャリブレーションに適している場合、前記キャリブレーション画像データを用いて、前記レンズアレイを介して前記被写体の像が形成された前記撮像素子上での領域の位置を取得する位置取得ステップと、
    を含み、
    前記キャリブレーション画像データは、前記レンズアレイを介した被写体の像を含み、各像は前記複数のレンズのうちの1つに対応する、
    ことを特徴とする画像処理方法。
  13. コンピュータを請求項1から請求項11のいずれか1項に記載の画像処理装置として機能させるためのプログラム。
JP2012045627A 2012-03-01 2012-03-01 画像処理装置、画像処理方法、及びプログラム Expired - Fee Related JP5882789B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2012045627A JP5882789B2 (ja) 2012-03-01 2012-03-01 画像処理装置、画像処理方法、及びプログラム
EP13156808.1A EP2635019B1 (en) 2012-03-01 2013-02-26 Image processing device, image processing method, and program
CN201310061171.0A CN103297683B (zh) 2012-03-01 2013-02-27 图像处理设备及图像处理方法
US13/778,355 US8937662B2 (en) 2012-03-01 2013-02-27 Image processing device, image processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012045627A JP5882789B2 (ja) 2012-03-01 2012-03-01 画像処理装置、画像処理方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2013183278A JP2013183278A (ja) 2013-09-12
JP2013183278A5 JP2013183278A5 (ja) 2015-04-16
JP5882789B2 true JP5882789B2 (ja) 2016-03-09

Family

ID=47877786

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012045627A Expired - Fee Related JP5882789B2 (ja) 2012-03-01 2012-03-01 画像処理装置、画像処理方法、及びプログラム

Country Status (4)

Country Link
US (1) US8937662B2 (ja)
EP (1) EP2635019B1 (ja)
JP (1) JP5882789B2 (ja)
CN (1) CN103297683B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9030580B2 (en) * 2013-09-28 2015-05-12 Ricoh Company, Ltd. Color filter modules for plenoptic XYZ imaging systems
TW201514599A (zh) * 2013-10-07 2015-04-16 Novatek Microelectronics Corp 影像感測器及影像擷取系統
US9807372B2 (en) * 2014-02-12 2017-10-31 Htc Corporation Focused image generation single depth information from multiple images from multiple sensors
US9613417B2 (en) * 2015-03-04 2017-04-04 Ricoh Company, Ltd. Calibration of plenoptic imaging systems using fourier transform
JP2016161884A (ja) * 2015-03-04 2016-09-05 キヤノン株式会社 撮像装置及びその制御方法
US10033986B2 (en) * 2015-05-26 2018-07-24 Google Llc Capturing light-field images with uneven and/or incomplete angular sampling
JP2018032982A (ja) * 2016-08-24 2018-03-01 キヤノン株式会社 画像処理装置、撮像装置、画像処理方法、及びプログラム
US11301664B2 (en) * 2018-09-12 2022-04-12 Fingerprint Cards Anacatum Ip Ab Reconstruction of fingerprint subimages

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3699921B2 (ja) 2001-11-02 2005-09-28 独立行政法人科学技術振興機構 画像再構成法及び画像再構成装置
WO2006039486A2 (en) * 2004-10-01 2006-04-13 The Board Of Trustees Of The Leland Stanford Junior University Imaging arrangements and methods therefor
JP4826152B2 (ja) * 2005-06-23 2011-11-30 株式会社ニコン 画像合成方法及び撮像装置
US20100103175A1 (en) 2006-10-25 2010-04-29 Tokyo Institute Of Technology Method for generating a high-resolution virtual-focal-plane image
US20100265385A1 (en) * 2009-04-18 2010-10-21 Knight Timothy J Light Field Camera Image, File and Configuration Data, and Methods of Using, Storing and Communicating Same
EP2180362A4 (en) * 2007-10-02 2011-03-30 Nikon Corp LIGHT RECEIVING DEVICE, FOCUS DETECTION DEVICE AND IMAGING APPARATUS
JP4905326B2 (ja) 2007-11-12 2012-03-28 ソニー株式会社 撮像装置
JP4483951B2 (ja) * 2008-01-28 2010-06-16 ソニー株式会社 撮像装置
JP4538766B2 (ja) * 2008-08-21 2010-09-08 ソニー株式会社 撮像装置、表示装置および画像処理装置
EP2377308B1 (en) * 2008-12-10 2015-10-28 Canon Kabushiki Kaisha Image processing apparatus and image processing method, and data processing apparatus and data processing method
JP5463718B2 (ja) * 2009-04-16 2014-04-09 ソニー株式会社 撮像装置
JP5843454B2 (ja) 2011-03-15 2016-01-13 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP5762211B2 (ja) 2011-08-11 2015-08-12 キヤノン株式会社 画像処理装置および画像処理方法、プログラム

Also Published As

Publication number Publication date
EP2635019B1 (en) 2016-11-16
US8937662B2 (en) 2015-01-20
JP2013183278A (ja) 2013-09-12
CN103297683A (zh) 2013-09-11
EP2635019A2 (en) 2013-09-04
US20130229532A1 (en) 2013-09-05
CN103297683B (zh) 2016-06-15
EP2635019A3 (en) 2014-01-22

Similar Documents

Publication Publication Date Title
US10009540B2 (en) Image processing device, image capturing device, and image processing method for setting a combination parameter for combining a plurality of image data
JP5882789B2 (ja) 画像処理装置、画像処理方法、及びプログラム
US8786718B2 (en) Image processing apparatus, image capturing apparatus, image processing method and storage medium
US9076214B2 (en) Image acquisition apparatus and image processing apparatus using selected in-focus image data
JP6173156B2 (ja) 画像処理装置、撮像装置及び画像処理方法
JP6548367B2 (ja) 画像処理装置、撮像装置、画像処理方法及びプログラム
JP5984493B2 (ja) 画像処理装置、画像処理方法、撮像装置およびプログラム
JP5968073B2 (ja) 画像処理装置、撮像装置、画像処理方法、および画像処理プログラム
JP5843454B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP5766077B2 (ja) ノイズ低減のための画像処理装置及び画像処理方法
JP2015073185A (ja) 画像処理装置、画像処理方法およびプログラム
JP6095266B2 (ja) 画像処理装置及びその制御方法
JP6611531B2 (ja) 画像処理装置、画像処理装置の制御方法、およびプログラム
US20130083169A1 (en) Image capturing apparatus, image processing apparatus, image processing method and program
JP2015188251A (ja) 画像処理装置、撮像装置、画像処理方法、及びプログラム
Stamatopoulos et al. Accuracy aspects of utilizing raw imagery in photogrammetric measurement
JP6732440B2 (ja) 画像処理装置、画像処理方法、及びそのプログラム
JP6012396B2 (ja) 画像処理装置、画像処理方法およびプログラム。
JP5743769B2 (ja) 画像処理装置および画像処理方法
JP2014049895A (ja) 画像処理方法
US20230196517A1 (en) Information processing apparatus, control method of information processing apparatus, and non-transitory computer readable medium
JP6415228B2 (ja) 画像合成装置および画像合成装置の制御方法
JP2024038222A (ja) 撮像装置、撮像方法、及びプログラム
JP2018050231A (ja) 撮像装置、撮像方法および撮像制御プログラム
JP2019057798A (ja) 画像処理装置、撮像装置、撮像装置の制御方法、および、プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150225

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150225

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160204

R151 Written notification of patent or utility model registration

Ref document number: 5882789

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees