(57)【要約】      （修正有）【課題】画質劣化を抑制しながら静止画の手振れ補正を実現することが可能な方法を提供する。【解決手段】撮像素子による撮像で得られた静止画像データＳを修復する方法であって、撮像時における撮像素子のＹ方向へのぶれに関するぶれ情報を取得し、該ぶれ情報に基づいて、該ぶれ情報に基づくぶれがない状態で被写体を撮像したときに得られる理想的な画像データＯを静止画像データＳから復元するための復元行列Ｗを設定し、復元行列Ｗと静止画像データＳとの掛け算により画像データＯを復元し、復元した画像データＯに復元行列Ｗに起因してＹ方向に向かって周期的に重畳される複数種類のノイズを、復元行列Ｗとぶれ行列Ｈとの積によって求めた該ノイズのノイズ重畳周期に関するノイズ周期情報と、復元した画像データＯと、静止画像データＳとに基づいて算出し、算出したノイズを復元した画像データＯから除去して修復処理を終了する。【選択図】図８
2008061100.tif 000002
【特許請求の範囲】
【請求項１】
被写体を撮像素子によって撮像して得られた静止画像データを、前記撮像時における前記撮像素子の一次元方向へのぶれに関するぶれ情報に基づいて修復する画像データ修復装置であって、
前記ぶれ情報に基づくぶれがない状態で前記被写体を撮像したときに得られる理想的な画像データを前記静止画像データから復元するための復元行列であって、前記ぶれ情報に基づくぶれによる前記理想的な画像データの前記一次元方向への広がりを表すぶれ行列の擬似逆行列である復元行列と、前記静止画像データとの掛け算により、前記理想的な画像データを復元する画像データ復元手段と、
前記復元行列に起因して前記画像データ復元手段によって復元された画像データに前記一次元方向に向かって周期的に重畳される複数種類のノイズを算出するノイズ算出手段と、
前記ノイズ算出手段で算出されたノイズを前記画像データ復元手段によって復元された画像データから除去するノイズ除去手段とを備え、
前記復元行列は、前記ぶれ行列を近似した近似行列であって、前記ぶれ情報に基づくぶれによって前記理想的な画像データの端部から前記一次元方向外側に広がる画素データの値に、所定の値が外挿されるように表された近似行列、の逆行列であり、
前記ノイズ算出手段は、前記復元行列と前記ぶれ行列との積によって求められた前記複数種類のノイズ毎のノイズ重畳周期に関するノイズ周期情報と、前記画像データ復元手段によって復元された画像データと、前記静止画像データとに基づいて、前記複数種類のノイズを算出する画像データ修復装置。
【請求項２】
請求項１記載の画像データ修復装置であって、
前記所定の値が、前記理想的な画像データの前記端部の画素データの値である画像データ修復装置。
【請求項３】
請求項１又は２記載の画像データ修復装置であって、
前記復元行列と前記ぶれ行列との積により前記ノイズ周期情報を生成するノイズ周期情報生成手段を備える画像データ修復装置。
【請求項４】
請求項１又は２記載の画像データ修復装置であって、
前記ノイズ算出手段が、前記ぶれ情報に対応する前記ノイズ周期情報が予め記録された記録媒体から、前記ぶれ情報に対応する前記ノイズ周期情報を読み出して、前記ノイズの算出に用いる画像データ修復装置。
【請求項５】
請求項１〜４のいずれか１項記載の画像データ修復装置であって、
前記静止画像データ及び前記画像データ復元手段で復元された画像データは、それぞれ、前記一次元方向に並ぶ多数の画素データからなる画素データ列が前記一次元方向と直交する方向に多数配列された構成であり、
前記ノイズ算出手段が、
前記画像データ復元手段によって復元された画像データの各画素データ列の復元もととなった前記静止画像データの画素データ列の各画素データを、前記ノイズ周期情報にしたがったノイズ重畳周期毎にサンプリングする第１のサンプリング手段と、
前記復元もととなった前記静止画像データの画素データ列から復元された画素データ列の各画素データを、前記ノイズ周期情報にしたがったノイズ重畳周期毎に前記第１のサンプリング手段と同一数サンプリングする第２のサンプリング手段と、
前記第２のサンプリング手段によってサンプリングされた画素データの積算値から前記第１のサンプリング手段によってサンプリングされた画素データの積算値を減算した値を前記サンプリングした数で割って前記ノイズを算出する割り算手段とを含む画像データ修復装置。
【請求項６】
請求項１〜５のいずれか１項記載の画像データ修復装置であって、
前記ぶれ情報に基づいて、前記ぶれ行列を生成するぶれ行列生成手段と、
前記ぶれ行列生成手段によって生成されたぶれ行列から前記近似行列を生成する近似行列生成手段と、
前記近似行列生成手段で生成された近似行列の逆行列を求めて前記復元行列を生成する復元行列生成手段とを備える画像データ修復装置。
【請求項７】
請求項１〜５のいずれか１項記載の画像データ修復装置であって、
前記ぶれ情報に対応する前記復元行列が予め記録された記録媒体から、前記ぶれ情報に対応する前記復元行列を読み出す手段を備える画像データ修復装置。
【請求項８】
請求項１〜７のいずれか１項記載の画像データ修復装置と、
前記撮像素子と、
前記撮像素子の出力信号から前記静止画像データを生成する静止画像データ生成手段と、
前記撮像時における前記撮像素子の前記一次元方向へのぶれを検出して前記ぶれ情報を生成するぶれ情報生成手段とを備える撮像装置。
【請求項９】
被写体を撮像素子によって撮像して得られた静止画像データを、前記撮像時における前記撮像素子の一次元方向へのぶれに関するぶれ情報に基づいて修復する画像データ修復方法であって、
前記ぶれ情報に基づくぶれがない状態で前記被写体を撮像したときに得られる理想的な画像データを前記静止画像データから復元するための復元行列であって、前記ぶれ情報に基づくぶれによる前記理想的な画像データの前記一次元方向への広がりを表すぶれ行列の擬似逆行列である復元行列と、前記静止画像データとの掛け算により、前記理想的な画像データを復元する画像データ復元ステップと、
前記復元行列に起因して前記画像データ復元ステップによって復元された画像データに前記一次元方向に向かって周期的に重畳される複数種類のノイズを算出するノイズ算出ステップと、
前記ノイズ算出ステップで算出されたノイズを前記画像データ復元ステップによって復元された画像データから除去するノイズ除去ステップとを備え、
前記復元行列は、前記ぶれ行列を近似した近似行列であって、前記ぶれ情報に基づくぶれによって前記理想的な画像データの端部から前記一次元方向外側に広がる画素データの値に、所定の値が外挿されるように表された近似行列、の逆行列であり、
前記ノイズ算出ステップでは、前記復元行列と前記ぶれ行列との積によって求められた前記複数種類のノイズ毎のノイズ重畳周期に関するノイズ周期情報と、前記画像データ復元ステップによって復元された画像データと、前記静止画像データとに基づいて、前記複数種類のノイズを算出する画像データ修復方法。
【請求項１０】
請求項９記載の画像データ修復方法であって、
前記所定の値が、前記理想的な画像データの前記端部の画素データの値である画像データ修復方法。
【請求項１１】
請求項９又は１０記載の画像データ修復方法であって、
前記復元行列と前記ぶれ行列との積により前記ノイズ周期情報を生成するノイズ周期情報生成ステップを備える画像データ修復方法。
【請求項１２】
請求項９又は１０記載の画像データ修復方法であって、
前記ノイズ算出ステップでは、前記ぶれ情報に対応する前記ノイズ周期情報が予め記録された記録媒体から、前記ぶれ情報に対応する前記ノイズ周期情報を読み出して、前記ノイズの算出に用いる画像データ修復方法。
【請求項１３】
請求項９〜１２のいずれか１項記載の画像データ修復方法であって、
前記静止画像データ及び前記画像データ復元ステップで復元された画像データは、それぞれ、前記一次元方向に並ぶ多数の画素データからなる画素データ列が前記一次元方向と直交する方向に多数配列された構成であり、
前記ノイズ算出ステップが、
前記画像データ復元ステップによって復元された画像データの各画素データ列の復元もととなった前記静止画像データの画素データ列の各画素データを、前記ノイズ周期情報にしたがったノイズ重畳周期毎にサンプリングする第１のサンプリングステップと、
前記復元もととなった前記静止画像データの画素データ列から復元された画素データ列の各画素データを、前記ノイズ周期情報にしたがったノイズ重畳周期毎に前記第１のサンプリングステップと同一数サンプリングする第２のサンプリングステップと、
前記第２のサンプリングステップによってサンプリングされた画素データの積算値から前記第１のサンプリングステップによってサンプリングされた画素データの積算値を減算した値を前記サンプリングした数で割って前記ノイズを算出する割り算ステップとを含む画像データ修復方法。
【請求項１４】
請求項９〜１３のいずれか１項記載の画像データ修復方法であって、
前記ぶれ情報に基づいて、前記ぶれ行列を生成するぶれ行列生成ステップと、
前記ぶれ行列生成ステップによって生成されたぶれ行列から前記近似行列を生成する近似行列生成ステップと、
前記近似行列生成ステップで生成された近似行列の逆行列を求めて前記復元行列を生成する復元行列生成ステップとを備える画像データ修復方法。
【請求項１５】
請求項９〜１３のいずれか１項記載の画像データ修復方法であって、
前記ぶれ情報に対応する前記復元行列が予め記録された記録媒体から、前記ぶれ情報に対応する前記復元行列を読み出すステップを備える画像データ修復方法。
【請求項１６】
請求項９〜１５のいずれか１項記載の画像データ修復方法の各ステップをコンピュータに実行させるための画像データ修復プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体を撮像素子によって撮像して得られた静止画像データを修復する画像データ修復装置に関する。
【背景技術】
【０００２】
一般に、被写体像を光電変換し、コンピュータ等の演算装置を用いて画像処理を行なう装置がある。この画像処理装置を用いて、撮影時の手ぶれ等により生じた画像の劣化を修復する技術・装置に関して提案されている。このような画像修復処理では、画像の劣化につながる像のある１点のその周辺の像への滲みや広がりを広がり関数として数学的に扱い、演算処理を可能にしている。
【０００３】
例えば、特許文献１には、広がり関数の行列表現であるぶれ行列の擬似逆行列を、不足データを外挿することにより求め、この擬似逆行列とぶれのある画像データとの掛け算により、ぶれのない画像データを復元する方法が開示されている。
【０００４】
【特許文献１】特開平６−１１８４６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に開示された方法では、不足データを外挿しているため、復元される画像データにノイズがのってしまい、画質が劣化してしまう。特許文献１には、このノイズ対策については全く開示がなく、このままでは良好な修復画像が得られない。
【０００６】
本発明は、上記事情に鑑みてなされたものであり、ぶれの発生している画像データからぶれの発生していない画像データを、画質劣化を抑制しながら復元することが可能な画像データ修復装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題は以下の（１）〜（１６）によって解決される。
【０００８】
（１）被写体を撮像素子によって撮像して得られた静止画像データを、前記撮像時における前記撮像素子の一次元方向へのぶれに関するぶれ情報に基づいて修復する画像データ修復装置であって、前記ぶれ情報に基づくぶれがない状態で前記被写体を撮像したときに得られる理想的な画像データを前記静止画像データから復元するための復元行列であって、前記ぶれ情報に基づくぶれによる前記理想的な画像データの前記一次元方向への広がりを表すぶれ行列の擬似逆行列である復元行列と前記静止画像データとの掛け算により、前記理想的な画像データを復元する画像データ復元手段と、前記復元行列に起因して前記画像データ復元手段によって復元された画像データに前記一次元方向に向かって周期的に重畳される複数種類のノイズを算出するノイズ算出手段と、前記ノイズ算出手段で算出されたノイズを前記画像データ復元手段によって復元された画像データから除去するノイズ除去手段とを備え、前記復元行列は、前記ぶれ行列を近似した近似行列であって、前記ぶれ情報に基づくぶれによって前記理想的な画像データの端部から前記一次元方向外側に広がる画素データの値に、所定の値が外挿されるように表された近似行列、の逆行列であり、前記ノイズ算出手段は、前記復元行列と前記ぶれ行列との積によって求められた前記複数種類のノイズ毎のノイズ重畳周期に関するノイズ周期情報と、前記画像データ復元手段によって復元された画像データと、前記静止画像データとに基づいて、前記複数種類のノイズを算出する画像データ修復装置。
【０００９】
（２）（１）記載の画像データ修復装置であって、前記所定の値が、前記理想的な画像データの前記端部の画素データの値である画像データ修復装置。
【００１０】
（３）（１）又は（２）記載の画像データ修復装置であって、前記復元行列と前記ぶれ行列との積により前記ノイズ周期情報を生成するノイズ周期情報生成手段を備える画像データ修復装置。
【００１１】
（４）（１）又は（２）記載の画像データ修復装置であって、前記ノイズ算出手段が、前記ぶれ情報に対応する前記ノイズ周期情報が予め記録された記録媒体から、前記ぶれ情報に対応する前記ノイズ周期情報を読み出して、前記ノイズの算出に用いる画像データ修復装置。
【００１２】
（５）（１）〜（４）のいずれか１つ記載の画像データ修復装置であって、前記静止画像データ及び前記画像データ復元手段で復元された画像データは、それぞれ、前記一次元方向に並ぶ多数の画素データからなる画素データ列が前記一次元方向と直交する方向に多数配列された構成であり、前記ノイズ算出手段が、前記画像データ復元手段によって復元された画像データの各画素データ列の復元もととなった前記静止画像データの画素データ列の各画素データを、前記ノイズ周期情報にしたがったノイズ重畳周期毎にサンプリングする第１のサンプリング手段と、前記復元もととなった前記静止画像データの画素データ列から復元された画素データ列の各画素データを、前記ノイズ周期情報にしたがったノイズ重畳周期毎に前記第１のサンプリング手段と同一数サンプリングする第２のサンプリング手段と、前記第２のサンプリング手段によってサンプリングされた画素データの積算値から前記第１のサンプリング手段によってサンプリングされた画素データの積算値を減算した値を前記サンプリングした数で割って前記ノイズを算出する割り算手段とを含む画像データ修復装置。
【００１３】
（６）（１）〜（５）のいずれか１つ記載の画像データ修復装置であって、前記ぶれ情報に基づいて前記ぶれ行列を生成するぶれ行列生成手段と、前記ぶれ行列生成手段によって生成されたぶれ行列から前記近似行列を生成する近似行列生成手段と、前記近似行列生成手段で生成された近似行列の逆行列を求めて前記復元行列を生成する復元行列生成手段とを備える画像データ修復装置。
【００１４】
（７）（１）〜（５）のいずれか１つ記載の画像データ修復装置であって、前記ぶれ情報に対応する前記復元行列が予め記録された記録媒体から、前記ぶれ情報に対応する前記復元行列を読み出して設定する手段を備える画像データ修復装置。
【００１５】
（８）（１）〜（７）のいずれか１つ記載の画像データ修復装置と、前記撮像素子と、前記撮像素子の出力信号から前記静止画像データを生成する静止画像データ生成手段と、前記撮像時における前記撮像素子の前記一次元方向へのぶれを検出して前記ぶれ情報を生成するぶれ情報生成手段とを備える撮像装置。
【００１６】
（９）被写体を撮像素子によって撮像して得られた静止画像データを、前記撮像時における前記撮像素子の一次元方向へのぶれに関するぶれ情報に基づいて修復する画像データ修復方法であって、前記ぶれ情報に基づいて、前記ぶれ情報に基づくぶれがない状態で前記被写体を撮像したときに得られる理想的な画像データを前記静止画像データから復元するための復元行列であって、前記ぶれ情報に基づくぶれによる前記理想的な画像データの前記一次元方向への広がりを表すぶれ行列の擬似逆行列である復元行列と前記静止画像データとの掛け算により、前記理想的な画像データを復元する画像データ復元ステップと、前記復元行列に起因して前記画像データ復元ステップによって復元された画像データに前記一次元方向に向かって周期的に重畳される複数種類のノイズを算出するノイズ算出ステップと、前記ノイズ算出ステップで算出されたノイズを前記画像データ復元ステップによって復元された画像データから除去するノイズ除去ステップとを備え、前記復元行列は、前記ぶれ行列を近似した近似行列であって、前記ぶれ情報に基づくぶれによって前記理想的な画像データの端部から前記一次元方向外側に広がる画素データの値に、所定の値が外挿されるように表された近似行列、の逆行列であり、前記ノイズ算出ステップでは、前記復元行列と前記ぶれ行列との積によって求められた前記複数種類のノイズ毎のノイズ重畳周期に関するノイズ周期情報と、前記画像データ復元ステップによって復元された画像データと、前記静止画像データとに基づいて、前記複数種類のノイズを算出する画像データ修復方法。
【００１７】
（１０）（９）記載の画像データ修復方法であって、前記所定の値が、前記理想的な画像データの前記端部の画素データの値である画像データ修復方法。
【００１８】
（１１）（９）又は（１０）記載の画像データ修復方法であって、前記復元行列と前記ぶれ行列との積により前記ノイズ周期情報を生成するノイズ周期情報生成ステップを備える画像データ修復方法。
【００１９】
（１２）（９）又は（１０）記載の画像データ修復方法であって、前記ノイズ算出ステップでは、前記ぶれ情報に対応する前記ノイズ周期情報が予め記録された記録媒体から、前記ぶれ情報に対応する前記ノイズ周期情報を読み出して、前記ノイズの算出に用いる画像データ修復方法。
【００２０】
（１３）（９）〜（１２）のいずれか１つ記載の画像データ修復方法であって、前記静止画像データ及び前記画像データ復元ステップで復元された画像データは、それぞれ、前記一次元方向に並ぶ多数の画素データからなる画素データ列が前記一次元方向と直交する方向に多数配列された構成であり、前記ノイズ算出ステップが、前記画像データ復元ステップによって復元された画像データの各画素データ列の復元もととなった前記静止画像データの画素データ列の各画素データを、前記ノイズ周期情報にしたがったノイズ重畳周期毎にサンプリングする第１のサンプリングステップと、前記復元もととなった前記静止画像データの画素データ列から復元された画素データ列の各画素データを、前記ノイズ周期情報にしたがったノイズ重畳周期毎に前記第１のサンプリングステップと同一数サンプリングする第２のサンプリングステップと、前記第２のサンプリングステップによってサンプリングされた画素データの積算値から前記第１のサンプリングステップによってサンプリングされた画素データの積算値を減算した値を前記サンプリングした数で割って前記ノイズを算出する割り算ステップとを含む画像データ修復方法。
【００２１】
（１４）（９）〜（１３）のいずれか１つ記載の画像データ修復方法であって、前記ぶれ情報に基づいて前記ぶれ行列を生成するぶれ行列生成ステップと、前記ぶれ行列生成ステップによって生成されたぶれ行列から前記近似行列を生成する近似行列生成ステップと、前記近似行列生成ステップで生成された近似行列の逆行列を求めて前記復元行列を生成する復元行列生成ステップとを備える画像データ修復方法。
【００２２】
（１５）（９）〜（１３）のいずれか１つ記載の画像データ修復方法であって、前記ぶれ情報に対応する前記復元行列が予め記録された記録媒体から、前記ぶれ情報に対応する前記復元行列を読み出すステップを備える画像データ修復方法。
【００２３】
（１６）（９）〜（１５）のいずれか１つ記載の画像データ修復方法の各ステップをコンピュータに実行させるための画像データ修復プログラム。
【発明の効果】
【００２４】
本発明によれば、ぶれの発生している画像データからぶれの発生していない画像データを、画質劣化を抑制しながら復元することが可能な画像データ修復装置を提供することができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施形態について図面を参照して説明する。
【００２６】
図１は、本発明の実施形態を説明するための撮像装置の一例である手ぶれ補正機能を有するデジタルカメラの概略構成を示す図である。
図１に示すデジタルカメラ１００は、撮像部１、アナログ信号処理部２、Ａ／Ｄ変換部３、駆動部４、ぶれ検出部５、デジタル信号処理部６、圧縮／伸張処理部７、システム制御部９、内部メモリ１０、メディアインタフェース（Ｉ／Ｆ）１１、記録メディア１２、操作部１３、画像データ修復部６０、及びシステムバス１４を有する。
【００２７】
システムバス１４には、画像データ修復部６０、デジタル信号処理部６、圧縮／伸張処理部７、システム制御部９、内部メモリ１０およびメディアインタフェース１１が接続されている。
【００２８】
撮像部１は、撮影レンズ１ａを含む光学系と、この光学系を通して被写体からの光を受光するＣＣＤ型やＣＭＯＳ型のイメージ（エリア）センサ等の撮像素子１ｂとを含み、被写体を撮影し、その撮像信号（アナログ信号）を出力する。
【００２９】
アナログ信号処理部２は、撮像部１からの撮像信号に対し、所定のアナログ信号処理を施す。Ａ／Ｄ変換部３は、アナログ信号処理部２で信号処理されたアナログ信号をデジタル信号に変換する。
【００３０】
駆動部４は、デジタルカメラ１００が撮影モードに設定されると、システム制御部９から供給される駆動パルスに従って、撮像素子１ｂ、アナログ信号処理部２、Ａ／Ｄ変換部３を駆動する。ここで、撮影モードとは、被写体を撮影し、撮影して得られた撮像信号から生成した画像データを記録可能なモードである。
【００３１】
デジタル信号処理部６は、Ａ／Ｄ変換部３からのデジタル信号に対し、操作部１３で設定された動作モードに応じたデジタル信号処理を行い、撮影画像データを生成する。デジタル信号処理部６におけるデジタル信号処理には、黒レベル補正処理（ＯＢ処理）、リニアマトリクス補正処理、ホワイトバランス調整処理、ガンマ補正処理、同時化処理等が含まれる。このデジタル信号処理部６は、例えばＤＳＰで構成される。デジタル信号処理部６で生成された撮影画像データは、内部メモリ１０に一時記憶される。
【００３２】
圧縮／伸張処理部７は、デジタル信号処理部６で生成された撮影画像データに対して圧縮処理を施すとともに、記録メディア１２から得られた圧縮画像データに対して伸張処理を施す。
【００３３】
内部メモリ１０は、例えばＤＲＡＭからなり、デジタル信号処理部６やシステム制御部９や画像データ修復部６０のワークメモリとして利用される他、記録メディア１２に記録される撮影画像データを一時的に記憶するバッファメモリとして利用される。
【００３４】
メディアインタフェース１１は、メモリカード等の記録メディア１２との間でデータの入出力を行う。操作部１３は、デジタルカメラに対して各種操作を行うものであり、撮影を指示するためのレリーズボタン（図示せず）を含む。
【００３５】
ぶれ検出部５は、システム制御部９からの指示に従って、撮像素子１ｂの撮像（露光）中におけるデジタルカメラ１００のぶれ（撮像素子１ｂのぶれと同義）を検出し、検出したぶれに関するぶれ情報を生成し、ぶれ情報をシステム制御部９に出力する。このぶれ情報は、このぶれ情報を生成した撮像時に得られた撮影画像データと共に、システム制御部９により内部メモリ１０に記録される。ぶれを検出する方法としては、ジャイロスコープや圧電素子等のセンサによってぶれを検出する方法や、露光によって得られた画像データから画像処理によって導出する方法がある。画像処理により導出する方法としては、輪郭のぶれ方向から導出する方法や、ある特定のマークを被写体の一部に入れて撮影してそのマークのぶれから導出する方法等がある。これら、ぶれを検出する方法についてはいずれも公知であるため、説明を省略する。
【００３６】
ぶれ検出部５で生成されるぶれ情報は、例えば、ぶれの方向と、画素数（撮像素子１ｂの光電変換素子の個数と対応）で表されるぶれの大きさと、ぶれの速度とを含む。
【００３７】
システム制御部９は、撮影動作を含むデジタルカメラ１００全体の統括制御を行う。
【００３８】
画像データ修復部６０は、デジタル信号処理部６で生成された静止画撮影時に得られた撮影画像データ（以下、静止画像データという）と、その静止画像データを得るための撮像時にぶれ検出部５で検出して生成されたぶれ情報とに基づいて、当該静止画像データを修復して、ぶれのない状態で撮像して得られた静止画像データを復元する。
【００３９】
ここで、ぶれの発生している静止画像データを修復する方法について説明する。
撮像素子１ｂが全くぶれない状態で被写体を撮像したときにデジタル信号処理部６で生成されるぶれのない理想的な静止画像データＯの模式図を図２（ａ）に示す。静止画像データＯは、垂直方向Ｙに順番に配列された画素データＯ１〜Ｏ１０の１０個の画素データからなる画素データ列が、垂直方向Ｙに直交する水平方向Ｘに多数配列されたもの、又は、水平方向Ｘに配列された多数の画素データからなる画素データ行が、垂直方向Ｙに１０個配列されたものとなっている。
【００４０】
又、図２（ａ）には、撮像中に撮像素子１ｂがＹ方向に向かって２つの光電変換素子分ぶれたときに、撮像素子１ｂの撮影範囲内に新たに入る被写体から得られる２画素データ行分の画素データを画素データＯ１１，Ｏ１２として図示してある。画素データＯ１１，Ｏ１２は、撮像素子１ｂのぶれによって理想的な静止画像データＯの端部（画素データＯ１０）よりもＹ方向外側に広がった画素データを示す。図２（ａ）に示した各画素データ列とそれのＹ方向外側に続く画素データＯ１１と画素データＯ１２と併せた行列表現は、以下の数１に示すような列ベクトル［Ｏ］として表現することができる。
【００４１】
【数１】
2008061100.tif 000003
【００４２】
一方、撮像素子１ｂが、静止画像データＯを得るための撮像を行っている状態に対してぶれた状態で被写体を撮像したときにデジタル信号処理部６で生成された静止画像データＳの模式図を図２（ｂ）に示す。静止画像データＳは、垂直方向Ｙに順番に配列された画素データＳ１〜Ｓ１０の１０個の画素データからなる画素データ列が、垂直方向Ｙに直交する水平方向Ｘに多数配列されたもの、又は、水平方向Ｘに配列された多数の画素データからなる画素データ行が、垂直方向Ｙに１０個配列されたものとなっている。静止画像データＳの各画素データ列は、以下の数２に示すような列ベクトル［Ｓ］として表現することができる。
【００４３】
【数２】
2008061100.tif 000004
【００４４】
ここで、静止画像データＳを得るための撮像時において、撮像素子１ｂが、Ｙ方向に向かって２つの光電変換素子分ぶれたものとする。このぶれによる静止画像データＯのＹ方向の広がりを表すｚ領域で表される点広がり関数（以下、ぶれ伝達関数という）の行列表現であるぶれ行列をＨとすると、以下の数３の関係が成立する。
【００４５】
【数３】
2008061100.tif 000005
【００４６】
最終的に求めたいのは、ぶれのない理想的な静止画像データＯであるため、この静止画像データＯを復元するには、以下の数４で示される演算が必要となる。数４において、Ｗはぶれ行列Ｈの逆行列である。
【００４７】
【数４】
2008061100.tif 000006
【００４８】
数３を見て分かるように、［Ｓ］のデータ数と［Ｏ］のデータ数は異なるため、ぶれ行列Ｈは、１０行×１２列の行列となり、正則になっていない。このため、ぶれ行列Ｈの逆行列を求めることはできない。そこで、ぶれ行列Ｈの擬似逆行列を求め、これをＷとすることで、［Ｏ］の値を求めることができる。このような処理を行って、静止画像データＯの各画素データ列のデータを復元することで、ぶれのない静止画像データを得ることができる。このようにして復元された静止画像データＯを以下では復元画像データＯともいう。以下では、上記Ｗのことを、静止画像データＯを復元するための行列であることから、復元行列という。
【００４９】
本実施形態のデジタルカメラに搭載される画像データ修復部６０は、上記復元行列Ｗを用いて復元画像データＯを生成したことによって、復元画像データＯに重畳されるノイズを効果的に除去する機能を有する。
【００５０】
以下では、デジタル信号処理部６で生成される静止画像データを、図２（ｂ）に示したものとし、画像データ修復部６０で復元される静止画像データを、図２（ａ）に示したものとして説明する。
【００５１】
図３は、図１に示す画像データ修復部６０の内部構成を示すブロック図である。
画像データ修復部６０は、内部メモリ１０からぶれ情報（以下、Ａとする）を取得するぶれ情報取得部６２と、ぶれ情報Ａに基づいて復元行列Ｗを設定する復元行列設定部６３と、復元行列設定部６３で設定された復元行列Ｗと内部メモリ１０に記録されているぶれ情報Ａに対応する静止画像データＳとの掛け算により、理想的な静止画像データＯを復元する画像データ復元部６４と、復元行列設定部６３で設定された復元行列Ｗに起因して画像データ復元部６４によって復元された復元画像データＯの各画素データ列にＹ方向に向かって周期的に重畳されるノイズの種類及び重畳周期に関するノイズ周期情報を生成するノイズ周期情報生成部６７と、該ノイズを算出するノイズ算出部６５と、該算出されたノイズを画像データ復元部６４によって復元された復元画像データＯから除去するノイズ除去部６６とを備える。
【００５２】
復元行列設定部６３は、ぶれ情報Ａに基づいてぶれ行列Ｈを生成するぶれ行列生成部６３ａと、ぶれ行列生成部６３ａによって生成されたぶれ行列Ｈから近似行列Ｆを生成する近似行列生成部６３ｂと、近似行列生成部６３ｂで生成された近似行列Ｆの逆行列を求めて復元行列Ｗを生成する復元行列生成部６３ｃとを備え、復元行列生成部６３ｃで生成された復元行列Ｗを設定する。
【００５３】
画像データ復元部６４は、復元行列設定部６３で設定された復元行列Ｗと、内部メモリ１０に記録されている静止画像データＳの各画素データ列［Ｓ］との掛け算を行って、多数の画素データ列からなる静止画像データＯを復元する。
【００５４】
ぶれ行列生成部６３ａは、ぶれ情報Ａに基づくぶれの方向、大きさ、及び速度から、ｚ領域で表されるぶれ伝達関数を生成し、このぶれ伝達関数を行列に変換してぶれ行列Ｈを生成する。例えば、ぶれの方向がＹ方向であり、大きさが２光電変換素子分であり、速度が等速であった場合、ぶれ伝達関数Ｈ（ｚ）は｛（１＋Ｚ−１＋Ｚ−２）／３｝で表され、その行列表現は図４（ａ）に示したものとなる。
【００５５】
近似行列生成部６３ｂは、ぶれ行列Ｈを正則にするために、ぶれ情報Ａに基づくぶれによる理想的な静止画像データＯの広がりによって、理想的な静止画像データＯの端部よりもＹ方向外側に存在する画素データ（図２（ａ）の画素データＯ１１，Ｏ１２）の値に、画素データＯ１０と同じ値が外挿されるように表された近似行列Ｆを生成する。ぶれ行列Ｈが図４（ａ）のような形だった場合、近似行列生成部６３ｂは、ぶれ行列Ｈの一番右から２列を削除し、削除後の行列の一番右の列の一番下の行とその上の行の値にそれぞれ“１”と“２”をプラスした図４（ｂ）に示すような近似行列Ｆを生成する。
【００５６】
近似行列Ｆが図４（ｂ）に示すような形だった場合、復元行列生成部６３ｃで生成される復元行列Ｗは図４（ｃ）に示したものとなる。
【００５７】
このように、復元行列Ｗは、ぶれ情報が決まれば一意に決まるものであるため、想定される様々なぶれ情報に対応する復元行列Ｗを別のコンピュータ等で求め、この復元行列Ｗをデジタルカメラ内部のＲＯＭ等に予め記録しておき、撮影が行われた際に、復元行列設定部６３が、ぶれ情報に対応する復元行列ＷをこのＲＯＭから読み出し、読み出した復元行列Ｗを設定するようにしても良い。
【００５８】
図４（ａ）に示すぶれ行列Ｈと、図４（ｃ）に示す復元行列Ｗとの積Ｗ＊Ｈが図４（ｄ）に示す行列となる。復元行列Ｗは、ぶれ行列Ｈの逆行列として求められているため、図４（ｄ）に示す行列の右から３列のデータのうち、右から３番目の列の一番下の行のデータは１となり、それ以外のデータは０となるのが理想である。しかし、復元行列Ｗはぶれ行列Ｈの擬似逆行列であるため、Ｗ＊Ｈの値は理想的なものとはならない。そこで、Ｗ＊Ｈの理想的な値と、Ｗ＊Ｈの実際の値とを比較することで、復元行列Ｗを用いた復元により得られた復元画像データＯに重畳されるノイズを検出することができる。
【００５９】
図４（ｄ）に示すＷ＊Ｈの行列は、１行目と４行目と７行目に同一のノイズ（１）が加わっており、２行目と５行目と８行目に同一のノイズ（２）が加わっており、３行目と６行目と９行目に同一のノイズ（３）が加わっており、１０行目のデータが不正確となっていることが分かる。このことから、復元行列Ｗを用いて復元された復元画像データＯは、ｎを１〜３としたとき、｛３（ｎ−１）＋１｝行周期でノイズ（１）が加わっており、｛３（ｎ−１）＋２｝行周期でノイズ（２）が加わっており、｛３（ｎ−１）＋３｝行周期でノイズ（３）が加わっており、１０行目のデータが不正確となっていることを検出することができる。
【００６０】
このことを利用して、ノイズ周期情報生成部６７は、ぶれ行列生成部６３ａで生成されたぶれ行列Ｈと、復元行列生成部６３ｃで生成された復元行列Ｗとの積を求め、この積で得られる行列から、上述したようなノイズの種類（（１）〜（３））と、そのノイズの重畳周期とを検出し、ノイズ種類毎のノイズ重畳周期を示すノイズ周期情報を生成する。
【００６１】
ノイズ種類毎のノイズ重畳周期が分かれば、ノイズ種類毎のノイズ値を推測することが可能である。例えば、図４（ｄ）に示す行列からノイズ重畳周期を検出した場合を例にすると、復元画像データＯの１つの画素データ列（以下、Ｂとする）に対し、｛３（ｎ−１）＋１｝行毎に画素データのサンプリングを行ったときに得られる画素データの総和Σ１は、以下の式１となる。
Σ１＝画素データＯ１＋画素データＯ４＋画素データＯ７＋（３×ノイズ（１））・・・式１
【００６２】
ここで、「画素データＯ１＋画素データＯ４＋画素データＯ７」の値は、「画素データＳ１＋画素データＳ４＋画素データＳ７」とそれほど変わらないため、この値で近似することができる。つまり、式１は、式２のように近似することができる。
Σ１＝画素データＳ１＋画素データＳ４＋画素データＳ７＋（３×ノイズ（１））・・・式２
【００６３】
Σ１と画素データＳ１，Ｓ４，Ｓ７は既知であるため、この式２を変形した以下の式３により、ノイズ（１）の値を求めることができる。
ノイズ（１）＝｛Σ１−（画素データＳ１＋画素データＳ４＋画素データＳ７）｝／３・・・式３
【００６４】
同様に、画素データ列Ｂに対し、｛３（ｎ−１）＋２｝行毎に画素データのサンプリングを行ったときに得られる画素データの総和Σ２は、以下の式４となる。
Σ２＝画素データＯ２＋画素データＯ５＋画素データＯ８＋（３×ノイズ（２））・・・式４
【００６５】
式４は、以下の式５のように近似することができる。
Σ２＝画素データＳ２＋画素データＳ５＋画素データＳ８＋（３×ノイズ（２））・・・式５
【００６６】
式５を変形した以下の式６により、ノイズ（２）の値を求めることができる。
ノイズ（２）＝｛Σ２−（画素データＳ２＋画素データＳ５＋画素データＳ８）｝／３・・・式６
【００６７】
同様に、画素データ列Ｂに対し、｛３（ｎ−１）＋３｝行毎に画素データのサンプリングを行ったときに得られる画素データの総和Σ３は、以下の式７となる。
Σ３＝画素データＯ３＋画素データＯ６＋画素データＯ９＋（３×ノイズ（３））・・・式７
【００６８】
式７は、以下の式８のように近似することができる。
Σ３＝画素データＳ３＋画素データＳ６＋画素データＳ９＋（３×ノイズ（３））・・・式８
【００６９】
この式８を変形した以下の式９により、ノイズ（３）の値を求めることができる。
ノイズ（３）＝｛Σ３−（画素データＳ３＋画素データＳ６＋画素データＳ９）｝／３・・・式９
【００７０】
このような処理により、復元画像データＯを構成する各画素データ列毎に、そこに重畳されるノイズを算出することができる。
【００７１】
ノイズ算出部６５は、このような処理を行うために、静止画像データサンプリング部６５ａと、復元画像データサンプリング部６５ｂと、割り算部６５ｃとを備える。
【００７２】
静止画像データサンプリング部６５ａは、内部メモリ１０に記録されている静止画像データＳの各画素データ列［Ｓ］を、ノイズ周期情報に含まれる各ノイズ種類毎のノイズ重畳周期でサンプリングする。
【００７３】
復元画像データサンプリング部６５ｂは、画像データ復元部６４で生成された復元画像データＯの各画素データ列［Ｏ］を、ノイズ周期情報に含まれる各ノイズ種類毎のノイズ重畳周期でサンプリングする。
【００７４】
割り算部６５ｃは、各ノイズ重畳周期で復元画像データサンプリング部６５ｂによりサンプリングされた画素データの総和（例えば、上記Σ１）から、該ノイズ重畳周期で静止画像データサンプリング部６５ａによりサンプリングされた画素データの総和（例えば、上記「画素データＳ１＋画素データＳ４＋画素データＳ７」）を減算し、減算して得られる値を、該ノイズ重畳周期でサンプリングしたサンプリング数（例えば３）で割って、復元画像データＯの各画素データ列［Ｏ］に重畳される各ノイズ種類のノイズ値を算出する。
【００７５】
尚、ノイズ算出部６５で使用するノイズ周期情報も、ぶれ情報が決まれば一意に決まるものであるため、想定される様々なぶれ情報に対応するノイズ周期情報を別のコンピュータ等で求め、このノイズ周期情報をデジタルカメラ内部のＲＯＭ等に予め記録しておき、撮影が行われた際に、ノイズ算出部６５が、ぶれ情報に対応するノイズ周期情報をこのＲＯＭから読み出し、読み出したノイズ周期情報を静止画像データサンプリング部６５ａ，復元画像データサンプリング部６５ｂに供給するようにしても良い。
【００７６】
ノイズ除去部６６は、割り算部６５ｃから出力されたノイズを復元画像データＯから除去し、除去後の復元画像データを例えば内部メモリ１０に記録する。記録された復元画像データは、圧縮／伸張処理部で圧縮処理が施された後、記録メディア１２に記録される。
【００７７】
例えば、図４（ｄ）に示す行列からノイズ重畳周期を検出した場合を例にすると、ノイズ除去部６６は、復元画像データＯの各画素データ列［Ｏ］の｛３（ｎ−１）＋１｝行目の画素データから、その画素データ列［Ｏ］について算出されたノイズ（１）を除去し、復元画像データＯの各画素データ列［Ｏ］の｛３（ｎ−１）＋２｝行目の画素データから、その画素データ列［Ｏ］について算出されたノイズ（２）を除去し、復元画像データＯの各画素データ列［Ｏ］の｛３（ｎ−１）＋３｝行目の画素データから、その画素データ列［Ｏ］について算出されたノイズ（３）を除去する。
【００７８】
以上の説明では、撮像素子１ｂが等速でぶれた場合を例にしたが、撮像素子１ｂが非等速でぶれた場合でも、同様にノイズを除去することが可能である。例えば、ぶれ情報Ａに基づくぶれの方向がＹ方向であり、大きさが２光電変換素子分であり、速度が非等速であった場合、ぶれ伝達関数Ｈ（ｚ）は｛（１＋Ｚ−２）／２｝で表され、その行列表現は図５（ａ）に示したものとなり、近似行列Ｆは図５（ｂ）に示したものとなり、復元行列Ｗは図５（ｃ）に示したものとなり、復元行列Ｗと復元行列Ｈの積は図５（ｄ）に示したものとなる。
【００７９】
図５（ｄ）に示すＷ＊Ｈの行列は、１行目と５行目と９行目に同一のノイズ（１）が加わっており、２行目と６行目に同一のノイズ（２）が加わっており、３行目と７行目に同一のノイズ（３）が加わっており、４行目と８行目に同一のノイズ（４）が加わっており、１０行目のデータが不正確となっていることが分かる。このことから、復元行列Ｗを用いて復元された復元画像データＯは、｛４（ｎ−１）＋１｝行周期（ｎ＝１〜３）でノイズ（１）が加わっており、｛４（ｎ−１）＋２｝行周期（ｎ＝１，２）でノイズ（２）が加わっており、｛４（ｎ−１）＋３｝行周期（ｎ＝１，２）でノイズ（３）が加わっており、｛４（ｎ−１）＋４｝行周期（ｎ＝１，２）でノイズ（４）が加わっており、１０行目のデータが不正確となっていることを検出することができる。
【００８０】
又、以上の説明では、近似行列Ｆを求める際に外挿するデータを、画素データＯ１０と同じ値としているが、特許文献１に開示されているような一階の階差式や二階の階差式で求めた値を外挿しても構わない。
【００８１】
例えば、ぶれ行列Ｈが図４（ａ）に示すものとすると、一階の階差式で外挿を行った場合の近似行列Ｆは図６（ａ）に示すようになり、近似行列Ｆの逆行列である復元行列Ｗは図６（ｂ）に示すようになり、ぶれ行列Ｈと復元行列Ｗとの積は図６（ｃ）に示すようになる。又、二階の階差式で外挿を行った場合の近似行列Ｆは図７（ａ）に示すようになり、近似行列Ｆの逆行列である復元行列Ｗは図７（ｂ）に示すようになり、ぶれ行列Ｈと復元行列Ｗとの積は図７（ｃ）に示すようになる。
【００８２】
図６（ｃ），図７（ｃ）の各々に示すＷ＊Ｈの行列は、１行目と４行目と７行目に同一のノイズ（１）が加わっており、２行目と５行目と８行目に同一のノイズ（２）が加わっており、３行目と６行目に同一のノイズ（３）が加わっており、９，１０行目のデータが不正確となっていることが分かる。このことから、図６（ｃ），図７（ｃ）の各々の復元行列Ｗを用いて復元された復元画像データＯは、｛３（ｎ−１）＋１｝行周期（ｎ＝１〜３）でノイズ（１）が加わっており、｛３（ｎ−１）＋２｝行周期（ｎ＝１〜３）でノイズ（２）が加わっており、｛３（ｎ−１）＋３｝行周期（ｎ＝１，２）でノイズ（３）が加わっており、９，１０行目のデータが不正確となっていることを検出することができる。
【００８３】
図６，図７から分かるように、一階の階差式や二階の階差式で外挿を行った場合は、外挿するデータを画素データＯ１０と同じ値にする場合に比べ、不正確なデータが１行分増えている。このため、復元画像データOの復元精度を向上させるためには、外挿するデータを画素データＯ１０と同じ値にすることが好ましい。
【００８４】
次に、画像データ修復部６０の動作について説明する。
図８は、画像データ修復部６０の動作を説明するためのフローチャートである。
まず、撮像素子１ｂにより撮像が行われると、その撮像中の撮像素子１ｂのぶれに関するぶれ情報が生成され、このぶれ情報が、その撮像により得られる静止画像データＳと対応付けて内部メモリ１０に記録される。
【００８５】
内部メモリ１０に静止画像データＳとぶれ情報が記録された後、画像データ修復部６０は、内部メモリ１０からぶれ情報を取得する（ステップＳ１）。次に、画像データ修復部６０は、このぶれ情報にしたがってぶれ行列Ｈを生成し（ステップＳ２）、このぶれ行列Ｈから近似行列Ｆを生成し（ステップＳ３）、この近似行列Ｆから復元行列Ｗを生成し（ステップＳ４）、この復元行列Ｗを設定する（ステップＳ５）。
【００８６】
次に、画像データ修復部６０は、設定した復元行列Ｗと内部メモリ１０に記録されている静止画像データＳとの積により静止画像データＯを復元する（ステップＳ６）。次に、ステップＳ２で生成したぶれ行列ＨとステップＳ４で生成された復元行列Ｗとの積からノイズ周期情報を生成する（ステップＳ７）。
【００８７】
次に、画像データ修復部６０は、内部メモリ１０に記録されている静止画像データＳをノイズ周期情報にしたがってサンプリングし（ステップＳ８）、ステップＳ６で復元された復元画像データＯをノイズ周期情報にしたがってサンプリングし（ステップＳ９）、ステップＳ７，Ｓ８でサンプリングしたデータを基に、復元画像データＯに重畳されているノイズを算出する（ステップＳ１０）。次に、画像データ修復部６０は、ステップＳ６で復元した復元画像データＯからステップＳ１０で算出したノイズを除去し（ステップＳ１１）、除去後の復元画像データＯを外部に出力して、画像データ修復処理を終了する。
【００８８】
以上のように、本実施形態の画像データ修復部６０によれば、ぶれ行列Ｈの擬似逆行列Ｗを用いて静止画像データＯを復元した場合に、復元された静止画像データＯに重畳されているノイズを効果的に除去することができる。このため、画質劣化を抑制しながら、ぶれの発生してない静止画像データＯを復元することができ、信頼性の高い手ぶれ補正機能を備えたデジタルカメラを提供することが可能となる。
【００８９】
尚、上述した実施形態の画像データ修復部６０は、コンピュータを画像データ修復部６０内の各部として機能させるための画像データ修復プログラム、又は、図８に示した画像データ修復部６０の各処理ステップをコンピュータに実行させるための画像データ修復プログラムを、デジタルカメラに搭載されている演算処理装置等のコンピュータ（例えば、デジタル信号処理部６やシステム制御部９）が実行することでも実現できる。又、デジタルカメラ等から得られた静止画像データＳとそれに対応するぶれ情報を、そのままパーソナルコンピュータの内部メモリに取り込み、上記の画像データ修復プログラムをこのコンピュータが実行することで、このコンピュータを画像データ修復部６０として機能させることも可能である。
【００９０】
デジタルカメラとは別のコンピュータによって画像データ修復プログラムを実行する場合、このコンピュータはメモリを多く搭載することができるため、上述したように、復元行列Ｗやノイズ周期情報を、様々なぶれ情報毎にメモリに記録しておき、画像データ修復処理実行時に、このメモリから復元行列Ｗやノイズ周期情報を読み出して使用するようにすることが好ましい。このようにすれば、画像データ修復処理を高速に行うことができる。
【図面の簡単な説明】
【００９１】
【図１】本発明の実施形態を説明するための手ぶれ補正機能を有するデジタルカメラの概略構成を示す図
【図２】ぶれの発生している静止画像データを修復する方法を説明するための図
【図３】図１に示す画像データ修復部の内部構成を示すブロック図
【図４】（ａ）は撮像素子が一次元方向に等速でぶれたときのぶれ行列の一例を示す図、（ｂ）は（ａ）のぶれ行列を近似した近似行列を示す図、（ｃ）は（ｂ）の近似行列の逆行列である復元行列を示す図、（ｄ）は（ａ）のぶれ行列と（ｃ）の復元行列との積で得られる行列を示す図
【図５】（ａ）は撮像素子が一次元方向に等速でぶれたときのぶれ行列の一例を示す図、（ｂ）は（ａ）のぶれ行列を近似した近似行列を示す図、（ｃ）は（ｂ）の近似行列の逆行列である復元行列を示す図、（ｄ）は（ａ）のぶれ行列と（ｃ）の復元行列との積で得られる行列を示す図
【図６】（ａ）は撮像素子が一次元方向に等速でぶれたときのぶれ行列の一例を示す図、（ｂ）は（ａ）のぶれ行列を近似した近似行列を示す図、（ｃ）は（ｂ）の近似行列の逆行列である復元行列を示す図、（ｄ）は（ａ）のぶれ行列と（ｃ）の復元行列との積で得られる行列を示す図
【図７】（ａ）は撮像素子が一次元方向に等速でぶれたときのぶれ行列の一例を示す図、（ｂ）は（ａ）のぶれ行列を近似した近似行列を示す図、（ｃ）は（ｂ）の近似行列の逆行列である復元行列を示す図、（ｄ）は（ａ）のぶれ行列と（ｃ）の復元行列との積で得られる行列を示す図
【図８】図１に示す画像データ修復部の動作を説明するためのフローチャート
【符号の説明】
【００９２】
１  撮像部
２  アナログ信号処理部
３  Ａ／Ｄ変換部
４  駆動部
５  ぶれ検出部
６  デジタル信号処理部
７  圧縮／伸張処理部
９  システム制御部
１０  内部メモリ
１１  メディアインタフェース
１２  記録メディア
１３  操作部
１４  システムバス
６０  画像データ修復部
【図１】
2008061100.tif 000007
【図２】
2008061100.tif 000008
【図３】
2008061100.tif 000009
【図４】
2008061100.tif 000010
【図５】
2008061100.tif 000011
【図６】
2008061100.tif 000012
【図７】
2008061100.tif 000013
【図８】
2008061100.tif 000014