(57)【特許請求の範囲】
【請求項１】
複数の撮影画像を連続的に撮像する撮像手段と、
１枚目の撮影画像から特徴点を抽出し、２枚目以後の各撮影画像について、撮影画像中における前記特徴点の位置を追跡座標として抽出する特徴点抽出手段と、
前記特徴点の座標と前記追跡座標の対応関係を利用して、２枚目以後の各撮影画像について、撮影画像を１枚目の撮影画像に重ね合わせるための座標変換パラメータを順次算出する座標変換パラメータ算出手段と、
前記座標変換パラメータ算出手段により算出された座標変換パラメータを用いて２枚目以後の各撮影画像の座標変換を行い、座標変換された各撮影画像を１枚目の撮影画像に順次合成することにより、前記複数の撮影画像が合成された合成画像を生成する合成手段と、
前記1枚目の撮影画像及び前記座標変換された各撮影画像ごとの点拡がり関数の値を加算することで、前記合成画像の点拡がり関数を演算する点拡がり関数演算手段と、
前記点拡がり関数演算手段により演算された点拡がり関数を利用して前記合成手段により生成された合成画像を復元する復元手段と
を備えることを特徴とする撮像装置。
【請求項２】
請求項１に記載の撮像装置において、
前記合成手段は、
前記座標変換パラメータを用いて変換された座標にまるめ処理を施し、前記まるめ処理が施された座標に座標変換された各撮影画像を１枚目の撮影画像に順次合成することにより、前記複数の撮影画像が合成された合成画像を生成すること
を特徴とする撮像装置。
【請求項３】
請求項２に記載の撮像装置において、
前記点拡がり関数演算手段は、
前記まるめ処理が施された座標及び当該座標のまるめ誤差に応じて前記２枚目以後の各撮影画像の点拡がり関数を演算する
を特徴とする撮像装置。
【請求項４】
複数の撮影画像を連続的に撮像する撮像手段を備える撮像装置に内蔵されたコンピュータが実行する撮像装置のコンピュータプログラムであって、
１枚目の撮影画像から特徴点を抽出し、２枚目以後の各撮影画像について、撮影画像中における前記特徴点の位置を追跡座標として抽出する処理と、
前記特徴点の座標と前記追跡座標の対応関係を利用して、２枚目以後の各撮影画像について、撮影画像を１枚目の撮影画像に重ね合わせるための座標変換パラメータを順次算出する処理と、
前記座標変換パラメータを用いて２枚目以後の各撮影画像の座標変換を行い、座標変換された各撮影画像を１枚目の撮影画像に順次合成することにより、前記複数の撮影画像が合成された合成画像を生成する処理と、
前記1枚目の撮影画像及び前記座標変換された各撮影画像ごとの点拡がり関数の値を加算することで、前記合成画像の点拡がり関数を演算する処理と、
前記点拡がり関数を利用して前記生成された合成画像を復元する処理と
をコンピュータに実行させることを特徴とする撮像装置のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、逐次合成処理型の電子式手振れ補正動作により手振れ補正画像を生成する撮像装置及びそのコンピュータプログラムに関する。
【背景技術】
【０００２】
従来より、撮像装置を利用して暗所を撮影する手法として、逐次合成処理型の電子式手振れ補正方式が知られている。この方式では、手振れの影響が少ない露光時間で被写体を連続的に撮影し、１枚目の撮影画像を基準画像に設定し、２枚目以後の撮影画像に対しては、基準画像に対する撮影画像の動きを算出し、算出された動きに基づいて動き補正を行った後に基準画像（３枚目以後の撮影画像の場合は合成画像）に順次合成する処理を施すことにより、１枚の合成画像を生成する。
【０００３】
逐次合成処理型の電子式手振れ補正方式では、合成が完了した撮影画像を順次破棄又は上書きしながら合成画像を生成するために、全ての撮影画像を記憶するための大容量のメモリを撮像装置に設ける必要性がない。従って、この方式によれば、全ての撮影画像を記憶しておく必要がある一括合成処理型の電子式手振れ補正方式と比較して、撮像装置を安価に構成することができる。
【０００４】
ここで逐次合成処理型の電子式手振れ補正方式による合成画像の生成手順について詳しく説明する。なお本明細書中では、ｉ番目の撮影画像を入力画像Ｐｉ，入力画像Ｐｉの座標（ｘ，ｙ）における画素値をＰｉ（ｘ，ｙ）と表記する。また合成する撮影画像の総数はＮ枚、入力画像Ｐｉの大きさは（ｘｍａｘ，ｙｍａｘ）とする。また入力画像Ｐｉを合成することにより得られる合成画像を合成画像Ｇ（ｉ），合成画像Ｇ（ｉ）の座標（ｘ，ｙ）における画素値をＧ（ｉ）（ｘ，ｙ）と表記する。
【０００５】
この方式では、始めに、入力画像Ｐ１の撮影が完了したタイミングで入力画像Ｐ１から複数個の特徴点Ｆｋ（１≦ｋ≦Ｍ）を抽出する。２枚の画像間の動きは一方の画像中の点と他方の画像中の点の対応関係から予測できる。特徴点Ｆｋとはこの対応関係が決定しやすい点のことを意味する。特徴点Ｆｋを抽出する手法としては、ＳＵＳＡＮコーナ検出法（S.M.Smith and J.M.Brady, "SUSAN a new approach to low level image processing", International Journal of Computer Vision 23(1):45-78 May(1997)）やＫＬＴ法（C.Thomasi and K.Kaneda, "Detection and tracking of point features", CMU Tech.Rep. CMU-CS-91-132, April 1991）等の手法を例示できる。
【０００６】
次に、以下の数式１に示すように入力画像Ｐ１を合成画像（基準画像）Ｇ（１）に設定する。
【数１】
0004930277.tif 000002
【０００７】
その後、入力画像Ｐｉ（２≦ｉ≦Ｎ）それぞれの撮影が完了したタイミングで各特徴点Ｆｋの入力画像Ｐｉ中における位置を追跡する。特徴点Ｆｋの追跡手法としては、勾配法やテンプレートマッチング法等の手法を例示できる。テンプレートマッチング法では、特徴点Ｆｋ近傍の入力画像Ｐ１の画像をテンプレートとして用意し、特徴点Ｆｋと同じ座標値を中心点とする入力画像Ｐｉ中の探索範囲内の各点におけるテンプレートとの類似度を算出し、探索範囲内で類似度が最も高い点を入力画像Ｐｉ中における特徴点Ｆｋの位置とする。
【０００８】
類似度としてはＳＳＤ（Sum of Squared Difference）を利用することが多い。特徴点Ｆｋの位置を精密に探索する方法としては、小数点以下の位置検出が可能なサブピクセル位置推定手法等の手法（「類似度モデルに基づく画像の高精度２次元サブピクセルマッチング」電子情報通信学会，技術研究報告PRMU2003, vol103, No.151, pp31-38, June 2003）が提案されている。入力画像Ｐ１からＭ個の特徴点Ｆｋ（１≦ｋ≦Ｍ）を抽出したとすると、この処理により各特徴点Ｆｋの入力画像Ｐｉ中における座標（以下“追跡座標”と表記）Ｔｉ，ｋが得られる。
【０００９】
次に、特徴点Ｆｋの座標と追跡座標Ｔｉ，ｋの対応関係を利用して合成画像Ｇ（１）と入力画像Ｐｉ間の動きを表す座標変換パラメータＨｉを算出する。座標変換の手法としてはアフィン変換や射影変換を利用できる。連写撮影時間が長時間で撮像装置の動きが大きくなる場合は射影変換により座標変換を行う必要があるが、短時間で連写撮影する場合にはアフィン変換で十分な場合が多い。そこで以下の説明では座標変換の手法としてアフィン変換を用いる。いま入力画像Ｐ１の特徴点Ｆｋの座標（ｘ１，ｙ１）が入力画像Ｐｉ中の座標（ｘ２，ｙ２）に対応する時、斉次座標表記のアフィン変換では座標（ｘ１，ｙ１）と座標（ｘ２，ｙ２）は以下の数式２，３に示す関係式を満たす。
【数２】
0004930277.tif 000003
【数３】
0004930277.tif 000004
【００１０】
特徴点Ｆｋの座標（ｘ１，ｙ１）と入力画像Ｐｉ中の座標（ｘ２，ｙ２）の対応関係には誤ったものが含まれている可能性があるので、誤った対応関係を除外して精度の高い座標変換パラメータＨｉを算出するためにＲＡＮＳＡＣ法（M.A.Fischler, R.C.Bolles, "Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography", Comm. of the ACM, vol24, pp381-395, 1981）を用いることが望ましい。
【００１１】
次に、算出された座標変換パラメータＨｉを用いて入力画像Ｐ１と同じ位置で重なるように入力画像Ｐｉを座標変換して変換画像Ｐｉ’を生成する。そして上記数式２に変換画像Ｐｉ’の座標値（ｘ１，ｙ１）（０≦ｘ１≦ｘｍａｘ，０≦ｙ１≦ｙｍａｘ）を順次代入することにより座標（ｘ１，ｙ１）に対応する入力画像Ｐｉの座標値（ｘ２，ｙ２）を算出し、算出された入力画像Ｐｉの座標（ｘ２，ｙ２）における画素値Ｐｉ（ｘ２，ｙ２）を変換画像Ｐｉ’の座標（ｘ１，ｙ１）における画素値Ｐｉ’（ｘ１，ｙ１）として算出する。なおこの処理においては座標（ｘ２，ｙ２）が必ずしも整数値になるとは限らない。座標（ｘ２，ｙ２）が整数値でない場合、座標（ｘ２，ｙ２）における画素値が定まらない。従ってこの場合には、最近傍法やバイリニア法による補間処理により座標（ｘ２，ｙ２）周辺の画素値から座標（ｘ２，ｙ２）における画素値を補間する。
【００１２】
次に、以下の数式４に示すように、上記の処理により得られた変換画像Ｐｉ’を今までの処理により得られた合成画像Ｇ（ｉ−１）に合成することにより合成画像Ｇ（ｉ）を生成する。このようにしてＮ枚の入力画像Ｐｉが合成された合成画像Ｇ（Ｎ）が生成される。このような処理によれば、合成画像Ｇ（Ｎ）はＮ枚の入力画像Ｐｉを加算したものであるので、１枚の撮影画像のＳ／Ｎ比と比較してノイズを１／√Ｎ改善できる。従って、この逐次合成処理型の電子式手振れ補正方式によれば、手振れの少ない高感度な画像を撮影できる。
【数４】
0004930277.tif 000005
【特許文献１】特開２００６−２７０５２３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
一般に撮像装置では、光学系が理想的に合焦していたとしても、光学系の点拡がり関数（Point Spread Function）は、様々なレンズの収差によって理想的なデルタ関数にならず、図６に示すようにガウシアン関数に近似される。またＣＣＤ等のイメージセンサは画素毎に到達した光を画素領域内で積分するので、撮影画像の高周波成分は抑圧される。さらには、逐次成処理型の電子式手振れ補正方式では、上述の通り変換画像Ｐｉ’の画素値Ｐｉ’（ｘ１，ｙ１）を算出する際に補間処理が行われる。
【００１４】
このため、従来の逐次成処理型の電子式手振れ補正方式では、撮影画像の各点における点拡がり関数のピーク形状が図７（ａ）〜（ｄ）に示すように平坦になったり、点拡がり関数のピーク位置が図７（ａ）〜（ｄ）や図８（ａ）〜（ｄ）に示すように画像間で変化する。このため、座標変換パラメータＨｉが精度よく算出されていたとしても、ピークが平坦、且つ、ピーク位置が異なる拡がり関数が繰り返し合成されることにより、合成画像の各点における点拡がり関数は図７（ｅ）や図８（ｅ）に示すように劣化する。これにより、従来の逐次成処理型の電子式手振れ補正方式によれば、合成画像にぼけが生じる。
【００１５】
本発明は、上記課題を解決するためになされたものであり、その目的は、高精細な合成画像を生成可能な撮像装置及びそのコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【００１６】
本発明に係る撮像装置は、複数の撮影画像を連続的に撮像する撮像手段と、１枚目の撮影画像から特徴点を抽出し、２枚目以後の各撮影画像について、撮影画像中における特徴点の位置を追跡座標として抽出する特徴点抽出手段と、特徴点の座標と追跡座標の対応関係を利用して、２枚目以後の各撮影画像について、撮影画像を１枚目の撮影画像に重ね合わせるための座標変換パラメータを順次算出する座標変換パラメータ算出手段と、座標変換パラメータ算出手段により算出された座標変換パラメータを用いて２枚目以後の各撮影画像の座標変換を行い、座標変換された各撮影画像を１枚目の撮影画像に順次合成することにより、複数の撮影画像が合成された合成画像を生成する合成手段と、1枚目の撮影画像及び座標変換された各撮影画像ごとの点拡がり関数の値を加算することで、合成画像の点拡がり関数を演算する点拡がり関数演算手段と、点拡がり関数演算手段により演算された点拡がり関数を利用して合成手段により生成された合成画像を復元する復元手段とを備える。
また、合成手段は、座標変換パラメータを用いて変換された座標にまるめ処理を施し、まるめ処理が施された座標に座標変換された各撮影画像を１枚目の撮影画像に順次合成することにより、複数の撮影画像が合成された合成画像を生成することことが望ましい。
また、点拡がり関数演算手段は、まるめ処理が施された座標及び当該座標のまるめ誤差に応じて２枚目以後の各撮影画像の点拡がり関数を演算するすることが望ましい。
【００１７】
本発明に係る撮像装置のコンピュータプログラムは、複数の撮影画像を連続的に撮像する撮像手段を備える撮像装置に内蔵されたコンピュータが実行する撮像装置のコンピュータプログラムであって、１枚目の撮影画像から特徴点を抽出し、２枚目以後の各撮影画像について、撮影画像中における特徴点の位置を追跡座標として抽出する処理と、特徴点の座標と追跡座標の対応関係を利用して、２枚目以後の各撮影画像について、撮影画像を１枚目の撮影画像に重ね合わせるための座標変換パラメータを順次算出する処理と、座標変換パラメータを用いて２枚目以後の各撮影画像の座標変換を行い、座標変換された各撮影画像を１枚目の撮影画像に順次合成することにより、複数の撮影画像が合成された合成画像を生成する処理と、1枚目の撮影画像及び座標変換された各撮影画像ごとの点拡がり関数の値を加算することで、合成画像の点拡がり関数を演算する処理と、点拡がり関数を利用して前記生成された合成画像を復元する処理とをコンピュータに実行させる。
【発明の効果】
【００１９】
本発明に係る撮像装置及びそのコンピュータプログラムによれば、座標変換パラメータを利用して合成画像の点拡がり関数を演算し、演算された点拡がり関数を利用して合成画像を復元するので、点拡がり関数の劣化によって合成画像が劣化することを抑制し、高精細な合成画像を生成することができる。
【発明を実施するための最良の形態】
【００２０】
本発明は、以下に示す復元処理によって、逐次合成処理型の電子式手振れ補正方式により生成された合成画像から高精細な合成画像を生成する。以下、この復元処理の概念について詳しく説明する。
【００２１】
〔復元処理〕
一般に、レンズ等の光学系による点拡がり関数はガウシアン関数に近似されることが多い。そこで光学系の点拡がり関数を分散標準偏差σのガウシアン関数に近似すると、光学系の点拡がり関数ｈｇ（ｋ，ｌ）は以下の数式５のように表される。
【数５】
0004930277.tif 000006
【００２２】
またＣＣＤ等のイメージセンサは画素毎に到達した光を正方領域内で積分するので、イメージセンサの開口部の大きさを１とすると、イメージセンサ部での点拡がり関数ｈｂ（ｋ，ｌ）は以下の数式６のように表される。従って入力画像Ｐ１の点拡がり関数ｇ１（ｋ，ｌ）は、光学系の点拡がり関数ｈｇ（ｋ，ｌ）とイメージセンサ部での点拡がり関数ｈｂ（ｋ，ｌ）の畳み込みとなるので、以下の数式７のように表される。
【数６】
0004930277.tif 000007
【数７】
0004930277.tif 000008
【００２３】
次に、変換画像Ｐｉ’の画素値は、数式２を利用して画像変換前の入力画像Ｐｉの座標値を求め、その座標値の最近傍の画素値から求めるものとする。この時、座標変換パラメータＨｉによって座標変換前の座標（ｘ２，ｙ２）が座標変換後の座標（ｘ１，ｙ１）に対応し、座標（ｘ２，ｙ２）が整数値（Ｘ２，Ｙ２）にまるめられ、この時のまるめ誤差が（α，β）であるとすると以下の数式８，９に示す関係式が成り立つ。
【数８】
0004930277.tif 000009
【数９】
0004930277.tif 000010
【００２４】
この場合、Ｎ枚の入力画像Ｐｉが合成された合成画像Ｇ（Ｎ）の点拡がり関数を図９（ａ），（ｂ）を用いて説明する。
【００２５】
（１）まず、変換画像Ｐｉ’における点拡がり関数を考える。図９（ａ），（ｂ）に示すように変換画像Ｐｉ’中の座標（ｘ１，ｙ１）に対応する入力画像Ｐｉの座標値は（ｘ２，ｙ２）である。
【００２６】
（２）光学系の点拡がり関数は数式５で与えられるｈｇ（ｋ，ｌ）であるので、点光源が座標（ｘ２，ｙ２）にあるときの座標（Ｘ２，Ｙ２）を中心とした光学系の点拡がり関数は数式８との関係から以下の数式１０で与えられる。
【数１０】
0004930277.tif 000011
【００２７】
（３）光学系の点拡がり関数ｈｇ（ｋ，ｌ）は、狭い領域に限られるので、座標変換によってはその特性は変化しないと近似する。
【００２８】
（４）この結果、変換画像Ｐｉ’中の座標（ｘ１，ｙ１）における点拡がり関数ｇｉ（ｋ，ｌ｜（ｘ１，ｙ１））は、イメージセンサ部での点拡がり関数ｈｂ（ｋ，ｌ）と数式１０に示す光学系の点拡がり関数との畳み込みとなるので、以下の数式１１により表される。
【数１１】
0004930277.tif 000012
【００２９】
従って、合成画像Ｇ（Ｎ）は入力画像Ｐ１に２枚目以後の変換画像Ｐｉ’を加算することにより求められるので、合成画像Ｇ（Ｎ）の点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））は以下の数１２に示すように変換画像Ｐｉ’の点拡がり関数ｇｉ（ｋ，ｌ｜（ｘ１，ｙ１））の和によって表される。従って、合成画像の各点における点拡がり関数は劣化し、合成画像にぼけが生じる。
【数１２】
0004930277.tif 000013
【００３０】
上述の通り、変換画像Ｐｉ’の点拡がり関数ｇｉ（ｋ，ｌ｜（ｘ１，ｙ１））が規定されていれば、光学系の収差や合成時の補間処理による劣化を考慮して、合成画像Ｇ（Ｎ）の各座標（ｘ１，ｙ１）における点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を算出できる。そこで本発明では、座標変換パラメータＨｉの精度が高い場合、ウィーナフィルタ，一般逆フィルタ，射影フィルタ等の手法により、数式１２に示す点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を用いて最終的な合成画像Ｇ（Ｎ）から高精細な合成画像を生成し、劣化した合成画像Ｇ（Ｎ）を復元する。
【００３１】
上述の復元処理では、座標変換パラメータＨｉの精度が高いことを前提していたが、逐次合成処理型の電子式手振れ補正方式では、入力画像Ｐｉ毎に座標変換パラメータＨｉを算出するために、一括合成処理型の電子式手振れ補正方式と比較して座標変換パラメータＨｉの精度が低くなる。そして座標変換パラメータＨｉの精度の精度が低い場合には、前述した画像復元を行っても最終的な合成画像Ｇ（Ｎ）にぼけが残ってしまう。そこで上述の復元処理を実行する際には、合成画像Ｇ（Ｎ）が得られた後であっても座標変換パラメータＨｉを再演算し、再演算された座標変換パラメータＨｉを利用して高精細な合成画像を復元することが望ましい。以下、再演算された座標変換パラメータＨｉを利用した合成画像の復元方法について説明する。
【００３２】
前述したように、座標変換パラメータＨｉはｉ番目の入力画像Ｐｉと１枚目の入力画像Ｐ１との複数の特徴点の対応付けから求めたものであった。全ての入力画像Ｐｉの合成が完了した時点においては、１枚目の入力画像Ｐ１から得られたＭ個の特徴点Ｆｋの座標と、（Ｎ−１）枚の入力画像それぞれの特徴点の対応座標Ｔｉ，ｋ（（Ｎ−１）×Ｍ個）のデータが得られている。そこでこの方法では、これらのデータの全ての対応を利用して高精度な座標変換パラメータＨｉ’を推定しなおす。なお座標変換パラメータＨｉ’の推定方法は文献（“カメラパラメータ推定による紙面を対象とした超解像ビデオモザイキング”，池谷彰彦，佐藤智和，池田聖，神原誠之，中島昇，横矢直和，電子情報通信学会論文誌（D-II），vol.J88-D-II，No.8，pp.1490-1498，Aug.2005.）に開示されている。
【００３３】
いま座標変換パラメータＨｉ’によって変換画像Ｐｉ’の座標（ｘ１，ｙ１）が入力画像Ｐｉの座標（ｘ３，ｙ３）に対応付けられるとすると、以下の数式１３が成り立つ。
【数１３】
0004930277.tif 000014
【００３４】
前述したように、画像合成では変換画像Ｐｉ’の座標（ｘ１，ｙ１）と入力画像Ｐｉの座標（Ｘ２，Ｙ２）とが重なるように画像合成を行った。この時、図９（ｂ）に示すように、本来重ねるべき座標（ｘ３，ｙ３）と座標（Ｘ２，Ｙ２）との差分を（α’，β’）とすると以下の数式１４に示す関係が成り立つ。この場合、合成画像Ｇ（Ｎ）の点拡がり関数は以下の（１）〜（４）に示す手順により求めることができる。
【数１４】
0004930277.tif 000015
【００３５】
（１）光学系の点拡がり関数は数式５で与えられるｈｇ（ｋ，ｌ）であるので、点光源が座標（ｘ３，ｙ３）にあるときの座標（Ｘ２，Ｙ２）を中心とした光学系の点拡がり関数は数式１４との関係から以下の数式１５で与えられる。
【数１５】
0004930277.tif 000016
【００３６】
（２）光学系の点拡がり関数ｈｇ（ｋ，ｌ）は、狭い領域に限られるので、座標変換によってはその特性は変化しないと近似する。
【００３７】
（３）この結果、変換画像Ｐｉ’中の座標（ｘ１，ｙ１）における点拡がり関数ｇｉ（ｋ，ｌ｜（ｘ１，ｙ１））は、イメージセンサ部での点拡がり関数ｈｂ（ｋ，ｌ）と数式１５に示す光学系の点拡がり関数との畳み込みとなるので、以下の数式１６により表される。
【数１６】
0004930277.tif 000017
【００３８】
従って、座標変換パラメータＨｉ’を用いた場合、合成画像Ｇ（Ｎ）の点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））は以下の数１７に示すように表される。
【数１７】
0004930277.tif 000018
【００３９】
合成画像Ｇ（Ｎ）の各座標における点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を算出する際には、上述の数式１２や数式１６に示す積分計算を行わなければならないが、この積分処理を以下に示すテーブル参照方式により行うようにしてもよい。このような処理によれば、合成画像Ｇ（Ｎ）の各座標における点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））の算出処理を高速に行うことができる。
【００４０】
いま数式１２に対し下記の数式１８に示すような座標変換を行うと、数式１６は以下の数式１９のように表される。
【数１８】
0004930277.tif 000019
【数１９】
0004930277.tif 000020
【００４１】
上記数式１９は積分範囲を変数とする関数になる。またｈｇ（ｘ，ｙ）は偶関数であり、パラメータｘ，ｙの絶対値が共に２．５以上である場合には０に近似できるので、以下の数式２０，２１を考える。
【数２０】
0004930277.tif 000021
【数２１】
0004930277.tif 000022
【００４２】
パラメータＡ，Ｂを予め取り得る値の範囲内で量子化し、量子化されたパラメータＡ，Ｂに対応する関数ＨＧ（Ａ，Ｂ）の値を算出し、パラメータＡ，Ｂを入力とする関数ＨＧ（Ａ，Ｂ）のテーブルを予め作成しておく。このような処理によれば、合成画像Ｇ（Ｎ）の各座標における点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を算出する際、パラメータＡ，Ｂの値を算出し、パラメータＡ，Ｂに対応する関数ＨＧ（Ａ，Ｂ）の値をテーブルから読み出すことにより、関数ＨＧ（Ａ，Ｂ）の値を算出できるので、数式１６に示す積分計算を実行する場合と比較して高速に点拡がり関数を算出できる。
【００４３】
以下、上記復元処理により合成画像Ｇ（Ｎ）から高精細な合成画像を復元する本発明の一実施形態となるデジタルスチルカメラの構成について詳しく説明する。
【００４４】
〔全体構成〕
始めに、図１（ａ），（ｂ）を参照して、本発明の一実施形態となるデジタルスチルカメラ１の全体構成について説明する。
【００４５】
本発明の一実施形態となるデジタルスチルカメラ１は、図１（ａ）に示すように、略矩形形状の薄板状本体（以下、本体と略記）２の前面に撮影レンズ３，セルフタイマランプ４，ファインダ窓５，ストロボ発光部６，及びマイクロホン部７を備える。本体２上面の（使用者にとって）右端側には電源キー８及びシャッタキー９が設けられている。撮影レンズ３は、焦点距離を無段階に変化させるズーム機能及びＡＦ（AutoFocus）機能を有し、電源オフ時及び再生モード時は本体２内部に沈胴する。電源キー８は電源のオン／オフ毎に操作するキーであり、シャッタキー９は撮影モード時に撮影タイミングを指示する。
【００４６】
本体２の背面には、図１（ｂ）に示すように、撮影モード（Ｒ）キー１０，再生モード（Ｐ）キー１１，電子ビューファインダ（ＥＶＦ）１２，スピーカ部１３，マクロキー１４，ストロボキー１５，メニュー（ＭＥＮＵ）キー１６，リングキー１７，セット（ＳＥＴ）キー１８，及び液晶表示部１９が設けられている。撮影モードキー１０は、電源オフの状態から操作することで自動的に電源オンとして静止画の撮影モードに移行する一方、電源オンの状態から繰返し操作することで静止画と動画の撮影モードを循環的に設定する。本実施形態では、静止画の撮影モードには、所定の露光時間で通常の撮影動作を行う一枚撮影モードと、一枚撮影モードよりも短い露光時間で被写体を連続的に撮影し、複数の画像フレームを合成して一枚の画像を生成する連写撮影モードとが含まれる。
【００４７】
再生モードキー１１は、電源オフの状態から操作することで自動的に電源オンとして再生モードに移行する。ＥＶＦ１２は、液晶画面を使用した接眼型のファインダであり、撮影モード時にはスルー画像を液晶画面に表示する一方、再生モード時には選択された画像等を再生表示する。マクロキー１４は、静止画の撮影モードで通常撮影とマクロ撮影とを切換える際に操作する。ストロボキー１５は、ストロボ発光部６の発光モードを切り換える際に操作する。メニューキー１６は、各種メニュー項目等を選択する際に操作する。リングキー１７は、上下左右各方向への項目選択用のキーが一体に形成されたものであり、このリングキー１７の中央に位置するセットキー１８は、その時点で選択されている項目を設定する際に操作する。
【００４８】
液晶表示部１９は、バックライト付きのカラー液晶パネルで構成されるもので、撮影モード時にはスルー画像のモニタ表示を行う一方、再生モード時には選択した画像等を再生表示する。図示しないが、デジタルスチルカメラ１の底面には、記録媒体として用いられるメモリカードを着脱するためのメモリカードスロットや、外部のパーソナルコンピュータ等と接続するためのシリアルインタフェースコネクタとしてＵＳＢ（Universal Serial Bus）コネクタ等が設けられている。
【００４９】
〔撮像系及び制御系の構成〕
次に、図２，図３を参照して、本発明の一実施形態となるデジタルスチルカメラ１の撮像系及び制御系の構成について説明する。
【００５０】
本発明の一実施形態となるデジタルスチルカメラ１では、撮影モードの際、モータ（Ｍ）３１の駆動により合焦位置や絞り位置が移動される、撮影レンズ３を構成するレンズ光学系３２の撮影光軸後方に配置された撮像素子であるＣＣＤ３３が、タイミング発生器（ＴＧ）３４と垂直ドライバ３５によって走査駆動され、一定周期毎に結像した光像に対応する光電変換出力を１画面分出力する。この光電変換出力は、アナログ形態の信号の状態でＲＧＢの各原色成分毎に適宜ゲイン調整された後にサンプルホールド回路（Ｓ／Ｈ）３６でサンプルホールドされ、Ａ／Ｄ変換器３７でデジタルデータに変換され、カラープロセス回路３８で画素補間処理及びγ補正処理を含むカラープロセス処理が行なわれてデジタル値の輝度信号Ｙ及び色差信号Ｃｂ，Ｃｒが生成され、ＤＭＡ（Direct Memory Access）コントローラ３９に出力される。
【００５１】
ＤＭＡコントローラ３９は、カラープロセス回路３８が出力する輝度信号Ｙ及び色差信号Ｃｂ，Ｃｒを、同じくカラープロセス回路３８からの複合同期信号，メモリ書込みイネーブル信号，及びクロック信号を用いて一度ＤＭＡコントローラ３９内部のバッファに書込み、ＤＲＡＭインタフェース（Ｉ／Ｆ）４０を介してバッファメモリとして使用されるＤＲＡＭ４１にＤＭＡ転送する。制御部４２は、ＣＰＵ，ＣＰＵで実行されるコンピュータプログラムを固定的に記憶したＲＯＭ，及びワークメモリとして使用されるＲＡＭ等により構成され、デジタルスチルカメラ１全体の動作を制御する。
【００５２】
制御部４２は、ＤＲＡＭ４１への輝度及び色差信号のＤＭＡ転送終了後に、この輝度及び色差信号をＤＲＡＭインタフェース４０を介してＤＲＡＭ４１より読出し、ＶＲＡＭコントローラ４３を介してＶＲＡＭ４４に書込む。デジタルビデオエンコーダ４５は、上記輝度及び色差信号をＶＲＡＭコントローラ４３を介してＶＲＡＭ４４より定期的に読出し、これらのデータを元にビデオ信号を発生してＥＶＦ１２と液晶表示部１９に出力する。ＥＶＦ１２と液晶表示部１９は、デジタルビデオエンコーダ４５からのビデオ信号に基づいた表示を行なうことで、その時点でＶＲＡＭコントローラ４３から取込んでいる画像情報に基づく画像をリアルタイムに表示する。
【００５３】
このようにＥＶＦ１２と液晶表示部１９にはその時点での画像がモニタ画像としてリアルタイムに表示される、所謂スルー画像の表示状態で、静止画撮影を行ないたいタイミングでシャッタキー９を操作するとトリガ信号を発生する。制御部４２は、このトリガ信号に応じてその時点でＣＣＤ３３から取込んでいる１画面分の輝度及び色差信号のＤＲＡＭ４１へのＤＭＡ転送を取り止め、改めて適正な露出条件に従った絞り値及びシャッタ速度でＣＣＤ３３を駆動して１画面分の輝度及び色差信号を得てＤＲＡＭ４１へ転送し、その後にこの経路を停止し、記録保存の状態に遷移する。
【００５４】
この記録保存の状態では、制御部４２がＤＲＡＭ４１に書込まれている輝度及び色差信号をＤＲＡＭインタフェース４０を介してＹ，Ｃｂ，Ｃｒの各コンポーネント毎に読出して画像処理部４７に書込み、この画像処理部４７でＡＤＣＴ（Adaptive Discrete Cosine Transform：適応離散コサイン変換），エントロピ符号化方式であるハフマン符号化等の処理によりデータ圧縮する。そして、得た符号データを画像処理部４７から読出し、デジタルスチルカメラ１の記録媒体として着脱自在に装着されるメモリカード４８又はデジタルスチルカメラ１に固定的に内蔵される内蔵メモリ（図示せず）のいずれか一方に書込む。そして、輝度及び色差信号の圧縮処理及びメモリカード４８又は内蔵メモリへの全圧縮データの書込み終了に伴なって、制御部４２はＣＣＤ３３からＤＲＡＭ４１への経路を再び起動する。
【００５５】
制御部４２には、キー入力部４９，音声処理部５０、及びストロボ駆動部５１が接続される。キー入力部４９は、上述した電源キー８，シャッタキー９，撮影モードキー１０，再生モードキー１１，マクロキー１４，ストロボキー１５，メニューキー１６，リングキー１７，セットキー１８等から構成され、それらのキー操作に伴なう信号は直接制御部４２へ送出される。音声処理部５０は、ＰＣＭ音源等の音源回路を備え、音声の録音時にはマイクロホン部７より入力された音声信号をデジタル化し、所定のデータファイル形式、例えばＭＰ３（MPEG-1 audio layer 3）規格にしたがってデータ圧縮して音声データファイルを作成してメモリカード４８又は内蔵メモリへ送出する一方、音声の再生時にはメモリカード４８又は内蔵メモリから送られてきた音声データファイルの圧縮を解いてアナログ化し、スピーカ部（ＳＰ）１３を駆動して、拡声放音させる。ストロボ駆動部５１は、静止画像撮影時に図示しないストロボ用の大容量コンデンサを充電した上で、制御部４２からの制御に基づいてストロボ発光部６を閃光駆動する。
【００５６】
内蔵メモリ６０は、図３に示すように、後述する連写合成撮影処理の際に入力画像Ｐｉが順次記憶される入力画像用メモリ領域６１と、連写合成撮影処理により合成された合成画像Ｇ（ｉ）が記憶される合成画像用メモリ領域６２と、連写合成撮影処理により抽出されたＭ個の特徴点Ｆｋの位置情報，Ｍ個の特徴点Ｆｋ近傍の画像（テンプレート）情報，Ｍ×（Ｎ−１）個の特徴点の追跡座標Ｔｉ，ｋ，及び入力画像Ｐｉ毎の（Ｎ−１）個の座標変換パラメータＨｉが記憶される情報記憶用メモリ領域６３と、作業用メモリ領域６４とを備える。
【００５７】
〔連写合成撮影処理〕
このような構成を有するデジタルスチルカメラ１は、以下に示す撮影処理を実行することにより合成画像を生成する。以下、図４に示すフローチャートを参照して、この撮影処理を実行する際の制御部４２の動作について説明する。
【００５８】
図４に示すフローチャートは、デジタルスチルカメラ１の動作モードが静止画の撮影モードに切り替わったタイミングで開始となり、撮影処理はステップＳ１の処理に進む。なお以下に示すデジタルスチルカメラ１の動作は、制御部４２内のＣＰＵがＲＯＭに記憶されているコンピュータプログラムをＲＡＭにロードし、ＲＡＭにロードされたコンピュータプログラムを実行することにより実現される。
【００５９】
ステップＳ１の処理では、制御部４２が、撮像系及び制御系を初期状態に設定することにより、撮影処理に関係するシステムの初期化を行う。これにより、ステップＳ１の処理は完了し、撮影処理はステップＳ２の処理に進む。
【００６０】
ステップＳ２の処理では、制御部４２が、撮影画像の撮影枚数を計数するためのカウンタｉの値を“０”に初期化する。これにより、ステップＳ２の処理は完了し、撮影処理はステップＳ３の処理に進む。
【００６１】
ステップＳ３の処理では、制御部４２が、シャッタキー９が押下されているか否かを判別する。シャッタキー９が押下されていると判別した場合、制御部４２は撮影処理をステップＳ４の処理に進める。一方、シャッタキー９が押下されていないと判別した場合には、制御部４２は撮影処理をステップＳ８の処理に進める。
【００６２】
ステップＳ４の処理では、制御部４２が、撮影画像の撮影枚数を計数するためのカウンタｉの値を１増数する。これにより、ステップＳ４の処理は完了し、撮影処理はステップＳ５の処理に進む。
【００６３】
ステップＳ５の処理では、制御部４２が、撮影画像を撮像し、撮影画像のデータを入力画像用メモリ領域６１内に記憶する。なお以下の説明では、入力画像用メモリ領域６１内に記憶されたｉ枚目の撮影画像を入力画像Ｐｉと表記する。また入力画像Ｐｉを入力画像用メモリ領域６１に記憶する際、制御部４２は入力画像Ｐｉの記憶領域にその時のカウンタｉの値をインデックス番号として付与する。これにより、ステップＳ５の処理は完了し、撮影処理はステップＳ６の処理に進む。
【００６４】
ステップＳ６の処理では、制御部４２が、入力画像Ｐｉが記憶されている入力画像用メモリ領域６１のアドレス値とそのインデックス番号ｉを引数とする画像合成命令を画像処理部４７に出力し、画像処理部４７は、画像合成命令を受けて画像合成処理を実行する。なお画像合成処理の詳細については図５に示すフローチャートを参照して後述する。これにより、ステップＳ６の処理は完了し、撮影処理はステップＳ７の処理に進む。
【００６５】
ステップＳ７の処理では、制御部４２が、撮影画像の撮影枚数を計数するためのカウンタｉの値が規定値（本実施形態では“１６”）であるか否かを判別する。カウンタｉの値が規定値でない場合、制御部４２は、合成画像を生成するために必要な規定枚数の撮影画像が撮像されていないと判断し、撮影処理をステップＳ３の処理に戻す。一方、カウンタｉの値が規定値である場合には、制御部４２は、合成画像を生成するために必要な規定枚数の撮影画像が撮像されたと判断し、撮影処理をステップＳ９の処理に進める。
【００６６】
ステップＳ８の処理では、制御部４２が、撮影画像の撮影枚数を計数するためのカウンタｉの値が０であるか否かを判定する。カウンタｉの値が０である場合、制御部４２は撮影処理をステップＳ３の処理に戻す。カウンタｉの値が０でない場合には、制御部４２は撮影処理をステップＳ９の処理に進める。
【００６７】
ステップＳ９の処理では、画像処理部４７が、情報記憶用メモリ領域６３から入力画像Ｐ１の特徴点Ｆｋの座標（ｘ１，ｙ１）に対応する追跡座標Ｔｉ，ｋのデータを読み出し、特徴点Ｆｋの座標（ｘ１，ｙ１）と追跡座標Ｔｉ，ｋの対応関係を利用して高精度な座標変換パラメータＨｉ’を推定する。なお座標変換パラメータＨｉ’の推定方法は既述の通りであるので説明を省略する。画像復元性能よりも一連の合成処理時間を短縮したい場合には、この処理を省略し、ステップＳ６で求めた座標変換パラメータＨｉを高精度な座標変換パラメータＨｉ’の代わりに用いてもよい。その場合でも以下の処理にて画像劣化の復元効果が得られる。これにより、ステップＳ９の処理は完了し、撮影処理はステップＳ１０の処理に進む。
【００６８】
ステップＳ１０の処理では、画像処理部４７が、ステップＳ９の処理により算出された座標変換パラメータＨｉ’（２≦ｉ≦Ｎ）と情報記憶用メモリ領域６３に記憶されている座標変換パラメータＨｉから合成画像Ｇ（Ｎ）の点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を算出する。なおＰＳＦの算出方法については図１０に示すフローチャートを参照して後述する。これにより、ステップＳ１０の処理は完了し、撮影処理はステップＳ１１の処理に進む。
【００６９】
ステップＳ１１の処理では、画像処理部４７が、ウィーナフィルタ，一般逆フィルタ，射影フィルタ等の手法を用いて、ステップＳ１０の処理により算出された合成画像Ｇ（Ｎ）の点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を利用して合成画像Ｇ（Ｎ）から劣化のない高精細な復元画像を生成する。これにより、ステップＳ１１の処理は完了し、撮影処理はステップＳ１２の処理に進む。
【００７０】
ステップＳ１２の処理では、画像処理部４７が、ステップＳ１１の処理により生成された合成画像に対しホワイトバランス調整や輝度γ補正等の現像処理を施す。これにより、ステップＳ１２の処理は完了し、撮影処理はステップＳ１３の処理に進む。
【００７１】
ステップＳ１３の処理では、画像処理部４７が、ステップＳ１２の処理後の合成画像をＪＰＥＧ形式に圧縮する。これにより、ステップＳ１３の処理は完了し、撮影処理はステップＳ１４の処理に進む。
【００７２】
ステップＳ１４の処理では、画像処理部４７が、ステップＳ１３の処理後の合成画像のデータを合成画像用メモリ領域６２に記憶する。これにより、ステップＳ１４の処理は完了し、撮影処理はステップＳ１５の処理に進む。
【００７３】
ステップＳ１５の処理では、制御部４２が、シャッタキー９が押下されているか否かを判別する。そして制御部４２は、シャッタキー９が押下されなくなったタイミングで撮影処理をステップＳ３の処理に戻す。
【００７４】
〔合成処理〕
次に、図５に示すフローチャートを参照して、上記ステップＳ６の合成画像生成処理について詳しく説明する。
【００７５】
図５に示すフローチャートは、上記ステップＳ５の処理が完了したタイミングで開始となり、合成画像生成処理はステップＳ２１の処理に進む。
【００７６】
ステップＳ２１の処理では、画像処理部４７が、画像合成命令の引数であるインデックス番号ｉの値が１であるか否かを判別する。インデックス番号ｉの値が１である場合、画像処理部４７は合成処理をステップＳ２２の処理に進める。一方、インデックス番号ｉの値が１でない場合には、画像処理部４７は合成処理をステップＳ２５の処理に進める。
【００７７】
ステップＳ２２の処理では、画像処理部４７が、画像合成命令の引数である入力画像用メモリ領域６１のアドレス値を参照して、１枚目の撮影画像Ｐ１のデータを入力画像メモリ領域６１から作業メモリ領域６４内に読み出し、ＫＬＴ法により１枚目の撮影画像Ｐ１からＭ個の特徴点Ｆｋ（１≦ｋ≦Ｍ）を抽出する。そして画像処理部４７は、抽出されたＭ個の特徴点Ｆｋの位置座標を情報記憶用メモリ領域６３内に記憶する。なお特徴点Ｆｋの個数Ｍは５０以上であることが望ましい。これにより、ステップＳ２２の処理は完了し、合成処理はステップＳ２３の処理に進む。
【００７８】
ステップＳ２３の処理では、画像処理部４７が、各特徴点Ｆｋについて、特徴点Ｆｋを中心点とするＬ×Ｌの大きさの画像を１枚目の撮影画像Ｐ１から切り出し、切り出された画像のデータをテンプレート（特徴点近傍画像Ｒｋ）として情報記憶用メモリ領域６３内に記憶する。これにより、ステップＳ２３の処理は完了し、合成処理はステップＳ２４の処理に進む。
【００７９】
ステップＳ２４の処理では、画像処理部４７が、１枚目の撮影画像Ｐ１を１枚目の合成画像Ｇ（１）に設定し、合成画像Ｇ（１）のデータを合成画像用メモリ領域６２に記憶する。なお入力画像Ｐｉの１画素あたりのビット数は、ＣＣＤ３３の解像度となり、一般には８〜１２ビットである。一方、合成画像Ｇ（ｉ）のビット数は、複数枚の撮影画像を合成することにより生成されるので、８〜１２ビットより多くなる。従って、合成画像Ｇ（ｉ）のデータを合成画像用メモリ領域６２にコピーする際は、ビット数を減らしながらコピーすることが望ましい。これにより、ステップＳ２４の処理は完了し、一連の合成処理は終了する。
【００８０】
ステップＳ２５の処理では、画像処理部４７が、各特徴点Ｆｋの位置座標とテンプレートの情報を情報記憶用メモリ領域６３から読み出し、各特徴点Ｆｋについて、特徴点Ｆｋを中心とした所定の探索範囲内の各点におけるテンプレートとの類似度を算出する。そして画像処理部４７は、類似度が最も高い点の座標を撮影画像Ｐｉにおける特徴点Ｆｋの座標（追跡座標）Ｔｉ，ｋとし、追跡座標Ｔｉ，ｋの情報を情報記憶用メモリ領域６３に記憶する。これにより、ステップＳ２５の処理は完了し、合成処理はステップＳ２６の処理に進む。
【００８１】
ステップＳ２６の処理では、画像処理部４７が、Ｍ個の特徴点Ｆｋの座標とそれぞれの追跡座標Ｔｉ，ｋの対応関係から座標変換パラメータＨｉを算出し、算出された座標変換パラメータＨｉを情報記憶用メモリ領域６３に記憶する。なおこの対応関係には、誤ったものが含まれている可能性があるので、ＲＡＮＳＡＣによって誤った対応関係を外しながら座標変換パラメータＨｉを算出する。これにより、ステップＳ２６の処理は完了し、合成処理はステップＳ２７の処理に進む。
【００８２】
ステップＳ２７の処理では、画像処理部４７が、ステップＳ２６の処理により算出された座標変換パラメータＨｉを利用して撮影画像Ｐｉを１枚目の撮影画像Ｐ１に座標変換して変換画像（位置補正画像）Ｐｉ’を生成する。そして画像処理部４７は、変換画像Ｐｉ’の座標値（ｘ１，ｙ１）を数式２に順番に代入し、入力画像Ｐｉの座標（ｘ２，ｙ２）における画素値Ｐｉ（ｘ２，ｙ２）を読み出すことにより、変換画像Ｐｉ’の各画素Ｐｉ’（ｘ１，ｙ１）の値を算出する。
【００８３】
なお座標（ｘ２，ｙ２）は整数値になるとは限らないので、整数値でない場合には、最近傍法による補間処理により座標（ｘ２，ｙ２）近傍の画素値から座標（ｘ２，ｙ２）における画素値Ｐｉ（ｘ２，ｙ２）を算出することが望ましい。また変換画像Ｐｉ’を生成する際は、１画素毎に変換画像Ｐｉ’を生成し、全画面の変換画像Ｐｉ’を一度に生成しないことが望ましい。この場合、具体的には、（１）座標（ｘ１，ｙ１）を（０，０）に初期化し、（２）数式２に座標（ｘ１，ｙ１）を代入して座標（ｘ２，ｙ２）を算出し、（３）座標（ｘ２，ｙ２）を四捨五入して整数値（Ｘ２，Ｙ２）を算出し、（４）合成画像用メモリ領域６２に記憶されている合成画像の座標（ｘ１，ｙ１）における画素値を更新し、（５）座標（ｘ１，ｙ１）を次の座標位置に移動させるという処理を全画素について実行するまで繰り返し実行する。これにより、変換画像Ｐｉ’を生成するために必要なメモリ容量を減らすことができる。これにより、ステップＳ２７の処理は完了し、一連の合成処理は終了する。
【００８４】
〔ＰＳＦの算出処理〕
次に、図１０に示すフローチャートを参照して、上記ステップＳ１０のＰＳＦの算出処理について詳しく説明する。
【００８５】
図１０に示すフローチャートは、上記ステップＳ９の処理が完了したタイミングで開始となり、合成画像生成処理はステップＳ３１の処理に進む。
【００８６】
ステップＳ３１の処理では、画像処理部４７が、点拡がり関数ｈ’（ｋ，ｌ｜（ｘ１，ｙ１））の全要素の値を０に初期化する。これにより、ステップＳ３１の処理は完了し、算出処理はステップＳ３２の処理に進む。
【００８７】
ステップＳ３２の処理では、画像処理部４７が、座標変換パラメータＨｉのインデックスを示すカウンタの値ｉを２に初期化する。これにより、ステップＳ３２の処理は完了し、算出処理はステップＳ３３の処理に進む。
【００８８】
ステップＳ３３の処理では、画像処理部４７が、全座標値における点拡がり関数を算出するために座標（ｘ１，ｙ１）の値を（０，０）に初期化する。これにより、ステップＳ３３の処理は完了し、算出処理はステップＳ３４の処理に進む。
【００８９】
ステップＳ３４の処理では、画像処理部４７が、座標変換パラメータＨｉと座標（ｘ１，ｙ１）を用いて数式２から座標（ｘ２，ｙ２）を算出すると共に、算出された座標（ｘ２，ｙ２）の小数点以下の値を四捨五入することにより座標（ｘ２，ｙ２）の整数部の座標（Ｘ２，Ｙ２）を算出する。これにより、ステップＳ３４の処理は完了し、算出処理はステップＳ３５の処理に進む。
【００９０】
ステップＳ３５の処理では、画像処理部４７が、座標変換パラメータＨｉ’と座標（ｘ１，ｙ１）を用いて数式１３から座標（ｘ３，ｙ３）を算出すると共に数式１４から残差（α’，β’）を算出する。これにより、ステップＳ３５の処理は完了し、算出処理はステップＳ３６の処理に進む。
【００９１】
ステップＳ３６の処理では、画像処理部４７が、全座標値における点拡がり関数を算出するために、パラメータ（ｋ、ｌ）の値を初期化する。通常、パラメータｋ，ｌの値は−３≦ｋ，ｌ≦３の範囲内にあるので、初期値は例えば（−３，３）が選ばれる。これにより、ステップＳ３６の処理は完了し、算出処理はステップＳ３７の処理に進む。
【００９２】
ステップＳ３７の処理では、画像処理部４７が、数式２１を用いてパラメータＡ，Ｂを算出する。これにより、ステップＳ３７の処理は完了し、算出処理はステップＳ３８の処理に進む。
【００９３】
ステップＳ３８の処理では、画像処理部４７が、ステップＳ３７の処理により算出されたパラメータＡ，Ｂに対応する関数ＨＧ（Ａ，Ｂ）の値をテーブルから読み出し、変換画像Ｐｉ’の点拡がり関数ｇｉ（ｋ，ｌ｜（ｘ１，ｙ１））を算出する。さらに画像処理部４７は、算出された点拡がり関数の値を合成画像Ｇ（Ｎ）の点拡がり関数ｈ’（ｋ，ｌ｜（ｘ１，ｙ１））に加算して合成画像Ｇ（Ｎ）の点拡がり関数ｈ’（ｋ，ｌ｜（ｘ１，ｙ１））を更新する。これにより、ステップＳ３８の処理は完了し、算出処理はステップＳ３９の処理に進む。
【００９４】
ステップＳ３９の処理では、画像処理部４７が、パラメータ（ｋ，ｌ）の全ての組み合わせについて算出処理を行ったか否かを判別する。判別の結果、全ての組み合わせについて算出処理を行っていないと判定した場合、画像処理部４７は、パラメータ（ｋ，ｌ）の値を次の組み合わせの値に更新した後、算出処理をステップＳ３７の処理に戻す。一方、全ての組み合わせについて算出処理を行ったと判定した場合には、画像処理部４７は算出処理をステップＳ４０の処理に進める。
【００９５】
ステップＳ４０の処理では、画像処理部４７が、全ての座標（ｘ１，ｙ１）について算出処理を行ったか否かを判別する。判別の結果、全ての座標（ｘ１，ｙ１）について算出処理を行っていないと判定した場合、画像処理部４７は、座標（ｘ１，ｙ１）の値を更新した後、算出処理をステップＳ３４の処理に戻す。一方、全ての座標（ｘ１，ｙ１）について算出処理を行ったと判定した場合には、画像処理部４７は算出処理をステップＳ４１の処理に進める。
【００９６】
ステップＳ４１の処理では、画像処理部４７が、座標変換パラメータＨｉのインデックスを示すカウンタの値ｉがＮであるか否かを判別する。判別の結果、カウンタの値ｉがＮでない場合、画像処理部４７はカウンタの値ｉを１増数した後、算出処理をステップＳ３３の処理に戻す。一方、カウンタの値ｉがＮである場合には、画像処理部４７は一連の算出処理を終了する。
【００９７】
以上の算出処理によって最終的に算出される点拡がり関数ｈ’（ｋ，ｌ｜（ｘ１，ｙ１））は数式１７を計算したことになるので、合成画像Ｇ（Ｎ）の点拡がり関数を求めたことになる。
【００９８】
以上の説明から明らかなように、本発明の実施形態となるデジタルスチルカメラ１では、制御部４２が、各入力画像Ｐｉの座標変換パラメータＨｉを利用して合成画像Ｇ（Ｎ）の各座標における点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を演算し、演算された点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を利用して合成画像Ｇ（Ｎ）を復元するので、各入力画像Ｐｉの点拡がり関数の劣化によって合成画像Ｇ（Ｎ）が劣化することを抑制し、高精細な合成画像Ｇ（Ｎ）を生成することができる。
【００９９】
また本発明の実施形態となるデジタルスチルカメラ１では、制御部４２が、全ての入力画像Ｐｉの合成完了後、特徴点Ｆｋの座標（ｘ１，ｙ１）と追跡座標Ｔｉ，ｋの対応関係を利用して座標変換パラメータＨｉを補正し、補正された座標変換パラメータＨｉを利用して合成画像Ｇ（Ｎ）の各座標における点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を再演算し、再演算された点拡がり関数ｈ（ｋ，ｌ｜（ｘ１，ｙ１））を利用して合成画像を復元するので、座標変換パラメータＨｉを高精度化することにより、さらに高精細な合成画像Ｇ（Ｎ）を生成することができる。
【０１００】
以上、本発明者によってなされた発明を適用した実施の形態について説明したが、この実施の形態による本発明の開示の一部をなす論述及び図面により本発明は限定されることはない。すなわち、上記実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれることは勿論であることを付け加えておく。
【産業上の利用可能性】
【０１０１】
本発明は、逐次合成処理型の電子式手振れ補正動作により手振れ補正画像を生成する撮像装置に適用することができる。
【図面の簡単な説明】
【０１０２】
【図１】本発明の一実施形態となるデジタルスチルカメラの構成を示し斜視図であり、（ａ）は主に前面の構成、（ｂ）は主に背面の構成を示す斜視図である。
【図２】図１に示すデジタルスチルカメラの制御系の構成を示すブロック図である。
【図３】図１に示すデジタルスチルカメラの内部メモリの構成を示すブロック図である。
【図４】本発明の実施形態となる撮影処理の流れを示すフローチャート図である。
【図５】図４に示す画像合成処理の流れを示すフローチャート図である。
【図６】光学系の点拡がり関数（Point Spread Function）の一例を示す図である。
【図７】撮影画像の点拡がり関数の劣化に伴い合成画像の点拡がり関数が劣化する様子を説明するための図である。
【図８】撮影画像の点拡がり関数の劣化に伴い合成画像の点拡がり関数が劣化する様子を説明するための図である。
【図９】変換画像と入力画像の座標値の対応関係を示す図である。
【図１０】図４に示すＰＳＦ算出処理の流れを示すフローチャート図である。
【符号の説明】
【０１０３】
１：デジタルスチルカメラ
２：本体
４２：制御部
４７：画像処理部
６０：内部メモリ
６１：入力画像用メモリ領域
６２：合成画像用メモリ領域
６３：情報記憶用メモリ領域
６４：作業メモリ領域
【図１】
0004930277.tif 000023
【図２】
0004930277.tif 000024
【図３】
0004930277.tif 000025
【図４】
0004930277.tif 000026
【図５】
0004930277.tif 000027
【図６】
0004930277.tif 000028
【図７】
0004930277.tif 000029
【図８】
0004930277.tif 000030
【図９】
0004930277.tif 000031
【図１０】
0004930277.tif 000032