(57)【要約】【課題】複数のフレーム間で生ずる像振れだけでなく、１フレーム内で生ずる像流れぼけをも低減する。【解決手段】画像処理装置１０９は、撮像装置による撮像によって生成された動画像における連続する複数のフレーム間での撮像装置の動きに伴う像振れを低減する第１の処理を行う第１の処理手段１０９４と、該動画像におけるフレームごとの撮像装置の動きに伴う像流れぼけを低減する第２の処理を行う第２の処理手段１０９２，１０９３と、撮像装置の動きの情報を取得する動き情報取得手段１０９１とを有する。第１の処理を行う場合に、第２の処理手段は、動きの情報と、撮像時のフレームレートおよび焦点距離とから、フレームごとに像流れぼけの有無を判定し、像流れぼけが無しと判定したフレームには第２の処理を行わず、像流れぼけが有りと判定したフレームには第２の処理を行う。【選択図】図１
2012085205.tif 000002
【特許請求の範囲】
【請求項１】
撮像装置による撮像によって生成された動画像における連続する複数のフレーム間での前記撮像装置の動きに伴う像振れを低減する第１の処理を行う第１の処理手段と、
前記動画像におけるフレームごとの前記撮像装置の動きに伴う像流れぼけを低減する第２の処理を行う第２の処理手段と、
前記撮像装置の動きの情報を取得する動き情報取得手段とを有し、
前記第１の処理手段が前記第１の処理を行う場合に、前記第２の処理手段は、
前記動き情報取得手段により取得された前記動きの情報と、前記撮像装置の撮像時におけるフレームレートおよび焦点距離とから、前記フレームごとに前記像流れぼけの有無を判定し、
前記像流れぼけが無しと判定した前記フレームに対しては前記第２の処理を行わず、前記像流れぼけが有りと判定した前記フレームに対しては前記第２の処理を行うことを特徴とする画像処理装置。
【請求項２】
前記第２の処理が行われた前記動画像から前記動きの情報を取得し、該動きの情報を用いて前記第１の処理を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第２の処理手段は、前記像流れぼけが有りと判定したフレームの前および後の少なくとも一方に生成された、前記像流れぼけが無しと判定した複数のフレームを用いて前記第２の処理を行うことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
撮像により動画像を生成する撮像系と、請求項１から３のいずれか一項に記載の画像処理装置とを有することを特徴とする撮像装置。
【請求項５】
撮像装置による撮像によって生成された動画像における連続する複数のフレーム間での前記撮像装置の動きに伴う像振れを低減する第１の処理を行う第１の処理ステップと、
前記動画像におけるフレームごとの前記撮像装置の動きに伴う像流れぼけを低減する第２の処理を行う第２の処理ステップと、
前記撮像装置の動きの情報を取得する動き情報取得ステップとを有し、
前記第１の処理ステップにおいて前記第１の処理を行う場合に、前記第２の処理ステップにおいて、
前記動き情報取得ステップにより取得された前記動きの情報と、前記撮像装置の撮像時におけるフレームレートおよび焦点距離とから、前記フレームごとに前記像流れぼけの有無を判定し、
前記像流れぼけが無しと判定した前記フレームに対しては前記第２の処理を行わず、前記像流れぼけが有りと判定した前記フレームに対しては前記第２の処理を行うことを特徴とする画像処理方法。
【請求項６】
コンピュータに、
撮像装置による撮像によって生成された動画像における連続する複数のフレーム間での前記撮像装置の動きに伴う像振れを低減する第１の処理を行う第１の処理ステップと、
前記動画像におけるフレームごとの前記撮像装置の動きに伴う像流れぼけを低減する第２の処理を行う第２の処理ステップと、
前記撮像装置の動きの情報を取得する動き情報取得ステップとを含む処理を実行させる画像処理プログラムであって、
前記第１の処理ステップにおいて前記第１の処理を前記コンピュータに行わせる場合に、前記第２の処理ステップにおいて、前記コンピュータに、
前記動き情報取得ステップにより取得された前記動きの情報と、前記撮像装置の撮像時におけるフレームレートおよび焦点距離とから、前記フレームごとに前記像流れぼけの有無を判定させ、
前記像流れぼけが無しと判定された前記フレームに対しては前記第２の処理を行わせず、前記像流れぼけが有りと判定された前記フレームに対しては前記第２の処理を行わせることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置により取得された動画像（映像）の像振れと像流れぼけを低減する画像処理装置に関する。
【背景技術】
【０００２】
撮像装置には、いわゆる手振れのような小さな動きに起因する映像中の像振れを低減するための光学的又は電子的な像振れ低減処理を行うものが多い。また、例えば撮像装置を持ったユーザが歩きながら撮影を行うような場合に発生する手振れよりも大きな動きに起因する像振れを低減するために、特許文献１には、映像中の複数のフレーム間での画像変化量を検出してこれを補正する像振れ低減処理が開示されている。
【０００３】
ただし、歩きながら撮像を行う場合に撮像装置に加わる動きには、ユーザが足を地面に着いたときの衝撃等に伴う急激な動きがあり、この急激な動きに起因して１フレーム内で像流れによるぼけ（以下、像流れぼけという）が発生する。このような像流れぼけを含む映像に対して特許文献１にて開示された像振れ低減処理を適用すると、大きな像振れが低減されるために像流れぼけが目立つようになる。このため、一連の映像において、ユーザの歩行に伴って像流れぼけがある周期で現れる等、見苦しい映像が生成されてしまう可能性がある。
【０００４】
像流れぼけが少ない映像を生成するために、特許文献２には、急激な動きを検出した場合に、通常より高速なフレームレートで生成した複数フレームを合成して１フレームを生成する方法が開示されている。また、特許文献３には、像流れぼけを含む可能性のあるフレーム以外のフレームのみを選択的に出力する方法が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２５９０７６号公報
【特許文献２】特開２００６−０３３１２３号公報
【特許文献３】特開２００７−１５０４９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献２にて開示された方法では、撮像装置に撮像時におけるフレームレートよりも速い動き（つまりは、１フレームの生成時間内に発生した動き）に起因する像流れぼけを低減することができない。また、特許文献３にて開示された方法では、像流れぼけを含む可能性のあるフレームが連続する場合にこれらを除外すると、映像中の被写体が急に変化する等、映像の飛びが生ずるおそれがある。
【０００７】
本発明は、複数のフレーム間で生ずる像振れを低減することができ、かつ１フレーム内で生ずる像流れぼけをも低減することが可能な画像処理装置、撮像装置、画像処理方法および画像処理プログラムを提供する。
【課題を解決するための手段】
【０００８】
本発明の一側面としての画像処理装置は、撮像装置による撮像によって生成された動画像における連続する複数のフレーム間での撮像装置の動きに伴う像振れを低減する第１の処理を行う第１の処理手段と、上記動画像におけるフレームごとの撮像装置の動きに伴う像流れぼけを低減する第２の処理を行う第２の処理手段と、撮像装置の動きの情報を取得する動き情報取得手段とを有する。そして、第１の処理手段が第１の処理を行う場合に、第２の処理手段は、動き情報取得手段により取得された動きの情報と、撮像装置の撮像時におけるフレームレートおよび焦点距離とから、フレームごとに像流れぼけの有無を判定し、像流れぼけが無しと判定したフレームに対しては第２の処理を行わず、像流れぼけが有りと判定したフレームに対しては第２の処理を行うことを特徴とする。
【０００９】
なお、撮像により動画像を生成する撮像系と、上記画像処理装置とを有する撮像装置も、本発明の他の一側面を構成する。
【００１０】
また、本発明のさらに他の一側面としての画像処理方法は、撮像装置による撮像によって生成された動画像における連続する複数のフレーム間での撮像装置の動きに伴う像振れを低減する第１の処理を行う第１の処理ステップと、上記動画像におけるフレームごとの撮像装置の動きに伴う像流れぼけを低減する第２の処理を行う第２の処理ステップと、撮像装置の動きの情報を取得する動き情報取得ステップとを有する。そして、第１の処理ステップにおいて第１の処理を行う場合に、第２の処理ステップにおいて、動き情報取得ステップにより取得された動きの情報と、撮像装置の撮像時におけるフレームレートおよび焦点距離とから、フレームごとに像流れぼけの有無を判定し、像流れぼけが無しと判定したフレームに対しては第２の処理を行わず、像流れぼけが有りと判定したフレームに対しては第２の処理を行うことを特徴とする。
【００１１】
また、本発明のさらに他の一側面としての画像処理プログラムは、コンピュータに、撮像装置により生成された動画像における連続する複数のフレーム間での撮像装置の動きに伴う像振れを低減する第１の処理を行う第１の処理ステップと、上記動画像におけるフレームごとの撮像装置の動きに伴う像流れぼけを低減する第２の処理を行う第２の処理ステップと、撮像装置の動きの情報を取得する動き情報取得ステップとを含む処理を実行させる。そして、第１の処理ステップにおいてコンピュータに第１の処理を行わせる場合に、第２の処理ステップにおいて、コンピュータに、動き情報取得ステップにより取得された動きの情報と、撮像装置の撮像時におけるフレームレートおよび焦点距離とから、フレームごとに像流れぼけの有無を判定させ、像流れぼけが無しと判定されたフレームに対しては第２の処理を行わせず、像流れぼけが有りと判定されたフレームに対しては第２の処理を行わせることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、第１の処理によって像振れを低減することができるとともに、像流れぼけを含むフレームに対してのみ第２の処理を行うことで、処理負荷を小さくしつつ像流れぼけを低減することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施例１である撮像装置の構成を示すブロック図。
【図２】実施例１の撮像装置の動作を示すフローチャート。
【図３】実施例１における像流れぼけおよび像流れぼけカーネルの算出について説明する図。
【図４】本発明の実施例２である撮像装置の像振れ補正処理を示すフローチャート。
【図５】本発明の実施例３である撮像装置の像振れ補正処理を示すフローチャート。
【図６】本発明の実施例３である撮像装置の像流れぼけ補正処理の概要を示す図。
【図７】本発明の実施例４である画像処理装置の構成を示す概略図。
【発明を実施するための形態】
【００１４】
以下、本発明の実施例について図面を参照しながら説明する。
【実施例１】
【００１５】
図１には、本発明の実施例である画像処理装置を含むビデオカメラや動画撮影機能付きデジタルスチルカメラ等の撮像装置の構成を示す。
【００１６】
図１において、１００は撮影レンズであり、撮像素子１０２上に被写体からの光を結像させる。１０１は絞りやシャッタ等を含む露光制御部材であり、撮影レンズ１００を通った光による撮像素子１０２の露光を制御する。撮像素子１０２は、被写体像を光電変換して電気信号を出力するＣＣＤセンサやＣＭＯＳセンサ等のイメージセンサである。
【００１７】
１０３は映像形成回路であり、撮像素子１０２からのアナログ出力信号をデジタル信号に変換し、さらに該デジタル信号に対してゲイン調整、オートホワイトバランス、画素補間処理、色変換処理等を行ってデジタル映像信号（動画像）を生成する。１０４は露光制御部材１０１の動作（絞り開口径および露光時間（フレームレート））を制御する露光制御部である。１０５は撮影レンズ１００のフォーカシングを制御するＡＦ制御部である。撮影レンズ１００、露光制御部材１０１、撮像素子１０２、映像形成回路１０３、露光制御部１０４およびＡＦ制御部１０５により、被写体を撮像して映像信号（以下、単に映像ともいう）を生成する撮像系が構成される。
【００１８】
１０６は撮像装置１全体の動作の制御を司るシステム制御回路である。１０７はシステム制御回路１０６において用いられる各種データやコンピュータプログラム等を格納したメモリである。１０８は各種調整値等の情報を格納した不揮発性メモリである。
【００１９】
１０９は画像処理装置としての像振れ／像流れぼけ補正回路であり、撮像装置１の手振れ等の緩やかな動きに起因して映像における連続する複数のフレーム間に現れる像振れを低減する像振れ補正処理（第１の処理）を行う。また、像振れ／像流れぼけ補正回路１０９は、撮像装置１の急激な動きに起因して映像の１フレーム内に現れる像流れによるぼけ（像流れぼけ）を低減する像流れぼけ補正処理（第２の処理）を行う。
【００２０】
１１０は映像形成回路１０３で生成された映像の複数フレームを一時的に記憶する第１のフレームメモリである。１１１は像振れ／像流れぼけ補正回路１０９で像振れ補正処理および像流れぼけ補正処理のうち少なくとも一方を受けた映像の複数フレームを一時的に記憶する第２のフレームメモリである。１１２は第１および第２のフレームメモリ１１０，１１１に対するフレームの入出力を制御するメモリ制御回路である。１１３は像振れ／像流れぼけ補正回路１０９から出力された映像を不図示の表示モニタに表示したり不図示の記録媒体（磁気テープ、光ディスク、半導体メモリ等）に記録したりする映像出力部である。
【００２１】
次に、像振れ／像流れぼけ補正回路１０９の構成について説明する。１０９１は撮像系により生成された映像において動き方向と動き量を示す動きベクトルを算出することにより、撮像装置１の動きを検出する（すなわち、動きの情報を取得する）動き情報取得手段としての動き検出回路である。１０９２はフレームごとの像流れぼけの有無を判定するための像流れぼけ評価値を算出する像流れぼけ評価値算出回路である。
【００２２】
１０９３は像流れぼけ評価値算出回路１０９２で算出された像流れぼけ評価値に基づいて、フレームごとに像流れぼけ補正処理を行う像流れぼけ補正処理回路である。１０９４は動き検出回路１０９１で検出された撮像装置１の動きに基づいて、像振れ補正処理を行う像振れ補正処理回路である。像振れ補正処理回路１０９４および後述する像振れ／像流れぼけ制御回路１０９７により第１の処理手段が構成される。また、像流れぼけ評価値算出回路１０９２、像流れぼけ補正処理回路１０９３および像振れ／像流れぼけ制御回路１０９７により第２の処理手段が構成される。
【００２３】
１０９５は一時記憶用のメモリであり、１０９６は不揮発性メモリである。１０９７は像振れ／像流れぼけ補正回路１０９内の各回路の動作を制御する像振れ／像流れぼけ制御回路であり、ＭＰＵ等のコンピュータにより構成されている。
【００２４】
次に、動き検出回路１０９１の構成について説明する。１０９１１は連続する複数のフレーム間（例えば、時間的に前後に生成された２つのフレーム間）において、撮像装置１の動きの情報である動きベクトルを算出（検出）する動きベクトル算出回路である。１０９１２は動きベクトル算出回路１０９１１で算出された動きベクトルを用いて、撮像装置１の動きを推定する動き推定回路である。
【００２５】
次に、撮像装置１の動作について図２（ａ）に示すフローチャートを用いて説明する。図２（ａ）は、撮像装置１を用いて被写体を撮像して得られた映像中の像振れおよび像流れぼけを低減して前述した映像出力部１１３にて表示および記録されるまでの処理を示す。この処理は、像振れ／像流れぼけ制御回路（以下、単に制御回路という）１０９７によってコンピュータプログラムとしての画像処理プログラムに従って実行される。
【００２６】
ステップａ２０１では、制御回路１０９７は、撮像装置１に設けられた不図示の撮像開始スイッチが操作されたことを検出すると、撮像素子１０２からの出力信号のうち輝度成分に基づいて露光制御部１０４により制御される１フレームの露光量を設定する。また、映像のコントラスト情報に基づいてＡＦ制御部１０５にフォーカシング制御を行わせる。その後、制御回路１０９７は、映像形成回路１０３に、撮像素子１０２からの出力信号（撮像信号）を読み込ませる。
【００２７】
ステップａ２０２では、制御回路１０９７は、画像形成回路１０３に、ステップａ２０１において撮像素子１０２から読み込んだ撮像信号から映像を生成させ、第１のフレームメモリ１１０に格納する。
【００２８】
ステップａ２０３では、制御回路１０９７は、撮像装置１において、ユーザの選択操作によって、映像中の像振れおよび像流れぼけを低減する像振れ／像流れぼけ補正モードが設定されているか否かを判定する。像振れ／像流れぼけ補正モードが設定されていない場合はステップａ２０５に進み、制御回路１０９７は、映像形成回路１０３からの映像であって像振れ補正処理および像流れぼけ補正処理を行わない映像を映像出力部１１３に出力する。一方、像振れ／像流れぼけ補正モードが設定されている場合は、ステップａ２０４に進む。
【００２９】
ステップａ２０４（第１の処理ステップおよび第２の処理ステップ）では、制御回路１０９７は、像振れ／像流れぼけ補正回路１０９に、映像形成回路１０３からの映像に対して像振れ補正処理および像流れぼけ補正処理を行わせる。このステップａ２０４での処理について、図２（ｂ）のフローチャートを用いて説明する。
【００３０】
ステップｂ２０１（動き情報取得ステップ）では、制御回路１０９７は、動き検出回路１０９１に撮像装置１の動きを検出させる。動き検出回路１０９１の動きベクトル算出回路１０９１１は、まず第１のフレームメモリ１１０に格納された前フレームの特徴点を抽出する。この特徴点は、画像中の線分や線同士の交点等、特徴的な部分であり、Ｈａｒｒｉｓオペレータ等の画像処理手法を用いて抽出する。次に、動きベクトル算出回路１０９１１は、現フレームのうち前フレームの特徴点に対応する対応点を求める。対応点は、特徴点とその周辺の領域を含むテンプレートを用いたテンプレートマッチング等の手法によって求められる。そして、前フレームの特徴点の座標と現フレームの対応点の座標とから、前フレームと現フレーム間での動きベクトルを算出する。動きベクトル算出回路１０９１１は、同様の処理を、各フレームにおける複数の特徴点に対して行う。
【００３１】
次に、ステップｂ２０２では、制御回路１０９７は、像流れぼけ評価値算出回路１０９２に、像流れぼけの有無を判定する指標となる像流れぼけ評価値を算出させる。像流れぼけ評価値算出回路１０９２は、ステップｂ２０１で各特徴点について算出された動きベクトルを利用して像流れぼけ評価値を算出する。像流れぼけ評価値の算出に動きベクトルを用いるのは、動きベクトルの大小が像流れぼけの有無を反映しているためである。
【００３２】
特徴点の数をＮとし、各特徴点で算出された動きベクトルをｍｖ（ｉ）（ｉ＝１〜Ｎ）として、像流れぼけ評価値Ｅ＿ｍｖを式１のように定義する。
【００３３】
Ｅ＿ｍｖ＝ｍｖ＿ｓ＝ｆｕｎｃ＿ｓ（ｍｖ）      （式１）
式１において、ｍｖ＿ｓは複数の特徴点での動きベクトルから求められるフレーム全体を代表する１つの動きベクトルとしての代表動きベクトル（動きの情報）である。また、ｆｕｎｃ＿ｓ（）は代表動きベクトルを算出する関数を示し、例えばメディアンを算出する関数で実現される。代表動きベクトルを用いることで、撮像装置１の動きを簡単化して表すことができる。
【００３４】
なお、ここではメディアンを像流れぼけ評価値として用いる場合について説明するが、平均値等の他の値を用いてもよい。また、ここでは動きベクトルをそのまま像流れぼけ評価値として用いる場合について説明する。しかし、より詳細に像流れぼけの有無を判定する場合には、フレーム（画像）に対してフィルタリング処理や直交変換処理を行って高周波成分を算出し、該高周波成分が多いか少ないかを示す像流れぼけ評価値を用いてもよい。さらに、フレーム中のエッジ成分を検出し、該エッジ成分の画素値の変化が急峻か緩やかかを示す像流れぼけ評価値を用いてもよい。高周波成分の大小も該エッジ成分の画素値の変化も、撮像装置１の動きの情報に含まれる。
【００３５】
このステップｂ２０２から後述するステップｂ２０４までが、第２の処理ステップに相当する。
【００３６】
次に、ステップｂ２０３では、制御回路１０９７は、ステップｂ２０２で算出された像流れぼけ評価値に基づいて、現フレームに像流れぼけが含まれているか否か（像流れぼけの有無）を判定する。具体的には、式２に示すように、像流れぼけ評価値と像流れぼけ評価閾値Ｅ＿ｔｈとの比較によって判定する。
【００３７】
Ｅ＿ｔｈ（ｓ，ｆ）＜Ｅ＿ｍｖ…像流れぼけ無し
Ｅ＿ｔｈ（ｓ，ｆ）≧Ｅ＿ｍｖ…像流れぼけ有り            （式２）
式２において、ｓ，ｆはそれぞれ、撮像による映像の生成時（撮像時）のフレームレートと撮像装置１（撮影レンズ１００）の焦点距離とを表す。像流れぼけ評価閾値Ｅ＿ｔｈは、このように撮像時のフレームレートｓと焦点距離ｆとに応じて決定される閾値である。言い換えれば、制御回路１０９７は、撮像装置１の動きの情報である代表動きベクトルと、撮像装置１の撮像時におけるフレームレートおよび焦点距離とから像流れぼけの有無を判定する。
【００３８】
撮像時のフレームレートが高い場合や焦点距離が短い場合は、像流れぼけ評価閾値は高くなる。この場合に像流れぼけの発生が有りと判定されるのは、きわめて急激な動きが撮像装置１に生じた場合である。また、フレームレートが低い場合や焦点距離が長い場合は像流れぼけ評価閾値は小さくなる。この場合、フレームレートが高い場合や焦点距離が短い場合に比べて緩やかな動き（ただし、像振れを生じさせる動きよりは速い動き）が撮像装置１に生じた場合でも像流れぼけの発生が有りと判定され易くなる。像流れぼけが無しと判定された場合は、ステップｂ２０５に進む。一方、像流れぼけが有りと判定された場合は、ステップｂ２０４に進み、制御回路１０９７は、像振れ／像流れぼけ補正回路１０９に像流れぼけ補正処理を行わせる。
【００３９】
ここで、ステップｂ２０４で行われる像流れぼけ補正処理について説明する。ｇを像流れぼけを含んだ観測画像（劣化画像）とし、ｍを像流れぼけを含まない理想画像とすると、観測画像ｇは式３のように表現できる。
【００４０】
ｇ＝ｈ＊ｍ＋ｎ          （式３）
＊は畳み込みを表し、ｈは画像を劣化させる作用素であり、像流れぼけを生じさせる像流れぼけカーネルを表す。ｎは付加ノイズ成分を表す。ｇ，ｈからｍを推定することで画像劣化（像流れぼけ）を低減（補正）することができる。
【００４１】
式３をフーリエ変換して、周波数空間で表現すると、式４のようになる。
【００４２】
Ｇ＝Ｈ・Ｍ＋Ｎ        （式４）
ただし、Ｇ，Ｈ，Ｍ，Ｎはそれぞれ、ｇ，ｈ，ｍ，ｎのフーリエ変換を表す。このとき、ウィナーフィルタＷは式５で表される。
【００４３】
Ｗ＝Ｈ＊・Ｐｍ／（｜Ｈ｜２・Ｐｍ＋Ｐｎ）        （式５）
ただし、＊は複素共役を表し、Ｐｍ，Ｐｎはそれぞれ理想画像およびノイズのパワースペクトルを表す。ここで、Ｐｍは未知であるため、信号とノイズとは無相関であると仮定する。すなわち、Ｐｍ／Ｐｎ＝ｃ（定数）とする。このとき、式５は式６のように記述できる。
【００４４】
Ｗ＝Ｈ＊／（｜Ｈ２｜＋１／ｃ）            （式６）
そして、式４と式６より、像流れぼけカーネルｈが分かれば、劣化を回復した画像Ｍを算出することが可能となる。
【００４５】
像流れぼけを生じさせる像流れぼけカーネルｈの設定方法について説明する。像流れぼけカーネルは、ステップｂ２０１で算出された動きベクトルを基準として設定する。これを図３に示す。図３の（ａ）には、像流れぼけが発生している画像とその画像から得られる動きベクトルとを表している。時刻ｔでは像流れぼけは目立っていない。しかし、時刻ｔから時刻ｔ＋１に移行する際に撮像装置に急激な動きが発生した結果、時刻ｔ＋１では被写体像が流れたようにぼける像流れぼけが発生している。このとき、時刻ｔの画像を基準とすると動きベクトルは図中に矢印３０１で示したように表される。この動きベクトル３０１を用いて、式７のように像流れぼけカーネルを算出する。
【００４６】
ｈ＝α（ｓ，ｆ）・ｍｖ＿ｓ          （式７）
前述したように、ｍｖ＿ｓはフレーム全体の代表動きベクトルであり、式１によって算出される。ｓ，ｆはそれぞれ、撮像装置１の撮像時におけるフレームレートおよび焦点距離である。αはフレームレートｓと焦点距離ｆに応じて設定される０〜１の範囲内の値として設定される係数である。係数αは、フレームレートが高い場合、すなわち１フレーム当たりの撮像素子１０２の露光時間が短い場合は小さく、フレームレートが低い場合は大きく設定される。また、係数αは、焦点距離が短い場合は小さく、長い場合は大きく設定される。
【００４７】
このようにして算出された像流れぼけカーネルは、図３（ｂ）中の矢印３０３のように表せる。
【００４８】
以上のようにして算出した像流れぼけカーネルｈと観測画像ｇとから、式４および式６を用いて、像流れぼけを低減した画像を生成することができる。そして、このように像流れぼけが有りと判定された現フレームに対して像流れぼけ補正処理を行った後は、ステップｂ２０５に進む。前述したように、像流れぼけが無しと判定された現フレームに対しては像流れぼけ補正処理を行わずにステップｂ２０５に進む。
【００４９】
ステップｂ２０５では、制御回路１０９７は、動き推定回路１０９１２に撮像装置１の動きを推定させる。動き推定回路１０９１２は、ステップｂ２０１で算出された代表動きベクトルを用いて、撮像装置１の動きに対応する画像全体の動きを推定する。ここでは、画像全体の動きを画像変形量として表す。具体的には、式８に示すアフィン変換とする。
【００５０】
【数１】
2012085205.tif 000003
【００５１】
動き推定回路１０９１２は、この変換行列Ａを画像変形量として動きベクトルから推定する。
【００５２】
次に、ステップｂ２０６では、制御回路１０９７は、ステップｂ２０５で算出された画像変形量（変換行列Ａ）を用いて像振れ補正処理を行う。画像上の点ｘが変換行列Ａで表されるアフィン変換によって点ｘ’に移動したとすると、
【００５３】
【数２】
2012085205.tif 000004
【００５４】
とすることで、像振れ補正処理を行うことが可能となる。ここでは、直接、変換行列Ａの逆行列Ａ−１を用いる場合について説明したが、時間的に平滑化した変換行列を用いて補正するようにしてもよい。ステップｂ２０５とステップｂ２０６が第１の処理ステップに相当する。
【００５５】
以上の処理を行うことで、像振れが低減され、かつ像流れぼけも低減された良好な映像が生成される。以上で、ステップａ２０４での処理が終了する。
【００５６】
次に、ステップａ２０５では、制御回路１０９７は、ステップａ２０４での処理がなされた映像を映像出力部１１３にて表示したり記録したりする。
【００５７】
本実施例によれば、複数のフレーム間の像振れ補正処理を行う場合に、撮像装置１の動きの情報と撮像装置１の撮像時のフレームレートおよび焦点距離とに基づいてフレームごとの像流れぼけの有無を判定する。そして、像流れぼけが有りと判定されたフレームについてのみ像流れぼけ補正処理を行う。これにより、処理負荷を小さくしつつ像振れおよび像流れぼけを低減した良好な映像を出力することができる。
【００５８】
さらに、像流れぼけ補正処理は、像振れ補正処理が行われている間でも該像振れ補正処理が行われた後でも行うことができ、既に撮像により生成された動画像に対しても像流れぼけを低減することができる。
【００５９】
なお、本実施例では、像流れぼけの有無の判定を動きベクトルを用いて行う場合について説明したが、必ずしも動きベクトルを用いる必要はない。例えば、図２（ｂ）に示したフローチャートのステップｂ２０５にて算出する画像変形量や、角速度や加速度を検出する振れセンサの出力値を用いてもよい。さらに、本実施例では、像流れぼけカーネルも動きベクトルを用いて設定しているが、振れセンサの出力値を用いて設定してもよい。
【００６０】
また、本実施例では、像振れ補正処理を電子的な画像処理によって行う場合について説明したが、撮影レンズ１００に含まれるレンズ等の光学素子を光軸に直交する方向等に移動させることによる光学的な像振れ補正処理を行ってもよい。
【実施例２】
【００６１】
次に、本発明の実施例２として、像流れぼけ補正処理を行った後の映像に対して、再度、動きベクトルの検出処理を行うことで、像振れ補正効果を向上させる実施例について説明する。
【００６２】
本実施例における撮像装置の構成は、実施例１において図１に示した撮像装置１の構成と同じであるので、共通する構成要素には図１中の符号と同符号を付す。また、本実施例の撮像装置は、実施例１にて図２（ａ）のフローチャートに示した処理と同じ処理を行う。ただし、本実施例の撮像装置は、実施例１にて図２（ｂ）のフローチャートに示した処理に代えて、図４のフローチャートに示した処理を行う。
【００６３】
図４のフローチャートにおいて、ステップｂ４０１〜ｂ４０６はそれぞれ、図２（ｂ）に示したフローチャートのステップｂ２０１〜ｂ２０６と同じである。
【００６４】
ステップｂ４０４での像流れぼけ補正処理が行われた後、ステップｂ４０４′では、制御回路１０９７は、再度、動き検出回路１０９１に撮像装置１の動きを検出させる。すなわち、動きベクトル算出回路１０９１１に動きベクトルを算出させ、ステップｂ４０１にて算出された動きベクトルのデータの全てを、ステップｂ４０４で新たに算出された動きベクトルのデータによって更新する。
【００６５】
そして、ステップｂ４０５では、制御回路１０９７は、動き推定回路１０９１２に、更新された動きベクトルを用いて撮像装置１の動きを推定させる。
【００６６】
このように、像流れぼけを低減した映像を用いて撮像装置１の動きの検出（動きベクトルの算出）を行うことにより、より正確な動きベクトルを算出することができ、動きの検出精度が向上する。この結果、像振れ補正効果を改善することができる。
【実施例３】
【００６７】
次に、本発明の実施例３について説明する。本実施例は、より高精細な映像をユーザに提供するために、像流れぼけ補正処理を、像振れ補正処理が行われた複数のフレームを用いて行う実施例である。
【００６８】
本実施例における撮像装置の構成は、実施例１において図１に示した撮像装置１の構成と同じであるので、共通する構成要素には図１中の符号と同符号を付す。また、本実施例の撮像装置は、実施例１にて図２（ａ）のフローチャートに示した処理と同じ処理を行う。ただし、本実施例の撮像装置は、実施例１にて図２（ｂ）のフローチャートに示した処理に代えて、図５のフローチャートに示した処理を行う。
【００６９】
図５のフローチャートにおいて、ステップｂ５０１〜ｂ５０６はそれぞれ、図２（ｂ）に示したフローチャートのステップｂ２０１〜ｂ２０６と同じである。
【００７０】
ステップｂ５０３において現フレームに像流れぼけが有りと判定された場合は、制御回路１０９７は、ステップｂ５０７において、現フレームの像流れぼけフラグをＯＮにセットする。
【００７１】
また、ステップｂ５０６で像振れ補正処理が行われた後、ステップｂ５０８では、制御回路１０９７は、動きぼけフラグがＯＮか否かを判別する。ＯＮである場合は、ステップｂ５０９に進んで、制御回路１０９７は、像流れぼけ補正処理回路１０９３に像流れぼけ補正処理を行わせる。一方、像流れぼけフラグがＯＦＦであった場合は、制御回路１０９７は、像振れ／像流れぼけ補正処理を終了する。
【００７２】
ここで、ステップｂ５０９での像流れぼけ補正処理について、図６を用いて説明する。ステップｂ５０９での像流れぼけ補正処理は、ステップｂ５０６で像振れが低減された映像（複数フレーム）を用いて行われる。
【００７３】
図６において、６０１は既にステップｂ５０６で像振れ補正処理が行われた複数のフレームを示している。像振れ補正処理では、複数のフレームのそれぞれから、図中に太線で示すように、被写体を同じ位置に含むように切り出し領域６０２を切り出して順次出力する。これにより、映像上では被写体の位置が常に同じ位置に維持される。
【００７４】
ステップｂ５０３において、時刻ｔ（現在）と時刻ｔ−２（前）のフレーム６０３とフレーム６０４が動きぼけフラグがＯＮである像流れぼけ有りフレームであり、それ以外のフレームは像流れぼけフラグがＯＦＦの像流れぼけ無しフレームであるとする。そして、像流れぼけ補正処理の対象である像流れぼけ有りフレーム（現フレーム）６０３からｋフレーム前までの像流れぼけ無しフレームを用いて動きぼけ画像補正処理を行う。ここでは、ｋ＝３とする。そして、時刻ｔ−１〜ｔ−４までの３つの像流れぼけ無しフレームｍ（ｉ）（ｉ＝ｔ−１，ｔ−３，ｔ−４であり、像流れぼけ有りフレーム６０４（時刻ｔ−２）は除外）を用いて、式１０に従って時刻ｔのフレームｍ′を新たに生成する像流れぼけ補正処理を行う。
【００７５】
【数３】
2012085205.tif 000005
【００７６】
式１０において、各フレームは切り出した画像座標で計算する。また、ｉ＝ｔ−１〜ｔ−ｋ（ただし、像流れぼけ有りフレームは除外）であり、ｊ＝１〜ｋである。
【００７７】
このように、像流れぼけのない複数のフレームを用いて像流れぼけ補正処理を行うことにより、単一のフレームを用いた像流れぼけ補正処理を行う場合に比べて、高精細でノイズが少ない像流れぼけ補正処理後のフレームを生成することが可能となる。
【００７８】
なお、ここでは、単純な加重平均として像流れぼけを補正したが、複数フレームを用いた補正方法（不等間隔補間、画像再構型の超解像等）を適用することも可能である。
【００７９】
また、ここでは像流れぼけ補正処理の対象フレームよりも前に生成された像流れぼけ無しフレームのみを利用して像流れぼけ補正処理を行う場合について説明した。しかし、既に撮像による生成が行われて記録された後の映像に対して像流れぼけ補正処理を行う場合には、像流れぼけ補正処理の対象フレームの後に生成された像流れぼけ無しフレームを利用するようにしてもよい。すなわち、像流れぼけ補正処理の対象フレームの前および後のうち少なくとも一方の像流れぼけ無しフレームを利用することができる。
【００８０】
さらに、ここでは、像振れ補正処理を行った映像に対して像流れぼけ補正処理を行う場合について説明したが、像振れ補正処理を行わずにフレーム間での動き量のみを利用して像流れぼけ補正処理を行うことで、幾何変換による画像劣化を回避することも可能である。
【実施例４】
【００８１】
上記各実施例では、撮像装置に画像処理装置を内蔵した場合について説明した。しかし、例えば図７に示すように、撮像装置１４０１で生成した映像をパーソナルコンピュータ１４０２に送信し、パーソナルコンピュータ１４０２において、実施例１〜３で説明した像振れ補正処理および像流れぼけ補正処理を行ってもよい。この場合、パーソナルコンピュータ１４０２が、図２，４，５にて説明した処理を画像処理プログラムに従って実行する画像処理装置として機能する。
【００８２】
映像の送信方法は、ケーブル方式、無線方式のいずれでもよく、インターネットやＬＡＮを介して送信してもよい。
【００８３】
また、この場合の撮像装置の動きの検出（動き情報の取得）は、パーソナルコンピュータ１４０２によって行ってもよいし、撮像装置に搭載された振れセンサ又は動きベクトル検出回路からの出力をパーソナルコンピュータ１４０２が取り込むことで行ってもよい。
【００８４】
さらに、上記各実施例で説明した像振れ補正処理および像流れぼけ補正処理を行う画像処理装置を、撮像により生成された映像を再生表示するモニタやプロジェクタ等の映像表示装置に搭載してもよい。
【００８５】
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
【産業上の利用可能性】
【００８６】
映像の像振れと像流れぼけを良好に低減できる画像処理装置および撮像装置を提供できる。
【符号の説明】
【００８７】
１  撮像装置
１０９  像振れ／像流れぼけ補正回路
１０９１  動き検出回路
１０９２  像流れぼけ評価値算出回路
１０９３  像流れぼけ補正処理回路
１０９４  像振れ補正処理回路
【図３】
2012085205.tif 000006
【図１】
2012085205.tif 000007
【図２】
2012085205.tif 000008
【図４】
2012085205.tif 000009
【図５】
2012085205.tif 000010
【図６】
2012085205.tif 000011
【図７】
2012085205.tif 000012