説明

撮像装置

【課題】 光学収差の補正を画像処理で行うとき、補正必要な情報が得られなかったとき、補正量を減少させる。
【解決手段】 画像データに対してレンズの収差補正を施す際に、レンズの特性情報の取得に失敗した場合には、レンズの特性に応じて用意された複数の補正係数のうち、予め選択されたいずれかの補正係数に重み付けを行ったうえで、この補正係数を用いてレンズの収差補正を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、光学レンズを通して得られた被写体像を光電変換機能を持つ撮像素子を用いて画像データとして読み出す撮像装置に関するものであり、読み出した画像データに対して光学レンズの収差補正処理を行う技術に関するものである。
【背景技術】
【0002】
図4は、光学レンズの収差補正機能を備えた、従来の一眼レフデジタルカメラの構成を示すブロック図である。
【0003】
この一眼レフカメラは、一眼レフカメラの本体400と、一眼レフデジタルカメラの本体400に着脱可能な交換式のレンズユニット401で構成される。
【0004】
レンズユニット401は、撮影レンズ402、レンズ制御部403、レンズメモリ404を備えている。レンズ制御部403は撮影レンズの位置を制御したり、レンズメモリ404から読み出したレンズIDを後述するカメラ制御部410に送信したりする。
【0005】
カメラ制御部410は、カメラ本体全体の動作を統括するとともに、レンズ制御部403とデータ通信を行う。カメラメモリ411は、後述するようにレンズIDに対応させたシェーディング特性を補正する係数を記載した補正テーブルを記憶している。
【0006】
撮影レンズ402は、その内部を透過した被写体像を撮像素子412上に結像させる。撮像素子412は、被写体像を光電変換機能によって電気信号に変換するCCDやCMOSセンサ等の光電変換素子で構成され、その出力信号は、A/D変換器413によってデジタルの画像データに変換される。
【0007】
現像処理回路416は、A/D変換器413から出力された画像データに対して、色変換処理やコントラスト変換(あるいは、ガンマ変換)や、シャープネス処理などのデジタル画像処理が行われる。
【0008】
現像処理回路416にて現像処理された画像データは、記録処理回路420によってカメラ内部に設けられたメモリや、着脱可能な外部メモリ等からなる記録媒体421に記録される。あるいは、現像処理された画像データは、出力処理装置422によって出力装置423の特性に沿うよう画像補正を施され、カメラ本体に設けられたディスプレイや、カメラと通信可能なカラープリンターなどの出力装置423に送られる。
【0009】
収差補正回路415は、現像処理回路416の前または後において(図4では、現像処理回路416の前)、撮影レンズの収差を補正する処理を行う。
【0010】
撮影レンズの光学的な収差補正を行う方法、特に、撮影レンズのシェーディング特性(いわゆる、周辺光量落ち)を補正する方法としては、たとえば特開2006−191282号公報に開示された方法が知られている。
【0011】
撮影レンズのシェーディング特性を補正するために、収差補正回路415は、カメラ制御部410を介して、レンズメモリから読み出したレンズID、撮影時の撮影レンズの焦点距離、撮影時の絞りの情報をレンズ制御部403より受け取る。
【0012】
収差補正回路415は、受け取ったレンズID、および、焦点距離や絞りといったパラメータに応じて、メモリ411に格納された補正テーブルから補正係数を読み出し、撮影した画像データに補正係数を掛けて収差補正を行う。
【特許文献1】特開2006−191282号公報
【発明の開示】
【発明が解決しようとする課題】
【0013】
しかしながら、収差補正回路415がシェーディング特性を補正する際に、レンズユニット401からレンズIDや焦点距離、絞りなどの情報が常に正常に得られるとは限らない。これらの情報が正常には得られなかった場合、適切な補正を行うことができず、撮影結果が好ましくない画像となることがある。
【0014】
例えば、図5は、均一輝度の被写体を撮影したときの、撮影レンズ402の像高位置に対する、撮像素子412で得られた輝度値の割合を示す図である。
【0015】
輝度値が均一の被写体を撮影したのであれば、理想的には、点線503で示すように、撮像素子412の出力は画面中心から画面端まで像高によらず均一の輝度値になるはずである。
【0016】
これに対して、実際には、レンズのシェーディング特性によって像高に応じて輝度値に差が生じてしまう。例えば、ある撮影レンズのシェーディング特性の画面中心における輝度値の大きさを1.0とする。なお、撮像素子412と撮影レンズ402の中心位置が一致しているものとする。
【0017】
そして、画面周辺に向かうにしたがい、すなわち像高が大きくなるにしたがい、輝度値が現象する。このとき、ピントが無限遠に設定されていれば、鎖線501に示すシェーディング特性を示し、ピントが至近に設定されていれば点線502に示すシェーディング特性を備えているものとする。
【0018】
ここで、カメラ制御部410が、レンズ制御部403から焦点距離の情報を正常に得られなかったとすると、いずれかのピント位置における補正係数を選択してシェーディング補正を行うことになる。
【0019】
例えば、焦点距離の情報を得られなかった場合には、どのピント位置で撮影した画像であっても、ピント位置が無限遠に設定されたときの補正係数を用いて補正を行ったとする。
【0020】
すると、図6に示すように、ピント位置が無限遠に設定された状態で撮影した画像については、鎖線604に示すように理想的な輝度値に補正することができる。しかしながら、ピント位置が至近に設定された状態で撮影した画像については、点線605に示すように、画面端部に近付くにしたがって理想よりも輝度割合が大きくなる過補正となってしまう。
【0021】
さらに、カメラ制御部410が、レンズ制御部403からレンズID情報を正常に得られなかったとすると、いずれかのレンズ情報における補正係数を選択してシェーディング補正を行うことになる。撮影レンズが異なると、像高位置に対する輝度値の割合を示す曲線の形状自体が異なる。そのため、いずれかのレンズ情報における補正係数を選択してシェーディング補正を行うことで、ピント位置の情報を取得できなかった場合と異なり、部分的な過補正が生じてしまう場合もある。
【0022】
本発明は、このような撮影レンズの収差補正時に必要なレンズ情報が得られなかったとしても、観賞上できるだけ好ましい収差補正を行えるように構成することを目的としている。
【課題を解決するための手段】
【0023】
上記課題を解決するため、本願請求項1に記載の撮像装置は、レンズを通して結像された被写体像から画像データを生成する撮像素子と、画像データを生成した際の、前記レンズにおける複数の種類のレンズ情報を得る手段と、前記複数の種類のレンズ情報に対応した、前記画像データにおけるレンズの収差を補正するための複数の補正係数を記憶する手段と、前記複数の補正係数を、前記複数の種類のレンズ情報に応じて読み出す手段と、前記複数の種類のレンズ情報のうち、得られない情報があった場合に、読み出した複数の補正係数のうち予め設定されたいずれかの補正係数に対して、重み付けを行って、前記画像データを補正する補正手段と、を有することを特徴とする。
【0024】
また、上記課題を解決するため、本願請求項2に記載の撮像装置は、レンズを通して結像された被写体像から画像データを生成する撮像素子と、画像データを生成した際の、前記レンズにおける複数の種類のレンズ情報を得る手段と、前記複数の種類のレンズ情報に対応した、前記画像データにおけるレンズの収差を補正するための複数の補正係数を記憶する手段と、前記複数の補正係数を、前記複数の種類のレンズ情報に応じて読み出す手段と、前記複数の種類のレンズ情報のうち、得られない情報があった場合に、該得られない情報の特性に基づいて複数の補正係数を解析し、解析結果に応じて選択された補正係数に対して、重み付けを行って、前記画像データを補正する補正手段と、を有することを特徴とする。
【発明の効果】
【0025】
本発明により、撮影レンズの光学的収差補正処理を行うときに、必要な撮影レンズの情報が得られなくても、出力される画像が観賞上好ましい画像となるように補正を行うことを可能とする。
【発明を実施するための最良の形態】
【0026】
(第1の実施形態)
本発明の第1の実施形態では、撮影レンズの光学的収差補正として、周辺光量落ち補正を行う場合の例をあげて説明を行う。撮影レンズからの情報の一部あるいは全部が送られて来なかった場合について、周辺光量落ち補正を行った結果の画像を観賞上好ましくなるように出力する方式について、主に図1、図2を用いて説明する。
【0027】
図1は、本発明の実施形態すべてに適用される、撮影レンズの光学的収差を補正する手段を備えた、一眼レフデジタルカメラのシステム全体を表す図である。
【0028】
このシステムは、被写体像を結像するためのレンズユニット101、及び撮影した画像を画像データとして、記録媒体121に記録したり、ディスプレイやプリンターなどの出力装置123に出力したりするカメラ本体部100より構成される。
【0029】
撮影レンズ102によって被写体像を撮像素子112に結像する。
【0030】
撮像素子112において撮影された被写体像は光電変換によって電気的なデータとして出力され、A/D変換113においてデジタル画像データに変換される。
【0031】
このように被写体像をデジタル画像データとして出力するために、撮影レンズ102においては、レンズ制御部103によって、ズーム操作、ピント合焦、絞り制御などが制御される。
【0032】
これらの制御は、使用者が光学ファインダー140の被写体像をプレビューしながら、可動部材を操作することによって行ってもよい。
【0033】
ここでは、ズーム操作は、使用者が光学ファインダー140の被写体像をプレビューしながら、使用者が不図示のズームスイッチを押すことにより焦点距離を調節し、ピント合焦は、不図示の自動焦点機構によって行われるものとする。絞りはカメラ部100の操作部材で使用者が設定した絞り条件をカメラ制御部110から107を介してレンズ制御部103に送り、その情報に従って撮影レンズ102に付属した絞りが、レンズ制御部103によって制御される。
【0034】
撮影されたデジタル画像データは、周辺光量落ち補正を収差補正回路115で行うために、カメラ制御部110からの制御信号によって切り換えスイッチ114を上側に切り換える。
【0035】
このとき同時に、切り換えスイッチ117は下側に切り換わり、後段の収差補正回路118をスキップするようになる。
【0036】
前段の収差補正回路115で行われる周辺光量落ち補正は、画像データ中の各画素の画面内での位置に基づき、画面中心からの距離によって変化するゲインを各画像データに掛けることによって補正を行う。
【0037】
前段の収差補正回路115での補正は、撮像素子から出力されたデジタルデータに対して行うので、線形にゲインを掛けることが可能である。そのため、周辺光量落ちのように輝度の不足を補う補正は、後述する非線形処理が入る現像処理116よりも前段で行う方が補正処理が行いやすい。
【0038】
現像処理116よりも後段の収差補正回路118で周辺光量落ち補正を行う場合は、線形な補正ゲインテーブルに対しては、現像処理116で非線形な処理を行うコントラスト補正(γ処理)の効果を反映させる必要がある。
【0039】
ただし、後段の収差補正回路118で補正を行うときは、一旦、記録媒体121に記録された画像データをデコードしたデータに対して、補正を掛けることができるという優位性もある。
【0040】
各ゲインのデータは、カメラ制御部110から収差補正回路115に送られる。
【0041】
そのデータは、図7に示されるように、画面中心からの距離(像高)に対して、10点のドットで表されているゲインのデータで構成されている。
【0042】
10点の各像高の間に位置する画素データに対しては、該当する画素データが位置する2点間の像高の各2点のゲインで補間したゲインを使用する。
【0043】
以下では、この10点のゲインのテーブルを決める方法について、図2を用いて説明する。
【0044】
周辺光量落ち補正テーブルは、像高に対するゲインで表される。図10に示されるように、撮影レンズ固有のレンズID情報、ズーム操作によって決まる焦点距離情報、ピント合焦によって決まるピント位置情報すなわち撮影距離情報、絞り設定によって決まる絞り情報によって変化する四次元の複数のテーブルで構成されている。
【0045】
これらの各補正係数は、実際に撮影した画像または設計値から実際に撮影した画像を光線追跡によってシミュレートしたものから求めたものが主に用いられる。
【0046】
図10は、11の像高に対応した11点のゲインのデータが示されているが、画面中心すなわち像高0のときは、必ずゲイン=1.0となるので、省略して10点のゲインのデータを与えることで対応可能である。
【0047】
例えば、絞りF4.0のときは、絞りF2.8の像高に対するテーブルと絞りF8の像高に対するテーブルの間で、1:2補間したときのデータを使用する。
【0048】
同様に、撮影距離2.0mのときは、前記絞りのときに求めた像高に対するテーブルの1.0m時と3.0m時とのテーブル間で1:1補間をする。
【0049】
さらに、焦点距離50mmのときは、前記で求めた絞りと撮影距離の条件の像高に対するテーブルの50mmのときのものを用いる。
【0050】
これによって、像高に対する10点のゲインは決定される。
【0051】
図10のテーブルは、カメラメモリ111に記憶する場合、カメラ100に装着可能な全種類のレンズユニット101に対応する必要があるので、レンズID情報に対応するテーブルを持つ必要がある。
【0052】
図10のテーブルを、レンズメモリ104に記憶する場合、各撮影レンズ104ごとに図10のテーブルを持つので、レンズID情報に対応する必要はない。
【0053】
ここで、本発明のポイントである、撮影レンズの撮影条件の情報が得られなかった場合の10点のゲインの作成方法について、図2を用いて説明する。
【0054】
以下では、図10の補正ゲインのテーブルをカメラメモリ111に記憶してある場合について述べる。
【0055】
撮影レンズ101のレンズ制御部103が、10点の補正ゲインテーブルを算出して出力するための情報の全てか一部をカメラ制御部110に送れなくなる。その理由としては、レンズID情報、焦点距離情報、撮影距離情報、絞り情報の全てか一部を出力する手段を持っていないことが考えられる。また、撮影レンズ101がカメラ100との通信手段を持たないもので、カメラシステムに適合していなかったり、レンズ制御部103を持たない撮影レンズであったりなどの理由が考えられる。
【0056】
図2は、カメラ制御部110において、レンズ制御部103から送られてきた撮影時の各情報を分析する処理の流れを表すフローチャートである。
【0057】
まず、ステップS201で、撮影時の撮影レンズの情報を取得し、ステップS202でその情報からレンズIDを検出する。
【0058】
レンズIDを検出したら、ステップS203で、該当するレンズIDのテーブル(図10の示す全部)をカメラメモリ111より取得する。
【0059】
ここで、レンズIDを検出できなかった場合、ステップS205に進み、あらかじめ準備しておいた像高に対する10点のゲインテーブルをカメラメモリ111より取得する。
【0060】
例えば、レンズIDがない場合、「レンズID:583」「焦点距離:50mm」「撮影距離:無限遠」「絞り:F2.8」を使用する、と決めておく。すると、図10に示される「像高1:1.01、像高2:1.04、像高3:1.08、像高4:1.14、像高5:1.22、像高6:1.40、像高7:1.66、像高8:2.03、像高9:2.60、像高10:3.45」というテーブルを取得する。そして、ステップS218に進む。
【0061】
ステップS203で、レンズIDのテーブルを取得すると、ステップS206で焦点距離情報を検出できたか判定する。焦点距離情報を検出できたときには、ステップS207において、その焦点距離に該当するテーブルを保持して他の情報を破棄する。
【0062】
例えば、焦点距離が100mmであれば、図10の焦点距離85mmのテーブルと135mmのテーブルより、各ゲインのテーブルを85:135で補間したデータを保持する。
【0063】
ここで焦点距離情報が得られなかった場合は、ステップS209において、「焦点距離:50mm」「撮影距離:無限遠」「絞り:F2.8」を使用する、と決めておく。すると、図10に示される「像高1:1.01、像高2:1.04、像高3:1.08、像高4:1.14、像高5:1.22、像高6:1.40、像高7:1.66、像高8:2.03、像高9:2.60、像高10:3.45」というテーブルを取得する。そして、下記で説明する218のステップに進む。
【0064】
ステップS207で焦点距離に応じたテーブルを選択すると、ステップS210において撮影距離情報を検出できたか判定する。ステップS210で撮影距離情報を検出できたときには、ステップS211において、その撮影距離に該当するテーブルを保持して他の情報を破棄する。
【0065】
例えば、撮影距離が2.0mだった場合、前記で求めて保持したテーブルのうち、1.0m時と3.0m時のテーブルで補間する。
【0066】
ここで撮影距離情報が得られなかった場合は、ステップ213において、「撮影距離:無限遠」「絞り:F2.8」を使用する、と決めておけば、それに該当するテーブルを保持する。そして、下記で説明する218のステップに進む。
【0067】
ステップS211で撮影距離に該当するテーブルを保持したのであれば、ステップS214で絞り情報を検出できたか判定する。ステップS214で絞り情報を検出できた場合は、ステップS215において、その絞りに該当するテーブルを保持して他の情報を破棄する。
【0068】
例えば、絞りがF4だった場合、前記で求めて保持したテーブルのうち、F2.8時とF8時のテーブルで補間する。
【0069】
ここで絞り情報が得られなかった場合は、ステップ217において、「絞り:F2.8」を使用する、と決めておけば、それに該当するテーブルを保持する。そして、下記で説明する218のステップに進む。
【0070】
以上のようにして、像高10点に対する10種類の補正ゲインが決定される。
【0071】
最後に、求められた補正ゲインに対して、ステップ218において、重み付けを行う。
【0072】
レンズID、焦点距離、撮影距離、絞りの各情報が全て得られた場合は、最適に周辺光量落ち補正が行われるので、ここでは重み付けの必要はなく、重み付けゲイン1.0倍で出力する。
【0073】
撮影レンズの各情報が得られなかった場合は、レンズID、焦点距離、撮影距離、絞りの順番に、補正の確度が落ちていく。例えば、図8に示すように、ステップ205からのテーブルに対しては、0.5倍ゲインを掛け、ステップ209からのテーブルに対しては、0.6倍ゲインを掛ける。ステップ213からのテーブルには0.7倍ゲインを掛け、ステップ217からのテーブルに対しては、0.8倍ゲインを掛けることによって重み付けを行う。
【0074】
この重み付け処理を行うことによって、周辺光量落ちの現象を必ず緩和することができ、さらに、テーブルの不整合によって生じる図6で説明したような過補正の状態を防止することができる。
【0075】
以上のようにして求められた、像高10点に対する各補正ゲインのテーブルは、カメラ制御部110より収差補正処理115に送られて、補正処理ステップ219が行われる。
【0076】
補正処理ステップ219では、前記に述べた通り、像高10箇所以外の像高は、2点の像高データより補間したゲインを求め、各像高に位置する画素に対して相当するゲインを掛けて、周辺光量落ち補正を行う。
【0077】
そして、画像データ出力ステップ220によって、周辺光量落ち補正された画像データは、現像処理116に送られ、色変換処理、コントラスト補正処理(ガンマ処理)、シャープネス処理などの現像処理が行われる。そして、記録処理120や出力処理122に送られて、記録媒体121や出力装置123に出力される。
【0078】
以上のようにして、周辺光量補正を行うことで、撮影レンズからレンズID、焦点距離、撮影距離、絞りの各情報が得られない場合であっても、周辺光量落ちを補正することができる。その補正量は必ずしも理想的な均一な補正ではない場合もあるが、過補正による不自然な画質が生じる可能性を低く抑えることができる。
【0079】
(第2の実施形態)
次に、本発明の第2の実施形態は、第1の実施形態と同様に、撮影レンズの光学的収差補正として、周辺光量落ち補正を行う場合を一例として述べる。本実施形態では、撮影レンズからの情報の一部あるいは全部が送られて来なかった場合について、第1の実施形態よりもさらに精度良く補正できる方法について、主に図1、図3を用いて説明する。
【0080】
図1において、撮影レンズの周辺光量落ちの収差を含む画像データが収差補正処理115に送られてくるまでの処理は、第1の実施形態と同様である。
【0081】
また、撮影レンズの撮影時のレンズID、焦点距離、撮影距離、絞りの各情報が、レンズ制御部103からカメラ制御部110に送られてくる処理も、第1の実施形態と同様である。
【0082】
各ゲインのデータは、カメラ制御部110から収差補正回路115に送られる。そのデータは、第1の実施形態と同様である。具体的には、図7に示されるように、画面中心からの距離(像高)に対して、10点のドットで表されているゲインのデータで構成されている。そして、10点の各像高の間に位置する画素データに対しては、該当する画素データが位置する2点間の像高の各2点のゲインで補間したゲインを使用する。
【0083】
以下では、この10点のゲインのテーブルを決める方法について、図3を用いて説明する。
【0084】
周辺光量落ち補正テーブルは、像高に対するゲインで表される。
【0085】
図10に示されるように撮影レンズ固有のレンズID情報、ズーム操作によって決まる焦点距離情報、ピント合焦によって決まるピント位置情報すなわち撮影距離情報、絞り設定によって決まる絞り情報によって変化する四次元の複数のテーブルで構成されている。
【0086】
これらの各補正係数は、実際に撮影した画像または設計値から実際に撮影した画像を光線追跡によってシミュレートしたものから求めたものが主に用いられる。
【0087】
図10は、11の像高に対応した11点のゲインのデータが示されているが、画面中心すなわち像高0のときは、必ずゲイン=1.0となるので、省略して10点のゲインのデータを与えることで対応可能である。
【0088】
例えば、絞りF4.0のときは、絞りF2.8の像高に対するテーブルと絞りF8の像高に対するテーブルの間で、1:2補間したときのデータを使用する。
【0089】
同様に、撮影距離2.0mのときは、前記絞りのときに求めた像高に対するテーブルの1.0m時と3.0m時とのテーブル間で1:1補間をする。
【0090】
さらに、焦点距離50mmのときは、前記で求めた絞りと撮影距離の条件の像高に対するテーブルの50mmのときのものを用いる。
【0091】
これによって、像高に対する10点のゲインは決定される。
【0092】
図10のテーブルは、カメラメモリ111に記憶する場合、カメラ100に装着可能な全撮影レンズ101に対応する必要があるので、レンズID情報に対応するテーブルを持つ必要がある。
【0093】
図10のテーブルを、レンズメモリ104に記憶する場合、各撮影レンズ104ごとに図10のテーブルを持つので、レンズID情報に対応する必要はない。
【0094】
ここで、本発明のポイントである、撮影レンズの撮影条件の情報が得られなかった場合の10点のゲインの作成方法について、図3を用いて説明する。
【0095】
以下では、図10の補正ゲインのテーブルをカメラメモリ111に記憶してある場合について述べる。
【0096】
撮影レンズ101のレンズ制御部103が、10点の補正ゲインテーブルを算出して出力するための情報の全てか一部をカメラ制御部110に送れなくなる。その理由としては、レンズID情報、焦点距離情報、撮影距離情報、絞り情報の全てか一部を出力する手段を持っていなかったりする場合がある。また、撮影レンズ101がカメラ100との通信手段を持たないもので、カメラシステムに適合していなかったり、レンズ制御部103を持たない撮影レンズであったりなどの場合がある。
【0097】
図3は、カメラ制御部110において、レンズ制御部103から送られてきた撮影時の各情報を分析する処理の流れを表すフローチャートである。
【0098】
ステップS301で。まず、撮影時の撮影レンズの情報を取得し、ステップS302でその情報からレンズIDを検出する。
【0099】
ステップS302でレンズIDを検出したら、ステップS303において該当するレンズIDのテーブル(図10の示す全部)をカメラメモリ111より取得する。
【0100】
ここで、レンズIDを検出できなかった場合、図10のテーブルを含む、カメラメモリ111に記憶されている、総てのレンズIDのテーブルを、カメラメモリ111より取得する。
【0101】
次に、ステップS304において、取得した総てのテーブルの補正ゲイン値を解析し、像高10すなわち画面端での補正ゲイン値が最大値となるテーブルを検出し、最大値を検出したレンズIDのテーブルを選択する。そして、ステップS305において、この解析結果に基づいて、そのレンズIDのテーブルだけ抽出する。
【0102】
ここでは、最大値を検出してもよいし、各レンズIDごとに画面端での補正ゲイン値の大きい順に決められた数だけ選んでその平均値を求めて、最大の平均値となるレンズIDのテーブルを選択してもよい。補正量が大きくなる補正ゲイン値を要素として持つレンズIDのテーブルを選択してもよいし、補正をできるだけ抑えて過補正防止するためには、画面端での補正ゲインが最小値となるテーブルを選択してもよい。あるいは、どの条件においてもある程度の補正量を確保したい場合は、画面端での補正ゲインの平均値に最も近い値や、画面端での補正ゲインのメジアンを取るテーブルでも構わない。
【0103】
以上のようにして、例えば、レンズIDがない場合、ステップ305において、「レンズID:583」の補正テーブルが選択されたとすると、このテーブルを次のステップS306に送る。
【0104】
次に、ステップS303及びS305より取得された補正ゲインテーブルは、ステップS306で焦点距離情報を検出したとき、ステップS307において、その焦点距離に該当するテーブルを保持して他の情報を破棄する。
【0105】
例えば、焦点距離が28mmであれば、図10の焦点距離28mmのテーブルを保持し、次のステップS310に送る。
【0106】
ここで焦点距離情報が得られなかった場合は、ステップS308において、ステップS303またはS305で得られたレンズID:583の補正テーブルを解析し、補正ゲイン値の最大値を検出し、最大値を検出した焦点距離のテーブルを選択する。そして、ステップS309において、この解析結果に基づいて、その焦点距離のテーブルだけ選択して抽出する。
【0107】
ここでは、最大値を検出してもよいし、各焦点距離テーブルごとに画面端における補正ゲイン値の大きい順に決められた数だけ選んでその平均値を求めて、最大の平均値となる焦点距離テーブルを選択してもよい。その他にも、前記のように中間付近の値を取る補正ゲイン値を持つ焦点距離のテーブルを選択する方法でも構わない。
【0108】
以上のようにして、例えば、図10のレンズID:583の場合、焦点距離情報がないときは、ステップ308、309において、最大値3.57の補正ゲイン値を持つ「焦点距離:28mm」の補正テーブルが選択されることになる。このテーブルを次のステップS310に送る。
【0109】
次に、ステップS307及びS309よりより取得された補正ゲインテーブルは、ステップS310で撮影距離情報を検出したとき、ステップS311において、その撮影距離に該当するテーブルを保持して他の情報を破棄する。
【0110】
例えば、撮影距離が1.0mであれば、図10の焦点距離28mmであったときの、撮影距離1.0mのテーブルを保持し、次のステップS314のステップに送る。
【0111】
ここで撮影距離情報が得られなかった場合は、ステップS312において、ステップS307またはS309で得られた焦点距離:28mmの補正テーブルを解析し、補正ゲイン値の最大値を検出し、最大値を検出した焦点距離のテーブルを選択する。そしてステップS313において、この解析結果に基づいて、その焦点距離のテーブルだけ選択して抽出する。
【0112】
ここでは、最大値を検出してもよいし、各撮影距離テーブルごとに補正ゲイン値の大きい順に決められた数だけ選んでその平均値を求めて、最大の平均値となる撮影距離テーブルを選択してもよい。その他にも、前記のように中間付近の値を取る補正ゲイン値を持つ焦点距離のテーブルを選択する方法でも構わない。
【0113】
以上のようにして、例えば、図10のレンズID:583、焦点距離:28mmの場合、撮影距離情報がないときは、ステップS312、S313において、最大値3.57の補正ゲイン値を持つ「撮影距離:1.0mm」の補正テーブルが選択されることになる。そして、このテーブルを次のステップS314に送る。
【0114】
次に、ステップS311及びS313よりより取得された補正ゲインテーブルは、ステップS314で絞り情報を検出したとき、ステップS315において、その撮影距離に該当するテーブルを保持して他の情報を破棄する。
【0115】
例えば、絞りが5.6であれば、図10の焦点距離28mmの撮影距離1.0mであったときの、絞りF2.8のテーブルとF8のテーブルより、各ゲインのテーブルをF2.8:F8で補間したデータを保持する。具体的には、F2.8時とF8時のデータを2:1で内分したテーブルであり、これを次のステップS318に送る。
【0116】
ここで絞り情報が得られなかった場合は、ステップS316において、ステップS311またはS313で得られた焦点距離:28mm、撮影距離1.0mの補正テーブルを解析し、補正ゲイン値の最大値を検出し、最大値を検出した絞りのテーブルを選択する。そして、ステップS317において、この解析結果に基づいて、その絞りのテーブルだけ選択して抽出する。
【0117】
ここでは、最大値を検出してもよいし、各絞りテーブルごとに補正ゲイン値の大きい順に決められた数だけ選んでその平均値を求めて、最大の平均値となる絞りテーブルを選択してもよい。その他にも、例えば、絞りの各F値の画面端での補正係数同士を比較して、補正係数の最大最小の平均値に近いときのF値を補正テーブルとすればよい。このようにすれば、どのF値で撮影されても、補正量の誤差は最大または最小の補正係数の場合となり、最大誤差を小さくすることができる。
【0118】
以上のようにして、例えば、図10のレンズID:583、焦点距離:28mm、撮影距離:1.0mの場合、絞り情報がないときは、ステップ316、317において、最大値3.57の補正ゲイン値を持つ「絞り:F2.8」の補正テーブルが選択される。このテーブルを次のステップS318に送る。
【0119】
以上のようにして、像高10点に対する10種類の補正ゲインが決定される。
【0120】
最後に、求められた補正ゲインに対して、ステップS318において、重み付けを行う。
【0121】
レンズID、焦点距離、撮影距離、絞りの各情報が全て得られた場合は、最適に周辺光量落ち補正が行われるので、ここでは重み付けの必要はなく、重み付けゲイン1.0倍で出力する。
【0122】
撮影レンズの各情報が得られなかった場合は、情報の数が少ないほど補正の確度が落ちていくので、情報の欠落している数の分だけゲインを下げる。ステップS315またはS317からのテーブルに対しては、例えば、情報が1つ不足している場合は×0.8倍、2つの場合は×0.7倍、3つの場合は0.6倍、4つの場合は×0.5倍のゲインを掛けることによって重み付けを行う。(図9)
この重み付け処理を行うことによって、周辺光量落ちの現象を必ず緩和することができ、さらに、テーブルの不整合によって生じる図6で説明したような過補正の状態を防止することができる。
【0123】
以上のようにして求められた、像高10点に対する各補正ゲインのテーブルは、カメラ制御部110より収差補正処理115に送られて、補正処理ステップS219が行われる。
【0124】
以降の周辺光量落ち補正処理を含めた画像処理は、実施形態1と同様である。
【0125】
以上のようにして、周辺光量補正を行うことで、撮影レンズからレンズID、焦点距離、撮影距離、絞りの各情報が得られない場合も、周辺光量落ちの現象を緩和することができ、過補正による不自然な画質の発生を抑制することが可能となる。
【0126】
(第3の実施形態)
次に第3の実施形態の説明をする。第3の実施形態は、撮影レンズの収差のうち、歪曲収差の補正をおこなうものである。
【0127】
画像処理全体のシステムは、実施形態1、2と同様で、歪曲収差補正も収差補正115あるいは118の処理部で補正処理を行う。
【0128】
撮影レンズに102よって結像した画像を撮像素子112で光電変換し、A/D変換部113でデジタル画像データを生成し、現像処理116を経て、記録媒体121に記録したり、表示媒体123に出力する方法は、実施形態1、2と同様である。
【0129】
ここで、前段の収差補正回路115あるいは後段の収差補正回路118で歪曲収差補正処理を行う方法を説明する。
【0130】
現像処理116の前段の収差補正回路115、後段の収差補正回路118で行う優位性は、実施形態1で述べたとおである。
【0131】
ここでは、現像処理後、後段の収差補正回路118で歪曲収差補正をする処理の場合で説明する。
【0132】
図11は、歪曲収差を説明した図である。対角上の斜め方向の最大像高となる方向で考えると、理想的な結像位置までの像高Hに対して、実際の結像した画像の像高hの画素の位置をHの位置に補正するのであるから、補正係数Wとすると、
=W+h
で、補正される。像高に対するこのWを表す10点の係数を表したものが図12の各点であり、各点の間に位置する画素については、両側の2点で補間する。
【0133】
ここでは、補正に画素の位置をずらすシフト量を補正量として加算する方法を用いているが、積算を用いてもよい。その場合は、画面中心の位置に対するゲインを1.0倍とする。
【0134】
補正係数Wは、レンズ設計値より求めた理想的なデータと、実際に撮影した画像または設計値から実際に撮影した画像を光線追跡によってシミュレートしたものの関係で求めたものが主に用いられる。
【0135】
10点の間の画素については、1次の線形補間にすると、補間境界に位置する10点のそれぞれの画素において、不連続な像が現れることがあるので、補間の演算にはn次多項式によって近似した計算値を用いる。
【0136】
ここで、本発明のポイントである、10点の補正テーブルを求める際に、テーブルを求めるための撮影レンズからの情報が欠落した場合のテーブル参照方法を述べる。
【0137】
補正値Wを表すテーブルを図13に示す。画像中心である像高0では補正を行わないので、0として表示されている。その他の像高に対する10点の補正テーブルは、レンズID、焦点距離、撮影距離、絞りの4つのパラメータに対応して変化する。
【0138】
この補正テーブルを参照するとき、レンズID、焦点距離情報、撮影距離情報、絞り情報のうち、一つ以上の情報が欠落している場合の参照方法は、実施形態1、実施形態2で述べた図2、及び図3の処理フローと同様である。
【0139】
すなわち、各情報が検出されなかったとき、それぞれの該当するテーブルのうち、代表的なテーブルを引用して、そのテーブルを送出し、最後に過補正を抑えるために重み付けを掛けるものである。
【0140】
以上のようにして、歪曲収差補正についても、周辺光量落ち補正のように、撮影レンズからレンズID、焦点距離、撮影距離、絞りの各情報が得られない場合も、歪曲収差の現象を緩和することができ、過補正による不自然な画質の発生を抑えることが可能となる。
【0141】
(第4の実施形態)
次に第4の実施形態の説明をする。第4の実施形態は、撮影レンズの収差のうち、倍率色収差の補正をおこなうものである。
【0142】
画像処理全体のシステムは、実施形態1、2、3と同様で、倍率色収差補正も収差補正115あるいは118の処理部で補正処理を行う。
【0143】
撮影レンズに102よって結像した画像を撮像素子112で光電変換し、A/D変換部113でデジタル画像データを生成し、現像処理116を経て、記録媒体121に記録したり、表示媒体123に出力する方法は、実施形態1、2、3と同様である。
【0144】
ここで、前段の収差補正回路115あるいは後段の収差補正回路118で倍率色収差補正処理を行う方法を説明する。
【0145】
現像処理116の前段の収差補正回路115、後段の収差補正回路118で行う有為性は、実施形態1で述べたとおである。
【0146】
ここでは、現像処理後118で倍率色収差補正をする処理の場合で説明する。
【0147】
図14は、倍率色収差の補正を説明した図である。倍率色収差の補正は、色成分ごとに異なる結像位置を補正して合わせればよいので、例えば画像をRGBの3平面に分離したときに、R成分が画面外側、B成分が画面内側にずれて結像しているレンズの特性を補正する場合について説明する。
【0148】
対角上の斜め方向の最大像高となる方向で考えると、画像をRGBの3平面に分離して、G画素の結像位置までの像高Hgに対して、画素の位置を補正するR画素、B画素のそれぞれの像高Hr、Hbの画素の位置をHgの位置に補正する。したがって、R画素、B画素の補正係数をそれぞれKr、Kbとすると、
Hg=Kr+Hr
Hg=Kb+Hb
で、補正される。像高に対するこのKr、Kbを表す10点の係数を表したものが図15の各点であり、各点の間に位置する画素については、両側の2点で補間する。
【0149】
補正係数Kr、Kbは、レンズ設計値より求めた理想的なデータと、実際に撮影した画像または設計値から実際に撮影した画像を光線追跡によってシミュレートしたものの関係で求めたものが主に用いられる。図14の説明では、R画素は内側方向に補正するのでKrは負の数の加算、B画素は外側方向に補正するのでKbは正の数の加算が行われる。
【0150】
ここでは、補正に画素の位置をずらすシフト量を補正量として加算する方法を用いているが、積算を用いてもよい。その場合は、画面中心の位置に対するゲインを1.0倍とする。
【0151】
10点の間の画素については、1次の線形補間にすると、補間境界に位置する10点のそれぞれの画素において、不連続な像が現れることがあるので、補間の演算にはn次多項式によって近似した計算値を用いる。
【0152】
ここで、本発明のポイントである、10点の補正テーブルを求める際に、テーブルを求めるための撮影レンズからの情報が欠落した場合のテーブル参照方法を述べる。
【0153】
補正値Kr、Kbを表すテーブルを図16に示す。KrはHg−Hrで表され、KbはHg−Hbで表されている。
【0154】
画像中心である像高0では補正を行わないので、±0として表示されている。その他の像高に対する10点の補正テーブルは、レンズID、焦点距離、撮影距離、絞りの4つのパラメータに対応して変化する。
【0155】
この補正テーブルを参照するとき、レンズID、焦点距離情報、撮影距離情報、絞り情報のうち、一つ以上の情報が欠落している場合の参照方法は、実施形態1、実施形態2、実施形態3で述べた図2、及び図3の処理フローと同様である。
【0156】
すなわち、各情報が検出されなかったとき、それぞれの該当するテーブルのうち、代表的なテーブルを引用して、そのテーブルを送出し、最後に過補正を抑えるために重み付けを掛けるものである。
【0157】
以上のようにして、倍率色収差補正についても、撮影レンズからレンズID、焦点距離、撮影距離、絞りの各情報が得られない場合も、歪曲収差の現象を緩和することができ、過補正による不自然な画質の発生を抑えることが可能となる。
【図面の簡単な説明】
【0158】
【図1】本発明の実施形態のブロック図である
【図2】本発明第1の実施形態のフローチャートを表す
【図3】本発明第2の実施形態のフローチャートを表す
【図4】従来例のブロック図である
【図5】周辺光量落ちの状態を示す図である
【図6】周辺光量落ち補正の過補正の状態を表す図である
【図7】周辺光量落ち補正のゲインを表す図である
【図8】周辺光量落ち補正のゲインに重みをつけたときを表す図である
【図9】周辺光量落ち補正のゲインに重みをつけたときを表す図である
【図10】周辺光量落ち補正テーブルを表す図である
【図11】歪曲補正を説明する図である
【図12】歪曲補正の補正係数を表す図である
【図13】歪曲補正の補正テーブルを表す図である
【図14】倍率色収差補正を説明する図である
【図15】倍率色収差補正の補正係数を表す図である
【図16】倍率色収差補正の補正テーブルを表す図である
【符号の説明】
【0159】
100 カメラ本体
101 撮影レンズ本体
102 撮影レンズ
103 レンズ制御部
104 レンズメモリ
105 撮影レンズによって結像された被写体像
106 カメラ側に送られるレンズ制御データ
107 カメラ制御部から送るレンズ制御データ
110 カメラ制御部
111 カメラメモリ
112 撮像素子
113 A/D変換
114 収差補正切り換えスイッチ
115 収差補正回路
116 現像処理部
117 収差補正切り換えスイッチ
118 収差補正回路
120 記録部
121 記録媒体
122 出力部
123 表示媒体
140 光学ファインダー

