(57)【要約】【課題】撮像画像の中で主要被写体を自動的に判定する。【解決手段】撮像時における撮像装置に対するパン、チルト、ズーム、フォーカス等のカメラワークを判定する。そしてカメラワークの判定に基づいて、主要被写体の判定開始タイミングを設定する。判定開始タイミングからの画像データから、該画像データに含まれる被写体のうちで主要被写体を判定する。【選択図】図２
2014109124.tif 000002
【特許請求の範囲】
【請求項１】
撮像時のカメラワークを判定し、該判定に基づいて画像データに対する主要被写体の判定開始タイミングを設定するカメラワーク判定部と、
上記判定開始タイミングからの画像データから、該画像データに含まれる被写体のうちで主要被写体を判定する主要被写体判定部と、を備えた
画像処理装置。
【請求項２】
上記主要被写体判定部は、上記判定開始タイミングからの複数のフレームの画像データにおける被写体位置状態を観測し、特定の位置条件に合致した被写体のうちで主要被写体を判定する
請求項１に記載の画像処理装置。
【請求項３】
上記特定の位置条件は、画像上での所定の位置状態を満たす状況が、複数フレームにおいて平均的、累積的、もしくは継続的に得られることである
請求項２に記載の画像処理装置。
【請求項４】
上記主要被写体判定部は、上記判定開始タイミングからの画像データにおける被写体の合焦状態を観測し、特定の合焦条件に合致した被写体のうちで主要被写体を判定する
請求項１に記載の画像処理装置。
【請求項５】
上記特定の合焦条件に合致する被写体とは、画像データの分割領域毎に計測した合焦度データが所定値以上となっている分割領域に位置する被写体である
請求項４に記載の画像処理装置。
【請求項６】
上記主要被写体判定部は、上記特定の合焦条件に合致する被写体のうちであって、さらに特定の位置条件に合致した被写体のうちで主要被写体を判定する
請求項４に記載の画像処理装置。
【請求項７】
上記カメラワーク判定部は、撮像装置のパン又チルト動作を検出することに応じて判定開始タイミングを設定する
請求項１に記載の画像処理装置。
【請求項８】
上記カメラワーク判定部は、撮像装置のパン又チルト動作の終了を検出することに応じて判定開始タイミングを設定する
請求項１に記載の画像処理装置。
【請求項９】
上記カメラワーク判定部は、撮像装置のズーム動作を検出することに応じて判定開始タイミングを設定する
請求項１に記載の画像処理装置。
【請求項１０】
上記カメラワーク判定部は、撮像装置のズーム動作の終了を検出することに応じて判定開始タイミングを設定する
請求項１に記載の画像処理装置。
【請求項１１】
上記カメラワーク判定部は、撮像装置のパン動作からズーム動作への遷移を検出することに応じて、もしくは該ズーム動作の終了を検出することに応じて判定開始タイミングを設定する
請求項１に記載の画像処理装置。
【請求項１２】
上記カメラワーク判定部は、撮像装置のズーム動作からパン動作への遷移を検出することに応じて、もしくは該パン動作の終了を検出することに応じて判定開始タイミングを設定する
請求項１に記載の画像処理装置。
【請求項１３】
上記カメラワーク判定部は、撮像装置のマニュアルフォーカス動作の終了を検出することに応じて判定開始タイミングを設定する
請求項１に記載の画像処理装置。
【請求項１４】
撮像時のカメラワークを判定して該判定に基づいて画像データに対する主要被写体の判定開始タイミングを設定し、
上記判定開始タイミングからの画像データから、該画像データに含まれる被写体のうちで主要被写体を判定する
画像処理方法。
【請求項１５】
撮像時のカメラワークを判定して該判定に基づいて画像データに対する主要被写体の判定開始タイミングを設定する処理と、
上記判定開始タイミングからの画像データから、該画像データに含まれる被写体のうちで主要被写体を判定する処理と、
を演算処理装置に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、画像内の主要被写体を判定する処理を行う画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年のデジタルスチルカメラ、デジタルビデオカメラには顔検出機能が標準的に備わっており、顔位置・領域に合わせてカメラの各種パラメータ（フォーカス・明るさ等）を最適に合わせるといった機能が搭載されている。【０００３】
一方、撮像画像内で、被写体追尾のターゲットとする「主要被写体」を、ユーザが指定することによって選択する手法が、特許文献１に記載されている。
また例えば上記特許文献２，３，４に開示された技術を用いれば、任意の被写体の全身枠を取り囲んだ被写体追尾が実現できる。
また、オートフォーカス・自動露光などは、撮像画像内の所望の領域を検出・追跡し、その領域がもっとも好適になるように光学系等を制御するような機能も存在する。
これらのように、撮像画像内で、ユーザが主要被写体として指定した画像、例えば顔等の画像領域を追尾したり、顔領域にフォーカスを合わせたりする等の技術が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１６６３０５号公報
【特許文献２】特開２０１１−１４６８２６号公報
【特許文献３】特開２０１１−１４６８２７号公報
【特許文献４】特開２０１１−１６０３７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、撮像画像内での、追尾やフォーカス合わせの目的となる所望の領域、つまり「主要被写体」は、現状は各種検出器から得られる「複数の候補領域」の中から撮像者自身が何らかの方法で一つの候補を選択することで決定される。
例えばカメラを所持した状態で、画面表示されたスルー画（シャッタ操作時点以外に表示される被写体のモニタリング画像）に写されている複数の顔の中からタッチパネルによって任意の顔を選択するというような行為で主要被写体が選定される。あるいはユーザ指定のタイミング（シャッタ半押し等）で所定の領域内に存在する被写体を主要被写体とするなどである。【０００６】
しかしながら実際のユースケースにおいてはこのユーザインターフェースを考えてみると、「撮像者による主要被写体の選択」という行為自体が難しいことが多々ある。
たとえば動き回る被写体に焦点を合わせ続けたいためにこの機能を使いたいのに、ユーザがカメラを構えて被写体を狙いながら指で選択すること自体が難しい。
例を挙げれば、被写体の変化（移動）に対するユーザの反応速度により、指定が困難なこともある。例えば動き回る被写体を、スルー画の画面上でうまく指定できないような場合である。
また、そもそもカメラを手に持って、被写体に向けて被写体を選定しているような状況で、ユーザが画面上で主要被写体を指で選択する行為自体が難しい。特に被写体を追っているような状況、例えばカメラがパンニングやチルティングとしての動きをするようにユーザが撮像方向を変化させている状況では、主要被写体を選択することはほぼ無理に近い。
またタッチパネルを配した表示画面の解像度によって、ユーザにとって被写体が選択しにくいことがある。
また、タッチパネルを配した表示画面上の被写体サイズとユーザの指の大きさ（太さ）によっては、所望の被写体を適切に指定できないこともある。
また、カメラシステム上のタイムラグ、例えば実際の光景と撮像画像のスルー画のタイムラグによって、ユーザが適切に被写体を指定しにくいこともある。【０００７】
さらには動画撮像・記録中にこの操作を行う場合には、主要被写体の選択行為による画揺れがそのまま記録されたり、フレームアウトあるいは一時遮蔽等による追跡消失（失敗）時に再選択するという行為をユーザに強いたりといった状況がある。【０００８】
これらのように、ハンドヘルドタイプのカメラにおいて、主要被写体を選択する行為自体が、それを必要とする多くのユースケースで難しく、撮像者にストレスを与えてしまう。
そこで本開示では、撮像者等のユーザが意図的に被写体を選択する行為を行わなくとも、ユーザの求める対象被写体を主要被写体と判定する技術を実現することを目的とする。
【課題を解決するための手段】
【０００９】
本開示の画像処理装置は、撮像時のカメラワークを判定し、該判定に基づいて画像データに対する主要被写体の判定開始タイミングを設定するカメラワーク判定部と、上記判定開始タイミングからの画像データから、該画像データに含まれる被写体のうちで主要被写体を判定する主要被写体判定部とを備える。
本開示の画像処理方法は、撮像時のカメラワークを判定して該判定に基づいて画像データに対する主要被写体の判定開始タイミングを設定し、上記判定開始タイミングからの画像データから、該画像データに含まれる被写体のうちで主要被写体を判定する。
本開示のプログラムは、上記画像処理装置又は画像処理方法を実現する処理を演算処理装置に実行させるプログラムである。【００１０】
これらの本開示の技術によれば、画像データについて自動的に主要被写体を判定する主要被写体判定処理を行う。
例えばユーザが撮像装置を構えて撮像を行う場合において、通常ユーザは、主要と考える被写体、つまり静止画として撮像目的としたい被写体や、動画として撮像し続けたい被写体が撮像画像内に捉えられるようにカメラワークを行う。なおカメラワークとは、撮像者たるユーザが被写体を撮像画像内に捉えるための動作・操作や、意図する構図や合焦状態を探すための動作・操作のことをいい、具体的にはパンニング、チルティング、ズーミング、マニュアルフォーカス等がある。パンニング（パン）とは、撮像者が手持ちの撮像装置を略水平方向に動かしたり、三脚、雲台等に設置した撮像装置の撮像方向を水平方向に動かすことである。チルティング（チルト）とは、撮像者が手持ちの撮像装置を略上下方向に動かしたり、三脚、雲台等に設置した撮像装置の撮像方向を上下方向に動かすことである。ズーミング（ズーム）とは、撮像者が撮像装置のズームレバー（ワイドキー・テレキー）を操作したりマニュアル操作でズームレンズを移動させて画角を変化させる動作である。マニュアルフォーカスとは、撮像者がフォーカスレンズを移動させて合焦位置を変化させる動作である。
ユーザがこれらのカメラワークを行っているということは、或る目的の被写体を狙って撮像方向、画角、焦点位置等を調整していると考えることができ、つまり撮像画像（例えばスルー画）内に主要と考える被写体が存在すると推定できる。
そこで画像処理装置では、カメラワーク判定を行い、該判定に基づいて画像データに対する主要被写体の判定開始タイミングを設定する。そして判定開始タイミングからの１又
は複数のフレームの画像データから、該画像データに含まれる被写体のうちで主要被写体を判定するようにする。これにより自動的な主要被写体判定として確度の高い判定が可能となる。
【発明の効果】
【００１１】
本開示によれば、撮像画像内で自動的に主要被写体が判定されるため、撮像者等のユーザが、主要被写体を選択する行為を行う必要は無い。従ってユーザの操作性、利便性を向上できる。例えば本開示の画像処理装置を搭載した撮像装置を手に持って撮像を行う場合の操作性の向上、ユーザストレスの低減、さらには自動的な主要被写体判定に応じた各種機能の実現という製品付加価値向上を実現できる。その上で、適切なタイミングで自動的に主要被写体判定が行われることになり、判定確度を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】本開示の実施の形態の画像処理装置の構成例のブロック図である。
【図２】実施の形態の画像処理装置の主要被写体判定処理のフローチャートである。
【図３】実施の形態の撮像装置の構成のブロック図である。
【図４】実施の形態の候補画像抽出及び主要被写体判定の概要の説明図である。
【図５】実施の形態の候補画像枠と判定基準点の距離の説明図である。
【図６】第１の処理例のカメラワーク判定及び主要被写体判定処理のフローチャートである。
【図７】第１の処理例のカメラワーク判定処理のフローチャート及び説明図である。
【図８】実施の形態の各処理例に適用できる主要被写体判定処理のフローチャートである。
【図９】第２の処理例のカメラワーク判定処理の説明図である。
【図１０】第２の処理例のカメラワーク判定処理のフローチャートである。
【図１１】第３の処理例のカメラワーク判定処理のフローチャート及び説明図である。
【図１２】第４の処理例のカメラワーク判定処理の説明図である。
【図１３】第４の処理例のカメラワーク判定処理のフローチャートである。
【図１４】第５の処理例のカメラワーク判定処理の説明図である。
【図１５】第５の処理例のカメラワーク判定処理のフローチャートである。
【図１６】第５の処理例のズーム中判定処理のフローチャートである。
【図１７】第６の処理例のカメラワーク判定処理の説明図である。
【図１８】第６の処理例のカメラワーク判定処理のフローチャートである。
【図１９】第６の処理例のズーム後判定処理のフローチャートである。
【図２０】第７の処理例のカメラワーク判定処理の説明図である。
【図２１】第７の処理例のカメラワーク判定処理のフローチャートである。
【図２２】第７の処理例のパン中判定処理のフローチャートである。
【図２３】第８の処理例のカメラワーク判定処理の説明図である。
【図２４】第８の処理例のカメラワーク判定処理のフローチャートである。
【図２５】第８の処理例のパン後判定処理のフローチャートである。
【図２６】実施の形態の他の撮像装置の構成のブロック図である。
【図２７】第９の処理例の候補画像抽出及び合焦度判定の概要の説明図である。
【図２８】第９の処理例の合焦度判定の説明図である。
【図２９】第９の処理例のカメラワーク判定処理の説明図である。
【図３０】第９の処理例のカメラワーク判定処理のフローチャートである。
【図３１】実施の形態の第９の処理例に適用できる主要被写体判定処理のフローチャートである。
【図３２】第９の処理例での主要被写体判定の説明図である。
【図３３】実施の形態のコンピュータ装置での適用の場合のブロック図である。
【発明を実施するための形態】
【００１３】
以下、実施の形態を次の順序で説明する。
＜１．実施の形態の画像処理装置の構成＞
＜２．実施の形態の撮像装置の構成＞
＜３．主要被写体判定機会／目的等＞
＜４．第１の処理例（パン動作判定）＞
＜５．第２の処理例（パン後判定）＞
＜６．第３の処理例（ズーム動作判定）＞
＜７．第４の処理例（ズーム後判定）＞
＜８．第５の処理例（パン後ズーム動作判定）＞
＜９．第６の処理例（パン後ズーム後判定）＞
＜１０．第７の処理例（ズーム後パン動作判定）＞
＜１１．第８の処理例（ズーム後パン後判定）＞
＜１２．第９の処理例（合焦判定）＞
＜１３．プログラム及びコンピュータ装置への適用＞
＜１４．変形例＞
【００１４】
＜１．実施の形態の画像処理装置の構成＞
図１に、実施の形態の画像処理装置の構成例を示す。
画像処理装置１は、主要被写体判定部２と、カメラワーク判定部３を有する。
【００１５】
カメラワーク判定部３は、撮像時のカメラワークを判定し、該判定に基づいて画像データに対する主要被写体の判定開始タイミングを設定する。カメラワーク判定部３は、撮像時のカメラワークに関する検出情報Ｉｄを入力し、その検出情報Ｉｄに基づいてカメラワークを判定する。そしてその判定結果に応じて、主要被写体判定開始のタイミングを主要被写体判定部２に通知する。
カメラワークとは、撮像者たるユーザが被写体を撮像画像内に捉えるための動作・操作や、意図する構図や合焦状態を探すための動作・操作のことである。具体的にはパンニング（パン）、チルティング（チルト）、ズーミング（ズーム）、マニュアルフォーカス等となる。従って検出情報Ｉｄとは、例えば撮像者のズーム、マニュアルフォーカス等の操作の検出情報であったり、角速度センサ（ジャイロセンサ）や加速度センサ等の撮像装置自体の動きを検出するセンサの検出情報などである。
【００１６】
なお「撮像時のカメラワーク」とは、現時点のカメラワーク又は画像データが過去に撮像された際のカメラワークをいう。例えば当該画像処理装置１が後述するように撮像装置１０に内蔵される装置であったり、或いは撮像装置に接続されてリアルタイムで撮像画像データが供給される機器である場合は、撮像者が現時点で行うカメラワークとなる。また過去に撮像された画像データについての主要被写体判定を行う場合は、その過去の撮像時のカメラワークを指す。
【００１７】
主要被写体判定部２は、入力される画像データＤｇに対し、カメラワーク判定部３で設定された判定開始タイミングに基づいて主要被写体判定処理を実行する。例えば主要被写体判定部２は、主要被写体の判定開始タイミングからの複数のフレームの画像データにおける被写体位置状態を観測し、特定の位置条件に合致した被写体のうちで主要被写体を判定する。また例えば主要被写体判定部２は、判定開始タイミングからの少なくとも１フレームの画像データにおける被写体の合焦状態を観測し、特定の合焦条件に合致した被写体のうちで主要被写体を判定する。主要被写体判定部２はこれらの処理で１又は複数の被写
体を主要被写体と設定する。
そして主要被写体判定部２は判定結果として、主要被写体情報Ｄｍを出力する。
【００１８】
なお、以上の主要被写体判定部２、カメラワーク判定部３を有する画像処理装置１は、演算処理装置としてのＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）で実現できる。
またＣＰＵ等で主要被写体判定部２としての機能を実現し、ＣＰＵと接続された画像処理用ＤＳＰ等、もしくはその連携処理としてカメラワーク判定部３の機能を実現することも考えられる。
【００１９】
この画像処理装置１による主要被写体判定のための処理の流れは図２のようになる。
ステップＦ１としてカメラワーク判定部３が、撮像者によるカメラワークを判定する。そしてステップＦ２として所定のカメラワーク状況を検出したら、カメラワーク判定部３はステップＦ３で判定開始タイミング設定を行う。例えば判定実行フラグをオンに設定する。
これに応じて主要被写体判定部２はステップＦ４で主要被写体判定処理を実行し、所定の条件に合致した被写体を主要被写体と判定する。
そしてステップＦ５で主要被写体判定部２は、主要被写体判定結果である主要被写体情報Ｄｍを出力しアプリケーションプログラム等に受け渡す。
アプリケーションプログラム等では、主要被写体画像が特定されたことに応じた処理を行う。例えば、フォーカス制御、追尾処理、画像効果処理などである。
【００２０】
ステップＦ１〜Ｆ３のカメラワーク判定部３の処理は多様に考えられ、具体的な例は後述する撮像装置１０の処理例で述べるが、次のような状況を判定し、判定開始タイミング設定を行うこととなる。
１．パン動作判定：パン動作が開始されたことを判定し、パン動作中に主要被写体判定処理が行われるように判定開始タイミングを設定する。
２．パン後判定：パン動作が実行され終了されたことを判定し、パン動作終了後に主要被写体判定処理が行われるように判定開始タイミングを設定する。
３．ズーム動作判定：ズーム動作が開始されたことを判定し、ズーム動作中に主要被写体判定処理が行われるように判定開始タイミングを設定する。
４．ズーム後判定：ズーム動作が実行され終了されたことを判定し、ズーム動作終了後に主要被写体判定処理が行われるように判定開始タイミングを設定する。
５．パン後ズーム動作判定：パン動作が実行され終了された後、さらにズーム動作が開始されたことを判定し、そのズーム中に主要被写体判定処理が行われるように判定開始タイミングを設定する。
６．パン後ズーム後判定：パン動作が実行され終了された後、さらにズーム動作が実行され、該ズーム動作が終了されたことを判定し、そのズーム後に主要被写体判定処理が行われるように判定開始タイミングを設定する。
７．ズーム後パン動作判定：ズーム動作が実行され終了された後、さらにパン動作が開始されたことを判定し、そのパン中に主要被写体判定処理が行われるように判定開始タイミングを設定する。
８．ズーム後パン後判定：ズーム動作が実行され終了された後、さらにパン動作が実行され、該パン動作が終了されたことを判定し、そのパン後に主要被写体判定処理が行われるように判定開始タイミングを設定する。
９．マニュアルフォーカス後判定：マニュアルフォーカス動作が実行され終了されたことを判定し、マニュアルフォーカス動作終了後に主要被写体判定処理が行われるように判定開始タイミングを設定する。
以上の各処理の詳細は撮像装置１０の第１〜第９の処理例として後述する。  
【００２１】
図１の画像処理装置１では、以上の図２の例のようにカメラワーク判定及び主要被写体判定が行われることで、カメラワークによって撮像者がターゲットと意図している被写体を推定し、自動的に主要被写体判定を行うことができる。よってユーザの手動操作に頼らない主要被写体判定を行うことができ、主要被写体設定に応じた動作を行う各種電子機器に図１の画像処理装置１が搭載されることで、ユーザの操作性は格段に向上する。
【００２２】
＜２．撮像装置の構成＞
以下では、上記のような画像処理装置を内蔵した撮像装置１０を例に挙げ、主要被写体判定動作について詳しく説明する。
実施の形態の撮像装置１０の構成例を図３に示す。なお、この構成例は後述する第１の処理例〜第８の処理例に適したものである。第９の処理例の場合の撮像装置１０の構成例については後述する。
この撮像装置１０はいわゆるデジタルスチルカメラ或いはデジタルビデオカメラとされ、静止画や動画の撮像／記録を行う機器であり、請求項でいう画像処理装置を内蔵するものである。
【００２３】
図３に示すように撮像装置１０は、光学系１１、イメージャ１２、光学系駆動部１３、センサ部１４、記録部１５、通信部１６、デジタル信号処理部２０、制御部３０、ユーザインターフェースコントローラ（以下、「ＵＩコントローラ」）３２、ユーザインターフェース３３を有する。
【００２４】
光学系１１は、カバーレンズ、ズームレンズ、フォーカスレンズ等のレンズや絞り機構を備える。この光学系１１により、被写体からの光がイメージャ１２に集光される。
イメージャ１２は、例えば、ＣＣＤ（Charge Coupled Device）型、ＣＭＯＳ（Complementary Metal OxideSemiconductor）型などの撮像素子を有する。
このイメージャ１２では、撮像素子での光電変換で得た電気信号について、例えばＣＤＳ(Correlated Double Sampling)処理、ＡＧＣ(Automatic Gain Control)処理などを実行し、さらにＡ／Ｄ(Analog/Digital)変換処理を行う。そしてデジタルデータとしての撮像信号を、後段のデジタル信号処理部２０に出力する。
【００２５】
光学系駆動部１３は、制御部３０の制御に基づいて、光学系１１におけるフォーカスレンズを駆動し、フォーカス動作を実行する。これにより例えばオートフォーカス動作が実行される。
なお、フォーカスレンズに関しては、ユーザの操作によるマニュアルフォーカスとしてのレンズ移動も可能とされている。ユーザはレンズ鏡筒に形成されたフォーカスレンズ移送機構を操作することで合焦位置を任意に設定できる。
また光学系駆動部１３は、制御部３０の制御に基づいて、光学系１１における絞り機構を駆動し、露光調整を実行する。
さらに光学系駆動部１３は、制御部３０の制御に基づいて、光学系１１におけるズームレンズを駆動し、ズーム動作を実行する。ユーザは後述する操作部３５のズームレバーの操作により、ズーム動作を指示できる。これによりユーザは任意の画角状態を得ることができる。
【００２６】
デジタル信号処理部２０は、例えばＤＳＰ等により画像処理プロセッサとして構成される。このデジタル信号処理部２０は、イメージャ１２からのデジタル信号（撮像画像信号）に対して、各種の信号処理を施す。
例えばデジタル信号処理部２０は、前処理部２１、同時化部２２、ＹＣ生成部２３、解像度変換部２４、コーデック部２５、候補検出部２７を備えている。
【００２７】
前処理部２１は、イメージャ１２からの撮像画像信号に対して、Ｒ，Ｇ，Ｂの黒レベルを所定のレベルにクランプするクランプ処理や、Ｒ，Ｇ，Ｂの色チャンネル間の補正処理等を施す。
同時化部２２は、各画素についての画像データが、Ｒ，Ｇ，Ｂ全ての色成分を有するようにするデモザイク処理を施す。
ＹＣ生成部２３は、Ｒ，Ｇ，Ｂの画像データから、輝度（Ｙ）信号および色（Ｃ）信号を生成（分離）する。
解像度変換部２４は、各種の信号処理が施された画像データに対して、解像度変換処理を実行する。
コーデック部２５は、解像度変換された画像データについて、例えば記録用や通信用の符号化処理を行う。
【００２８】
候補検出部２７は、例えばＹＣ生成部２３で得られる撮像画像信号（輝度信号／色信号）を対象として、各フレーム単位（又は間欠的なフレーム毎）での画像解析処理を行い、候補画像を抽出する。即ち、時間軸上で連続的に入力される画像データについて顔画像検出、人体画像検出などを行って、主要被写体の候補となる画像を抽出する。
なお、顔検出、人体検出等は、撮像画像データに対しての画像解析におけるパターンマッチングの手法などで可能であるが、パターンマッチングに用いる辞書さえ差し替えれば他の検出器も原理的には実現可能である。例えば（特定種の）犬検出・猫検出などとして主要被写体の候補画像を抽出してもよい。
また例えばフレーム差分による動体検出の手法で、動体を検出し、当該動体を候補画像とすることも考えられるし、セイレンシ（Saliency）と呼ばれる注視領域抽出の手法を用いてもよい。候補画像の抽出、選定の手法は多様に考えられる。
【００２９】
候補検出部２７は例えば一例としては、顔画像の検出を行い、その顔画像が存在する領域を候補画像枠として抽出する。
抽出した候補画像については、その候補画像枠の位置情報（画面上でのｘ，ｙ座標値、被写体距離の情報等）や、サイズ情報（例えば候補画像枠の幅、高さ、ピクセル数等）を、候補画像情報として制御部３０に受け渡す。なお、ここでは、候補画像となる画像領域の枠を示す情報であることから、候補画像情報のことを「候補画像枠情報」ともいうこととする。
また、候補検出部２７は、画像に平滑化処理、アウトライヤ（outlier）除去等の処理を行って、候補画像枠情報を生成してもよい。
なお候補検出部２７は、この図３の例ではデジタル信号処理部２０で実行される機能構成として示しているが、これは一例であり、制御部３０によって候補検出部２７の処理が実行されてもよい。
【００３０】
制御部３０は、ＣＰＵ、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、フラッシュメモリなどを備えたマイクロコンピュータ（演算処理装置）により構成される。
ＣＰＵがＲＯＭやフラッシュメモリ等に記憶されたプログラムを実行することで、この撮像装置１０全体を統括的に制御する。
ＲＡＭは、ＣＰＵの各種データ処理の際の作業領域として、データやプログラム等の一時的な格納に用いられる。
ＲＯＭやフラッシュメモリ（不揮発性メモリ）は、ＣＰＵが各部を制御するためのＯＳ（Operating System）や、画像ファイル等のコンテンツファイルの他、各種動作のためのアプリケーションプログラムや、ファームウエア等の記憶に用いられる。例えば本例において後述する主要被写体判定のための処理を実行するためのプログラムや、さらに主要被写体判定結果を利用するアプリケーションプログラム等が記憶される。
【００３１】
このような制御部３０は、デジタル信号処理部２０における各種信号処理の指示、ユーザの操作に応じた撮像動作や記録動作、記録した画像ファイルの再生動作、ズーム、フォーカス、露光調整等のカメラ動作、ユーザインターフェース動作等について、必要各部の動作を制御する。
【００３２】
また本実施の形態の場合、制御部３０は、主要被写体判定部３０ａ、カメラワーク判定部３０ｂとしての機能を備え、後述するカメラワーク判定処理や及び主要被写体判定処理を実行する。
この図３の構成の場合、カメラワーク判定部３０ｂは、上述のパン動作判定、パン後判定、ズーム動作判定、ズーム後判定、パン後ズーム動作判定、パン後ズーム後判定、ズーム後パン動作判定、ズーム後パン後判定のいずれかを行う。そして主要被写体判定処理の開始タイミングを設定する。具体的には判定実行フラグ（後述する判定実行フラグFDon）をオンとする。
主要被写体判定部３０ａは、カメラワーク判定部３０ｂの判定結果に基づく開始タイミングの設定に応じて候補画像の中で主要被写体を判定する処理を行う。
【００３３】
ユーザインターフェース３３は、ユーザに対する表示出力や音声出力を実行し、またユーザの操作入力を受け付ける。このため、表示デバイス、操作デバイス、スピーカデバイス、マイクロホンデバイスなどを有する。ここでは、表示部３４，操作部３５を示している。
【００３４】
表示部３４はユーザ（撮像者等）に対して各種表示を行う表示部であり、例えば撮像装置１０の筐体上に形成されるＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electro-Luminescence）ディスプレイ等のディスプレイデバイスを有して形成される。なお、いわゆるビューファインダーの形態で、ＬＣＤや有機ＥＬディスプレイ等を用いて形成されてもよい。
この表示部３４は、上記のディスプレイデバイスと、該ディスプレイデバイスに表示を実行させる表示ドライバとから成る。表示ドライバは、制御部３０の指示に基づいて、ディスプレイデバイス上に各種表示を実行させる。例えば表示ドライバは、撮像して記録媒体に記録した静止画や動画を再生表示させたり、レリーズ（シャッタ操作）待機中に撮像される各フレームの撮像画像データによる動画としてのスルー画（被写体モニタリング画像）をディスプレイデバイスの画面上に表示させる。また各種操作メニュー、アイコン、メッセージ等、即ちＧＵＩ（Graphical User Interface）としての表示を画面上に実行させる。本実施の形態の場合、例えばスルー画や再生画上で、主要被写体判定による判定結果がユーザにわかるような表示も実行される。
【００３５】
操作部３５は、ユーザの操作を入力する入力機能を有し、入力された操作に応じた信号を制御部３０へ送る。
この操作部３５としては、例えば撮像装置１０の筐体上に設けられた各種操作子や、表示部３４に形成されたタッチパネルなどとして実現される。
筐体上の操作子としては、再生メニュー起動ボタン、決定ボタン、十字キー、キャンセルボタン、ズームレバー、スライドキー、シャッターボタン（レリーズボタン）等が設けられる。
またタッチパネルと表示部３４に表示させるアイコンやメニュー等を用いたタッチパネル操作により、各種の操作が可能とされてもよい。
【００３６】
ユーザインターフェース３３の表示部３４等の動作は、制御部３０の指示に従ってＵＩコントローラ３２により制御される。また操作部３５による操作情報は、ＵＩコントローラ３２によって制御部３０に伝達される。
本実施の形態の場合、例えばズームレバー（ワイドキー、テレキー）の操作はカメラワーク判定に用いられる。制御部３０はズームレバーの操作をＵＩコントローラ３２を介して検知し、またその操作情報に応じて光学系駆動部１３を制御してズームレンズ駆動を実行させる。
【００３７】
記録部１５は、例えば不揮発性メモリからなり、静止画データや動画データ等の画像ファイル（コンテンツファイル）や、画像ファイルの属性情報、サムネイル画像等を記憶する記憶領域として機能する。
画像ファイルは、例えばＪＰＥＧ（Joint Photographic Experts Group）、ＴＩＦＦ（Tagged Image File Format）、ＧＩＦ（Graphics Interchange
Format）等の形式で記憶される。
記録部１５の実際の形態は多様に考えられる。例えば記録部１５は、撮像装置１０に内蔵されるフラッシュメモリでもよいし、撮像装置１０に着脱できるメモリカード（例えば可搬型のフラッシュメモリ）と該メモリカードに対して記録再生アクセスを行うカード記録再生部による形態でもよい。また撮像装置１０に内蔵されている形態としてＨＤＤ（Hard Disk Drive）などとして実現されることもある。
また、本例において後述するカメラワーク判定処理及び主要被写体判定処理を実行するためのプログラムは、記録部１５に記憶されてもよい。
【００３８】
通信部１６は、外部機器との間のデータ通信やネットワーク通信を有線又は無線で行う。
例えば外部の表示装置、記録装置、再生装置等の間で撮像画像データ（静止画ファイルや動画ファイル）の通信を行う。
また、ネットワーク通信部として、例えばインターネット、ホームネットワーク、ＬＡＮ（Local Area Network）等の各種のネットワークによる通信を行い、ネットワーク上のサーバ、端末等との間で各種データ送受信を行うようにしてもよい。
【００３９】
センサ部１４は各種センサを包括的に示している。センサ部１４の各種センサは、それぞれ検出した情報を制御部３０に伝達する。制御部３０は、センサ部１４で検出された情報を用いて各種制御を行うことができる。
センサ部１４としては例えば手ぶれ、或いは撮像装置１０の姿勢や移動（パン移動、チルト移動等）等、撮像装置１０の全体の動きを検出するためのジャイロセンサ（角速度センサ）、加速度センサ等が設けられる。例えば制御部３０は、ジャイロセンサの検出信号により、撮像装置１０がパン又はチルトされていることを検知できる。
またセンサ部１４として、光学系１１におけるズームレンズの位置を検出するズームレンズ位置センサ、フォーカスレンズの位置を検出するフォーカスレンズ位置センサが設けられる。或いはフォーカスレンズのマニュアル操作（鏡筒リングの操作）を検出するセンサが設けられる場合もある。制御部３０は、フォーカスレンズ位置センサの検出情報や、フォーカスレンズのマニュアル操作を検出するセンサの情報により、ユーザのマニュアルフォーカス操作を検知できる。
またセンサ部１４として、メカアイリス（絞り機構）の開口量を検出するセンサが設けられる場合もある。
またセンサ部１４として、露光調整等のための外部照度を検出する照度センサ、さらには被写体距離を測定する測距センサが設けられてもよい。
【００４０】
このような撮像装置１０において、図１で説明したような画像処理装置１の構成部分は次のようになる。
図１の画像処理装置１における主要被写体判定部２に相当する構成は、撮像装置１０の制御部３０において主要被写体判定部３０ａとしてソフトウエアにより実装される。またカメラワーク判定部３に相当する構成は、制御部３０におけるカメラワーク判定部３０ｂ
としてソフトウエアにより実装される。
制御部３０は、請求項でいうプログラムに基づく処理を実行することで、請求項でいう画像処理方法としての動作を実行制御することになる。
【００４１】
＜３．主要被写体判定機会／目的等＞
本実施の形態では、後述の第１〜第９の処理例として説明するように主要被写体判定が行われるが、撮像装置１０において主要被写体判定を行う機会や目的等について説明しておく。
【００４２】
まず主要被写体判定結果の利用例を述べる。
主要被写体判定は、例えばユーザ（撮像者）がシャッタタイミング（レリーズタイミング）を狙っている際に実行されるが、制御部３０は主要被写体を自動的に判定した後、次のような処理を行うことができる。
【００４３】
・追尾処理
撮像される各フレームにおいて設定された主要被写体を追尾する。例えばスルー画表示上でユーザに主要被写体を明示して、ユーザの画角調整（例えばカメラを手に持っている状態における被写体決め）の用に供する。
なお、主要被写体の提示としては、表示部３４でのスルー画表示上で主要被写体の枠を強調表示することが考えられる。また、強調表示等は、判定直後の一定期間でもよいし、スルー画内に主要被写体が存在する限り実行させてもよい。
【００４４】
・フォーカス合わせ
主要被写体にオートフォーカス制御する。また、追尾処理と合わせて、主要被写体が動き回っていても、フォーカスが、その主要被写体に追尾して調整されるようにする。
・露光調整
主要被写体の明るさ（輝度）に基づいて自動露光調整を行う。
・指向性調整
撮像（例えば動画撮像）とともにマイクロホンにより音声収音を行う場合、画角空間内での主要被写体の方向に応じて、指向性調整を行う。
・ズーム制御
主要被写体に対応したオートズーム制御する。例えば主要被写体が常に所定以上のサイズで撮像画像で映り込むように自動的なズームレンズ駆動を行う。追尾処理と合わせて、主要被写体との距離が変化に応じたズームによる画角調整を行うようにしてもよい。
・録画スタート制御
動画撮像の開始のトリガーとする。例えば主要被写体が決定されたことに応じて、動画撮像記録を開始する。
【００４５】
また、撮像画像信号に対する各種信号処理にも用いることができる。
・画像効果処理
撮像される各フレームにおいて主要被写体の領域にのみ、画質調整、ノイズリダクション、肌色調整などの画像処理を加える。
或いは、主要被写体の領域以外に、画像効果、例えばモザイク処理、ぼかし処理、塗りつぶし処理等を加えることも考えられる。
【００４６】
・画像編集処理
撮像画像、もしくは記録された画像について、フレーミング、クロッピング等の編集処理を加える。
例えば主要被写体を含むフレーム内の一部領域の切り出しや、拡大等の処理を行うことができる。
また、撮像画像データのうちで、主要被写体が画像の中心に配置されるように画像周辺部のカット等を行い、構図調整を行うことができる。
【００４７】
これらは一例に過ぎないが、これら以外にも、アプリケーションプログラムや撮像装置内の自動調整機能が、設定した主要被写体を利用する処理は各種考えられる。
【００４８】
次にカメラワーク判定及び主要被写体判定処理をどのような時点で実行するかも各種考えられる。
例えば撮像装置１０が電源オンとされて、撮像を行っているとき（表示部３４にスルー画を表示している期間）は、常時カメラワーク判定と、それに基づいたタイミングでの主要被写体判定処理を行っていてもよい。
また、主要被写体を判定したら、追尾処理を行う場合、追尾が外れた時点で、再度カメラワーク判定及び主要被写体判定処理を行うようにしてもよい。
また、ユーザ操作によりカメラワーク判定及び主要被写体判定処理が開始されるようにしてもよい。またユーザが、判定実行モードを選択しているときに常時カメラワーク判定及び主要被写体判定処理が実行されたり、追尾が外れたときに実行されるなどとしてもよい。またユーザ操作にかかわらず、自動的にカメラワーク判定及び主要被写体判定処理が起動されることも考えられる。
【００４９】
主要被写体判定処理を行うことによる効果としては次のとおりである。
先に述べたように、撮像者が撮像装置１０を構えて被写体を狙っているときには、そもそも主要被写体を指定するような操作は難しい。
特にパンニングやチルティングのように撮像方向を継続的に一定方向に変化させている場合、或いは一定方向ではなくとも、撮像方向を変化させている場合は、主要被写体を指定する操作はユーザにとって困難である。
また何度も主要被写体を指定する行為は面倒である。
主要被写体判定を自動的に実行することによれば、このようなことが解消され、ユーザストレスの低減効果が得られる。
またユーザが通常使用するデジタルスチルカメラ、携帯電話機内蔵カメラなど、ユーザが携帯して使用する撮像装置１０としては、表示部３４も小型であり、ユーザが主要被写体を画面上で指定する操作を行ったとしても、正確に行いにくい。本実施の形態のように自動判定することで、誤指定ということもなくなる。
【００５０】
また撮像装置１０が自動的に主要被写体判定を行うことによれば、ユーザにとっては、被写体を狙って撮像装置１０を構えていたり、被写体を追って撮像方向を変化させていたりする状況で、主要被写体判定が実行されることとなり、ユーザが装置に感じるインテリジェント感の向上や、付加価値の向上という効果が得られる。
また撮像装置１０を自然に用いていれば主役を撮れる、という感覚で使用できるため、撮像機会の増加、対応ユースケースの増加ということができ、使いやすいカメラをユーザに提供できることにもなる。
【００５１】
以上のことから、ハンドヘルドタイプのカメラとして、主要被写体判定を自動的に行う本実施の形態の撮像装置１０は特に好適となる。
【００５２】
＜４．第１の処理例（パン動作判定）＞
実施の形態の撮像装置１０の第１の処理例としてカメラワーク判定及び主要被写体判定
の動作を説明する。これはパン動作中に主要被写体判定を実行する例である。即ちカメラワーク判定部３０ｂは、ユーザが撮像装置１０を略水平方向に移動させるパン動作を判定する。そしてそのパン動作中に、主要被写体判定部３０ａで主要被写体判定処理が行われるようにする。
主要被写体判定処理としては、画像データ内で候補画像を抽出し、安定的に所定の判定基準点に近い状態にある候補画像を主要被写体と判定する例を挙げる。
【００５３】
図４は、図３に示した候補検出部２７で行われる候補画像枠の抽出動作と、制御部３０の動作を模式的に示したものである。
この図４には、撮像装置１０の光学系１１，イメージャ１２の動作によりデジタル信号処理部２０に入力される撮像画像信号の各フレームＦＲ１，ＦＲ２，ＦＲ３・・・を示している。候補検出部２７は、このような順次入力される連続した各フレームのそれぞれ（或いは間欠的な各フレームについて）について候補画像の検出を行う。例えば図示のように、フレームＦＲ１について、３人の人が存在していた場合、それぞれの顔画像部分を候補画像として抽出し、その候補画像枠Ｅ１，Ｅ２，Ｅ３についての候補画像枠情報を出力する。例えば候補画像枠Ｅ１の候補画像枠情報は、例えばこの候補画像枠Ｅ１の画像内での位置情報（ｘ，ｙ位置情報、被写体距離情報）、サイズ情報（枠の幅、高さ、ピクセル数）、属性情報等である。
候補検出部２７は、このような候補画像枠情報を、候補画像枠Ｅ２，Ｅ３についても生成し、制御部３０（主要被写体判定部３０ａ）に受け渡す。
【００５４】
後続のフレームＦＲ２、ＦＲ３・・・についても同様に、候補検出部２７は候補画像の抽出を行い、それぞれの候補画像枠について、候補画像枠情報を生成して制御部３０（主要被写体判定部３０ａ）に受け渡していく。
一方で制御部３０（カメラワーク判定部３０ｂ）は、検出情報Ｉｃに基づいてカメラワーク（例えばパン、ズーム）を検出し、それに応じて判定開始タイミングを設定する。具体的には判定実行フラグFdonを「１」とする。これに応じて、制御部３０（主要被写体判定部３０ａ）は、候補画像枠情報を用いた主要被写体判定処理を実行する。
【００５５】
制御部３０（主要被写体判定部３０ａ）は、各フレームの候補画像枠情報を取り込む度に、各候補画像枠の位置状態として、判定基準点との距離を算出する。
図５Ａに判定基準点ＳＰの例を示している。これは画像中央を判定基準点ＳＰとした例である。判定基準点ＳＰのｘｙ座標値を（Ｃｘ，Ｃｙ）とする。
例えばフレームＦＲ１の時点で、候補画像枠Ｅ１，Ｅ２，Ｅ３のそれぞれの候補画像枠情報が取り込まれた場合、制御部３０は、図示する各候補画像枠Ｅ１，Ｅ２，Ｅ３の重心Ｇから判定基準点ＳＰの距離Diff１、Diff２、Diff３を算出する。
【００５６】
なお、判定基準点ＳＰが画面中央とされるのは一例である。
例えば図５Ｂのように、中央よりやや左上方の位置に判定基準点ＳＰを設定してもよい。例えば静止画の構図を考えた場合、このような中央でない位置に主たる被写体を配置するとよい場合が多々考えられるからである。
この図５Ｂの場合も、各候補画像枠（例えばＥ４，Ｅ５）と判定基準点ＳＰの距離（例えばDiff４、Diff５）を算出するようにする。
【００５７】
判定基準点ＳＰは、例えば図５Ａ、図５Ｂのような位置に固定的に設定していてもよいし、ユーザが表示画面上でのタッチ操作などにより任意に指定できるようにしてもよい。また表示部３４の画面上でユーザにいくつかの判定基準点の候補点を提示し、ユーザが選択できるようにしてもよい。さらには、画像内容、画像解析結果などに応じて制御部３０が構図などを考慮して最適な位置を判定し、自動設定することも考えられる。
即ち判定基準点ＳＰについては、 
・画像中央位置、或いは中央よりずれた位置などとして、予め決められた固定的な位置に設定される。
・ユーザが任意に指定する。
・いくつかの候補点をユーザに提示し、ユーザが選択することで設定される。
・制御部３０が画像内容に応じて最適位置を判定し、自動的に可変設定する。
などが考えられる。
【００５８】
候補画像枠Ｅ（ｎ）についての位置状態としての距離Diff（ｎ）は、各フレームの時点で求めていく。
制御部３０（主要被写体判定部３０ａ）は、パン動作中に、各候補画像枠Ｅ（ｎ）についての位置状態としての距離Diff（ｎ）を監視し、平均的、累積的、又は継続的に判定基準点ＳＰに近い候補画像枠を判定し、それを主要被写体とする。主要被写体判定部３０ａは、この処理をカメラワーク判定部３０ｂによるパン動作の検知に応じて行う。この動作を図６に示す。
【００５９】
まず図６Ａは、カメラワーク判定部３０ｂによるパン動作の検出及び判定実行フラグFdonの処理を示している。カメラワーク判定部３０ｂは、通常状態（期間ｔnor）からカメラワーク判定を実行している。ここでいう通常状態とは、ユーザがカメラを通常に持ったり構えたりしている状態をいう。つまり通常状態とはパン、チルト、ズーム、マニュアルフォーカスのいずれも実行していない期間とし、これを説明上、通常期間ｔnorと呼ぶことする。
或る時点でユーザが撮像装置１０を略水平方向に移動させるパン動作が行われたとする（パン期間ｔpan）。カメラワーク判定部３０ｂは、パンが開始されてからのパン判定期間Tponにパン動作を検知し、パン実行フラグFponを「１」とする。第１の処理例ではパン実行フラグFponに応じて判定実行フラグFdonを「１」にセットする。
判定実行フラグFdon＝１となることに応じて、主要被写体判定部３０ａでの主要被写体判定処理が開始される。なお、このタイミングで開始される主要被写体判定処理とは、判定のための実質的な処理を指す。主要被写体判定処理としてのルーチンの起動はそれ以前であっても良い。例えば後述の図８の処理例では、候補画像枠情報の取り込みのみは、判定実行フラグFdon＝１となる前から行われている例としている。もちろん候補画像枠情報の取り込みも含めて、判定実行フラグFdon＝１となることに応じて開始されるものとしてもよい。
【００６０】
図６Ｂは、パン動作中に、仮に候補画像枠Ｅ１，Ｅ２，Ｅ３が、ある期間継続してフレーム（ＦＲ１，ＦＲ２・・・）内に存在し続けたとして、算出される距離Diff１、Diff２、Diff３の変動の様子を示している。例えば撮像者が撮像装置１０で、ある期間、３人の被写体をとらえていた場合を想定している。３人の各人が、それぞれ動いていたり、或いは撮像者が撮像装置１０の被写体方向を動かしていたり、手ぶれがあるなどにより、時間軸上では、算出される各距離Diff１、Diff２、Diff３は変動している。
【００６１】
後述の図８の処理例では、判定基準点ＳＰに近い状態の累積時間で主要被写体判定を行う。このため、「近い／近くない」の判定に、距離閾値Thr-diffを用いる。
図６Ｃには、距離Diff１、Diff２、Diff３の各時点での、距離閾値Thr-diff以内か否かの判定結果を示している。距離Diff（ｎ）が距離閾値Thr-diff以下であれば、近い＝「１」とされることとする。この判定結果「１」を各時点で累積加算していった値が時間閾値を越えたものが主要被写体と判定される。
【００６２】
判定開始から判定終了までの期間は具体的な処理例によって異なる。後述の図８の処理例では、距離閾値Thr-diff以下の判定結果「１」の累積加算値は、その時点までの安定的に判定基準点ＳＰに近接した状態を示す累積時間となるが、その累積時間が所定値（後述
のカウント閾値Ｔｈｔ）に達した候補画像が発見された場合が主要被写体判定の終了のタイミングとなる。
例えば図６Ｃの例では、候補画像枠Ｅ３は、継続して「１（＝判定基準点ＳＰに近い）」と判定されるが、この累積加算値が或る所定値に達した時点で、判定が終了され、候補画像枠Ｅ３が主要被写体と判定されることとなる。
【００６３】
具体的な処理例を説明する。まず図７で制御部３０（カメラワーク判定部３０ｂ）によるカメラワーク判定処理を説明する。これはパン動作中を検出して判定実行フラグFdonをオンする処理となる。
図７Ｂはパン動作中であることの検出動作を示している。センサ部１４におけるジャイロセンサの出力（検出信号Ｓｇ）は、特に大きな動きがなければ基準レベルＳｃ（例えばゼロレベル）近辺となっているが、パン動作中（例えばユーザが撮像装置１０を略水平方向に動かしている場合）は、検出信号Ｓｇはある正又は負の或る程度のレベルで略一定の値を継続的に示すことになる。そこで基準レベルＳｃを中心として、正負の値の範囲で閾値範囲Ｓｔｈを設定する。
通常期間ｔnorは、検出信号Ｓｇは基準レベルＳｃの近辺となるが、パン期間ｔpanでは閾値範囲Ｓｔｈを越えるレベルが継続して観測されることとなる。
そこで、検出信号Ｓｇが閾値範囲Ｓｔｈを越えた状態が、パン判定期間Tponとして設定したある程度の時間以上継続したら、パンが実行されていると判断し、パン実行フラグFponを「１」とする。これに応じて主要被写体判定開始を制御する判定実行フラグFdonを「１」とする。判定実行フラグFdon＝１の際に主要被写体判定処理が行われる。
なお、パン判定期間Tponは、瞬間的に検出信号Ｓｇが高くなった状態をパン動作と誤判定しないために設けられる期間である。つまり検出信号Ｓｇが高い値の状態の継続性をもってパンと判定するための期間である。
【００６４】
この判定実行フラグFdonの処理が図７Ａのように行われる。制御部３０（カメラワーク判定部３０ｂ）はこの図７Ａの処理を繰り返すことでパン動作を検出する。
制御部３０は、ステップＦ２００でセンサ部１４のジャイロセンサで検出される角速度情報を検出信号Ｓｇとして取得する。
ステップＦ２０１で制御部３０は、Ｓｇ＞Ｓｃ＋Ｓｔｈ／２、又はＳｇ＜Ｓｃ−Ｓｔｈ／２のいずれかが成り立つか否かを判定する。即ち図７Ｂに示した基準レベルＳｃ、閾値範囲Ｓｔｈの値を用いて、検出信号Ｓｇが正又は負の値として閾値範囲Ｓｔｈを越えた値になっているか否かを判定する処理である。
【００６５】
検出信号Ｓｇが閾値範囲Ｓｔｈを越えていなければステップＦ２０６に進み、カウント値PanOnCntをゼロとし、またパン実行フラグFponをゼロとする。なお、カウント値PanOnCntは、パン判定期間Tponを越えたか否かを判定するためのカウント値である。
そしてステップＦ２０７でパン実行フラグFponの値を判定実行フラグFdonに代入する。つまりこの場合は、判定実行フラグFdon＝０となる。
【００６６】
検出信号Ｓｇが閾値範囲Ｓｔｈを越えている場合は制御部３０はステップＦ２０１からＦ２０２に進み、カウント値PanOnCntをインクリメントする。
そしてステップＦ２０３で制御部３０は、カウント値PanOnCntとパン判定期間Tponを比較する。カウント値PanOnCntが、パン判定期間Tponに達していなければ、ステップＦ２０５でパン実行フラグFponをゼロとする。そしてステップＦ２０７でパン実行フラグFponの値を判定実行フラグFdonに代入する。つまりこの場合も、判定実行フラグFdon＝０である。
【００６７】
ステップＦ２０３でカウント値PanOnCntがパン判定期間Tponに達したと判定された場合、制御部３０はステップＦ２０４でパン実行フラグFpon＝１とする。つまりパン判定期間 Tponの間、継続して検出信号Ｓｇが閾値範囲Ｓｔｈを越えた状態が確認されたことになり、これをもってパンが実行されていると判定する。
そしてステップＦ２０７でパン実行フラグFponの値を判定実行フラグFdonに代入する。この場合、判定実行フラグFdon＝１となる。つまりパン動作中であることで、主要被写体判定処理が開始される状態となる。
【００６８】
なお、パンが継続されている間は、このステップＦ２０３→Ｆ２０４→Ｆ２０７と進む処理が繰り返されることになり、判定実行フラグFdon＝１の状態が維持される。
その後、パン動作が終了すると、ステップＦ２０１→Ｆ２０６→Ｆ２０７と進む処理となるため、判定実行フラグFdon＝０となる。
【００６９】
図８に制御部３０（主要被写体判定部３０ａ）による主要被写体判定処理を示す。
この例では、主要被写体判定に関し、制御部３０は候補画像枠情報の取り込みについては継続して行っていき、上述の判定実行フラグFdon＝１となることに応じて、実質的な判定処理（ステップＦ１０５〜Ｆ１１５）を開始する処理例としている。
制御部３０は例えば１フレームタイミング毎にステップＦ１０１〜Ｆ１０４及びＦ１１６（判定実行フラグFdon＝１の期間はステップＦ１０１〜Ｆ１１６）の処理を行う。
【００７０】
制御部３０は主要被写体判定処理を開始すると、まず初期設定としてステップＦ１００で変数ＴＳＦ＝０とし、またカウント値Cnt（ｎ）＝０とする。
変数ＴＳＦとは、主要被写体設定済みか否かを示すフラグである。ＴＳＦ＝「０」は、主要被写体が未判定の状態を示すこととなる。
またカウント値Cnt（ｎ）は、図６で説明した距離Diffの距離閾値Thr-diffとの比較判定結果の値を加算するカウンタの値である。
【００７１】
なお「ｎ」は、自然数１，２，３・・・を表し、カウント値Cnt（ｎ）は、候補画像枠Ｅ１，Ｅ２，Ｅ３のように、検出された候補画像枠Ｅ（ｎ）にそれぞれ対応するカウント値としている。例えば３つの候補画像枠Ｅ１，Ｅ２，Ｅ３が検出される場合、カウント値として、Cnt１、Cnt２、Cnt３が用いられる。フローチャートの説明上、カウント値Cnt（ｎ）についての処理とは、例えばCnt１、Cnt２、Cnt３のそれぞれを対象とする処理を示しているものと理解されたい。
また、同様に距離Diff（ｎ）とは、３つの候補画像枠Ｅ１，Ｅ２，Ｅ３の判定基準点ＳＰからの距離Diff１、Diff２、Diff３を総称して表すものとしており、距離Diff（ｎ）についての処理とは、例えば距離Diff１、Diff２、Diff３のそれぞれについての処理という意味で用いている。
近接フラグFlg（ｎ）、オフセット値OFS（ｎ）も同様とする。
【００７２】
また、候補画像枠Ｅ（ｎ）は候補画像枠Ｅ１，Ｅ２，Ｅ３・・・を表すが、これは複数フレームにわたって、被写体別に区別されることが望ましい。例えば候補検出部２７が顔を抽出する例でいうと、人物Ａ、人物Ｂ、人物Ｃが被写体となっている場合、各フレームにおいて共通に、人物Ａの顔画像部分が候補画像枠Ｅ１、人物Ｂの顔画像部分が候補画像枠Ｅ２、人物Ｃの顔画像部分が候補画像枠Ｅ３というようにされる。もし途中の或るフレームで、人物Ｄのみが被写体に入っている状態になったとしても、人物Ｄの顔画像部分は候補画像枠Ｅ４とされる。従って候補検出部２７は、単に「顔」を検出するのみでなく、個体（個人）判別も行うこととするとよい。
【００７３】
ステップＦ１０１で制御部３０は、候補検出部２７から或るフレームについての候補画像枠情報を取り込む。例えば各候補画像枠Ｅ（ｎ）について、位置情報として、画像データの二次元（ｘ−ｙ）座標値としてのｘ値、ｙ値や、サイズ情報として候補画像枠の幅ｗ、高さｈの情報を取得する。
なお、候補画像枠情報には被写体距離（上記二次元（ｘ−ｙ）座標平面に直交するｚ軸方向の値で表される、カメラ位置に対する被写体の相対的な距離：ｚ値）やピクセル数等も含まれていてもよい。
【００７４】
ステップＦ１０２で制御部３０は、各候補画像枠Ｅ（ｎ）について、重心Ｇの座標を算出する。
例えば候補画像枠情報によっては、候補画像枠のｘ，ｙ座標値として、方形の候補画像枠の左上頂点の座標値が与えられるとする。このｘ，ｙ座標値を（E(n)_x，E(n)_y）とする。また図５Ａに示したように、ｘ，ｙ座標は画面平面の左上を原点Ｏ（ｘ，ｙ座標値が（０，０））とする。
また候補画像枠Ｅ（ｎ）の幅ｗをE(n)_w、高さｈをE(n)_hとする。
そして候補画像枠Ｅ（ｎ）の重心Ｇの座標値を（E(n)_cx，E(n)_cy）とすると、重心Ｇの座標値は、
E(n)_cx＝E(n)_cx＋E(n)_w／２
E(n)_cy
＝E(n)_cy＋E(n)_h／２
として求められる。
【００７５】
ステップＦ１０３で制御部３０は、各候補画像枠Ｅ（ｎ）の重心Ｇから、判定基準点ＳＰまでの距離Diff（ｎ）を算出する。判定基準点ＳＰの座標値（Ｃｘ，Ｃｙ）として、
Diff（ｎ）＝√｛（E(n)_cx−Ｃｘ）２＋（E(n)_cy−Ｃｙ）２｝
で求められる。
【００７６】
ステップＦ１０４で制御部３０は、判定実行フラグFdon及び変数ＴＳＦを確認する。変数ＴＳＦ＝０であって、かつ判定実行フラグFdon＝１であればステップＦ１０５に進む。これ以外の場合は実質的な判定処理（Ｆ１０５〜Ｆ１１５）を行わずにステップＦ１１６に進む。
例えば主要被写体判定が行われた後であったり、動作モード設定等で主要被写体判定処理が不要な期間などは、変数ＴＳＦ＝１とされていることで、主要被写体判定処理が行われない。
またユーザ操作や自動的な起動判断で、必要時に図６の主要被写体判定処理を実行するようにする場合などではステップＦ１０４の処理は不要としてもよい。
さらに本例の場合、パン動作中に主要被写体判定を行うものとするため、判定実行フラグFdon＝０であるときは、主要被写体判定処理を行わない。
【００７７】
変数ＴＳＦ＝０であってかつ判定実行フラグFdon＝１である場合、制御部３０はステップＦ１０５、Ｆ１０６、Ｆ１０７で、各候補画像枠Ｅ（ｎ）が距離Diff（ｎ）に関して所定の条件を満たしているか否かを確認する。
即ち判定基準点ＳＰまでの距離Diff（ｎ）が、判定基準点ＳＰに近いか近くないかを、距離閾値Thr-diffを用いて判定する。
このため制御部３０はステップＦ１０５で、各候補画像枠Ｅ（ｎ）の判定基準点ＳＰまでの距離Diff（ｎ）と距離閾値Thr-diffを比較し、Diff（ｎ）＜Thr-diffであればステップＦ１０６で近接フラグFlg（ｎ）＝１（近い）とする。またDiff（ｍ）＜Thr-diffでなければステップＦ１０７で近接フラグFlg（ｎ）＝０（近くない）とする。
近接フラグFlg（ｎ）は図６Ｃで説明した「１」「０」の判定結果に相当する。
【００７８】
続いてステップＦ１０８、Ｆ１０９、Ｆ１１０で制御部３０は、近接フラグFlg（ｎ）が「１」であるか「０」であるかによりカウント処理用のオフセット値OFS（ｎ）を設定する。
例えば制御部３０は、近接フラグFlg（ｎ）＝１であればステップＦ１０９でオフセット値OFS（ｎ）＝αとする。αはカウンタをインクリメントする所定値である。例えばα
＝１とする。
また制御部３０は、近接フラグFlg（ｎ）＝０であればステップＦ１１０でオフセット値OFS（ｎ）＝βとする。βはカウント値をキープ、又はカウント値をデクリメントするための所定値である。カウント値をキープする場合は、β＝０とする。カウンタをデクリメントする場合は、例えばβ＝−１とする。
【００７９】
そしてステップＦ１１１で制御部３０は、判定基準点ＳＰへ近接した状態が安定的に観測されているか否かの判定のためのカウンタのカウント値CNT（ｎ）の処理を行う。具体的には、
CNT（ｎ）＝CNT（ｎ）＋OFS（ｎ）
とする。
上記のステップＦ１０９でα＝１とされて、オフセット値OFS（ｎ）が設定される場合、カウント値CNT（ｎ）はインクリメントされる。
ステップＦ１１０でβ＝０（又はβ＝−１）とされて、オフセット値OFS（ｎ）が設定される場合、カウント値CNT（ｎ）はキープ（又はデクリメント）される。
このようなカウント値CNT（ｎ）は、近接状態が検出された際にインクリメントされるため、候補画像枠Ｅ（ｎ）の被写体が、判定基準点ＳＰに近い状態が検出された期間の長さに相当する値となる。つまりカウント値Cnt（ｎ）は、候補画像枠Ｅ（ｍ）が判定基準点ＳＰに「近い」状態の頻度を表す値となる。
【００８０】
次にステップＦ１１２で制御部３０は、各候補画像枠Ｅ（ｎ）のカウント値Cnt（ｎ）が、カウント閾値Ｔｈｔに達しているか否かを確認する。
Cnt（ｎ）≧Ｔｈｔでなければ、つまり各候補画像枠Ｅ（ｎ）のカウント値Cnt（ｎ）のいずれもが、カウント閾値Ｔｈｔに達していなければ、ステップＦ１１３で変数ＴＳＦ＝０のままとし、ステップＦ１１６で判定終了とは判断せず、ステップＦ１０１に戻る。この場合、次のフレームについて入力される候補画像枠情報に基づいて、ステップＦ１０１以降の処理を上記同様に実行していく。
【００８１】
なお、ステップＦ１１６は、変数ＴＳＦ＝０であれば、まだ主要被写体の判定は完了していないとして判定処理継続とし、変数ＴＳＦ＝１であれば、主要被写体判定は完了したとする。先に述べたステップＦ１０４で変数ＴＳＦ＝１が検出された場合、そのまま判定終了となる。
詳しい説明は省略するが、本例の自動的な主要被写体判定とは並行して、例えばユーザが主要被写体を表示部３４の画面上のタッチ操作、或いは被写体を画面上に所定位置に合わせてシャッタボタンを半押しするなどの操作として、主要被写体選択ができるようにしてもよい。図８の処理の実行中に、ユーザがこのような指定操作を行った場合、ユーザの操作を優先することが好ましい。そこで、そのようなマニュアル操作として主要被写体設定が行われた場合、変数ＴＳＦ＝１とする。この場合、図８の処理はステップＦ１０４，Ｆ１１６の判断により、処理を終了（中断終了）することとすればよい。
【００８２】
主要被写体判定は、或る時間長をもって判定されるため、ある程度の時間（フレーム数）での候補画像枠情報についての処理を経なければ、上記のようにステップＦ１１６からステップＦ１０１に戻って処理が繰り返される。
【００８３】
ここで、例えば図６Ｂで示したように或る候補画像枠Ｅ３が、非連続的でもよいが、複数のフレームのうちで高い頻度で、撮像画像上で判定基準点ＳＰに近い位置に存在する状況があったとする。すると時間が進むにつれ、候補画像枠Ｅ３のカウント値Cnt３のステップＦ１１１でのインクリメントの機会が多く発生し、カウント値Cnt３が、カウント値Cnt１、Cnt２よりも早く進む。
すると或る時点で、カウント値Cnt３がカウント閾値Ｔｈｔに最初に到達することとな
る。
このような場合、制御部３０は処理をステップＦ１１２からＦ１１４に進める。
【００８４】
ステップＦ１１４で制御部３０は、カウント値Cnt（ｎ）がカウント閾値Ｔｈｔに達した候補画像枠Ｅ（ｎ）を主要被写体と判定し、主要被写体設定を行う。そして変数ＴＳＦ＝１とする。つまり、パン動作中に、安定的に判定基準点ＳＰ（例えば画像の中央）に近い状態にある候補画像の被写体が主要被写体に設定されることとなる。
そしてステップＦ１１５で主要被写体情報が出力され、例えば主要被写体情報を用いるアプリケーションプログラムや制御プログラムに受け渡される。
【００８５】
この場合ステップＦ１１６で判定終了とされる。即ち例えば候補画像枠Ｅ１が主要被写体と設定されるなどして、図８の主要被写体判定処理が完了することとなる。
なお、この処理例では変数ＴＳＦ＝１となるまで続けられることになるが、パン動作が終了されると実質的な判定処理（ステップＦ１０５〜Ｆ１１５）は終了となる。
図７Ａのカメラワーク判定処理は継続して行われており、パン動作が終了されるとステップＦ２０６でパン実行フラグFpon＝０となり、ステップＦ２０７で判定実行フラグFdon＝０とされる。つまり図７Ｂのようにパン後に通常期間ｔnorに至ると判定実行フラグFdon＝０となる。その場合、図８の処理はステップＦ１０４からＦ１１６に進むこととなるためである。
このためパン動作が終了されるまでの間にカウント値Cnt（ｎ）がカウント閾値Ｔｈｔに達した候補画像枠Ｅ（ｎ）が観測されない場合は、主要被写体判定はできなかったということとなる。
なお、図８には示していないが、このようにパン動作が終了されて判定実行フラグFdon＝０となったことで判定が行われなかった場合は、カウント値Cnt（ｎ）はゼロにリセットするとよい。次のパン期間にカウント値を引き継がないようにするためである。一方で、候補画像枠Ｅ（ｎ）の個人対応が継続できるのであれば、カウント値Cnt（ｎ）はそのまま維持しておき、次のパン期間にカウント値を引き継がせることも考えられる。
【００８６】
以上の第１の処理例によれば、パン動作中に判定基準点ＳＰに近い被写体が主要被写体と判定される。ユーザは撮像したい被写体を撮像画像内に捉えながら撮像装置１０をパンニングさせることが多い。例えば動いている被写体を追っているような場合である。そのためパン中に判定基準点ＳＰに近い被写体は、ユーザが目的とする被写体である確率が高く、主要被写体判定として適切な判定が行われる確率を高めることができる。またこのような処理により、撮像者にとって適切な主要被写体判定が自動的に行われることになり、撮像時の操作性は格段に向上する。撮像操作に不慣れなユーザであっても、そのような主要被写体判定により、自動的にその主要被写体に対してフォーカス制御が行われたり、露光制御が行われるなどすれば、高品位な静止画／動画撮像が可能となる。
【００８７】
なお、主要被写体判定処理としての具体的処理例は他に多様に考えられる。
例えば図８のステップＦ１１０でβ＝０とすると、カウント値CNT（ｎ）は、累積的に判定基準点ＳＰに近い状態が検出された回数の累積値に相当するものとなる。
また図８のステップＦ１１０でβ＝−１とすると、カウント値CNT（ｎ）は、平均的に判定基準点ＳＰに近い状態が検出された値とみることができる。
つまりこのような場合、ステップＦ１１２の判定は、累積的或いは平均的に判定基準点ＳＰに近い状態の判定となる。
これに対して、所定期間以上、継続的に判定基準点ＳＰに近い状態にあることを条件としてもよい。そのためには、ステップＦ１０８で近接フラグFlg（ｎ）＝１とされた場合にはカウント値CNT（ｎ）をインクリメントし、ステップＦ１０８で近接フラグFlg（ｎ）＝０とされた場合にはカウント値CNT（ｎ）をゼロにリセットする。すると、近接フラグFlg（ｎ）＝１の状態が継続的に所定時間に達した場合、ステップＦ１１２でカウント値Cn t（ｎ）がカウント閾値Ｔｈｔに達して、候補画像枠Ｅ（ｎ）が主要被写体と判定されることになる。
【００８８】
継続的に判定基準点ＳＰに近い被写体を主要被写体とすることによれば、例えば一時的に中央に位置した被写体を主要被写体と判定することを避けることができる。従って主要被写体判定を慎重に行うには適している。逆に言えば、主要被写体の判定を短時間で行いたい場合や、なるべく主要被写体が設定されやすくしたい場合は、平均的或いは累積的に判定基準点ＳＰに近い被写体を主要被写体と判定することが好適である。
なお、以上の累積判断、平均判断、継続判断の場合では、それぞれカウント閾値Ｔｈｔに相当する具体的な判断値は異なることが適切である。
【００８９】
また判定基準点ＳＰに近い状態の算出に、重み付けを行ってもよい。例えば主要被写体判定処理の実行期間の後の時点ほど、判定基準点ＳＰに近いことの価値を重くするなどである。
一般に撮像者が被写体を狙ってカメラワークを行う場合、最初は主役としたい被写体を画像中央などの所望の位置にとらえられず、撮像者が徐々にカメラの向きを調整していく。例えばパンニング過程で被写体を画像中央に捉えていく。このことを考慮すると、最初は、撮像者が「主要被写体」と念頭においている被写体は、時間が進むにつれ徐々に画像中央にとらえられるようになる。
従って、主要被写体判定処理の実行中に、時間が進むほど、判定基準点ＳＰに近いということの価値を重くすることは、撮像者の考えに合致した主要被写体判定ができる可能性を高めることになる。具体的にはステップＦ１０９でオフセット値OFS（ｎ）に代入する値αを段階的に大きくする。このようにすることで、撮像者の考えに合致した主要被写体判定ができる可能性を高めることになる。
【００９０】
また、上述の処理例では、候補画像枠の位置状態としては、設定した判定基準点ＳＰとの位置関係としたが、判定基準領域との位置関係としてもよい。
例えば画像中央などの正方形や円形等の領域を設定し、それを判定基準領域とする。各候補画像枠Ｅ（ｎ）の判定基準領域との位置関係とは、例えば、
・重心が判定基準領域に入っているか否か
・全体が判定基準領域に入っているか否か
・少なくとも一部が判定基準領域に入っているか否か
・判定基準領域の外縁との距離が所定以内か否かなどとする。
このような位置関係の条件が、平均的、累積的、又は継続的に満たされる候補画像枠Ｅ（ｎ）を主要被写体と判定してもよい。
【００９１】
＜５．第２の処理例（パン後判定）＞
第２の処理例として、パン動作後に主要被写体判定を実行する例を説明する。なお、以降第２〜第８の処理例について、主要被写体判定処理は上記図８と同様として説明を省略し、主にカメラワーク判定処理について述べることとする。
第２の処理例では、制御部３０（カメラワーク判定部３０ｂ）が、ユーザが撮像装置１０を略水平方向に移動させるパン動作を終了させたことを判定する。そしてそのパン動作終了後に、主要被写体判定部３０ａで主要被写体判定処理が行われるようにする。
【００９２】
図９はパン後判定動作を示している。
パン動作中の判定、即ちパン実行フラグFponについては、上記第１の処理例と同様に、ジャイロセンサからの検出信号Ｓｇを閾値範囲Ｓｔｈと比較することで設定する。
ここで、パン実行フラグFponについて、現在の値と１つ前の値を比較（減算）して、パン遷移フラグFp_transを設定する。パン実行フラグFponは「１」又は「０」であるため、このパン実行フラグFponの１つ前の時点の値から現在値とを減算すると、「０」「＋１」「−１」のいずれかとなる。つまりパン実行フラグFponが立ち上がる時点では０−１でパン遷移フラグFp_trans＝−１となり、パン実行フラグFponが立ち下がる時点では１−０でパン遷移フラグFp_trans＝＋１となる。それ以外は０−０、又は１−１でパン遷移フラグFp_trans＝０となる。
つまりパン遷移フラグFp_transは、パン実行フラグFponの微分情報となり、具体的にはパンの開始、終了を検出した情報となる。そしてこの場合、パン遷移フラグFp_trans＝＋１がパン終了時点を示す情報となる。
【００９３】
判定実行フラグFdonは、パン遷移フラグFp_trans＝＋１となった時点から判定開始待機期間TdonStartを経た時点で「１」とされる。このように判定実行フラグFdon＝１となったことで、実質的な主要被写体判定処理が開始される。
また、上限期間TdonEndが設定され、判定実行フラグFdonは、パン遷移フラグFp_trans＝＋１となった時点から上限期間TdonEndを経た時点で「０」とされる。このように判定実行フラグFdon＝０とされることで、実質的な主要被写体判定処理を行う期間が制限される。
判定開始待機期間TdonStart、及び上限期間TdonEndは例えば固定値とされる。
【００９４】
このようなパン後判定処理が図１０のように行われる。制御部３０（カメラワーク判定部３０ｂ）はこの図１０の処理を繰り返して判定実行フラグFdonを設定していく。
図１０においてステップＦ２００〜Ｆ２０６は、図７ＡのステップＦ２００〜Ｆ２０６と同様である。即ちジャイロセンサの検出信号Ｓｇに応じてパン実行フラグFponを設定する。
【００９５】
ステップＦ２１０では、パン遷移フラグFp_transの設定を行う。即ち、
パン遷移フラグFp_trans＝（前回パン実行フラグFpon_1）−（パン実行フラグFpon）
とする。前回パン実行フラグFpon_1は、前回のステップＦ２１０の時点でのパン実行フラグFponの値である。従ってパン遷移フラグFp_transは、図９で説明した「０」「＋１」「−１」のいずれかとなる。
また次回のステップＦ２１０において前回パン実行フラグFpon_1として用いるため、今回のパン実行フラグFponの値を前回パン実行フラグFpon_1に代入する。
【００９６】
ステップＦ２１１で制御部３０は、パン遷移フラグFp_trans＝１、又はカウントフラグFcntup＝１のいずれかが満たされるか否かを判定する。カウントフラグFcntupは、ステップＦ２１２で「１」とされ、ステップＦ２２０で「０」とされる、処理分岐制御のためのフラグである。
このカウントフラグFcntupは、パン遷移フラグFp_transが「１」となってから上限期間TdonEndに達するまでの期間のみ「１」である。従ってパン遷移フラグFp_transが「１」となる以前はカウントフラグFcntupは「０」である。
【００９７】
カウントフラグFcntup＝０であってパン遷移フラグFp_transが「０」又は「−１」の場合は、制御部３０はステップＦ２１４に進み、カウント値Fdoncntをゼロにリセットし、またカウントフラグFcntupを「０」とする。カウント値Fdoncntは、判定実行フラグFdonを「１」とする期間を制御するためのカウンタの値である。
そして制御部３０はステップＦ２１７で判定実行フラグFdon＝０と設定する。
【００９８】
図９に示したように、パン遷移フラグFp_trans＝１となるのは、パン実行フラグFponが立ち下がったとき、つまりパン動作が終了された時点である。
この場合、パン遷移フラグFp_trans＝１であることで制御部３０はステップＦ２１１からＦ２１２に進み、カウント値Fdoncntをインクリメントする。またカウントフラグFcntup＝１とする。
ステップＦ２１３では、カウント値Fdoncntについて、図９に示した判定開始待機期間TdonStartと比較する。
パン遷移フラグFp_trans＝１となった当初は、カウント値Fdoncntは判定開始待機期間TdonStartを越えていないため、ステップＦ２１５に進み、判定実行フラグFdon＝０とされる。
【００９９】
次の時点の図１０の処理では、パン遷移フラグFp_transは「０」に戻るが、カウントフラグFcntupは「１」となっているため、制御部３０は前回と同様にステップＦ２１１からＦ２１２に進み、カウント値Fdoncntをインクリメントし、またカウントフラグFcntup＝１を継続することとなる。
つまりパン遷移フラグFp_trans＝１となった以降は、カウントフラグFcntup＝１であることで、連続してステップＦ２１２へ処理が進む状態とされる。
【０１００】
或る時点のステップＦ２１３で、カウント値Fdoncntが判定開始待機期間TdonStartを越えると、制御部３０はステップＦ２１６へ進み、カウント値Fdoncntと上限期間TdonEndを比較する。当初は、カウント値Fdoncntは上限期間TdonEndに達していないため、制御部３０はステップＦ２１８に進んで、判定実行フラグFdon＝１とする。
これにより、図８に示した主要被写体判定処理では、実質的な判定処理（ステップＦ１０５〜Ｆ１１５）が開始されることとなる。
【０１０１】
その後、図１０の処理は、カウントフラグFcntup＝１が継続されるため、ステップＦ２１２でカウント値Fdoncntがインクリメントされながら、ステップＦ２１３→Ｆ２１６へ進む状態が繰り返される。カウント値Fdoncntが上限期間TdonEndに達するまでは、ステップＦ２１８で判定実行フラグFdon＝１が維持される。
その後、或る時点のステップＦ２１６で、カウント値Fdoncntが上限期間TdonEndを越える。この場合、制御部３０はステップＦ２１９に進んで、判定実行フラグFdon＝０とする。従って、もし図８の処理で主要被写体判定処理が完了していなかったとしても、この時点で実質的な判定処理（ステップＦ１０５〜Ｆ１１５）は終了されることとなる。
またステップＦ２２０でカウントフラグFcntupを「０」とする。
【０１０２】
このような処理で図９に示した判定実行フラグFdonが生成され、その判定実行フラグFdonに基づいて主要被写体判定処理が実行されることとなる。
なお、ステップＦ２１９で判定実行フラグFdon＝０とされた後は、次にパン遷移フラグFp_trans＝１となるまでは、ステップＦ２１４，Ｆ２１７の処理が行われることとなり、判定実行フラグFdon＝０の状態が継続する。
【０１０３】
この第２の処理例の場合、パン後の期間に主要被写体設定が行われることになるが、パン後の期間というのは、撮像者がパンニングによって目的とする被写体を捉えた直後の期間と推定できる。すると、目的の被写体が、画像データに存在する可能性が高い。そこで当該期間に、図８の処理で判定基準点ＳＰに近い状態で安定している被写体を主要被写体と判定することで、確度の高い主要被写体設定が実現される。また、自動的な主要被写体判定により、ユーザの操作性向上も実現される。
【０１０４】
また、図１０のカメラワーク判定処理によれば、判定実行フラグFdonはパン遷移フラグFp_trans＝１となってから判定開始待機期間TdonStartを経た後に「１」とされる。これは、パンニング直後は、撮像画像が大きく揺らぐことから、その期間に主要被写体判定を行うことを控えることになる。このような判定開始待機期間TdonStartを適切に設定する ことで、主要被写体判定の確度をより高めることができる。
なお、場合によっては、判定開始待機期間TdonStart＝０とすることも考えられる。このようにすれば、パン遷移フラグFp_trans＝１となった時点、つまりパン終了が検出された時点から、主要被写体判定処理が実行されることとなる。例えば三脚や雲台に乗せた撮像装置１０でパンニングした場合などで、パン直後に画像の揺れが少ないと考えられる場合などは、このようにパン後に即座に主要被写体判定を実行してもよい。
【０１０５】
また図１０のカメラワーク判定処理によれば、上限期間TdonEndを設けて、主要被写体判定が行われる期間を制限している。パン後において、あまり長い期間を主要被写体判定処理に充てることは、パンによる目的被写体への追尾直後という動作状況から離れることとなり、またユーザの意志によって主要被写体が画像内に存在しなくなる可能性も高くなる。そこで、パン後としての期間をある程度限定することで、パンによって追尾された被写体を、主要被写体と判定する確率が高まるようにしている。
なおもちろん、上限を設けず、主要被写体判定がなされるまで判定実行フラグFdon＝１の状態を維持させておく処理例も考えられる。
【０１０６】
＜６．第３の処理例（ズーム動作判定）＞
第３の処理例を説明する。これはズーム動作中に主要被写体判定を実行する例である。即ちカメラワーク判定部３０ｂは、ユーザが撮像装置１０のズーム動作を実行させている状況を判定する。そしてそのズーム動作中に、主要被写体判定部３０ａで主要被写体判定処理が行われるようにする。
【０１０７】
図１１Ｂはズーム動作中であることの検出動作を示している。ズーム動作は、ユーザが操作部３５のズームレバーを操作することで検出できる。ユーザがズームレバーを操作すると、制御部３０は光学系駆動部１３を制御してズームレンズ移動を実行させる。そこで制御部３０は、ズームレバーが継続して操作されている期間を、ズーム動作中と判定する。
ユーザがズームレバーを操作すると、撮像装置１０の動作としては図１１Ｂの通常期間ｔnorからズーム期間ｔzmに移行する。即ちズームレンズ移動が開始される。制御部３０（カメラワーク判定部３０ｂ）は、ズームレバー操作が検出される状態が、ズーム判定期間Tzonとして設定したある程度の時間以上継続したら、ズームが実行されていると判断し、ズーム実行フラグFzonを「１」とする。これに応じて主要被写体判定開始を制御する判定実行フラグFdonを「１」とする。判定実行フラグFdon＝１の際に主要被写体判定処理が行われる。
なお、ズーム判定期間Tzonは、継続的なズーム動作が行われていることを判定するために設けられる期間である。つまりユーザがわずかな時間だけズームレバーを操作したような場合を除外するための期間である。
【０１０８】
ズーム動作に応じて判定実行フラグFdonを設定するため、制御部３０（カメラワーク判定部３０ｂ）は図１１Ａの処理を繰り返し実行する。
制御部３０は、ステップＦ３００でズームレバーの操作状態を取得し、変数Szoomを設定する。例えばズームレバーが操作されていれば変数Szoom＝１とし、操作されていなければ変数Szoom＝０とする。
ステップＦ３０１では、変数Szoomを参照して、現在ズームレバーが押されている状態であるか否か、つまりズーム動作が実行されているか否かを判定する。
変数Szoom＝０で現在ズームレバーが押されていなければ制御部３０はステップＦ３０６に進み、カウント値ZoomOnCntをゼロとし、またズーム実行フラグFzonをゼロとする。なお、カウント値ZoomOnCntは、ズーム判定期間Tzonを越えたか否かを判定するためのカ
ウント値である。
そしてステップＦ３０７でズーム実行フラグFzonの値を判定実行フラグFdonに代入する。つまりこの場合は、判定実行フラグFdon＝０となる。
【０１０９】
変数Szoom＝１で現在ズームレバーが押されているのであれば制御部３０はステップＦ３０１からＦ３０２に進み、カウント値ZoomOnCntをインクリメントする。
そしてステップＦ３０３で制御部３０は、カウント値ZoomOnCntとズーム判定期間Tzonを比較する。カウント値ZoomOnCntがズーム判定期間Tzonに達していなければ、ステップＦ３０５でズーム実行フラグFzonをゼロとする。そしてステップＦ３０７でズーム実行フラグFzonの値を判定実行フラグFdonに代入する。この場合も、判定実行フラグFdon＝０である。
【０１１０】
ステップＦ３０３でカウント値ZoomOnCntがズーム判定期間Tzonに達したと判定された場合、制御部３０はステップＦ３０４でズーム実行フラグFzon＝１とする。つまりズーム判定期間Tzonの間、継続してズーム中であることが確認されたことになり、これをもって継続的にズームが実行されていると判定する。
そしてステップＦ３０７でズーム実行フラグFzonの値を判定実行フラグFdonに代入する。この場合、判定実行フラグFdon＝１となる。
【０１１１】
このような処理で判定実行フラグFdonが設定され、その判定実行フラグFdonに基づいて主要被写体判定処理が実行されることとなる。
なお、その後もズームが継続されている間は、このステップＦ３０３→Ｆ３０４→Ｆ３０７と進む処理が繰り返されることになり、判定実行フラグFdon＝１の状態が維持される。その後、ズーム動作が終了すると、ステップＦ３０１→Ｆ３０６→Ｆ３０７と進む処理となるため、判定実行フラグFdon＝０となる。
図８の主要被写体判定処理では、判定実行フラグFdon＝１の期間に実質的な主要被写体判定が行われるため（図８のステップＦ１０４参照）、主要被写体判定はズームが継続される期間を限度として実行されることとなる。
【０１１２】
以上の第３の処理例によれば、ズーム動作中に判定基準点ＳＰに近い被写体が主要被写体と判定される。ユーザは撮像したい被写体を撮像画像内に捉えながら、ズーム操作を行うことが多い。つまりズーム中に判定基準点ＳＰに近い被写体は、ユーザが目的とする被写体であることが多く、ユーザが望む主要被写体判定結果を得られる確率を高めることができる。また、自動的な主要被写体判定により、ユーザの操作性向上も実現される。
【０１１３】
＜７．第４の処理例（ズーム後判定）＞
第４の処理例として、ズーム動作後に主要被写体判定を実行する例を説明する。この場合、制御部３０（カメラワーク判定部３０ｂ）が、ユーザが撮像装置１０のズーム動作を終了させたことを判定する。そしてそのズーム動作終了後に、主要被写体判定部３０ａで主要被写体判定処理が行われるようにする。
【０１１４】
図１２はズーム後判定動作を示している。
ズーム動作中の判定、即ちズーム実行フラグFzonについては、上記第３の処理例と同様に、ユーザのズームレバーの継続的な操作の検出によって設定する。
ここで、ズーム実行フラグFzonについて、現在の値と１つ前の値を比較（減算）して、ズーム遷移フラグFz_transを設定する。ズーム実行フラグFzonは「１」又は「０」であるため、このズーム実行フラグFzonの１つ前の時点の値から現在値とを減算すると、「０」「＋１」「−１」のいずれかとなる。つまりズーム実行フラグFzonが立ち上がる時点では ０−１でズーム遷移フラグFz_trans＝−１となり、ズーム実行フラグFzonが立ち下がる時点では１−０でズーム遷移フラグFz_trans＝＋１となる。それ以外は０−０、又は１−１でズーム遷移フラグFz_trans＝０となる。
つまりズーム遷移フラグFz_transは、ズーム実行フラグFzonの微分情報となり、具体的には継続的なズーム動作の開始、終了を検出した情報となる。そしてこの場合、ズーム遷移フラグFz_trans＝＋１がズーム終了時点を示す情報となる。
【０１１５】
判定実行フラグFdonは、ズーム遷移フラグFz_trans＝＋１となった時点から判定開始待機期間TdonStartを経た時点で「１」とされる。このように判定実行フラグFdon＝１となったことで、実質的な主要被写体判定処理が開始される。
また、上限期間TdonEndが設定され、判定実行フラグFdonは、ズーム遷移フラグFz_trans＝＋１となった時点から上限期間TdonEndを経た時点で「０」とされる。このように判定実行フラグFdon＝０とされることで、実質的な主要被写体判定処理を行う期間が制限される。判定開始待機期間TdonStart、及び上限期間TdonEndは例えば固定値とされる。
【０１１６】
このようなズーム後判定処理が図１３のように行われる。制御部３０（カメラワーク判定部３０ｂ）はこの図１３の処理を繰り返して判定実行フラグFdonを設定していく。
図１３においてステップＦ３００〜Ｆ３０６は、図１１ＡのステップＦ３００〜Ｆ３０６と同様である。即ちズームレバーのズーム判定期間Tzonを越える継続的な操作を検出した場合にズーム実行フラグFzon＝１とし、該検出前、及びズームレーバー非操作時にズーム実行フラグFzon＝０とする処理である。
【０１１７】
ステップＦ３１０では、ズーム遷移フラグFz_transの設定を行う。即ち、
ズーム遷移フラグFz_trans＝（前回ズーム実行フラグFzon_1）−（ズーム実行フラグFzon）
とする。前回ズーム実行フラグFzon_1は、前回のステップＦ３１０の時点でのズーム実行フラグFzonの値である。従ってズーム遷移フラグFz_transは、図１２で説明した「０」「＋１」「−１」のいずれかとなる。
また次回のステップＦ３１０において前回ズーム実行フラグFzon_1として用いるため、今回のズーム実行フラグFzonの値を前回ズーム実行フラグFzon_1に代入する。
【０１１８】
ステップＦ３１１で制御部３０は、ズーム遷移フラグFz_trans＝１、又はカウントフラグFcntup＝１のいずれかが満たされるか否かを判定する。カウントフラグFcntupは、ステップＦ３１２で「１」とされ、ステップＦ３２０で「０」とされる、処理分岐制御のためのフラグである。
このカウントフラグFcntupは、ズーム遷移フラグFz_transが「１」となってから上限期間TdonEndに達するまでの期間のみ「１」である。従ってズーム遷移フラグFz_transが「１」となる以前はカウントフラグFcntupは「０」である。
【０１１９】
カウントフラグFcntup＝０であってズーム遷移フラグFz_transが「０」又は「−１」の場合は、制御部３０はステップＦ３１４に進み、カウント値Fdoncntをゼロにリセットし、またカウントフラグFcntupを「０」とする。カウント値Fdoncntは、判定実行フラグFdonを「１」とする期間を制御するためのカウンタの値である。
そして制御部３０はステップＦ３１７で判定実行フラグFdon＝０と設定する。
【０１２０】
図１２に示したように、ズーム動作が終了されズーム実行フラグFzonが立ち下がるとズーム遷移フラグFz_trans＝１となる。
この場合、ズーム遷移フラグFz_trans＝１であることで制御部３０はステップＦ３１１からＦ３１２に進み、カウント値Fdoncntをインクリメントする。またカウントフラグFcntup＝１とする。 
ステップＦ３１３では、カウント値Fdoncntについて、図１２に示した判定開始待機期間TdonStartと比較する。
ズーム遷移フラグFz_trans＝１となった当初は、カウント値Fdoncntは判定開始待機期間TdonStartを越えていないため、ステップＦ３１５に進み、判定実行フラグFdon＝０とされる。
【０１２１】
次の時点の図１３の処理では、ズーム遷移フラグFz_transは「０」に戻るが、カウントフラグFcntupは「１」となっているため、制御部３０は前回と同様にステップＦ３１１からＦ３１２に進み、カウント値Fdoncntをインクリメントし、またカウントフラグFcntup＝１を継続することとなる。
つまりズーム遷移フラグFz_trans＝１となった以降は、カウントフラグFcntup＝１であることで、連続してステップＦ３１２へ処理が進む状態とされる。
【０１２２】
或る時点のステップＦ３１３で、カウント値Fdoncntが判定開始待機期間TdonStartを越えると、制御部３０はステップＦ３１６へ進み、カウント値Fdoncntと上限期間TdonEndを比較する。当初は、カウント値Fdoncntは上限期間TdonEndに達していないため、制御部３０はステップＦ３１８に進んで、判定実行フラグFdon＝１とする。
これにより、図８に示した主要被写体判定処理では、実質的な判定処理（ステップＦ１０５〜Ｆ１１５）が開始されることとなる。
【０１２３】
その後、図１３の処理は、カウントフラグFcntup＝１が継続されるため、ステップＦ３１２でカウント値Fdoncntがインクリメントされながら、ステップＦ３１３→Ｆ３１６へ進む状態が繰り返される。カウント値Fdoncntが上限期間TdonEndに達するまでは、ステップＦ３１８で判定実行フラグFdon＝１が維持される。
その後、或る時点のステップＦ３１６で、カウント値Fdoncntが上限期間TdonEndを越える。この場合、制御部３０はステップＦ３１９に進んで、判定実行フラグFdon＝０とする。従って、もし図８の処理で主要被写体判定処理が完了していなかったとしても、この時点で実質的な判定処理（ステップＦ１０５〜Ｆ１１５）は終了されることとなる。
またステップＦ３２０でカウントフラグFcntupを「０」とする。
【０１２４】
このような処理で図１２に示した判定実行フラグFdonが生成され、その判定実行フラグFdonに基づいて主要被写体判定処理が実行されることとなる。
なお、ステップＦ３１９で判定実行フラグFdon＝０とされた後は、次にズーム遷移フラグFz_trans＝１となるまでは、ステップＦ３１４，Ｆ３１７の処理が行われることとなり、判定実行フラグFdon＝０の状態が継続する。
【０１２５】
この第３の処理例の場合、ズーム後の期間に主要被写体設定が行われることになるが、ズーム後の期間というのは、撮像者が目的とする被写体に対してズーミングを行って画角を設定した直後の期間と推定でき、目的の被写体が、画像データに存在する可能性が高い。そこで当該期間に、図８の処理で判定基準点ＳＰに近い状態で安定している被写体を主要被写体と判定することで、確度の高い主要被写体設定が実現される。また、自動的な主要被写体判定により、ユーザの操作性向上も実現される。
【０１２６】
なお図１３のカメラワーク判定処理によれば、判定実行フラグFdonはズーム遷移フラグFz_trans＝１となってから判定開始待機期間TdonStartを経た後に「１」とされる。これは、ユーザのズーム操作直後は、撮像画像の多少の揺らぎ（操作による手ぶれ）があることを考慮して、その期間に主要被写体判定を行うことを控える意味がある。
このような判定開始待機期間TdonStartを適切に設定することで、主要被写体判定の確度をより高めることができる。なお、上記第２の処理例でパン遷移フラグFp_trans＝１の後にも判定開始待機期間TdonStartを用いたが、パン後の撮像画像の揺らぎより、ズーム
後の撮像画像の揺らぎの方が小さいと考えられる。そこで、この第４の処理例の場合の判定開始待機期間TdonStartは、第２の処理例の判定開始待機期間TdonStartよりも短く設定することが好ましい。
なお、場合によっては、判定開始待機期間TdonStart＝０とすることも考えられる。このようにすれば、ズーム遷移フラグFz_trans＝１となった時点、つまりズーム終了が検出された時点から、主要被写体判定処理が実行されることとなる。主要被写体判定を早く実行させたい場合に好適である。
【０１２７】
また図１３のカメラワーク判定処理によれば、上限期間TdonEndを設けて、主要被写体判定が行われる期間を制限している。ズーム後において、あまり長い期間を主要被写体判定処理に充てることは、ズーミングによって目的被写体へのズーム画角調整という動作状況から離れることとなり、主要被写体が判定基準点ＳＰに近い位置に存在する確度が低くなる。そこで、ズーム後としての期間をある程度限定することで主要被写体判定の確度が高まるようにしている。
なおもちろん、上限を設けず、主要被写体判定がなされるまで判定実行フラグFdon＝１の状態を維持させておく処理例も考えられる。
【０１２８】
＜８．第５の処理例（パン後ズーム動作判定）＞
第５の処理例として、パン動作後に引き続きズーム動作が行われた場合に、そのズーム動作中に主要被写体判定を実行する例を説明する。
図１４にパン後ズーム動作判定の動作を示している。
まずパン動作の終了の判定は第２の処理例で説明した考え方を用いる。即ちパン実行フラグFponについては、第１の処理例と同様に、ジャイロセンサからの検出信号Ｓｇと閾値範囲Ｓｔｈとの比較結果に基づいて設定する。そしてパン実行フラグFponについて、現在の値と１つ前の値を比較（減算）して、パン遷移フラグFp_transを設定する。パン遷移フラグFp_trans＝＋１がパン終了時点を示す情報となる。
【０１２９】
次に、このパン終了時点から、例えば固定値とされる移行限度期間Tpan_zoom内にズーム動作が検知されるか否かを判定する。移行限度期間Tpan_zoom内にズーム動作が検知されない場合は、パンからズームへの連続的な動作が行われなかったと判定し、判定実行フラグFdonは「１」としない。即ち主要被写体判定は行わない。
ズーム動作の検知は、第３の処理例で説明した考え方を用いる。即ちズームレバー操作が検出される状態が、ズーム判定期間Tzonとして設定したある程度の時間以上継続したら、ズームが実行されていると判断し、ズーム実行フラグFzonを「１」とする。これに応じて主要被写体判定開始を制御する判定実行フラグFdonを「１」とする。判定実行フラグFdon＝１の際に主要被写体判定処理が行われる。
【０１３０】
このようにパン後ズーム動作判定によって判定実行フラグFdonを設定するため、制御部３０（カメラワーク判定部３０ｂ）は図１５，図１６の処理を繰り返し実行する。
図１５のステップＦ３５０〜Ｆ３５７は、図１０のステップＦ２００〜Ｆ２０６、Ｆ２１０と同様であるため重複説明を避けるが、パン遷移フラグFp_transを設定し、パン遷移フラグFp_trans＝＋１となるパン終了時点を検出する処理である。
【０１３１】
ステップＦ３５８で制御部３０は、パン遷移フラグFp_trans＝１、又はカウントフラグFpe_cntup＝１のいずれかが満たされるか否かを判定する。カウントフラグFpe_cntupは、ステップＦ３５９で「１」とされる、処理分岐制御のためのフラグである。具体的にはパン終了時点で「１」とされ、以降ステップＦ３５９，Ｆ３６２が実行されるようにするフラグである。
カウントフラグFpe_cntup＝０であってパン遷移フラグFp_transが「０」又は「−１」の場合、つまりパン終了が検出されるまでは、制御部３０はステップＦ３５８からＦ３６０に進み、カウント値PanEndCntをゼロにリセットし、またカウントフラグFpe_cntupを「０」とする。カウント値PanEndCntは、図１４に示した移行限度期間Tpan_zoomを計数するカウンタの値である。
そして制御部３０はステップＦ３６１で判定実行フラグFdon＝０と設定する。
【０１３２】
図１４に示したように、パン動作が終了された時点でパン遷移フラグFp_trans＝１となる。この場合、制御部３０はステップＦ３５８からＦ３５９に進み、カウント値PanEndCntをインクリメントする。つまり移行限度期間Tpan_zoomの計数を開始する。またカウントフラグFpe_cntup＝１とする。
そしてステップＦ３６２で制御部３０は、ズーム中判定処理を行う。ズーム中判定処理は図１６に示している。
なお次の時点の図１５の処理では、パン遷移フラグFp_transは「０」に戻るが、カウントフラグFpe_cntupは「１」となっているため、制御部３０は前回と同様にステップＦ３５８からＦ３５９，Ｆ３６２に進む。カウントフラグFpe_cntupは移行限度期間Tpan_zoom内にズーム動作が検出されなかった場合、或いはズーム動作が終了した場合に「０」とされるが、それまでは、ステップＦ３５９（カウント値PanEndCntのインクリメント），Ｆ３６２（ズーム中判定処理）が繰り返し行われることとなる。
【０１３３】
図１６のズーム中判定処理（Ｆ３６２）は、基本的には第３の処理例の考え方を用いる。
制御部３０は、図１６のステップＦ３７０でズームレバーの操作状態を取得し、変数Szoomを設定する。例えばズームレバーが操作されていれば変数Szoom＝１とし、操作されていなければ変数Szoom＝０とする。そしてステップＦ３７１では、変数Szoomを参照して、現在ズームレバーが押されている状態であるか否かを判定する。
パン終了直後で、まだズームが行われていない期間は、制御部３０はステップＦ３７１からＦ３７６に進み、カウント値PanEndCntが移行限度期間Tpan_zoomに達していないか否かを確認する。
パン直後で移行限度期間Tpan_zoomに達していなければ、ステップＦ３７６からＦ３７７に進むが、その時点ではズーム実行フラグFzon＝０であるので、ステップＦ３７８へ進み、カウント値ZoomOnCntをゼロとし、またズーム実行フラグFzonをゼロとする。カウント値ZoomOnCntは、ユーザのズーム操作の検知からズーム判定期間Tzonを越えたか否かを判定するため（継続的なズーム操作判定のため）のカウント値である。
そしてステップＦ３７９でズーム実行フラグFzonの値を判定実行フラグFdonに代入する。つまりこの場合は、判定実行フラグFdon＝０となる。
【０１３４】
もしパン後にカウント開始されるカウント値PanEndCntが移行限度期間Tpan_zoomに達した場合、つまり移行限度期間Tpan_zoom内にユーザのズーム操作が検知されなかった場合は、ステップＦ３７６から図１５のステップＦ３６０に進む。この場合、パン後ズーム動作が検出されなかったこととなる。判定実行フラグFdonは「０」のままとなる。
【０１３５】
変数Szoom＝１で現在ズームレバーが押されているのであれば制御部３０はステップＦ３７１からＦ３７２に進み、カウント値ZoomOnCntをインクリメントする。そしてステップＦ３７３で制御部３０は、カウント値ZoomOnCntとズーム判定期間Tzonを比較する。カウント値ZoomOnCntがズーム判定期間Tzonに達していなければ、ステップＦ３７５でズーム実行フラグFzonをゼロとする。そしてステップＦ３７９でズーム実行フラグFzonの値を判定実行フラグFdonに代入する。従って判定実行フラグFdon＝０である。
なお、移行限度期間Tpan_zoom内に一瞬ズーム操作が検知されても、ズーム操作がズーム判定期間Tzonに至らずに終了された場合、その一瞬の操作の終了後において処理はステ
ップＦ３７１→Ｆ３７６と進む。従って、そのままズーム操作がなされずに移行限度期間Tpan_zoomに達した場合は、図１５のステップＦ３６０に進み、パン後ズーム動作が検出されなかったこととなる（判定実行フラグFdon＝０）。
【０１３６】
ステップＦ３７３でカウント値ZoomOnCntがズーム判定期間Tzonに達したと判定された場合、制御部３０はステップＦ３７４でズーム実行フラグFzon＝１とする。つまりズーム判定期間Tzonの間、継続してズーム中であることが確認されたことになり、これをもって継続的にズームが実行されていると判定する。そしてステップＦ３７９でズーム実行フラグFzonの値を判定実行フラグFdonに代入する。この場合、判定実行フラグFdon＝１となる。従って判定実行フラグFdonに基づいて図８の処理で主要被写体判定が実行される。
なお、その後もズームが継続されている間は、このステップＦ３７３→Ｆ３７４→Ｆ３７９と進む処理が繰り返されることになり、判定実行フラグFdon＝１の状態が維持される。
その後、ズーム動作が終了すると、ステップＦ３７１→Ｆ３７６と進む処理となる。この場合は、カウント値PanEndCntが移行限度期間Tpan_zoom以上となっているか、もしくは移行限度期間Tpan_zoomに達していなくともズーム実行フラグFzon＝１となっているため、ステップＦ３７６又はＦ３７７から図１５のステップＦ３６０、Ｆ３６１に進む。従ってカウント値PanEndCntがゼロリセットされ、カウントフラグFpe_cntup＝０とされ、さらに判定実行フラグFdon＝０とされる。つまり主要被写体判定はズームが継続される期間を限度として実行されることとなる。
【０１３７】
以上の第５の処理例によれば、パン後ズーム動作中に判定基準点ＳＰに近い被写体が主要被写体と判定される。ユーザはパンニングによって目的被写体を探し、目的被写体を捉えた際にズーミングを行って画角調整を行うということが多い。従ってパン後ズーム中に判定基準点ＳＰに近い被写体は、ユーザが目的とする被写体であることが多く、ユーザが望む主要被写体判定結果を得られる確率を高めることができる。また、自動的な主要被写体判定により、ユーザの操作性向上も実現される。
また上記処理例では、パンからズームへの移行限度期間Tpan_zoomを設けて判断しているため、パン→ズームという連続的な動作を的確に判断できる。
【０１３８】
＜９．第６の処理例（パン後ズーム後判定）＞
第６の処理例として、パン動作後に引き続きズーム動作が行われた場合に、そのズーム動作終了後に主要被写体判定を実行する例を説明する。
図１７にパン後ズーム後判定の動作を示している。
まずパン動作の終了の判定（パン実行フラグFpon、パン遷移フラグFp_transの処理）、及びパン終了から移行限度期間Tpan_zoom内でのズーム動作の判定（ズーム実行フラグFzonの処理）については、第５の処理例と同様である。
パン後のズーム動作の終了を検出するため、第４の処理例で説明した考え方を用いる。即ちズーム実行フラグFzonについて、現在の値と１つ前の値を比較（減算）して、ズーム遷移フラグFz_transを設定する。ズーム遷移フラグFz_trans＝＋１がズーム終了時点を示す情報となる。
【０１３９】
判定実行フラグFdonは、ズーム遷移フラグFz_trans＝＋１となった時点から判定開始待機期間TdonStartを経た時点で「１」とされる。このように判定実行フラグFdon＝１となったことで、実質的な主要被写体判定処理が開始される。また、上限期間TdonEndが設定され、判定実行フラグFdonは、ズーム遷移フラグFz_trans＝＋１となった時点から上限期間TdonEndを経た時点で「０」とされる。このように判定実行フラグFdon＝０とされることで、実質的な主要被写体判定処理を行う期間が制限される。
【０１４０】
このようなパン後ズーム後判定処理が図１８、図１９のように行われる。制御部３０（カメラワーク判定部３０ｂ）はこの図１８、図１９の処理を繰り返して判定実行フラグFdonを設定していく。
図１８のステップＦ３５０〜Ｆ３６１は、図１５と同様であり、同一のステップ番号としている。即ち制御部３０は、ステップＦ３５０〜Ｆ３５７として、パン遷移フラグFp_transを設定し、パン終了時点を検出する。パン終了が検出されるまでは、ステップＦ３５８→Ｆ３６０→Ｆ３６１と進み、判定実行フラグFdon＝０とする。
この図１８では、パン終了が検出された以降において、制御部３０はステップＦ３５８→Ｆ３５９→Ｆ３６５と進むことになり、ステップＦ３６５として図１９のズーム後判定処理を行う。
【０１４１】
図１９のズーム後判定処理（Ｆ３６５）は、基本的には第４の処理例の考え方を用いる。なおステップＦ３７０〜Ｆ３７６、Ｆ３７８は、図１６の同一ステップ番号の処理と同一である。即ち、このステップＦ３７０〜Ｆ３７６、Ｆ３７８は、パン後の移行限度期間Tpan_zoom内に継続的なズーム動作が行われることの検出処理である。なおズーム終了後の処理をステップＦ３８０以降で行うことになるため、図１６のステップＦ３７７に相当する処理はない。
パン後において移行限度期間Tpan_zoom内にズームが行われなければ、ステップＦ３７６からＦ３７９に進む。この時点ではカウント値FdonCnt＝０である。カウント値FdonCntはズーム終了時点からステップＦ３８２でカウントアップされるためである。そのためこの時点ではステップＦ３７９から図１８のステップＦ３６０に進む。この場合、パン後ズーム動作が検出されなかったこととなる。判定実行フラグFdonは「０」のままとなる。
【０１４２】
ステップＦ３８０〜Ｆ３８８は、図１３のステップＦ３１０〜Ｆ３１８と同様の処理となる。従って次のような処理となる。
ズーム開始前、及び動作中は、制御部３０はステップＦ３８１→Ｆ３８４→Ｆ３８７と進み、カウント値Fdoncnt＝０、カウントフラグFcntup＝０、判定実行フラグFdon＝０とする。
ズーム終了時点では、ズーム遷移フラグFz_trans＝１となることで、制御部３０はステップＦ３８１からＦ３８２に進み、カウント値Fdoncntをインクリメントし、またカウントフラグFcntup＝１とする。以降もカウントフラグFcntup＝１であることで制御部３０はステップＦ３８１からＦ３８２に進み、カウント値Fdoncntのインクリメントが継続される。但し判定開始待機期間TdonStartを越えるまではステップＦ３８３からＦ３８５に進み、判定実行フラグFdon＝０とされる。
なお、ズーム終了時点以降は、図１９の処理はステップＦ３７１→Ｆ３７６と進み、カウント値PanEndCntが移行限度期間Tpan_zoomを越えている場合が多いが、カウント値Fdoncntのインクリメントが開始された以降であるため、ステップＦ３７９→Ｆ３７８→Ｆ３８０→Ｆ３８１→Ｆ３８２のように処理が進められる。
【０１４３】
或る時点のステップＦ３８３で、カウント値Fdoncntが判定開始待機期間TdonStartを越えると、制御部３０はステップＦ３８６へ進み、カウント値Fdoncntと上限期間TdonEndを比較する。そして上限期間TdonEndに達するまでは、制御部３０はステップＦ３８８に進んで、判定実行フラグFdon＝１とする。これによりパン後ズーム後において、図８に示した主要被写体判定処理で実質的な判定処理（ステップＦ１０５〜Ｆ１１５）が行われる。
その後、カウント値Fdoncntが上限期間TdonEndを越えると、制御部３０はステップＦ３８９でカウントフラグFcntup＝０とし、さらに図１８のステップＦ３６０、Ｆ３６１に進んで、カウント値PanEndCnt＝０、カウントフラグFpe_cntup＝０とされ、さらに判定実行フラグFdon＝０とされる。つまり主要被写体判定はパン後ズーム後に上限期間TdonEndを限度として実行される。 
【０１４４】
以上の第６の処理例によれば、パン後のズーム後に判定基準点ＳＰに近い被写体が主要被写体と判定される。ユーザはパンニングによって目的被写体を探し、目的被写体を捉えた際にズーミングを行って画角調整を行うということが多い。従ってパン後にズームを行った後であれば、判定基準点ＳＰに近い被写体は、ユーザが目的とする被写体であることが多く、ユーザが望む主要被写体判定結果を得られる確率を高めることができる。また、自動的な主要被写体判定により、ユーザの操作性向上も実現される。
また上記処理例では、パンからズームへの移行限度期間Tpan_zoomを設けて判断しているため、パン→ズームという連続的な動作を的確に判断できる。
なお判定開始待機期間TdonStart＝０とすることも考えられる。この場合、パン後のズーム終了が検出された時点から即座に主要被写体判定処理が実行されることとなる。
また上限期間TdonEndを設けず、主要被写体判定がなされるまで判定実行フラグFdon＝１の状態を維持させておくようにしてもよい。
【０１４５】
＜１０．第７の処理例（ズーム後パン動作判定）＞
第７の処理例として、ズーム動作後に引き続きパン動作が行われた場合に、そのパン動作中に主要被写体判定を実行する例を説明する。
図２０にズーム後パン動作判定の動作を示している。
まずズーム動作の終了の判定は第４の処理例で説明した考え方を用いる。即ちズーム実行フラグFzonについて、ユーザのズームレバー操作の継続性の判定により設定する。そしてズーム実行フラグFzonについて、現在の値と１つ前の値を比較（減算）して、ズーム遷移フラグFz_transを設定する。ズーム遷移フラグFz_trans＝＋１がパン終了時点を示す情報となる。
【０１４６】
次に、このズーム終了時点から、例えば固定値とされる移行限度期間Tzoom_pan内にパン動作が検知されるか否かを判定する。移行限度期間Tzoom_pan内にパン動作が検知されない場合は、ズームからパンへの連続的な動作が行われなかったと判定し、判定実行フラグFdonは「１」としない。即ち主要被写体判定は行わない。
パン動作の検知は、第１の処理例で説明した考え方を用いる。即ちパン実行フラグFponを、ジャイロセンサからの検出信号Ｓｇと閾値範囲Ｓｔｈとの比較結果に基づいて設定する。検出信号Ｓｇが、パン判定期間Tponとして設定したある程度の時間以上継続して閾値範囲Ｓｔｈを越えていたら、パンが実行されていると判断し、パン実行フラグFponを「１」とする。これに応じて主要被写体判定開始を制御する判定実行フラグFdonを「１」とする。判定実行フラグFdon＝１の際に主要被写体判定処理が行われる。
【０１４７】
このようにズーム後パン動作判定によって判定実行フラグFdonを設定するため、制御部３０（カメラワーク判定部３０ｂ）は図２１，図２２の処理を繰り返し実行する。
図２１のステップＦ４００〜Ｆ４０７は、図１３のステップＦ３００〜Ｆ３０６、Ｆ３１０と同様であるため重複説明を避けるが、ズーム遷移フラグFz_transを設定し、ズーム遷移フラグFz_trans＝＋１となるズーム終了時点を検出する処理である。
【０１４８】
ステップＦ４０８で制御部３０は、ズーム遷移フラグFz_trans＝１、又はカウントフラグFze_cntup＝１のいずれかが満たされるか否かを判定する。カウントフラグFze_cntupは、ステップＦ４０９で「１」とされる、処理分岐制御のためのフラグである。具体的にはズーム終了時点で「１」とされ、以降ステップＦ４０９，Ｆ４１２が実行されるようにするフラグである。
カウントフラグFze_cntup＝０であってズーム遷移フラグFz_transが「０」又は「−１」の場合、つまりズーム終了が検出されるまでは、制御部３０はステップＦ４０８からＦ
４１０に進み、カウント値ZoomEndCntをゼロにリセットし、またカウントフラグFze_cntupを「０」とする。カウント値ZoomEndCntは、図２０に示した移行限度期間Tzoom_panを計数するカウンタの値である。
そして制御部３０はステップＦ４１１で判定実行フラグFdon＝０と設定する。
【０１４９】
図２０に示したように、ズーム動作が終了された時点でズーム遷移フラグFz_trans＝１となる。この場合、制御部３０はステップＦ４０８からＦ４０９に進み、カウント値ZoomEndCntをインクリメントする。つまり移行限度期間Tzoom_panの計数を開始する。またカウントフラグFze_cntup＝１とする。
そしてステップＦ４１２で制御部３０は、パン中判定処理を行う。パン中判定処理は図２２に示している。
なお次の時点の図２１の処理では、ズーム遷移フラグFz_transは「０」に戻るが、カウントフラグFze_cntupは「１」となっているため、制御部３０は前回と同様にステップＦ４０８からＦ４０９，Ｆ４１２に進む。カウントフラグFze_cntupは移行限度期間Tzoom_pan内にパン動作が検出されなかった場合、或いはパン動作が終了した場合に「０」とされるが、それまでは、ステップＦ４０９（カウント値ZoomEndCntのインクリメント），Ｆ４１２（パン中判定処理）が繰り返し行われることとなる。
【０１５０】
図２２のズーム中判定処理（Ｆ４１２）は、基本的には第１の処理例の考え方を用いる。
制御部３０は、図２２のステップＦ４２０でセンサ部１４のジャイロセンサで検出される角速度情報を検出信号Ｓｇとして取得する。ステップＦ４２１で制御部３０は、Ｓｇ＞Ｓｃ＋Ｓｔｈ／２、又はＳｇ＜Ｓｃ−Ｓｔｈ／２のいずれかが成り立つか否かを判定する。即ち図７Ｂに示した基準レベルＳｃ、閾値範囲Ｓｔｈの値を用いて、検出信号Ｓｇが正又は負の値として閾値範囲Ｓｔｈを越えた値になっているか否かを判定する。
【０１５１】
ズーム終了直後で、まだパンが行われていない期間は、検出信号Ｓｇが閾値範囲Ｓｔｈを越えた値となっていないため、制御部３０はステップＦ４２１からＦ４２６に進み、カウント値ZoomEndCntが移行限度期間Tzoom_panに達していないか否かを確認する。
パン直後で移行限度期間Tzoom_panに達していなければ、ステップＦ４２６からＦ４２７に進むが、その時点ではパン実行フラグFpon＝０であるので、ステップＦ４２８へ進み、カウント値PanOnCntをゼロとし、またパン実行フラグFponをゼロとする。カウント値PanOnCntは、パン動作の検知からパン判定期間Tponを越えたか否かを判定するためのカウント値である。
そしてステップＦ４２９でパン実行フラグFponの値を判定実行フラグFdonに代入する。つまりこの場合は、判定実行フラグFdon＝０となる。
【０１５２】
もしズーム後にカウント開始されるカウント値ZoomEndCntが移行限度期間Tzoom_panに達した場合、つまり移行限度期間Tzoom_pan内にパン動作が検知されなかった場合は、ステップＦ４２６から図２１のステップＦ４１０に進む。この場合、ズーム後パン動作が検出されなかったこととなる。判定実行フラグFdonは「０」のままとなる。
【０１５３】
ズーム終了後に検出信号Ｓｇが閾値範囲Ｓｔｈを越えた値となったら、制御部３０はステップＦ４２１からＦ４２２に進み、カウント値PanOnCntをインクリメントする。そしてステップＦ４２３で制御部３０は、カウント値PanOnCntとパン判定期間Tponを比較する。カウント値PanOnCntがパン判定期間Tponに達していなければ、ステップＦ４２５でパン実行フラグFponをゼロとする。そしてステップＦ４２９でパン実行フラグFponの値を判定実行フラグFdonに代入する。従って判定実行フラグFdon＝０である。
なお、移行限度期間Tzoom_pan内に一瞬検出信号Ｓｇが閾値範囲Ｓｔｈを越えても、パンとしての動きがパン判定期間Tponに至らずに終了された場合、その一瞬のパン動作の終
了後において処理はステップＦ４２１→Ｆ４２６と進む。従って、そのままパン動作がなされずに移行限度期間Tzoom_panに達した場合は、図２１のステップＦ４１０に進み、ズーム後パン動作が検出されなかったこととなる（判定実行フラグFdon＝０）。
【０１５４】
ステップＦ４２３でカウント値PanOnCntがパン判定期間Tponに達したと判定された場合、制御部３０はステップＦ４２４でパン実行フラグFpon＝１とする。つまりパン判定期間Tponの間、継続してパン動作が確認されたことになり、これをもってパン動作が実行されていると判定する。そしてステップＦ４２９でパン実行フラグFponの値を判定実行フラグFdonに代入する。この場合、判定実行フラグFdon＝１となる。従って判定実行フラグFdonに基づいて図８の処理で主要被写体判定が実行される。
なお、その後もパンが継続されている間は、このステップＦ４２３→Ｆ４２４→Ｆ４２９と進む処理が繰り返されることになり、判定実行フラグFdon＝１の状態が維持される。
その後、パン動作が終了すると、ステップＦ４２１→Ｆ４２６と進む処理となる。この場合は、カウント値ZoomEndCntが移行限度期間Tzoom_pan以上となっているか、もしくは移行限度期間Tzoom_panに達していなくともパン実行フラグFpon＝１となっているため、ステップＦ４２６又はＦ４２７から図２１のステップＦ４１０、Ｆ４１１に進む。従ってカウント値ZoomEndCntがゼロリセットされ、カウントフラグFze_cntup＝０とされ、さらに判定実行フラグFdon＝０とされる。つまり主要被写体判定はパンが継続される期間を限度として実行されることとなる。
【０１５５】
以上の第７の処理例によれば、ズーム後パン動作中に判定基準点ＳＰに近い被写体が主要被写体と判定される。ユーザはズーミングで画角調整をした後にパンニングによって目的被写体を探すという動作をとることがある。従ってズーム後パン動作中に判定基準点ＳＰに近い被写体は、ユーザが目的とする被写体であることが多く、ユーザが望む主要被写体判定結果を得られる確率を高めることができる。また、自動的な主要被写体判定により、ユーザの操作性向上も実現される。
また上記処理例では、ズームからパンへの移行限度期間Tzoom_panを設けて判断しているため、ズーム→パンという連続的な動作を的確に判断できる。
【０１５６】
＜１１．第８の処理例（ズーム後パン後判定）＞
第８の処理例として、ズーム動作後に引き続きパン動作が行われた場合に、そのパン動作終了後に主要被写体判定を実行する例を説明する。
図２３にズーム後パン後判定の動作を示している。
ズーム動作の終了の判定（ズーム実行フラグFzon、ズーム遷移フラグFz_transの処理）、及びズーム終了から移行限度期間Tzoom_pan内でのパン動作の判定（パン実行フラグFponの処理）については、第７の処理例と同様である。
ズーム後のパン動作の終了を検出するため、第２の処理例で説明した考え方を用いる。即ちパン実行フラグFponについて、現在の値と１つ前の値を比較（減算）して、パン遷移フラグFp_transを設定する。パン遷移フラグFp_trans＝＋１がパン終了時点を示す情報となる。
【０１５７】
判定実行フラグFdonは、パン遷移フラグFp_trans＝＋１となった時点から判定開始待機期間TdonStartを経た時点で「１」とされる。このように判定実行フラグFdon＝１となったことで、実質的な主要被写体判定処理が開始される。また、上限期間TdonEndが設定され、判定実行フラグFdonは、ズーム遷移フラグFz_trans＝＋１となった時点から上限期間TdonEndを経た時点で「０」とされる。このように判定実行フラグFdon＝０とされることで、実質的な主要被写体判定処理を行う期間が制限される。
【０１５８】
このようなズーム後パン後判定処理が図２４、図２５のように行われる。制御部３０（カメラワーク判定部３０ｂ）はこの図２４、図２５の処理を繰り返して判定実行フラグFdonを設定していく。
図２４のステップＦ４００〜Ｆ４１１は、図２１と同様であり、同一のステップ番号としている。即ち制御部３０は、ステップＦ４００〜Ｆ４０７として、ズーム遷移フラグFz_transを設定し、ズーム終了時点を検出する。ズーム終了が検出されるまでは、ステップＦ４０８→Ｆ４１０→Ｆ４１１と進み、判定実行フラグFdon＝０とする。
この図２４では、ズーム終了が検出された以降において、制御部３０はステップＦ４０８→Ｆ４０９→Ｆ４１５と進むことになり、ステップＦ４１５として図２５のパン後判定処理を行う。
【０１５９】
図２５のパン後判定処理（Ｆ４１５）は、基本的には第２の処理例の考え方を用いる。なおステップＦ４２０〜Ｆ４２６、Ｆ４２８は、図２２の同一ステップ番号の処理と同一である。即ち、このステップＦ４２０〜Ｆ４２６、Ｆ４２８は、ズーム後の移行限度期間Tzoom_pan内にパン動作が行われることの検出処理である。なおパン終了後の処理をステップＦ４３０以降で行うことになるため、図２２のステップＦ４２７に相当する処理はない。
ズーム後において移行限度期間Tzoom_pan内にパンが行われなければ、ステップＦ４２６からＦ４２９に進む。この時点ではカウント値FdonCnt＝０である。カウント値FdonCntはパン終了時点からステップＦ４３２でカウントアップされるためである。そのためこの時点ではステップＦ４２９から図２４のステップＦ４１０に進む。この場合、ズーム後パン動作が検出されなかったこととなる。判定実行フラグFdonは「０」のままとなる。
【０１６０】
ステップＦ４３０〜Ｆ４３８は、図１０のステップＦ２１０〜Ｆ２１８と同様の処理となる。従って次のような処理となる。
パン開始前、及び動作中は、制御部３０はステップＦ４３１→Ｆ４３４→Ｆ４３７と進み、カウント値Fdoncnt＝０、カウントフラグFcntup＝０、判定実行フラグFdon＝０とする。
パン終了時点では、パン遷移フラグFp_trans＝１となることで、制御部３０はステップＦ４３１からＦ４３２に進み、カウント値Fdoncntをインクリメントし、またカウントフラグFcntup＝１とする。以降もカウントフラグFcntup＝１であることで制御部３０はステップＦ４３１からＦ４３２に進み、カウント値Fdoncntのインクリメントが継続される。但し判定開始待機期間TdonStartを越えるまではステップＦ４３３からＦ４３５に進み、判定実行フラグFdon＝０とされる。
なお、パン終了時点以降は、図２５の処理はステップＦ４２１→Ｆ４２６と進み、カウント値ZoomEndCntが移行限度期間Tzoom_panを越えている場合が多いが、カウント値Fdoncntのインクリメントが開始された以降であるため、ステップＦ４２９→Ｆ４２８→Ｆ４３０→Ｆ４３１→Ｆ４３２のように処理が進められる。
【０１６１】
或る時点のステップＦ４３３で、カウント値Fdoncntが判定開始待機期間TdonStartを越えると、制御部３０はステップＦ４３６へ進み、カウント値Fdoncntと上限期間TdonEndを比較する。そして上限期間TdonEndに達するまでは、制御部３０はステップＦ４３８に進んで、判定実行フラグFdon＝１とする。これによりズーム後パン後において、図８に示した主要被写体判定処理で実質的な判定処理（ステップＦ１０５〜Ｆ１１５）が行われる。
その後、カウント値Fdoncntが上限期間TdonEndを越えると、制御部３０はステップＦ４３９でカウントフラグFcntup＝０とし、さらに図２４のステップＦ４１０、Ｆ４１１に進んで、カウント値ZoomEndCnt＝０、カウントフラグFze_cntup＝０とされ、さらに判定実行フラグFdon＝０とされる。つまり主要被写体判定はズーム後パン後に上限期間TdonEndを限度として実行される。
【０１６２】
以上の第８の処理例によれば、ズーム後のパン後に判定基準点ＳＰに近い被写体が主要被写体と判定される。ユーザはズーミングで画角調整をした後にパンニングによって目的被写体を探すという動作をとることがある。従ってズーム後パン後に判定基準点ＳＰに近い被写体は、ユーザが目的とする被写体であることが多く、ユーザが望む主要被写体判定結果を得られる確率を高めることができる。また、自動的な主要被写体判定により、ユーザの操作性向上も実現される。
また上記処理例では、ズームからパンへの移行限度期間Tzoom_panを設けて判断しているため、ズーム→パンという連続的な動作を的確に判断できる。
なお判定開始待機期間TdonStart＝０とすることも考えられる。この場合、ズーム後のパン終了が検出された時点から即座に主要被写体判定処理が実行されることとなる。
また上限期間TdonEndを設けず、主要被写体判定がなされるまで判定実行フラグFdon＝１の状態を維持させておくようにしてもよい。
【０１６３】
＜１２．第９の処理例（合焦判定）＞
第９の処理例としてのカメラワーク判定及び主要被写体判定を説明する。この例は、制御部３０（カメラワーク判定部３０ｂ）は、撮像装置１０のマニュアルフォーカス動作の終了を検出することに応じて判定開始タイミングを設定する。
制御部３０（主要被写体判定部３０ａ）は、判定開始タイミングからの少なくとも１フレームの画像データにおける被写体の合焦状態を観測し、特定の合焦条件に合致した被写体のうちで主要被写体を判定する。
例えば特定の合焦条件に合致する被写体とは、画像データの分割領域毎に計測した合焦度データが所定値以上となっている分割領域に位置する被写体である。
さらにこのような合焦条件に加えて、特定の位置条件に合致した被写体のうちで主要被写体を判定するようにしてもよい。
この第９の処理例の場合、撮像装置１０としての構成は図２６のようになる。図２６において図３と同一部分は同一符号を付し、説明を省略する。
【０１６４】
図２６の撮像装置１０は、図３の構成に加えて合焦度判定部２８を備える。合焦度判定部２８は、撮像画像を分割した分割領域（ブロック）毎の合焦度を判定する。
合焦度の判定技術としては、例えば公知のオートフォーカス検波の技術を用いることができる。例えば輝度信号のエッジ成分を検出し、これに積分処理等を施すことで、合焦している程高い数値となる値、つまり合焦度合いに応じた値を求めることができる。
また図２６の構成では、図３と同じく候補検出部２７を備え、候補画像枠を抽出するようにしている。
なお、候補検出部２７及び合焦度判定部２８としての機能は、制御部３０においてソフトウエアにより実装してもよい。
【０１６５】
この撮像装置１０による第９の処理例としての主要被写体判定処理の概要を図２７，図２８で説明する。
図２７には撮像装置１０の光学系１１，イメージャ１２の動作によりデジタル信号処理部２０に入力される撮像画像信号の各フレームＦＲ１，ＦＲ２，ＦＲ３・・・を示している。
第１の処理例で説明したものと同様、候補検出部２７は、このような順次入力される連続した各フレームのそれぞれ（或いは間欠的な各フレームについて）から候補画像（例えば候補画像枠Ｅ１，Ｅ２，Ｅ３）の検出を行う。そして候補画像枠情報を制御部３０（主要被写体判定部３０ａ）に受け渡す。制御部３０は、主要被写体判定処理の際に、各候補画像枠Ｅ１，Ｅ２，Ｅ３の重心Ｇから判定基準点ＳＰまでの距離Diff１、Diff２、Diff３の算出等を行う。 
【０１６６】
また合焦度判定部２８は、候補検出部２７の処理とは並行して、順次入力される連続した各フレームのそれぞれ（或いは間欠的な各フレームについて）について、ブロック毎の合焦度を算出する。
図では分割領域としてのブロックの例を示している。１つの画像データを、破線で示すように多数のブロックに分割する。各ブロックを説明上、ブロックＢＫ（ＢＫ１、ＢＫ２・・・ＢＫ（Ｍ））とする。
合焦度判定部２８は、各ブロックＢＫ１、ＢＫ２・・・ＢＫ（Ｍ）のそれぞれについての合焦度を例えば数値情報として求める。図示のように、例えばブロックＢＫ１は合焦度「１０」、ブロックＢＫ２は合焦度「２２」などと求められる。なおこの例では、合焦度は「１００」を最高値としており、例えば「８０」以上であれば合焦状態と判定するものとする。
合焦度判定部２８は、例えばフレーム毎にこのように各ブロックＢＫについて合焦度を求め、制御部３０に受け渡す。
【０１６７】
図２８は、フレーム毎の各ブロックＢＫについての合焦度の変動を示している。
いま、図２８Ａのように、被写体としての人物Ｈ１，Ｈ２，Ｈ３が、撮像装置１０からの距離としてそれぞれ距離Ｄ１，Ｄ２，Ｄ３の位置に居るとする。この場合に撮像者がマニュアルフォーカス操作を行い、合焦位置をニア側とファー側の間で変化させたとする。
ニア側に合焦させると、図２８Ｂの上図のように、人物Ｈ１に焦点が合い、一方人物Ｈ２，Ｈ３はボケた状態（図では点線で示している）となる。このときの撮像画像のフレームでは、図２８Ｂの下図のように、人物Ｈ１が位置するブロックＢＫ（斜線のブロック）において合焦度の値が高くなる。
マニュアルフォーカス操作で中間的な距離に合焦させると、図２８Ｃの上図のように、人物Ｈ２に焦点が合い、人物Ｈ１，Ｈ３はボケた状態となる。このときの撮像画像のフレームでは、図２８Ｃの下図のように、人物Ｈ２が位置するブロックＢＫ（斜線のブロック）において合焦度の値が高くなる。
さらにファー側に合焦させると、図２８Ｄの上図のように、人物Ｈ３に焦点が合い、人物Ｈ１，Ｈ２はボケた状態となる。このときの撮像画像のフレームでは、図２８Ｄの下図のように、人物Ｈ３が位置するブロックＢＫ（斜線のブロック）において合焦度の値が高くなる。
【０１６８】
例えば撮像者が、人物Ｈ３の撮像を目的としているとすると、図２８Ｄのようにファー側にマニュアルフォーカス操作を行うこととなる。換言すれば、マニュアルフォーカス操作が行われた後に合焦度の高い被写体は、撮像者が目的としている被写体であると推定できる。
そこで、第９の処理例では、まずカメラワーク判定部３０ｂが、マニュアルフォーカス操作を検出し、マニュアルフォーカス終了後のタイミングを主要被写体判定部３０ａに通知する。主要被写体判定部３０ａは、当該タイミングのフレーム画像データにおいて、候補画像のうちで、合焦度の高いブロックＢＫに位置している候補画像を、主要被写体と判定するものである。
【０１６９】
具体的な処理例を図２９，図３０，図３１で説明する。
図２９は、図２８の例においてニア側からファー側へマニュアルフォーカスが行われた場合を示している。人物Ｈ１，Ｈ２，Ｈ３が、それぞれ候補画像枠Ｅ１，Ｅ２，Ｅ３とされているとし、各候補画像枠の部分の合焦度を例示している。
マニュアルフォーカス期間ｔmfとしてニア側からファー側へフォーカスレンズが移動されるに従って、合焦度が高い被写体は候補画像枠Ｅ１→Ｅ２→Ｅ３の順番で遷移する。
【０１７０】
マニュアルフォーカス判定期間Tmfonを越えて継続的なマニュアルフォーカス操作が検
知された時点で、マニュアルフォーカス実行フラグFmfonが「１」とされる。
その後フォーカス操作が終了され、通常期間ｔnorに移行したとする。この場合にカメラワーク判定部３０ｂはマニュアルフォーカス後のタイミングをフォーカス終了フラグFmfend＝＋１として発生させる。これに応じて判定実行フラグFdon＝１となる。この判定実行フラグFdon＝１に応じて主要被写体判定部３０ａで主要被写体判定が行われる。
【０１７１】
図３０は制御部３０（カメラワーク判定部３０ｂ）が行うマニュアルフォーカス後判定の処理例である。
ステップＦ５００で制御部３０は、例えばセンサ部１４における、フォーカスレンズのマニュアル操作（鏡筒リングの操作）を検出するセンサから情報、もしくはフォーカスレンズ位置センサの情報を取得し、ユーザ操作に基づくマニュアルフォーカス操作状態を取得して、変数Smfを設定する。例えばマニュアルフォーカス操作がされていれば変数Smf＝１とし、操作されていなければ変数Smf＝０とする。
【０１７２】
ステップＦ５０１では制御部３０は、変数Smfを参照して、現在マニュアルフォーカス操作が実行されているか否かを判定する。
変数Smf＝０で現在マニュアルフォーカス操作が行われていなければ制御部３０はステップＦ５０６に進み、カウント値MfOnCntをゼロとし、またマニュアルフォーカス実行フラグFmfonをゼロとする。なお、カウント値MfOnCntは、マニュアルフォーカス判定期間Tmfonを越えたか否かを判定するためのカウント値である。
【０１７３】
続いてステップＦ５０７では、フォーカス終了フラグFmfendの設定を行う。即ち、
フォーカス終了フラグFmfend＝（前回マニュアルフォーカス実行フラグFmfon_1）−（マニュアルフォーカス実行フラグFmfon）
とする。前回マニュアルフォーカス実行フラグFmfon_1は、前回のステップＦ５０７の時点でのマニュアルフォーカス実行フラグFmfonの値である。従ってフォーカス終了フラグFmfendは、図２９に示した「０」「＋１」「−１」のいずれかとなる。
また次回のステップＦ５０７において前回マニュアルフォーカス実行フラグFmfon_1として用いるため、今回のマニュアルフォーカス実行フラグFmfonの値を前回マニュアルフォーカス実行フラグFmfon_1に代入する。
そしてステップＦ５０８でフォーカス終了フラグFmfendの値を判定実行フラグFdonに代入する。従ってマニュアルフォーカス操作が行われる前の時点では、判定実行フラグFdon＝０となる。
【０１７４】
変数Smf＝１で現在マニュアルフォーカス操作がされているのであれば制御部３０はステップＦ５０１からＦ５０２に進み、カウント値MfOnCntをインクリメントする。
そしてステップＦ５０３で制御部３０は、カウント値MfOnCntとマニュアルフォーカス判定期間Tmfonを比較する。カウント値MfOnCntがマニュアルフォーカス判定期間Tmfonに達していなければ、ステップＦ５０５でマニュアルフォーカス実行フラグFmfonをゼロとする。そしてステップＦ５０７でフォーカス終了フラグFmfendを設定し、ステップＦ５０８で判定実行フラグFdonに代入する。判定実行フラグFdon＝０となる。
【０１７５】
ステップＦ５０３でカウント値MfOnCntがマニュアルフォーカス判定期間Tmfonに達したと判定された場合、制御部３０はステップＦ５０４でマニュアルフォーカス実行フラグFmfon＝１とする。つまりマニュアルフォーカス判定期間Tmfonの間、継続してマニュアルフォーカス操作が行われたことが確認されたことになり、これをもってマニュアルフォーカス操作が実行されていると判定する。
そしてステップＦ５０７でフォーカス終了フラグFmfendを設定し、ステップＦ５０８で判定実行フラグFdonに代入する。判定実行フラグFdonはマニュアルフォーカス実行フラグFmfon＝１とされた時点では「−１」となり、その後、マニュアルフォーカス実行フラグF mfon＝１が継続されているときは「０」となる。
【０１７６】
マニュアルフォーカス操作が終了されると、制御部３０はステップＦ５０１→Ｆ５０６と進み、カウント値MfOnCnt＝０とし、またマニュアルフォーカス実行フラグFmfon＝０とする。
この場合ステップＦ５０７でフォーカス終了フラグFmfend＝１とされ、ステップＦ５０８で判定実行フラグFdon＝１となる。
これにより、後述の図３１において実質的な主要被写体判定（ステップＦ６０５〜Ｆ６１０）が行われることになる。
なお、その後、マニュアルフォーカス実行フラグFmfon＝０が継続するため、次の時点のステップＦ５０７でフォーカス終了フラグFmfend＝０とされ、ステップＦ５０８で判定実行フラグFdon＝０となる。
【０１７７】
図３１は制御部３０（主要被写体判定部３０ａ）による主要被写体判定処理を示している。
この例は、主要被写体判定に関して制御部３０は候補検出部２７からの候補画像枠情報の取り込みは継続して行っていることは図８と同様としている。そして上述の判定実行フラグFdon＝１となることに応じて、合焦度判定部２８による合焦度の情報を用いて実質的な判定処理（ステップＦ６０５〜Ｆ６１１）を開始する処理例としている。
制御部３０は例えば１フレームタイミング毎にステップＦ６０１〜Ｆ６０４及びＦ６１２（判定実行フラグFdon＝１の期間はステップＦ６０１〜Ｆ６１２）の処理を行う。
【０１７８】
制御部３０は主要被写体判定処理を開始すると、まず初期設定としてステップＦ６００で主要被写体設定済みか否かを示すフラグである変数ＴＳＦ＝０とる。
ステップＦ６０１、Ｆ６０２、Ｆ６０３は図８のステップＦ１０１、Ｆ１０２、Ｆ１０３と同様、或るフレームについての候補画像枠情報を取り込み、各候補画像枠Ｅ（ｎ）について、重心Ｇの座標を算出し、さらに各候補画像枠Ｅ（ｎ）の重心Ｇから判定基準点ＳＰまでの距離Diff（ｎ）を算出する。
ステップＦ６０４で制御部３０は、判定実行フラグFdon及び変数ＴＳＦを確認する。変数ＴＳＦ＝０であって、かつ判定実行フラグFdon＝１であればステップＦ６０５に進む。これ以外の場合は実質的な判定処理（Ｆ６０５〜Ｆ６１１）を行わずにステップＦ６１２→Ｆ６０１と処理を進める。
【０１７９】
変数ＴＳＦ＝０であって、かつ判定実行フラグFdon＝１となると、制御部３０はステップＦ６０５で、各候補画像枠Ｅ（ｎ）について、注目すべき合焦度判定ブロックを選択する。
上述のように合焦度判定部２８では、各ブロックＢＫ毎の合焦度の値を算出している。合焦度が求められた各ブロックＢＫとしての領域と、候補画像枠Ｅ（ｎ）の領域は一致しているわけではない。そこで、各候補画像枠Ｅ（ｎ）が、どこのブロックＢＫに対応しているか、さらには、各候補画像枠Ｅ（ｎ）の合焦度は、どのブロックＢＫを用いて求めるかを選択することとなる。
図３２で説明する。図３２Ａは、各候補画像枠Ｅ１，Ｅ２，Ｅ３と、ブロックＢＫの関係を示している。
今、現在のフレームでは、候補画像枠Ｅ１は、図３２ＢのようにブロックＢＫ８，ＢＫ９，ＢＫ１５，ＢＫ１６にまたがって存在しているとする。同様に図３２Ｃのように候補画像枠Ｅ２はブロックＢＫ１１，ＢＫ１２，ＢＫ１８，ＢＫ１９に存在し、図３２Ｄのように候補画像枠Ｅ３はブロックＢＫ６，ＢＫ７，ＢＫ１３，ＢＫ１４に存在しているとする。図３２Ｂ，図３２Ｃ，図３２Ｄには、各ブロックＢＫ内の数値として、そのブロックＢＫの合焦度の値を示している。
【０１８０】
ステップＦ６０５の合焦度判定ブロックの選択とは、候補画像枠Ｅ１，Ｅ２，Ｅ３について、それぞれ図３２Ｂ，図３２Ｃ，図３２Ｄで斜線を付したブロックＢＫ８、ＢＫ１２、ＢＫ７を選択する処理となる。
図３２Ｂの候補画像枠Ｅ１について説明すれば、まず候補画像枠Ｅ１が含まれるブロックＢＫ８，ＢＫ９，ＢＫ１５，ＢＫ１６を選択する。そしてその中で、候補画像枠Ｅ１の面積占有率が最も高いブロックＢＫ（この例ではブロックＢＫ８）を合焦度判定ブロックとするものである。なお、各ブロックＢＫは固定的に画像を分割したものであるため、各ブロックＢＫの範囲は制御部３０にとって既知である。また各候補画像枠Ｅ（ｎ）については、候補画像枠情報として、二次元（ｘ−ｙ）座標値としてのｘ値、ｙ値、候補画像枠の幅ｗ、高さｈの情報が候補検出部２７から供給される。従って制御部３０は、各候補画像枠Ｅ（ｎ）について面積占有率が最も高いブロックＢＫを判定できる。
【０１８１】
ステップＦ６０６で制御部３０は、各候補画像枠Ｅ（ｎ）について選択した合焦度判定ブロックの合焦度の値を参照して、合焦しているか否かを判断する。例えば合焦度の値が「８０」以上の場合、合焦していると判定する。
ステップＦ６０７で制御部３０は、各候補画像枠Ｅ（ｎ）についてステップＦ６０３で算出した、各候補画像枠Ｅ（ｎ）の重心Ｇから判定基準点ＳＰまでの距離Diff（ｎ）が、判定基準距離DiffMINより小さいか否かを判定する。つまり、各候補画像枠Ｅ（ｎ）が例えば画面中央点などと設定された判定基準点ＳＰに近いものであるか否かを判定する。
【０１８２】
そして制御部３０は、ステップＦ６０６で判断した合焦条件、及びステップＦ６０７で判断した位置条件が共に満たされた候補画像枠Ｅ（ｎ）を、ステップＦ６０８で主要被写体と判定し、主要被写体情報を生成する。そしてステップＦ６０９で変数ＴＳＦ＝１とし、ステップＦ６１０で主要被写体情報を出力する。これにより主要被写体情報が、それを使用するアプリケーションプログラムや制御プログラムに受け渡される。
一方、ステップＦ６０６で判断した合焦条件、又はステップＦ６０７で判断した位置条件が共のいずれか一方でも満たされなかった候補画像枠Ｅ（ｎ）については、ステップＦ６０８の処理を行わず、つまり主要被写体とは判定しないこととなる。
【０１８３】
結果としてこの図３１の主要被写体判定処理によれば、マニュアルフォーカス操作が終了された時点で、合焦状態にあり、かつ距離Diff（ｎ）が判定基準点ＳＰに対して判定基準距離DiffMINより短い候補画像枠Ｅ（ｎ）が、主要被写体と判定される。
例えば図３２Ｂの候補画像枠Ｅ１は、合焦度判定ブロックＢＫ８の合焦度が「９０」であって合焦していると判定されるが、距離Diff（ｎ）が判定基準距離DiffMINより長いとして主要被写体と判定されない。
図３２Ｃの候補画像枠Ｅ２は、合焦度判定ブロックＢＫ１２の合焦度が「９５」であって合焦していると判定され、さらに距離Diff（ｎ）が判定基準距離DiffMINより短いとして主要被写体と判定される。
図３２Ｄの候補画像枠Ｅ３は、合焦度判定ブロックＢＫ７の合焦度が「３０」であって合焦していないと判定されることで、主要被写体と判定されない。
【０１８４】
マニュアルフォーカス操作終了時とは、撮像者が目的の被写体にピントを合わせた時点であり、かつ当該被写体を画面中央付近に捉えている状況が多いと推定される。従って、上記のカメラワーク判定処理及び主要被写体判定処理により、ユーザが目的とする被写体を主要被写体と判定する確度を高めることができる。そしてそのような主要被写体判定により、自動的にその主要被写体に対してフォーカス制御が行われたり、露光制御が行われるなどすれば、高品位な静止画／動画撮像が可能となる。もちろんこの場合も撮像者にとって適切な主要被写体判定が自動的に行われることになり、撮像時の操作性は格段に向上する。
【０１８５】
なお第９の処理例について以下のような各種の変形例が考えられる。
まずステップＦ６０５について、候補画像枠Ｅ（ｎ）について占有率で１つの合焦度判定ブロックを選択したが、他の選択手法もある。
例えば候補画像枠Ｅ（ｎ）の重心又は中心が位置するブロックを合焦度判定ブロックとしてもよい。
候補画像枠の抽出条件によるが、候補画像の中の特定部分が位置するブロックを合焦度判定ブロックとしてもよい。例えば候補画像として身体画像を抽出する場合に、顔画像が位置するブロックとするなどである。
また候補画像枠Ｅ（ｎ）を含む複数ブロックＢＫのうちで、最も合焦度の値の高いブロック（又は最も合焦度の低いブロック）を合焦度判定ブロックとしてもよい。
また候補画像枠Ｅ（ｎ）を含む複数ブロックＢＫのうちで、最も判定基準点ＳＰに近いブロック（又は最も遠いブロック）など、位置条件で合焦度判定ブロックを選択してもよい。
【０１８６】
また候補画像枠Ｅ（ｎ）が位置する複数のブロックをすべて合焦度判定ブロックとしてもよい。その場合、ステップＦ６０６での合焦判定は、複数の合焦度判定ブロックの合焦度の値の平均値を用いたり、或いは最高値、最小値を用いるようにすればよい。
この場合、１つのブロックを合焦度判定ブロックとするための占有率の演算等は不要となり演算負荷が軽くできる。
【０１８７】
主要被写体判定については合焦条件と位置条件のＡＮＤ条件の例としたが、位置条件をなく合焦条件のみで判定しても良い。
即ちステップＦ６０６で合焦していると判定された候補画像枠Ｅ（ｎ）は、すべて主要被写体と判定してもよい。
或いは、ステップＦ６０６で合焦していると判定された候補画像枠Ｅ（ｎ）が複数ある場合は、そのうちで最も合焦度の高い１つの候補画像枠Ｅ（ｎ）を主要被写体と判定してもよい。
また合焦条件の判定は、複数フレームでの合焦度の値を用いて行ってもよい。例えば合焦度判定ブロックについて連続する複数フレームでの合焦度の値の平均値、又は最大値、又は最小値を計算し、その値が例えば「８０」以上であれば合焦していると判定するなどである。
【０１８８】
また位置条件を加えて判定する場合、判定基準点ＳＰに近いという条件ではなく、例えば画面中央の領域を判定基準領域とし、その中に全部が含まれる候補画像枠Ｅ（ｎ）、その中に重心が含まれる候補画像枠Ｅ（ｎ）、その中に半分以上の面積が含まれる候補画像枠Ｅ（ｎ）などを位置条件としてもよい。
さらには、画像上の縁部ではない候補画像枠Ｅ（ｎ）、特定のブロック範囲の候補画像枠Ｅ（ｎ）などとして位置条件を設定しても良い。
【０１８９】
また上記処理例では、並行して候補画像枠Ｅ（ｎ）を抽出したが、合焦ブロックを判定した後に候補画像枠Ｅ（ｎ）を抽出しても良い。例えば合焦しているブロックＢＫの範囲内もしくはその近辺ブロック内で候補検出を行い、抽出された候補画像を主要被写体と判定する例である。
【０１９０】
また全ブロックＢＫ１〜ＢＫ（Ｍ）を対象として合焦度の算出・判定を行うのでなく、例えば画像データの中央部近辺のブロックＢＫのみなど、一部のブロックＢＫを対象として合焦度の算出・判定を行うものとしてもよい。例えば主要被写体としたいと撮像者が考えている被写体は、撮像者はなるべく画像の中央部近辺に捉えるように撮像方向を調整することを考えれば、合焦度判定部２８が中央部近辺のブロックＢＫのみを対象として合焦度判定を行っても、確度の高い主要被写体設定を行うことができ、さらには合焦度判定部
２８や制御部３０の処理負荷の軽減にもなる。
【０１９１】
ブロックＢＫの分割は多様に考えられる。
上記例ではブロックＢＫ１〜ＢＫ（Ｍ）として説明したが、分割数は４分割、６分割、８分割、９分割・・・３０分割、４０分割など多様に考えられる。
ブロック数が多いほど、合焦度算出や合焦度判定ブロックの選択などの処理負担は増えるが、ズーム状態や被写体が小さいことなどによって候補画像が小さい場合でも確度の高い主要被写体判定ができる。逆にブロック数が少ないほど処理負担は軽くなる。
【０１９２】
分割する各ブロックＢＫは、全てが同一の面積や同一の領域形状でなくてもよい。例えば画像の端部は１つのブロックＢＫを広い範囲とし、画面の中央部は細かいブロックＢＫに分割することなども考えられる。主要被写体の存在する位置として画面中央付近の確率が高いことを考えれば、画面中央部で細かく領域分割することは適切となる。
【０１９３】
＜１３．プログラム及びコンピュータ装置への適用＞
以上、画像処理装置１、撮像装置１０の実施の形態を説明してきたが、上述した主要被写体判定処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。
【０１９４】
実施の形態のプログラムは、上述の実施の形態で示した処理を、例えばＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）等の演算処理装置に実行させるプログラムである。
即ちこのプログラムは、撮像時のカメラワークを判定して該判定に基づいて画像データに対する主要被写体の判定開始タイミングを設定する処理と、判定開始タイミングからの画像データから、該画像データに含まれる被写体のうちで主要被写体を判定する処理とを演算処理装置に実行させるプログラムである。
具体的には、実施の形態のプログラムは、図２や第１〜第９の処理例として説明した処理を演算処理装置に実行させるプログラムとすればよい。
このようなプログラムにより、上述した主要被写体判定を実行する装置を、演算処理装置を用いて実現できる。
【０１９５】
このようなプログラムはコンピュータ装置等の機器に内蔵されている記録媒体としてのＨＤＤや、ＣＰＵを有するマイクロコンピュータ内のＲＯＭ等に予め記録しておくことができる。
あるいはまた、フレキシブルディスク、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)、ＭＯ(Magnet optical)ディスク、ＤＶＤ(Digital Versatile Disc)、ブルーレイディスク（Blu-ray Disc（登録商標））、磁気ディスク、半導体メモリ、メモリカードなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
また、このようなプログラムは、リムーバブル記録媒体からパーソナルコンピュータ等にインストールする他、ダウンロードサイトから、ＬＡＮ(Local Area Network)、インターネットなどのネットワークを介してダウンロードすることもできる。
【０１９６】
またこのようなプログラムによれば、実施の形態の画像処理装置の広範な提供に適している。例えばパーソナルコンピュータ、携帯型情報処理装置、携帯電話機、ゲーム機器、ビデオ機器、ＰＤＡ（Personal Digital Assistant）等にプログラムをダウンロードすることで、当該携帯型情報処理装置等を、本開示の画像処理装置とすることができる。
例えば、図３３に示されるようなコンピュータ装置において、図１の画像処理装置１や撮像装置１０における主要被写体判定処理と同様の処理が実行されるようにすることもできる。
【０１９７】
図３３において、コンピュータ装置７０のＣＰＵ７１は、ＲＯＭ７２に記憶されているプログラム、または記憶部７８からＲＡＭ７３にロードされたプログラムに従って各種の処理を実行する。ＲＡＭ７３にはまた、ＣＰＵ７１が各種の処理を実行する上において必要なデータなども適宜記憶される。
ＣＰＵ７１、ＲＯＭ７２、およびＲＡＭ７３は、バス７４を介して相互に接続されている。このバス７４にはまた、入出力インターフェース７５も接続されている。
【０１９８】
入出力インターフェース７５には、キーボード、マウスなどよりなる入力部７６、ＣＲＴ（Cathode Ray Tube）やＬＣＤ、或いは有機ＥＬパネルなどよりなるディスプレイ、並びにスピーカなどよりなる出力部７７、ハードディスクなどより構成される記憶部７８、モデムなどより構成される通信部７９が接続されている。通信部７９は、インターネットを含むネットワークを介しての通信処理を行う。
【０１９９】
入出力インターフェース７５にはまた、必要に応じてドライブ８０が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア８１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部７８にインストールされる。
【０２００】
上述した主要被写体判定処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
この記録媒体は、例えば図３３に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（ブルーレイディスク、ＣＤ−ＲＯＭ、ＤＶＤを含む）、光磁気ディスク（MD（Mini
Disc）を含む）、若しくは半導体メモリなどよりなるリムーバブルメディア８１により構成される。或いは、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているＲＯＭ７２や、記憶部７８に含まれるハードディスクなどでも構成される。
【０２０１】
このようなコンピュータ装置７０は、通信部７９による受信動作や、或いはドライブ８０（リムーバブルメディア８１）もしくは記録部７８での再生動作等により、動画データを入力した際に、ＣＰＵ７１がプログラムに基づいて、上述のカメラワーク判定部３、主要被写体判定部２の機能を持つようにし、図２、或いは第１から第９の処理例のような処理を実行することで、入力された画像データについて自動的に主要被写体判定を行うことができる。
なお、この場合、過去になされた撮像時のカメラワークを判定する必要がある。ＣＰＵ７１は、フレーム画像データの解析で、パン、ズーム、フォーカス（合焦位置の変化）を検出することができる。例えばフレーム相互間の画像の動き、サイズ、合焦状態変化から、入力データにおいて撮像時にパン、ズーム、マニュアルフォーカスされていた期間を判定することが可能である。
或いはまた、撮像時に各フレーム画像データに対応するメタデータとして、カメラワークの情報が付加されていれば、ＣＰＵ７１はそのメタデータを参照してカメラワークを判定できることとなる。
【０２０２】
＜１４．変形例＞
上述の実施の形態は、各種の変形例が考えられる。
画像処理装置１、撮像装置１０、コンピュータ装置７０としての各例において、全ての場合に、チルト動作を判定することも当然に考えられる。チルト動作の判定（チルト動作中判定やチルト後判定）については、上述のパン動作判定と全く同様に行うことができる。ジャイロセンサ等による角速度検出を、チルト方向に対応したものとすればよいものである。従ってカメラワーク判定処理として、チルト動作、チルト後、チルト後ズーム動作、チルト後ズーム後、ズーム後チルト動作、ズーム後チルト後、チルト後パン動作、チルト後パン後、パン後チルト動作、パン後チルト後なども判定でき、それらの場合に主要被写体判定が行われるようにすることもできる。
【０２０３】
また第９の処理例におけるマニュアルフォーカス後判定を、パン、チルト、ズームと組み合わせることも考えられる。
例えばズーム後のマニュアルフォーカスを判定して、そのマニュアルフォーカス後に合焦条件を用いて主要被写体判定を行うなどである。
【０２０４】
またパン動作中、ズーム動作中（第１，第３，第５，第７の処理例）に主要被写体判定を行う例では、当該動作が継続している期間を主要被写体判定期間としたが、主要被写体判定が完了しなかった場合は、パン動作やズーム動作が終了された後も、主要被写体判定を継続するようにしてもよい。
【０２０５】
また主要被写体判定のための条件として距離Diff（ｎ）で判定する位置条件や合焦条件を図８，図３１で例示したが、さらに多様に考えられる。
例えば候補画像のサイズが所定ピクセル以上などとするサイズ条件、被写体距離（撮像装置１０と被写体の相対距離）が所定範囲内などの距離条件などを単独もしくは複合的に用いて主要被写体判定を行ってもよい。
また画像サイズや被写体距離の時間的な変化により判定しても良い。
また候補画像の属性を主要被写体判定条件として用いても良い。例えば被写体画像について、子供、大人、男性、女性、人、犬、猫などの属性を判定する。例えば子供であることを主要被写体の条件とするなどである。またこのような属性条件をユーザが撮像目的に応じて選択できるようにするとよい。
【０２０６】
また位置条件、合焦条件、サイズ条件、距離条件、属性条件は、主要被写体判定のための絶対条件ではなく優先条件としてもよい。例えば或る条件で複数の候補画像が該当した場合、その中で優先条件により主要被写体を決定するなどである。
【０２０７】
また主要被写体情報は、画像効果処理や画像編集処理にも利用できると述べたが、そのためには再生画像を対象として主要被写体判定処理を行うことも好適である。
このような再生画像を対象とする主要被写体判定処理は、図１の画像処理装置、図３２の情報処理装置などにおいても当然に想定される。
【０２０８】
また、主要被写体判定処理の結果については、その後撮像されて記録された静止画データや動画データに、メタデータとして付加してもよい。つまり主要被写体を示す情報を静止画ファイル等に付加する。
また、スルー画を表示させ、同時に主要被写体判定処理を行っている間に、撮像者の操作による主要被写体指定操作を可能としてもよい。
【０２０９】
また、実施の形態では、主に静止画撮像を想定して主要被写体を判定する処理を説明したが、動画撮像のためのスタンバイ中や、動画の撮像及び記録の実行中においても、撮像される複数のフレームから主要被写体判定を行う処理として、上記実施の形態の処理を適用できる。
【０２１０】
なお本技術は以下のような構成も採ることができる。
（１）撮像時のカメラワークを判定し、該判定に基づいて画像データに対する主要被写体の判定開始タイミングを設定するカメラワーク判定部と、
上記判定開始タイミングからの画像データから、該画像データに含まれる被写体のうちで主要被写体を判定する主要被写体判定部と、を備えた画像処理装置。
（２）上記主要被写体判定部は、上記判定開始タイミングからの複数のフレームの画像データにおける被写体位置状態を観測し、特定の位置条件に合致した被写体のうちで主要被写体を判定する上記（１）に記載の画像処理装置。
（３）上記特定の位置条件は、画像上での所定の位置状態を満たす状況が、複数フレームにおいて平均的、累積的、もしくは継続的に得られることである上記（２）に記載の画像処理装置。
（４）上記主要被写体判定部は、上記判定開始タイミングからの画像データにおける被写体の合焦状態を観測し、特定の合焦条件に合致した被写体のうちで主要被写体を判定する上記（１）に記載の画像処理装置。
（５）上記特定の合焦条件に合致する被写体とは、画像データの分割領域毎に計測した合焦度データが所定値以上となっている分割領域に位置する被写体である上記（４）に記載の画像処理装置。
（６）上記主要被写体判定部は、上記特定の合焦条件に合致する被写体のうちであって、さらに特定の位置条件に合致した被写体のうちで主要被写体を判定する上記（４）又は（５）に記載の画像処理装置。
（７）上記カメラワーク判定部は、撮像装置のパン又チルト動作を検出することに応じて判定開始タイミングを設定する上記（１）乃至（３）のいずれかに記載の画像処理装置。
（８）上記カメラワーク判定部は、撮像装置のパン又チルト動作の終了を検出することに応じて判定開始タイミングを設定する上記（１）乃至（３）のいずれかに記載の画像処理装置。
（９）上記カメラワーク判定部は、撮像装置のズーム動作を検出することに応じて判定開始タイミングを設定する上記（１）乃至（３）のいずれかに記載の画像処理装置。
（１０）上記カメラワーク判定部は、撮像装置のズーム動作の終了を検出することに応じて判定開始タイミングを設定する上記（１）乃至（３）のいずれかに記載の画像処理装置。
（１１）上記カメラワーク判定部は、撮像装置のパン動作からズーム動作への遷移を検出することに応じて、もしくは該ズーム動作の終了を検出することに応じて判定開始タイミングを設定する上記（１）乃至（３）のいずれかに記載の画像処理装置。
（１２）上記カメラワーク判定部は、撮像装置のズーム動作からパン動作への遷移を検出することに応じて、もしくは該パン動作の終了を検出することに応じて判定開始タイミングを設定する上記（１）乃至（３）のいずれかに記載の画像処理装置。
（１３）上記カメラワーク判定部は、撮像装置のマニュアルフォーカス動作の終了を検出することに応じて判定開始タイミングを設定する上記（１）又は（４）又は（５）又は（６）に記載の画像処理装置。
【符号の説明】
【０２１１】
１…画像処理装置、２…主要被写体判定部、３…ローカル動き検出部、４…グローバル動き検出部、１０…撮像装置、１１…光学系、１２…イメージャ、１３…光学系駆動部、１４…センサ部、１５…記録部、１６…通信部、１７…距離センサ、２０…デジタル信号処理部、２１…前処理部、２２…同時化部、２３…ＹＣ生成部、２４…解像度変換部、２５…コーデック部、２７…候補検出部、２８…合焦度判定部、３０…制御部、３０ａ…主要被写体判定部、３０ｂ…カメラワーク判定部、３２…ＵＩコントローラ、３３…ユーザインターフェース、３４…表示部、３５…操作部、７０…コンピュータ装置、７１…ＣＰＵ
【図１】
2014109124.tif 000003
【図２】
2014109124.tif 000004
【図３】
2014109124.tif 000005
【図４】
2014109124.tif 000006
【図５】
2014109124.tif 000007
【図６】
2014109124.tif 000008
【図７】
2014109124.tif 000009
【図８】
2014109124.tif 000010
【図９】
2014109124.tif 000011
【図１０】
2014109124.tif 000012
【図１１】
2014109124.tif 000013
【図１２】
2014109124.tif 000014
【図１３】
2014109124.tif 000015
【図１４】
2014109124.tif 000016
【図１５】
2014109124.tif 000017
【図１６】
2014109124.tif 000018
【図１７】
2014109124.tif 000019
【図１８】
2014109124.tif 000020
【図１９】
2014109124.tif 000021
【図２０】
2014109124.tif 000022
【図２１】
2014109124.tif 000023
【図２２】
2014109124.tif 000024
【図２３】
2014109124.tif 000025
【図２４】
2014109124.tif 000026
【図２５】
2014109124.tif 000027
【図２６】
2014109124.tif 000028
【図２７】
2014109124.tif 000029
【図２８】
2014109124.tif 000030
【図２９】
2014109124.tif 000031
【図３０】
2014109124.tif 000032
【図３１】
2014109124.tif 000033
【図３２】
2014109124.tif 000034
【図３３】
2014109124.tif 000035
【国際調査報告】
2014109124.tif 000036
2014109124.tif 000037