(57)【要約】【課題】ユーザに過大な負荷をかけることなく、画像のぼけを補正できるようにする。【解決手段】  ユーザインタフェース部３１は、ユーザの操作に基づいて、パラメータσを設定し、パラメータ補正部３２に出力する。パラメータ補正部３２は、パラメータσの値に対応する観察領域の画素の特徴量を抽出し、その特徴量の最大値に基づいて、ユーザにより指定されたパラメータσを補正パラメータに補正する。ぼけ補正部３３は、入力された画像データを補正パラメータに基づいて補正し、ぼけが補正された画像の画像データを生成する。本発明は、例えば、デジタルカメラに適用することができる。【選択図】図１０
2006024192.tif 000002
【特許請求の範囲】
【請求項１】
補正対象の画像のぼけ補正に関するパラメータを取得するパラメータ取得手段と、
前記補正対象の画像の特徴量を検出する特徴量検出手段と、
前記特徴量に基づいて前記パラメータを補正して補正パラメータを生成するパラメータ生成手段と、
前記補正パラメータに基づいて前記補正対象の画像のぼけを補正するぼけ補正手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記パラメータ生成手段は、前記補正対象の画像の前記特徴量の最大値としての第１の特徴量が、取得された前記パラメータに対応する最大の前記特徴量としての第２の特徴量より小さい場合、取得された前記パラメータをそのまま前記補正パラメータとし、大きい場合、前記第１の特徴量より大きい特徴量としての第３の特徴量が最大の特徴量として対応する前記パラメータを、前記補正パラメータとする
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記特徴量検出手段は、前記特徴量として、前記補正対象の画像のアクティビティを検出する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記特徴量検出手段は、前記アクティビティとして、前記補正対象の画像の画素値の１次微分値、２次微分値、ダイナミックレンジ、または分散を検出する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記特徴量検出手段は、複数の前記特徴量を検出し、
前記パラメータ生成手段は、複数の前記特徴量に対応する複数の前記補正パラメータを生成し、
前記画像処理装置は、複数の前記補正パラメータから最小のものを選択する補正パラメータ選択手段をさらに備え、
前記ぼけ補正手段は、選択された前記補正パラメータに基づいて前記補正対象の画像のぼけを補正する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記特徴量検出手段は、前記特徴量として、前記補正対象の画像の一部の領域内の複数の画素の前記特徴量のうちの最大値を検出する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記ぼけ補正手段は、前記補正対象の画像の一部の領域を、取得された前記パラメータの値に基づいた大きさに設定する
ことを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記ぼけ補正手段は、隣接する画素の画素値の差分を利用して、前記補正対象の画像のぼけを補正する演算を行う
ことを特徴とする請求項１に記載の画像処理装置。
【請求項９】
前記ぼけ補正手段は、前記差分を基準値と比較してエッジの方向を判定し、前記エッジが存在する方向の前記差分は、存在しない方向の差分に較べ、利用する割合を少なくする  ことを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記補正対象の画像のぼけは、フォーカスぼけである
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１１】
前記補正対象の画像のぼけは、動きぼけである
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１２】
補正対象の画像のぼけ補正に関するパラメータを取得するパラメータ取得ステップと、
前記補正対象の画像の特徴量を検出する特徴量検出ステップと、
前記特徴量に基づいて前記パラメータを補正して補正パラメータを生成するパラメータ生成ステップと、
前記補正パラメータに基づいて前記補正対象の画像のぼけを補正するぼけ補正ステップと
を含むことを特徴とする画像処理方法。
【請求項１３】
補正対象の画像のぼけ補正に関するパラメータを取得するパラメータ取得ステップと、
前記補正対象の画像の特徴量を検出する特徴量検出ステップと、
前記特徴量に基づいて前記パラメータを補正して補正パラメータを生成するパラメータ生成ステップと、
前記補正パラメータに基づいて前記補正対象の画像のぼけを補正するぼけ補正ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項１４】
補正対象の画像のぼけ補正に関するパラメータを取得するパラメータ取得ステップと、
前記補正対象の画像の特徴量を検出する特徴量検出ステップと、
前記特徴量に基づいて前記パラメータを補正して補正パラメータを生成するパラメータ生成ステップと、
前記補正パラメータに基づいて前記補正対象の画像のぼけを補正するぼけ補正ステップと
をコンピュータに実行させることを特徴とするプログラム。
【請求項１５】
学習用の画像データを取得する取得手段と、
画像にぼけを発生するためのパラメータを設定する設定手段と、
取得された前記画像データに前記パラメータを含む関数を適用してぼけの発生した画像の画像データを生成する生成手段と、
生成された前記画像データの画像の特徴量を検出する特徴量検出手段と、
設定された前記パラメータに対応するぼけが発生した画像の前記特徴量の最大値を検出する最大値検出手段と、
指定パラメータと指定特徴量が指定されたとき、前記指定パラメータと前記指定特徴量に対応する補正パラメータを読み出すテーブルであって、前記指定特徴量が、前記指定パラメータに対応する前記特徴量の最大値より小さい場合、前記指定パラメータを前記補正パラメータとし、大きい場合、前記指定特徴量より値が大きい特徴量が前記特徴量の最大値として対応する前記パラメータを前記補正パラメータとする前記テーブルを作成する作成手段と
を備えることを特徴とする画像処理装置。
【請求項１６】
前記特徴量の度数を検出する度数検出手段をさらに備え、
前記最大値検出手段は、検出された度数が予め定められている閾値より大きい前記特徴量の中から前記特徴量の最大値を検出する
ことを特徴とする請求項１５に記載の画像処理装置。
【請求項１７】
前記指定特徴量が、前記指定パラメータと同じ大きさの前記パラメータに対応する前記特徴量の最大値を超えない場合は、前記指定パラメータを前記補正パラメータとし、前記指定特徴量が、前記指定パラメータと同じ大きさの前記パラメータに対応する前記特徴量の最大値を超える場合は、前記指定特徴量より値が大きい特徴量が前記特徴量の最大値として対応する前記指定パラメータを前記補正パラメータとする
ことを特徴とする請求項１５に記載の画像処理装置。
【請求項１８】
学習用の画像データを取得する取得ステップと、
画像にぼけを発生するためのパラメータを設定する設定ステップと、
取得された前記画像データに前記パラメータを含む関数を適用してぼけの発生した画像の画像データを生成する生成ステップと、
生成された前記画像データの画像の特徴量を検出する特徴量検出ステップと、
設定された前記パラメータに対応するぼけが発生した画像の前記特徴量の最大値を検出する最大値検出ステップと、
指定パラメータと指定特徴量が指定されたとき、前記指定パラメータと前記指定特徴量に対応する補正パラメータを読み出すテーブルであって、前記指定特徴量が、前記指定パラメータに対応する前記特徴量の最大値より小さい場合、前記指定パラメータを前記補正パラメータとし、大きい場合、前記指定特徴量より値が大きい特徴量が前記特徴量の最大値として対応する前記パラメータを前記補正パラメータとする前記テーブルを作成する作成ステップと
を含むことを特徴とする画像処理方法。
【請求項１９】
学習用の画像データを取得する取得ステップと、
画像にぼけを発生するためのパラメータを設定する設定ステップと、
取得された前記画像データに前記パラメータを含む関数を適用してぼけの発生した画像の画像データを生成する生成ステップと、
生成された前記画像データの画像の特徴量を検出する特徴量検出ステップと、
設定された前記パラメータに対応するぼけが発生した画像の前記特徴量の最大値を検出する最大値検出ステップと、
指定パラメータと指定特徴量が指定されたとき、前記指定パラメータと前記指定特徴量に対応する補正パラメータを読み出すテーブルであって、前記指定特徴量が、前記指定パラメータに対応する前記特徴量の最大値より小さい場合、前記指定パラメータを前記補正パラメータとし、大きい場合、前記指定特徴量より値が大きい特徴量が前記特徴量の最大値として対応する前記パラメータを前記補正パラメータとする前記テーブルを作成する作成ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項２０】
学習用の画像データを取得する取得ステップと、
画像にぼけを発生するためのパラメータを設定する設定ステップと、
取得された前記画像データに前記パラメータを含む関数を適用してぼけの発生した画像の画像データを生成する生成ステップと、
生成された前記画像データの画像の特徴量を検出する特徴量検出ステップと、
設定された前記パラメータに対応するぼけが発生した画像の前記特徴量の最大値を検出する最大値検出ステップと、
指定パラメータと指定特徴量が指定されたとき、前記指定パラメータと前記指定特徴量に対応する補正パラメータを読み出すテーブルであって、前記指定特徴量が、前記指定パラメータに対応する前記特徴量の最大値より小さい場合、前記指定パラメータを前記補正パラメータとし、大きい場合、前記指定特徴量より値が大きい特徴量が前記特徴量の最大値として対応する前記パラメータを前記補正パラメータとする前記テーブルを作成する作成ステップと
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、記録媒体、並びにプログラムに関し、特に、より簡単に、画像のぼけを補正することができるようにした画像処理装置および方法、記録媒体、並びにプログラムに関する。
【背景技術】
【０００２】
最近、デジタルカメラが普及し、多くのユーザがスナップ写真などを撮影する機会が増えてきた。デジタルカメラにおいては、いわゆるオートフォーカス機能が備えられており、ユーザがフォーカス調整しなくても、被写体に対して最適なフォーカス調整がカメラ側で行われる。
【０００３】
しかしながら、オートフォーカス機能においては、予め定められているいくつかの点のフォーカス状態が最良となるようにフォーカスが調整されるため、ユーザが、被写体として撮影したいオブジェクトに対してフォーカスが合わされずに、例えば、背景の画像にフォーカスが調整されてしまうようなことがある。このような場合、ユーザが意図する被写体の画像は、ぼけてしまうことになる。
【０００４】
そこで、例えば、画像のぼけを補正する方法が提案されている（例えば、特許文献１）。
【特許文献１】特開２０００−５７３３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、画像の全体に対してぼけを補正する処理を行うと、例えば、主たる被写体の画像のぼけは補正されるが、逆にそれまでぼけていなかった背景の画像に、オーバーシュートやリンギングが発生し、画像が劣化してしまう結果となることが多かった。
【０００６】
そこで、上記特許文献１の発明では、ユーザにぼけを補正する範囲を指定させ、その指定された範囲についてだけ、補正処理が行われている。
【０００７】
しかしながら、補正領域の範囲をユーザに指定させるようにすると、例えば、その主たる被写体の形状が複雑な形状をしていたような場合、その複雑な形状をしている被写体の外形を正確に辿って、領域として指定する操作が必要となり、ユーザにとって大きな負担となる課題があった。
【０００８】
本発明は、このような状況に鑑みてなされたものであり、ユーザに特別な負荷を与えることなく、簡単に画像のぼけを補正することができるようにするものである。
【課題を解決するための手段】
【０００９】
本発明の第１の側面は、補正対象の画像のぼけ補正に関するパラメータを取得するパラメータ取得手段と、前記補正対象の画像の特徴量を検出する特徴量検出手段と、前記特徴量に基づいて前記パラメータを補正して補正パラメータを生成するパラメータ生成手段と、前記補正パラメータに基づいて前記補正対象の画像のぼけを補正するぼけ補正手段とを備えることを特徴とする画像処理装置である。
【００１０】
本発明の第１の側面においては、画像の特徴量が検出され、その特徴量に基づいて、画像のぼけ補正に関するパラメータが補正され、補正パラメータが生成される。そして、この補正パラメータに基づいて、補正対象の画像のぼけが補正される。
【００１１】
本発明の第２の側面は、学習用の画像データを取得する取得手段と、画像にぼけを発生するためのパラメータを設定する設定手段と、取得された前記画像データに前記パラメータを含む関数を適用してぼけの発生した画像の画像データを生成する生成手段と、生成された前記画像データの画像の特徴量を検出する特徴量検出手段と、設定された前記パラメータに対応するぼけが発生した画像の前記特徴量の最大値を検出する最大値検出手段と、指定パラメータと指定特徴量が指定されたとき、前記指定パラメータと前記指定特徴量に対応する補正パラメータを読み出すテーブルであって、前記指定特徴量が、前記指定パラメータに対応する前記特徴量の最大値より小さい場合、前記指定パラメータを前記補正パラメータとし、大きい場合、前記指定特徴量より値が大きい特徴量が前記特徴量の最大値として対応する前記パラメータを前記補正パラメータとする前記テーブルを作成する作成手段とを備えることを特徴とする画像処理装置である。
【００１２】
本発明の第２の側面においては、指定特徴量が、指定パラメータに対応する特徴量の最大値より小さい場合、指定パラメータを補正パラメータとし、特徴量が指定パラメータに対応する特徴量の最大値より大きい場合、指定特徴量より値が大きい特徴量が、特徴量の最大値として対応するパラメータを補正パラメータとするテーブルが作成される。
【発明の効果】
【００１３】
本発明の第１の側面によれば、画像のぼけを補正することができる。特に、本発明によれば、ユーザに特別の負荷を強いることなく、簡単に画像のぼけを補正することが可能となる。
【００１４】
本発明の第２の側面によれば、画像を補正するためのパラメータを記述したテーブルを作成することができる。特に、ユーザに負担をかけることなく、簡単に画像のぼけを補正することが可能な補正パラメータを記述したテーブルを作成することが可能となる。
【発明を実施するための最良の形態】
【００１５】
以下に本発明の最良の形態を説明するが、開示される発明と実施の形態との対応関係を例示すると、次のようになる。明細書中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００１６】
さらに、この記載は、明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現し、追加される発明の存在を否定するものではない。
【００１７】
第１の側面の画像処理装置は、補正対象の画像のぼけ補正に関するパラメータ（例えば、パラメータσ）を取得するパラメータ取得手段（例えば、図１４のステップS51の処理を実行する図１０のユーザIF部３１）と、前記補正対象の画像の特徴量（例えば、画像データの1次微分値、2次微分値、ダイナミックレンジ、または分散）を検出する特徴量検出手段（例えば、図１４のステップS52,S53の処理を実行する図１３の特徴量検出部61-1乃至61-4）と、前記特徴量に基づいて前記パラメータを補正して補正パラメータを生成するパラメータ生成手段（例えば、図１４のステップS55の処理を実行する図１３のルックアップテーブル62-1乃至62-4）と、前記補正パラメータに基づいて前記補正対象の画像のぼけを補正するぼけ補正手段（例えば、図１２のステップS32の処理を実行する図１０のぼけ補正部33）とを備えることを特徴とする。
【００１８】
前記パラメータ生成手段は、前記補正対象の画像の前記特徴量の最大値としての第１の特徴量（例えば、図１９の特徴量V80）が、取得された前記パラメータ（例えば、図２０のパラメータσ70）に対応する最大の前記特徴量としての第２の特徴量（例えば、図２０の特徴量V70）より小さい場合（例えば、第１の特徴量が図１６の特徴量V80である場合）、取得された前記パラメータ（例えば、図１６のパラメータσ70）をそのまま前記補正パラメータとし（例えば、図１６の縦の座標軸のパラメータσ70に対応する枠の中に補正パラメータとして記載されているパラメータσ70とし）、大きい場合（例えば、第１の特徴量が図２０の特徴量V60である場合）、前記第１の特徴量より大きい特徴量としての第３の特徴量（例えば、図２０の特徴量V50）が最大の特徴量として対応する前記パラメータ（例えば、図２０のパラメータσ50）を、前記補正パラメータとする（例えば、図１６の縦の座標軸のパラメータσ70に対応する枠の中の補正パラメータをパラメータσ50とする）。
【００１９】
前記特徴量検出手段は、複数の前記特徴量を検出し、前記パラメータ生成手段は、複数の前記特徴量に対応する複数の前記補正パラメータを生成し、前記画像処理装置は、複数の前記補正パラメータから最小のものを選択する補正パラメータ選択手段（例えば、図１４のステップS56の処理を実行する図１３の選択部63）をさらに備え、前記ぼけ補正手段は、選択された前記補正パラメータに基づいて前記補正対象の画像のぼけを補正する。
【００２０】
前記特徴量検出手段（例えば、図１３の特徴量検出部61-1乃至61-4を構成する特徴量抽出部71-1乃至71-4）は、前記特徴量として、前記補正対象の画像の一部の領域内の複数の画素の前記特徴量のうちの最大値を検出する（例えば、図１４のステップS54の処理）。
【００２１】
前記ぼけ補正手段は、前記補正対象の画像の一部の領域（例えば、図１５の観察領域）を、取得された前記パラメータの値に基づいた大きさに設定する（例えば、図１４のステップS52の処理）。
【００２２】
前記ぼけ補正手段は、隣接する画素の画素値の差分（例えば、差分絶対値）を利用して、前記補正対象の画像のぼけを補正する演算を行う（例えば、図２３のステップS104の処理）。
【００２３】
前記ぼけ補正手段は、前記差分を基準値と比較してエッジの方向を判定し（例えば、図２３と図２４のステップS105,S108,S111,S114の処理）、前記エッジが存在する方向の前記差分は、存在しない方向の差分に較べ、利用する割合を少なくする（例えば、図２３と図２４のステップS106,S107,S109,S110,S112,S113,S115,S116の処理）。
【００２４】
第１の側面の画像処理方法、記録媒体のプログラム、並びにプログラムは、補正対象の画像のぼけ補正に関するパラメータ（例えば、パラメータσ）を取得するパラメータ取得ステップ（例えば、図１４のステップS51）と、前記補正対象の画像の特徴量（例えば、画像データの1次微分値、2次微分値、ダイナミックレンジ、または分散）を検出する特徴量検出ステップ（例えば、図１４のステップS52,S53）と、前記特徴量に基づいて前記パラメータを補正して補正パラメータを生成するパラメータ生成ステップ（例えば、図１４のステップS55）と、前記補正パラメータに基づいて前記補正対象の画像のぼけを補正するぼけ補正ステップ（例えば、図１２のステップS32）とを含むことを特徴とする。
【００２５】
第２の側面の画像処理装置は、学習用の画像データを取得する取得手段（例えば、図２９のステップS151の処理を実行する図２８の取得部211）と、画像にぼけを発生するためのパラメータを設定する設定手段（例えば、図２９のステップS152の処理を実行する図２９の設定部213）と、取得された前記画像データに前記パラメータを含む関数（例えば、式（２）のガウス関数）を適用してぼけの発生した画像の画像データを生成する生成手段（例えば、図２９のステップS153の処理を実行する図２８の演算部212）と、生成された前記画像データの画像の特徴量（例えば、画像データの1次微分値、2次微分値、ダイナミックレンジ、または分散）を検出する特徴量検出手段（例えば、図２９のステップS154の処理を実行する図２８の特徴量抽出部214）と、設定された前記パラメータに対応するぼけが発生した画像の前記特徴量の最大値を検出する最大値検出手段（例えば、図２９のステップS156の処理を実行する図２８の最大値検出部216）と、指定パラメータと指定特徴量（例えば、図１６のルックアップテーブルのアドレスとしての縦軸のパラメータσと横軸の特徴量V）が指定されたとき、前記指定パラメータと前記指定特徴量に対応する補正パラメータを読み出すテーブル（例えば、図１６のルックアップテーブル）であって、前記指定特徴量が、前記指定パラメータ（例えば、図１６の指示値としてのパラメータσ80）に対応する前記特徴量の最大値（例えば、図１９の特徴量V80）より小さい場合（例えば、指定特徴量が図１６の特徴量V90である場合）、前記指定パラメータを前記補正パラメータとし（例えば、図１６のルックアップテーブルの縦の座標軸のパラメータσ80に対応する枠の中に補正パラメータとして記載されているパラメータσ80とし）、大きい場合（例えば、指定特徴量が図１６の特徴量V60である場合）、前記指定特徴量より値が大きい特徴量（例えば、図１６の特徴量V50）が前記特徴量の最大値として対応する前記パラメータ（例えば、図１７のパラメータσ50）を前記補正パラメータとする（例えば、図１６のルックアップテーブルの縦の座標軸のパラメータσ70に対応する枠の中の補正パラメータをパラメータσ50とする）前記テーブルを作成する作成手段（例えば、図２９のステップS157の処理を実行する図２８のテーブル作成部217）とを備えることを特徴とする。
【００２６】
前記特徴量の度数を検出する度数検出手段（例えば、図２９のステップS155の処理を実行する図２８の度数検出部215）をさらに備え、前記最大値検出手段は、検出された度数が予め定められている閾値より大きい前記特徴量の中から前記特徴量の最大値を検出する。
【００２７】
第２の側面の画像処理方法、記録媒体のプログラム、並びにプログラムは、学習用の画像データを取得する取得ステップ（例えば、図２９のステップS151）と、画像にぼけを発生するためのパラメータを設定する設定ステップ（例えば、図２９のステップS152）と、取得された前記画像データに前記パラメータを含む関数（例えば、式（２）のガウス関数）を適用してぼけの発生した画像の画像データを生成する生成ステップ（例えば、図２９のステップS153）と、生成された前記画像データの画像の特徴量（例えば、画像データの1次微分値、2次微分値、ダイナミックレンジ、または分散）を検出する特徴量検出ステップ（例えば、図２９のステップS154）と、設定された前記パラメータに対応するぼけが発生した画像の前記特徴量の最大値を検出する最大値検出ステップ（例えば、図２９のステップS156）と、指定パラメータと指定特徴量（例えば、図１６のルックアップテーブルのアドレスとしての縦軸のパラメータσと横軸の特徴量V）が指定されたとき、前記指定パラメータと前記指定特徴量に対応する補正パラメータを読み出すテーブル（例えば、図１６のルックアップテーブル）であって、前記指定特徴量が、前記指定パラメータ（例えば、図１６の指示値としてのパラメータσ80）に対応する前記特徴量の最大値（例えば、図１９の特徴量V80）より小さい場合（例えば、指定特徴量が図１６の特徴量V90である場合）、前記指定パラメータを前記補正パラメータとし（例えば、図１６のルックアップテーブルの縦の座標軸のパラメータσ80に対応する枠の中に補正パラメータとして記載されているパラメータσ80とし）、大きい場合（例えば、指定特徴量が図１６の特徴量V60である場合）、前記指定特徴量より値が大きい特徴量（例えば、図１６の特徴量V50）が前記特徴量の最大値として対応する前記パラメータ（例えば、図１７のパラメータσ50）を前記補正パラメータとする（例えば、図１６のルックアップテーブルの縦の座標軸のパラメータσ70に対応する枠の中の補正パラメータをパラメータσ50とする）前記テーブルを作成する作成ステップ（例えば、図２９のステップS157）とを含むことを特徴とする。
【００２８】
次に、本発明を適用した実施の形態について図面を参照して説明する。
【００２９】
図１は、本発明を適用した画像処理装置の構成例を表している。この画像処理装置１は、画像補正処理装置１１と表示デバイス１２とにより構成されている。画像補正処理装置１１は、入力された画像データの画像のぼけを補正し、出力する。表示デバイス１２は、画像補正処理装置１１より出力された画像データに基づく画像を表示し、ユーザ１３に呈示する。
【００３０】
次に、図２のフローチャートを参照して、この画像処理装置１の画像処理について説明する。
【００３１】
ステップＳ１において、画像補正処理装置１１は、画像補正処理を行う。その詳細は図１２を参照して後述するが、画像補正処理装置１１は、入力された画像データに対して、ユーザ１３より指示されたパラメータσに対応する補正処理を行い、補正処理した後の画像データを出力する。この画像データは、後段の図示せぬ装置に出力されるとともに、表示デバイス１２に供給され、画像として表示される。
【００３２】
ユーザ１３は、表示デバイス１２に表示された画像をみて、ぼけが充分補正されているか否かを判定し、ぼけがまだ充分補正されていない場合には、パラメータσの値を異なる値になるようにつまみ等を調整する。
【００３３】
そこで、ステップＳ２において、画像補正処理装置１１は、ユーザより新たな操作がなされたか否かを判定し、新たな操作がなされた場合には、処理をステップＳ１に戻し、再び設定された新たなパラメータ信号に基づく画像補正処理を行う。
【００３４】
補正された画像データに基づく画像が、表示デバイス１２により表示されるので、ユーザ１３は、再びこの画像をみて、画像の動きをさらに補正するか否かを判断する。そして、さらに、ぼけを補正する必要があると判断した場合には、つまみを調整することで、さらに新たなパラメータσの値を設定する。
【００３５】
以上のような処理が繰り返し実行される。そして、ステップＳ２において、新たな操作がなされなかったと判定された場合、処理は終了される。
【００３６】
次に、画像補正処理装置１１における画像補正の原理について説明する。本発明では、ぼけの発生について、次式に基づくモデルが仮定される。
【００３７】
【数１】
2006024192.tif 000003
【００３８】
上記式におけるＸ（x＋i，y＋j）は、座標Ｘ（x＋i，y＋j）のぼけが発生していない画像のデータを表し、これに重み付け係数Ｗ（i，j）を乗算した値をたたみ込むことで、ぼけが発生した画像のデータＹ（x，y）が発生するものとされる。そして、重み付け係数Ｗ（i，j）は、次式に示されるように、ガウス関数とされる。
【００３９】
【数２】
2006024192.tif 000004
【００４０】
パラメータσは、ぼけに対応するパラメータであり、パラメータσの値が大きくなるほど、ぼけも大きくなる。
【００４１】
重み付け係数Ｗ（i，j）の値は、パラメータσの値が小さいと、図３に示されるように、比較的急峻な特性となり、パラメータσの値が大きいと、図４に示されるように、全体的になだらかな広い範囲に渡った分布となる。
【００４２】
なお、図３と図４の水平面内のプラスの方向は、それぞれ水平方向（ｉ）と垂直方向（ｊ）の画素位置を表し、縦軸は重み付け係数Ｗ（i，j）の値を表す。
【００４３】
以上の関係を、水平方向に１軸に配慮されたCCD撮像装置の画素毎の出力について説明すると、図５に示されるようになる。
【００４４】
すなわち、図５の最下段に示されるＰ0乃至Ｐ8は、それぞれ水平方向に配列されているCCD撮像装置のぼけた画像の電荷の蓄積を表す。図５の最上段のＸ0乃至Ｘ8は、それぞれ、画素Ｐ0乃至Ｐ8が、ぼけのない画像を撮像した場合の電荷の蓄積を表す。図５の中段のグラフは、重み付け係数Ｗ（i）の特性を表す。この例においては、変数ｉが、-2≧ｉ≧2とされ、中央の係数がＷ（0）とされ、その左側の係数がＷ（-1）、さらにその左側の係数はＷ（-2）とされる。同様に、中央の係数Ｗ（0）の右側の係数はＷ（1）とされ、さらにその右側の係数はＷ（2）とされる。各係数Ｗ（i）の値は、Ｗ（0）が最も大きく、係数Ｗ（-1），Ｗ（1）がそれより小さく、係数Ｗ（-2），Ｗ（2）は、さらにそれより小さい値となっている。
【００４５】
上記した式（１）に基づいて、画素Ｐ4の観測値Ｙ2を式で表すと、次のようになる。
【００４６】
Ｙ2 ＝ Ｗ(-2)Ｘ2 ＋ Ｗ(-1)Ｘ3 ＋ Ｗ(0)Ｘ4 ＋ Ｗ(1)Ｘ5 ＋ Ｗ(2)Ｘ6
・・・（３）
【００４７】
同様に、図５の画素Ｐ2の観測値Ｙ0を求める場合、画素Ｐ2を中心とする図６の枠９０−１で示される真値で演算を行うことにより、次のように観測値Ｙ0が求められる。
【００４８】
Ｙ0 ＝ Ｗ(-2)Ｘ0 ＋ Ｗ(-1)Ｘ1 ＋ Ｗ(0)Ｘ2 ＋ Ｗ(1)Ｘ3 ＋ Ｗ(2)Ｘ4
・・・（４）
【００４９】
さらに、画素Ｐ3の画素Ｙ1を求める場合、画素Ｐ3を中心とする図６の枠９０−２で示される真値に基づいて演算を行うことにより、次のように観測値Ｙ1が求められる。
【００５０】
Ｙ1 ＝ Ｗ(-2)Ｘ1 ＋ Ｗ(-1)Ｘ2 ＋ Ｗ(0)Ｘ3 ＋ Ｗ(1)Ｘ4 ＋ Ｗ(2)Ｘ5
・・・（５）
【００５１】
観測値Ｙ3，Ｙ4についても同様に演算することが可能である。
【００５２】
図５に示される１次元の関係を２次元に展開して表すと、図７と図８に示されるようになる。
【００５３】
すなわち、図７は、観測値Ｙtを中心とする７×７画素の観察領域の観測値Ｙ（x，y）を表す。この観測値Ｙ（x，y）は、図８に示される真値Ｘ（x，y）の値を重み付け係数により、積和演算することで得られた値となる。
【００５４】
具体的には、図７の左上の画素Ａの値は、図８の画素Ａに対応する画素Ａ’を中心とする５×５画素の枠（a）で示される２５個の画素に対応する真値に基づいて、次式で表される。
【００５５】
【数３】
2006024192.tif 000005
【００５６】
同様に、図７の画素Ａの右隣の画素Ｂの観測値は、図８の画素Ｂに対応する画素Ｂ’を中心とする枠（b）で示される２５個の画素に対応する真値に基づいて、次式で演算される。
【００５７】
【数４】
2006024192.tif 000006
【００５８】
画素Ｂのさらに右隣の画素Ｃについては、図８の画素Ｃに対応する画素Ｃ’を中心とする枠（c）内の２５個の画素に対応する真値に基づいて、次式に表されるように演算される。
【００５９】
なお、図８のＸtは、図７の観測値Ｙtに対応する真値であり、枠(t)は、真値Ｘtを中心とする５×５画素の枠である。
【００６０】
【数５】
2006024192.tif 000007
【００６１】
式（８），（９）における重み係数Ｗ（i，j）は、式（６）における場合と同様に、式（７）で表される。
【００６２】
以上のようにして、図７に示される各画素に対応する観測値を全て求めると、次式で表されるような行列式が得られる。
【００６３】
【数６】
2006024192.tif 000008
【００６４】
【数７】
2006024192.tif 000009
【００６５】
【数８】
2006024192.tif 000010
【００６６】
【数９】
2006024192.tif 000011
【００６７】
式（１０）乃至式（１３）で表される行列式から、Ｗfの逆行列を演算することができれば、真値Ｘ（x，y）を推定することが可能である。
【００６８】
しかしながら、図７の観察領域２１とそれに対応する図８の混合領域２２の面積（画素数）の違いをみても分かるように、観測値Ｙ（x，y）に比べて、推定するべき真値Ｘ（x，y）の数が多いため、上記した式（１０）乃至式（１３）だけでは、真値Ｘ（x，y）を解くことはできない。
【００６９】
そこで、本発明においては、式（１０）乃至式（１３）に加えて、次の式（１４）乃至式（１７）が関係式として導入される。これらは、それぞれ、上、右、下、または左側に隣接する画素との差分に係数Ｗaを乗算した値が０となる条件である。
【００７０】
Ｗa（Ｘ（x，y）−Ｘ（x，y−1））＝０                      ・・・（１４）
Ｗa（Ｘ（x，y）−Ｘ（x＋1，y））＝０                      ・・・（１５）
Ｗa（Ｘ（x，y）−Ｘ（x，y＋1））＝０                      ・・・（１６）
Ｗa（Ｘ（x，y）−Ｘ（x−1，y））＝０                      ・・・（１７）
【００７１】
すなわち、一般的な画像の特性として、隣接する画素間の相関は高いので、上記式（１４）乃至式（１７）における係数Ｗaを、極めて小さい値にしておけば、それほど大きな矛盾とはならない。また、入力画像から推定されるアクティビティなどに基づいて、式（１４）乃至式（１７）における係数Ｗaを、それぞれ画素毎に切り替えることも可能である。このように、式（１０）乃至式（１３）に加えて、図８に示される１１×１１の真値Ｘ（x，y）の領域全体に対して、あるいは領域内の一部に対して、式（１４）乃至式（１７）の関係式を補助的に追加することで、真値Ｘ（x，y）の数が式の数と等しいかそれ以下となり、次式に基づいて、真値Ｘ（x，y）を演算することができる。
【００７２】
Ｙs＝ＷsＸs                        ・・・（１８）
Ｘs＝Ｗs-1Ｙs                     ・・・（１９）
【００７３】
また、図９に示されるように、エッジが存在する方向に基づいて式（１４）乃至式（１７）のいずれを付加するかを選択するようにすることができる。
【００７４】
すなわち、画素Ｐ0aは、上下左右に接するいずれの画素もエッジ２５Ａにまたがっていない。そこで、この場合には、式（１４）乃至式（１７）の全ての条件を付加することができる。これに対して、画素P0bは、上下と右側に隣接する画素との間にはエッジ２５Ａが存在しないが、左側に隣接する画素との間にはエッジ２５Ａが存在する。そこで、この場合には、式（１４）乃至式（１６）だけを条件として加えるようにし、左側に隣接する画素との差分に対応する式（１７）は条件として加えないようにすることができる。このようにすることで、より正確な補正が可能となる。
【００７５】
同様に、画素Ｐ0cは、右側と下側に隣接する画素との間にはエッジが存在しないが、上側と左側に隣接する画素との間にはエッジ２５Ａが存在する。そこで、右側または下側に隣接する画素との差分に対応する式（１５）と式（１６）は条件式として加え、上側または左側に隣接する画素との差分に対応する式（１４）と式（１７）は条件として加えないようにすることができる。
【００７６】
なお、条件として加えないということは、式（１４）乃至式（１７）における係数Ｗaの値を０とすることを意味する。係数Ｗaの値を０とするのではなく、エッジが存在する方向の係数Ｗaの値をエッジが存在しない方向の係数Ｗaの値に比べて小さい値に設定するようにしてもよい。
【００７７】
なお、この場合にも、図９Ａに示される観測値の画素Ｐ0a，Ｐ0b，Ｐ0cの上下左右に隣接する画素との差分の値が、図９Ｂにおける対応する真値の画素Ｐ1a，Ｐ1b，Ｐ1cの上下左右に隣接する画素との差がほぼ等しいことが前提となる。
【００７８】
図１０は、画像補正処理装置１１のより詳細な構成例を表している。この画像補正処理装置１１は、ユーザインタフェース（IF）部３１、パラメータ補正部３２、およびぼけ補正部３３とにより構成されている。
【００７９】
ユーザインタフェース部３１は、図１１に示されるように、つまみ５１を有し、それを反時計方向に回転することでパラメータσの値を小さくし、時計方向に回転させることでパラメータσの値を大きくすることができる。ユーザインタフェース部３１により指定されたパラメータσは、パラメータ補正部３２に供給される。パラメータ補正部３２は、入力された画像データの特徴量に基づいて、ユーザインタフェース部３１より供給されたパラメータσの値を補正し、補正されたパラメータσをぼけ補正部３３に供給する。ぼけ補正部３３は、補正されたパラメータσに基づいて、入力された画像データの画像のぼけを補正する処理を行い、その画像データを出力する。
【００８０】
図１０の画像補正処理装置１１の処理（図２のステップＳ１の画像補正処理に対応する）は、図１２のフローチャートに示されるようになる。
【００８１】
すなわち、ユーザが、ユーザインタフェース部３１を操作して、所定のパラメータσを指定すると、ステップＳ３１において、パラメータ補正部３２は、パラメータ補正処理を実行する。その詳細は図１４を参照して後述するが、これにより、パラメータσが画像データの特徴量に基づいて補正され、補正されたパラメータσが生成される。
【００８２】
ステップＳ３２において、ぼけ補正部３３はぼけ補正処理を実行する。その詳細は図２３と図２４のフローチャートを参照して後述するが、これにより、入力された画像データの画像のぼけが補正され、ぼけが補正された画像の画像データが出力され、表示デバイス１２に供給され、画像として表示される。
【００８３】
そして、ユーザは、この画像を見てさらに補正が必要と判断した場合には、再びユーザインタフェース部３１を操作して新たなパラメータσを指定する。このような処理が繰り返されることで、ぼけが補正された画像の画像データが得られることになる。
【００８４】
図１３は、パラメータ補正部３２の詳細な構成例を表している。パラメータ補正部３２は、入力された画像データから、それぞれ異なる特徴量を検出する特徴量検出部６１−１乃至６１−４、特徴量検出部６１−１乃至６１−４より出力された特徴量と、ユーザインタフェース部３１より供給されたパラメータσの値に基づいて、推定パラメータを推定するルックアップテーブル（LUT）６２−１乃至６２−４、並びにルックアップテーブル６２−１乃至６２−４より出力された４個の推定パラメータの中から、最小の推定パラメータを補正パラメータとして１つ選択する選択部６３により構成されている。
【００８５】
特徴量検出部６１−１は、特徴量抽出部７１−１と最大値探索部７２−１により構成されている。特徴量抽出部７１−１は、入力された画像データが、ユーザインタフェース部３１より供給されるパラメータσの値に基づいて設定される観察領域の画素の特徴量を抽出する。観察領域の範囲の画素の数がＮ個ある場合には、Ｎ個の特徴量が抽出されることになる。最大値探索部７２−１は、特徴量抽出部７１−１より供給されたＮ個の特徴量からその最大値を探索し、ルックアップテーブル６２−１に出力する。
【００８６】
特徴量検出部６１−２乃至６１−４も、特徴量検出部６１−１と同様に、特徴量抽出部７１−２乃至７１−４と最大値探索部７２−２乃至７２−４を有している。その基本的動作は、特徴量検出部６１−１における場合と同様である。
【００８７】
特徴量抽出部７１−１乃至７１−４がそれぞれ抽出する特徴量は、いずれもアクティビティ系の特徴量であり、ぼけ量に対応するパラメータσと一定の相関を有する特徴量である。すなわち、パラメータσが大きければ、特徴量は小さくなるか或いは大きくなる。具体的には、画素値の１次微分値、２次微分値、Ｎ個の画素のダイナミックレンジ、Ｎ個の画素の分散などが抽出される。
【００８８】
１次微分値は、注目画素をＢ、その左隣の画素をＡ、右隣の画素をＣとするとき、注目画素Ｂと左隣の画素Ａとの差の絶対値｜Ｂ−Ａ｜と、注目画素Ｂと右隣の画素Ｃとの差の絶対値｜Ｂ−Ｃ｜のうち、大きい方の値とすることができる。また、２次微分値は、注目画素Ｂの２倍の値（２Ｂ）と、左右の画素の和（Ａ＋Ｃ）との差の絶対値｜２Ｂ−（Ａ＋Ｃ）｜とすることができる。また、Ｎ個の画素のダイナミックレンジDRは、Ｎ個の画素のうちの最大値MAX と最小値MIN の差分であり、DR＝MAX−MIN で表される。また、Ｎ個の画素の分散（Ｎ個の画素の平均値とＮ個の各画素との差の２乗の総和をＮで割った値）の代わりに、Ｎ個の画素の平均値とＮ個の各画素との差の２乗の総和や、Ｎ個の画素の平均値とＮ個の各画素との差の絶対値の総和、若しくはその差の絶対値の総和をＮで割った値などを用いてもよい。
【００８９】
次に、図１４のフローチャートを参照して、パラメータ補正処理について説明する。この処理は、図１２のステップＳ３１の処理として行われるものである。
【００９０】
ステップＳ５１において、ユーザインタフェース部３１は、パラメータを取得する。すなわち、ユーザがつまみ５１を操作することで入力したパラメータσの値が取得される。
取得されたパラメータσは、特徴量抽出部７１−１乃至７１−４とルックアップテーブル６２−１乃至６２−４に供給される。
【００９１】
ステップＳ５２において、特徴量抽出部７１−１乃至７１−４は観察領域を設定する。
すなわち、特徴量抽出部７１−１乃至７１−４は、まず、ステップＳ５１の処理で取得されたパラメータσに対応する領域を観察領域として設定する。具体的には、図１５に示されるように、注目画素からパラメータσの３倍の値の数の画素を含む領域が観察領域とされる。図１５Ａは、３σの値が１である場合の観察領域を表している。ただし、３σの値は、丸め処理された値である。従って、σの値が0.1，0.2，0.3のいずれの場合も、３σの値は１とされる。図１５Ｂは、３σの値が２である場合の観察領域を表す。この場合のσの値は、0.4，0.5，または0.6である。
【００９２】
以下、同様に、図１５Ｃ乃図１５Ｉは、３σの値がそれぞれ３乃至９である場合における観察領域を表している。図中下に表されているσの値は、それぞれの値を３倍して、丸め処理した場合に対応する観察領域となることを表す。この例の場合は、図１５に示されるように、観察領域は、注目画素を中心とするほぼ円形の領域とされる。このように、観察領域の大きさをパラメータσの値が大きくなる程大きくなるように設定することで、ぼけに影響していない画素の特徴量が検出され、誤った処理が行われることが防止される。
【００９３】
次に、ステップＳ５３において、特徴量抽出部７１−１乃至７１−４は特徴量を抽出する。上述したように、特徴量抽出部７１−１乃至７１−４は、それぞれ自分自身に割り当てられた他とは異なる特徴量を抽出する。例えば、特徴量抽出部７１−１は１次微分値を特徴量として抽出し、特徴量抽出部７１−２は２次微分値を特徴量として抽出し、特徴量抽出部７１−３はダイナミックレンジを特徴量として抽出し、特徴量抽出部７１−４は分散を特徴量として抽出する。このように、複数の特徴量を検出することで、本来なされるべきぼけパラメータの補正もれを回避することができる。
【００９４】
ステップＳ５４において、最大値探索部７２−１乃至７２−４は最大値（ぼけが最も少い特徴量）を探索する。すなわち、最大値探索部７２−１は、特徴量抽出部７１−１が抽出した観察領域内の画素の１次微分値の最大値を探索する。最大値探索部７２−２は、特徴量抽出部７１−２が抽出した観察領域内の画素の２次微分値の最大値を探索する。最大値探索部７２−３は、特徴量抽出部７１−３が抽出した観察領域内の画素のダイナミックレンジの最大値を探索する。最大値探索部７２−４は、特徴量抽出部７１−４が抽出した観察領域内の画素の分散を探索する。なお、分散の場合は、その値が１個であるので、その値がそのまま最大値として探索される。
【００９５】
ステップＳ５５において、ルックアップテーブル６２−１乃至６２−４は、統計的データを参照して推定パラメータを推定する。その詳細は、図１６乃至図２１を参照して後述するが、これによりユーザインタフェース部３１より供給されたユーザにより指定されたパラメータσの値が、推定パラメータに変換される。この推定パラメータは、ユーザが指定したパラメータσの値に対応する特徴量の最大値が、最大値探索部７２−１乃至７２−４で探索された最大値より小さい場合には、最大値探索部７２−１乃至７２−４で探索された最大値より大きな値の最大値が対応するパラメータの値に変更される。これにより、ぼけていない画像に対して、オーバーシュートやリンギングなどが発生し、画像が劣化してしまうことが抑制される。
【００９６】
ステップＳ５６において、選択部６３は、ルックアップテーブル６２−１乃至６２−４が出力した推定パラメータの中から、最小の推定パラメータを選択する処理を実行する。
すなわち、ルックアップテーブル６２−１乃至６２−４が出力する４個の推定パラメータの大小が比較され、最小の推定パラメータ（ぼけが最も少いパラメータ）が１つ選択され、それが補正パラメータとして出力される。これにより、ユーザが指定したパラメータσが補正パラメータに変換（補正）されたことになる。
【００９７】
このようにして生成された補正パラメータは、画像の一部のぼけていない部分が、ぼけ補正処理によりオーバーシュートやリンギングなどの劣化を抑制可能な値に設定されている。
【００９８】
図１６は、ルックアップテーブル６２−１乃至６２−４の例を表している。これらは、いずれも同様の構成とされている。図１６が、例えば、ルックアップテーブル６２−１であるとすると、同図に示されるように、ルックアップテーブル６２−１は、ユーザインタフェース部３１により指定されたパラメータσの値が一方の軸（図１６における縦軸）のアドレスとされ、最大値探索部７２−１が出力する特徴量の最大値を他方の軸（図１６における横軸）のアドレスとするテーブルであり、縦軸と横軸で指定された領域に記憶されている推定パラメータを出力する。図１６において、縦軸のパラメータσは、下から上に順次大きくなるようになっており、横軸の特徴量Ｖは、左から右にいくほど大きくなるようになっている。
【００９９】
図１６の枠（記憶領域を表す）内に記憶されている推定パラメータの値は、基本的には、図１６において、ハッチングを施していない領域に示されるように、ユーザが指定したパラメータσの値とされる。例えば、縦軸のアドレスとしてのパラメータσの値がσ60の枠においては、そのハッチングが施されていない領域（アドレスとしての特徴量Ｖの値が、比較的小さい場合の領域）で、特徴量Ｖの値に関わらず、そのアドレスとしての値σ60と同じである値σ60が推定パラメータとして記憶されており、アドレスとしてのパラメータσの値がσ80の枠においては、そのハッチングを施していない領域で、特徴量Ｖの値に関わらず、σ80が推定パラメータとして記憶されている。
【０１００】
しかしながら、図中、ハッチングを施してある領域（アドレスとしての特徴量Ｖの値が大きい場合の領域）では、ユーザにより指定されたパラメータσより小さい値σ70,σ50，σ30のいずれかが記憶されている。すなわち、検出された最大の特徴量が、ユーザにより指定されたパラメータσに対応する特徴量の最大値より小さい場合には、指定されたパラメータσの値がそのまま推定パラメータとされるが、検出された最大の特徴量が指定されたパラメータσに対応する特徴量の最大値より大きい場合、検出された特徴量より値が大きい特徴量が、特徴量の最大値として対応するパラメータが推定パラメータとして記憶される。
【０１０１】
この原理（規則）を図１７を参照してさらに説明すると次のようになる。図１７に示されるように、パラメータσと特徴量Ｖは、一般的に、パラメータσの値が大きくなるほど、取り得る特徴量Ｖの値が小さくなる関係にあることが実験により確認されている。すなわち、パラメータσの値を所定の値に設定した場合の画像の特徴量Ｖを検出し、その数（度数）をプロットすると、図１７に示されるようになり、特徴量Ｖの値が小さい画素が多く、特徴量Ｖが大きい画素の数は次第に少なくなり、所定の値（最大値）より大きい特徴量Ｖを有する画素は殆どなくなる。換言すると、画像のパラメータσを決定すると、その画像の特徴量の最大値が決まる。そして、特徴量Ｖの分布の範囲はパラメータσの値が大きいほど狭くなり、度数の最大値はパラメータσの値が大きいほど大きくなる（特徴量Ｖと度数の特性は、パラメータσの値が大きいほど急峻となり、度数の最大値も大きくなり、パラメータσの値が小さくなるほど緩やかとなり、度数の最大値も小さくなる）。
【０１０２】
例えば、パラメータσの値がσ70である場合、その画像の取り得る特徴量Ｖの最大値はＶ70であるとする。同様に、パラメータσの値がσ50である場合における特徴量の最大値がＶ50であり、パラメータσの値がσ30である場合における特徴量の最大値がＶ30であるとする。この場合、パラメータσの値σ70が最も大きく、値σ50が次に大きく、値σ30が最も小さいとすると、最大値Ｖ30の値が最も大きく、値Ｖ50が次に大きく、最大値Ｖ70が最も小さいことになる。
【０１０３】
ユーザが指定したパラメータσの値がσ70である場合において、処理対象の画像の特徴量の最大値が値Ｖ70（パラメータσの値がσ70である場合における特徴量Ｖの最大値）より小さい場合には、そのような特徴量は通常存在しうるため、ぼけ補正処理を行ってもオーバーシュートやリンギングが発生しない。これに対して、その画像の特徴量の最大値Ｖが値Ｖ70より大きいと、指定されたパラメータσ70の画像の特徴量Ｖとしては、本来存在しえない値が存在することになるため、そのままぼけを補正する処理を行うと、オーバーシュートやリンギングが発生する。そこで、これを抑制するため、このような場合には、指定されたパラメータσの値σ70を、それより小さい値σ50に強制的に変更するようにする。
【０１０４】
さらに、処理対象の画像の特徴量の最大値が値Ｖ50よりさらに大きい場合、パラメータσの値をσ50に変更したとしても、対応する最大値Ｖ50より大きな特徴量が存在しているため、オーバーシュートやリンギングが発生することになる。そこで、この場合には、パラメータσの値を、さらに小さい値σ30に変更させるようにする。そこで、図１６の縦軸のパラメータσの値がσ70である枠に示されるように、アドレスとしての特徴量Ｖの値が、値Ｖ70に対応する領域までは、推定パラメータの値はユーザにより指定された値と同一の値σ70とされるが、特徴量Ｖの値が値Ｖ70とＶ50の間の領域であって、図中右下がりのハッチングを施して示す領域においては、推定パラメータの値はσ50とされる。そして、さらに、アドレスとしての特徴量Ｖの値が、値Ｖ50乃至Ｖ30の間の領域であって、図中縦方向のハッチングで示されている領域においては、推定パラメータの値はσ30とされる。
【０１０５】
同様に、例えば、ユーザが指定したパラメータσの値が値σ90である場合における、取り得る特徴量Ｖの最大値の値が値Ｖ90である場合には、アドレスとしての特徴量Ｖの値が、値Ｖ90までの図中ハッチングを施していない領域においては、推定パラメータの値は、ユーザにより指定されたパラメータσの値と同一の値σ90とされる。そして、特徴量Ｖの値がＶ90乃至Ｖ70の領域であって、図中左下がりのハッチングが施されている領域においては、推定パラメータの値はσ70とされる。特徴量Ｖの値が、Ｖ70乃至Ｖ50の右下がりのハッチングを施して示す領域においては、推定パラメータの値はσ50とされ、特徴量Ｖの値が値Ｖ50乃至Ｖ30の縦方向のハッチングを施して示す領域においては、推定パラメータの値はσ30とされる。
【０１０６】
図１６の例においては、オーバーシュートまたはリンギングが発生する恐れがある領域における推定パラメータの値を、σ70，σ50，σ30の３つのうちのいずれかとするようにしたが、より多くの数の推定パラメータを予め用意することももちろん可能である。
【０１０７】
この図１６の実施の形態においては、ユーザにより指定可能なパラメータσの値は、σ30が最低とされている。したがって、それより小さいパラメータσが設定された場合の推定パラメータは、用意する必要がないので記憶されていない。
【０１０８】
図１６における特徴量Ｖ80は、ユーザが指定したパラメータσの値がσ80である場合において、存在し得る特徴量の最大値を表し、特徴量Ｖ60はユーザが指定したパラメータσの値がσ60である場合において、取り得る画像の特徴量Ｖの最大値を表し、特徴量Ｖ40は、ユーザが指定したパラメータσの値がσ40である場合における特徴量Ｖの最大値を意味する。
【０１０９】
なお、Ｖ90＜Ｖ80＜Ｖ70＜Ｖ60＜Ｖ50＜Ｖ40＜Ｖ30の関係にある。
【０１１０】
すなわち、このルックアップテーブル６２−１乃至６２−４によるステップＳ５５における統計的データを参照して、推定パラメータを推定する処理は、実質的に、図１８のフローチャートに示される処理を実行することになる。
【０１１１】
すなわち、ステップＳ７１において、ルックアップテーブル６２−１乃至６２−４は、ユーザインタフェース部３１より入力されたパラメータσを取得する。ステップＳ７２において、ルックアップテーブル６２−１乃至６２−４は、最大値探索部７２−１乃至７２−４より供給される特徴量の最大値が、取得されたパラメータに対応する最大の特徴量より大きいかを判定し、大きい場合には、ステップＳ７４で、予め用意された値のうち、特徴量の最大値より大きい値であって、最も差の小さい値を最大の特徴量とするパラメータの値を推定パラメータとする。
【０１１２】
例えば、図１９に示されるように、指定されたパラメータσが値σ90である場合、処理対象画像の特徴量の最大値Ｖ80が値Ｖ90より大きい場合には、予め用意されている値Ｖ70，Ｖ50，Ｖ30のうち、最大値Ｖ80より大きい値であって、最も差の小さい値Ｖ70を最大の特徴量とするパラメータの値σ70が推定パラメータとされる。
【０１１３】
また、例えば、図２０に示されるように、指定されたパラメータσの値がσ70である場合において、処理対象画像の特徴量の最大値が値Ｖ70より大きい値Ｖ60である場合には、予め用意されている値Ｖ70，Ｖ50，Ｖ30のうち、特徴量の最大値Ｖ60より大きい値であって、最も差の小さい値Ｖ50を最大の特徴量とするパラメータσ50が推定パラメータとされる。
【０１１４】
同様に、図２１に示されるように、指定されたパラメータの値がσ50である場合において、処理対象画像の特徴量の最大値がパラメータに対応する最大の特徴量Ｖ50より大きい値Ｖ40である場合には、予め用意された値Ｖ70，Ｖ50，Ｖ30のうち、特徴量の最大値Ｖ40より大きい値であって、最も差の小さい値Ｖ30を最大の特徴量とするパラメータσ30の値が推定パラメータとされる。
【０１１５】
これに対して、ステップＳ７２において、特徴量の最大値が、取得されたパラメータに対応する最大の特徴量と等しいかそれより小さいと判定された場合においては、ステップＳ７３において、ルックアップテーブル６２−１乃至６２−４は、取得されたパラメータを推定パラメータとする処理を行う。すなわち、この場合においては、ステップＳ７１で取得されたパラメータがそのまま推定パラメータとされる。
【０１１６】
このように、ユーザにより指定されたパラメータσの値が、ぼけの補正処理をしても、オーバーシュートやリンギングが発生しない推定パラメータに変更される。これにより、オーバーシュートやリンギングの発生が防止される。
【０１１７】
なお、図１７、図１９、図２０、図２１における度数、特徴量、パラメータσの値は、それぞれの図内における相対的関係を表すように示されており、異なる図との間での相関は無視されている。
【０１１８】
図２２は、図１０のぼけ補正部３３のより詳細な構成例を表している。このぼけ補正部３３は、パラメータ取得部１０１、設定部１０２、画素取得部１０３、差分絶対値演算部１０４、判定部１０５、読み出し部１０６、記憶部１０７、および積和演算部１０８により構成されている。
【０１１９】
パラメータ取得部１０１は、パラメータ補正部３２の選択部６３より出力された補正パラメータを取得し、設定部１０２と読み出し部１０６に供給する。設定部１０２は、パラメータ取得部１０１より供給された補正パラメータに基づいて、画像データのうちの所定の範囲の観察領域を設定する。画素取得部１０３は、入力された画像データから設定部１０２により設定された観察領域内の画素データを取得し、差分絶対値演算部１０４と積和演算部１０８に供給する。
【０１２０】
差分絶対値演算部１０４は、画素取得部１０３より供給された画素の差分絶対値を演算する。判定部１０５は、差分絶対値演算部１０４で演算された値を、予め設定してある基準値と比較する。記憶部１０７は、上述した式（１０）乃至式（１７）を解くことで得られた式（１９）に示される係数Ｗs-1を予め記憶している。読み出し部１０６は、判定部１０５の判定結果に基づいて、記憶部１０７に記憶されている係数の中から、所定の係数を読み出す。積和演算部１０８は、画素取得部１０３より供給された画素データＹsと、読み出し部１０６より供給された係数Ｗs-1に対して、式（１９）に基づいて積和演算を行うことで、ぼけが補正された画像の画像データを生成する。
【０１２１】
次に、図２３と図２４のフローチャートを参照して、ぼけ補正処理について説明する。
この処理は、図１２のステップＳ３２の処理に対応する。
【０１２２】
ステップＳ１０１において、パラメータ取得部１０１は、図１３の選択部６３より出力された補正パラメータを取得し、設定部１０２と読み出し部１０６に出力する。ステップＳ１０２において、設定部１０２は、観察領域を設定する処理を行う。具体的には、パラメータ取得部１０１より取得された補正パラメータσの３倍の値（３σ）を半径とする観察領域を設定する。ステップＳ１０３において、画素取得部１０３は、観察領域の画素データを取得する。すなわち、入力された画像データの中から、設定部１０２で設定された観察領域内の画素データを取得し、差分絶対値演算部１０４と積和演算部１０８に出力する。
【０１２３】
ステップＳ１０４で、差分絶対値演算部１０４は、注目画素の上下左右方向に隣接する画素値の差分絶対値を演算する。具体的には、上述した式（１４）乃至式（１７）の左辺の項を演算する。判定部１０５は、ステップＳ１０５において、上方向に隣接する画素との差分絶対が、基準値より大きいか否かを判定する。すなわち、式（１４）の左辺の演算結果が、予め設定してある所定の基準値より大きいか否かが判定される。差分絶対値が基準値より大きい場合には、ステップＳ１０６において、判定部１０５は、４ビットのフラグのLSBを１に設定する。差分絶対値が基準値と等しいかそれより小さいと判定された場合には、ステップＳ１０７において、判定部１０５はフラグのLSBを０に設定する。
【０１２４】
すなわち、式（１４）の左辺の項の値が、基準値より大きいということは、注目画素の上方向にはエッジが存在することを意味する。したがって、その場合には、式（１４）における重み付け係数Ｗaの値が、０または充分小さい値に設定された上で、予測係数が演算されている。そこで、このようにして生成された予測係数を選択するために、４ビットのフラグのLSBの値が１に設定される。
【０１２５】
これに対して、差分絶対値が基準値と等しいかそれより小さい場合には、上方向に隣接する画素との間にはエッジが存在しないため、式（１４）における重み付け係数Ｗaの値は、比較的大きい値に設定された上で、予測係数が演算されている。そこで、この場合には、４ビットのフラグのLSBの値を０に設定することで、上方向に隣接する画素との間にエッジがない場合における予測係数が選択されるように、フラグのLSBに０が設定される。
【０１２６】
ステップＳ１０８において、判定部１０５は、注目画素の下方向に隣接する画素との差分絶対値が基準値より大きいか否かを判定する。具体的には、式（１６）の左辺の値が、基準値より大きいか否かが判定され、大きい場合には、ステップＳ１０９において、判定部１０５は、４ビットフラグの第２ビットを１に設定し、等しいかそれより小さい場合には、ステップＳ１１０において、フラグの第２ビットを０に設定する。すなわち、式（１６）の左辺の項の値が、基準値より大きいということは、注目画素と下方向に隣接する画素との間にエッジが存在することを意味する。そこで、この場合、式（１６）における重み付け係数Ｗaの値は、０か充分小さい値に設定されている。そこで、下方向に隣接する画素との間にエッジが存在する場合に演算された予測係数を選択できるようにするために、フラグの第２ビットに１が設定される。逆に、式（１６）の左辺の項の値が基準値と等しいかそれより小さい場合には、注目画素の下方向に隣接する画素との間には、エッジが存在しないことになる。そこで、この場合には、式（１６）における重み付け係数Ｗaの値は、比較的大きな値に設定されているので、下方向に隣接する画素との間に、エッジが存在しないことを前提にして計算された予測係数を選択できるようにするために、フラグの第２ビットに０が設定される。
【０１２７】
以下、同様にして、ステップＳ１１１において、判定部１０５は、左方向に隣接する画素との差分絶対値が基準値より大きいかを判定する。すなわち、式（１７）の左辺の値が基準値より大きいか否かが判定され、大きい場合には、ステップＳ１１２において、判定部１０５は、フラグの第３ビットを１に設定し、等しいか小さい場合には、ステップＳ１１３において０を設定する。これにより、注目画素の左方向に隣接する画素との間に、エッジが存在する場合と存在しない場合とで、それぞれのために計算された予測係数が選択できるようにフラグが設定される。
【０１２８】
ステップＳ１１４においては、判定部１０５は、右方向に隣接する画素との差分絶対値が基準値より大きいか否かを判定する。差分絶対値が基準値より大きい場合には、ステップＳ１１５において、判定部１０５は、フラグのMSBを１に設定し、等しいか小さい場合には、ステップＳ１１６において０に設定する。これにより、式（１５）の左辺で表される値が基準値より大きい場合（エッジが存在する場合）には、式（１５）における重み付け係数Ｗaの値を０か充分小さい値に設定することで演算された予測係数が選択できるようになされ、逆に、式（１５）の左辺で表される値が基準と等しいかそれより小さい場合（右方向に隣接する画素との間にエッジが存在しない場合）には、そのことを前提として計算された予測係数が選択できるようにフラグが設定される。
【０１２９】
ステップＳ１１７において、読み出し部１０６は、フラグと補正パラメータに対応する係数を読み出す。すなわち、この実施の形態の場合、記憶部１０７には、注目画素の上方向に隣接する画素との間にエッジが存在する場合と存在しない場合、下方向に隣接する画素との間にエッジが存在する場合と存在しない場合、左方向に隣接する画素との間にエッジが存在する場合と存在しない場合、並びに右方向に隣接する画素との間にエッジが存在する場合と存在しない場合を組み合わせた、合計１６種類の予測係数が補正パラメータσに対応して記憶部１０７に記憶されている。読み出し部１０６は、判定部１０５で判定されたフラグと、パラメータ取得部１０１により、ステップＳ１０１で取得された補正パラメータσに基づいて、１６種類の予測係数の中から、そのフラグと補正パラメータに対応する予測係数を読み出す。
【０１３０】
ステップＳ１１８において、積和演算部１０８は、画素値と係数の積和を演算する。具体的には、積和演算部１０８は、式（１９）に従って、画素取得部１０３より供給された画素値と、読み出し部１０６より供給された予測係数との積和を演算し、画素データを生成する。この予測係数は、上述したように、ぼけを補正する係数となされているため、この演算により、ぼけが補正された画像の画像データが生成されることになる。
【０１３１】
図２５乃至図２７は、ぼけが補正された画像の例を表している。図２５は、補正前の画像の例を表し、この画像においては、背景の草にフォーカスがなされているため、背景は鮮明な画像となっているが、前景の昆虫はぼけた画像となっている。
【０１３２】
図２６は、ユーザにより指定されたパラメータσを補正せずに、ぼけを補正した画像の例を表している。この例においては、前景の画像のぼけは補正されているが、背景の画像にオーバーシュートまたはリンギングが発生してしまっている結果となっている。
【０１３３】
これに対して、図２７は、本発明によりぼけが補正された画像の例を表している。同図に示されるように、本発明においては、上述したように、ユーザがパラメータσの値を過大に設定したとしても、より小さい値に補正されるので、背景のオーバーシュートやリンギングなどの劣化が抑制されている。そして、もちろん、前景の画像のぼけも図２５に示される場合に比べて充分ぼけが補正されている。
【０１３４】
図１３のルックアップテーブル６２−１乃至６２−４は、例えば、図２８に示されるルックアップテーブル作成装置２０１により作成される。このルックアップテーブル作成装置２０１は、取得部２１１、演算部２１２、設定部２１３、特徴量抽出部２１４、度数検出部２１５、最大値探索部２１６、テーブル作成部２１７、および記憶部２１８により構成されている。
【０１３５】
取得部２１１は、学習用の画像データを取得し、演算部２１２に出力する。設定部２１３は、通常、図１に示される画像処理装置１のメーカの操作者の操作に基づきパラメータσを設定する。演算部２１２は、設定部２１３により設定されたパラメータσに基づいて、取得部２１１より供給された画像データからぼけ画像の画像データを生成する。具体的には、上述した式（１）に基づいて、ぼけ画像データが生成される。特徴量抽出部２１４は、図１３の特徴量抽出部７１−１乃至７１−４と同一の特徴量を抽出する。度数検出部２１５は、特徴量抽出部２１４により抽出された特徴量の度数を検出する。最大値探索部２１６は、予め設定された閾値以上の度数を有する特徴量の中の最大値を探索する。
【０１３６】
テーブル作成部２１７は、設定部２１３により設定されたパラメータσの値と、最大値探索部２１６により探索された最大値に基づいて、推定パラメータを設定する。記憶部２１８は、テーブル作成部２１７により作成されたテーブルを、予め用意されているメモリなどに記憶させる。
【０１３７】
次に、図２９のフローチャートを参照して、ルックアップテーブル作成処理について説明する。
【０１３８】
ステップＳ１５１において、取得部２１１は、学習用の画像データを取得する。この学習用の画像データとしては、複数の、多くの、様々なぼけていない画像の画像データが用意され、これが取得される。ステップＳ１５２において、設定部２１３は、パラメータσを設定する。すなわち、設定部２１３は、操作者の操作に基づいたパラメータσの値を演算部２１２に出力する。ステップＳ１５３において、演算部２１２は、ぼけ画像の画像データを生成する。具体的には、ステップＳ１５２の設定処理で設定部２１３により設定されたパラメータσの値を式（１）と式（２）に適用して、ぼけのない画像の画像データＸ（x＋i,y＋j）からぼけ画像の画像データＹ（x，y）を生成する。
【０１３９】
ステップＳ１５４において、特徴量抽出部２１４は、特徴量を抽出する。すなわち、演算部２１２により演算されたぼけ画像の画像データから、図１３の特徴量抽出部７１−１乃至７１−４で抽出される場合と同一の特徴量が抽出される。
【０１４０】
ステップＳ１５５において、度数検出部２１５は度数を検出する。すなわち、同一の特徴量が得られる度数が検出される。これにより、例えば、図３０に示されるような特徴量毎の度数分布が得られることになる。図３０の例においては、設定部２１３により設定されたパラメータがσAである場合、σBである場合、並びにσCである場合における度数分布の例が示されている。
【０１４１】
ステップＳ１５６において、最大値探索部２１６は、パラメータσ毎の特徴量の最大値を探索する。図３０の例においては、設定されているパラメータの値がσAである場合には、特徴量の最大値としてＶAが、パラメータがσBである場合には、特徴量の最大値としてＶBが、パラメータがσCである場合の特徴量の最大値としてＶCが、それぞれ探索される。
【０１４２】
なお、この特徴量の最大値は、その度数が予め設定してある所定の基準値以上の度数のものの中から選択するようにしてもよい。これにより、ノイズ的な特徴量に基づいて、誤った補正が行われるようなことが抑制される。
【０１４３】
ステップＳ１５７において、テーブル作成部２１７は、テーブル作成処理を実行する。
その詳細は、図３１のフローチャートを参照して後述するが、この処理により、ルックアップテーブルが作成される。ステップＳ１５８において、記憶部２１８は、ステップＳ１５７の処理でテーブル作成部２１７により作成されたテーブルを記憶する。すなわち、記憶部２１８は、予め用意されたメモリにルックアップテーブルを書き込む。このルックアップテーブルが、上述した図１３のパラメータ補正部３２のルックアップテーブル６２−１乃至６２−４として用いられる。
【０１４４】
次に、図３１のフローチャートを参照して、図２９のステップＳ１５７におけるテーブル作成処理について説明する。
【０１４５】
ステップＳ１８１において、テーブル作成部２１７は、アドレスとしての特徴量が、ステップＳ１５２で設定されたパラメータに対応する特徴量の最大値より大きい領域か否かを判定する。アドレスとしての特徴量が設定されたパラメータに対応する特徴量の最大値と等しいか、それより小さい領域である場合には、ステップＳ１８２において、テーブル作成部２１７は、設定されたパラメータの値を、そのままその領域に書き込む処理を実行する。
【０１４６】
例えば、いま設定されているパラメータが、図１６のパラメータσ70であり、アドレスとしての特徴量（図１６の横軸に示される特徴量）の値が、例えば、Ｖ80である場合、値Ｖ80は、パラメータσ70に対応する特徴量の最大値Ｖ70より小さい（Ｖ80＜Ｖ70）。そこで、この場合、図１６におけるパラメータσ70の枠の中には、パラメータの値σ70がそのまま書き込まれる。
【０１４７】
これに対して、ステップＳ１８１において、アドレスとしての特徴量が、設定されたパラメータに対応する特徴量の最大値より大きいと判定された場合、ステップＳ１８３において、テーブル作成部２１７は、予め用意されている推定パラメータのうち、アドレスとしての特徴量をより大きく、かつアドレスとしての特徴量に最も近い値を最大の特徴量とするパラメータを書き込む。例えば、図１６の例においては、予め用意されている推定パラメータとしては、σ70，σ50，σ30の３つがある。これらのパラメータに対応する特徴量の最大値は、図１７に示されるように、それぞれ、Ｖ70，Ｖ50，Ｖ30である。
【０１４８】
アドレスとしての特徴量の値が、例えば、Ｖ60である場合、この値Ｖ60は、パラメータσ70が対応する最大値Ｖ70より大きい。従って、ステップＳ１８１の処理でYESと判定される。アドレスとしての特徴量Ｖ60より大きく、かつ、この値Ｖ60に最も近い予め用意されたパラメータが対応する最大値Ｖ50を最大の特徴量とするパラメータは、パラメータσ50である（パラメータσ70に対応する最大値Ｖ70は、アドレスとしてのＶ60より小さく、またパラメータσ30に対応する最大値Ｖ30は、パラメータσ50が対応する最大値Ｖ50より離れている）。そこで、この場合には、アドレスとしての特徴量Ｖ60の領域には、パラメータσ50が書き込まれる。
【０１４９】
パラメータσの値がσ70であり、アドレスとしての特徴量がＶ70である場合には、アドレスとしての特徴量Ｖ40より大きく、かつアドレスとしての特徴量Ｖ40に最も近い値を最大の特徴量とするパラメータは、値Ｖ30を最大の特徴量とするパラメータσ30である。そこで、アドレスとしての特徴量Ｖ40に対応する領域には、パラメータσ30が書き込まれる。
【０１５０】
以上のようにして、図１６に示されるルックアップテーブルが作成される。
【０１５１】
なお、以上においては、フォーカスぼけを補正する場合の例を説明したが、本発明は、動きぼけを補正する場合にも適用することが可能である。
【０１５２】
動きぼけを補正する場合の処理とそれを実行する機能ブロックは、基本的にフォーカスぼけを補正する場合と同様であるが、フォーカスぼけを補正する場合の図１４のパラメータ補正処理は、動きぼけを補正する場合、図３２に示すようになる。
【０１５３】
ステップＳ２１１において、ユーザインタフェース部３１は、動きぼけの方向と大きさを取得する。すなわち、ユーザは表示デバイス１２に表示されている画像を見ながら動きぼけの方向（動きぼけの補正を行う方向）と大きさを入力する。この入力は、例えばユーザインタフェース部３１のつまみ５１やマウス等を操作することで行われるようにすることができる。この場合、例えば図３３に示されるように、補正対象の画像に重畳して、方向を表すカーソル３１１を表示デバイス１２に表示させ、このカーソル３１１を、ユーザが操作したつまみ５１の回転量と方向に応じて回転させ、最終的にカーソル３１１が指向する方向が動きぼけの処理を行う方向として取得される。あるいは、予め用意されている上下左右、右上、右下、左上、左下の８個の方向（勿論、それ以上の数の方向であってもよい）から、ユーザにより選択された１つの方向を動きぼけの処理を行う方向として取得するようにしてもよい。また、大きさを入力するために、つまみ５１とは別のつまみを設けることができる。あるいは、キーボードにより大きさの値を入力させたり、マウスでドラッグさせ、その長さ（距離）で入力させてもよい。
【０１５４】
ステップＳ２１２において、ユーザインタフェース部３１は、動きぼけを補正するパラメータを取得する。例えば特開２００１−２５０１１９号公報に開示されているように、動きぼけは、移動する物体（オブジェクト）の動きに対応する数の画素値の和を演算することでモデル化することができる。そこで、この演算対象とする画素の数をパラメータＰで制御することで、動きぼけを調整することができる。ユーザインタフェース部３１は、ユーザが入力したこのパラメータＰの値を取得する。つまり、ユーザにより入力された動きぼけの大きさが、このパラメータＰに対応する。取得されたパラメータＰは、ステップＳ２１１において取得された方向とともに、特徴量抽出部７１−１乃至７１−４とルックアップテーブル６２−１乃至６２−４に供給される。
【０１５５】
ステップＳ２１３において、特徴量抽出部７１−１乃至７１−４は観察領域を設定する。すなわち、特徴量抽出部７１−１乃至７１−４は、まず、ステップＳ２１２の処理で取得されたパラメータＰに対応する領域を観察領域として設定する。具体的には、取得された方向と一致する方向（完全に一致する方向は勿論、若干ずれていても、その差が閾値以下である方向を含む）の取得されたパラメータＰに対応する範囲の領域が観察領域とされる。
【０１５６】
例えば、図３３に示されるように、移動するオブジェクト３０１の動きぼけを補正する場合において、取得された方向と一致する方向の動きベクトルが矢印３０２であるとき、着目画素を含む画素３０３のうち、パラメータＰに対応する数の画素が観察領域として設定される。
【０１５７】
次に、ステップＳ２１４において、特徴量抽出部７１−１乃至７１−４は特徴量を抽出する。上述したように、特徴量抽出部７１−１乃至７１−４は、それぞれ自分自身に割り当てられた他とは異なる特徴量を抽出する。この処理は、図１４のステップＳ５３の処理と同様の処理である。
【０１５８】
ステップＳ２１５において、最大値探索部７２−１乃至７２−４は最大値（ぼけが最も少い特徴量）を探索する。特徴量抽出部７１−１が１次微分値を特徴量として抽出し、特徴量抽出部７１−２が２次微分値を特徴量として抽出し、特徴量抽出部７１−３がダイナミックレンジを特徴量として抽出し、特徴量抽出部７１−４が分散を特徴量として抽出するものとすると、最大値探索部７２−１は、特徴量抽出部７１−１が抽出した観察領域内の画素の１次微分値の最大値を探索する。最大値探索部７２−２は、特徴量抽出部７１−２が抽出した観察領域内の画素の２次微分値の最大値を探索する。最大値探索部７２−３は、特徴量抽出部７１−３が抽出した観察領域内の画素のダイナミックレンジの最大値を探索する。最大値探索部７２−４は、特徴量抽出部７１−４が抽出した観察領域内の画素の分散を探索する。
【０１５９】
ステップＳ２１６において、ルックアップテーブル６２−１乃至６２−４は、統計的データを参照して推定パラメータを推定する。すなわち、ルックアップテーブル６２−１乃至６２−４は、テーブルを有している。図３４はこのテーブルの例を表している。図３４のテーブルは、縦軸のパラメータの値が、図１６においてはパラメータσであるものが、図３４においてはパラメータＰとなっている点が異なっているだけであり、その他は基本的に図１６に示されているテーブルと同様のテーブルである。ルックアップテーブル６２−１乃至６２−４は、それぞれのテーブルに基づいて、取得されたパラメータＰを推定パラメータに変換する。その基本的な処理は、図１４のステップＳ５５における場合と同様である。すなわち、ユーザが指定したパラメータＰは、その値に対応する特徴量の最大値が、最大値探索部７２−１乃至７２−４で探索された最大値より小さい場合には、最大値探索部７２−１乃至７２−４で探索された最大値より大きな値の最大値が対応する推定パラメータに変更される。
【０１６０】
ステップＳ２１７において、選択部６３は、ルックアップテーブル６２−１乃至６２−４が出力した推定パラメータの中から、最小の推定パラメータを選択する処理を実行する。すなわち、ルックアップテーブル６２−１乃至６２−４が出力する４個の推定パラメータの大小が比較され、最小の推定パラメータ（動きぼけが最も少いパラメータ）が１つ選択され、それが補正パラメータとして出力される。これにより、ユーザが指定したパラメータＰが補正パラメータに変換（補正）されたことになる。
【０１６１】
動きぼけを補正する場合におけるその他の処理は、フォーカスぼけを補正する場合と基本的に同様であるからその説明は省略する。
【０１６２】
以上においては、パラメータσまたはパラメータＰをルックアップテーブルに基づいて補正するようにしたが、その都度演算するようにしてもよいのはもとよりである。
【０１６３】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、画像処理装置は、図３５に示されるようなパーソナルコンピュータ４２０により構成される。
【０１６４】
図３５において、CPU（Central Processing Unit）４２１は、ROM（Read Only Memory）４２２に記憶されているプログラム、または記憶部４２８からRAM（Random Access Memory）４２３にロードされたプログラムに従って各種の処理を実行する。RAM４２３にはまた、CPU４２１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１６５】
CPU４２１、ROM４２２、およびRAM４２３は、バス４２４を介して相互に接続されている。このバス４２４にはまた、入出力インタフェース４２５も接続されている。
【０１６６】
入出力インタフェース４２５には、キーボード、マウスなどよりなる入力部４２６、CRT(Cathode Ray Tube)、LCD(Liquid Crystal display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部４２７、ハードディスクなどより構成される記憶部４２８、モデムなどより構成される通信部４２９が接続されている。通信部４２９は、インターネットを含むネットワークを介しての通信処理を行う。
【０１６７】
入出力インタフェース４２５にはまた、必要に応じてドライブ４３０が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア４３１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部４２８にインストールされる。
【０１６８】
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【０１６９】
この記録媒体は、図３５に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク（フロッピディスクを含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む）、光磁気ディスク（MD（Mini-Disk）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア４３１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM４２２や、記憶部４２８に含まれるハードディスクなどで構成される。
【０１７０】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１７１】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【産業上の利用可能性】
【０１７２】
本発明は、例えば、デジタルカメラに適用することが可能である。
【図面の簡単な説明】
【０１７３】
【図１】本発明を適用した画像処理装置の構成例を示すブロック図である。
【図２】図１の画像処理装置の画像処理を説明するフローチャートである。
【図３】ぼけのパラメータσを説明する図である。
【図４】ぼけのパラメータσを説明する図である。
【図５】フォーカスぼけの発生の原理を説明する図である。
【図６】フォーカスぼけに影響する画素値の範囲を説明する図である。
【図７】２次元の画素の配列を説明する図である。
【図８】２次元のフォーカスぼけに影響する画素を説明する図である。
【図９】フォーカスぼけに影響するエッジを説明する図である。
【図１０】図１の画像補正処理装置の構成例を示すブロック図である。
【図１１】図１０のユーザインタフェース部の構成例を示す図である。
【図１２】図１０の画像補正処理装置の画像補正処理を説明するフローチャートである。
【図１３】図１０のパラメータ補正部の機能的構成例を示すブロック図である。
【図１４】図１２のステップＳ３１におけるパラメータ補正処理を説明するフローチャートである。
【図１５】観察領域を説明する図である。
【図１６】ルックアップテーブルの例を示す図である。
【図１７】特徴量、度数およびパラメータσとの関係を説明する図である。
【図１８】推定パラメータ推定処理を説明するフローチャートである。
【図１９】特徴量、度数、およびパラメータσの関係を説明する図である。
【図２０】特徴量、度数、およびパラメータσの関係を説明する図である。
【図２１】特徴量、度数、およびパラメータσの関係を説明する図である。
【図２２】図１０のぼけ補正部の機能的構成例を示すブロック図である。
【図２３】図２２のぼけ補正部のぼけ補正処理を説明するフローチャートである。
【図２４】図２２のぼけ補正部のぼけ補正処理を説明するフローチャートである。
【図２５】ぼけ補正前の画像の例を示す写真である。
【図２６】ぼけが補正された画像の例を示す写真である。
【図２７】ぼけが補正された画像の例を示す写真である。
【図２８】ルックアップテーブル作成装置の機能的構成例を示すブロック図である。
【図２９】図２８のルックアップテーブル作成装置のルックアップルーブル作成処理を説明するフローチャートである。
【図３０】特徴量、度数、およびパラメータσの関係を説明する図である。
【図３１】図２９のステップＳ１５７におけるテーブル作成処理の詳細を説明するフローチャートである。
【図３２】動きぼけを補正する場合における図１２のステップＳ３１におけるパラメータ補正処理を説明するフローチャートである。
【図３３】動きぼけの補正の方向を説明する図である。
【図３４】動きぼけを補正する場合におけるルックアップテーブルの例を示す図である。
【図３５】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【０１７４】
１  画像処理装置，  １１  画像補正処理装置，  １２  表示デバイス，  ３１  ユーザインタフェース部，  ３２  パラメータ補正部，  ３３  ぼけ補正部，  ６１−１乃至６１−４  特徴量検出部，  ６２−１乃至６２−４  ルックアップテーブル，  ６３  選択部，  ７１−１乃至７１−４  特徴量抽出部，  ７２−１乃至７２−４  最大値探索部
【図１】
2006024192.tif 000012
【図２】
2006024192.tif 000013
【図３】
2006024192.tif 000014
【図４】
2006024192.tif 000015
【図５】
2006024192.tif 000016
【図６】
2006024192.tif 000017
【図７】
2006024192.tif 000018
【図８】
2006024192.tif 000019
【図９】
2006024192.tif 000020
【図１０】
2006024192.tif 000021
【図１１】
2006024192.tif 000022
【図１２】
2006024192.tif 000023
【図１３】
2006024192.tif 000024
【図１４】
2006024192.tif 000025
【図１５】
2006024192.tif 000026
【図１６】
2006024192.tif 000027
【図１７】
2006024192.tif 000028
【図１８】
2006024192.tif 000029
【図１９】
2006024192.tif 000030
【図２０】
2006024192.tif 000031
【図２１】
2006024192.tif 000032
【図２２】
2006024192.tif 000033
【図２３】
2006024192.tif 000034
【図２４】
2006024192.tif 000035
【図２５】
2006024192.tif 000036
【図２６】
2006024192.tif 000037
【図２７】
2006024192.tif 000038
【図２８】
2006024192.tif 000039
【図２９】
2006024192.tif 000040
【図３０】
2006024192.tif 000041
【図３１】
2006024192.tif 000042
【図３２】
2006024192.tif 000043
【図３３】
2006024192.tif 000044
【図３４】
2006024192.tif 000045
【図３５】
2006024192.tif 000046