以下、図面を参照して本発明の実施形態を説明する。なお、以下に説明する実施形態では、本発明による電子機器およびその制御方法を、静止画・動画の撮影が可能なデジタルカメラに適用した場合を例としている。
図1に本実施形態による撮像装置の一例としてのデジタルカメラ100の背面外観図を示す。表示部28は画像や各種情報を表示する表示部である。表示部28には、図2で説明されるように背面表示パネル28aと、ファインダー内の表示部である電子ビューファインダー28bが含まれる。シャッターボタン61は撮影指示を行うための操作部である。モード切り替えスイッチ60は各種モードを切り替えるための操作部である。コネクタ112は、パーソナルコンピュータやプリンタなどの外部機器と接続するための接続ケーブル111とデジタルカメラ100とを接続するためのコネクタである。操作部70はユーザーからの各種操作を受け付ける各種スイッチ、ボタン、タッチパネル等の操作部材より成る。コントローラホイール73は操作部70に含まれる回転操作可能な操作部材である。電源スイッチ72は、電源オン、電源オフを切り替えるための押しボタンである。
記録媒体200は、例えばメモリカードやハードディスク等を含み、デジタルカメラ100により撮影された画像等を格納する。記録媒体スロット201は記録媒体200を着脱可能に格納するためのスロットである。記録媒体スロット201に格納された記録媒体200は、デジタルカメラ100との通信が可能となり、記録や再生が可能となる。蓋202は記録媒体スロット201の蓋である。図1においては、蓋202を開けて記録媒体スロット201から記録媒体200の一部を取り出して露出させた状態を示している。
図2は、本実施形態によるデジタルカメラ100の構成例を示すブロック図である。図2において、撮影レンズ103はズームレンズ、フォーカスレンズを含むレンズ群である。シャッター101は絞り機能を備えるシャッターである。撮像部22は光学像を電気信号に変換するCCDやCMOS素子等で構成される撮像素子である。A/D変換器23は、アナログ信号をデジタル信号に変換する。A/D変換器23は、撮像部22から出力されるアナログ信号をデジタル信号に変換するために用いられる。バリア102は、デジタルカメラ100の、撮影レンズ103を含む撮像系を覆うことにより、撮影レンズ103、シャッター101、撮像部22を含む撮像系の汚れや破損を防止する。
画像処理部24は、A/D変換器23からのデータ、又は、メモリ制御部15からのデータに対し所定の画素補間、縮小といったリサイズ処理や色変換処理を行う。また、画像処理部24では、撮像した画像データを用いて所定の演算処理を行う。画像処理部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に逐次転送して表示することで、スルー画像表示(ライブビュー表示(LV表示))を行える。以下、ライブビューで表示される画像をLV画像と称する。
不揮発性メモリ56は、電気的に消去・記録可能な記録媒体としてのメモリであり、例えばEEPROM等が用いられる。不揮発性メモリ56には、システム制御部50の動作用の定数、プログラム等が記憶される。ここでいう、プログラムとは、本実施形態にて後述する各種フローチャートを実行するためのコンピュータプログラムのことである。
システム制御部50は、デジタルカメラ100全体を制御する少なくとも1つのプロセッサーまたは回路である。前述した不揮発性メモリ56に記録されたプログラムを実行することで、後述する本実施形態の各処理を実現する。システムメモリ52には、例えばRAMが用いられる。システムメモリ52には、システム制御部50の動作用の定数、変数、不揮発性メモリ56から読み出したプログラム等が展開される。また、システム制御部50はメモリ32、D/A変換器13、表示部28等を制御することにより表示制御も行う。
システムタイマー53は各種制御に用いる時間や、内蔵された時計の時間を計測する計時部である。モード切り替えスイッチ60、シャッターボタン61、操作部70はシステム制御部50に各種の動作指示を入力するための操作手段である。
モード切り替えスイッチ60は、システム制御部50の動作モードを静止画記録モード、動画撮影モード、再生モード等のいずれかに切り替える。静止画記録モードに含まれるモードとして、オート撮影モード、オートシーン判別モード、マニュアルモード、撮影シーン別の撮影設定となる各種シーンモード、プログラムAEモード、カスタムモード等がある。モード切り替えスイッチ60により、ユーザーはこれらのモードのいずれかに直接切り替えることができる。あるいは、モード切り替えスイッチ60でメニューボタンに一旦切り換えた後に、メニューボタンに含まれるこれらのモードのいずれかに、他の操作部材を用いて切り替えるようにしてもよい。同様に、動画撮影モードにも複数のモードが含まれていてもよい。
シャッターボタン61は、第1シャッタースイッチ62と第2シャッタースイッチ64を有する。第1シャッタースイッチ62は、デジタルカメラ100に設けられたシャッターボタン61の操作途中、いわゆる半押し(撮影準備指示)でONとなり第1シャッタースイッチ信号SW1を発生する。第1シャッタースイッチ信号SW1により、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の動作を開始する。第2シャッタースイッチ64は、シャッターボタン61の操作完了、いわゆる全押し(撮影指示)でONとなり、第2シャッタースイッチ信号SW2を発生する。システム制御部50は、第2シャッタースイッチ信号SW2により、撮像部22からの信号読み出しから記録媒体200に画像データを書き込むまでの一連の撮影処理の動作を開始する。
操作部70の各操作部材は、表示部28に表示される種々の機能アイコンを選択操作することなどにより、場面ごとに適宜機能が割り当てられ、各種機能ボタンとして作用する。機能ボタンとしては、例えば終了ボタン、戻るボタン、画像送りボタン、ジャンプボタン、絞込みボタン、属性変更ボタン等がある。例えば、メニューボタンが押されると各種の設定可能なメニュー画面が表示部28に表示される。利用者は、表示部28に表示されたメニュー画面と、上下左右の4方向ボタンやSETボタンとを用いて直感的に各種設定を行うことができる。
コントローラホイール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は、撮影された画像を記録するためのメモリカード等の記録媒体であり、半導体メモリや光ディスク、磁気ディスク等から構成される。通信部54は、無線または有線ケーブルによって接続し、映像信号や音声信号等の送受信を行う。通信部54は無線LAN(Local Area Network)やインターネットとも接続可能である。通信部54は撮像部22で撮像した画像(スルー画像を含む)や、記録媒体200に記録された画像を送信可能であり、また、外部機器から画像データやその他の各種情報を受信することができる。
姿勢検知部55は重力方向に対するデジタルカメラ100の姿勢を検知する。姿勢検知部55で検知された姿勢に基づいて、撮像部22で撮影された画像が、デジタルカメラ100を横に構えて撮影された画像であるか、縦に構えて撮影された画像であるかを判別可能である。システム制御部50は、姿勢検知部55で検知された姿勢に応じた向き情報を撮像部22で撮像された画像の画像ファイルに付加したり、画像を回転して記録したりすることが可能である。姿勢検知部55としては、加速度センサーやジャイロセンサーなどを用いることができる。
接眼検知部57は目(物体)の接近(接眼)を検知する。システム制御部は、接眼検知部57で検知された状態に応じて、背面表示パネル28aと電子ビューファインダー28bの表示/非表示を切り替える。すなわち、接眼検知部57が接眼を検知している場合は表示先を電子ビューファインダー28bとし、接眼検知部57が接眼を検知していない場合は表示先を背面表示パネル28aとする。
なお操作部70の一つとして、背面表示パネル28aに対する接触(位置)を検知可能なタッチパネル70aを有する。タッチパネル70aと背面表示パネル28aとは一体的に構成することができる。例えば、タッチパネル70aは、光の透過率が背面表示パネル28aの表示を妨げないように構成され、背面表示パネル28aの表示画面の内部に組み込まれる内蔵型(インセル型)とすることができる。タッチパネル70aにおける入力座標と、背面表示パネル28aの表示画面上の表示座標とを対応付けることで、恰もユーザーが背面表示パネル28aの表示画面を直接的に操作可能であるかのようなGUI(グラフィカルユーザーインターフェース)を提供できる。システム制御部50はタッチパネル70aへの以下のユーザー操作、あるいは状態を検出できる。
・タッチパネル70aにタッチしていなかった指やペンが新たにタッチパネル70aにタッチしたこと、すなわち、タッチの開始(以下、タッチダウン(Touch-Down)と称する)の検出。
・タッチパネル70aを指やペンでタッチしている状態であること(以下、タッチオン(Touch-On)と称する)の検出。
・タッチパネル70aを指やペンでタッチしたまま移動していること(以下、タッチムーブ(Touch-Move)と称する)の検出。
・タッチパネル70aへタッチしていた指やペンを離したこと、すなわち、タッチの終了(以下、タッチアップ(Touch-Up)と称する)の検出。
・タッチパネル70aに何もタッチしていない状態(以下、タッチオフ(Touch-Off)と称する)の検出。
タッチダウンが検出されると、同時にタッチオンであることも検出される。タッチダウンの後、タッチアップが検出されない限りは、通常はタッチオンが検出され続ける。タッチムーブが検出されるのもタッチオンが検出されている間である。タッチオンが検出されていても、タッチ位置が移動していなければタッチムーブは検出されない。タッチしていた全ての指やペンがタッチアップしたことが検出された後は、タッチオフとなる。
これらの操作・状態や、タッチパネル70a上に指やペンがタッチしている位置座標は内部バスを通じてシステム制御部50に通知され、システム制御部50は通知された情報に基づいてタッチパネル70a上にどのような操作が行なわれたかを判定する。例えば、タッチムーブに関して、システム制御部50は、タッチパネル70a上で移動する指やペンの移動方向を、位置座標の変化に基づいて、タッチパネル70a上の垂直成分・水平成分毎に判定できる。またタッチパネル70a上をタッチダウンから一定のタッチムーブを経てタッチアップをしたとき、ストロークを描いたこととする。
素早くストロークを描く操作をフリックと呼ぶ。フリックは、タッチパネル70a上に指をタッチしたままある程度の距離だけ素早く動かして、そのまま離すといった操作であり、言い換えればタッチパネル70a上を指ではじくように素早くなぞる操作である。所定距離以上を、所定速度以上でタッチムーブしたことが検出され、そのままタッチアップが検出されるとフリックが行なわれたと判定できる。また、所定距離以上を、所定速度未満でタッチムーブしたことが検出された場合はドラッグが行なわれたと判定するものとする。更に、複数箇所(例えば2点)を同時にタッチして、互いのタッチ位置を近づけるタッチ操作をピンチイン、互いのタッチ位置を遠ざけるタッチ操作をピンチアウトと称する。ピンチアウトとピンチインを総称してピンチ操作(あるいは単にピンチ)と称する。
タッチパネル70aは、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサー方式等、様々な方式のタッチパネルのうちいずれの方式のものを用いても良い。方式によって、タッチパネルに対する接触があったことでタッチがあったと検出する方式や、タッチパネルに対する指やペンの接近があったことでタッチがあったと検出する方式のものがあるが、いずれの方式でもよい。
デジタルカメラ100は、少なくとも画像を再生するための再生モードと、撮影を行うための撮影モードとで、切り替えて使用することができ、撮影モードとして、オートモード、マニュアルモード、および複数のシーン別撮影モードを備えている。オートモードは、カメラの各種パラメータが、計測された露出値に基づきデジタルカメラ100に組み込まれたプログラムにより自動的に決定されるモードである。マニュアルモードは、カメラの各種パラメータをユーザーが自由に変更可能なモードである。シーン別撮影モードとは、撮影シーン別にその撮影シーンに適したシャッター速度や絞り値、ストロボ発光状態、感度設定、ホワイトバランス(WB)設定等を組み合わせることによって各種パラメータが決定される撮影モードである。デジタルカメラ100は、例えば、以下に記す(1)〜(3)のシーン別撮影モードを備えている。但し、これらのシーン別撮影モードに限定されるものではない。撮影者は、撮影モード選択メニューからデジタルカメラ100を所望の撮影モードに設定して撮影を行うことができる。
(1)ポートレート撮影モード:背景をぼかして人物を浮き立たせるようにして人物撮影に特化したモード。
(2)花撮影モード:マクロモードに設定し、彩度も高めに設定するモード。
(3)スポーツ撮影モード:動きの早い被写体をとるのに特化した設定とする撮影モード。
上述したデジタルカメラ100では中央1点AFや顔AF、瞳AFを用いた撮影が可能である。中央1点AFとは撮影画面内の中央位置1点に対してAFを行うことである。顔AFとは顔検出機能によって検出された撮影画面内の顔に対してAFを行うことである。瞳AFとは顔検出機能の一種でもある器官検出機能によって検出された撮影画面内の顔に含まれる瞳に対してAFを行うことである。
顔検出機能について説明する。システム制御部50は、画像から顔および該顔の器官(目、鼻、口、耳など)を検出可能な検出部として機能する。システム制御部50は顔検出対象の画像データを画像処理部24に送る。システム制御部50の制御下で画像処理部24は、画像データに水平方向バンドパスフィルタを作用させる。また、システム制御部50の制御下で画像処理部24は、画像データに垂直方向バンドパスフィルタを作用させる。これら水平及び垂直方向のバンドパスフィルタを適用することにより、画像データからエッジ成分が検出される。
その後、システム制御部50は、検出されたエッジ成分に関してパターンマッチングを行い、目及び鼻、口、耳などの顔の器官の候補群を抽出する。そして、システム制御部50は、抽出された目の候補群の中から、予め設定された条件(例えば2つの目の距離、傾き等)を満たすものを目と判断し、目の候補群の絞り込みを行う。そして、システム制御部50は、絞り込まれた目の候補群とそれに対応する顔を形成する他のパーツ(鼻、口、耳などの器官)を対応付け、また、予め設定した非顔条件フィルタを通すことで、顔を検出する。システム制御部50は、顔の検出結果に応じて、検出された顔の数、各顔の位置、大きさ、向き、内容する器官(目、鼻、口、耳)などの位置や大きさ等の顔情報を出力し、処理を終了する。このとき、システム制御部50は、顔の数などの特徴量をシステムメモリ52に記憶する。一旦顔として検出された領域は、コントラストや色、大きさ等の条件が合致していれば所定期間(1秒程度)は顔として検出し続ける。これによって、一時的に被写体が後ろを向いた、目を瞑った等によって顔の器官が検出されなくなっても、顔として検出し続けることが可能である。
システム制御部50は、上述の顔検出機能によって検出された顔について抽出済みとなっている目を、検出された目(瞳)として確定し、瞳検出結果として瞳情報を出力する。瞳情報には、例えば、画像中における目の位置、顔における目の位置、大きさ等、また、目の位置と大きさに基づく瞳領域が含まれる。瞳検出は、顔の要素(パーツ)を検出する器官検出の一種である。
以上のようにライブビュー表示あるいは再生表示される画像データを画像解析して、画像データの特徴量を抽出して、顔や瞳などの特定の被写体情報を検出することが可能である。
なお、顔AFと同時に顔AE,顔FE、顔WBを行うことができる。顔AEとは検出された顔の明るさに合わせて、画面全体の露出を最適化することである。顔FEとは検出された顔を中心にフラッシュの調光をすることである。顔WBとは、検出された顔の色に合わせて画面全体のWBを最適化することである。
さらに、システム制御部50は、画像処理部24を用いて、色、コントラスト、動きベクトルなどの条件によって、主要被写体と想定されるモノ(人物の顔と器官以外のモノ)を検出することも可能である。
また、デジタルカメラ100では、撮影時のオートフォーカス(AF)の動作モードとして、複数のAFモードからユーザー操作に応じて1つのAFモードを設定することが可能である。AFモードの設定は、設定メニュー画面における、AFモードを設定するためのメニュー項目が選択されて表示されるAFモード設定画面でのユーザー操作に基づいて行われる。AFを行う位置の決定方式ごとに複数のAFモードが用意されている。本実施形態では、AFモードとして、一点AFモードと、追尾優先モードのいずれかが設定できるものとする。
一点AFモードは、撮影範囲の中央、あるいはユーザーが指定した一点に焦点調節位置を表すAF枠を設定するAFモードである。一点AFモードでは、AF枠は被写体に変化があっても移動せず、顔などの被写体が検出されているか否かに関わらず、AF枠の位置から得られた情報(コントラスト値や位相差AF用のデフォーカス量)に基づいてAFが行われる。
追尾優先モードでは、ユーザーからの追尾指定がない場合(追尾待機状態、追尾解除状態)は、デジタルカメラ100が自動的に主被写体と判定した被写体がAF対象(焦点調節位置)となる。人物の顔が検出された場合は、検出された人物の瞳または顔を優先して主被写体としてAF対象にする。人物の顔が検出されていない場合は、動体、コントラスト値の高い被写体、中央に近い被写体などの所定の条件に従って主被写体をデジタルカメラ100が自動的に決定してAF対象とする。また、ユーザーからの追尾指定がなされた後は、LV画像中で指定された被写体を追尾し続け、追尾している被写体の撮影範囲内での位置が変わっても、追尾している被写体をAF対象とする。例えばユーザーが人物Aの瞳または顔を追尾指定した場合(追尾中)は、LV画像上で人物Aが移動しても人物Aの瞳または顔を追い続け、AF対象とする。
また、人物以外を追尾対象とすることも可能であり(モノ追尾)、追尾指定された位置の色、コントラスト、形状などを条件として、同一の被写体がLV画像中で移動しても追い続け、AF対象とする。すなわち、追尾優先モードは追尾を行うことによるAF位置の決定が可能なAFモードである。なお、AFモードは一点AFモードと追尾モードに限るものではない。例えばユーザーが指定した限定領域内で追尾を行うAFモード(「ゾーンAF」)などがあってもよい。設定したAFモードは、不揮発性メモリ56に記憶され、撮影モード処理においてはシステムメモリ52に読み出される。
図3A、図3Bは、本実施形態によるデジタルカメラ100の撮影モード処理に関するフローチャートである。図3A〜3Bの処理、及び後述する図4A〜4C,図5A〜5Bの処理は、不揮発性メモリ56に記録されたプログラムを、システムメモリ52をワークメモリとしてとしてシステム制御部50が実行することにより実現される。デジタルカメラ100をライブビュー撮影モードで起動すると図3A〜3Bの処理を開始する。なお、図3A〜3Bの処理は、AFモードが追尾優先モードに設定されている場合の処理である。1点AFモードに設定されている場合の処理については説明を省略する。
なお、追尾優先モードでは、画像から顔および顔の器官を検出し、検出された顔または器官は、ユーザー操作(本実施形態ではタッチ操作)によりAF対象(追尾対象)として指定される候補となる。また、そのようなタッチ操作により指定可能なAF対象が異なる複数の動作モードが用意されており、ユーザーはそれのうちの何れかをMENU画面から設定することができる。以下では、画像から検出される顔の器官を目(瞳)とし、指定可能なAF対象が異なる複数の動作モードとして、顔と瞳をAF対象に指定できる瞳AF入と顔をAF対象に指定できる(瞳は指定できない)瞳AF切を設定可能な撮像装置について説明する。
S301(図3A)において、システム制御部50は、撮影モード初期化処理を行った後、撮像部22を通して取得された映像を、表示部28にライブビューとして表示(LV表示)する。この時の表示先は、表示先切替が「自動」に設定されていて接眼を検知していない場合は背面表示パネル28aであり、接眼を検知している場合は電子ビューファインダー28bである。また、表示先切替が「手動」で、表示先が背面表示パネル28aに設定されている場合は背面表示パネル28aであり、表示先が電子ビューファインダー28bに設定されている場合は電子ビューファインダー28bである。ここで、撮影モード初期化処理とは、フラグや制御変数等を含むパラメータや設定値、設定モードを不揮発性メモリ56から読み出す等の処理である。また記録媒体200の状態を確認し、異常等があれば、ライブビューに重畳して警告等を表示する。
S302において、システム制御部50は、瞳、顔、モノを検出中であることを示す枠、もしくは、追尾中であることを示す枠を表示するための枠表示処理を行なう。枠表示処理については、図4A〜4Cを用いて後述する。
S303において、システム制御部50は、操作部70に含まれるMENUボタンが押下されたか否かを判断する。MENUボタンが押下されたと判断された場合、処理はS304へ進み、そうでなければ処理はS305へ進む。S304において、システム制御部50は、MENU画面を表示する。MENU画面には、瞳AFの設定項目が含まれており、ユーザーによって瞳AFの設定項目が選択されると、瞳AFの設定画面が表示部28に表示される。瞳AFの設定画面では、設定候補として「入(オン)」と「切(オフ)」の選択肢が表示され、ユーザーはいずれかを選択して瞳AFの入か切のいずれかを設定することが可能である。ユーザー操作によって瞳AFの入/切の設定が変更されると、変更された設定値を不揮発性メモリ56に記憶して設定する。
S305において、システム制御部50は、タッチパネル70aに対するタッチ操作(位置指定操作)を検出したか否かを判断する。タッチ操作を検出した場合はS306(図3Bの(a))へ進み、そうでなければS316(図3A)へ進む。S306からS315では、瞳AFの入/切と、タッチ操作による表示画面上の指定位置とに基づいて追尾対象を設定する処理が行われる。なお、ここで検出するタッチ操作による位置指定操作は、表示先が背面表示パネル28aである場合はタッチダウンとし、表示先が電子ビューファインダー28bである場合はタッチアップとする。電子ビューファインダー28bへ表示出力している際は、一般的にユーザーはタッチパネル上のタッチ位置を目視できないため、確定操作をタッチダウン後のタッチアップとすることで、目的の位置を確定しやすくなるためである。
S306(図3Bの(a))において、システム制御部50は、瞳AFの設定が入であるか否か(瞳AF入か瞳AF切か)を判断する。瞳AF入であれば処理はS307へ進み、そうでなければS308へ進む。S307において、システム制御部50は、ライブビュー画像から瞳が検出されており、かつ、S305でタッチ操作を検出した際の指定位置(以下、タッチ操作の位置ともいう)が、検出されている瞳の位置か(瞳領域内であるか)否かを判断する。タッチ操作の位置が瞳領域内であれば処理はS308へ進み、そうでなければS311へ進む。なお、S307では、瞳AF入動作モードにおいて、被写体の右側の瞳と左側の瞳を区別して指定することが可能である。
なお、表示先が背面表示パネル28aである場合は、背面表示パネル28aに表示されているライブビューにおける、検出されている瞳に対応する領域内にタッチダウンがされた場合に、タッチ操作の位置が検出されている瞳領域内であると判断する。また、表示先が電子ビューファインダー28bである場合は、指定位置を示すカーソルをタッチムーブによって電子ビューファインダー28bに表示されたライブビューにおいて移動し、タッチアップした時のカーソルの位置をタッチ操作の位置とする。従って、電子ビューファインダー28bに表示されたライブビューの検出されている瞳に対応する領域内にカーソルを移動させた状態でタッチアップされた場合に、タッチ操作の位置が検出されている瞳領域内であると判断する。
S308において、システム制御部50は、S307で判定した指定位置が、ライブビュー上の被写体に対して、ユーザーから見て右側の瞳(被写体の左目)の選択領域内(後述の右上領域703内)か否かを判断する。右側の瞳であれば、S309へ進む。そうでない場合、すなわち、S307で判定した指定位置が、ライブビュー上の被写体に対して、ユーザーから見て左側の瞳(被写体の右目)の選択領域内(後述の左上領域702内)である場合は、処理はS310へ進む。
S309において、システム制御部50は、指定位置で検出されている顔の右側の瞳(検出された顔の左目)を追尾対象として追尾する。S310において、システム制御部50は、指定位置で検出されている顔の左側の瞳(検出された顔の右目)を追尾対象として追尾する。
一方、S307で指定位置が瞳領域でなかった場合、S311において、システム制御部50は、タッチ操作による指定位置が、検出されている顔の位置か(顔領域内か)否かを判断する。顔の位置であれば(後述する顔領域701、701a、701b内である場合)、処理はS312へ進み、そうでなければS313へ進む。S312において、システム制御部50は、タッチ操作の指定位置において検出されている顔を追尾対象として追尾する。
S307、S308、S311における処理について、図7を使って詳細に解説する。図7(a)〜(e)は、表示先が背面表示パネル28aである場合のデジタルカメラ100における顔または瞳を選択するためのタッチ反応領域を示す模式図であり、ライブビューから検出された1つの顔の部分のみを抽出して説明した図である。実際にはライブビュー画像には顔の外側の領域や他の顔などが含まれるが、図7の説明ではそれらは省略する。
図7(a)は、顔のみが検出されている状態のタッチ反応領域を示す図である。瞳は、目を瞑っている等の理由で検出されていないものとする。このとき、ユーザーが選択できるのは顔のみであるため、タッチ反応領域となる顔領域701は顔全体を覆う正方形の領域(高さ、幅ともに長さL)として設定される。このように、システム制御部50は、画像から顔が検出されると、表示画面上の顔の領域に対応する顔領域を設定し、検出された顔と顔領域を関連づける。よって、この状態で顔領域701上においてユーザーのタッチ操作が検出されると、顔が選択される。
システム制御部50は、検出された顔から所定の器官(本実施形態では瞳)が検出されると、設定した顔領域を複数の領域に分割し、各領域を顔と所定の器官に関連づける。図7(b)は顔と左右の両目が検出されている状態である。このとき、ユーザーが選択できるのは顔と、被写体に対して右側の瞳、左側の瞳の3つとなる。このため、図7(b)のように顔領域701を3つに分割し、それぞれ左上タッチ反応領域である左上領域702を左側の瞳、右上タッチ反応領域である右上領域703を右側の瞳、下半分タッチ反応領域である下領域704を顔の選択領域として設定する。なお、本実施形態では、顔に対して口、鼻よりも瞳が存在する側を上方向としている。
なお、顔領域の分割は、器官の検出時の大きさに関わらず、所定の規則に従って行われる。例えば、検出された顔や器官の大きさに応じて顔領域や器官の領域の大きさが変化しても、顔領域と複数の領域の面積の比率および位置関係を維持するように顔領域の分割が行われる。さらに具体的に例示する、本実施形態では、左上領域702,右上領域703,下領域704の高さと幅は、検出された顔に対する瞳の相対的な大きさ(割合)に関わらず顔領域701の大きさに対して一定の割合であり、次のように設定する。すなわち、左上領域702,右上領域703,下領域704の高さは互いに同じとする(長さL/2、すなわち顔領域701の高さの半分)。また、左上領域702と右上領域703の幅は互いに同じ長さとする(長さL/2。すなわち顔領域701の幅の半分)。下領域704の幅は左上領域702,右上領域703の2倍である(長さL)。これは、顔領域701を上下左右に等分に4分割し、左上の部分、右上の部分、下側の2つの部分をそれぞれ左側の瞳、右側の瞳、顔に対応するタッチ反応領域としたものである。顔と瞳とで反応領域の高さを揃えることで、ユーザーは顔と瞳を同じ操作感で選択することが可能となる。また左右の瞳の反応領域の幅を揃えることで、顔が斜めを向いて片方の瞳が小さく検出された場合でも、両方の瞳を同じ操作感で選択することが可能となる。
図7(c)は顔と片方の瞳(ここでは左側の瞳)のみが検出されている状態である。このときは、図7(b)における右上のタッチ反応領域である右上領域703は、下半分のタッチ反応領域である下領域704と組み合わせて、顔タッチ反応領域705のように設定する。つまり、検出されていない瞳の領域をユーザーがタッチした場合は、顔が選択されることとなる。
瞳AFにおいては、ピントを合わせたい瞳が検出されていない場合、撮影者または被写体立ち位置、向きを調節して、瞳が検出されるようにするユースケースがあるが、この行為をしている最中に他の被写体が主被写体として検出されてしまう可能性があり煩わしい。そこで本実施形態では、非検出な瞳をタッチした際には顔を追尾する。このような制御により、主被写体から別の被写体への乗り移りを防ぐことが可能となる。これにより撮影者は、狙った瞳が非検出であっても、自身や被写体を動かして所望な瞳へピントを合わせやすくなる。
なお、図7(a)〜図7(c)では顔領域701を正方形としたが、検出する被写体に応じて長方形、ひし形、円形、楕円形など別の形にしてもよい。例えば、人間の顔は実際にはひし形や円形に近いため、図7(d)のようなひし形の顔領域701a、図7(e)のような円形の顔領域701bをタッチ反応領域としても良い。図7(d)、図7(e)の場合、左上タッチ反応領域である領域706,709が左側の瞳、右上タッチ反応領域である領域707,710が右側の瞳、下半分タッチ反応領域である領域708,711が顔の選択領域として設定され得る。また、図7(a)〜図7(c)で、左上領域702と右上領域703の幅、および左上領域702と右上領域703と下領域704の高さを同じ長さとしているが、どちらか一方だけ実施するものでもよい。例えば、図7(f)に示されるように、左上領域702および右上領域703と、下領域704の上下方向の大きさ(高さ)をLa、Lb(La≠Lb,La+Lb=L)で分割するようにしてもよい。
また、図7(a)〜(c)では左上領域702と右上領域703の幅を、互いに同じ長さとした場合を説明したが、顔の向きに応じた可変長としてもよい。顔の向きに応じて左上領域702と右上領域703の幅を変化させる例を図8(a)〜(e)を用いて説明する。
図8(a)は顔と左右の両目が検出されている状態である。このとき、ユーザーが選択できるのは顔と、被写体に対して右側の瞳、左側の瞳の3つとなる。このため、図8(a)のように顔領域801を3つに分割し、それぞれ左上タッチ反応領域である左上領域802を左側の瞳、右上タッチ反応領域である右上領域803を右側の瞳、下半分タッチ反応領域である下領域804を顔の選択領域として設定する。
なお、顔領域の分割は、所定の規則に従って行われる。左上領域802、右上領域803、下領域804の高さは、検出された顔に対する瞳の相対的な大きさ(割合)に関わらず顔領域801の大きさに対して一定の割合であり、次のように設定する。すなわち、左上領域802、右上領域803、下領域804の高さは互いに同じとする(長さL/2、すなわち顔領域801の高さの半分)。こうすることにより、ユーザーが顔と瞳を、同じ感覚で選択することが可能となる。
左上領域802,右上領域803の幅は、図7(a)で説明した条件と異なり、左側の瞳と右側の瞳の検出位置の中間地点を基準に決定される。すなわち、左側の瞳と右側の瞳の検出位置の中間地点が左上領域802と右上領域803との境界となるように左上領域802と右上領域803の幅を決定する。左側の瞳の検出位置(検出された瞳の中心座標)をPl、右側の瞳の検出位置(検出された瞳の中心座標)をPrとする。Plの横方向の位置Pl(x)と、Prの横方向の位置Pr(x)から、両瞳の検出位置の中間地点までの距離Wが以下のように求まる。
W=|Pr(x)−Pl(x)|/2
そして、瞳の位置Pl(x)およびPr(x)と距離Wとに基づいて左上領域802の幅l1、右上領域803の幅l2が算出(決定)される。すなわち、Pf(x)を顔領域801の左上頂点のX座標として、
l1=Pl(x)−Pf(x)+W
=Pl(x)−Pf(x)+|Pr(x)−Pl(x)|/2
l2=L−l1
となる。また、左上領域802と右上領域803とを区分する境界の座標は、
Pl(x)+W=Pr(x)−W
となる。
図8(a)は正面を向いた顔の例であり、右側の瞳と左側の瞳の中間がちょうど顔領域の中間となり、l1=l2=L/2となっている。下領域804の幅は、左上領域802の幅l1と右上領域803の幅l2の合計値とする。
図8(b)および図8(c)は、図8(a)よりも顔が、デジタルカメラ100に対して左側方向に傾いている様子である。上述した条件により左上領域802の幅l1と右上領域803の幅l2が算出される。従って傾いた顔の例である図8(b)では、正面の顔の例である図8(a)よりも、顔領域に対する相対的な左上領域802の幅l1は狭く、右上領域803の幅l2は広くなっている。図8(b)よりもさらに傾いた顔の例である図8(c)では、図8(b)よりも、顔領域に対する相対的な左上領域802の幅l1は狭く、右上領域803の幅l2は広くなっている。こうすることにより、ユーザーが左右の瞳を、直感的に選択することが可能となる。具体的には、左上領域802の幅と右上領域803の幅を等しく設定した場合には、図8(c)のように顔が傾いている場合、ユーザーが右側の瞳の検出位置Prをタッチした場合、右側の瞳ではなく左側の瞳が選択されてしまう可能性がある。これに対し図8(c)のように、左上領域802の幅と右上領域803の幅が設定されると、図8(c)のように顔が傾いている場合でも、ユーザーが右側の瞳の検出位置Prをタッチした場合、ユーザーの意図通り右側の瞳が選択される。
図8(d)は、図8(a)よりも顔が上方向に傾いている様子である。この場合は上を向いたことで、検出された顔領域の中心と顔の中心位置がずれることがある。たとえば、顔が上方向を向いた場合、顔領域の中心に対して顔の中心位置は上方向にずれる。したがって、図8(d)のように顔領域の中心位置を適宜設定し直してもよい。この場合も、上領域と下領域は同じ高さとなる。
なお、図8(a)〜図8(c)で説明したでは、常に左上領域802の幅l1と右上領域803の幅l2を瞳の位置と距離Wに基づいて調節(顔の傾きに応じた調節)していたが、これに限られるものではない。検出された顔の傾きが大きいことを示す所定条件を満たすか否かに応じて左上領域802と右上領域803の境界を調節するか否かを決定するようにしてもよい。例えば、顔の傾きが所定量以下の場合はこの調節を行わず、l1=l2=L/2とするようにしてもよい。例えば、顔領域801の左右中央位置(左側の幅と右側の幅が共にL/2となる境界)の両側に瞳が1つずつ存在する場合には、[左上領域802の幅l1]=[右上領域803の幅l2]=[顔領域の幅の半分であるL/2]とする。そして、顔領域801の左右中央位置よりも片側(同じ方向側)に双方の瞳が位置する場合(右側の瞳と左側の瞳のうち一方の瞳の検出位置が、顔領域の中央よりも他方の瞳側の領域へ侵入した場合)には、上述のように顔の傾きに応じた調節を行う。例えば、図8(e)に示すように、顔がやや傾いているものの、顔の傾きが所定量以下、すなわち顔領域801の左右中央位置(左側の幅と右側の幅が共にL/2となる境界)の両側に瞳が1つずつ存在する場合には、幅l1=幅l2=L/2とする。そして、図8(c)に示すように、顔が大きく傾いており顔の傾きが所定量超となっている、すなわち顔領域801の左右中央位置の片側に双方の瞳が位置する場合には、図8(c)で説明したようにl1、l2をそれぞれ調整し、異なる値に設定する。
なお、表示先が電子ビューファインダー28bであった場合には、タッチアップされた際に、指定位置を示すカーソルが、電子ビューファインダー28bに表示されたLV中の顔のうち、図7または図8で説明したどの領域内の位置であるかを判定する。さらに、S307,S308,S311では、背面表示パネル28aを表示先としている場合にタッチダウン位置(タッチダウンされた際のタッチ位置)に基づいて領域を判定したが、タッチダウン位置には基づかず、タッチアップ位置に基づく判定としても良い。
S313(図3Bの(a))において、システム制御部50は、タッチ操作がなされた位置が、後述の解除タッチボタンの位置か否かを判断する。解除タッチボタンの位置でなければ処理はS314へ進み、解除タッチボタンの位置であればS315へ進む。S314において、システム制御部50は、指定位置の被写体を追尾対象としてモノ追尾を実行する。すなわち、LV画像中で指定位置にある被写体の色、コントラスト、形状などを条件として、同一の被写体がLV画像中で移動しても追い続け、AF対象とする。S315において、システム制御部50は、追尾状態を解除して、追尾待機状態になる。
S316(図3A)において、システム制御部50は、シャッターボタン61が半押しされ第1シャッタースイッチ62がオンとなったか(撮影準備指示がなされたか)否かを判断する。シャッターボタン61が半押しされた場合は、処理はS317(図3Bの(b))へ進み、そうでなければS324へ進む。
S317〜S323(図3Bの(b))では、シャッターボタン61の半押しによる撮影準備動作が実行され、シャッターボタン61の全押しの検出に応じて撮影処理が実行される。まず、S317において、システム制御部50は、後述のAF処理を行う。AF処理については図5A〜5Bを用いて後述する。S318において、システム制御部50は、測光処理を行う。S319において、システム制御部50は、シャッターボタン61が全押しされ第2シャッタースイッチ64がオンとなったか否かを判断する。シャッターボタン61が全押しされた場合は、処理はS321へ進み、そうでなければS320へ進む。S320において、システム制御部50は、第1シャッタースイッチ62のオン(シャッターボタン61の半押し)が維持されているか否かを判断する。維持されている場合は、処理はS319へ進み、そうでなければS302へ進む。
S319で第2シャッタースイッチ64がオンである(シャッターボタン61の全押し状態)と判断された場合、S321において、システム制御部50は、撮影処理を行う。これは、ライブビュー撮影のための撮影ではなく、記録媒体に画像ファイルとして画像を記録するための本撮影である。設定された露光条件(シャッター速度、絞り値)で露光を行い、撮像部22から信号読み出しを行い、画像処理を施して記録媒体200に記録するための画像を生成する。S322において、システム制御部50は、S321で撮影した画像を記録媒体200へ記録する。なお、システム制御部50は、これと同時に、S323でLV表示を再開する前に、撮影された画像を確認表示するクイックレビュー(レックレビュー)表示を行っても良い。S323において、システム制御部50は、LV画像の撮像を再開し、表示部28にライブビュー画像表示を行なう。
S316(図3A)で、第1シャッタースイッチ62のオン(シャッターボタンの半押し状態)が検出さなかった場合、S324において、システム制御部50は、操作部70に対しその他の操作がなされたか否かを判断する。その他の操作がなされたと判断された場合は、処理はS325へ進み、そうでなければS326へ進む。S325において、システム制御部50は、その他の処理を行なう。例えば操作部70が操作されたことに応じて、シャッタースピードなどの撮影パラメータの変更などの処理を行なう。一方、S326では、システム制御部50は、操作部70に対し終了操作(電源オフ操作や、再生モード等の他の動作モードへの変更操作等)がなされたか否かを判断する。終了操作がなされたと判断された場合は、本処理は終了する。終了操作がなされていないと判断された場合は、処理はS302へ戻り、上述の動作が繰り返される。
図4A〜4Cは、図3A〜3Bで説明したS302の枠表示処理の詳細を示すフローチャートである。また図6A〜6Cは、本実施形態における画面例を示す模式図である。本実施形態では、被写体が検出された状態であることを示すアイテム(枠)および被写体が追尾されている状態であることを示すアイテム(枠)が、LV画像に重畳して表示される。
S401(図4A)において、システム制御部50は、不揮発性メモリ56に記録された設定情報を参照し、瞳AFの設定が入であるか否か(瞳AF入か瞳AF切か)を判断する。瞳AF入であれば処理はS408へ進み、そうでなければ(瞳AF切であれば)S402へ進む。S402において、システム制御部50は、被写体を追尾中か否かを判断する。被写体を追尾中の場合は、処理はS403へ進み、そうではなく追尾待機状態であればS404へ進む。
S404において、システム制御部50は、顔またはモノが検出されているか否かを判断する。顔またはモノが検出されている場合、処理はS405へ進み、そうでない場合はS431へ進む。図6Aの(a)は追尾待機状態で、顔も検出していない場合のLV画像601表示例である。これは、S431へ進む条件を満たしている場合であって、シャッターボタン61が半押しされる前の表示状態に相当する。LV画像601に、撮影情報表示602が重畳して表示されている。LV画像601において、例として被写体603(人物の被写体603a、モノ(自動車)の被写体603b)が図示されているが、図6Aの(a)は仮にこれらが検出されなかった場合の表示例である。実際は壁や空のみといった、人物もモノも検出できない被写体が撮影されている場合にこの表示状態となる。S404で顔またはモノが検出されていると判定された場合、S405において、システム制御部50は、人物の顔が検出されているか否かを判断する。人物の顔が検出されている場合、処理は後述の図4CのS427(図6A(b)に示すような顔検出枠604が表示される)へ進み、そうでなければ後述の図4CのS429(図6B(h)に示すようなモノ検出枠610が表示される)へ進む。
S402(図4A)において被写体を追尾中でないと判断された場合、S403において、システム制御部50は、被写体の顔を追尾中か否かを判断する。顔を追尾中の場合は、処理はS406へ進み、そうでなければS407へ進む。S406において、システム制御部50は、表示部28に顔追尾枠を表示して、処理を図4BのS418(追尾中の顔でコンティニュアスAFを行う)へ進める。図6Aの(c)は、被写体603aの顔を追尾している場合の表示例である。システム制御部50は、人物の顔を囲うように顔追尾枠605を表示し、追尾状態を解除するためのタッチボタンである追尾解除ボタン606を画面端に表示する。一方、図4AのS407では、システム制御部50は、表示部28にモノ追尾枠を表示して、処理を図4BのS420(追尾中のモノでコンティニュアスAFを行う)へ進める。図6Aの(d)はモノを追尾している場合の表示例である。車を囲うように、モノ追尾枠607が表示されている。
S401(図4A)で瞳AF入ではない(瞳AF切)と判断された場合、S408において、システム制御部50は、被写体を追尾中か否かを判断する。被写体を追尾中の場合は、処理はS409(図4B)へ進み、そうでなければS421(図4A)へ進む。S409(図4B)において、システム制御部50は、被写体の瞳を追尾中か否かを判断する。瞳を追尾中の場合は、処理はS410へ進み、そうでなければS413へ進む。
S410において、システム制御部50は、表示部28に瞳追尾枠を表示する。また瞳が検出されている場合は顔も検出されている。従って、S411において、システム制御部50は、表示部28において、LV画像601上の検出されている顔の位置に顔検出枠を重畳して表示する。図6Bの(e)は瞳を追尾している状態の表示例である。LV画像601において、瞳を囲うように、瞳追尾枠608が表示されている。また瞳が検出されている場合は顔も検出されているため、LV画像601上に顔検出枠604も表示されている。
S412において、システム制御部50は、追尾中の瞳の位置をコンティニュアスAFの対象位置(AF位置)に設定し、コンティニュアスAFを行う。ここでは、検出されている顔の右目と左目のうち、ユーザーによって追尾対象として指定された側の瞳がコンティニュアスAFの対象となる。すなわち、デジタルカメラ100までの距離が近い方の目か否か、あるいはサイズの大きい方の目であるか否かに関わらず、ユーザーが追尾対象として指定した方の目がAFの対象となる。このように瞳を追尾対象とすることで、よりユーザーの意図通りの瞳をAFの対象とすることができる。ここでのコンティニュアスAFとは、撮影操作がなされていない待機中に、継続的に、被写体の位置に応じて自動的にピントを合わせ続ける機能を指す。
S409で瞳を追尾中ではないと判断された場合、S413において、システム制御部50は、被写体の顔を追尾中か否かを判断する。被写体の顔を追尾中の場合は、処理はS414へ進み、そうでなければS419へ進む。S414では、システム制御部50は、表示部28に顔追尾枠を表示する。図6Aの(c)に示されるように、LV画像601上の追尾中の顔を囲うように顔追尾枠605が表示される。S415において、システム制御部50は、被写体の瞳が検出されているか否かを判断する。瞳が検出されている場合は、処理はS416へ進み、そうでなければS418へ進む。
S416において、システム制御部50は、顔追尾枠に加えて、表示部28に瞳検出枠を表示する。図6Bの(f)は瞳を検出し、顔を追尾している状態の表示例である。LV画像601において、瞳を囲うように、瞳検出枠609を表示している。また顔が追尾されているため、S414で表示された顔追尾枠605が引き続き表示されている。その後、S417において、システム制御部50は、検出されている瞳の位置をコンティニュアスAFの対象位置に設定し、コンティニュアスAFを行う。このように、瞳追尾中でなくても、顔を追尾しており、瞳も検出されているのであれば、検出されている瞳にAFが行われる。ただし、ここでAF対象となる瞳は、追尾している顔の右目と左目のうち、システム制御部50が自動的に主被写体と判定して選択した瞳となる。システム制御部50は、基本的にはデジタルカメラ100までの距離が近い方の目(至近側の目)、あるいはサイズの大きい方の目を選択してAF対象とする。
S415で瞳が検出されていないと判断された場合、S418において、システム制御部50は、追尾中の顔の位置をコンティニュアスAFの対象位置に設定し、コンティニュアスAFを行う。ここでは、瞳が検出されていないため、AFの対象は顔全体、あるいは顔の中央1点といった、瞳の位置に関わらない位置を対象としてAFが行われる。
瞳も顔も追尾中ではないと判断された場合(S409およびS413でNOの場合)、S419では、システム制御部50は、表示部28にモノ追尾枠を表示する。モノ追尾枠の表示例は、前述の図6Aの(d)で示した通りである。S420において、システム制御部50は、追尾中のモノの位置をコンティニュアスAFの対象位置に設定し、コンティニュアスAFを行う。
S408(図4A)で追尾中の被写体が存在しないと判断された場合、S421において、システム制御部50は、人物の顔、瞳、モノのいずれかの被写体が検出されているか否かを判断する。そのような被写体が検出されていると判断された場合は、処理はS422(図4C)へ進み、そうでなければ(すなわち、顔、人、モノの何れも検出されていない状態であれば)S431(図4A)へ進む。
S422(図4C)において、システム制御部50は、被写体の瞳が検出されているか否かを判断する。被写体の瞳が検出されている場合は、処理はS423へ進み、そうでなければS426へ進む。S423において、システム制御部50は、表示部28に表示されたライブビューに重畳して、検出されている顔の瞳の位置に瞳検出枠を表示する。また瞳が検出されている場合は顔も検出されているため、S424において、システム制御部50は、表示部28に表示されたライブビューに重畳して、検出されている顔の位置に顔検出枠を表示する。図6Bの(g)は、S424において顔と瞳を検出している状態における表示例である。顔と瞳をそれぞれ囲うように、顔検出枠604、瞳検出枠609が表示されている。S425において、システム制御部50は、S417と同様に、検出されている瞳の位置をコンティニュアスAF位置に設定し、コンティニュアスAFを行う。ここでAF対象となる瞳は、追尾している顔の右目と左目のうち、システム制御部50が自動的に主被写体と判定して選択した瞳となる。
S422で瞳が検出されていないと判断された場合、S426において、システム制御部50は、人物の顔を検出しているか否かを判断する。顔を検出していると判断された場合は、処理はS427へ進み、そうでなければS429へ進む。S427において、システム制御部50は、表示部28に表示されたライブビューに重畳して、検出されている顔の位置に顔検出枠を表示する。図6Aの(b)は、顔検出枠604が表示された状態を示している。S428において、システム制御部50は、検出されている顔の位置をコンティニュアスAF位置に設定し、コンティニュアスAFを行う。
検出中の被写体が瞳でも顔でもない場合(S422、S426でNO)、S429において、システム制御部50は、表示部28に表示されたライブビューに重畳して、検出されているモノの位置にモノ検出枠を表示する。図6Bの(h)はモノを検出している状態を示す図である。車(被写体603b)を囲うように、モノ検出枠610が表示されている。S430において、システム制御部50は、検出されているモノの位置をコンティニュアスAF位置に設定し、コンティニュアスAFを行う。
瞳AFの入/切の状態に関わらず、被写体を追尾中でも検出中でもない場合(S404でNOまたはS421でNO)、S431において、システム制御部50は、その他の位置をコンティニュアスAF位置に設定し、コンティニュアスAFを行う。
なお、検出された被写体を示すアイテム(被写体が検出状態であることを示すアイテム)である顔検出枠604、瞳検出枠609、モノ検出枠610には、検出された範囲を示す一重の枠が用いられている。このように、検出された状態であることを示すアイテムには、被写体に関わらず同一の表現が用いられる。また、追尾対象に指定された状態であることを示すアイテムである顔追尾枠605、モノ追尾枠607、瞳追尾枠608には、追尾対象の被写体の範囲を示す二重の枠が用いられている。このように、追尾対象に指定された状態であることを示すアイテムには、被写体に関わらず同一の表現が用いられるが、検出された状態を示すアイテムとは異なる表現となっている。なお、検出状態および追尾状態を示すアイテムの表示形態は、上記例(一重枠と二重枠)に限られるものではない。
図5A〜5Bは、本実施形態によるデジタルカメラ100のAF処理に関するフローチャートである。
S501(図5A)において、システム制御部50は、不揮発性メモリ56に記録された設定情報を参照し、瞳AFの設定が入であるか否かを判断する。瞳AF入であればS513(図5B)へ進み、そうでなければS502(図5A)へ進む。S502〜S512(図5A)の処理は、瞳AF切におけるAF処理である。また、S513〜S526(図5B)の処理は、瞳AF入におけるAF処理である。
S502(図5A)において、システム制御部50は、被写体の顔を追尾中か否かを判断する。顔を追尾中の場合はS503へ進み、そうでなければS507へ進む。S503において、システム制御部50は、被写体の瞳が検出されているか否かを判断する。瞳が検出されている場合はS504へ進み、そうでなければS505へ進む。S504において、システム制御部50は、検出されている瞳の位置をAF位置に設定し、AFを行う。ここでAF対象となる瞳は、追尾している顔の右目と左目のうち、システム制御部50が自動的に主被写体と判定して選択した瞳となる。一方、S505では、システム制御部50は、追尾中の顔の位置をAF位置に設定し、AFを行う。
S506において、システム制御部50は、表示部28に、S504でAFを行った瞳の位置、または、S505でAFを行った顔の位置に、AF結果枠を表示する。シャッターボタン61の半押しに応じたAFが実行されると、検出された状態であることを示すアイテム(顔、瞳、モノ検出枠)および指定された状態であることを示すアイテム(顔、瞳、モノ追尾枠)は非表示とされ、AF結果枠が表示される。例えば、図6Bの(f)の状態から、AFが完了すると、追尾枠、検出枠は非表示となり、図6Cの(j)のようにAF結果枠が表示される。図6Cの(j)はLV画像601の顔の位置に顔AF結果枠612を表示した場合の表示例である。顔を囲うように、顔AF結果枠612を表示している。なお、S504を経てS506へ到達した場合においても、瞳AF結果枠ではなく顔AF結果枠612を表示している。これは、ユーザーが瞳AFの設定を切にしているために、ユーザーとしては被写体の顔全体でAFをすることを期待していると想定されるためである。
仮にここで顔ではなく瞳に対してAF結果枠を表示すると、ユーザーは、瞳AFの設定を切にしているにも関わらず、その設定が反映されなかったために瞳AFが行われてしまったと誤認する可能性がある。あるいは、ユーザーは顔にAF結果枠が表示されると想定していたのに瞳にAF結果枠が表示されることで違和感を持つ可能性がある。このような誤認や違和感が生じると、ユーザーは、期待通り顔にAF結果枠が表示されるまで、シャッターボタン61の半押し状態を解除して再度シャッターボタン61を半押ししてAFを行う(再AFを行う)ことを繰り返してしまう可能性もある。その場合、ユーザーはシャッターチャンスを逃してしまうこともある。このような事態を未然に防止し、ユーザーの想定に合わせるために、本実施形態ではS504を経てS506へ到達した場合も、瞳ではなく顔を囲うようにAF結果枠を表示する。これによって、ユーザーにとって違和感の無いAF結果の通知を実現でき、その後の撮影動作をスムーズに行うことが可能となる。
S502で顔を追尾中ではないと判断された場合、S507において、システム制御部50は、モノを追尾中か否かを判断する。モノを追尾中と判断された場合は、処理はS511へ進み、そうでなければS508へ進む。S508では、システム制御部50は、被写体の瞳が検出されているか否かを判断する。瞳が検出されていると判断された場合は、処理は上述のS504(自動選択した瞳でAFを行う)へ進み、そうでなければS509へ進む。S509において、システム制御部50は、被写体の顔が検出されているか否かを判断する。被写体の顔が検出されている場合は、処理は上述のS505(追尾中の顔でAF)へ進み、そうでなければS510へ進む。
S510において、システム制御部50は、その他の位置(顔、瞳、モノのいずれも検出されていないので、顔、瞳、モノの何れでも無い、システム制御部50が主被写体として自動的に決定した位置)をAF位置に設定し、AFを行う。モノを追尾中である場合(S507でYES)は、S511において、システム制御部50は、追尾中のモノの位置をAF位置に設定し、AFを行う。S512において、システム制御部50は、表示部28に、AF位置として設定されたモノまたはその他の位置に対してAF結果枠を表示する。図6Cの(l)は、処理がS510を経てS512へ到達した場合の、その他の位置でのAF結果枠を表示した場合の表示例である。LV画像601の全面の中でカメラが自動的に検出した位置に対して、多点AF結果枠614を表示している。また図6Cの(k)は、処理がS511を経てS512へ到達した場合の、追尾中のモノ位置に対してAF結果枠を表示した場合の表示例である。モノ(被写体603b)を囲うように、モノAF結果枠613を表示している。
次に、瞳AF入の場合(S501でYES)のAF動作について説明する。まず、S513(図5B)において、システム制御部50は、被写体の瞳を追尾中か否かを判断する。瞳を追尾中と判断された場合は、処理はS514へ進み、そうでなければS516へ進む。S514において、システム制御部50は、追尾中の瞳の位置をAF位置に設定し、AFを行う。そしてS515において、システム制御部50は、表示部28に、AF位置として設定された被写体の瞳(追尾中の瞳)に対してAF結果枠を表示する。図6Cの(i)は瞳にAF結果枠を表示している状態を示す図である。瞳を囲うように、瞳AF結果枠611を表示している。
S513で瞳を追尾中ではないと判断された場合、S516において、システム制御部50は、人物の顔を追尾中か否かを判断する。顔を追尾中であると判断された場合は、処理はS517へ進み、そうでなければS521へ進む。S517において、システム制御部50は、被写体の瞳が検出されているか否かを判断する。瞳が検出されていると判断された場合は、処理はS518へ進み、そうでなければS519へ進む。S518において、システム制御部50は、検出されている瞳の位置をAF位置に設定し、AFを行う。続いてS515へ進み、AFを行った位置に瞳AF結果枠を表示する。S518を経てS515へ到達した場合(瞳追尾中ではない場合)においても、瞳AF結果枠を表示しているのは、ユーザーが瞳AFの設定を入にしているために、ユーザーとしては被写体の瞳でAFをすることを期待していると予想されるためである。顔ではなく瞳を囲うようにAF結果枠を表示することで、ユーザーにとって違和感の無いAF結果の通知を実現でき、その後の撮影動作をスムーズに行うことが可能となる。
被写体の顔を追尾中であるが瞳が検出されていない場合(S517でNO)、S519において、システム制御部50は、追尾中の顔の位置をAF位置に設定し、AFを行う。そして、S520において、システム制御部50は、表示部28に、AF位置として設定された被写体の顔(追尾中の顔)に対してAF結果枠を表示する。
S513、S516により瞳も顔も追尾中でないと判断された場合、S521において、システム制御部50は、モノを追尾中か否かを判断する。モノを追尾中の場合はS525へ進み、そうでなければS522へ進む。S522において、システム制御部50は、被写体の瞳が検出されているか否かを判断する。瞳が検出されていると判断された場合は、処理は上述のS518へ進み、そうでなければS523へ進む。S523において、システム制御部50は、被写体の顔が検出されているか否かを判断する。顔が検出されていると判断された場合は、処理は上述のS519へ進み、そうでなければS524へ進む。
S524において、システム制御部50は、S510と同様に、その他の位置をAF位置に設定する。一方、S521でモノを追尾中であると判断された場合、S525において、システム制御部50は、上述のS511と同様に、追尾中のモノの位置をAF位置に設定する。そして、S526において、システム制御部50は、上述のS512と同様に、表示部28に、AF位置として設定されたモノまたはその他の位置に対してAF結果枠を表示する。
なお、上述のS506,S512,S515,S520,S526で表示される各種AF結果枠は、AFを行った結果、合焦出来た場合と合焦出来なかった場合とで異なる表示形態で表示される。例えば、合焦した場合は緑色でAF結果枠を表示し、合焦できずに非合焦となった場合はグレーでAF結果枠を表示する。さらに、各種AF結果枠の表示と共に、AF結果通知音を発音させてもよい。この場合も、AFを行った結果として合焦出来た場合と合焦出来なかった場合とで異なる音で通知するものとする。例えば、合焦した場合は「ピピッ」と発音し、合焦できずに非合焦となった場合は「ピッ」と発音する。
以上説明した上記実施形態によれば、瞳AFにおいて、顔領域を上下に等分し、上半分を瞳/下半分を顔選択領域とすることで、顔/瞳両方の選択を行いやすくし、利便性の高い撮像装置が提供される。また、瞳AFの入切設定に応じて適切なAF結果枠表示を行うことができ、ユーザーに対し違和感を抱かせないようにし、集中して撮影に臨んでもらうことが可能となる。
なお、上記実施形態では、顔、瞳、モノの検出枠・追尾枠は、それぞれ同じ形状としたがこれに限られるものではなく、被写体の種類に応じて異なる形状の枠を表示するようにしてもよい。同じ形状の枠を用いた場合、顔、瞳、モノの全てを互いに等価な対象として選択するUIとなり、ユーザーにとっては被写体を気軽に切り替えて撮影を楽しむことが可能となる。また、被写体の種類に応じて異なる形状の枠を用いる場合、どの対象が検出・追尾されているのかが明確に分かりやすくなる。もちろん、さらに瞳の左右で互いに異なる形状の枠を用いるようにしても良い。
なお、ここまで電子ビューファインダーを例に説明したが、光学ファインダーでもよい。また、ここまで述べた枠表現は、状況に応じて大きさが可変であってもよく、また一枠で構成されていなくてもよい。例えば光学ファインダーなど、予め表示部上に複数のAF点が表示されている場合には、タッチ位置を示す際にはタッチした指の位置および面積に応じて、複数のAF点の色を変更するなどして、タッチ位置を示すようにしても良い。
なお、システム制御部50が行うものとして説明した上述の各種制御は1つのハードウェアが行ってもよいし、複数のハードウェア(例えば、複数のプロセッサーや回路)が処理を分担することで、装置全体の制御を行ってもよい。
また、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。さらに、上述した各実施形態は本発明の一実施形態を示すものにすぎず、各実施形態を適宜組み合わせることも可能である。
また、上述した実施形態においては、本発明を撮像装置に適用した場合を例にして説明したが、これはこの例に限定されるものではない。例えば、追尾枠や検出枠の表示に関しては、撮影された画像を表示する機能と画像上の位置を指定する機能を有した電子機器であれば適用可能である。例えば、撮影済みの画像を再生して顔、目、口、鼻を検出し、赤目補正する目を選ぶのか、別の理由で顔を選ぶのか(例えば人物名を入力する)といった際のタッチ操作に適用可能である。他にも、顔または器官を選択して行う処理としては次のようなものがある。顔全体または目を選択してモザイクまたはマスクをかける、目を選択して瞳の強調処理(大きくするなど)を行う、鼻を選択して大きく強調する画像処理を施す、顔全体または頬などを選択して美肌効果の画像処理を施す。口を選択して唇の赤みを強調する、光沢を付けるなどの画像処理を掛ける。これらのような場合の顔の器官の選択方法として、LV画像の変わりに、記録済み画像を対象として上述の処理を適用可能である。また、AF枠の表示に関しても、撮像機能がある各種電子機器に適用可能である。すなわち、本発明は、パーソナルコンピュータやPDA、携帯電話端末や携帯型の画像ビューワ、ディスプレイを備えるプリンタ装置、デジタルフォトフレーム、音楽プレーヤー、ゲーム機、電子ブックリーダー、シール印刷システムなどに適用可能である。
また、上記実施形態ではタッチパネルへのタッチ操作により表示画面上の領域を指定したがこれに限られるものではなく、例えば、マウスによるマウスポインタの操作により画面上の領域(顔領域や瞳領域)を指定するようにしてもよい。また、上記実施形態では、追尾対象の器官として瞳を例示したが、これに限られるものではなく、例えば、鼻、口などの他の器官を追尾対象(AF対象)として指定可能としてもよい。例えば、口を追尾対象(AF対象)とする場合、顔領域を上下方向に半分に分け、下領域を口、上領域を顔というように関連づければよい。
また、撮像装置本体に限らず、有線または無線通信を介して撮像装置(ネットワークカメラを含む)と通信し、撮像装置を遠隔で制御する制御装置にも本発明を適用可能である。撮像装置を遠隔で制御する装置としては、例えば、スマートフォンやタブレットPC、デスクトップPCなどの装置がある。制御装置側で行われた操作や制御装置側で行われた処理に基づいて、制御装置側から撮像装置に各種動作や設定を行わせるコマンドを通知することにより、撮像装置を遠隔から制御可能である。また、撮像装置で撮影したライブビュー画像を有線または無線通信を介して受信して制御装置側で表示できるようにしてもよい。また、撮像装置で撮影したライブビュー画像を有線または無線通信を介して受信して制御装置側で表示できるようにしてもよい。その場合、そのような制御装置は撮像装置のAF機構を制御するAF制御を実行することになる。すなわち、図5A、図5Bにより上述したAF処理は、撮像装置などの外部装置が有するAF機構を制御するためのAF制御であってもよい。
(他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。