説明

画像処理装置

【構成】連写モードの下でシャッタボタン28shが全押しされると、CPU26は、共通の被写体を捉えた連続4フレームの画像データをSDRAM32の退避画像エリア32cに取り込む。取り込まれた各フレームの画像データは、JPEGエンコーダ40によって圧縮処理を施される。CPU26は、各フレームのJPEGデータのサイズ値を高周波画像成分の量に相関するパラメータ値として検出し、こうして検出された4つのサイズ値の中から最大サイズ値を選択し、そして選択された最大サイズ値と残りの3つのサイズ値の各々との差分を正規化する。
【効果】共通の被写体を捉えた複数の画像のブレの検知性能が向上する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、画像処理装置に関し、特に電子カメラに適用され、画像データに表れたブレの大きさを検出する、画像処理装置に関する。
【背景技術】
【0002】
この種の装置の一例が、特許文献1に開示されている。この背景技術によれば、撮像素子によって捉えられた被写体を表す画像データに対してブレの大きさが検出され、検出された大きさに基づいて手ブレレベルが設定される。手ブレレベルは、手ブレが小さい順にレベル1〜20の20段階評価で表される。手ブレの検出方法としては、画像解析によって画像データ中の複数のエッジを検出し、検出されたエッジの特徴量から手ブレの程度を得る方法や、手ブレセンサの出力から手ブレの程度を得る方法が採用される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−77237号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、前者の手ブレ検出方法はソフトウェア構成の複雑化を招き、後者の手ブレ検出方法はハードウェア構成の複雑化を招く。このため、背景技術では、画像データのブレの検知性能の向上に限界がある。
【0005】
それゆえに、この発明の主たる目的は、画像データのブレの検知性能を高めることができる、画像処理装置を提供することである。
【課題を解決するための手段】
【0006】
この発明に従う画像処理装置(10:実施例で相当する参照符号。以下同じ)は、共通の被写体を捉えた画像を繰り返し取得する取得手段(S31~S33, S37~S39)、高周波画像成分の量に相関するパラメータ値を取得手段によって取得された複数の画像の各々に対応して検出する検出手段(S81)、検出手段によって検出された複数のパラメータ値のいずれか1つを選択する選択手段(S83)、および選択手段によって選択されたパラメータ値と選択手段の選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化手段(S91~S99, S103, S109~S111)を備える。
【0007】
好ましくは、選択手段によって選択されるパラメータ値は高周波画像成分の量が最大の画像に対応する。
【0008】
好ましくは、正規化手段は、選択手段によって選択されたパラメータ値に対応する画像に基づいて基準ぶれ量を有する基準ぶれ画像を作成する作成手段(S91)、作成手段によって作成された基準ぶれ画像の高周波画像成分に相関するパラメータ値を基準パラメータ値として検出する基準パラメータ値検出手段(S93~S95)、および基準パラメータ値検出手段によって検出された基準パラメータ値を参照して正規化処理を実行する正規化処理手段(S103)を含む。
【0009】
好ましくは、取得手段によって取得された複数の画像を個別に符号化する符号化手段(S35)がさらに備えられ、検出手段によって検出されるパラメータ値は符号化手段によって符号化された画像のサイズに相当する。
【0010】
好ましくは、取得手段によって取得された複数の画像の一部を正規化手段によって算出された正規化差分に基づいて抽出する抽出手段(S105, S49~S73)がさらに備えられる。
【0011】
さらに好ましくは、抽出手段は、取得手段によって取得された画像から特定物体像を探索する探索手段(S55)、探索手段の探索結果と正規化手段によって算出された正規化差分とに基づく既定の演算処理を実行する演算手段(S57~S65)、および演算手段の演算結果を参照して抽出処理を実行する抽出処理手段(S71~S73)を含む。
【0012】
この発明に従う画像処理プログラムは、画像処理装置(10)のプロセッサ(26)に、共通の被写体を捉えた画像を繰り返し取得する取得ステップ(S31~S33, S37~S39)、高周波画像成分の量に相関するパラメータ値を取得ステップによって取得された複数の画像の各々に対応して検出する検出ステップ(S81)、検出ステップによって検出された複数のパラメータ値のいずれか1つを選択する選択ステップ(S83)、および選択ステップによって選択されたパラメータ値と選択ステップの選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化ステップ(S91~S99, S103, S109~S111)を実行させるための、画像処理プログラムである。
【0013】
この発明に従う画像処理方法は、画像処理装置(10)によって実行される画像処理方法であって、共通の被写体を捉えた画像を繰り返し取得する取得ステップ(S31~S33, S37~S39)、高周波画像成分の量に相関するパラメータ値を取得ステップによって取得された複数の画像の各々に対応して検出する検出ステップ(S81)、検出ステップによって検出された複数のパラメータ値のいずれか1つを選択する選択ステップ(S83)、および選択ステップによって選択されたパラメータ値と選択ステップの選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化ステップ(S91~S99, S103, S109~S111)を備える。
【0014】
この発明に従う外部制御プログラムは、メモリ(46)に保存された内部制御プログラムに従う処理を実行するプロセッサ(26)を備える画像処理装置に供給される外部制御プログラムであって、共通の被写体を捉えた画像を繰り返し取得する取得ステップ(S31~S33, S37~S39)、高周波画像成分の量に相関するパラメータ値を取得ステップによって取得された複数の画像の各々に対応して検出する検出ステップ(S81)、検出ステップによって検出された複数のパラメータ値のいずれか1つを選択する選択ステップ(S83)、および選択ステップによって選択されたパラメータ値と選択ステップの選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化ステップ(S91~S99, S103, S109~S111)を内部制御プログラムと協働してプロセッサに実行させるための、外部制御プログラムである。
【0015】
この発明に従う画像処理装置(10)は、外部制御プログラムを取り込む取り込み手段(48)、および取り込み手段によって取り込まれた外部制御プログラムとメモリ(46)に保存された内部制御プログラムとに従う処理を実行するプロセッサ(26)を備える画像処理装置(10)であって、外部制御プログラムは、共通の被写体を捉えた画像を繰り返し取得する取得ステップ(S31~S33, S37~S39)、高周波画像成分の量に相関するパラメータ値を取得ステップによって取得された複数の画像の各々に対応して検出する検出ステップ(S81)、検出ステップによって検出された複数のパラメータ値のいずれか1つを選択する選択ステップ(S83)、および選択ステップによって選択されたパラメータ値と選択ステップの選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化ステップ(S91~S99, S103, S109~S111)を内部制御プログラムと協働して実行するプログラムに相当する。
【発明の効果】
【0016】
高周波画像成分の量に相関するパラメータ値は、被写体の属性に起因して変動し、さらに画像取得時の撮像面のブレに起因して変動する。ただし、被写体の属性に起因する変動は、共通の被写体を捉える複数の画像を取得し、各画像に対応する上述のパラメータ値を正規化することで排除される。
【0017】
これを踏まえて、この発明では、共通の被写体を捉えた複数の画像にそれぞれ対応する複数のパラメータ値のいずれか1つが選択され、選択されたパラメータ値と選択の後に残った1または2以上のパラメータ値の各々との差分が正規化される。これによって、共通の被写体を捉えた複数の画像のブレの検知性能が向上する。
【0018】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0019】
【図1】この発明の一実施例の基本的構成を示すブロック図である。
【図2】この発明の一実施例の構成を示すブロック図である。
【図3】撮像面における評価エリアの割り当て状態の一例を示す図解図である。
【図4】図2実施例に適用されるレジスタの構成の一例を示す図解図である。
【図5】撮像面で捉えられるシーンの一例を示す図解図である。
【図6】(A)は第1フレームの画像データの一例を示す図解図であり、(B)は第2フレームの画像データの一例を示す図解図である。
【図7】(A)は第3フレームの画像データの一例を示す図解図であり、(B)は第4フレームの画像データの一例を示す図解図である。
【図8】基準画像データに基づいて作成されたブレ画像データの一例を示す図解図である。
【図9】顔検出処理において参照される顔辞書の構成の一例を示す図解図である。
【図10】図2実施例に適用される他のレジスタの構成の一例を示す図解図である。
【図11】図2実施例に適用されるCPUの動作の一部を示すフロー図である。
【図12】図2実施例に適用されるCPUの動作の他の一部を示すフロー図である。
【図13】図2実施例に適用されるCPUの動作のその他の一部を示すフロー図である。
【図14】図2実施例に適用されるCPUの動作のさらにその他の一部を示すフロー図である。
【図15】図2実施例に適用されるCPUの動作の他の一部を示すフロー図である。
【図16】図2実施例に適用されるCPUの動作のその他の一部を示すフロー図である。
【図17】この発明の他の実施例の構成を示すブロック図である。
【発明を実施するための形態】
【0020】
以下、この発明の実施の形態を図面を参照しながら説明する。
[基本的構成]
【0021】
図1を参照して、この実施例の画像処理装置は、基本的に次のように構成される。取得手段1は、共通の被写体を捉えた画像を繰り返し取得する。検出手段2は、高周波画像成分の量に相関するパラメータ値を取得手段1によって取得された複数の画像の各々に対応して検出する。選択手段3は、検出手段2によって検出された複数のパラメータ値のいずれか1つを選択する。正規化手段4は、選択手段3によって選択されたパラメータ値と選択手段3の選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する。
【0022】
高周波画像成分の量に相関するパラメータ値は、被写体の属性に起因して変動し、さらに画像取得時の撮像面のブレに起因して変動する。ただし、被写体の属性に起因する変動は、共通の被写体を捉える複数の画像を取得し、各画像に対応する上述のパラメータ値を正規化することで排除される。
【0023】
これを踏まえて、この装置では、共通の被写体を捉えた複数の画像にそれぞれ対応する複数のパラメータ値のいずれか1つが選択され、選択されたパラメータ値と選択の後に残った1または2以上のパラメータ値の各々との差分が正規化される。これによって、共通の被写体を捉えた複数の画像のブレの検知性能が向上する。
[実施例]
【0024】
図2を参照して、この実施例のディジタルカメラ10は、ドライバ18aおよび18bによってそれぞれ駆動されるフォーカスレンズ12および絞りユニット14を含む。これらの部材を経た光学像は、イメージャ16の撮像面に照射され、光電変換を施される。これによって、撮像面で捉えられたシーンを表す電荷が生成される。
【0025】
電源が投入されると、CPU26は、動画取り込み処理を実行するべく、撮像タスクの下で露光動作および電荷読み出し動作の繰り返しをドライバ18cに命令する。ドライバ18cは、図示しないSG(Signal Generator)から周期的に発生する垂直同期信号Vsyncに応答して、撮像面を露光し、かつ撮像面で生成された電荷をラスタ走査態様で読み出す。イメージャ16からは、読み出された電荷に基づく生画像データが周期的に出力される。
【0026】
前処理回路20は、イメージャ16から出力された生画像データにディジタルクランプ,画素欠陥補正,ゲイン制御などの処理を施す。これらの処理を施された生画像データは、メモリ制御回路30を通してSDRAM32の生画像エリア32aに書き込まれる。
【0027】
後処理回路34は、生画像エリア32aに格納された生画像データをメモリ制御回路30を通して読み出し、読み出された生画像データに色分離処理,白バランス調整処理およびYUV変換処理を施す。これによって生成されたYUV形式の画像データは、メモリ制御回路30によってSDRAM32のYUV画像エリア32bに書き込まれる。
【0028】
LCDドライバ36は、YUV画像エリア32bに格納された画像データをメモリ制御回路30を通して繰り返し読み出し、読み出された画像データに基づいてLCDモニタ38を駆動する。この結果、撮像面で捉えられたシーンを表す動画像がリアルタイムでモニタ画面に表示される。
【0029】
図3を参照して、撮像面の中央には評価エリアEVAが割り当てられる。評価エリアEVAは水平方向および垂直方向の各々において16分割され、256個の分割エリアが評価エリアEVAを形成する。また、図2に示す前処理回路20は、上述した処理に加えて、生画像データを簡易的にRGBデータ(RGB: red, green & blue)に変換する簡易RGB変換処理を実行する。
【0030】
AE評価回路22は、前処理回路20によって生成されたRGBデータのうち評価エリアEVAに属するRGBデータを、垂直同期信号Vsyncが発生する毎に積分する。これによって、256個の積分値つまり256個のAE評価値が、垂直同期信号Vsyncに応答してAE評価回路22から出力される。AF評価回路24は、前処理回路20によって生成されたRGBデータのうち評価エリアEVAに属するRGBデータの高周波成分を、垂直同期信号Vsyncが発生する毎に積分する。これによって、256個の積分値つまり256個のAF評価値が、垂直同期信号Vsyncに応答してAF評価回路24から出力される。
【0031】
キー入力装置28に設けられたシャッタボタン28shが非操作状態にあるとき、CPU26は、AE評価回路22から出力された256個のAE評価値に基づいて簡易AE処理を実行し、適正EV値を算出する。算出された適正EV値を定義する絞り量および露光時間はドライバ18bおよび18cに設定され、これによってスルー画像の明るさが大まかに調整される。
【0032】
シャッタボタン28shが半押しされると、CPU26は、AE評価値を参照した厳格AE処理を実行し、最適EV値を算出する。算出された最適EV値を定義する絞り量および露光時間もまたドライバ18bおよび18cに設定され、これによってスルー画像の明るさが厳格に調整される。CPU26はまた、AF評価回路24から出力された256個のAF評価値に基づいてAF処理を実行する。フォーカスレンズ12は合焦点の探索のためにドライバ18aによって光軸方向に移動し、これによって発見された合焦点に配置される。この結果、スルー画像の鮮鋭度が向上する。
【0033】
撮像モードは、モード切換えスイッチ28mdによって単写モードおよび連写モードの間で切り換えられる。また、連写モードについては、ベストショットセレクト機能のオン/オフが可能である。
【0034】
単写モードが選択された状態でシャッタボタン28shが全押しされると、CPU26は、静止画取り込み処理を1回だけ実行する。この結果、シャッタボタン28shが全押しされた時点のシーンを表す1フレームの画像データが退避画像エリア32cに退避される。静止画取り込み処理が完了すると、CPU26は、圧縮処理の実行をJPEGエンコーダ40に命令し、記録処理の実行をメモリI/F42に命令する。
【0035】
JPEGエンコーダ40は、退避画像エリア32cに退避された画像データをメモリ制御回路30を通して読み出し、読み出された画像データをJPEG方式で圧縮し、そして圧縮画像データつまりJPEGデータをメモリ制御回路30を通してSDRAM32の圧縮画像エリア32dに書き込む。メモリI/F42は、圧縮画像エリア32dに格納されたJPEGデータをメモリ制御回路30を通して読み出し、読み出されたJPEGデータをファイル形式で記録媒体44に記録する。
【0036】
連写モードが選択された状態でシャッタボタン28shが全押しされると、CPU26は、垂直同期信号Vsyncが発生する毎に合計4回の静止画取り込み処理を実行し、さらに4回のJPEG圧縮処理の実行をJPEGエンコーダ40に命令する。
【0037】
4回の静止画取り込み処理の結果、連続する4フレームの画像データが退避画像エリア32cに退避される。JPEGエンコーダ40は、退避された4フレームの画像データをメモリ制御回路30を通して読み出し、読み出された各フレームの画像データをJPEG方式で圧縮し、そしてJPEGデータをメモリ制御回路30を通して圧縮画像エリア32dに書き込む。圧縮画像エリア32dには、合計4フレームのJPEGデータが格納される。
【0038】
ベストショットセレクト機能がオフ状態にあるとき、CPU26は、圧縮画像エリア32dに格納された4フレームのJPEGデータの全てに対する記録処理の実行をメモリI/F42に命令する。これに対して、ベストショットセレクト機能がオン状態にあれば、CPU26は、圧縮画像エリア32dに格納された4フレームの中から1フレームを選択し、選択されたフレームのJPEGデータに対する記録処理の実行をメモリI/F42に命令する。メモリI/F42は、選択されたフレームのJPEGデータをメモリ制御回路30を通して圧縮画像エリア32dから読み出し、読み出されたJPEGデータをファイル形式で記録媒体44に記録する。
【0039】
ベストショットセレクト機能がオン状態にあるときは、以下の処理がCPU26によって実行される。
【0040】
まず、シャッタボタン28shが全押しされた直後の撮像面の手ブレを判定するべく、ブレ判定処理が実行される。ブレ判定処理では、圧縮画像エリア32dに格納された4フレームのJPEGデータにそれぞれ対応する4つのサイズ値の中から最大サイズ値が特定され、特定されたサイズ値のJPEGデータに対応する非圧縮の画像データが基準画像データとして指定される。指定された基準画像データのフレーム番号は変数Rに設定され、フラグFLG_R_blurは“0”に設定され、そして基準画像データの安定度は“100”に設定される。安定度“100”は、第Rフレームに対応して図4に示すレジスタRGST1に登録される。
【0041】
図5に示すように人物HM1,ビルBL1および山MT1が現れたシーンが捉えられた状態でシャッタボタン28shが全押しされ、これに起因して撮像面に手ブレが生じた場合、第1フレームの画像データは図6(A)に示す要領で作成され、第2フレームの画像データは図6(B)に示す要領で作成され、第3フレームの画像データは図7(A)に示す要領で作成され、そして第4フレームの画像データは図7(B)に示す要領で作成される。
【0042】
こうして得られた4フレームの画像データの中では、第3フレームの画像データが手ブレが最も小さい画像データであり、第3フレームのJPEGデータのサイズ値が最大となる。したがって、この例では、第3フレームの画像データが基準画像データとして指定され、変数Rは“3”に設定される。さらに、フラグFLG_3_blurが“0”に設定され、第3フレームの画像データの安定度が“100”に設定される。
【0043】
続いて、基準ブレ度(=許容可能な最大のブレ度)を有するブレ画像データが、基準画像データに基づいて作成される。具体的には、基準画像データが水平方向,垂直方向および光軸回り方向に既定量だけシフトないし回転され、異なる位置ないし姿勢で定義された複数フレームの基準画像データが互いに合成される。ブレ画像データは、図7(A)に示す画像データに基づいて、図8に示す要領で作成される。作成されたブレ画像データは、SDRAM32の退避画像エリア32cに格納される。
【0044】
CPU26は、こうして作成されたブレ画像データに対する圧縮処理の実行をJPEGエンコーダ40に命令する。JPEGエンコーダ40は、ブレ画像データをメモリ制御回路30を通して退避画像エリア32cから読み出し、読み出されたブレ画像データをJPEG方式で圧縮し、そしてブレ画像データに基づくJPEGデータをメモリ制御回路30を通して圧縮画像エリア32dに書き込む。作成されたJPEGデータのサイズ値は、基準値BLURszに設定される。
【0045】
続いて、変数Kが“1”〜“4”(ただし、変数Rと同じ値は除く)に順に設定され、第KフレームのJPEGデータのサイズ値が基準値BLURszと比較される。注目するサイズ値が基準値BLURsz以上であれば、フラグFLG_K_blurは“0”に設定される。一方、注目するサイズ値が基準値BLURszを下回れば、フラグFLG_K_blurは“1”に設定される。つまり、フラグFLG_K_blurは、第Kフレームの画像データのブレ度が許容範囲から外れるとき“1”に設定され、第Kフレームの画像データのブレ度が許容範囲に収まるとき“0”に設定される。
【0046】
図6(A)〜図7(B)の例では、第1フレームのJPEGデータのサイズが基準値BLURszを下回り、第2フレームおよび第4フレームのJPEGデータのサイズが基準値BLURsz以上となる。したがって、フラグFLG_1_blurは“1”に設定され、フラグFLG_2_blurおよびFLG_4_blurは“0”に設定される。
【0047】
さらに、注目するサイズ値が基準値BLURsz以上となるときは、第Kフレームの画像データのブレ度が数1に従って算出され、第Kフレームの画像データの安定度が数2に従って算出される。
[数1]
ブレ度=(REFsz−Ksz)/(REFsz−BLURsz)
Ksz:第KフレームのJPEGデータのサイズ値
REFsz:基準画像データに基づくJPEGデータのサイズ値
[数2]
安定度=1−ブレ度
【0048】
数1によれば、第KフレームのJPEGデータのサイズ値と基準画像データに基づくJPEGデータのサイズ値との差分が、基準画像データに基づくJPEGデータのサイズ値とブレ画像データに基づくJPEGデータのサイズ値との差分によって割り算される。これによって、第KフレームのJPEGデータのサイズ値と基準画像データに基づくJPEGデータのサイズ値との差分が正規化される。数2によれば、数1によって算出されたブレ度が“1”から減算される。数2に従って算出された安定度は、第Kフレームに対応してレジスタRGST1に登録される。
【0049】
ブレ判定処理が完了すると、変数Kが再度“1”〜“4”に設定され、フラグFLG_K_blueの状態が判別される。
【0050】
FLG_K_blue=1であれば、第Kフレームの画像データのブレ度が許容範囲から外れるとして、総合評価点が“0”に設定される。総合評価点“0”は、第Kフレームに対応してレジスタRGST1に記述する。上述の例では、図6(A)に示す第1フレームの画像データに対応して、フラグFLG_1_blueが“1”に設定される。したがって、第1フレームの総合評価点は“0”に設定される。
【0051】
これに対して、FLG_K_blue=0であれば、退避画像エリア32cに退避された第Kフレームの画像データに対して顔検出処理が実行される。顔検出処理では、フラッシュメモリ46内の顔辞書DC_Fに図9に示す要領で収められた3つの辞書画像のいずれか1つと符合する顔画像が、第Kフレームの画像データから探索される。探索処理によって1または2以上の顔画像が発見されると、発見された顔画像を囲う顔枠のサイズおよび位置が図10に示すレジスタRGST2に登録される。レジスタRGST2には、発見された顔画像の数も登録される。
【0052】
したがって、第2フレームの画像データについては図6(B)に“FK”で示す顔枠のサイズおよび位置が登録され、第3フレームの画像データについては図7(A)に“FK”で示す顔枠のサイズおよび位置が登録され、そして第4フレームの画像データについては図7(B)に“FK”で示す顔枠のサイズおよび位置が登録される。なお、第2フレーム〜第4フレームのいずれにおいても、登録された顔画像数は“1”を示す。
【0053】
レジスタRGST2に登録された顔画像の数が“1”以上であれば、レジスタRGST1に登録された顔枠に属する画像について笑顔度が算出される。また、レジスタRGST1に登録された顔枠に属する画像上で目が検出され、検出した目の開度が算出される。発見された顔画像の数が“2”以上であれば、算出される笑顔度は各顔画像の笑顔度の平均値に相当し、算出される開度は各顔画像に表れた目の開度の平均値に相当する。算出された笑顔度および目の開度はいずれも、“0”〜“1”の範囲に属する値を示す。一方、レジスタRGST2に登録された顔画像の数が“0”であれば、笑顔度および目の開度を“0”に設定する。こうして得られた笑顔度および目の開度は、第Kフレームに対応して図4に示すレジスタRGST1に登録される。
【0054】
続いて、第Kフレームに対応してレジスタRGST1に登録された安定度,笑顔度および目の開度が数3に適用され、これによって総合評価点が算出される。
[数3]
総合評価点=安定度*Wstbl+笑顔度*Wsml+目の開度*Weye
ただし、Wstbl>Wsml>Weye>0
【0055】
数3によれば、安定度が重み付け量Wstblによって掛け算され、笑顔度が重み付け量Wsmlによって掛け算され、目の開度が重み付け量Weyeによって掛け算され、そしてこれらの掛け算値が互いに加算される。こうして算出された総合評価点もまた、第Kフレームに対応して図4に示すレジスタRGST1に記述される。
【0056】
4つの総合評価点がレジスタRGST1に登録されると、これらの総合評価点の中から最高の総合評価点が検出され、検出された総合評価点に対応するフレームが選択される。上述の例では、第4フレームに対応する総合評価点が最大となり、第4フレームが選択される。CPU26は、選択されたフレームに対応するJPEGデータの記録をメモリI/F42に命令する。メモリI/F42は、指定フレームのJPEGデータをメモリ制御回路30を通して圧縮画像エリア32dから読み出し、読み出されたJPEGデータをファイル形式で記録媒体44に記録する。
【0057】
CPU26は、図11〜図16に示す撮像タスクを含む複数のタスクをマルチタスクOSの制御の下で並列的に実行する。なお、これらのタスクに対応する制御プログラムは、フラッシュメモリ46に記憶される。
【0058】
図11を参照して、ステップS1では動画取込み処理を実行する。この結果、シーンを表すスルー画像がLCDモニタ38に表示される。ステップS3ではシャッタボタン28shが半押しされたか否かを判別し、判別結果がNOである限り、ステップS5で簡易AE処理を繰り返す。この結果、スルー画像の明るさが大まかに調整される。ステップS3の判別結果がNOからYESに更新されると、ステップS7で厳格AE処理を実行し、ステップS9でAF処理を実行する。スルー画像の明るさは厳格AE処理によって厳格に調整され、スルー画像の鮮鋭度はAF処理によって向上する。
【0059】
ステップS11ではシャッタボタン28shが全押しされたか否かを判別し、ステップS13ではシャッタボタン28shの操作が解除されたか否かを判別する。ステップS113でYESであればそのままステップS3に戻り、ステップS11でYESであればステップS15〜S23の処理を経てステップS3に戻る。
【0060】
ステップS15では、現時点の撮像モードが連写モードおよび単写モードのいずれであるかを判別する。現時点の撮像モードが単写モードであれば、ステップS17で静止画取り込み処理を実行する。ステップS19では圧縮処理の実行をJPEGエンコーダ40に命令し、ステップS21では記録処理の実行をメモリI/F42に命令する。一方、現時点の撮像モードが連写モードであれば、ステップS23で連写&記録処理を実行する。ステップS21またはS23の処理が完了すると、ステップS3に戻る。
【0061】
ステップS17の静止画取り込み処理の結果、シャッタボタン28shが全押しされた時点のシーンを表す1フレームの画像データがYUV画像エリア32bから退避画像エリア32cに退避される。また、ステップS19の処理の結果、退避された画像データに基づくJPEGデータがJPEGエンコーダ40によって作成される。さらに、ステップS21の処理の結果、作成されたJPEGデータがファイル形式で記録媒体44に記録する。
【0062】
ステップS23の連写&記録処理は、図12〜図16に示すサブルーチンに従って実行される。
【0063】
まず、ステップS31でフレーム番号に相当する変数Kを“1”に設定する。ステップS33では、上述したステップS17と同様の静止画取り込み処理を垂直同期信号Vsyncの発生を待って実行する。ステップS35では圧縮処理の実行をJPEGエンコーダ40に命令し、ステップS37では変数Kをインクリメントする。ステップS39ではインクリメントされた変数Kが“4”を上回るか否かを判別し、判別結果がNOであればステップS33に戻る一方、判別結果がYESであればステップS41以降の処理に進む。
【0064】
したがって、ステップS33の静止画取込処理およびステップS35のJPEG圧縮処理は垂直同期信号Vsyncに応答して合計4回実行され、連続する4フレームの画像データが退避画像エリア32cに退避されるとともに、これに基づく4フレームのJPEGデータが圧縮画像エリア32dに格納される。
【0065】
ステップS41では、ベストショットセレクト機能がオン状態であるか否かを判別する。判別結果がNOであればステップS43に進み、圧縮画像エリア32dに格納された4フレームの画像データに対する記録処理の実行をメモリI/F42に命令する。メモリI/F42は、4フレームのJPEGデータをメモリ制御回路30を通して圧縮画像エリア32dから読み出し、読み出されたJPEGデータをファイル形式で記録媒体42に記録する。記録処理が完了すると、上階層のルーチンに復帰する。
【0066】
ステップS41の判別結果がYESであれば、ステップS45でフラグFLG_1_blur〜FLG_4_blurを“0”に設定し、ステップS47でブレ判定処理を実行する。フラグFLG_K_blur(K:1〜4)は、第Kフレームの画像データのブレ度が許容範囲に収まるとき“0”を維持し、第Kフレームの画像データのブレ度が許容範囲から外れるとき“1”に更新される。また、FLG_K_blur=0の画像データについては画像の安定度が算出され、算出された安定度は第Kフレームに対応してレジスタRGST1に登録される。
【0067】
ステップS49では変数Kを“1”に設定し、ステップS51ではフラグFLG_K_blueが“1”を示すか否かを判別する。判別結果がYESであればステップS53に進み、総合評価点“0”を第Kフレームに対応してレジスタRGST1に記述する。記述が完了すると、ステップS67に進む。
【0068】
これに対して、ステップS51の判別結果がNOであれば、第Kフレームの画像データに対する顔検出処理をステップS55で実行する。この結果、顔辞書DC_Fに収められたいずれかの辞書画像と符合する顔画像が第Kフレームの画像データから探索される。探索処理によって1または2以上の顔画像が発見されると、発見された顔画像を囲う顔枠のサイズおよび位置がレジスタRGST2に登録される。レジスタRGST2には、発見された顔画像の数も登録される。
【0069】
ステップS57では、レジスタRGST2に登録された顔画像の数が“0”であるか否かを判別する。判別結果がNOであればステップS59〜S61の処理を経てステップS65に進み、判別結果がYESであればステップS63の処理を経てステップS65に進む。
【0070】
ステップS59では、レジスタRGST1に登録された顔枠に属する画像を参照して笑顔度を算出する。ステップS61では、レジスタRGST1に登録された顔枠に属する画像上で目を検出し、検出した目の開度を算出する。発見された顔画像の数が“2”以上であれば、ステップS59で算出される笑顔度は各顔画像の笑顔度の平均値に相当し、ステップS61で算出される開度は各顔画像に表れた目の開度の平均値に相当する。ステップS63では、笑顔度および目の開度を“0”に設定する。こうして得られた笑顔度および目の開度は、第Kフレームに対応してレジスタRGST1に登録される。
【0071】
ステップS65では、第Kフレームに対応してレジスタRGST1に登録された安定度,笑顔度および目の開度を数3に適用して、総合評価点を算出する。算出された総合評価点もまた、第Kフレームに対応してレジスタRGST1に記述される。記述が完了すると、ステップS67に進む。
【0072】
ステップS67では変数Kが“4”に達したか否かを判別し、判別結果がNOであればステップS69で変数KをインクリメントしてからステップS51に戻る一方、判別結果がYESであればステップS71に進む。ステップS71では、レジスタRGST1に登録された4つの総合評価点の中から最高の総合評価点を検出し、検出された総合評価点に対応するフレームを選択する。
【0073】
ステップS73では、選択されたフレームに対応するJPEGデータの記録をメモリI/F42に命令する。メモリI/F42は、指定フレームのJPEGデータをメモリ制御回路30を通して圧縮画像エリア32dから読み出し、読み出されたJPEGデータをファイル形式で記録媒体44に記録する。ステップS73の処理が完了すると、上階層のルーチンに復帰する。
【0074】
図12に示すステップS47のブレ判定処理は、図15〜図16に示すサブルーチンに従って実行される。まず、ステップS81で各フレームのJPEGデータのサイズ値を検出する。ステップS83では、検出された4つのサイズ値の中から最大サイズ値を特定し、かつ特定されたサイズ値のJPEGデータに対応する非圧縮の画像データを基準画像データとして指定する。
【0075】
ステップS85では指定された基準画像データのフレーム番号を変数Rに設定し、ステップS87ではフラグFLG_R_blurを“0”に設定し、そしてステップS89では基準画像データの安定度を“100”に設定する。安定度“100”は、第Rフレームに対応してレジスタRGST1に登録される。ステップS91では、基準ブレ度(=許容可能な最大のブレ度)を有するブレ画像データを基準画像データに基づいて作成する。作成されたブレ画像データは、SDRAM32の退避画像エリア32cに格納される。
【0076】
ステップS93では、作成されたブレ画像データに対する圧縮処理の実行をJPEGエンコーダ40に命令する。JPEGエンコーダ40は、ブレ画像データをメモリ制御回路30を通して退避画像エリア32cから読み出し、読み出されたブレ画像データをJPEG方式で圧縮し、そして圧縮画像データつまりJPEGデータをメモリ制御回路30を通して圧縮画像エリア32dに書き込む。ステップS95では、ステップS93で作成されたJPEGデータのサイズ値を基準値BLURszに設定する。
【0077】
ステップS97では変数Kを“1”に設定し、ステップS99では変数Kが変数Rと一致するか否かを判別する。判別結果がYESであればそのままステップS109に進み、判別結果がNOであればステップS101〜S107の処理を経てステップS109に進む。
【0078】
ステップS101では第KフレームのJPEGデータのサイズ値が基準値BLURszを下回るか否かを判別する。判別結果がNOであれば、ステップS107でフラグFLG_K_blurを“1”に設定する。判別結果がYESであれば、ステップS103で第Kフレームの画像データのブレ度を算出し、ステップS105で第Kフレームの画像データの安定度を算出する。ブレ度は数1に従って算出され、安定度は数2に従って算出される。数2に従って算出された安定度は、第Kフレームに対応してレジスタRGST1に登録される。
【0079】
ステップS109では変数Kが“4”に達したか否かを判別し、判別結果がNOであればステップS111で変数KをインクリメントしてからステップS99に戻る一方、判別結果がYESであれば上階層のルーチンに復帰する。
【0080】
以上の説明から分かるように、連写モードの下でシャッタボタン28shが全押しされると、CPU26は、共通の被写体を捉えた連続4フレームの画像データをSDRAM32の退避画像エリア32cに取り込む(S31~S33, S37~S39)。取り込まれた各フレームの画像データは、JPEGエンコーダ40によって圧縮処理を施される。CPU26は、各フレームのJPEGデータのサイズ値を高周波画像成分の量に相関するパラメータ値として検出し(S81)、こうして検出された4つのサイズ値の中から最大サイズ値を選択し(S83)、そして選択された最大サイズ値と残りの3つのサイズ値の各々との差分を正規化する(S91~S99, S103, S109~S111)。
【0081】
JPEGデータのサイズ値は、被写体の属性に起因して変動し、さらに画像取得時の撮像面のブレに起因して変動する。ただし、被写体の属性に起因する変動は、共通の被写体を捉える複数の画像を取得し、各画像に対応するJPEGデータのサイズ値を正規化することで排除される。
【0082】
これを踏まえて、この実施例では、共通の被写体を表す4フレームのJPEGデータにそれぞれ対応する4つのサイズ値の中から最大サイズ値が選択され、選択された最大サイズ値と残りの3つのサイズ値の各々との差分が正規化される。これによって、共通の被写体を捉えた複数の画像のブレの検知性能が向上する。
【0083】
なお、この実施例では、総合評価点が最高のフレームのJPEGデータを記録するようにしているが(図14のステップS71〜S73参照)、総合評価点が基準点を上回る限り、2以上のフレームのJPEGデータを記録するようにしてもよい。
【0084】
また、この実施例では、マルチタスクOSおよびこれによって実行される複数のタスクに相当する制御プログラムは、フラッシュメモリ46に予め記憶される。しかし、図17に示すように通信I/F48をディジタルカメラ10に設け、一部の制御プログラムを内部制御プログラムとしてフラッシュメモリ46に当初から準備する一方、他の一部の制御プログラムを外部制御プログラムとして外部サーバから取得するようにしてもよい。この場合、上述の動作は、内部制御プログラムおよび外部制御プログラムの協働によって実現される。
【0085】
また、この実施例では、CPU26によって実行される処理を上述の要領で複数のタスクに区分するようにしている。しかし、各々のタスクをさらに複数の小タスクに区分してもよく、さらには区分された複数の小タスクの一部を他のタスクに統合するようにしてもよい。また、各々のタスクを複数の小タスクに区分する場合、その全部または一部を外部サーバから取得するようにしてもよい。
【符号の説明】
【0086】
10 …ディジタルカメラ
16 …イメージャ
22 …AE評価回路
24 …AF評価回路
26 …CPU
32 …SDRAM
40 …JPEGエンコーダ
46 …フラッシュメモリ

