(57)【特許請求の範囲】
【請求項１】
時系列的に得られる複数の画像データにおいて追尾対象である被写体を追尾可能な撮像装置であって、
被写体像を撮像して画像データを生成する撮像部と、
前記撮像部で生成された画像データの色情報を取得する色情報取得部と、
前記色情報取得部で取得された色情報に基づいて、追尾対象の候補となる被写体を前記画像データ内で検出する被写体検出部と、
前記被写体検出部で検出された被写体の情報を検出する被写体情報検出部と、
前記被写体情報検出部で検出された被写体の情報に基づいて、追尾対象の位置を求めるための複数の方法の中から最適な方法を選択して、前記追尾対象の位置を決定する追尾位置決定部と、
前記画像データ内の追尾対象の位置をブロックマッチングによって求めるブロックマッチング部と、
を備え、
前記追尾対象の位置を求めるための複数の方法の中には、前記色情報に基づいて前記追尾対象の位置を求める方法、前記ブロックマッチングによって前記追尾対象の位置を求める方法、および、前記色情報および前記ブロックマッチングの結果に基づいて、前記追尾対象の位置を求める方法が少なくとも含まれる、
ことを特徴とする撮像装置。
【請求項２】
時系列的に得られる複数の画像データにおいて追尾対象である被写体を追尾可能な撮像装置であって、
被写体像を撮像して画像データを生成する撮像部と、
前記撮像部で生成された画像データの色情報を取得する色情報取得部と、
前記色情報取得部で取得された色情報に基づいて、追尾対象の候補となる被写体を前記画像データ内で検出する被写体検出部と、
前記被写体検出部で検出された被写体の情報を検出する被写体情報検出部と、
前記被写体情報検出部で検出された被写体の情報に基づいて、追尾対象の位置を求めるための方法を決定して、前記追尾対象の位置を決定する追尾位置決定部と、
を備え、
前記被写体情報検出部は、
前記被写体検出部で検出された被写体の数を検出する被写体数検出部と、
前記被写体検出部で検出された被写体の大きさを検出する大きさ検出部と、
前記被写体検出部で検出された被写体の位置を検出する位置検出部と、
追尾対象の大きさを推定する大きさ推定部と、
追尾対象の位置を推定する位置推定部と、
を備え、
前記追尾位置決定部は、前記被写体数検出部で検出された被写体の数、前記大きさ検出部で検出された大きさと前記大きさ推定部で推定された大きさ、前記位置検出部で検出された位置と前記位置推定部で推定された位置、および、時系列的に前の画像データに対する被写体数の増減に基づいて、前記追尾対象の位置を求めるための方法を決定する、
ことを特徴とする撮像装置。
【請求項３】
画像データ内の被写体の数、被写体の大きさが推定される追尾対象の大きさと一致する数、被写体の位置が推定される追尾対象の位置と一致する数、および、被写体数の増減と、追尾対象の位置を求めるための最適な方法との関係を定めたデータを記憶する記憶部をさらに備え、
前記追尾位置決定部は、前記記憶部に記憶されているデータを参照することによって、前記追尾対象の位置を求めるための方法を決定する、
ことを特徴とする請求項２に記載の撮像装置。
【請求項４】
時系列的に得られる複数の画像データにおいて追尾対象である被写体を追尾する画像処理方法であって、
前記複数の画像データを入力するステップと、
前記入力された画像データの色情報を取得するステップと、
前記取得された色情報に基づいて、追尾対象の候補となる被写体を前記画像データ内で検出するステップと、
前記検出された被写体の情報を検出するステップと、
前記検出された被写体の情報に基づいて、追尾対象の位置を求めるための複数の方法の中から最適な方法を選択して、前記追尾対象の位置を決定するステップと、
前記画像データ内の追尾対象の位置をブロックマッチングによって求めるステップと、
を備え、
前記追尾対象の位置を求めるための複数の方法の中には、前記色情報に基づいて前記追尾対象の位置を求める方法、前記ブロックマッチングによって前記追尾対象の位置を求める方法、および、前記色情報および前記ブロックマッチングの結果に基づいて、前記追尾対象の位置を求める方法が少なくとも含まれる、
ことを特徴とする画像処理方法。
【請求項５】
時系列的に得られる複数の画像データにおいて追尾対象である被写体を追尾する画像処理方法であって、
前記複数の画像データを入力するステップと、
前記入力された画像データの色情報を取得するステップと、
前記取得された色情報に基づいて、追尾対象の候補となる被写体を前記画像データ内で検出するステップと、
前記検出された被写体の情報を検出するステップと、
前記検出された被写体の情報に基づいて、追尾対象の位置を求めるための方法を決定して、前記追尾対象の位置を決定するステップと、
を備え、
前記被写体の情報を検出するステップは、
前記検出された被写体の数を検出するステップと、
前記検出された被写体の大きさを検出するステップと、
前記検出された被写体の位置を検出するステップと、
追尾対象の大きさを推定するステップと、
追尾対象の位置を推定するステップと、
を備え、
前記追尾対象の位置を決定するステップでは、前記検出された被写体の数、前記検出された被写体の大きさと前記推定された追尾対象の大きさ、前記検出された被写体の位置と前記推定された追尾対象の位置、および、時系列的に前の画像データに対する被写体数の増減に基づいて、前記追尾対象の位置を求めるための方法を決定する、
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列的に得られる複数の画像データにおいて、追尾対象である被写体を追尾する技術に関する。
【背景技術】
【０００２】
画像上の追尾対象の色情報を求め、求めた色情報に基づいて、追尾対象の追尾を行う技術が知られている（特許文献１、２、３参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−２８４４１１号公報
【特許文献２】特開２００９−１７１１９１号公報
【特許文献３】特開平１０−３３６５０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、色情報だけに基づいて追尾対象の追尾を行う従来の技術では、追尾対象と背景とが同色である場合や、追尾対象と類似する色を有する物体が追尾対象付近に存在する場合、追尾対象を追尾できなくなる可能性がある。
【０００５】
本発明は、追尾対象と背景とが同色である場合や、追尾対象と類似する色を有する物体が追尾対象付近に存在する場合でも、追尾対象の位置を精度良く求める技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のある態様に係る撮像装置は、時系列的に得られる複数の画像データにおいて追尾対象である被写体を追尾可能な撮像装置であって、被写体像を撮像して画像データを生成する撮像部と、前記撮像部で生成された画像データの色情報を取得する色情報取得部と、前記色情報取得部で取得された色情報に基づいて、追尾対象の候補となる被写体を前記画像データ内で検出する被写体検出部と、前記被写体検出部で検出された被写体の情報を検出する被写体情報検出部と、前記被写体情報検出部で検出された被写体の情報に基づいて、追尾対象の位置を求めるための複数の方法の中から最適な方法を選択して、前記追尾対象の位置を決定する追尾位置決定部と、前記画像データ内の追尾対象の位置をブロックマッチングによって求めるブロックマッチング部と、を備え、前記追尾対象の位置を求めるための複数の方法の中には、前記色情報に基づいて前記追尾対象の位置を求める方法、前記ブロックマッチングによって前記追尾対象の位置を求める方法、および、前記色情報および前記ブロックマッチングの結果に基づいて、前記追尾対象の位置を求める方法が少なくとも含まれる。
本発明の別の態様に係る撮像装置は、時系列的に得られる複数の画像データにおいて追尾対象である被写体を追尾可能な撮像装置であって、被写体像を撮像して画像データを生成する撮像部と、前記撮像部で生成された画像データの色情報を取得する色情報取得部と、前記色情報取得部で取得された色情報に基づいて、追尾対象の候補となる被写体を前記画像データ内で検出する被写体検出部と、前記被写体検出部で検出された被写体の情報を検出する被写体情報検出部と、前記被写体情報検出部で検出された被写体の情報に基づいて、追尾対象の位置を求めるための方法を決定して、前記追尾対象の位置を決定する追尾位置決定部と、を備え、前記被写体情報検出部は、前記被写体検出部で検出された被写体の数を検出する被写体数検出部と、前記被写体検出部で検出された被写体の大きさを検出する大きさ検出部と、前記被写体検出部で検出された被写体の位置を検出する位置検出部と、追尾対象の大きさを推定する大きさ推定部と、追尾対象の位置を推定する位置推定部と、を備え、前記追尾位置決定部は、前記被写体数検出部で検出された被写体の数、前記大きさ検出部で検出された大きさと前記大きさ推定部で推定された大きさ、前記位置検出部で検出された位置と前記位置推定部で推定された位置、および、時系列的に前の画像データに対する被写体数の増減に基づいて、前記追尾対象の位置を求めるための方法を決定する。
【０００７】
本発明の別の態様に係る画像処理方法は、時系列的に得られる複数の画像データにおいて追尾対象である被写体を追尾する画像処理方法であって、前記複数の画像データを入力するステップと、前記入力された画像データの色情報を取得するステップと、前記取得された色情報に基づいて、追尾対象の候補となる被写体を前記画像データ内で検出するステップと、前記検出された被写体の情報を検出するステップと、前記検出された被写体の情報に基づいて、追尾対象の位置を求めるための複数の方法の中から最適な方法を選択して、前記追尾対象の位置を決定するステップと、前記画像データ内の追尾対象の位置をブロックマッチングによって求めるステップと、を備え、前記追尾対象の位置を求めるための複数の方法の中には、前記色情報に基づいて前記追尾対象の位置を求める方法、前記ブロックマッチングによって前記追尾対象の位置を求める方法、および、前記色情報および前記ブロックマッチングの結果に基づいて、前記追尾対象の位置を求める方法が少なくとも含まれる。
本発明のさらに別の態様に係る画像処理方法は、時系列的に得られる複数の画像データにおいて追尾対象である被写体を追尾する画像処理方法であって、前記複数の画像データを入力するステップと、前記入力された画像データの色情報を取得するステップと、前記取得された色情報に基づいて、追尾対象の候補となる被写体を前記画像データ内で検出するステップと、前記検出された被写体の情報を検出するステップと、前記検出された被写体の情報に基づいて、追尾対象の位置を求めるための方法を決定して、前記追尾対象の位置を決定するステップと、を備え、前記被写体の情報を検出するステップでは、前記検出された被写体の数を検出するステップと、前記検出された被写体の大きさを検出するステップと、前記検出された被写体の位置を検出するステップと、追尾対象の大きさを推定するステップと、追尾対象の位置を推定するステップと、を備え、前記追尾対象の位置を決定するステップでは、前記検出された被写体の数、前記検出された被写体の大きさと前記推定された追尾対象の大きさ、前記検出された被写体の位置と前記推定された追尾対象の位置、および、時系列的に前の画像データに対する被写体数の増減に基づいて、前記追尾対象の位置を求めるための方法を決定する。
【発明の効果】
【０００８】
本発明によれば、追尾対象の候補となる被写体の情報に基づいて、追尾対象の位置を求めるための複数の方法の中から最適な方法を選択して、追尾対象の位置を決定するので、追尾対象と背景とが同色である場合や、追尾対象と類似する色を有する物体が追尾対象付近に存在する場合でも、追尾対象の位置を精度良く求めることができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態における撮像装置の構成を示すブロック図である。
【図２】一実施形態における撮像装置によって行われる追尾処理の内容を示すフローチャートである。
【図３】液晶モニタに表示されているライブビュー画像において、ユーザが犬を指でタッチすることによって、犬を追尾対象として決定する様子を示す図である。
【図４】ユーザによってタッチされた位置に設定された矩形枠の一例を示す図である。
【図５】作成された画素値のヒストグラムの一例を示す図である。
【図６】図５に示す画素値のヒストグラムを三次元的に表した図である。
【図７】画素数が所定の閾値以上の領域と、所定の閾値未満の領域とに分類されたヒストグラムの一例を示す図である。
【図８】第（ｎ−２）フレームおよび第（ｎ−１）フレームの追尾対象の大きさに基づいて、第ｎフレームの追尾対象の大きさを推定した結果を示す図である。
【図９】第（ｎ−２）フレームおよび第（ｎ−１）フレームの追尾対象の位置に基づいて、第ｎフレームの追尾対象の位置を推定した結果を示す図である。
【図１０】追尾対象を決定するためのテーブルデータの一例を示す図である。
【図１１】追尾対象を決定する方法を説明するための図である。
【図１２】追尾対象を決定する方法を説明するための別の図である。
【図１３】追尾対象を決定する方法を説明するためのさらに別の図である。
【発明を実施するための形態】
【００１０】
図１は、一実施形態における撮像装置の構成を示すブロック図である。一実施形態における撮像装置は、レンズ１と、撮像素子２と、アナログフロントエンド部３（以下、ＡＦＥ３と呼ぶ）と、追尾部４と、表示部５とを備える。
【００１１】
レンズ１は、被写体の光学像を撮像素子２に集光させる。レンズ１は、単焦点レンズであってもよいし、ズームレンズであってもよい。
【００１２】
撮像素子２は、各画素を構成するフォトダイオードの前面に、ベイヤー配列のカラーフィルタが配置された撮像素子である。この撮像素子２は、レンズ１により集光された光を、画素を構成するフォトダイオードで受光して光電変換することで、光の量を電荷量としてＡＦＥ３へ出力する。なお、撮像素子２は、ＣＭＯＳ方式のものでもＣＣＤ方式のものでも良い。
【００１３】
ＡＦＥ３は、撮像素子２から出力される信号（画像信号）に対して、例えば、ノイズ除去、信号増幅、Ａ／Ｄ変換などの所定の処理を行う。Ａ／Ｄ変換によって生成されるデジタル画像信号（以後、画像データと呼ぶ）は、追尾部４に出力される。
【００１４】
なお、撮像素子２およびＡＦＥ３をまとめて、撮像部と呼ぶことができる。
【００１５】
追尾部４は、ブロックマッチング部１１と、色検出部１２と、画像処理部１３と、ヒストグラム作成部１４と、被写体検出部１５と、位置検出部１６と、位置推定部１７と、大きさ検出部１８と、大きさ推定部１９と、追尾位置決定部２０と、追尾枠描画部２１とを備える。
【００１６】
ブロックマッチング部１１は、既知のブロックマッチングにより、時系列的に得られる複数の画像データ間において、追尾対象である被写体の動きベクトルを求めることによって、追尾対象の位置を求める。
【００１７】
色検出部１２は、追尾対象の色情報を抽出する。
【００１８】
画像処理部１３は、撮像により得られる画像データに対して一般的に行われる画像処理を行う。
【００１９】
ヒストグラム作成部１４は、色検出部１２で検出された色情報に基づいて、画素値のヒストグラムを作成する。画素値のヒストグラムの詳細については後述する。
【００２０】
被写体検出部１５は、ヒストグラム作成部１４で作成されたヒストグラムに基づいて、追尾対象の候補となる被写体を画像データ内で検出する。追尾対象の候補となる被写体は１つとは限らず、条件によっては複数検出される。
【００２１】
位置検出部１６は、ヒストグラム作成部１４で作成されたヒストグラムに基づいて、被写体検出部１５で検出された被写体毎に、被写体の画像データ中の位置を検出する。
【００２２】
位置推定部１７は、位置検出部１６で検出された過去のフレームの被写体の位置に基づいて、現在のフレームの被写体の位置を推定する。
【００２３】
大きさ検出部１８は、ヒストグラム作成部１４で作成されたヒストグラムに基づいて、被写体検出部１５で検出された被写体毎に、被写体の画像データ中の大きさを検出する。
【００２４】
大きさ推定部１９は、大きさ検出部１８で検出された過去のフレームの被写体の大きさに基づいて、現在のフレームの被写体の大きさを推定する。
【００２５】
追尾位置決定部２０は、被写体検出部１５で検出された被写体の数、位置検出部１６で検出された被写体の位置、位置推定部１７で推定された被写体の位置、大きさ検出部１８で検出された被写体の大きさ、大きさ推定部１９で推定された被写体の大きさに基づいて、追尾対象の位置を求めるための複数の方法の中から最適な方法を選択して、追尾対象の位置を決定する。
【００２６】
追尾枠描画部１９は、追尾位置決定部２０で決定された追尾対象の位置に追尾枠を設定・描画する。
【００２７】
図２は、一実施形態における撮像装置によって行われる追尾処理の内容を示すフローチャートである。撮影時に、ユーザによって、追尾機能がオンに設定されると、ステップＳ１０の処理が開始される。なお、追尾機能は、ライブビュー撮影を含む動画撮影時にオンに設定可能である。
【００２８】
ステップＳ１０では、画像データ中の追尾対象を決定する。撮像装置の液晶モニタ（不図示）には、タッチパネルが設けられており、ユーザは、液晶モニタに映し出されるライブビュー画像（スルー画像）を確認しながら、追尾対象をタッチする。ユーザによってタッチされた対象を、追尾対象として決定する。なお、ユーザが追尾対象を特定する方法は、タッチパネルを用いたタッチ操作に限定されることはない。ここでは、時系列的に連続して得られる複数の画像のうち、追尾対象がタッチされた画像を第１フレームと呼ぶ。
【００２９】
図３は、液晶モニタ３０に表示されているライブビュー画像において、ユーザが犬３１を指３２でタッチすることによって、犬３１を追尾対象として決定する様子を示す図である。
【００３０】
ステップＳ２０において、色検出部１２は、ステップＳ１０で決定された第１のフレームの追尾対象の色情報を取得する。このため、まず始めに、ユーザによってタッチされた位置において、所定の大きさの矩形枠を設定する。図４は、ユーザによってタッチされた位置に設定された矩形枠４０の一例を示す図である。この矩形枠４０内における各画素のＲＧＢの画素値を色情報として取得する。
【００３１】
ステップＳ３０において、ヒストグラム作成部１４は、直近に取得した色情報に基づいて、第ｎフレームの追尾対象の色情報分布を作成する。ただし、ｎは自然数であって、初期値は１である。従って、ステップＳ３０の処理を初めて行う場合には、ステップＳ２０で取得した色情報に基づいて、第１フレームの追尾対象の色情報分布を作成する。また、ステップＳ３０の処理を２回目に行う場合には、ステップＳ２０で取得した色情報に基づいて、第２フレームの追尾対象の色情報分布を作成する。さらに、第３フレーム以後では、後述するステップＳ１２０で取得する色情報に基づいて、追尾対象の色情報分布を作成する。
【００３２】
追尾対象の色情報分布の作成では、直近に取得した色情報であるＲＧＢの画素値（以下、ＲＧＢ画素値）と同じＲＧＢ画素値を有する画素の数を数えて、画素値のヒストグラムを作成する。
【００３３】
図５は、作成された画素値のヒストグラムの一例を示す図である。図５において、１つの区画は、画像データの１画素に対応しており、数字は、追尾対象の矩形枠内における画素のＲＧＢ画素値と同じＲＧＢ画素値を有する画素の数を表している。例えば、図５において、「４」と表されている画素は、その画素のＲＧＢ画素値と同じＲＧＢ画素値の画素が矩形枠４０（図４参照）内に存在し、かつ、同じＲＧＢ画素値を有する画素が自身を含めて４つ存在することを意味している。図６は、図５に示す画素値のヒストグラムを三次元的に表した図である。ただし、図６では、画素数が１以上の領域を、画素数が所定の閾値以上の領域６１と、画素数が所定の閾値未満の領域６２とに分類している。
【００３４】
なお、ＲＧＢ画素値が同一の画素は、ＲＧＢ画素値が完全に同一の画素だけでなく、ＲＧＢ画素値の差が所定の範囲内である画素であってもよい。
【００３５】
ステップＳ４０において、被写体検出部１５は、ステップＳ３０で作成された色情報分布に基づいて、第ｎフレームにおいて、追尾対象の候補となる被写体の数を検出する。このため、初めに、ステップＳ３０で作成されたヒストグラムを、画素数が所定の閾値以上の領域と、所定の閾値未満の領域とに分類する。
【００３６】
図７は、画素数が所定の閾値以上の領域と、所定の閾値未満の領域とに分類されたヒストグラム７０の一例を示す図である。ヒストグラム７０のうち、斜線で示している領域が所定の閾値以上の画素数を有する領域であり、それ以外の領域は、画素数が所定の閾値未満の領域である。
【００３７】
フレーム中の被写体数は、図７のヒストグラム７０に基づいて、既知のラベリング等で求めるため、ここでは詳しい説明は省略する。
【００３８】
ステップＳ５０において、大きさ検出部１８は、第ｎフレームにおいて、ステップＳ４０で検出された被写体毎に、被写体の大きさを検出する。被写体の大きさは、ヒストグラム作成部１４で作成されたヒストグラムに基づいて検出する。ただし、ｎ＝１の場合、すなわち、第１フレームの処理を行う場合には、ステップＳ１０で決定した追尾対象の大きさを求める。すなわち、追尾対象以外の被写体が検出されている場合でも、追尾対象以外の被写体の大きさを求める必要はない。
【００３９】
ステップＳ６０において、位置検出部１６は、第ｎフレームにおいて、ステップＳ４０で検出された被写体毎に、被写体の位置を検出する。被写体の位置は、ヒストグラム作成部１４で作成されたヒストグラムに基づいて検出する。ただし、ｎ＝１の場合、すなわち、第１フレームの処理を行う場合には、ステップＳ１０で決定した追尾対象の位置を求める。すなわち、追尾対象以外の被写体が検出されている場合でも、追尾対象以外の被写体の位置を求める必要はない。
【００４０】
ステップＳ７０では、ｎ＝１であるか否かを判定する。ｎ＝１であると判定すると、ステップＳ１４０に進み、パラメータｎに１を加算して、ステップＳ３０に戻る。一方、ｎ＝１ではないと判定すると、ステップＳ８０に進む。
【００４１】
ステップＳ８０において、大きさ推定部１９は、過去フレームの追尾対象の大きさに基づいて、第ｎフレームにおける追尾対象の大きさを推定する。過去フレームの追尾対象の大きさに基づいて、第ｎフレームにおける追尾対象の大きさを推定する方法は、既知の方法を用いることができる。ここでは、第２フレームの追尾対象の大きさは、ステップＳ５０で検出した第１フレームの追尾対象の大きさに基づいて推定する。また、第ｎ（ｎ≧３）フレームの追尾対象の大きさは、後述するステップＳ１１０で検出される第（ｎ−１）フレームの追尾対象の大きさ、および、第（ｎ−２）フレームの追尾対象の大きさに基づいて推定する。
【００４２】
図８は、第（ｎ−２）フレームおよび第（ｎ−１）フレームの追尾対象の大きさに基づいて、第ｎフレームの追尾対象の大きさを推定した結果を示す図である。図８では、第（ｎ−２）フレームの追尾対象の大きさを示す枠８１、第（ｎ−１）フレームの追尾対象の大きさを示す枠８２、および、第ｎフレームにおける追尾対象の大きさの推定結果を示す枠８３，８４をそれぞれ示している。大きさの推定結果を示す枠８３、８４のうち、枠８３は、推定し得る最小の大きさを表し、枠８４は、推定し得る最大の大きさを表している。
【００４３】
ステップＳ９０において、位置推定部１７は、過去フレームの追尾対象の位置に基づいて、第ｎフレームにおける追尾対象の位置を推定する。過去フレームの追尾対象の位置に基づいて、第ｎフレームにおける追尾対象の位置を推定する方法は、既知の方法を用いることができる。ここでは、第２フレームの追尾対象の位置は、ステップＳ６０で検出した第１フレームの追尾対象の位置に基づいて推定する。また、第ｎ（ｎ≧３）フレームの追尾対象の位置は、後述するステップＳ１１０で検出される第（ｎ−１）フレームの追尾対象の位置、および、第（ｎ−２）フレームの追尾対象の位置に基づいて推定する。
【００４４】
図９は、第（ｎ−２）フレームおよび第（ｎ−１）フレームの追尾対象の位置に基づいて、第ｎフレームの追尾対象の位置を推定した結果を示す図である。第（ｎ−２）フレーム９０における追尾対象の位置９１、および、第（ｎ−１）フレーム９２における追尾対象の位置９３に基づいて、第ｎフレーム９４における追尾対象の推定位置９５を求めている。図９に示すように、追尾対象の推定位置９５は、ある程度の大きさを有する領域として求める。
【００４５】
ステップＳ１００において、ブロックマッチング部１１は、第（ｎ−１）フレームと第ｎフレームとの間で、ブロックマッチング処理を行い、追尾対象の動きベクトルを求める。動きベクトルの終点が第ｎフレームにおける追尾対象の位置となる。具体的には、第（ｎ−１）フレームの追尾対象の位置にベクトル検出領域を設定し、第ｎフレームにおいて、第（ｎ−１）フレームに設定されたベクトル検出領域と最も相関の高い領域を求める。第（ｎ−１）フレームの追尾対象の位置は、後述するステップＳ１１０で求められた位置である。
【００４６】
ステップＳ１１０において、追尾位置決定部２０は、ステップＳ４０で算出した被写体の数、ステップＳ５０で検出した被写体の大きさ、ステップＳ６０で検出した被写体の位置、ステップＳ８０で推定した追尾対象の大きさ、ステップＳ９０で推定した追尾対象の位置、および、前フレームに対する被写体の増減に基づいて、第ｎフレームにおける追尾対象の位置を求めるための複数の方法の中から最適な方法を選択して、追尾対象の位置を決定する。追尾対象の位置を決定する方法について、図１０を用いて説明する。
【００４７】
図１０は、追尾対象の位置を求めるための最適な方法を決定するためのテーブルデータの一例を示す図である。図１０において、被写体数とは、図２のステップＳ４０で求められた第ｎフレームの被写体数である。このテーブルデータでは、被写体数を「複数」、「１」、「０」の３つに区分している。
【００４８】
図１０において、「大きさが一致した数」とは、ステップＳ８０で推定した追尾対象の大きさがステップＳ５０で検出した被写体の大きさと一致している数である。このテーブルデータでは、大きさが一致した数を「複数」、「１」、「０」の３つに区分している。例えば、ステップＳ４０で検出した被写体数が３（複数）であって、それぞれの被写体の大きさと、推定した追尾対象の大きさとが同じ場合には、大きさが一致した数は３（複数）となる。
【００４９】
また、図１０において、「位置が一致した数」とは、ステップＳ９０で推定した追尾対象の位置がステップＳ６０で検出した被写体の位置と一致している数である。図１０に示すテーブルデータでは、位置が一致した数を「複数」、「１」、「０」の３つに区分している。
【００５０】
図１０において、「被写体数の増減」とは、第（ｎ−１）フレームの被写体の数に対して、ステップＳ４０で検出された第ｎフレームの被写体の数の増減である。第（ｎ−１）フレームの被写体の数は、第（ｎ−１）フレームの追尾対象を決定する際のステップＳ４０で検出されたものを用いる。被写体数の増減は、「増減無し」、「増加」、「減少」に区分される。
【００５１】
一実施形態における撮像装置では、追尾対象の位置を求めるために、色情報に基づいて追尾対象の位置を決定する方法、ブロックマッチングによって追尾対象の位置を決定する方法、色情報およびブロックマッチング結果を用いて追尾対象の位置を決定する方法の３つの方法を使い分ける。図１０において、「色」と表記しているのは、色情報に基づいて追尾対象の位置を決定する方法を表している。また、「ＢＭ」と表記しているのは、ブロックマッチングによって追尾対象の位置を決定する方法を、「ＢＭ選択」と表記しているのは、色情報およびブロックマッチング結果を用いて追尾対象の位置を決定する方法をそれぞれ表している。
【００５２】
色情報に基づいて追尾対象の位置を決定する方法では、色情報に基づいて検出された被写体（図２のステップＳ４０）が１つの場合には、その被写体を追尾対象とする。色情報に基づいて検出された被写体が複数の場合には、大きさが一致した数が１つであれば、大きさが一致した被写体を追尾対象とする。色情報に基づいて検出された被写体が複数の場合であって、大きさが一致した数が複数または０の場合には、位置が一致した被写体を追尾対象とする。
【００５３】
ブロックマッチングによって追尾対象の位置を決定する方法では、ブロックマッチングで求められた動きベクトルの終点の位置を追尾対象の位置とする。
【００５４】
色情報およびブロックマッチング結果を用いて追尾対象の位置を決定する方法では、色情報に基づいて検出された複数の被写体のうち、ブロックマッチングで求められた動きベクトルの終点の位置に最も近い被写体を追尾対象とする。
【００５５】
上述した追尾対象の位置を決定するための３つの方法には、被写体数、大きさが一致した数、位置が一致した数、および、被写体数の増減に応じて、追尾対象の位置を決定するための方法として、適切な方法と適切ではない方法とがある。図１０に示すテーブルデータでは、被写体数、大きさが一致した数、位置が一致した数、および、被写体数の増減に基づいて、追尾対象の位置を決定するための最適な方法を定義している。追尾位置決定部２０は、図１０に示すようなテーブルデータを保持しており、このテーブルデータを参照することによって、追尾対象の位置を求めるための最適な方法を決定する。
【００５６】
例えば、被写体数が複数であって、大きさが一致した数も複数、かつ、位置が一致した数が１つの場合には、被写体数の増減に関係なく、色情報に基づいて追尾対象の位置を決定する。また、被写体数が複数であって、大きさが一致した数が０、位置が一致した数が０、かつ、被写体数の増減が「増減無し」か「増加」の場合には、色情報およびブロックマッチング結果を用いて追尾対象の位置を決定する。さらに、被写体数が１であって、大きさが一致した数が０、位置が一致した数が１、かつ、被写体数の増減が「減少」の場合には、ブロックマッチングによって追尾対象の位置を決定する。
【００５７】
被写体数、大きさが一致した数、位置が一致した数、および、被写体数の増減に応じて、追尾対象の位置を決定する具体的な方法を、図１１〜図１３を用いて説明する。
【００５８】
図１１は、追尾対象の位置を決定する方法を説明するための図である。図１１では、第（ｎ−１）フレーム１１０と、第ｎフレーム１１５の一例をそれぞれ示している。第（ｎ−１）フレームにおいて、追尾対象は犬１１２であり、被写体検出部１５によって、被写体として、猫１１１と犬１１２の２つが検出されているものとする。
【００５９】
第ｎフレーム１１５においても、被写体検出部１５によって、猫１１１と犬１１２の２つの被写体が検出されているものとする。また、第ｎフレーム１１５において、枠１１６は、大きさ推定部１９によって推定された追尾対象の大きさを示す枠であり、枠１１７は、位置推定部１７で推定された追尾対象の位置を示す枠である。
【００６０】
図１１に示すように、第ｎフレーム中の犬１１２は、枠１１６および枠１１７内に存在するが、猫１１１は、枠１１６および枠１１７の外に存在する。すなわち、推定した追尾対象の大きさと一致する被写体の数は１であり、推定した追尾対象の位置と一致する被写体の数も１となる。
【００６１】
この場合、被写体数が複数であって、大きさが一致した数および位置が一致した数は共に１であり、被写体数の増減が無しの場合であるから、図１０を参照すると、色情報に基づいて追尾対象の位置を求める方法が選択される。図１１に示す例では、色情報に基づいて検出された被写体が猫１１１と犬１１２の２つあるため、位置および大きさが一致した犬１１２を追尾対象とする。従って、位置検出部１６で検出された犬１１２の位置が追尾対象の位置となり、大きさ検出部１８で検出された犬１１２の大きさが追尾対象の大きさとなる。
【００６２】
図１２は、追尾対象の位置を決定する方法を説明するための別の図である。図１２では、第（ｎ−１）フレーム１２０、第ｎフレーム１２３、および、ブロックマッチングにて求めた第（ｎ−１）フレームと第ｎフレームとの間の動きベクトル１２８を表記したフレーム１２７をそれぞれ示している。ただし、フレーム１２７は、追尾対象の位置を決定する方法を説明するために図示したものであり、撮像によって得られたフレームではない。第（ｎ−１）フレームにおいて、追尾対象は犬１２２であり、被写体検出部１５によって、被写体として、犬１２１と犬１２２の２つが検出されているものとする。
【００６３】
第ｎフレーム１２３においても、被写体検出部１５によって、犬１２１と犬１２２の２つの被写体が検出されているものとする。また、第ｎフレーム１２３において、枠１２４および枠１２５は、大きさ推定部１９によって推定された追尾対象の大きさを示す枠であり、枠１２６は、位置推定部１７で推定された追尾対象の位置を示す枠である。なお、推定された追尾対象の大きさを示す枠として、枠１２４および枠１２５の２つを図示しているのは、被写体である犬１２１および犬１２２の大きさと容易に比較できるようにするためである。
【００６４】
図１２に示すように、第ｎフレーム中の犬１２１は、枠１２４および枠１２６内に存在し、犬１２２も枠１２５および枠１２６内に存在する。すなわち、推定した追尾対象の大きさと一致する被写体の数は２であり、推定した追尾対象の位置と一致する被写体の数も２となる。
【００６５】
この場合、被写体数が複数であって、大きさが一致した数および位置が一致した数は共に複数であり、被写体数の増減が無しの場合であるから、図１０を参照すると、色情報およびブロックマッチング結果を用いて追尾対象の位置を求める方法が選択される。すなわち、色情報に基づいて求めた被写体である犬１２１および犬１２２のうち、ブロックマッチングで求めた動きベクトル１２８の終点の位置に最も近い被写体である犬１２２を、追尾対象とする。従って、位置検出部１６で検出された犬１２２の位置が追尾対象の位置となり、大きさ検出部１８で検出された犬１２２の大きさが追尾対象の大きさとなる。
【００６６】
図１３は、追尾対象の位置を決定する方法を説明するためのさらに別の図である。図１３では、第（ｎ−１）フレーム１３０、第ｎフレーム１３３、および、ブロックマッチングにて求めた第（ｎ−１）フレームと第ｎフレームとの間の動きベクトル１３６を表記したフレーム１３５をそれぞれ示している。ただし、フレーム１３５は、追尾対象の位置を決定する方法を説明するために図示したものであり、撮像によって得られたフレームではない。第（ｎ−１）フレームにおいて、追尾対象は犬１３２であり、被写体検出部１５によって、被写体として、犬１３２とともに、犬１３２と類似した色を有する地面１３１が検出されているものとする。
【００６７】
第ｎフレーム１３３では、犬１３２が移動して、地面１３１と重なった位置に存在する。地面１３１と犬１３２は、互いに類似した色を有するため、被写体検出部１５は、地面１３１と犬１３２とを区別して検出することができず、画像上で犬１３２より広い領域を有する地面１３１を被写体として検出する。
【００６８】
図１３では、大きさ推定部１９によって推定された追尾対象の大きさを示す枠、および、位置推定部１７によって推定された追尾対象の位置を示す枠は省略しているが、検出された被写体である地面１３１の大きさおよび位置は、推定された追尾対象の大きさおよび位置とは一致しない。すなわち、推定した追尾対象の大きさと一致する被写体の数は０であり、また、推定した追尾対象の位置と一致する被写体の数も０である。
【００６９】
すなわち、図１３に示す画像例は、被写体数が１であって、大きさが一致した数および位置が一致した数は共に０であり、被写体数は２から１に減少した場合であるから、図１０を参照すると、ブロックマッチングによって追尾対象の位置を決定する方法が選択される。すなわち、ブロックマッチングで求めた動きベクトル（フレーム１３５の動きベクトル１３６）の終点の位置を追尾対象の位置とする。
【００７０】
ブロックマッチング結果に基づいて、追尾対象の位置を決定した場合には、被写体数が増加し、かつ、直近の処理で推定された追尾対象の大きさと略同一の大きさの被写体が検出されるまで、追尾対象の大きさおよび位置を推定する処理は停止して、ブロックマッチングで追尾対象の位置を求める。
【００７１】
なお、追尾位置決定部２０によって追尾対象の位置が決定されると、追尾枠描画部２１は、決定された位置に追尾枠を設定・描画する。
【００７２】
図２に示すフローチャートのステップＳ１２０では、ステップＳ１１０で求めた追尾対象の色情報を取得する。具体的には、求めた追尾対象の位置において、所定の大きさの矩形枠を設定し、設定した矩形枠内における各画素のＲＧＢの画素値を色情報として取得する。
【００７３】
ステップＳ１３０では、追尾処理を終了するか否かを判定する。追尾処理を継続して行う場合には、ステップＳ１４０に進み、パラメータｎに１を加算して、ステップＳ３０に戻る。一方、ユーザによって、追尾機能がオフにされたことを検出すると、追尾処理を終了すると判定して、フローチャートの処理を終了する。
【００７４】
以上、一実施形態における撮像装置によれば、時系列的に得られる画像データの色情報を取得し、取得した色情報に基づいて、追尾対象の候補となる被写体を検出する。そして、検出した被写体の情報を求め、求めた被写体の情報に基づいて、追尾対象の位置を求めるための複数の方法の中から最適な方法を選択して、追尾対象の位置を決定する。追尾対象の候補となる被写体の情報に基づいて、追尾対象の位置を求めるための最適な方法を選択するので、追尾対象と背景とが同色である場合や、追尾対象と類似する色を有する物体が追尾対象付近に存在する場合でも、追尾対象の位置を精度良く求めることができる。
【００７５】
特に、一実施形態における撮像装置によれば、色情報に基づいて追尾対象の位置を求める方法、ブロックマッチングによって追尾対象の位置を求める方法、および、色情報およびブロックマッチングの結果に基づいて追尾対象の位置を求める方法の中から最適な方法を選択するので、追尾対象の位置を精度良く求めることができる。
【００７６】
また、一実施形態における撮像装置によれば、被写体の数、被写体の大きさ、被写体の位置、追尾対象の推定大きさ、追尾対象の推定位置をそれぞれ求め、求めた被写体の数、被写体の大きさおよび追尾対象の推定大きさ、被写体の位置および追尾対象の推定位置、および、時系列的に前の画像データに対する被写体数の増減に基づいて、追尾対象の位置を求めるための複数の方法の中から最適な方法を選択する。これにより、画像データ中の被写体に応じて、追尾対象の位置を精度良く求めるための最適な方法を選択することができる。
【００７７】
本発明は、上述した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。例えば、色検出部１２が検出する追尾対象の色情報は、追尾対象を構成する各画素のＲＧＢの画素値に限定されることはない。
【００７８】
なお、上述した実施形態の説明では、ハードウェアによる処理を前提としていたが、このような構成に限定される必要はない。例えば、追尾対象である被写体を追尾する処理をソフトウェアにて行う構成も可能である。この場合、コンピュータは、ＣＰＵ、ＲＡＭ等の主記憶装置、上記処理の全て或いは一部を実現させるためのプログラムが記憶されたコンピュータ読み取り可能な記憶媒体を備えている。ここでは、このプログラムを画像処理プログラムと呼ぶ。そして、ＣＰＵが上記記憶媒体に記憶されている画像処理プログラムを読み出して、情報の加工・演算処理を実行することにより、上述の追尾処理と同様の処理を実現させる。
【００７９】
ここで、コンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、この画像処理プログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該画像処理プログラムを実行するようにしても良い。
【符号の説明】
【００８０】
２…撮像素子（撮像部）
４…追尾部
１１…ブロックマッチング部
１２…色検出部（色情報取得部）
１４…ヒストグラム作成部
１５…被写体検出部（被写体検出部）
１６…位置検出部（被写体情報検出部）
１７…位置推定部（被写体情報検出部）
１８…大きさ検出部（被写体情報検出部）
１９…大きさ推定部（被写体情報検出部）
２０…追尾位置決定部（追尾位置決定部）
【図１】
0005616743.tif 000002
【図２】
0005616743.tif 000003
【図５】
0005616743.tif 000004
【図７】
0005616743.tif 000005
【図１０】
0005616743.tif 000006
【図３】
0005616743.tif 000007
【図４】
0005616743.tif 000008
【図６】
0005616743.tif 000009
【図８】
0005616743.tif 000010
【図９】
0005616743.tif 000011
【図１１】
0005616743.tif 000012
【図１２】
0005616743.tif 000013
【図１３】
0005616743.tif 000014