本発明の第1実施形態に係る画像処理装置100について、図1を参照して説明する。図1は、本発明の第1実施形態に係る画像処理装置100の構成図である。
画像処理装置100は、例えば、デジタルカメラである。画像処理装置100は、以下の構成要素を備える。
保護手段102は、例えばバリアである。保護手段102は、外部と撮影レンズ10との間に配置され、撮影レンズ10を保護する。シャッター12は、撮影レンズ10と後述の撮像素子14との間に配置され、撮影レンズ10から撮像素子14へ導かれる光量を絞るための絞り機能を有する。
取得手段17は、異なる複数のタイミングで被写体を撮像して得られた画像データを取得する。取得手段17は、光学像を光電変換して画像信号を生成する撮像素子14と、撮像素子14から受け取った画像信号をA/D変換して画像データを生成するA/D変換器16とを含む。すなわち、取得手段17は、被写体を異なる複数のタイミングで撮像して、被写体の複数の画像データを取得する。
タイミング発生部18は、メモリ制御部22及びシステム制御部50により制御されて、撮像素子14、A/D変換器16、後述のD/A変換器26にクロック信号や制御信号を供給する。
画像処理部20は、A/D変換器16からのデータ或いはメモリ制御部22からのデータに対して、所定の画素補間処理や色変換処理を行う。
また、画像処理部20は、A/D変換器16等から受け取った画像データを用いて所定の演算処理を行い、得られた演算結果をシステム制御部50へ供給する。これにより、システム制御部50は、露光制御手段40、測距制御手段42に対して制御を行い、TTL(スルー・ザ・レンズ)方式のAF(オートフォーカス)処理、AE(自動露出)処理、EF(フラッシュプリ発光)処理を行っている。
さらに、画像処理部20は、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてTTL方式のAWB(オートホワイトバランス)処理も行っている。
また、画像処理部20は、顔領域検出手段20aと顔情報抽出手段20bとを含む。顔領域検出手段20aは、取得手段17により取得された複数の画像データのそれぞれにおいて、被写体の顔領域を検出する。例えば、画像データから、口や目などの顔の構成要素に相当する形状を抽出し、その構成要素の位置を基準として顔領域を検出する。顔情報抽出手段20bは、顔領域検出手段20aにより検出された複数の顔領域のそれぞれから、被写体の顔の構成要素の形状に関する顔情報を抽出する。顔情報は、例えば、口や目や眉毛などの具体的な形状や座標に関する情報を含み、あるいは、例えば、鼻の端点、鼻穴の中心点、耳の端点などの形状や座標に関する情報を含む。ここで、顔情報は、それぞれの端点や中心点あるいは目の黒点などを入力された顔の画像から、例えばニューラルネットワークや空間フィルタを用いたエッジ検出などの手法を用いて算出することにより抽出することができる。顔領域検出手段20aが顔領域を抽出する際には、口や目などの顔の構成要素としての条件を満たす形状が存在するか否かという判断を行っている。つまり、笑っているときの大きく開いた口でも、黙っているときの閉じた口でも、口という条件さえ満たせばその具体的な形状までは問わない。これに対し、顔情報抽出手段20bが顔情報を抽出する際には、同じ口であっても、口角の位置や口の開き具合などの具体的な形状や顔領域における座標の情報までも含めて抽出される。
メモリ制御回路22は、A/D変換器16、タイミング発生部18、画像処理部20、画像表示メモリ24、D/A変換器26、メモリ30、圧縮伸長部32を制御する。メモリ制御回路22は、A/D変換器16や画像処理部20から受け取ったデータを画像表示メモリ24或いはメモリ30に書き込む。
画像表示メモリ24は、表示用の画像データを記憶する。D/A変換器26は、表示用の画像データをメモリ制御部22経由で画像表示メモリ24から受け取り、表示用の画像データをアナログ信号へD/A変換する。
第1の報知手段28は、D/A変換器26から受け取ったアナログ信号に応じた画像を表示する。第1の報知手段28は、例えば、TFT−LCDを含む。第1の報知手段28は、画像を逐次表示して、電子ファインダ機能を実現することが可能である。
ここで、第1の報知手段28は、システム制御部50の指示により任意に表示をON/OFFすることが可能であり、表示をOFFにした場合にデジタルカメラ100の電力消費を大幅に低減することが出来る。
また、第1の報知手段28は、後述の顔情報抽出手段20bにより顔情報が抽出された状態であるか否かを示す抽出状態情報を被写体の画像に関連付けて報知する。抽出状態情報は、例えば、顔情報が抽出されていない顔領域であることを示す実線の四角い枠508と、顔情報が抽出されている顔領域であることを示す破線の四角い枠506とを含む(図7,図8参照)。
あるいは、第1の報知手段28は、後述の顔情報選択手段50aにより基準顔情報が選択された状態であるか否かを示す選択状態情報を被写体の画像に関連付けて報知する(図7〜図9参照)。選択状態情報は、例えば、基準顔情報が選択されていない顔領域であることを示す破線の四角い枠506と、基準顔情報が選択された顔領域であることを示す実線の丸い枠507とを含む(図8,図9参照)。後述のように、基準顔情報は、例えば、無表情状態の表情、すなわち、澄ました表情に対する顔情報である。
あるいは、第1の報知手段28は、基準顔情報に対する他の顔情報の変化量を示す変化量情報602と、検出しようとする表情に達したと判断するための変化量の閾値を示す閾値情報603とを、被写体の画像に関連付けて報知する(図10参照)。あるいは、第1の報知手段28は、変化量情報と、後述の変更手段50cにより変更された閾値情報とを、被写体の画像に関連付けて報知する。ここで、第1の報知手段28は、少なくとも変化量情報602を報知する際に、後述の表情推定手段50bが推定した結果に基づいて、変化量が閾値を超えたか否かを識別可能に報知する。第1の報知手段28は、さらに、基準顔情報に対応した画像601(図10参照)を被写体の画像に関連付けて報知する。
メモリ30は、撮影した静止画像や動画像を格納する。メモリ30は、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記憶量を備えている。これにより、複数枚の静止画像を連続して撮影する連射撮影やパノラマ撮影の場合にも、高速かつ大量の画像書き込みをメモリ30に対して行うことが可能となる。また、メモリ30はシステム制御部50の作業領域としても使用することが可能である。
圧縮伸長部32は、適応離散コサイン変換(ADCT)等により画像データを圧縮伸長する。圧縮伸長部32は、メモリ30に格納された画像を読み込んで圧縮処理或いは伸長処理を行い、処理を終えたデータをメモリ30に書き込む。
露光制御手段40は、絞り機能を備えるシャッター12を制御する。露光制御手段40は、フラッシュ48と連携することにより、フラッシュ調光機能を実現することができる。
測距制御手段42は、撮影レンズ10のフォーカシングを制御する。ズーム制御手段44は、撮影レンズ10のズーミングを制御する。バリア制御手段46は、保護手段102の動作を制御する。フラッシュ48は、AF補助光の投光機能、フラッシュ調光機能を有する。
システム制御部50は、デジタルカメラ100全体を制御する。例えば、システム制御部50は、取得手段17により取得された画像データに対して画像処理部20が演算した演算結果に基づき、露光制御手段40や測距制御手段42を制御する。
また、システム制御部50は、顔情報選択手段50a、表情推定手段50b、及び変更手段50cを含む。顔情報選択手段50aは、顔情報抽出手段20bにより抽出された複数の顔情報から、被写体の顔の表情を推定するための基準となる基準顔情報を選択する。基準顔情報は、例えば、無表情状態の表情、すなわち、澄ました表情に対する顔情報である。ここで、顔情報選択手段50aは、例えば、所定の期間、口の形状の変化量が所定の閾値を超えなかった場合に、無表情状態であると判定して、その判定結果に応じた顔情報を基準顔情報として選択する。
なお、顔情報選択手段50aは、無表情状態を判定する際に、口以外の構成要素の形状を使用しても構わない。例えば、顔情報選択手段50aは、更に顔情報として眼の開閉度状態を用い、目の大きさの変化などを使用して眼開きの状態タイミングに基づいて基準顔情報を選択しても良い。また、顔情報選択手段50aは、瞳画像をニューラルネットワークで学習させ、固定閾値以上の瞳ニューロン数から眼の開閉状態を判定するようにしても良い。
表情推定手段50bは、基準顔情報と他の顔情報とを比較して、他の顔情報に対応した被写体の顔の表情を推定する。すなわち、表情推定手段50bは、顔情報選択手段50aから基準顔情報を受け取り、画像処理部20の顔情報抽出手段20bから他の顔情報を受け取る。表情推定手段50bは、基準顔情報と他の顔情報との差分を演算し、基準顔情報に対する他の顔情報の変化量を示す変化量情報を生成する。表情推定手段50bは、検出しようとする表情に達したと判断するための変化量の閾値を示す閾値情報を後述のメモリ52から受け取る。表情推定手段50bは、変化量情報と閾値情報とに基づいて、変化量が閾値を超えたか否かを判定する。これにより、表情推定手段50bは、対象とする被写体の顔が、目標とする表情に達したか否かを判断する。
変更手段50cは、後述の入力手段75から変更指示を受け取る。変更指示は、検出しようとする表情に達したと判断するための変化量の閾値を変更するための指示である。変更手段50cは、変更指示に応じて、閾値情報を変更する。
メモリ52は、システム制御部50の動作用の定数、変数等を記憶する。また、メモリ52は、予め設定情報として後述の入力手段75から受け取った閾値情報を記憶する。
第2の報知手段54は、システム制御部50でのプログラムの実行に応じて、文字、画像、音声等を用いて動作状態やメッセージ等を報知する。第2の報知手段54は、デジタルカメラ100の後述の操作部70近辺の視認し易い位置に単数或いは複数個所設置される。第2の報知手段54は、例えば、液晶表示装置(LCD)、LED、発音素子(スピーカ)等の組み合わせにより構成されている。
また、第2の報知手段54は、その一部の機能が光学ファインダ104内に設置されている。
第2の報知手段54は、例えば、シングルショット/連写撮影表示、セルフタイマー表示、圧縮率表示、記録画素数表示、記録枚数表示、残撮影可能枚数表示、シャッタースピード表示、絞り値表示、及び露出補正表示などをLCD等に表示する。あるいは、第2の報知手段54は、例えば、フラッシュ表示、赤目緩和表示、マクロ撮影表示、ブザー設定表示、時計用電池残量表示、電池残量表示、エラー表示、及び複数桁の数字による情報表示などをLCD等に表示する。あるいは、第2の報知手段54は、例えば、外部記録媒体120の着脱状態表示、通信I/F動作表示、及び日付け・時刻表示等をLCD等に表示する。
また、第2の報知手段54は、合焦表示、手振れ警告表示、フラッシュ充電表示、シャッタースピード表示、絞り値表示、及び露出補正表示等を光学ファインダ104内に表示する。
不揮発性メモリ56は、電気的に消去・記録可能なメモリであり、画像処理プログラムなどのプログラムを記憶する。不揮発性メモリ56は、例えば、EEPROM等が用いられる。
入力手段75は、複数の被写体から顔情報を抽出する対象となる被写体を指示する抽出対象指示を受け付ける。あるいは、入力手段75は、被写体の表情を検出するための表情検出指示を受け付ける。あるいは、入力手段75は、検出しようとする表情に達したと判断するための変化量の閾値を変更するための変更指示を受け付ける。
また、入力手段75は、システム制御部50の各種の動作指示を受け付ける。スイッチやダイアル、タッチパネル、視線検知によるポインティング、音声認識装置等の単数或いは複数の組み合わせを介して、所定の指示を受け付ける。この入力手段75は、モードダイアルスイッチ60、シャッターボタン61、第1シャッタースイッチ62、第2シャッタースイッチ64、画像表示ON/OFFスイッチ66、及び操作部70を含む。
モードダイアルスイッチ60は、電源オフ、自動撮影モード、撮影モード、パノラマ撮影モード、再生モード、マルチ画面再生・消去モード、PC接続モード等の各機能モードを切り替え設定するための指示を受け付ける。
シャッターボタン61は、静止画撮影等するための指示などをユーザから受け付ける。例えば、シャッターボタン61は、半押しされることにより、AF(オートフォーカス)処理、、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等するための第1の指示を受け付ける。例えば、シャッターボタン61は、全押しされることにより、静止画撮影等するための第2の指示を受け付ける。
第1シャッタースイッチ(SW1)62は、第1の指示をシャッターボタン61から受け取るとON状態になり、ON状態である旨の情報をシステム制御部50へ供給する。システム制御部50は、第1シャッタースイッチ62がON状態であることに応じて、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の動作開始を各部へ指示する。
第2シャッタースイッチ(SW2)64は、第2の指示をシャッターボタン61から受け取るとON状態になり、ON状態である旨の情報をシステム制御部50へ供給する。これにより、システム制御部50は、一連の撮影処理の動作開始を指示する。一連の撮影処理では、撮像素子14から読み出した信号をA/D変換器16、メモリ制御部22を介して記憶手段30に画像データを書き込む露光処理、画像処理部20やメモリ制御部22での演算を用いた現像処理を行う。そして、一連の撮影処理では、記憶手段30から画像データを読み出し、圧縮伸長部32で圧縮を行い、記録媒体200或いは210に画像データを書き込む記録処理を行う。
画像表示ON/OFFスイッチ66は、第1の報知手段28のON/OFFを設定するための指示を受け付ける。この指示により、システム制御部50は、光学ファインダー104を用いて撮影を行う際に、第1の報知手段28への電流供給を遮断して、省電力化を図ることができる。
クイックレビューON/OFFスイッチ68は、撮影直後に撮影した画像データを自動再生するクイックレビュー機能を設定するための指示を受け付ける。例えば、第1の報知手段28をOFFとした場合におけるクイックレビュー機能の設定を受け付けることができるものとする。
操作部70は、各種ボタンやタッチパネル等からなる。操作部70は、メニューボタン、マクロボタン、マルチ画面再生改ページボタン、フラッシュ設定ボタン、単写/連写/セルフタイマー切り替えボタン、メニュー移動+(プラス)ボタン、メニュー移動−(マイナス)ボタンを含む。操作部70は、再生画像移動+(プラス)ボタン、再生画像−(マイナス)ボタン、撮影画質選択ボタン、露出補正ボタン、日付/時間設定ボタン、ブラケットモードの選択ボタンボタン等を含む。
電源制御手段80は、電池検出回路、DC-DCコンバータ、通電するブロックを切り替えるスイッチ回路等により構成されており、電池の装着の有無、電池の種類、電池残量の検出を行う。電源制御手段80は、検出結果及びシステム制御部50の指示に基づいてDC-DCコンバータを制御し、必要な電圧を必要な期間、外部記録媒体120を含む各部へ供給する。
コネクタ82は、電源制御手段80に接続されている。コネクタ84は、電源86に接続されている。電源86は、例えば、アルカリ電池やリチウム電池等の一次電池やNiCd電池やNiMH電池、Li電池等の二次電池、ACアダプター等である。
カードコントローラ90は、メモリカード等の外部記録媒体とデータの送受信を行う。インタフェース91は、メモリカード等の外部記録媒体120とカードコントローラ90とのインタフェースとして機能する。コネクタ92は、メモリカード等の外部記録媒体120が接続される。記録媒体着脱検知手段98は、コネクタ92に外部記録媒体120が装着されているか否かを検知する。
なお、記録媒体を取り付けるインタフェース及びコネクタは、2以上の系統数であってもよい。また、インタフェース及びコネクタは、異なる規格のものが組み合わせされていても構わない。インタフェース及びコネクタは、半導体メモリカード等の規格に準拠したものを用いて構成して構わない。この場合、各種通信カードを接続することにより、他のコンピュータやプリンタ等の周辺機器との間で画像データや画像データに付属した管理情報を転送し合うことができる。各種通信カードは、例えば、LANカードやモデムカード、USBカード、IEEE1394カード、P1284カード、SCSIカード、PHS等の通信カード等である。
光学ファインダ104は、撮影を行う際に被写体を確認するために用いられる。光学ファインダー104を用いれば、第1の報知手段28による電子ファインダー機能を使用すること無しに撮影を行うことが可能である。また、光学ファインダー104には、報知手段54により表示される情報の一部、例えば、合焦表示、手振れ警告表示、フラッシュ充電表示、シャッタースピード表示、絞り値表示、露出補正表示などに関する情報が表示される。
外部記録媒体120は、コネクタ92に着脱可能に接続される。外部記録媒体120は、例えば、メモリカード等である。
次に、画像処理装置100が被写体の表情を推定する際の処理(笑顔撮影モードの処理)の流れを、図2に示すフローチャートを用いて説明する。図2は、画像処理装置100が被写体の表情を推定する際の処理(笑顔撮影モードの処理)の流れを示すフローチャートである。
ステップS1では、入力手段75が、笑顔撮影モードを選択するための指示を受け付ける。この笑顔撮影モードは、特定の被写体の笑顔を検出した際に自動的に撮影が行われる撮影モードである。取得手段17は、異なる複数のタイミングで被写体を撮像して得られた画像データを取得する。
例えば、このとき、第1の報知手段28は、2人の被写体O1,O2を表示画面501に表示している(図5参照)。
ステップS2では、入力手段75が、顔領域検出を行うための指示をユーザから受け付け、その指示を顔領域検出手段20aへ供給する。顔領域検出手段20aは、その指示に応じて、取得手段17により取得された複数の画像データのそれぞれにおいて、被写体の顔領域を検出する。顔領域検出手段20aは、検出された顔領域に関する情報をシステム制御部50へ供給する。システム制御部50は、検出された顔領域に関する情報に応じて、第1の報知手段28を制御する。第1の報知手段28は、表示画面において、顔領域が検出された被写体に、検出されたことを示す顔枠を表示する。
例えば、このとき、第1の報知手段28は、2人の被写体O1,O2のそれぞれに対して、顔領域が検出されたことを示す顔枠503,504を表示する(図6参照)。
ステップS3では、準備処理が行われる。準備処理の詳細に関しては後述する。
ステップS4では、システム制御部50が、表情を検出すべきであるか否かを判断する。
例えば、システム制御部50は、被写体の表情を検出するための表情検出指示を入力手段75から受け取った場合、表情を検出すべきであると判断する。システム制御部50は、被写体の表情を検出するための表情検出指示を入力手段75から受け取らなかった場合、表情を検出すべきでないと判断する。
あるいは、例えば、システム制御部50は、対象とする被写体の全てについて基準顔情報が選択された場合、表情を検出すべきであると判断する。システム制御部50は、対象とする被写体のうち基準顔情報が選択されていない被写体が存在する場合、表情を検出すべきでないと判断する。
システム制御部50は、表情を検出すべきであると判断する場合、処理をステップS5へ進め、表情を検出すべきでないと判断する場合、処理をステップS1へ進める。
ステップS5では、顔領域検出手段20aが、取得手段17により取得された複数の画像データのそれぞれにおいて、被写体の顔領域を検出する。領域検出手段20aは、検出された顔領域に関する情報をシステム制御部50へ供給する。システム制御部50は、検出された顔領域に関する情報に応じて、第1の報知手段28を制御する。第1の報知手段28は、表示画面において、顔領域が検出された被写体に、検出されたことを示す顔枠を表示する。
ステップS6では、検出処理が行われる。検出処理の詳細に関しては後述する。
ステップS7では、システム制御部50が、撮影すべきであるか否かを判断する。
例えば、システム制御部50は、表情フラグがON状態にされた被写体の数が所定数以上である場合、撮影すべきであると判断し、表情フラグがON状態にされた被写体の数が所定数未満である場合、撮影すべきでないと判断する。
あるいは、例えば、システム制御部50は、表示フラグがON状態である旨の情報を第2シャッタースイッチ64から受け取った場合、撮影すべきであると判断する。例えば、システム制御部50は、表示フラグがON状態である旨の情報を第2シャッタースイッチ64から受け取らなかった場合、撮影すべきでないと判断する。
システム制御部50は、撮影すべきであると判断する場合、処理をステップS8へ進め、撮影すべきでないと判断する場合、処理をステップS9へ進める。
ステップS8では、システム制御部50が、一連の撮影処理の動作開始を指示する。一連の撮影処理では、撮像素子14から読み出した信号をA/D変換器16、メモリ制御部22を介して記憶手段30に画像データを書き込む露光処理、画像処理部20やメモリ制御部22での演算を用いた現像処理を行う。そして、一連の撮影処理では、記憶手段30から画像データを読み出し、圧縮伸長部32で圧縮を行い、記録媒体200或いは210に画像データを書き込む記録処理を行う。
ステップS9では、システム制御部50が、笑顔撮影モードの処理を終了すべきか否かを判断する。
例えば、システム制御部50は、撮影モードを笑顔撮影モード以外の撮影モードへ変更するための指示を受け取った場合、笑顔撮影モードの処理を終了すべきであると判断する。システム制御部50は、撮影モードを笑顔撮影モード以外の撮影モードへ変更するための指示を受け取らなかった場合、笑顔撮影モードの処理を終了すべきでないと判断する。
あるいは、例えば、システム制御部50は、笑顔撮影モードを終了すべき指示を受け取った場合、笑顔撮影モードの処理を終了すべきであると判断する。システム制御部50は、笑顔撮影モードを終了すべき指示を受け取らなかった場合、笑顔撮影モードの処理を終了すべきでないと判断する。
次に、準備処理(ステップS3)の流れを、図3を用いて説明する。図3は、被写体のごとの準備処理の流れを示すフローチャートである。図3には、特定の被写体(例えば、図7に示す被写体O2)に着目した場合の処理が示されている。すなわち、準備処理は、個々の被写体ごとに独立して並行的に行われる。例えば、被写体O1,O2に対して異なる顔枠508,505が表示されており、準備処理が独立並行的に行われている様子の一例が図7に示されている。
ステップS11では、顔情報抽出手段20bが、特定の被写体が対象とする被写体であるか否かを判断する。
例えば、顔情報抽出手段20bは、特定の被写体に対する抽出対象指示を入力手段75から受け取った場合、その特定の被写体が対象とする被写体であると判断する。顔情報抽出手段20bは、特定の被写体に対する抽出対象指示を入力手段75から受け取らなかった場合、その特定の被写体が対象とする被写体でないと判断する。
顔情報抽出手段20bは、特定の被写体が対象とする被写体であると判断する場合、処理をステップS12へ進め、特定の被写体が対象とする被写体でないと判断する場合、処理を終了する。
例えば、このとき、第1の報知手段28は、顔情報が抽出されていないことを示す実線の四角い枠508を被写体O2の画像に関連付けて報知する(図7参照)。
ステップS12では、顔情報抽出手段20bが、顔領域検出手段20aにより検出された複数の顔領域のそれぞれから、被写体の顔の構成要素の形状に関する顔情報を抽出する。例えば、顔情報抽出手段20bは、以降のステップでの計算精度を上げるため選択された顔のサイズと向きとを正規化し、正規化された顔から口や目や眉毛などの端点の形状を抽出する。
ここで、顔情報は、例えば、口や目や眉毛などの具体的な形状や座標に関する情報を含み、あるいは、例えば、鼻の端点、鼻穴の中心点、耳の端点などの形状に関する情報を含む。ここで、顔情報は、それぞれの端点や中心点あるいは目の黒点などを入力された顔の画像から、例えばニューラルネットワークや空間フィルタを用いたエッジ検出などの手法を用いて算出することにより抽出することができる。
ステップS13では、顔情報抽出手段20bが、顔情報を抽出することに成功したか否かを判断する。顔情報抽出手段20bは、顔情報を抽出することに成功したと判断した場合、処理をステップS14へ進め、顔情報を抽出することに成功していないと判断した場合、処理を終了する。
ステップS14では、顔情報抽出手段20bが、顔情報を抽出することに成功した旨の情報をシステム制御部50へ供給する。システム制御部50は、顔情報を抽出することに成功した旨の情報に応じて、第1の報知手段28を制御する。これにより、第1の報知手段28は、顔情報抽出手段20bにより顔情報が抽出された状態であるか否かを示す抽出状態情報を被写体の画像に関連付けて報知する。
例えば、第1の報知手段28は、顔情報が抽出されていることを示す破線の四角い枠506を被写体O2の画像に関連付けて報知する(図8参照)。
ステップS15では、顔情報選択手段50aが、顔情報抽出手段20bにより抽出された複数の顔情報から、被写体の顔の表情を推定するための基準となる基準顔情報を選択する。基準顔情報は、例えば、無表情状態の表情、すなわち、澄ました表情に対する顔情報である。ここで、顔情報選択手段50aは、例えば、所定の期間、口の形状の変化量が所定の閾値を超えなかった場合に、無表情状態であると判定して、その判定結果に応じた顔情報を基準顔情報として選択する。
なお、顔情報選択手段50aは、無表情状態を判定する際に、口以外の構成要素の形状を使用しても構わない。例えば、顔情報選択手段50aは、更に顔情報として眼の開閉度状態を用い、目の大きさの変化などを使用して眼開きの状態タイミングに基づいて基準顔情報を選択しても良い。また、顔情報選択手段50aは、瞳画像をニューラルネットワークで学習させ、固定閾値以上の瞳ニューロン数から眼の開閉状態を判定するようにしても良い。
ステップS16では、顔情報選択手段50aが、基準顔情報を選択することに成功したか否かを判断する。顔情報抽出手段20bは、基準顔情報を選択することに成功したと判断した場合、処理をステップS17へ進め、基準顔情報を選択することに成功していないと判断した場合、処理を終了する。
ステップS17では、第1の報知手段28が、顔情報選択手段50aにより基準顔情報が選択された状態であるか否かを示す選択状態情報を被写体の画像に関連付けて報知する。
例えば、このとき、第1の報知手段28は、基準顔情報が選択されたことを示す実線の丸い枠507を被写体O2の画像に関連付けて報知する(図9参照)。
このように、選択状態情報が被写体の画像に関連付けて報知されるので、被写体の表情を検出する前の段階において、被写体の表情を検出することができる状態になっているのか否かを、画面を閲覧したユーザに把握させることができる。
なお、第1の報知手段28は、抽出状態情報や選択状態情報を、図6〜図9に示される形態と異なる形態で報知しても良い。例えば、第1の報知手段28は、枠の形状の代わりに、あるいは、枠の形状に加えて、色や大きさなどを変えることにより、抽出状態情報や選択状態情報を報知しても良い。
次に、検出処理(ステップS6)の流れを、図4を用いて説明する。図4は、被写体のごとの検出処理の流れを示すフローチャートである。すなわち、検出処理は、個々の被写体ごとに独立して並行的に行われる。図4には、特定の被写体の着目した場合の処理が示されている。
ステップS21では、システム制御部50が、ユーザにより変更指示が入力されたか否かを判断する。変更指示は、検出しようとする表情に達したと判断するための変化量の閾値を変更するための指示である。
例えば、入力手段75(操作部70のセットボタン、十字キー等)は、変更指示を受け付けることができる。例えば、操作部70の十字キーの+(プラス)ボタンにより、閾値を従来より高めに再設定したり、逆に−(マイナス)ボタンにより閾値を低めに再設定することが可能である。システム制御部50は、入力手段75から変更指示を受け取ったことに応じて、ユーザにより変更指示が入力されたと判断する。システム制御部50は、入力手段75から変更指示を受け取らなかったことに応じて、ユーザにより変更指示が入力されていないと判断する。
システム制御部50は、ユーザにより変更指示が入力されたと判断した場合、処理をステップS22へ進め、ユーザにより変更指示が入力されなかったと判断した場合、処理をステップS23へ進める。
ステップS22では、変更手段50cが、変更指示に応じて、閾値情報を変更する。すなわち、変更手段50cは、入力手段75から変更指示を受け取ったことに応じて、メモリ52にアクセスして、メモリ52に記憶された閾値情報を、変更指示が示す閾値に対応した閾値情報に書き換える。
ここで、一般的に、人間の表情には個人差があり、人によって、口や目の動きが激しく表情豊かな人もいれば、逆に表情の変化に乏しい人もいる。そのような状況で、一律の基準(閾値)を用いても、検出しようとする表情に達したことを正確に判断しにくい。例えば、1つの閾値だけにより笑顔かどうかの判定を行った場合、笑顔を検出しやすい被写体とそうでない被写体がでてくるという弊害が考えられる。
それに対して、本実施形態では、ステップS21及びステップS22に示すように、ユーザが、検出しようとする表情に達したと判断するための変更量の閾値を変更することができる。これにより、被写体の個性を考慮した形で閾値を設定することができ、被写体の個性に応じて、目標とする表情に達したと正確に判断することができる。
ステップS23では、顔情報抽出手段20bが、顔領域検出手段20aにより検出された複数の顔領域のそれぞれから、被写体の顔の構成要素の形状に関する顔情報を抽出する。このステップS23の詳細は、上記のステップS12と同様である。
ステップS24では、顔情報抽出手段20bが、顔情報を抽出することに成功したか否かを判断する。顔情報抽出手段20bは、顔情報を抽出することに成功したと判断した場合、処理をステップS25へ進め、顔情報を抽出することに成功していないと判断した場合、処理を終了する。
ステップS25では、表情推定手段50bが、顔情報選択手段50aから基準顔情報を受け取り、画像処理部20の顔情報抽出手段20bから他の顔情報を受け取る。表情推定手段50bは、基準顔情報と他の顔情報との差分を演算し、基準顔情報に対する他の顔情報の変化量を示す変化量情報を生成する。
例えば、表情推定手段50bは、顔の個々の構成要素に対して基準顔情報と他の顔情報との差分を演算し、次の数式1を用いて、笑顔表情の度合い、すなわち、笑顔度を算出する。被写体の顔の個々の構成要素に対する基準顔情報と他の顔情報との差分をv1、v2、v3、・・・とするとき、表情推定手段50bは、笑顔度を、
SumScore=ΣScorei
=Σg(wi、vi)・・・数式1
としてi=1〜Nについて合計して演算する。ここで、Nは顔の個々の構成要素を識別するための番号であり、wは各構成要素の重みであり、gは得点算出関数である。すなわち、表情推定手段50bは、この笑顔度SumScoreを変化量情報として生成する。この笑顔度SumScoreは、例えば、0から100といった数値で表される。
なお、表情推定手段50bは、基準顔情報と他の顔情報との比を演算し、基準顔情報に対する他の顔情報の変化量を示す変化量情報を生成してもよい。
ステップS26では、第1の報知手段28が、変化量情報を表情推定手段50bから受け取り、閾値情報をメモリ52から受け取る。第1の報知手段28は、基準顔情報に対する他の顔情報の変化量を示す変化量情報602と、検出しようとする表情に達したと判断するための変化量の閾値を示す閾値情報603とを、被写体の画像に関連付けて報知する(図10参照)。あるいは、第1の報知手段28は、変化量情報602と、後述の変更手段50cにより変更された閾値情報603とを、被写体の画像に関連付けて報知する。
例えば、第1の報知手段28は、上記の数式1を用いて演算された笑顔度が0から100といった数値で表され場合、笑顔度が100であればすべての目盛りが塗りつぶされた状態でインジケータ602を表示する(図10参照)。第1の報知手段28は、笑顔度が0であれば、すべての目盛りは塗りつぶされていない状態でインジケータ602を表示する。そして、第1の報知手段28は、インジケータ602の横において閾値に対応する位置に、三角印等の閾値を示す図形603を表示する(図10参照)。
このように、変化量情報と閾値情報とが被写体ごとに報知されるので、被写体の表情が目標とする表情に達したのか否かをユーザに把握させることができる。
ステップS27では、表情推定手段50bが、検出しようとする表情に達したと判断する。
例えば、表情推定手段50bは、検出しようとする表情に達したと判断するための変化量の閾値を示す閾値情報を後述のメモリ52から受け取る。表情推定手段50bは、変化量情報と閾値情報とに基づいて、変化量が閾値を超えたか否かを判定する。表情推定手段50bは、変化量が閾値を超えたと判定した場合、対象とする被写体に対して、検出しようとする表情に達したと判断する。表情推定手段50bは、変化量が閾値を超えていないと判定した場合、対象とする被写体に対して、検出しようとする表情に達していないと判断する。
表情推定手段50bは、検出しようとする表情に達したと判断する場合、処理をステップS28へ進め、検出しようとする表情に達していないと判断する場合、処理を終了する。
ステップS28では、表情推定手段50が、目標とする表情に達した旨の情報を第1の報知手段28へ供給する。第1の報知手段28は、少なくとも変化量情報を報知する際に、表情推定手段50bが推定した結果に基づいて、変化量が閾値を超えたか否かを識別可能に報知する。
例えば、第1の報知手段28は、表示枠600やインジケータ602の表示色を変更したり、表示枠600やインジケータ602を点滅させるなどして、変化量が閾値を超えていない場合と異なる表示形式で、被写体が目標とする表情に達したことを報知する。
このように、変化量が閾値を超えたか否かを識別可能に、変化量情報及び閾値情報が報知されるので、さらに容易に、被写体の表情が目標とする表情に達したのか否かをユーザに把握させることができる。
ステップS29では、表情推定手段50が、メモリ52にアクセスして、目標とする表情に達した被写体の表情フラグをOFF状態からON状態へ書き換える。
例えば、図9の例では、表情推定手段50が、被写体O2の表情フラグをOFF状態からON状態へ書き換える。
以上のように、被写体の表情を検出することができる状態になっているのか否かをユーザに把握させることができ、被写体の表情が目標とする表情に達したのか否かをユーザに把握させることができる。これにより、ユーザが注目する被写体について撮影が可能か否かをユーザに確認させることができ、その被写体の表情が目標とする表情に達したタイミングで撮影を行うようにユーザに促すことができる。
なお、第1の報知手段28は、さらに、変化量の最大値を示す最大値情報を被写体の画像に関連付けて報知してもよい。これにより、被写体の表情の個性をユーザに把握させることができる。
また、第1の報知手段28は、変化量情報と閾値情報とを、被写体ごとに報知する(図10参照)代わりに、複数の被写体について報知しても良い。すなわち、第1の報知手段28は、図11に示すように、変化量情報と被写体との対応が分かるように、変化量情報と閾値情報とを複数の被写体のそれぞれの画像に関連付けて報知する。例えば、第1の報知手段28は、被写体O1の顔枠600とその変化量情報602及び閾値情報603とを実線で表示し、被写体O2の顔枠606とその変化量情報604及び閾値情報605とを破線で表示する。あるいは、第1の報知手段28は、被写体O1の顔枠600とその変化量情報602及び閾値情報603とを第1の色で表示し、被写体O2の顔枠606とその変化量情報604及び閾値情報605とを第2の色で表示する。
次に、本発明の第2実施形態に係る画像処理装置200について、図12を参照して説明する。図11は、本発明の第2実施形態に係る画像処理装置200の構成図である。以下では、第1実施形態と異なる部分を中心に説明し、同様の部分についての説明は省略する。
画像処理装置200は、画像処理部220を備える点で第1実施形態と異なる。画像処理部220は、顔領域検出手段20aと顔情報抽出手段220bとを含む。顔情報抽出手段220bは、被写体の顔の表情を推定するための優先度を示す優先度情報に応じて、複数の被写体から対象とする被写体を選択して、対象とする被写体に対して顔情報を抽出する。
例えば、顔情報抽出手段220bは、顔領域検出手段20aにより検出された、対象とする被写体に対応する複数の顔領域のうち、最も画角中心に近い顔領域に対応する被写体を対象とする被写体として選択する。顔情報抽出手段220bは、その選択した対象とする被写体に対して顔情報を抽出する。顔情報抽出手段220bは、対象とする被写体に対応する複数の顔領域のうち、対象とする被写体として選択されていない複数の被写体に対応する顔領域の中で最も画角中心に近い顔領域に対応する被写体を対象とする被写体として選択する。顔情報抽出手段220bは、その選択した対象とする被写体に対して顔情報を抽出する。
なお、被写体の選択は、前の画像で顔情報が算出されたものの右側にある顔を選択することや、前回の画像で選択された顔を優先的に参照するなど、前回の情報を用いて選択するなどの方法も考えられる。
また、画像処理装置100が被写体の表情を推定する際の処理(笑顔撮影モードの処理)の流れが、図12に示すように、次の点で第1実施形態と異なる。
ステップS32では、顔情報抽出手段220bが、被写体の顔の表情を推定するための優先度を示す優先度情報に応じて、複数の被写体から対象とする被写体を選択して、対象とする被写体に対して顔情報を抽出する。
例えば、顔情報抽出手段220bは、顔領域検出手段20aにより検出された、対象とする被写体に対応する複数の顔領域のうち、最も画角中心に近い顔領域に対応する被写体を対象とする被写体として選択して、対象とする被写体に対して顔情報を抽出する。顔情報抽出手段220bは、対象とする被写体に対応する複数の顔領域のうち、対象とする被写体として選択されていない複数の被写体に対応する顔領域の中で最も画角中心に近い顔領域に対応する被写体を対象とする被写体として選択する。顔情報抽出手段220bは、その選択した対象とする被写体に対して顔情報を抽出する。
ステップS33では、準備処理が行われる。この準備処理(ステップS33)の流れが、図13に示すように、次の点で第1実施形態と異なる。
ステップS41では、顔情報抽出手段220bが、特定の被写体が対象とする被写体であるか否かを判断する。
例えば、顔情報抽出手段220bは、特定の被写体が上記のステップS32で選択された被写体である場合、その特定の被写体が対象とする被写体であると判断する。顔情報抽出手段220bは、特定の被写体が上記のステップS32で選択された被写体でない場合、その特定の被写体が対象とする被写体でないと判断する。
顔情報抽出手段220bは、特定の被写体が対象とする被写体であると判断する場合、処理をステップS12へ進め、特定の被写体が対象とする被写体でないと判断する場合、処理を終了する。
このように、優先度情報に応じて対象とする被写体が選択されるので、準備処理を行う際にユーザが被写体を指定する手間を省くことができる。