≪第1実施形態≫
図1は、第1実施形態の画像処理装置、画像処理方法及び画像処理プログラムを搭載したカメラユニット付き電子機器1の概略構成を示すブロック図である。
電子機器1は、例えば、デジタルカメラ、携帯電話、ゲーム機器等の撮影機能を搭載した各種機器とすることができるが、本実施形態では、電子機器1がデジタルカメラである場合を例示して説明する。あるいは、電子機器1は、撮影機能を搭載することなく、画像の入力を受けて当該画像に画像処理を施すPC等の各種機器とすることもできる。詳しくは後述するが、本実施形態の電子機器1は、一例として手振れを利用したマルチショット合成を実行できるので、手振れを起こし易い撮影機能を有する携帯型の電子機器に搭載して好適である。
デジタルカメラ1は、カメラボディCBの内部に、カメラユニット(撮影部)10と、画像処理装置(プロセッサ)20と、メモリ(例えばRAM)30と、記録媒体(例えばUSBメモリ)40と、表示装置(表示部)(例えばLCD)50と、入力装置(切替部)60と、センサ70と、防振ユニット(手振れ補正機構)80と、CPU90と、これらの各構成要素を直接的又は間接的に接続するバス100とを有している。なお、画像処理装置(プロセッサ)20とCPU90は、同一のハードウェアにより構成されてもよいし、別々のハードウェアにより構成されてもよい。
カメラユニット10は、撮影光学系(図示略)と、イメージセンサ11(図2)とを有している。撮影光学系による被写体像はイメージセンサ11の受光面上に結像され、マトリックス状に配置された検出色の異なる複数の画素によって電気信号に変換され、画像として画像処理装置20に出力される。画像処理装置20は、カメラユニット10による画像に所定の画像処理を施す。画像処理装置20により画像処理が施された画像は、メモリ30に一時的に記録される。メモリ30に記録された画像は、ユーザの選択・決定に従って、記録媒体40に保存され、表示装置50に表示される。
入力装置60は、例えば、電源スイッチ、レリーズスイッチ、各種機能の選択・設定を実行するためのダイヤルスイッチ、四方向スイッチ、タッチパネル等から構成される。センサ70は、例えば、デジタルカメラ1のボディ本体に加えられる加速度、角速度、角加速度を検出する加速度検出器、角速度検出器、角加速度検出器等から構成される。センサ70による出力は、デジタルカメラ1のボディ本体の振れを示す振れ検出信号として、CPU90に入力される。
防振ユニット80は、カメラユニット10の撮影光学系とイメージセンサ11の少なくとも一方を移動部材(駆動部材)として、当該移動部材を撮影光学系の光軸と異なる方向に(例えば撮影光学系の光軸と直交する平面内で)駆動する。CPU90は、防振ユニット80を駆動制御する。CPU90は、センサ70からデジタルカメラ1のボディ本体の振れを示す振れ検出信号の入力を受けて、防振ユニット80によって移動部材を撮影光学系の光軸と異なる方向に駆動する。これにより、イメージセンサ11における被写体像の結像位置を変位させて、手振れに起因する像振れを補正することができる。なお、防振ユニット80の構成については後に詳細に説明する。
デジタルカメラ1は、防振ユニット80を利用して、カメラユニット10のイメージセンサ11を撮影光学系の光軸と異なる方向に(例えば撮影光学系の光軸と直交する平面内で)微細に移動させながら時系列に複数回の撮影を行い、その画像を1枚に合成(画像の単純な加算ではなくデータ上の画像処理による特殊演算を行っての合成)することで、超高精細(高画質、高精度)な画像を生成する撮影モード(マルチショット合成モード)を搭載している。「マルチショット合成モード」では、1画素あたり1つの色情報のみを取得する従来技術と異なり、1画素毎にRGB各色の情報を得ることで、細部までのディティールや色再現に優れた極めて高精細な画像を描き出すことができる。また、モアレや偽色が発生することが無く、高感度ノイズを低減する効果が得られる。
図2A~図2Dは、本実施形態のマルチショット合成モードの一例を示す概念図である。図2A~図2Dにおいて、イメージセンサ11は、受光面にマトリックス状に所定の画素ピッチで配置された多数の画素を備え、各画素の前面にベイヤ配列のカラーフィルタR、G(Gr、Gb)、Bのいずれかが配置されている。各画素は、前面のカラーフィルタR、G(Gr、Gb)、Bを透過して入射した被写体光線の色を検出、つまり、色成分(色帯域)の光を光電変換し、その強さ(輝度)に応じた電荷を蓄積する。より具体的に、図2Aの基準位置で1枚の画像を撮影し、そこから太枠で囲んだ光束領域をイメージセンサ11に対して1画素ピッチだけ下方に相対移動させた図2Bの位置で1枚の画像を撮影し、そこから太枠で囲んだ光束領域をイメージセンサ11に対して1画素ピッチだけ右方に相対移動させた図2Cの位置で1枚の画像を撮影し、そこから太枠で囲んだ光束領域をイメージセンサ11に対して1画素ピッチだけ上方に相対移動させた図2Dの位置で1枚の画像を撮影し、最後に図2Aの基準位置に戻る。このように、光軸直交平面内で、太枠で囲んだ光束領域をイメージセンサ11に対して1画素ピッチの正方形を描くように駆動しながら時系列に撮影した4枚の画像が、RAW画像データとして、画像処理装置20に入力される。画像処理装置20は、イメージセンサ11が時系列に撮影した4枚の画像を合成して合成画像を得る。
防振ユニット80を利用したマルチショット合成では、イメージセンサ11の画素単位の移動を保証するために、デジタルカメラ1のボディ本体を三脚等で位置決め固定しなければならない。これに対し、本実施形態では、防振ユニット80を利用することなく(手振れ補正駆動を行うことなく)、且つ、デジタルカメラ1のボディ本体を撮影者が手持ちした状態でも、マルチショット合成を実行可能である。すなわち、イメージセンサ11を能動的に動かすのではなく、撮影者の手振れ(揺らぎ)によるショット毎の画像のずれを利用して、マルチショット合成を行う。以下では、この撮影モードを「手振れ利用マルチショット合成モード」と呼ぶことがある。
デジタルカメラ1の入力装置(切替部)60を操作することで、「手振れ利用マルチショット合成モード(特定の撮影モード)」とそれ以外の撮影モード(例えば防振ユニット80を利用したマルチショット合成モード)を切り替えることができる。また、デジタルカメラ10の表示装置(表示部)50は、「手振れ利用マルチショット合成モード(特定の撮影モード)」が設定されていることを表示することができる。また、本実施形態の特定の撮影モード(特定の画像処理モード)は、上述した手振れ利用マルチショット合成モードの他にも、手振れを利用することなく連写撮影によって得た複数の画像、さらに指定のフォルダ、クラウドストレージ、動画等といった記録済みの画像群が存在する中から、構図やアングル、撮影時間、画質的特徴が近しい複数の画像を選択・抽出したものに適用する撮影モード(画像処理モード)を含むものとする。デジタルカメラ1の入力装置(切替部)60と表示装置(表示部)50は、この広い概念の特定の撮影モード(特定の画像処理モード)の切り替えと表示を実行することができる。
図3に示すように、画像処理装置(プロセッサ)20は、マルチショット合成を実行するための構成要素として、マッチング部21と、検出部22と、選択部23と、合成部24とを有している。
マッチング部21は、例えば、パターンマッチング等の画像の一致度を評価する手法、及び/又は、センサ70の出力を利用して、カメラユニット10が撮影した複数の画像がマルチショット合成に適しているか否かを判定する。複数の画像の枚数には自由度があり、その具体的な枚数は問わない。例えば、マッチング部21は、所定枚数(例えば4枚)の画像が入力した段階でマッチング処理を実行することができる。例えば、複数の画像が同構図や同アングルで連写モードを利用して撮影されたものである場合(例えば同一の被写体で相関がある場合)、当該複数の画像はマルチショット合成に適していると判定される可能性が高い。一方、複数の画像が構図やアングルを異ならせて時間的にずらして撮影されたものである場合(例えば異なる被写体で相関がない場合)、当該複数の画像はマルチショット合成に適していないと判定される可能性が高い。マッチング部21は、複数の画像がマルチショット合成に適していると判定した場合は当該マルチショット合成を続行し、複数の画像がマルチショット合成に適していないと判定した場合は当該マルチショット合成を中止することができる。
複数の画像(後述する基準画像、比較画像、合成対象画像を含み得る)は、相互に画素の相関があることが好ましい。例えば、複数の画像は、動画や連写で得られるような、撮影の対象や露出が極端に変化しないものであることが好ましい。一方、被写体が移動しない風景や写真等の場合、複数の画像は、一度に撮影した動画や連写に限らず、ある程度の時間をおいて撮影されたものであってもよい。また、被写体が同じであっても、撮影時期が昼と夜のように露出が異なる場合、後述する画像合成に不具合が発生するおそれがあるので、複数の画像は、相互の露出が概ね合っていることが好ましい。露出の異なる複数の画像を使用する場合、いずれかの画像に露出を合わせるような正規化を行うことにより、パターンマッチングの精度を向上させることができる。
複数の画像がマルチショット合成に適していないとマッチング部21が判定した場合、マルチショット合成に適した複数の画像が揃うまで、不要なフレームを捨てながら、カメラユニット10による撮影を繰り返すことができる。その際、マルチショット合成に適した複数の画像を得やすくするために、撮影条件を設定(制限)することができる。例えば、ISO感度、シャッタ速度、絞り開度、焦点距離、撮影距離、環境の明るさ等の撮影条件を設定(制限)することができる。また、信号対雑音比(S/N比)が悪い場合には、カメラユニット10による撮影枚数を増やすことができる。
マッチング部21に入力される複数の画像は、カメラユニット10が撮影した直後のものに限定されない。例えば、指定のフォルダ、クラウドストレージ、動画等といった記録済みの画像群が存在する中から、構図やアングル、撮影時間、画質的特徴が近しい複数の画像を選択・抽出することができる。この選択・抽出の処理を連続的に繰り返す場合は、複数の画像をN枚の独立した組としてもよいし、N-1枚のオーバーラップを持った組としてもよい。
検出部22は、マッチング部21によりマルチショット合成に適していると判定された複数の画像の画素ずれ量(位置ずれ量)を検出する。検出部22は、例えば、特許第4760923号公報に開示されているブロックマッチング等の周知技術を用いて、複数の画像の画素ずれ量を確実かつ精密に検出することができる。また検出部22は、以下で説明する各種の手法によっても、複数の画像の画素ずれ量を確実かつ精密に検出することができる。
検出部22は、例えば、センサ70を構成する加速度検出器、角速度検出器、角加速度検出器の少なくとも1つの出力に基づいて、複数の画像の画素ずれ量を検出することができる。
検出部22は、イメージセンサ11の画素出力に基づいて、ピクセル毎又はサブピクセル毎に、複数の画像の画素ずれ量を検出することができる。さらに、検出部22は、イメージセンサ11の画素出力に基づいて、RGBプレーン毎に、複数の画像の画素ずれ量を検出することができる。その際、検出部22は、RGBプレーンのうちの特定のRGBプレーンだけを使用してもよいし、使用するRGBプレーンを変動させてもよい。例えば、第1の画像と第2の画像の画素ずれ量を検出するときにはGプレーンを使用して、第3の画像と第4の画像の画素ずれ量を検出するときにはRプレーンを使用するといった柔軟な対応が可能である。
検出部22は、上述したセンサ70の出力を利用した検出態様とイメージセンサ11の画素出力を利用した検出態様を組み合わせることができる。すなわち、センサ70の出力を利用して画素ずれ量の方向性におおよその見当をつけた後に、イメージセンサ11の画素出力を利用して精密な画素ずれ量を検出することができる。
検出部22は、イメージセンサ11の画素出力に特定用途の画素出力が含まれている場合、当該特定用途の画素出力を除外するか、低い重み付けを与えて画素ずれ量を検出することができる。特定用途の画素出力とは、例えば、撮影に無関係な位相差検出画素などを含むことができる。
選択部23は、検出部22が検出した複数の画像の画素ずれ量に応じて、当該複数の画像から合成対象画像を選択する。より具体的に、選択部23は、複数の画像のいずれかの画像を基準画像に設定するとともに残りの画像を比較画像に設定して、基準画像と比較画像の画素ずれ量に応じて、比較画像から合成対象画像を選択する。
図4は、連写で撮影した4枚の画像の1枚を基準画像に設定するとともに残りの3枚を比較画像1~比較画像3に設定した場合を示す概念図である。図4Aが基準画像を示しており、図4B~図4Dが比較画像1~比較画像3を示している。見た目で判別するのは難しいが、基準画像と比較画像1~比較画像3の間には、微小画素(例えば数画素)レベルの画素ずれが存在している。この画素ずれは、例えば、デジタルカメラ1のボディ本体を持つ撮影者の手振れ(揺らぎ)に起因する。本実施形態では、基準画像と比較画像1~比較画像3の間の画素ずれを、防振ユニット80を利用したマルチショット合成におけるイメージセンサ11の駆動量(図2参照)と同視することにより、防振ユニット80を利用することなくマルチショット合成を実行する。
選択部23は、基準画像の画素座標(dx、dy)を(0、0)と定義したときに、画素ずれ量である比較画像の画素座標(dx、dy)が次のパターンとなるような画像の組み合わせを探す。
(A)基準画像:(dx、dy)=(0、0)
(B)比較画像:(dx、dy)=(偶数、奇数)
(C)比較画像:(dx、dy)=(奇数、奇数)
(D)比較画像:(dx、dy)=(奇数、偶数)
理想的には、画素ずれ量である比較画像の画素座標(dx、dy)は整数画素であることが好ましいが、実際的には、そのようなケースは殆ど存在せず、(A)~(D)を満足する合成対象画像を選択することは困難である。そこで、選択部23は、例えば、-0.25<Eallowable<0.25を満足する1画素以下の許容誤差Eallowableを設定して合成対象画像を選択する。より具体的に、選択部23は、(A)~(D)を次の(A’)~(D’)に置き換えて、合成対象画像を選択する。なお、(A’)~(D’)においてEallowable=0とすれば、(A)~(D)と(A’)~(D’)は等価である。
(A’)基準画像:(dx、dy)=(0、0)
(B’)比較画像:(dx、dy)=(偶数+Eallowable、奇数+Eallowable)
(C’)比較画像:(dx、dy)=(奇数+Eallowable、奇数+Eallowable)
(D’)比較画像:(dx、dy)=(奇数+Eallowable、偶数+Eallowable)
許容誤差Eallowableを-0.25<Eallowable<0.25の範囲内で設定することにより、偶数画素か奇数画素かを問うことなく、整数画素に近い範囲の画素座標だけをピックアップして高精度・高信頼性の合成対象画像を選択することができる。例えば、ある画素座標が「-2.90」や「3.22」であれば、許容誤差Eallowableを適用することで、当該画素座標が「3」に近いと判断して当該画素座標を選択する。一方、ある画素座標が「-2.64」や「3.38」であれば、許容誤差Eallowableを適用しても、当該座標が「3」に近いとは判断せず、当該画素座標を選択しない。なお、許容誤差Eallowableを-0.5<Eallowable<0.5の範囲内で設定することで、奇数画素と偶数画素の中間付近の画素を必ず偶数画素か奇数画素のいずれかに振り分けることができる。例えば、奇数画素と偶数画素の中間値の近傍にある画素座標「3.48」と「3.53」があった場合、「3.48」が「3」に近いと判断され、「3.53」が「4」に近いと判断される。
選択部23は、複数の画像の中から、上記(A’)を満足する基準画像を設定するとともに、上記(B’)を満足する比較画像及び/又は上記(D’)を満足する比較画像を合成対象画像として選択する。これにより、後述する画像合成時に、1画素毎に2つのG(Gr、Gb)を色情報成分として含ませることが可能になる。
より好ましくは、選択部23は、複数の画像の中から、上記(A’)を満足する基準画像を設定するとともに、上記(B’)を満足する比較画像、上記(C’)を満足する比較画像及び上記(D’)を満足する比較画像を合成対象画像として選択する。これにより、後述する画像合成時に、1画素毎にRGBの各色の色情報成分を含ませることが可能になる。
選択部23は、比較画像から合成対象画像を選択できなかったとき、Eallowableの境界値(絶対値)を広げて、合成対象画像の選択を再試行することができる。例えば、選択部23は、1回目の合成対象画像の選択ではEallowableの絶対値を0.01に設定し、2回目の合成対象画像の選択ではEallowableの境界値(絶対値)を0.05に設定し、3回目の合成対象画像の選択ではEallowableの境界値(絶対値)を0.10に設定し、4回目の合成対象画像の選択ではEallowableの境界値(絶対値)を0.15に設定し、5回目の合成対象画像の選択ではEallowableの境界値(絶対値)を0.20に設定し、6回目の合成対象画像の選択ではEallowableの境界値(絶対値)を0.25に設定することができる。選択部23は、Eallowableの境界値(絶対値)を0.25に設定しても合成対象画像を選択できなかったとき、合成対象画像の選択を中止することができる。Eallowableの境界値(絶対値)を段階的に広げていくことにより、合成対象画像の選択の精度を段階的に緩くすることができる。
選択部23は、比較画像から合成対象画像を選択できなかったとき、基準画像(及び比較画像)を再設定して、合成対象画像の選択を再試行することができる。画素ずれ量は基準画像との関係で規定されるので、複数の画像のいずれを基準画像に設定するかにより、合成対象画像を選択できる場合と選択できない場合がある。従って、基準画像を再設定して合成対象画像の選択を再試行すれば、当該合成対象画像の選択が成功する可能性がある。すなわち、ある画像を基準画像に設定して合成対象画像の選択に失敗した場合であっても、別の画像を基準画像に設定すれば合成対象画像の選択に成功する場合がある。
選択部23は、画素ずれ量である比較画像の画素座標(dx、dy)が所定のエラー閾値(例えば数十画素)を超えている場合には、合成対象画像の選択を中止することができる。
合成部24は、検出部22が検出した画素ずれ量と、選択部23が選択した合成対象画像(基準画像と比較画像から選択した合成対象画像)とに基づいて、合成画像を得る。合成部24は、検出部22が検出した画素ずれ量に応じて、選択部23が選択した合成対象画像(基準画像と比較画像から選択した合成対象画像)の画像演算を実行することにより、合成画像を得る。
より具体的に、合成部24は、検出部22が検出した画素ずれ量に応じて、選択部23が選択した合成対象画像(基準画像と比較画像から選択した合成対象画像)を相対移動して合成画像を得る。ここで、「合成対象画像を相対移動する」とは、当該合成対象画像が基準画像に対して相対移動するように当該基準画像のデータを修正することを意味する。別言すると、「合成対象画像を相対移動する」とは、合成対象画像を基準画像に対して合成する際に、基準画像において、合成対象画像の相対移動を加味した上で、画像データを抽出することを意味する。
合成部24は、検出部22が検出した画素ずれ量に応じて、合成対象画像(基準画像と比較画像から選択した合成対象画像)が重なるように、当該画像を相対移動させることができる。
合成部24は、検出部22による画素ずれ量の検出単位量(検出精度)とは異なる移動単位量(移動精度)で、合成対象画像(基準画像と比較画像から選択した合成対象画像)を相対移動させることができる。例えば、検出部22による画素ずれ量の検出精度をサブピクセル単位とする一方、合成部24による合成対象画像(基準画像と比較画像から選択した合成対象画像)の移動精度をピクセル単位としてもよい。このように、合成部24は、検出部22による画素ずれ量の検出ピクセル度合い(検出ピクセル分解能、検出ピクセル刻み、検出ピクセル基準)とは異なる移動ピクセル度合い(移動ピクセル分解能、移動ピクセル刻み、移動ピクセル基準)で、合成対象画像(基準画像と比較画像から選択した合成対象画像)を相対移動させてもよい。
合成部24によって相対移動させられた基準画像と比較画像(合成対象画像)の画素座標は、上記の(A)~(D)と(A’)~(D’)の例に倣うと、例えば、次の(A”)~(D”)により表される。Eallowableを許容誤差として無視すれば、(A”)~(D”)で表される4枚の画像は、防振ユニット80を利用したマルチショット合成で使用される4枚の画像(図2A~図2D)と完全に一致する。勿論、許容誤差としてのEallowableが残存しても、防振ユニット80を利用したマルチショット合成と等価な4枚の画像が得られる。
(A”)基準画像:(dx、dy)=(0、0)
(B”)比較画像:(dx、dy)=(0+Eallowable、1+Eallowable)
(C”)比較画像:(dx、dy)=(1+Eallowable、1+Eallowable)
(D”)比較画像:(dx、dy)=(1+Eallowable、0+Eallowable)
図5は、基準画像と比較画像1~比較画像3を合成して合成画像を得る場合を示す概念図である。合成部24による合成画像は、1画素毎に2つのG(Gr、Gb)の色情報成分又はRGB各色の色情報成分を含んでいるので、細部までのディティールや色再現に優れた極めて高精細な画像を描き出すことができる。また、モアレや偽色が発生することが無く、高感度ノイズを低減する効果が得られる。
図6のフローチャートを参照して、画像処理装置20による画像処理について詳細に説明する。この画像処理は、画像処理装置20の構成要素であるコンピュータに所定のプログラムを実行させることにより実現される。
ステップST1では、画像処理装置20に複数の画像が入力する。この複数の画像は、例えば、カメラユニット10によって連写された複数の画像であってもよいし、指定のフォルダ、クラウドストレージ、動画等といった記録済みの画像群が存在する中から選択・抽出されたものであってもよい。
ステップST2では、マッチング部21が、画像処理装置20に入力した複数の画像が所定枚数(例えば4枚)に到達したか否かを判定する。複数の画像が所定枚数に到達していない場合(ステップST2:NO)、ステップST1に戻って、複数の画像が所定枚数に到達するのを待つ。複数の画像が所定枚数に到達している場合(ステップST2:YES)、ステップST3に進む。
ステップST3では、マッチング部21が、画像処理装置20に入力した複数の画像(所定枚数の画像)がマルチショット合成(例えば手振れ利用マルチショット合成)に適しているか否かを判定する。画像処理装置20に入力した複数の画像がマルチショット合成に適している場合(ステップST3:YES)は、ステップST4に進む。画像処理装置20に入力した複数の画像がマルチショット合成に適していない場合(ステップST3:NO)は、ステップST1に戻って、再度、画像処理装置20に複数の画像(所定枚数の画像)が入力するのを待つ。
ステップST4では、検出部22が、複数の画像の画素ずれ量(位置ずれ量)を検出する。検出部22による画素ずれ量の検出は、例えば、センサ70の出力、及び/又は、イメージセンサ11の画素出力を利用して実行することができる。
ステップST5では、選択部23が、検出部22が検出した複数の画像の画素ずれ量に応じて、当該複数の画像から合成対象画像(基準画像と比較画像から選択した合成対象画像)を選択する。選択部23による合成対象画像の選択処理は、別途、図7、図8のフローチャートを用いてサブルーチンとして説明する。
ステップST6では、合成部24が、検出部22が検出した画素ずれ量に応じて、選択部23が選択した合成対象画像(基準画像と比較画像から選択した合成対象画像)を相対移動して合成画像を得る。これにより、検出部22が検出した複数の画像の画素ずれ量に応じて、合成対象画像(基準画像と比較画像から選択した合成対象画像)が重ね合わせられる。また、重ね合わせられた各合成対象画像の画素ずれ量は、例えば、上記(A”)~(D”)で表されるようなピクセル単位の画素ずれ量となる。合成部24による合成画像は、1画素毎に2つのG(Gr、Gb)の色情報成分又はRGB各色の色情報成分を含んでいるので、細部までのディティールや色再現に優れた極めて高精細な画像を描き出すことができる。また、モアレや偽色が発生することが無く、高感度ノイズを低減する効果が得られる。
ここで、合成対象画像の画素ずれ量が上記の(A”)~(D”)で表されるようなピクセル単位の画素ずれ量となる場合、各合成対象画像は、水平方向と垂直方向の少なくとも一方に奇数画素分だけずれることが好ましい。例えば1.5画素ずれている場合と5.1画素ずれている場合では、5.1画素ずれている場合の方が5画素に近いので好ましい。より詳しくは、合成対象画像は、相互に、水平方向に奇数画素分だけずれ且つ垂直方向に偶数画素分だけずれている画像、あるいは、垂直方向に奇数画素分だけずれ且つ水平方向に偶数画素分だけずれている画像であることが好ましい。これは、仮に、水平方向と垂直方向ともに奇数画素分あるいは偶数画素分だけずれている合成対象画像である場合、これらを相対移動させたときに殆ど同じ画像になり、2つのG(Gr、Gb)の色情報成分の解像度が上がらないためである。
図7のフローチャートを参照して、選択部23による合成対象画像の第1の選択処理について詳細に説明する。
ステップST401では、選択部23が、複数の画像のいずれかの画像を基準画像に設定するとともに残りの画像を比較画像に設定する(基準画像と比較画像を設定する)。
ステップST402では、選択部23が、合成対象画像を選択するための許容誤差Eallowableを初期設定する。選択部23は、例えば、Eallowableの絶対値を0.01に初期設定する。
ステップST403では、選択部23が、所定の条件を満足する合成対象画像の選択を試行する。ここで、所定の条件を満足するとは、例えば、上記(A’)、(B’)及び/又は(D’)を満足する、あるいは、上記(A’)~(D’)を満足することを意味している。選択部23は、複数の画像(基準画像と比較画像)の全ての組み合わせ毎に、所定の条件を満足する合成対象画像の選択を試行する。選択部23は、所定の条件を満足する合成対象画像の選択を複数回に亘り試行することができる。所定の条件を満足する合成対象画像が選択できた場合(ステップST403:YES)は、合成対象画像の選択を終了して、処理を終了する。所定の条件を満足する合成対象画像が選択できなかった場合(ステップST403:NO)は、ステップST404に進む。
ステップST404では、選択部23が、合成対象画像を選択するための許容誤差Eallowableを緩和する。選択部23は、例えば、Eallowableの絶対値を0.01から0.05に緩和する。
ステップST405では、選択部23が、合成対象画像を選択するための許容誤差Eallowableの絶対値が臨界値(例えば0.25)を超えているか否かを判定する。合成対象画像を選択するための許容誤差Eallowableの絶対値が臨界値を超えている場合(ステップST405:YES)は、合成対象画像の選択を終了して、処理を終了する。合成対象画像を選択するための許容誤差Eallowableの絶対値が臨界値を超えていない場合(ステップST405:NO)は、ステップST403に戻って、緩和後の許容誤差Eallowableを用いて、所定の条件を満足する合成対象画像の選択を再試行する。
図8のフローチャートを参照して、選択部23による合成対象画像の第2の選択処理について詳細に説明する。
ステップST411では、選択部23が、複数の画像のいずれかの画像を基準画像に設定するとともに残りの画像を比較画像に設定する(基準画像と比較画像を設定する)。
ステップST412では、選択部23が、合成対象画像を選択するための許容誤差Eallowableを設定する。
ステップST413では、選択部23が、所定の条件を満足する合成対象画像の選択を試行する。ここで、所定の条件を満足するとは、例えば、上記(A’)、(B’)及び/又は(D’)を満足する、あるいは、上記(A’)~(D’)を満足することを意味している。所定の条件を満足する合成対象画像が選択できた場合(ステップST413:YES)は、合成対象画像の選択を終了して、処理を終了する。所定の条件を満足する合成対象画像が選択できなかった場合(ステップST413:NO)は、ステップST414に進む。
ステップST414では、選択部23が、基準画像と比較画像を再設定する。
ステップST415では、選択部23が、基準画像と比較画像の全ての組み合わせが設定されたか否かを判定する。基準画像と比較画像の全ての組み合わせが設定された場合(ステップST415:YES)は、合成対象画像の選択を終了して、処理を終了する。基準画像と比較画像の全ての組み合わせが設定されていない場合(ステップST415:NO)は、ステップST413に戻って、再設定後の基準画像と比較画像を用いて、所定の条件を満足する合成対象画像の選択を再試行する。
図7のフローチャートに示した第1の選択処理と図8のフローチャートに示した第2の選択処理は、適宜、組み合わせて実施することができる。すなわち、所定の条件を満足する合成対象画像が選択できなかった場合に、選択部23が、合成対象画像を選択するための許容誤差Eallowableを緩和するとともに、基準画像と比較画像を再設定することも可能である。
本実施形態のデジタルカメラ1は、防振ユニット80(例えばマルチショット合成用の微小振動)を利用したマルチショット合成モードと、防振ユニット80(例えばマルチショット合成用の微小振動)を利用しないマルチショット合成モード(例えば手振れ利用マルチショット合成モード)とを搭載しており、各撮影モードを設定する設定手段(設定ボタンやタッチパネル等)を具備している。このため、デジタルカメラ1が三脚等で位置決め固定されているにも関わらず防振ユニット80を利用しないマルチショット合成モードが設定されている場合、あるいは、デジタルカメラ1が手持ち状態であるにもかかわらず防振ユニット80を利用したマルチショット合成モードが設定されている場合に、音声や画面による警告を発生させることができる。さらには、デジタルカメラ1が三脚に固定されているか否かを検出して、デジタルカメラ1が三脚に固定されている場合に防振ユニット80を利用したマルチショット合成モードを自動設定し、デジタルカメラ1が三脚に固定されていない場合に防振ユニット80を利用しないマルチショット合成モードを自動設定することができる。
≪第2実施形態≫
図9~図11を参照して第2実施形態について説明する。第1実施形態と重複する内容については説明を省略する。
図9に示すように、画像処理装置(プロセッサ)20は、マッチング部21と検出部22と選択部23と合成部24に加えて、分割部25を有している。
分割部25は、複数の画像を所定の画像領域(例えば互いに対応する画像領域)に分割する。図10A~図10Dは複数の画像を所定の画像領域に分割する場合の一例を示す図である。図10Aでは、第1の画像が縦横同サイズのマトリクス状の画像領域1-1、1-2、・・・、1-Nに分割されている。図10Bでは、第2の画像が縦横同サイズのマトリクス状の画像領域2-1、2-2、・・・、2-Nに分割されている。図10Cでは、第3の画像が縦横同サイズのマトリクス状の画像領域3-1、3-2、・・・、3-Nに分割されている。図10Dでは、第4の画像が縦横同サイズのマトリクス状の画像領域4-1、4-2、・・・、4-Nに分割されている。各画像領域のブロックサイズには自由度があるが、例えば、各画像領域のブロックサイズを128画素×128画素とすることができる。
検出部22は、複数の画像の所定の画像領域毎(例えば互いに対応する画像領域毎)の位置ずれ量(画素ずれ量)を検出する。図10A~図10Dの例に沿って説明すると、検出部22は、第1の画像の画像領域1-1と、第2の画像の画像領域2-1と、第3の画像の画像領域3-1と、第4の画像の画像領域4-1との位置ずれ量(画素ずれ量)を計算する。また、検出部22は、第1の画像の画像領域1-2と、第2の画像の画像領域2-2と、第3の画像の画像領域3-2と、第4の画像の画像領域4-2との位置ずれ量(画素ずれ量)を計算する。また、検出部22は、第1の画像の画像領域1-Nと、第2の画像の画像領域2-Nと、第3の画像の画像領域3-Nと、第4の画像の画像領域4-Nとの位置ずれ量(画素ずれ量)を計算する。このように、検出部22は、各画像の同じ位置のブロック同士で、例えば、サブピクセル推定によって相関を演算する。
選択部23は、検出部22が検出した相関値である位置ずれ量(画素ずれ量)に応じて、複数の画像から合成対象画像領域を選択する。例えば、選択部23は、いずれかの画像の画像領域を基準画像領域に設定し、その他の画像の画像領域を比較画像領域に設定して、基準画像領域との位置ずれ量(画素ずれ量)が所定の閾値以内であり、且つ、最もずれ量が小さく奇数画素分または偶数画素分ずれている比較画像領域を合成対象画像領域として選択することができる。例えば、図10Aの第1の画像の画像領域1-1~1-Nを基準画像領域に設定した場合、基準画像領域1-1に対する合成対象画像領域として画像領域2-1、3-1、4-1の中から少なくとも1つを選択することができ、基準画像領域1-2に対する合成対象画像領域として画像領域2-2、3-2、4-2の中から少なくとも1つを選択することができ、基準画像領域1-Nに対する合成対象画像領域として画像領域2-N、3-N、4-Nの中から少なくとも1つを選択することができる。
合成部24は、検出部22が検出した相関値である位置ずれ量(画素ずれ量)と、選択部23が選択した合成対象画像領域とに基づいて、合成画像を得る。合成部24は、検出部22が検出した相関値である位置ずれ量(画素ずれ量)に応じて、選択部23が選択した合成対象画像領域の画像演算を実行することにより、合成画像を得る。例えば、合成部24は、図10Aの基準画像領域1-1に、図10B~図10Dの比較画像領域2-1~4-1の中から選択部23が選択した合成対象画像領域を合成または置換する。また、合成部24は、図10Aの基準画像領域1-2に、図10B~図10Dの比較画像領域2-2~4-2の中から選択部23が選択した合成対象画像領域を合成または置換する。また、合成部24は、図10Aの基準画像領域1-Nに、図10B~図10Dの比較画像領域2-N~4-Nの中から選択部23が選択した合成対象画像領域を合成または置換する。
このようにして、合成部24は、分割部25が分割した複数の画像領域の各々について、検出部22と選択部23が協働して求めた合成対象画像領域による画像演算(合成または置換)を実行することにより、1枚の合成画像を得る。
つまり、1枚の基準画像の各基準画像領域は、その他の比較画像の各比較画像領域から選択された合成対象画像領域に基づいて合成または置換される。例えば、基準画像である第1の画像の基準画像領域1-1を第2の画像の合成対象画像領域2-1で合成または置換し、第1の画像の基準画像領域1-2を第3の画像の合成対象画像領域3-2で合成または置換し、第1の画像の基準画像領域1-Nを第4の画像の合成対象画像領域4-Nで合成または置換することができる。
なお、基準画像のある基準画像領域について、比較画像の比較画像領域から適切な合成対象画像領域を選択できなかった場合は、当該基準画像領域の合成または置換を行うことなく、当該基準画像領域をそのまま利用してもよい。
図11は、第2実施形態による撮影処理の一例を示すフローチャートである。
ステップST11では、分割部25が複数の画像を所定の画像領域に分割する。
ステップST12では、検出部22が、複数の画像の所定の画像領域の位置ずれ量(画素ずれ量)を検出する。
ステップST13では、選択部23が、検出部22が検出した相関値である位置ずれ量(画素ずれ量)に応じて、複数の画像から合成対象画像領域を選択する。
ステップST14では、全ての画像領域について合成対象画像領域を選択したか否かを判定する。全ての画像領域について合成対象画像領域を選択していない場合(ステップST14:NO)、ステップST13に戻って、全ての画像領域について合成対象画像領域を選択し終わるまで、ステップST13~ステップST14の処理ループを繰り返す。全ての画像領域について合成対象画像領域を選択した場合(ステップST14:YES)、ステップST15に進む。
ステップST15では、合成部24が、検出部22が検出した相関値である位置ずれ量(画素ずれ量)と選択部23が選択した合成対象画像領域に基づいて、合成画像を得る。
以上説明した第2実施形態では、複数の画像を所定の画像領域に分割し、複数の画像の所定の画像領域毎の位置ずれ量を検出し、位置ずれ量に応じて複数の画像から合成対象画像領域を選択し、位置ずれ量と合成対象画像領域に基づいて合成画像を得る。従って、画像単位で位置ずれ量を検出して合成対象画像を選択して合成画像を得る第1実施形態よりも、優れた画像品質(高詳細、モアレや偽色や高感度ノイズの低減等)を実現することができる。
≪第3実施形態≫
上記の第1、第2実施形態のデジタルカメラ1は、マルチショット合成モードにおいて、防振ユニット80を利用した移動部材(例えばイメージセンサ11)の駆動(例えば像振れ補正駆動)を実行していない。しかし、画像が特定の位置で完全に固定されず(複数の画像の位置ずれを完全に補正せず)、大まかな像振れ位置決め補正を行う程度であれば、防振ユニット80を利用した像振れ補正駆動を実行することができる。
つまり、防振ユニット80による像振れ補正駆動を行った場合であっても厳密な意味で(完全に)像振れをゼロにすることはできない(ミクロン単位のずれ量は発生する)ので、むしろこのずれ量を積極的に利用してマルチショット合成を実行するのが第3実施形態である。これは、防振ユニット80による像振れ補正駆動の駆動量とマルチショット合成に要求される各画像の位置ずれ量(画素ずれ量)を比較したときに、前者が後者よりも格段に大きいという着眼に基づいている。
第3実施形態では、マルチショット合成モード(いわば防振ユニット80による像振れ補正駆動ありの手振れ利用マルチショット合成モード)の設定をした後に、例えば、連写撮影によって複数の画像を得る。そして、複数の画像に基づく画像合成処理によって1枚の合成画像を得る。
例えば、第1実施形態のように、複数の画像の画素ずれ量を検出し、複数の画像のいずれかの画像を基準画像に設定するとともに残りの画像を比較画像に設定して、基準画像と比較画像の画素ずれ量に応じて、比較画像から合成対象画像を選択し、位置ずれ量に応じて基準画像と合成対象画像を相対移動して合成画像を得ることができる。
あるいは、第2実施形態のように、複数の画像を所定の画像領域に分割し、複数の画像の所定の画像領域毎の位置ずれ量を検出し、位置ずれ量に応じて複数の画像から合成対象画像領域を選択し、位置ずれ量と合成対象画像領域に基づいて合成画像を得ることができる。
図12~図15を参照して、防振ユニット80の構成について詳細に説明する。各図において、撮影光学系の光軸Oと平行な方向を第1の方向(Z方向、Z軸方向)、第1の方向と直交する方向を第2の方向(X方向、X軸方向)、第1の方向及び第2の方向の双方と直交する方向を第3の方向(Y方向、Y軸方向)とする。例えば、X軸、Y軸及びZ軸を3次元の直交座標系の座標軸と仮定すると、光軸OをZ軸としたとき、Z軸と直交し、かつ互いに直交する二方向の軸がX軸及びY軸になる。カメラが正位置(横位置)にあるとき、第1の方向(Z方向、Z軸、光軸O)及び第2の方向(X方向、X軸)は水平になり、第3の方向(Y方向、Y軸)は鉛直になる。
デジタルカメラ1は、カメラボディCBの振れ(振動)を検出する検出手段として、ロール(Z方向回りの傾動(回転))検出部、ピッチ(X方向回りの傾動(回転))検出部、ヨー(Y方向回りの傾動(回転))検出部、X方向加速度検出部、Y方向加速度検出部、及びZ方向加速度検出部を備えている。これらの各検出手段は、例えば6軸センサ、または3軸ジャイロセンサと3軸加速度センサによって構成されている。これらの各検出手段は、図1のセンサ70の一部として構成されていてもよい。
撮像ブロック(例えば図1のカメラユニット10)は、撮像素子110と、撮像素子110を支持したステージ装置120とを有している。ステージ装置120は、撮像素子110が搭載された可動ステージ121と、可動ステージ121の前後に位置する前固定ヨーク122と後固定ヨーク123とを備え、少なくとも通電時には、可動ステージ121を前後の固定ヨーク122、123に対して、浮上(重力に抗して浮上させ、静止状態に保持)させることができる。ステージ装置120は、浮上状態の可動ステージ121を、Z方向(第1の方向)並進、Z方向と直交するX方向(第2の方向)並進、Z方向及びX方向の双方と直交するY方向(第3の方向)並進、X方向(第2の方向)回りの傾動(回転)、Y方向(第3の方向)回りの傾動(回転)、及びZ方向(第1の方向)回りの傾動(回転)(6自由度の移動、6軸移動)させることができる。
ボディCPU(例えば図1のCPU90)は、ピッチ(X方向回りの傾動(回転))、ヨー(Y方向回りの傾動(回転))、ロール(Z方向回りの傾動(回転))、X方向加速度、Y方向加速度、及びZ方向加速度に基づいてデジタルカメラ10のぶれ方向、ぶれ速度等を演算する。ボディCPUは、撮像素子110に投影された被写体像が撮像素子110に対して相対移動しないように撮像素子110を駆動する方向、駆動速度、駆動量などを演算し、演算結果に基づいてステージ装置120を並進、傾動、傾動中の並進、傾動後に並進及び並進後に傾動駆動する。
ステージ装置120は、撮像素子110が固定された可動ステージ121を前固定ヨーク122と後固定ヨーク123に対して、並進、傾動、傾動中の並進、及び傾動後に並進自在に保持する。可動ステージ121は、正面視で、撮像素子110より大きい長方形の板状部材である。前固定ヨーク122と後固定ヨーク123は、平面視、外形が可動ステージ121より大きい同一形状の長方形の枠状部材からなり、中央部にそれぞれ、正面視で(Z方向から見て)、撮像素子110の外形より大きい長方形の開口122aと123aが形成されている。
前固定ヨーク122の後面(被写体側と反対側の面)にはY軸を中心線としZ軸を挟んで開口122aの少なくとも左右(X方向)の一方、図示実施形態では左右両側部に位置する態様で、同一仕様の左右一対の永久磁石からなるX方向用磁石MXが固定されている。前固定ヨーク122及び後固定ヨーク123が左右のX方向用磁石MXの磁束を通すことにより、左右のX方向用磁石MXと後固定ヨーク123の対向部の間にX方向(第2の方向)の推力を発生する磁気回路が形成される。
前固定ヨーク122の後面には開口122aの下方にY軸を中心線としてZ軸から離間して位置する態様で、同一仕様の一対の永久磁石からなるY方向用磁石MYAと同一仕様の一対のY方向用磁石MYBが固定されている。前固定ヨーク122及び後固定ヨーク123がY方向用磁石MYAとY方向用磁石MYBの磁束を通すことにより、Y方向用磁石MYA及びY方向用磁石MYBと後固定ヨーク123との間に、Y方向(第3の方向)の推力を発生する磁気回路が形成される。
前固定ヨーク122の後面には、X方向用磁石MX、Y方向用磁石MYAとMYBとは異なる3カ所に、同一仕様の永久磁石からなるZ方向用磁石MZAとMZBとMZCが固定されている。3個のZ方向用磁石MZAとMZBとMZCは、Z軸を中心としてZ軸直交平面内に略等間隔に配置されている。前固定ヨーク122及び後固定ヨーク123がZ方向用磁石MZAとMZBとMZCの磁束を通すことにより、Z方向用磁石MZA、MZB、MZCと後固定ヨーク123との間に、Z方向(第1の方向)の推力を発生する複数の磁気回路が形成される。
可動ステージ121の中央部には正面視長方形の撮像素子取付孔121aが穿設され、撮像素子取付孔121aに撮像素子110が嵌合固定されている。撮像素子110は、撮像素子取付孔121aから可動ステージ121の光軸O方向前方に突出している。
可動ステージ121には、撮像素子110の左右の両辺(短辺)の外方部に位置させて、一対のX駆動用コイルCXが固定され、撮像素子31の下方の一辺(長辺)の下方部に位置させて、左右に離して一対のY駆動用コイルCYAとY駆動用コイルCYBが固定されている。可動ステージ121にはさらに、一対のY駆動用コイルCYAとCYBの間(中間位置)に位置させて円形のZ駆動用コイルCZAが固定され、一対のX駆動用コイルCXより上方に位置させて円形の一対のZ駆動用コイルCZBとZ駆動用コイルCZCが固定されている。
以上のX駆動用コイルCX、Y駆動用コイルCYAとY駆動用コイルCYB、Z駆動用コイルCZAとZ駆動用コイルCZBとZ駆動用コイルCZCは、アクチュエータ駆動回路(図示略)に接続され、当該アクチュエータ駆動回路を介して通電制御される。
可動ステージ121には、X駆動用コイルCXの空芯領域に位置するX方向用ホール素子HXと、Y駆動用コイルCYAとCYBの空芯領域にそれぞれ位置するY方向用ホール素子HYAとY方向用ホール素子HYBと、各Z駆動用コイルCZA、CZB、CZCの空芯領域にそれぞれ位置するZ方向用ホール素子HZA、Z方向用ホール素子HZB、Z方向用ホール素子HZCとが固定されている。
位置検出回路(図示略)は、X方向用ホール素子HX、Y方向用ホール素子HYA、HYB、及びZ方向用ホール素子HZA、HZB、HZCが出力した検出信号により可動ステージ121のX方向位置、Y方向位置、Z方向位置、X方向回りの傾動位置(X方向回りの傾動(回転)角、ピッチ角)、Y方向回りの傾動位置(Y方向回りの傾動(回転)角、ヨー角)、及びZ方向回りの傾動位置(Z方向回りの傾動(回転)角、ロール角)を検出する。
位置検出回路(図示略)の検出結果に応じて、アクチュエータ駆動回路(図示略)が、X駆動用コイルCX、Y駆動用コイルCYAとY駆動用コイルCYB、Z駆動用コイルCZAとZ駆動用コイルCZBとZ駆動用コイルCZCを通電制御することにより、撮像素子110(可動ステージ121)を駆動することができる。例えば、防振ユニット80は、撮影部の少なくとも一部である撮像素子110を駆動部材として、当該駆動部材を光軸O(Z軸)と異なる方向に駆動することで像振れを補正する手ぶれ補正機構(駆動機構)として機能する。なお、駆動対象となる駆動部材は撮像素子110に限定されず、例えば、撮影レンズの一部を像振れ補正レンズとすることも可能である。
本発明者は、一例として挙げた上記のような六軸駆動ユニット(但し像振れ補正の態様は問わない)によって像振れ補正駆動を実行しながらマルチショット合成を実行する技術について鋭意研究を重ねた結果、次のような知見を得た。すなわち、光軸O(Z軸)と直交する平面内(XY平面内)における駆動部材(撮像素子)の平行方向のずれが残存していても、マルチショット合成の画像品質に与える悪影響は小さいが、光軸O(Z軸)と直交する平面内(XY平面内)における駆動部材(撮像素子)の回転方向のずれが残存していると、マルチショット合成の画像品質に悪影響を与えることが判明した。
上述したように、本実施形態では、複数の画像又は画像領域の位置ずれ量(画素ずれ量)の検出等の画像演算は、XY平面内のXY座標軸に基づいて行われるので、XY平面内の回転方向のずれ量が大きいと、複数の画像同士又は複数の画像領域同士で相関が得られず、適切な画像演算が困難になるおそれがある。
図16は、XY平面内の回転方向の像振れによる悪影響の一例を示す図である。図16に示すように、XY平面内の回転方向の像振れ量は、光軸O(Z軸)に近いほど(画像中心部寄りのほど)小さくなり、光軸O(Z軸)から遠いほど(画像周辺部寄りのほど)大きくなる。
本実施形態では、防振ユニット80によって、光軸O(Z軸)と直交する平面内(XY平面内)における平行方向のずれ量のみならず、光軸O(Z軸)と直交する平面内(XY平面内)における回転方向のずれ量を補正することによって、画像演算の精度を高めて、マルチショット合成の画像品質を向上することができる。また、画像演算の処理負荷及び処理時間を低減することができる。
防振ユニット(駆動機構)80は、光軸O(Z軸)と直交する平面内(XY平面内)における駆動部材(撮像素子)の平行方向の駆動成分(駆動量)を相対的に小さくし、光軸O(Z軸)と直交する平面内(XY平面内)における駆動部材(撮像素子)の回転方向の駆動成分(駆動量)を相対的に大きくしてもよい。これにより、マルチショット合成の画像品質に与える悪影響が小さい駆動部材(撮像素子)の平行方向のずれ成分(ずれ量)が残存することをある程度許容し、マルチショット合成の画像品質に大きな悪影響を与える駆動部材(撮像素子)の回転方向のずれ成分(ずれ量)を積極的に除去して、マルチショット合成の画像品質を向上することができる。
また第2実施形態のように、分割部25によって複数の画像を所定の画像領域に分割して、各画像領域について位置ずれ量(画素ずれ量)を演算することにより、駆動部材(撮像素子)の回転方向のずれ量の悪影響を低減することができる。
この場合、分割部25により分割された各画像領域は、互いに異なるサイズの画像領域を含むことが好ましい。より具体的に、分割部25により分割された各画像領域のうち、複数の画像の中央側が相対的に大きいサイズの画像領域に分割され、複数の画像の周辺側が相対的に小さいサイズの画像領域に分割されることが好ましい。
図17は、複数の画像を互いに異なるサイズの画像領域に分割する場合の一例を示している。図17では、最小ブロック単位で縦8ブロック×横10ブロックの計80ブロックに相当する画像領域を、画像中央側の最大画像領域ブロックと、最大画像領域ブロックの左右両側に位置する2つの中間画像領域ブロックと、最大画像領域ブロックと2つの中間画像領域ブロックの周囲を取り囲む画像周辺側の最小画像領域ブロックとに分割している。最大画像領域ブロックは、最小画像領域ブロック(最小ブロック単位)が縦横4つずつの16ブロック分のサイズであり、中間画像領域ブロックは、最小画像領域ブロック(最小ブロック単位)が縦横2つずつの4ブロック分のサイズである。
例えば、複数の画像の間で回転方向のずれがある場合、そのずれ量は、画像中心部寄りであるほど小さくなり、画像周辺部寄りであるほど大きくなる(図16を参照)。そこで、回転方向のずれ量が小さい画像中心部の画像領域を大きい(粗い)ブロックに分割する一方、回転方向のずれ量が大きい画像周辺部の画像領域を小さい(細かい)ブロックに分割することで、各画像領域ブロック(特に画像周辺部の画像領域ブロック)において、より高い精度の画像演算を実行して、マルチショット合成の画像品質を向上することができる。また、画像演算の処理負荷及び処理時間を低減することができる。仮に、図17において、全ての画像領域ブロックを最小画像領域ブロック(最小ブロック単位)に分割すると、画像演算の処理負荷及び処理時間が増大してしまう。また、図17において、全ての画像領域ブロックを最大画像領域ブロックに分割すると、回転方向のずれ量が大きい画像周辺部において、画像領域ブロック同士の相関がとれなくなる(画素ずれ量が演算できなくなる)おそれがある。