【特許請求の範囲】
【請求項1】
レンズを通して結像された被写体像から画像データを生成する撮像素子と、
画像データを生成した際の、前記レンズにおける複数の種類のレンズ情報を得る手段と、
前記複数の種類のレンズ情報に対応した、前記画像データにおけるレンズの収差を補正するための複数の補正係数を記憶する手段と、
前記複数の補正係数を、前記複数の種類のレンズ情報に応じて読み出す手段と、
前記複数の種類のレンズ情報のうち、得られない情報があった場合に、読み出した複数の補正係数のうち予め設定されたいずれかの補正係数に対して、重み付けを行って、前記画像データを補正する補正手段と、
を有することを特徴とする撮像装置。
【請求項2】
レンズを通して結像された被写体像から画像データを生成する撮像素子と、
画像データを生成した際の、前記レンズにおける複数の種類のレンズ情報を得る手段と、
前記複数の種類のレンズ情報に対応した、前記画像データにおけるレンズの収差を補正するための複数の補正係数を記憶する手段と、
前記複数の補正係数を、前記複数の種類のレンズ情報に応じて読み出す手段と、
前記複数の種類のレンズ情報のうち、得られない情報があった場合に、該得られない情報の特性に基づいて複数の補正係数を解析し、解析結果に応じて選択された補正係数に対して、重み付けを行って、前記画像データを補正する補正手段と、
を有することを特徴とする撮像装置。
【請求項3】
前記補正手段は、得られない情報の種類に応じて、前記重み付けを異ならせることを特徴とする請求項1または2に記載の撮像装置。
【請求項4】
前記補正手段は、得られない情報の数に応じて、前記重み付けを異ならせることを特徴とする請求項1または2に記載の撮像装置。
【請求項5】
前記複数の種類のレンズ情報には、レンズIDの情報、レンズの焦点距離情報、レンズの位置から求めた被写体までの距離情報、あるいは、絞り情報の少なくともいずれかを含むもので、
前記複数の種類のレンズ情報を、前記撮像装置に着脱可能なレンズユニットから受け取るための通信手段を備えていることを特徴とする請求項1乃至4のいずれかに記載の撮像装置。
【請求項6】
前記レンズの収差は、周辺光量落ち、倍率色収差、および、歪曲収差の少なくともいずれかを含むことを特徴とする請求項1乃至5のいずれかに記載の撮像装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2010−39759(P2010−39759A)
【公開日】平成22年2月18日(2010.2.18)
【国際特許分類】
【出願番号】特願2008−201969(P2008−201969)
【出願日】平成20年8月5日(2008.8.5)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】