特許第6763417号(P6763417)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ニコンの特許一覧

<>
  • 特許6763417-電子機器 図000002
  • 特許6763417-電子機器 図000003
  • 特許6763417-電子機器 図000004
  • 特許6763417-電子機器 図000005
  • 特許6763417-電子機器 図000006
  • 特許6763417-電子機器 図000007
  • 特許6763417-電子機器 図000008
  • 特許6763417-電子機器 図000009
  • 特許6763417-電子機器 図000010
  • 特許6763417-電子機器 図000011
  • 特許6763417-電子機器 図000012
  • 特許6763417-電子機器 図000013
  • 特許6763417-電子機器 図000014
  • 特許6763417-電子機器 図000015
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6763417
(24)【登録日】2020年9月14日
(45)【発行日】2020年9月30日
(54)【発明の名称】電子機器
(51)【国際特許分類】
   G06T 7/00 20170101AFI20200917BHJP
【FI】
   G06T7/00 300D
【請求項の数】4
【全頁数】23
(21)【出願番号】特願2018-76545(P2018-76545)
(22)【出願日】2018年4月12日
(62)【分割の表示】特願2014-525850(P2014-525850)の分割
【原出願日】2013年7月17日
(65)【公開番号】特開2018-136978(P2018-136978A)
(43)【公開日】2018年8月30日
【審査請求日】2018年4月13日
(31)【優先権主張番号】特願2012-158795(P2012-158795)
(32)【優先日】2012年7月17日
(33)【優先権主張国】JP
(73)【特許権者】
【識別番号】000004112
【氏名又は名称】株式会社ニコン
(74)【代理人】
【識別番号】100084412
【弁理士】
【氏名又は名称】永井 冬紀
(74)【代理人】
【識別番号】100146709
【弁理士】
【氏名又は名称】白石 直正
(72)【発明者】
【氏名】金藤 浩史
【審査官】 ▲広▼島 明芳
(56)【参考文献】
【文献】 特開2008−112462(JP,A)
【文献】 特開2010−193406(JP,A)
【文献】 特開平09−322155(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 − 7/90
(57)【特許請求の範囲】
【請求項1】
第1テンプレート画像に基づいて、画像内の特定被写体を特定する第1特定部と、
前記第1テンプレート画像と異なる複数の第2テンプレート画像を生成する生成部と、
複数の前記第2テンプレート画像に基づいて、前記第1特定部が特定した特定被写体の位置と異なる画像内の複数の位置を特定する第2特定部と、
前記第2特定部が特定した複数の位置に基づいて、前記第1テンプレート画像を更新する更新部と、を備え、
前記生成部は、前記第1テンプレート画像を複数の領域に分割し、分割した複数の領域の中心位置のそれぞれを中心として複数の前記第2テンプレート画像を生成し、
前記生成部で生成される複数の前記第2テンプレート画像は、それぞれ前記第1テンプレート画像の異なる一部を含む画像である電子機器。
【請求項2】
請求項に記載の電子機器において、
前記更新部は、前記第1特定部の特定結果と、前記第2特定部の特定結果と、に基づいて、前記第1テンプレート画像を更新する電子機器。
【請求項3】
請求項に記載の電子機器において、
前記更新部は、画像内における複数の前記第2テンプレート画像の中心位置同士の距離に基づいて、前記第1テンプレート画像を更新する電子機器。
【請求項4】
請求項に記載の電子機器において、
前記更新部は、複数の前記第2テンプレート画像の中心位置同士の距離の変化が所定の範囲内である場合には、前記第1テンプレート画像を更新しない電子機器。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子機器に関する。
【背景技術】
【0002】
次のような物体追跡装置が知られている。この物体追跡装置は、被写体の変化に対応するために、異なる複数のテンプレート画像を用いてテンプレートマッチングを行い、類似度が最も高いテンプレート画像を用いてテンプレート画像の更新を行う(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】日本国特許第3768073号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の物体追跡装置では、被写体の大きさが変化してもテンプレート画像のサイズは変わらないため、大きさが変化する被写体を精度よく追尾することができなかった。
【課題を解決するための手段】
【0005】
本発明の第1の態様によると、電子機器は、第1テンプレート画像に基づいて、画像内の特定被写体を特定する第1特定部と、第1テンプレート画像と異なる複数の第2テンプレート画像を生成する生成部と、複数の第2テンプレート画像に基づいて、第1特定部が特定した特定被写体の位置と異なる画像内の複数の位置を特定する第2特定部と、第2特定部が特定した複数の位置に基づいて、第1テンプレート画像を更新する更新部と、を備え、生成部は、第1テンプレート画像を複数の領域に分割し、分割した複数の領域の中心位置のそれぞれを中心として複数の第2テンプレート画像を生成し、生成部で生成される複数の第2テンプレート画像は、それぞれ第1テンプレート画像の異なる一部を含む画像である。
【発明の効果】
【0006】
本発明によれば、大きさが変化する被写体を精度よく追尾することができる。
【図面の簡単な説明】
【0007】
図1】本発明の一実施の形態によるカメラの構成例を説明するブロック図である。
図2】被写体追尾処理の流れを示すフローチャートである。
図3】テンプレート画像生成処理の詳細を示すフローチャートである。
図4図3に続くフローチャートである。
図5】2値画像およびアンド画像を説明する図である。
図6】初期テンプレート画像の生成を説明する図である。
図7】リサイズ判定用テンプレート画像の生成を説明する図である。
図8】リサイズ判定用テンプレート画像の生成を説明する図である。
図9】追尾被写体位置特定処理の詳細を示すフローチャートである。
図10】合成テンプレート画像更新処理の詳細を示すフローチャートである。
図11】テンプレートサイズ更新処理の詳細を示すフローチャートである。
図12図11に続くフローチャートである。
図13】リサイズ判定用テンプレート画像についてのマッチング位置と被写体の大きさとの関係を説明する図である。
図14】変形例1のリサイズ判定用テンプレート画像の生成を説明する図である。
【発明を実施するための形態】
【0008】
以下、図面を参照して本発明を実施するための形態について説明する。図1は、本実施の形態におけるカメラの一実施の形態の構成を示すブロック図である。カメラ100は、操作部材101と、レンズ102と、撮像素子103と、制御装置104と、メモリカードスロット105と、モニタ106とを備えている。操作部材101は、使用者によって操作される種々の入力部材、例えば電源ボタン、レリーズボタン、ズームボタン、十字キー、決定ボタン、再生ボタン、削除ボタンなどを含んでいる。
【0009】
レンズ102は、複数の光学レンズから構成されるが、図1では代表して1枚のレンズで表している。撮像素子103は、例えばCMOSなどのイメージセンサであり、レンズ102により結像した被写体像を撮像する。そして、撮像によって得られた画像信号を制御装置104へ出力する。
【0010】
制御装置104は、CPU、メモリ、およびその他の周辺回路により構成され、カメラ100を制御する。なお、制御装置104を構成するメモリには、SDRAMやフラッシュメモリが含まれる。SDRAMは、揮発性のメモリであって、CPUがプログラム実行時にプログラムを展開するためのワークメモリとして使用されたり、データを一時的に記録するためのバッファメモリとして使用されたりする。また、フラッシュメモリは、不揮発性のメモリであって、制御装置104が実行するプログラムのデータや、プログラム実行時に読み込まれる種々のパラメータなどが記録されている。
【0011】
制御装置104は、撮像素子103から入力された画像信号に基づいて所定の画像形式、例えばJPEG形式の画像データ(以下、「本画像データ」と呼ぶ)を生成する。また、制御装置104は、生成した画像データに基づいて、表示用画像データ、例えばサムネイル画像データを生成する。制御装置104は、生成した本画像データとサムネイル画像データとを含み、さらにヘッダ情報を付加した画像ファイルを生成してメモリカードスロット105へ出力する。本実施の形態では、本画像データとサムネイル画像データとは、いずれもRGB表色系で表された画像データであるものとする。
【0012】
メモリカードスロット105は、記憶媒体としてのメモリカードを挿入するためのスロットである。制御装置104は、画像ファイルを上記メモリカードに書き込んで記録する。また制御装置104は、上記メモリカード内に記憶されている画像ファイルを読み込む。
【0013】
モニタ106は、カメラ100の背面に搭載された液晶モニタ(背面モニタ)であり、当該モニタ106には、メモリカードに記憶されている画像やカメラ100を設定するための設定メニューなどが表示される。また、制御装置104は、使用者によってカメラ100のモードが撮影モードに設定されると、撮像素子103から時系列で取得した画像の表示用画像データをモニタ106に出力する。これによってモニタ106にはスルー画が表示される。
【0014】
図2は、本実施の形態における被写体追尾処理の流れを示すフローチャートである。図2に示す処理は、撮像素子103からスルー画の入力が開始されると起動するプログラムとして、制御装置104によって実行される。
【0015】
ステップS10において制御装置104は、撮像素子103から入力されるフレーム画像(1フレーム目の画像)を読み込んで、ステップS20へ進む。読み込むフレーム画像のサイズは、例えば、360×240画素とする。また、制御装置104は、RGB表色系で表されたフレーム画像を、YCbCr色空間における輝度成分(Y成分)からなる輝度画像と色差成分(Cb成分、Cr成分)とからなる色差画像とに変換する。なお、撮像素子103から入力されるフレーム画像がYCbCrで表されている場合には、この変換処理は不要となる。
【0016】
ステップS20において制御装置104は、テンプレート画像生成処理を実行する。ここで、テンプレート画像生成処理の詳細について図3および図4を用いて説明する。図3のステップS201において制御装置104は、フレーム画像内における追尾対象の被写体(追尾被写体)の位置を特定し、ステップS202へ進む。本実施の形態では、使用者に対してフレーム画像内における追尾被写体位置の指定を促し、使用者が操作部材101を操作して入力した位置を追尾被写体位置として特定する。
【0017】
ステップS202において制御装置104は、上記追尾被写体位置を中心とした3×3画素の領域において、Y成分の平均値、Cb成分の平均値、Cr成分の平均値をそれぞれ算出する。また制御装置104は、フレーム画像全体において、Y成分の標準偏差、Cb成分の標準偏差、Cr成分の標準偏差をそれぞれ算出する。尚、本実施の形態では、これらの標準偏差の算出には、フレーム画像全体の平均値ではなく、上記追尾被写体位置を中心とした3×3画素の領域において算出した平均値を用いる。
【0018】
その後ステップS203へ進み、制御装置104は、フレーム画像の輝度画像(Y画像)と色差画像(Cb画像およびCr画像)の各画素の値から、ステップS202で算出したY成分、Cb成分、Cr成分各々の平均値を減算し、絶対値をとった差分画像をそれぞれ作成する。
【0019】
また制御装置104は、上記追尾被写体位置を中心とした所定の大きさ(例えば30×30画素)の矩形からの距離に応じた距離重み付け係数を算出する。なお、距離重み付け係数は、当該矩形からの距離が長くなるほど(すなわち上記追尾被写体位置から離れるほど)大きくなるように算出される。そして制御装置104は、Y成分、Cb成分、Cr成分の各差分画像の各画素の値に当該距離重み付け係数を乗算することにより、Y成分、Cb成分、Cr成分の距離重みつき差分画像をそれぞれ作成する。この処理により、背景のノイズを除去することができる。その後、ステップS204へ進む。
【0020】
ステップS204において制御装置104は、ステップS203で生成した距離重み付き差分画像に対して2値化処理を行い、図5に示すように、Y成分、Cb成分、Cr成分の2値画像3b〜3dをそれぞれ生成する。なお、図5において、ハッチングで示す領域が黒画素の領域である。
【0021】
具体的には、Y成分の距離重み付き差分画像に対する2値化処理では、ステップS202で算出したY成分の標準偏差に所定係数(例えば0.6)をかけた値を閾値とする。そして、画素値が閾値よりも小さい画素を黒画素とし、それ以外の画素を白画素として2値画像を生成する。
【0022】
Cb成分の距離重み付き差分画像に対する2値化処理は、Y成分の場合と同様に行う。ただし、ステップS202で算出したCb成分の平均値aveCbおよび標準偏差sigCbが次式(1)および(2)の両方を満たす場合には、2値化処理において、次式(3)により算出した閾値thCbを用いる。これは、無彩色シーンに対応するためである。
118 < aveCb < 138 ・・・(1)
sigCb < abs(aveCb-128)+3 ・・・(2)
thCb = α×sigCb×[{abs(aveCb−128)+3}/sigCb]1/2×[10/{abs(aveCb-128)+0.1}]1/2 ・・・(3)
なお、式(2)および(3)において、absは絶対値をとる関数である。また、式(3)において、αは例えば0.6とする。
【0023】
また、Cr成分の距離重み付き差分画像に対する2値化処理は、Cb成分の場合と同様に行う。
【0024】
その後、ステップS205へ進み、制御装置104は、ステップS204で生成したY成分、Cb成分、Cr成分の2値画像3b〜3dのアンドをとって合成し、アンド画像(合成画像)3eを生成して、ステップS206へ進む。
【0025】
ステップS206において、制御装置104は、上記アンド画像において、追尾被写体位置を中心とした所定範囲、例えば180×180画素の大きさの領域をクロップする。このクロップ処理によって得られたクロップ画像を対象として後の処理を行うことにより、処理を高速化することができる。そして制御装置104は、クロップした画像に対して8方向のラベリング処理を行うことによりラベリング画像を生成して、ステップS207へ進む。
【0026】
ステップS207において、制御装置104は、上記ラベリング処理で作成されたラベリング画像内から白画素の塊をマスクとして抽出し、抽出したマスクの面積を算出して、ステップS208へ進む。
【0027】
ステップS208において制御装置104は、上記マスクの面積に基づいて、追尾被写体である可能性が低いマスクを除外するための足切りを行う。具体的には、マスク面積を上記アンド画像の画面面積で割った値が、所定の下限値(例えば0.0001)より大きいマスクのみを残し、その他を以降の処理対象から除外する。これにより、追尾被写体である可能性が低いマスクを以降の処理対象から除外して、処理の高速化を図ることができる。
【0028】
その後ステップS209へ進み、制御装置104は、ステップS208で除外されなかったマスク(すなわち残されたマスク)が1つ以上あるか否かを判定する。残されたマスクの数が0であることは、追尾被写体である可能性が高いマスクを検出できなかったことを意味する。この場合、制御装置104は、ステップS209を否定判定してステップS201へ戻り、再度、使用者に追尾被写体位置を入力させる。尚、この場合、追尾不能として被写体追尾処理を終了するようにしてもよい。一方、残されたマスクの数が1以上である場合には、制御装置104は、ステップS209を肯定判定してステップS210へ進む。
【0029】
ステップS210において制御装置104は、残された各マスクの慣性モーメントIMを、それぞれ次式(4)により算出する。
IM=ΣΣ{(x−x)+(y−y) ・・・(4)
なお、式(4)において、(x,y)は、マスクの画素の座標であり、(x,y)は、追尾被写体位置の座標である。
【0030】
そして制御装置104は、上記慣性モーメントIMとステップS207で算出したマスク面積とに基づいて、残された各マスクの評価値を、それぞれ次式(5)により算出する。
評価値=(マスク面積)β/IM ・・・(5)
なお、式(5)においては、βの値は1より大きな値が好ましく、例えば1.5とする。
【0031】
その後、図4のステップS211へ進み、制御装置104は、上記評価値が最大であるマスクを、追尾被写体を示す可能性が高いマスクとして特定する。そして制御装置104は、図6(A)に示す、この特定したマスクMaを包絡する矩形の短辺Rectに基づいて、追尾被写体の大きさを示す値(以下、オブジェクトサイズ(Objectsize)と呼ぶ)を設定する。具体的に、Rect>240の場合はRect=240とし、Rect<9の場合は、Rect=6とする。そして次式(6)によりオブジェクトサイズを算出することにより、オブジェクトサイズを短辺Rectに近い3の倍数の値とする。これは、後述する処理において、オブジェクトサイズに基づいてサイズが設定されるリサイズ判定用テンプレート画像を3×3のブロックに分割するためである。
Objectsize=floor(Rect/3)×3 ・・・(6)
なお、式(6)において、floorは小数点以下の切り捨てを行う関数である。
【0032】
その後、ステップS212へ進み、制御装置104は、ステップS211で決定したオブジェクトサイズが所定値(本実施形態では24画素)よりも大きいか否かを判定する。なお、この所定値は、テンプレートマッチング処理において扱えるテンプレート画像の大きさの最大値であり、例えば、制御装置104に関するハードウェアの制約などによって決められている。制御装置104は、オブジェクトサイズが所定値よりも大きい場合には、ステップS212を肯定判定してステップS218へ進む。一方、オブジェクトサイズが所定値以下の場合には、ステップS212を否定判定してステップS213へ進む。
【0033】
ステップS213において制御装置104は、フレーム画像の縮小倍率Shukuを1倍に設定し、縮小倍率を不図示のメモリに記録した後、ステップS214へ進む。
【0034】
ステップS214において制御装置104は、ステップS10で読み込んだフレーム画像において、図6(B)に示すように、上記追尾被写体位置Ptを中心としたObjectsize×Objectsizeの画像を、初期テンプレート画像Tsとして生成し、不図示のメモリに記録した後、ステップS215へ進む。なお、初期テンプレート画像Tsは、後述するようにサイズの変更は行うが、画像内容の更新は行わないテンプレート画像である。
【0035】
ステップS215において制御装置104は、初期テンプレート画像Tsと同一の画像を合成テンプレート画像Tgとして生成し、ステップS216へ進む。なお、合成テンプレート画像Tgは、初期テンプレート画像と異なり、画像内容の更新を行うテンプレート画像である。この更新については後述する。また、初期テンプレート画像および合成テンプレート画像は、追尾被写体位置を特定するための追尾用テンプレート画像である。
【0036】
ステップS216において制御装置104は、テンプレート画像をリサイズするか否かを判定するためのリサイズ判定用テンプレート画像を生成する。具体的には、図7(A)に示すように、ステップS215で生成した合成テンプレート画像Tgを3×3のブロックB1〜B9に分割し、各ブロックB1〜B9の中心位置P1〜P9を算出する。そして制御装置104は、図8(A)に示すように、ブロックB1の中心位置P1を中心とした、Objectsize×Objectsizeである画像を、第1リサイズ判定用テンプレート画像Tr1として生成する。ブロックB2〜B9の中心位置P2〜P9についても同様にして、図8(B)〜(I)に示すように第2〜第9リサイズ判定用テンプレート画像Tr2〜Tr9を生成する。なお、本実施形態では、分割した9つのブロックのうち、中央のブロックB5の中心位置(=追尾被写体位置)P5を中心とする第5リサイズ判定用テンプレート画像Tr5は、合成テンプレート画像Tgと同一の画像となる。
【0037】
その後ステップS217へ進み、制御装置104は、図7(B)に示すように、第1〜第4、第6〜第9リサイズ判定用テンプレート画像Tr1〜Tr4、Tr6〜Tr9の中心位置P1〜P4、P6〜P9について、それぞれ、第5リサイズ判定用テンプレート画像Tr5の中心位置(=追尾被写体位置)P5からの距離L1〜L4、L6〜L9を初期状態の距離(初期距離)として算出する。本実施の形態において、距離の算出には、例えばユークリッド距離を用いる。制御装置104は、算出した初期距離L1〜L4、L6〜L9を不図示のメモリに記録する。その後、制御装置104は、図4の処理を終了し、図2の処理に復帰する。
【0038】
一方、上述したステップS212を肯定判定して進むステップS218において、制御装置104は、次式(7)によりフレーム画像の縮小倍率Shukuを算出し、不図示のメモリに記録する。
Shuku=24/ObjectSize ・・・(7)
【0039】
そして制御装置104は、ステップS10で読み込んだフレーム画像を、上記縮小倍率Shukuを用いてリサイズし、ステップS219へ進む。本実施の形態では、画像のリサイズ方法として、例えばバイリニア法を用いる。また、このリサイズに合わせて、追尾被写体位置の座標を変換する。
【0040】
ステップS219において制御装置104は、上記リサイズしたフレーム画像において、上記追尾被写体位置を中心とした24×24画素の画像を初期テンプレート画像として生成し、不図示のメモリに記録した後、ステップS220へ進む。
【0041】
ステップS220において制御装置104は、ステップS219で生成した初期テンプレート画像と同一の画像を合成テンプレート画像として生成し、ステップS221へ進む。
【0042】
ステップ221において制御装置104は、ステップS220で生成した合成テンプレート画像を3×3のブロックに分割し、各ブロックの中心位置を算出する。そして制御装置104は、上述したステップS216の場合と同様に、各ブロックの中心位置を中心とした、サイズが24×24画素である画像を、第1〜第9リサイズ判定用テンプレート画像として生成する。なお、分割した9つのブロックのうち、中央のブロックの中心位置(すなわち追尾被写体位置)を中心とする第5リサイズ判定用テンプレート画像は、ステップS220で生成した合成テンプレート画像と同一の画像となる。
【0043】
このように本実施の形態では、上記ステップS211で設定したオブジェクトサイズが24画素よりも大きい場合には、リサイズしたフレーム画像において24×24画素のテンプレート画像(初期テンプレート画像、合成テンプレート画像および第1〜第9リサイズ判定用テンプレート画像)を生成する。尚、これら24×24画素のテンプレート画像が、元の(リサイズ前の)フレーム画像において、サイズがObjectsize×Objectsizeのテンプレート画像を生成した場合と同じ画像内容となるように、上記ステップS218においてフレーム画像の縮小倍率Shukuが算出される。そして後述する追尾被写体位置特定処理(図8)では、リサイズしたフレーム画像に対して24×24画素のテンプレート画像を用いてテンプレートマッチング処理を行う。これにより、テンプレートマッチング処理において扱えるテンプレート画像のサイズが24×24画素までと限られていても、元のフレーム画像において24×24画素よりも大きいサイズの被写体を追尾することができる。
【0044】
その後ステップS222へ進み、制御装置104は、第1〜第4、第6〜第9リサイズ判定用テンプレート画像の中心位置について、それぞれ第5リサイズ判定用テンプレート画像の中心位置からの距離を初期距離として算出する。制御装置104は、算出した距離を不図示のメモリに記録する。その後、制御装置104は、図4の処理を終了し、図2の処理に復帰する。
【0045】
制御装置104は、上述したように図2のステップS20のテンプレート画像生成処理を完了するとステップS30へ進み、2フレーム目のテンプレートマッチング処理における探索エリアを設定する。ここで制御装置104は、上記追尾被写体位置を中心とし、テンプレート画像のサイズ(Tempsize)に基づいて定められるサイズのエリアを探索エリアとして設定する。具体的には、探索エリアの上端y座標(TM_Ystart)、下端y座標(TM_Yend)、左端x座標(TM_Xstart)、右端y座標(TM_Xend)を、次式(8)〜(15)により算出する。なお次式(8)〜(15)において、TM_ImageWidthはフレーム画像の横幅に上記縮小倍率をかけたもの、ObjectYは追尾被写体位置のy座標、ObjectXは追尾被写体位置のx座標、MinZansa=0.1、Keisu=0.5である。また、次式(12)〜(15)において、Objectsizeが24画素以下の場合はTempsize=Objectsizeであり、Objectsizeが24画素よりも大きい場合はTempsize=24である。さらに、次式(12)〜(15)において、Objectsizeが24画素よりも大きい場合には、ObjectX、ObjectYについては、ステップS218でリサイズに合わせて変換した座標を用いる。
Search=TM_ImageWidth×Keisu ・・・(8)
If(ObjectSize>=60) →Geta=50
else Geta=24 ・・・(9)
Geta1=Geta×Shuku ・・・(10)
SearchWidth=Minzansa×Search+Geta1 ・・・(11)
TM_Ystart=ObjectY−(SearchWidth+1)−TempSize/2 ・・・(12)
TM_Yend=ObjectY+SearchWidth+TempSize/2 ・・・(13)
TM_Xstart=ObjectX−(SearchWidth+1)−TempSize/2 ・・・(14)
TM_Xend=ObjectX+SearchWidth+TempSize/2 ・・・(15)
【0046】
その後ステップS40へ進み、制御装置104は、撮像素子103から入力されるフレーム画像(2フレーム目以降の画像)を読み込んで、ステップS50へ進む。このとき制御装置104は、上述したステップS10と同様に、RGB表色系で表されたフレーム画像を、輝度画像(Y画像)と色差画像(Cb、Cr)とに変換する。
【0047】
ステップS50において制御装置104は、追尾被写体位置特定処理を実行する。ここで、追尾被写体位置特定処理の詳細について図9を用いて説明する。図9のステップS501において制御装置104は、上記ステップS213もしくはS218、または後述するステップS810もしくはS815で設定した縮小倍率Shukuに基づいて、ステップS40で読み込んだフレーム画像をリサイズし、ステップS502へ進む。
【0048】
ステップS502において制御装置104は、ステップS501でリサイズしたフレーム画像において、探索エリア内の画像と初期テンプレート画像との類似度、および探索エリア内の画像と合成テンプレート画像との類似度を、それぞれ演算する。ここで、類似度の演算方法としては、絶対差分和(SAD:Sum of Absolute Difference)を用いる。絶対差分和は、その値が小さいほど類似度が高いことを示し、その値が大きいほど類似度が低いことを示す。
【0049】
具体的に制御装置104は、探索エリア内で、初期テンプレート画像と同一サイズの探索枠を1画素ずつ移動させながら、探索枠内の画像と初期テンプレート画像との絶対差分和を、Y成分、Cb成分、Cr成分それぞれにおいて演算する。合成テンプレート画像についても同様に、探索枠を1画素ずつ移動させながら、探索枠内の画像と合成テンプレート画像との絶対差分和を演算する。そして、初期テンプレート画像および合成テンプレート画像のそれぞれについて、各探索枠位置における絶対差分和を2次元化して表した類似度マップを、Y成分、Cb成分、Cr成分ごとに生成する。
【0050】
その後ステップS503へ進み、制御装置104は、ステップS40で読み込んだフレーム画像が2フレーム目であるか否かを判定する。制御装置104は、2フレーム目である場合にはステップS505へ進み、3フレーム目以降である場合にはステップS504へ進む。
【0051】
ステップS504において制御装置104は、ステップS502で生成した類似度マップごとに、前フレームにおける追尾被写体位置特定処理で特定した追尾被写体位置からの距離に応じた係数Kyoriを乗算して、ステップS505へ進む。なお、この係数Kyoriは、次式(16)により算出される。すなわち、この係数は、前フレームにおける追尾被写体位置から離れるほど大きくなるように算出される。
Kyori(x,y)=Kyori+K(|x−Mx×Shuku|+|y−My×Shuku|) ・・・(16)
なお、式(16)において、(x,y)は、探索エリア内の各画素の座標であり、Mxは前フレームで特定された追尾被写体位置のx座標、Myは前フレームで特定された追尾被写体位置のy座標である。また、本実施形態では、Kyori=1.0、K=0.05とする。
【0052】
ステップS505において制御装置104は、初期テンプレート画像および合成テンプレート画像のそれぞれについて、Y成分、Cb成分、Cr成分の類似度マップSADY、SADCb、SADCrを次式(17)により統合し、統合類似度マップSADallを生成する。
SADall=1/N(GainY×SADY+GainCb×SADCb+GainCr×SADCb) ・・・(17)
なお、式(17)において、本実施形態では、GainY=0.1、GainCb=1.5、GainCr=1.5とする。また、NはSADの正規化係数であり、N=Tempsize×Tempsize×255とする。
【0053】
そして制御装置104は、初期テンプレート画像の統合類似度マップ、および合成テンプレート画像の統合類似度マップの中から、最大類似度(すなわち最小絶対差分和)が算出された探索枠位置を、マッチング位置として選出する。制御装置104は、マッチング位置における探索枠内の領域(マッチング領域)を追尾被写体エリアとして特定し、追尾被写体エリアの中心位置を追尾被写体位置として特定する。
【0054】
具体的には、制御装置104は、次式(18)および(19)により、追尾被写体位置の座標(Objx,Objy)を算出し、追尾被写体位置を特定する。
Objx=Mx+Tempsize/2 ・・・(18)
Objy=My+Tempsize/2 ・・・(19)
【0055】
また、制御装置104は、次式(20)〜(23)により、追尾被写体エリアの上端y座標(Obj_YStart)、下端y座標(Obj_YEnd)、左端x座標(Obj_XStart)、右端x座標(Obj_XEnd)を算出し、追尾被写体エリアを特定する。
Obj_YStart=My/Shuku ・・・(20)
Obj_YEnd=(My+Tempsize−1)/Shuku ・・・(21)
Obj_XStart=Mx/Shuku ・・・(22)
Obj_XEnd=(Mx+Tempsize−1)/Shuku ・・・(23)
【0056】
その後ステップS506へ進み、制御装置104は、モニタ106に表示されたフレーム画像上に上記追尾被写体エリアおよび追尾被写体位置を表示して、図9の処理を終了し、図2の処理に復帰する。
【0057】
制御装置104は、上述したように図2のステップS50の追尾被写体位置特定処理を完了するとステップS60へ進み、ステップS40で読み込んだフレーム画像が最終フレームか否かを判定する。制御装置104は、最終フレームである場合、ステップS60を肯定判定して図2の処理を終了し、最終フレームではない場合、ステップS60を否定判定してステップS70へ進む。
【0058】
ステップS70において制御装置104は、合成テンプレート画像更新処理を実行する。ここで、合成テンプレート画像更新処理の詳細について図10を用いて説明する。図10のステップS701において制御装置104は、合成テンプレート画像を更新するか否かを判定する。このとき制御装置104は、以下の条件(1)および条件(2)を満たす場合に、合成テンプレート画像の更新条件を満たすと判断する。
条件(1)・・・上記最小絶対差分和があらかじめ設定されている判定閾値よりも小さい(すなわち最大類似度が所定以上の高さである)こと
条件(2)・・・所定の回数(例えば3回)以上連続して、同じテンプレート画像から生成された類似度マップから最大類似度が算出されたこと
【0059】
そこで制御装置104は、上記更新条件を満たすと判断した場合にはステップS701を肯定判定してステップS702へ進む。一方、上記更新条件を満たさないと判断した場合にはステップS701を否定判定し、合成テンプレート画像を更新せずに図10の処理を終了して、図2の処理に復帰する。上記更新条件を満たさない場合、追尾対象の被写体を捕らえていない可能性が高く、更新する合成テンプレート画像が当初の追尾対象とは異なる被写体を含んでしまう可能性が高いからである。
【0060】
ステップS702において制御装置104は、最大類似度が算出されたのは、初期テンプレート画像による類似度マップであるか、合成テンプレート画像による類似度マップであるかを判定する。制御装置104は、合成テンプレート画像による類似度マップであると判定した場合にはステップS703へ進み、初期テンプレート画像による類似度マップであると判定した場合にはステップS704へ進む。
【0061】
ステップS703において制御装置104は、第1の重み係数を乗じたマッチング領域内の画像の画素情報と、第2の重み係数を乗じた初期テンプレート画像の画素情報とを加算、すなわち合成して新たな合成テンプレート画像を生成する。制御装置104は、この生成した画像を新たな合成テンプレート画像として更新して図10の処理を終了し、図2の処理に復帰する。
【0062】
ここで、マッチング領域内の画像と初期テンプレート画像とは、いずれも追尾すべき被写体から切り出されたデータであるため、全く異なる情報量を有するものではない。よって、これら2つの画像を合成すれば、追尾対象の被写体に類似する画像が生成されることになる。このように合成した画像を新たな合成テンプレート画像として用いるメリットは、例えば、被写体の動きが激しい場合には、複数の被写体情報を含んだ合成テンプレート画像を用いることにより、多少の被写体変化でもロバストに追尾することが可能になる。なお、第1の重み係数と第2の重み係数は、その和が1になるように設定し、それぞれの重み係数の値は、例えば、第1の重み係数=0.6、第2の重み係数=0.4とする。すなわち、最大類似度が算出されたのが合成テンプレート画像である場合には、現在の被写体の形状は、初期テンプレート画像における被写体の形状から大きく変化している可能性が高いため、合成テンプレート画像の画素情報に乗じる第1の重み係数を大きく設定することによって、現在の被写体の形状を強く反映させた新たな合成テンプレート画像を生成することができる。また、この場合であっても、初期テンプレート画像の画素情報に、値を小さく設定した第2の重み係数を乗じて足し込むことにより、新たな更新テンプレー画像が初期テンプレート画像から大きく離れ過ぎないようにすることができる。
【0063】
一方、ステップS704において、制御装置104は、第3の重み係数を乗じたマッチング領域内の画像の画素情報と、第4の重み係数を乗じた初期テンプレート画像の画素情報とを加算、すなわち合成して新たな合成テンプレート画像を生成する。制御装置104は、この生成した画像を新たな合成テンプレート画像として更新して図10の処理を終了し、図2の処理に復帰する。
【0064】
この場合、第3の重み係数と第4の重み係数は、その和が1になるように設定し、それぞれの重み係数の値は、例えば、第3の重み係数=0.4、第4の重み係数=0.6とする。すなわち、最大類似度が算出されたのが初期テンプレート画像による類似度マップである場合、現在の被写体の形状は、初期テンプレート画像における被写体の形状からそれほど変化していない可能性が高いため、初期テンプレート画像の画素情報に乗じる第4の重み係数を大きく設定することにより、新たに生成する合成テンプレート画像を初期テンプレート画像に近づくようにする。また、この場合であっても、合成テンプレート画像の画素情報に、値を小さく設定した第3の重み係数を乗じて足し込むことにより、時間経過に伴う被写体形状の変化の影響も加味した新たな合成テンプレート画像を生成することができる。
【0065】
制御装置104は、上述したようにステップS70の合成テンプレート画像更新処理を完了するとステップS80へ進み、テンプレート画像サイズ変更処理を実行する。ここで、テンプレート画像サイズ変更処理の詳細について図11および図12を用いて説明する。図11のステップS801において制御装置104は、上記ステップS502において述べた初期テンプレート画像および合成テンプレート画像の場合と同様に、探索エリア内の画像と第1〜第9リサイズ判定用テンプレート画像との類似度をそれぞれ演算する。そして、第1〜第9リサイズ判定用テンプレート画像のそれぞれについて、Y成分、Cb成分、Cr成分ごとに類似度マップを生成する。
【0066】
その後ステップS802へ進み、制御装置104は、ステップS40で読み込んだフレーム画像が2フレーム目であるか否かを判定する。制御装置104は、2フレーム目である場合にはステップS804へ進み、3フレーム目以降である場合にはステップS803へ進む。
【0067】
ステップS803において制御装置104は、上記ステップS504と同様に、上記式(16)を用いて係数Kyoriを算出する。なお、上記式(16)におけるMxとMyは、第1〜第9リサイズ判定用テンプレート画像のそれぞれについて、前フレームにおけるテンプレート画像サイズ変更処理で特定したマッチング位置の座標を用いる。そして、制御装置104は、ステップS801で生成した類似度マップごとに係数Kyoriを乗算して、ステップS804へ進む。
【0068】
ステップS804において制御装置104は、第1〜第9リサイズ判定用テンプレート画像のそれぞれについて、上記ステップS505と同様に、Y成分、Cb成分、Cr成分の類似度マップを上記式(17)により統合し、統合類似度マップを生成する。そして制御装置104は、第1〜第9リサイズ判定用テンプレート画像の統合類似度マップのそれぞれにおいて、最大類似度である(すなわち最小絶対差分和である)探索枠位置をマッチング位置として特定して、ステップS805へ進む。すなわち、第1〜第9リサイズ判定用テンプレート画像のそれぞれについて、マッチング位置を特定する。
【0069】
ステップS805において制御装置104は、第5リサイズ判定用テンプレート画像による統合類似度マップの最小絶対差分和が、あらかじめ設定されている判定閾値よりも小さい(すなわち最大類似度が所定以上の高さである)か否かを判定する。制御装置104は、上記最小絶対差分和が上記判定閾値よりも小さい場合には、ステップS805を肯定判定してステップS806へ進む。一方、制御装置104は、上記最小絶対差分和が上記判定閾値以上である場合(すなわち最大類似度が所定よりも低い場合)には、ステップS805を否定判定し、テンプレート画像のサイズを変更せずに図11の処理を終了して、図2の処理に復帰する。
【0070】
ステップS806において制御装置104は、第1〜第4および第6〜第9リサイズ判定用テンプレート画像において、最小絶対差分和があらかじめ設定されている判定閾値よりも小さい(すなわち最大類似度が所定以上の高さである)ものを選択する。そして制御装置104は、選択したリサイズ判定用テンプレート画像についてのマッチング位置と、第5リサイズ判定用テンプレート画像についてのマッチング位置(=合成テンプレート画像についてのマッチング位置)との距離(現在距離)をそれぞれ算出し、ステップS807へ進む。
【0071】
ここで図13を用いて、第1〜第9リサイズ判定用テンプレート画像についてのマッチング位置M1〜M9と、追尾被写体Hsの大きさとの関係を説明する。図13(B)は、初期距離、すなわち第1〜第4、第6〜第9リサイズ判定用テンプレート画像の中心位置P1〜P4、P6〜P9のそれぞれにおける、第5リサイズ判定用テンプレート画像の中心位置P5からの距離を説明する図である。
【0072】
図13(B)の状態から図13(A)の状態に変化した場合、すなわちフレーム画像上で追尾被写体Hsが小さくなった場合には、第1〜第5リサイズ判定用テンプレート画像のマッチング位置M1〜M9の位置関係は、図13(B)に示す場合と比較して密度が高くなる。すなわち、第1〜第4、第6〜第9リサイズ判定用テンプレート画像のマッチング位置M1〜M4、M6〜M9のそれぞれにおける、第5リサイズ判定用テンプレート画像のマッチング位置M5からの距離(現在距離)が、それぞれに対応する初期距離と比べて短くなる。また、追尾被写体Hsが小さくなるほど、現在距離が初期距離と比べてより短くなる。
【0073】
図13(B)の状態から図13(C)の状態に変化した場合、すなわちフレーム画像上で追尾被写体Hsが大きくなった場合には、第1〜第5リサイズ判定用テンプレート画像のマッチング位置M1〜M9の位置関係は、図13(B)に示す場合と比較して密度が低くなる(まばらになる)。すなわち、第1〜第4、第6〜第9リサイズ判定用テンプレート画像のマッチング位置M1〜M4、M6〜M9のそれぞれにおける、第5リサイズ判定用テンプレート画像のマッチング位置M5からの距離(現在距離)が、それぞれに対応する初期距離と比べて長くなる。また、追尾被写体Hsが大きくなるほど、現在距離が初期距離と比べてより長くなる。
【0074】
なお、追尾被写体Hsのサイズが変わらない場合には、第1〜第4、第6〜第9リサイズ判定用テンプレート画像のマッチング位置M1〜M4、M6〜M9のそれぞれにおける、第5リサイズ判定用テンプレート画像のマッチング位置M5からの距離は、それぞれに対応する初期距離からあまり変化しない。
【0075】
そこでステップS807において、制御装置104は、ステップS806で算出した距離(現在距離と呼ぶ)において、上記ステップS217もしくはステップS222、または後述するステップS814もしくはステップS819で算出した初期距離からの変化が大きいか否かを判定する。具体的には、ステップS806で算出した現在距離のうち過半数以上において、現在距離/初期距離≧1.2、または、現在距離/初期距離≦0.76となる場合に現在距離において初期距離からの変化が大きいと判断し、これ以外の場合は現在距離において初期距離からの変化が小さいと判断する。現在距離において初期距離からの変化が大きい場合には、追尾被写体のサイズが大きく変化した可能性が高い。したがって制御装置104は、当該変化が大きいと判断した場合にはステップS807を肯定判定して、ステップS808へ進む。一方、制御装置104は、当該変化が小さいと判断した場合にはステップS807を否定判定し、テンプレート画像のサイズを変更せずに図11の処理を終了して、図2の処理に復帰する。
【0076】
図12のステップS808において、制御装置104は、現在距離が初期距離と比較して長くなった場合にはオブジェクトサイズを大きくし、現在距離が初期距離と比較して短くなった場合にはオブジェクトサイズを小さくする。また、制御装置104は、変更前のオブジェクトサイズが大きいほどサイズの変更量を大きくし、変更前のオブジェクトサイズが小さいほどサイズの変更量を小さくする。具体的には、現在距離/初期距離≧1.2の場合は次式(24)を用いて、現在距離/初期距離≦0.76の場合は次式(25)を用いて、オブジェクトサイズ(Objectsize)を更新する。
【0077】
(1)現在距離/初期距離≧1.2の場合
If(ObjectSize≧240) → ObjectSize=240
elseif(ObjectSize≧120) → ObjectSize=ObjectSize+15
elseif(ObjectSize≧60) → ObjectSize=ObjectSize+12
elseif(ObjectSize≧48) → ObjectSize=ObjectSize+9
elseif(ObjectSize≧27) → ObjectSize=ObjectSize+6
else →ObjectSize=ObjectSize+3 ・・・(24)
【0078】
(2)現在距離/初期距離≦0.76の場合
If(ObjectSize≧105) → ObjectSize=ObjectSize−15
elseif(ObjectSize≧72) → ObjectSize=ObjectSize−12
elseif(ObjectSize≧33) → ObjectSize=ObjectSize−9
elseif(ObjectSize≧24) → ObjectSize=ObjectSize−6
elseif(ObjectSize≦6) → ObjectSize=6
else →ObjectSize=ObjectSize−3 ・・・(25)
【0079】
その後、ステップS809へ進み、制御装置104は、ステップS808で更新したオブジェクトサイズが所定値(本実施形態では24画素)よりも大きいか否かを判定する。制御装置104は、オブジェクトサイズが所定値よりも大きい場合には、ステップS809を肯定判定してステップS815へ進む。一方、オブジェクトサイズが所定値以下の場合には、ステップS809を否定判定してステップS810へ進む。
【0080】
ステップS810において制御装置104は、フレーム画像の縮小倍率Shukuを1倍に設定し、ステップS811へ進む。
【0081】
ステップS811において制御装置104は、ステップS214またはS219で不図示のメモリに記録した初期テンプレート画像のサイズを、ステップS213またはS218で不図示のメモリに保存した縮小倍率Shukuの逆数を用いてリサイズする。そして制御装置104は、このリサイズした初期テンプレート画像を、ステップS808で更新したオブジェクトサイズObjectsize×Objectsizeとなるようにリサイズして、ステップS812へ進む。
【0082】
ステップS812において制御装置104は、ステップS40で読み込んだフレーム画像において、ステップS50で特定した追尾被写体位置を中心とし、サイズがステップS808で更新したオブジェクトサイズObjectsize×Objectsizeである画像を、合成テンプレート画像として更新して、ステップS813へ進む。
【0083】
ステップS813において制御装置104は、ステップS813で生成した合成テンプレート画像を3×3のブロックに分割し、各ブロックの中心位置を算出する。そして制御装置104は、上述したステップS216の場合と同様に、各ブロックの中心位置を中心とし、ステップS808で更新したオブジェクトサイズObjectsize×Objectsizeである画像を、第1〜第9リサイズ判定用テンプレート画像として更新する。
【0084】
このように上記ステップS811〜S813において、制御装置104は、現在距離が初期距離と比較して長くなった場合には、テンプレート画像のサイズを大きくし、現在距離が初期距離と比較して短くなった場合にはテンプレート画像のサイズを小さくする。
【0085】
その後ステップS814へ進み、制御装置104は、ステップ813で更新した第1〜第4、第6〜第9リサイズ判定用テンプレート画像の中心位置について、それぞれ第5リサイズ判定用テンプレート画像の中心位置からの距離を初期距離として算出する。制御装置104は、算出した距離を不図示のメモリに記録する。その後、制御装置104は、図12の処理を終了し、図2の処理に復帰する。
【0086】
一方、上述したステップS809を肯定判定して進むステップS815において、制御装置104は、上記ステップS808で更新したオブジェクトサイズObjectsizeを用いて、上記式(7)によりフレーム画像の縮小倍率Shukuを算出する。そして制御装置104は、ステップS40で読み込んだフレーム画像を当該算出した縮小倍率Shukuを用いてリサイズし、ステップS816へ進む。なお、このリサイズに合わせて、ステップS50で特定した追尾被写体位置の座標を変換する。
【0087】
ステップS816において制御装置104は、ステップS214またはS219で不図示のメモリに記録した初期テンプレート画像のサイズを、ステップS213またはS218で不図示のメモリに記録した縮小倍率Shukuの逆数を用いてリサイズする。そして制御装置104は、このリサイズした初期テンプレート画像を、ステップS808で更新したオブジェクトサイズObjectsize×Objectsizeとなるようにリサイズする。さらに制御装置104は、このリサイズした初期テンプレート画像を、上記ステップS815で算出した縮小倍率Shukuを用いてリサイズすることにより、初期テンプレート画像のサイズを24×24画素として、ステップS817へ進む。
【0088】
ステップS817において制御装置104は、ステップS815でリサイズしたフレーム画像において、上記追尾被写体位置を中心とし、サイズが24×24画素である画像を、合成テンプレート画像として更新して、ステップS818へ進む。
【0089】
ステップ818において制御装置104は、ステップS817で生成した合成テンプレート画像を3×3のブロックに分割し、各ブロックの中心位置を算出する。そして制御装置104は、上述したステップS221の場合と同様に、各ブロックの中心位置を中心とし、サイズが24×24画素である画像を、新たな第1〜第9リサイズ判定用テンプレート画像として更新する。
【0090】
このように上記ステップS809で更新したオブジェクトサイズが24画素よりも大きい場合の上記ステップS815〜S818において、制御装置104は、現在距離が初期距離と比較して長くなった場合には、フレーム画像に対するテンプレート画像のサイズを大きくし、現在距離が初期距離と比較して短くなった場合にはフレーム画像に対するテンプレート画像のサイズを小さくする。なお、本説明において、テンプレート画像のサイズを変更するとは、フレーム画像のサイズに対するテンプレート画像のサイズの倍率を変更することを含むものとする。
【0091】
その後ステップS819へ進み、制御装置104は、ステップS818で更新した第1〜第4、第6〜第9リサイズ判定用テンプレート画像の中心位置について、それぞれ第5リサイズ判定用テンプレート画像の中心位置からの距離を初期距離として算出する。制御装置104は、算出した距離を不図示のメモリに記録する。その後、制御装置104は、図12の処理を終了し、図2の処理に復帰する。
【0092】
制御装置104は、上述したように図2のステップS80のテンプレートサイズ変更処理を完了するとステップS90へ進み、次フレームのテンプレートマッチング処理における探索エリアを設定する。ここで制御装置104は、上記追尾被写体位置を中心とし、テンプレートサイズおよびステップS505で算出した最小絶対差分和(すなわち最大類似度)に基づいて定められるサイズのエリアを探索エリアとして設定する。具体的には、上記ステップS30と同様に、探索エリアの上端y座標(TM_Ystart)、下端y座標(TM_Yend)、左端x座標(TM_Xstart)、右端y座標(TM_Xend)を、上記式(8)〜(15)により算出する。なお上記式(11)において、MinZansaは、ステップS505で算出した最小絶対差分和を用いる。
【0093】
このようにして次フレームにおける探索エリアを設定すると、制御装置104は、ステップS40に戻る。制御装置104は、ステップS40〜S90を繰り返すことにより、次々に読み込まれるフレーム画像において追尾対象の被写体を追尾する。
【0094】
以上説明した実施形態によれば、次の作用効果が得られる。
(1)被写体追尾装置は、入力画像(フレーム画像)内に探索エリアを設定する制御装置104と、追尾用テンプレート画像(初期テンプレート画像および合成テンプレート画像)と探索エリア内の画像との類似度を演算する制御装置104と、当該演算した類似度に基づいて、フレーム画像内における追尾被写体位置を特定する制御装置104と、合成テンプレート画像に基づいて生成された第1〜第9リサイズ判定用テンプレート画像と探索エリア内の画像との類似度をそれぞれ演算する制御装置104と、当該演算した類似度に基づいて、フレーム画像内における第1〜第9リサイズ判定用テンプレート画像のマッチング位置をそれぞれ特定する制御装置104と、上記特定したマッチング位置の疎密度合い(すなわち、上記現在距離における上記初期距離からの変化度合い)に基づいて、追尾用テンプレート画像およびリサイズ判定用テンプレート画像の画像サイズを変更する制御装置104と、を備えるので、追尾被写体の大きさの変化に応じてテンプレート画像のサイズを変更することができる。したがって、大きさが変化する被写体を精度よく追尾することができる。
【0095】
(2)上記(1)の被写体追尾装置において、制御装置104は、上記特定した複数のマッチング位置の疎密度合いが所定以上変化した場合(現在距離/初期距離≧1.2、または、現在距離/初期距離≦0.76となる場合)に、テンプレート画像のサイズを変更するように構成したので、追尾被写体の大きさがあまり変化していないのに誤ってテンプレート画像のサイズを大きく変更してしまうことを防止できる。
【0096】
(3)上記(1)または(2)の被写体追尾装置において、制御装置104は、上記特定したマッチング位置の密度が高い方へ変化した場合(すなわち、上記現在距離が上記初期距離よりも短くなった場合)にテンプレート画像のサイズを小さくし、上記特定した複数のマッチング位置の密度が低い方へ変化した場合(すなわち、上記現在距離が上記初期距離よりも長くなった場合)にテンプレート画像のサイズを大きくするように構成したので、追尾被写体が小さくなったときはテンプレート画像のサイズを小さくすることができ、追尾被写体が大きくなったときはテンプレート画像のサイズを大きくすることができる。
【0097】
(4)上記(1)〜(3)の被写体追尾装置において、制御装置104は、上記特定したマッチング位置のうち、最小絶対差分和が上記判定閾値よりも小さいマッチング位置、すなわち、上記類似度が所定以上の高さであるマッチング位置を選択し、選択したマッチング位置の疎密度合いに基づいて上記画像サイズを変更するように構成したので、追尾被写体を確実に捕らえて追尾できているマッチング位置のみに基づいてテンプレート画像のサイズを変更することができる。したがって、テンプレート画像のサイズが不適切に変更されることを防止することができる。
【0098】
(5)上記(1)〜(4)の被写体追尾装置において、第1〜第9リサイズ判定用テンプレート画像は、追尾用テンプレート画像(合成テンプレート画像)の異なる一部分をそれぞれ含む画像であるように構成したので、追尾被写体の大きさが変化したか否かを、第1〜第9リサイズ判定用テンプレート画像を用いて精度よく認識することができる。
【0099】
(6)上記(5)の被写体追尾装置において、第1〜第9のリサイズ判定用テンプレート画像は、3×3のブロックに分割された追尾用テンプレート画像(合成テンプレート画像)において、それぞれ、各ブロックB1〜B9の中心位置を中心とした所定サイズの画像であるように構成したので、追尾被写体の大きさが変化したか否かを、第1〜第9リサイズ判定用テンプレート画像を用いて精度よく認識することができる。
【0100】
(7)上記(6)の被写体追尾装置において、制御装置104は、上記3×3のブロックにおける真ん中のブロックB5の中心位置P5を中心とした第5リサイズ判定用テンプレート画像についてのマッチング位置を基準とした、その他(第1〜第4、第6〜第9)のリサイズ判定用テンプレート画像についてのマッチング位置の疎密度合いに基づいてテンプレート画像のサイズを変更するように構成したので、追尾被写体の大きさの変化に精度よく追従することができる。
【0101】
(8)上記(7)の被写体追尾装置において、制御装置104は、第5リサイズ判定用テンプレート画像と探索エリア内の画像との最大類似度が所定以上の高さである場合に、テンプレート画像のサイズを変更するように構成したので、追尾被写体を確実に捕らえて追尾できているマッチング位置を基準とした疎密度合いでテンプレート画像のサイズを変更することができる。したがって、テンプレート画像のサイズが不適切に変更されることを防止することができる。
【0102】
(9)被写体追尾装置は、入力画像(フレーム画像)内に探索エリアを設定する制御装置104と、初期テンプレート画像と探索エリア内の画像との類似度、および合成テンプレート画像と探索エリア内の画像との類似度を、それぞれ演算する制御装置104と、演算した類似度に基づいて、フレーム画像内における追尾被写体位置を特定する制御装置104と、演算した類似度に基づいて、合成テンプレート画像を更新するか否かを判定する制御装置104と、合成テンプレート画像を更新すると判定した場合には、入力画像における追尾被写体位置を含む画像と初期テンプレート画像とを合成した画像を、新たな合成テンプレート画像として更新する制御装置104と、第1〜第9リサイズ判定用テンプレート画像と探索エリア内の画像との類似度をそれぞれ演算する制御装置104と、演算した類似度に基づいて、フレーム画像内における第1〜第9リサイズ判定用テンプレート画像のマッチング位置をそれぞれ特定する制御装置104と、特定したマッチング位置の疎密度合いに基づいて、初期テンプレート画像と合成テンプレート画像とリサイズ判定用テンプレート画像との画像サイズを変更するか否かを判定する制御装置104と、上記画像サイズを変更すると判定した場合には、初期テンプレート画像の画像サイズを新たな画像サイズに変更する制御装置104と、を備え、制御装置104は、上記画像サイズを変更すると判定した場合には、フレーム画像における追尾被写体位置を含む新たな画像サイズの画像を、新たな合成テンプレート画像として更新し、さらに、更新した合成テンプレート画像を複数のブロックに分割し、入力画像における各ブロックを含む新たな画像サイズの画像を、新たなリサイズ判定用テンプレート画像として更新するように構成したので、追尾被写体の大きさの変化に応じて初期テンプレート画像、合成テンプレート画像およびリサイズ判定用テンプレート画像の画像サイズを変更することができる。したがって、大きさが変化する被写体を精度よく追尾することができる。
【0103】
(変形例1)
上述した実施の形態では、合成テンプレート画像を3×3のブロックに分割し、分割した各ブロックの中心位置を中心とし、合成テンプレート画像と同一のサイズである画像を、第1〜第9リサイズ判定用テンプレート画像として生成する例について説明した。しかしながら、3×3に限らず、その他の個数のブロックに合成テンプレート画像を分割し、分割した各ブロックを含む画像をリサイズ判定用テンプレート画像として生成してもよい。
【0104】
例えば、図14(A)に示すように、合成テンプレート画像Tgを2×2のブロックB11〜B14に分割するようにしてもよい。この場合の制御装置104は、図14(B)〜(E)に示すように、各ブロックB11〜B14をそれぞれ含み、合成テンプレート画像Tgと同一サイズの画像を、第11〜第14リサイズ判定用テンプレート画像Tr11〜Tr14として生成する。
【0105】
なお、各ブロックB11〜B14の中心位置が、必ずしも第11〜第14リサイズ判定用テンプレート画像Tr11〜Tr14の中心とならなくてもよい。また、リサイズ判定用テンプレート画像は、追尾被写体のエッジ部分を含み、且つ背景部分(追尾被写体以外の部分)をあまり含まないように生成されるのが好ましい。こうすることにより、リサイズ判定用テンプレート画像を用いて追尾被写体のエッジ部分に追従することができるので、追尾被写体の大きさが変化したか否かを認識できる。
【0106】
制御装置104は、第11〜第14リサイズ判定用テンプレート画像Tr11〜Tr14の中心位置について、それぞれ、合成テンプレート画像の中心位置からの距離を初期距離として算出し、記憶しておく。テンプレート画像サイズ変更処理の際、制御装置104は、合成テンプレート画像Tgのマッチング位置における類似度(すなわち最大類似度)が所定以上の高さである場合に、上記ステップS805を肯定判定する。そして制御装置104は、上記ステップS806において、第11〜第14リサイズ判定用テンプレート画像Tr11〜Tr14のマッチング位置について、それぞれ、合成テンプレート画像Tgのマッチング位置からの距離を現在距離として算出する。その後、制御装置104は、上述した実施の形態と同様にしてテンプレートサイズを変更する。
【0107】
(変形例2)
上述した実施の形態では、追尾被写体の大きさを示すオブジェクトサイズが24画素よりも大きい場合は、縮小倍率Shukuで縮小したフレーム画像において24×24画素のテンプレート画像を生成する例について説明した。しかしながら、テンプレートマッチング処理で扱えるテンプレート画像の大きさの最大値に制限がない場合には、オブジェクトサイズの大きさに係らず、Objectsize×Objectsizeのテンプレート画像を生成するようにしてもよい。
【0108】
(変形例3)
上述した実施の形態では、追尾被写体位置を特定するために用いる追尾用テンプレート画像として、初期テンプレート画像および合成テンプレート画像を用いる例について説明した。しかしながら、追尾用テンプレート画像として、初期テンプレート画像のみ、または合成テンプレート画像のみを用いるようにしてもよい。また例えば、現フレームにおけるマッチング領域内の画像を次フレームにおける追尾用テンプレート画像として用いるようにしてもよい。
【0109】
(変形例4)
上述した実施の形態では、初期テンプレート画像および合成テンプレート画像のサイズと、リサイズ判定用テンプレート画像のサイズとを同一サイズとする例について説明した。しかしながら、初期テンプレート画像および合成テンプレート画像のサイズと、リサイズ判定用テンプレート画像のサイズとが異なっていてもよい。
【0110】
(変形例5)
上述した実施の形態では、制御装置104は、フレーム画像に対して行った2値化処理およびラベリング処理の結果を用いて、初期テンプレート画像を生成する例について説明した。しかしながら、他の方法によって初期テンプレート画像を生成してもよい。例えば、制御装置104は、使用者に対してフレーム画像内における追尾被写体エリアの指定を促し、使用者が操作部材101を操作して入力したエリア内の画像を切り出すことにより、初期テンプレート画像を生成してもよい。
【0111】
(変形例6)
上述した実施の形態では、画像のリサイズ方法としてバイリニア法を用いる例について説明した。しかしながら、画像のリサイズ方法として、ニアリストネイバー法、またはバイキュービック法などを用いるようにしてもよい。
【0112】
(変形例7)
上述した実施の形態では、制御装置104は、スルー画を対象として被写体追尾を行う例について説明した。しかしながら、カメラ100が動画撮影機能を備えている場合には、制御装置104は、スルー画ではなく、撮影済みの動画のフレーム間で被写体追尾を行うようにしてもよい。
【0113】
(変形例8)
上述した実施の形態では、カメラ100が備える制御装置104が図2に示す処理を実行して被写体追尾を行う例について説明した。しかしながら、図2に示す処理を実行するためのプログラムをパソコンなどその他の端末に記録して、当該端末上で処理を実行することも可能である。この場合、カメラで撮影した動画像データを端末側に取り込んで、これを対象に処理を行うようにすれば、動画のフレーム間で被写体追尾を行うことが可能となる。また、本発明はカメラ付き携帯電話などに適用することも可能である。
【0114】
以上の説明はあくまで一例であり、上記の実施形態の構成に何ら限定されるものではない。また、上記実施形態に各変形例の構成を適宜組み合わせてもかまわない。
【0115】
次の優先権基礎出願の開示内容は引用文としてここに組み込まれる。
日本国特許出願2012年第158795号(2012年7月17日出願)
【符号の説明】
【0116】
100…カメラ
101…操作部材
102…レンズ
103…撮像素子
104…制御装置
105…メモリカードスロット
106…モニタ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14