(57)【要約】      （修正有）【課題】必要とされる画質に応じた精度のぶれ補正を効率よく行うことができる撮像装置及びこのような撮像方法を提供する。【解決手段】露光開始時からの撮像レンズ１を介して撮像素子５の撮像面上に結像した被写体像のぶれ量が、撮像レンズ１の焦点距離と画質を決めるパラメータとに依拠した所定量に達する毎に、撮像素子５の画素から画像データを読み出すようにする。撮像素子５の画素から複数回読み出された複数コマの画像データのそれぞれによって表される画像の同一部分が重なるように、複数コマの画像データを対応付けて合成しぶれが低減された画像を生成する。【選択図】図１
2009296561.tif 000002
【特許請求の範囲】
【請求項１】
時分割撮像によって得られた複数コマの画像データのそれぞれによって表される画像の相互のぶれが低減されるように、上記複数コマの画像データを合成する撮像装置であって、
二次元状に複数の画素が配置された撮像面を有する撮像素子と、
上記撮像素子の撮像面に被写体像を結像する撮像レンズと、
上記結像した被写体像の、上記撮像面上の基準位置からのぶれ量を検出するぶれ量検出部と、
上記複数コマの画像の画質に関連するパラメータを設定する画質パラメータ設定部と、
露光開始時からの上記ぶれ量が、上記画質に関連するパラメータと上記撮像レンズの焦点距離に依拠した所定量に達する毎に、上記撮像素子の画素から画像データを読み出す動作を複数回行う画素読出制御部と、
上記撮像素子の画素から複数回読み出された複数コマの画像データのそれぞれによって表される画像の同一部分が重なるように、上記複数コマの画像データを対応付けて合成する画像合成部と、
を具備することを特徴とする撮像装置。
【請求項２】
上記画質と関連するパラメータは、画像サイズと圧縮率の少なくとも１つを含むことを特徴とする請求項１に記載の撮像装置。
【請求項３】
時分割撮像によって得られた複数コマの画像データのそれぞれによって表される画像の相互のぶれが低減されるように、上記複数コマの画像データを合成する撮像方法であって、
撮像素子の撮像面に結像した被写体像の、上記撮像面上の基準位置からのぶれ量を検出するステップと、
上記複数コマの画像の画質と関連するパラメータを設定するステップと、
露光開始時からの上記撮像面上の基準位置からのぶれ量が、上記画質に関連するパラメータと上記撮像レンズの焦点距離に依拠した所定量に達する毎に、上記撮像素子の画素から画像データを読み出す動作を複数回行うステップと、
上記撮像素子の画素から複数回読み出された複数コマの画像データのそれぞれによって表される画像の同一部分が重なるように、上記複数コマの画像データを対応付けて合成するステップと、
を有することを特徴とする撮像方法。
【請求項４】
時分割撮像によって得られた複数コマの画像データのそれぞれによって表される画像の相互のぶれが低減されるように、上記複数コマの画像データを合成する撮像方法であって、
露光開始時からのぶれ量が、画質に関連するパラメータと撮像レンズの焦点距離に依拠した所定量に達する毎に、撮像素子の画素から画像データを読み出す動作を繰り返し行うステップと、
複数回読み出された上記画像データによって表される複数コマの画像の同一部分が重なるように、上記複数コマの画像データを対応付けて合成するステップと、
を有することを特徴とする撮像方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ぶれが補正された画像を得ることが可能な撮像装置及びこのような撮像方法に関する。
【背景技術】
【０００２】
デジタルカメラ等の撮像装置において、特に長時間の撮像を行う場合に、撮像の間の撮影者の手ぶれや被写体の動きによって、撮像素子上に結像する被写体像にぶれを生じることが広く知られている。
【０００３】
ぶれを補正する手法の１つとして、ぶれ量を許容量以下に抑えることが可能な露光時間で時分割的に複数回の撮像を行い、それぞれの撮像の結果として得られる複数の画像データによって表されるそれぞれの画像の相互のぶれが低減されるように、上記複数の画像データを合成することにより、１枚のぶれが補正された画像を生成する手法が特許文献１や特許文献２等において提案されている。特許文献１では、露光開始時からのぶれ量がぶれを許容可能な所定のぶれ量に達するまで露光を行って、撮像素子から画像データを読み出して合成するという動作を繰り返し行い、これによってぶれが低減された画像を生成するようにしている。また、特許文献２では、カラーフィルタが配置された単板型撮像素子から時分割で読み出された画像データを、カラーフィルタのカラーコーディングにおける単位パターンの繰り返し画素数の整数倍でアドレス補正を行いながら、前回撮像された画像データと合成することでぶれが低減された画像データを生成するようにしている。
【特許文献１】特開２００３−３２５４０号公報
【特許文献２】特開２００５−３２８３２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
静止画像を撮像する撮像装置においては、あらゆるシーンを確実に撮像することが求められるため、撮像を高速に行うことは必須の要件である。また、あらゆる場面での撮像が求められるので、長時間の撮像に耐えることも必須の要件である。長時間の撮像を行えるようにするためには、撮像時の消費電力を少なくすることが望ましい。
【０００５】
上述したことは手ぶれ防止処理においても例外ではなく、手ぶれ防止処理においても高速化及び低消費電力化が求められている。
【０００６】
ここで、特許文献１や特許文献２のような、時分割撮像により得られた複数の画像データの相互のぶれを補正してぶれを補正する方式においては、合成後に得られる画像におけるぶれを高精度に補正するためには、時分割撮像におけるそれぞれの撮像の露光時間を短くして、各撮像における画像のぶれ量を小さくする必要がある。時分割撮像の各撮像における露光時間によらずに、合成後の画像データのＳ／Ｎをほぼ一定にするには、合成した画像データ全体の露光時間をほぼ一定に保つ必要がある。したがって、時分割撮像における露光時間が短くなるほど時分割撮像の回数を増やす必要がある。しかしながら、時分割撮像の回数を多くした場合には、画像処理を施さなければならない画像の数が多くなり、結果として全体の画像処理の量が多くなり、他の処理に悪影響を与える。処理時間が長くなったり、処理時間を短くするために高速処理を行うと、消費電力も多くなり、上述した撮像装置の基本的な要求を満たさなくなる。
【０００７】
一方、画質モードによっては、一般的にぶれが目立たない露光時間とされる１／ｆ秒（ただし、ｆは３５ｍｍフィルムカメラ用の撮像レンズの焦点距離であり、単位は“ｍｍ”である）で時分割撮像を行っても、十分なぶれ補正の効果が得られない場合がある。
【０００８】
このように、時分割撮像の回数は撮像装置の機能や性能を左右する非常に重要な要素でありながら、従来技術においては画質モードと無関係に時分割撮像の回数が設定されていたため、不必要に精度の高いぶれ補正が行われたり、精度不足になったりすることがあった。
【０００９】
本発明は、上記の事情に鑑みてなされたものであり、必要とされる画質に応じた精度のぶれ補正を効率よく行うことができる撮像装置及びこのような撮像方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明の第１の態様の撮像装置は、時分割撮像によって得られた複数コマの画像データのそれぞれによって表される画像の相互のぶれが低減されるように、上記複数コマの画像データを合成する撮像装置であって、二次元状に複数の画素が配置された撮像面を有する撮像素子と、上記撮像素子の撮像面に被写体像を結像する撮像レンズと、上記結像した被写体像の、上記撮像面上の基準位置からのぶれ量を検出するぶれ量検出部と、上記複数コマの画像の画質に関連するパラメータを設定する画質パラメータ設定部と、露光開始時からの上記ぶれ量が、上記画質に関連するパラメータと上記撮像レンズの焦点距離に依拠した所定量に達する毎に、上記撮像素子の画素から画像データを読み出す動作を複数回行う画素読出制御部と、上記撮像素子の画素から複数回読み出された複数コマの画像データのそれぞれによって表される画像の同一部分が重なるように、上記複数コマの画像データを対応付けて合成する画像合成部と、を具備することを特徴とする。
【００１１】
また、上記の目的を達成するために、本発明の第２の態様の撮像方法は、時分割撮像によって得られた複数コマの画像データのそれぞれによって表される画像の相互のぶれが低減されるように、上記複数コマの画像データを合成する撮像方法であって、撮像素子の撮像面に結像した被写体像の、上記撮像面上の基準位置からのぶれ量を検出するステップと、上記複数コマの画像の画質と関連するパラメータを設定するステップと、露光開始時からの上記撮像面上の基準位置からのぶれ量が、上記画質に関連するパラメータと上記撮像レンズの焦点距離に依拠した所定量に達する毎に、上記撮像素子の画素から画像データを読み出す動作を複数回行うステップと、上記撮像素子の画素から複数回読み出された複数コマの画像データのそれぞれによって表される画像の同一部分が重なるように、上記複数コマの画像データを対応付けて合成するステップと、を有することを特徴とする。
【００１２】
また、上記の目的を達成するために、本発明の第３の態様の撮像方法は、時分割撮像によって得られた複数コマの画像データのそれぞれによって表される画像の相互のぶれが低減されるように、上記複数コマの画像データを合成する撮像方法であって、露光開始時からのぶれ量が、画質に関連するパラメータと撮像レンズの焦点距離に依拠した所定量に達する毎に、撮像素子の画素から画像データを読み出す動作を繰り返し行うステップと、複数回読み出された上記画像データによって表される複数コマの画像の同一部分が重なるように、上記複数コマの画像データを対応付けて合成するステップと、を有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、必要とされる画質に応じた精度のぶれ補正を効率よく行うことができる撮像装置及びこのような撮像方法を提供することができる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の実施形態について説明する。  
図１は、本発明の実施形態に係わる撮像装置の一例としてのデジタルカメラの構成を示すブロック図である。図１に示すデジタルカメラは、撮像レンズ１と、レンズ駆動系２と、絞り３と、絞り駆動系４と、撮像素子５と、撮像素子ドライバ６と、タイミングジェネレータ（ＴＧ）回路７と、相関二重サンプリング（ＣＤＳ）回路８と、増幅回路９と、アナログ／デジタル（Ａ／Ｄ）変換部１０と、データバス１１と、内蔵メモリ１２と、画像処理部１３と、ＡＥ処理部１４と、ＡＦ処理部１５と、圧縮／伸張部１６と、着脱メモリ１７と、表示部１８と、不揮発性メモリ１９と、メインＣＰＵ２０と、入力部２１と、電源部２２と、サブＣＰＵ２３と、Ａ／Ｄ変換部２４と、角速度センサ２５、２６とを有している。
【００１５】
撮像レンズ１は、被写体の光学像（被写体像）を撮像素子５の撮像面上に結像させるための光学系である。レンズ駆動系２は、撮像レンズ１に含まれるフォーカス調整用のレンズ等を駆動させるための駆動系である。レンズ駆動系２を介してフォーカス調整用のレンズを駆動することによって撮像レンズ１のフォーカス調整を行うことが可能である。また、撮像レンズ１がズームレンズである場合には、レンズ駆動系２によって撮像レンズ１を駆動することによってズーミングを行うことが可能である。
【００１６】
絞り３は、撮像レンズ１を介して撮像素子５に入射する光の量を調整するために設けられている。絞り駆動系４は、絞り３を駆動させるための駆動系である。絞り駆動系４を介して絞り３を開閉することによって、撮像素子５への光の入射量が調整される。これにより、撮像素子５の露光量を制御することが可能である。
【００１７】
撮像素子５は、複数の画素が二次元状に配列されて構成される撮像面の前面に、異なる複数色の色フィルタセグメントが所定の周期配列（例えば、ベイヤー配列）をなして配置されて構成されている。この撮像素子５は、撮像面上に結像された被写体像を電気信号（画像データ）に変換する。撮像素子ドライバ６は、撮像素子５による撮像動作と撮像素子５の画素からの信号の読み出し動作とを実行させる。ＴＧ回路７は、撮像素子５、ＣＤＳ回路８、Ａ／Ｄ変換部１０の動作タイミングを決定するためのタイミング信号を撮像素子ドライバ６、ＣＤＳ回路８及びＡ／Ｄ変換部１０に供給する。
【００１８】
ＣＤＳ回路８は、ＴＧ回路７からのタイミング信号に従って、撮像素子５から出力される画像データのＣＤＳ処理を行うことで、画像データにおけるノイズを除去する。増幅回路９は、ＣＤＳ回路８から出力される画像データをメインＣＰＵ２０から指定される所定の増幅率で増幅する。Ａ／Ｄ変換部１０は、増幅回路９からアナログ信号として出力される画像データをデジタル信号に変換する。
【００１９】
データバス１１は、デジタルカメラ内部で発生した各種データをデジタルカメラ内の各部に転送するための転送路である。内蔵メモリ１２は、Ａ／Ｄ変換部１０において得られた画像データや、画像処理部１３、圧縮／伸張部１６において処理された画像データ等の各種データが一時的に記憶される記憶部である。
【００２０】
画像処理部１３は、同時化処理、ホワイトバランス補正処理、ＹＣ分離処理、色変換処理、階調変換処理等の画像処理を施す。また、画像処理部１３は、画像合成部１３ａを有している。画像合成部１３ａは、後述する時分割撮像により、複数回読み出された撮像素子５の画素の信号（画像データ）によって表される複数コマの画像の同一部分が重なるように、複数コマの画像データを対応付けて合成して１枚のぶれの低減された画像データを生成する。
【００２１】
ＡＥ処理部１４は、被写体の輝度を測定するための測光処理を行う。なお、被写体の輝度は専用のセンサを用いて検出するようにしても良いし、画像データから検出するようにしても良い。ＡＦ処理部１５は、デジタルカメラから被写体までの距離を測定する。被写体距離は、専用のセンサの出力に基づいて検出するようにしても良いし、フォーカス調整時の撮像レンズ１の繰り出し量から算出するようにしても良い。
【００２２】
圧縮／伸張部１６は、画像データの記録時には、画像処理部１３で処理された画像データをＪＰＥＧ圧縮方式等の所定の圧縮方式に従って圧縮する。また、画像データの再生時には、圧縮／伸張部１６は、着脱メモリ１７に記録された圧縮画像データを読み出して伸張する。
【００２３】
着脱メモリ１７は、デジタルカメラ本体に着脱可能なメモリからなる記録媒体であり、圧縮／伸張部１６で圧縮された画像データ等が記録される。図１では、着脱メモリ１７を画像データの記録用の記録媒体としているが、必ずしも着脱可能なメモリを記録媒体として用いなくとも良い。
【００２４】
表示部１８は、例えば液晶ディスプレイ（ＬＣＤ）であり、画像処理部１３で処理された画像データ等に基づき、各種の画像を表示する。
【００２５】
不揮発性メモリ１９は、図１のデジタルカメラの動作に必要な各種パラメータやメインＣＰＵ２０及びサブＣＰＵ２３にて実行する各種プログラムを記憶している。メインＣＰＵ２０は、デジタルカメラ本体の各種シーケンスを統括的に制御する。このメインＣＰＵ２０は、不揮発性メモリ１９に記憶されているプログラムに従い、また不揮発性メモリ１９から各種シーケンスに必要なパラメータを読み込み、各処理を実行する。さらに、メインＣＰＵ２０は、露光時間等を計時するためのタイマカウンタ２０ａを有している。
【００２６】
入力部２１は、レリーズボタン２１ａ及び画質と関連するパラメータ（画質パラメータ）を入力するための画質入力部２１ｂ等を含む操作部材である。この画質入力部２１ｂによって入力された画質パラメータはメインＣＰＵ２０に読み込まれる。ユーザによって入力部２１の何れかの操作部材が操作されることにより、メインＣＰＵ２０は、ユーザの操作に応じた各種シーケンスを実行する。レリーズボタン２１ａは、第１レリーズスイッチと第２レリーズスイッチの２段スイッチを有して構成されている。レリーズボタン２１ａが半押しされて第１レリーズスイッチが閉じた場合に、メインＣＰＵ２０は、ＡＥ処理やＡＦ処理等の撮像準備シーケンスを行う。また、レリーズボタン２１ａが全押しされて第２レリーズスイッチが閉じた場合に、メインＣＰＵ２０は撮像シーケンスを実行して撮像を行う。画質入力部２１ｂは、例えば十字キー等の操作部材である。この画質入力部２１ｂによって、着脱メモリ１７に記録される圧縮画像データの画質（画像サイズ、圧縮率）を設定することが可能である。したがって、画質入力部２１ｂは画質パラメータ設定部を構成する。
【００２７】
電源部２２は、図１に示すデジタルカメラの電源である。メインＣＰＵ２０は、電源部２２より供給される電源を図１に示す各ブロックに供給する。
【００２８】
サブＣＰＵ２３は、ぶれ補正に関するシーケンスを統括的に制御する。Ａ／Ｄ変換部２４は、角速度センサ２５、２６からアナログ信号として出力されるぶれ信号（角速度信号）をデジタル信号に変換してサブＣＰＵ２３に出力する。角速度センサ２５は、図１に示すデジタルカメラのＸ軸回りの回転角θｘの単位時間当たりの変化量である角速度を検出するための角速度センサである。角速度センサ２６は、図１に示すデジタルカメラのＹ軸回りの回転角θｙの単位時間当たりの変化量である角速度を検出するためのものである。
【００２９】
ここで、図２を参照して角速度センサ２５、２６についてさらに説明する。図２は、デジタルカメラに設定した座標軸と２つの角速度センサ２５、２６の配置との関係を示す図である。
【００３０】
図２において、ある時刻における、撮像レンズ１の光軸Ｏに沿った方向にＺ軸を設定する。また、Ｚ軸に垂直な平面上で且つ被写体側からデジタルカメラ１００を見たときの左右方向にＸ軸を設定する。さらに、Ｚ軸とＸ軸との交点を通り且つ被写体側からデジタルカメラ１００を見たときの上下方向にＹ軸を設定する。なお、Ｚ軸の正方向は被写体側とする。また、Ｘ軸の正方向は被写体側からデジタルカメラ１００を見たときの右方向とする。さらに、Ｙ軸の正方向は上方向とする。なお、ある時刻においては、図２に示すように、撮像レンズ１の光軸ＯとＺ軸とは一致しているが、別の時刻においてぶれが発生した場合には、撮像レンズ１の光軸Ｏは一般にＺ軸とは一致しない。
【００３１】
以上のように設定したＸ軸、Ｙ軸、Ｚ軸周りの回転角を、それぞれθｘ、θｙ、θｚとする。図２に示すように、２つの角速度センサ２５、２６は、Ｘ軸、Ｙ軸、Ｚ軸に関連した配置となるように設けられている。
【００３２】
以下、図１に示すデジタルカメラの動作について説明する。図３は本実施形態の撮像方法を含むデジタルカメラの撮像動作の流れを示すフローチャートである。
【００３３】
まず、メインＣＰＵ２０は、レリーズボタン２１ａが半押しされて第１レリーズスイッチが閉じたか否かを判定する（ステップＳ１０１）。ステップＳ１０１の判定において、第１レリーズスイッチが閉じるまでメインＣＰＵ２０は、ステップＳ１０１の判定を継続する。一方、ステップＳ１０１の判定において、第１レリーズスイッチが閉じていれば、メインＣＰＵ２０は、ＡＥ処理部１４による測光処理（被写体輝度の測定）を実行する（ステップＳ１０２）。その後、メインＣＰＵ２０は、ＡＥ処理部１４における測光結果に基づいて、アペックス演算により露光時間（Ｔｅｘｐ）を演算する（ステップＳ１０３）。ここで、露光時間Ｔｅｘｐは、通常撮像における標準露光時間である。この露光時間Ｔｅｘｐは、後述する時分割撮像における複数コマの撮像の合成露光時間とほぼ等しい。次に、メインＣＰＵ２０は、ＡＦ処理部１５の出力に基づいて、撮像レンズ１のフォーカスを調整する（ステップＳ１０４）。なお、このときにメインＣＰＵ２０は、ＡＦ処理部１５で演算される被写体距離を保持しておく。
【００３４】
次に、メインＣＰＵ２０は、レリーズボタン２１ａが全押しされて第２レリーズスイッチが閉じたか否かを判定する（ステップＳ１０５）。ステップＳ１０５の判定において、第２レリーズスイッチが閉じていなければ処理がステップＳ１０２に戻る。この場合に、メインＣＰＵ２０はＡＥ処理部１４による測光を再び実行する。一方、ステップＳ１０５の判定において、第２レリーズスイッチが閉じていれば、メインＣＰＵ２０は、ＴＧ回路７を介して撮像素子５の露光を開始させる（ステップＳ１０６）。これにより、撮像素子５の各画素において被写体像に応じた電荷の蓄積が開始される。
【００３５】
また、第２レリーズスイッチが閉じた後は、図３の処理とは独立にぶれ量の演算が行われる。ステップＳ１０６以降の処理においては、ぶれ量演算の処理が大きく係わってくるので、ここでぶれ量の演算について説明する。
【００３６】
第２レリーズスイッチが閉じた後、サブＣＰＵ２３は、角速度センサ２５、２６から各出力される検出信号を、それぞれＡ／Ｄ変換部２４によりデジタルデータとして取り込む。また、サブＣＰＵ２３は、メインＣＰＵ２０を介して撮像レンズ１の焦点距離ｆに関する情報を取得する（例えば、撮像レンズ１がズームレンズである場合には、メインＣＰＵ２０がレンズ駆動系２を介して情報の取得を行い、あるいは、撮像レンズ１が交換式のレンズ鏡筒である場合には通信接点等を介して情報の取得を行う）。さらに、サブＣＰＵ２３は、被写体距離情報をメインＣＰＵ２０から取得する。これら、焦点距離ｆの情報と被写体距離情報とは、後述するＸ方向のぶれ量の演算及びＹ方向のぶれ量の演算に用いられる。
【００３７】
次に、図４を参照して、ぶれ量とぶれ補正量との関係について説明する。  
図４は、デジタルカメラ１００が回転角θｘだけぶれた場合の、撮像面上における被写体６３の像の移動状態を示す図である。
【００３８】
デジタルカメラ１００がぶれ等によって回転角θｘだけ回転したとすると、これに伴って撮像レンズ１が参照符号１’に示す位置まで回転して移動するとともに、撮像素子５の撮像面６１も角度θｘだけ傾いたＣ−Ｄ面の位置に移動する。また、ぶれが発生していないときには参照符号６２に示す位置にあった被写体６３の像が、回転角θｘのぶれが発生した後には、撮像面Ｃ−Ｄ上の参照符号６２’に示す位置に移動する。
【００３９】
ここで、撮像レンズ１の焦点距離をｆ、ぶれが発生していないときの撮像レンズ１の物空間焦点から被写体６３までの距離をＬ、ぶれが発生していないときの撮像レンズ１の像空間焦点から像位置までの距離をＬ’、ぶれによる像位置の移動量をΔＹ、とそれぞれすると、図４に示すような幾何学的位置関係と、次の（式１）に示すニュートン（Newton）の結像公式  
【数１】
2009296561.tif 000003
【００４０】
とを用いることにより、移動量ΔＹは、次の（式２）に示すように算出される。  
【数２】
2009296561.tif 000004
【００４１】
ここで、（式２）におけるβは撮像倍率を示し、β＝ｆ／Ｌである。また、（式２）を算出するに当たっては、θｘが微小量であるとして、θｘの１次のオーダーまでの近似を行っている。また、（式２）における焦点距離ｆは、上述したように、メインＣＰＵ２０を介して取得され、撮像レンズ１のレンズ情報としてサブＣＰＵ２３に入力される。さらに、βを算出するために必要な被写体距離Ｌは、ＡＦ処理部１５から取得することができる。さらに、回転角θｘは、角速度センサ２５からの出力に基づいて算出することができる。
【００４２】
（式２）に基づいて得られる移動量ΔＹに係る実質的な補正を行うことにより、デジタルカメラにぶれが発生したとしても、撮像素子５を介して出力される画像データによって表される画像にぶれの影響が生じないようにすることができる。
【００４３】
なお、上述したように、角度θｘは微小量であるために、図４に示すように撮像面Ｃ−ＤがＸ軸周りにＹ軸に対して角度θｘだけ傾いても、撮像面の傾きにより生じる像への影響は、上述した移動量ΔＹ以外には問題になることはない。
【００４４】
また、デジタルカメラ１００がＹ軸回りに回転角θｙだけ回転したときの像位置の移動量ΔＸも、（式２）と同様に、次の（式３）に示すように求められる。  
【数３】
2009296561.tif 000005
【００４５】
ここで、（式２）の両辺を時間で微分することにより、次の（式４）が得られる。  
【数４】
2009296561.tif 000006
【００４６】
（式４）の右辺ｄ（θｘ）／ｄｔは、Ｘ軸周りの角速度そのものであるために、角速度センサ２５の出力をそのまま用いることが可能である。また、（式４）の左辺ｄ（ΔＹ）／ｄｔは、ｄ（θｘ）／ｄｔの角速度が生じた場合のＹ軸方向の像移動速度Ｖｙとなる。
【００４７】
同様に、Ｙ軸回りに回転角θｙだけぶれが発生したときのＸ軸方向の像位置の移動量ΔＸに関しても、（式３）の両辺を時間で微分することにより、次の（式５）が得られる。  
【数５】
2009296561.tif 000007
【００４８】
（式５）の右辺ｄ（θｙ）／ｄｔは、Ｙ軸周りの角速度そのものであるために、角速度センサ２６の出力をそのまま用いることが可能である。また、（式５）の左辺ｄ（ΔＸ）／ｄｔは、ｄ（θｙ）／ｄｔの角速度が生じた場合のＸ軸方向の像移動速度Ｖｘとなる。
【００４９】
今、所定時間ΔＴ（ΔＴは、Ａ／Ｄ変換部２４の出力をデジタル信号に変換するサンプリング間隔である。このΔＴは、３５ｍｍフィルムカメラの撮影レンズに換算した撮影レンズ１の焦点距離をｆ[ｍｍ]とするとき、１／ｆ[ｓ]と同じか、またはそれよりも短い時間であることが望ましい）周期で検出した角速度センサ２５の出力ｄ（θｘ）／ｄｔが、ωｘ1、ωｘ2、ωｘ3、…、ωｘ(n-1)、ωｘnであったとすると、ｎ×ΔＴの時間が経過した後のＹ軸方向の像位置の移動量ΔＹは、次の（式６）に示すように与えられる。  
【数６】
2009296561.tif 000008
【００５０】
同様に、所定時間ΔＴ毎に（所定時間ΔＴ周期で）検出した角速度センサ２６の出力ｄ（θｙ）／ｄｔが、ωｙ1、ωｙ2、ωｙ3、…、ωｙ(n-1)、ωｙnであったとすると、ｎ×ΔＴの時間が経過した後のＸ軸方向の像位置の移動量ΔＸは、次の（式７）に示すように与えられる。  
【数７】
2009296561.tif 000009
【００５１】
以上のように、撮像素子５によって、ｎ×ΔＴの時間間隔で露光された複数コマの撮像における像の移動量（即ちぶれ量）は、（式６）及び（式７）により計算することができる。したがって、これらの式により算出されたぶれ量ΔＸ、ΔＹに基づいて、それぞれの画像のぶれを補正するように、それぞれの画像に対応する画像データの各画素のデータ同士を対応付けて画像データの合成処理を行うことにより、ぶれの補正された１つの画像データを生成することが可能となる。
【００５２】
図５は、サブＣＰＵ２３により移動量ΔＸ、ΔＹ等を算出する処理の流れを示すフローチャートである。上述したように、図５の処理は、レリーズボタン２１ａの半押しによって第２レリーズスイッチが閉じたときから露光が終了するまでの間、図３に示した処理とは独立な処理として実行されるようになっている。
【００５３】
図５の処理において、サブＣＰＵ２３は、第２レリーズスイッチが閉じたか否かを判定している（ステップＳ４０１）。そして、第２レリーズスイッチが閉じるまではステップＳ４０１の判定を繰り返し行う。
【００５４】
ステップＳ４０１の判定において、第２レリーズスイッチが閉じた場合に、サブＣＰＵ２３は、撮像レンズ１の焦点距離ｆと被写体距離Ｌとを取得する（ステップＳ４０２）。
【００５５】
これらの焦点距離ｆと被写体距離Ｌとは、例えば図５に示す処理の中において演算すれば良い。また、より高速なサイクルでぶれ量を演算するために、別途のプロセッサ等を用いて焦点距離ｆと被写体距離Ｌとを演算しておき、サブＣＰＵ２３はこの演算されたデータをステップＳ４０２において取得するようにすると良い。これにより、処理の高速化を図るとともに、実際のぶれに対してリアルタイムに追従することが可能となる。
【００５６】
次に、サブＣＰＵ２３は、Ａ／Ｄ変換部２４を介して角速度センサ２５、２６の出力を読み込むことにより、角速度ωｘ、ωｙを取得する（ステップＳ４０３）。その後、サブＣＰＵ２３は、取得した角速度ωｘ、ωｙを、前回取得した値までの角速度の累積加算値に加算することにより、今回検出した値までの角速度の累積加算値を演算する（ステップＳ４０４）。
【００５７】
その後、サブＣＰＵ２３は、ステップＳ４０４で演算した累積加算値を、（式６）、（式７）にそれぞれ代入することにより、時分割撮像における複数コマの撮像の内の最初の撮像終了時点からの像位置の移動量ΔＹ、ΔＸをそれぞれ算出する（ステップＳ４０５）。
【００５８】
次に、サブＣＰＵ２３は、Ｐｘ＝「ΔＸ／Ｌｘ」と、Ｐｙ＝「ΔＹ／Ｌｙ」と、を演算する（ステップＳ４０６）。ここで、Ｌｘ、Ｌｙは画素のＸ方向、Ｙ方向のサイズをそれぞれ表し、「」は小数以下を四捨五入した整数値を意味するものとする。したがって、Ｐｘ、Ｐｙは、最初の時分割画像の撮像終了時点からの像位置の移動量ΔＸ、ΔＹを画素単位で表したものとなる。
【００５９】
続いて、サブＣＰＵ２３は、Ｐｘ、Ｐｙを、各対応するメモリ〔Ｐｘ〕、〔Ｐｙ〕にそれぞれ記憶させる（ステップＳ４０７）。その後、サブＣＰＵ２３は、露光時間Ｔｅｘｐの露光が終了しているか否かを判定する（ステップＳ４０８）。ステップＳ４０８の判定において、露光が終了していない場合には処理がステップ４０３に戻る。この場合に、サブＣＰＵ２３は、角速度ωｘ、ωｙの取得以後の処理を繰り返す。一方、ステップＳ４０８において、露光が終了した場合に、サブＣＰＵ２３は、図５に示す処理を終了させる。したがって、角速度センサ２５，角速度センサ２６、Ａ／Ｄ変換部２４、サブＣＰＵ２３はぶれ量検出部を構成する。
【００６０】
ここで、図３の説明に戻る。ステップＳ１０６において、撮像素子５の露光を開始させた後、メインＣＰＵ２０は、露光時間を計時するためのタイマカウンタ２０ａのカウントを開始させる（ステップＳ１０７）。次に、メインＣＰＵ２０は、変数の初期設定を行う。ここでは、後述する演算に必要な変数Ｐｘ０、Ｐｙ０を記憶するためのメモリ〔Ｐｘ０〕、〔Ｐｙ０〕にそれぞれ０を記憶させる。本実施形態においては、最初の時分割撮像の露光開始時からの累積ぶれ量を求め、この累積ぶれ量から前回の時分割撮像による画像データを読み出すまでの累積ぶれ量を減算することにより、それぞれの時分割撮像の露光時間内のぶれ量を求めている。変数Ｐｘ０、Ｐｙ０は、前回の時分割撮像による画像データを読み出すまでのＸ方向、Ｙ方向の累積ぶれ量である。また、時分割撮像において、前回撮像した画像データを撮像素子５から読み出すまでの露光時間Ｔｍ０を記憶するためのメモリ〔Ｔｍ０〕に０を記憶させる。また、時分割撮像の回数ｎを記憶するためのメモリ〔ｎ〕に０を記憶させる。さらに、増幅回路９の増幅率Ａを記憶するためのメモリ〔Ａ〕に１を記憶させる。
【００６１】
次に、メインＣＰＵ２０は、Ｐｘ−Ｐｘ０、Ｐｙ−Ｐｙ０を演算し、その演算結果をそれぞれメモリ〔Ｓｘ〕、〔Ｓｙ〕に記憶させる（ステップＳ１０９）。
【００６２】
その後、メインＣＰＵ２０は、タイマカウンタ２０ａのカウント値Ｔｍ（Ｔｍは、最初の時分割撮像開始時刻（ステップＳ１０７の時刻とほぼ同じ）から最新の時分割画像データの累積露光時間に等しい）から、増幅率設定処理（詳細は後述する）の中で設定した前回の画像データ読み出し前のタイマカウンタ２０ａの値Ｔｍ０（Ｔｍ０は最初の時分割撮像開始時刻から前回の時分割画像データ読み出しの時刻までの累積露光時間に等しい）を減算した時間Ｔｍ−Ｔｍ０（最新の時分割撮像における露光時間に等しい）を、ステップＳ１０３で演算した通常撮像における標準露光時間Ｔｅｘｐで除算した値（Ｔｍ−Ｔｍ０）／Ｔｅｘｐ）が、予め不揮発性メモリ１９に記憶された定数ｋ１より小さいか否かを判定する（ステップＳ１１０）。ここで、（Ｔｍ−Ｔｍ０）／Ｔｅｘｐは、最新の時分割撮像における画像データのレベル（露光量）の目安を与えるものである。（Ｔｍ−Ｔｍ０）／Ｔｅｘｐがｋよりも小さいときは画像データのＳ／Ｎが許容できないレベルであることを意味する。この場合には、画像データの読み出しが行われずに、ステップＳ１１１に分岐する。そして、メインＣＰＵ２０は、ＴｍがＴｅｘｐ以上か否かを判定する（ステップＳ１１１）。ステップＳ１１１の判定において、ＴｍがＴｅｘｐ以上のときは、ステップＳ１１６以降の画像データの読み出し（後述する）を行う。後述することから明らかになるが、ステップ１１３以降の処理では、ぶれ量が所定量以上にならないと画像データの読み出しが行われない。しかしながらぶれが発生していない場合にも画像データの読み出しを行う必要がある。このため、ステップＳ１１１の判定を設けておき、ぶれが発生しなくとも、露光時間ＴｍがＴｅｘｐ以上となったら、画像データを読み出すようにしている。したがって、本実施形態においては、ぶれが全く発生しない場合は、通常撮像と同じように撮像が行われることになる。また、ステップＳ１１１の判定において、Ｔｍ≧Ｔｅｘｐでないときには露光量が不足しているのでステップＳ１０９に戻って処理が繰り返される。
【００６３】
また、ステップＳ１１０の判定において、（Ｔｍ−Ｔｍ０）／Ｔｅｘｐがｋ１よりも小さくないときは、画像データのＳ／Ｎが許容レベルにある。この場合に、メインＣＰＵ２０は、Ｓｘが許容ぶれ量Ｓｘ０より大きいか、又はＳｙが許容ぶれ量Ｓｙ０よりも大きいかを判定する（ステップＳ１１２）。
【００６４】
ここで、ステップＳ１１２の許容ぶれ量について説明する。まず、撮像面での長さで表したＸ方向およびＹ方向の許容ぶれ量をそれぞれＬｘ０、Ｌｙ０とする。そして例えば、２４×３６［ｍｍ］のサイズの撮像素子によって得られた画像を１８×２４［ｃｍ］（所謂６切判）のプリント紙に６倍の倍率で引き伸ばして４０［ｃｍ］の距離から観察したとする。視力１．０の人の視覚の２点識別分解能はおよそ１［分］とされているので、プリント紙に引き伸ばされた画像の許容錯乱円は、４０［ｃｍ］×１［分］×２π／（３６０×６０［分］）＝１１６［μｍ］となる。したがって、撮像素子の撮像面における許容錯乱円は１１６［μｍ］／６＝１９［μｍ］となる。本実施形態では、このような許容錯乱円の大きさに基づいて許容ぶれ量Ｓｘ０、Ｓｙ０を設定する。
【００６５】
なお、本実施形態におけるデジタルカメラの画質モードは、図６に一例として示すように、画像サイズと圧縮率とを選択して選べるようになっている。許容ぶれ量は、画像サイズ、圧縮率、画像の引き伸ばし倍率、及び観察距離等に依存するものである。本実施形態では、例えば、画像サイズ１６００画素×１２００画素、且つ圧縮率がノーマルのときの許容ぶれ量を上述した許容錯乱円の大きさに等しい１９［μｍ］に設定する。画像サイズ１６００画素×１２００画素は、許容ぶれ量１９［μｍ］のぶれが発生しても、本来の撮像素子の解像度を損なわないレベルの画像サイズである。他の画像サイズに対してどのような許容ぶれ量を設定するかは、画像の引き伸ばし倍率や観察距離にも依存するが、本実施形態においては、画像サイズに反比例した許容ぶれ量を設定する。また、同じ画像サイズでも圧縮率が高いと画質は低下する。したがって、圧縮率が高いほど、許容ぶれ量を大きくするように設定する。
【００６６】
以上説明した許容ぶれ量を単位画素の水平方向の長さ（Ｌｘ）と垂直方向の長さ（Ｌｙ）で除算することによって、画素単位で表したＸ方向、Ｙ方向の許容ぶれ量Ｓｘ０、Ｓｙ０を計算する。そして、この許容ぶれ量Ｓｘ０、Ｓｙ０を画像サイズや圧縮率毎に予め不揮発性メモリ１９に記憶しておく。
【００６７】
ステップＳ１１２の判定において、Ｓｘが許容ぶれ量Ｓｘ０より大きいか、Ｓｙが許容ぶれ量Ｓｙ０よりも大きい場合に、メインＣＰＵ２０は、Ｓｘ／Ｓｘ０が不揮発性メモリ１９に記憶されている定数ｋ２より大きいか、又はＳｙ／Ｓｙ０がｋ２より大きいか否かを判定する（ステップＳ１１３）。ステップＳ１１３の判定において、Ｓｘ／Ｓｘ０がｋ２より大きいか、又はＳｙ／Ｓｙ０がｋ２より大きい場合には、ぶれが許容レベルより大きいとして、メインＣＰＵ２０は表示部１８に警告表示を行う（ステップＳ１１４）。なお、警告表示の代わりに警告音であっても構わない。ステップＳ１１３の判定処理を設けたのは次の理由による。ぶれを補正可能な限界は、時分割撮像において撮像素子から複数コマの画像データを読み出す周期に依存する。読み出し周期が長いと時分割撮像におけるぶれ量が許容量に比べて大きくなりやすい。ぶれ量が許容量に対してどれくらい大きくなったときに警告表示をするかは設計的な問題であるが、たとえばｋ２＝２にするとよい。ｋ２＝１では頻繁に警告表示がされて煩わしいし、ｋ２が大きすぎると商品の信頼性が問われるからである。
【００６８】
また、ステップＳ１１３の判定において、Ｓｘ／Ｓｘ０及びＳｙ／Ｓｙ０が何れもｋ２以下のときに、メインＣＰＵ２０は、増幅回路９の増幅率設定のサブルーチンを実行する（ステップＳ１１５）。時分割撮像における露光量は通常撮像における露光量に比べて少ないので、時分割撮像における画像データを増幅回路９によって増幅する。これにより、時分割撮像時におけるＡ／Ｄ変換部１０への入力信号レベルを通常撮像時の入力信号レベルとほぼ等しくし、Ａ／Ｄ変換部１０のＡ／Ｄ変換に伴う量子化誤差を小さくすることができる。
【００６９】
ここで、増幅率設定のサブルーチンについてさらに説明する。図７は、増幅率設定のサブルーチンを示すフローチャートである。メインＣＰＵ２０は、最初の時分割撮像における露光開始時からの累積露光時間Ｔｍから、前回の時分割撮像における画像データを読み出すまでの露光時間Ｔｍ０を減算し、この値（この値は、上述したように、最新の時分割撮像における露光時間を示すものとなる）を、変数ΔＴｅｘｐを記憶するためのメモリ〔ΔＴｅｘｐ〕に記憶させる（ステップＳ５０１）。次に、メインＣＰＵ２０は、Ｔｍを新たな変数Ｔｍ０の値としてメモリ〔Ｔｍ０〕に記憶させる（ステップＳ５０２）。次に、メインＣＰＵ２０は、Ｔｅｘｐ／ΔＴｅｘｐを、増幅率Ａを記憶するためのメモリ〔Ａ〕に記憶させる（ステップＳ５０２）。その後、メインＣＰＵ２０は、増幅回路９の増幅率をＡに設定する（ステップＳ５０４）。このように増幅率を設定しておくことにより、画像データの読み出し時には、撮像素子５からの画像データがＴｅｘｐ／ΔＴｅｘｐ倍される。これによりＡ／Ｄ変換部１０に入力される画像データのレベルが通常撮像時のレベルとほぼ等しくなる。
【００７０】
再び図３に戻って説明を続ける。ステップＳ１１５の増幅率設定の後、メインＣＰＵ２０は、前回画像データを読み出すまでの累積ぶれ量Ｐｘ０、Ｐｙ０を記憶するメモリ〔Ｐｘ０〕、〔Ｐｙ０〕に露光開始時からのぶれ量Ｐｘ、Ｐｙを記憶させることにより、Ｐｘ０、Ｐｙ０を更新する（ステップＳ１１６）。次に、メインＣＰＵ２０は、ＴＧ回路７を制御して撮像素子５からの画像データの読み出しを開始させる（ステップＳ１１７）。次に、メインＣＰＵ２０は、今回読み出された画像データと、既にぶれが補正されて合成されている画像データとの画像合成を行う（ステップＳ１１８）。したがって、メインＣＰＵ２０、撮像素子ドライバ６、ＴＧ回路７は画素読出制御部を構成する。
【００７１】
画像合成のサブルーチンについて図８を参照してさらに説明する。図８は、画像合成のサブルーチンを示すフローチャートである。まず、メインＣＰＵ２０は、時分割撮像の回数を示す変数ｎが０か否かを判定する（ステップＳ６０１）。ステップＳ６０１の判定において、ｎ＝０のときは、初回の時分割撮像による画像データが読み出された場合である。このとき、メインＣＰＵ２０は、撮像素子５を介して読み出され、Ａ／Ｄ変換部１０で得られた画像データＡを内蔵メモリ１２に記憶させる（ステップＳ６０２）。この内蔵メモリ１２に記憶された画像データによって表される画像を画像Ａとする。一方、ステップＳ６０１の判定において、ｎ＝０でないときは、２回目以降の時分割撮像による画像データが読み出された場合である。この場合に、メインＣＰＵ２０は、撮像素子５から新たに読み出された画像データＢによって表される画像Ｂと、画像Ａの同一部分が重なるように、画像データＡと画像データＢを対応付けて合成する。具体的には、図３のステップＳ１０９にてメモリ〔Ｓｘ〕、〔Ｓｙ〕に記憶されたＸ方向、Ｙ方向のぶれ量をそれぞれＳｘ、Ｓｙとしたときに、画像Ｂが画像Ａに対してＸ方向に−Ｓｘ、Ｙ方向に−Ｓｙだけシフトして重なるように、画像データＢの各画素のデータの読み出しアドレスを制御して、画像データＡの各画素のデータと対応付けた後に、対応する画素のデータ同士を合成する。そして、この合成された画像データを、再び内蔵メモリ１２に記憶させる（ステップＳ６０３）。次に、メインＣＰＵ２０は、変数ｎを記憶するためのメモリ〔ｎ〕にｎ＋１を記憶させ、図８の処理からリターンする。したがって、メインＣＰＵ２０、内蔵メモリ１２、画像処理部１３は画像合成部を構成する。
【００７２】
再び図３に戻って説明を続ける。ステップＳ１１８において画像合成が終了すると、メインＣＰＵ２０は、タイマカウンタ２０ａの値Ｔｍが露光時間Ｔｅｘｐ以上か否かを判定する（ステップＳ１１９）。ステップＳ１１９の判定において、Ｔｍ＜Ｔｅｘｐのときは、処理がステップＳ１０９に戻る。そして、メインＣＰＵ２０は、ステップＳ１０９以後の処理を繰り返す。一方、ステップＳ１１９の判定において、Ｔｍ≧Ｔｅｘｐのときに、メインＣＰＵ２０は図３の処理を終了させて撮像を終了する。
【００７３】
以上説明したように、本実施形態によれば、記録される画像の画質モード（画像サイズ及び圧縮率）に応じてぶれ量の許容量Ｓｘ０、Ｓｙ０を設定し、ぶれ量Ｓｘ、Ｓｙがぶれ量の許容量Ｓｘ０、Ｓｙ０をそれぞれ超えるまでは画像データの読み出しを行わないようにしている。これにより、時分割撮像の回数を必要以上に多くすることがないのでぶれ補正を高速且つ低消費電力で行うことが可能であるとともに、必要とされる画質モードに応じた精度の良いぶれ補正を行うことが可能である。
【００７４】
本発明は上記した実施形態に限定されるものではなく、以下に例示する変形例を含む。以下に、本発明に含まれる変形例を例示する。なお、各変形例に記載した内容は、矛盾なき限り、任意に組み合わせることが可能である。
【００７５】
［変形例１］
本実施形態では、撮像素子５から外部に読み出した画像データに基づいて、画像合成を行うようにしたが、撮像素子５に画像合成の機能を持たせるように構成することもできる。また、撮像素子５の内部に画像合成の機能を持たせるときは、画像データはアナログ信号を合成するものであってもよいし、アナログ信号をデジタル信号に変換した後に合成するものであってもよい。
【００７６】
［変形例２］
本実施形態では、撮像素子５から画像データを読み出す毎に、この読み出された画像データと、既に読み出されてぶれ補正と画像合成処理がなされた画像データとの、ぶれ補正及び画像合成を繰り返し行うことにより、高速の画像合成処理を可能とするものであったが、時分割撮影におけるすべての画像データを内蔵メモリ１２に記憶したのち、複数コマの画像データによって表されるそれぞれの画像の同一部分が重なるように、上記複数コマの画像データを対応付けて合成するようにしてもよい。
【００７７】
［変形例３］
本実施形態においては、時分割撮像の開始から時分割撮像が終了するまでの総露光時間が、標準露光時間Ｔｅｘｐとほぼ等しくなるように撮像回数（ｍ）を制御したが、必ずしもこれに限定されることはなく、必要に応じて、時分割撮像の開始から時分割撮像が終了するまでの総露光時間が、標準露光時間Ｔｅｘｐより長くなるようにしてもよいし、短くなるようにしてもよい。例えば、合成後の画像データのランダムノイズを低減するために、上記総露光時間を標準露光時間より長くして、時分割撮像における撮像回数を多くしてもよいし、時分割撮像の時間を短くするために、上記総露光時間を標準露光時間より短くして、時分割撮像における撮像回数を減らしてもよい。
【００７８】
［変形例４］
画質パラメータは画質入力部２１ｂにより操作者が入力するものであったが、例えば着脱メモリ１７の残メモリ容量に応じて、メインＣＰＵ２０により自動で画質パラメータが設定されるようにしてもよい。この場合は、メインＣＰＵ２０が画質パラメータ設定部を構成する。
【図面の簡単な説明】
【００７９】
【図１】本発明の一実施形態に係わる撮像装置の一例としてのデジタルカメラの構成を示すブロック図である。
【図２】デジタルカメラに設定した座標軸と２つの角速度センサ２５、２６の配置との関係を示す図である。
【図３】本発明の一実施形態の撮像方法を含むデジタルカメラの撮像動作の流れを示すフローチャートである。
【図４】デジタルカメラが回転角θｘだけぶれた場合の、撮像面上における被写体の像の移動状態を示す図である。
【図５】サブＣＰＵにより移動量ΔＸ、ΔＹ等を算出する処理の流れを示すフローチャートである。
【図６】デジタルカメラの画質モードを示す図である。
【図７】増幅率設定のサブルーチンを示すフローチャートである。
【図８】画像合成のサブルーチンを示すフローチャートである。
【符号の説明】
【００８０】
１…撮像レンズ、２…レンズ駆動系、３…絞り、４…絞り駆動系、５…撮像素子、６…撮像素子ドライバ、７…タイミングジェネレータ（ＴＧ）回路、８…相関二重サンプリング（ＣＤＳ）回路、９…増幅回路、１０，２４…アナログ／デジタル（Ａ／Ｄ）変換部、１１…データバス、１２…内蔵メモリ、１３…画像処理部、１４…ＡＥ処理部、１５…ＡＦ処理部、１６…圧縮／伸張部、１７…着脱メモリ、１８…表示部、１９…不揮発性メモリ、２０…メインＣＰＵ、２０ａ…タイマカウンタ、２１…入力部、２１ａ…レリーズボタン、２２ｂ…画質入力部、２３…サブＣＰＵ、２５，２６…角速度センサ
【図１】
2009296561.tif 000010
【図２】
2009296561.tif 000011
【図３】
2009296561.tif 000012
【図４】
2009296561.tif 000013
【図５】
2009296561.tif 000014
【図６】
2009296561.tif 000015
【図７】
2009296561.tif 000016
【図８】
2009296561.tif 000017