(57)【要約】【課題】連続撮影によって得られた複数枚の画像の中で合成に適した画像のみを用いて、歪みのない鮮明な画像を合成結果として得る。【解決手段】連続撮影によって得られた複数枚の画像を順次重ね合わせて合成する際に、基準となる第１の画像とその第１の画像に重ね合わせる第２の画像との間の座標変換式を算出し（ステップＢ１１）、第１の画像上の特徴点の座標を第２の画像の座標系に変換したときの歪み量を算出する（ステップＢ１２〜Ｂ２２）。この歪み量が閾値以内であれば、第２の画像を合成に適しているものと判断し、前記座標変換式を用いて合成処理を行う（ステップＢ２４）。歪み量が閾値を超える場合には、第２の画像を合成に不適切であると判断して破棄する（ステップＢ２３）。これにより、合成に適した画像のみを用いて、歪みのない鮮明な画像を合成結果として得ることができる。【選択図】図７
2007036359.tif 000002
【特許請求の範囲】
【請求項１】
複数枚の連続した画像を取得する画像取得手段と、
この画像取得手段によって得られた各画像を順次重ね合わせて合成する際に、基準となる第１の画像とその第１の画像に重ね合わせる第２の画像との間の座標変換式を算出する変換式算出手段と、
この変換式算出手段によって得られた座標変換式を用いて、前記第１の画像上の特徴点の座標を前記第２の画像の座標系に変換したときの歪み量を算出する歪み量算出手段と、
この歪み量算出手段によって得られた歪み量が予め設定された閾値以内であれば、前記第２の画像を合成に適しているものと判断し、前記座標変換式を用いて前記第１の画像と前記第２の画像との合成処理を行い、前記歪み量が前記閾値を超える場合には、前記第２の画像を合成に不適切であると判断し、前記第２の画像を破棄する合成制御手段と
を具備したことを特徴とする画像合成装置。
【請求項２】
前記歪み量算出手段は、前記第１の画像上の各頂点の座標を前記第２の画像の座標系に変換し、その変換後の各頂点の座標から求められる辺の長さ及び頂点の角度の少なくともいずれかを変換前の状態と比較することで歪み量を算出することを特徴とする請求項１記載の画像合成装置。
【請求項３】
前記歪み量算出手段は、前記第１の画像上のある任意の特徴点の座標を前記第２の画像の座標系に変換し、その変換後の特徴点近傍の各画素値と変換前の特徴点近傍の各画素値との差分の絶対値和を歪み量として算出することを特徴とする請求項１記載の画像合成装置。
【請求項４】
複数枚の連続した画像を取得する第１のステップと、
この第１のステップによって得られた各画像を順次重ね合わせて合成する際に、基準となる第１の画像とその第１の画像に重ね合わせる第２の画像との間の座標変換式を算出する第２のステップと、
この第２のステップによって得られた座標変換式を用いて、前記第１の画像上の特徴点の座標を前記第２の画像の座標系に変換したときの歪み量を算出する第３のステップと、
この第３のステップによって得られた歪み量が予め設定された閾値以内であれば、前記第２の画像を合成に適しているものと判断し、前記座標変換式を用いて前記第１の画像と前記第２の画像との合成処理を行い、前記歪み量が前記閾値を超える場合には、前記第２の画像を合成に不適切であると判断し、前記第２の画像を破棄する第４のステップと
を備えたことを特徴とする画像合成方法。
【請求項５】
コンピュータによって読取り可能なプログラムであって、
前記コンピュータに、
複数枚の連続した画像を取得する第１の機能と、
この第１の機能によって得られた各画像を順次重ね合わせて合成する際に、基準となる第１の画像とその第１の画像に重ね合わせる第２の画像との間の座標変換式を算出する第２の機能と、
この第２の機能によって得られた座標変換式を用いて、前記第１の画像上の特徴点の座標を前記第２の画像の座標系に変換したときの歪み量を算出する第３の機能と、
この第３の機能によって得られた歪み量が予め設定された閾値以内であれば、前記第２の画像を合成に適しているものと判断し、前記座標変換式を用いて前記第１の画像と前記第２の画像との合成処理を行い、前記歪み量が前記閾値を超える場合には、前記第２の画像を合成に不適切であると判断し、前記第２の画像を破棄する第４の機能と
を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばデジタルカメラ等の撮像装置に用いられる画像合成装置と、画像合成方法及びプログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラでは、手ぶれを起こさない短い露光時間で連続撮影を行い、その連続撮影によって得られた複数枚の画像を重ね合わせることで、ブレのないノイズを抑えた鮮明な画像を得る方法が考えられている。
【０００３】
ここで、連続撮影における各フレームの間隔は短時間であっても、その間にカメラと被写体との間に位置ずれが生じる可能性がある。このため、連続撮影によって得られた各画像を重ね合わせて合成する場合には、このような位置ずれを補正して重ね合わせることが必要となる。
【０００４】
例えば、特許文献１では、画像合成を行う際に、画像の特徴点を勾配法により追跡し、その特徴点を元にした座標変換式（射影変換行列式）により画像間の各画素の位置ずれを補正して重ね合わせる方法が知られている。
【特許文献１】特開２００５−９４６１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述したような画像合成技術は、連続画像の位相の変化を計算し、各画素の位置を座標変換しながら重なる方法である。この場合、連続画像は位相のみ違うが、それ以外の要素は同じであるということが前提条件である。
【０００６】
しかしながら、このような条件を満足するような画像を得ることは難しく、実際には撮影途中でカメラが大きく煽ったり、被写体の一部が物陰に隠れてしまうなどして、合成に不適切な要素が入り込むことが多い。このような不適切な要素を含んだ画像を合成処理すると、特徴点の追跡を誤り、座標変換式（射影変換行列式）を正しく算出できず、合成画像の形が歪み、ぼやけたような画像が出力されるといった問題がある。
【０００７】
本発明は前記のような点に鑑みなされたもので、連続撮影によって得られた複数枚の画像の中で合成に適した画像のみを用いて、歪みのない鮮明な画像を合成結果として得ることのできる画像合成装置、画像合成方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の請求項１に係る画像合成装置は、複数枚の連続した画像を取得する画像取得手段と、この画像取得手段によって得られた各画像を順次重ね合わせて合成する際に、基準となる第１の画像とその第１の画像に重ね合わせる第２の画像との間の座標変換式を算出する変換式算出手段と、この変換式算出手段によって得られた座標変換式を用いて、前記第１の画像上の特徴点の座標を前記第２の画像の座標系に変換したときの歪み量を算出する歪み量算出手段と、この歪み量算出手段によって得られた歪み量が予め設定された閾値以内であれば、前記第２の画像を合成に適しているものと判断し、前記座標変換式を用いて前記第１の画像と前記第２の画像との合成処理を行い、前記歪み量が前記閾値を超える場合には、前記第２の画像を合成に不適切であると判断し、前記第２の画像を破棄する合成制御手段とを具備して構成される。
【０００９】
このような構成によれば、連続撮影により得られた各画像を順次重ね合わせて合成する際に、合成対象となる第１の画像と第２の画像との間の座標変換式が求められ、その座標変換式に従って第１の画像上の特徴点の座標を第２の画像の座標系に変換したときの歪み量が算出される。この歪み量に基づいて第２の画像が合成に適していると判断された場合に合成処理が行われ、合成に不適切であると判断された場合には第２の画像が破棄される。これにより、合成に適した画像のみを用いて、歪みのない鮮明な画像を合成結果として得ることができる。
【００１０】
また、本発明の請求項２は、前記請求項１記載の画像合成装置において、前記歪み量算出手段は、前記第１の画像上の各頂点の座標を前記第２の画像の座標系に変換し、その変換後の各頂点の座標から求められる辺の長さ及び頂点の角度の少なくともいずれかを変換前の状態と比較することで歪み量を算出することを特徴とする。
【００１１】
このような構成によれば、第１の画像上の各頂点の座標だけを座標変換することにより、その変換後の各頂点の座標から求められる辺の長さ及び頂点の角度の少なくともいずれかを変換前の状態と比較することで歪み量を簡単に算出することができる。
【００１２】
また、本発明の請求項３は、前記請求項１記載の画像合成装置において、前記歪み量算出手段は、前記第１の画像上のある任意の特徴点の座標を前記第２の画像の座標系に変換し、その変換後の特徴点近傍の各画素値と変換前の特徴点近傍の各画素値との差分の絶対値和を歪み量として算出することを特徴とする。
【００１３】
このような構成によれば、第１の画像上のある任意の特徴点の座標だけを座標変換することにより、その変換後の特徴点近傍の各画素値と変換前の特徴点近傍の各画素値との差分の絶対値和を求めることにより、歪み量を簡単に算出することができる。
【００１４】
本発明の請求項４に係る画像合成方法は、複数枚の連続した画像を取得する第１のステップと、この第１のステップによって得られた各画像を順次重ね合わせて合成する際に、基準となる第１の画像とその第１の画像に重ね合わせる第２の画像との間の座標変換式を算出する第２のステップと、この第２のステップによって得られた座標変換式を用いて、前記第１の画像上の特徴点の座標を前記第２の画像の座標系に変換したときの歪み量を算出する第３のステップと、この第３のステップによって得られた歪み量が予め設定された閾値以内であれば、前記第２の画像を合成に適しているものと判断し、前記座標変換式を用いて前記第１の画像と前記第２の画像との合成処理を行い、前記歪み量が前記閾値を超える場合には、前記第２の画像を合成に不適切であると判断し、前記第２の画像を破棄する第４のステップとを備えたことを特徴とする。
【００１５】
このような画像合成方法によれば、前記各ステップに従った処理を実行することにより、前記請求項１記載の発明と同様の作用効果が奏せられる。
【００１６】
本発明の請求項５に係るプログラムは、コンピュータによって読取り可能なプログラムであって、前記コンピュータに、複数枚の連続した画像を取得する第１の機能と、この第１の機能によって得られた各画像を順次重ね合わせて合成する際に、基準となる第１の画像とその第１の画像に重ね合わせる第２の画像との間の座標変換式を算出する第２の機能と、この第２の機能によって得られた座標変換式を用いて、前記第１の画像上の特徴点の座標を前記第２の画像の座標系に変換したときの歪み量を算出する第３の機能と、この第３の機能によって得られた歪み量が予め設定された閾値以内であれば、前記第２の画像を合成に適しているものと判断し、前記座標変換式を用いて前記第１の画像と前記第２の画像との合成処理を行い、前記歪み量が前記閾値を超える場合には、前記第２の画像を合成に不適切であると判断し、前記第２の画像を破棄する第４の機能とを実現させることを特徴とする。
【００１７】
したがって、コンピュータが前記各機能を実現するためのプログラムを実行することにより、前記請求項１記載の発明と同様の作用効果が奏せられる。
【発明の効果】
【００１８】
本発明によれば、連続撮影により得られた各画像を順次重ね合わせて合成する際に、各画像について合成に適しているか否かを判断し、不適切な画像は合成処理に使用しないで破棄する構成としたことにより、各画像の中で合成に適した画像のみを用いて、歪みのない鮮明な画像を合成結果として得ることができる。
【発明を実施するための最良の形態】
【００１９】
以下、図面を参照して本発明の実施形態を説明する。
【００２０】
図１は本発明の一実施形態に係る画像合成装置としてデジタルカメラを例にした場合の外観構成を示す図であり、図１（ａ）は主に前面の構成、同図（ｂ）は主に背面の構成を示す斜視図である。
【００２１】
このデジタルカメラ１は、略矩形の薄板状ボディ２の前面に、撮影レンズ３、セルフタイマランプ４、光学ファインダ窓５、ストロボ発光部６、マイクロホン部７などを有し、上面の（ユーザにとって）右端側には電源キー８及びシャッタキー９などが設けられている。
【００２２】
電源キー８は、電源のオン／オフ毎に操作するキーであり、シャッタキー９は、撮影時に撮影タイミングを指示するキーである。
【００２３】
また、デジタルカメラ１の背面には、撮影モード（Ｒ）キー１０、再生モード（Ｐ）キー１１、光学ファインダ１２、スピーカ部１３、マクロキー１４、ストロボキー１５、メニュー（ＭＥＮＵ）キー１６、リングキー１７、セット（ＳＥＴ）キー１８、表示部１９などが設けられている。
【００２４】
撮影モードキー１０は、電源オフの状態から操作することで自動的に電源オンとして静止画の撮影モードに移行する一方で、電源オンの状態から繰返し操作することで、静止画モード、動画モードを循環的に設定する。静止画モードは、静止画を撮影するためのモードである。また、動画モードは、動画を撮影するためのモードである。
【００２５】
前記シャッタキー９は、これらの撮影モードに共通に使用される。すなわち、静止画モードでは、シャッタキー９が押下されたときのタイミングで静止画の撮影が行われる。動画モードでは、シャッタキー９が押下されたときのタイミングで動画の撮影が開始され、シャッタキー９が再度押下されたときにその動画の撮影が終了する。
【００２６】
再生モードキー１１は、電源オフの状態から操作することで自動的に電源オンとして再生モードに移行する。
【００２７】
マクロキー１４は、静止画の撮影モードで通常撮影とマクロ撮影とを切換える際に操作する。ストロボキー１５は、ストロボ発光部６の発光モードを切換える際に操作する。メニューキー１６は、連続撮影モードを含む各種メニュー項目等を選択する際に操作する。リングキー１７は、上下左右各方向への項目選択用のキーが一体に形成されたものであり、このリングキー１７の中央に位置するセットキー１８は、その時点で選択されている項目を設定する際に操作する。
【００２８】
表示部１９は、バックライト付きのカラー液晶パネルで構成されるもので、撮影モード時には電子ファインダとしてスルー画像のモニタ表示を行う一方で、再生モード時には選択した画像等を再生表示する。
【００２９】
なお、図示はしないがデジタルカメラ１の底面には、記録媒体として用いられるメモリカードを着脱するためのメモリカードスロットや、外部のパーソナルコンピュータ等と接続するためのシリアルインタフェースコネクタとして、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）コネクタ等が設けられている。
【００３０】
図２はデジタルカメラ１の電子回路構成を示すブロック図である。
【００３１】
このデジタルカメラ１には、光学レンズ装置２１、イメージセンサ２２、メモリ２３、表示装置２４、画像処理装置２５、操作部２６、コンピュータインタフェース部２７、外部記憶ＩＯ装置２８、プログラムコード記憶装置２９、ＣＰＵ３０、メモリカード３１が備えられている。
【００３２】
光学レンズ装置２１は、撮影レンズ３を構成する図示せぬフォーカスレンズおよびズームレンズを含むレンズ光学系とその駆動部とを備えたものであり、イメージセンサ２２上に、撮影対象からの光を集光させて像を結像させる。
【００３３】
イメージセンサ２２は、結像した画像を、デジタル化した画像データとして取り込むためのものであり、例えば、ＣＣＤ（Charge Coupled Device：電荷結合素子）等によって構成される。イメージセンサ２２は、ＣＰＵ３０によって制御され、シャッタキー９が押下されなければ、プレビュー用の解像度の低いデジタルの画像データを生成し、この画像データを秒間３０枚程度の間隔で、定期的にメモリ２３に送出する。また、イメージセンサ２２は、シャッタキー９が押下されると、解像度の高い画像データを生成し、生成した画像データをメモリ２３に送出する。また、イメージセンサ２２は、ＣＰＵ３０によって撮像感度（ＩＳＯ感度）の設定可能である。
【００３４】
メモリ２３は、イメージセンサ２２からの低解像度のプレビュー画像、高解像度の画像データまたは画像処理装置２５が画像処理する元画像のデータ、処理後の画像データを一時記憶するものである。メモリ２３は、一時記憶した画像データを表示装置２４または画像処理装置２５に送り出す。
【００３５】
表示装置２４は、液晶モニタである表示部１９に画像を表示させるためのものである。表示装置２４は、メモリ２３が一時記憶した低解像度のプレビュー画像または解像度の高い画像を表示部１９に表示する。
【００３６】
画像処理装置２５は、メモリ２３に一時記憶された画像データに対して、画像データの圧縮等の画像処理を行うためのものである。
【００３７】
操作部２６は、シャッタキー９の他に、電源キー８、撮影モードキー１０、再生モードキー１１、マクロキー１４、ストロボキー１５、メニューキー１６、リングキー１７、セットキー１８などから構成され、それらのキー操作に伴う信号は直接ＣＰＵ３０へ送出される。
【００３８】
コンピュータインタフェース部２７は、デジタルカメラ１がコンピュータ（図示せず）に接続されたときに、ＵＳＢのストレジクラスドライバとして動作するものである。これにより、コンピュータは、デジタルカメラ１に接続されると、メモリカード３１をコンピュータの外部記憶装置として取り扱う。
【００３９】
外部記憶ＩＯ装置２８は、メモリカード３１との間で、画像データ等の入出力を行うものである。メモリカード３１は、外部記憶ＩＯ装置２８から供給された画像データ等を記憶するものである。
【００４０】
プログラムコード記憶装置２９は、ＣＰＵ３０が実行するプログラムを記憶するためのものであり、ＲＯＭやフラッシュメモリなどによって構成される。
【００４１】
ＣＰＵ３０は、プログラムコード記憶装置２９に格納されているプログラムに従って、システム全体を制御するものである。なお、メモリ２３は、ＣＰＵ３０の作業メモリとしても用いられる。
【００４２】
操作部２６のスイッチ・キーが押下されることにより、操作部２６から操作情報が送信されると、ＣＰＵ３０は、この操作情報に基づいて、イメージセンサ２２、メモリ２３、表示装置２４、画像処理装置２５等を制御する。
【００４３】
具体的には、操作部２６から撮影モードキー１０が押下された旨の操作情報が送信されると、ＣＰＵ３０は各部を撮影モードに設定する。この状態で、シャッタキー９が押下されなければ、イメージセンサ２２をプレビューモードに設定し、シャッタキー９が押下されれば、解像度の高い撮影対象画像を読み込む高解像度モードに設定する。その際、メニューキー１６の操作により連続撮影モードが設定されていれば、シャッタキー９の押下に伴い、所定枚数分の画像の読み込み処理が所定時間間隔で実行される。
【００４４】
また、再生モードキー１１が押下された旨の操作情報が送信されると、ＣＰＵ３０は、各部を再生モードに設定する。
【００４５】
また、ＣＰＵ３０は、外部記憶ＩＯ装置２８を介してメモリカード３１に、プレビュー画像、高解像度の画像のデータを記録したり、メモリカード３１から、記録された画像データを読み出したりする。ＣＰＵ３０は、メモリカード３１には、例えば、ＪＰＥＧフォーマットで圧縮した画像データを記録する。
【００４６】
ＣＰＵ３０は、メモリ２３に画像データを一時記憶する際、プレビュー画像、高解像度の画像データを異なる記憶領域に記録する。また、ＣＰＵ３０は、メモリカード３１には、画像データを画像ファイルに分けて記録する。
【００４７】
また、ＣＰＵ３０は、外部記憶ＩＯ装置２８を介してメモリカード３１に、プレビュー画像、高解像度の画像のデータを記録したり、メモリカード３１から、記録された画像データを読み出したりする。ＣＰＵ３０は、メモリカード３１に画像データを格納する画像ファイルを作成する。
【００４８】
次に、前記構成のデジタルカメラ１による画像合成処理について説明する。
【００４９】
なお、以下の各フローチャートで示される処理は、マイクロコンピュータであるＣＰＵ３０がプログラムコード記憶装置２９に記憶されたプログラムを読み込むことにより、そのプログラムに記述された手順に従って実行される。
【００５０】
図３は画像合成の基本的な処理の流れを示したフローチャートである。
【００５１】
今、連続撮影によって得られた所定枚数分の画像がメモリ２３に連続的に記憶されているものとする。ＣＰＵ３０は、まず、メモリ２３の中から１枚目の画像を重ね合わせの基準画像として読み出し（ステップＡ１１）、その基準画像から被写体の特徴点を所定数分抽出する（ステップＡ１２）。
【００５２】
続いて、ＣＰＵ３０は、メモリ２３の中から２枚目の画像を被追跡画像として読み出し（ステップＡ１３）、その被追跡画像上で前記基準画像から抽出した特徴点を追跡する（ステップＡ１４）。
【００５３】
この特徴点の追跡には、勾配法によるオプティカルフロー推定が用いられる。オプティカルフロー（optical flow）とは、カメラから見た物体の見かけ上の動きのことであり、オプティカルフロー推定とは、画像間での動きを画像だけから推定することを言う。この推定方法の１つに勾配法と呼ばれるものがある。
【００５４】
勾配法は、動きを画素値（明るさ）の勾配（一次微分）から計算する方法である。つまり、勾配法によるオプティカルフロー推定とは、「物体上の点の明るさは移動後も変化しない」という仮定から時空間微分とオプティカルフローとの関係式を導出し、それを利用して対象の動きを推定するものである。なお、勾配法によるオプティカルフロー推定については周知であるため、ここでは詳しい理論についての説明は省略する。
【００５５】
このような推定方法を用いて被追跡画像上で特徴点を追跡すると、ＣＰＵ３０は、その追跡結果に基づいて両画像間における射影変換の行列式Ｈを決定する（ステップＡ１５）。そして、ＣＰＵ３０は、この行列式Ｈを用いて画像間の位置ずれを補正して重ね合わせを行う（ステップＡ１６）。
【００５６】
具体的に説明すると、例えば図４に示すように、画像１と画像２を合成対象とした場合に、まず、基準となる画像１の中から所定数分の特徴点をランダムに抽出し、これらの特徴点を画像１に重ね合わせる画像２上で追跡する。今、図中のＰ１，Ｐ２，Ｐ３を画像１から抽出した特徴点とすれば、この３つの特徴点Ｐ１，Ｐ２，Ｐ３の場所を画像２の中で追跡することになる。
【００５７】
特徴点Ｐ１，Ｐ２，Ｐ３を追跡できたら、この特徴点Ｐ１，Ｐ２，Ｐ３の画像２上の座標位置と画像１上の座標位置との関係から射影変換における行列式Ｈを算出する。そして、この行列式Ｈに基づいて画像１上のすべての特徴点をずらしてみて（画像１′）、ある程度の精度で画像２上の各特徴点と一致すれば（画像１′＋画像２）、当該行列式Ｈを用いて画像１と画像２との位置ずれを補正して重ね合わせる。
【００５８】
なお、実際には、このような特徴点の抽出と追跡を何回か繰り返し行うことで、最終的に最も評価値の高い行列式Ｈを選出するといった処理を行う。
【００５９】
図３に戻って、このような処理をメモリ２３に記憶された各画像について繰り返し行い、順次重ね合わせていく。そして、連続枚数分の画像の重ね合わせ処理が終了すると（ステップＡ１７のＹｅｓ）、ＣＰＵ３０は、その重ね合わせ処理にて得られた合成画像を画像処理装置２５にて圧縮処理するなどしてから外部記憶ＩＯ装置２８を介してメモリカード３１に出力して保存する（ステップＡ１８）。
【００６０】
このように、画像合成技術を利用して複数枚の連続した画像を重ね合わせて１枚の合成影画像を生成することにより、手ぶれ防止のために露光時間を短く設定した場合でも、十分な光量を確保することが可能となり、ブレのないノイズを抑えた鮮明な画像を得ることができる。
【００６１】
ところで、連続撮影によって得られた複数枚の画像のすべてが合成に適したものとは限らず、撮影状況によっては信頼性が低い特徴点を多数含んだ画像も存在することがある。このような画像から座標変換式を算出すると、合成時に画像が変形してしまい、二重映りなどを引き起こす原因になる。
【００６２】
以下に、このような問題を解消するための方法について説明する。
【００６３】
（第１の方法）  
今、重ね合わせの基準になる方の画像をＦ０、その基準画像に重ね合わせる画像をＦ１とする。画像Ｆ０上のある任意の画素（ｘ，ｙ）に対して、射影変換の行列式Ｈを使って画像Ｆ１の座標系に変換したときの座標を（ｘ′，ｙ′）とすると、（ｘ′，ｙ′）は以下のようにして求まる。
【数１】
2007036359.tif 000003
【００６４】
ここで、画像Ｆ０の全画素を画像Ｆ１の座標系に対応させた画像を画像Ｆ１′とする。画像Ｆ１と画像Ｆ１′は同じ座標系なので、図５のような関係になる。この場合、画像Ｆ１′が歪んでいなければ、画像Ｆ１と画像Ｆ１′が合致するが、点線で示すように画像Ｆ１′が歪んだ状態にあると、その歪みが大きいほど、座標のずれが大きくなる。この歪みの大きさを測るために、以下のような計算を行う。
【００６５】
画像Ｆ０の各頂点の画素をａ，ｂ，ｃ，ｄとし、画像Ｆ１の各頂点の画素をｅ，ｆ，ｇ，ｈとする。また、図６に示すように、画像Ｆ０の頂点画素を画像Ｆ１の座標系に射影変換したときの頂点画素を画像Ｆ１′のａ′，ｂ′，ｃ′，ｄ′とする。
【００６６】
ここで、変換後の画像Ｆ１′の４辺ａ′−ｂ′，ｂ′−ｃ′，ｃ′−ｄ′，ｄ′−ａ′の長さと、各頂点画素ａ′，ｂ′，ｃ′，ｄ′の角度を計算する。これにより、画像Ｆ１′の各頂点画素ａ′，ｂ′，ｃ′，ｄ′の位置関係がわかり、変換前の画像Ｆ０の各頂点画素ａ，ｂ，ｃ，ｄの辺と各頂点の角度と比較すれば、画像Ｆ０を画像Ｆ１の座標系に変換した場合の歪み量を数値化できる。その値が予め設定された閾値以内であれば、画像Ｆ０と画像Ｆ１との合成処理を行い、閾値を超える場合には、画像Ｆ１は合成に不適切であると判断して破棄する。
【００６７】
実際の処理を図７のフローチャートを用いて説明する。
【００６８】
図７は第１の方法による画像判定処理を示すフローチャートである。連続撮影によって得られた所定枚数分の画像を合成する場合において、ＣＰＵ３０は、まず、基準となる画像Ｆ０と、その画像Ｆ０に連続した画像Ｆ１をメモリ２３から読み出し、それぞれの画像上における特徴点の座標位置に基づいて射影変換の行列式Ｈを算出する（ステップＢ１１）。
【００６９】
次に、ＣＰＵ３０は、画像Ｆ０の各頂点ａ，ｂ，ｃ，ｄの座標に着目し、前記行列式Ｈを用いて、各頂点ａ，ｂ，ｃ，ｄの座標のみを画像Ｆ１の座標系に射影変換する（ステップＢ１２）。この場合、変換後の画像の辺の長さと角の大きさだけが必要なので、全画素について射影変換を行う必要はない。
【００７０】
画像Ｆ０を画像Ｆ１の座標系に射影変換したときの画像をＦ１′とする。ＣＰＵ３０は、この画像Ｆ１′の頂点画素ａ′，ｂ′，ｃ′，ｄ′の座標から画像Ｆ１′の４辺ａ′−ｂ′，ｂ′−ｃ′，ｃ′−ｄ′，ｄ′−ａ′の長さと、各頂点画素ａ′，ｂ′，ｃ′，ｄ′の角度を計算する（ステップＢ１３，Ｂ１４）。
【００７１】
次に、ＣＰＵ３０は、前記ステップＢ１４で得られた画像Ｆ１′の辺の長さと角度を変換前の画像Ｆ０と比較することで、画像Ｆ０を画像Ｆ１の座標系に射影変換した場合の歪み量を算出し、その歪み量に応じて画像合成を行う。具体的には、以下のような手順で歪み量を算出し、その歪み量が予め設定された閾値以内であった場合には合成を行い、閾値を超えていた場合には画像Ｆ１を破棄するといった処理を行う。
【００７２】
今、θｉを画像Ｆ０の各頂点の角度、θｉ′を画像Ｆ１′の各頂点の角度、θｔｉを各頂点の角度に対する閾値とする。また、Ｌｉを画像Ｆ０の各辺の長さ、Ｌｉ′を画像Ｆ１′の各辺の長さ、Ｌｔｉを各辺の長さに対する閾値とする。なお、ｉは０〜３の値を取るものとする。
【００７３】
まず、ＣＰＵ３０は、ｉ＝０に初期化して（ステップＢ１５）、画像Ｆ１′のｉ番目の頂点の角度θｉ′と画像Ｆ０のｉ番目の頂点の角度θｉを比較し、両者の差分値を歪み量として算出する（ステップＢ１６）。その結果、θｉ′とθｉとの差分値が角度の閾値θｔｉを超える場合には（ステップＢ１６のＹｅｓ）、ＣＰＵ３０は、画像Ｆ１は合成に不適切なものと判断して、その画像Ｆ１は合成処理には用いずに破棄する（ステップＢ２３）。
【００７４】
また、θｉ′とθｉとの差分値が閾値θｔｉ以内であった場合には（ステップＢ１６のＮｏ）、ＣＰＵ３０は、ｉを＋１更新して（ステップＢ１８）、次の頂点の角度を比較する。このようにして、画像Ｆ１′と画像Ｆ０の各頂点の角度を順次比較した結果、いずれか１つでも閾値を超えるものがあれば、画像Ｆ１を不適切として破棄する。
【００７５】
また、すべての頂点が閾値以内であった場合には（ステップＢ１７のＹｅｓ）、続いて、画像Ｆ１′と画像Ｆ０の各辺の長さを比較する。
【００７６】
すなわち、ＣＰＵ３０は、再びｉ＝０に初期化した後（ステップＢ１９）、画像Ｆ１′のｉ番目の辺の長さＬｉ′と画像Ｆ０のｉ番目の辺の長さＬｉを比較し、両者の差分値を歪み量として算出する（ステップＢ２０）。その結果、Ｌｉ′とＬｉとの差分値が辺の閾値Ｌｔｉを超える場合には（ステップＢ２０のＹｅｓ）、ＣＰＵ３０は、画像Ｆ１は合成に不適切なものと判断して、その画像Ｆ１は合成処理には用いずに破棄する（ステップＢ２３）。
【００７７】
また、Ｌｉ′とＬｉとの差分値が閾値Ｌｔｉ以内であった場合には（ステップＢ２０のＮｏ）、ＣＰＵ３０は、ｉを＋１更新して（ステップＢ２２）、次の辺の長さを比較する。そして、すべての辺の長さが閾値以内であった場合に（ステップＢ２１のＹｅｓ）、ＣＰＵ３０は、画像Ｆ１は合成に適しているものと判断し、前記行列式Ｈを用いて画像Ｆ０と画像Ｆ１との重ね合わせを実行する（ステップＢ２４）。一方、いずれか１つでも閾値を超えるものがあれば（ステップＢ２０のＹｅｓ）、ＣＰＵ３０は画像Ｆ１を不適切として破棄する（ステップＢ２３）。
【００７８】
なお、破棄の判断は各頂点の角度と辺の長さの少なくとも一方の情報だけで行うことができるが、合成の判断は各頂点の角度と辺の長さの両方の情報が必要となる。これは、例えば各頂点の角度は合致していても、辺の長さが違うような場合もあるためである。
【００７９】
以後、同様にして連続撮影によって得られた各画像について合成に適切であるか否かを判断し、適切であると判断された画像のみを使用して合成処理を行う。これにより、変形や二重映りなどのない高精度な画像を合成結果として得ることができる。
【００８０】
また、画像合成の前処理として、前記のような歪み量の判定により合成に不適切な画像を事前に排除することで、無駄な演算をなくして、合成処理の高速化を実現できる。
【００８１】
（第２の方法）  
前記第１の方法では、画像の各頂点画素の座標から辺と角度を算出して歪み量を求めるようにしたが、画像上のある任意の特徴点近傍の各画素値の差分の絶対値和を求める方法も考えられる。以下に、その方法について、図８および図９を用いて説明する。
【００８２】
図８に示すように、画像Ｆ０と画像Ｆ１との間の射影変換の行列式Ｈを求めた後、画像Ｆ０上の任意の特徴点の画素Ｃ（ｘ，ｙ）に対して射影変換を行う。また、画像Ｆ１において、その特徴点と一致する画素Ｃ′（ｘ′，ｙ′）を求める。
【００８３】
ここで、画像Ｆ０の特徴点近傍の数ピクセル四方のウインドウ（Ｗ０とする）と、画像Ｆ１の特徴点近傍の数ピクセル四方のウインドウ（Ｗ１とする）を定め、そのウインドウＷ０内の各画素値とウインドウＷ１内の各画素値との差分の絶対値和を計算する。ここで注意すべきは、画像Ｆ０の特徴点座標以外は画像Ｆ１の座標系に射影変換していないので、ウインドウＷ０内の各画素はウインドウＷ１内の全画素対応しているわけではない、ということである。
【００８４】
すなわち、図９に示すように、画像Ｆ０のウインドウＷ０内の各画素を全て射影変換した場合のウインドウをＷ１′とすると、両ウインドウ内の画素値の差はゼロとなる。この場合、画像Ｆ１′の歪みに合わせてウインドウＷ１′の形も歪むことになる。
【００８５】
しかし、歪みが限りなく小さい場合（例えば、露出時間中のカメラのぶれが平行移動だけだったような場合）、画像Ｆ１′のウインドウＷ１′は、画像Ｆ１のウインドウＷ１に近づいていく。つまり、画像Ｆ０のウインドウＷ０内の各画素値の合計と画像Ｆ１のウインドウＷ１内の各画素値の合計の差分は０に近づいていく。
【００８６】
逆に言えば、画像Ｆ０のウインドウＷ０内の各画素値と画像Ｆ１のウインドウＷ１内の各画素値とを比較した場合に、両者の差が小さいほど、歪みが少ないと言える。よって、画像Ｆ０のウインドウＷ０内の各画素値と画像Ｆ１のウインドウＷ１内の各画素値の差分の合計を計算し、その値を評価することで、画像Ｆ０を画像Ｆ１の座標系に射影変換した場合の歪み量を求めることができる。
【００８７】
以後は、前記第１の方法と同様であり、その歪み量が予め設定された閾値を超えていれば、画像Ｆ１は合成に不適切であると判断し、この画像Ｆ１を破棄する。
【００８８】
実際の処理を図１０のフローチャートを用いて説明する。
【００８９】
図１０は第２の方法による画像判定処理を示すフローチャートである。連続撮影によって得られた所定枚数分の画像を合成する場合において、ＣＰＵ３０は、まず、基準となる画像Ｆ０と、その画像Ｆ０に重ねる画像Ｆ１をメモリ２３から読み出し、それぞれの画像上における特徴点の座標位置に基づいて射影変換の行列式Ｈを算出する（ステップＣ１１）。
【００９０】
次に、ＣＰＵ３０は、画像Ｆ０上のある任意の特徴点Ｃの画素に対してのみ、前記行列式Ｈを用いて画像Ｆ１の座標系に射影変換する（ステップＣ１２）。この場合、特徴点Ｃの射影位置だけが必要なので、全画素について射影変換を行う必要はない。
【００９１】
次に、ＣＰＵ３０は、画像Ｆ０の特徴点近傍の数ピクセル四方のウインドウＷ０と、画像Ｆ１の特徴点近傍の数ピクセル四方のウインドウＷ１を定めて、ウインドウＷ０内の各画素値とウインドウＷ１内の各画素値との差分の絶対値和を計算する（ステップＣ１３）。
【００９２】
上述したように、このウインドウＷ０内の各画素値とウインドウＷ１内の各画素値との差分結果が画像Ｆ１の座標系に射影変換した場合の歪み量を表している。
【００９３】
ここで、前記歪み量が予め設定された閾値以内であった場合には（ステップＣ１４のＹｅｓ）、ＣＰＵ３０は、画像Ｆ１は合成に適しているものと判断し、前記行列式Ｈを用いて画像Ｆ０と画像Ｆ１との重ね合わせを実行する（ステップＣ１５）。一方、前記歪み量が予め設定された閾値を超えていた場合には（ステップＣ１４のＮｏ）、ＣＰＵ３０は、画像Ｆ１は合成に不適切なものと判断して、その画像Ｆ１は画像合成には用いずに破棄する（ステップＣ１６）。
【００９４】
以後、同様にして連続撮影によって得られた各画像について合成に適切であるか否かを判断し、適切であると判断された画像のみを使用して画像合成処理を行う。
【００９５】
このように、画像上のある任意の特徴点の近傍の各画素値の差分の絶対値和を求める方法でも、前記第１の方法と同様に、画像の歪み量（位置ずれの大きさ）を算出することができ、その歪み量に基づいて合成に不適切な画像を破棄することで、変形や二重映りなどのない高精度な画像を合成結果として得ることができる。
【００９６】
なお、前記実施形態では、デジタルカメラを例にして説明したが、本発明はこれに限られるものではなく、例えばカメラ付きの携帯電話など、撮像機能を備えた電子機器であれば同様に適用可能である。
【００９７】
さらに、予めカメラで連続撮影した複数枚の画像をＰＣ（パーソナルコンピュータ）等の情報処理装置に与えて、その情報処理装置内で前記のような処理を行うことで良い。画像の提供方法としては、着脱可能なメモリに画像を保存する方法の他に、通信ネットワークを介して提供することでも良い。
【００９８】
要するに、本発明は前記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【００９９】
さらに、上述した実施形態において記載した手法は、コンピュータに実行させることのできるプログラムとして、例えば磁気ディスク（フレキシブルディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等）、半導体メモリなどの記録媒体に書き込んで各種装置に適用したり、そのプログラム自体をネットワーク等の伝送媒体により伝送して各種装置に適用することも可能である。本装置を実現するコンピュータは、記録媒体に記録されたプログラムあるいは伝送媒体を介して提供されたプログラムを読み込み、このプログラムによって動作が制御されることにより、上述した処理を実行する。
【図面の簡単な説明】
【０１００】
【図１】図１は本発明の一実施形態に係る画像合成装置としてデジタルカメラを例にした場合の外観構成を示す図であり、図１（ａ）は主に前面の構成、同図（ｂ）は主に背面の構成を示す斜視図である。
【図２】図２は同実施形態におけるデジタルカメラの電子回路構成を示すブロック図である。
【図３】図３は画像合成の基本的な処理の流れを示したフローチャートである。
【図４】図４はオプティカルフロー推定を用いた画像合成技術を説明するための図である。
【図５】図５は画像の歪みを判断する場合の第１の方法を説明するための図であり、画像Ｆ０を画像Ｆ１の座標系に射影変換した状態を示す図である。
【図６】図６は画像の歪みを判断する場合の第１の方法を説明するための図であり、変換前の画像Ｆ０と変換後の画像Ｆ１′との関係を示す図である。
【図７】図７は第１の方法による画像判定処理を示すフローチャートである。
【図８】図８は画像の歪みを判断する場合の第２の方法を説明するための図であり、画像Ｆ０を画像Ｆ１の座標系に射影変換した状態を示す図である。
【図９】図９は画像の歪みを判断する場合の第１の方法を説明するための図であり、変換前の画像Ｆ０と変換後の画像Ｆ１′と画像Ｆ１との関係を示す図である。
【図１０】図１０は第２の方法による画像判定処理を示すフローチャートである。
【符号の説明】
【０１０１】
１…デジタルカメラ、２…ボディ、３…撮影レンズ、４…セルフタイマランプ、５…光学ファインダ窓、６…ストロボ発光部、７…マイクロホン部、８…電源キー、９…シャッタキー、１０…撮影モードキー、１１…再生モードキー、１２…光学ファインダ、１３…スピーカ部、１４…マクロキー、１５…ストロボキー、１６…メニュー（ＭＥＮＵ）キー、１７…リングキー、１８…セット（ＳＥＴ）キー、１９…表示部、２１…光学レンズ装置、２２…イメージセンサ、２３…メモリ、２４…表示装置、２５…画像処理装置、２６…操作部、２７…コンピュータインタフェース部、２８…外部記憶ＩＯ装置、２９…プログラムコード記憶装置、３０…ＣＰＵ、３１…メモリカード。
【図１】
2007036359.tif 000004
【図２】
2007036359.tif 000005
【図３】
2007036359.tif 000006
【図４】
2007036359.tif 000007
【図５】
2007036359.tif 000008
【図６】
2007036359.tif 000009
【図７】
2007036359.tif 000010
【図８】
2007036359.tif 000011
【図９】
2007036359.tif 000012
【図１０】
2007036359.tif 000013