(57)【要約】【課題】  この発明は、精度の高い手ぶれ補正が行えるようになる手ぶれ補正装置を提供することを目的とする。【解決手段】  入力フレームと入力フレームに対して時間的に１つ前のフレームとの間の幾何変換係数を、隣接フレーム間の幾何変換係数として算出する第１手段、基準フレームから入力フレームまでの間の各隣接フレーム間の幾何変換係数を累積することによって、入力フレームと基準フレームとの間の間接的な幾何変換係数を算出する第２手段、入力フレームと基準フレームとの間の間接的な幾何変換係数を利用して、入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する第３手段、および入力フレームと基準フレームとの間の直接的な幾何変換係数を用いて、入力フレームの手ぶれ補正を行う第４手段を備えている。【選択図】  図６
2005094614.tif 000002
【特許請求の範囲】
【請求項１】
基準フレームから任意フレーム数先のフレームまでの範囲内において、動画像データの手ぶれ補正を行う手ぶれ補正装置において、
入力フレームと入力フレームに対して時間的に１つ前のフレームとの間の幾何変換係数であって、入力フレーム上の座標を入力フレームに対して時間的に１つ前のフレーム上の座標に変換するための幾何変換係数を、隣接フレーム間の幾何変換係数として算出する第１手段、
基準フレームから入力フレームまでの間の各隣接フレーム間の幾何変換係数を累積することによって、入力フレームと基準フレームとの間の間接的な幾何変換係数を算出する第２手段、
入力フレームと基準フレームとの間の間接的な幾何変換係数を利用して、入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する第３手段、および
入力フレームと基準フレームとの間の直接的な幾何変換係数を用いて、入力フレームの手ぶれ補正を行う第４手段、
を備えていることを特徴とする手ぶれ補正装置。
【請求項２】
第３手段は、入力フレームから複数の特徴点を求める手段、各特徴点毎に基準フレーム上の対応点を求める手段、および入力フレーム上の各特徴点と各特徴点の基準フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する手段を備え、
各特徴点毎に基準フレーム上の対応点を求める手段は、入力フレームと基準フレームとの間の間接的な幾何変換係数を用いて入力フレーム上の特徴点の座標を基準フレーム上の座標に座標変換し、得られた基準フレーム上の座標点を初期値として、入力フレーム上の特徴点に対応する基準フレーム上の対応点を追跡することによって、入力フレーム上の特徴点に対応する基準フレーム上の対応点を求めるものであることを特徴とする請求項１に記載の手ぶれ補正装置。
【請求項３】
第３手段は、基準フレームから複数の特徴点を求める手段、各特徴点毎に入力フレーム上の対応点を求める手段、および基準フレーム上の各特徴点と各特徴点の入力フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する手段を備え、
各特徴点毎に入力フレーム上の対応点を求める手段は、入力フレームと基準フレームとの間の間接的な幾何変換係数を逆変換することによって得られる係数を用いて基準フレーム上の特徴点の座標を入力フレーム上の座標に座標変換し、得られた入力フレーム上の座標点を初期値として、基準フレーム上の特徴点に対応する入力フレーム上の対応点を追跡することによって、基準フレーム上の特徴点に対応する入力フレーム上の対応点を求めるものであることを特徴とする請求項１に記載の手ぶれ補正装置。
【請求項４】
基準フレームから任意フレーム数先のフレームまでの範囲内において、動画像データの手ぶれ補正を行う手ぶれ補正方法において、
入力フレームと入力フレームに対して時間的に１つ前のフレームとの間の幾何変換係数であって、入力フレーム上の座標を入力フレームに対して時間的に１つ前のフレーム上の座標に変換するための幾何変換係数を、隣接フレーム間の幾何変換係数として算出する第１ステップ、
基準フレームから入力フレームまでの間の各隣接フレーム間の幾何変換係数を累積することによって、入力フレームと基準フレームとの間の間接的な幾何変換係数を算出する第２ステップ、
入力フレームと基準フレームとの間の間接的な幾何変換係数を利用して、入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する第３ステップ、および
入力フレームと基準フレームとの間の直接的な幾何変換係数を用いて、入力フレームの手ぶれ補正を行う第４ステップ、
を備えていることを特徴とする手ぶれ補正方法。
【請求項５】
第３ステップは、入力フレームから複数の特徴点を求める手段、各特徴点毎に基準フレーム上の対応点を求めるステップ、および入力フレーム上の各特徴点と各特徴点の基準フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出するステップを備え、
各特徴点毎に基準フレーム上の対応点を求めるステップは、入力フレームと基準フレームとの間の間接的な幾何変換係数を用いて入力フレーム上の特徴点の座標を基準フレーム上の座標に座標変換し、得られた基準フレーム上の座標点を初期値として、入力フレーム上の特徴点に対応する基準フレーム上の対応点を追跡することによって、入力フレーム上の特徴点に対応する基準フレーム上の対応点を求めるものであることを特徴とする請求項４に記載の手ぶれ補正方法。
【請求項６】
第３ステップは、基準フレームから複数の特徴点を求めるステップ、各特徴点毎に入力フレーム上の対応点を求めるステップ、および基準フレーム上の各特徴点と各特徴点の入力フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出するステップを備え、
各特徴点毎に入力フレーム上の対応点を求めるステップは、入力フレームと基準フレームとの間の間接的な幾何変換係数を逆変換することによって得られる係数を用いて基準フレーム上の特徴点の座標を入力フレーム上の座標に座標変換し、得られた入力フレーム上の座標点を初期値として、基準フレーム上の特徴点に対応する入力フレーム上の対応点を追跡することによって、基準フレーム上の特徴点に対応する入力フレーム上の対応点を求めるものであることを特徴とする請求項４に記載の手ぶれ補正方法。
【請求項７】
基準フレームから任意フレーム数先のフレームまでの範囲内において、動画像データの動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体において、
入力フレームと入力フレームに対して時間的に１つ前のフレームとの間の幾何変換係数であって、入力フレーム上の座標を入力フレームに対して時間的に１つ前のフレーム上の座標に変換するための幾何変換係数を、隣接フレーム間の幾何変換係数として算出する第１ステップ、
基準フレームから入力フレームまでの間の各隣接フレーム間の幾何変換係数を累積することによって、入力フレームと基準フレームとの間の間接的な幾何変換係数を算出する第２ステップ、
入力フレームと基準フレームとの間の間接的な幾何変換係数を利用して、入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する第３ステップ、および
入力フレームと基準フレームとの間の直接的な幾何変換係数を用いて、入力フレームの手ぶれ補正を行う第４ステップ、
をコンピュータに実行させるための手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項８】
第３ステップは、入力フレームから複数の特徴点を求める手段、各特徴点毎に基準フレーム上の対応点を求めるステップ、および入力フレーム上の各特徴点と各特徴点の基準フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出するステップを備え、
各特徴点毎に基準フレーム上の対応点を求めるステップは、入力フレームと基準フレームとの間の間接的な幾何変換係数を用いて入力フレーム上の特徴点の座標を基準フレーム上の座標に座標変換し、得られた基準フレーム上の座標点を初期値として、入力フレーム上の特徴点に対応する基準フレーム上の対応点を追跡することによって、入力フレーム上の特徴点に対応する基準フレーム上の対応点を求めるものであることを特徴とする請求項７に記載の手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体。    
【請求項９】
第３ステップは、基準フレームから複数の特徴点を求めるステップ、各特徴点毎に入力フレーム上の対応点を求めるステップ、および基準フレーム上の各特徴点と各特徴点の入力フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出するステップを備え、
各特徴点毎に入力フレーム上の対応点を求めるステップは、入力フレームと基準フレームとの間の間接的な幾何変換係数を逆変換することによって得られる係数を用いて基準フレーム上の特徴点の座標を入力フレーム上の座標に座標変換し、得られた入力フレーム上の座標点を初期値として、基準フレーム上の特徴点に対応する入力フレーム上の対応点を追跡することによって、基準フレーム上の特徴点に対応する入力フレーム上の対応点を求めるものであることを特徴とする請求項７に記載の手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１０】
動画像データの手ぶれ補正を行う手ぶれ補正装置において、
各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１手段、および各入力フレーム毎に、出力フレームを生成する第２手段を備えており、
第２手段は、出力フレーム用メモリをクリアする手段、入力フレームを、第１手段によって算出されたそれに対応する幾何変換係数に基づいて幾何変換する手段、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする手段、および出力フレーム用メモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間する手段を備えていることを特徴とする手ぶれ補正装置。
【請求項１１】
動画像データの手ぶれ補正を行う手ぶれ補正方法において、
各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１ステップ、および各入力フレーム毎に、出力フレームを生成する第２ステップを備えており、
第２ステップは、出力フレーム用メモリをクリアするステップ、入力フレームを、第１ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換するステップ、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングするステップ、および出力フレームメモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間するステップを備えていることを特徴とする手ぶれ補正方法。
【請求項１２】
動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１ステップ、および各入力フレーム毎に、出力フレームを生成する第２ステップをコンピュータに実行させるための手ぶれ補正処理プログラムを記録しており、
第２ステップは、出力フレーム用メモリをクリアするステップ、入力フレームを、第１ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換するステップ、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングするステップ、および出力フレームメモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間するステップを備えていることを特徴とする手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１３】
動画像データの手ぶれ補正を行う手ぶれ補正装置において、
各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１手段、各入力フレーム毎に、入力フレームを、第１手段によって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第２手段、および第２手段によるレンダリング結果を保持する第３手段を備えており、
第２手段は、２番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする手ぶれ補正装置。
【請求項１４】
動画像データの手ぶれ補正を行う手ぶれ補正方法において、
各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１ステップ、各入力フレーム毎に、入力フレームを、第１ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第２ステップ、および第２ステップによるレンダリング結果を保持する第３ステップを備えており、
第２ステップは、２番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする手ぶれ補正方法。
【請求項１５】
動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１ステップ、各入力フレーム毎に、入力フレームを、第１ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第２ステップ、および第２ステップによるレンダリング結果を保持する第３ステップをコンピュータに実行させるための手ぶれ補正処理プログラムを記録しており、
第２ステップは、２番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
従来から、ビデオカメラ等の撮像装置によって撮像された画像に対して、手ぶれ補正を行う手ぶれ補正装置が知られている。図１は、手ぶれ補正装置のブロック図である。手ぶれ補正装置は、フレーム入力部５０、幾何変換係数算出部５１、手ぶれ補正部５２およびフレーム出力部５３を備えている。
【０００３】
幾何変換係数算出部５１は、たとえば、複数フレームからマッチングなどの画像処理を利用して幾何変換係数を算出する。手ぶれ補正部５２は、幾何変換係数算出部５１によって算出された幾何変換係数を用いて、一旦メモリに記憶した入力フレームを幾何変換する。
【０００４】
幾何変換係数は、次式（１）に示すように３×３の行列で表され、２フレーム間の世界座標変換の係数に相当する。
【０００５】
【数１】
2005094614.tif 000003
【０００６】
図２は、画像処理を用いて幾何変換係数を算出し、入力フレームを幾何変換することにより手ぶれ補正を行う場合の補正処理手順を示している。
【０００７】
開始フレーム（基準フレーム）をＦS 、現在の入力フレームをＦ2 、現在の入力フレームＦ2 より１つ前の入力フレームをＦ1 、フレームＦ1 ，Ｆ2 間の幾何変換係数（フレームＦ2 上の座標をフレームＦ1 上の座標に変換するための幾何変換係数）をＭ12、フレームＦS ，Ｆ1 間の幾何変換係数をＭS1、フレームＦS ，Ｆ2 間の累積幾何変換係数（フレームＦ2 上の座標をフレームＦS 上の座標に変換するための累積幾何変換係数）をＭS2とする。
【０００８】
開始フレームから終了フレームまでの各フレームに対して次のような処理が行われる。つまり、出力フレーム用メモリをクリアした後（ステップ１００）、フレームを作業メモリ上に読み込み、読み込んだフレーム（入力フレーム）をＦ2 とする（ステップ１０１）。
【０００９】
次に、入力フレームＦ2 が開始フレームＦS であるか否かを判別する（ステップ１０２）。入力フレームＦ2 が開始フレームＦS であると判別した場合には、開始フレームＦS と入力フレームＦ2 との間の累積幾何変換係数ＭS2として、式（２）に示すような変換無しを表す係数（初期値）をセットする（ステップ１０３）。
【００１０】
【数２】
2005094614.tif 000004
【００１１】
そして、１つ前の入力フレームＦ1 として入力フレームＦ2 をセットするとともに、開始フレームＦS と１つ前の入力フレームＦ1 との間の幾何変換係数ＭS1としてＭS2をセットする（ステップ１０４）。また、入力フレームＦ2 のデータをそのまま出力フレーム用メモリにレンダリングする（ステップ１０５）。この後、ステップ１００に戻って、出力フレーム用メモリをクリアするとともに、次のフレームを読み込む。  
【００１２】
上記ステップ１０２において、入力フレームＦ2 が開始フレームＦS でないと判別された場合には、前フレームＦ1 と現フレームＦ2 との間の幾何変換係数Ｍ12を算出する（ステップ１０６）。次に、式（３）に示すようＭS1とＭ12から開始フレームＦS と現フレームＦ2 との間の累積幾何変換係数ＭS2を算出する（ステップ１０７）。
【００１３】
【数３】
2005094614.tif 000005
【００１４】
そして、１つ前の入力フレームＦ1 として入力フレームＦ2 をセットするとともに、開始フレームＦS と１つ前の入力フレームＦ1 との間の幾何変換係数ＭS1としてＭS2をセットする（ステップ１０８）。また、入力フレームＦ2 を累積幾何変換係数ＭS2で幾何変換した後、出力フレーム用メモリに幾何変換後のフレームをレンダリングする（ステップ１０９）。この後、ステップ１００に戻って、出力フレーム用メモリをクリアするとともに、次のフレームを読み込む。
【００１５】
２フレーム間の幾何変換係数の代表的な算出方法を以下に示す（特開平１１−３３９０２１号公報参照）。まず、一方のフレーム上からエッジ部などの特徴点を抽出する。次に、フレーム間で特徴点の追跡（マッチング）を行い、一方のフレーム上の特徴点に対する他方のフレーム上の対応点を求める。１組の対応点（ｘ１，ｙ１）・（ｘ１’，ｙ１’）から式（４）のように２つの方程式が得られるので、３組以上の対応点を検出することにより６つ以上の方程式を導出する。これらの方程式から、未知数の幾何変換係数を線形解法で算出する。
【００１６】
【数４】
2005094614.tif 000006
【００１７】
従来の幾何変換係数の算出方法では、開始フレームＦS と入力フレームＦ2 間の累積幾何変換係数を、開始フレームＦS から入力フレームＦ2 までの間の各隣接フレーム間の幾何変換係数を累積することによって算出しているので、入力フレーム数が増加するに従い、隣接フレーム間の幾何変換係数の算出誤差が蓄積されるという問題がある。すなわち、途中フレームで幾何変換係数を大きく間違って算出した場合、その間違った変換係数で補正されたフレームを基準にそれ以降のフレームが補正されるという問題がある。
【００１８】
また、従来の手ぶれ補正方法では、出力フレーム用メモリの中でレンダリングされない領域が発生するという問題がある。つまり、手ぶれがある状態で撮像されたフレームが図３（ａ）〜（ｄ）で示すようなフレームである場合には、それらのフレームの幾何変換後のデータを出力フレーム用メモリにレンダリングした画像は、図４（ａ）〜（ｄ）で示すようになる。図４（ｂ）〜（ｄ）において斜線部が未レンダリング領域となる。
【００１９】
【特許文献１】特開平１１−３３９０２１号公報
【特許文献２】特許第２８９２６８５号公報
【発明の開示】
【発明が解決しようとする課題】
【００２０】
この発明は、基準フレームと入力フレーム間の幾何変換係数を精度良く求めることができ、この結果、精度の高い手ぶれ補正が行えるようになる手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体を提供することを目的とする。
【００２１】
また、この発明は、手ぶれ補正後の画像が格納される出力フレーム用メモリ領域において、レンダリングされない領域が発生するのを回避することができる手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体を提供することを目的とする。
【００２２】
また、この発明は、手ぶれ補正後の画像が格納される出力フレーム用メモリ領域において、レンダリングされない領域が発生するのを回避し、画角を保持したまま、画質の劣化を低減することができる手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００２３】
請求項１に記載の発明は、基準フレームから任意フレーム数先のフレームまでの範囲内において、動画像データの手ぶれ補正を行う手ぶれ補正装置において、入力フレームと入力フレームに対して時間的に１つ前のフレームとの間の幾何変換係数であって、入力フレーム上の座標を入力フレームに対して時間的に１つ前のフレーム上の座標に変換するための幾何変換係数を、隣接フレーム間の幾何変換係数として算出する第１手段、基準フレームから入力フレームまでの間の各隣接フレーム間の幾何変換係数を累積することによって、入力フレームと基準フレームとの間の間接的な幾何変換係数を算出する第２手段、入力フレームと基準フレームとの間の間接的な幾何変換係数を利用して、入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する第３手段、および入力フレームと基準フレームとの間の直接的な幾何変換係数を用いて、入力フレームの手ぶれ補正を行う第４手段を備えていることを特徴とする。
【００２４】
請求項２に記載の発明は、請求項１に記載の発明において、第３手段は、入力フレームから複数の特徴点を求める手段、各特徴点毎に基準フレーム上の対応点を求める手段、および入力フレーム上の各特徴点と各特徴点の基準フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する手段を備え、各特徴点毎に基準フレーム上の対応点を求める手段は、入力フレームと基準フレームとの間の間接的な幾何変換係数を用いて入力フレーム上の特徴点の座標を基準フレーム上の座標に座標変換し、得られた基準フレーム上の座標点を初期値として、入力フレーム上の特徴点に対応する基準フレーム上の対応点を追跡することによって、入力フレーム上の特徴点に対応する基準フレーム上の対応点を求めるものであることを特徴とする。
【００２５】
請求項３に記載の発明は、請求項１に記載の発明において、第３手段は、基準フレームから複数の特徴点を求める手段、各特徴点毎に入力フレーム上の対応点を求める手段、および基準フレーム上の各特徴点と各特徴点の入力フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する手段を備え、各特徴点毎に入力フレーム上の対応点を求める手段は、入力フレームと基準フレームとの間の間接的な幾何変換係数を逆変換することによって得られる係数を用いて基準フレーム上の特徴点の座標を入力フレーム上の座標に座標変換し、得られた入力フレーム上の座標点を初期値として、基準フレーム上の特徴点に対応する入力フレーム上の対応点を追跡することによって、基準フレーム上の特徴点に対応する入力フレーム上の対応点を求めるものであることを特徴とする。
【００２６】
請求項４に記載の発明は、基準フレームから任意フレーム数先のフレームまでの範囲内において、動画像データの手ぶれ補正を行う手ぶれ補正方法において、入力フレームと入力フレームに対して時間的に１つ前のフレームとの間の幾何変換係数であって、入力フレーム上の座標を入力フレームに対して時間的に１つ前のフレーム上の座標に変換するための幾何変換係数を、隣接フレーム間の幾何変換係数として算出する第１ステップ、基準フレームから入力フレームまでの間の各隣接フレーム間の幾何変換係数を累積することによって、入力フレームと基準フレームとの間の間接的な幾何変換係数を算出する第２ステップ、入力フレームと基準フレームとの間の間接的な幾何変換係数を利用して、入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する第３ステップ、および入力フレームと基準フレームとの間の直接的な幾何変換係数を用いて、入力フレームの手ぶれ補正を行う第４ステップを備えていることを特徴とする。
【００２７】
請求項５に記載の発明は、請求項４に記載の発明において、第３ステップは、入力フレームから複数の特徴点を求める手段、各特徴点毎に基準フレーム上の対応点を求めるステップ、および入力フレーム上の各特徴点と各特徴点の基準フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出するステップを備え、各特徴点毎に基準フレーム上の対応点を求めるステップは、入力フレームと基準フレームとの間の間接的な幾何変換係数を用いて入力フレーム上の特徴点の座標を基準フレーム上の座標に座標変換し、得られた基準フレーム上の座標点を初期値として、入力フレーム上の特徴点に対応する基準フレーム上の対応点を追跡することによって、入力フレーム上の特徴点に対応する基準フレーム上の対応点を求めるものであることを特徴とする。
【００２８】
請求項６に記載の発明は、請求項４に記載の発明において、第３ステップは、基準フレームから複数の特徴点を求めるステップ、各特徴点毎に入力フレーム上の対応点を求めるステップ、および基準フレーム上の各特徴点と各特徴点の入力フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出するステップを備え、各特徴点毎に入力フレーム上の対応点を求めるステップは、入力フレームと基準フレームとの間の間接的な幾何変換係数を逆変換することによって得られる係数を用いて基準フレーム上の特徴点の座標を入力フレーム上の座標に座標変換し、得られた入力フレーム上の座標点を初期値として、基準フレーム上の特徴点に対応する入力フレーム上の対応点を追跡することによって、基準フレーム上の特徴点に対応する入力フレーム上の対応点を求めるものであることを特徴とする。
【００２９】
請求項７に記載の発明は、基準フレームから任意フレーム数先のフレームまでの範囲内において、動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体において、入力フレームと入力フレームに対して時間的に１つ前のフレームとの間の幾何変換係数であって、入力フレーム上の座標を入力フレームに対して時間的に１つ前のフレーム上の座標に変換するための幾何変換係数を、隣接フレーム間の幾何変換係数として算出する第１ステップ、基準フレームから入力フレームまでの間の各隣接フレーム間の幾何変換係数を累積することによって、入力フレームと基準フレームとの間の間接的な幾何変換係数を算出する第２ステップ、入力フレームと基準フレームとの間の間接的な幾何変換係数を利用して、入力フレームと基準フレームとの間の直接的な幾何変換係数を算出する第３ステップ、および入力フレームと基準フレームとの間の直接的な幾何変換係数を用いて、入力フレームの手ぶれ補正を行う第４ステップをコンピュータに実行させるための手ぶれ補正処理プログラムを記録していることを特徴とする。
【００３０】
請求項８に記載の発明は、請求項７に記載の発明において、第３ステップは、入力フレームから複数の特徴点を求める手段、各特徴点毎に基準フレーム上の対応点を求めるステップ、および入力フレーム上の各特徴点と各特徴点の基準フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出するステップを備え、各特徴点毎に基準フレーム上の対応点を求めるステップは、入力フレームと基準フレームとの間の間接的な幾何変換係数を用いて入力フレーム上の特徴点の座標を基準フレーム上の座標に座標変換し、得られた基準フレーム上の座標点を初期値として、入力フレーム上の特徴点に対応する基準フレーム上の対応点を追跡することによって、入力フレーム上の特徴点に対応する開始フレーム上の対応点を求めるものであることを特徴とする。
【００３１】
請求項９に記載の発明は、請求項７に記載の発明において、第３ステップは、基準フレームから複数の特徴点を求めるステップ、各特徴点毎に入力フレーム上の対応点を求めるステップ、および基準フレーム上の各特徴点と各特徴点の入力フレーム上の対応点とに基づいて入力フレームと基準フレームとの間の直接的な幾何変換係数を算出するステップを備え、各特徴点毎に入力フレーム上の対応点を求めるステップは、入力フレームと基準フレームとの間の間接的な幾何変換係数を逆変換することによって得られる係数を用いて基準フレーム上の特徴点の座標を入力フレーム上の座標に座標変換し、得られた入力フレーム上の座標点を初期値として、基準フレーム上の特徴点に対応する入力フレーム上の対応点を追跡することによって、基準フレーム上の特徴点に対応する入力フレーム上の対応点を求めるものであることを特徴とする。
【００３２】
請求項１０に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正装置において、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１手段、および各入力フレーム毎に、出力フレームを生成する第２手段を備えており、第２手段は、出力フレーム用メモリをクリアする手段、入力フレームを、第１手段によって算出されたそれに対応する幾何変換係数に基づいて幾何変換する手段、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする手段、および出力フレーム用メモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間する手段を備えていることを特徴とする。
【００３３】
請求項１１に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正方法において、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１ステップ、および各入力フレーム毎に、出力フレームを生成する第２ステップを備えており、第２ステップは、出力フレーム用メモリをクリアするステップ、入力フレームを、第１ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換するステップ、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングするステップ、および出力フレームメモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間するステップを備えていることを特徴とする。
【００３４】
請求項１２に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１ステップ、および各入力フレーム毎に、出力フレームを生成する第２ステップをコンピュータに実行させるための手ぶれ補正処理プログラムを記録しており、第２ステップは、出力フレーム用メモリをクリアするステップ、入力フレームを、第１ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換するステップ、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングするステップ、および出力フレームメモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間するステップを備えていることを特徴とする。
【００３５】
請求項１３に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正装置において、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１手段、各入力フレーム毎に、入力フレームを、第１手段によって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第２手段、および第２手段によるレンダリング結果を保持する第３手段を備えており、第２手段は、２番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする。
【００３６】
請求項１４に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正方法において、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１ステップ、各入力フレーム毎に、入力フレームを、第１ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第２ステップ、および第２ステップによるレンダリング結果を保持する第３ステップを備えており、第２ステップは、２番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする。
【００３７】
請求項１５に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第１ステップ、各入力フレーム毎に、入力フレームを、第１ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第２ステップ、および第２ステップによるレンダリング結果を保持する第３ステップをコンピュータに実行させるための手ぶれ補正処理プログラムを記録しており、第２ステップは、２番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする。
【発明の効果】
【００３８】
この発明によれば、基準フレームと入力フレーム間の幾何変換係数を精度良く求めることができ、この結果、精度の高い手ぶれ補正が行えるようになる。
【００３９】
また、この発明によれば、手ぶれ補正後の画像が格納される出力フレーム用メモリ領域において、レンダリングされない領域が発生するのを回避することができるようになる。      
【００４０】
また、この発明によれば、手ぶれ補正後の画像が格納される出力フレーム用メモリ領域において、レンダリングされない領域が発生するのを回避し、画角を保持したまま、画質の劣化を低減することができるようになる。
【発明を実施するための最良の形態】
【００４１】
以下、本発明の実施例について、説明する。
【実施例１】
【００４２】
［１］手ぶれ補正装置の説明
図５は、手ぶれ補正装置の構成を示している。
【００４３】
手ぶれ補正装置は、パーソナルコンピュータ（ＰＣ）１０によって実現される。ＰＣ１０には、ディスプレイ２１、マウス２２およびキーボード２３が接続されている。ＰＣ１０は、ＣＰＵ１１、メモリ１２、ハードディスク１３、ＣＤ−ＲＯＭのようなリムーバブルディスクのドライブ（ディスクドライブ）１４を備えている。
【００４４】
ハードディスク１３には、ＯＳ（オペレーションシステム）等の他、手ぶれ補正処理プログラムが格納されている。手ぶれ補正処理プログラムは、それが格納されたＣＤ−ＲＯＭ２０を用いて、ハードディスク１３にインストールされる。また、ハードディスク１３にはビデオカメラなどによって撮像された動画像ファイルが予め格納されているものとする。
【００４５】
［２］手ぶれ補正プログラムが起動せしめられた場合にＣＰＵによって行われる手ぶれ補正処理の説明
【００４６】
手ぶれ補正処理には、幾何変換係数算出処理と出力フレーム生成処理とが含まれている。まず、幾何変換係数算出処理が行われた後に、出力フレーム生成処理が行われる。
【００４７】
なお、この実施例においては、出力フレーム用メモリ内の未レンダリング領域に対して補間処理を行うか否かをユーザに予め設定させるようになっている。未レンダリング領域に対して補間処理を行う設定が行われている場合には、そのことを記憶するフラグ（以下、補間処理要否判定フラグという）flagがセット（flag＝１）された状態となっており、未レンダリング領域に対して補間処理を行う設定が行われてい場合には、そのことを記憶する補間処理要否判定フラグflagがリセット（flag＝０）された状態となっている。
【００４８】
手ぶれ補正処理では、手ぶれ補正を行う範囲の最初のフレーム（開始フレーム）を基準フレームとして、当該手ぶれ補正を行う範囲の他のフレームの手ぶれを補正する。なお、手ぶれ補正を行う範囲は、任意に設定することが可能である。
【００４９】
図６は、幾何変換係数算出処理手順を示している。
【００５０】
手ぶれ補正を行う範囲の開始フレーム（基準フレーム）をＦS 、手ぶれ補正を行う範囲内の現在の入力フレームをＦ2 、現在の入力フレームＦ2 より１つ前の入力フレームをＦ1 、フレームＦ1 ，Ｆ2 間の幾何変換係数（フレームＦ2 上の座標をフレームＦ1 上の座標に変換するための幾何変換係数）をＭ12、フレームＦS ，Ｆ1 間の幾何変換係数をＭS1、フレームＦS ，Ｆ2 間の累積幾何変換係数（フレームＦ2 上の座標をフレームＦS 上の座標に変換するための累積幾何変換係数）をＭS2とする。
【００５１】
手ぶれ補正を行う範囲の開始フレームから終了フレームまでの各フレームに対して次のような処理が行われる。つまり、まず、フレームをメモリ上に読み込み、読み込んだフレーム（入力フレーム）をＦ2 とする（ステップ１）。
【００５２】
次に、入力フレームＦ2 が開始フレームＦS であるか否かを判別する（ステップ２）。入力フレームＦ2 が開始フレームＦS であると判別した場合には、開始フレームＦS と入力フレームＦ2 との間の累積幾何変換係数ＭS2として、次式（５）に示すような変換無しを表す係数（初期値）をセットする（ステップ３）。
【００５３】
【数５】
2005094614.tif 000007
【００５４】
そして、１つ前の入力フレームＦ1 として入力フレームＦ2 をセットするとともに、開始フレームＦS と１つ前の入力フレームＦ1 との間の幾何変換係数ＭS1としてＭS2をセットする（ステップ４）。また、開始フレームＦS と入力フレームＦ2 との間の直接的な幾何変換係数Ｍ' S2としてＭS2をセットする（ステップ５）。この後、ステップ１に戻って、次のフレームが読み込まれる。
【００５５】
上記ステップ２において、入力フレームＦ2 が開始フレームＦS でないと判別された場合には、前フレームＦ1 と現フレームＦ2 との間の幾何変換係数Ｍ12を算出する（ステップ６）。次に、次式（６）に示すようＭS1とＭ12から開始フレームＦS と現フレームＦ2 との間の累積幾何変換係数ＭS2を算出する（ステップ７）。
【００５６】
【数６】
2005094614.tif 000008
【００５７】
そして、１つ前の入力フレームＦ1 として入力フレームＦ2 をセットするとともに、開始フレームＦS と１つ前の入力フレームＦ1 との間の幾何変換係数ＭS1としてＭS2をセットする（ステップ８）。
【００５８】
次に、上記ステップ７で算出された累積幾何変換係数ＭS2に基づいて、開始フレームＦS と入力フレームＦ2 との間の直接的な幾何変換係数Ｍ' S2を算出する（ステップ９）。この処理の詳細については、後述する。この後、ステップ１に戻って、次のフレームが読み込まれる。このような処理を最終フレームまで繰り返し行う。
【００５９】
図７は、図６のステップ９の処理の詳細な手順を示している。
【００６０】
まず、入力フレームＦ2 から複数の特徴点Ｐ2 を抽出する（ステップ１１）。特徴点とは、隣接画素の輝度値が急激に変化する点である。そして、各特徴点毎に、ステップ１２〜１４の処理が行われる。
【００６１】
１つの特徴点Ｐ2 を読み込む（ステップ１２）。そして、当該特徴点Ｐ2 を累積幾何変換係数ＭS2に基づいて開始フレームＦS 上に座標変換し、その点をＰ’2 とする（ステップ１３）。点Ｐ’2 を探索の初期値（探索開始点）として、点Ｐ2 に対応する開始フレームＦS 上の特徴点を追跡し、得られた点をＰ”2 とする（ステップ１４）。
【００６２】
ここで、特徴点の追跡は、勾配法によるオプティカルフロー推定を用いる。オプティカルフロー推定は、局所的な領域での物体の動きを前提としているため、開始フレームＦS と入力フレームＦ2 間で大きなカメラ運動がある場合、特徴点の動きを正確に検出できない。そこで、上記のように入力フレームＦ2 の特徴点Ｐ2 を累積幾何変換係数ＭS2で座標変換したＰ’2 を開始フレームＦS 上の追跡の初期値とすることで、開始フレームＦS と入力フレームＦ2 間に大きなカメラ運動があっても、微小の運動であると仮定され、特徴点の動きを正確に検出できるようになる。
【００６３】
上記ステップ１２〜１４の処理をステップ１１で抽出した全ての特徴点に対して行い、フレーム間の全特徴点の対応付け結果を得る。前述したように、各対応点から２つの方程式を導出し、全ての方程式から、未知数６の幾何変換係数を線形解法で算出する（ステップ１５）。算出した幾何変換係数をＭ’S2とする。
【００６４】
図８は、図６のステップ９の処理手順の他の例を示している。
【００６５】
まず、開始フレームＦS から複数の特徴点ＰS を抽出する（ステップ２１）。特徴点とは、隣接画素の輝度値が急激に変化する点である。次に、累積幾何変換係数ＭS2を逆変換（逆行列化）することによって、係数ＭS2-invを求める（ステップ２２）。以下、各特徴点毎に、ステップ２３〜２５の処理が行われる。
【００６６】
１つの特徴点ＰS を読み込む（ステップ２３）。そして、当該特徴点ＰS を係数ＭS2-invに基づいて入力フレームＦ2 上に座標変換し、その点をＰ’s とする（ステップ２４）。点Ｐ’S を探索の初期値（探索開始点）として、点ＰS に対応する入力フレームＦ2 上の特徴点を追跡し、得られた点をＰ”S とする（ステップ２５）。
【００６７】
ここで、特徴点の追跡は、勾配法によるオプティカルフロー推定を用いる。オプティカルフロー推定は、局所的な領域での物体の動きを前提としているため、開始フレームＦS と入力フレームＦ2 間で大きなカメラ運動がある場合、特徴点の動きを正確に検出できない。そこで、上記のように開始フレームＦS の特徴点ＰS を累積幾何変換係数ＭS2を逆変換することによって得られる係数ＭS2-invで座標変換したＰ’S を入力フレームＦ2 上の追跡の初期値とすることで、開始フレームＦS と入力フレームＦ2 間に大きなカメラ運動があっても、微小の運動であると仮定され、特徴点の動きを正確に検出できるようになる。
【００６８】
上記ステップ２３〜２５の処理をステップ２１で抽出した全ての特徴点に対して行い、フレーム間の全特徴点の対応付け結果を得る。前述したように、各対応点から２つの方程式を導出し、全ての方程式から、未知数６の幾何変換係数を線形解法で算出する（ステップ２６）。算出した幾何変換係数をＭ’S2とする。
【００６９】
図９は、全フレームに対する幾何変換係数をＭ’S2を算出した後に行われる出力フレームの生成処理手順を示している。
【００７０】
上記図６の幾何変換係数算出処理によって算出された、開始フレームＦS と各入力フレームＦ2 との間の直接的な幾何変換係数Ｍ' S2をＭ' Si（ｉ＝１，２，…）で表すことにする。
【００７１】
開始フレームから終了フレームまでの各フレームに対して次のような処理が行われる。つまり、まず、出力フレーム用メモリをクリアする（ステップ３１）。この後、対象フレームＦi をメモリに読み込む（ステップ３２）。次に、対象フレームＦi に対応する幾何変換係数Ｍ’Siを読み込む（ステップ３３）。次に、対象フレームＦi をそれに対応する幾何変換係数Ｍ’Siで幾何変換したフレームＦ’i を生成し（ステップ３４）、幾何変換後のフレームＦ’i を出力フレーム用メモリにレンダリングする（ステップ３５）。
【００７２】
次に、補間処理要否判定フラグflagがセットされているか（flag＝１）否かを判別する（ステップ３６）。補間処理要否判定フラグflagがセットされてない場合（flag＝０）には、出力フレーム用メモリの未レンダリング領域内の各画素毎の補間処理（ステップ３７〜４１）を行わない。したがって、上記ステップ３１〜３５の処理が開始フレームから終了フレームまでの各フレームに対して行われることになる。
【００７３】
補間処理要否判定フラグflagがセットされている場合には、出力フレーム用メモリの未レンダリング領域内の各画素毎に補間処理（ステップ３７〜４１）を行う。未レンダリング領域の点Ｐの画素に対する補間処理について説明する。
【００７４】
対象フレームＦi に時間的に近い前後１０フレームを近傍フレームＦi-neighbors として抽出する。なお、前後に近傍フレームが１０フレームもない場合は、限られた近傍フレームのみを抽出する。そして、各近傍フレームＦi-neighbors 毎に、次のような処理を行う。
【００７５】
つまり、近傍フレームＦi-neighbors に対応する幾何変換係数Ｍ’Si-neighborsをメモリ上に読み込む（ステップ３７）。次に、Ｍ’Si-neighborsを逆変換（逆行列化）することによって得られる係数Ｍ’Si-neighbors-invを求める（ステップ３８）。ここで、Ｍ’Si-neighbors-invは、開始フレーム上の点を上記近傍フレーム上に座標変換する幾何変換係数に相当する。
【００７６】
点ＰをＭ’Si-neighbors-invで幾何変換した点をＰi-neighbors とし（ステップ３９）、上記近傍フレーム上の点Ｐi-neighbors の輝度値を取得する（ステップ４０）。取得した輝度値をＶPi-neighborsとする。このような処理（ステップ３７〜４０）を各近傍フレームＦi-neighbors に対して行う。
【００７７】
各近傍フレームＦi-neighbors から得られた点Ｐに対応する輝度値ＶPi-neighborsを混合することによって、点Ｐの輝度値を生成する（ステップ４１）。
【００７８】
なお、点ＰをＭ’Si-neighbors-invで幾何変換した点Ｐi-neighbors が近傍フレーム上に存在しない場合、その近傍フレームの輝度値は混合されない。補間に使用可能な近傍フレームが全くない場合、開始フレームの画素値で補間する。
【００７９】
各近傍フレームＦi-neighbors から得られた点Ｐに対応する輝度値ＶPi-neighborsの混合比は、次のように決定する。
【００８０】
まず、図１０のように、対象フレームに近い方から順に、近傍フレームに１／２n という係数Ｋを予め与えておく。ｎは補正対象フレームと近傍フレーム間のフレーム数である。
【００８１】
次に、未レンダリング領域内の点Ｐの補間に使用可能な近傍フレームの係数を合計する（Ｋtotal ）。そして、その合計の逆数（１／Ｋtotal ）を計算し、各近傍フレームの係数Ｋに１／Ｋtotal を積算する。これを、各近傍フレームの混合比とする。
【００８２】
例えば、未レンダリング領域内の点Ｐの補間に使用可能な近傍フレームが、Ｋ＝１／８の１方の近傍フレームと、Ｋ＝１／２の１方の近傍フレームとである場合、これらの近傍フレームの係数の合計Ｋtotal は５／８となる。この合計の逆数は８／５となる。Ｋ＝１／８の上記近傍フレームの混合比は（１／８）×（８／５）＝１／５となり、Ｋ＝１／２の上記近傍フレームの混合比は（１／２）×（８／５）＝４／５となる。
【００８３】
このようにして、補間に使用可能な近傍フレームに対する混合比を求めることにより、対象フレームと時間的に近い近傍フレームの画素値ほど大きな混合比が与えられるとともに、混合比の合計は１となる。そして、上記のような点Ｐに対する補間処理を、未レンダリング領域の全ての点に対して行い、出力フレームを完成させる。
【００８４】
上記実施例によれば、途中フレームで幾何変換係数の算出に失敗しても、その失敗はそれ以降のフレームの補正処理に影響せず、高精度な手ぶれ補正を行えるようになる。また、手ぶれ補正後の出力フレームに撮影データ以外のデータが含まれず、入力フレーム以上の視野を確保できる。
【００８５】
なお、未レンダリング領域の補間処理を行う必要がない場合には、図６のステップ１の前に出力フレーム用メモリをクリアさせるようにし、図６のステップ５においてフレームＦ2 をＭs2で幾何変換し、幾何変換後のデータを出力フレームにレンダリングし、図６のステップ９で幾何変換係数Ｍ’S2を算出するとともにフレームＦ2 をＭ’s2で幾何変換し、幾何変換後のデータを出力フレームにレンダリングするようにしてもよい。
【実施例２】
【００８６】
出力フレームの生成処理の変形例について説明する。
【００８７】
図１１は、全フレームに対する幾何変換係数をＭ’S2を算出した後に行われる出力フレームの生成処理手順の他の例を示している。
【００８８】
上記図６の幾何変換係数算出処理によって算出された、開始フレームＦS と各入力フレームＦ2 との間の直接的な幾何変換係数Ｍ' S2をＭ' Si（ｉ＝１，２，…）で表すことにする。
【００８９】
開始フレームから終了フレームまでの各フレームに対して次のような処理が行われる。      
【００９０】
つまり、まず、補間処理要否判定フラグflagがセットされているか（flag＝１）否かを判別する（ステップ４１）。補間処理要否判定フラグflagがセットされていない場合（flag＝０）には、出力フレーム用メモリをクリアした後（ステップ４２）、ステップ４３に移行する。補間処理要否判定フラグflagがセットされている場合（flag＝１）には、出力フレーム用メモリをクリアすることなく、ステップ４３に移行する。
【００９１】
ステップ４３では、対象フレームＦi をメモリに読み込む。次に、対象フレームＦi に対応する幾何変換係数Ｍ’Siを読み込む（ステップ４４）。次に、対象フレームＦi をそれに対応する幾何変換係数Ｍ’Siで幾何変換したフレームＦ’i を生成し（ステップ４５）、幾何変換後のフレームＦ’i を出力フレーム用メモリにレンダリングする（ステップ４６）。上記ステップ４１〜４６の処理が、終了フレームまで繰り返し行われる。
【００９２】
この出力フレームの生成処理においては、補間処理要否判定フラグflagがセットされている場合には、入力フレーム毎に出力フレーム用メモリはクリアされないため、出力フレーム用メモリには、過去のフレームの手ぶれ補正結果の上に、各入力フレームの手ぶれ補正結果が上書きされる。開始フレームは幾何変換されないので、開始フレームが出力フレーム用メモリにレンダリングされた後においては、少なくとも開始フレームのサイズ分の領域は、出力フレーム用メモリ上においてレンダリング済領域となる。
【００９３】
したがって、各入力フレームの手ぶれ補正結果を出力フレーム用メモリにレンダリングしたときにおいて、当該手ぶれ補正結果がレンダリングされた領域以外の領域は、過去のフレームの手ぶれ補正結果で補間された状態となる。この手法では、出力フレームは、入力フレームと同じ視野（画角）を確保できる。入力フレーム内の周辺部に動きのある物体がない場合には、過去のフレームの手ぶれ補正結果と現フレームの手ぶれ補正結果とのつなぎ目が比較的目立つこともなく、違和感のない手ぶれ補正結果が得られる。
【図面の簡単な説明】
【００９４】
【図１】従来の手ぶれ補正装置の構成を示すブロック図である。
【図２】従来手法による手ぶれ補正処理手順を示すフローチャートである。
【図３】手ぶれがある状態で撮像されたフレームを示す模式図である。
【図４】図３の各フレームの幾何変換後のデータを出力フレーム用メモリにレンダリングした画像を示す模式図である。
【図５】手ぶれ補正装置の構成を示すブロック図である。
【図６】幾何変換係数算出処理手順を示すフローチャートである。
【図７】図６のステップ９の詳細な処理手順を示すフローチャートである。
【図８】図６のステップ９の処理手順の他の例を示すフローチャートである。
【図９】出力フレームの生成処理手順を示すフローチャートである。
【図１０】近傍フレームの混合比の算出方法を説明するための模式図である。
【図１１】出力フレームの生成処理手順の他の例を示すフローチャートである。
【符号の説明】
【００９５】
１０  パーソナルコンピュータ
１１  ＣＰＵ
１２  メモリ
１３  ハードディスク
１４  リムーバブルディスク
【図１】
2005094614.tif 000009
【図２】
2005094614.tif 000010
【図３】
2005094614.tif 000011
【図４】
2005094614.tif 000012
【図５】
2005094614.tif 000013
【図６】
2005094614.tif 000014
【図７】
2005094614.tif 000015
【図８】
2005094614.tif 000016
【図９】
2005094614.tif 000017
【図１０】
2005094614.tif 000018
【図１１】
2005094614.tif 000019