(57)【要約】【課題】  電子手ぶれ補正を行う場合にも、撮像素子の画素欠陥に起因する画像劣化を適切に補正すること。【解決手段】  複数の画素を含む撮像素子（１２）により得られた複数枚の画像を、１枚の画像に重ね合わせ合成するぶれ補正装置であって、合成する複数画像間の位置ずれ量を検出する位置ずれ検出回路（８０）と、前記合成する複数画像の各画素のデータを、前記位置ずれ検出回路により検出された位置ずれ量に基づいて位置合わせしながら加算すると共に、１つの画像の画素のデータが前記撮像素子の欠陥画素から出力されたデータである場合に、他の画像の対応する画素のデータを用いて補正を行う画像合成回路（８２）とを有する。【選択図】  図１
2008118570.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素を含む撮像手段により得られた複数枚の画像を、１枚の画像に重ね合わせ合成するぶれ補正装置であって、
合成する複数画像間の位置ずれ量を検出する検出手段と、
前記合成する複数画像の各画素のデータを、前記検出手段により検出された位置ずれ量に基づいて位置合わせしながら加算すると共に、１つの画像の画素のデータが欠陥画素から出力されたデータである場合に、他の画像の対応する画素のデータを用いて補正を行う合成手段と
を有することを特徴とするぶれ補正装置。
【請求項２】
前記撮像手段の欠陥画素の位置情報を記憶した記憶手段と、
前記記憶手段に記憶された欠陥画素の位置情報に基づいて、前記欠陥画素から出力されたデータを予め設定された固定値に置き換える手段を更に有し、
前記合成手段は、１つの画像の画素のデータが前記固定値に置き換えられたデータである場合に、他の画像の対応する画素のデータを用いて補正を行うことを特徴とする請求項１に記載のぶれ補正装置。
【請求項３】
前記撮像手段の欠陥画素の位置情報を記憶した記憶手段を更に有し、
前記合成手段は、前記記憶手段に記憶された欠陥画素の位置情報に基づいて、前記合成する複数画像の各画素のデータが欠陥画素から出力されたデータであるか否かを判断することを特徴とする請求項１に記載のぶれ補正装置。
【請求項４】
欠陥画素から出力されたデータを、周辺画素のデータを利用して補正する補正手段を更に有し、
前記合成手段は、前記合成する複数画像間で互いに対応する画素が共に欠陥画素である場合に、当該画素のデータの補正を行わず、前記補正手段は、前記複数枚の画像の合成後、補正されなかった欠陥画素から出力されたデータを補正することを特徴とする請求項１乃至３のいずれか１項に記載のぶれ補正装置。
【請求項５】
前記合成手段は、入力した画素のデータに係数を乗する乗算手段を有し、前記係数は前記合成する複数画像をそれぞれ得るためにすでに合成した画像の枚数に応じて設定され、１つの画像の画素のデータが前記欠陥画素から出力されたデータである場合に、前記他の画像の対応する画素のデータに前記係数を乗することにより補正を行うことを特徴とする請求項１乃至４のいずれか１項に記載のぶれ補正装置。
【請求項６】
複数の画素を含む撮像手段により得られた複数枚の画像を、１枚の画像に重ね合わせ合成するぶれ補正装置であって、
前記撮像手段の欠陥画素の位置情報を記憶した記憶手段と、
前記記憶手段に記憶された欠陥画素の位置情報に基づいて、前記欠陥画素から出力されたデータを、周辺画素のデータを利用して補正する補正手段と、
合成する複数画像間の位置ずれ量を検出する検出手段と、
前記補正手段により補正された前記合成する複数画像の各画素のデータを、前記検出手段により検出された位置ずれ量に基づいて位置合わせしながら加算する合成手段と
を有することを特徴とするぶれ補正装置。
【請求項７】
請求項１乃至６のいずれか１項に記載のぶれ補正装置を搭載したことを特徴とする撮像装置。
【請求項８】
複数の画素を含む撮像手段により連続して短秒時露光して得られた複数枚の画像を、１枚の画像に重ね合わせ合成するぶれ補正方法であって、
合成する複数画像間の位置ずれ量を検出する検出工程と、
前記合成する複数画像の各画素のデータを、前記検出工程で検出された位置ずれ量に基づいて位置合わせしながら加算すると共に、１つの画像の画素のデータが欠陥画素から出力されたデータである場合に、他の画像の対応する画素のデータを用いて補正を行う合成工程と
を有することを特徴とするぶれ補正方法。
【請求項９】
前記撮像手段の欠陥画素の位置情報を記憶した記憶手段から、前記位置情報を取得する取得工程と、
前記取得工程で取得した前記位置情報に基づいて、前記欠陥画素から出力されたデータを予め設定された固定値に置き換える工程を更に有し、
前記合成工程では、１つの画像の画素のデータが前記固定値に置き換えられたデータである場合に、他の画像の対応する画素のデータを用いて補正を行うことを特徴とする請求項８に記載のぶれ補正方法。
【請求項１０】
前記撮像手段の欠陥画素の位置情報を記憶した記憶手段から、前記位置情報を取得する取得工程を更に有し、
前記合成工程では、前記取得工程で取得した前記位置情報に基づいて、前記合成する複数画像の各画素のデータが欠陥画素から出力されたデータであるか否かを判断することを特徴とする請求項８に記載のぶれ補正方法。
【請求項１１】
前記合成工程では、前記合成する複数画像間で互いに対応する画素が共に欠陥画素である場合に、当該画素のデータの補正を行わず、
前記複数枚の画像の合成後、補正されなかった欠陥画素から出力されたデータを、周辺画素のデータを利用して補正する補正工程を更に有することを特徴とする請求項８乃至１０のいずれか１項に記載のぶれ補正方法。
【請求項１２】
前記合成工程は、入力した画素のデータに係数を乗する工程を有し、前記係数は前記合成する複数画像をそれぞれ得るためにすでに合成した画像の枚数に応じて設定され、１つの画像の画素のデータが前記欠陥画素から出力されたデータである場合に、前記他の画像の対応する画素のデータに前記係数を乗することにより補正を行うことを特徴とする請求項８乃至１１のいずれか１項に記載のぶれ補正方法。
【請求項１３】
複数の画素を含む撮像手段により得られた複数枚の画像を、１枚の画像に重ね合わせ合成するぶれ補正方法であって、
前記撮像手段の欠陥画素の位置情報を記憶した記憶手段から、前記位置情報を取得する取得工程と、
前記取得工程で取得した位置情報に基づいて、前記欠陥画素から出力されたデータを、周辺画素のデータを利用して補正する補正工程と、
合成する複数画像間の位置ずれ量を検出する検出工程と、
前記補正工程により補正された前記合成する複数画像の各画素のデータを、前記検出工程で検出された位置ずれ量に基づいて位置合わせしながら加算する合成工程と
を有することを特徴とするぶれ補正方法。
【請求項１４】
コンピュータに、請求項８乃至１３のいずれか１項に記載のぶれ補正方法の各工程を実行させるためのプログラム。
【請求項１５】
請求項１４に記載のプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ぶれ補正装置及び方法に関し、更に詳しくは、ＣＣＤやＣＭＯＳセンサに代表される固体撮像素子に含まれる欠陥画素からの撮像出力に起因する画質劣化を補正する機能を有するぶれ補正装置及び方法に関する。
【背景技術】
【０００２】
従来、電子スチルカメラの手ぶれ補正技術として、電子手ぶれ補正技術が提案されている（例えば、特許文献１参照）。電子手ぶれ補正技術では、手ぶれが起こらない程度の短秒時露光で連続撮影された複数枚の画像を、位置を合わせながら重ね合わせ合成して、所望の露光時間の手ぶれ補正画像を得る。
【０００３】
このような電子手ぶれ補正技術では、撮像素子の画素欠陥に起因する画像の劣化については、位置合わせした後で補正するために、合成する複数画像における劣化位置が互いにずれてしまい、正しく補正することができなかった。特許文献１では、画素欠陥に起因する白キズは、長時間露光では顕著になる傾向があるが、短時間露光では正常な画素として機能することがあるため、上述した電子手ぶれ補正を行う場合には補正を行わなくても白キズを少なくするができるとしている。
【０００４】
【特許文献１】特開２０００−６９３５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このように、電子手ぶれ補正時には、撮像素子の画素欠陥に起因する画像劣化については適切な補正が行われないか、または特許文献１に記載されたように補正が行われないため、高品位の画像を得ることができなかった。
【０００６】
本発明は上記問題点を鑑みてなされたものであり、電子手ぶれ補正を行う場合にも、撮像素子の画素欠陥に起因する画像劣化を適切に補正することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、複数の画素を含む撮像手段により得られた複数枚の画像を、１枚の画像に重ね合わせ合成する本発明のぶれ補正装置は、合成する複数画像間の位置ずれ量を検出する検出手段と、前記合成する複数画像の各画素のデータを、前記検出手段により検出された位置ずれ量に基づいて位置合わせしながら加算すると共に、１つの画像の画素のデータが欠陥画素から出力されたデータである場合に、他の画像の対応する画素のデータを用いて補正を行う合成手段とを有する。
【０００８】
また、複数の画素を含む撮像手段により得られた複数枚の画像を、１枚の画像に重ね合わせ合成するぶれ補正方法は、合成する複数画像間の位置ずれ量を検出する検出工程と、前記合成する複数画像の各画素のデータを、前記検出工程で検出された位置ずれ量に基づいて位置合わせしながら加算すると共に、１つの画像の画素のデータが欠陥画素から出力されたデータである場合に、他の画像の対応する画素のデータを用いて補正を行う合成工程とを有する。
【０００９】
また、本発明の別の構成によれば、複数の画素を含む撮像手段により得られた複数枚の画像を、１枚の画像に重ね合わせ合成するぶれ補正装置は、前記撮像手段の欠陥画素の位置情報を記憶した記憶手段と、前記記憶手段に記憶された欠陥画素の位置情報に基づいて、前記欠陥画素から出力されたデータを、周辺画素のデータを利用して補正する補正手段と、合成する複数画像間の位置ずれ量を検出する検出手段と、前記補正手段により補正された前記合成する複数画像の各画素のデータを、前記検出手段により検出された位置ずれ量に基づいて位置合わせしながら加算する合成手段とを有する。
【００１０】
また、複数の画素を含む撮像手段により得られた複数枚の画像を、１枚の画像に重ね合わせ合成するぶれ補正方法は、前記撮像手段の欠陥画素の位置情報を記憶した記憶手段から、前記位置情報を取得する取得工程と、前記取得工程で取得した位置情報に基づいて、前記欠陥画素から出力されたデータを、周辺画素のデータを利用して補正する補正工程と、合成する複数画像間の位置ずれ量を検出する検出工程と、前記補正工程により補正された前記合成する複数画像の各画素のデータを、前記検出工程で検出された位置ずれ量に基づいて位置合わせしながら加算する合成工程とを有する。
【発明の効果】
【００１１】
本発明によれば、電子手ぶれ補正を行う場合にも、撮像素子の画素欠陥に起因する画像劣化を適切に補正することができる。
【発明を実施するための最良の形態】
【００１２】
以下、添付図面を参照して本発明を実施するための最良の形態を詳細に説明する。
【００１３】
＜第１の実施形態＞
●画像処理装置の構成
図１は、本発明の第１の実施の形態における電子スチルカメラ等の画像処理装置の概略構成を示すブロック図である。この画像処理装置は、短秒時露光で撮影された連続する複数枚の画像を合成して手ぶれ補正を行う、電子手ぶれ補正機能を有する。
【００１４】
図１において、１００は画像処理装置である。１０は被写体光学像を後述する撮像素子１２上に結像させる撮像レンズ、１１は被写体光学像の露出を調節するシャッタである。１２は被写体光学像をアナログの電気信号に光電変換して出力する撮像素子、１４は撮像素子１２から出力されるアナログ信号をデジタル信号に変換するＡ／Ｄ変換器である。
【００１５】
１６はＤ／Ａ変換器、１８はＴＦＴ  ＬＣＤ等からなる画像表示部である。メモリ４０に書き込まれた表示用の画像データは、Ｄ／Ａ変換器１６を介してデジタルデータからアナログデータに変換され、画像表示部１８により表示される。また、撮像素子１２から画像信号を連続的に読み出し、画像表示部１８に逐次表示することで、電子ビューファインダ（ＥＶＦ）機能を実現することができる。
【００１６】
２０はメモリカードやハードディスク等の記録媒体であり、撮影された画像データ等は記録媒体２０に記録される。
【００１７】
３０は画像処理回路であり、撮影あるいは記録された画像データに対して、画素補間処理や色変換処理等の現像処理やリサイズ処理など、所定の画像処理を行う。
【００１８】
４０はＲＯＭ９４に記憶されたデータを展開したり撮影した画像データを一時的に格納するためのメモリであり、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記録容量を備えている。例えば、Ａ／Ｄ変換器１４から出力された画像データがメモリ制御回路５０、画像処理回路３０、圧縮伸長回路６０を介して、あるいは直接メモリ制御回路５０を介して、メモリ４０に書き込まれる。
【００１９】
５０はメモリ制御回路であり、Ａ／Ｄ変換器１４、Ｄ／Ａ変換器１６、記録媒体２０、画像処理回路３０、メモリ４０、圧縮伸長回路６０、傷マーク回路７０、傷補正回路７２、位置ずれ検出回路８０、画像合成回路８２へのデータフローを制御する。
【００２０】
６０は画像データを圧縮・伸長する圧縮伸長回路である。
【００２１】
７０は撮像素子１２の欠陥画素位置情報をメモリ制御回路５０を介してメモリ４０から読み出し、欠陥画素位置の画素値を所定のマーク値に置換する傷マーク回路、７２は近傍画素から該当画素を補正する傷補正回路である。
【００２２】
８０は２枚の画像間の位置ずれ量を検出する位置ずれ検出回路、８２は２枚の画像を合成する画像合成回路である。
【００２３】
９２はモードダイアルスイッチ等の操作部で、例えば、電源オフ、撮影モード、再生モード等の各機能モードを切り替え設定することができる。９０は操作部９２による設定や、ＲＯＭ９４（読み出し専用メモリ）に格納された内容に従い、画像処理装置１００全体及び画像処理装置１００を構成する各回路の動作制御を行うシステム制御回路である。ＲＯＭ９４には、システム制御回路５０が使用するプログラム及び、傷データ等があらかじめ記憶されている。
【００２４】
図２は傷補正回路７２の概略構成を示す図である。４０２、４０４、４０６はフリップフロップ、４０８は加算器、４１０はデータセレクタ、４１２は傷マーク検出回路である。傷マークでない場合は入力画素のデータをそのまま出力し、傷マークを検出すると左右画素のデータの平均値を補正値として出力する。なお、本発明の傷補正回路７２における傷マーク画素の補正方法はこれに限るものでは無く、上下画素や斜め方向の画素など、近傍の複数画素を参照して傷マーク画素を補正するようにしてもよい。
【００２５】
●電子手ぶれ補正を行わない場合の傷画素データ補正。
通常撮影時（電子手ぶれ補正しない場合）は、先ず、Ａ／Ｄ変換器１４から出力される画像データに対して、ＲＯＭ９４に予め記憶された欠陥画素位置情報に基づいて、傷マーク回路７０で欠陥画素から出力されたデータに傷マークを付ける。そして、傷補正回路７２は、傷マーク回路７０の出力から傷マークを検出して欠陥画素から出力されたデータ（以下、「傷画素データ」と呼ぶ。）を補正する。ただし、本発明において、通常撮影時の傷データ補正処理はこれに限るものではなく、傷補正回路７２がＲＯＭ９４から直接欠陥画素位置情報を取得し、傷画素データを検出して補正する構成でも構わない。
【００２６】
●電子手ぶれ補正時の傷画素データ補正
電子手ぶれ補正時は、本第１の実施形態においては、Ａ／Ｄ変換器１４の出力画像に傷マーク回路７０で傷マークを付けた画像について、２枚ずつ画像間の位置ずれを検出し、画像合成する。ただし本発明においてはこれに限るものではなく、傷マークを付ける処理と位置ずれ検出の順序は問わない。また、位置ずれの検出方法については、本発明では特に限定するものではなく、公知の方法を利用して検出するように構成すればよい。
【００２７】
図３は、本第１の実施形態における画像合成回路８２の概略構成を示す図である。Ｘ、Ｙはそれぞれ合成する２枚の入力画像データを示し、Ｚは合成された画像データを示す。２０２、２０４は傷マーク検出回路、２０６、２０８はデータセレクタ、２０３、２０５は入力画像データを２倍にする乗算器、２１０は加算器である。画像データＸ、Ｙは、位置ずれ検出回路８０の検出結果に基づいて、メモリ制御回路５０によって位置ずれをキャンセルされた状態で入力される。
【００２８】
図４は本第１の実施形態における電子手ぶれ補正時の画像合成方法を説明するための図である。なお、説明を分かり易くするために５×５画素を１枚の画像として示しているが、実際にはこれよりも多数の画素により構成されている。図４に示す例では、位置ずれ検出回路８０により位置ずれ検出を行い、位置を合わせて８枚の画像を合成する場合を示しており、網掛けしてある画素は、傷マークが付けられた画素を示している。位置ずれを相殺するように位置合わせを行うため、図４（ａ）に示すように、撮像素子１２の同じ欠陥画素に対応する画素の位置が画像毎に異なっている。また、画像データ中に画素値０の画素は無いものとし、傷マークの画素値は０であるとする。
【００２９】
先ず、１枚目の画像Ｐ（０）と２枚目の画像Ｐ（１）の合成を行う。この際に、各画像の画像データは、画素毎に図３に示す画像合成回路８２に入力される。傷マーク検出回路２０２、２０４はそれぞれの画素の画像データ（以下、「画素データ」と呼ぶ。）に傷マークが付いているかどうかを判断する。傷マークが付いていなければ、傷マーク検出回路２０２、２０４は、互いのデータセレクタ２０８、２０６が端子「０」を選択するように制御し、傷マークが付いていれば、端子「１」を選択するように制御する。
【００３０】
この制御により、例えば、Ｙの画素データに傷マークが検出され、Ｘの画素データに傷マークが検出されていなければ、Ｘの画素データが２倍されて画像合成回路８２から出力される。Ｘの画素データにのみ傷マークが検出された場合は、その逆である。また、両画素の画素データに傷マークが検出された場合は、傷マークの画素値０が出力されることになるため、傷マークとして残ることになる。
【００３１】
上記合成処理により、傷マークが無ければ対応する画素データ同士が加算され、傷マークがあれば、傷マークが無い画素データが２倍されて出力されることになる。このようにして１枚目の画像Ｐ（０）と２枚目の画像Ｐ（１）の画素データを順次加算していくと、図４（ｂ）の画像Ｐ（０，１）に示すような傷マークを有する画像データとなる。同様に、３枚目の画像Ｐ（２）と４枚目の画像Ｐ（３）、５枚目の画像Ｐ（４）と６枚目の画像Ｐ（５）、７枚目の画像Ｐ（６）と８枚目の画像Ｐ（７）の画素データを順次加算する。これにより、図４（ｂ）に示すような傷マークを有する４枚の画像が得られることになる。図４に示す例では、この時点で、傷マークが付けられた画素データのほとんどが、傷マークが付けられていない画素データにより補正されている。
【００３２】
更に、図４（ｂ）に示す４枚の画像について、上述した各画素データを加算する処理を繰り返し、図４（ｃ）に示す２枚の画像を取得する。更にこの２枚の画像について上述した処理を繰り返すと、図４（ｄ）に示す１枚の画像Ｐ（０〜６）を取得することができる。
【００３３】
このように、傷マークが付けられた画素データを、位置合わせした合成対象の画素データを用いて補正することにより、傷画素データを補正することができる。この処理により合成した画像における傷画素データの数を減らすことができるが、最終的に残った傷画素データは、傷補正回路７２により周囲の画素を用いて補正する。
【００３４】
次に、上記電子手ぶれ補正時の傷画素データ補正を実現するためのより具体的な制御例について、図５及び図６を参照して説明する。ここでは、１／１２８秒のシャッター速度で１６（＝２4)枚の画像を連写し、これらの画像を合成した結果、１／８秒相当のシャッター速度に対応する手ぶれ補正した画像を得るものとする。
【００３５】
図５はシステム制御回路９０による制御を説明するためのフローチャートであり、図６は図５のフローチャートにおける変数の変化を示した表である。図５において、Ｐ（ｉ）は合成される画像を、また、ｉは画像の番号を示している。ここでは１６枚連写のため、ｉ＝０〜１５とする。また、後述する定数Ｍを、合成する画像枚数を２のべき乗で表現したときの指数から１を引いた値（１６＝２4で、Ｍ＝４−１＝３）に設定する。
【００３６】
まず、変数ｍ、ｎを０に初期化する（ステップＳ１及びＳ２）。次に、位置ずれ検出回路８０により、合成する２枚の画像Ｐ（２ｎm+1）とＰ（２ｎm+1＋２m）の画像の位置ずれ量を検出する（ステップＳ４）。ここではｍ＝ｎ＝０なので、画像Ｐ（０）とＰ（１）の位置ずれ量を検出する（図６の表も参照）。次に、位置ずれ量に基づいて位置合わせをしながら画像Ｐ（０）とＰ（１）の各画素データを画像合成回路８２により合成して画像合成をし、Ｐ（０）と置き換える（ステップＳ６）。この画像合成回路８２による画像合成処理では、上述したように、傷マークを付けられた傷画素データが補正されながら合成されるため、補正されていない傷画素データの数は合成前の画像よりも減ることになる。
【００３７】
その後、ｎを１増やしてから（ステップＳ８）、ｎ＝２(M-m)＝８になるまで（ステップＳ１０でＹＥＳの間）、ステップＳ４に戻って上記処理を繰り返す。２回目のループではｍ＝０、ｎ＝１であるので、Ｐ（２ｎm+1）とＰ（２ｎm+1＋２m）から、３枚目と４枚目の画像Ｐ（２）とＰ（３）の画像が合成され、画像Ｐ（２）に置き換えられる。
【００３８】
図６のｍ＝０の２コラムが、ｎ＝１〜７までのループで合成される画像番号を示している。
【００３９】
ｎ＝８になると（ステップＳ１０でＮＯ）、ステップＳ１２に進み、ｍを１増やしてからＭと比較し、Ｍ以下であれば（ステップＳ１４でＮＯの間）ステップＳ２に戻って上記処理を繰り返す。
【００４０】
ここでは、ｍ＝１のため、図６のｍ＝１の２コラムで示される画像番号の画像が合成されることになる。即ち、ｍ＝０の処理で合成された画像Ｐ（０）とＰ（２）、Ｐ（４）とＰ（６）、Ｐ（８）とＰ（１０）、Ｐ（１２）とＰ（１４）をそれぞれ合成し、それぞれＰ（０）、Ｐ（４）、Ｐ（８）、Ｐ（１４）に置き換える。この処理により、更に傷画素データが補正されることになる。
【００４１】
上記処理をｍ＝２、ｍ＝３について繰り返し、図６のｍ＝２、ｍ＝３のそれぞれの２コラムで示される画像が合成されて、最後に１６枚の画像が合成された画像Ｐ（０）が得られる。
【００４２】
そして、全ての画像を合成した後もまだ残っている傷マークを傷補正回路７２で補正し（ステップＳ１６）、処理を終了する。
【００４３】
なお、図５及び図６に示す制御は図４の方法を実現するための一具体例であり、この例では元の画像番号を用いたアルゴリズムを利用したが、これに限るものではない。例えば、合成した後の画像の番号を１から順にふり直し、最後の１枚になるまで画像合成処理を繰り返すようにするなど、図４に示す方法を実現するアルゴリズムであれば良い。
【００４４】
このように、本第１の実施形態によれば、電子手ぶれ補正を行いながら、撮像素子の画素欠陥に起因する画像劣化を適切に補正することができる。
【００４５】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。上記第１の実施形態の電子手ぶれ補正時の傷画素データ補正方法では、２のべき乗の数の画像を撮影して合成する場合は、傷画素データを適切に補正することができた。しかしながら、２のべき乗の数で無い場合には、後述するように、補正されたデータが適切な値にならない。
【００４６】
そこで、本第２の実施形態では、合成する画像の枚数にかかわらず、適切な重み付けで傷画素データを補正することができる画像合成回路及び方法について説明する。なお、画像合成回路８２の詳細構成以外は第１の実施形態で説明した構成と同様であるため、説明を省略する。以下、上記第１の実施形態の図４、図５、図６を参照して説明した処理の代わりに行われる、本第２の実施形態に特徴的な画像合成回路８２の構成及び方法について説明する。
【００４７】
●電子手ぶれ補正時の傷画素データ補正
図７は、本第２の実施形態における画像合成回路８２の概略構成を示す図である。Ｘ、Ｙはそれぞれ合成する２枚の入力画像データを示し、Ｚは合成された画像データを示す。なお、Ｘはより小さい画像番号の画像データとし、Ｙはより大きい画像番号の画像データとする。３０２、３０４は傷マーク検出回路、３０６、３０８は剰余器、３１４、３１６はデータセレクタ、３１８は加算器である。画像データＸ、Ｙは、位置ずれ検出回路８０の検出結果に基づいて、メモリ制御回路５０によって位置ずれをキャンセルされた状態で入力される。
【００４８】
図８は、本第２の実施形態における電子手ぶれ補正時の画像合成方法を説明する図である。なお、説明を分かり易くするために５×５画素を１枚の画像として示しているが、実際にはこれよりも多数の画素により構成されている。図８に示す例では、位置ずれ検出回路８０により位置ずれ検出を行い、位置を合わせて６枚の画像を合成する場合を示しており、網掛けしてある画素は、傷マークが付けられた画素を示している。位置ずれを相殺するように位置合わせを行うため、図８（ａ）に示すように、撮像素子１２の同じ欠陥画素に対応する画素の位置が画像毎に異なっている。また、画像データ中に画素値０の画素は無いものとし、傷マークの画素値は０であるとする。
【００４９】
先ず、１枚目の画像Ｐ（０）と２枚目の画像Ｐ（１）の合成を行う。１枚目と２枚目の画像の場合、各画素データは、それぞれ１枚の画像の画素データである。この場合、いずれか一方の画素データに傷マークが付いていた時に、他方の画素データを２倍して出力すればよいため、剰余器３０６、３０８の係数をＡ＝Ｂ＝２に設定する。そして、各画素データは、図３に示す画像合成回路８２に入力される。傷マーク検出回路３０２、３０４はそれぞれの画素データに傷マークが付いているかどうかを判断する。傷マークが付いていなければ、傷マーク検出回路３０２、３０４は、互いのデータセレクタ３１４、３１６が端子「０」を選択するように制御し、傷マークが付いていれば、端子「１」を選択するように制御する。
【００５０】
この制御により、例えば、Ｙの画素データに傷マークが検出され、Ｘの画素データに傷マークが検出されていなければ、Ｘの画素データが２倍されて画像合成回路８２から出力される。Ｘの画素データにのみ傷マークが検出された場合は、その逆である。また、両画素の画素データに傷マークが検出された場合は、傷マークの画素値０が出力されることになるため、傷マークとして残ることになる。
【００５１】
上記合成処理により、傷マークが無ければ対応する画素データ同士が加算され、傷マークがあれば、傷マークが無い画素データが２倍されて出力されることになる。このようにして１枚目の画像Ｐ（０）と２枚目の画像Ｐ（１）の画素データを順次加算していくと、図８（ｂ）の画像Ｐ（０，１）に示すような傷マークを有する画像データとなる。同様に、３枚目の画像Ｐ（２）と４枚目の画像Ｐ（３）、５枚目の画像Ｐ（４）と６枚目の画像Ｐ（５）の画像の画素データを順次加算する。これにより、図８（ｂ）に示すような傷マークを有する３枚の画像が得られることになる。
【００５２】
更に、図８（ｂ）に示す３枚の画像について、上述した各画素データを加算する処理を繰り返す。この場合、１枚目と２枚目の画像の各画素データは、それぞれ２枚分の画像の画素データを持っているため、合成により、４枚分の画像の画素データとなる。この場合、いずれか一方の画素データに傷マークが付いていた時に、他方の画素データを２倍して出力すればよいため、剰余器３０６、３０８の係数をＡ＝Ｂ＝２に設定する。そして、各画素データは、画素毎に図３に示す画像合成回路８２に入力され、合成される。なお、ここでは、図８（ｂ）の３枚目（Ｐ４，５）の画像は、４枚目の画像が無く、この段階では合成することができないため、合成を行わない。この結果、図８（ｃ）に示す２枚の画像が得られる。
【００５３】
更に、この２枚の画像について上述した処理を繰り返すが、１枚目の画像Ｐ（０〜３）は４枚の画像を合成した画像であるのに対し、２枚目の画像Ｐ（４，５）は２枚の画像を合成した画像である。この場合に、剰余器の係数を第１の実施形態のように２に固定して、合成処理を行うと、傷画素データを正しく補正することができない。例えば、Ｐ（０〜３）の画素データにのみ傷マークが付けられている場合、Ｐ（４，５）を２倍して出力すると、４枚分（＝２×２）の画像に相当するレベルの画素データが出力されてしまう。逆に、Ｐ（４，５）の画素データにのみ傷マークが付けられている場合、Ｐ（０〜３）を２倍して出力すると、８枚分（＝２×４）の画像に相当するレベルの画素データが出力されてしまう。
【００５４】
従って、以下のようにして係数Ａ、Ｂを設定する。即ち、画像Ｐ（０〜３）、Ｐ（４，５）を合成すると、６枚分の画像に相当するレベルの画素データが得られるはずである。従って、剰余器３０６、３０８の係数をＡ＝６／４＝３／２、Ｂ＝６／２＝３に設定してから、上述した画像合成処理を行う。
【００５５】
このように係数を設定することで、例えば、Ｙの画像データにのみ傷マークが検出されると、Ｘの画素データが３／２倍されて出力される。一方、Ｘの画像データにのみ傷マークが検出された場合は、Ｙの画素データが３倍されて出力されることになる。また、両画素の画素データに傷マークが検出された場合は、傷マークの画素値０が出力されることになるため、傷マークとして残ることになる。
【００５６】
これにより、６枚の画像を合成した、図８（ｄ）に示す１枚の画像Ｐ（０〜５）を得ることができる。
【００５７】
このように、傷マークが付けられた画素データを、位置合わせした合成対象の画素データを用いて補正することにより、傷画素データを補正することができる。この処理により合成した画像における傷画素データの数を減らすことができるが、最終的に残った傷画素データは、傷補正回路７２により周囲の画素を用いて補正する。
【００５８】
このように、画像の合成に先だって、合成する各画像を得るために合成した画像の枚数を分母とし（未合成画像の場合は１枚）、また、各画像を得るために合成した画像の枚数を合計して分子としたものを、剰余器３０６、３０８の係数として設定する。
【００５９】
次に、上記電子手ぶれ補正時の傷画素データ補正を実現するためのより具体的な制御例について、図９及び図１０を参照して説明する。ここでは、１／１４０秒のシャッター速度で１４枚連写し、これらの画像を合成した結果、１／１０秒相当のシャッター速度に対応する手ぶれ補正した画像を得るものとする。
【００６０】
図９は本第２の実施形態におけるシステム制御回路９０による制御を説明するためのフローチャートであり、図１０は図９のフローチャートにおける変数の変化を示した表である。図９において、Ｐ（ｉ）は合成される画像を、また、ｉは画像の番号を示している。ここでは１４（２３＜１４＜２4）枚連写のため、ｉ＝０〜１３とする。また、定数Ｍを、２のべき乗で表現できる値の内、合成する画像の枚数を超える値であって、画像の枚数に最も近い値の指数から１を引いた値（Ｍ＝４−１＝３）に設定する。
【００６１】
まず、変数ｍ、ｎを０に初期化する（ステップＳ１０１及びＳ１０２）。次に、位置ずれ検出回路８０により、合成する２枚の画像Ｐ（２ｎm+1）とＰ（２ｎm+1＋２m）の画像の位置ずれ量を検出する（ステップＳ１０４）。ここではｍ＝ｎ＝０なので、画像Ｐ（０）とＰ（１）の位置ずれ量を検出する（図１０の表も参照）。次に、上述したようにして係数Ａ及びＢを設定する（ステップＳ１１０）。ここでは、Ａ＝Ｂ＝２／１＝２を設定する。
【００６２】
次に、位置ずれ量に基づいて位置合わせをしながら画像Ｐ（０）とＰ（１）の各画素データを画像合成回路８２により合成して画像合成をし、Ｐ（０）と置き換える（ステップＳ１１２）。
【００６３】
その後、ｎを１増やしてから（ステップＳ１１４）、ｎ＜２(M-m)＝８かどうか判断し（ステップＳ１１６）、ｎ＜２(M-m)＝８であれば、合成する画像のペアがあるかどうかを判断する（ステップＳ１１８）。合成する画像のペアがあれば、ステップＳ１０４に戻って上記を繰り返す。２回目のループではｍ＝０、ｎ＝１であるので、Ｐ（２ｎm+1）とＰ（２ｎm+1＋２m）から、３枚目と４枚目の画像Ｐ（２）とＰ（３）の画像が合成され、画像Ｐ（２）に置き換えられる。
【００６４】
図１０のｍ＝０の２コラムが、ｎ＝１〜６までのループで合成される画像番号を示している。
【００６５】
ｎ＝８になるか（ステップＳ１１６でＮＯ）、または合成する画像のペアが無くなると（ステップＳ１１８でＮＯ）、ステップＳ１２０に進む。そして、ｍを１増やしてから、Ｍと比較し、Ｍ以下であれば（ステップＳ１２２でＮＯの間）ステップＳ１０２に戻って上記処理を繰り返す。
【００６６】
ここでは、ｍ＝１のため、図１０のｍ＝１の２コラムで示される画像番号の画像が合成されることになる。即ち、ｍ＝０の処理で合成された画像Ｐ（０）とＰ（２）、Ｐ（４）とＰ（６）、Ｐ（８）とＰ（１０）をそれぞれ合成し、それぞれＰ（０）、Ｐ（４）、Ｐ（８）に置き換える。この処理により、更に傷画素データが補正されることになる。ただし、Ｐ（１２）についてはペアとなる画像が無いため、合成処理は行われず、そのままである。
【００６７】
次に、ｍ＝２となり、図１０のｍ＝２の２コラムで示される画像番号の画像が合成されることになる。即ち、ｍ＝１の処理で合成された画像Ｐ（０）とＰ（４）、Ｐ（８）とＰ（１２）をそれぞれ合成し、それぞれＰ（０）、Ｐ（８）にそれぞれ置き換える。ここで、Ｐ（８）とＰ（１２）では、それまでに合成された画像の枚数が異なる為（４枚と２枚）、剰余器３０６、３０８の係数はＡ＝６／４＝３／２、Ｂ＝６／２＝３に設定される。
【００６８】
更に、ｍ＝３にすると、図１０のｍ＝３の２コラムで示される画像番号の画像Ｐ（０）とＰ（８）が合成されることになる。この時、画像Ｐ（０）としてそれまでに合成された画像が８枚であるのに対し、Ｐ（８）としてそれまでに合成された画像は６枚であるので、剰余器３０６、３０８の係数をそれぞれ、Ａ＝１４／８＝７／４、Ｂ＝１４／６＝７／３とする。
【００６９】
このようにして、最後に１４枚の画像が合成された画像Ｐ（０）が得られる。
【００７０】
そして、全ての画像を合成した後もまだ残っている傷マークを傷補正回路７２で補正し（ステップＳ１２４）、処理を終了する。
【００７１】
なお、図９及び図１０に示す制御は図８の方法を実現するための一具体例であり、この例では元の画像番号を用いたアルゴリズムを利用したが、これに限るものではない。例えば、合成した後の画像の番号を１から順にふり直し、最後の１枚になるまで画像合成処理を繰り返すようにするなど、図８に示す方法を実現するアルゴリズムであれば良い。
【００７２】
このように、本第２の実施形態によれば、電子手ぶれ補正を行いながら、撮像素子の画素欠陥に起因する画像劣化を適切に補正することができる。
【００７３】
＜第３の実施形態＞
次に、本発明の第３の実施形態について説明する。本第３の実施形態における画像処理装置の構成は、第２の実施形態と同様であるので説明を省略する。本第３の実施形態と第２の実施形態とでは、画像を合成する順番が異なる。以下、本第３の実施形態における画像合成方法について説明する。
【００７４】
●電子手ぶれ補正時の傷画素データ補正
図１１は、本第３の実施形態における電子手ぶれ補正時の画像合成方法を説明する図である。なお、説明を分かり易くするために５×５画素を１枚の画像として示しているが、実際にはこれよりも多数の画素により構成されている。図１１に示す例では、位置ずれ検出回路８０により位置ずれ検出を行い、位置を合わせて５枚の画像を合成する場合を示しており、網掛けしてある画素は、傷マークを付けた画素を示している。位置ずれを相殺するように位置合わせを行うため、図１１（ａ）に示すように、撮像素子１２の同じ欠陥画素に対応する画素の位置が画像毎に異なっている。また、画像データ中に画素値０の画素は無いものとし、傷マークの画素値は０であるとする。
【００７５】
先ず、１枚目の画像Ｐ（０）と２枚目の画像Ｐ（１）の合成を行う。１枚目と２枚目の画像の場合、各画素データは、それぞれ１枚分の画像の画素データである。本第３の実施形態においても、上記第２の実施形態と同様の考え方により、剰余器３０６、３０８の係数をＡ＝Ｂ＝２／１、即ち、２に設定する。そして、各画素データは、図３に示す画像合成回路８２に入力される。傷マーク検出回路３０２、３０４はそれぞれの画素データに傷マークが付いているかどうかを判断する。傷マークが付いていなければ、傷マーク検出回路３０２、３０４は、互いのデータセレクタ３１４、３１６が端子「０」を選択するように制御し、傷マークが付いていれば、端子「１」を選択するように制御する。
【００７６】
この制御により、例えば、Ｙの画素データに傷マークが検出され、Ｘの画素データに傷マークが検出されていなければ、Ｘの画素データが２倍されて画像合成回路８２から出力される。Ｘの画素データにのみ傷マークが検出された場合は、その逆である。また、両画素の画素データに傷マークが検出された場合は、傷マークの画素値０が出力されることになるため、傷マークとして残ることになる。
【００７７】
次に、本第３の実施形態では、１枚目と２枚目を合成した画像Ｐ（１＋２）と、３枚目の画像Ｐ（３）とを合成する。この場合、画像Ｐ（１＋２）の画素データは２枚分の画像の画素データであり、画像Ｐ（３）の画素データは１枚分の画像の画素データであるため、剰余器３０６、３０８の係数をＡ＝３／２に、Ｂ＝３／１＝３に設定する。そして、１枚目と２枚目の画像を合成した時と同様にして、各画素データを合成する。
【００７８】
例えば、Ｙの画素データにのみ傷マークが検出されると、Ｘの画素データが３／２倍されて出力される。一方、Ｘの画素データにのみ傷マークが検出された場合は、Ｙの画素データが３倍されて出力されることになる。両画素の画素データに傷マークが検出された場合は、傷マークの画素値０が出力されることになるため、傷マークとして残ることになる。
【００７９】
同様にして、順次画像を合成していく。その際に、画像の合成に先だって、合成する各画像を得るために合成した画像の枚数を分母とし（未合成画像の場合は１枚）、また、各画像を得るために合成した画像の枚数を合計して分子としたものを、剰余器３０６、３０８の係数として設定する。
【００８０】
このようにして、最後に１枚の画像が残るまで（図１１（ｅ））合成を続ける。このように、傷マークが付けられた画素データを、位置合わせした合成対象の画素データを用いて補間することにより、傷画素データを補正することができる。この処理により合成した画像における傷画素データの数を減らすことができるが、最終的に残った傷画素データは、傷補正回路７２により周囲の画素を用いて補正する。
【００８１】
次に、上記電子手ぶれ補正時の傷画素データ補正を実現するためのより具体的な制御例について、図１２を参照して説明する。ここでは、短秒時で連写して得たＮ枚の画像を手ぶれ補正しながら合成する場合について説明する。
【００８２】
まず、変数ｎを０に初期化する（ステップＳ３０２）。次に、位置ずれ検出回路８０により、合成する２枚の画像Ｐ（ｎ）とＰ（ｎ＋１）の画像の位置ずれ量を検出する（ステップＳ３０４）。ここではｎ＝０なので、画像Ｐ（０）とＰ（１）の位置ずれ量を検出する。次に、上述したようにして係数Ａ及びＢを設定する（ステップＳ３０６）。ここでは、Ａ＝Ｂ＝２／１＝２を設定する。
【００８３】
次に、位置ずれ量に基づいて位置合わせをしながら画像Ｐ（０）とＰ（１）の各画素データを画像合成回路８２により合成して画像合成をし、Ｐ（１）と置き換える（ステップＳ３０８）。その後、ｎを１増やしてから（ステップＳ３１０）、ｎがＮよりも小さいかどうかを判断し、小さければステップＳ３０４に戻って上記処理を繰り返す。
【００８４】
ｎがＮ以上になると、全ての画像の合成を終了したものと判断し、ステップＳ３１４に進んで、全ての画像を合成した後もまだ残っている傷マークを傷補正回路７２で補正し、処理を終了する。
【００８５】
このように、本第３の実施形態によれば、電子手ぶれ補正を行いながら、撮像素子の画素欠陥に起因する画像劣化を適切に補正することができる。
【００８６】
なお、本第１〜第３の実施形態では傷マーク回路７０により傷画素データに傷マークを付け、画像合成回路８２で傷マークを検出する場合について説明した。しかしながら本発明はこれに限るものではなく、例えば、位置ずれ検出回路８０および画像合成回路８２が直接傷データを取得して傷位置を検出するように構成しても構わない。その場合、画像合成回路８２は位置ずれ検出回路８０から位置ずれ情報を取得して、位置ずれを考慮して傷位置を検出するようにすればよい。
【００８７】
＜第４の実施形態＞
次に、本発明の第３の実施形態について説明する。上記第１〜第３の実施形態では、画像を合成する際に傷画素データの補正を行う場合について説明したが、本第４の実施形態では、傷画素データの補正を先に行ってから、画像を合成する場合について説明する。
【００８８】
なお、画像合成回路８２の詳細構成以外は第１の実施形態で説明した構成と同様であるため、説明を省略する。以下、上記第１の実施形態の図４、図５、図６の代わりに行われる、本第４の実施形態に特徴的な画像合成回路の構成及び方法について説明する。
【００８９】
●電子手ぶれ補正時の傷画素データ補正
図１３は、本第４の実施形態における画像合成回路８２の概略構成を示す図である。Ｘ、Ｙはそれぞれ合成する２枚の入力画像データを示し、Ｚは合成された画像データを示す。５０２は加算器である。画像データＸ、Ｙは、位置ずれ検出回路８０の検出結果に基づいて、メモリ制御回路５０によって位置ずれをキャンセルされた状態で入力される。
【００９０】
電子手ぶれ補正時、本第４実施形態においては、Ａ／Ｄ変換器１４の出力画像に傷マーク回路７０で傷マークを付けた画像に傷補正回路７２で傷補正した画像に対して、位置ずれ検出し、画像合成する。
【００９１】
図１４は本第４の実施形態におけるシステム制御回路９０の動作を説明するためのフローチャートである。ここでは、短秒時で連写して得たＮ枚の画像を手ぶれ補正しながら合成する場合について説明する。
【００９２】
まず、変数ｎを０に初期化する（ステップＳ４０２）。次に、位置ずれ検出回路８０により、傷補正回路７２により傷補正を行った後の、合成する２枚の画像Ｐ（ｎ）とＰ（ｎ＋１）の画像の位置ずれ量を検出する（ステップＳ４０４）。ここではｎ＝０なので、画像Ｐ（０）とＰ（１）の位置ずれ量を検出する。次に、位置ずれ量に基づいて位置合わせをしながら画像Ｐ（０）とＰ（１）の各画素データを画像合成回路８２により加算して画像合成をし、Ｐ（１）と置き換える（ステップＳ４０６）。
【００９３】
その後、ｎを１増やしてから（ステップＳ４０８）、ｎがＮ以上になるまで（ステップＳ４１０でＹＥＳの間）、ステップＳ４０４に戻って上記処理を繰り返す。
ｎがＮ以上になると、全ての画像の合成を終了したものと判断し、処理を終了する。
【００９４】
上記の通り本第４の実施形態によれば、画像を合成する前に傷画素データの補正を行うことにより、電子手ぶれ補正時にも撮像素子の画素欠陥に起因する画像劣化を適切に補正することができる。
【００９５】
＜他の実施形態＞
なお、本発明の目的は、以下の様にして達成することも可能である。まず、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００９６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、以下のようにして達成することも可能である。即ち、読み出したプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合である。ここでプログラムコードを記憶する記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、ＲＯＭ、ＲＡＭ、磁気テープ、不揮発性のメモリカード、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ、光ディスク、光磁気ディスク、ＭＯなどが考えられる。また、ＬＡＮ（ローカル・エリア・ネットワーク）やＷＡＮ（ワイド・エリア・ネットワーク）などのコンピュータネットワークを、プログラムコードを供給するために用いることができる。
【図面の簡単な説明】
【００９７】
【図１】本発明の実施の形態における画像処理装置の概略構成を示すブロック図である。
【図２】本発明の実施の形態における傷補正回路の概略構成を示す図である。
【図３】本発明の第１の実施形態における画像合成回路の概略構成を示す図である。
【図４】本発明の第１の実施形態における電子手ぶれ補正時の画像合成方法を説明するための図である。
【図５】本発明の第１の実施形態におけるシステム制御回路による制御を説明するためのフローチャートである。
【図６】図５のフローチャートにおける変数の変化を示した表を示す図である。
【図７】本発明の第２及び第３の実施形態における画像合成回路の概略構成を示す図である。
【図８】本発明の第２の実施形態における電子手ぶれ補正時の画像合成方法を説明するための図である。
【図９】本発明の第２の実施形態におけるシステム制御回路による制御を説明するためのフローチャートである。
【図１０】図９のフローチャートにおける変数の変化を示した表を示す図である。
【図１１】本発明の第３の実施形態における電子手ぶれ補正時の画像合成方法を説明するための図である。
【図１２】本発明の第３の実施形態におけるシステム制御回路による制御を説明するためのフローチャートである。
【図１３】本発明の第４の実施形態における画像合成回路の概略構成を示す図である。
【図１４】本発明の第４の実施形態におけるシステム制御回路による制御を説明するためのフローチャートである。
【符号の説明】
【００９８】
１０：撮像レンズ、１１：シャッタ、１２：撮像素子、１４：Ａ／Ｄ変換器、１６：Ｄ／Ａ変換器、１８：画像表示部、２０：記録媒体、３０：画像処理回路、４０：メモリ、５０：メモリ制御回路、６０：圧縮伸長回路、７０：傷マーク回路、７２：傷補正回路、８０：位置ずれ検出回路、８２：画像合成回路、９０：システム制御回路、９２：操作部、９６：ＲＯＭ、１００：撮像装置、２０２、２０４、３０２、３０４：傷検出回路、２０３、２０５：乗算器、２０６、２０８、３１４、３１６：データセレクタ、２１０、３１８、５０２：加算器、３０６、３０８：剰余器、４０２、４０４、４０６：フリップフロップ、４０８：加算器、４１０：データセレクタ、４１２：傷マーク検出回路
【図１】
2008118570.tif 000003
【図２】
2008118570.tif 000004
【図３】
2008118570.tif 000005
【図４】
2008118570.tif 000006
【図５】
2008118570.tif 000007
【図６】
2008118570.tif 000008
【図７】
2008118570.tif 000009
【図８】
2008118570.tif 000010
【図９】
2008118570.tif 000011
【図１０】
2008118570.tif 000012
【図１１】
2008118570.tif 000013
【図１２】
2008118570.tif 000014
【図１３】
2008118570.tif 000015
【図１４】
2008118570.tif 000016