(57)【要約】【課題】  焦点検出の精度が低下し得る状況においても精度良く動体を検出すること。【解決手段】  ＡＦ枠統合部５１は、特定の時刻に対応して得られた複数の焦点検出結果の比較に基づいて、焦点検出領域からなる少なくとも１つのグループを生成する。移動判定部５３は、第１の時刻に対応する焦点検出結果に基づいて生成された第１のグループに対応する焦点検出結果と、前記第１の時刻より後の時刻である第２の時刻に対応する焦点検出結果に基づいて生成された第２のグループに対応する焦点検出結果と、に基づいて、前記第１のグループ及び前記第２のグループに対応する物体が移動しているか否かを判定する。【選択図】  図２
2020174280.tif 000002
【特許請求の範囲】
【請求項１】
特定の時刻に対応して、複数の焦点検出領域の各焦点検出領域から、焦点検出結果を得る焦点検出手段と、
前記特定の時刻に対応して得られた複数の焦点検出結果の比較に基づいて、焦点検出領域からなる少なくとも１つのグループを生成するグルーピング手段と、
前記グルーピング手段によって生成されたグループに対応する焦点検出結果に基づいて、当該グループに対応する物体の移動を判定する移動判定手段と、を有し、
前記移動判定手段は、第１の時刻に対応する焦点検出結果に基づいて生成された第１のグループに対応する焦点検出結果と、前記第１の時刻より後の時刻である第２の時刻に対応する焦点検出結果に基づいて生成された第２のグループに対応する焦点検出結果と、に基づいて、前記第１のグループ及び前記第２のグループに対応する物体が移動しているか否かを判定することを特徴とする画像処理装置。
【請求項２】
前記グルーピング手段は、前記第２のグループに含まれる第１の焦点検出領域の焦点検出結果と、前記第１の焦点検出領域に隣接する第２の焦点検出領域における前記第２の時刻に対応する焦点検出結果と、の差分が第１の閾値未満の場合は、前記第２の焦点検出領域を第２のグループにグルーピングすることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記グルーピング手段は、前記第１の焦点検出領域の焦点検出結果と、前記第２の焦点検出領域における前記第２の時刻に対応する焦点検出結果と、の差分が前記第１の閾値以上の場合には、前記第２の焦点検出領域を第２のグループにグルーピングしないことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記グルーピング手段は、前記第２のグループの焦点検出結果の代表値と、前記第２のグループとは異なる第３のグループの前記第２の時刻に対応する焦点検出結果の代表値と、の差分が前記第１の閾値より大きい第２の閾値未満の場合は、前記第３のグループを前記第２のグループにグルーピングすることを特徴とする請求項２又は請求項３に記載の画像処理装置。
【請求項５】
前記グルーピング手段は、前記第２のグループの焦点検出結果の代表値と、前記第３のグループの前記第２の時刻に対応する焦点検出結果の代表値と、の差分が前記第２の閾値以上の場合は、前記第３のグループを前記第２のグループにグルーピングしないすることを特徴とする請求項４の記載の画像処理装置。
【請求項６】
前記移動判定手段は前記グルーピング手段によって生成されたグループに含まれる焦点検出領域の数が閾値未満の場合には、当該グループを判定に用いないことを特徴とする請求項１乃至請求項５のいずれか１項に記載の画像処理装置。
【請求項７】
前記第１のグループに対応する焦点検出結果と前記第２のグループに対応する焦点検出結果とを比較することで、前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とが同じ被写体であるか否かを判断する同定手段と、
前記同定手段が前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とが同じ被写体であると同定した場合に、前記第２のグループに対応する焦点検出結果を前記第１のグループ及びその焦点検出結果と紐づけて記憶する記憶手段と、を有することを特徴とする請求項１乃至請求項６のいずれか１項に記載の画像処理装置。
【請求項８】
前記同定手段は、前記第１のグループに対応する焦点検出結果と前記第２のグループに対応する焦点検出結果との差分が第３の閾値未満である場合に、記第１のグループに対応する被写体と前記第２のグループに対応する被写体とが同じ被写体であると判断し、前記第１のグループに対応する焦点検出結果と前記第２のグループに対応する焦点検出結果との差分が前記第３の閾値以上である場合には、前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とは異なる被写体であると判断することを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記同定手段は、前記第１のグループの位置と前記第２のグループの位置との差分が第４の閾値未満である場合に、前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とが同じ被写体であると判断し、前記第１のグループの位置と前記第２のグループの位置との差分が前記第４の閾値以上である場合には、前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とは異なる被写体であると判断することを特徴とする請求項７に記載の画像処理装置。
【請求項１０】
前記同定手段は、前記第１のグループに含まれる焦点検出領域の数と前記第２のグループに含まれる焦点検出領域の数との差分が第５の閾値未満である場合に、前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とが同じ被写体であると判断し、前記第１のグループに含まれる焦点検出領域の数と前記第２のグループに含まれる焦点検出領域の数との差分が前記第５の閾値以上である場合には、前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とは異なる被写体であると判断することを特徴とする請求項７に記載の画像処理装置。
【請求項１１】
前記同定手段は、前記第１のグループに対応する焦点検出結果と前記第２のグループに対応する焦点検出結果との差分が第３の閾値未満であり、前記第１のグループの位置と前記第２のグループの位置との差分が第４の閾値未満であり、前記第１のグループに含まれる焦点検出領域の数と前記第２のグループに含まれる焦点検出領域の数との差分が第５の閾値未満である場合に、前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とが同じ被写体であると判断し、これらの条件の１つでも充たさない場合には、前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とは異なる被写体であると判断することを特徴とする請求項７に記載の画像処理装置。
【請求項１２】
前記移動判定手段は、前記同定手段によって同じ被写体であると判断された複数のグループに対応する焦点検出結果を比較することで、焦点検出結果の変化の方向が第１の方向であるか第２の方向であるかの比較した結果を複数取得し、
焦点検出結果の変化の方向が第１の方向であるという結果に対する焦点検出結果の変化の方向が第２の方向であるという結果の割合が所定の割合以上である場合には、前記被写体が第２の方向に移動していると判定することを特徴とする、請求項７乃至請求項１１のいずれか１項に記載の画像処理装置。
【請求項１３】
前記同定手段が前記第１のグループに対応する被写体と前記第２のグループに対応する被写体とが同じ被写体であると同定した場合に、前記第２のグループに対応する焦点検出結果を前記第１のグループ及びその焦点検出結果と紐づけて記憶する記憶手段と、
前記移動判定手段は、前記第１のグループに対応する焦点検出結果と、前記第２のグループに対応する焦点検出結果と、動体の運動モデルに対応している場合には、前記第１のグループ及び前記第２のグループに対応する物体が移動していると判断することを特徴とする請求項１乃至請求項６のいずれか１項に記載の画像処理装置。
【請求項１４】
特定の時刻に対応して、複数の焦点検出領域の各焦点検出領域から、焦点検出結果を得る焦点検出ステップと、
前記特定の時刻に対応して得られた複数の焦点検出結果の比較に基づいて、焦点検出領域からなる少なくとも１つのグループを生成するグルーピングステップと、
前記グルーピングステップにおいて生成されたグループに対応する焦点検出結果に基づいて、当該グループに対応する物体の移動を判定する移動判定ステップと、を有し、
前記移動判定ステップでは、第１の時刻に対応する焦点検出結果に基づいて生成された第１のグループに対応する焦点検出結果と、前記第１の時刻より後の時刻である第２の時刻に対応する焦点検出結果に基づいて生成された第２のグループに対応する焦点検出結果と、に基づいて、前記第１のグループ及び前記第２のグループに対応する物体が移動しているか否かを判定することを特徴とする画像処理装置の制御方法。
【請求項１５】
コンピュータを、請求項１乃至１４の何れか１項に記載の画像処理装置が有する各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は撮影対象を検出するための被写体検出装置及びその検出方法、及び画像処理装置に関するものである。
【背景技術】
【０００２】
近年、デジタルカメラでは、カメラによって自動選択された焦点検出領域においてピントが合うようにフォーカスレンズの駆動を制御するオートフォーカス（ＡＦ）機能が存在する。また、焦点検出領域の自動選択において、撮影の対象となる主要被写体を検出し、当該主要被写体に対応する焦点検出領域を自動選択する技術が知られている。
【０００３】
特許文献１では、主要被写体の検出方法として、焦点検出領域ごとにカメラから被写体までの距離情報の時間的変化を検出することで、焦点検出領域ごとに物体の近づき、遠ざかりを検出することが開示されている。そして、焦点検出領域に対応する被写体が動いている場合に、その被写体を主要被写体として検出する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】ＷＯ２０１４／１０９１２５
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１では、動いている被写体が主要被写体として検出することで、動いている被写体にピントが合うようにフォーカスレンズの駆動を制御することができる。
【０００６】
しかしながら、特許文献１では、次に例示するように、焦点検出領域において物体の動きが正しく検出されない場合があり得るという課題がある。例えば、被写体の輪郭周辺の焦点検出領域においては、被写体と背景が同時に含まれる場合がある。このような場合には当該焦点検出領域から検出される距離情報は信頼度が低く、当該距離情報に基づく動体判定の精度が低下する場合がある。また、例えば、背景等の動いてない部分が焦点検出の誤差により動体と判定されてしまう場合がある。また、例えば、撮像面位相差式の焦点検出においてはピントが合っていない部分から検出される焦点検出結果に誤差が生じる場合があり、当該焦点検出結果に基づく距離情報を用いた動体判定の精度が低下する場合がある。以上に例示したような理由により物体の動きが正しく検出できない場合に、動いていない被写体を動いている被写体であるとして検出してしまうと、実際には動いていない被写体にピントが合うようにフォーカスレンズの駆動を制御してしまう。
【０００７】
そこで、本発明は、焦点検出の精度が低下し得る状況においても精度良く動体を検出することができる画像処理装置、その制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、特定の時刻に対応して、複数の焦点検出領域の各焦点検出領域から、焦点検出結果を得る焦点検出手段と、前記特定の時刻に対応して得られた複数の焦点検出結果の比較に基づいて、焦点検出領域からなる少なくとも１つのグループを生成するグルーピング手段と、前記グルーピング手段によって生成されたグループに対応する焦点検出結果に基づいて、当該グループに対応する物体の移動を判定する移動判定手段と、を有し、前記移動判定手段は、第１の時刻に対応する焦点検出結果に基づいて生成された第１のグループに対応する焦点検出結果と、前記第１の時刻より後の時刻である第２の時刻に対応する焦点検出結果に基づいて生成された第２のグループに対応する焦点検出結果と、に基づいて、前記第１のグループ及び前記第２のグループに対応する物体が移動しているか否かを判定するよう構成したことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、焦点検出の精度が低下し得る状況においても精度良く動体を検出することができる。
【図面の簡単な説明】
【００１０】
【図１】デジタルカメラの構成例を示すブロック図である
【図２】実施例１における動体検出処理のフローチャートである
【図３】実施例１におけるＡＦ枠統合処理のフローチャートである
【図４】実施例１におけるＡＦ枠統合処理の説明図である
【図５】実施例１における同定処理のフローチャートである
【図６】実施例１における移動判定処理のフローチャートである
【図７】実施例２における動体検出処理のフローチャートである
【図８】実施例２における移動判定処理のフローチャートである
【発明を実施するための形態】
【００１１】
［実施例１］
以下、図面を参照して本発明の好適な実施形態を説明する。
【００１２】
＜撮像システムの構成＞
図１は、本実施形態によるデジタルカメラ１００の構成例を示すブロック図である。なお、本実施形態では、レンズ交換可能な撮像システムを例として説明するが、デジタルカメラ１００が固定レンズを有する構成であってもよい。また、ＰＣ等の画像処理装置とし、デジタルカメラ１００が取得する画像信号に相当する情報は、外部から取得する構成であっても良い。
【００１３】
図１において、レンズユニット１５０は、交換可能な撮影レンズを搭載するレンズユニットである。
【００１４】
レンズユニット１５０は通常、複数枚のレンズから構成されるレンズ群を有するが、ここでは簡略してフォーカスレンズ１０３のみを示している。通信端子６はレンズユニット１５０がデジタルカメラ１００側と通信を行う為の通信端子であり、通信端子１０はデジタルカメラ１００がレンズユニット１５０側と通信を行う為の通信端子である。レンズユニット１５０は、この通信端子６，１０を介してシステム制御部５０と通信し、内部のレンズシステム制御回路４によって絞り駆動回路２を介して絞り１の制御を行う。また、通信端子６，１０を介してシステム制御部５０と通信し、ＡＦ駆動回路３を介して、フォーカスレンズ１０３の位置を変位させることで焦点を合わせる。
【００１５】
ＡＥセンサ１７は、レンズユニット１５０を通した被写体の輝度を測光する。
【００１６】
焦点検出部１１は、位相差式焦点検出のための専用センサ（不図示を有し、公知の二次結像光学系を介して受光した光を当該専用センサによって光電変換し、出力された視差信号に基づいて位相差式焦点検出を実行する。位相差式焦点検出では、視差信号に基づいて像ずれ量を算出し、当該像ずれ量に基づいてデフォーカス量を算出する。焦点検出部１１は、位相差式焦点検出によって得られたデフォーカス量を、システム制御部５０に出力する。システム制御部５０はそれに基づいてレンズユニット１５０を制御する。
【００１７】
クイックリターンミラー１２（以下、ミラー１２）は、露光、ライブビュー撮影、動画撮影の際にシステム制御部５０から指示されて、不図示のアクチュエータによりアップダウンされる。ミラー１２は、フォーカスレンズ１０３を含むレンズ群から入射した光束をファインダ１６側と撮像部２２側とに切替えるためのミラーである。ミラー１２は通常時はファインダ１６へと光束を導くよう反射させるように配されているが、撮影が行われる場合やライブビュー表示の場合には、撮像部２２へと光束を導くように上方に跳ね上がり光束中から待避する（ミラーアップ）。またミラー１２はその中央部が光の一部を透過できるようにハーフミラーとなっており、光束の一部を、焦点検出を行うための焦点検出部１１に入射するように透過させる。
【００１８】
撮影者は、ペンタプリズム１４とファインダ１６を介して、フォーカシングスクリーン１３を観察することで、レンズユニット１５０を通して得た被写体の光学像の焦点や構図の確認が可能となる。
【００１９】
シャッター１０１は、システム制御部５０の制御で撮像部２２の露光時間を自由に制御できるフォーカルプレーンシャッターである。
【００２０】
撮像部２２は光学像を電気信号に変換するＣＣＤやＣＭＯＳ素子等で構成される撮像素子である。Ａ／Ｄ変換器２３は、アナログ信号をデジタル信号に変換する。Ａ／Ｄ変換器２３は、撮像部２２から出力されるアナログ信号をデジタル信号に変換するために用いられる。
【００２１】
画像処理部２４は、Ａ／Ｄ変換器２３からのデータ、又は、メモリ制御部１５からのデータに対し所定の画素補間、縮小といったリサイズ処理や色変換処理を行う。また、画像処理部２４では、撮像した画像データを用いて焦点検出を含む所定の演算処理が行われ、得られた演算結果に基づいてシステム制御部５０が露光制御、焦点調節制御を行う。これにより、ＴＴＬ（スルー・ザ・レンズ）方式のＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＥＦ（フラッシュプリ発光）処理が行われる。画像処理部２４では更に、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づいてＴＴＬ方式のＡＷＢ（オートホワイトバランス）処理も行っている。
【００２２】
ここで、画像処理部２４によって実行される焦点検出制御についてより詳しく説明する。本実施例では、画像処理部２４によって公知の撮像面位相差式の焦点検出が可能な構成となっている。すなわち、撮像部２２は撮像素子上に瞳分割可能な焦点検出用画素を全画素、または一部の画素に設ける事で視差信号を取得可能な構成である。システム制御部５０撮像部２２の撮像素子から取得した視差信号に基づいて位相差式の焦点検出を実行することで、デフォーカス量を算出する。画像処理部２４は、位相差式焦点検出によって得られたデフォーカス量を、システム制御部５０に出力する。システム制御部５０はそれに基づいてレンズユニット１５０を制御する。
【００２３】
なお、焦点検出部１１または画像処理部２４によって実行されると位相差式の焦点検出の一部または全部の処理を、システム制御部２０によって実行する構成としても良い。また、レンズユニット１５０を制御するためのレンズ駆動量の、デフォーカス量に基づく算出処理は、焦点検出部１１または画像処理部２４において実行してシステム制御部５０に出力する構成としても良いし、システム制御部５０において実行する構成としても良い。
【００２４】
不揮発性メモリ５６は、電気的に消去・記録可能なメモリであり、例えばＥＥＰＲＯＭ等が用いられる。不揮発性メモリ５６には、システム制御部５０の動作用の定数、プログラム等が記憶される。ここでいう、プログラムとは、本実施形態にて後述する各種フローチャートを実行するためのプログラムのことである。
【００２５】
システム制御部５０は、少なくとも１つのプロセッサーを有する制御部であり、デジタルカメラ１００全体を制御する。システム制御部５０はＡＦ枠統合部５１、同定判定部５２、移動判定部５３、を備える。システム制御部５０は前述した不揮発性メモリ５６に記録されたプログラムを実行することで、後述する本実施形態の各処理を実現する。５５はシステムメモリであり、ＲＡＭが用いられる。システムメモリ５５には、システム制御部５０の動作用の定数、変数、不揮発性メモリ５６から読み出したプログラム等を展開する。また、システム制御部はメモリ３２、Ｄ／Ａ変換器１９、表示部２８等を制御することにより表示制御も行う。
【００２６】
ＡＦ枠統合部５１（グルーピング手段とも称する）は焦点検出部１１から得られたデフォーカス量を元にＡＦ枠（焦点検出領域とも称する）を統合したグループを生成する。そして、統合された各グループに対応する代表デフォーカス量を算出する。算出された代表デフォーカス量はシステムメモリ５５に格納される。ＡＦ枠統合部５１の処理はデジタルカメラ１００の撮影中に継続して行われる。
【００２７】
同定処理部５２はＡＦ枠統合部５１が算出した最新グループの代表デフォーカス量と、システムメモリ５５に格納されている過去のグループの代表デフォーカス量との対応付けの処理を行う。対応付けの結果得られた各代表デフォーカス量の時間変化をシステムメモリ５５に格納する。
【００２８】
移動判定部５３はシステムメモリ５５に格納された代表デフォーカス量の時間変化の記憶を元に動体の検出を行う。システム制御部５０は移動判定部５３が検出した動体に基づいて露光制御、測距制御の対象の選択を行う。移動判定部５３を、移動判定手段とも称する。
【００２９】
＜動体検出処理の全体フロー＞
以下、本発明の実施例１で行われる動体検出処理の全体フローについて図２のフローチャート及び図４を参照して説明する。
【００３０】
まず、図２のステップＳ２０１で制御部５０は焦点検出部１１、または画像処理部２４から得られたデフォーカス量を全ＡＦ枠について取得する。ＡＦ枠は例えば図４の４０１の様に格子状に区切られた領域である。ここでは、焦点検出部１１もしくは画像処理部２４は、特定の時刻に対応して焦点検出部１１もしくは撮像部２２において得られた画像信号に基づいて、焦点検出部１１もしくは撮像部２２において得られた画像信号に基づいて、各ＡＦ枠からデフォーカス量を取得する。つまり、ステップＳ２０１において、特定の時刻に対応して複数の焦点検出結果が取得される。
【００３１】
次にステップＳ２０２において、ＡＦ枠統合部５１はＳ２０１で取得したデフォーカス量を元にＡＦ枠の統合処理を行う。これにより、図４の４０３に示すようにＡＦ枠を構図内の物体毎に切り分けることが出来る。統合処理の詳細については後述する。なお、少なくとも１つのＡＦ枠からなるグループを、以後「クラスタ」とも呼ぶ。
【００３２】
また、ステップＳ２０２において、制御部５０は生成された各クラスタそれぞれに対して各クラスタの焦点検出結果の代表値を算出する。本実施例では一例として、代表値として、代表デフォーカス量の算出を行う。本実施例では各クラスタに含まれるＡＦ枠のデフォーカス量の平均値を代表デフォーカス量として算出する。なお、各クラスタの焦点検出結果の代表値を得ることができれば、この算出方法に限らない。例えばクラスタが有するＡＦ枠から複数のデフォーカス量を検出できる場合には、複数のデフォーカス量の中央値や最頻値を用いても良い。また、クラスタの中央付近のＡＦ枠のデフォーカス量を代表値としても良い。
【００３３】
デジタルカメラ１００の撮影中、図２の一連の流れを繰り返し行われるため、ステップＳ２０１で算出された代表デフォーカス量はシステムメモリ５５に継続して格納される。以降、直前のステップＳ２０１よりも前にシステムメモリ５５に格納されていた代表デフォーカス量を過去クラスタの代表デフォーカス量と呼ぶ。
【００３４】
ステップＳ２０３において、同定処理部５２はＡＦ枠統合部５１がシステムメモリ５５に格納した最新の代表デフォーカス量と、過去にシステムメモリ５５に格納した過去クラスタの代表デフォーカス量との対応付けの処理を行う。同定処理の詳細については後述する。
【００３５】
ステップＳ２０４において、制御部５０は同定処理部５２で対応付けされた全クラスタの代表デフォーカス量の時間変化の記憶をシステムメモリ５５に格納する。
【００３６】
ステップＳ２０５で移動判定部５３はシステムメモリ５５に格納された代表デフォーカス量の時間変化の記憶を元に各クラスタの移動速度と移動方向の一貫性を算出し、各クラスタが動いているかの判定を行う。移動判定処理の詳細については後述する。
【００３７】
＜ＡＦ枠統合処理＞
ここでは図２のフローチャートにおけるＡＦ枠統合処理（Ｓ２０２）の詳細について、図３のフローチャート、図４の説明図を用いて説明する。
【００３８】
図３のステップＳ３０１において、制御部５０は全てのＡＦ枠に対し、ステップＳ３０２で選択済みか否かの判定を行う。全てのＡＦ枠が選択済みであればステップＳ３０８に、未選択のＡＦ枠が残っていればステップＳ３０２に進む。
【００３９】
ステップＳ３０２において、制御部５０は全てのＡＦ枠から一つのＡＦ枠を選択する。例えば図４の４０１に示す全ＡＦ枠の中から、図４の４０２を選択するとする。ここで選択されるＡＦ枠を、以後第１のＡＦ枠とも称する。
【００４０】
ステップＳ３０３において、制御部５０は第１のＡＦ枠に隣接する全てのＡＦ枠について、第１のＡＦ枠と比較済みか否かの判定を行う。隣接する全てのＡＦ枠が比較済みであればステップＳ３０８に、未比較のＡＦ枠が残っていればステップＳ３０４に進む。
【００４１】
ステップＳ３０４において、制御部５０は第１のＡＦ枠に隣接する全てのＡＦ枠から、未比較のＡＦ枠を一つ選択する。ここで第１のＡＦ枠の比較対象として選択されたＡＦ枠を、以後第２のＡＦ枠とも称する。
【００４２】
ステップＳ３０５において、制御部５０は第１のＡＦ枠のデフォーカス量と第２のＡＦ枠のデフォーカス量との差を計算する。デフォーカス量の差分が予め与えられた第１の閾値未満であればステップＳ３０７へ、第１の閾値以上であればステップＳ３０６へ進む。
【００４３】
第１の閾値の大きさによって、ＡＦ枠統合処理がどの程度の粒度でＡＦ枠をクラスタに統合するかの度合いが決定する。第１の閾値が小さい場合は、より大きい場合と比較して、より少数のＡＦ枠で構成される小さいクラスタが、より多数生成される。第１の閾値が大きい場合は、より小さい場合と比較して、より多数のＡＦ枠で構成される大きなクラスタが、より少数生成される。また、第１の閾値は、撮影時のレンズの焦点距離や撮影距離に応じて設定してもよい。例えば、撮影距離の場合は、遠い場合に減らし、近い場合に増やす。例えば焦点距離が短い場合は第１の閾値を小さく、焦点距離が長い場合は第１の閾値を大きくする事でレンズの焦点距離を変えても同じ粒度のクラスタを生成する事が出来る。
【００４４】
ステップＳ３０６において、制御部５０は第１のＡＦ枠と第２のＡＦ枠とを別のクラスタに割り当てる。ただし、既に同じクラスタに統合されていた場合は分離する処理は行わない。ここで、第１のＡＦ枠とまたは第２のＡＦ枠がまだクラスタに属していない場合は、まだクラスタに属していないＡＦ枠に対応して新規クラスタを作成して割り当てる。
【００４５】
ステップＳ３０７において、制御部５０は第２のＡＦ枠を含め、第２のＡＦ枠が所属するクラスタの全ＡＦ枠を、第１のＡＦ枠の所属するクラスタと統合する。
【００４６】
ステップＳ３０８において、制御部５０は生成された各クラスタそれぞれに対して各クラスタの焦点検出結果の代表値を算出する。前述のように、本実施例では一例として、代表値として、代表デフォーカス量の算出を行う。各クラスタについて、所属するＡＦ枠のデフォーカス量から代表デフォーカス量の算出を行う。本実施例で、制御部５０は、所属するＡＦ枠のデフォーカス量の平均値を求めることで代表デフォーカス量を算出する。前述のように、各クラスタの焦点検出結果の代表値を算出方法はこれに限らない。例えばクラスタが有するＡＦ枠から複数のデフォーカス量を検出できる場合には、複数のデフォーカス量の中央値や最頻値を用いても良い。また、クラスタの中央付近のＡＦ枠のデフォーカス量を代表値としても良い。
【００４７】
また、ステップＳ３０８において、制御部５０は各クラスタの位置を算出する。本実施例では一例として、クラスタを構成する各ＡＦ枠のセンサ上の位置の平均値を算出し、クラスタの位置とする。クラスタの位置に相当する値であれば、算出方法は、これに限らない。
【００４８】
ステップＳ３０９において、制御部５０は現在のクラスタの状態が、統合処理の終了条件を満たしているかを判断する。本実施例では統合に用いる第１の閾値が第２の閾値以上であることを終了条件とする。一例として、１ｆδを第２の閾値として設定することで、合焦状態が同等の深度幅に含まれる被写体は同一と見做す一方で、その深度幅以上に被写体位置に差がある被写体は同じクラスタとして統合しない。第１の閾値が第２の閾値以上である場合には、終了条件を満たしているとして統合処理を終了する。第１の閾値が第２の閾値未満である場合、ステップＳ３１０に進む。
【００４９】
ここで、前述のレンズ群がズームレンズを有する場合に、現在の焦点距離に応じて終了条件とする第２の閾値の大きさを変えても良い。より具体的には、焦点距離が大きいほど、終了条件とする第２の閾値を小さくしても良い。第１の焦点距離である場合と比較して、第１の焦点距離よりも大きい第２の焦点距離である場合には、同じ１ｆδの違いに対して、絶対距離としてはより大きな違いとなるためである。
【００５０】
また、終了条件として他の条件を用いても良い。例えば、クラスタの代表デフォーカス量の分散の大きさを用いてもよい。クラスタの代表デフォーカス量の分散が十分大きい場合には、各クラスタ同士が異なる被写体である可能性が高いため、統合処理を終了する。
【００５１】
ステップＳ３１０において、制御部５０は、ステップＳ３０５で使用する第１の閾値を新たに設定する。この時設定する第１の閾値は、先の統合におけるステップＳ３０５で用いた第１の閾値よりも十分大きくする事が望ましい。
【００５２】
ステップＳ３１０を終えると、制御部５０は、ＡＦ枠単位で行っていた統合処理に代えて、クラスタ単位の統合処理を、各クラスタの位置と代表デフォーカス量を用いて行う。つまり、クラスタの生成後は、各クラスタをＡＦ枠とみなし、ＡＦ枠に対して行った統合処理と同様の処理を、各クラスタに対して行う。このようにして統合処理は、Ｓ３０９において終了判定を満たすと判断されるまで、繰り返し実行される。
【００５３】
ここで、第１の閾値を変更する効果を説明する。第１の閾値は大きいほどＡＦ枠を統合しやすくなるが、例えば複数の物体を一つのクラスタと切り分けてしまう場合がある。そこで、本実施例では初期値として設定する第１の閾値を、最終的に求める統合の度合いに対応する第１の閾値よりも小さい値から始め、ステップＳ３１０において、第１の閾値がより大きくなるよう変更させながら処理を繰り返す。これにより、最終的に求める統合の度合に適した統合結果を得る。こうすることで、例えば最終的に求める統合の度合いに対応する第１の閾値から統合処理を開始すると遠近競合したＡＦ枠同士を同じクラスタに統合されてしまうようなシーンであっても、異なるクラスタにとして統合することができる。
【００５４】
＜同定処理＞
ここでは図２のフローチャートにおける同定処理（Ｓ２０３）の詳細について、図５のフローチャートを用いて説明する。ここで、図２に示す動体検出処理は実際には継続的に行われている為、過去の動体検出処理によってシステムメモリ５５には既に代表デフォーカス量の時間変化の記憶が格納されている。以後、ＡＦ枠統合処理から得られた最新のクラスタ群を現在クラスタ群、過去の動体検出処理によって生成済みの代表デフォーカス量の時間変化の記憶に紐付いた過去のクラスタ群を過去クラスタ群とする。ここで、過去クラスタ群に含まれる各クラスタは、第１の時刻に対応して焦点検出部１１もしくは撮像部２２において得られた画像信号に基づいて、焦点検出部１１もしくは画像処理部２４によって取得された複数の焦点検出結果に基づいて生成されたクラスタである。また、現在クラスタ群に含まれる各クラスタは、第１の時刻より後の時刻である第２の時刻に対応して焦点検出部１１もしくは撮像部２２において得られた画像信号に基づいて、焦点検出部１１もしくは画像処理部２４によって取得された複数の焦点検出結果に基づいて生成されたクラスタである。
【００５５】
図５のステップＳ５０１において、制御部５０は現在クラスタ群に属する全てのクラスタに対し、ステップＳ５０２で選択済みか否かの判定を行う。全てのクラスタが選択済みであればステップＳ５１１に進む。未選択のクラスタが残っていればステップＳ５０２に進む。
【００５６】
ステップＳ５０２において、制御部５０は現在クラスタ群から一つのクラスタを選択する。以後このクラスタを第１のクラスタとする。第１のクラスタを第１のグループとも称する。
【００５７】
ここで、第１のクラスタについて、このクラスタを構成するＡＦ枠の枠数が閾値を下回る場合、この第１のクラスタを現在クラスタ群から削除し、新たに第１のクラスタを選択してもよい。閾値を下回るクラスタは、被写体である可能性が低く、これらを以降の処理から除外する事で検出率の向上と誤検出の抑制が期待できる。
【００５８】
ステップＳ５０３において、制御部５０は過去クラスタ群に属する全てのクラスタに対し、ステップＳ５０４で選択済みか否かの判定を行う。全てのクラスタが選択済みであればステップＳ５０８に、未選択のクラスタが残っていればステップＳ５０４に進む。
【００５９】
ステップＳ５０４において、制御部５０は過去クラスタ群から一つのクラスタを選択する。以後このクラスタを第２のクラスタとする。
【００６０】
ステップＳ５０５において、制御部５０は第１のクラスタと第２のクラスタとが類似しているか否かを判断する。類似していると判断した場合ステップＳ５０６に進み、類似していないと判断した場合ステップＳ５０７に進む。本実施例ではクラスタ間の類似度は、クラスタの位置、デフォーカス量代表デフォーカス量、構成するＡＦ枠数それぞれの差分が閾値未満の場合十分類似していると判断する。第１のクラスタが第２のクラスタと類似しているか、すなわち対応する被写体であるか否かを判断することができればこの方法に限らない。例えば、類似度の判定については当然他の特徴量や算出手法を用いてもよい。
【００６１】
ステップＳ５０６において、制御部５０は第２のクラスタを候補クラスタ群に追加する。候補クラスタ群は、第１のクラスタと同一の物体だと想定されるクラスタを一時的に格納する。
【００６２】
ステップＳ５０７において、制御部５０は過去クラスタ群からまだ第１クラスタと比較を行っていないクラスタを選択し、新たな第２クラスタとする。
【００６３】
ステップＳ５０８において、制御部５０は現在の第１のクラスタと同一の物体だと想定される候補クラスタ群が存在するか判断する。存在する場合はステップＳ５０９に進み、存在しない場合はステップＳ５１０に進む。
【００６４】
ステップＳ５０９において、制御部５０は候補クラスタ群から最も第１のクラスタに類似したクラスタを選択し、その過去クラスタに紐付いた代表デフォーカス量の時間変化の記憶を改めて第１のクラスタに紐付ける。本実施例では第１のクラスタに類似したクラスタを１つ選択する構成を例示するが、複数選択しても良い。ここで、候補クラスタ群のうち第１のクラスタに最も類似したクラスタとして選択されたクラスタを第２のグループとも称する。
【００６５】
ステップＳ５１０において、制御部５０は新たに代表デフォーカス量の時間変化の記憶を生成し、第１のクラスタに紐付ける。具体的には、Ｓ５０９において選択されたクラスタに対応する代表デフォーカス量と、当該代表デフォーカス量に対応する時刻を、第１のクラスタに紐づけて記憶する。
【００６６】
ステップＳ５１１において、制御部５０はステップＳ５０９で現在クラスタのいずれとも一致しなかった過去クラスタ群を削除する。この時システムメモリ５５に記憶されている時間が閾値未満である過去クラスタについては削除を行わず、次回以降の動体検出処理においても過去クラスタ群の一部として取り扱う。
【００６７】
＜移動判定処理＞
ここでは図２のフローチャートにおける移動判定処理（Ｓ２０５）の詳細について、図６のフローチャートを用いて説明する。
【００６８】
図６のステップＳ６０１において、制御部５０は現在クラスタ群に属する全てのクラスタに対し、確認済みか否かの判定を行う。全てのクラスタが選択済みであれば移動判定処理を終了する。未確認のクラスタが残っていればステップＳ６０２に進む。
【００６９】
図６のステップＳ６０２において、制御部５０は代表デフォーカス量の時間変化の記憶に紐付いた現在クラスタ群から、未確認のクラスタ一つを選択する。  ステップＳ６０３において、制御部５０はＳ６０１において選択された選択クラスタの代表デフォーカス量の時間変化の記憶が一定時間以上存続しているかの判定を行う。存続していればステップＳ６０４に進み、存続していなければステップＳ６０１に戻る。本実施例では一例として、選択クラスタに紐づけられたクラスタが生成された時刻から所定時間以上経過している場合に、代表デフォーカス量の時間変化の記憶が一定時間以上存続していると判断する。なお、ここでは代表デフォーカス量の時間変化の記憶が十分蓄積されていれば良く、代表デフォーカス量の時間変化の記憶が一定時間以上存続していると判断する方法はこれに限らない。例えば、紐づけられたクラスタに対応して検出されたデフォーカス量が所定個数以上蓄積された場合には、代表デフォーカス量の時間変化の記憶が一定時間以上存続していると判断しても良い。
【００７０】
ステップＳ６０４において、制御部５０は、選択クラスタに対応する被写体の移動速度を算出する。本実施例では選択クラスタの代表デフォーカス量の時間変化の記憶に対して単回帰分析を行うことで回帰係数を求め、この回帰係数をクラスタの移動速度とする。なお、択クラスタに対応する被写体の移動速度を算出することができれば、算出方法はこれに限らない。例えば代表デフォーカス量の移動量を、当該移動量に対応する時間によって除算する事で求めてもよい。また、選択クラスタに対応する被写体の移動速度として、被写体にピントが合う像面位置の移動速度である像面移動速度を求めても良いし、被写体の絶対速度を求めても良い。
【００７１】
ステップＳ６０５において、制御部５０はステップＳ６０４で求めた移動速度が所定速度以上であるか否かの判定を行う。所定速度以上であればステップＳ６０６に進み、所定速度未満であればステップＳ６０１に戻る。
【００７２】
ステップＳ６０６において、制御部５０は選択クラスタの代表デフォーカス量時間変化の記憶の単位時間毎の移動方向を求める。移動方向として近づきと遠ざかりの２種を検出し、それぞれの回数を求める。
【００７３】
ステップＳ６０７において、制御部５０はステップＳ６０６で求めた近づきと遠ざかりの回数を元に、選択クラスタが同一方向に移動しているか否かを判断する。本実施例では、記憶された時間中同一方向に移動した割合を求め、当該割合が所定割合以上であるか否かの判定を行う。所定値以上であればステップＳ６０８に進み、所定値未満であればステップＳ６０１に戻る。これは、このクラスタを構成するＡＦ枠の信頼性が低く、誤った測距結果を返す場合、誤りは近づきと遠ざかりの双方向に出るためである。つまり、誤った測距結果によって物体が動いているように見える場合、近づきと遠ざかりがランダムに入り混じる事が予想されるため、同一方向に移動する割合が低いクラスタは不適切であると考えられる。なお、本実施例では選択クラスタが同一方向に移動しているか否かを、同一方向に移動した割合で判定したが、実際にはこれに限らない。例えば、同一方向に連続して移動した割合で判定を行ってもよい。
【００７４】
ステップＳ６０８において、制御部５０は選択クラスタに対応する被写体が動体であると判断する。
【００７５】
以上のように、本実施例では、取得したＡＦ枠に対して統合処理を行い誤ったデフォーカス量の影響を軽減し、また同定処理により同一物体のデフォーカス量の時間変化を抽出し、誤検出の抑制を行う事で、より正確な動体の検出を行う事が出来る。
【００７６】
［実施例２］
以下、本発明の実施例２で行われる動体検出処理の全体フローについて図７のフローチャートを参照して説明する。本実施例はＡＦ枠統合後に同定処理部による時間対応付けを行わず、全ての可能な代表デフォーカス量の時間変化の記憶を保持した上で、移動判定処理部の時点で改めて代表デフォーカス量の時間変化の記憶の評価を行う点が実施例１と異なる。なお、実施例１と同じ構成については説明を省略し、以下では実施例１と異なる部分を中心に説明する。
【００７７】
ステップＳ２０１、Ｓ２０２については実施例１で説明したものと同様の処理を行う。
【００７８】
図７のステップＳ７０１において、制御部５０はステップＳ２０２で生成された各現在クラスタに対して、代表デフォーカス量の時間変化の記憶を生成する。実施例１と異なり、一つの現在クラスタに対して一つの代表デフォーカス量の時間変化の記憶を生成するのではなく、全ての過去クラスタを個別に紐付けし、一つの現在クラスタに対して複数の代表デフォーカス量の時間変化の記憶を生成する。このように生成された代表デフォーカス量の時間変化の記憶はシステムメモリ５５に格納される。
【００７９】
ステップＳ７０２で移動判定部５３はシステムメモリ５５に格納された代表デフォーカス量の時間変化の記憶を元に各クラスタの移動速度と移動方向の変更頻度の算出に加えて、各クラスタの動きが妥当かの判断を行う。移動判定処理の詳細については後述する。
【００８０】
＜移動判定処理＞
ここでは図７のフローチャートにおける移動判定処理（Ｓ７０２）の詳細について、図８のフローチャートを用いて説明する。
【００８１】
ステップＳ６０１からＳ６０７においては、実施例１と同様の処理を行うためここでは省略する。ステップＳ６０７で選択クラスタの記憶が時間中同一方向に移動した割合が閾値を超えていればステップＳ８０１に進み、超えていなければステップＳ６０１に戻る。
【００８２】
図８のステップＳ８０１において、制御部５０は代表デフォーカス量の時間変化の記憶を元にその時間変化が物体の移動として妥当か否かの判断を行う。例えばステップＳ７０１で全く関係ないクラスタ同士が紐づけられた場合、代表デフォーカス量の時間変化は唐突に非常に大きく変化するものになり、物体の移動として妥当ではないと判断する必要がある。本実施例では妥当性判断として、単回帰分析を用いて物体の動きを直線に当てはめ、決定係数によって妥当性の判断を行う。物体の動きに対応する回帰モデルを、運動モデルとも称する。
【００８３】
代表デフォーカス量の時間変化の記憶に格納されている代表デフォーカス量をＤ＝｛ｄ１，…，ｄｎ｝、各代表デフォーカス量を取得した時刻をＴ＝｛ｔ１，…，ｔｎ｝とおくと、回帰モデルｆ（ｔ）＝αｔ＋βは以下の式で求められる。
【００８４】
【数１】
2020174280.tif 000003
【００８５】
【数２】
2020174280.tif 000004
【００８６】
【数３】
2020174280.tif 000005
【００８７】
はＴの平均値、
【００８８】
【数４】
2020174280.tif 000006
【００８９】
はＤの平均値である。この時決定係数Ｒ２は以下の式で求められる。
【００９０】
【数５】
2020174280.tif 000007
【００９１】
制御部５０は選択クラスタの決定係数Ｒ２が閾値よりも大きい時、このクラスタは動体として妥当であると判断し、ステップＳ６０８に進み、閾値以下の時、このクラスタは動体として妥当でないと判断してステップＳ６０１に戻る。
【００９２】
なお、本実施例では動体の妥当性判断に一次の回帰モデルｆ（ｔ）＝αｔ＋βを用いたが、実際はこれに限らない。例えば動体が等速直線運動に従って動いている場合、得られるデフォーカス量の時間変化は１次式に従わない。そのため、例えば回帰モデルをｆ（ｔ）＝αｔｎ＋βｔ＋γとおいて重回帰分析を行い、その決定係数を閾値と比較して妥当性の判断を行えば、このような場面でより正確な妥当性判断を行う事が出来る。
【００９３】
以上のように、本実施例では、クラスタ生成後に過去クラスタとの一対一の対応付けを行わない事により、例えば距離からの撮影や、多くの被写体が同時に写るような、安定したＡＦ枠統合出来ないような環境でも精度よく動体の検出を行う事が出来る。
【００９４】
［その他の実施例］
上記の実施例は、各種の変形例が考えられる。
【００９５】
例えば実施例１において図３のフローに従ってＡＦ枠を物体毎に統合する処理を行っているが、本発明ではこの手法以外にもｋ−ｍｅａｎｓ法、ａｆｆｉｎｉｔｙ  ｐｒｏｐａｇａｔｉｏｎ法、ガウス混合法等の公知の手法を適用した場合も実施可能である。また、同様の統合の判定時にデフォーカス量の差分を用いているが、デフォーカス量以外に色情報やＨｏＧ特徴量、ベクトル情報やそれらの組み合わせといった他の特徴量を用いても実施可能である。
【００９６】
なお、制御部５０が行うものとして説明した上述の各種制御は１つのハードウェアが行ってもよいし、複数のハードウェア（例えば、複数のプロセッサーや回路）が処理を分担することで、装置全体の制御を行ってもよい。
【００９７】
また、上述の実施例によって検出された動体が複数であった場合には、より主被写体に相応しい被写体を選択し、その被写体にピントを合わせるようにフォーカスレンズの駆動を制御しても良い。例えば、複数検出された動体のうち、中央に位置する被写体を主被写体として選択しても良い。また、最も至近に位置する被写体を主被写体として選択しても良い。
【００９８】
また、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。さらに、上述した各実施形態は本発明の一実施形態を示すものにすぎず、各実施形態を適宜組み合わせることも可能である。
【００９９】
また、上述した実施形態においては、本発明を位相差方式の撮像装置に適用した場合を例にして説明したが、これはこの例に限定されず複数位置を測距できる撮像装置であれば適用可能である。すなわち、本発明はパーソナルコンピュータやＰＤＡ、携帯電話端末や携帯型の画像ビューワ、ゲーム機、などに適用可能である。
【０１００】
本発明は、次の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
2020174280.tif 000008
【図２】
2020174280.tif 000009
【図３】
2020174280.tif 000010
【図４】
2020174280.tif 000011
【図５】
2020174280.tif 000012
【図６】
2020174280.tif 000013
【図７】
2020174280.tif 000014
【図８】
2020174280.tif 000015