(57)【要約】【課題】  位置ずれを含む複数の画像から、それらの画像よりも解像度の高い合成画像を生成する画像処理において、処理時間を短縮すること。【解決手段】  複数の色成分から成り、位置ずれを含む複数の画像から、複数の画像よりも解像度の高い合成画像を生成する画像処理をコンピュータで実現するためのプログラムであって、複数の画像と、複数の画像間の位置ずれを示す位置ずれ情報とを取得する取得ステップと、位置ずれ情報に対して重み付け処理を行うための重み付け情報を複数の色成分のそれぞれについて算出する第１の算出ステップと、位置ずれ情報に対して、重み付け情報に基づく重み付け処理を、複数の色成分ごとに行うとともに、複数の色成分のうち、算出対象の色成分以外の色成分の局所的変曲情報と、重み付け処理後の重み付け情報とに基づいて、算出対象の色成分の画素値を算出する第２の算出ステップと、第２の算出ステップによる算出結果に基づいて、合成画像を生成する生成ステップとを備える。【選択図】    図２
2011128834.tif 000002
【特許請求の範囲】
【請求項１】
複数の色成分から成り、位置ずれを含む複数の画像から、前記複数の画像よりも解像度の高い合成画像を生成する画像処理をコンピュータで実現するためのプログラムであって、
前記複数の画像と、前記複数の画像間の位置ずれを示す位置ずれ情報とを取得する取得ステップと、
前記位置ずれ情報に対して重み付け処理を行うための重み付け情報を前記複数の色成分のそれぞれについて算出する第１の算出ステップと、
前記位置ずれ情報に対して、前記重み付け情報に基づく重み付け処理を、前記複数の色成分ごとに行うとともに、前記複数の色成分のうち、算出対象の色成分以外の色成分の局所的変曲情報と、前記重み付け処理後の前記重み付け情報とに基づいて、前記算出対象の色成分の画素値を算出する第２の算出ステップと、
前記第２の算出ステップによる算出結果に基づいて、前記合成画像を生成する生成ステップと
を備えることを特徴とする画像処理プログラム。
【請求項２】
請求項１に記載の画像処理プログラムにおいて、
前記第１の算出ステップでは、所定の基準画素値と、前記基準画素値と実際の画素値との色差に基づいて、前記重み付け情報を算出する
ことを特徴とする画像処理プログラム。
【請求項３】
請求項１に記載の画像処理プログラムにおいて、
前記第１の算出ステップでは、所定の基準座標値と、前記基準座標値と実際の座標値との距離に基づいて、前記重み付け情報を算出する
ことを特徴とする画像処理プログラム。
【請求項４】
請求項１に記載の画像処理プログラムにおいて、
前記取得ステップでは、前記複数の画像として、ベイヤー配列の複数の画像を取得する
ことを特徴とする画像処理プログラム。
【請求項５】
請求項１に記載の画像処理プログラムにおいて、
前記取得ステップでは、前記複数の画像として、補間処理済みの複数の画像を取得する
ことを特徴とする画像処理プログラム。
【請求項６】
請求項１から請求項５の何れか１項に記載の画像処理プログラムにおいて、
所定の繰り返し演算を行う超解像処理を、前記生成ステップにおいて生成した前記合成画像を初期画像として行い、前記合成画像よりも高精細な画像を生成する超解像処理ステップをさらに備える
ことを特徴とする画像処理プログラム。
【請求項７】
被写体を撮像して、画像を生成する撮像部と、
請求項１から請求項６の何れか１項に記載の画像処理プログラムによる処理を実行する制御部とを備え、
前記制御部は、前記取得ステップにおいて、前記撮像部により生成した複数の画像を、前記複数の画像として取得する
ことを特徴とする撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理プログラムおよび撮像装置に関する。
【背景技術】
【０００２】
従来より、位置ずれを含む複数の画像から、相対的に解像度の高い合成画像を生成する画像処理が行われている。このような画像処理においては、繰り返し処理などを用いた様々な技術がある。例えば、特許文献１の発明は、いわゆる（再構成型）超解像処理について開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４１２６３７８号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上述した画像処理においては、繰り返し処理により処理時間が長くなるという問題がある。そのため、画像処理の時間短縮が求められている。
【０００５】
本発明は、上記問題に鑑みてなされたものであり、位置ずれを含む複数の画像から、それらの画像よりも解像度の高い合成画像を生成する画像処理において、処理時間を短縮することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の画像処理プログラムは、複数の色成分から成り、位置ずれを含む複数の画像から、前記複数の画像よりも解像度の高い合成画像を生成する画像処理をコンピュータで実現するためのプログラムであって、前記複数の画像と、前記複数の画像間の位置ずれを示す位置ずれ情報とを取得する取得ステップと、前記位置ずれ情報に対して重み付け処理を行うための重み付け情報を前記複数の色成分のそれぞれについて算出する第１の算出ステップと、前記位置ずれ情報に対して、前記重み付け情報に基づく重み付け処理を、前記複数の色成分ごとに行うとともに、前記複数の色成分のうち、算出対象の色成分以外の色成分の局所的変曲情報と、前記重み付け処理後の前記重み付け情報とに基づいて、前記算出対象の色成分の画素値を算出する第２の算出ステップと、第２の算出ステップによる算出結果に基づいて、前記合成画像を生成する生成ステップとを備える。
【０００７】
なお、前記第１の算出ステップでは、所定の基準画素値と、前記基準画素値と実際の画素値との色差に基づいて、前記重み付け情報を算出しても良い。
【０００８】
また、前記第１の算出ステップでは、所定の基準座標値と、前記基準座標値と実際の座標値との距離に基づいて、前記重み付け情報を算出しても良い。
【０００９】
また、前記取得ステップでは、前記複数の画像として、ベイヤー配列の複数の画像を取得しても良い。
【００１０】
また、前記取得ステップでは、前記複数の画像として、補間処理済みの複数の画像を取得しても良い。
【００１１】
また、所定の繰り返し演算を行う超解像処理を、前記生成ステップにおいて生成した前記合成画像を初期画像として行い、前記合成画像よりも高精細な画像を生成する超解像処理ステップをさらに備えても良い。
【００１２】
本発明の撮像装置は、被写体を撮像して、画像を生成する撮像部と、上述したいずれかの画像処理プログラムによる処理を実行する制御部とを備え、前記制御部は、前記取得ステップにおいて、前記撮像部により生成した複数の画像を、前記複数の画像として取得する。
【発明の効果】
【００１３】
本発明によれば、位置ずれを含む複数の画像から、それらの画像よりも解像度の高い合成画像を生成する画像処理において、処理時間を短縮することができる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態のコンピュータ１の構成を示す図である。
【図２】本実施形態における画像処理を実行する際の制御部１５の動作について説明するフローチャートである。
【図３】本実施形態における画像処理を実行する際の制御部１５の動作について説明する別のフローチャートである。
【図４】本実施形態の撮像装置の一例である電子カメラ１００の構成を示すブロック図である。
【発明を実施するための形態】
【００１５】
以下、図面を用いて本発明の実施形態について説明する。以下では、コンピュータを例に挙げて説明を行う。
【００１６】
図１は、本実施形態のコンピュータ１の構成を示す図である。コンピュータ１は、図１に示すように、取得部１１と記録部１２と画像表示部１３と操作部１４と制御部１５とを備える。取得部１１は、有線、無線、記録媒体用のドライブなどを介して、電子カメラなどの外部機器や記録媒体から画像データを取得する。記録部１２は、画像データなどを記録する。画像表示部１３は、液晶表示素子などの画像表示素子を備える。操作部１４は、電源釦、マウス、キーボードなどを含む。制御部１５は、各部を統合的に制御する。また、制御部１５は、各処理を実行するためのプログラムを予め記録している。なお、このプログラムは、有線、無線を経由したインターネットを介して取得したものであっても良いし、記録媒体などを介して取得したものであっても良い。
【００１７】
制御部１５は、取得部１１により取得した画像や、記録部１５に記録された画像に対して、位置ずれを含む複数の画像から、それらの画像よりも解像度の高い合成画像を生成する画像処理を施す。
【００１８】
このような画像処理を実行する際の制御部１５の動作について、図２のフローチャートを参照して説明する。
【００１９】
ステップＳ１において、制御部１５は、操作部１４を介したユーザによる指示にしたがって、処理対象となる複数の低解像度画像と位置ずれ情報とを取得する。
【００２０】
位置ずれ情報とは、ａ(ｘ)で表される関数であり、上述した低解像度画像を構成する複数の色成分（例えば、Ｒ，Ｇ，Ｂ）ごとに存在する。この位置ずれ情報ａ(ｘ)は、予め所定の方法で求められる。位置ずれ情報ａ(ｘ)を求める方法として、例えば、テンプレートマッチング法やＬｕｃａｓ−Ｋａｎａｄｅ法といった手法がある。また、位置ずれ情報ａ(ｘ)は、例えば、最終的に生成される合成画像のサイズに対応する座標値を含む。位置ずれ情報ａ(ｘ)は、上述した複数の画像のタグ情報として記録されていても良いし、複数の画像と関連付けられた別ファイルの情報として記録されていても良い。
【００２１】
ステップＳ２において、制御部１５は、処理対象における局所領域に含まれる画素の画素値と位置ずれ情報とを読み出す。局所領域とは、予め定められた所定の領域であり、例えば、５ピクセル四方程度の大きさの領域である。制御部１５は、この局所領域を順次ずらしていき、全ての画素について処理を行う（後述するステップＳ５参照）。
【００２２】
ステップＳ３において、制御部１５は、ステップＳ２で読み出した位置ずれ情報に基づいて、重み付けデータを生成する。重みデータは、色差成分に関するＷｄ、および、距離成分に関するＷｘから成る。
【００２３】
重みデータＷｄは、所定の基準値に基づいて求められる。基準値とは、例えば、初期の画像をバイキュービック、バイリニアなどの手法で最終的に生成される合成画像のサイズに単純拡大した場合に、拡大の後の画像において対応する座標の画素値である。重みデータＷｄは、ガウシアン、または、線形な関数を用いて求められる。ガウシアンの場合には、以下の式１により求められ、線形の場合には、以下の式２により求められる。
【００２４】
【数１】
2011128834.tif 000003
【００２５】
また、重みデータＷｘは、所定の基準座標に基づいて求められる。基準座標とは、算出対象の座標の画素の座標である。重みデータＷｘも、重みデータＷｄと同様に、ガウシアン、または、線形な関数を用いて求められる。ガウシアンの場合には、以下の式３により求められ、線形の場合には、以下の式４により求められる。
【００２６】
【数２】
2011128834.tif 000004
【００２７】
制御部１５は、ステップＳ１で説明した位置ずれ情報ａ(ｘ)と、上述した重みデータＷｄおよび重みデータＷｘとを乗じたａ(ｘ)・Ｗｄ・Ｗｘを最終的な重みデータとしてステップＳ４に進む。
【００２８】
ステップＳ４において、制御部１５は、ステップＳ３で生成した重み付けデータａ(ｘ)・Ｗｄ・Ｗｘに基づいて、重み付け平均値を算出する。重み付け平均値ｂ(ｘ)は、以下の式５により求められる。
【００２９】
【数３】
2011128834.tif 000005
【００３０】
なお、制御部１５は、ステップＳ２からステップＳ４で説明した各処理を、上述した低解像度画像を構成する複数の色成分（例えば、Ｒ，Ｇ，Ｂ）ごとに行う（後述するステップＳ６参照）。
【００３１】
ステップＳ５において、制御部１５は、ステップＳ２からステップＳ４の処理を、全ての画素について行ったか否かを判定する。制御部１５は、ステップＳ２からステップＳ４の処理を、全ての画素について行ったと判定すると、ステップＳ６に進む。一方、ステップＳ２からステップＳ４の処理を、全ての画素について行っていないと判定すると、次の局所領域を処理対象とし、ステップＳ２に戻る。
【００３２】
ステップＳ６において、制御部１５は、ステップＳ２からステップＳ４の処理を、全ての色成分について行ったか否かを判定する。制御部１５は、ステップＳ２からステップＳ４の処理を、全ての色成分について行ったと判定すると、ステップＳ７に進む。一方、ステップＳ２からステップＳ４の処理を、全ての色成分について行っていないと判定すると、次の色成分を処理対象とし、ステップＳ２に戻る。
【００３３】
ステップＳ７において、制御部１５は、合成処理を行う。制御部１５は、ステップＳ４で算出した複数の色成分ごとの重み付け平均値に基づいて、以下の式６から式８により合成処理を行う。
【００３４】
【数４】
2011128834.tif 000006
【００３５】
式６中のＩｂ,ｒは、複数の色成分のうち、Ｒ成分とＢ成分との何れか、または、Ｒ成分とＢ成分とを平均化した値である。
【００３６】
式６から式８の処理を順次行って合成処理を行うことにより、すべての色成分の重み付け平均値を用いて、変曲情報を算出し、改めて画素値を推定する（補間する）ことになる。つまり、Ｂ成分またはＲ成分の変曲情報を用いてＧ成分の合成処理を行った後に、合成処理が行われたＧ成分の変曲情報を用いてＢ成分およびＲ成分の合成処理を行うことになる。ここで、変曲情報とは、処理対象の色成分以外の色成分の情報である。
【００３７】
なお、上述した式６から式８は一例であり、処理対象の色成分以外の色成分の変曲情報を用いれば、他の式を用いることも可能である。例えば、上述した式７および式８を、それぞれ、以下に示す式９および式１０に置き替えても良い。
【００３８】
【数５】
2011128834.tif 000007
【００３９】
ステップＳ８において、制御部１５は、ステップＳ７で説明した合成処理を、全ての画素について行ったか否かを判定する。制御部１５は、ステップＳ７で説明した合成処理を、全ての画素について行ったと判定すると、ステップＳ９に進む。一方、ステップＳ７で説明した合成処理を、全ての画素について行っていないと判定すると、次の画素を処理対象とし、ステップＳ７に戻る。
【００４０】
ステップＳ９において、制御部１５は、ステップＳ７で説明した合成処理を、全ての色成分について行ったか否かを判定する。制御部１５は、ステップＳ７で説明した合成処理を、全ての色成分について行ったと判定すると、ステップＳ１０に進む。一方、ステップＳ７で説明した合成処理を、全ての色成分について行っていないと判定すると、次の色成分を処理対象とし、ステップＳ７に戻る。
【００４１】
ステップＳ１０において、制御部１５は、ステップＳ７で画像処理が行われた画像の画像データを、記録部１２に記録し、一連の処理を終了する。なお、必要に応じて、制御部１５は、記録前の合成画像に対して、圧縮処理を行っても良い。
【００４２】
図２のフローチャートを用いて説明した一連の処理を行うことにより、より正確な画素値を推定することができる。したがって、繰り返し処理のような処理時間を要する処理を行わなくても、合成画像における偽色の発生を抑制することができるとともに、情報量を示すサンプリング密度が高く、解像感の高い画像を生成することができる。
【００４３】
さらに、このようにして生成した合成画像を、その他の処理の初期画像とすることにより、処理後の画像の質を向上させることが期待できる、例えば、このようにして生成した合成画像を、繰り返し演算処理による超解像処理の初期画像とすることで、より解像度の高い画像を生成することができる。
【００４４】
図２の一連の処理により生成した合成画像を初期画像として、繰り返し演算処理による超解像処理を実行する際の制御部１５の動作について、図３のフローチャートを参照して説明する。なお、以下では、ＭＡＰ型の繰り返し演算を用いた超解像処理を例に挙げて説明するが、本発明はこの例に限定されず、他の方法を用いて超解像処理を行っても良い。また、以下の処理における誤差項や拘束項の関数形や項数は一例である。
【００４５】
ステップＳ１１において、制御部１５は、合成画像を初期画像として取得する。
【００４６】
ステップＳ１２において、制御部１５は、誤差項、拘束項の勾配算出処理を行う。
【００４７】
以下に示す式１１は、カメラモデルに基づいて仮定される評価関数である。この評価関数を、繰り返し処理を用いて最小化することにより目的の高解像画像を求める。
【００４８】
【数６】
2011128834.tif 000008
【００４９】
式１１において、Ｘは未知の高解像画像を示し、Ｙは位置合わせデータを示す。ＭＡＰ法においては、式１１に示す関数εを最小化することにより、未知の高解像画像を求める。なお、式１１において、右辺の第１項が誤差項に相当し、右辺の第２項が拘束項に相当する。また、制御部１５は、関数εの最小化の方法として、共役勾配法や最急降下法を用いる。最小化を行うための勾配は以下の式１２により表される。
【００５０】
【数７】
2011128834.tif 000009
【００５１】
制御部１５は、式１２におけるＸとして、ステップＳ１１で取得した合成画像を用いる。ただし、後述するステップＳ１５において、ＮＯと判定された後にステップＳ１２の処理を行う場合には、制御部１５は、後述するステップＳ１４において更新された初期画像を、式１２におけるＸとして用いる。
【００５２】
ステップＳ１３において、制御部１５は、全ての位置ずれ情報を処理したか否かを判定する。制御部１５は、全ての位置ずれ情報を処理したと判定すると、ステップＳ１４に進む。一方、全ての位置ずれ情報を処理していないと判定すると、次の位置ずれ情報を処理対象とし、ステップＳ１２に戻る。
【００５３】
ステップＳ１４において、制御部１５は、勾配情報に基づいて、ステップＳ１１で初期画像を更新する。
【００５４】
ステップＳ１５において、制御部１５は、繰り返し処理を終了するか否かを判定する。制御部１５は、繰り返し処理を終了すると判定すると、ステップＳ１６に進む。一方、繰り返し処理を終了しないと判定すると、ステップＳ１２に戻る。ただし、制御部１５は、次の処理においては、ステップＳ１４で更新された初期画像を対象として処理を行う。なお、繰り返し処理を終了するか否かの判定は予め定められた条件にしたがって行われる。制御部１５は、例えば、処理の回数や、所定の評価値と閾値との比較などの条件にしたがって、繰り返し処理を終了するか否かの判定を行う。
【００５５】
ステップＳ１６において、制御部１５は、最後にステップＳ１４で更新された画像の画像データを、記録部１２に記録し、一連の処理を終了する。なお、必要に応じて、制御部１５は、記録前の合成画像に対して、圧縮処理を行っても良い。
【００５６】
超解像処理は、繰り返し処理に用いる初期画像に、処理結果が依存する。つまり、超解像処理は、初期画像の画質が良いほど、繰り返し処理により得られる結果も良くなるという初期画像依存性がある。図２のフローチャートで説明した合成画像を初期画像として、図３のフローチャートを用いて説明した一連の処理を行うことにより、超解像処理により生成される高解像画像において、アーティファクトが除去され、なおかつ、偽色の発生を抑制することができるとともに、情報量を示すサンプリング密度が高く、解像感の高い画像を生成することができる。
【００５７】
以上説明したように、本実施形態によれば、複数の画像と、それらの画像間の位置ずれを示す位置ずれ情報とを取得し、位置ずれ情報に対して重み付け処理を行うための重み付け情報を複数の色成分のそれぞれについて算出する。そして、位置ずれ情報に対して、重み付け情報に基づく重み付け処理を、複数の色成分ごとに行うとともに、複数の色成分のうち、算出対象の色成分以外の色成分の局所的変曲情報と、重み付け処理後の重み付け情報とに基づいて、算出対象の色成分の画素値を算出し、算出結果に基づいて合成画像を生成する。したがって、繰り返し処理のような処理時間を要する処理を行わなくても、合成画像における偽色の発生を抑制することができるとともに、情報量を示すサンプリング密度が高く、解像感の高い画像を生成することができる。そのため、位置ずれを含む複数の画像から、それらの画像よりも解像度の高い合成画像を生成する画像処理において、繰り返し処理を行う場合よりも、処理時間を短縮することができる。
【００５８】
また、本実施形態によれば、上述した合成画像を初期画像として、所定の繰り返し演算を行う超解像処理を行い、合成画像よりも高精細な画像を生成する。したがって、超解像処理により生成される高解像画像において、アーティファクトが除去され、なおかつ、偽色の発生を抑制することができるとともに、情報量を示すサンプリング密度が高く、解像感の高い画像を生成することができる。
【００５９】
特に、本実施形態によれば、いわゆるベイヤー画像を初期画像として超解像処理を行う場合において、繰り返し処理の初期画像となるベイヤー画像について、好適な位置合わせデータの補間画像を合成することができる。
【００６０】
また、本実施形態の方法を用いれば、超解像処理を行う場合において、規則的ではないランダムなパターンの位置合わせ結果に基づいて繰り返し処理を行う場合であっても、好適に対応することができる。
【００６１】
なお、本実施形態において、図２のフローチャートのステップＳ１で取得する複数の低解像度画像は、どのようなものであっても良い。例えば、ベイヤー配列の複数の画像を取得しても良いし、補間処理済みの複数の画像を取得しても良い。
【００６２】
また、本実施形態では、図２のフローチャートのステップＳ３において重み付けデータを生成する際に、色差成分に関するＷｄと距離成分に関するＷｘとの両方を算出する例を示したが、何れか一方のみを算出する構成としても良い。
【００６３】
また、本実施形態では、コンピュータを例に挙げて説明したが、本発明はこの例に限定されない。例えば、上述した実施形態で説明したプログラムによる処理を実行する電子カメラなどの撮像装置も、本発明の具体的態様として有用である。
【００６４】
図４は、このような撮像装置の一例である電子カメラ１００の構成を示すブロック図である。
【００６５】
電子カメラ１００は、図４に示すように、撮影レンズ部１１１、ＣＣＤ等の撮像素子１１２を含む撮像部１１３、画像を表示する液晶モニタなどを備えた画像表示部１１４、画像を記録する記録媒体などからなる記録部１１５、不図示のレリーズボタンなどを有し、ユーザ操作を受け付ける操作部１１６、各部を制御する制御部１１７を備える。撮像部１１３、記録部１１５、制御部１１７は、バスを介して相互に接続される。また、制御部１１７の出力は、バスを介して画像表示部１１４にも接続される。また、操作部１１６の出力は、制御部１１７に接続される。
【００６６】
制御部１１７は、撮像部１１３により生成した画像や、記録部１１５に記録された画像を、上述した実施形態の図２のフローチャートのステップＳ１における複数の低解像度画像として取得し、ステップＳ１で説明した位置ずれ情報を適宜算出した後に、ステップＳ２からステップＳ１０で説明した処理を行うためのプログラムを記録す。
【００６７】
そして、制御部１１７は、上述した実施形態の図２のフローチャートのステップＳ１における複数の低解像度画像として取得し、ステップＳ１で説明した位置ずれ情報を適宜算出した後に、ステップＳ２からステップＳ１０で説明した処理と同様の処理を行う。また、制御部１１７は、生成した合成画像を初期画像として、上述した実施形態の図３のフローチャートのステップＳ１１からステップＳ１６で説明した処理と同様の処理を行う。
【００６８】
このように、被写体を撮像して、画像を生成する撮像部と、上述した実施形態において説明した画像処理プログラムによる処理を実行する制御部とを備え、撮像部により生成した複数の画像を、上述した実施形態における複数の低解像度画像として取得し、同様の処理を行うことにより、上述した実施形態と同様の効果を得ることができる。
【符号の説明】
【００６９】
１…コンピュータ、１１…取得部、１２・１１５…記録部、１４・１１６…操作部、１５・１１７…制御部、１００…電子カメラ、１１３…撮像部
【図１】
2011128834.tif 000010
【図２】
2011128834.tif 000011
【図３】
2011128834.tif 000012
【図４】
2011128834.tif 000013