<撮像装置の構成>
最初に、本発明の実施形態におけるぶれ補正装置を備えた電子機器の構成の概略について、撮像装置を例にあげるとともに図1の撮像装置のブロック図を用いて説明する。
図1に示すように、本発明の実施形態における撮像装置1は、撮像を行うとともに画像ファイルを作成する画像ファイル作成部2と、画像ファイル作成部2より得られる画像ファイルを補正するぶれ補正部3と、補正の有無に関わらず画像ファイルによる画像を表示する表示部4と、画像ファイル作成部2とぶれ補正部3と表示部4と制御部5とに電力を供給する電源部6と、撮像装置1全体の動作の制御を行うとともに電源部6が供給し得る電力の残量を確認する制御部5と、制御部5にユーザの指示を入力するための操作部7と、を備える。
また、画像ファイル作成部2は、撮像を行う撮像部8と、撮像装置1が撮像を行う際に同期して動作するとともに撮像中の撮像装置1のぶれによる角速度を検出する角速度センサと9、角速度センサ9から得られるぶれ信号を変換してぶれ情報を作成するぶれ情報作成部10と、ぶれ情報作成部10から得られるぶれ情報と撮像部8から得られる画像情報とをあわせて画像ファイルを作成する合成部11と、を備える。
また、ぶれ補正部3は、画像ファイルを記録する記録部12と、ぶれ情報から画像復元フィルタを作成する画像復元フィルタ作成部13と、画像復元フィルタに基づいて画像情報の補正を行うとともに得られる補正後の画像ファイルを記録部12に記録する画像情報補正部14と、を備える。
次に、引き続き図1を用いて撮像装置1の動作の概略について説明する。まず、操作部7に画像を撮像する指示が与えられることによって、制御部5から画像ファイル作成部2に画像ファイルを作成する指示が与えられる。すると、撮像部8及び角速度センサ9が動作し、指定された期間撮像を行う。そして、撮像部8によって画像情報が作成されるとともに、角速度センサ9から得られたぶれ信号はぶれ情報作成部10に入力されるとともに変換されてぶれ情報が作成される。
ぶれ情報が作成されると、合成部11において撮像部8から得られた画像情報にぶれ情報が付加され、画像ファイルが作成される。このとき、例えばぶれ情報は画像ファイルのヘッダ情報に含まれるように構成される。そして、ぶれ補正部3の記録部12に画像ファイルが記録される。このとき、ユーザが指示することによって表示部4に画像ファイルによる画像が表示される。
そして、操作部7に画像ファイルを選択して補正するような指示が入力されると、制御部5がぶれ補正部3を動作させて補正を行う。このとき、補正が指示される画像ファイルは単数であっても構わないし、複数であっても構わない。なお、この画像ファイルを単数及び複数選択して補正する一連の補正動作の詳細については後述する。
補正動作が開始されると、記録部12に記録されている選択された画像ファイルのぶれ情報が画像復元フィルタ作成部13に入力されるとともに画像復元フィルタが作成され、画像情報補正部14に読み出される。そして、同様に選択された画像ファイルの画像情報が画像情報補正部14に読み出され、画像情報が画像復元フィルタによって補正されて補正後の画像ファイルが作成される。作成された補正後の画像ファイルは記録部12に記録されるとともに、ユーザが指示することによって表示部4に表示される。
このとき、記録部12には補正前の画像ファイルの他に補正後の画像ファイルが記録されることとなるため、2種類の画像ファイルが混在することとなるが、画像ファイルの名称の付け方によってこれらを区別することができる。例えば、アルファベット4文字と数字4文字との合計8文字の名称に拡張子を付したファイル名で画像ファイルを管理する場合、補正前の画像ファイル、即ち、合成部11から入力される画像ファイルの名称を例えば「ORGN0017」として、補正後の画像ファイル、即ち、画像情報補正部14によって作成されて記録部12に入力される画像ファイルの名称を「STAB0017」とする。
これにより、名称の前半のアルファベット4文字によって補正したものか否かが確認され、後半の数字4文字によって同一の画像を示すものか否かが確認される。そして、これらの名称に基づいて拡張子を適宜変更することで、補正前後の画像ファイルのどちらかの画像を見かけ上削除したように表示したり、両方とも表示したりすることが可能となる。例えば、表示する画像ファイルの拡張子をJPGとして、表示しない画像ファイルの拡張子をTMPとすると、JPGが付された画像ファイルの画像のみが表示されるようになる。なお、以下ではこの例のように画像ファイルに名称及び拡張子を付すものとして説明し、表示動作の詳細については後述する。
また、制御部5は、上述した補正前の画像ファイルの作成や補正などの動作において電源部6が十分な電力を供給し得るか否かを判断する。例えば、電源部6がバッテリなどである場合に制御部5が電源部6の蓄えている電力量を確認し、電力量が十分でなく補正後の画像ファイルの作成や補正動作を継続することが不可能であると判断する場合は、ユーザに警告をしたり画像ファイルの保全のために動作を終了したりする。
なお、図1においては本発明における電子機器をデジタルカメラのような画像ファイル作成部2を有する撮像装置1として示しているが、本発明における電子機器は、ディスプレイやプリンタなどの画像ファイル作成部2を備えないものであっても構わない。この場合は、外部から画像ファイルが入力されてぶれ補正部3の記録部12に記録される構成となる。さらに、本発明における電子機器は表示部4を備えない構成としても構わない。例えば、入力される画像ファイルを補正して、他の画像出力装置に補正後の画像ファイルを入力する装置などがこれに相当する。
また、本発明における電子機器が、商用電源などの際限なく電力が供給される電源部6を利用して動作するような装置である場合、電源部6の残量を確認する必要がないため、制御部5が電源部6の残量確認を行わないこととしても構わない。また、バッテリなどの残量を確認する必要のある電源部6を使用する装置であっても、商用電源などから電力の供給を受けて動作を行なう場合はバッテリ量を確認する必要がなくなるため、制御部5が電源部6の残量確認を行わないこととしても構わない。
また、ぶれ情報作成部10が作成するぶれ情報は、後述する動きベクトルや、点広がり関数(PSF:Point Spread Function、以下PSFとする)や、画像復元フィルタなど、どのようなものであっても構わないし、ぶれ情報を圧縮して画像ファイルに含めることとしても構わない。また、ぶれ情報が画像復元フィルタである場合、ぶれ補正部3に画像復元フィルタ作成部13を設けない構成としても構わない。
<画像復元式補正方法>
次に、本発明の実施形態におけるぶれ補正を行う撮像装置及びそのぶれ補正方法に適用する画像復元式補正方法の一例について説明する。この画像復元式補正方法では、まず、〔1〕撮像中の撮像装置のぶれからぶれ信号を検出し、そのぶれ信号から撮像中のぶれの軌跡である動きベクトルを得る。そして、〔2〕動きベクトルから補正する際の重み付けを決定するPSFを得るとともに、〔3〕PSFを変換して画像情報を補正するための画像復元フィルタを得る。そして、〔4〕この画像復元フィルタを用いて画像情報のそれぞれの画素に積和演算を施して補正処理を行う。以下、順を追って〔1〕〜〔4〕のそれぞれの処理方法について説明する。
〔1〕ぶれ信号〜動きベクトル変換処理
まず、図2を用いて、ぶれ信号の検出方法について説明する。図2は、撮像装置1の模式的な斜視図である。被写体が十分遠方にある場合において、ぶれは主に撮像装置1の回転によって引き起こされる。そして、図2に示すように撮像装置1の光軸1aがパン方向1bに回転すると画像が水平方向にぶれ、チルト方向1cに回転すると垂直方向にぶれる。以上の二つのぶれを用いることでぶれを表現することが可能であり、本例においては、撮像中に撮像装置1の光軸1aがどのようにぶれたかを角速度を用いて表現することとして、この角速度をぶれ信号とする。
また、ぶれ信号は撮像開始から撮像終了までの間に光軸1aのパン方向1b、チルト方向1cのそれぞれの角速度を所定のサンプリング間隔dt(例えば、1msec)で、パン方向1b及びチルト方向1cのそれぞれに対応する角速度センサ(例えば、ジャイロスコープ)を用いてそれぞれ検出する。また、パン方向1b、チルト方向1cのそれぞれの方向に対する角速度の検出、動きベクトルへの変換方法は同様のものであるため、以下ではパン方向1bについてのみ説明し、チルト方向1cについては説明を省略する。
次に、図3及び図4を用いて、角速度センサによって検出されたぶれ信号を動きベクトルに変換する方法について説明する。図3は、パン方向における撮像装置の回転と画像上に発生する水平方向の移動量との関係を示した模式図であり、図4は動きベクトルの模式図である。また、図3ではぶれが生じた際のレンズと光軸とを破線で表している。
あるサンプリング区間において、パン方向の角速度センサから角速度θp1が検出された場合、この時の撮像装置に発生する回転量θpはこのサンプリング区間内における角速度が一定であるとすると、サンプリング間隔がdtであるので回転量θp=θp1×dtとなる。そして、図3に示すように、撮像装置のレンズ1dと撮像素子1eとの距離である焦点距離rを用いて、回転量θpから水平方向の移動量dhがdh=rtanθpと求められる。そして、同様の方法によってチルト方向の角速度θtから水平方向の移動量dvも求めることができる。
ただし、ここで焦点距離rを35mmフィルム換算の値と設定している場合、得られる移動量dh、dvを画像情報の大きさに合わせて変換する必要がある。ここで、35mmフィルムのサイズは36×24(mm)であるため、デジタルカメラの画像情報の大きさを画素単位でX×Yとすると、移動量dhにはX/36を乗じ、移動量dvにはY/24を乗じればよい。そして、このように得られた変換後の移動量を(dph,dpv)とする。
そして、これらの二つの成分(dph,dpv)を有するベクトルが、あるサンプリング区間におけるぶれの軌跡となる。そして、全てのサンプリング区間のベクトルを接続するとその接続したベクトルは撮像中のぶれの軌跡を示したものとなり、これを動きベクトルと呼ぶ。
動きベクトルの一例を図4に示す。図4において、各ベクトルB1〜B4の大きさはその区間におけるぶれの速度を示しており、ベクトルB1〜B4の方向はぶれが生じた方向を示している。また、ベクトルB1〜B4の数はサンプリングを行なった回数を示しており、図4に示す動きベクトルBは、例として撮像中に4回サンプリングを行った場合について示している。
〔2〕動きベクトル〜PSF変換処理
次に、動きベクトルをPSFに変換する方法について図5及び図6を用いて説明する。図5は、図4に示す動きベクトルを画素で表現した場合のグラフを示したものであり、図6は、図5に示す整数値化した動きベクトルをPSFに変換したものである。
〔1〕のぶれ信号〜動きベクトル変換処理によって得られる動きベクトルは、画素単位よりも小さい値を含むものであり、このまま用いると後の処理が煩雑なものになる。そのため、この動きベクトルを画素単位に変換する。動きベクトルを画素単位に変換するための方法として、例えば、Bresenhamの直線描画アルゴリズムの方法がある。この方法は、デジタル画面上で指定した任意の2点を通る直線を描画するために最適な画素を選択する際に用いられるアルゴリズムである。
この方法を図4の動きベクトルBに適用した場合について、ベクトルB1を例に挙げて説明する。まず、ベクトルB1の傾きの判定を行う。具体的には、ベクトルB1の始点から終点までの水平方向の増加量及び垂直方向の増加量を比較することで行う。ベクトルB1の場合は、水平方向の増加量が垂直方向の増加量よりも大きく、Xの増加が正でありYの増加も正であるため、これにより傾きが1より小さく正の値であることが判断される。
そしてこの場合、図5に示すように原点O(0,0)の画素(図中の格子一つ分に相当)から出発して、水平方向に1ずつ大きくしていく。そして、画素Aのように、水平方向に1だけ大きくした際にベクトルB1の垂直方向の値が一つ前の画素の垂直方向の値より1大きくならない場合は、その画素の垂直方向の値を一つ前の垂直方向の値と同じにする。
そして、順に水平方向に一つずつ増加させながら垂直方向の判定を行い、図5の画素Cのように、動きベクトルの垂直方向の値と一つ前の画素の垂直方向の値との差が1以上となった場合、垂直方向の値を一つ大きくする。そして、ベクトルB1の始点から終点まで上記の操作を行って画素を選択したあとに、次のベクトルB2も同様にして行う。このとき、ベクトルB2の始点の画素とベクトルB1の終点の画素とを同一のものとするようにして、図4に示す動きベクトルBと同様に画素も連続するものとする。
この操作を順に行うことで、図5に示すように、画素化した動きベクトルBaを得ることができる。また、上記の例においては、水平方向の増加量の絶対値が垂直方向の増加量の絶対値より大きいために、水平方向を1ずつ増やして垂直方向の値を確認することとしたが、垂直方向の増加量の絶対値が水平方向の増加量の絶対値より大きい場合は垂直方向に1ずつ増加させて水平方向の値を確認し、画素を選択する。また、増加量の絶対値が大きい方向の増加量が負である場合には、その方向の値を一つずつ減少させて他方の値を確認し、画素を選択する。
そして、図5に示すような画素化した動きベクトルBaを得た後に、それぞれの画素にベクトルB1〜B4の大きさに基づく重み付けが行われる。この重み付けは、ベクトルB1〜B4の大きさ、即ち、長さに基づいて行われ、長さの逆数に対応した重み付けが行われる。特に、ぶれの速度が遅い部分、即ち、短いベクトルの区間では比較的長い時間同様の信号が撮像素子に入力されており、画像情報において重要な信号が含まれているために重みが大きく設定される。
そして、この重み付けを行うことによって図6に示すような各画素が得られる。図6では、重みの大きい画素ほど黒色となるように表しており、ベクトルB1を変換して得られる画素よりもベクトルB4を変換して得られる画素の方が重みが大きくなるように設定される。また、各画素の重みの総和は1となるようにする。そして、図6のように動きベクトルBを画素化して、さらに重み付けをしたものがPSFとなる。
〔3〕PSF〜画像復元フィルタ変換処理
〔2〕の動きベクトル〜PSF変換処理によって得られたPSFを変換して画像復元フィルタを得る方法について説明する前に、まず、フィルタ係数を用いて画像情報を補正する方法について図7を用いて説明する。図7は、画像復元フィルタ及び画像情報の画素の模式図である。
また、ここで画像情報は水平方向にNh画素、垂直方向にNv画素の解像度でデジタル化されているものとする。このとき、水平方向にi番目、垂直方向にj番目の位置にある画素の画素値をp(i,j)で表すこととする。ここで、i及びjは正の整数とする。
ここで、例えば正方形の領域を有するフィルタ係数を用いて画素情報を補正する場合、画素情報の注目画素及びその近傍の画素と、それぞれの画素に対応するフィルタ係数の画素と、に対して積和演算を行う。この時、フィルタ係数の中央の画素、即ち、画像情報の注目画素に対応する画素をh(l,m)で表し、簡単のためにl及びmが−n以上n以下の整数(nは0以上の整数)とすると、補正後の注目画素の画素値paを以下の式で表すことができる。
このように表される演算について、n=1の場合について例に挙げるとともに図7を用いて説明する。図7(a)に示すように、n=1の場合はフィルタ係数が3×3の領域となる。ここで、図7(b)に示すように、注目画素の画素値をp(i,j)であるとすると、まず、注目画素及び近傍の画素と、それぞれの画素の位置に対応するフィルタ係数の値と、のそれぞれの積算が行われる。すると、図7(c)に示すように、h(−1,1)×p(i−1,j+1)、h(0,1)×p(i,j+1)、h(1、1)×p(i+1,j+1)、h(−1、0)×p(i−1,j)、…、h(1、−1)×p(i+1,j−1)の9つの値が得られる。
そして、以上の積算によって得られた9つの値の和をとったものが、補正後の注目画素の画素値となる。そして、以上の計算をすべての画素値p(i,j)に対して順番に行うことで、画像情報の補正を行うことができる。
ここで、〔2〕の動きベクトル〜PSF変換処理によって得られたPSFを、nを0以上の整数とした(2n+1)×(2n+1)の領域を有するフィルタ係数にモデル化した場合について考えると、このフィルタ係数は、求める画像に対してぶれを与える補正を行うためのフィルタ係数と考えることができる。即ち、(ぶれのない画像の画素値)×(PSFをモデル化したフィルタ係数)=(ぶれのある画像の画素値)と考えることができる。そして、画素単位で水平方向にNh、垂直方向Nvであるぶれのない画像のある画素値をp(i,j)、PSFより得られるフィルタ係数をh(l,m)、ぶれのある画像のある画素値をpa(i,j)とすると、ぶれのある画像のそれぞれの画素値を以下のように表すことができる。
また、上記の式をまとめて行列で表現することが可能であり、行列で表現すると上記の式は、Pa=H×Pと表すことができる。ここでP及びPaは、画像情報をラスター走査順に一次元化した行列である。
ここで、フィルタ係数を行列で表現したHの逆行列であるH-1を求め、ぶれのある画像にH-1をかける、即ち、Pa×H-1を計算することでぶれを補正した画像情報Pを求めることができる。しかしながら、このH-1は通常存在しないため、一般逆行列又は類似逆行列を求める。ここで、例として一般逆行列を求める式について示すと、一般逆行列H*は、H*=(Ht・H+γ・I)-1・Htで表すことができる。ここで、HtはHの転置行列であり、γは補正の強さを調整するパラメータであるスカラー量、IはHt・Hと同じ大きさの単位行列である。このγを大きくすると弱い補正となり、小さくすると強い補正を行うことができる。
そして、このようにして求められるH*を、ぶれを含んだ画像情報Paに乗じることによって求めるぶれを補正した画像情報Pを得ることができるが、例えば画像情報の画素単位のサイズを640×480とした場合、画像情報P及びPaは307200×1の行列、H*は307200×307200の行列となり、非常に大きな行列となってしまうため実用的ではない。そのため、以下の方法で行列のサイズを小さくして使用する。
まず、画像の画素単位のサイズを小さいサイズ、例えば63×63のサイズのものとする。この程度のサイズであれば、画像情報P、Paは3969×1の行列、H*は3969×3969の行列となり計算が容易となる。このとき、H*はぶれを含んだ画像情報Pa全体をぶれの補正された画像情報P全体に補正する行列であり、H*の各行とPaの各行との積のそれぞれは、各画素を補正する演算のそれぞれに相当する。
したがって、H*の真中の行とPaの真中の行との積は、Paの真中の画素の補正の演算に相当するため、このH*の真中の行を抜き出すとともに逆ラスター変換を行って二次元化すると、図7(a)に例示したようなフィルタ係数が得られる。そして、このようにして得られたフィルタ係数が画像復元フィルタとなる。
〔4〕画像情報の補正処理
〔1〕〜〔3〕の処理によってぶれ情報から得られた画像復元フィルタを、ぶれを含む画像情報Paのそれぞれの画素及びその近傍の画素と積和演算する。また、この画像復元フィルタを用いた積和演算も図7で例示したフィルタ係数の計算方法と同様のものであり、注目画素とその近傍の画素の画素値と、それぞれの画素の位置に対応するフィルタ係数の値と、をそれぞれ積算し、得られるそれぞれの値を足し合わせることによって補正後の注目画素の画素値を算出する。
なお、以上の〔1〕〜〔4〕の補正処理方法は画像復元式補正方法の一例であり、適宜変更して行うことができる。また、他の処理を組み合わせて行うこととしても構わなく、例えば、〔1〕〜〔4〕の補正処理の前後に一回ずつメディアンフィルタを用いた補正処理を画像情報に対して行っても構わない。このメディアンフィルタを用いると、注目画素と近傍の画素を含む領域、例えば3×3の領域において、真中の値(3×3のフィルタの例では、9個ある値のうちの5番目に大きい値)を注目画素の値とするようにまず変換する。これにより、値が突出したノイズ成分を低減することができる。
<ぶれ量>
ここで、本発明の実施形態におけるぶれ補正を行うぶれ補正装置と、このぶれ補正装置を備えた電子機器と、ぶれ補正方法とにおいて用いられるぶれ量について説明する。まず、ぶれ量とは上述したPSFから求められるものであり、ぶれの範囲を数値で示すことができるものである。このぶれ量を求める方法について、図6に示したPSFのぶれ量を求める場合を例に挙げ、図8を用いて説明する。図8は、図6に相当するPSFの模式図である。
図8に示すように、ぶれ量Lは0ではない値を有するPSFの要素(画素)の周囲に外接する画素単位の長方形の領域を描き、その対角線の長さを求めることで算出する。そのため、この外接四角形の水平方向の長さをw、垂直方向の長さをhとすると、対角線の長さL、即ち、ぶれ量Lは(w2+h2)1/2で表されるものとなる。
そして、本発明の実施形態におけるぶれ補正を行う電子機器及びそのぶれ補正方法においては、このぶれ量Lを基準にして、例えば画像ファイルの並び替えや、補正にかかる時間の算出、補正の要否などを決定する。なお、このぶれ量Lを用いたぶれ補正動作の詳細については以下の実施例1において詳細に説明する。
<実施例1>
次に、実施例1におけるぶれ補正装置と、このぶれ補正装置を備えた電子機器と、ぶれ補正方法とについて説明するが、具体的な説明の前に、まず実施例1におけるぶれ補正装置、撮像装置及びぶれ補正方法の前提について説明をする。なお、これらの前提は後述する実施例2においても適用する。
まず、以下の実施例1におけるぶれ補正装置を備える電子機器は、図1で示したような撮像部を備える撮像装置であるものとして説明する。また、電源部として、バッテリを備えるものであるとして、特別に説明する場合を除きバッテリから電力の供給を受けて動作するものであることとする。
また、以下に説明する実施例1のぶれ補正におけるぶれ補正方法は、上述した画像復元式補正方法を用いており、一括して画像情報の補正を行うことができるものである。そして、以下の説明においては、ユーザが複数の画像ファイルを選択するとともにその選択された複数の画像ファイルの複数の画像情報に対して連続的に補正を行うことを、「一括画像情報補正」とよぶ。
また、以下の実施例1において、画像ファイルに含まれるぶれ情報とは、例えば、動きベクトル(図5のように画素で表現したものでも構わないし、図4のように画素で表現していないものでも構わない。以下同じ)、PSF、画像復元フィルタのいずれかを指すものとする。そして、ぶれ量は上述したようにPSFから算出し、ぶれ量を取得すると表現する場合において、ぶれ情報が動きベクトルであるような場合は動きベクトルをPSFに変換した後にぶれ量を算出することで取得することとする。また、同様の場合において、ぶれ情報がPSFである場合は上述したようにこのPSFからそのままぶれ量を算出することで取得することとする。また、ぶれ情報が画像復元フィルタである場合は、画像復元フィルタを算出する際に求めたPSFを用いて予めぶれ量を算出するとともに、画像ファイルにぶれ情報である画像復元フィルタとぶれ量とを付しておき、このぶれ量を直接取得することとする。
また、ぶれ情報は、動きベクトルやPSF、画像復元フィルタなどを複数組み合わせたものであっても構わない。また、ぶれ量を予め算出しておくとともにぶれ情報に含ませる構成としても構わなく、この場合はぶれ量を取得する際に演算を伴わない。また、ぶれ情報を圧縮して画像ファイルに付すこととしても構わない。
次に、実施例1におけるぶれ補正装置の構成及び動作の概略について図9を用いて説明する。図9(a)は、実施例1におけるぶれ補正装置のブロック図であり、撮像装置の構成について示した図1のぶれ補正部3に相当する部分を詳細に示したものである。図9(b)は、実施例1におけるぶれ補正装置の補正動作のタイミングについて模式的に示した概念図である。
上述したように、画像情報の補正は、ぶれ情報を変換することによって画像復元フィルタを作成し、その画像復元フィルタを用いて画像情報にフィルタ処理を行うことで行われる。そして、図9(a)に示すように、ぶれ補正装置30は、画像情報とぶれ情報とを備えた画像ファイルが記録される記録部31と、記録部31から読み出された画像情報が一時的に記憶される画像情報メモリ32と、ぶれ情報が一時的に記憶されるぶれ情報メモリ33と、ぶれ情報から画像復元フィルタを作成するとともに出力するぶれ情報計算回路34と、ぶれ情報計算回路34から出力される画像復元フィルタが一時的に記憶される画像復元フィルタメモリ35と、画像情報と画像復元フィルタとを用いて補正を行い補正後の画像ファイルを作成する画像情報補正回路36と、補正後の画像ファイルが出力されて一時的に記憶される補正後画像ファイルメモリ37と、を備える。
また、図9(a)に加えて図9(b)を用いて、従来のぶれ補正装置の動作の概略について説明する。まず、補正動作が開始されると、記録部31に記録される画像ファイルの画像情報が画像情報メモリ32に読み出され、同時にぶれ情報がぶれ情報メモリ33に読み出される。そして、ぶれ情報がぶれ情報計算回路34に読み出されて上述したような計算処理が行なわれ、動きベクトルやPSFに変換される。そして、最終的に画像復元フィルタが作成されて、画像復元フィルタメモリ35に記憶される。また、この画像復元フィルタを作成している間は画像情報の補正処理を行うことができないため、画像情報は画像情報メモリ35に保持され続けることとなる。そのため、図9(b)に示すように、画像情報補正回路36は画像復元フィルタが作成されるまでの間動作せず、待機状態となる。
そして、画像復元フィルタが作成されると、画像復元フィルタメモリから画像復元フィルタが画像情報補正回路36に読み出されて設定される。次に、画像情報が画像情報メモリ35から画像情報補正回路36に読みだされ、補正動作が開始される。そして、補正動作が終了すると、補正後の画像ファイルが補正後画像ファイルメモリ37に出力されて一時的に保持された後に記録部31に送られ、記録部31で記録される。また、次に補正処理を行う画像ファイルのぶれ情報がぶれ情報メモリ33に読み出されるとともに、画像情報が画像情報メモリ32に読み出され、以降上述した動作と同様の動作を行なう。
また、以下に上述したぶれ補正装置を備えた撮像装置の動作について説明する。最初に、撮像装置の全体的な動作の概要について図10のフローチャートを用いて説明する。
図10に示すように、撮像装置の動作が開始すると、まず初期画像が表示され(STEP1)、ユーザの必要に応じて一般操作が行われる(STEP2)。この一般操作の詳細については後述するが、例えば、画像ファイルの削除や、単数の画像情報の補正、補正の解除などの操作が含まれる。また、ここで一括画像情報補正動作の要否決定は一般操作に含めないこととする。
STEP2の一般操作が終了すると、次に一括画像情報補正動作を行うか否かの選択がユーザによって行われる。ここで、一括画像情報補正動作を行わないことが選択された場合は(STEP3、NO)、次に撮像装置の操作を終了するか否かの選択が行われる(STEP4)。ここで、撮像装置の操作を終了する指示があると(STEP4、YES)、撮像装置の動作が終了する。一方、撮像装置の操作を終了する指示がない場合(STEP4、NO)、STEP1の初期画像表示に戻る。
また、一括画像情報補正動作を行うことが選択された場合は(STEP3、YES)、最初に、補正する画像ファイルの選択がユーザによって行われる(STEP5)。そして、STEP5において画像ファイルの選択が行われると、次に、選択された画像ファイルの画像情報に対して補正が行われる(STEP6)。そして、STEP6において画像情報の補正が行われると、補正前及び補正後の画像ファイルによる画像が表示され、補正前後の画像ファイルの画像の確認が行われる(STEP7)。
STEP7において補正前及び補正後の画像ファイルの画像の確認が行われると、撮像装置の操作を終了するか否かの選択が行われる(STEP4)。そして、撮像装置の操作を終了する指示があった場合は(STEP4、YES)、撮像装置の動作を終了する。一方、撮像装置の操作を終了する指示がない場合(STEP4、NO)、STEP1の初期画像表示に戻る。
次に、図10に示した〔1〕初期画像表示動作(STEP1)、〔2〕一般操作(STEP2)、〔3〕補正画像ファイル選択動作(STEP5)、〔4〕一括画像情報補正動作(STEP6)及び〔5〕補正結果の表示動作(STEP7)、におけるそれぞれの動作の詳細について説明する。まず、初期画像表示を行うSTEP1について、図11のフローチャートを用いて説明する。
〔1〕初期画像表示動作
初期画像表示動作が開始されると、まず撮像装置に記録されている全ての画像ファイルが選択される(STEP101)。上述したように、図9の記録部31には補正前及び補正後の画像ファイルが記録されており、このとき記録部31に記録される全ての補正前及び補正後の画像ファイルが選択される。そして、STEP101で選択された全ての画像ファイルを並び替えるために、ソートパラメータが確認される(STEP102)。このソートパラメータとしては、例えば、上述したようなぶれ量や、画像ファイルの名称の数字部分(上述した例の「ORGN0017」、「STAB0017」における0017の部分)などがあり、ユーザが設定することができる。
STEP102において確認されたソートパラメータがぶれ量ではなく、上述のような画像ファイルの名称の中の数字などである場合(STEP103、NO)、このソートパラメータに従って画像ファイルが並び替えられるとともに(STEP113)、並べられた順に画像ファイルの画像が表示される(STEP112)。また、このとき上述のように拡張子がJPGである補正前及び補正後の画像ファイルの画像が表示され、拡張子がTMPである画像ファイルの画像は表示されないこととなるが、この拡張子の設定方法については後述する。そして、STEP112において画像表示を行うとともに初期画像表示動作を終了する。
一方、ソートパラメータがぶれ量である場合(STEP103、YES)、それぞれの補正前画像ファイルに含まれるぶれ情報からぶれ量を取得して(STEP104)補正前の画像ファイルを並び替える(STEP105)。このとき画像ファイルの名称の英語部分(上述した例の「ORGN0017」、「STAB0017」におけるORGN、STAB部分)によって補正前の画像ファイルであることを判断する。なお、以下においても同様の方法で補正前と補正後とを判断することとする。
そして、STEP105においてぶれ量による補正前の画像ファイルの並び替えが行われると、次に補正後の画像ファイルが存在するか否かが確認される(STEP106)。このとき、補正後の画像ファイルが存在しない場合は(STEP106、NO)、ぶれ量順に並び替えた補正前の画像ファイルのみを並び替えた順に表示する(STEP112)。そして、STEP112において画像ファイルの画像表示を行うとともに初期画像表示動作を終了する。
一方、補正後の画像ファイルが存在する場合は(STEP106、YES)、次にぶれ量順に並び替えた補正前の画像ファイルの後に補正後の画像ファイルを挿入する補正後画像ファイル挿入ループ動作が行われる(STEP107〜111)。このループ動作はすべての補正後の画像ファイルについて行われ、補正後の画像ファイルの総数をKとすると、1番目からK番目までの補正後の画像ファイルについて動作が行われたときにループ動作を終了する。
この補正後画像ファイル挿入ループの動作が開始されると(STEP107)、まず1番目の補正後の画像ファイルが選択される(STEP108)。そして、STEP108で選択された補正後の画像ファイルに対応する補正前の画像ファイルが存在するか否かが確認される(STEP109)。このとき、画像ファイルの名称のうち数字部分(上述した例の「ORGN0017」、「STAB0017」における0017の部分)によって、補正前及び補正後の画像ファイルの対応関係を判断する。なお、以下においても同様の方法で対応関係を判断することとする。
補正前の画像ファイルが存在する場合は(STEP109、YES)、順番がその補正前の画像ファイルの後になるように挿入し(STEP110)、ループ動作を終了するか否かの判断を行う(STEP111)。一方、補正前の画像ファイルが存在しない場合は(STEP109、NO)、その補正後の画像ファイルの順番を変えることなく、ループ動作を終了するか否かの判断を行う(STEP111)。
そして、STEP111において、K番目の補正後の画像ファイルに対する動作を行ってない場合は、ループ動作を継続するためにSTEP107に戻り、次の補正後の画像ファイルを選択して(STEP108)同様の動作を行う。一方、K番目の補正後の画像ファイルに対する動作を行っていた場合はループ動作を終了し、並び替えた順に画像ファイルの画像の表示を行う(STEP112)。このとき、このとき上述のように拡張子がJPGである補正前及び補正後の画像ファイルの画像が表示され、拡張子がTMPである画像ファイルの画像は表示されないこととなるが、この拡張子の設定方法については後述する。そして、STEP112において画像表示を行うとともに初期画像表示動作を終了する。
以上の一連の初期画像表示動作を行うことによって、全ての画像ファイルがユーザの所望の方法で並び替えられて表示されるため、次の一般操作においてユーザが操作の対象となる画像ファイルを選択しやすくすることができる。
また、図12に初期画像表示によって表示される画面の模式図を示す。このとき、図11のSTEP105において、ソートパラメータをぶれ量にした場合に表示される画面は図12(a)に示すような画面となる。即ち、画面の左上から右下にかけてぶれ量が小さくなるようにサムネイル画像40が並べられて表示されている。この図12(a)において、各サムネイル画像40の中に付した番号は、対応する画像ファイルの名称の数字部分に相当するものであり、ここでは簡単のためにそれぞれの画像ファイルのサムネイル画像40をこのような1〜6の番号で示すこととしている。
なお、このとき図12(c)に示すように、ぶれ量41を各サムネイル画像40中に表示するようにしても構わないし、サムネイル画像40外に表示することとしても構わない。また、この図は片方表示としているが、両方表示としても構わない。また、図12のそれぞれの画面の左下部に示すメニュー42は、後述する一般操作のそれぞれの操作や一括画像情報補正を行う場合にユーザが適宜操作するものである。
この図12(c)を両方表示にした一例を図12(d)に示す。また、図12(d)は画像ファイルの1番に対応する補正後の画像ファイルが記録されていた場合について示している。このように、補正後の画像ファイルは対応する補正前の画像ファイルの後ろに並べられて表示される。ただし、この例ではサムネイル画像40を画面上に6個までしか表示できないこととしているため、4番の画像ファイルのサムネイル画像はこの画面に表示されていない。しかし、ユーザが次の画像ファイルのサムネイル画像を表示するボタンなどを押すことによって、4番のサムネイル画像は画面上に表示される。
一方、例えばSTEP113において画像ファイルの番号によって並び替えを行った場合に表示される画面を、図12(b)に示す。このとき、図12(a)と同様にサムネイル画像で表示することとすると、画像ファイルの名称の数字部分によって並び替えられた画像ファイルが図12(b)に示すように表示されることとなる。なお、この場合も図12(c)と同様に、ぶれ量を各サムネイルに表示するようにしても構わない。
なお、図12では画像ファイルをサムネイル画像40で表示することとしているが、一枚ずつ大きく表示して、ユーザが送る又は戻すボタンを押すことによって、順に画像ファイルの画像を表示することとしても構わない。また、本例ではサムネイル画像40が6個までしか表示されていないが、これより少なくしても多く表示しても構わない。
〔2〕一般操作
次に、〔1〕の初期画像表示動作の後に行われる一般操作について図13〜図17のフローチャートを用いて説明する。この図13〜図17は一般操作を示すフローチャートであり、それぞれの図に各操作を分けて記載している。まず、図13に示すように、一般操作では〔2−1〕表示モードの切替(STEP201)、〔2−2〕画像ファイルの削除(STEP202)、〔2−3〕画像情報の単数補正(STEP203)、〔2−4〕画像ファイルの補正の解除(STEP204)の動作を行うことが可能であり、ユーザはそれぞれの動作の実行の要否決定を行う。
〔2−1〕表示モード切替動作
まず、図13において表示モード切替動作を行うことが指示されると(STEP201、YES)、図14に示すように、現在の表示モードが片方表示であるか両方表示であるかが確認される(STEP201a)。ここで、片方表示は、ある画像ファイルに対して補正前及び補正後の画像ファイルが存在する場合、即ち、画像ファイルの名称の英語部分が異なり数字部分が同一である画像ファイルの組が存在する場合に、補正前及び補正後のどちらか一方の画像ファイルの画像のみを表示するモードである。一方、両方表示は、補正前、補正後に関係なく全ての画像ファイルの画像を表示する表示モードである。
ここで、両方表示であった場合(STEP201a、YES)は、片方表示に切替えるために画像ファイルの拡張子を変更する拡張子変更ループ1を行う(STEP201b〜201g)。このループ動作は全ての画像ファイルについて行われ、画像ファイルの総数をMとすると、1番目からM番目までの画像ファイルについて動作が行われたときにループ動作を終了する。
拡張子変更ループ1が開始されると(STEP201b)、まず1番目の画像ファイルが選択され(STEP201c)、STEP201cで選択された画像ファイルが補正前の画像ファイルであるか否かが確認される(STEP201d)。このとき、選択された画像ファイルが補正前の画像ファイルでない場合(STEP201d、NO)、ループ動作を終了するか否かの判断を行う(STEP201g)。一方、選択された画像ファイルが補正前の画像ファイルである場合(STEP201d、YES)、対応する補正後の画像ファイルが存在するか否かが確認される(STEP201e)。
次に、選択された画像ファイルに対応する補正後の画像ファイルがない場合は(STEP201e、NO)、ループ動作を終了するか否かの判断を行う(STEP201g)。一方、補正後の画像ファイルがある場合は(STEP201e、YES)、選択した補正前の画像ファイルが表示されないようにするために拡張子をTMPに変更し(STEP201f)、ループ動作を終了するか否かの判断を行う(STEP201g)。
そして、STEP201gにおいて、M番目の画像ファイルに対する動作を行ってない場合は、ループ動作を継続するためにSTEP201bに戻り、次の画像ファイルを選択して(STEP201c)同様の動作を行う。一方、M番目の補正後の画像ファイルに対する動作を行っていた場合はループ動作を終了し、画像ファイルの画像を再表示する(STEP201h)。このとき、拡張子がJPGとなっている画像ファイルの画像のみ表示される。そして、表示モード切替動作を終了し、図13に示す画像ファイル削除の要否決定を行う(STEP202)。
以上のように拡張子を切替えることによって、補正後の画像ファイルが表示されている補正前の画像ファイルのみが非表示になるため、補正前及び補正後のどちらか一方の画像ファイルのみが表示される片方表示とすることができる。
また、これとは逆に、表示モード切替動作を開始する際に片方表示であった場合(STEP201a、NO)、両方表示に切替えるために画像ファイルの拡張子を変更する拡張子変更ループ2を行う(STEP201i〜201m)。このループ動作は全ての画像ファイルについて行われ、画像ファイルの総数をMとすると、1番目からM番目までの画像ファイルについて動作が行われたときにループ動作を終了する。
拡張子変更ループ2が開始されると(STEP201i)、まず1番目の画像ファイルが選択され(STEP201j)、STEP201jで選択された画像ファイルの拡張子がTMPであるか否かが確認される(STEP201k)。このとき、選択された画像ファイルの拡張子がTMPでない場合(STEP201k、NO)、ループ動作を終了するか否かの判断を行う(STEP201m)。一方、選択された画像ファイルの拡張子がTMPである場合(STEP201k、YES)、拡張子をJPGに変更するとともに(STEP201l)、ループ動作を終了するか否かの判断を行う(STEP201m)。
そして、STEP201mにおいて、M番目の画像ファイルに対する動作を行ってない場合は、ループ動作を継続するためにSTEP201iに戻り、次の画像ファイルを選択して(STEP201j)同様の動作を行う。一方、M番目の補正後の画像ファイルに対する動作を行っていた場合はループ動作を終了し、画像ファイルの画像を再表示する(STEP201h)。このとき、すべての画像ファイルの拡張子がJPGとなっているため、すべての画像ファイルの画像が表示される。そして、表示モード切替動作を終了し、図13に示す画像ファイル削除の要否決定を行う(STEP202)。
なお、画像再表示とは、初期画像表示と同様に画像ファイルの画像の表示を行うことである。また、以下おいて画像を再表示すると表現する場合は、特別に説明する場合を除き初期画像表示と同様の表示(例えば、図12に示すようなサムネイル画像40による表示)を行うことを表現することとする。そして、画像再表示を行うことによって、次の操作においてユーザが対象とする画像ファイルを選択しやすいようにするとともに、どのような画像ファイルが存在しているのかを把握しやすくすることができる。
上述したように拡張子を切替えることによって、非表示の画像ファイルを表示することができるようになるため、補正前及び補正後の両方の画像ファイルが表示される両方表示とすることができる。また、両方表示から片方表示に切替えの際には、対応する画像ファイルの有無を確認した上で補正前及び補正後の画像ファイルの一方を非表示にすることとしているため、補正前または補正後の一方のみ存在して非表示になる画像ファイルが生じることを防ぐことができ、ユーザにその存在を忘れられる画像ファイルが生じることを防ぐことができる。
〔2−2〕画像ファイル削除動作
次に、画像ファイルの削除動作について説明する。図13に示すように、表示モード切替動作を行って終了するか(STEP201、YES及びA1〜A2)、表示モード切替動作を行わない場合(STEP201、NO)、次に画像ファイルの削除動作の要否決定が行われる(STEP202)。そして、画像ファイルの削除動作を行うことが指示された場合(STEP202、YES)、画像ファイルの削除動作が行われるがこの動作の詳細について図15を用いて説明する。
図15に示すように、画像ファイルの削除動作が開始されると、まず削除対象となる画像ファイルの選択が行われる(STEP202a)。このとき、表示モードが片方表示でなく両方表示であった場合(STEP202b、NO)、選択した画像ファイルを削除する(STEP202f)。そして、削除後に画像ファイルの再表示を行うとともに(STEP202i)画像ファイルの削除動作を終了し、図13に示す画像ファイルの単数補正の要否決定を行う(STEP203)。
一方、画像ファイルを片方表示している場合(STEP202b、YES)、まず補正前の画像ファイルであるか否かが確認される(STEP202c)。ここで、選択した画像ファイルが補正前の画像ファイルでなく補正後の画像ファイルである場合(STEP202c、NO)、対応する補正前の画像ファイルがあるか否かが確認される(STEP202g)。
このとき、対応する補正前の画像ファイルがない場合は(STEP202g、NO)、選択している画像ファイルのみを削除する(STEP202f)。そして、削除後に画像ファイルの再表示を行うとともに(STEP202i)画像ファイルの削除動作を終了し、図13に示す画像ファイルの単数補正の要否決定を行う(STEP203)。
また、対応する補正前の画像ファイルがある場合(STEP202g、YES)、この対応する補正前の画像ファイルの拡張子はTMPであり非表示になっている。このとき、片方表示をしている場合において画像ファイルを削除するということは、その画像自体が不要であることをユーザが示しているため、補正前及び補正後の画像ファイルを削除することが望ましい。そこで、この補正前の画像ファイルを削除するとともに(STEP202h)、選択している補正後の画像ファイルも削除する(STEP202f)。そして、削除した後に画像ファイルの再表示を行うとともに(STEP202i)画像ファイルの削除動作を終了して、次に図13に示す画像ファイルの単数補正の要否決定を行う(STEP203)。
これに対し、STEP202aで選択した画像ファイルが補正前の画像ファイルであると判断された場合は(STEP202c、YES)、次に補正後の画像ファイルがあるか否かが確認される(STEP202d)。このとき、対応する補正後の画像ファイルがない場合は(STEP202d、NO)、選択している画像ファイルのみを削除する(STEP202f)。そして、削除後に画像ファイルの再表示を行うとともに(STEP202i)画像ファイルの削除動作を終了し、図13に示す画像ファイルの単数補正の要否決定を行う(STEP203)。
また、対応する補正後の画像ファイルがある場合(STEP202d、YES)、この補正後の画像ファイルの拡張子はTMPであり非表示になっている。そのため、この補正前の画像ファイルを削除するとともに(STEP202e)、選択している補正後の画像ファイルも削除する(STEP202f)。そして、削除した後に画像ファイルの再表示を行うとともに(STEP202i)画像ファイルの削除動作を終了し、図13に示す画像ファイルの単数補正の要否決定を行う(STEP203)。
以上のように画像ファイルの削除動作を行うことによって、片方表示のときに補正前及び補正後の画像ファイルのうち表示されている片方の画像ファイルのみが削除されることを防ぐことができる。これにより、非表示になっている画像ファイルの存在をユーザが忘れることによって、この非表示の画像ファイルがいつまでも残存するということを防ぐことができる。また、両方表示の場合に削除する場合においては、一方を削除しても他方は表示されているためユーザにその存在を忘れられることがない。
〔2−3〕画像情報単数補正動作
次に、画像情報の単数補正動作について説明する。図13に示すように、画像ファイル削除動作を行って終了するか(STEP202、YES及びB1〜B2)、画像ファイルの削除を行わない場合(STEP202、NO)、その次に画像ファイルの単数補正動作の要否決定が行われる(STEP203)。そして、画像情報の単数補正動作を行うことが指示された場合(STEP203、YES)、画像情報の単数補正動作が行われるがこの動作の詳細について図16を用いて説明する。なお、画像情報単数補正とは一つの画像ファイルを選択し、その画像情報について補正することである。
図16に示すように、画像ファイルの単数補正動作が開始されると、まず補正対象となる補正前の画像ファイルの選択が行われる(STEP203a)。そして、次にこの選択された画像ファイルに対応する補正後の画像ファイルが存在しているか否かの確認が行われ(STEP203b)、補正後の画像ファイルが存在する場合は(STEP203b、YES)、表示モードが確認される(STEP203h)。
このとき、片方表示であれば(STEP203h、YES)、補正後の画像ファイルが表示されていないために補正後の画像ファイルの拡張子をJPGに変更する。そして、片方表時を行っているため選択した補正前の画像ファイルの拡張子をTMPに変更し(STEP203j)、非表示になるように設定して画像ファイルの画像の再表示を行い(STEP203l)画像情報単数補正動作を終了する。そして、図13に示す画像ファイルの補正解除の要否決定を行う(STEP204)。
一方、片方表示ではなく両方表示である場合(STEP203h、NO)、既に補正後の画像ファイルが表示されているにも関わらずユーザが補正を要求していることになるので、ユーザに対して補正後の画像ファイルが存在することを通知する(STEP203k)。そして、画像情報単数補正動作を終了して、図13に示す画像ファイルの補正解除の要否決定を行う(STEP204)。
また、STEP203aにおいて選択された補正前の画像ファイルに補正後の画像ファイルタが存在してない場合(STEP203b、NO)、画像復元フィルタを取得して画像ファイルの補正を行う(STEP203c)。このとき、ぶれ情報を図1の画像復元フィルタ作成部に読み出して画像復元フィルタを作成する。また、ぶれ情報に画像復元フィルタが含まれている場合は、直接これを利用することができる。
そして、STEP203cで取得した画像復元フィルタを用いて画像ファイルの補正処理を行い(STEP203d)、補正前と補正後の画像ファイルを表示する(STEP203e)。STEP203において補正前及び補正後の画像ファイルを表示した後、表示モードを確認し(STEP203f)、両方表示であれば(STEP203f、NO)画像ファイルの画像を再表示して(STEP203l)画像情報単数補正動作を終了し、図13に示す画像ファイルの補正解除の要否決定を行う(STEP204)。
一方、STEP203fにおいて片方表示であることが確認された場合は(STEP203f、YES)、選択した補正前の画像ファイルの拡張子をTMPに変更して(STEP203g)非表示となるように設定する。そして、画像情報単数補正動作を終了し、図13に示す画像ファイルの補正解除の要否決定を行う(STEP204)。
以上のように画像情報を単数で補正する場合において、初期画像表示の際にぶれ量を用いて並び替えてあると、どの画像ファイルを補正するために選択するべきであるかという判断を容易に行なうことができる。
〔2−4〕画像ファイルの補正解除動作
次に、画像ファイルの補正解除動作について説明する。図13に示すように、画像情報単数補正動作を行って終了するか(STEP203、YES及びC1〜C2)、画像情報の単数補正を行わない場合(STEP203、NO)、その次に画像ファイルの補正解除動作の要否決定が行われる(STEP204)。そして、画像ファイルの補正解除動作を行うことが指示された場合(STEP204、YES)、画像ファイルの補正解除動作が行われるがこの動作の詳細について図17を用いて説明する。
図17に示すように、画像ファイルの補正解除動作が開始されると、まず補正解除対象となる補正後の画像ファイルの選択が行われる(STEP204a)。そして、次にこの選択された画像ファイルに補正前の画像ファイルが存在しているか否かの確認が行われ(STEP204b)、補正後の画像ファイルが存在する場合は(STEP204b、YES)、表示モードが確認される(STEP204d)。
このとき、片方表示を行っている場合(STEP204d、YES)、補正前の画像ファイルが表示されていないために補正前の画像ファイルの拡張子をJPGに変更する。そして、片方表時を行っているため選択した補正後の画像ファイルの拡張子をTMPに変更し(STEP204f)、非表示になるように設定して画像ファイルの画像の再表示を行い(STEP204g)画像ファイル補正解除動作を終了する。そして、図13に示すように一般操作を終了して、図10に示すように一括画像情報補正の要否決定を行う(STEP3)。
一方、片方表示ではなく両方表示である場合(STEP204d、NO)、既に補正前の画像ファイルが表示されているにも関わらずユーザが補正解除を要求していることになるので、ユーザに対して補正前の画像ファイルが既に存在することを通知する(STEP204h)。そして、画像ファイル補正解除動作を終了するとともに図13に示すように一般操作を終了し、図10に示すように一括画像情報補正の要否決定を行う(STEP3)。
また、STEP204aで選択した補正後の画像ファイルに対応する補正前の画像ファイルが存在しない場合は(STEP204b、NO)、補正を解除することはできないために、ユーザに補正解除ができないことを通知する(STEP204c)。そして、画像ファイル補正解除動作を終了するとともに図13に示すように一般操作を終了し、図10に示すように一括画像情報補正の要否決定を行う(STEP3)。
以上のように、片方表示にして補正前の画像ファイルを非表示にしておくことによって、同じ画像である画像ファイルを二つ表示することなく保存することが可能となる。また、このように補正前の画像ファイルに戻したいときにも、補正前の画像ファイルは非表示であるだけなので、すぐに補正前の画像ファイルの画像を表示することができる。
〔3〕補正画像ファイル選択動作
次に、一括画像情報補正動作について説明する。まず一括画像情報補正を行う際の画像ファイルの選択動作について図18を用いて説明する。図18は、図10における補正画像ファイル選択(STEP5)の動作の詳細を示すフローチャートである。
図18に示すように、一括画像情報補正を行うことが指示されると(図10、STEP3、YES)、まず、撮像装置によって画像ファイル選別ループ動作が行われる(STEP501〜508)。このループ動作は全ての画像ファイルについて行われ、画像ファイルの総数をMとすると、1番目からM番目までの画像ファイルについて動作が行われたときにループ動作を終了する。
この画像ファイル選別ループ動作が開始すると(STEP501)、まず1番目の画像ファイルが選択され、補正前の画像ファイルであるか否かの確認が行われる(STEP502)。このとき、補正後の画像ファイルであれば(STEP502、NO)補正する必要がないので、次にループ動作を終了するか否かの判断を行う(STEP508)。
一方、補正前の画像ファイルであれば(STEP502、YES)、次に、対応する補正後の画像ファイルがあるか否かを確認する(STEP503)。このとき、対応する補正後の画像ファイルが存在すれば(STEP503、NO)、この補正前の画像ファイルの画像情報は補正する必要がないので、次にループ動作を終了するか否かの判断を行う(STEP508)。
そして、選択された画像ファイルが補正前であり(STEP502、YES)、かつ対応する画像ファイルがないものであれば(STEP503、YES)、次にその画像ファイルのぶれ量を取得する(STEP505)。このとき、取得したぶれ量がある値TH1(例えば、1)よりも小さい場合(STEP506、NO)、この画像ファイルは補正する必要がないので、次にループ動作を終了するか否かの判断を行う(STEP508)。
一方、ぶれ量が大きく、ある値TH1を超えた場合は(STEP506、YES)、画像情報の補正が必要である可能性があるために補正候補画像ファイルリストに追加される(STEP507)。そして、次にループ動作を終了するか否かの判断を行う(STEP508)。
そして、STEP508において、M番目の補正後の画像ファイルに対する動作を行ってない場合は、ループ動作を継続するためにSTEP501に戻り、次の画像ファイルを選択して(STEP502)同様の動作を行う。一方、M番目の補正後の画像ファイルに対する動作を行っていた場合はループ動作を終了し、補正候補画像ファイルリストの読出を行う(STEP509)。そして、この補正候補画像ファイルリストの画像ファイルをぶれ量順に並び替える(STEP510)。
STEP510においてぶれ量順に並び替えられると、次に画像ファイルの画像及びぶれ量が表示される(STEP511)。このときの表示画面の模式図を図19(a)に示す。なお、図19は、初期画像表示の画面について示した図12と同様に示したものであり、補正動作前の画像ファイルの選別及び並び替え結果を表示する画面の模式図である。また、図18のSTEP506において、選択された画像ファイルを補正候補画像ファイルリストに追加するか否かを判断するための値TH1は1としている。
この場合、図12(c)に示している4番の画像ファイルはぶれ量が0であったために選別からもれ、さらに、補正後の画像ファイルが存在している1番の画像ファイルも選別からもれることとなる。そのため、図19(a)では、6個ある画像ファイルのうちの1番と4番以外の他の4つの画像ファイルのサムネイル画像40が表示されることとなる。また、画面の左上から右下にかけて、ぶれ量41が小さくなるように並び替えられて表示されている。
また、図19(a)において表示される補正前の画像ファイルのサムネイル画像40は、すべて補正後の画像ファイルが存在しないものである。そのために、表示方法が両方表示であっても片方表示であっても、図19(a)に示すように同様に表示される。
そして、この状態でユーザによって補正を行う画像ファイルが選択される(STEP512)。そして、選択後に画像ファイルの補正を開始するか否かの決定がユーザによって行われ(STEP513)、図19(a)における補正開始43を選択するなどして補正を開始する指示が出た場合は(STEP513、YES)、STEP512において選択された画像ファイルの画像が再表示されるとともに(STEP514)、補正画像ファイル選択を終了して、図10のSTEP6に示す一括画像情報補正を行う。一方、補正を開始する指示が出ない場合は(STEP513、NO)、再度画像ファイルとぶれ量の表示にもどり(STEP511)、画像ファイルの選択を行う(STEP512)。
このとき、画像ファイルを複数選択することが可能であるが、一つだけ選択することも可能である。そして、このように画像ファイルをぶれ量の大きさによって並び替えて画像を表示することで、ユーザが補正すべき画像ファイルを選択する際に、ぶれの大きいもの、又は、小さいものから順に判断していくことが可能となる。そのため、ユーザは並び替えた画像ファイルの画像を順に確認していき、ある画像ファイルより後、又は、前を補正する、という簡単な判断を下すだけで、補正すべき画像ファイルを容易に選択することができ、選択時間の短縮化と選択の容易化とを図ることができる。さらに、補正すべき画像ファイルの選択もれをも防ぐことができる。
また、ぶれ量が値TH1より小さい画像ファイルや、補正後の画像ファイルが存在する画像ファイルは、補正候補画像ファイルリストに記載されないために図19(a)に示すような選択画面において表示されない。したがって、この画面に表示される画像ファイルはほとんどが補正する必要がある画像ファイルであるため、ユーザはさらに容易に補正を行う画像ファイルの選択を行うことができる。
なお、補正すべき画像を選択する際に、あるぶれ量以上を全選択できるような構成としても構わない。また、このように構成するときに、図19(a)に示す選択画面において、補正を行う画像ファイルと補正を行わない画像ファイルとの境界線を選択できるように構成しても構わないし、ある画像ファイルを選択することによって、その画像ファイルよりもぶれ量の大きい画像ファイルが全選択されるように構成しても構わない。
また、値TH1をユーザが設定できるようにしても構わない。このようにすることによって、補正候補画像ファイルリストに記載された画像ファイルのほぼ全てを選択して補正することとなり、さらに容易に補正すべき画像ファイルをユーザが選択することができるようになる。また、値TH1をユーザが設定するとともに、選別された画像ファイルを自動的に全て補正するように選択することとしても構わない。
また、STEP514において補正するために選択された画像ファイルの画像を再表示することとしたが、ここでは再表示を行わず、実際に補正を行う際に画像ファイルを再表示することとしても構わない。また、図19においては、画像ファイルのサムネイル画像40にぶれ量41を付して表示することとしているが、ぶれ量を付さず表示することとしても構わない。また、サムネイル画像40ではなく、一つの画像のみ大きく表示することとしても構わない。
〔4〕一括画像情報補正動作
〔3〕の補正画像ファイル選択動作によって選択された画像ファイルの画像情報に対して一括画像情報補正する場合について、図20を用いて説明する。図20は、一括画像情報補正動作を示すフローチャートである。
図20に示すように、一括画像情報補正動作が開始されると、まず選択された全ての画像ファイルの画像情報を補正するためにかかる総補正時間Tを計算するための補正時間計算ループ動作が行われる(STEP601〜606)。このループ動作は、〔3〕の補正画像ファイル選択動作によって選択された画像ファイルの全てについて行われ、この選択された画像ファイルの総数をNとすると、1番目からN番目までの画像ファイルについて動作が行われたときにループ動作を終了する。
この補正時間計算ループ動作が開始されると(STEP601)、まず1番目のファイルの画像情報が読み出されるとともに(STEP602)、この読み出された画像情報に対応するぶれの大きさが確認される(STEP603)。そして、このぶれの大きさに基づいて補正時間tを算出するとともに補正時間tをメモリなどに一時的に記憶した後に(STEP604)、このループ動作を終了するか否かの判断を行う(STEP605)。
このとき、STEP605において、N番目の画像ファイルに対する動作を行ってない場合は、ループ動作を継続するためにSTEP601に戻り、次の画像ファイルを選択して(STEP602)以降、上述したものと同様の動作を行う。また、N番目の画像ファイルに対する動作を行っている場合は、この補正時間計算ループ動作を終了する。なお、STEP604における補正時間tの計算方法の詳細については後述する。
補正時間計算ループ動作によってそれぞれの画像ファイルにおける補正時間tが算出されると、次にこの補正時間tを合計して総補正時間Tを計算する(STEP606)。そして、総補正時間Tから使用バッテリ量Xが推定されるとともに(STEP607)、使用可能な残りバッテリ量Yが取得される(STEP608)。なお、STEP607における使用バッテリ量Xの計算方法についても、補正時間tの計算方法の説明とあわせて後述する。
次に、STEP607においてと、STEP608で取得した残りバッテリ量Yとが比較される(STEP609)。このとき、推定された使用バッテリ量Xが残りバッテリ量Yよりも小さい場合(STEP609、NO)、補正動作の途中でバッテリ量が尽きる可能性が低いため、次に画像情報補正ループ動作へと進む(STEP611〜620)。
これに対し、推定された使用バッテリ量Xが残りバッテリ量Yよりも大きい場合は(STEP609、NO)、補正の途中でバッテリ量が尽きて補正を中断する可能性がある。そのため、この場合は補正動作を行う前にユーザに警告を発するとともに(STEP610)、補正を実行するか否かをユーザに判断させる(STEP611)。このとき、補正を行わない指示が入力された場合は(STEP611、NO)そのまま一括画像情報補正動作を終了し、補正を行う指示が入力された場合は(STEP611、YES)、次に画像情報補正ループ動作へと進む(STEP611〜620)。
この画像情報補正ループ動作は、STEP601〜605の補正時間計算ループと同様に、〔3〕の補正画像ファイル選択動作によって選択された画像ファイルの全ての画像情報について行われる。そして、選択された画像ファイルの総数を補正時間計算ループ(STEP601〜605)と同様にNとすると、1番目からN番目までの画像情報について動作が行われたときにループ動作を終了する。なお、詳細については後述するが、残りバッテリ量Yiが少なくなった時にはループ動作の途中でも終了する。
画像情報補正ループ動作が開始すると(STEP612)、まず1番目の画像ファイルが選択されて(STEP613)、画像情報が図9に示す画像情報メモリ32に読み出される(STEP614)。そして、STEP604で算出して一時的に記憶した補正時間tを用いて、残り全ての画像情報を処理するために必要となる残補正時間Tiを算出し、図1に示した表示部4に表示する(STEP615)。
また、このSTEP615において表示部4に表示される画面の模式図を図19の(b)及び(c)に示す。図19(b)は、画像ファイルの画像をサムネイル画像40で示した場合であり、これから補正を行う予定のサムネイル画像40にマーク44が付されている。また、図19(c)は、これから補正を行う画像情報を画像情報メモリより読み出して画像45を表示したものである。そして、どちらの表示方法においても、画面の左下に、i番目以降の全ての画像情報を補正するために必要となると推定される時間である残補正時間Ti(図中、「残り80秒」と記載する部分)の画像46が表示されている。なお、これらの図に示す表示方法は一例であり、どのような表示方法で表示することとしても構わない。例えば、図4及び図5に示したような動きベクトルや、図6に示したようなPSFを、これから補正を行うi番目の画像情報の画像に重ねて表示したり、i番目の画像情報の画像に並べて表示したりしても構わない。
そして、STEP615で補正を行う画像情報の画像45やマーカ44及び残補正時間Tiを表示した後に、i番目以降の補正動作全体で使用する使用バッテリ量Xiを、残補正時間Tiを元に推定する(STEP616)。そして、STEP616の後の状態における残りバッテリ量Yiを取得し(STEP617)、上述したSTEP609と同様に比較を行う(STEP618)。
このとき、推定された使用バッテリ量Xiが残りバッテリ量Yjよりも小さい場合(STEP618、NO)、補正動作の途中でバッテリ量が尽きる可能性が低いため、補正動作を行う(STEP620〜623)。一方、使用バッテリ量Xiが残りバッテリ量Yiよりも大きい場合(STEP618、YES)、次に、残りバッテリ量Yiがある値TH2より大きいか否かが確認される(STEP619)。この値TH2は、あと一回分の補正を行ったとしても十分バッテリ量が残る程度のバッテリ量の値である。
このとき、残りバッテリ量Yiが値TH2よりも大きければ(STEP619、YES)、あと一回分は補正を行うことができるため、補正動作を行う(STEP620〜623)。一方、残りバッテリ量Yiが値TH2よりも小さければ(STEP619、YES)、あと一回の補正においても途中でバッテリ量が尽きる可能性があるため、残りの画像情報の補正動作を行わず一括画像情報補正動作を終了する。
そして、STEP618や619において十分バッテリ量があることが確認されて、補正動作が開始されると、まず画像復元フィルタの取得が行われる(STEP620)。このとき、ぶれ情報が図9のぶれ情報メモリ33に読み出されるとともに、ぶれ情報計算回路34において画像復元フィルタが作成される。そして、作成された画像復元フィルタは画像復元フィルタメモリ35に一時的に記憶された後に、画像情報補正回路36に読み出され設定される。なお、ぶれ情報に画像復元フィルタが含まれている場合は、ぶれ情報計算回路34によって計算を行なうことなく画像情報補正回路36に設定することができる。そして、STEP620において取得された画像復元フィルタを用いて、画像情報補正回路36で画像情報の補正を行う(STEP621)。また、補正中は以下に説明するような経過画面を表示する(STEP622)。
STEP622において表示部4に表示される画面の一例を示す模式図を図19の(d)に示す。図19(d)は、サムネイル画像40で補正する画像情報の画像を表示した場合である。この図に示すように、例えば、補正の進度を表すグラフ47(図中下部の棒状の部分、その下部の「95%」と記載する部分及び「全4枚中3枚目を補正中」と記載する部分)と、補正中の画像情報の補正が終了するまでにかかる時間(グラフの下部の「残り2秒」と記載する部分)の画像48と、残り全ての画像情報の補正が終了するまでにかかる時間(グラフの左下部の「残り42秒」と記載する部分)の画像46と、を表示することとしても構わない。
そして、i番目の画像情報の補正が終了することが確認されるまでは(STEP623、NO)、STEP621の画像情報の補正とSTEP622の経過表示とを行い、補正が終了したことが確認されると(STEP623、YES)、次に図9の補正後画像ファイルメモリ37に補正後の画像ファイルが出力されるとともに一時的に記憶される(STEP624)。このとき、この補正後の画像ファイルの拡張子はJPGになり、図10のSTEP7に示す補正結果の表示動作において表示されるように設定される。そして、補正後画像ファイルメモリ37から記録部31に補正後の画像ファイルが送られて記録される。
また、STEP624において補正後の画像ファイルを出力した後に補正画像ファイルリストに追加し(STEP625)、補正ループ動作を終了するか否かの判断を行う(STEP626)。STEP626において、N番目の画像ファイルの画像情報に対する補正を行ってない場合は、ループ動作を継続するためにSTEP612に戻り、次の画像ファイルを選択して(STEP613)以降上述したものと同様の補正動作を行う。一方、N番目の補正後の画像ファイルに対する動作を行っていた場合はループ動作を終了し、一括画像情報補正動作を終了するとともに図10のSTEP7に示す補正結果の表示動作を行う。
このように、図20のSTEP609やSTEP619において、補正動作を実行する前及び補正動作を実行する間に使用バッテリ量X、Xiと、バッテリ量Y、Yiと、を比較するようにしているため、画像情報の補正動作中にバッテリ量が尽きてしまうことによる画像ファイルの破損を防ぐことができる。また、同様にどの画像ファイルまで補正を行ったかがわからなくなることを防ぐことができる。特に、一括画像情報補正動作を行う場合は、複数の画像ファイルの補正動作を行うため補正動作中にバッテリ量が尽きる可能性が高くなる。そのため、上述したようにバッテリ量を管理して、断続的に行われる補正動作の間で終了できるように構成しない場合では、通常の一つずつ画像ファイルの画像情報を補正する場合と比較して高い確率で補正動作中にバッテリ量が尽きてしまう。
また、ぶれ情報として、動きベクトルや、PSF、画像復元フィルタを備えている場合は、ぶれ信号から画像復元フィルタに変換するよりも早く画像復元フィルタを取得することができる。したがって、補正処理にかかる時間を低減させることができる。
また、一括画像情報補正動作は、複数の画像情報を連続的に補正するものであるため、ユーザの待ち時間が長くなってしまうが、図19(b)〜(d)に示すように残り時間などを表示することによって、ユーザにかかるストレスを低減させることができる。
なお、図19においては、ぶれ量の大きい画像情報の画像から補正処理を行うこととしているが、ぶれ量の小さいものから処理を行っても構わないし、補正処理を行う順番を選択可能としても構わない。また、図18のSTEP505において、画像ファイルを選別及び並び替えるためにぶれ量を読み出すこととしているが、このときのぶれ量をメモリなどに記憶しておき、図19のSTEP603においてぶれ量を取得するときに利用することとしても構わない。このように構成することで、STEP603においてぶれ量を算出する時間が短縮される。また、上述したように、ぶれ量を画像ファイルのヘッダ情報などに含ませる構成として、すぐに使用することができるような構成にすると、ぶれ量を演算する時間が短縮されるため並び替えや補正にかかる時間、使用バッテリ量を算出する速度を早くすることができる。
また、ここで上述したSTEP604における推定補正時間の算出方法について説明する。まず、補正時間tを、ぶれ情報から画像復元フィルタを作成する時間t1と、画像情報の補正処理にかかる時間t2と、の和であると推定する。ここで、画像復元フィルタを作成する時間t1はぶれ量にはほとんど依存せずほぼ一定の値(例えば、1秒)をとり、画像情報の補正処理にかかる時間t2がぶれの大きさに依存して変化する。ただし、上述したようにぶれ情報として例えば動きベクトル、PSF、画像復元フィルタを用いることが可能であり、ぶれ情報として画像ファイルに含まれる情報の種類によっては、画像復元フィルタを作成する時間t1が変化する。
次に、画像情報の補正処理にかかる時間t2の算出方法について説明する。ここで、画像復元処理フィルタの画素単位のサイズを水平方向wflt、垂直方向をhfltとし、画像情報の画素単位のサイズを水平方向W、垂直方向Hとして、補正処理を行う撮像装置が一回の加算や乗算などの命令を処理するために必要な時間をSpecとする。すると、画像情報の画素数はW×Hとなり、フィルタ係数の画素数はwflt×hfltとなる。
また、図5において説明したように画像復元フィルタを用いる画像情報の補正は、画像情報の各画素に注目して積和演算をすることによって行われる。このとき、図5の例に示すように、画素復元フィルタのそれぞれの画素と、対応する画像情報の注目画素及びその近傍の画素と、が積算されるため、積算の処理回数は画像フィルタの画素数と同数のwflt×hflt回となる。
また、この積算によって得られる値がwflt×hflt個であり、これらを一つずつ加えて和をとるために、和算の処理回数は積算によって得られる値の数より1小さくなりwflt×hflt−1となる。そのため、積算と和算の処理回数の合計が2wflt×hflt−1となり、画像情報の一つの注目画素に対する処理時間を(2wflt×hflt−1)×Specと推定する。そして、画像情報の全ての画素のそれぞれに注目して補正処理を行うことを考慮して、画像情報の補正処理にかかる時間t2を、W×H×(2wflt×hflt−1)×Specと推定する。
しかしながら、このとき補正処理にかかる時間を算出するために画像復元フィルタをぶれ情報から算出することとすると、ぶれ情報から画像復元フィルタを算出する時間、即ちt1が補正する画像情報の数だけ必要となり非常に長い時間がかかってしまう。そのため、ここではぶれの水平方向wblr及び垂直方向hblrの大きさを用いて計算する方法を用いる。また、ぶれの水平方向wblr及び垂直方向hblrの大きさとは、図8においてぶれ量Lを求める際にPSFに作成した外接四角形の水平方向の長さw、垂直方向の長さhにそれぞれ相当する。なお、このぶれのサイズを求める場合に、動きベクトルから求めることとしても構わない。また、ぶれ情報として画像復元フィルタを備えている場合は、上述の式のwflt×hfltに直接代入することができるため、上述の式を使用することとしても構わない。
ここで、画像復元フィルタのサイズはぶれのサイズにほぼ比例するため、比例定数をk(例えば、3)として画像情報の補正処理にかかる時間t2を、W×H×(2kwblr×hblr−1)×Specと推定する、そして、一つの画像情報の補正時間tをt1+W×H×(2kwblr×hblr−1)×Specと表し、全ての画像情報の補正時間tを足し合わせることで、総補正時間Tを推定する。このように補正時間t及び総補正時間Tを求めることにより、画像復元フィルタを算出することなく動きベクトルやPSFから補正時間tを推定することができるため、補正時間t及び総補正時間Tを求める時間を短くすることができる。
また、ぶれの水平方向wblr及び垂直方向hblrの大きさを用いる代わりにぶれ量Lを用いて補正時間tを推定することも可能である。この場合、比例定数をqとすると、一つの画像情報の補正時間tを、t1+W×H×(2qL−1)×Specと推定する。このように補正時間tを推定することで、ぶれの水平方向wblr及び垂直方向hblrの大きさを用いて補正時間tを推定する場合と比べると精度は悪くなるが、ぶれ量Lをメモリに記憶したり予め画像ファイルに含んだりしている場合は、ぶれ量Lを用いて瞬時に算出することができる。なお、ぶれ量Lを上述したようなPSFの対角線の長さ、即ち(w2+h2)1/2とせずに、水平方向及び垂直方向の積、即ちw×hとして上述のような画像ファイルの並び替えや補正時間tの算出を行うこととしても構わない。
また、この総補正時間Tから使用バッテリ量Xを推定するための計算方法について説明する。ここで、ぶれ情報から画像復元フィルタを作成する回路の使用時間あたりに消費されるバッテリの容量をE、画像情報を補正するための回路の使用時間あたりに消費されるバッテリの容量をF、その他の回路の使用時間あたりに消費されるバッテリの容量をGとする。なお、ここでその他の回路とは、表示部や制御部や記録部などに備えられる回路であり、補正処理中においても動作する回路である。
そして、画像復元フィルタを作成する時間t1と、画像情報の補正処理にかかる時間t2と、を用いて、一つの画像情報あたりで消費されると推定されるバッテリ量を表すと、E×t1+F×t2+G×(t1+t2)となる。ここで、補正を行う画像情報全てにおいて合計すると、E×(t1の全画像情報の合計)+F×(t2の全画像情報の合計)+G×(総補正時間T)となり、これが使用バッテリ量Xとなる。なお、(t1の全画像情報の合計)を、t1を定数として(t1×補正する画像情報数)としても構わない。
また、使用時間の合計を変えることで同様に図20のSTEP616における使用バッテリ量Xiを求めることができる。ここで、i−1番目までの画像情報が補正されているため、残りはi〜N番目の画像情報となる。そのため、これらの画像情報を補正するためのバッテリ量が必要となる。したがって、使用バッテリ量Xiは、E×(t1のi〜N番目までの合計)+F×(t2のi〜N番目までの合計)+G×(残補正時間Ti)となる。ここで、残補正時間Tiは、t1のi〜N番目までの合計と、t2のi〜N番目までの合計と、の和になる。なお、(t1のi〜N番目までの合計)を、t1を定数として(t1×(N−i+1))としても構わない。
〔5〕補正結果の表示動作
上述の〔3〕の一括画像情報補正動作によって得られた補正前及び補正後の画像ファイルの確認方法について、図21を用いて説明する。図21は、補正結果の表示動作を示すフローチャートである。
図21に示すように、補正結果の表示動作が開始されると、まず、今回補正した画像ファイルがあるか否かの確認が行われる(STEP701)。このとき、例えば、バッテリ量が小さいなどの理由によって、補正が行われなかったため今回補正した画像ファイルがない場合(STEP701、NO)、そのまま補正結果の表示動作を終了する。一方、今回補正した画像ファイルがある場合、図20のSTEP624で作成した補正画像ファイルリストを取得する(STEP702)。
そして、STEP702によって、今回補正した画像ファイルを確認するとともに、対応する補正前の画像ファイルをぶれ量順に並び替える(STEP703)。そして、この並び替えられた補正前の画像ファイルのそれぞれの後ろに、補正後の画像ファイルを挿入する(STEP704)。このSTEP703とSTEP704の動作は、図11のSTEP107〜STEP111に示す、初期画像表示動作における補正後画像ファイル挿入ループと同様の動作であり、詳細な説明については省略する。
そして、並び替えられた補正前画像ファイル及び補正後画像ファイルの一組目が表示されユーザに確認される(STEP705)。そして、一組前に戻る指示が出た場合は(STEP706、YES)一組前の画像ファイルを表示する(STEP707)。また、一組前に戻る指示が出ず(STEP706、NO)、一組先に進む指示が出た場合は(STEP708、YES)、一組先の画像ファイルの表示を行う(STEP709)。そして、この画像ファイルの確認動作は、確認終了の指示が出るまで繰り返し行われる(STEP710、NO)。
このSTEP705〜710において、表示部4に表示される画面の一例を示す模式図を図19の(e)に示す。図19(e)に示すように、補正前画像ファイルの画像49a及び補正後の画像ファイルの画像49bが隣接して対比されるように表示される。また、「次へ」ボタン50aと、「前へ」ボタン50bとがあり、これらによって次の画像ファイルの画像の組を表示したり、前の画像ファイルの画像の組を表示したりする。そして、ユーザが中央の「確認終了」50cのボタンを選択することによって、確認終了の指示が出される(STEP710、YES)。
STEP710において確認終了の指示が出ると、次に表示モードの確認が行われる(STEP711)。このとき、表示モードが片方表示である場合は(STEP711、YES)、今回補正した補正前の画像ファイルの拡張子がJPGのままなので、この拡張子をTMPに変更し、非表示にして(STEP712)補正結果の表示動作を終了する。一方、表示モードが片方表示ではなく両方表示である場合(STEP712、NO)、補正前の画像ファイルの拡張子をJPGにしたまま補正結果の表示動作を終了する。そして、補正結果の表示動作が終了すると、図10のSTEP4において終了するか否かが判断される。
このように、一括画像情報補正動作の後に、補正前及び補正後の画像ファイルの画像を対比させて確認することによって、補正の効果を容易に確認することができる。また、このとき画像ファイルの画像がぶれ量順に並び替えられるため、補正前に表示される画像ファイルの画像の順番と同じになる。そのため、多数の画像ファイルの画像情報を補正して多数の画像ファイルの組が表示されたとしても、ユーザが確認したい画像ファイルを容易に見つけ出すことができる。
また、上述した実施例1では、一括で複数の画像情報の補正をすることができるように構成するとともに、ぶれ量を用いて画像ファイルの並び替えや選別を行って画像を表示することしている。そのため、補正を必要とする画像ファイルのみを順に整列することが可能となり、補正が必要な画像ファイルをユーザが選択する手間や時間を低減させることができる。
また、画像復元フィルタを作成するためのぶれ情報を、動きベクトルやPSF、画像復元フィルタとすることによって、ぶれ情報としてぶれ信号を用いる場合よりも速くぶれ情報から画像復元フィルタへの変換を行うことができる。そのため、画像復元フィルタの変換にかかる時間を短縮することができる。また、動きベクトルやPSF、画像復元フィルタは、ぶれ信号と比べてデータ量が小さいため、全体的なデータ量の低減化やぶれ補正処理の迅速化を図ることができる。
また、補正にかかる時間を推定してユーザに表示することとしているため、一括画像情報補正動作を行うことによって多少時間がかかったとしても、ユーザのストレスを低減することができる。また、この推定した時間からバッテリの使用量を推定することとしているため、電力の消費量が大きい一括画像情報補正動作を行う前に、ユーザにバッテリ量が尽きる可能性があることを警告することができる。さらに、個々の画像情報の補正前にバッテリ量を確認することで、補正中にバッテリ量が尽きることを防ぐことが可能となり、画像ファイルの破損やどの画像ファイルまで補正したのかわからなくなることを防ぐことができる。
なお、これまで画像復元式補正方法を利用したぶれ補正装置に一括画像情報補正方法を適用する場合について説明したが、画像復元式補正方法と同様に、撮像後に画像情報を解析して補正することのできる電子式補正方法を利用したぶれ補正装置にも、本実施例における一括画像情報補正方法を適用することができる。
本実施例における一括画像情報補正方法を電子式補正方法を利用したぶれ補正装置に適用する場合は、撮像後の画像情報を解析することによって上述のようなぶれ情報を得るとともにぶれ量を得る。そして、画像ファイルの並び替えを行い、ユーザに並び替えた画像ファイルの画像を表示することとする。このように構成することによって、電子式補正方法を利用したぶれ補正装置においても補正すべき画像ファイルの選択が容易となり、補正動作の迅速化を図ることができる。さらに、電子式補正装置を利用したぶれ補正装置を備える撮像装置は、角速度センサなどのセンサ類が不要となるため小型化を図ることができる。
また、本実施形態におけるぶれ補正装置を備える電子機器は上述したような撮像装置に限らず、入力された画像ファイルを補正して画像を表示するディスプレイや、入力された画像ファイルを補正して画像を印刷するプリンタなどにも適用することができる。
<実施例2>
上述した実施例1は、ぶれ量を用いて画像ファイルを並び替えるとともに一括画像情報補正を行うことや、ぶれ情報を動きベクトルやPSF、画像復元フィルタとすることで補正処理の迅速化を図ることができるが、以下に説明する実施例2のような構成を備えることで、さらなる補正処理の迅速化を図ることができる。
実施例2におけるぶれ補正装置の構成及び動作について図22を用いて説明する。図22(a)は、ぶれ補正装置の構成を示したブロック図であり、実施例1について示した図9(a)に相当するものである。また、図22(b)は、実施例2におけるぶれ補正装置の補正動作のタイミングについて模式的に示した概念図であり、実施例1について示した図9(b)に相当するものである。また、図9と同様の部分については同じ符号を付し、その詳細な説明については省略する。
図22(a)に示すように、実施例2におけるぶれ補正装置30aは、画像情報とぶれ情報とを備えた画像ファイルが記録される記録部31と、記録部31から読み出された画像情報が一時的に記憶される画像情報メモリ32と、補正処理を行うために画像情報メモリ32から読み出された画像情報が一時的に記憶されるバッファメモリ38と、ぶれ情報が一時的に記憶されるぶれ情報メモリ33b1〜33bnと、ぶれ情報から画像復元フィルタを作成するとともに出力するぶれ情報計算回路34と、ぶれ情報計算回路から出力される画像復元フィルタが一時的に記憶される画像復元フィルタメモリ35b1〜35bnと、画像情報と画像復元フィルタとを用いて補正を行い補正後の画像フィルタを作成する画像情報補正回路36と、補正後の画像ファイルが出力されて一時的に記憶される補正後画像ファイルメモリ37と、を備える。
また、実施例2におけるぶれ補正装置30aは、ぶれ情報メモリ33b1〜33bn及び画像復元フィルタメモリ35b1〜35bnをそれぞれ複数備える構成としており、それぞれのぶれ情報メモリ33b1〜33bnは、それぞれの画像復元フィルタメモリ35b1〜35bnに対応するように同数備えられている。そして、ぶれ情報メモリ33b1〜33bnのいずれか一つを選択して記録部31から読み出されたぶれ情報を与える切替部33aと、複数の画像復元フィルタメモリ35b1〜35bnからいずれか一つを選択するとともに画像復元フィルタを読み出して画像情報補正回路に与える切替部35aと、を備えている。
次に、図22(a)に加えて図22(b)を用いて実施例2におけるぶれ補正装置30aの一括画像情報補正動作の概略について説明する。まず、一括画像情報補正動作が開始されると、最初の画像ファイルの画像情報が記録部31から画像情報メモリ32に読み出され、同時に切替部33aを介してぶれ情報がぶれ情報メモリ33b1に読み出される。すると、ぶれ情報がぶれ情報計算回路34に読み出されて上述したように計算され、最終的に画像復元フィルタが得られる。そして、この画像復元フィルタを作成するためのぶれ情報を得たぶれ情報メモリ33b1に対応する画像復元フィルタメモリ35b1に画像復元フィルタを出力し、画像復元フィルタメモリ35b1が一時的に画像復元フィルタを記憶する。
その後、最初の画像ファイルの画像情報に対応する画像復元フィルタが画像情報補正回路36に設定され、最初の画像情報がバッファメモリ38に読み出されるとともに画像情報補正回路36に読み出されて補正動作が開始されると、この最初の補正動作を行っている間に、次の画像ファイルの画像情報が画像情報メモリ32に読み出されるとともに、ぶれ情報が切替部33aを介してぶれ情報メモリ33b2に読み出される。そして、図22(b)に示すように次のぶれ情報の計算が行われる。したがって、二番目以降の画像ファイルの処理については、ぶれ情報の変換と、画像情報の補正動作とが並列して行われる。
ここで、実施例1及び実施例2におけるそれぞれのぶれ補正装置について一括画像情報補正動作を行う場合に要する補正時間Tを比較する。なお、画像ファイルの画像を表示するために必要な時間などは実施例1及び実施例2において共通のものであるので、ここでは画像復元フィルタを作成する時間t1と、画像情報の補正処理にかかる時間t2とを比較することにする。
そして、図9(b)に示すように、実施例1のぶれ補正装置30においては画像復元フィルタの計算と画像情報の補正とを直列的に処理するため、一つの画像情報の補正時間tが、ぶれ情報から画像復元フィルタを作成する時間t1と、画像情報の補正処理にかかる時間t2と、の和になる。したがって、一括画像情報補正動作全体で要する時間Tは、(t1の合計)+(t2の合計)となる。
これに対して、実施例2のぶれ補正装置30aは、画像復元フィルタの計算と画像情報の補正とを並列的に処理することが可能であり、全ての画像情報を補正処理するために必要となる補正時間Tは、最初の画像復元フィルタを作成する時間t1と、画像情報の補正処理にかかる時間t2の合計と、の和となる。したがって、一括画像情報補正動作全体で要する時間Tは、(最初の画像ファイルのt1)+(t2の合計)となり、実施例1のぶれ補正装置よりも(補正する画像情報の数−1)個分の画像復元フィルタを作成する時間t1だけ早く処理することができる。
また、このような並列処理を実現するために必要な構成が、図22(a)に示すようなぶれ情報メモリ33b1〜33bn、画像復元フィルタメモリ35b1〜35bn及び切替部33a、35aの追加だけであるため、無用にぶれ補正装置30aやぶれ補正装置30aを備えた電子機器を大型化させることを防ぐことができる。
特に、最も容易に並列処理を行なうために、電子機器に図9(a)示すようなぶれ補正装置30を複数備えることは可能ではあるが、メモリ容量の大きい画像情報メモリ32や、回路規模が大きい画像情報補正回路36を複数備えることとなるため、電子機器が非常に大型化してしまう。したがって、実施例2におけるぶれ補正装置30aは、メモリ容量の小さいぶれ情報メモリ33b1〜33bn、画像復元フィルタメモリ35b1〜35bnを追加するだけで、回路規模の増大を最小限に抑えることができる。
次に、実施例2におけるぶれ補正装置を備えた撮像装置の具体的な動作について、図22に加え図23及び図24のフローチャートを用いて説明する。図23及び図24は、一括画像情報補正動作を行う場合において複数の画像ファイルがユーザによって選択された後の動作について記載したものであり、選択された画像ファイルの画像情報を補正する際の補正動作について示したものである。そして、実施例1において説明した図10のSTEP6の「一括画像情報補正」の詳細な動作を示すものであり、この一括画像情報補正動作の開始時には、補正を行う複数の画像ファイルが既に選択されていることとする。
図23に示すように、一括画像情報補正動作が開始すると、まず全ての画像復元フィルタメモリ内を消去し(STEP801)、画像復元フィルタの計算動作を開始する(STEP802)。上述したように、画像復元フィルタの計算動作は画像情報の補正動作と並列的に行われ、この画像復元フィルタの計算動作を図24のフローチャートに示す。
図24に示すように、画像復元フィルタの計算動作が開始されると、まず画像復元フィルタ作成ループ動作が開始される(STEP802a〜802g)。このループ動作は補正するために選択された全ての画像ファイルの画像情報について行われ、選択された画像ファイルの総数をNとすると、1番目からN番目までの画像ファイルの画像情報について補正動作が行われたときにループ動作を終了する。
画像復元フィルタ作成ループ動作が開始すると(STEP802a)、まず1番目の画像ファイルのぶれ情報が選択され(STEP802b)、少なくとも一つの画像復元フィルタメモリ35b1〜35bnに空きがあるか否かの確認が行われる(STEP802c)。このとき、画像復元フィルタメモリ35b1〜35bnに空きがなければ(STEP802c、NO)、画像復元フィルタメモリに35b1〜35bn空きができるまで確認し続ける。また、画像復元フィルタ35b1〜35bnに空きがあれば(STEP802c、YES)、空きのある画像復元フィルタメモリ35b1〜35bnに対応するぶれ情報メモリ33b1〜33bnに切替部33aを介してぶれ情報が読み出される(STEP802d)。
そして、STEP802dで読み出されたぶれ情報がぶれ情報計算回路34に読み出されるとともに画像復元フィルタの計算が行われ(STEP802e)、得られた画像復元フィルタが画像復元フィルタメモリ35b1〜35bnに一時的に記憶されるとともに(STEP802f)、ループ動作を終了するか否かの判断が行われる(STEP802g)。
STEP802gにおいて、N番目の画像ファイルのぶれ情報に対する補正動作を行ってない場合は、ループ動作を継続するためにSTEP802aに戻り、次の画像ファイルのぶれ情報を選択して(STEP802b)同様の動作を行う。一方、N番目の画像ファイルのぶれ情報に対する動作を行っていた場合は、ループ動作を終了する。そして、このように、画像復元フィルタ作成動作が画像情報の補正動作の進行に関わらず行なわれる。ただし、補正すべき画像情報が多く、かつ、画像情報の補正動作が遅い場合は、使用されていない画像復元フィルタが画像復元フィルタメモリ35b1〜35bnに停滞することとなり、空きができなくなることがある。そして、そのような場合はSTEP802cに示したように画像復元フィルタの計算動作が停止する。
また、図23の一括画像情報補正動作において、STEP802で上述のような画像復元フィルタの計算動作を開始すると、次に1番目の画像ファイルの画像情報を画像情報メモリ32へ読み出し(STEP803)、画像情報を補正する準備を行う。そして、処理する画像ファイルの順番を示す番号iを1(STEP804)に設定し、補正する画像情報の画像を表示部4に表示する(STEP805)。このときの表示方法は実施例1と同様であり、図19(b)に示すように複数の画像情報のサムネイル画像を表示してマーカを付すこととしても構わないし、図19(c)に示すように補正する画像情報の画像のみを表示部に表示することとしても構わない。また、詳細については後述するが、全ての画像情報を補正するために必要な時間を推定して表示することとしても構わない。
そして、画像情報メモリ32に読み出した画像情報に対応する画像復元フィルタが、画像復元フィルタメモリ35b1〜35bnにあるか否かが確認され(STEP806)、画像復元フィルタがない場合は(STEP806、NO)、画像復元フィルタが作成されるまで確認し続ける。画像復元フィルタがあることが確認された場合は(STEP806、YES)、画像復元フィルタが画像情報補正回路36に読み出されて設定されるとともに(STEP807)、画像復元フィルタが記憶されていた画像復元フィルタメモリ35b1〜35bn内が消去される(STEP808)。
すると、画像情報がバッファメモリ38に読み出されて(STEP809)、補正動作が開始される(STEP810)。STEP810において補正動作が開始されると、補正動作が行われている画像情報の番号、即ちiが、Nであるか否かの確認が行われる(STEP811)。ここで、iがNである場合は(STEP811、YES)、その画像情報で補正動作が最後となる。この場合、補正動作が終了するまで待機して(STEP816、NO)、補正動作が終了したことが確認されると(STEP816、YES)、i番目、即ち、この場合はN番目の補正後の画像ファイルを補正後画像ファイルメモリ37に出力して(STEP817)一括画像情報補正動作を終了する。
一方、iがNではない場合(STEP811、NO)、この補正動作の後にも補正動作を行う必要があるので、次に補正する画像情報、即ちi+1番目の画像情報を画像情報メモリ32に読み出す(STEP812)。そして、補正動作が終了するまで待機して(STEP813、NO)、補正動作が終了したことが確認されると(STEP813、YES)、補正後の画像ファイルを補正後画像ファイルメモリに出力するとともに(STEP814)iを一つ大きくして(STEP815)補正対象となる画像情報の番号を一つ先に進める。
そして、STEP805まで戻り、STEP815によって指定された画像情報の画像を表示部1に表示し(STEP805)、以降同様の補正動作を行なう。そして、上述したようにN番目の画像情報まで補正処理を行ない、一括画像情報補正動作を終了する。
このように一括画像情報補正動作を行うことによって、画像復元フィルタの作成と画像情報の補正とを並列的に処理することができるようになる。そのため、実施例1のぶれ補正装置30における補正時間よりも、(画像情報の数−1)個分の画像復元フィルタを作成する時間t1の時間を短縮することができる。また、バッファメモリ38に画像情報を読み出してから、画像情報メモリ32に次に処理する画像情報32を読み出すこととしているため、画像情報を滞りなくバッファメモリ38及び画像情報補正回路36に読み出すことが可能となる。
また、ぶれ情報として、上述したような動きベクトルや、PSF、画像復元フィルタなどを用いることができるが、短縮できる時間が画像復元フィルタを作成する時間t1に関するものであるため、ぶれ情報を動きベクトルとした方が得られる効果は大きい。また、ぶれ情報を動きベクトルとすることで、撮像して画像ファイルを作成する際においてぶれ情報を作成する時間が大きく増加することがない。また、ぶれ情報を作成せずにぶれ信号を画像ファイルに付加する場合と比較して、情報量を低減することができる。
また、画像復元フィルタメモリ35b1〜35bnから画像復元フィルタを読み出した後に、すぐに画像復元フィルタメモリ35b1〜35bn内を消去し、次のぶれ情報及び画像復元フィルタを受け入れることができるように構成することで、ぶれ情報メモリ33b1〜33bn及び画像復元フィルタメモリ35b1〜35bnを最低限の増設に抑えることができる。さらに、画像情報を補正する時間が画像復元フィルタを作成する時間のおよそ二倍程度の長さであるので、あまり多くぶれ情報メモリ33b1〜33bn及び画像復元フィルタメモリ35b1〜35bnのセットを設けたとしても、作成された画像復元フィルタが待機されるだけである。したがって、ぶれ情報メモリ33b1〜33bn及び画像復元フィルタメモリ35b1〜35bnのセットは数セットで足り、そのように構成しても構わない。
なお、図23のSTEP801及びSTEP808において、画像復元フィルタメモリ35b1〜35bn内を消去する際にあわせてぶれ情報メモリ33b1〜33bn内を消去しても構わない。また、ぶれ情報メモリ33b1〜33bnを、図24のSTEP802eにおいてぶれ情報がぶれ情報計算回路34に読み出されたときに消去することとしても構わない。また、STEP802においてぶれ情報メモリ33b1〜33bn内を消去した後に、ぶれ情報メモリ33b1〜33bnに次の画像ファイルのぶれ情報を読み込むこととしても構わない。また、STEP802cで空きのあるぶれ情報メモリ33b1〜33bnを確認することとして、STEP802dで空いているぶれ情報メモリ33b1〜33bnにぶれ情報を読み出すこととしても構わない。
さらに、図24に示すフローチャートでは、画像復元フィルタが画像復元フィルタメモリに記憶された後に(STEP802f)次の画像ファイルのぶれ情報をぶれ情報メモリ33b1〜33bnに読み出すこととしているが、ぶれ情報がぶれ情報計算回路34に読み出されてぶれ情報メモリ33b1〜33bnに空きができた時に、そのぶれ情報メモリ33b1〜33bnにぶれ情報を読み出すこととしても構わない。この場合、上述したようにぶれ情報メモリ33b1〜33bnからぶれ情報がぶれ情報計算回路34に読み出された際に、ぶれ情報メモリ33b1〜33bn内を消去する構成とする。このように構成することで、次々にぶれ情報をぶれ情報メモリ33b1〜33bnに読み出して待機させることができるため、迅速に画像復元フィルタを作成することが可能となる。そのため、ぶれ情報メモリ33b1〜33bnや画像復元フィルタメモリ35b1〜35bnの増設数を低減させることができる。
また、増設する複数のメモリは、現実にメモリの個数を増やしても構わないし、一つのメモリ内にパーティションを設けることで仮想的にメモリの数を増加させることとしても構わない。この場合、一つのメモリが複数の情報を記憶することとなるが、記憶する情報が動きベクトルや画像復元フィルタなどのようなデータ量の小さいものであるため、メモリに相当な負担がかかることが少ない。
また、実施例2も実施例1と同様に、画像復元式補正方法を利用したぶれ補正装置に一括画像情報補正方法を適用する場合について説明したが、撮像後に画像情報を解析して補正する電子式補正方法を利用したぶれ補正装置にも、本実施例における一括画像情報補正方法を適用することができる。
本実施例における一括画像情報補正方法を電子式補正方法を利用したぶれ補正装置に適用する場合は、まず、撮像後の画像情報を解析することによって得られる画像情報から上述のようなぶれ情報を得る。そして、このぶれ情報から画像復元フィルタを作成する処理と、画像情報を補正する処理とを並列で行うこととする。このように構成することによって、電子式補正方法を利用したぶれ補正装置においても補正動作の迅速化を図ることができる。さらに、電子式補正装置を利用したぶれ補正装置を備える撮像装置は、角速度センサなどのセンサ類が不要となるため小型化を図ることができる。
また、実施例2のぶれ補正装置において、一括画像情報補正動作以外の動作については、実施例1と同様の動作としても構わない。例えば、実施例1で示した図11における初期画像表示を行うこととしても構わないし、図13〜図17に示すような一般操作を行うこととしても構わない。また、一括画像情報補正動作を行う補正前の画像ファイルの選択方法を、図18に示すようなぶれ量を利用した方法としても構わないし、一括画像情報補正動作の後に、図21に示すような補正画像の確認を行うこととしても構わない。
また、実施例1における一括画像情報補正を実施例2に組み合わせても構わなく、実施例2において実施例1と同様に一括画像情報補正を行う際の補正時間の推定やバッテリ量の確認を行うこととしても構わない。ただし、実施例1及び実施例2の一括画像情報補正動作において、画像復元フィルタを作成するタイミングがそれぞれ異なるため補正時間及びバッテリ量の推定方法を実施例2に合わせて適用する必要がある。そこで、その詳細について図25及び図26を用いて説明する。
図25及び図26に示すフローチャートは、実施例2に実施例1を組み合わせた場合の一括画像情報補正動作を示すフローチャートであり、実施例2について示した図23及び図24に相当するものである。なお、図23及び図24と同様の動作を行なう部分については、同じ符号を付し、その詳細な動作の説明については省略する。
図25に示すように、一括画像情報補正動作が開始してから画像情報メモリ32に補正する画像ファイルの画像情報を読み出してiを1に設定するまで(STEP801〜804)は実施例2と同様であるが、このあとに補正可能であるか否かの確認を行なう(STEP818)。
このSTEP818における補正可能か否かの確認は、実施例1において説明した図20のSTEP606〜611と同様である。即ち、補正可能である場合(STEP818、YES)は、図20のSTEP609において使用バッテリ量Xがバッテリ量Yより小さい場合と(STEP609、NO)、使用バッテリ量Xがバッテリ量Yより大きい場合(STEP609、YES)かつ補正を実行すると選択された場合(STEP611、YES)とである。そして、補正可能であれば図23のSTEP805と同様に表示部1に画像情報の画像や補正時間Tを表示し、以降STEP810の補正動作の開始までは実施例2と同様の動作を行なう。
また、補正可能でない場合とは(STEP818、NO)、図20のSTEP609において使用バッテリ量Xがバッテリ量Yより大きく(STEP609、YES)かつ補正を実行しないと選択された場合(STEP611、NO)である。この場合、一括画像情報補正を行わずに終了する。
ここで、実施例1においては補正時間Tを、ぶれ情報から画像復元フィルタを作成する時間t1と、画像情報の補正処理にかかる時間t2との和を一つの画像情報の補正時間tと推定して、この補正時間tを合計したものを補正時間Tと推定していた。しかしながら、実施例2では画像復元フィルタの作成と、画像情報の補正処理とが並列的に行われるため、上述したようにそれぞれの画像情報の補正処理にかかる時間t2の合計と、最初の画像ファイルの画像復元フィルタを作成する時間t1と、の和が総補正時間Taとなる。なお、この総補正時間TaをSTEP805において表示部に表示しても構わない。
そして、実施例2のSTEP818における使用バッテリ量Xaについては、並列的に処理したとしても補正動作自体は変わらないため実施例1とほぼ同様のものとなる。ただし、総補正時間Taが実施例1における総補正時間Tよりも短くなっているため、その分の電力の消費などは低減される。例えば、補正動作中において表示部で消費される電力などが低減される分に相当する。したがって、使用バッテリ量Xaは、E×(t1の全画像情報の合計)+F×(t2の全画像情報の合計)+G×(総補正時間Ta)となる。なお、実施例2にすることによって発生する消費電力(例えば、メモリで使用する電力や切替部における電力)を新たに加えることとしても構わない。また、(t1の全画像情報の合計)を、t1を定数として(t1×補正する画像情報数)としても構わない。
そして、STEP810において補正動作が開始され、その補正がN番目の画像情報でなく(STEP811、NO)、画像情報メモリに次の画像情報を読み出した後に(STEP812)、実施例1と同様に補正経過の表示を行う(STEP819)。この動作は図20のSTEP622と同様のものであり、例えば図19(d)に示すような表示を行なう。この時点では、既に最初の画像情報に対応する画像復元フィルタが作成されているため、残補正時間Tiは、i番目以降の画像情報の補正処理にかかる時間t2の合計のみとなる。また、N番目の画像情報の補正を行う場合(STEP811、YES)も、同様に補正経過の表示を行う(STEP819)。
そして、補正が終了し(STEP813、YES)、補正後の画像ファイルを出力して(STEP814)次の画像情報の補正に入る(STEP815)際に、補正が可能か否かの判断を行なう(STEP820)。この動作は、実施例1における図20のSTEP618〜619と同様の動作である。即ち、補正が可能である場合は(STEP820、YES)、図20のSTEP618において使用バッテリ量Xiがバッテリ量Yiより小さい場合と(STEP618、NO)、使用バッテリ量Xiがバッテリ量Yiより大きく(STEP618、YES)かつ値TH2より大きい場合(STEP619、YES)とを含む場合である。この場合、次の画像情報の補正を行うためにSTEP805に戻る。
また、補正が可能でない場合は(STEP820、NO)、実施例1における図20の使用バッテリ量Xがバッテリ量Yより小さく(STEP618、YES)かつ値TH2より小さい場合(STEP619、YES)である。この場合は、一括画像情報補正を終了する。
STEP820において、実施例2において使用バッテリ量Xiaを推定する場合、実施例1と同様に求めることができるが、上述した総補正時間Taと同様に残補正時間Tiaが実施例1と異なる。ここで、この時点でi番目までの画像情報が補正されているため、残りはi+1〜N番目の画像情報となる。したがって、使用バッテリ量Xiaは、E×(t1のi+1〜N番目までの合計)+F×(t2のi+1〜N番目までの合計)+G×(残補正時間Tia)となる。ここで、残補正時間Tiaはt2のi+1〜N番目までの合計と等しくなる。なお、(t1のi〜N番目までの合計)を、t1を定数として(t1×(N−i+1))としても構わない。また、残補正時間TiaをSTEP805において表示部に表示しても構わない。
一方、図26に示すように、実施例2における画像復元フィルタ作成動作に、実施例1を組みあわせても構わない。この場合、画像復元フィルタが形成されて画像復元フィルタメモリに記憶するまでの動作(STEP802a〜802f)は実施例2と同様であるが、その後に、一括画像情報補正動作が終了したか否かを確認する動作(STEP802h)が必要となる。即ち、図25のSTEP818やSTEP820においてバッテリ量Ya、Yiaが不足する場合に一括画像情報補正動作が停止となるが、実施例2においては並列に処理を行なうため画像復元フィルタ作成動作が停止しない場合がある。そのため、STEP818で一括画像情報補正動作が停止したか否かを確認する。
このとき、一括画像情報補正動作が停止している場合(STEP802h、YES)、画像復元フィルタ作成ループ動作を抜けて終了する。また、一括画像情報補正動作が停止していない場合(STEP802h、NO)、画像復元フィルタ作成ループ動作を継続するか否かを判断する(STEP802g)。
上述したように実施例2に実施例1を組み合わせることで、バッテリ量が尽きやすい一括画像情報補正動作を行ったとしても、上述したように個々の画像情報の補正前にバッテリ量を確認することで、一括画像情報補正動作中にバッテリ量が尽きることを防ぐことができる。そのため、画像ファイルが破損したり、どの画像ファイルまで補正を行ったかがわからなったりすることを防ぐことができる。また、電力の消費量が大きい一括画像情報補正動作を行う前に、ユーザにバッテリ量が尽きる可能性があることを警告することができる。
また、補正を必要とする画像ファイルのみを順に整列して表示することが可能となり、補正が必要な画像ファイルをユーザが選択する手間や時間を低減させることができる。また、補正にかかる時間を推定してユーザに表示することとしているため、ユーザのストレスを低減させることができる。
なお、STEP802hにおいても、図25のSTEP818やSTEP820と同様にバッテリ量Yiaを確認することとして、値TH2よりもバッテリ量Yiaが小さければ画像復元フィルタ作成動作を終了することとしても構わない。また、図25のSTEP818やSTEP820において、推定する使用バッテリ量Xa、Xiaを実施例1と同様の使用バッテリ量X、Xiとしても構わない。
また、図25のSTEP818やSTEP820においてバッテリ量Yiaと比較される値TH2の値を実施例1と変えても構わない。特に実施例2では画像復元フィルタが次々に作成されて電力が消費されるため、TH2を大きめに設定した方がバッテリ量が尽きる可能性が低くなる。