(57)【要約】【課題】  手振れに起因する被写体上のモーションブラーが目立たない手振れ補正を実現する。【解決手段】  位置ずれ量取得部305は、動画データを撮影した際の手振れ量を取得する。モーションブラー算出部306は、手振れ量および動画データを撮影した撮像部のカメラパラメータから、手振れに起因する動画データに含まれる被写体のモーションブラー量を算出する。制限値算出部307は、被写体速度に関連する視覚の空間周波数応答特性およびモーションブラー量に基づき、モーションブラーが知覚されない画像のずれ量を補正制限値として算出する。補正量設定部308は、補正制限値に基づき、動画データの手振れ補正に適用する補正量を設定する。【選択図】  図3
2017079378.tif 000002
【特許請求の範囲】
【請求項１】
動画データを撮影した際の手振れ量を取得する取得手段と、
前記手振れ量および前記動画データを撮影した撮像部のカメラパラメータから、手振れに起因する前記動画データに含まれる被写体のモーションブラー量を算出する第一の算出手段と、
被写体速度に関連する視覚の空間周波数応答特性および前記モーションブラー量に基づき、モーションブラーが知覚されない画像の位置ずれ量を補正制限値として算出する第二の算出手段と、
前記補正制限値に基づき、前記動画データの手振れ補正に適用する補正量を設定する設定手段とを有する画像処理装置。
【請求項２】
前記補正量に基づく手振れ補正を前記動画データに施す補正手段を有する請求項1に記載された画像処理装置。
【請求項３】
前記取得手段は、前記手振れ量として、前記動画データから算出される前記被写体の動きベクトルが示す画像の位置ずれ量を取得することを特徴とする請求項1または請求項2に記載された画像処理装置。
【請求項４】
前記取得手段は、前記撮像部の三次元位置に基づき前記手振れ量を取得する請求項1または請求項2に記載された画像処理装置。
【請求項５】
前記第一の算出手段は、
フレーム画像間の前記手振れ量の差分を前記手振れの速度として算出し、
前記カメラパラメータと前記手振れの速度から暈けフィルタを設定し、
前記暈けフィルタにより点光源画像の暈け画像を生成し、
前記暈け画像のフーリエ変換画像からモーションブラーの空間周波数特性を算出し、
前記空間周波数特性に基づき前記モーションブラー量を決定する請求項1から請求項4の何れか一項に記載された画像処理装置。
【請求項６】
前記第二の算出手段は、
前記視覚の空間周波数応答特性から得られる暈け知覚速度のデータを参照して、前記モーションブラー量に対応する暈け知覚速度をモーションブラー知覚速度として取得し、
所定の閾値に基づき、前記モーションブラー知覚速度を調整し、
前フレームの前記補正制限値および前記モーションブラー知覚速度の和を注目フレームの前記補正制限値として算出する請求項1から請求項5の何れか一項に記載された画像処理装置。
【請求項７】
前記モーションブラー知覚速度が前記閾値以下の場合、前記モーションブラー知覚速度が零に調整される請求項6に記載された画像処理装置。
【請求項８】
前記視覚の空間周波数応答特性は、前記被写体速度が大きくなるに従い、応答のピークが低周波数側にシフトするバンドパス特性を有する請求項1から請求項7の何れか一項に記載された画像処理装置。
【請求項９】
前記設定手段は、前記補正制限値以下の前記手振れ量に対して当該手振れ量を打ち消す補正量を設定し、前記補正制限値を超える前記手振れ量に対して当該補正制限値に等しい補正量を設定する請求項1から請求項8の何れか一項に記載された画像処理装置。
【請求項１０】
動画データを撮影する撮像部と、
請求項1から請求項9の何れか一項に記載された画像処理装置とを有する撮像装置。
【請求項１１】
動画データを撮影した際の手振れ量を取得し、
前記手振れ量および前記動画データを撮影した撮像部のカメラパラメータから、手振れに起因する前記動画データに含まれる被写体のモーションブラー量を算出し、
被写体速度に関連する視覚の空間周波数応答特性および前記モーションブラー量に基づき、モーションブラーが知覚されない画像のずれ量を補正制限値として算出し、
前記補正制限値に基づき、前記動画データの手振れ補正に適用する補正量を設定する画像処理方法。
【請求項１２】
コンピュータを請求項1から請求項10の何れか一項に記載された画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手振れ補正を行う画像処理に関する。
【背景技術】
【０００２】
ビデオカメラは勿論、ディジタルカメラや携帯電話などにも動画撮像機能が搭載されるようになり、これら撮像装置によって動画を撮影する際の手振れに起因する暈けの対策が重要となっている。手振れに起因する暈けを防ぐために、手振れ補正として、様々な画像処理技術が提案されている。
【０００３】
手振れ補正が過度になると、補正により被写体が静止して表示され、撮影時の手振れにより生じた被写体上のモーションブラーが目立つ場合がある。特許文献1は、手振れの大きさに応じて補正強度を調整する手法を開示する。特許文献1によれば、ユーザ操作により手振れ補正の強弱が指定され、指定された操作量に応じて切取画角が増減されるとともに、手振れ補正の強弱が変更される。しかし、特許文献1の技術によれば、手振れ補正の強度を手動で設定するために、撮影の度に補正強度を設定する必要がある。
【０００４】
また、特許文献2は、手振れの大きさに応じた、光学式手振れ補正（以下、光学式補正）と電子式手振れ補正（以下、電子式補正）の切り替えと、補正強度の割合の変更を併用する手法を提案する。特許文献2の技術によれば、光学式補正により応答可能な小さな手振れに対してモーションブラーを抑えることが可能である。しかし、光学式補正では抑えきれない大きな手振れが発生した場合、電子式補正を強くすると被写体上のモーションブラーが目立つようになる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開2007-274031号公報
【特許文献２】特開2013-126075号公報
【非特許文献】
【０００６】
【非特許文献１】J. Laird、M. Rosen、J. Pelz、E. Montag、S. Daly「Spatio-velocity CSF as a function of retinal velocity using unstabilized stimuli」Proc. of SPIE 6057、Human Vision and Electronic Imaging XI、2006年
【非特許文献２】D. H. Kelly「Motion and vision. II. Stabilized spatio-temporal threshold surface」JOSA、Vol. 69、1340-1349頁、1979年
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、手振れに起因する被写体上のモーションブラーが目立たない手振れ補正の実現を目的とする。
【課題を解決するための手段】
【０００８】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【０００９】
本発明にかかる画像処理は、動画データを撮影した際の手振れ量を取得し、前記手振れ量および前記動画データを撮影した撮像部のカメラパラメータから、手振れに起因する前記動画データに含まれる被写体のモーションブラー量を算出し、被写体速度に関連する視覚の空間周波数応答特性および前記モーションブラー量に基づき、モーションブラーが知覚されない画像のずれ量を補正制限値として算出し、前記補正制限値に基づき、前記動画データの手振れ補正に適用する補正量を設定する。
【発明の効果】
【００１０】
本発明によれば、手振れに起因する被写体上のモーションブラーが目立たない手振れ補正が実現される。
【図面の簡単な説明】
【００１１】
【図１】撮影される動画像の一部のフレーム画像を示す図。
【図２】撮像装置の構成例を示すブロック図。
【図３】画像処理部の構成例を示すブロック図。
【図４】画像処理部による手振れ補正処理を説明するフローチャート。
【図５】撮影時の手振れに伴う画像の位置ずれ量、および、位置ずれ量に対して設定される補正量を示す図。
【図６】モーションブラー算出部の処理を説明するフローチャート。
【図７】手振れ速度およびモーションブラー量の一例、並びに、手振れ速度に対して算出されるモーションブラー量を示す図。
【図８】暈けフィルタ、暈け画像、フーリエ変換画像の関係を説明する図。
【図９】フーリエ変換画像から算出される暈けの空間周波数特性を説明する図。
【図１０】制限値算出部の処理を説明するフローチャート。
【図１１】被写体の移動速度に応じた視覚の空間周波数応答特性、および、暈け知覚速度を示す図。
【図１２】モーションブラー知覚速度と補正制限値の関係を示す図。
【図１３】実施例の手振れ補正処理後の動画データにおける位置ずれ量を示す図。
【図１４】手振れ補正後の動画像の一部のフレーム画像を示す図。
【発明を実施するための形態】
【００１２】
以下、本発明にかかる実施例の画像処理装置および画像処理方法を図面を参照して詳細に説明する。なお、実施例は特許請求の範囲にかかる本発明を限定するものではなく、また、実施例において説明する構成の組み合わせのすべてが本発明の解決手段に必須とは限らない。
【００１３】
［説明における撮影条件］
以下では、説明を容易にするために、撮像装置を手に持つユーザが、静止した矩形波チャートを撮影する例を説明する。手振れとして、周期が8フレーム/サイクルで三角波状の、画像上の水平方向に振幅x0画素に相当する動きと、同じくx1画素（x0＜x1）に相当する動きが、三周期ずつ交互に繰り返されると仮定する（図5(a)参照）。
【００１４】
図1により上記の条件により撮影される動画像の一部のフレーム画像を示す。図1(a)(c)は振幅x0の手振れ時のフレーム画像を示し、各フレーム画像の間で|0.5・x0|の位置ずれが生じる。図1(b)(d)は振幅x1の手振れ時のフレーム画像を示し、各フレーム画像の間で|0.5・x1|の位置ずれが生じる。さらに、振幅x1の大きな手振れ時は、撮影された矩形波チャート上にモーションブラーが生じる。
【００１５】
［装置の構成］
図2のブロック図により撮像装置の構成例を示す。マイクロプロセッサ(CPU)205は、ランダムアクセスメモリ(RAM)204をワークメモリとして、リードオンリメモリ(ROM)203などに格納されたプログラムを実行し、システムバス215を介して、後述する各構成を制御する。CPU205が実行するプログラムには、後述する様々な処理を実現するプログラムが含まれる。
【００１６】
撮像部201は、レンズ、絞り、シャッタ、光学ローパスフィルタ、カラーフィルタおよびCMOSセンサや電荷結合素子(CCD)などの撮像デバイスを備え、被写体からの光量をディジタル信号に変換し、システムバス215にディジタル信号を出力する。フラッシュ202は、CPU205の制御に従い、被写体に光を照射する。撮像制御部206は、フォーカスを合わせる、シャッタを開く、絞りを調節するなど、CPU205の指示に従い撮像部201の撮像系の制御を行う。
【００１７】
操作部207は、ボタン、モードダイヤルなどに相当し、ユーザ指示を入力する。CG生成部208は、文字やグラフィックスなどを生成する。表示部209は、例えば液晶ディスプレイ(LCD)であり、CG生成部208、ディジタル信号処理部(DSP)210、画像処理部214から入力された画像、文字、グラフィックスの表示を行う。表示部209がタッチスクリーン機能を備えてもよく、その場合、表示部209は操作部207の一部として機能する。
【００１８】
DSP210は、撮像部201から入力されるディジタル信号にデモザイキング、現像、ホワイトバランス、ガンマ補正、ノイズ低減などの各種処理を施して画像データを生成する。圧縮伸長部211は、画像データをJPEG (Joint Photographic Experts Group)やMPEG (Moving Picture Experts Group)などのフォーマットにエンコードする処理を行う。また、JPEGデータやMPEGデータを画像データにデコードする処理を行う。
【００１９】
実施例の画像処理装置である画像処理部214は、撮像部201が出力するディジタル信号またはDSP210が出力する画像データに後述する画像処理を施す。外部メモリ制御部212は、システムバス215にメディア213を接続するためのインタフェイス機能を有するメディアドライブである。メディア213として、例えば、ハードディスク、メモリカード、USBメモリなどが利用可能である。
【００２０】
ネットワークインタフェイス215は、無線ローカルエリアネットワーク用のインタフェイスである。CPU205は、ネットワークインタフェイス215を介して、サーバ装置、コンピュータ装置、プリンタなどと通信を行い、画像データや動画データのアップロードやダウンロードを行う。
【００２１】
CPU205は、DSP210または画像処理部214が出力する画像データや動画データを、表示部209に供給して画像や動画を表示したり、圧縮伸長部211を介して外部メモリ制御部212に供給してメディア213に格納する。また、サーバ装置などからダウンロードした画像データや動画データ、または、メディア213から読み出した画像データや動画データを圧縮伸長部211を介して表示部209に供給して画像や動画を表示する。
【００２２】
●画像処理部
図3のブロック図により画像処理部214の構成例を示す。画像処理部214は、CPUとメモリを独立に備えるハードウェア構成としてもよいし、CPU205がROM203に格納された画像処理プログラムを実行することで実現されるソフトウェア構成としてもよい。あるいは、撮像装置とは別のコンピュータ装置に画像処理プログラムを供給することで画像処理部214が実現されてもよい。
【００２３】
データ取得部303は、DSP210から出力される動画データを取得する。パラメータ取得部304は、CPU205または撮像制御部206から撮像部201のカメラパラメータを取得する。カメラパラメータは、露光時間、フレームレート、絞りなどの撮像条件パラメータ、および、レンズの焦点距離、ピント位置、センサの画素ピッチなどの撮像装置の解像度特性を表す装置パラメータを含む。
【００２４】
位置ずれ量取得部305は、手振れ量として、データ取得部303が取得した動画像データから撮影時の手振れに伴う画像の位置ずれ量を取得する。モーションブラー算出部306は、カメラパラメータと位置ずれ量に基づき、手振れに伴い画像上に生じるモーションブラー量を算出する。
【００２５】
制限値算出部307は、モーションブラー量および被写体速さに関連する視覚の空間周波数応答特性に基づき、補正の制限値（以下、補正制限値）を算出する。補正制限値は、手振れに起因する被写体のモーションブラーが知覚されない（少なくとも目立たない）画像の位置ずれ量である。言い替えれば、補正制限値を超えた位置ずれ量の抑制（位置ずれ量を零に近付ける）を行えば、手振れに伴うモーションブラーが目立つようになる。
【００２６】
補正量設定部308は、補正制限値に基づき、手振れ補正に適用する補正量を設定する。補正部309は、データ取得部303が取得した動画像データに補正量に基づく手振れ補正を施した動画データを出力する。
【００２７】
図4のフローチャートにより画像処理部214による手振れ補正処理を説明する。図4には1フレーム分の処理を示すが、動画データの各フレーム画像に対して図4の処理が実行される。以下では、撮像部201が理想的なピンホールカメラの解像度特性を有し、手振れに伴うモーションブラーが露光時間TとフレームレートFPS、および、後述する手振れ量xのみに依存すると仮定する。
【００２８】
データ取得部303は、動画データの注目フレーム画像を取得する(S401)。パラメータ取得部304は、カメラパラメータを取得する(S402)。位置ずれ量取得部305は、ブロックマッチング法や勾配法などを用いて動画データから被写体の動きベクトルを算出し、注目フレーム画像における撮影時の手振れに伴う画像の位置ずれ量を取得する(S403)。図5(a)により撮影時の手振れに伴う画像の位置ずれ量の一例を示す。図5(a)において、縦軸は手振れに伴う画像の位置ずれ量x（単位は画素）、横軸はフレーム番号iを示す。
【００２９】
モーションブラー算出部306は、詳細は後述するが、カメラパラメータと位置ずれ量xから、手振れに伴い画像上に生じるモーションブラー量を算出する(S404)。制限値算出部307は、詳細は後述するが、モーションブラー量と、被写体速さに関連する視覚の空間周波数応答特性に基づき、手振れに伴うモーションブラーが知覚されない画像の位置ずれ量を補正制限値として算出する(S405)。
【００３０】
補正量設定部308は、補正制限値に基づき補正量を設定する(S406)。つまり、下式により、補正制限値以下の位置ずれ量xに対しては、それを打ち消す補正量が設定される。また、補正制限値を超える位置ずれ量xに対しては、補正制限値に等しい補正量が設定される。
if (x(i)≦xVTF(i))
x'(i) = -x(i)；
else
x'(i) = -xVTF(i)；      …(1)
ここで、x'(i)はフレーム画像iの補正量、
x(i)はフレーム画像iの位置ずれ量、
xVTF(i)は補正制限値。
【００３１】
補正部309は、設定された補正量x'に基づき、注目フレーム画像にアフィン変換や射影変換などを用いた手振れ補正を行い、手振れ補正後のフレーム画像を出力する(S407)。
【００３２】
図5(b)により図5(a)の位置ずれ量xに対して設定される補正量x'を示す。図5(b)において、縦軸は補正量x'（単位は画素）、横軸はフレーム番号iを示す。図5(b)に示すように、振幅x0の位置ずれは手振れ補正により打ち消され、被写体が静止する補正になる。一方、手振れ量が大きい振幅x1の位置ずれについては、被写体の静止によりモーションブラーが目立つため、モーションブラーが知覚されない（少なくとも目立たない程度の）振幅|x-xVTF|の位置ずれを残す補正になる。
【００３３】
●モーションブラー算出部
図6のフローチャートによりモーションブラー算出部306の処理(S404)を説明する。モーションブラー算出部306は、下式により、手振れに伴うフレーム画像間の位置ずれ量の差分を手振れ速度として算出する(S601)。ただし、フレーム番号0の手振れ速度v(0)は0とする。
v(i) = x(i) - x(i-1);      …(2)
ここで、v(i)は手振れ速度、
x(i)はフレーム番号iのフレーム画像の位置ずれ量、
x(i-1)はフレーム番号i-1のフレーム画像の位置ずれ量。
【００３４】
図7により手振れ速度v(i)およびモーションブラー量の一例を示す。図7(a)において、縦軸は手振れ速度v(i)（単位は画素/フレーム）を示し、横軸はフレーム番号iを示す。振幅x0の手振れにおける手振れ速度はv=0.5・x0、振幅x1の手振れにおける手振れ速度はv=0.5・x1である。
【００３５】
次に、モーションブラー算出部306は、カメラパラメータと手振れ速度v(i)から、手振れに伴い注目フレーム画像上に生じるモーションブラーを再現する暈けフィルタを設定する(S602)。まず、下式により、暈けフィルタサイズF(i)を決定する。
F(i) = T・FPS・v(i)；      …(3)
ここで、Tは露光時間、
FPSはフレームレート。
【００３６】
以下では、振幅x0の手振れ時の暈けフィルタサイズをF0画素、振幅x1の手振れ時の暈けフィルタサイズをF1画素（F0＜F1）として説明を行う。
【００３７】
図8により暈けフィルタと暈け画像の関係を説明する。モーションブラー算出部306は、注目フレーム画像の暈けフィルタサイズF(i)に基づき、振幅x0の手振れ時にはF0×1の平均化フィルタ（図8(b)）、振幅x1の手振れ時にはF1×1の平均化フィルタ（図8(c)）を暈けフィルタとして算出する。
【００３８】
次に、モーションブラー算出部306は、暈けの空間周波数特性のレファレンスになる点光源画像（図8(a)）と、算出した暈けフィルタの畳み込み演算を行って、手振れにより暈けた点光源画像（例えば図8(d)(e)）を生成する(S603)。図8(d)は点光源画像と暈けフィルタF0×1の畳み込み演算により得られる暈け画像を示し、図8(e)は点光源画像と暈けフィルタF1×1の畳み込み演算により得られる暈け画像を示す。
【００３９】
次に、モーションブラー算出部306は、暈け画像をフーリエ変換した画像を生成する(S604)。図8(f)は図8(d)に示す暈け画像のフーリエ変換画像を示し、図8(g)は図8(e)に示す暈け画像のフーリエ変換画像を示す。そして、モーションブラー算出部306は、フーリエ変換画像から、手振れに伴い画像上に生じるモーションブラーの空間周波数特性を算出する(S605)。
【００４０】
図9によりフーリエ変換画像から算出される暈けの空間周波数特性を説明する。図9において、縦軸はフーリエ変換画像の強度を示し、横軸は空間周波数（サイクル/画素）を示す。図9(a)は図8(f)に示すフーリエ変換画像の空間周波数特性を示し、図9(b)は図8(g)に示すフーリエ変換画像の空間周波数特性を示す。
【００４１】
モーションブラー算出部306は、算出した空間周波数特性において、強度が0.5になる空間周波数（図9(a)の場合はf0、図9(b)の場合はf1）をモーションブラー量fc(i)に決定する(S606)。図7(b)により図7(a)の手振れ速度vに対して算出されるモーションブラー量fcを示す。図7(b)において、縦軸はモーションブラー量fc（単位はサイクル/画素）、横軸はフレーム番号iを示す。
【００４２】
●制限値算出部
図10のフローチャートにより制限値算出部307の処理(S405)を説明する。制限値算出部307は、被写体の空間周波数に対して、暈けを知覚する被写体速さ（以下、暈け知覚速度）を示すデータを例えばROM203から取得する(S701)。なお、ステップS701における取得は一連の動画データの処理に対して一回行えばよい。
【００４３】
図11により被写体の移動速度に応じた視覚の空間周波数応答特性および暈け知覚速度を示す。図11(a)において、縦軸は空間周波数応答の強度を示し、横軸は空間周波数（単位はサイクル/画素）を示す。ここでは、非特許文献1に示される視覚の空間周波数応答特性を用いる。視覚の空間周波数応答特性は下式で与えられる。
vtf(ρ, vR) = k・c0・c1・c2・vR・(c12πρ)2exp(-c14πρ/ρmax)  …(4)
ここで、k = s1 + s2|log(c2vR/3)|3
ρmax = p1/(c2vR+2)
ρは動画視聴時における被写体の空間周波数（サイクル/度）、
vRは動画視聴時における被写体速さ（度/秒）、
s1=6.1、s2=7.3、p1=45.9、
c0=0.6329、c1=0.8404、c2=0.7986。
【００４４】
ρの単位（サイクル/度）とステップS606で算出したモーションブラー量fcの単位（サイクル/画素）、vRの単位（度/秒）とステップS601で算出した手振れ速度vの単位（画素/フレーム）が一致するようにリサンプリングする。リサンプリングした視覚の空間周波数応答特性VTF(f, v)は下式に従う。
VTF(f, v) = vtf[{Rπ/(Nx・p・180)}f, {(Nx・p・180)/Rπ}fps・v]  …(5)
ここで、pは動画を視聴するディスプレイの画素ピッチ(mm)、
Rは視距離(mm)、
Nxは映像のx方向の画素数、
fpsは視聴時のフレームレート(フレーム/秒）、
p、R、Nx、fpsの値は一般的なユーザ視聴環境に基づいて定める。
【００４５】
図11(a)に示す二つの曲線は、被写体速さがV0とV1の場合の視覚の空間周波数応答特性VTF(f, v)を示し、それぞれ空間周波数がf0とf1において応答強度が0.5になる。式(5)のVTF(f, v)に対して、被写体の空間周波数fを変化させたときにVTF=0.5を満たす被写体の速さvを算出すれば、被写体の空間周波数fと暈け知覚速度の関係を取得することができる。図11(b)は被写体の空間周波数fと暈け知覚速度の関係を示す。図11(b)において、縦軸は暈け知覚速度（単位は画素/フレーム）を示し、横軸は被写体の空間周波数f（単位はサイクル/画素）を示す。
【００４６】
次に、制限値算出部307は、暈け知覚速度のデータを参照して、手振れに伴うモーションブラーを知覚する速度vVTFを取得する(S702)。つまり、図11(b)に示すのVTF=0.5の曲線を参照して、ステップS606で算出したモーションブラー量fcに対応する暈け知覚速度を、手振れに伴うモーションブラー知覚速度|vVTF|として取得する。
【００４７】
次に、制限値算出部307は、次式により、フレーム画像iのモーションブラー知覚速度vVTF(i)を設定（調整）する(S703)。
if (|vVTF(i)|＞Vth)
vVTF(i) = {v(i)/|v(i)|}|vVTF(i)|；
else
vVTF(i) = 0；            …(6)
ここで、Vthは所定の閾値。
【００４８】
つまり、閾値以下（｜vVTF(i)｜≦Vth）の小さな手振れの場合、手振れに伴うモーションブラーが充分に小さいと見做して手振れ補正により被写体を静止させるために、モーションブラー知覚速度vVTF(i)=0に調整する。なお、振幅x0の手振れ時のモーションブラー知覚速度をVm0（単位は画素/フレーム）、振幅x1の手振れ時のモーションブラー知覚速度をVm1とする。
【００４９】
次に、制限値算出部307は、下式により、フレーム画像iにおける補正制限値xVTF(i)を算出する(S704)。つまり、前フレームにおける補正制限値xVTF(i-1)と、前フレームのモーションブラー知覚速度vVTF(i-1)の和を注目フレームiの制限値xVTF(i)とする。
xVTF(i) = xVTF(i-1) + vVTF(i-1)      …(7)
ただし、フレーム番号0の補正制限値xVTF(0)=0。
【００５０】
図12によりモーションブラー知覚速度vVTFと補正制限値xVTFの関係を示す。図12(a)は式(6)に従い算出されるモーションブラー知覚速度vVTFであり、縦軸はモーションブラー知覚速度vVTF（単位は画素/フレーム、フレーム画像の間の位置ずれ量に相当）を示し、横軸はフレーム番号iを示す。振幅x0の手振れ時は被写体が静止していてもモーションブラーが知覚されないので速度Vm0=0になる。また、振幅x1の手振れ時はモーションブラーが知覚されない速度Vm1＞0になる。
【００５１】
図12(b)は式(7)に従い算出される補正制限値xVTFであり、縦軸は補正制限値xVTF（単位は画素）を示し、横軸はフレーム番号iを示す。振幅x0の手振れ時は被写体が静止していてもモーションブラーが知覚されないので補正制限値はLx0=0になる。また、振幅x1の手振れ時はモーションブラーが知覚されない補正制限値Lx1＞0になる。
【００５２】
撮像装置によって撮影された動画データに、画像処理部214による上記の手振れ補正処理を施すことで、手振れに伴うモーションブラーが目立たない映像の観察が可能になる。図13により実施例の手振れ補正処理後の動画データにおける位置ずれ量を示す。図13において、縦軸は手振れ補正後の画像の位置ずれ量（単位は画素）を示し、横軸はフレーム番号iを示す。
【００５３】
図13に点線で示す手振れ補正前の位置ずれ量は、実線で示す手振れ補正後の位置ずれ量に抑制される。実施例においては、手振れ補正処理後の動画データの位置ずれ量を、手振れに伴うモーションブラーが知覚されない（少なくとも目立たない）位置ずれ量（補正制限値）に抑える。
【００５４】
図14により手振れ補正後の動画像の一部のフレーム画像を示す。なお、図14は、図1に示すフレーム画像に実施例の手振れ補正を施したフレーム画像を示している。図14(a)(c)に示す振幅x0の手振れ時は補正制限値Lx0=0として、被写体を静止させた動画データを生成する。一方、図14(b)(d)に示す振幅x1の手振れ時は補正制限値Lx1として、モーションブラーが目立たない程度の振幅x1-x1'=Lx1に抑制した位置ずれが残る動画データを生成する。
【００５５】
このように、被写体速度に関連する人間の視覚の空間周波数応答特性に基づき、手振れ補正の強度を制御することで、手振れに伴うモーションブラーが目立たない手振れ補正処理を行うことができる。従って、ユーザによる補正強度の設定なしに、大きな手振れが発生した場合も被写体上のモーションブラーが目立たない手振れ補正処理を行うことができる。
【００５６】
［変形例］
上記では、撮像装置を手に持つユーザが静止した矩形波チャートを撮影すると仮定して、手振れ量に相当する画像の位置ずれ量xを取得する例を説明した。ユーザまたは被写体が動いていて、被写体をトラッキングしながら撮影する場合も手振れ量を取得することができる。そのような場合、撮影時における撮像装置の三次元空間上の軌跡をStructure From Motion (SFM)などを用いて算出する。そして、撮像装置の軌跡をローパスフィルタ処理して得た軌跡をカメラワークとして、撮像装置の軌跡とカメラワークの間の差分を手振れ量として取得する。なお、SFMは、例えば、あるシーンを撮像装置の視点を変えながら撮影した複数の画像から当該シーンの三次元形状と撮像装置の三次元位置を同時に復元する手法である。
【００５７】
また、上記では、手振れ量を示す位置ずれ量xを動画データからブロックマッチング法や勾配法などの位置合わせアルゴリズムを用いて取得する例を説明したが、ジャイロセンサなどの外部装置を用いて手振れ量を取得してもよい。
【００５８】
また、上記では、手振れに伴うモーションブラーが知覚されない（少なくとも目立たない）画像の位置ずれ量を補正制限値として、手振れ補正に適用する補正量を算出する例を説明した。さらに、補正後の動画データに対する画角維持などの条件を加えた重み付け処理により補正量を算出してもよい。また、モードダイヤルなどを用いて補正量の強弱を設定可能にしてもよい。
【００５９】
また、上記では、式(4)に基づき視覚の空間周波数応答特性を算出する例を説明したが、本発明は、特定モデルの空間周波数応答特性に限定されるわけではない。例えば、非特許文献2などに示された、他の視覚の空間周波数応答特性や実測データなどを用いてもよい。
【００６０】
一般に、視覚の空間周波数応答特性は、バンドパス特性をもつことが知られている。例えば、静止した被写体を観察する場合、視覚の空間周波数応答特性は4-5サイクル/度付近にピークをもつバンドパス特性になる。これに対して、視線が被写体を追従する場合、高周波数側の感度が下がり、低周波数側の感度が上がることが知られている。このため、本発明に適用する追従視時の視覚の空間周波数応答特性は、被写体の動きが大きくなるにつれて、応答のピークが低周波数側へシフトするバンドパス特性であればよい。
【００６１】
また、上記では、暈けフィルタとして、手振れ速度に比例するサイズの平均化フィルタを用いる例を説明したが、フィルタ内の各重み付け係数は同一値である必要はなく、任意の重み付け係数を用いてよい。また、手振れの方向がx方向のみの場合を説明したが、二次元の動きの手振れに対応する場合は二次元の暈けフィルタを用いればよい。
【００６２】
［その他の実施例］
本発明は、上述の実施形態の一以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける一以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、一以上の機能を実現する回路（例えば、ASIC）によっても実現可能である。
【符号の説明】
【００６３】
305 … 位置ずれ量取得部、306 … モーションブラー算出部、307 … 制限値算出部、308 … 補正量設定部
【図２】
2017079378.tif 000003
【図３】
2017079378.tif 000004
【図４】
2017079378.tif 000005
【図５】
2017079378.tif 000006
【図６】
2017079378.tif 000007
【図７】
2017079378.tif 000008
【図９】
2017079378.tif 000009
【図１０】
2017079378.tif 000010
【図１１】
2017079378.tif 000011
【図１２】
2017079378.tif 000012
【図１３】
2017079378.tif 000013
【図１】
2017079378.tif 000014
【図８】
2017079378.tif 000015
【図１４】
2017079378.tif 000016