(57)【要約】【課題】連写撮影により得られる複数の画像を利用して生成する合成画像の画質を向上させる。【解決手段】  ぶれ量算出部３は、第１および第２の画像間のずれを表す平行移動成分、回転角、拡大／縮小率を算出する。判定部４は、算出部３により算出された回転角および拡大／縮小率をそれぞれ対応する閾値と比較し、第２の画像を変換するためにその算出した回転角および拡大／縮小率を使用するか否かを判定する。変換部（画像シフト部６または画像変換部７）は、判定部４による判定の結果に応じて第２の画像を変換する。画像合成部９は、第１の画像および変換後の第２の画像を合成する。【選択図】図６
2010232710.tif 000002
【特許請求の範囲】
【請求項１】
連写撮影により得られる複数の画像から合成画像を作成する画像処理方法であって、
前記複数の画像の中から選択される基準画像と前記複数の画像の中の他の画像との間のずれ量を表す平行移動成分、回転角、拡大／縮小率を算出し、
前記算出された回転角および拡大／縮小率をそれぞれ対応する閾値と比較し、
前記比較の結果に応じて、前記他の画像を変換するために前記算出された回転角および拡大／縮小率を使用するか否かをそれぞれ判定し、
前記判定の結果に応じて前記他の画像を変換し、
前記基準画像と前記変換された画像、或いは前記変換された画像どうしを合成する
ことを特徴とする画像処理方法。
【請求項２】
請求項１に記載の画像処理方法であって、
前記回転角および拡大／縮小率の双方とも使用しないと判定されたときは、変換対象画像の各画素を、前記算出された平行移動成分に従って画素単位でシフトさせる
ことを特徴とする画像処理方法。
【請求項３】
請求項１に記載の画像処理方法であって、
前記閾値は、画像を撮影するための露光時間に応じて決定される
ことを特徴とする画像処理方法。
【請求項４】
連写撮影により得られる複数の画像から合成画像を作成する画像処理装置であって、
前記複数の画像の中から選択される基準画像と前記複数の画像の中の他の画像との間のずれ量を表す平行移動成分、回転角、拡大／縮小率を算出する算出部と、
前記算出部により算出された回転角および拡大／縮小率をそれぞれ対応する閾値と比較する比較部と、
前記比較部による比較の結果に応じて、前記他の画像を変換するために前記算出された回転角および拡大／縮小率を使用するか否かをそれぞれ判定する判定部と、
前記判定部による判定の結果に応じて前記他の画像を変換する変換部と、
前記基準画像と前記変換された画像、或いは前記変換された画像どうしを合成する合成部、
を有する画像処理装置。
【請求項５】
連写撮影により得られる複数の画像から合成画像を作成するために、コンピュータに、
前記複数の画像の中から選択される基準画像と前記複数の画像の中の他の画像との間のずれ量を表す平行移動成分、回転角、拡大／縮小率を算出する手順、
前記算出された回転角および拡大／縮小率をそれぞれ対応する閾値と比較する手順、
前記比較の結果に応じて、前記他の画像を変換するために前記算出された回転角および拡大／縮小率を使用するか否かをそれぞれ判定する手順、
前記判定の結果に応じて前記他の画像を変換する手順、
前記基準画像と前記変換された画像、或いは前記変換された画像どうしを合成する手順
を実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル画像を処理する装置および方法に係わり、例えば、複数画像を利用して電子カメラの手ぶれを補正する方法に適用可能である。
【背景技術】
【０００２】
近年、手ぶれ補正機能を備えた電子カメラが実用化されている。手ぶれ補正機能は、光学技術または画像処理技術により実現される。画像処理による手ぶれ補正は、露光時間を短くすると共に、例えば、連続撮影により得られる複数の画像を、位置合わせをした後に合成することで実現される。
【０００３】
手ぶれは、撮影時にカメラが動くことにより発生する。ここで、カメラの動きは、図１に示す６つの要素により定義される。
（１）ＹＡＷ
（２）ＰＩＴＣＨ
（３）左右方向移動
（４）上下方向移動
（５）ＲＯＬＬ
（６）前後平行移動
ただし、カメラがＹＡＷ方向にぶれたときは、画像は近似的に水平方向にずれることになる。また、カメラがＰＩＴＣＨ方向にぶれたときは、画像は近似的に垂直方向にずれることになる。したがって、カメラの動き要素と画像のずれ成分との関係は、図２に示すようになる。
【０００４】
手ぶれ補正処理では、例えば、連続撮影により得られる２枚の画像（第１および第２の画像）の間でのぶれ量が検出され、そのぶれ量を補償するように第２の画像が変換（例えば、アフィン変換）される。すなわち、位置合わせが行われる。そして、第１の画像および変換後の第２の画像を合成することにより、手ぶれが補正された画像が得られる。
【０００５】
なお、アフィン変換を利用する画像認識技術として、下記の方法が知られている。画像認識装置において、特徴点抽出部は、モデル画像及びオブジェクト画像から特徴点を抽出する。特徴量保持部は、各特徴点について特徴量を抽出し、特徴点の位置情報と共に保持する。特徴量比較部は、特徴量同士を比較して類似度又は相違度を計算し、特徴点ペア候補を生成する。モデル姿勢推定部は、３組の特徴点ペア候補を利用してアフィン変換パラメータを求め、このアフィン変換パラメータで決定されるモデル姿勢を出力する。（例えば、特許文献１）
また、他の関連する技術として、画像から抽出した特徴点の位置および相対的な動きを検出して動体物を認識する方法が知られている。（例えば、特許文献２）
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−３２６６９３号公報
【特許文献２】特開平５−７３６８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
手ぶれ補正においては、上述したように、例えば、連写撮影により得られる第１および第２の画像の差分を補償するように第２の画像が変換（例えば、アフィン変換）され、第１の画像と変換後の第２の画像とが合成される。しかし、アフィン変換では、変換前の画像の各画素および変換後の画像の各画素が１対１に対応するわけではない。すなわち、変換後の画像の各画素は、一般に、変換前の画像の複数の画素により表される。例えば、図３に示す例では、変換後の画像の画素Ｅは、変換前の画像の４つの画素Ａ〜Ｄにより表される。
【０００８】
ここで、変換後の画素Ｅの画素値として、例えば、画素Ａ〜Ｄの中の１つ（例えば、画素Ｃ）の画素値を使用することができる。しかし、この方法では、画像の輪郭線にジャギーが発生するおそれがある。
【０００９】
この問題を解決するためには、例えば、周辺の画素の画素値を利用して補間を行う方法が知られている。ここで、画素値を線形補間することにより変換後の画像が再生される場合、画素Ｅの画素値Ｐは、下式で計算される。
Ｐ＝Ｓa・Ｐa＋Ｓb・Ｐb＋Ｓc・Ｐc＋Ｓd・Ｐd
Ｐa〜Ｐdは、画素Ａ〜Ｄの画素値
Ｓa〜Ｓdは、画素Ｅが画素Ａ〜Ｄ上に占める面積
しかし、変換後の画像の各画素値がその周辺の画素値を利用して補間される場合、画像がぼけることがある。この場合、合成画像の画質も劣化してしまう。
【００１０】
なお、この問題は、アフィン変換を行う場合に限らず、画像間の位置合わせのために他のアルゴリズムで画像変換を行う場合にも発生し得る。
本発明の課題は、連写撮影により得られる複数の画像を利用して生成する合成画像の画質を向上させることである。
【課題を解決するための手段】
【００１１】
本発明の１つの態様に係る画像処理方法は、連写撮影により得られる複数の画像から合成画像を作成する方法であって、前記複数の画像の中から選択される基準画像と前記複数の画像の中の他の画像との間のずれ量を表す平行移動成分、回転角、拡大／縮小率を算出し、前記算出された回転角および拡大／縮小率をそれぞれ対応する閾値と比較し、前記比較の結果に応じて、前記他の画像を変換するために前記算出された回転角および拡大／縮小率を使用するか否かをそれぞれ判定し、前記判定の結果に応じて前記他の画像を変換し、前記基準画像と前記変換された画像、或いは前記変換された画像どうしを合成する。
【００１２】
この方法においては、画像間の回転角および拡大／縮小率に応じて、画質を向上させるように画像変換方法が判定される。
上記画像処理方法において、前記回転角および拡大／縮小率の双方とも使用しないと判定されたときは、変換対象画像の各画素を、前記算出された平行移動成分に従って画素単位でシフトするようにしてもよい。
【発明の効果】
【００１３】
開示の装置または方法によれば、連写撮影により得られる複数の画像を利用して生成する合成画像の画質が向上する。
【図面の簡単な説明】
【００１４】
【図１】カメラの動き要素について説明する図である。
【図２】カメラの動き要素と画像のずれ成分との関係をまとめた表である。
【図３】画素値の線形補間について説明する図である。
【図４】手ぶれ補正処理の一例を示すフローチャートである。
【図５】アフィン変換による画像変換の例を示す図である。
【図６】第１の実施形態の画像処理装置の構成を示す図である。
【図７】第１の実施形態の画像処理装置の動作を示すフローチャートである。
【図８】第１の実施形態の画像処理装置の他の動作を示すフローチャートである。
【図９】第２の実施形態の画像処理装置の構成を示す図である。
【図１０】撮影情報に応じて閾値を決定する方法を説明する図である。
【図１１】第３の実施形態の画像処理装置の構成を示す図である。
【図１２】画像処理装置のハードウェア構成を示す図である。
【発明を実施するための形態】
【００１５】
デジタルカメラ（または、電子カメラ）は、手ぶれの影響を抑えるための機能が要求されることがある。ここで、画像撮影のための露光時間を短くすれば、手ぶれの影響は抑制される。しかし、露光時間が短いと、画像にノイズが生じる。このため、電子的手ぶれ補正では、一般に、ランダムなノイズを抑制するために、連写撮影により得られる複数の画像が合成される。そして、短時間露光撮影と画像合成により、手ぶれの少ない、かつ、ノイズが抑制された、手ぶれ補正画像を得ることができる。
【００１６】
図４は、手ぶれ補正処理の一例を示すフローチャートである。ここでは、連続撮影により得られる２枚の画像を利用して手ぶれが補正されるものとする。
ステップＳ１では、通常よりも露光時間の短い連続撮影により２枚の画像（第１の画像および第２の画像）が生成される。ステップＳ２では、第１の画像に対する第２の画像のずれ量が算出される。ステップＳ３では、算出されたずれ量を補正するように、第２の画像を変換する。ステップＳ４では、第１の画像と変換された第２の画像とを合成する。これにより、手ぶれ補正画像が生成される。
【００１７】
上記ステップＳ３では、例えば、下記（１）式によるアフィン変換が行われる。
【数１】
2010232710.tif 000003
ここで、「dx」は水平方向ずれ量であり、「dy」は垂直方向ずれ量である。「θ」はカメラのＲＯＬＬ方向のずれの回転角である。「Ｓ」は、カメラが遠近方向に動くことにより発生する拡大／縮小率である。（ｘ，ｙ）は、変換前の画像の座標であり、（ｘ’，ｙ’）は、変換後の画像の座標である。アフィン変換による画像変換の例を図５に示す。図５に示す例では、画像は、アフィン変換により、平行移動すると共に、時計方向に回転している。
【００１８】
図６は、第１の実施形態の画像処理装置の構成を示す図である。この画像処理装置は、特に限定されるものではないが、例えば、デジタルカメラ（または、電子カメラ）に搭載される。
【００１９】
画像入力部１は、例えば、ＣＣＤイメージセンサまたはＣＭＯＳイメージセンサを含んで構成され、デジタル画像を生成する。なお、画像入力部１は、連写撮影機能を備えている。この実施例では、画像入力部１は、１回のシャッタ押圧操作により、短い時間内に撮影される連続する２枚の画像（第１の画像および第２の画像）を得ることができる。
【００２０】
画像保持部２Ａ、２Ｂは、それぞれ、画像入力部１により得られる第１の画像および第２の画像を保持する。画像保持部２Ａ、２Ｂは、例えば、半導体メモリである。
ぶれ量算出部３は、第１および第２の画像間のぶれ量を算出する。画像間のぶれ量は、特に限定されるものではないが、例えば下記の手順で算出される。
（１）画像保持部２Ａに保持されている第１の画像において、各画素の特徴量がそれぞれ算出される。各画素の特徴量は、例えば、ＫＬＴ法またはモラベックオペレータにより算出される。そして、予め決められている閾値レベルよりも大きな特徴量を有する１または複数の画素が、特徴点として抽出される。このとき、複数の特徴点が抽出されることが好ましい。
（２）画像保持部２Ｂに保持されている第２の画像において、第１の画像から抽出された各特徴点がそれぞれ探索される。
（３）第１および第２の画像間で、対応する特徴点の移動量が算出される。
（４）各特徴点の移動量に基づいて、ぶれの平行移動量（ｄｘ、ｄｙ）、回転角（θ）、拡大／縮小率Ｓが算出される。なお、平行移動量は、この実施例では、１画素を単位として表される。
【００２１】
判定部４は、ぶれ量算出部３により得られるぶれ量に基づいて、画像変換方法を判定する。この例では、「画像シフト」または「アフィン変換」が選択される。なお、画像変換方法を判定する手順については、後で詳しく説明する。
【００２２】
スイッチ５は、判定部４による判定結果に応じて、画像保持部２Ｂに保持されている第２の画像を、画像シフト部６または画像変換部７に導く。この実施例では、判定部４により「画像シフト」が選択されると、第２の画像は画像シフト部６に入力され、判定部４により「アフィン変換」が選択されると、第２の画像は画像変換部７に入力される。
【００２３】
画像シフト部６は、ぶれ量算出部３により得られるぶれ量に基づいて、第２の画像の各画素を水平方向および／または垂直方向にシフトさせる。例えば、第１および第２の画像間のぶれ量の平行移動量が「ｄｘ＝＋５画素、ｄｙ＝＋３画素」であれば、画像シフト部６は、第２の画像の各画素を水平方向に５画素分シフトさせると共に、垂直方向に３画素分シフトさせる。なお、算出されたぶれ量の平行移動量が小数で表される場合は、この実施例では、切捨て、切上げ、または四捨五入により、平行移動量は、整数値に丸め込まれる。
【００２４】
画像変換部７は、ぶれ量算出部３により算出されるぶれ量に基づいて、第２の画像に対してアフィン変換を実行する。アフィン変換は、上記（１）式で示した通りである。このように、画像シフト部６および画像変換部７は、第１および第２の画像間の位置を合わせるために、ぶれ量を補償するように第２の画像を変換する。
【００２５】
スイッチ８は、判定部４による判定結果に応じて、画像シフト部６または画像変換部７から出力される画像を選択する。すなわち、判定部４により「画像シフト」が選択されると、スイッチ８は、画像シフト部６によりシフト処理が行われた画像を選択する。また、判定部４により「アフィン変換」が選択されると、スイッチ８は、画像変換部７によりアフィン変換された画像を選択する。
【００２６】
なお、実施形態の画像処理装置は、スイッチ５を備えなくてもよい。この場合、画像シフト部６および画像変換部７はそれぞれ対応する処理を実行して変換画像を生成する。そして、スイッチ８は、判定部４による判定結果に応じて、生成される画像の一方を選択する。
【００２７】
画像合成部９は、画像保持部２Ａに保持されている第１の画像と、スイッチ８により選択される画像とを合成する。ここで、スイッチ８により選択される画像は、第１および第２の画像間のぶれが補償された第２の画像である。したがって、画像合成部９は、第１および第２の画像の対応する同じ位置の画素値をそれぞれ足し合わせることにより、第１の画像および補正後の第２の画像を合成する。なお、画像合成部９は、画像合成に際して被写体の動きを検出し、合成重みを適切に調整するようにしてもよい。この機能を備える場合、被写体の動きに起因する画像の多重化が抑制される。
【００２８】
図７は、第１の実施形態の画像処理装置の動作を示すフローチャートである。なお、図７は、ぶれ量を算出して画像を変換するまでの処理を示している。
ステップＳ１１において、ぶれ量算出部３は、基準画像と他の画像との間のずれ量を算出する。ステップＳ１１により、ぶれの平行移動量（ｄｘ、ｄｙ）、回転角（θ）、拡大／縮小率Ｓが算出される。なお、基準画像および他の画像は、図６に示す構成では、画像保持部２Ａ、２Ｂに保持されている第１の画像および第２の画像に相当する。
【００２９】
ステップＳ１２において、判定部４は、ステップＳ１１で得られた回転角θと回転角閾値とを比較する。また、ステップＳ１３において、判定部４は、ステップＳ１１で得られた拡大／縮小率Ｓと拡大／縮小率閾値とを比較する。そして、回転角θが回転角閾値よりも小さく、かつ、拡大／縮小率Ｓが拡大／縮小率閾値よりも小さいときは、ステップＳ１４が実行される。他の場合は、ステップＳ１５が実行される。
【００３０】
なお、カメラは、連写撮影時に、時計回り方向に回転することもあるし、反時計回り方向に回転することもある。よって、ステップＳ１２においては、回転角θが閾値範囲（例えば、±３度）に入っているか否かがチェックされる。ただし、以下の説明では、「回転角θが閾値よりも小さい」は、回転角θが所定の閾値範囲に入っていることを意味するものとする。
【００３１】
同様に、連写撮影時にカメラが被写体に近づく方向に動いたときは、拡大／縮小率Ｓは１よりも大きくなり、連写撮影時にカメラが被写体から遠ざかる方向に動いたときは、拡大／縮小率Ｓは１よりも小さくなる。したがって、ステップＳ１３においては、拡大／縮小率Ｓが所定の閾値範囲（例えば、０．９〜１．１）に入っているか否かがチェックされる。ただし、以下の説明では、「拡大／縮小率Ｓが閾値よりも小さい」は、拡大／縮小率Ｓが所定の閾値範囲に入っていることを意味するものとする。
【００３２】
ステップＳ１４において、画像シフト部６は、他の画像に対してアドレス変換を実行する。アドレス変換は、すべて画素の位置を同じ量（ｄｘ、ｄｙ）だけシフトする処理に相当する。すなわち、他の画像は、基準画像に対する位置ずれを補正するために、ぶれの平行移動量だけシフトされる。一方、ステップＳ１５においては、画像変換部７は、他の画像に対してアフィン変換を実行する。アフィン変換は、上記（１）式を使用する。この後、基準画像と、ステップＳ１４またはＳ１５により変換された他の画像が合成される。
【００３３】
図８は、第１の実施形態の画像処理装置の他の動作を示すフローチャートである。このフローチャートでは、連写撮影により得られる第１および第２の画像が入力されるものとする。
【００３４】
ステップＳ２１において、ぶれ量算出部３は、第１および第２の画像間のずれ量を算出する。ステップＳ２１により、ぶれの平行移動量ｄｘ、ｄｙ、回転角θ、拡大／縮小率Ｓが算出される。
【００３５】
ステップＳ２２〜Ｓ２４において、判定部４は、ステップＳ２１で得られた回転角θおよび拡大／縮小率Ｓと、回転角閾値（閾値１）および拡大／縮小率閾値（閾値２）とを、それぞれ比較する。ここで、回転角閾値は、特に限定されるものではないが、画像変換を行うことなく第１および第２の画像を合成したときに、画像の端部領域であっても画質の劣化が十分に小さくなる角度を表す。また、拡大／縮小率閾値は、特に限定されるものではないが、画像変換を行うことなく第１および第２の画像を合成したときに、画像の端部領域であっても画質の劣化が十分に小さくなる拡大／縮小率を表す。
【００３６】
回転角θが閾値１よりも小さく、且つ、拡大／縮小率Ｓが閾値２以上であれば、ステップＳ２５が実行される（ケース１）。ステップＳ２５では、平行移動量ｄｘ、ｄｙ、および拡大／縮小率Ｓを利用して第２の画像が変換される。
【００３７】
回転角θが閾値１よりも小さく、且つ、拡大／縮小率Ｓが閾値２よりも小さければ、ステップＳ２６が実行される（ケース２）。ステップＳ２６では、平行移動量ｄｘ、ｄｙのみを利用して第２の画像が変換される。
【００３８】
回転角θが閾値１以上であり、且つ、拡大／縮小率Ｓが閾値２よりも小さければ、ステップＳ２７が実行される（ケース３）。ステップＳ２７では、平行移動量ｄｘ、ｄｙ、および回転角θを利用して第２の画像が変換される。
【００３９】
回転角θが閾値１以上であり、且つ、拡大／縮小率Ｓも閾値２以上であれば、ステップＳ２８が実行される（ケース４）。ステップＳ２８では、平行移動量ｄｘ、ｄｙ、回転角θ、および拡大／縮小率Ｓを利用して第２の画像が変換される。
【００４０】
そして、ステップＳ２９において、画像合成部９は、第１の画像およびステップＳ２５〜Ｓ２８のいずれか１つにより変換された第２の画像を合成して出力する。
次に、図８に示すフローチャートによる処理の実施例を示す。この実施例では、回転角閾値（閾値１）が「±３度」であり、拡大／縮小率閾値（閾値２）が「０．９〜１．１」であるものとする。また、ステップＳ２５、Ｓ２７、Ｓ２８では、アフィン変換が実行されるものとする。
【００４１】
ケース１：ｄｘ＝＋５．２画素、ｄｙ＝＋３．１画素、θ＝２度、Ｓ＝１．２
この場合、ステップＳ２２で「Ｙｅｓ」と判定され、ステップＳ２３で「Ｎｏ」と判定されるので、ステップＳ２５が実行される。ステップＳ２５において実行されるアフィン変換では、上記（１）式において「ｄｘ＝＋５．２」「ｄｙ＝＋３．１」「θ＝０」「Ｓ＝１．２」が入力される。なお、アフィン変換を実行した後、画像の輪郭線を滑らかにするために、図３に示す補間処理が実行される。補間処理は、後述するケース３、４においても実行される。
【００４２】
ケース２：ｄｘ＝＋５．２画素、ｄｙ＝＋３．１画素、θ＝２度、Ｓ＝１．０５
この場合、ステップＳ２２で「Ｙｅｓ」と判定され、ステップＳ２３で「Ｙｅｓ」と判定されるので、ステップＳ２６が実行される。ステップＳ２６においては、まず、平行移動量ｄｘ、ｄｙが整数値に丸め込まれる。すなわち、「ｄｘ＝＋５画素」「ｄｙ＝＋３画素」が得られる。この場合、第２の画像の各画素は、水平方向に「＋５画素」、垂直方向に「＋３画素」だけシフトされる。すなわち、アフィン変換は実行されない。
【００４３】
ケース３：ｄｘ＝＋５．２画素、ｄｙ＝＋３．１画素、θ＝４度、Ｓ＝１．０５
この場合、ステップＳ２２で「Ｎｏ」と判定され、ステップＳ２４で「Ｙｅｓ」と判定されるので、ステップＳ２７が実行される。ステップＳ２７において実行されるアフィン変換では、上記（１）式において「ｄｘ＝＋５．２」「ｄｙ＝＋３．１」「θ＝４」「Ｓ＝１」が入力される。
【００４４】
ケース４：ｄｘ＝＋５．２画素、ｄｙ＝＋３．１画素、θ＝４度、Ｓ＝１．２
この場合、ステップＳ２２で「Ｎｏ」と判定され、ステップＳ２４で「Ｎｏ」と判定されるので、ステップＳ２８が実行される。ステップＳ２８において実行されるアフィン変換では、上記（１）式において「ｄｘ＝＋５．２」「ｄｙ＝＋３．１」「θ＝４」「Ｓ＝１．２」が入力される。
【００４５】
このように、回転ぶれおよび拡大／縮小ぶれの双方が小さいときは、回転および拡大／縮小を補償するための画像処理は実行されない。ここで、回転または拡大／縮小が発生すると、画像の端部領域において、第１および第２の画像間での位置ずれが大きくなる。ただし、回転角θが小さく、拡大／縮小率が１に近いときは、画像の端部領域であっても、回転または拡大／縮小に起因する位置ずれは小さい。一方、デジタルカメラにおいては、一般に、ピントが合っている場合であっても、レンズの収差により数画素分のぼけが生じる。したがって、回転ぶれおよび拡大／縮小ぶれの双方が小さいときは、回転および拡大／縮小に起因する位置ずれを補償しなくても、画質の劣化は実質的に生じない。
【００４６】
また、回転ぶれおよび拡大／縮小ぶれの双方が小さいときは、第１および第２の画像の位置を合わせるための画像変換は、各画素を水平方向および／または垂直方向にシフトすることにより実現される。このとき、各画素のシフト量は、実際の平行移動量ｄｘ、ｄｙを整数値に丸め込むことにより算出される。このため、画像シフト量は、実際のずれ量の水平移動量ｄｘ、ｄｙに対して、丸め込み処理に起因する誤差を含む。しかし、この誤差は、常に１画素以下であり、また、画像内の全領域において均一である。したがって、上述したレンズの収差に起因するぼけを考慮すると、画素シフトが誤差を含んでいても、画質の劣化は実質的に生じない。
【００４７】
さらに、画像シフトにより第２の画像を変換する場合には、すべての画素が均一にシフトするので、図３に示す補間処理を実行しなくても、輪郭線に大きなジャギーが発生することはない。すなわち、補間処理が実行されないので、位置合わせのための画像変換に起因してぼけが生じることはない。この結果、合成画像の品質が向上する。
【００４８】
さらに、画像シフト部６による画像変換は、アフィン変換と比較して演算量が少ない。すなわち、回転ぶれおよび拡大／縮小ぶれの双方が小さいときは、画像合成のための演算量を削減しながら、画質を向上させることができる。
【００４９】
なお、上述の実施例では、２枚の入力画像が合成されているが、実施形態の画像処理装置は、３枚以上の画像を利用して合成画像を生成することもできる。例えば、第１〜第３の画像が入力され、第１の画像が基準画像として選択されるものとする。この場合、判定部４は、例えば、第１、第２の画像間のぶれに応じて第２の画像の変換方法を決定し、第１、第３の画像間のぶれに応じて第３の画像の変換方法を決定する。そして、画像合成部９は、第１の画像、変換後の第２の画像、変換後の第３の画像を合成する。あるいは、画像合成部９は、変換後の第２の画像および変換後の第３の画像を合成するようにしてもよい。
【００５０】
上記構成の画像処理装置は、ハードウェア回路で実現することができる。あるいは、この画像処理装置の一部の機能をソフトウェアで実現するようにしてもよい。例えば、ぶれ量算出部３、判定部４、画像シフト部６、画像変換部７、画像合成部９の一部または全部をソフトウェアで実現するようにしてもよい。
【００５１】
図９は、第２の実施形態の画像処理装置の構成を示す図である。第２の実施形態においては、画像変換方法を判定するための回転角閾値および拡大／縮小率閾値は、撮影状態などに応じて変化する。
【００５２】
画像入力部１は、第１の実施形態と同様の機能に加えて、撮影情報を生成して閾値決定部１１に通知する。撮影情報は、この実施例では、露光時間および撮影画像の解像度である。閾値決定部１１は、画像入力部１から通知される撮影情報に基づいて、回転角閾値および拡大／縮小率閾値を決定する。
【００５３】
図８に示すフローチャートの処理においては、回転角θが閾値よりも小さいときは、位置合わせのための画像変換において回転角θが無視される。拡大／縮小率Ｓについても同様である。すなわち、閾値（回転角閾値または拡大／縮小率閾値）を大きくすると、回転ぶれまたは拡大／縮小ぶれに起因する位置ずれが補償されにくくなるので、回転ぶれまたは拡大／縮小ぶれによって画質が劣化しやすくなる。
【００５４】
一方、露光時間が長くなると、画像のぼけ幅は大きくなる。このため、露光時間が長い場合には、閾値を大きくしても、画質の劣化は表れにくい。したがって、閾値決定部１１は、図１０（ａ）に示すように、露光時間が短いときは小さい閾値を設定し、露光時間が長いときは大きい閾値を設定する。
【００５５】
また、画像の解像度が高ければ（すなわち、画像の画素数が多ければ）、特に画像の端部領域においては、回転または拡大／縮小によるずれ幅は大きくなる。したがって、閾値決定部１１は、図１０（ｂ）に示すように、解像度が高いときは小さい閾値を設定し、解像度が低いときは大きい閾値を設定する。なお、解像度が高いときは、レンズ収差に起因するぼけ幅は広がりやすい。よって、解像度に基づいて閾値を決定する際には、レンズ収差を考慮することが好ましい。
【００５６】
なお、図１０は、撮影情報と閾値との関係の傾向を示すものであり、閾値は、撮影情報に対して必ずしも直線的に変化するものではない。閾値は、シミュレーション等を利用して適切に決定することができる。
【００５７】
図１１は、第３の実施形態の画像処理装置の構成を示す図である。第３の実施形態においては、画像変換方法を判定するための回転角閾値および拡大／縮小率閾値は、画像の尖鋭度（エッジのシャープさ）に応じて変化する。
【００５８】
尖鋭度算出部１２は、入力画像（ここでは、第１の画像）の尖鋭度を算出する。すなわち、尖鋭度算出部１２は、例えば、Sobelフィルタを利用して画像のエッジを抽出し、そのエッジの強度から尖鋭度を算出する。閾値決定部１３は、算出された尖鋭度に基づいて閾値を決定する。このとき、閾値決定部１３は、例えば、画像全体の平均尖鋭度に基づいて閾値を決定するようにしてもよい。そして、閾値決定部１３は、エッジが急峻な画像に対して小さい閾値を設定し、エッジが緩やかな画像に対しては大きい閾値を設定する。
【００５９】
このように第１〜第３の実施形態の画像処理装置によれば、デジタルカメラの手ぶれ成分のうち、回転（回転ぶれ）および拡大／縮小（前後移動ぶれ）が閾値よりも小さいときは、アフィン変換は実行されず、また、画素の線型補間も実行されない。したがって、画像変換によるぼけは生じないので、合成画像の画質も向上する。また、画像変換方法を設定するための閾値は、露光時間、画像の解像度、画像の尖鋭度に応じて適切に調整されるので、回転（回転ぶれ）および拡大／縮小（前後移動ぶれ）による影響を無視することで生じる画像劣化は低減される。
なお、実施形態の画像処理方法は、手ぶれ補正だけでなく、他の画像合成技術にも適用可能である。例えば、実施形態の方法は、モザイキングに適用することもできる。
【００６０】
図１２は、第１〜第３の実施形態の画像処理装置（また、画像処理装置を使用するコンピュータ）のハードウェア構成を示す図である。図１２において、ＣＰＵ１０１は、メモリ１０３を利用して画像処理プログラムを実行する。記憶装置１０２は、画像処理プログラムを格納する。なお、記憶装置１０２は、外部記録装置であってもよい。メモリ１０３は、例えば半導体メモリであり、ＲＡＭ領域およびＲＯＭ領域を含んで構成される。
【００６１】
読み取り装置１０４は、ＣＰＵ１０１の指示に従って可搬型記録媒体１０５にアクセスする。可搬性記録媒体１０５は、例えば、半導体デバイス（ＰＣカード等）、磁気的作用により情報が入出力される媒体、光学的作用により情報が入出力される媒体を含むものとする。通信インタフェース１０６は、ＣＰＵ１０１の指示に従って、ネットワークを介してデータを送受信する。入出力装置１０７は、この実施例では、カメラ、表示装置、ユーザからの指示を受け付けるデバイス等に相当する。
【００６２】
実施形態に係わる画像処理プログラムは、例えば、下記の形態で提供される。
（１）記憶装置１０２に予めインストールされている。
（２）可搬型記録媒体１０５により提供される。
（３）プログラムサーバ１１０からダウンロードする。
そして、上記構成のコンピュータで画像処理プログラムを実行することにより、実施形態に係わる画像処理装置が実現される。
【００６３】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
（付記１）
連写撮影により得られる複数の画像から合成画像を作成する画像処理方法であって、
前記複数の画像の中から選択される基準画像と前記複数の画像の中の他の画像との間のずれ量を表す平行移動成分、回転角、拡大／縮小率を算出し、
前記算出された回転角および拡大／縮小率をそれぞれ対応する閾値と比較し、
前記比較の結果に応じて、前記他の画像を変換するために前記算出された回転角および拡大／縮小率を使用するか否かをそれぞれ判定し、
前記判定の結果に応じて前記他の画像を変換し、
前記基準画像と前記変換された画像、或いは前記変換された画像どうしを合成する
ことを特徴とする画像処理方法。
（付記２）
付記１に記載の画像処理方法であって、
前記回転角および拡大／縮小率の双方とも使用しないと判定されたときは、変換対象画像の各画素を、前記算出された平行移動成分に従って画素単位でシフトさせる
ことを特徴とする画像処理方法。
（付記３）
付記１に記載の画像処理方法であって、
前記閾値は、画像を撮影するための露光時間に応じて決定される
ことを特徴とする画像処理方法。
（付記４）
付記１に記載の画像処理方法であって、
前記閾値は、撮影された画像の解像度に応じて決定される
ことを特徴とする画像処理方法。
（付記５）
付記１に記載の画像処理方法であって、
前記閾値は、撮影された画像の先鋭度に応じて決定される
ことを特徴とする画像処理方法。
（付記６）
付記１に記載の画像処理方法であって、
前記回転角を使用すると判定されたときは、前記算出された平行移動成分および回転角を利用して変換対象画像をアフィン変換する
ことを特徴とする画像処理方法。
（付記７）
付記１に記載の画像処理方法であって、
前記拡大／縮小率を使用すると判定されたときは、前記算出された平行移動成分および拡大／縮小率を利用して変換対象画像をアフィン変換する
ことを特徴とする画像処理方法。
（付記８）
連写撮影により得られる複数の画像から合成画像を作成する画像処理装置であって、
前記複数の画像の中から選択される基準画像と前記複数の画像の中の他の画像との間のずれ量を表す平行移動成分、回転角、拡大／縮小率を算出する算出部と、
前記算出部により算出された回転角および拡大／縮小率をそれぞれ対応する閾値と比較する比較部と、
前記比較部による比較の結果に応じて、前記他の画像を変換するために前記算出された回転角および拡大／縮小率を使用するか否かをそれぞれ判定する判定部と、
前記判定部による判定の結果に応じて前記他の画像を変換する変換部と、
前記基準画像と前記変換された画像、或いは前記変換された画像どうしを合成する合成部、
を有する画像処理装置。
（付記９）
連写撮影により得られる複数の画像から合成画像を作成するために、コンピュータに、
前記複数の画像の中から選択される基準画像と前記複数の画像の中の他の画像との間のずれ量を表す平行移動成分、回転角、拡大／縮小率を算出する手順、
前記算出された回転角および拡大／縮小率をそれぞれ対応する閾値と比較する手順、
前記比較の結果に応じて、前記他の画像を変換するために前記算出された回転角および拡大／縮小率を使用するか否かをそれぞれ判定する手順、
前記判定の結果に応じて前記他の画像を変換する手順、
前記基準画像と前記変換された画像、或いは前記変換された画像どうしを合成する手順
を実行させる画像処理プログラム。
【符号の説明】
【００６４】
１  画像入力部
２Ａ、２Ｂ  画像保持部
３  ぶれ量算出部
４  判定部
５、８  スイッチ
６  画像シフト部
７  画像変換部
９  画像合成部
１１、１３  閾値決定部
１２  尖鋭度算出部
【図１】
2010232710.tif 000004
【図２】
2010232710.tif 000005
【図３】
2010232710.tif 000006
【図４】
2010232710.tif 000007
【図５】
2010232710.tif 000008
【図６】
2010232710.tif 000009
【図７】
2010232710.tif 000010
【図８】
2010232710.tif 000011
【図９】
2010232710.tif 000012
【図１０】
2010232710.tif 000013
【図１１】
2010232710.tif 000014
【図１２】
2010232710.tif 000015