以下、添付の図面を参照して本発明の好適な実施形態の一例を説明する。
図1は、実施形態による撮像装置100(デジタルカメラ)の外観を示す図である。図1において、表示部28は、たとえば液晶ディスプレイにより構成され、画像や各種情報を表示するのに用いられる。シャッターボタン61は撮影指示を行うための操作部である。モード切替スイッチ60は各種モードを切り替えるための操作部である。コネクタ112は接続ケーブル111と撮像装置100とを接続する。操作部70はユーザからの各種操作を受け付ける各種スイッチ、ボタン等の操作部材より構成される。コントローラホイール73は操作部70に含まれる回転操作可能な操作部材である。72は電源スイッチであり、電源オン、電源オフを切り替える。記録媒体200はメモリカードやハードディスク等の記録媒体である。記録媒体スロット201は記録媒体200を格納するためのスロットである。記録媒体スロット201に格納された記録媒体200は、撮像装置100との通信が可能となる。蓋202は記録媒体スロット201の蓋である。
図2は、本実施形態による撮像装置100の構成例を示すブロック図である。図2において、撮影レンズ103はズームレンズ、フォーカスレンズを含むレンズ群である。シャッター101は絞り機能を備えたシャッターである。撮像部22は光学像を電気信号に変換するCCDやCMOS素子等で構成される撮像素子を含む。A/D変換器23は、アナログ信号をデジタル信号に変換する。A/D変換器23は、撮像部22から出力されるアナログ信号をデジタル信号に変換するために用いられる。バリア102は、撮像装置100の、撮影レンズ103、シャッター101、撮像部22を含む撮像系を覆うことにより、撮像系の汚れや破損を防止する。
画像処理部24は、A/D変換器23からのデータ、又は、メモリ制御部15からのデータに対し所定の画素補間、縮小といったリサイズ処理や色変換処理を行う。また、画像処理部24では、撮像した画像データを用いて所定の演算処理が行われ、得られた演算結果に基づいてシステム制御部50が露光制御、測距制御を行う。これにより、TTL(スルー・ザ・レンズ)方式のAF(オートフォーカス)処理、AE(自動露出)処理、EF(フラッシュプリ発光)処理が行われる。画像処理部24では更に、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてTTL方式のAWB(オートホワイトバランス)処理も行っている。
A/D変換器23からの出力データは、画像処理部24及びメモリ制御部15を介して、或いは、メモリ制御部15を介してメモリ32に直接書き込まれる。メモリ32は、撮像部22によって得られA/D変換器23によりデジタルデータに変換された画像データや、表示部28に表示するための画像データを格納する。メモリ32は、所定枚数の静止画像や所定時間の動画像および音声を格納するのに十分な記憶容量を備えている。
また、メモリ32は画像表示用のメモリ(ビデオメモリ)を兼ねている。D/A変換器13は、メモリ32に格納されている画像表示用のデータをアナログ信号に変換して表示部28に供給する。こうして、メモリ32に書き込まれた表示用の画像データはD/A変換器13を介して表示部28により表示される。表示部28は、LCD等の表示器上に、D/A変換器13からのアナログ信号に応じた表示を行う。A/D変換器23によって一度A/D変換されメモリ32に蓄積されたデジタル信号をD/A変換器13においてアナログ変換し、これを表示部28に逐次転送して表示することによりスルー画像表示(以下、ライブビュー表示ともいう)が行なわれる。これにより、撮影時の電子ビューファインダとしての機能が提供される。
不揮発性メモリ56は、電気的に消去・記録が可能なメモリであり、例えばEEPROM等が用いられる。不揮発性メモリ56には、システム制御部50の動作用の定数、プログラム等が記憶される。ここでいう、プログラムは、本実施形態にて後述する各種フローチャートを実行するためのプログラムも含まれる。
システム制御部50は、撮像装置100全体を制御する。システム制御部50は、前述した不揮発性メモリ56に記録されたプログラムを実行することで、後述する本実施形態の各処理を実現する。52はシステムメモリであり、RAMにより構成されている。システムメモリ52には、システム制御部50の動作用の定数、変数、不揮発性メモリ56から読み出したプログラム等が展開される。また、システム制御部50は、メモリ32、D/A変換器13、表示部28等を制御することにより表示制御を行う。システムタイマ53は各種制御に用いる時間や、内蔵された時計の時間を計測する計時部である。
モード切替スイッチ60、シャッターボタン61(第1シャッタースイッチ62、第2シャッタースイッチ64)、操作部70はシステム制御部50に各種の動作指示を入力するための操作部材である。
モード切替スイッチ60は、システム制御部50の動作モードを、表示部28によるライブビュー表示を伴う撮影モード(静止画撮影モード、動画撮影モードを含む)、撮影済みの画像を閲覧するための再生モード、等のいずれかに切り替える。また、静止画撮影モードに含まれるモードとして、オート撮影モード、オートシーン判別モード、マニュアルモード、撮影シーン別の撮影設定となる各種シーンモード、プログラムAEモード、カスタムモード等がある。静止画撮影モードに含まれるこれらのモードのいずれかへの切り替えは、モード切替スイッチ60によりなされてもよい。あるいは、モード切替スイッチ60を用いて静止画撮影モードに一旦切り換えた後に、静止画撮影モードに含まれるこれらのモードのいずれかに、他の操作部材を用いて切り替えるようにしてもよい。同様に、動画撮影モードにも複数のモードが含まれていてもよい。
シャッターボタン61は、第1シャッタースイッチ62と第2シャッタースイッチ64とを有する。第1シャッタースイッチ62は、撮像装置100に設けられたシャッターボタン61の操作途中、いわゆる半押し(撮影準備指示)でONとなり第1シャッタースイッチ信号SW1を発生する。システム制御部50は、第1シャッタースイッチ信号SW1により、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の動作を開始する。第2シャッタースイッチ64は、シャッターボタン61の操作完了、いわゆる全押し(撮影指示)でONとなり、第2シャッタースイッチ信号SW2を発生する。システム制御部50は、第2シャッタースイッチ信号SW2により、撮像部22からの信号読み出しから記録媒体200に画像データを書き込むまでの一連の撮影処理(本撮影)の動作を開始する。
操作部70の各操作部材は、表示部28に表示される種々の機能アイコンを選択操作することなどにより、場面ごとに適宜機能が割り当てられ、各種機能ボタンとして作用する。機能ボタンとしては、例えば終了ボタン、戻るボタン、画像送りボタン、ジャンプボタン、絞込みボタン、属性変更ボタン等がある。例えば、メニューボタンが押されると各種設定が可能なメニュー画面が表示部28に表示される。利用者は、表示部28に表示されたメニュー画面と、上下左右の4方向ボタンやSETボタンとを用いて直感的に各種設定を行うことができる。
図1に示したコントローラホイール73は、操作部70に含まれる回転操作可能な操作部材であり、方向ボタンと共に選択項目を指示する際などに使用される。コントローラホイール73を回転操作すると、操作量に応じて電気的なパルス信号が発生し、このパルス信号に基づいてシステム制御部50は撮像装置100の各部を制御する。このパルス信号によって、コントローラホイール73が回転操作された角度や、何回転したかなどを判定することができる。なお、コントローラホイール73は回転操作が検出できる操作部材であればどのようなものでもよい。例えば、ユーザの回転操作に応じてコントローラホイール73自体が回転してパルス信号を発生するダイヤル操作部材であってもよい。また、タッチセンサよりなる操作部材で構成され、コントローラホイール73自体は回転せず、コントローラホイール73上でのユーザの指の回転動作などを検出するもの(いわゆる、タッチホイール)であってもよい。
電源制御部80は、電池検出回路、DC−DCコンバータ、通電するブロックを切り替えるスイッチ回路等により構成され、電池の装着の有無、電池の種類、電池残量の検出を行う。また、電源制御部80は、その検出結果及びシステム制御部50の指示に基づいてDC−DCコンバータを制御し、必要な電圧を必要な期間、記録媒体200を含む各部へ供給する。
電源部30は、アルカリ電池やリチウム電池等の一次電池やNiCd電池やNiMH電池、Li電池等の二次電池、ACアダプター等からなる。記録媒体I/F18は、メモリカードやハードディスク等の記録媒体200とのインターフェースである。記録媒体200は、撮影された画像を記録するためのメモリカード等の記録媒体であり、半導体メモリや磁気ディスク等から構成される。
上述したデジタルカメラ100では中央1点AFや顔AFを用いた撮影が可能である。中央1点AFとは撮影画面内の中央位置1点に対してAFを行うことである。顔AFとは顔検出機能によって検出された撮影画面内の顔に対してAFを行うことである。
顔検出機能について説明する。システム制御部50は顔検出対象の画像データを画像処理部24に送る。システム制御部50の制御下で画像処理部24は、当該画像データに水平方向バンドパスフィルタを作用させる。また、システム制御部50の制御下で画像処理部24は処理された画像データに垂直方向バンドパスフィルタを作用させる。これら水平及び垂直方向のバンドパスフィルタにより、画像データよりエッジ成分が検出される。
その後、システム制御部50は、検出されたエッジ成分に関してパターンマッチングを行い、目及び鼻、口、耳の候補群を抽出する。そして、システム制御部50は、抽出された目の候補群の中から、予め設定された条件(例えば2つの目の距離、傾き等)を満たすものを、目の対と判断し、目の対があるもののみ目の候補群として絞り込む。そして、システム制御部50は、絞り込まれた目の候補群とそれに対応する顔を形成する他のパーツ(鼻、口、耳)を対応付け、また、予め設定した非顔条件フィルタを通すことで、顔を検出する。システム制御部50は、顔の検出結果に応じて上記顔情報を出力し、処理を終了する。このとき、顔の数などの特徴量をシステムメモリ52に記憶する。
以上のようにライブビュー表示あるいは再生表示される画像データを画像解析して、画像データの特徴量を抽出して被写体情報を検出することが可能である。本実施例では被写体情報として顔情報を例に挙げたが、被写体情報には他にも赤目判定や目の検出、目つむり検出、笑顔検出等の様々な情報がある。
なお、顔AFと同時に顔AE,顔FE、顔WBを行うことができる。顔AEとは検出された顔の明るさに合わせて、画面全体の露出を最適化することである。顔FEとは検出された顔を中心にフラッシュの調光をすることである。顔WBとは、検出された顔の色に合わせて画面全体のWBを最適化することである。
不揮発性メモリに、予め特定の人物の顔の特徴データを記録(登録)しておき、顔検出で検出された顔の特徴データと、登録された人物の特徴データを比較することにより、検出された顔が登録された顔であるか否かを識別する個人認証も可能である。登録した顔の特徴データには、名前や誕生日などの関連情報も関連付けて記録しておけば、後述する通り、撮影時にライブビュー表示されるスルー画像から検出された顔や、再生画像から検出された顔に対して名前などを表示することが可能である。撮影時の顔AFを、検出された複数の顔のうち、登録された顔であると識別できた顔に対して優先的に行うことも可能である。
図3は、本実施形態の撮像装置100の起動から終了までの基本的な流れを示したフローチャートである。本実施形態の撮像装置100は、モード切替スイッチ60により、たとえば、「撮影モード」、「再生モード」、および「時計表示モード」等の他のモードのいずれかで動作可能である。「撮影モード」では、表示部28にライブビューが行なわれるとともに、シャッターボタン61の操作により撮影が行なわれる。「再生モード」では、たとえば記録媒体200に格納された撮影済みの画像が閲覧のために表示部28に再生される。
カメラの起動後、処理はS301へ進む。S301において、システム制御部50は、モード切替スイッチ60の位置により、撮像装置100が撮影モードかどうかを判定する。撮影モードであると判定された場合、処理はS304へ進み、システム制御部50は撮影モードの処理を行う。撮影モード処理については、図7、図12〜図14を参照して後述する。他方、S301において撮影モードではないと判定された場合は、処理はS302に進む。S302において、システム制御部50は、モード切替スイッチ60の位置により、撮像装置100が再生モードか否かを判定する。再生モードであると判定された場合、処理はS305へ進み、システム制御部50は再生モードの処理を行う。再生モード処理については、図4〜図6、図8〜図11を参照して後述する。S302で再生モードではないと判定された場合、処理はS303に進む。S303では、モード切替スイッチ60が指示するその他のモードに対応した処理を行う。ここでいうその他のモードに対応した処理とは現在時刻を表示するだけの時計表示モードでの処理などがあげられる。それぞれのモード処理が終了すると処理はS306へ進み、カメラ動作をシャットダウンさせるか否かの判定を行う。シャットダウンさせると判定された場合はカメラ動作を終了し、シャットダウンしない場合はS301へ進む。カメラ動作をシャットダウンさせる場合とは、たとえば、電源スイッチ72が押された場合などである。
[再生モード(S305)の処理について]
図4は、本実施形態による、画像閲覧を行なう再生モードにおける処理を示したフローチャートである。再生モードの処理が開始されると、S401において、システム制御部50は記録媒体200より画像を読み込み、表示部28に読み込んだ画像を表示する。この表示により、たとえば、図8(A)に示すような画像420が表示される。次に、処理はS402に進み、システム制御部50は、表示中の画像のヘッダ(属性情報)に、その画像に、認証情報として顔の位置とその顔の関連情報(名前など)が記録されているか否かを判定する。存在すると判定された場合には、処理はS403に進み、存在しないと判定された場合は処理を終了する。認証情報は、撮影時に個人認証できていた場合に、画像ファイルのヘッダに記録される。また、撮影後(例えば再生時など)に顔検出が行われて個人認証できた場合に、画像ファイルのヘッダに追記されるものとしてもよい。認証情報がある場合には、画像に含まれる顔に対して関連情報(名前など)を表示アイテム(以下、アイテム)として表示することが可能である。アイテムは、例えば図8(A)に示すように、検出された人物1,2,3に対してアイテム421、422、423として表示される(表示位置と重なり順に関しては後述のとおり調整される)。なお、S402では表示する画像のヘッダに認証情報が記録されているか否かを判定するものとしたが、この時点で顔検出及び個人認証を行って認証情報を取得してもよい。すなわち、この時点で個人認証を行い、登録されている顔が検出できた場合はその位置をシステムメモリ52に取得し、その顔の人物に関連する情報を不揮発性メモリ56から取得するものとしてもよい。
S403において、システム制御部50は、表示中の画像に存在する被写体の顔検出数Imaxを取得する。図8(A)に示すように人物1、人物2、人物3の3つの被写体が存在し、これらが検出された場合は、Imax=3となる。次に、S404とS405において、システム制御部50は、画像中から検出された複数の被写体の優先順を決定し、S406〜S409では決定された優先順で被写体に関連するアイテムを表示していく。
すなわち、S404において、システム制御部50は、それぞれの被写体に対する優先順位を取得し、最も優先順位の高い被写体(以下、主役の被写体あるいは主被写体という)をIpとする。なお、優先順の決定は、たとえば次のようにして行うことができる。すなわち、画像から検出された複数の顔のうち、より大きい顔、より画面中央に近い顔を優先する重みづけを行うことで、複数の被写体のそれぞれについての優先順が決定される。あるいは、各被写体に個別に優先度を予め設定し、これを不揮発性メモリ56に登録しておく。そして、画像中の認識された複数の被写体のそれぞれについて登録を参照することにより優先度が取得され、取得された優先度に基づいてそれら複数の被写体のそれぞれについての優先順が決定される。あるいは、画像ファイルのヘッダに記録された、撮影時に行われたこれらの優先順の決定結果の情報を取得し、これに基づいた優先順とする。本実施形態においては、人物1が主被写体(Ip)であるとする。次に、S405において、システム制御部50は、以降の処理のために被写体Iiを優先順位でもって並べ替える。たとえば、優先順位が高いほうから順に人物1、人物2、人物3であった場合は、I1(=Ip)>I2>I3の順に優先順位をつける。
ここで優先順に並べ替える目的は、画像閲覧機能が本発明を適用していない一般的な撮像装置によって撮影された画像も閲覧できるのが望ましいため、表示する前にあらかじめ本閲覧装置の都合のよい表示体系(表示順)にしておくほうが望ましいためである。その後、S406にて、システム制御部50は、アイテム描画順番を示す変数iを1に初期化する。
次に、S407において、システム制御部50は、各被写体に関連したアイテムを表示するためのアイテム表示処理を実行する。このアイテム表示処理については、図5、図6により後述する。アイテム表示処理では、基本的には、検出された各被写体の顔の中央下に、各被写体のアイテムを表示する。基本的な位置に各アイテムを表示すると、例えば図8(A)のような画像の場合、人物1、人物2、人物3に対応してアイテム421、422、423が表示される。しかし、図8(A)のような表示の仕方では主被写体(Ip=人物1)の顔領域に人物2のアイテム422や人物3のアイテム423が重なってしまい、主被写体の顔が見えなくなってしまう。本実施形態のアイテム表示処理では、アイテム表示処理にてアイテムの表示位置を調整し、主被写体の顔を見やすくする(図5)。また、主被写体のアイテムの表示と他のアイテムの表示がなるべく重ならないように制御して、主被写体のアイテム表示の視認性を向上させる(図6)。
次にS408において、システム制御部50は、アイテム描画順番を示す変数iをインクリメントする。そして、S409において、システム制御部50は、描画順番を示す変数iがImaxに達したかどうかを判断する。変数iが顔検出数Imaxに達していない場合には、処理はS407へ戻り、アイテム表示処理を繰り返す。他方、変数iが顔検出数Imaxに達していた場合には処理を終了する。
次に、S407のアイテム表示の処理について説明する。図5はアイテム表示処理の流れを示したフローチャートである。アイテム表示処理では、まず、表示部28の画面上に閲覧表示された画像中の複数の被写体について、各被写体と関連するアイテムが該被写体と所定の相対位置関係を有する位置に表示される(S501)。さらに、本実施形態のアイテム表示処理では、アイテムの視認性が向上するように、その視認範囲が大きくなるように、アイテムの表示位置が調整される(S502〜S509)。特に、S501〜S505では、アイテムの表示の少なくとも一部が画像からはみ出す場合に、当該アイテムの全体が画像に収まるように表示位置が移動される。そして、S506〜S510では、優先順が最高の被写体である主被写体の表示(たとえば顔)と主被写体以外の他の被写体に関連したアイテムの表示とが重なる場合に、他の被写体に関連したアイテムの表示位置が移動される。
まずS501において、システム制御部50は、被写体Iiに関するアイテムを第一の領域に表示する。本実施形態では、第一の領域とは、前述の基本的な位置であり、被写体である人物の顔との相対的な位置で定義されている。例えば人物の顔の領域から所定距離だけ下側の位置にアイテムを表示した場合の表示領域である。 したがって、図8(A)のような画像において人物1のアイテム421が第一の領域に表示されると、図示のような位置に表示されることとなる。S502において、システム制御部50は、S501で表示したアイテムが表示部28の表示領域内かどうか(本実施形態では、表示部28のうち画像420を表示した表示領域内かどうか)を判定する。表示されたアイテムの全体が表示領域内であれば処理はS506へ進み、そうでないときは、処理はS503へ進む。
S503において、システム制御部50は、S501で表示したアイテムの表示位置を第二の領域に移動する。この第二の領域も被写体との相対的位置関係で定義されており、本実施形態では人物の顔領域から所定距離だけ上側の位置におけるアイテムの表示領域である。たとえば、図8(B)の例において、人物1のアイテム421は、第一の領域では表示部28の表示領域(以下、表示領域)からはみ出してしまうので、人物1に関する第二の領域へアイテム421が移動されている。S504において、システム制御部50は、S503で移動したアイテムの表示が表示部28の表示領域内に収まるかどうかを判定する。アイテムの表示が表示領域内であれば処理はS506へ進み、アイテムの表示が表示領域からはみ出す場合はS505へ進む。S505において、システム制御部50は、S503で表示したアイテムの表示位置を第三の領域に移動する。この第三の領域は、第一の領域を、表示部28の表示領域に収まるように、さらに水平右方向または水平左方向に移動した位置とする。 たとえば、図9(A)に示されるように、人物1のアイテム421は第1の領域に表示すると表示領域からはみ出すため、S503の処理により第二の領域へ移動する。しかしながら、第二の領域においてもアイテム421は表示領域からはみ出すため、第三の領域へ移動される(S505)。この結果、図9(A)に示されるような位置にアイテム421が表示されることになる。
次に、S506では、システム制御部50は、S501またはS503またはS505で設定した表示位置でのアイテムの表示が、主被写体である被写体Ipの顔領域に重なるかどうかを判定する。両者が重なる場合は、処理はS507へ進み、重ならない場合は処理を終了する。なお、S506では、処理対象となっているアイテムの被写体が主被写体Ipであった場合には、両者は重ならないと判定される。このように処理対象の被写体が主被写体である場合(すなわち、Ii=Ip)である場合には、表示領域からはみ出す場合のみアイテムの表示位置を変えることになる。そのため、主被写体に関するアイテムの表示を優先して見やすい位置に置くことができる。
他方、Ii≠Ipである場合、すなわち処理対象となっているアイテムに関連する被写体が主被写体でない場合は、被写体Iiのアイテムの表示が主被写体である被写体Ipの顔領域に重なるかどうかが判定される。S506で両者が重なると判定されると、S507において、システム制御部50は、S501またはS503またはS505で表示したアイテムを第二の領域に移動する。このようにすることで図9(B)に示すように被写体Ipの顔領域に被写体Iiのアイテムが重なって表示されるのを防ぐことができ、主被写体の顔を閲覧しやすくできるという効果がある。
次に、S508において、システム制御部50は、S507で移動表示したアイテムが表示領域内かどうかを判定する。表示領域内であればアイテム表示処理を終了し、表示領域内ではなければ処理はS509へ進む。S509において、システム制御部50は、S507で表示したアイテムを、第一の領域に、第一の領域でアイテム表示が表示領域からはみ出す場合には第三の領域に移動する。つまり、主被写体以外のアイテムが主被写体の顔領域に重なるためにそのアイテムの表示位置を移動させたが、その結果アイテムの表示が表示領域に収まらない場合には、そのアイテムが主被写体の顔領域に重なることを許可する。たとえば、図10に示されるように、アイテム422は、主被写体(人物1)の顔領域と重複することから、第一の領域へ移動する(S507)。しかしながら、アイテム422は表示領域からはみ出すようになるため、再び第一の領域に戻る(S509)。この場合は主被写体の顔とアイテムが重なってしまうが、主被写体以外のアイテムが表示領域内に表示できないことの方がユーザへ対して不利益であるため、このような制御が採用されている。S510において、システム制御部50は、被写体Ipのアイテムの表示をすべてのアイテムの表示の中で最前面に表示し、アイテム表示処理を終了する。
なお、図5の例では、S501、S503、S505、S507,S509では、アイテムを表示あるいは移動するものとして説明したが、これに限るものではない。これらの時点では表示または移動せず、S501、S503、S505、S507,S509で表示または移動したと仮定した場合の表示位置を取得(算出)するだけとしても良い。そして取得した表示位置に基づいて図5の処理の各判定、処理を行って最終的な表示位置を調整し、確定した表示位置に対して、図4のS409でNoと判定された後に全てのアイテムを表示するように制御しても良い。
またアイテム表示処理において、人物に関するアイテム以外の表示物(図8〜図10の画像番号424、合計枚数表示425、撮影日時426、画像情報427)を追加し、それらを被写体に関連するアイテムの表示よりも前面に表示するようにしてもよい。このようにすることで再生モードでは撮像装置100において被写体に関する情報よりも重要な表示物をより目立たせることができる。
なお前述した被写体に関連するアイテムは、具体的には、例えば人物名称や誕生日情報などを含む。またS404にて被写体に対する優先度順位を取得すると述べたが、システム制御部50が撮影された画像の内容から判断するようにしてもよい。たとえば、システム制御部50は、撮像装置から被写体までの距離の順(たとえば最も近い被写体を主被写体とする)に優先順を設定してもよい。或いは、被写体の笑顔に点数をつけて、笑顔の点数の高い順に優先順を設定してもよい。さらに、予め登録されている優先度に、上述した距離や笑顔の点数などを作用させて優先順を決定するようにしてもよい。
以上、図5に示した処理では、主被写体の顔領域にアイテムの表示が重なる場合について説明した。本実施形態では、さらに主被写体のアイテム自体を見やすくために、さらにアイテム同士の重なりについても考慮してアイテムの表示位置を調整する。以下、アイテム同士が重なる場合の解決方法について、図6を参照して説明する。なお、図5に示す処理と図6に示す処理のいずれかが実行されてもよいし、それら両方が共に実行されてもよい。
図6は、図5で前述したアイテム表示処理の他の例のフローチャートである。図5のアイテム表示処理では、S506〜S509の処理で主被写体以外の被写体のアイテムを主被写体の顔に重ならない位置に表示する例を説明した。これに対して、図6では、主被写体以外の被写体のアイテムを主被写体のアイテムに重ならない位置に表示するように調整する例を説明する。なお、図6に示される処理は、図4のS407において実行される。また、S601〜S605までの処理はS501〜S505までの処理と同様であり、S607〜S610の処理についてはS507〜S510と同様の処理である。S606〜S609の処理により、優先順が最高の被写体である主被写体に関連したアイテムの表示と主被写体以外の他の被写体に関連したアイテムの表示とが重なる場合に、他の被写体に関連したアイテムの表示位置が移動される。
S606において、システム制御部50は、被写体Iiのアイテムの表示が主被写体である被写体Ipのアイテムの表示に重なるかどうかを判定する。両者が重なる場合は、処理はS607へ進み、重ならない場合はアイテム表示処理を終了する。S607において、システム制御部50は、S601またはS603またはS605で表示したアイテムを第二の領域に移動する。この処理により、たとえば、図11(A)に示されるように、主被写体以外のアイテム422,423は、ともに第二の領域へ移動する。このようにすることで図11(A)に示すように主被写体Ipのアイテムと他の被写体Iiのアイテムとが重なって表示されるのを防ぐことができ、主被写体のアイテムの視認性を高めることができる。
なお、図6の例でも図5と同様、S601、S603、S605、S607,S609では、アイテムを表示あるいは移動するものとして説明したが、これに限るものではない。これらの時点では表示または移動せず、S601、S603、S605、S607,S609で表示または移動したと仮定した場合の表示位置を取得(算出)するだけとしても良い。そして取得した表示位置に基づいて図5の処理の各判定、処理を行って最終的な表示位置を調整し、確定した表示位置に対して、図4のS409でNoと判定された後に全てのアイテムを表示するように制御しても良い。
またS610で、システム制御部50は、主被写体Ipのアイテムを最前面にする。たとえば、図11(B)に示されるように、S607でアイテム422,423を移動すると、それらの少なくとも一部が表示領域外へ出てしまう場合は、S609において第一の領域へ戻される。そして、S610で、被写体Ipのアイテム421を最前面にする処理が行なわれる。このような処理により、たとえアイテムの表示同士が重なった場合でも、主被写体のアイテムについてはその見やすさを維持できるといった効果が得られる。
なお、図5のS506、S509の後、S510の前にS606〜S609の処理を行うように図5と図6を組み合わせたフローとしてもよい。このようにすることで、主被写体以外の被写体のアイテムの表示位置を、極力主被写体の顔にもアイテムにも重ならないようにすることができる。
なお、図5のアイテム表示処理を採用する場合は、主被写体のアイテムの位置が決まらなくとも他の被写体のアイテムの位置を決められる。従ってS405において、優先順の低い順に被写体情報であるアイテムを並べて、S406〜S409により、優先順の低い被写体から順にアイテムを表示していくようにしてもよい。また、主被写体のアイテムの位置だけを先に決めてしまえば、図6のアイテム表示処理を採用した場合にも、S405において、優先順の低い順に被写体情報であるアイテムを並べて優先順の低い被写体から順にアイテムを表示していくようにしてもよい。このように被写体の優先順にしたがってアイテムを描画すれば、複数の被写体に関連する複数のアイテムは、優先順が高い被写体に関連したアイテムがより画面の手前になるように、優先順にしたがった表示順で表示されるようになる。
以上説明したように、本実施形態の再生モードによる画像表示処理によれば、限られた表示領域内にたくさんの顔がある場合にも、少なくとも主被写体の顔については、関連するアイテムを視認性よく表示をさせることができるという効果がある。
[撮影モード処理(S304)について]
次に、撮影モードにおいて電子ビューファインダとして機能している表示部28、すなわちライブビュー表示を行なっている表示部28の表示処理について説明する。例えば、図12に示すように、3人の人物が撮像画面内に同時に写っている状態を考える。このような表示において、それら3人の人物の各々が登録されている顔と識別された場合、全ての人物のアイテムを基本的な位置である各顔の真下の領域に表示すると図12(A)の様な表示となる。しかしこの表示では、画面中央に大きく写った主被写体となる人物の顔1201のアイテムである識別名称が他の人物の識別名称に遮られて視認性が悪くなってしまう。そこで本実施の形態では、主被写体のアイテムの視認性が悪くならないように各被写体のアイテムの表示位置、重なり順を調整する例を説明する。以下、本実施形態の撮影モード処理(S304)が実行された場合の動作を図7のフローチャートを参照して説明する。
S701にて、撮影しているスルー画像から人物の顔を検出したかどうかを判定する。検出しなかった場合にはそのまま本処理を終了する。他方、人物の顔を検出した場合には、処理はS702へ進み、システム制御部50は、顔検出数Imaxを記憶する。図12(A)に例示される画像の場合では、Imax=3となる。次に、S703にて、システム制御部50は、被写体の優先度から主被写体を決定する。主被写体は、検出されている複数の顔のうち、画面中央に近い顔である順、大きい顔である順、登録された顔であるか否か、などに基づいて重みづけされた結果に基づいて決定される。本例では、図12(A)の画像中の中央の顔1201が主被写体と決定されたものとする。次に、S704にて、システム制御部50は、主被写体の顔に対応するアイテムの表示順番を最後に設定する。その他の被写体(顔1202,1203)についての表示順番の設定は、特に制限されない。S705にて、システム制御部50は、描画順番iを1に初期化する。
こうして、S706〜S713では、優先順の高い被写体(主被写体)を最後にした順にアイテムを表示していくようになる。そのため、複数の被写体に関連する複数のアイテムは、優先順が最も高い被写体に関連したアイテムがより画面の手前になるように、優先順にしたがった表示順で表示されるようになる。
S706にて、システム制御部50は、描画順番iの顔に対する顔認識枠を描画する。次に、S707にて、システム制御部50は、描画順番iの顔に対して予め登録されているデータと照合し、登録されている顔であるかどうかを識別する。予め登録されている顔と識別されなかった場合には、処理はS712に進み、描画順番iがインクリメントされる。S707にて、予め登録されている顔であると識別された場合には、処理はS708へ進む。S708において、システム制御部50は、描画順番iの顔が主被写体の顔であるかどうかを判断する。本実施形態では、i=Imaxである場合に、その被写体が主被写体の顔であると判断されることになる。主被写体の顔であると判定された場合は、処理はS709に進む。S709において、システム制御部50は、主被写体の顔に対するアイテム(本例では人物名とするが、これに限られるものではない)の描画範囲が表示領域内(表示部28のうちスルー画像を表示している領域内)に収まるかどうかを判定する。表示領域内に収まらないと判断された場合には、処理はS710に進み、アイテムが表示領域内に収まるよう描画位置を調整する。他方、アイテムの描画範囲が表示領域内に収まっている場合には、S710の処理はスキップされる。また、S708にて主被写体の顔であると判断されなかった場合にも、S709〜S710による一連のアイテムの表示位置の調整は行われない。
S711において、システム制御部50は、描画順番iの顔に対するアイテムの描画を行う。そして、システム制御部50は、S712において描画順番iをインクリメントし、S713にて描画順番iが顔検出数Imaxに達したかどうかを判断する。描画順番iが顔検出数Imaxに達していない場合には、処理はS706へ戻り、上述した一連の処理が繰り返される。他方、顔検出数Imaxに達していた場合にはS714に進む。
S714では、撮影モード処理におけるその他の処理を行う。その他の処理には例えば以下が含まれる。ユーザーからの撮影設定の変更操作の受付および設定の変更。シャッターボタン61の半押しによるSW1信号に応じたAF,AEなどの撮影準備処理、シャッターボタン61の全押しによるSW2信号に応じた本撮影処理。なお、撮影準備処理は、顔AFを行う設定になっている場合には検出された顔に合わせて行う。また、顔AFでは個人認証によって登録された顔を優先して撮影準備処理を合わせる(例えば登録された顔をAF領域にする)ようにすることも可能である。また、本撮影された画像に対して個人認証を行い、登録された顔が検出された場合には、検出された顔の位置を示す情報、及び検出された顔の関連情報として不揮発性メモリ56に記録された情報(名前や誕生日など)を画像ファイルのヘッダ部に記録して、記録媒体200に画像ファイルを記録する。
S715では、撮影モード処理を終了するイベントがあったか否かを判定する。撮影モード処理を終了するイベントには例えば、モードダイヤル60を操作して撮影モード以外のモード(再生モードなど)にモードが切り替えられたイベント、電源をオフにするイベントなどが含まれる。撮影モード処理を終了するイベントが無い場合にはS701に戻って処理を繰り返し、撮影モード処理を終了するイベントがあったと判定した場合は、撮影モード処理を終了する。
以上のような撮影モード処理を行うことにより、図12(B)のような表示状態を得ることができる。すなわち、主被写体である顔1201のアイテム1211の描画が最前面となり、顔1202,1203のアイテム1212,1213の表示は、アイテム1211により上書きされる。この結果、主被写体に関連付けられているアイテムの視認性が確保される。
また、S709〜S710の、主被写体に関連したアイテムの描画位置に関する一連の補正処理を行った場合の表示例を図13(A)に示す。図13(A)では、主被写体である顔1301のアイテム1311の描画位置を基本の位置(破線で示している)から左へ平行移動することで、アイテム1311の全体が表示されるようにしている。なお、主被写体以外の顔1302に関連するアイテム1312は、表示領域からはみ出したままであり、主被写体のアイテムの表示よりも奥に表示されている。
以上の処理は、主被写体のみに関してアイテムの描画位置を最適なものとするため、閲覧モード処理におけるアイテムの表示位置最適化よりも処理負荷が軽い。撮影モード時では、表示部28にライブビューを表示するため、このような負荷の軽い処理が適している。なお、スルー画像をライブビュー表示として表示するため、画像中の被写体は動的に変化する。従って本実施形態では、撮影モードの間、図7に示される処理が繰り返し実行される。そのため、ライブビュー表示されている画像中の被写体について優先順が変化すれば、これに追従してアイテム表示が変更されることになる。本実施形態では静止画の再生時よりも撮影時のライブビュー表示時の方がアイテムの調整を減らして軽い処理とすることで、このように繰り返し行われる表示処理であっても滑らかに行うことができる。
また、被写体の位置関係によっては、図14(A)に示されるように、主役の顔1401に、他の顔1402,1403のアイテム1412,1413の表示が重なる場合がある。このような場合、たとえば、S713にて全てのアイテムの描画処理が終了したと判定された後(S713でYESとなった後)に、主役の顔1401を囲む枠内の領域に対し、これまで行なった描画を消去するくり抜き描画を行うようにしてもよい。このように、撮影モードにおいては、主被写体を含む特定領域の内部の画像が他の被写体に関連するアイテムの表示よりも前面に表示される。この結果、図14(A)に示されるような画像は、図14(B)に示すような画像となる。そのため、主被写体の視認性が向上する。なお、そのような特定領域は、撮影時にAFが行なわれる領域としてもよい。
以上のような制御により、複数の顔が存在する場合に於いても、
・再生モードではより多くの人物名称及び人物の顔を見やすく表示することができ、
・撮影処理に負荷がかかる撮影モードでは、低い処理負荷で主被写体の顔に対応する人物名称の見やすさを確保する、
ことが可能な表示制御を実現できる。
なお、再生モードや撮影モードにおけるアイテムの表示において、更なる処理負荷軽減を図る為、次のような制御を実施してもよい。すなわち、被写体に関連するアイテムの表示位置を、予め決められた複数の位置の中から、被写体の位置に基づいて選択するようにしてもよい。たとえば、図13(B)に示される様に、画面を縦、横の各々に4分割する線の交わるポイントがアイテムの中央となる位置のみに描画可能な位置を限定する。図13(B)では、それらのうちの3つの位置にアイテムを配置している。そして、これら複数の位置のうち、被写体の顔の領域の外部の該領域に最も近い位置が、描画位置として選択されるようにする。このような処理によって、被写体の移動に伴う描画の回数が軽減される。また、このような分割数を増やせば被写体に対する表示アイテムの追従性が向上し、分割数を減らせば描画回数が減り処理負荷が軽減されることになる。また、撮影モードにおいて描画回数を減少させるために、画面上(画像上)における被写体の移動距離が所定値を超えた場合に、該被写体に関連したアイテムの表示位置を更新するようにしてもよい。
以上のように、上記実施形態による撮像装置、またはこれに適用された表示制御装置によれば、被写体との関連性が容易に判断できる表示を、より簡易な表示制御で実現することができる。たとえば、撮像装置が再生モードである場合に、多くの顔が密集する画像に於いても、被写体との関連を保ちつつ可能な限り各々の情報を判別可能な状態で表示する。また、その一方で、良好な情報表示状態を保つ為の制御に演算装置の負荷をかけられない撮影モードの場合に於いても、主被写体のみの情報表示が判別可能な状態に保たれる。このような、表示制御の切り替えを行うことにより、被写体に関連する情報の見やすさを確保しつつ、製造コストや本体サイズ等で競争力のある製品を提供する事ができる。
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。また、上述の実施形態の一部を適宜組み合わせてもよい。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。