JP2007274720A - 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体 - Google Patents

手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体 Download PDF

Info

Publication number
JP2007274720A
JP2007274720A JP2007127604A JP2007127604A JP2007274720A JP 2007274720 A JP2007274720 A JP 2007274720A JP 2007127604 A JP2007127604 A JP 2007127604A JP 2007127604 A JP2007127604 A JP 2007127604A JP 2007274720 A JP2007274720 A JP 2007274720A
Authority
JP
Japan
Prior art keywords
frame
camera shake
shake correction
input frame
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007127604A
Other languages
English (en)
Other versions
JP4286301B2 (ja
Inventor
Haruo Hatanaka
晴雄 畑中
Naoki Chiba
直樹 千葉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2007127604A priority Critical patent/JP4286301B2/ja
Publication of JP2007274720A publication Critical patent/JP2007274720A/ja
Application granted granted Critical
Publication of JP4286301B2 publication Critical patent/JP4286301B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Studio Devices (AREA)

Abstract

【課題】この発明は、手ぶれ補正後の画像が格納される出力フレーム用メモリ領域において、レンダリングされない領域が発生するのを回避することができる手ぶれ補正装置を提供することを目的とする。
【解決手段】手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1手段、および各入力フレーム毎に、出力フレームを生成する第2手段を備えており、第2手段は、出力フレーム用メモリをクリアする手段、入力フレームを、第1手段によって算出されたそれに対応する幾何変換係数に基づいて幾何変換する手段、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする手段、および出力フレーム用メモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間する手段を備えている。
【選択図】図9

Description

本発明は、手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体に関する。
従来から、ビデオカメラ等の撮像装置によって撮像された画像に対して、手ぶれ補正を行う手ぶれ補正装置が知られている。図1は、手ぶれ補正装置のブロック図である。手ぶれ補正装置は、フレーム入力部50、幾何変換係数算出部51、手ぶれ補正部52およびフレーム出力部53を備えている。
幾何変換係数算出部51は、たとえば、複数フレームからマッチングなどの画像処理を利用して幾何変換係数を算出する。手ぶれ補正部52は、幾何変換係数算出部51によって算出された幾何変換係数を用いて、一旦メモリに記憶した入力フレームを幾何変換する。
幾何変換係数は、次式(1)に示すように3×3の行列で表され、2フレーム間の世界座標変換の係数に相当する。
Figure 2007274720
図2は、画像処理を用いて幾何変換係数を算出し、入力フレームを幾何変換することにより手ぶれ補正を行う場合の補正処理手順を示している。
開始フレーム(基準フレーム)をFS 、現在の入力フレームをF2 、現在の入力フレームF2 より1つ前の入力フレームをF1 、フレームF1 ,F2 間の幾何変換係数(フレームF2 上の座標をフレームF1 上の座標に変換するための幾何変換係数)をM12、フレームFS ,F1 間の幾何変換係数をMS1、フレームFS ,F2 間の累積幾何変換係数(フレームF2 上の座標をフレームFS 上の座標に変換するための累積幾何変換係数)をMS2とする。
開始フレームから終了フレームまでの各フレームに対して次のような処理が行われる。つまり、出力フレーム用メモリをクリアした後(ステップ100)、フレームを作業メモリ上に読み込み、読み込んだフレーム(入力フレーム)をF2 とする(ステップ101)。
次に、入力フレームF2 が開始フレームFS であるか否かを判別する(ステップ102)。入力フレームF2 が開始フレームFS であると判別した場合には、開始フレームFS と入力フレームF2 との間の累積幾何変換係数MS2として、式(2)に示すような変換無しを表す係数(初期値)をセットする(ステップ103)。
Figure 2007274720
そして、1つ前の入力フレームF1 として入力フレームF2 をセットするとともに、開始フレームFS と1つ前の入力フレームF1 との間の幾何変換係数MS1としてMS2をセットする(ステップ104)。また、入力フレームF2 のデータをそのまま出力フレーム用メモリにレンダリングする(ステップ105)。この後、ステップ100に戻って、出力フレーム用メモリをクリアするとともに、次のフレームを読み込む。
上記ステップ102において、入力フレームF2 が開始フレームFS でないと判別された場合には、前フレームF1 と現フレームF2 との間の幾何変換係数M12を算出する(ステップ106)。次に、式(3)に示すようMS1とM12から開始フレームFS と現フレームF2 との間の累積幾何変換係数MS2を算出する(ステップ107)。
Figure 2007274720
そして、1つ前の入力フレームF1 として入力フレームF2 をセットするとともに、開始フレームFS と1つ前の入力フレームF1 との間の幾何変換係数MS1としてMS2をセットする(ステップ108)。また、入力フレームF2 を累積幾何変換係数MS2で幾何変換した後、出力フレーム用メモリに幾何変換後のフレームをレンダリングする(ステップ109)。この後、ステップ100に戻って、出力フレーム用メモリをクリアするとともに、次のフレームを読み込む。
2フレーム間の幾何変換係数の代表的な算出方法を以下に示す(特開平11−339021号公報参照)。まず、一方のフレーム上からエッジ部などの特徴点を抽出する。次に、フレーム間で特徴点の追跡(マッチング)を行い、一方のフレーム上の特徴点に対する他方のフレーム上の対応点を求める。1組の対応点(x1,y1)・(x1’,y1’)から式(4)のように2つの方程式が得られるので、3組以上の対応点を検出することにより6つ以上の方程式を導出する。これらの方程式から、未知数の幾何変換係数を線形解法で算出する。
Figure 2007274720
従来の幾何変換係数の算出方法では、開始フレームFS と入力フレームF2 間の累積幾何変換係数を、開始フレームFS から入力フレームF2 までの間の各隣接フレーム間の幾何変換係数を累積することによって算出しているので、入力フレーム数が増加するに従い、隣接フレーム間の幾何変換係数の算出誤差が蓄積されるという問題がある。すなわち、途中フレームで幾何変換係数を大きく間違って算出した場合、その間違った変換係数で補正されたフレームを基準にそれ以降のフレームが補正されるという問題がある。
また、従来の手ぶれ補正方法では、出力フレーム用メモリの中でレンダリングされない領域が発生するという問題がある。つまり、手ぶれがある状態で撮像されたフレームが図3(a)〜(d)で示すようなフレームである場合には、それらのフレームの幾何変換後のデータを出力フレーム用メモリにレンダリングした画像は、図4(a)〜(d)で示すようになる。図4(b)〜(d)において斜線部が未レンダリング領域となる。
特開平11−339021号公報 特許第2892685号公報
この発明は、手ぶれ補正後の画像が格納される出力フレーム用メモリ領域において、レンダリングされない領域が発生するのを回避することができる手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体を提供することを目的とする。
また、この発明は、手ぶれ補正後の画像が格納される出力フレーム用メモリ領域において、レンダリングされない領域が発生するのを回避し、画角を保持したまま、画質の劣化を低減することができる手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体を提供することを目的とする。
請求項1に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正装置において、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1手段、および各入力フレーム毎に、出力フレームを生成する第2手段を備えており、第2手段は、出力フレーム用メモリをクリアする手段、入力フレームを、第1手段によって算出されたそれに対応する幾何変換係数に基づいて幾何変換する手段、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする手段、および出力フレーム用メモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間する手段を備えていることを特徴とする。
請求項2に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正方法において、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1ステップ、および各入力フレーム毎に、出力フレームを生成する第2ステップを備えており、第2ステップは、出力フレーム用メモリをクリアするステップ、入力フレームを、第1ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換するステップ、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングするステップ、および出力フレームメモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間するステップを備えていることを特徴とする。
請求項3に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1ステップ、および各入力フレーム毎に、出力フレームを生成する第2ステップをコンピュータに実行させるための手ぶれ補正処理プログラムを記録しており、第2ステップは、出力フレーム用メモリをクリアするステップ、入力フレームを、第1ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換するステップ、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングするステップ、および出力フレームメモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間するステップを備えていることを特徴とする。
請求項4に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正装置において、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1手段、各入力フレーム毎に、入力フレームを、第1手段によって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第2手段、および第2手段によるレンダリング結果を保持する第3手段を備えており、第2手段は、2番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする。
請求項5に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正方法において、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1ステップ、各入力フレーム毎に、入力フレームを、第1ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第2ステップ、および第2ステップによるレンダリング結果を保持する第3ステップを備えており、第2ステップは、2番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする。
請求項6に記載の発明は、動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1ステップ、各入力フレーム毎に、入力フレームを、第1ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第2ステップ、および第2ステップによるレンダリング結果を保持する第3ステップをコンピュータに実行させるための手ぶれ補正処理プログラムを記録しており、第2ステップは、2番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする。
この発明によれば、手ぶれ補正後の画像が格納される出力フレーム用メモリ領域において、レンダリングされない領域が発生するのを回避することができるようになる。
また、この発明によれば、手ぶれ補正後の画像が格納される出力フレーム用メモリ領域において、レンダリングされない領域が発生するのを回避し、画角を保持したまま、画質の劣化を低減することができるようになる。
以下、本発明の実施例について、説明する。
[1]手ぶれ補正装置の説明
図5は、手ぶれ補正装置の構成を示している。
手ぶれ補正装置は、パーソナルコンピュータ(PC)10によって実現される。PC10には、ディスプレイ21、マウス22およびキーボード23が接続されている。PC10は、CPU11、メモリ12、ハードディスク13、CD−ROMのようなリムーバブルディスクのドライブ(ディスクドライブ)14を備えている。
ハードディスク13には、OS(オペレーションシステム)等の他、手ぶれ補正処理プログラムが格納されている。手ぶれ補正処理プログラムは、それが格納されたCD−ROM20を用いて、ハードディスク13にインストールされる。また、ハードディスク13にはビデオカメラなどによって撮像された動画像ファイルが予め格納されているものとする。
[2]手ぶれ補正プログラムが起動せしめられた場合にCPUによって行われる手ぶれ補正処理の説明
手ぶれ補正処理には、幾何変換係数算出処理と出力フレーム生成処理とが含まれている。まず、幾何変換係数算出処理が行われた後に、出力フレーム生成処理が行われる。
なお、この実施例においては、出力フレーム用メモリ内の未レンダリング領域に対して補間処理を行うか否かをユーザに予め設定させるようになっている。未レンダリング領域に対して補間処理を行う設定が行われている場合には、そのことを記憶するフラグ(以下、補間処理要否判定フラグという)flagがセット(flag=1)された状態となっており、未レンダリング領域に対して補間処理を行う設定が行われてい場合には、そのことを記憶する補間処理要否判定フラグflagがリセット(flag=0)された状態となっている。
手ぶれ補正処理では、手ぶれ補正を行う範囲の最初のフレーム(開始フレーム)を基準フレームとして、当該手ぶれ補正を行う範囲の他のフレームの手ぶれを補正する。なお、手ぶれ補正を行う範囲は、任意に設定することが可能である。
図6は、幾何変換係数算出処理手順を示している。
手ぶれ補正を行う範囲の開始フレーム(基準フレーム)をFS 、手ぶれ補正を行う範囲内の現在の入力フレームをF2 、現在の入力フレームF2 より1つ前の入力フレームをF1 、フレームF1 ,F2 間の幾何変換係数(フレームF2 上の座標をフレームF1 上の座標に変換するための幾何変換係数)をM12、フレームFS ,F1 間の幾何変換係数をMS1、フレームFS ,F2 間の累積幾何変換係数(フレームF2 上の座標をフレームFS 上の座標に変換するための累積幾何変換係数)をMS2とする。
手ぶれ補正を行う範囲の開始フレームから終了フレームまでの各フレームに対して次のような処理が行われる。つまり、まず、フレームをメモリ上に読み込み、読み込んだフレーム(入力フレーム)をF2 とする(ステップ1)。
次に、入力フレームF2 が開始フレームFS であるか否かを判別する(ステップ2)。入力フレームF2 が開始フレームFS であると判別した場合には、開始フレームFS と入力フレームF2 との間の累積幾何変換係数MS2として、次式(5)に示すような変換無しを表す係数(初期値)をセットする(ステップ3)。
Figure 2007274720
そして、1つ前の入力フレームF1 として入力フレームF2 をセットするとともに、開始フレームFS と1つ前の入力フレームF1 との間の幾何変換係数MS1としてMS2をセットする(ステップ4)。また、開始フレームFS と入力フレームF2 との間の直接的な幾何変換係数M' S2としてMS2をセットする(ステップ5)。この後、ステップ1に戻って、次のフレームが読み込まれる。
上記ステップ2において、入力フレームF2 が開始フレームFS でないと判別された場合には、前フレームF1 と現フレームF2 との間の幾何変換係数M12を算出する(ステップ6)。次に、次式(6)に示すようMS1とM12から開始フレームFS と現フレームF2 との間の累積幾何変換係数MS2を算出する(ステップ7)。
Figure 2007274720
そして、1つ前の入力フレームF1 として入力フレームF2 をセットするとともに、開始フレームFS と1つ前の入力フレームF1 との間の幾何変換係数MS1としてMS2をセットする(ステップ8)。
次に、上記ステップ7で算出された累積幾何変換係数MS2に基づいて、開始フレームFS と入力フレームF2 との間の直接的な幾何変換係数M' S2を算出する(ステップ9)。この処理の詳細については、後述する。この後、ステップ1に戻って、次のフレームが読み込まれる。このような処理を最終フレームまで繰り返し行う。
図7は、図6のステップ9の処理の詳細な手順を示している。
まず、入力フレームF2 から複数の特徴点P2 を抽出する(ステップ11)。特徴点とは、隣接画素の輝度値が急激に変化する点である。そして、各特徴点毎に、ステップ12〜14の処理が行われる。
1つの特徴点P2 を読み込む(ステップ12)。そして、当該特徴点P2 を累積幾何変換係数MS2に基づいて開始フレームFS 上に座標変換し、その点をP’2 とする(ステップ13)。点P’2 を探索の初期値(探索開始点)として、点P2 に対応する開始フレームFS 上の特徴点を追跡し、得られた点をP”2 とする(ステップ14)。
ここで、特徴点の追跡は、勾配法によるオプティカルフロー推定を用いる。オプティカルフロー推定は、局所的な領域での物体の動きを前提としているため、開始フレームFS と入力フレームF2 間で大きなカメラ運動がある場合、特徴点の動きを正確に検出できない。そこで、上記のように入力フレームF2 の特徴点P2 を累積幾何変換係数MS2で座標変換したP’2 を開始フレームFS 上の追跡の初期値とすることで、開始フレームFS と入力フレームF2 間に大きなカメラ運動があっても、微小の運動であると仮定され、特徴点の動きを正確に検出できるようになる。
上記ステップ12〜14の処理をステップ11で抽出した全ての特徴点に対して行い、フレーム間の全特徴点の対応付け結果を得る。前述したように、各対応点から2つの方程式を導出し、全ての方程式から、未知数6の幾何変換係数を線形解法で算出する(ステップ15)。算出した幾何変換係数をM’S2とする。
図8は、図6のステップ9の処理手順の他の例を示している。
まず、開始フレームFS から複数の特徴点PS を抽出する(ステップ21)。特徴点とは、隣接画素の輝度値が急激に変化する点である。次に、累積幾何変換係数MS2を逆変換(逆行列化)することによって、係数MS2-invを求める(ステップ22)。以下、各特徴点毎に、ステップ23〜25の処理が行われる。
1つの特徴点PS を読み込む(ステップ23)。そして、当該特徴点PS を係数MS2-invに基づいて入力フレームF2 上に座標変換し、その点をP’s とする(ステップ24)。点P’S を探索の初期値(探索開始点)として、点PS に対応する入力フレームF2 上の特徴点を追跡し、得られた点をP”S とする(ステップ25)。
ここで、特徴点の追跡は、勾配法によるオプティカルフロー推定を用いる。オプティカルフロー推定は、局所的な領域での物体の動きを前提としているため、開始フレームFS と入力フレームF2 間で大きなカメラ運動がある場合、特徴点の動きを正確に検出できない。そこで、上記のように開始フレームFS の特徴点PS を累積幾何変換係数MS2を逆変換することによって得られる係数MS2-invで座標変換したP’S を入力フレームF2 上の追跡の初期値とすることで、開始フレームFS と入力フレームF2 間に大きなカメラ運動があっても、微小の運動であると仮定され、特徴点の動きを正確に検出できるようになる。
上記ステップ23〜25の処理をステップ21で抽出した全ての特徴点に対して行い、フレーム間の全特徴点の対応付け結果を得る。前述したように、各対応点から2つの方程式を導出し、全ての方程式から、未知数6の幾何変換係数を線形解法で算出する(ステップ26)。算出した幾何変換係数をM’S2とする。
図9は、全フレームに対する幾何変換係数をM’S2を算出した後に行われる出力フレームの生成処理手順を示している。
上記図6の幾何変換係数算出処理によって算出された、開始フレームFS と各入力フレームF2 との間の直接的な幾何変換係数M' S2をM' Si(i=1,2,…)で表すことにする。
開始フレームから終了フレームまでの各フレームに対して次のような処理が行われる。つまり、まず、出力フレーム用メモリをクリアする(ステップ31)。この後、対象フレームFi をメモリに読み込む(ステップ32)。次に、対象フレームFi に対応する幾何変換係数M’Siを読み込む(ステップ33)。次に、対象フレームFi をそれに対応する幾何変換係数M’Siで幾何変換したフレームF’i を生成し(ステップ34)、幾何変換後のフレームF’i を出力フレーム用メモリにレンダリングする(ステップ35)。
次に、補間処理要否判定フラグflagがセットされているか(flag=1)否かを判別する(ステップ36)。補間処理要否判定フラグflagがセットされてない場合(flag=0)には、出力フレーム用メモリの未レンダリング領域内の各画素毎の補間処理(ステップ37〜41)を行わない。したがって、上記ステップ31〜35の処理が開始フレームから終了フレームまでの各フレームに対して行われることになる。
補間処理要否判定フラグflagがセットされている場合には、出力フレーム用メモリの未レンダリング領域内の各画素毎に補間処理(ステップ37〜41)を行う。未レンダリング領域の点Pの画素に対する補間処理について説明する。
対象フレームFi に時間的に近い前後10フレームを近傍フレームFi-neighbors として抽出する。なお、前後に近傍フレームが10フレームもない場合は、限られた近傍フレームのみを抽出する。そして、各近傍フレームFi-neighbors 毎に、次のような処理を行う。
つまり、近傍フレームFi-neighbors に対応する幾何変換係数M’Si-neighborsをメモリ上に読み込む(ステップ37)。次に、M’Si-neighborsを逆変換(逆行列化)することによって得られる係数M’Si-neighbors-invを求める(ステップ38)。ここで、M’Si-neighbors-invは、開始フレーム上の点を上記近傍フレーム上に座標変換する幾何変換係数に相当する。
点PをM’Si-neighbors-invで幾何変換した点をPi-neighbors とし(ステップ39)、上記近傍フレーム上の点Pi-neighbors の輝度値を取得する(ステップ40)。取得した輝度値をVPi-neighborsとする。このような処理(ステップ37〜40)を各近傍フレームFi-neighbors に対して行う。
各近傍フレームFi-neighbors から得られた点Pに対応する輝度値VPi-neighborsを混合することによって、点Pの輝度値を生成する(ステップ41)。
なお、点PをM’Si-neighbors-invで幾何変換した点Pi-neighbors が近傍フレーム上に存在しない場合、その近傍フレームの輝度値は混合されない。補間に使用可能な近傍フレームが全くない場合、開始フレームの画素値で補間する。
各近傍フレームFi-neighbors から得られた点Pに対応する輝度値VPi-neighborsの混合比は、次のように決定する。
まず、図10のように、対象フレームに近い方から順に、近傍フレームに1/2n という係数Kを予め与えておく。nは補正対象フレームと近傍フレーム間のフレーム数である。
次に、未レンダリング領域内の点Pの補間に使用可能な近傍フレームの係数を合計する(Ktotal )。そして、その合計の逆数(1/Ktotal )を計算し、各近傍フレームの係数Kに1/Ktotal を積算する。これを、各近傍フレームの混合比とする。
例えば、未レンダリング領域内の点Pの補間に使用可能な近傍フレームが、K=1/8の1方の近傍フレームと、K=1/2の1方の近傍フレームとである場合、これらの近傍フレームの係数の合計Ktotal は5/8となる。この合計の逆数は8/5となる。K=1/8の上記近傍フレームの混合比は(1/8)×(8/5)=1/5となり、K=1/2の上記近傍フレームの混合比は(1/2)×(8/5)=4/5となる。
このようにして、補間に使用可能な近傍フレームに対する混合比を求めることにより、対象フレームと時間的に近い近傍フレームの画素値ほど大きな混合比が与えられるとともに、混合比の合計は1となる。そして、上記のような点Pに対する補間処理を、未レンダリング領域の全ての点に対して行い、出力フレームを完成させる。
上記実施例によれば、途中フレームで幾何変換係数の算出に失敗しても、その失敗はそれ以降のフレームの補正処理に影響せず、高精度な手ぶれ補正を行えるようになる。また、手ぶれ補正後の出力フレームに撮影データ以外のデータが含まれず、入力フレーム以上の視野を確保できる。
なお、未レンダリング領域の補間処理を行う必要がない場合には、図6のステップ1の前に出力フレーム用メモリをクリアさせるようにし、図6のステップ5においてフレームF2 をMs2で幾何変換し、幾何変換後のデータを出力フレームにレンダリングし、図6のステップ9で幾何変換係数M’S2を算出するとともにフレームF2 をM’s2で幾何変換し、幾何変換後のデータを出力フレームにレンダリングするようにしてもよい。
出力フレームの生成処理の変形例について説明する。
図11は、全フレームに対する幾何変換係数をM’S2を算出した後に行われる出力フレームの生成処理手順の他の例を示している。
上記図6の幾何変換係数算出処理によって算出された、開始フレームFS と各入力フレームF2 との間の直接的な幾何変換係数M' S2をM' Si(i=1,2,…)で表すことにする。
開始フレームから終了フレームまでの各フレームに対して次のような処理が行われる。 つまり、まず、補間処理要否判定フラグflagがセットされているか(flag=1)否かを判別する(ステップ41)。補間処理要否判定フラグflagがセットされていない場合(flag=0)には、出力フレーム用メモリをクリアした後(ステップ42)、ステップ43に移行する。補間処理要否判定フラグflagがセットされている場合(flag=1)には、出力フレーム用メモリをクリアすることなく、ステップ43に移行する。
ステップ43では、対象フレームFi をメモリに読み込む。次に、対象フレームFi に対応する幾何変換係数M’Siを読み込む(ステップ44)。次に、対象フレームFi をそれに対応する幾何変換係数M’Siで幾何変換したフレームF’i を生成し(ステップ45)、幾何変換後のフレームF’i を出力フレーム用メモリにレンダリングする(ステップ46)。上記ステップ41〜46の処理が、終了フレームまで繰り返し行われる。
この出力フレームの生成処理においては、補間処理要否判定フラグflagがセットされている場合には、入力フレーム毎に出力フレーム用メモリはクリアされないため、出力フレーム用メモリには、過去のフレームの手ぶれ補正結果の上に、各入力フレームの手ぶれ補正結果が上書きされる。開始フレームは幾何変換されないので、開始フレームが出力フレーム用メモリにレンダリングされた後においては、少なくとも開始フレームのサイズ分の領域は、出力フレーム用メモリ上においてレンダリング済領域となる。
したがって、各入力フレームの手ぶれ補正結果を出力フレーム用メモリにレンダリングしたときにおいて、当該手ぶれ補正結果がレンダリングされた領域以外の領域は、過去のフレームの手ぶれ補正結果で補間された状態となる。この手法では、出力フレームは、入力フレームと同じ視野(画角)を確保できる。入力フレーム内の周辺部に動きのある物体がない場合には、過去のフレームの手ぶれ補正結果と現フレームの手ぶれ補正結果とのつなぎ目が比較的目立つこともなく、違和感のない手ぶれ補正結果が得られる。
従来の手ぶれ補正装置の構成を示すブロック図である。 従来手法による手ぶれ補正処理手順を示すフローチャートである。 手ぶれがある状態で撮像されたフレームを示す模式図である。 図3の各フレームの幾何変換後のデータを出力フレーム用メモリにレンダリングした画像を示す模式図である。 手ぶれ補正装置の構成を示すブロック図である。 幾何変換係数算出処理手順を示すフローチャートである。 図6のステップ9の詳細な処理手順を示すフローチャートである。 図6のステップ9の処理手順の他の例を示すフローチャートである。 出力フレームの生成処理手順を示すフローチャートである。 近傍フレームの混合比の算出方法を説明するための模式図である。 出力フレームの生成処理手順の他の例を示すフローチャートである。
符号の説明
10 パーソナルコンピュータ
11 CPU
12 メモリ
13 ハードディスク
14 リムーバブルディスク

Claims (6)

  1. 動画像データの手ぶれ補正を行う手ぶれ補正装置において、
    各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1手段、および各入力フレーム毎に、出力フレームを生成する第2手段を備えており、
    第2手段は、出力フレーム用メモリをクリアする手段、入力フレームを、第1手段によって算出されたそれに対応する幾何変換係数に基づいて幾何変換する手段、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする手段、および出力フレーム用メモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間する手段を備えていることを特徴とする手ぶれ補正装置。
  2. 動画像データの手ぶれ補正を行う手ぶれ補正方法において、
    各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1ステップ、および各入力フレーム毎に、出力フレームを生成する第2ステップを備えており、
    第2ステップは、出力フレーム用メモリをクリアするステップ、入力フレームを、第1ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換するステップ、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングするステップ、および出力フレームメモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間するステップを備えていることを特徴とする手ぶれ補正方法。
  3. 動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
    各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1ステップ、および各入力フレーム毎に、出力フレームを生成する第2ステップをコンピュータに実行させるための手ぶれ補正処理プログラムを記録しており、
    第2ステップは、出力フレーム用メモリをクリアするステップ、入力フレームを、第1ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換するステップ、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングするステップ、および出力フレームメモリ内の未レンダリング領域を、入力フレームの近傍の複数フレームによって補間するステップを備えていることを特徴とする手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
  4. 動画像データの手ぶれ補正を行う手ぶれ補正装置において、
    各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1手段、各入力フレーム毎に、入力フレームを、第1手段によって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第2手段、および第2手段によるレンダリング結果を保持する第3手段を備えており、
    第2手段は、2番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする手ぶれ補正装置。
  5. 動画像データの手ぶれ補正を行う手ぶれ補正方法において、
    各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1ステップ、各入力フレーム毎に、入力フレームを、第1ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第2ステップ、および第2ステップによるレンダリング結果を保持する第3ステップを備えており、
    第2ステップは、2番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする手ぶれ補正方法。
  6. 動画像データの手ぶれ補正を行う手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
    各入力フレーム毎に、手ぶれ補正の基準とするフレームと入力フレーム間の幾何変換係数を算出する第1ステップ、各入力フレーム毎に、入力フレームを、第1ステップによって算出されたそれに対応する幾何変換係数に基づいて幾何変換した後、入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする第2ステップ、および第2ステップによるレンダリング結果を保持する第3ステップをコンピュータに実行させるための手ぶれ補正処理プログラムを記録しており、
    第2ステップは、2番目以降の入力フレームに対する幾何変換後のフレームを出力フレームメモリにレンダリングする際には、それまでのレンダリング結果に、当該入力フレームに対する幾何変換後のフレームを上書きすることを特徴とする手ぶれ補正処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2007127604A 2007-05-14 2007-05-14 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体 Expired - Fee Related JP4286301B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007127604A JP4286301B2 (ja) 2007-05-14 2007-05-14 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007127604A JP4286301B2 (ja) 2007-05-14 2007-05-14 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003328013A Division JP4017578B2 (ja) 2003-09-19 2003-09-19 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2007274720A true JP2007274720A (ja) 2007-10-18
JP4286301B2 JP4286301B2 (ja) 2009-06-24

Family

ID=38676950

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007127604A Expired - Fee Related JP4286301B2 (ja) 2007-05-14 2007-05-14 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP4286301B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010045733A (ja) * 2008-08-18 2010-02-25 Sony Corp 画像処理装置、画像処理方法、プログラム、および撮像装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010045733A (ja) * 2008-08-18 2010-02-25 Sony Corp 画像処理装置、画像処理方法、プログラム、および撮像装置
JP4640470B2 (ja) * 2008-08-18 2011-03-02 ソニー株式会社 画像処理装置、画像処理方法、プログラム、および撮像装置
US9215374B2 (en) 2008-08-18 2015-12-15 Sony Corporation Image processing apparatus, image processing method, and imaging apparatus that corrects tilt of an image based on an operation input

Also Published As

Publication number Publication date
JP4286301B2 (ja) 2009-06-24

Similar Documents

Publication Publication Date Title
JP5906493B2 (ja) 画像処理装置、画像処理方法、画像処理プログラム及び記録媒体
EP2640057B1 (en) Image processing device, image processing method and program
US9609181B2 (en) Image signal processor and method for synthesizing super-resolution images from non-linear distorted images
JP5531194B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
US20090225174A1 (en) Image processing apparatus, image processing method, hand shake blur area estimation device, hand shake blur area estimation method, and program
JP4345940B2 (ja) 手ぶれ画像補正方法、記録媒体及び撮像装置
JP2013020527A (ja) 画像処理装置および方法、並びにプログラム
JP6656035B2 (ja) 画像処理装置、撮像装置および画像処理装置の制御方法
WO2020218024A1 (ja) パノラマ映像合成装置、パノラマ映像合成方法、及びパノラマ映像合成プログラム
JP2008091979A (ja) 画像高画質化装置、及びその方法、並びに画像表示装置
TWI459325B (zh) 數位影像處理裝置及其處理方法
JP2008217526A (ja) 画像処理装置、画像処理プログラム及び画像処理方法
JP2006245677A (ja) 画像処理装置、画像処理方法および画像処理プログラム
JPWO2007074605A1 (ja) 画像処理方法、画像処理プログラム、画像処理装置、及び撮像装置
JP4017578B2 (ja) 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体
JP2019012359A (ja) 情報処理装置、プログラム及び情報処理方法
JP4128123B2 (ja) 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録したコンピュータ読み取り可能な記録媒体
JP4286301B2 (ja) 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体
JP4930304B2 (ja) 画像処理装置、画像処理方法、プログラム、及び記録媒体
JP7118729B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2006215657A (ja) 動きベクトル検出方法、動きベクトル検出装置、動きベクトル検出プログラム及びプログラム記録媒体
CN110692235B (zh) 图像处理装置、图像处理程序及图像处理方法
JP2009065283A (ja) 画像ぶれ補正装置
JP2009027437A (ja) 画像処理装置,画像処理方法及び撮像装置
JP5401696B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090204

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090226

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090324

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120403

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120403

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130403

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140403

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140403

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees