(実施形態1)
以下、本発明の例示的な実施形態について、図面を参照して詳細に説明する。なお、以下では、撮像装置の一例として、交換式レンズを装着可能なデジタルカメラを用いる例を説明する。しかし、本実施形態は、このようなデジタルカメラに限らず、フォーカス調整によって画角変化の生じ得る他の機器にも適用可能である。これらの機器には、例えばスマートフォンを含む携帯電話機、ゲーム機、タブレット端末、眼鏡型の情報端末、医療機器、監視システムや車載用システムの機器などが含まれてよい。
(デジタルカメラ及び交換式レンズの構成)
図1は、本実施形態に係る撮像装置の一例としてのデジタルカメラ100と、レンズ装置の一例としての交換式レンズ150とを含む撮像システムの機能構成例を示すブロック図である。なお、図1に示す機能ブロックの1つ以上は、ASICやプログラマブルロジックアレイ(PLA)などのハードウェアによって実現されてもよいし、CPUやMPU等のプログラマブルプロセッサがソフトウェアを実行することによって実現されてもよい。また、ソフトウェアとハードウェアの組み合わせによって実現されてもよい。従って、以下の説明において、異なる機能ブロックが動作主体として記載されている場合であっても、同じハードウェアが主体として実現されうる。
以下、フォーカス駆動時の像倍率の変動を補正する機能と、歪曲収差を補正する機能とを両立し、動画撮影時のフォーカスレンズ駆動による画角変動の補正を実現する例について説明する。なお、本実施形態のフォーカスレンズ駆動は、撮像面位相差AFモードによって制御される場合を例に説明するが、他の方法を用いてもよく、例えば、コントラストAFでもよいし、マニュアルフォーカスでもよい。また、図1に示す例は、レンズ交換式の撮像システムを示しているが、カメラレンズ一体型の構成であっても良い。
図1に示すように、本実施形態のデジタルカメラ100には、レンズマウント部180を介して交換式レンズ150が着脱可能に装着されている。交換式レンズ150は、撮影光学系を構成し、内部に、フォーカスレンズ151、ズームレンズ152、絞り153、防振制御レンズ154が含まれている。なお、図1では1枚のレンズが図示されているが、複数枚のレンズから構成されるレンズ群でもよい。撮影光学系を介して入射した光線が撮像素子102に導かれ、撮像素子102に光学像として結像する。
シャッター101は、設定された期間に基づき撮像素子102を露光させる。撮像素子102は、例えばCCDセンサやCMOSセンサ等が用いられ、交換式レンズ150によって結像された被写体像の光信号を電気信号に変換する。撮像素子102は、複数の焦点検出画素を有していてもよい。
画像生成部103は、撮像素子102のアナログ出力信号をデジタル信号に変換して画像を生成する。生成された画像は、メモリ制御部105や画像処理部140へ入力される。タイミング発生部104は、撮像素子102、画像生成部103、メモリ制御部105、システム制御部130および画像処理部140にクロック信号および同期信号を供給する。メモリ制御部105は、画像生成部103、タイミング発生部104、画像表示部106、メモリ107、記録部108および画像処理部140によるメモリ107への情報の書き込みや情報の読み出しを制御する。また、画像生成部103からの出力データが画像処理部140およびメモリ制御部105を介して、メモリ107および記録部108に書き込まれる。
画像表示部106は、例えばLCDなどを用いて構成される。画像表示部106が電子ビューファインダー(EVF)を構成する場合、不図示の外部表示装置或いは撮像素子102を用いて撮像された画像データを逐次表示することにより、EVF機能を実現する。画像再生時は、メモリ107および記録部108に記録された画像を表示する。
メモリ107は、撮影された静止画像や動画像を一時的に格納する揮発性の記録媒体を含む。また、メモリ107は、システム制御部130の作業領域としても使用される。必要に応じて画像処理部140で必要な情報を予めメモリ107に格納しておいても良い。
記録部108は、デジタルカメラ100に内部された、或いはデジタルカメラ100から着脱可能な不揮発性メモリで構成され、撮影された静止画像や動画像を格納する。シャッター制御部110は、システム制御部130からの制御信号に基づいて、ミラー制御部111と連携しながら、シャッター101を制御する。ミラー制御部111は、システム制御部130からの制御信号に基づいて、主ミラー112を制御する。主ミラー112は、交換式レンズ150を通過して入射した光束の向きをファインダー側と撮像素子側とに切替える。主ミラー112は、常時はファインダー部へと光束を導くよう反射させるように配されているが、撮影が行われる場合には、撮像素子102へと光束を導くように上方に跳ね上がり光束中から待避する。また主ミラー112はその中央部が光の一部を透過できるようにハーフミラーとなっており、光束の一部を、焦点検出を行うための不図示の焦点検出センサに入射するように透過してもよい。ペンタプリズム113は、交換式レンズ150より入射した光束を光学ファインダー114へ導く。光学ファインダー114は、不図示のピント板、接眼レンズなどによって構成される。
スイッチ115(SW1ともいう)は、AF処理、AE処理、AWB処理などの動作開始をシステム制御部130へ指示する。スイッチ116(SW2ともいう)は、露光開始をシステム制御部130へ指示する。露光開始指示を受けたシステム制御部130は、撮像素子102、メモリ制御部105、シャッター制御部110、ミラー制御部111およびI/F120を介して交換式レンズ150を制御して、記録部108に画像データを記録する処理を実施する。
カメラ操作部117は、各種ボタンやタッチパネル、電源オンオフボタンなどから構成され、ユーザ操作により受け付けた指示をシステム制御部130に出力する。カメラ操作部117でのユーザ操作に従い、システム制御部130はデジタルカメラ100に搭載された各種機能、例えばAFモード、AEモードといった動作モードの切り替えなどを実施する。カメラ電源制御部118は、外部電池や内蔵電池の管理を行う。電池が取り外された場合や電池残量がなくなった場合、カメラ電源制御部118は、カメラ制御の緊急遮断処理を行う。このとき、システム制御部130は交換式レンズ150に供給する電源を遮断する。
I/F120は、インタフェースであり、コネクタ190を介して、デジタルカメラ100内のシステム制御部130と交換式レンズ150内のレンズ制御部160との間で電気信号を用いた通信を実施する。このような通信では、交換式レンズ150の情報や制御命令などを送受信する。
システム制御部130は、例えばCPU及びROMを含み、ROMに記録されたプログラムをメモリ107に展開、実行することにより、デジタルカメラ100全体の動作を制御する。システム制御部130は、SW1、SW2、メモリ制御部105及びカメラ操作部117などからの入力に従って、撮像素子102、メモリ制御部105、シャッター制御部110、ミラー制御部111、I/F120を介して交換式レンズ150などを制御する。また、システム制御部130は、本実施形態の動作に係る、AF制御部131、歪曲収差補正部132、レンズ通信制御部133及び像倍率変動補正部134を含む。
AF制御部131は、デジタルカメラ100のAF処理を司る。AF処理ではAFモードに従い、I/F120を介して交換式レンズ150から得られるフォーカス位置や焦点距離などのレンズ情報、入力されるAF評価値から、フォーカスレンズ駆動量を演算する。フォーカスレンズ駆動量は、レンズ通信制御部133およびI/F120を介して交換式レンズ150に入力される。例えば、デジタルカメラ100が位相差AFモードである場合、被写体の光学像を主ミラー112および不図示の焦点検出用サブミラーを介して不図示の合焦状態判定部に入射させて得られる位相差AF評価値などからフォーカスレンズ駆動量を演算する。また、デジタルカメラ100がコントラストAFモードである場合、画像処理部140にて演算されるコントラストAF評価値からフォーカスレンズ駆動量を演算する。また、デジタルカメラ100が撮像面位相差AFモードである場合、撮像素子102に埋め込まれた複数の焦点検出画素より出力された撮像面位相差AF評価値からフォーカスレンズ駆動量を演算する。また、1点AFモード、多点AFモード、顔検出AFモードなどのAF評価モード従い、評価値を演算するAF枠位置を切り替える。
歪曲収差補正部132は、交換式レンズ150内のフォーカス位置や焦点距離位置に応じた、歪曲収差を補正するための補正特性を含む歪曲収差補正情報を、I/F120を経由して、又は、メモリ107を通して取得する。さらに取得した歪曲収差補正情報に基づいて、撮像モードに応じた補正量を算出し、画像処理部140内のリサイザ141に歪曲補正量を設定する。
レンズ通信制御部133は、システム制御部130内に搭載されており、デジタルカメラ100と交換式レンズ150との通信処理を司る。I/F120を介して交換式レンズ150が装着されたことを検知すると、デジタルカメラ100と交換式レンズ150は通信を開始し、任意のタイミングでレンズ情報を受信するとともに、カメラ情報、駆動命令などを送信する。例えばデジタルカメラ100がファインダー撮影モードである場合、システム制御部130の制御によって、任意のタイミングで交換式レンズ150への通信を行う。このとき、デジタルカメラ100がライブビュー撮影モードである場合、任意のタイミング以外にも、タイミング発生部104より出力された撮像同期信号に基づいたタイミングで通信してもよい。撮像同期信号に基づいたタイミングで通信を行う場合、タイミング発生部104から撮像同期信号が入力されると、レンズ通信制御部133は、レンズ情報(フォーカスレンズ位置、フォーカスレンズ状態、絞り状態、焦点距離など)をまとめて受信する。
像倍率変動補正部134は、交換式レンズ150内のフォーカス位置や焦点距離位置に応じた、像倍率の変動を補正するための補正特性を含む像倍率変動補正情報をI/F120を経由または、メモリ107を通して取得する。さらに取得した像倍率変動補正情報に基づいて、補正量を算出し、画像処理部140内のリサイザ141に像倍率変動補正量を設定する。
画像処理部140は、画像生成部103からのデジタル画像信号あるいはメモリ制御部105からの画像データに対して、所定の画素補完処理や色変換処理を施す。また画像処理部140は、画像生成部103からのデジタル画像信号を用いて露出制御用のため等の所定の演算処理を行う。また、交換式レンズ150の像倍率変化特性情報や歪曲収差特性情報をI/F120経由か、メモリ107を参照することによって取得し、それぞれの電子補正を画像処理部140内部のリサイザ141において適用する。リサイザ141は画像の拡大縮小を行う処理ブロックであり、歪曲収差補正のように像高に応じてリサイズ率が異なるようなケースにも対応している。
次に、交換式レンズ150における機能構成例について説明する。フォーカスレンズ151は、光軸方向に移動して撮像光学系のピントを変化させる。ズームレンズ152は、光軸方向に移動して撮像光学系の焦点距離を変化させる。絞り153は、その開口径(絞り値)が可変であり,開口径に応じて光量を変化させる。防振制御レンズ154は、光軸方向に対して直交する方向に移動させることで、手振れ等のカメラ振れによる像振れを低減する。
フォーカス制御部155は、レンズ制御部160もしくはレンズ操作部161より制御され、フォーカスレンズ151を駆動させる。またフォーカスレンズ151の位置などのフォーカス情報をレンズ制御部160へ出力する。
ズーム制御部156は、レンズ制御部160もしくはレンズ操作部161より制御され、ズームレンズ152を駆動させる。また焦点距離などのズーム情報をレンズ制御部160へ出力する。絞り制御部157は、レンズ制御部160もしくはレンズ操作部161から制御され、絞り153を駆動させる。また、絞り値などの絞り情報をレンズ制御部160へ出力する。
角速度検出部158は、レンズ制御部160により制御され、レンズの角速度(Yaw、Pitch)を検出し、レンズ制御部160へ出力する。防振制御部159は、レンズ制御部160により制御され、防振制御レンズ154を駆動させる。また防振可能範囲などの防振情報をレンズ制御部160へ出力する。
レンズ制御部160は、CPU、ROM及びRAMを含み、ROMに記録されたプログラムをRAMに展開、実行することにより交換式レンズ150の動作を制御する。例えば、レンズ制御部160は、レンズ操作部161もしくはI/F170からの入力に従い、フォーカス制御部155、ズーム制御部156、絞り制御部157、角速度検出部158および防振制御部159などを制御する。また、レンズ制御部160は、各制御部や検出部などから入力された情報を、I/F170で受信したレンズ情報取得命令に従って、I/F170を介してデジタルカメラ100へ送信する。さらにレンズ制御部160は、フォーカス制御部155或いはズーム制御部156からのフォーカス情報或いはズーム情報を取得する。そして、レンズ制御部160は取得した情報に基づき、フォーカスレンズ151の駆動可能な範囲で取りうる最大の焦点距離の演算ならびにフォーカスレンズ151の現在位置における焦点距離変動率の演算を行う。レンズ制御部160は、得られた演算結果をI/F170を介してデジタルカメラ100へ送信する。このときデジタルカメラ100からの要求に応答して、最大焦点距離および焦点距離変動率の演算結果を送信してもよい。
レンズ操作部161は、フォーカス操作リング、ズーム操作リング、AF/MFスイッチ、ISオンオフスイッチなどの操作部材を含み、ユーザ操作により受け付けた指示をレンズ制御部160に出力する。レンズ制御部160は、レンズ操作部161より入力された指示に基づき、I/F170を介してユーザ操作内容をデジタルカメラ100へ送信する。デジタルカメラ100内にあるシステム制御部130は、I/F120を介してユーザ操作内容を受信し、交換式レンズ150に搭載された各種機能についての動作モードの切り替えを実施する。
メモリ162は、例えば不揮発性の記録媒体を含み、レンズ装置毎に個別に情報を持つ必要がある場合はこの領域に格納しておく。格納する情報は様々なものがあるが各レンズ装置の光学特性情報等を記録することができる。
I/F170は、コネクタ190を介して、デジタルカメラ100内のシステム制御部130と交換式レンズ150内のレンズ制御部160との間で電気通信を用いた通信を実施することで、交換式レンズ150の情報や制御命令などを送受信する。
(補正処理に係る一連の動作)
次に、図2を参照して、本実施形態における、歪曲収差補正を実施しながら焦点調節時の像倍率変化を抑える(歪曲収差補正とフォーカス調整時の像倍率の補正とを両立する)補正処理の一連の動作について説明する。本実施形態では、動画撮影の際に動画像の補正を行う動作を例に説明するが、動画撮影以外において、例えば静止画撮影モードの際に連写時の画角変動を抑える目的で使用することも可能である。なお、本補正処理では、システム制御部130がROMに記録されたプログラムをメモリ107に展開、実行することにより実現される。また、特に言及しない限り、本処理における各ステップの動作は、システム制御部130及びその内部の機能ブロックが実行するものとする。
S201では、システム制御部130(歪曲収差補正部132)は、装着している交換式レンズ150の歪曲収差を補正するための補正特性を示す情報(歪曲収差補正情報)を取得する。本実施形態のように交換式レンズを用いる場合、レンズ毎にその特性が異なる為、その都度情報を取得する必要がある。例えば、交換式レンズ150の歪曲収差補正情報を交換式レンズ150内のメモリ162に予め記録しておき、歪曲収差補正部132がI/F120を介して歪曲収差補正情報を取得する。歪曲収差補正情報を取得するタイミングは撮影動作が開始する前であればいつでもよい。或いは、デジタルカメラ100内のメモリ107に余裕があれば装着される可能性のある交換式レンズ150の補正情報をすべて所持しておき、装着されたレンズの識別情報に基づいて補正情報を取得するようにしてもよい。
ここで、図3を参照して、歪曲収差補正情報の一例について説明する。図3は、歪曲収差を補正するための補正特性の例として、像高と歪曲収差の補正値との関係を示している。図3では、縦軸の正の方向は樽型の歪曲収差の補正値を示し、縦軸の負の方向は糸巻型の歪曲収差の補正値を示している。例えば曲線(a)及び曲線(b)は樽型の歪曲収差に対する補正値を示し、像高が大きくなるほど正の方向の大きな補正値が適用される。逆に、例えば曲線(d)及び(e)は、糸巻型の歪曲収差の補正値を示しており、像高が大きくなるほど負の方向に大きな補正値が適用されることを示している。
併せて、図4及び図5を参照して、歪曲収差に対する電子歪補正の方法について説明する。図4(a)は補正前の画像400を示しており、この画像は図3で示した正の方向(+方向)の歪成分(樽型歪)を含んでいるものとする。画像400に歪補正を行う場合、像高ごとに歪成分を相殺する補正が適用される。つまり、画像400には、像高ごとに変倍率の異なる変倍処理(樽型歪の場合、拡大処理)が施され、補正後の画像401は図4(b)に示すような形状になる。樽型の場合は+側の補正になるため、画像を構成する画素数は増加する方向にある。最終的には補正前と同じ画素サイズの画像を出力しなければならないため、図4(c)に示すように歪変換後の画像401に対して補正前と同じ画素数の領域を切り出す(クロップする)。これにより、最終的には図4(d)に示す画像402のように画像400と同一のサイズの画像を出力する処理がとられる。このような樽型の歪曲収差補正では、画面中心部分には拡大・縮小処理が適用されないため、補正前の画像400と補正後の画像402における画面中心の画像の倍率は一定に保たれる。
次に、図5を参照して、歪曲収差の補正値が負の方向(-方向)である、所謂、糸巻型の歪曲収差の補正について説明する。図5(a)の画像500は補正前の画像を示しており、この画像は図3で示した負の方向の歪成分(糸巻型歪)を含んだ画像である。画像500に対して糸巻型歪の補正を行う場合、図5(b)に示す画像501のように、縮小方向に補正される。更に、図5(c)に示すように、画像501から画像500と同一のアスペクト比の画像502(画像501に内接する矩形)を切り出す。このように、糸巻型の歪曲収差を補正する場合、補正後の画像502をこのまま出力すると元の画素サイズを下回ってしまうため、そのままでは画像周辺部で不正な画像が出力されてしまう。このため、図5(d)に示すように、画像502を元の画素数に収まるように拡大した画像503を出力する(図5(d))。このように糸巻型歪補正を実施する場合、補正前(図5(a))と補正後(図5(d))の画面中心の画像の倍率がその歪量によって変化してしまうという問題がある。換言すれば、糸巻歪量に応じて最終的に必要な拡大率が決まるため、光学特性とは関係ないところで出力画角が変化してしまう。すなわち、別途、像倍率補正を行う場合には、上述の通り糸巻型歪が発生すると糸巻型歪の補正処理によって像倍率が変化してしまう。
再び図2に戻って一連の動作について説明する。S202において、システム制御部130(像倍率変動補正部134)は、像倍率変動補正情報を取得する。例えば、像倍率変動補正情報を交換式レンズ150内のメモリ162に予め記録しておき、システム制御部130は、歪曲収差と同様のタイミングで像倍率変動補正情報を取得する。なお、像倍率変動補正情報の取得タイミングは、撮影動作の開始する前であればいつでもよい。
本実施形態に係る像倍率変動補正情報について、図6を参照して説明する。像倍率変動率601は、交換式レンズ150のフォーカスレンズの無限~至近までの駆動可能範囲において、像倍率が最大となる領域を100としたときの各フォーカスレンズ位置での像倍率による画像の領域の大きさを割合で示している。なお、交換式レンズ150のズーム位置および絞り状態は任意である。補正前画像603は、同一の距離にある被写体を各フォーカスレンズ位置で撮影する場合の画像の例を示している。補正前画像603は、同一の距離の同一の被写体であっても、フォーカスレンズ位置が変化して実焦点距離が変化することによる画角変動の様子を模式的に表している。
画像サイズ補正倍率604は、像倍率変動率に基づいて算出した、画像サイズ補正倍率の例を表し、補正前画像に対する補正後画像の倍率を表す。本実施形態では、画像サイズ補正倍率を例えば像倍率変動率の逆数を乗算した(100/像倍率変動率)で表す例を示しているが、その限りではなく、例えば更に任意の係数を乗じて算出してもよい。
補正後画像605は、画像サイズ補正倍率604を用いて、補正前画像603をリサイズ処理した後の画像の例を示している。なお、本実施形態では、このリサイズ処理を像倍率補正処理という。また、像倍率変動率601が像倍率変動補正情報に含まれるものとする。
S201及びS202の処理により、歪曲収差補正データと像倍率補正データが揃ったところで、S203において、システム制御部130は、ユーザによる動画モードの選択を取得する。例えば、カメラ操作部117は、ユーザによる動画モードの選択を受け付ける受付手段として機能し、受け付けた駆動動画モードを示す情報をシステム制御部130に通知する。
ところで、デジタルカメラ100は、複数の動画モードを備えている。動画モードのバリエーションとしては例えばフレームレートの種類であったり、解像度(画素数)が異なるものであったり多種多様な組みあわせが存在する。つまり、それぞれの動画モードごとに使用する撮像領域の相違が生じる。その具体的な例について図7を参照して説明する。
領域701は、交換式レンズ150が結像可能とするイメージサークルの領域を示している。領域702はデジタルカメラ100の基本的な動画モード(以下、モード1)時における、撮像素子102上の読み出し領域を示している。さらに、領域703は、デジタルカメラ100の基本的な動画モードとは異なる動画モード(以下、モード2)時における、撮像素子102上の読み出し領域を示している。より具体的には、モード1では、イメージサークルの横辺を基準に16:9のアスペクト比で読み出した領域の動画が出力される。一方、モード2では、イメージサークルの領域701の中心を中心として、水平4096画素、垂直2160の領域をクロップして生成した動画が出力される。上記の通りイメージサークルの領域701と各動画モードの最終出力領域の組み合わせは多種多様であるため、常にイメージサークルの領域701の直径と、動画モードの最大像高とが必ずしも一致しない。この例の場合、モード1の最大像高はa1であり、モード2の最大像高はa2である。
このように、動画モードが選択されることにより、動画モードごとの撮像領域が確定する。換言すれば、糸巻型歪補正による拡大率が確定することになる。この点について、図8を参照してより詳細に説明する。
図8は、交換式レンズ150における歪量と像高との関係を示している。801は交換式レンズ150の所定の条件における歪曲収差の特性を示しており、像高が高くなるに従って糸巻歪量が大きくなっていることを示している。モード1の最大像高a1での糸巻歪量はb1であり、モード2の最大像高a2での糸巻歪量はb2である。すなわち、動画モードごとに糸巻型歪の補正に必要な補正量が異なる(つまり図5で説明した最終的な拡大率が異なる)ことを示している。このように、動画モードが確定することにより、歪補正のための補正量を決定することができる。
S204において、システム制御部130は、画像の歪曲収差の形状を判定する。ここで、歪曲収差の形状が糸巻型歪でないと判定した場合には上述の歪曲補正による拡大処理が行われないため、予め想定した歪曲収差補正と像倍率補正とを適用することが可能となる。システム制御部130は、歪曲収差の形状が糸巻型歪でないと判定した場合、S205に進む。一方、歪曲収差の形状が糸巻型歪であると判定した場合、S210に進む。
S205において、システム制御部130は、動画モードの制御を開始し、更にS206において、I/F120を介して最新の交換式レンズ150のズーム位置やフォーカス位置などの撮影条件を取得する。
S207において、システム制御部130の指示に応じて、画像処理部140は、図4を参照して説明したような歪曲収差補正処理を実行する。更に、S208において、画像処理部140は、システム制御部130の指示に応じて、図6を参照して説明した像倍率補正処理を実行する。S209において、システム制御部130は、S207~S208の処理を動画モードが終了するまで繰り返す。なお、本実施形態では、S207における歪曲収差補正処理とS208における像倍率補正処理とを別々に実施する例を示したが、変倍処理を行う点で共通するため、画像処理部140は補正値をマージしてこれらの補正処理を一度に実施しても良い。このように、S207~208の処理により、歪曲収差と像倍率変化とが補正された高品位の動画像が生成される。
一方、糸巻型歪がある場合、図5や図8を参照して説明したように、糸巻型歪を補正する処理において画像を拡大する必要があるため、この拡大処理により画角が変動してしまう可能性がある。すなわち、像倍率補正値とは関係ない要因で画角が変化してしまい、最終的な画像として像倍率が完全に補正されていない画像が出力されてしまう。このような現象を避ける為、S204において糸巻型歪があると判定した場合、S210において、システム制御部130は、像倍率補正の補正目標値を変更する(補正目標値変更処理を実行する)。
この補正目標値変更処理の詳細について、図9を参照して説明する。なお、補正目標値変更処理は、補正処理と同様、システム制御部130がROMに記録されたプログラムをメモリ107に展開、実行することにより実現される。
S901において、システム制御部130は、各ズームポジションにおいてフォーカスレンズ位置に応じた歪曲収差の補正に必要な変倍率(本実施形態では、糸巻型歪補正のための拡大率αdist)を算出する。システム制御部130は、S201で取得した歪曲収差補正情報に基づき、糸巻型歪が発生している領域において、図5(c)に示す画像502から図5(d)に示す画像503に変換する倍率を算出する。そして、算出した倍率から、フォーカスレンズ位置(図10(a)の横軸)と拡大率(図10(a)の縦軸)の関係を示した変倍特性のテーブルを生成する。図10(a)に示す例では、フォーカスレンズ位置z1までは倍率が1になっているため、フォーカスレンズ位置z1までは樽型歪をもつことが示されている。また、図10(a)が示す例では、フォーカスレンズ位置z1からz2にかけて糸巻型の歪に変化している。フォーカスレンズ位置z1からz2における拡大率は1より大きい。フォーカスレンズ位置z2において糸巻型の歪曲収差が最大になり、このとき拡大率はαdist[z2]倍である。なお、ここで注意しなければいけないのは、この糸巻型歪ごとに必要な拡大率の算出は、それぞれの設定された動画モードで得られる画像領域の最大像高までの拡大率を用いて行うことである。より具体的には、図7の領域702で撮像するモード1では像高a1までの拡大率、領域703で撮像するモード2では像高a2までの拡大率で算出する。これは、イメージサークルの領域701での拡大率を算出すると拡大率が必要な値よりも大きくなる場合があり、必要以上に画像劣化を起こしてしまうためである。
以下、フォーカスレンズの全焦点距離において同等のことを実施する必要があるが焦点毎の処理は同一で構わない。このため、以下の説明では、任意の1つの焦点距離に対する処理について説明する。
S902において、システム制御部130は、S901と対になる撮影条件(フォーカス、ズーム)における像倍率の補正値を、S202で取得した像倍率変動補正情報から算出する。例えば、像倍率の補正値は、フォーカスレンズ位置に応じた像倍率の変動を補正するための画像の変倍率を表す。上述の画像サイズ補正倍率604に対応する。後にS901の結果と比較することになる為、算出する条件はS901と合わせる必要がある。システム制御部130は、記録されていた像倍率変動補正情報のなかに該当する補正値がない場合、像倍率の補正値の前後の条件から補間して算出する。図10(a)の条件において算出した、フォーカスレンズ位置ごとの像倍率の補正値を示す変倍特性の一例を図10(b)に示す。ここで、像倍率の補正値は変倍率で表す。図10(b)に示す例では、至近側(z3)で像倍率の補正値が最大値αmagni[z3]になっており、z4で光学的な像倍率が最大になっている(補正値としては1倍)。
S903において、システム制御部130は、S901で算出した歪曲収差を補正するために必要な変倍率(糸巻型歪補正のための拡大率)とS902で算出した像倍率の変動を補正するための変倍率(像倍率の補正値)との比をとり、最大値αを算出する。例えば、図10(c)は、各フォーカスレンズ位置において糸巻型歪収差による拡大率αdist[z]から像倍率補正による拡大率αmagni[z]を除算した結果の曲線を示している。この例では、フォーカス位置z5までは比が1よりも小さく、それ以降は1を超えている。ここで、糸巻型歪補正のための拡大率と像倍率補正のための拡大率との比が1よりも小さいということは、糸巻型歪補正による拡大率が像倍率補正による拡大率よりも小さいことを示している。つまり、像倍率の補正をすることで糸巻型歪補正に必要な拡大率を満たしているということがわかる。
S904において、システム制御部130は、S903において算出した最大値αが1以下であるかを判定する。すなわち、可動可能なフォーカス位置において像倍率補正による拡大率が糸巻型補正に必要な拡大率を下回ることがあるかを判定する。例えば、αが1以下の場合、上述のように糸巻型歪補正が発生していたとしても像倍率の補正により画像が拡大されるため、糸巻型歪補正の為に拡大する必要はない。つまり、像倍率補正のための拡大率が糸巻型歪補正に必要な拡大率を満たす。このため、システム制御部130は、像倍率補正目標値の変更は行わずに本補正目標値変更処理を終了する。一方、αが1よりも大きい場合、像倍率補正による拡大率が糸巻型補正に必要な拡大率を下回る場合がある。すなわち、像倍率補正による拡大率では糸巻型歪補正に必要な拡大率を満たさず、糸巻型歪補正を十分に施すことができない。このように、システム制御部130は、(最大値αが1より大きいために)像倍率補正のための拡大率が糸巻型歪補正に必要な拡大率を満たさないと判定した場合、像倍率補正のための拡大率を変更する処理を行う。
S905において、システム制御部130は、像倍率補正のための拡大率(像倍率目標値)を変更する。ここで、上述の拡大率の比の最大値αは、全フォーカスレンズ位置において糸巻型歪補正に必要な拡大率の不足量を表す。つまり、元の像倍率補正値に対してαを乗算することにより、糸巻型歪補正のために必要な拡大率を加味した、糸巻型歪補正が全フォーカス域で補正可能な像倍率補正値に変更できることになる。
上記処理を全ズームポジションごとに行うことにより、設定された動画モードに対して、拡大による画質劣化を最小限に抑えて、歪曲収差補正と像倍率補正とを同時に補正可能な補正値を求めることができる。システム制御部130は、補正目標値変更処理を終了すると、S205~S209の処理を実行する。このとき、S207及びS208の処理については、システム制御部130の指示に応じて、画像処理部140は、S210において変更された像倍率目標値を用いて画像を変倍する。
以上説明したように本実施形態では、歪曲収差補正のための変倍率と像倍率補正のための変倍率との関係(すなわち変倍率の比の最大値)に基づいて、像倍率補正による拡大率が糸巻型補正に必要な拡大率を下回ることがあるかを判定した。そして、特に、像倍率補正のための拡大率が糸巻型歪補正に必要な拡大率を下回ることがあると判定した場合、像倍率補正のための拡大率を糸巻補正に必要な拡大率を加味するように変更して、撮像画像の補正用の拡大率を求めるようにした。また、糸巻収差補正に必要な拡大率の算出は、それぞれの設定された動画モードで得られる画像領域の最大像高までの拡大率を用いるようにした。このようにすることで、フォーカスレンズ駆動に伴う画角変化をより精度良く低減することができる。すなわち、交換式レンズ150と各動画モードの組み合わせに応じて、補正による劣化を最小限の抑えながら歪曲収差補正と像倍率補正とを両立し、高品位の動画像を提供することができる。
(実施形態2)
次に実施形態2について説明する。実施形態2では、樽型の歪曲収差補正に対して画角の欠如を最小限に抑えながら歪曲収差補正と像倍率補正を実現する例について説明する。本実施形態では、実行する補正処理の一部が異なるが、デジタルカメラ100の構成は実施形態1と同一である。このため、同一の構成や処理については同一の符号を付して重複する説明は省略し、相違点について重点的に説明する。
まず、実施形態2における樽型の歪曲収差の補正方法について図11を参照して説明する。図11(a)は補正前の画像1100を示しており、この画像1100は、図3に示した正方向(+方向)の歪成分(樽型歪)を含んでいるものとする。図11(a)の画像1100に対して像高ごとに歪成分をキャンセルする補正を適用すると、像高ごとに変倍率の異なる拡大処理が施される。このとき、補正後の画像1101は、図11(b)のような形状になる。ここまでは図4で説明した方法と同様であるが、樽型歪に対する補正の場合には正方向(+側)の補正が適用されるため、補正後の画像1101の画素数は増加する方向となる。つまり、図4で説明したように補正後の画像の中心部を補正前の元の画像サイズでクロップしてしまうと画角欠損の量が大きくなる。このため、特に光学ファインダーを備えるデジタルカメラ100の場合には、当該光学ファインダーで視認できる画角からの欠損が大きくなってしまう。このため、図11(c)のように歪変換後の画像1101に内接する矩形1102を選択する。そして、最終的に図11(d)に示す画像1103のように、選択された矩形1102が元の画像サイズに収まるように画像を縮小する処理を行う。
このように画角の欠損を最小限に抑えるためには、図11で説明したように補正後の画像の内接矩形を切り出したうえで、切り出した矩形を縮小する必要がある。しかし、実施形態1の糸巻補正の場合と同様に、歪量に応じて縮小率が変化するため、像倍率補正と関係ないところで出力画像の画角が変化してしまうという課題がある。すなわち、樽型の歪曲収差の場合、画角の欠損を最小限に抑えつつ、歪曲収差補正と像倍率補正を両立させる必要がある。
以下、図12を参照して、本実施形態における補正処理に係る一連の動作について説明する。なお、本実施形態における補正処理も、システム制御部130がROMに記録されたプログラムをメモリ107に展開、実行することにより実現される。また、特に言及しない限り、本処理における各ステップの動作は、システム制御部130及びその内部の機能ブロックが実行するものとする。
S201~S204において、システム制御部130は、歪曲収差補正情報や像倍率変動補正情報を取得するともに、入力された画像の歪曲収差の形状が糸巻型歪であるかを判定する。システム制御部130は、歪曲収差の形状が糸巻型歪であると判定した場合、実施形態1と同様にS210において補正目標値変更処理を行う。一方、糸巻型歪でない(すなわち、樽型歪であると判定した場合、S1201に処理を進める。
S1201において、システム制御部130は、樽型歪曲収差用の補正目標値変更処理を実行する。樽型歪曲収差用の補正目標値変更処理の具体的な動作について、図13を参照して説明する。なお、本処理は、補正処理と同様、システム制御部130が記録部108に記録されたプログラムをメモリ107に展開、実行することにより実現される。
S1301において、システム制御部130は、S201で取得した交換式レンズ150の歪曲収差補正情報から、ズームポジションごとに、フォーカス位置に応じた歪補正のための変倍率(この場合、樽型歪補正のための縮小率)を算出する。例えば、図14(a)に示すフォーカス位置ごとの変倍特性は、フォーカス位置の至近から無限まで常に倍率が1未満になっており、全フォーカス域で樽型の歪曲収差の特性を持っていることがわかる。特にフォーカス位置z7での歪量が大きく、歪曲補正後に最大画角を維持する為には補正後の画像(図11(c)の矩形1102)に対してβdist[z7]倍の縮小を実施する必要があることを示している。
S1302において、システム制御部130は、同条件の像倍率の補正値を算出する。図14(b)に示す像倍率の補正値の変倍特性は、図10(b)に示した特性と同一であるものとする。このとき、システム制御部130は、実施形態1のS902と同様に各動画モードの最大像高に対して像倍率の補正値をβmagniとして算出する。
S1303において、システム制御部130は、S1301及びS1302において算出した特性を乗算し、その最大値βを取得する。図14(c)は、図14(a)に示す変倍率と図14(b)に示す変倍率とを乗算した結果の例を示している。図14(c)に示す例では、全フォーカス位置において倍率が1未満となっている。すなわち、像倍率補正を実施した結果、必ずしも画像を拡大する必要がないことを示している。すなわち、像倍率補正と歪曲補正を行ってもβまでならば縮小して画角を維持できるということを示している。
逆に最大値βが1倍を超える場合には、像倍率補正の為に拡大する必要があるということであり、本件の最大画角を得るために画像を縮小する処理は使えないということになる。
S1304において、システム制御部130は、S1303で算出した最大値βが所定の閾値(この場合1)以上であるかを判定する。すなわち、歪曲収差補正のための変倍率と像倍率補正のための変倍率との関係(最大値β)に基づいて、像倍率補正のための変倍率が歪曲収差補正のために必要な変倍率を満たすかを判定する。システム制御部130は、最大値βが1を超えている場合には、像倍率補正する為に拡大処理が必須な条件となっており、本実施形態の変更処理を適用できないため、そのまま本処理を終了する。一方、システム制御部130は、最大値βが1未満である場合、βの最大値まで縮小しても像倍率補正が適用できるため、S1305において像倍率補正の目標にβを乗算したものを新しい像倍率目標値として像倍率補正のための変倍率を変更する。システム制御部130は、その後、樽型歪曲収差用の補正目標値変更処理を終了する。
その後、システム制御部130は、実施形態1と同様に、S205~S209の処理を1回以上実行して、補正処理を終了する。
以上説明したように本実施形態では、樽型歪曲収差補正においても画角の欠損を最小限に抑制しつつ、歪曲収差補正と像倍率補正を両立することができ、フォーカスレンズ駆動に伴う画角変化をより精度良く低減することができる。すなわち、補正による解像度劣化や画像の欠損等の弊害を最小限に抑えた高品位の動画像を提供することができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。