【特許請求の範囲】
【請求項1】
共通の被写体を捉えた画像を繰り返し取得する取得手段、
高周波画像成分の量に相関するパラメータ値を前記取得手段によって取得された複数の画像の各々に対応して検出する検出手段、
前記検出手段によって検出された複数のパラメータ値のいずれか1つを選択する選択手段、および
前記選択手段によって選択されたパラメータ値と前記選択手段の選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化手段を備える、画像処理装置。
【請求項2】
前記選択手段によって選択されるパラメータ値は前記高周波画像成分の量が最大の画像に対応する、請求項1記載の画像処理装置。
【請求項3】
前記正規化手段は、前記選択手段によって選択されたパラメータ値に対応する画像に基づいて基準ぶれ量を有する基準ぶれ画像を作成する作成手段、前記作成手段によって作成された基準ぶれ画像の高周波画像成分に相関するパラメータ値を基準パラメータ値として検出する基準パラメータ値検出手段、および前記基準パラメータ値検出手段によって検出された基準パラメータ値を参照して正規化処理を実行する正規化処理手段を含む、請求項1または2記載の画像処理装置。
【請求項4】
前記取得手段によって取得された複数の画像を個別に符号化する符号化手段をさらに備え、
前記検出手段によって検出されるパラメータ値は前記符号化手段によって符号化された画像のサイズに相当する、請求項1ないし3のいずれかに記載の画像処理装置。
【請求項5】
前記取得手段によって取得された複数の画像の一部を前記正規化手段によって算出された正規化差分に基づいて抽出する抽出手段をさらに備える、請求項1ないし4のいずれかに記載の画像処理装置。
【請求項6】
前記抽出手段は、前記取得手段によって取得された画像から特定物体像を探索する探索手段、前記探索手段の探索結果と前記正規化手段によって算出された正規化差分とに基づく既定の演算処理を実行する演算手段、および前記演算手段の演算結果を参照して抽出処理を実行する抽出処理手段を含む、請求項5記載の画像処理装置。
【請求項7】
画像処理装置のプロセッサに、
共通の被写体を捉えた画像を繰り返し取得する取得ステップ、
高周波画像成分の量に相関するパラメータ値を前記取得ステップによって取得された複数の画像の各々に対応して検出する検出ステップ、
前記検出ステップによって検出された複数のパラメータ値のいずれか1つを選択する選択ステップ、および
前記選択ステップによって選択されたパラメータ値と前記選択ステップの選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化ステップを実行させるための、画像処理プログラム。
【請求項8】
画像処理装置によって実行される画像処理方法であって、
共通の被写体を捉えた画像を繰り返し取得する取得ステップ、
高周波画像成分の量に相関するパラメータ値を前記取得ステップによって取得された複数の画像の各々に対応して検出する検出ステップ、
前記検出ステップによって検出された複数のパラメータ値のいずれか1つを選択する選択ステップ、および
前記選択ステップによって選択されたパラメータ値と前記選択ステップの選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化ステップを備える、画像処理方法。
【請求項9】
メモリに保存された内部制御プログラムに従う処理を実行するプロセッサを備える画像処理装置に供給される外部制御プログラムであって、
共通の被写体を捉えた画像を繰り返し取得する取得ステップ、
高周波画像成分の量に相関するパラメータ値を前記取得ステップによって取得された複数の画像の各々に対応して検出する検出ステップ、
前記検出ステップによって検出された複数のパラメータ値のいずれか1つを選択する選択ステップ、および
前記選択ステップによって選択されたパラメータ値と前記選択ステップの選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化ステップを前記内部制御プログラムと協働して前記プロセッサに実行させるための、外部制御プログラム。
【請求項10】
外部制御プログラムを取り込む取り込み手段、および
前記取り込み手段によって取り込まれた外部制御プログラムとメモリに保存された内部制御プログラムとに従う処理を実行するプロセッサを備える画像処理装置であって、
前記外部制御プログラムは、
共通の被写体を捉えた画像を繰り返し取得する取得ステップ、
高周波画像成分の量に相関するパラメータ値を前記取得ステップによって取得された複数の画像の各々に対応して検出する検出ステップ、
前記検出ステップによって検出された複数のパラメータ値のいずれか1つを選択する選択ステップ、および
前記選択ステップによって選択されたパラメータ値と前記選択ステップの選択の後に残った1または2以上のパラメータ値の各々との差分を正規化する正規化ステップを前記内部制御プログラムと協働して実行するプログラムに相当する、画像処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2012−217106(P2012−217106A)
【公開日】平成24年11月8日(2012.11.8)
【国際特許分類】
【出願番号】特願2011−82210(P2011−82210)
【出願日】平成23年4月1日(2011.4.1)
【出願人】(000001889)三洋電機株式会社 (18,308)
【Fターム(参考)】