(57)【特許請求の範囲】
【請求項１】
ローリングシャッタ方式で複数のフレームを連続して撮影する撮影手段と、前記撮影された複数のフレームの撮影画像を格納する記憶手段と、フレーム間の動き量を検出する動き検出手段と、前記記憶手段に格納された撮影画像を補正する補正手段と、前記補正手段で補正された画像を出力する出力手段とを備え、
前記補正手段は、前記撮影画像の所定のフレームの各ラインの撮影時刻における動き量に基づいて、出力する画像の各ラインの画素を前記所定のフレームのどこから読み出すかを決定し、決定された読み出し位置が前記所定のフレームの撮影範囲を超えている画素に対しては、前記所定のフレームの前後に撮影されたフレームから対応する画素を読み出すことで前記撮影画像を補正することを特徴とする撮像装置。
【請求項２】
前記補正手段は、前記対応する画素の読み出し位置を、当該対応する画素が読み出されるフレームの各ラインの撮影時刻における動き量に基づいて算出することを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記補正手段は、前記所定のフレームの先頭ラインの撮影時刻を基準として、各ラインの撮影時刻における動き量に基づいて、前記出力する画像の各ラインの画素を前記所定のフレームのどこから読み出すかを決定し、
前記決定された読み出し位置が前記所定のフレームの撮影範囲を超えている画素に対しては、前記所定のフレームの１つ前に撮影されたフレームから対応する画素を読み出すことを特徴とする請求項１または２に記載の撮像装置。
【請求項４】
前記補正手段は、前記出力する画像の各ラインの画素の決定された読み出し位置が、前記所定のフレーム及び前記所定のフレームの前後に撮影されたフレームの撮影範囲を超えている場合、前記撮影範囲を超えない範囲で前記ラインの読み出し位置を決定し、前記ラインの読み出し位置から前記画素の読み出し位置を算出することを特徴とする請求項１または２に記載の撮像装置。
【請求項５】
前記補正手段は、前記所定のフレームの中間ラインの撮影時刻を基準として、各ラインの撮影時刻における動き量に基づいて、前記出力する画像の各ラインの画素を前記所定のフレームのどこから読み出すかを決定し、
前記決定された読み出し位置が前記所定のフレームの撮影範囲を超えている画素に対しては、前記画素のラインが出力画像の中間ラインより前か後ろかに応じて、前記フレームの１つ前又は１つ後に撮影されたフレームから読み出すことを特徴とする請求項１または２に記載の撮像装置。
【請求項６】
前記補正手段は、前記所定のフレームの各ラインの撮影時刻における動き量に基づいて、前記出力する画像の各ラインの画素を前記所定のフレームのどこから読み出すかを決定し、
前記決定された読み出し位置が前記所定のフレームの撮影範囲の境界近傍にある画素に対しては、前記所定のフレームから読み出した画素と、前記所定のフレームの前後に撮影されたフレームから読み出した画素とを前記境界からの距離に応じた比率で合成し、前記所定のフレームの前後に撮影されたフレームからの画素の読み出し位置を、当該フレームの各ラインの撮影時刻における動き量から算出することを特徴とする請求項１または２に記載の撮像装置。
【請求項７】
複数回継続した検出で得られた動き量に基づいて、装置本体がパンニングまたはチルティングしているかどうかを判定する判別手段を備え、
前記補正手段は前記装置本体がパンニングまたはチルティングしている場合のみ、前記検出された動き量に基づいて撮影画像を前記記憶手段からの読み出すことを特徴とする請求項１ないし６の何れか１項に記載の撮像装置。
【請求項８】
ローリングシャッタ方式で複数のフレームを連続して撮影する撮影手段と、撮影された複数のフレームの撮影画像を格納する記憶手段と、フレーム間の動き量を検出する動き検出手段とを備える撮像装置の制御方法であり、
前記記憶手段に格納された撮影画像を補正する補正ステップと、前記補正ステップで補正された画像を出力する出力ステップとを備え、
前記補正ステップは、前記撮影画像の所定のフレームの各ラインの撮影時刻における動き量に基づいて、出力する画像の各ラインの画素を前記所定のフレームのどこから読み出すかを決定するステップと、
決定された読み出し位置が前記所定のフレームの撮影範囲を超えている画素に対しては、前記所定のフレームの前後に撮影されたフレームから対応する画素を読み出すことで前記撮影画像を補正することを特徴とする撮像装置の制御方法。
【請求項９】
コンピュータを、ローリングシャッタ方式で複数のフレームを連続して撮影する撮影手段と撮影された複数のフレームの撮影画像を格納する記憶手段と、フレーム間の動き量を検出する動き検出手段とを備える撮像装置において、
前記撮影画像の所定のフレームの各ラインの撮影時刻における動き量に基づいて、出力する画像の各ラインの画素を前記所定のフレームのどこから読み出すかを決定し、決定された読み出し位置が前記所定のフレームの撮影範囲を超えている画素に対しては、前記所定のフレームの前後に撮影されたフレームから対応する画素を読み出すように前記記憶手段に格納された撮影画像を補正する補正手段と、前記補正手段により補正された画像を出力する出力手段として機能させるためのプログラム。
【請求項１０】
請求項９のプログラムを記録したコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオカメラやデジタルカメラなどの撮像装置に関し、より具体的にはローリングシャッタ方式の撮像センサによる撮影画像の歪みを補正する機能を有する撮像装置に関する。
【背景技術】
【０００２】
近年、ビデオカメラやデジタルカメラの多くで、ローリングシャッタ方式のＣＭＯＳ撮像センサが用いられている。この方式の撮像センサでは、ライン（水平走査）毎に撮像のタイムラグがあることから、パンニングで撮影画像が斜めに歪む、チルティングで撮影画像が伸び縮みする、手ぶれで撮影画像が波を打ったように歪むといった課題がある。
【０００３】
こうしたカメラで静止画を撮影する場合には、グローバルシャッタ方式のセンサ駆動や、メカシャッタを組み合わせることで、撮像のタイムラグを無くすことが多い。しかし、これらの方式は、センサへの露光と、センサからの画像の読み出しが同時に行えないことから、撮像の間隔が長くなってしまうため、動画の撮影には向いていない。
【０００４】
ローリングシャッタ方式で動画を撮影する一部のカメラでは、撮影画像をバッファメモリに格納し、ライン毎の読み出し位置を変更して、格納された画像の一部を切り出して出力することにより、撮影画像の歪の補正を行なっている。ライン毎の読み出し位置は、被写体に対するカメラの動き量を、ジャイロセンサなどで検出しておくことで決定される。
【０００５】
例えば、図１６の（ａ）〜（ｂ）に破線で示すように、カメラが静止している場合に被写体１６００を撮影すると、範囲１６０１が撮影されて歪みのない撮影画像１６０２がバッファメモリに格納される。一方、カメラが右側にパンニングしている場合には、（ｃ）〜（ｄ）に示すように範囲１６１１が撮影されて斜めに歪んだ撮影画像１６１２が格納される。そこで、（ｅ）〜（ｆ）に示すように、動き量の検出結果を用いてライン毎の読み出し位置を変えて範囲１６１３を切り出すことで、歪みを補正した画像１６１４を出力する。
【０００６】
また、カメラが静止している場合は、図１７の（ａ）〜（ｂ）に示すように被写体１７００の範囲１７０１が撮影されて伸び縮みのない撮影画像１７０２がバッファメモリに格納される。しかし、カメラが下方向にチルティングしている場合は、同図（ｃ）〜（ｄ）に示すように範囲１７１１が撮影されて、縦方向に縮んだ撮影画像１７１２が格納される。そこで、同図（ｅ）〜（ｆ）に示すように、動き量の検出結果を用いてライン毎の読み出し位置を変えて範囲１７１３を切り出すことで、縮みを補正した画像１７１４を出力する。また、カメラが上方向にチルティングしている場合、（ｇ）〜（ｈ）に示すように範囲１７２１が撮影されて、縦方向に伸びた撮影画像１７２２が格納される。そこで、（ｉ）〜（ｊ）に示すように、動き量の検出結果を用いてライン毎の読み出し位置を変えて範囲１７２３を切り出すことで、伸びを補正した画像１７２４を出力する。
【０００７】
特許文献１では、手ぶれが大きくなったときに、出力画像の切り出し位置が撮影画像の端に張り付いて、画角に余裕が無くなり歪みが補正できなくなることを避けるため、切り出し位置を中央に寄せて補正するカメラを記載している。
【０００８】
また、特許文献２では、カメラがパンニングしているか、チルティングしているかに応じて、撮像センサの水平走査と垂直走査で入れ替えることで、撮影画像を斜めに歪ませずに、伸び縮みのみとなった歪みをバッファメモリで補正するカメラについて記載している。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００６−１８６８８５号公報
【特許文献２】特開２００７−０２００４５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、従来の補正方法では、画像の一部を切り出して出力するため、撮影画像に対して出力画像の画角が狭くなってしまう。
例えば、レンズ交換式のデジタルカメラの一部には、レンズで撮影可能な画角を画像として記録できることを大きな利点としているものがある。また、レンズ一体型のデジタルカメラの一部でも、広角側の焦点距離が短く被写体をワイドに撮影できることを大きな利点としているものがある。しかし、画像の一部を切り出してしまうと、こうしたカメラの特徴を活かせなくなってしまう。さらには、画像の一部を切り出してしまうと、撮像センサの有効画素数が減ってしまうため、補正を行わない場合に比べて、高精細な画像を撮影することができない。
【００１１】
また、ローリングシャッタ方式の撮像における走査方向の入れ替えは、撮像センサーからの撮像信号の読み出しおよびその処理構成を複雑にするものであった。
【課題を解決するための手段】
【００１２】
前記の課題を解決するため、本発明の撮像装置は、ローリングシャッタ方式で複数フレームを連続して撮影する撮影手段と、撮影された画像を格納するバッファメモリと、フレーム間の動き量を検出する動き検出手段と、検出された動き量を格納するメモリと、バッファメモリに格納された撮影画像を補正する補正手段と、補正された画像を出力する出力手段とを備え、補正手段は、撮影画像の所定のフレームの各ラインの撮影時刻における動き量に基づいて、出力する画像の各ラインの画素を撮影された複数フレームのどこから読み出すかを決定し、決定された読み出し位置が所定のフレームの撮影範囲を超えている画素に対しては、所定のフレームの前後に撮影されたフレームから対応する画素を読み出すことで撮影画像を補正することを特徴とする。
【発明の効果】
【００１３】
本件発明によれば、撮影画像に対して出力画像の画角を狭くしなくても、ローリングシャッタ方式の撮像センサによる歪みが補正可能となる。また、撮像センサの有効画素数を減らすことなく、前記歪みが補正できるとともに、撮像センサの撮像構成に変更を加える必要もなくなる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係わるビデオカメラの構成を示すブロック図である。
【図２】撮像センサからの画像信号出力タイミングを示す概略図である。
【図３】ビデオカメラの動き検出を説明するための模式図である。
【図４】メモリに記憶された撮影画像データの各ラインの撮影範囲を示す模式図である。
【図５】本件発明の第１の実施例に係わる撮影画像データのラインの補正量cを決定するためのフローチャートを示す図である。
【図６】本件発明の第１の実施例に係わる画素（ｘ，ｙ）の参照フレームｆを決定するためのフローチャートを示す図である。
【図７】本件発明の第１の実施例によるビデオカメラのパンニングに対する歪み補正を説明するための撮影画像の模式図である。
【図８】本件発明の第１の実施例によるビデオカメラの反転を含むパンニングに対する歪み補正を説明するための撮影画像の模式図である。
【図９】本件発明の第２の実施形態における歪み補正を説明するための撮影画像の模式図である。
【図１０】本件発明の第４の実施例における動き検出を説明するための模式図である。
【図１１】時間経過に対する撮影フレームの各ラインの撮影位置を示す模式図である。
【図１２】撮影フレームのラインの参照フレームｆを決定するためのフローチャートを示す図である。
【図１３】ビデオカメラの上方向へのチルティングに対する撮影画像の歪み補正を説明するための撮影画像の模式図である。
【図１４】下方向へのチルティングに対する撮影画像の歪み補正を説明するための撮影画像の模式図である。
【図１５】本件発明の第５の実施例における撮影画像の歪み補正を説明するための撮影画像の模式図である。
【図１６】従来技術によるカメラのパンニングに対する歪み補正を説明するための撮影画像の模式図である。
【図１７】従来技術による撮影画像の歪み補正の例を説明するための撮影画像の模式図である。
【発明を実施するための形態】
【００１５】
以下、本件発明の好適な実施形態を図面を参照して説明する。本実施形態においては、撮影した動画像を出力するビデオカメラに対して本発明を適用した場合について説明する。しかし、本件発明の適用はこれに限るものではなく、ローリングシャッタ方式を用いた動画像を入力画像とする他の撮像装置、例えばデジタルカメラに対しても適用できることは言うまでもない。
【００１６】
第１の実施例
図１は本発明の実施形態におけるビデオカメラ１００の構成例を示すブロック図である。
【００１７】
ＣＰＵ１０１はＲＯＭ１０３に格納された制御プログラムに従って動作し、動作時の一時的なデータの格納場所としてＲＡＭ１０２を用いて、ＣＰＵバス１０４で接続された各ブロックの制御を行う。撮像センサ１０５はローリングシャッタ方式のＣＭＯＳ撮像センサであって、撮像面に結像された光学像を電気信号に変換して画像信号を出力する。ローリングシャッター方式は、水平走査で各ラインを、垂直走査で複数のラインからなるフレームを撮影する方式である。画像処理部１０６はＣＰＵ１０１の制御により、撮像センサ１０５の出力した画像信号に対して、色変換処理やガンマ補正などの現像処理を行い、得られた撮影画像データをバッファメモリ１０７に格納する。歪み補正部１０８はＣＰＵ１０１の制御により、バッファメモリ１０７に格納された撮影画像データを読み出し、ローリングシャッタ方式に起因する撮影画像の歪みを補正する。出力部１０９は歪み補正部１０８により歪みが補正された画像信号を外部に出力する。動き検出部１１０はジャイロセンサであって、ビデオカメラ１００本体の動き量を検出し、ＣＰＵ１０１に通知する。例えばパンニングおよびチルティングなどのカメラ本体の動き量を検出できるのであれば、動き検出部は他のセンサであってもかまわない。また、バッファメモリ１０７に格納された撮影画像データを用いて、フレーム間の位置相関から動きベクトルを求めることで、動き量を検出するよう構成しても良い。
【００１８】
図２は撮像センサ１０５のライン毎の画像信号出力タイミングを示す。点線で区切られた矩形領域が１ライン分の画像信号を示しており（中間部のラインは省略）、ライン順に下方向へタイムラグＴをもって出力される。即ち、有効画像がライン数Ｅの撮像センサ１０５において、フレーム０の先頭ライン０の出力タイミングを０とすると、終端ラインＥ−１の出力タイミングはＴ（Ｅ−１）となる。次のフレーム１を出力するまでには、ライン数Ｂに相当する垂直ブランキング期間が存在し、それを含めると１フレームの画像信号の出力時間はＴ（Ｅ＋Ｂ）となる。なお、実際の撮像センサの画像信号出力では、水平ブランキング期間や、ＯＢ（ＯｐｔｉｃａｌＢｌａｃｋ）領域なども存在するが、ここでは説明を単純にするため省略している。
【００１９】
図３はビデオカメラ１００が右方向に動いた場合に（パンニング）、動き検出部１１０が時間経過（縦軸）に対して検出した水平方向の動き量ｄ（横軸）の例を示す。動き検出部１１０は撮像センサ１０５から１フレーム分の画像信号が出力される期間に、図中に黒丸で示すように、複数回継続して動き量ｄ(本実施例の場合は水平方向の動き量)を検出する。ここで、動き量ｄはフレーム０のライン０を基準として、それに対する相対位置を右方向を正とする符号付きで表す。フレーム０の任意のラインｅの出力時の動き量ｄ［０］［ｅ］は、検出された複数の動き量ｄを補間して算出することで求められる。例えば、フレーム０の終端ラインＥ−１の出力時の補間された動き量はｄ［０］［Ｅ−１］と表される。検出された動き量および補間により求められた動き量は、ＣＰＵ１０１の制御のもとでＲＡＭ１０２に記憶される。
【００２０】
図４はビデオカメラ１００が右方向に動いた場合に、バッファメモリ１０７に格納された撮影画像データの各ラインのそれぞれの撮影時刻ｔでの撮影範囲の例を示す。バッファメモリ１０７には撮影中のフレーム０と１つ前のフレーム−１の撮影画像データが格納されており、図中の実線で区切られた矩形領域が、それらのフレームの各ラインの水平方向の撮影範囲を示している。ライン毎に撮像のタイムラグがあるため、撮影範囲はビデオカメラ本体の右方向の動きに応じて水平方向に徐々にずれている。例えば、フレーム０のライン０の左端を水平位置０とすると、ライン０は水平位置０〜Ｗが撮影範囲であり、ラインｙはその動き量ｄ［０］［ｙ］から水平位置ｄ［０］［ｙ］〜ｄ［０］［ｙ］＋Ｗが撮影範囲である。また、フレーム−１のラインｙはその動き量ｄ［−１］［ｙ］から水平位置ｄ［−１］［ｙ］〜ｄ［−１］［ｙ］＋Ｗが撮影範囲である。ここで、Ｗは撮像センサの水平画素数である。
【００２１】
歪み補正部１０８は所定のライン（本実施例ではライン０）を基準として、同一フレームの他のラインの撮影範囲のずれを補正する。図４の例では、ビデオカメラ１００の動きが水平であるため、歪み補正部１０８は出力画像の画素（ｘ，ｙ）に対して、撮影画像のラインｙを水平方向にずらした位置を読み出すことで補正を行う。なお、ここでは説明を単純にするため、撮影画像と出力画像の倍率を等倍としている。しかし、図に示したフレーム０のラインｙの撮影範囲は、基準とするライン０の撮影範囲を超えている（斜線部）。本図のように、１つ前のフレーム−１からフレーム０にかけてビデオカメラ１００の動きが同一方向であれば、斜線部は過去のフレームでの撮影範囲であるため、１つ前のフレーム−１のラインｙを代わりの読み出し元として用いる。例えば、読み出し位置４０１は、フレーム０のラインｙの前記撮影範囲を超えているため、代わりにフレーム−１のラインｙの読み出し位置４０２を用いる。このようにどのフレーム（参照フレーム）の撮影画像データからラインデータを読み出すかの判断方法について次に説明する。
【００２２】
図５は歪み補正部１０８がフレーム０のラインｙの撮影範囲のずれを補正する補正量ｃ［０］と、フレーム０の代わりにフレーム−１のラインｙを読み出す場合にその撮影範囲のずれを補正する補正量ｃ［−１］を決定するフローチャートである。当該フローチャートに係わる処理は、ＣＰＵ１０１がＲＯＭ１０３に記憶されている制御プログラムを読み出し、次いでそれを実行することによって達成される。まず、ステップＳ５０１で撮影中のフレーム０のラインｙの動き量ｄ［０］［ｙ］と１つ前のフレーム−１のラインｙの動き量ｄ［−１］［ｙ］の変化(差)が、撮像センサの水平画素数Ｗ未満であるか判別する。変化がＷ以上である場合、補正限界を超えているためステップＳ５０６でフレーム０の補正量ｃ［０］を０とする。この場合、フレーム−１は補正に用いないため、フレーム−１の補正量ｃ［−１］には何も設定しない。変化がＷ未満であれば、ステップＳ５０２でフレーム０のラインｙの動き量ｄ［０］［ｙ］とフレーム−１のラインｙの動き量ｄ［−１］［ｙ］の積が負であるかどうかを判別する。負であれば、フレーム０のライン０を基準として、フレーム０とフレーム−１のそれぞれのラインｙの撮影範囲のずれが左右反対方向に向いているため、フレーム０の撮影範囲の不足部分（図４に示した斜線部）をフレーム−１の撮影範囲を用いて補正できる。そこで、ステップＳ５０３でフレーム０の補正量ｃ［０］をフレーム０のラインｙの動き量から−ｄ［０］［ｙ］、フレーム−１の補正量ｃ［−１］をフレーム−１のラインｙの動き量から−ｄ［−１］［ｙ］とする。一方、フレーム０とフレーム−１のラインｙの動き量の積が正であれば、基準となるフレーム０のライン０に対して、フレーム０とフレーム−１のそれぞれのラインｙの撮影範囲は同じ方向に偏っている。そのため、フレーム０の撮影範囲の不足部分はフレーム−１の撮影範囲を用いても完全には補正できない。そこで、ステップＳ５０４でフレーム０のラインｙの動き量ｄ［０］［ｙ］より、フレーム−１のラインｙの動き量ｄ［−１］［ｙ］が小さいかを判別する。フレーム−１の動き量が小さい場合、フレーム−１のほうが基準となる（フレーム０のライン０の）撮影範囲により近いため、フレーム０の不足している撮影範囲の一部を補正することができる。そこで、ステップＳ５０５でフレーム０の補正量ｃ［０］をフレーム０とフレーム−１のラインｙの動き量の差分から、ｄ［０］［ｙ］−ｄ［−１］［ｙ］とし、フレーム−１の補正量ｃ［−１］を０とする。フレーム−１のほうが動き量が大きい場合、ステップＳ５０６でフレーム０の補正量ｃ［０］を０とする。この場合、フレーム−１は補正に用いないため、フレーム−１の補正量ｃ［−１］には何も設定しない。
【００２３】
なお、図５のステップＳ５０１ではライン毎に補正限界を超えているか判定しているが、同一フレームで補正限界を超えないラインと超えるラインが連続していた場合、それらの補正量が不連続になってしまう。そのため、動き検出部１１０が１フレーム前に比べて撮像センサの水平画素数を超える動きを検出した場合、歪み補正部１０８はそのフレーム全体に対して歪み補正を行わないように構成する。
【００２４】
図６は歪み補正部１０８がフレーム０の画素（ｘ，ｙ）の参照フレームｆを決定するフローチャートである。まず、ステップＳ６０１でフレーム０の補正量ｃ［０］を加えた画素の水平位置ｘ＋ｃ［０］が、フレーム０のラインｙの撮影範囲内かを判別する。撮影範囲内であれば、ステップＳ６０２で参照フレームｆをフレーム０とする。このとき、フレーム０の画素（ｘ＋ｃ［０］，ｙ）が読み出し元となる。すなわち、補正データとして読み出される。範囲外であれば、ステップＳ６０３で参照フレームｆをフレーム−１とする。このとき、フレーム−１のラインｙに対する補正量ｃ［−１］は、その動き量からｄ［−１］［ｙ］とし、フレーム−１の画素（ｘ＋ｃ［−１］，ｙ）が読み出し元となる。
【００２５】
図７はビデオカメラ１００が右方向に一定速度で動きながら被写体を撮影した画像に対して、歪み補正部１０８が歪み補正を行った例を示す。フレーム−１では（ａ）〜（ｂ）に示すように、被写体７００に対して７０１の範囲が撮影されて、撮影画像７０３がバッファメモリ１０７に格納される。また、フレーム０では（ｄ）〜（ｅ）に示すように、被写体７００に対して７１１の範囲が撮影されて、撮影画像７１３がバッファメモリ１０７に格納される。撮影画像７１３に対してその先頭ラインを基準に歪みを補正するには、（ｆ）に示すように破線で囲まれた領域を読み出す必要があるが、斜線部７１４が撮影画像７１３の範囲を超えている。この部分は（ｄ）に示したフレーム０の撮影範囲７１１と接する斜線部７１２に対応しており、（ａ）に示したフレーム−１の撮影範囲７０１に斜線部７１２は含まれている。歪み補正部１０８は、図５〜６に示したフローチャートの処理によって、フレーム０の撮影画像７１３を超えた斜線部７１４の代わりに、（ｃ）に示すようにフレーム−１の撮影画像７０３に含まれる斜線部７０４を読み出し元とする。その結果、（ｇ）に示すように歪みを補正したフレーム０の出力画像７１５が、斜線部７１６を欠くことなく出力される。
【００２６】
（ｆ）に示した撮影画像７１３を超えた斜線部７１４は、各ラインｅ（＝０〜Ｅ−１）の幅が各ラインｅの動き量ｄ［０］［ｅ］と等しく、右端で撮影画像７１３の左端と接している。（ｃ）に示した撮影画像７０３の斜線部７０４は、各ラインｅ（＝０〜Ｅ−１）の幅が斜線部７１４と等しく、左端は撮影画像７０３の左端から各ラインｅの動き量ｄ［−１］［ｅ］を空けた位置となっている。すなわち、フレーム０とフレーム−１の各ラインの動き量から、斜線部の位置と形状は決定される。
【００２７】
図８はビデオカメラ１００が左方向への動きから右方向への動きに徐々に変化しながら被写体を撮影した画像に対して、歪み補正部１０８が歪み補正を行った例を示す。フレーム−１では（ａ）〜（ｂ）に示すように、被写体８００に対して８０１の範囲が撮影されて、撮影画像８０３がバッファメモリ１０７に格納される。また、フレーム０では（ｄ）〜（ｅ）に示すように、被写体８００に対して８１１の範囲が撮影されて、撮影画像８１３がバッファメモリ１０７に格納される。撮影画像８１３に対して先頭ラインを基準に歪みを補正するには、（ｆ）に示すように破線で囲まれた領域を読み出す必要があるが、斜線部８１４が撮影画像８１３の範囲を超えている。この部分は（ｄ）に示したフレーム０の撮影範囲８１１と接する斜線部８１２に対応しており、（ａ）に示したフレーム−１の撮影範囲８０１と斜線部８１２は多くの部分で重なっているが一部は重なっていない。歪み補正部１０８は、図５〜６に示したフローチャートの処理によって、フレーム０の撮影画像８１３を超えた斜線部８１４の代わりに、（ｃ）に示すフレーム−１の撮影画像８０３と斜線部８０４の重なった領域を読み出し元とする。撮影画像８０３と斜線部８０４の重ならない領域があるため、歪み補正部はフレーム０の歪みを完全には補正せず、フレーム−１の撮影画像８０３を越えない範囲で各ラインの補正量を決定する。その結果、（ｇ）に示すように可能な範囲で歪みを補正されたフレーム０の出力画像８１５が、斜線部８１６を欠くことなく出力される。
【００２８】
（ｆ）に示した撮影画像８１３を超えた斜線部８１４は、各ラインｅ（＝０〜Ｅ−１）の幅が各ラインｅの動き量ｄ［０］［ｅ］と等しく、右端で撮影画像８１３の左端と接している。（ｃ）に示した撮影画像８０３の斜線部８０４は、各ラインｅ（＝０〜Ｅ−１）の幅が斜線部８１４と等しく、左端は撮影画像８０３の左端から各ラインｅの動き量ｄ［−１］［ｅ］を（正負の符号を考慮して）空けた位置となっている。図に示したラインＹより前のラインでは、撮影画像８０３と斜線部８０４で重なっている領域がないため、（ｇ）に示したフレーム０の出力画像８１５の対応する（ラインＹより前の）部分は全く補正されない。ラインＹより後のラインでは、撮影画像８０３と斜線部８０４の重なっている幅の量だけ、フレーム０の対応する（ラインＹより後の）部分は補正される。すなわち、フレーム０とフレーム−１の各ラインの動き量から、斜線部の位置と形状は決定される。
【００２９】
本実施例によれば、撮影画像に対して出力画像の画角を狭くしなくても、ローリングシャッタ方式の撮像センサによる撮像画像の歪みが補正できる。また、撮像センサに対して、例えば走査方向の入れ替えなどの構成を導入することなく、撮像画像の読み出し制御だけで撮影画像のローリングシャッタ歪を補正できる。
【００３０】
第２の実施例
次に、本発明の第２の実施形態について説明する。
【００３１】
本実施形態のビデオカメラは、図１のビデオカメラ１００と同じ構成であるので、その説明は省略する。本実施形例においては、歪み補正部１０８は先頭ラインでなく中間ラインを基準として、同一フレームの他のラインの撮影範囲のずれを補正する。
【００３２】
基準とする中間ラインＥ／２の出力タイミングを０として、動き検出部１１０の検出結果から、フレーム０の任意のラインｅの出力時の動き量ｄ［０］［ｅ］は求められる。例えば、フレーム０の先頭ライン０の出力時の動き量はｄ［０］［０］、終端ラインＥ−１の出力時の動き量はｄ［０］［Ｅ−１］である。
【００３３】
バッファメモリ１０７には撮影中のフレーム１と１つ前のフレーム０と２つ前のフレーム−１の撮影画像データが格納されており、歪み補正部１０８はフレーム０に対して歪み補正を行う。歪み補正部１０８は中間ラインＥ／２を基準として、同一フレームの他のラインの撮影範囲のずれを補正する。ビデオカメラ１００の動きが水平かつ同一方向であれば、中間ラインＥ／２より後のラインのずれを補正する際には、第１の実施形態と同様に撮影範囲を超える過去の撮影範囲が必要となる。一方、中間ラインＥ／２より前のラインのずれを補正する際に、それらの撮影範囲を超える未来の撮影範囲が必要となる。
【００３４】
このため、歪み補正部１０８は、中間ラインＥ／２より後のラインに対しては、第１の実施例で説明した図５と図６のフローチャートと同じ処理を行い、フレーム０の撮影範囲を超えた部分はフレーム−１を代わりの読み出し元として用いる。また、中間ラインＥ／２より前のラインに対しては、図５と図６のフローチャートに示した処理に対して、フレーム０の撮影範囲を超えた部分をフレーム−１ではなくフレーム１を代わりの読み出し元として用いるよう変更した処理を行う。
【００３５】
図９はビデオカメラ１００が右方向に一定速度で動きながら被写体を撮影した画像に対して、歪み補正部１０８が歪み補正を行った例を示す。（ａ）（ｂ）（ｃ）に連続するフレーム−１の撮影画像９０３、フレーム０の撮影画像９１３、フレーム１の撮影画像９２３をそれぞれ示す。（ｂ）に示すフレーム０の撮影画像９１３に対して中間ラインＥ／２を基準に歪みを補正するには、破線で囲まれた領域を読み出す必要があるが、斜線部９１４と斜線部９１５が撮影画像９１３の範囲を超えている。斜線部９１４は（ａ）に示したフレーム−１の撮影画像９０３に含まれる斜線部９０４に、斜線部９１５は（ｃ）に示したフレーム１の撮影画像９２３に含まれる斜線部９２５にそれぞれ対応する。歪み補正部１０８は、フレーム０の斜線部９１４と斜線部９１５の代わりに、それらの領域９０４、９２５を読み出し元とする。すなわち、補正データとして使用する。その結果、（ｄ）に示すように歪みを補正したフレーム０の出力画像９１６が、斜線部９１７と斜線部９１８を欠くことなく出力される。なお、斜線部の位置と形状は、フレーム−１の中間ラインより後の各ラインと、フレーム０の各ラインと、フレーム１の中間ラインより前の各ラインの動き量から決定される。
【００３６】
本実施例によれば、第１の実施例に比べて、画像中心部については撮影画像がそのまま用いられるため、補正の影響を目立たなくすることができる。
【００３７】
第３の実施例
次に、本発明の第３の実施例について説明する。
本実施例のビデオカメラも、図１のビデオカメラ１００と同じ構成であるため、その説明を省略する。
【００３８】
本実施例においては、歪み補正部１０８は補正するフレームの撮影範囲の境界近傍にある画素に対して、そのフレームから読み出した画素と、補正に用いる前後に撮影されたフレームから読み出した画素とを、境界からの距離に応じた比率で合成する補正を行う。
【００３９】
例えば、フレーム０を補正対象とし、その撮影範囲の不足部分をフレーム−１の撮影範囲で補う場合、フレーム０の撮影範囲の境界から数画素を、フレーム−１のそれらと同じ撮影範囲の数画素と合成して読み出す。例えば、境界から順にフレーム０の５画素を１０％、２５％、５０％、７５％、９０％、同じ撮影位置のフレーム−１の５画素を９０％、７５％、５０％、２５％、１０％の重み付けで合成する。
【００４０】
本実施例によれば、第１及び第２の実施例に比べて、前後のフレームを参照して補った画像部分においてつなぎ目を目立たなくすることが出来る。
【００４１】
以上説明した第１〜３の実施例では、読み出し元(参照フレームから読み出される画素)を特定ラインの特定位置として説明している。しかしこれに限らず、より良好な画質を得るためには、読み出し位置の周辺ライン・周辺画素に対してフィルタ演算を行って補正画素データ（出力画像）を生成してもよい。この場合、フィルタ演算の参照領域がフレームの撮影範囲を跨いでしまうときは、フレームを跨いで参照領域を設定するよう構成すればよい。
【００４２】
さらに、上述した第１〜３の実施例では、読み出し位置が撮影範囲を超えた場合、常に前後のフレームを用いて補正を行っている。これについても、動き検出部１１０が検出した動きがビデオカメラ１００のパンニングであると判定された場合のみ、第１〜３の実施例の補正を行うよう構成しても良い。
【００４３】
上述した第１〜３実施例においては、ビデオカメラの水平方向の動きによる撮影画像の歪の補正構成として本件発明を説明したが、次に垂直方向のビデオカメラの動きによる撮影画像の歪の補正構成として本件発明の実施例を説明する。以下の実施例においても、ビデオカメラ１００の構成は上記第１〜３実施例と同じであるので、その説明は省略する。
【００４４】
第４実施例
図１０はビデオカメラ１００が上方向に動いた場合に（チルティング）、動き検出部１１０が時間経過（横軸）に対して検出した垂直方向の動き量（縦軸）の例を示す。動き検出部１１０は撮像センサ１０５から１フレーム分の画像信号が出力される期間に、複数回（図中の黒丸部分）垂直方向の動き量ｄを検出する。ここで、動き量ｄはフレーム０のライン０の撮影時刻を基準として、それに対する各ラインの撮影時刻における相対位置を下方向を正とする符号付きで表す。フレーム０の任意のラインｅの出力時の動き量ｄ［０］［ｅ］は、上記複数の検出結果を用いた補間から求められる。例えば、フレーム０の有効画像の終端ラインＥ−１の出力時の動き量はｄ［０］［Ｅ−１］となる。
【００４５】
図１１はビデオカメラ１００が上方向に動いた場合の、時間経過（横軸）に対する各ラインの撮影位置の例を示す。縦に８、横に１６並んでいる実線で区切られた矩形領域は、撮像センサの各ラインが、時間経過に対してどのように動いているかを示している。ここでは図を単純化するために、有効画像のライン数Ｅ＝６、垂直ブランキングのライン数Ｂ＝２、合計のライン数を８として図示している。左から８列分がフレーム−１を撮影している期間であって、中央から右に８列分がフレーム０を撮影している期間を示す。太線で区切られた矩形領域は、その時刻に撮影されているラインであることを示す。また、図の上下方向は撮影画像の最上部からの距離に対応し、隣接する太線矩形領域が上下方向で一部重なっているのはチルティングによるカメラの上方向の動きによる。したがって、チルティング下で得られる撮影画像（太線領域１１１１〜１１１６）は、矩形領域１１１１〜１１２０に対応する画像より画像の垂直方向において狭い範囲の画像となる。この撮影画像がＥラインの１フレームの画像として記憶された場合、図１３の画像１３０３のように垂直方向に引き伸ばされた画像になる。例えば、左端の上端にある太線で区切られた矩形領域１１０１は、フレーム−１のライン０がこの時刻に撮影されることを示す。その右隣下の矩形領域１１０２は、上方向のチルティングにより移動したフレーム−１において、ライン１が次に撮影されることを示す。
【００４６】
バッファメモリ１０７には撮影中のフレーム０と１つ前のフレーム−１の撮影画像データが格納される。図中の太線で区切られた矩形領域１１０１〜１１０８、１１１１〜１１１８のうち、有効画像の範囲である１１０１〜１１０６、１１１１〜１１１６が、それらのフレームの各ラインの撮影位置を示している。ライン毎に撮像のタイムラグがあるため、撮影位置は垂直方向に徐々にずれている。フレーム０のライン０の撮影時刻におけるフレーム０のライン０の垂直位置を０とすると、同一時刻におけるラインＥ−１（矩形領域１１２０）の位置はＨ（（Ｅ−１）／Ｅ）であるが、ラインＥ−１の撮影時刻ではＨ（（Ｅ−１）／Ｅ）＋ｄ［０］［Ｅ−１］となる。ここで、Ｈは撮像センサの有効画像のライン数であり、垂直位置は下方向を正とする符号付きで表される。
【００４７】
歪み補正部１０８は所定のライン（本実施例ではライン０）を基準として、上述のように動き量ｄを用いて同一フレームの他のラインの撮影位置のずれを補正する。図１１の例では、ビデオカメラ１００の動きが垂直であるため、歪み補正部１０８は出力画像のラインに対して、垂直方向にずらした撮影画像のラインを読み出すことで補正を行う。例えば、出力画像のラインＥ−２を出力する場合、基準時刻におけるフレーム０のラインＥ−２は矩形領域１１１９の位置Ｈ（（Ｅ−２）／Ｅ）にある。これはラインＥ−１の撮影時刻におけるラインＥ−１の矩形領域１１１６と同じ垂直位置Ｈ（（Ｅ−１）／Ｅ）＋ｄ［０］［Ｅ−１］であるため、ラインＥ−２の代わりにラインＥ−１を読み出すことで補正を行うことができる。すなわち、基準としたライン０の撮影時刻に対応する位置でのライン２〜Ｅ−１の画像を得ることができる。ここでは説明を単純にするため、撮影画像と出力画像の倍率を等倍としている。なお、垂直位置の全く同じラインが撮影画像になくても、その周辺のラインを読み出して補間処理を行うことで出力画像のラインを得ることができる。
【００４８】
しかし、出力画像のラインＥ−１を出力する場合、基準時刻におけるフレーム０のラインＥ−１は矩形領域１１２０（斜線部）の位置にあり、フレーム０の有効画像１１１１〜１１１６の撮影範囲を超えている。本図のように、１つ前のフレーム−１からフレーム０にかけてビデオカメラ１００の動きが同一方向であれば、斜線部は過去のフレームでの撮影範囲であるため、１つ前のフレーム−１を代わりの読み出し元として用いる。例えば、矩形領域１１２０の垂直位置は、フレーム−１のラインＥ−２の矩形領域１１０５と、ラインＥ−１の矩形領域１１０６の間であり、それらを読み出して補間処理を行うことで、出力画像のラインＥ−１を得ることができる。
【００４９】
図１２は歪み補正部１０８が出力画像のフレーム０のラインｙを出力する際に、読み出し元となる撮影画像のフレームｆと補正のオンオフを決定するフローチャートである。本フローチャートによる処理も、ＲＯＭ１０３に記憶されている制御プログラムをＣＰＵ１０１が読み出して実行することにより達成される。まず、ステップＳ１２０１において、Ｔｏｐ（０）はフレーム０で撮影位置が最も上であったラインの撮影位置を示し、Ｂｔｍ（０）はフレーム０で撮影位置が最も下であったラインの撮影位置を示す。ビデオカメラ１００の垂直方向の動きが、撮像センサの垂直走査の速度より遅ければ、Ｔｏｐ（０）はフレーム０のライン０の撮影位置であって、Ｂｔｍ（０）はフレーム０のラインＥ−１の撮影位置となる。基準時刻でのフレーム０のラインｙの垂直位置はＨ（ｙ／Ｅ）であって、これがフレーム０の撮影範囲であるＴｏｐ（０）とＢｔｍ（０）の間に収まっている（ＹＥＳ）かを判定する。収まっている場合には、ステップＳ１２０２において参照フレームｆを０とし、ステップＳ１２０５で補正をオンにして処理を終了する。ステップＳ５０１でフレーム０の撮影範囲に収まっていない（ＮＯの）場合、ステップＳ１２０３でＨ（ｙ／Ｅ）がフレーム−１の撮影範囲であるＴｏｐ（−１）とＢｔｍ（−１）の間に収まっているかを判定する。収まっている（ＹＥＳの）場合には、ステップＳ１２０４において参照フレームｆを−１とし、ステップＳ５０６で補正をオンにして処理を終了する。ステップＳ１２０３でフレーム−１の撮影範囲にも収まっていない（ＮＯの）場合には、補正限界を超えているため、ステップＳ１２０７で補正をオフにして処理を終了する。
【００５０】
なお、図１２のステップＳ１２０３ではライン毎に補正限界を超えているか判定しているが、同一フレームで補正限界を超えないラインと超えるラインが連続していた場合、それらの補正量が不連続になってしまう。そのため、実際には基準時刻におけるフレーム０のライン０とラインＥ−１の垂直位置が、フレーム０とフレーム−１を足し合わせた撮影範囲に含まれているかを予め判定しておく。即ち、０とＨ（Ｅ−１／Ｅ）が、Ｔｏｐ（０）からＢｔｍ（０）と、Ｔｏｐ（−１）からＢｔｍ（−１）を足し合わせた範囲に含まれているかを判定する。含まれていない場合には、フレーム全体に対する補正をオフとする。これは、例えばフレーム−１からフレーム０の途中までビデオカメラ１００が下方向に動き、フレーム０の途中からビデオカメラ１００が上方向に反転して動いた場合などが該当する。この場合、基準時刻でのフレーム０のラインＥ−１の垂直位置がいずれのフレームでも撮影されておらず、補正限界を超えていると判定される。
【００５１】
また、図１２のステップＳ１２０４で参照フレームが−１となった場合でも、周辺のラインとして補間処理に利用できるラインがフレーム０に存在する場合には、フレーム−１とフレーム０のラインから補間処理を行うこともできる。例えば、図１１では基準時刻にフレーム０のラインＥ−１が矩形領域１１２０（斜線部）の位置にあったため、近傍の２ラインで線形補間する場合には、フレーム−１のラインＥ−２の矩形領域１１０５と、ラインＥ−１の矩形領域１１０６を利用することになる。これに対して、矩形領域１１０５よりも、フレーム０のラインＥ−１の矩形領域１１１６がより近傍に位置していれば、これとフレーム−１のラインＥ−１の矩形領域１１０６の２ラインから線形補間することができる。
【００５２】
図１３はビデオカメラ１００が上方向に一定速度で動きながら被写体を撮影した画像に対して、歪み補正部１０８が歪み補正を行った例を示す。フレーム−１では（ａ）〜（ｂ）に示すように、被写体１３００に対して１３０１の範囲が撮影されて、縦に伸びた撮影画像１３０３がバッファメモリ１０７に格納される。また、フレーム０では（ｄ）〜（ｅ）に示すように、被写体１３００に対して６１１の範囲が撮影されて、縦に伸びた撮影画像１３１３がバッファメモリ１０７に格納される。撮影画像１３１３に対して先頭ラインを基準に歪みを補正するには、（ｆ）に示すように破線で囲まれた領域を読み出して縦に縮める必要があるが、斜線部１３１４が撮影画像１３１３の範囲を超えている。この部分は（ｄ）に示したフレーム０の撮影範囲１３１１と接する斜線部１３１２に対応しており、（ａ）に示したフレーム−１の撮影範囲１３０１に斜線部１３１２は含まれている。歪み補正部１０８は、図１２に示したフローチャートの処理によって、フレーム０の撮影画像１３１３を超えた斜線部１３１４の代わりに、（ｃ）に示すようにフレーム−１の撮影画像１３０３に含まれる斜線部１３０４を読み出し元とする。その結果、（ｇ）に示すように歪みを補正したフレーム０の出力画像１３１５が、斜線部１３１６を欠くことなく出力される。
【００５３】
このように上方向へのチルティングに対しては、フレーム０だけでなくフレーム−１を読み出し元(参照フレーム)として用いることで歪みを補正する。
【００５４】
図１４はビデオカメラ１００が下方向に一定速度で動きながら被写体を撮影した画像に対して、歪み補正部１０８が歪み補正を行った例を示す。フレーム０で（ａ）〜（ｂ）に示すように、被写体１４００に対して１４０１の範囲が撮影されて、縦に縮んだ撮影画像１４０３がバッファメモリ１０７に格納される。撮影画像１４０３に対して先頭ラインを基準に歪みを補正するには、（ｃ）に示すように破線で囲まれた領域を読み出して縦に伸ばす必要がある。上方向へのチルティングの場合に対して、読み出し範囲が撮影画像１４０３に包含されていて、斜線部１４０４が余っている。この部分は（ａ）に示したフレーム０の撮影範囲１４０１に含まれる斜線部１４０２に対応している。歪み補正部１０８は、図１２に示したフローチャートの処理によって、フレーム０の撮影画像１４０３のみを読み出し元として、（ｄ）に示すように歪みを補正したフレーム０の出力画像１４０５を出力する。
【００５５】
このようにビデオカメラの下方向へのチルティングに対しては、フレーム０だけで歪みを補正する。
【００５６】
以上説明した本件発明の第４の実施例によれば、撮影画像に対して出力画像の画角を狭くしなくても、ローリングシャッタ方式の撮像センサによる撮影画像の歪みが補正できる。また、撮像センサに対して、例えば走査方向の入れ替えなどの構成を導入することなく、撮像画像の読み出し制御だけで撮影画像のローリングシャッタ歪を補正できる。
【００５７】
第５の実施形態
次に、本発明の第５の実施形態について説明する。
本実施例においては、歪み補正部１０８は先頭ラインでなく中間ラインを基準として、同一フレームの他のラインの撮影範囲のずれを補正する。
【００５８】
基準とする中間ラインＥ／２の出力タイミングを０として、動き検出部１１０の検出結果から、フレーム０の任意のラインｅの出力時の動き量ｄ［０］［ｅ］は求められる。例えば、フレーム０の先頭ライン０の出力時の動き量はｄ［０］［０］、終端ラインＥ−１の出力時の動き量はｄ［０］［Ｅ−１］となる。
【００５９】
バッファメモリ１０７には撮影中のフレーム１と１つ前のフレーム０と２つ前のフレーム−１の撮影画像データが格納されており、歪み補正部１０８はフレーム０に対して歪み補正を行う。歪み補正部１０８は中間ラインＥ／２を基準として、同一フレームの他のラインの撮影位置のずれを補正する。ビデオカメラ１００の動きが垂直かつ上方向であれば、中間ラインＥ／２より後で撮影範囲を超えるラインを補正する際には、第４の実施形態と同様に過去の撮影範囲が必要となる。一方、中間ラインＥ／２より前で撮影範囲を超えるラインを補正する際には、未来の撮影範囲が必要となる。
【００６０】
このため、歪み補正部１０８は、中間ラインＥ／２より後のラインに対しては、第４の実施例で説明した図１２のフローチャートと同じ処理を行い、フレーム０の撮影範囲を超えた部分はフレーム−１を代わりの読み出し元として用いる。また、中間ラインＥ／２より前のラインに対しては、図１２のフローチャートに示した処理に対して、フレーム０の撮影範囲を超えた部分をフレーム−１ではなくフレーム１を代わりの読み出し元として用いるよう変更した処理を行う。
【００６１】
図１５はビデオカメラ１００が上方向に一定速度で動きながら被写体を撮影した画像に対して、歪み補正部１０８が歪み補正を行った例を示す。（ａ）（ｂ）（ｃ）に連続するフレーム−１の撮影画像１５０４、フレーム０の撮影画像１５１４、フレーム１の撮影画像１５２４をそれぞれ示す。フレーム０の撮影画像１５１４に対して中間ラインＥ／２を基準に歪みを補正するには、破線で囲まれた領域を読み出す必要があるが、斜線部１５１５と斜線部１５１６が撮影画像１５１４の範囲を超えている。斜線部１５１６は（ａ）に示したフレーム−１の撮影画像１５０４に含まれる斜線部１５０６に、斜線部１５１５は（ｃ）に示したフレーム１の撮影画像１５２４に含まれる斜線部１５２５にそれぞれ対応する。歪み補正部１０８は、フレーム０の斜線部１５１５と斜線部１５１６の代わりに、それらの領域を読み出し元とする。その結果、（ｄ）に示すように歪みを補正したフレーム０の出力画像１５１７が、斜線部１５１８と斜線部１５１９を欠くことなく出力される。
【００６２】
なお、下方向へのチルティングに対しては、第４の実施例と同様に、フレーム０だけで歪みを補正する。
【００６３】
本実施形態のビデオカメラ１００は第４の実施例のビデオカメラに比べ、画像中心部は撮影画像がそのまま用いられるため、撮影画像において補正の影響を目立たなくすることができる。
【００６４】
以上説明した第４〜５の実施例においても、読み出し元(参照フレームから読み出される画素)を特定ラインの特定位置として説明している。しかし、より良好な画質を得るためには、読み出し位置の周辺ライン・周辺画素に対してフィルタ演算を行って補正画素データ（出力画像）を生成してもよい。この場合、フィルタ演算の参照領域がフレームの撮影範囲を跨いでしまうときは、フレームを跨いで参照領域を設定するよう構成すればよい。
【００６５】
さらに、上述した第４〜５の実施例では、読み出し位置が撮影範囲を超えた場合、常に前後のフレームを用いて補正を行っている。これについても、動き検出部１１０が検出した動きがビデオカメラ１００のチルティングであると判定された場合のみ、第４〜５の実施例の補正を行うよう構成しても良い。
【００６６】
第４〜５の実施形態では、読み出し位置が撮影範囲を超えた場合、常に前後のフレームを用いて補正を行っているが、動き検出部１１０の検出結果によりビデオカメラ１００がチルティングしていると判定された場合のみ、補正を行うよう構成しても良い。
【００６７】
上述した実施例においては、図５〜６及び図１２に示した各処理は、各処理の機能を実現する為の制御プログラムをメモリ（ＲＯＭ１０３）から読み出してＣＰＵ１０１が実行することによりその機能を実現させるものである。しかし、これに限定されるものではなく、図５〜６及び図１２に示した各処理の全部または一部の機能を専用のハードウェアにより実現してもよい。また、上述したメモリは、光磁気ディスク装置、フラッシュメモリ等の不揮発性のメモリや、ＣＤ−ＲＯＭ等の読み出しのみが可能な記録媒体より構成されてもよい。さらには、それら媒体の組合せによるコンピュータ読み取り、書き込み可能な記録媒体より構成されてもよい。
【００６８】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００６９】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。この場合、プログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも「コンピュータ読み取り可能な記録媒体」に含むものとする。
【００７０】
また、上記プログラムは、前述した機能の一部を実現する為のものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００７１】
また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体およびプログラムプロダクトは、本発明の範疇に含まれる。
【００７２】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図１】
0005548552.tif 000002
【図２】
0005548552.tif 000003
【図３】
0005548552.tif 000004
【図４】
0005548552.tif 000005
【図５】
0005548552.tif 000006
【図６】
0005548552.tif 000007
【図７】
0005548552.tif 000008
【図８】
0005548552.tif 000009
【図９】
0005548552.tif 000010
【図１０】
0005548552.tif 000011
【図１１】
0005548552.tif 000012
【図１２】
0005548552.tif 000013
【図１３】
0005548552.tif 000014
【図１４】
0005548552.tif 000015
【図１５】
0005548552.tif 000016
【図１６】
0005548552.tif 000017
【図１７】
0005548552.tif 000018