(57)【特許請求の範囲】
【請求項１】
入力フレームが撮像部により撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す切り出し処理部と、
前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリと、
前記現在切出しフレームと前記過去切出しフレームとを合成して合成フレームとして出力する合成処理部と、
連続する２枚の前記合成フレームのそれぞれの露光タイミングの一方から他方までの期間内の前記撮像部の動き量を合成フレーム間動き量として取得する合成フレーム間動き量積分器と、
前記合成フレーム間動き量に基づいて前記合成フレームの一部を出力フレームとして切り出す合成フレーム補正部と、
連続する２枚の前記現在切出しフレームの一方の露光タイミングと他方の露光タイミングとの間の起点タイミングから前記一方の露光タイミングまでの期間内の前記撮像部の動き量を合成フレーム内動き量として取得する合成フレーム内動き量積分器と
を具備し、
前記切り出し処理部は、前記合成フレーム内動き量に基づいて前記現在切出しフレームを切り出して前記フレームメモリに供給し、
前記合成フレーム間動き量は、前記合成フレーム間動き量の演算を開始する第１の開始タイミングから前記起点タイミングまでの第１の予測期間内の前記動き量を示す第１の予測値を含み、
前記合成フレーム間動き量積分器は、前記第１の開始タイミングまでの前記動き量に基づいて前記第１の予測値を取得する
画像処理装置。
【請求項２】
前記第１の予測期間の長さは、所定の閾値を超えない
請求項１記載の画像処理装置。
【請求項３】
前記合成フレーム内動き量は、前記合成フレーム内動き量の演算を開始する第２の開始タイミングから前記起点タイミングまでの第２の予測期間内の前記動き量を示す第２の予測値を含み、
前記合成フレーム内動き量積分器は、前記第２の開始タイミングまでの前記撮像部の動き量に基づいて前記第２の予測値を取得する
請求項１記載の画像処理装置。
【請求項４】
前記第２の予測期間の長さは、所定の閾値を超えない
請求項３記載の画像処理装置。
【請求項５】
入力フレームが撮像部により撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す切り出し処理部と、
前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリと、
前記現在切出しフレームと前記過去切出しフレームとを合成して合成フレームとして出力する合成処理部と、
連続する２枚の前記現在切出しフレームに基づいて被写体が動いた方向を示す動きベクトルを検出する被写体動き検出部と
を具備し、
前記合成処理部は、前記動きベクトルに基づいて前記現在切出しフレームと前記過去切出しフレームとを合成する
画像処理装置。
【請求項６】
入力フレームを撮像する撮像部と、
前記入力フレームが撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す入力フレーム切り出し処理部と、
前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリと、
前記現在切出しフレームと前記過去切出しフレームとを合成して合成フレームとして出力する合成処理部と、
連続する２枚の前記現在切出しフレームに基づいて被写体が動いた方向を示す動きベクトルを検出する被写体動き検出部と
を具備し、
前記合成処理部は、前記動きベクトルに基づいて前記現在切出しフレームと前記過去切出しフレームとを合成する
撮像装置。
【請求項７】
前記撮像部の動きを検出するセンサをさらに具備する
請求項６記載の撮像装置。
【請求項８】
入力フレームが撮像部により撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す入力フレーム切り出し処理手順と
前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリに保持された前記過去切出しフレームと前記現在切出しフレームとを合成して合成フレームとして出力する合成処理手順と、
連続する２枚の前記現在切出しフレームに基づいて被写体が動いた方向を示す動きベクトルを検出する被写体動き検出手順と
を具備し、
前記合成処理手順において、前記動きベクトルに基づいて前記現在切出しフレームと前記過去切出しフレームとを合成する
画像処理方法。
【請求項９】
入力フレームが撮像部により撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す切り出し処理手順と
前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリに保持された前記過去切出しフレームと前記現在切出しフレームとを合成して合成フレームとして出力する合成処理手順と、
連続する２枚の前記現在切出しフレームに基づいて被写体が動いた方向を示す動きベクトルを検出する被写体動き検出手順と
をコンピュータに実行させるためのプログラムであって、
前記合成処理手順において、前記動きベクトルに基づいて前記現在切出しフレームと前記過去切出しフレームとを合成する
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、画像処理装置、撮像装置、画像処理方法、および、当該方法をコンピュータに実行させるためのプログラムに関する。詳しくは、フレームメモリにフレームを保持する画像処理装置、撮像装置、画像処理方法、および、当該方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
従来より、画像を撮像する撮像装置においては画像の画質を向上させる目的で、電子手ブレ補正や画像合成処理などの画像処理が行われている。これらの処理のうち電子手ブレ補正は、フレーム内において切り出す領域のサイズを予め定めておき、手ブレの方向に沿って、その領域を初期位置から移動させて切り出す処理である。また、画像合成処理は、ダイナミックレンジの拡大やノイズの低減を目的として、複数のフレームを合成する処理である。このような画像処理を行う装置として、例えば、フレームメモリで遅延させたフレームと遅延前のフレームとを合成して合成フレームを生成し、その合成フレームに対して、さらに電子手ブレ補正を行う画像処理装置が提案されている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２３２３８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述の従来技術では、フレームメモリを用いた合成処理の後に電子手ブレ補正が行われる。しかしながら、この構成では、画像の解像度が高くなるほど、合成に必要なフレームメモリの容量が大きくなるという問題がある。このフレームメモリの容量が増大すると、合成処理に要する計算量や、撮像装置のコストが上昇するため、フレームメモリの容量は小さいことが望ましい。
【０００５】
本技術はこのような状況に鑑みて生み出されたものであり、フレームメモリを用いて画像処理を行う装置において、フレームメモリの容量を削減することを目的とする。
【課題を解決するための手段】
【０００６】
本技術は、上述の問題点を解消するためになされたものであり、その第１の側面は、入力フレームが撮像部により撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す切り出し処理部と、前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリと、前記現在切出しフレームと前記過去切出しフレームとを合成して合成フレームとして出力する合成処理部とを具備する画像処理装置、画像処理方法、および、当該方法をコンピュータに実行させるためのプログラムである。これにより、フレームの合成前に入力フレームの一部が切り出されるという作用をもたらす。
【０００７】
また、この第１の側面において、連続する２枚の前記合成フレームのそれぞれの露光タイミングの一方から他方までの期間内の前記撮像部の動き量を合成フレーム間動き量として取得する動き量取得部と、前記合成フレーム間動き量に基づいて前記合成フレームの一部を出力フレームとして切り出す合成フレーム補正部とをさらに具備してもよい。これにより、合成フレーム間動き量に基づいて合成フレームの一部が出力フレームとして切り出されるという作用をもたらす。
【０００８】
また、この第１の側面において、連続する２枚の前記現在切り出しフレームの一方の露光タイミングと他方の露光タイミングとの間の起点タイミングから前記一方の露光タイミングまでの期間内の前記撮像部の動き量を合成フレーム内動き量として取得する動き量取得部をさらに具備し、前記切り出し処理部は、前記合成フレーム内動き量に基づいて前記現在切り出しフレームを切り出して前記保持部に供給してもよい。これにより、合成フレーム内動き量に基づいて現在切り出しフレームが切り出されるという作用をもたらす。
【０００９】
また、この第１の側面において、前記合成フレーム間動き量は、前記合成フレーム間動き量の演算を開始する第１の開始タイミングから前記起点タイミングまでの第１の予測期間内の前記動き量を示す第１の予測値を含み、前記動き量取得部は、前記第１の開始タイミングまでの前記動き量に基づいて前記第１の予測値を取得してもよい。これにより、第１の開始タイミングまでの動き量に基づいて第１の予測値が取得されるという作用をもたらす。
【００１０】
また、この第１の側面において、前記第１の予測期間の長さは、所定の閾値を超えなくてもよい。これにより、閾値以下の第１の予測期間内の動き量が取得されるという作用をもたらす。
【００１１】
また、この第１の側面において、前記合成フレーム内動き量は、前記合成フレーム内動き量の演算を開始する第２の開始タイミングから前記起点タイミングまでの第２の予測期間内の前記動き量を示す第２の予測値を含み、前記動き量取得部は、前記第２の開始タイミングまでの前記撮像部の動き量に基づいて前記第２の予測値を取得してもよい。これにより、第２の開始タイミングまでの動き量に基づいて第２の予測値が取得されるという作用をもたらす。
【００１２】
また、この第１の側面において、前記第２の予測期間の長さは、前記所定の閾値を超えなくてもよい。これにより、閾値以下の第２の予測期間内の動き量が取得されるという作用をもたらす。
【００１３】
また、この第１の側面において、連続する２枚の前記現在切り出しフレームに基づいて被写体が動いた方向を示す動きベクトルを検出する被写体動き検出部をさらに具備し、前記合成処理部は、前記動きベクトルに基づいて前記現在切出しフレームと前記過去切出しフレームとを合成してもよい。これにより、動きベクトルに基づいて現在切出しフレームと過去切出しフレームとが合成されるという作用をもたらす。
【００１４】
また、本技術の第２の側面は、入力フレームを撮像する撮像部と、前記入力フレームが撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す入力フレーム切り出し処理部と、前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリと、前記現在切出しフレームと前記過去切出しフレームとを合成して合成フレームとして出力する合成処理部とを具備する撮像装置。これにより、フレームの合成前に入力フレームの一部が切り出されるという作用をもたらす。
【００１５】
また、この第２の側面において、前記撮像部の動きを検出するセンサをさらに具備してもよい。これにより、センサにより検出された動きに基づいて入力フレームの一部が切り出されるという作用をもたらす。
【発明の効果】
【００１６】
本技術によれば、フレームメモリを用いて画像処理を行う装置において、フレームメモリの容量を削減することができるという優れた効果を奏し得る。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【００１７】
【図１】本技術の実施の形態における撮像装置の一構成例を示すブロック図である。
【図２】本技術の実施の形態における撮像装置の斜視図の一例である。
【図３】本技術の実施の形態における画像処理部の一構成例を示すブロック図である。
【図４】本技術の実施の形態におけるカメラ動き演算部の一構成例を示すブロック図である。
【図５】本技術の実施の形態におけるカメラ動き演算部の動作の一例を示すタイミングチャートである。
【図６】本技術の実施の形態における予測演算について説明するための図である。
【図７】本技術の実施の形態における補正量演算部の一構成例を示すブロック図である。
【図８】本技術の実施の形態における手ブレ補正量演算部の一構成例を示すブロック図である。
【図９】本技術の実施の形態における切り出し処理部の一構成例を示すブロック図である。
【図１０】本技術の実施の形態における被写体動き検出部の一構成例を示すブロック図である。
【図１１】本技術の実施の形態における画像合成部の一構成例を示すブロック図である。
【図１２】本技術の実施の形態における入力フレーム、切り出しフレームおよび出力フレームのそれぞれのサイズの一例を示す図である。
【図１３】比較例における入力フレームと、回転補正後のフレームと、出力フレームとのそれぞれのサイズの一例を示す図である。
【図１４】本技術の実施の形態における撮像装置の動作の一例を示すフローチャートである。
【図１５】本技術の実施の形態の第１の変形例における画像処理部の一構成例を示すブロック図である。
【図１６】本技術の実施の形態の第２の変形例における画像処理部の一構成例を示すブロック図である。
【図１７】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれの効果をまとめた図である。
【図１８】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれの合成処理時のフレームメモリ使用量を比較するための図である。
【図１９】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれの手ブレ補正時のフレームメモリ使用量を比較するための図である。
【図２０】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の合成処理時のフレームメモリ使用量の具体例である。
【図２１】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の手ブレ補正時のフレームメモリ使用量の具体例である。
【図２２】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の合成処理時のフレームメモリ使用量を示すグラフである。
【図２３】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝４の合成処理時のフレームメモリ使用量の具体例である。
【図２４】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝４の合成処理時のフレームメモリ使用量を示すグラフである。
【図２５】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の被写体動き検出時の計算量を比較するための図である。
【図２６】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の被写体動き検出時の計算量の具体例である。
【図２７】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の被写体動き検出時の計算量を示すグラフである。
【図２８】本技術の実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝４の被写体動き検出時の計算量の具体例である。
【図２９】本技術の実施の形態の第３の変形例におけるＮ＝２の際のカメラ動き演算部の動作の一例を示すタイミングチャートである。
【図３０】本技術の実施の形態の第３の変形例におけるＮ＝４の際のカメラ動き演算部の動作の一例を示すタイミングチャートである。
【発明を実施するための形態】
【００１８】
以下、本技術を実施するための形態（以下、実施の形態と称する）について説明する。説明は以下の順序により行う。
１．実施の形態（フレームの一部を切り出してから合成する例）
２．第１の変形例
３．第２の変形例
４．第３の変形例
【００１９】
＜１．実施の形態＞
［撮像装置の構成例］
図１は、実施の形態における撮像装置１００の一構成例を示すブロック図である。この撮像装置１００は、画像データ（フレーム）を撮像するものであり、撮像レンズ１１０、撮像素子１２０、動き検出センサ１３０、画像処理部２００、記録部１４０および制御部１５０を備える。撮像装置１００としては、デジタルスチルカメラやデジタルビデオカメラなどのデジタルカメラの他、撮像機能を持つスマートフォンやパーソナルコンピュータなどが想定される。
【００２０】
撮像レンズ１１０は、光を集光して撮像素子１２０に導くレンズである。撮像素子１２０は、制御部１５０の制御に従って撮像レンズ１１０からの入射光を光電変換して画像データを撮像するものである。この撮像素子１２０は、画像データを入力フレームとして画像処理部２００に信号線１２９を介して供給する。なお、撮像レンズ１１０および撮像素子１２０を含むユニットは、特許請求の範囲に記載の撮像部の一例である。
【００２１】
動き検出センサ１３０は、撮像装置１００の動きを検出するものである。例えば、単位時間内に撮像装置１００が回転した角度（言い換えれば、角速度）を検出するジャイロセンサが動き検出センサ１３０として用いられる。動き検出センサ１３０は、単位時間ごとに、その時間内の回転角度を測定し、その測定値を示すセンサ信号を画像処理部２００に信号線１３９を介して供給する。なお、動き検出センサ１３０は、特許請求の範囲に記載のセンサの一例である。
【００２２】
画像処理部２００は、制御部１５０の制御に従って、入力フレームに対する所定の画像処理をセンサ信号を用いて行うものである。この画像処理部２００は、画像処理後のフレームを出力フレームとして記録部１４０に信号線２０９を介して供給する。
【００２３】
記録部１４０は、出力フレームを記録するものである。制御部１５０は、撮像装置１００全体を制御するものである。この制御部１５０は、撮像制御信号を撮像素子１２０に信号線１５８を介して供給し、画像処理を行うタイミングを示すタイミング信号を画像処理部２００に信号線１５９を介して供給する。
【００２４】
ここで、撮像制御信号は、撮像タイミングを示す垂直同期信号Ｖｓｙｎｃや、露光期間などを含む。垂直同期信号Ｖｓｙｎｃの周波数は、例えば、３０ヘルツ（Ｈｚ）である。なお、垂直同期信号Ｖｓｙｎｃの周波数は、３０ヘルツ（Ｈｚ）に限定されず、６０ヘルツ（Ｈｚ）などであってもよい。
【００２５】
図２は、実施の形態における撮像装置１００の斜視図の一例である。この撮像装置１００の光軸をｚ軸とする。また、ｚ軸に直交し、撮像素子１２０の長辺に平行な軸をｘ軸とし、ｚ軸およびｘ軸に直交する軸をｙ軸とする。動き検出センサ１３０は、単位時間が経過するたびに、その単位時間内にｚ軸周りに撮像装置１００が回転した角度をロール角として測定する。また、動き検出センサ１３０は、単位時間内にｘ軸周りに撮像装置１００が回転した角度をピッチ角として測定し、ｙ軸周りに回転した角度をヨー角として測定する。
【００２６】
なお、動き検出センサ１３０は、３軸の全てについて角度を測定しているが、２軸のみについて角度を測定してもよい。また、動き検出センサ１３０は、角度を測定しているが、撮像装置１００の動きを検出することができるのであれば、角度以外の物理量を測定してもよい。例えば、動き検出センサ１３０は、ｘ軸方向やｙ軸方向の加速度を測定してもよい。
【００２７】
［画像処理部の構成例］
図３は、実施の形態における画像処理部２００の一構成例を示すブロック図である。この画像処理部２００は、カメラ動き演算部２１０、補正量演算部２２０、切り出し処理部２４０、被写体動き検出部２５０、画像合成部２６０および回転補正部２７０を備える。
【００２８】
カメラ動き演算部２１０は、センサ信号に対する演算により撮像装置１００の一定期間内の動き量を取得するものである。このカメラ動き演算部２１０は、演算結果を補正量演算部２２０に供給する。なお、カメラ動き演算部２１０は、特許請求の範囲に記載の動き量取得部の一例である。
【００２９】
補正量演算部２２０は、カメラ動き演算部２１０の演算結果を用いて、切り出し処理部２４０および回転補正部２７０において切り出し領域の初期位置からの補正量を演算するものである。この補正量は、ｘ成分、ｙ成分およびロール角成分を含む。ｘ成分は、切り出し領域をｘ軸方向に沿って平行移動させる際の移動量であり、ｙ成分は、その領域をｙ軸方向に沿って平行移動させる際の移動量である。ロール角成分は、フレームの一部を回転させる際の回転角度である。補正量演算部２２０は、ｘ成分およびｙ成分を切り出し処理部２４０に供給し、ロール角成分を回転補正部２７０に供給する。
【００３０】
切り出し処理部２４０は、入力フレームが撮像されるたびに補正量（ｘ成分およびｙ成分）に基づいて入力フレームの一部を切り出すものである。この入力フレームにおいては、所定サイズの切り出し領域が予め設定される。切り出し処理部２４０は、ｘ軸に沿ってｘ成分だけ切り出し領域を初期位置から平行移動し、ｙ軸に沿ってｙ成分だけ切り出し領域を初期位置から平行移動する。そして、切り出し処理部２４０は、平行移動後の切り出し領域を入力フレームから切り出しフレームとして切り出す。切り出し処理部２４０は、その切り出しフレームを被写体動き検出部２５０に供給する。
【００３１】
被写体動き検出部２５０は、連続する複数の切り出しフレームから、被写体の動きベクトルを検出するものである。この被写体動き検出部２５０は、例えば、フレーム間差分法やブロックマッチング法を用いて、連続する複数の切り出しフレームから動被写体を検出し、その動被写体が動いた方向および距離を示す動きベクトルを求める。被写体動き検出部２５０は、動きベクトルを画像合成部２６０に供給する。
【００３２】
画像合成部２６０は、連続するＮ（Ｎは２以上の整数）枚の切り出しフレームを合成するものである。この画像合成部２６０は、Ｎ枚ごとに１枚の合成フレームを生成し、合成フレームとして回転補正部２７０に供給する。
【００３３】
前述の撮像素子１２０は、垂直同期信号Ｖｓｙｎｃに同期して、そのＶｓｙｎｃの周期内にＮ枚のフレームを撮像する。例えば、Ｎ＝２とし、垂直同期信号Ｖｓｙｎｃを３０ヘルツ（Ｈｚ）とすると、１秒間に６０枚の入力フレームが撮像され、１秒間に３０枚の合成フレームが生成される。
【００３４】
回転補正部２７０は、補正量（ロール角成分）に基づいて合成フレーム内の一部の切り出し領域を回転させるものである。この回転補正部２７０は、回転後の切り出し領域を出力フレームとして切り出して記録部１４０に出力する。なお、回転補正部２７０は、特許請求の範囲に記載の合成フレーム補正部の一例である。
【００３５】
［カメラ動き演算部の構成例］
図４は、実施の形態におけるカメラ動き演算部２１０の一構成例を示すブロック図である。このカメラ動き演算部２１０は、予測演算部２１１と、合成フレーム間動き量積分器２１２と、Ｎ個の合成フレーム内動き量積分器２１３とを備える。
【００３６】
予測演算部２１１は、所定の予測期間の前のセンサ信号の履歴に基づいて、その予測期間内の撮像装置１００の動き量を算出するための関数を求めるものである。予測演算部２１１は、例えば、予測期間前のセンサ信号の時間的変動を表す曲線に最もよくフィッティングするｍ次多項式を求める。この予測演算部２１１は、求めたｍ次多項式の係数を合成フレーム間動き量積分器２１２とＮ個の合成フレーム内動き量積分器２１３とに供給する。
【００３７】
合成フレーム間動き量積分器２１２は、連続する２つの合成フレームの間の積算期間Ｐｍ０内の撮像装置１００の動き量ｍ０を演算するものである。この動き量ｍ０は、ピッチ角成分、ヨー角成分およびロール角成分を含む。また、動き量ｍ０の演算は、その積算期間Ｐｍ０の終了前に開始される。このため、合成フレーム間動き量積分器２１２は、ｍ０の演算の開始時点から積算期間Ｐｍ０の終了時点までの予測期間内の動き量を予測する必要がある。
【００３８】
そこで、合成フレーム間動き量積分器２１２は、予測期間内の動き量をｍ次多項式を用いて演算し、予測期間までの動き量の積算値に加算する。合成フレーム間動き量積分器２１２は、加算した値を動き量ｍ０として補正量演算部２２０に供給する。
【００３９】
合成フレーム内動き量積分器２１３は、合成対象のＮ枚の切り出しフレームのうちｎ（ｎは、１乃至Ｎの整数）番目について動き量ｍｎを演算するものである。まず、Ｎ枚のうち最初の露光期間の重心のタイミングＴｃ１と、Ｎ枚目の露光期間の重心のタイミングＴｃＮとの間の特定のタイミングが起点タイミングＴｓとして設定される。
【００４０】
ｎ枚目の露光期間の重心のタイミングＴｃｎとすると、起点タイミングＴｓからＴｃｎまでの積算期間内の動き量がｍｎとして演算される。ここで、動き量ｍｎの演算の開始タイミングが、対応する積算期間の終了タイミングよりも前である場合に合成フレーム内動き量積分器２１３は、その終了タイミングまでの動き量を予測する必要がある。一方、動き量ｍｎの演算の開始タイミングが、対応する積算期間の終了タイミングよりも後の場合には、動き量を予測する必要が無い。合成フレーム内動き量積分器２１３は、必要に応じてｍ次多項式により予測演算を行って動き量ｍｎを求め、補正量演算部２２０に供給する。
【００４１】
図５におけるａは、実施の形態におけるカメラ動き演算部２１０の動作の一例を示すタイミングチャートである。垂直同期信号Ｖｓｙｎｃは、一定の周期で立ち上がる。例えば、タイミングＴｖ１、Ｔｖ２およびＴｖ３で垂直同期信号Ｖｓｙｎｃが立ち上がる。
【００４２】
Ｎ＝２とした場合、垂直同期信号Ｖｓｙｎｃの周期内に、２枚の入力フレームが撮像される。タイミングＴｖ１からタイミングＴｖ２までの間に撮像された２枚の入力フレームのそれぞれの露光期間の重心のタイミングをＴｃ１１、Ｔｃ１２とする。また、タイミングＴｖ_２からタイミングＴｖ３までの間に撮像された２枚の入力フレームのそれぞれの露光期間の重心のタイミングをＴｃ２１、Ｔｃ２２とする。また、Ｔｃ１１およびＴｃ１２の中間のタイミングを起点タイミングＴｓ１とし、Ｔｃ２１およびＴｃ２２の中間のタイミングを起点タイミングＴｓ２とする。
【００４３】
動き検出センサ１３０は、垂直同期信号Ｖｓｙｎｃより短い周期が経過するたびに動きを検出してセンサ信号を出力する。
【００４４】
合成フレーム間動き量積分器２１２は、起点タイミングＴｓ１から起点タイミングＴｓ２までの積算期間の動き量をｍ０として演算する。一方、１枚目に対応する合成フレーム内動き量積分器２１３は、起点タイミングＴｓ２からタイミングＴｃ２１までの調整期間内の動き量をｍ１として演算する。
【００４５】
また、２枚目に対応する合成フレーム内動き量積分器２１３は、起点タイミングＴｓ２からタイミングＴｃ２２までの調整期間内の動き量を動き量ｍ２として演算する。
【００４６】
ここで、動き量ｍ１の演算は、合成対象の２枚のうち１枚目において１ライン目の露光が終了するタイミングＴＬ２１までに完了する必要がある。このタイミングＴＬ２１以降に、１枚目のフレームの保持が開始され、この保持の際に、動き量ｍ１により切り出し領域が調整されるためである。また、この１枚目のフレームの補正量の演算には、動き量ｍ１に加えて動き量ｍ０も用いられる。このため、動き量ｍ０もタイミングＴＬ２１までに完了する必要がある。
【００４７】
そこで、合成フレーム間動き量積分器２１２は、タイミングＴＬ２１よりも、ｍ０の演算に要する時間だけ前のタイミングＴｍ０において動き量ｍ０の演算を開始する。このタイミングＴｍ０は、例えば、ｍ０の積算期間の終了時Ｔｓ２よりも前である。このため、合成フレーム間動き量積分器２１２は、タイミングＴｍ０から起点タイミングＴｓ２までの予測期間内の動き量を予測値として予測演算する必要がある。合成フレーム間動き量積分器２１２は、起点タイミングＴｓ１からタイミングＴｍ０までのセンサ信号の積算により動き量の実測値を求め、その実測値を予測値に加算してｍ０とする。同図における斜線の期間は、予測期間を示す。
【００４８】
また、合成フレーム内動き量積分器２１３は、タイミングＴＬ２１よりも、ｍ１の演算に要する時間だけ前のタイミングＴｍ１において動き量ｍ１の演算を開始する。このタイミングＴｍ１は、例えば、起点タイミングＴｓ２よりも前である。このため、合成フレーム内動き量積分器２１３は、タイミングＴｍ１から起点タイミングＴｓ２までの予測期間内の動き量を予測値として予測演算する必要がある。合成フレーム内動き量積分器２１３は、タイミングＴｃ２１からタイミングＴｍ１までのセンサ信号の積算により動き量の実測値を求め、予測値に加算してｍ１を演算する。同図における斜線の期間は、予測期間を示す。
【００４９】
また、動き量ｍ２の演算は、合成対象の２枚のうち２枚目のフレームの１ライン目の露光が終了するタイミングまでに完了すればよい。例えば、合成フレーム内動き量積分器２１３は、タイミングＴｃ２２に動き量ｍ２の演算を開始する。このタイミングＴｃ２２は、起点タイミングＴｓ２の後である。このため、合成フレーム内動き量積分器２１３は、予測演算を行わず、起点タイミングＴｓ２からタイミングＴｃ２２までのセンサ信号の積算により動き量ｍ２を求める。
【００５０】
切り出し処理部２４０は、演算された動き量ｍ１およびｍ２に応じて、連続する２枚のフレームのそれぞれの切り出し領域を平行移動させて切り出す。これらの動き量ｍ１およびｍ２は、共通のタイミング（Ｔｓ２）を起点としているため、２枚のフレームで同じ被写体が写った領域に、それぞれのフレームの切り出し領域の位置を合わせることができる。
【００５１】
ここで、切り出し処理部２４０が、タイミングＴｃ２１からタイミングＴｃ２２までの長さＬの期間内の動き量に応じて合成対象の２枚目のフレームの切り出し領域を平行移動することも考えられる。この場合は、１枚目のフレームにおいてもタイミングＴｃ２１までの長さＬの期間内の動き量に応じて切り出し領域が平行移動される。しかし、この方法では、１枚目の予測演算の必要がなくなる一方で、１枚目および２枚目のそれぞれの切り出し領域の平行移動の移動量が大きくなってしまう。実際には、一定の枠内でしか切り出し領域を移動できないため、移動量が大きいと合成において位置合わせの精度が低下するおそれがある。また、合成結果の時刻重心を大きく外して、合成フレーム間の電子手ブレ補正の精度が大きく劣化するおそれがある。
【００５２】
これに対して、撮像装置１００では、タイミングＴｃ２１およびＴｃ２２の中間の起点タイミングＴｓ２からＴｃ２１やＴｃ２２までの動き量に応じて切り出し領域を平行移動しているため、切り出し領域の移動量を比較的小さくすることができる。したがって、合成における位置合わせの精度を高くすることができる。また、合成フレーム間の電子手ブレ補正の精度の低下を防止することができる。
【００５３】
なお、動き量ｍ０、ｍ１の演算を行うタイミングＴｍ０、Ｔｍ１を起点タイミングＴｓ２よりも前としているが、このタイミングに限定されない。例えば、長時間露光のフレームと短時間露光のフレームとを画像合成部２６０が合成する場合（いわゆる、ハイダイナミックレンジ合成）がある。このハイダイナミックレンジ合成において長時間露光のフレームが最初のフレームである場合には図５におけるｂに例示するように、Ｔｍ０、Ｔｍ１が起点タイミングＴｓ２よりも後になることがあり、その際は予測演算が不要となる。
【００５４】
図６は、実施の形態における予測演算について説明するための図である。前述したように、合成フレーム間動き量積分器２１２は、動き量ｍ０の積算期間の終了時（Ｔｓ２）よりも前のタイミングＴｍ０において動き量ｍ０の演算を開始する必要がある。このため、合成フレーム内動き量積分器２１３は、タイミングＴｍ０から起点タイミングＴｓ２までの期間内の動き量を予測演算する。
【００５５】
予測演算においては、タイミングＴｍ０までのセンサ信号の軌跡に最もよくフィッティングするｍ次多項式が用いられる。同図における黒丸は、実測されたセンサ信号のプロットを示し、白丸は、ｍ次多項式から演算された値のプロットを示す。
【００５６】
［補正量演算部の構成例］
図７は、実施の形態における補正量演算部２２０の一構成例を示すブロック図である。この補正量演算部２２０は、手ブレ補正量演算部２３０と、Ｎ個の合成フレーム内補正量演算部２２１とを備える。
【００５７】
手ブレ補正量演算部２３０は、動き量ｍ０から、連続する２枚の合成フレーム間の動き量に応じた補正量ｓ０を演算するものである。この動き量ｓ０は、ｘ成分、ｙ成分およびロール角成分を含む。手ブレ補正量演算部２３０は、動き量ｓ０のｘ成分およびｙ成分であるｓ０（ｘ、ｙ）をＮ個の合成フレーム内補正量演算部２２１に供給する。また、手ブレ補正量演算部２３０は、動き量ｓ０のロール角成分であるｓ０（Ｒｏｌｌ）を回転補正部２７０に供給する。
【００５８】
合成フレーム内補正量演算部２２１は、動き量ｍｎおよび補正量ｓ０（ｘ、ｙ）から、合成対象のＮ枚のうちｎ番目のフレームの補正量ｓｎを演算するものである。この補正量ｓｎは、ｘ成分、ｙ成分およびロール角成分を含む。合成フレーム内補正量演算部２２１は、例えば、動き量ｍｎのピッチ角成分およびヨー角成分をｘ成分およびｙ成分に変換する。そして、合成フレーム内補正量演算部２２１は、次の式を用いて補正量ｓｎを演算して切り出し処理部２４０に供給する。
ｓｎ（ｘ）＝ｓ０（ｘ）＋ｍｎ（ｘ）
ｓｎ（ｙ）＝ｓ０（ｙ）＋ｍｎ（ｙ）
上式において、ｓｎ（ｘ）は、補正量ｓｎのｘ成分であり、ｓ０（ｘ）は、補正量ｓ０のｘ成分である。また、ｍｎ（ｘ）は、動き量ｍｎのｘ成分である。ｓｎ（ｙ）は、補正量ｓｎのｙ成分であり、ｓ０（ｙ）は、補正量ｓ０のｙ成分である。また、ｍｎ（ｙ）は、動き量ｍｎのｙ成分である。
【００５９】
［手ブレ補正量演算部の構成例］
図８は、実施の形態における手ブレ補正量演算部２３０の一構成例を示すブロック図である。この手ブレ補正量演算部２３０は、座標変換部２３１、切り出し位置決定部２３２を備える。切り出し位置決定部２３２は、ハイパスフィルタ２３３、カメラワーク推定部２３４、理想切り出し位置決定部２３５、および、補正枠内制限処理部２３６を備える。
【００６０】
座標変換部２３１は、例えば、次の式により動き量ｍ０のピッチ角成分およびヨー角成分をｘ成分およびｙ成分に変換するものである。
ｍ０（ｘ）＝Ｌｘ×ｔａｎ｛ｍ０（Ｙａｗ）｝
ｍ０（ｙ）＝Ｌｙ×ｔａｎ｛ｍ０（Ｐｉｔｃｈ）｝
上式において、ＬｘおよびＬｙは、レンズの焦点距離により決定される係数である。また、ｔａｎ（）は、正接関数である。ｍ０（Ｙａｗ）は、動き量ｍ０のヨー角成分であり、ｍ０（Ｐｉｔｃｈ）は、動き量ｍ０のピッチ角成分である。
【００６１】
座標変換部２３１は、変換後のｍ０（ｘ、ｙ）をハイパスフィルタ２３３、カメラワーク推定部２３４および理想切り出し位置決定部２３５に供給する。
【００６２】
ハイパスフィルタ２３３は、ｍ０（ｘ、ｙ）において所定のカットオフ周波数より高い周波数の成分を高周波数成分ＨＰＦ（ｍ０）として通過させるものである。ハイパスフィルタ２３３は、高周波数成分ＨＰＦ（ｍ０）を理想切り出し位置決定部２３５に供給する。
【００６３】
カメラワーク推定部２３４は、撮影者により特定の撮影操作（例えば、パン撮影）が行われたか否かを推定するものである。カメラワーク推定部２３４は、推定結果を示す係数Ｒ２を生成し、理想切り出し位置決定部２３５に供給する。この係数Ｒ２は、例えば、「０」乃至「１」の実数であり、パン撮影に類似する操作であるほど「１」に近い値が設定される。
【００６４】
理想切り出し位置決定部２３５は、次の式を使用して、補正量ｓ０'を算出するものである。この補正量ｓ０'は、ｘ成分およびｙ成分を含む。理想切り出し位置決定部２３５は、算出した補正量ｓ０'を補正枠内制限処理部２３６に供給する。
ｓ'（ｋ）＝ｓ０（ｋ−１）＋Ｒ１・｛ＨＰＦ（ｍ０）
＋Ｒ１・（１−Ｒ２）・{ｍ０-ＨＰＦ（ｍ０）}
上式において、Ｒ２は、手ブレ補正係数であり、「０」乃至「１」の実数が設定される。ｓ０'（ｋ）は、ｋ番目のフレームの補正量であり、ｓ０'（ｋ−１）は、ｋ−１番目のフレームの補正量ｓ０である。これらのうちｓ'（ｋ）が、今回のｓ０'として出力される。
【００６５】
補正枠内制限処理部２３６は、切り出し領域の位置を一定の補正枠内に制限するものである。例えば、ｘ軸上の補正枠のサイズは、±ｃｘであり、ｙ軸上の補正枠のサイズは、±ｃｙである。補正枠内制限処理部２３６は、補正量ｓ０'のｘ成分およびｙ成分に対して制限処理を行い、制限処理後のｘ成分およびｙ成分と、動き量ｍ０のロール角成分ｍ０（Ｒｏｌｌ）とを含む補正量をｓ０として出力する。この補正量ｓ０のｘ成分およびｙ成分であるｓ０（ｘ、ｙ）は、Ｎ個の合成フレーム内補正量演算部２２１に入力され、残りのロール角成分ｓ０（Ｒｏｌｌ）は、回転補正部２７０に入力される。
【００６６】
ここで、ｃｘは、ｓｘ−ｒｘに該当し、ｃｙは、ｓｙ−ｒｙに該当する。ｓｘおよびｓｙは、電子手ブレ補正全体のｘ軸およびｙ軸における補正枠のサイズである。ｒｘおよびｒｙは、電子手ブレ補正のうち、回転補正時のｘ軸およびｙ軸における補正枠のサイズである。
【００６７】
［切り出し処理部の構成例］
図９は、実施の形態における切り出し処理部２４０の一構成例を示すブロック図である。この切り出し処理部２４０は、セレクタ２４１、補正量選択制御部２４２および位置合わせ処理部２４３を備える。
【００６８】
補正量選択制御部２４２は、Ｎ個の補正量ｓｎのいずれかを示す選択信号ＳＥＬをセレクタ２４１に供給するものである。この補正量選択制御部２４２は、制御部１５０からのタイミング信号に基づいてＮ枚のうちｎ番目のフレームが撮像された際にｎ番目の補正量を示す選択信号ＳＥＬを生成する。
【００６９】
セレクタ２４１は、選択信号ＳＥＬに従ってＮ個の補正量ｓｎのいずれかを選択するものである。このセレクタ２４１は、選択した補正量ｓｎのｘ成分およびｙ成分であるｓ'（ｘ、ｙ）を位置合わせ処理部２４３に供給し、残りのロール角成分ｓ'（Ｒｏｌｌ）を被写体動き検出部２５０を介して画像合成部２６０に供給する。
【００７０】
位置合わせ処理部２４３は、入力フレームが入力されるたびに、その入力フレームにおいて補正量ｓ'（ｘ、ｙ）により切り出し領域の位置を補正し、補正後の切り出し領域を切り出すものである。この位置合わせ処理部２４３は、切り出した領域を切り出しフレームとして被写体動き検出部２５０に供給する。
【００７１】
［被写体動き検出部の構成例］
図１０は、被写体動き検出部２５０の一構成例を示すブロック図である。この被写体動き検出部２５０は、ゲイン調整部２５１、調整後動き検出部２５２およびフレームメモリ２５３を備える。
【００７２】
ゲイン調整部２５１は、切り出しフレームにおいて画素値を所定のゲインにより調整するものである。このゲイン調整部２５１は、調整後の切り出しフレームをフレームメモリ２５３および調整後動き検出部２５２に供給する。フレームメモリ２５３は、切り出しフレームを保持するものである。また、ゲイン調整前の切り出しフレームは、ゲイン調整部２５１の他、画像合成部２６０にも供給される。
【００７３】
調整後動き検出部２５２は、フレームメモリ２５３に保持された過去の切り出しフレームと、ゲイン調整部２５１からの現在の切り出しフレームとから、被写体の動きベクトルを検出するものである。この調整後動き検出部２５２は、検出した動きベクトルを画像合成部２６０に供給する。
【００７４】
［画像合成部の構成例］
図１１は、実施の形態における画像合成部２６０の一構成例を示すブロック図である。この画像合成部２６０は、画像合成処理部２６１およびフレームメモリ２６２を備える。
【００７５】
フレームメモリ２６２は、Ｎ−１枚の切り出しフレームを保持するものである。画像合成処理部２６１は、被写体動き検出部２５０からの現在の切り出しフレームと、フレームメモリ２６２に保持された過去の切り出しフレームとを合成するものである。
【００７６】
画像合成処理部２６１は、まず、被写体動き検出部２５０により検出された動きベクトルに基づいて合成対象のＮ枚の切り出しフレームのうち、動きベクトルに対応するものを平行移動させて一定の枠内で位置合わせを行う。そして、画像合成処理部２６１は、位置合わせ後のＮ枚のフレームのそれぞれにおいて対応する画素値の平均値を求め、その平均値の画素からなる合成フレームを生成する。これにより、映像信号に混在するノイズを低減することができる。このような合成処理は、３次元ノイズリダクションと呼ばれる。画像合成処理部２６１は、合成後のフレームを合成フレームとして回転補正部２７０に供給する。なお、画像合成処理部２６１は、特許請求の範囲に記載の合成処理部の一例である。
【００７７】
なお、画像合成部２６０は、３次元ノイズリダクション以外の合成処理（ハイダイナミックレンジ合成など）を行ってもよい。ハイダイナミックレンジ合成において、撮像素子１２０は、露光時間の異なる複数の切り出しフレームを撮像し、画像合成部２６０は、それらのフレームにおいて対応する画素値を加算して合成フレームを生成する。これにより、ダイナミックレンジを合成前よりも拡大することができる。
【００７８】
図１２は、実施の形態における入力フレーム、切り出しフレームおよび出力フレームのそれぞれのサイズの一例を示す図である。同図におけるａは、入力フレーム５００のサイズの一例を示し、同図におけるｂは、フレームメモリ２６２に保持される切り出しフレームの一例を示す。同図におけるｂの斜線部分は、フレームメモリ２６２内の切り出しフレームを示す。同図におけるｃは、出力フレーム５０２の一例を示す。
【００７９】
入力フレーム５００のｘ軸上の長さである幅Ｗと、ｙ軸上の長さである高さＨは、次の式により表される。
Ｗ＝ｗ＋２ｃｘ＋２ｒｘ＋２ｎｘ                            ・・・式１
Ｈ＝ｈ＋２ｃｙ＋２ｒｘ＋２ｎｙ                            ・・・式２
ｃｘ＝ｓｘ−ｒｘ                                          ・・・式３
ｃｙ＝ｓｙ−ｒｙ                                          ・・・式４
【００８０】
式３および式４を式１および式２に代入することにより、次の式が得られる。
Ｗ＝ｗ＋２ｓｘ＋２ｎｘ
Ｈ＝ｈ＋２ｓｘ＋２ｎｙ
【００８１】
ここで、ｗは、出力フレーム５０２の幅であり、ｓｘは、切り出し処理部２４０による切り出し処理（すなわち、手ブレ補正）におけるｘ軸上の補正枠のサイズである。ｒｘは、回転補正部２７０による回転補正におけるｘ軸上の補正枠のサイズである。ｎｘは、画像合成部２６０による合成時の位置合わせに用いられるｘ軸上の枠のサイズである。ｈは、出力フレーム５０２の高さであり、ｓｙは、手ブレ補正におけるＹ軸上の補正枠のサイズである。ｒｘは、回転補正におけるｙ軸上の補正枠のサイズである。ｎｙは、合成時の位置合わせに用いられるｙ軸上の枠のサイズである。
【００８２】
入力フレーム５００内には、幅がＷ−２ｃｘで、高さがＨ−２ｃｙの切り出し領域が設けられる。切り出し処理部２４０は、撮像装置１００の動きに応じて、ｓｘおよびｓｙのサイズの補正枠内で切り出し領域を平行移動し、移動後の切り出し領域を切り出して切り出しフレームとして出力する。この切り出しフレームは、フレームメモリ２６２に保持される。
【００８３】
続いて、画像合成部２６０は、ｎｘ、ｎｙの枠内で位置合わせを行って２枚の切り出しフレームを合成する。そして、回転補正部２７０は、ｒｘ、ｒｙの補正枠内で合成フレームを回転させて出力フレーム５０２を生成する。
【００８４】
図１３は、比較例における入力フレームと、回転補正後のフレームと、出力フレームとのそれぞれのサイズの一例を示す図である。この比較例においては、撮像装置は、合成処理および回転補正を順に実行した後に手ブレ補正（切り出し処理）を実行するものとする。同図におけるａは、入力フレームのサイズの一例を示し、同図におけるｂは、回転補正後のフレーム５０５の一例を示す。同図におけるａの斜線部分は、フレームメモリ内の入力フレームを示す。同図におけるｃは、出力フレーム５０６の一例を示す。
【００８５】
比較例の撮像装置は、合成において入力フレームをそのままフレームメモリに保持する。この入力フレームのサイズは、式１および式２により表される。そして、撮像装置は、フレームメモリに保持した過去のフレームと、現在のフレームとを合成し、回転補正を行う。これらの処理により、幅がＷ−２ｒｘ−２ｎｘで、高さがＨ−２ｒｙ−２ｒｎの合成フレーム５０５が生成される。最後に撮像装置は、その撮像装置の動きに応じて補正枠内で切り出しフレームを切り出して出力フレーム５０６を生成する。
【００８６】
このように、合成処理の後に切り出し処理を行う比較例では、合成に要するフレームメモリの容量は、切り出す前の入力フレームのデータ量以上でなければならない。
【００８７】
これに対して、撮像装置１００では、図１２に例示したように、合成処理の前に切り出し処理を行うため、フレームメモリ２６２の容量は、切り出した後の切り出しフレームのデータ量以上で済む。したがって、比較例と比較して、合成に要するフレームメモリの容量を削減することができる。これにより、合成処理時の計算量や、撮像装置のコストを低減することができる。
【００８８】
［撮像装置の動作例］
図１４は、実施の形態における撮像装置１００の動作の一例を示すフローチャートである。この動作は、例えば、動画や静止画の撮像を開始するための操作（撮像ボタンの押下など）が行われたときに開始する。
【００８９】
撮像装置１００は、自身の動きを検出しつつ、フレームを撮像する（ステップＳ９０１）。そして、撮像装置１００は、自身の動きに基づいてフレームの一部を切り出す電子手ブレ補正を行う（ステップＳ９０２）。
【００９０】
続いて撮像装置１００は、連続する複数の切り出しフレームを比較して被写体の動きベクトルを検出する（ステップＳ９０３）。そして、撮像装置１００は、その動きベクトルに基づいて位置合わせを行い、Ｎ枚の切り出しフレームを合成する（ステップＳ９０４）。そして、撮像装置１００は、合成フレームに対して回転補正を行い、出力フレームを生成する（ステップＳ９０５）。ステップＳ９０５の後に撮像装置１００は、ステップＳ９０１以降を繰り返し実行する。
【００９１】
このように、本技術の実施の形態によれば、撮像装置１００は、フレームの一部を切り出してから、フレームメモリ２６２に保持して合成を行うため、フレームメモリ２６２の容量を切り出しフレームのデータ量に抑制することができる。
【００９２】
＜２．第１の変形例＞
上述の実施の形態では、撮像装置１００は、回転補正を行っていたが、この構成では、回転補正における補正枠のサイズの分、フレームメモリ２６２の容量が増大してしまう。この実施の形態の第１の変形例の撮像装置１００は、フレームメモリ２６２の容量をさらに削減する点において実施の形態と異なる。
【００９３】
図１５は、実施の形態の第１の変形例における画像処理部２００の一構成例を示すブロック図である。この第１の変形例の画像処理部２００は、回転補正部２７０を備えない点において実施の形態と異なる。第１の変形例の画像合成部２６０は、合成フレームを出力フレームとして出力する。
【００９４】
このように、本技術の実施の形態の第１の変形例によれば、撮像装置１００は、合成フレームに対して回転補正を行わないため、回転補正の補正枠の分、フレームメモリ２６２の容量を削減することができる。
【００９５】
＜３．第２の変形例＞
上述の実施の形態では、撮像装置１００は、回転補正と被写体の動きベクトルの検出とを行っていたが、この構成では、回転補正や合成処理における枠のサイズの分、フレームメモリ２６２の容量が増大してしまう。この実施の形態の第１の変形例の撮像装置１００は、フレームメモリ２６２の容量をさらに削減する点において実施の形態と異なる。
【００９６】
図１６は、実施の形態の第１の変形例における画像処理部２００の一構成例を示すブロック図である。この第１の変形例の画像処理部２００は、被写体動き検出部２５０および回転補正部２７０を備えない点において実施の形態と異なる。第１の変形例の切り出し処理部２４０は、切り出しフレームを画像合成部２６０に供給し、画像合成部２６０は、合成フレームを出力フレームとして出力する。
【００９７】
図１７は、上述の実施の形態と、第１および第２の変形例と、比較例とのそれぞれの効果をまとめた図である。実施の形態の撮像装置１００は、被写体の動きベクトルの検出を行うため、画像合成による画質向上の効果が大きくなる。また、実施の形態の撮像装置１００は、回転補正を行うため、電子手ブレ補正による画質向上の効果が大きくなる。
【００９８】
一方、第１の変形例では、回転補正を行わないため、電子手ブレ補正による画質向上の効果が小さくなる。また、第２の変形例では、さらに被写体の動きベクトルの検出も行わないため、画像合成による画質向上の効果も小さくなる。また、比較例では、被写体の動きベクトルの検出と回転補正とを行うため、画像合成および電子手ブレ補正による画質向上の効果が大きくなる。
【００９９】
図１８は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれの合成処理時のフレームメモリ使用量を比較するための図である。実施の形態における合成対象のフレームのサイズＳｉｎｃ０は、次の式により表される。
Ｓｉｎｃ０＝（ｗ＋２ｒｘ＋２ｎｘ）×（ｈ＋２ｒｙ＋２ｎｙ）
【０１００】
実施の形態における合成後のフレーム（合成フレーム）のサイズは、Ｓｏｕｔｃ０は、次の式により表される。
Ｓｏｕｔｃ０＝ｒ１２×（ｗ＋２ｒｘ＋２ｎｘ）×（ｈ＋２ｒｙ＋２ｎｙ）
上式において、ｒ１は、合成前の切り出しフレームに対する、動き検出の対象フレームのサイズの幅または高さの縮小率を示す。ここで、動き検出の対象フレームとは、ブロックマッチング法などを用いた前述の被写体動き検出の対象となるフレームである。このようにフレームを縮小して動き検出を行うのは、計算コストを低減するためである。なお、合成においては、この縮小したフレームは用いられず、Ｎ枚の切り出しフレームが等倍のスケールで合成される。
【０１０１】
実施の形態におけるフレームメモリ２６２の切り出しフレームに要する使用量Ｓｍｃ０は、次の式により表される。
Ｓｍｃ０＝｛（Ｎ−１）＋ｒ１２｝×（ｗ＋２ｒｘ＋２ｎｘ）
×（ｈ＋２ｒｙ＋２ｎｙ）
【０１０２】
次に、第１の変形例では、合成対象のフレームのサイズＳｉｎｃ１は、次の式により表される。
Ｓｉｎｃ１＝（ｗ＋２ｎｘ）×（ｈ＋２ｎｙ）
【０１０３】
第１の変形例における合成後のフレームのサイズＳｏｕｔｃ１は、次の式により表される。
Ｓｏｕｔｃ１＝ｒ１２×（ｗ＋２ｎｘ）×（ｈ＋２ｎｙ）
【０１０４】
第１の変形例におけるフレームメモリ２６２の使用量Ｓｍｃ１は、次の式により表される。
Ｓｍｃ１＝｛（Ｎ−１）＋ｒ１２｝×（ｗ＋２ｎｘ）×（ｈ＋２ｎｙ）
【０１０５】
また、第２の変形例において合成対象のフレームのサイズＳｉｎｃ２は、第１の変形例のＳｉｎｃ１と同じである。
【０１０６】
第２の変形例におけるフレームメモリの使用量Ｓｍｃ２は、次の式により表される。
Ｓｍｃ２＝（Ｎ−１）×（ｗ＋２ｎｘ）×（ｈ＋２ｎｙ）
【０１０７】
一方、比較例における合成対象のフレームのサイズＳｉｎｃＳは、次の式により表される。
ＳｉｎｃＳ＝（ｗ＋２ｓｘ＋２ｎｘ）×（ｈ＋２ｓｙ＋２ｎｙ）
【０１０８】
また、比較例における合成後のフレームのサイズＳｃｃＳは、次の式により表される。
ＳｏｕｔｃＳ＝ｒ１２×（ｗ＋２ｓｘ＋２ｎｘ）×（ｈ＋２ｓｙ＋２ｎｙ）
【０１０９】
また、比較例におけるフレームメモリの使用量ＳｍｃＳは、次の式により表される。
ＳｍｃＳ＝｛（Ｎ−１）＋ｒ１２｝×（ｗ＋２ｓｘ＋２ｎｘ）
×（ｈ＋２ｓｙ＋２ｎｙ）
【０１１０】
図１９は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれの手ブレ補正時のフレームメモリ使用量を比較するための図である。実施の形態における手ブレ補正対象のフレームのサイズＳｉｎｓ０は、ＳｉｎｃＳと同様である。また、実施の形態における手ブレ補正時のフレームメモリの使用量Ｓｍｓ０は、次の式により表される。
Ｓｍ０＝（ｗ＋２ｒｘ）×（ｈ＋２ｒｙ）
【０１１１】
次に、第１および第２の変形例における手ブレ補正対象のフレームのサイズは、実施の形態のＳｉｎｃ０と同様である。
【０１１２】
一方、比較例における手ブレ補正対象のフレームのサイズＳｉｎｓＳは、次の式により表される。また、比較例における手ブレ補正時のフレームメモリの使用量ＳｍｓＳは、ＳｉｎｓＳと同様である。
ＳｉｎｓＳ＝（ｗ＋２ｓｘ）×（ｈ＋２ｓｙ）
【０１１３】
図２０は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の手ブレ補正時のフレームメモリ使用量を比較するための図である。縮小率ｒ１を０．５とし、縮小率ｒ２を０．２５とする。また、入力フレームの幅Ｗおよび高さＨに対する、ｓｘ、ｓｙ、ｃｘ、ｃｙ、ｒｘ、ｒｙ、ｎｘ、ｎｙ、ｗおよびｈの比率を次のように設定する。
Ｗ：ｓｘ＝１００％：１０％
Ｈ：ｓｙ＝１００％：１０％
Ｗ：ｃｘ＝１００％：８％
Ｈ：ｃｙ＝１００％：５％
Ｗ：ｒｘ＝１００％：２％
Ｈ：ｒｙ＝１００％：５％
Ｗ：ｎｘ＝１００％：２％
Ｈ：ｎｙ＝１００％：２％
Ｗ：ｗ＝１００％：７６％
Ｈ：ｈ＝１００％：７６％
【０１１４】
これらの設定値と、図１８に例示した関係式とを用いて実施の形態と第１および第２の変形例と比較例とにおいて合成対象のフレームサイズ、合成により縮小する範囲およびフレームメモリの使用量を求める。この結果、比較例のフレームメモリの使用量を１．２５０とすると、実施の形態の使用量は０．９４５でよく、フレームメモリの容量を削減することができる。また、第１の変形例では０．８００、第２の変形例では０．６４０でよく、フレームメモリの容量をさらに削減することができる。
【０１１５】
図２１は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の手ブレ補正時のフレームメモリ使用量の具体例である。諸条件は、図２０の場合と同様である。比較例のフレームメモリの使用量を０．９２１６とすると、実施の形態の使用量は０．６８８０でよく、フレームメモリの容量を削減することができる。
【０１１６】
図２２は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の合成処理時のフレームメモリ使用量を示すグラフである。ここでは、図２０で得られた結果に対して、撮像フレームのサイズで正規化が行われている。図２２に例示するように、比較例に対して、実施の形態のフレームメモリの使用量は小さく、第１および第２の使用量はさらに小さい。
【０１１７】
図２３は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝４の合成処理時のフレームメモリ使用量の具体例である。合成対象のフレーム数Ｎ以外の諸条件は、図２０の場合と同様である。同図に例示するように、比較例に対して、実施の形態のフレームメモリの使用量は小さく、第１および第２の使用量はさらに小さい。
【０１１８】
図２４は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の合成処理時のフレームメモリ使用量を示すグラフである。ここでは、図２３で得られた結果に対して、撮像フレームのサイズで正規化が行われている。
【０１１９】
図２５は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の被写体動き検出時の計算量を比較するための図である。動きの検出は、ブロックマッチングにより行われるものとする。合成処理時の動き検出の粒度をｓ１とし、電子手ブレ補正時の動き検出の粒度をｓ２とする。ここで、粒度は、フレーム全体に対する、ブロックマッチングを実行する座標の合計の比率を示す。例えば、フレームの全ての座標でブロックマッチングを実行する際は、粒度は１００％となる。また、Ｘ軸方向およびＹ軸方向において１画素飛ばしでブロックマッチングを実行する場合には粒度は２５％となる。また、比較例におけるカメラの動き検出時の検出枠サイズをｐｘおよびｐｙとする。また、実施の形態と第１および第２の変形例と比較例とにおける被写体の動きベクトル検出時の検出枠サイズをｑｘおよびｑｙとする。
【０１２０】
実施の形態の被写体の動きの検出対象のフレームサイズＳｉｎｍ０は、Ｓｏｕｔｃ０と同様である。また、実施の形態の被写体動き検出の検出範囲は、（２ｑｘ）×（２ｑｙ）である。また、実施の形態の被写体動き検出処理の計算量Ｑ０は、次の式により表される。
Ｑ０＝（Ｎ−１）×ｒ１２×（ｗ＋２ｒｘ＋２ｎｘ）
×（ｈ＋２ｒｙ＋２ｎｙ）×ｓ１２×２ｑｘ×２ｑｙ
【０１２１】
次に、第１の変形例の被写体の動きの検出対象のフレームサイズＳｉｎｍ１は、Ｓｏｕｔｃ１と同様である。また、第１の変形例の被写体動き検出の検出範囲は、（２ｑｘ）×（２ｑｙ）である。また、第１の変形例の被写体動き検出処理の計算量Ｑ１は、次の式により表される。
Ｑ１＝（Ｎ−１）×ｒ１２×（ｗ＋２ｎｘ）
×（ｈ＋２ｎｙ）×ｓ１２×２ｑｘ×２ｑｙ
【０１２２】
一方、比較例の被写体の動きの検出対象のフレームサイズＳｉｎｍ０は、ＳｏｕｔｃＳと同様である。また、比較例の被写体動き検出の検出範囲は、（２ｐｘ＋２ｑｘ）×（２ｐｙ＋２ｑｙ）である。また、比較例の被写体動き検出処理の計算量ＱＳは、次の式により表される。
ＱＳ＝（Ｎ−１）×ｒ１２×（ｗ＋２ｓｘ＋２ｎｘ）×（ｈ＋２ｓｙ＋２ｎｙ）
×ｓ１２×（２ｐｘ＋２ｑｘ）×（２ｐｙ＋２ｑｙ）
【０１２３】
図２６は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の被写体動き検出時の計算量の具体例である。図２０と同様の諸条件と、図２５に例示した関係式とを用いて実施の形態と第１および第２の変形例と比較例とにおいて、被写体動き検出時の検出対象のフレームサイズ、検出範囲および計算量を求める。ただし、粒度ｓ１およびｓ２はいずれも０．１２５に設定される。また、ＷおよびＨに対するｐｘ、ｐｙ、ｑｘ、ｑｙの比率は、次のように設定される。
Ｗ：ｐｘ＝１００％：３％
Ｈ：ｐｙ＝１００％：５％
Ｗ：ｑｘ＝１００％：３％
Ｈ：ｑｙ＝１００％：５％
【０１２４】
比較例の計算量を９．３７５Ｅ−０５とすると、実施の形態の計算量は２．０２５Ｅ−０５に減少する。また、第１の変形例の計算量は１．５００Ｅ−０５となり、さらに減少する。
【０１２５】
図２７は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝２の被写体動き検出時の計算量を示すグラフである。図２７では、図２６の計算結果について、実施の形態の計算量により、正規化が行われている。
【０１２６】
図２８は、実施の形態と、第１および第２の変形例と、比較例とのそれぞれのＮ＝４の被写体動き検出時の計算量の具体例である。Ｎ以外の諸条件は、図２６の場合と同様とする。比較例の計算量を２．８１３Ｅ−０４とすると、実施の形態の計算量は６．０７５Ｅ−０５となる。また、第１の変形例の計算量は４．５００Ｅ−０５となる。
【０１２７】
このように、本技術の実施の形態の第２の変形例によれば、撮像装置１００は、動きベクトルの検出と回転補正とを行わないため、合成処理および回転補正における枠の分、フレームメモリ２６２の容量を削減することができる。また、被写体動き検出時の計算量を削減することができる。
【０１２８】
＜４．第３の変形例＞
上述の実施の形態では、撮像装置１００は、一定の予測期間内の自身の動き量を予測し、その動き量に基づいて電子手ブレ補正を行っていた。しかし、予測期間が長いほど、動き量の予測精度が低下し、電子手ブレ補正後の画質が低下するという問題がある。この実施の形態の第３の変形例の撮像装置１００は、撮像装置１００の動き量の予測精度を向上させた点において実施の形態と異なる。
【０１２９】
図２９は、実施の形態の第３の変形例におけるＮ＝２の際のカメラ動き演算部の動作の一例を示すタイミングチャートである。この第３の変形例では、予測期間の長さは、許容値以上の予測精度になるような所定の閾値以下に制限される。開始タイミングＴｍ０から起点タイミングＴｓ２までの期間と、開始タイミングＴｍ１から起点タイミングＴｓ２までの期間とのいずれかが閾値を超える場合には、Ｔｓ２よりもＴｃ２１に近いタイミングＴｓ２'が起点として用いられる。この場合、開始タイミングＴｍ０またはＴｍ１から起点タイミングＴｓ２'までの期間が予測期間となる。起点タイミングＴｓ２'は、予測期間が閾値以下になるタイミングである。
【０１３０】
このように、予測期間を閾値以下に制限することにより、実施の形態よりも予測精度を向上させることができる。ただし、その一方で、合成フレームに対する電子手ブレ補正の精度が低下する。これは、画像合成部２６０が合成対象の２枚のフレームを同程度の比率で合成するという仮定のもとで、手ブレ補正のタイミングの区切りをＴｓ２と仮置きしているためである。閾値は、予測精度の向上と、電子手ブレ補正の精度の低下とのバランスを考慮して設定される。
【０１３１】
図３０は、実施の形態の第３の変形例におけるＮ＝４の際のカメラ動き演算部の動作の一例を示すタイミングチャートである。Ｎ＝２の場合と同様に、Ｔｍ０またはＴｍ１からＴｓ２'までの期間が予測期間となり、２枚目のフレームに対応する積算期間は、Ｔｓ２'からＴｃ２２までとなる。また、３枚目のフレームに対応する積算期間は、Ｔｓ２'から、３枚目の露光重心のタイミングＴｃ２３までとなり、４枚目のフレームに対応する積算期間は、Ｔｓ２'から、４枚目の露光重心のタイミングＴｃ２４までとなる。
【０１３２】
このように、本技術の実施の形態の第３の変形例によれば、撮像装置１００の動き量を予測する予測期間を閾値以下に制限するため、動き量の予測精度を向上させることができる。
【０１３３】
なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、特許請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、特許請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。
【０１３４】
また、上述の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、ＣＤ（Compact Disc）、ＭＤ（MiniDisc）、ＤＶＤ（Digital Versatile Disc）、メモリカード、ブルーレイディスク（Blu-ray（登録商標）Disc）等を用いることができる。
【０１３５】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【０１３６】
なお、本技術は以下のような構成もとることができる。
（１）入力フレームが撮像部により撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す切り出し処理部と、
前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリと、
前記現在切出しフレームと前記過去切出しフレームとを合成して合成フレームとして出力する合成処理部と
を具備する画像処理装置。
（２）連続する２枚の前記合成フレームのそれぞれの露光タイミングの一方から他方までの期間内の前記撮像部の動き量を合成フレーム間動き量として取得する動き量取得部と、
前記合成フレーム間動き量に基づいて前記合成フレームの一部を出力フレームとして切り出す合成フレーム補正部と
をさらに具備する前記（１）記載の画像処理装置。
（３）連続する２枚の前記現在切り出しフレームの一方の露光タイミングと他方の露光タイミングとの間の起点タイミングから前記一方の露光タイミングまでの期間内の前記撮像部の動き量を合成フレーム内動き量として取得する動き量取得部をさらに具備し、
前記切り出し処理部は、前記合成フレーム内動き量に基づいて前記現在切り出しフレームを切り出して前記保持部に供給する
前記（２）記載の画像処理装置。
（４）前記合成フレーム間動き量は、前記合成フレーム間動き量の演算を開始する第１の開始タイミングから前記起点タイミングまでの第１の予測期間内の前記動き量を示す第１の予測値を含み、
前記動き量取得部は、前記第１の開始タイミングまでの前記動き量に基づいて前記第１の予測値を取得する
前記（３）記載の画像処理装置。
（５）前記第１の予測期間の長さは、所定の閾値を超えない
前記（４）記載の画像処理装置。
（６）前記合成フレーム内動き量は、前記合成フレーム内動き量の演算を開始する第２の開始タイミングから前記起点タイミングまでの第２の予測期間内の前記動き量を示す第２の予測値を含み、
前記動き量取得部は、前記第２の開始タイミングまでの前記撮像部の動き量に基づいて前記第２の予測値を取得する
前記（４）または（５）に記載の画像処理装置。
（７）前記第２の予測期間の長さは、前記所定の閾値を超えない
前記（６）記載の画像処理装置。
（８）連続する２枚の前記現在切り出しフレームに基づいて被写体が動いた方向を示す動きベクトルを検出する被写体動き検出部をさらに具備し、
前記合成処理部は、前記動きベクトルに基づいて前記現在切出しフレームと前記過去切出しフレームとを合成する
前記（１）から（７）のいずれかに記載の画像処理装置。
（９）入力フレームを撮像する撮像部と、
前記入力フレームが撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す入力フレーム切り出し処理部と、
前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリと、
前記現在切出しフレームと前記過去切出しフレームとを合成して合成フレームとして出力する合成処理部と
を具備する撮像装置。
（１０）前記撮像部の動きを検出するセンサをさらに具備する
前記（９）記載の撮像装置。
（１１）入力フレームが撮像部により撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す入力フレーム切り出し処理手順と、
前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリに保持された前記過去切り出しフレームと前記現在切出しフレームとを合成して合成フレームとして出力する合成処理手順と
を具備する画像処理方法。
（１２）入力フレームが撮像部により撮像されるたびに前記撮像部の動きに基づいて前記入力フレームの一部を現在切出しフレームとして切り出す切り出し処理手順と、
前記現在切出しフレームを過去切出しフレームとして保持するフレームメモリに保持された前記過去切り出しフレームと前記現在切出しフレームとを合成して合成フレームとして出力する合成処理手順と
をコンピュータに実行させるためのプログラム。
【符号の説明】
【０１３７】
１００  撮像装置
１１０  撮像レンズ
１２０  撮像素子
１３０  動き検出センサ
１４０  記録部
１５０  制御部
２００  画像処理部
２１０  カメラ動き演算部
２１１  予測演算部
２１２  合成フレーム間動き量積分器
２１３  合成フレーム内動き量積分器
２２０  補正量演算部
２２１  合成フレーム内補正量演算部
２３０  手ブレ補正量演算部
２３１  座標変換部
２３２  切り出し位置決定部
２３３  ハイパスフィルタ
２３４  カメラワーク推定部
２３５  理想切り出し位置決定部
２３６  補正枠内制限処理部
２４０  切り出し処理部
２４１  セレクタ
２４２  補正量選択制御部
２４３  位置合わせ処理部
２５０  被写体動き検出部
２５１  ゲイン調整部
２５２  調整後動き検出部
２５３、２６２  フレームメモリ
２６０  画像合成部
２６１  画像合成処理部
２７０  回転補正部
【図１】
0006759680.tif 000002
【図２】
0006759680.tif 000003
【図３】
0006759680.tif 000004
【図４】
0006759680.tif 000005
【図５】
0006759680.tif 000006
【図６】
0006759680.tif 000007
【図７】
0006759680.tif 000008
【図８】
0006759680.tif 000009
【図９】
0006759680.tif 000010
【図１０】
0006759680.tif 000011
【図１１】
0006759680.tif 000012
【図１２】
0006759680.tif 000013
【図１３】
0006759680.tif 000014
【図１４】
0006759680.tif 000015
【図１５】
0006759680.tif 000016
【図１６】
0006759680.tif 000017
【図１７】
0006759680.tif 000018
【図１８】
0006759680.tif 000019
【図１９】
0006759680.tif 000020
【図２０】
0006759680.tif 000021
【図２１】
0006759680.tif 000022
【図２２】
0006759680.tif 000023
【図２３】
0006759680.tif 000024
【図２４】
0006759680.tif 000025
【図２５】
0006759680.tif 000026
【図２６】
0006759680.tif 000027
【図２７】
0006759680.tif 000028
【図２８】
0006759680.tif 000029
【図２９】
0006759680.tif 000030
【図３０】
0006759680.tif 000031