JP2012080251A - 画像処理装置、画像処理方法及びプログラム - Google Patents
画像処理装置、画像処理方法及びプログラム Download PDFInfo
- Publication number
- JP2012080251A JP2012080251A JP2010222349A JP2010222349A JP2012080251A JP 2012080251 A JP2012080251 A JP 2012080251A JP 2010222349 A JP2010222349 A JP 2010222349A JP 2010222349 A JP2010222349 A JP 2010222349A JP 2012080251 A JP2012080251 A JP 2012080251A
- Authority
- JP
- Japan
- Prior art keywords
- tracking
- face
- unit
- image
- detected
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】誤検出があっても、その追尾が長く続かないようにすること。
【解決手段】フレーム画像取得部51は、画像データを逐次取得する。顔検出部52は、フレーム画像取得部51により逐次取得される各々の画像データから、被写体と推定される顔を検出する。顔信頼度算出部41は、顔検出部52により検出顔について、被写体らしさを表す信頼度を算出する。追尾期間設定部42は、顔信頼度算出部41により算出された信頼度に基づいて、検出顔の追尾のための追尾期間を設定する。追尾部15は、フレーム画像取得部51により次回以降逐次取得される画像データから顔検出部52により検出された検出顔を追尾する。追尾制御部44は、追尾期間設定部42により設定された追尾期間に基づいて、検出顔の追尾をさせるよう制御する。
【選択図】図2
【解決手段】フレーム画像取得部51は、画像データを逐次取得する。顔検出部52は、フレーム画像取得部51により逐次取得される各々の画像データから、被写体と推定される顔を検出する。顔信頼度算出部41は、顔検出部52により検出顔について、被写体らしさを表す信頼度を算出する。追尾期間設定部42は、顔信頼度算出部41により算出された信頼度に基づいて、検出顔の追尾のための追尾期間を設定する。追尾部15は、フレーム画像取得部51により次回以降逐次取得される画像データから顔検出部52により検出された検出顔を追尾する。追尾制御部44は、追尾期間設定部42により設定された追尾期間に基づいて、検出顔の追尾をさせるよう制御する。
【選択図】図2
Description
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
近年、デジタルカメラの多くは、リアルタイムに、顔の位置を表す顔枠を操作画面に表示することができるようになっている。
このような顔枠のリアルタイム表示を可能にすべく、パターンマッチングによる顔探索処理の実行により、所定のフレーム画像において顔を一度検出すると、次フレーム画像以降では前回顔検出された位置から所定の範囲だけ顔探索処理を実行することで顔枠のリアルタイム表示を行う技術が開示されている(特許文献1参照)。
このような顔枠のリアルタイム表示を可能にすべく、パターンマッチングによる顔探索処理の実行により、所定のフレーム画像において顔を一度検出すると、次フレーム画像以降では前回顔検出された位置から所定の範囲だけ顔探索処理を実行することで顔枠のリアルタイム表示を行う技術が開示されている(特許文献1参照)。
しかしながら、上記特許文献1の技術では、顔検出処理において、顔ではないものが顔として検出されると、この検出されたものが次フレーム画像以降における探索対象となるので、顔の検出処理に復帰するまでに時間がかかるという問題があった。
本発明は、このような状況に鑑みてなされたものであり、誤検出があっても、その追尾が長く続かないようにすることを目的とする。
上記目的を達成するため、請求項1の発明は、
画像データを逐次取得する画像取得手段と、
前記画像取得手段により逐次取得される各々の画像データから、被写体と推定される第1の対象を検出する検出手段と、
前記検出手段により検出された第1の対象について、前記被写体らしさを表す信頼度を算出する算出手段と、
前記算出手段により算出された信頼度に基づいて、第1の対象の追尾のための追尾期間を設定する設定手段と、
前記画像取得手段により次回以降逐次取得される画像データから、前記検出手段により検出された第1の対象を追尾する追尾手段と、
前記設定手段により設定された追尾期間に基づいて、第1の対象の追尾をさせるよう制御する追尾制御手段と、
を備える画像処理装置を提供する。
画像データを逐次取得する画像取得手段と、
前記画像取得手段により逐次取得される各々の画像データから、被写体と推定される第1の対象を検出する検出手段と、
前記検出手段により検出された第1の対象について、前記被写体らしさを表す信頼度を算出する算出手段と、
前記算出手段により算出された信頼度に基づいて、第1の対象の追尾のための追尾期間を設定する設定手段と、
前記画像取得手段により次回以降逐次取得される画像データから、前記検出手段により検出された第1の対象を追尾する追尾手段と、
前記設定手段により設定された追尾期間に基づいて、第1の対象の追尾をさせるよう制御する追尾制御手段と、
を備える画像処理装置を提供する。
上記目的を達成するために、請求項6の発明は、
画像を取得する画像取得手段を備える画像処理装置の画像処理方法であって、
画像データを逐次取得する画像取得ステップと、
前記画像取得ステップにて逐次取得される各々の画像データから、被写体と推定される対象を検出する検出ステップと、
前記検出ステップにて検出された対象についての、前記被写体らしさを表す信頼度を算出する算出ステップと、
前記算出ステップにて算出された信頼度に基づいて、対象の追尾のための追尾期間を設定する設定ステップと、
前記画像取得ステップにて次回以降逐次取得される画像データから、前記検出ステップにより検出された対象を追尾する追尾ステップと、
前記設定ステップにて設定された追尾期間に基づいて、対象の追尾をさせるよう制御する追尾制御ステップと、
を含む画像処理方法を提供する。
画像を取得する画像取得手段を備える画像処理装置の画像処理方法であって、
画像データを逐次取得する画像取得ステップと、
前記画像取得ステップにて逐次取得される各々の画像データから、被写体と推定される対象を検出する検出ステップと、
前記検出ステップにて検出された対象についての、前記被写体らしさを表す信頼度を算出する算出ステップと、
前記算出ステップにて算出された信頼度に基づいて、対象の追尾のための追尾期間を設定する設定ステップと、
前記画像取得ステップにて次回以降逐次取得される画像データから、前記検出ステップにより検出された対象を追尾する追尾ステップと、
前記設定ステップにて設定された追尾期間に基づいて、対象の追尾をさせるよう制御する追尾制御ステップと、
を含む画像処理方法を提供する。
上記目的を達成するため、請求項7の発明は、
画像を取得する画像取得手段を備える画像処理装置のコンピュータを、
画像データを逐次取得する画像取得手段、
前記画像取得手段により逐次取得される各々の画像データから、被写体と推定される対象を検出する検出手段、
前記検出手段により検出された対象についての、前記被写体らしさを表す信頼度を算出する算出手段と、
前記算出手段により算出された信頼度に基づいて、対象の追尾のための追尾期間を設定する設定手段、
前記画像取得手段に次回以降逐次取得される画像データから、前記検出手段により検出された対象を追尾する追尾手段、
前記設定手段により設定された追尾期間に基づいて、前記追尾手段による対象の追尾をさせるよう制御する追尾制御手段、
として機能させるプログラムを提供する。
画像を取得する画像取得手段を備える画像処理装置のコンピュータを、
画像データを逐次取得する画像取得手段、
前記画像取得手段により逐次取得される各々の画像データから、被写体と推定される対象を検出する検出手段、
前記検出手段により検出された対象についての、前記被写体らしさを表す信頼度を算出する算出手段と、
前記算出手段により算出された信頼度に基づいて、対象の追尾のための追尾期間を設定する設定手段、
前記画像取得手段に次回以降逐次取得される画像データから、前記検出手段により検出された対象を追尾する追尾手段、
前記設定手段により設定された追尾期間に基づいて、前記追尾手段による対象の追尾をさせるよう制御する追尾制御手段、
として機能させるプログラムを提供する。
本発明によれば、誤検出があっても、その追尾が長く続かないようにできる。
以下、本発明の一実施形態を図面に基づいて説明する。
図1は、本発明に係る画像処理装置の一実施形態としての撮像装置1のハードウェアの構成を示すブロック図である。撮像装置1は、例えばデジタルカメラにより構成することができる。
撮像装置1は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、画像処理部14と、追尾部15と、バス16と、入出力インターフェース17と、撮像部18と、操作部19と、表示部20と、記憶部21と、通信部22と、ドライブ23と、を備えている。
CPU11は、ROM12に記録されているプログラム、又は、記憶部21からRAM13にロードされたプログラムに従って各種の処理を実行する。なお、CPU11に設けられている顔信頼度算出部41、追尾期間設定部42、追尾リスト登録更新部43及び追尾制御部44の詳細については、図2を参照して後述する。
RAM13にはまた、CPU11が各種の処理を実行する上において必要なデータ等も適宜記憶される。
RAM13にはまた、CPU11が各種の処理を実行する上において必要なデータ等も適宜記憶される。
画像処理部14は、DSP(Digital Signal Processor)や、VRAM(Video Random Access Memory)等から構成されており、CPU11と協働して、画像のデータに対して各種画像処理を施す。
ここで、本実施形態では、撮像装置1による画像の処理単位は一枚の静止画像であり、このような処理単位としての静止画像が、本明細書では「フレーム画像」と呼ばれている。即ち、本実施形態では、動画像は複数のフレーム画像から構成されており、フレーム画像毎に処理が実行される。そこで、以下、特に断りがない限り、画像とはフレーム画像を意味するものとする。
例えば、画像処理部14は、後述する撮像部18から出力される撮像画像のデータに対して、ノイズ低減、ホワイトバランス、手ぶれ補正等の画像処理を施す。
本実施形態では、画像処理部14は、さらに、フレーム画像取得部51及び顔検出部52を備えている。ただし、フレーム画像取得部51及び顔検出部52の詳細については、図2を参照して後述する。
ここで、本実施形態では、撮像装置1による画像の処理単位は一枚の静止画像であり、このような処理単位としての静止画像が、本明細書では「フレーム画像」と呼ばれている。即ち、本実施形態では、動画像は複数のフレーム画像から構成されており、フレーム画像毎に処理が実行される。そこで、以下、特に断りがない限り、画像とはフレーム画像を意味するものとする。
例えば、画像処理部14は、後述する撮像部18から出力される撮像画像のデータに対して、ノイズ低減、ホワイトバランス、手ぶれ補正等の画像処理を施す。
本実施形態では、画像処理部14は、さらに、フレーム画像取得部51及び顔検出部52を備えている。ただし、フレーム画像取得部51及び顔検出部52の詳細については、図2を参照して後述する。
追尾部15は、順次供給されるフレーム画像内に存在する被写体を追尾する追尾処理を実行する。追尾部15のさらなる詳細については、図2を参照して後述する。
CPU11、ROM12、RAM13、画像処理部14及び追尾部15は、バス16を介して相互に接続されている。このバス16にはまた、入出力インターフェース17も接続されている。入出力インターフェース17には、撮像部18、操作部19、表示部20、記憶部21、通信部22、及びドライブ23が接続されている。
撮像部18は、図示はしないが、光学レンズ部と、イメージセンサと、を備えている。
光学レンズ部は、被写体を撮影するために、光を集光するレンズ、例えばフォーカスレンズやズームレンズ等で構成される。
フォーカスレンズは、イメージセンサの受光面に被写体像を結像させるレンズである。ズームレンズは、焦点距離を一定の範囲で自在に変化させるレンズである。
光学レンズ部にはまた、必要に応じて、焦点、露出、ホワイトバランス等の設定パラメータを調整する周辺回路が設けられる。
フォーカスレンズは、イメージセンサの受光面に被写体像を結像させるレンズである。ズームレンズは、焦点距離を一定の範囲で自在に変化させるレンズである。
光学レンズ部にはまた、必要に応じて、焦点、露出、ホワイトバランス等の設定パラメータを調整する周辺回路が設けられる。
イメージセンサは、光電変換素子や、AFE(Analog Front End)等から構成される。
光電変換素子は、例えばCMOS(Complementary Metal Oxide Semiconductor)型の光電変換素子等から構成される。光電変換素子には、光学レンズ部から被写体像が入射される。そこで、光電変換素子は、被写体像を光電変換(撮像)して画像信号を一定時間蓄積し、蓄積した画像信号をアナログ信号としてAFEに順次供給する。
AFEは、このアナログの画像信号に対して、A/D(Analog/Digital)変換処理等の各種信号処理を実行する。各種信号処理によって、ディジタル信号が生成され、撮像部18の出力信号として出力される。
なお、以下、撮像部18の出力信号が、「撮像画像のデータ」であるものとする。従って、撮像部18からは撮像画像のデータが出力されて、CPU11や画像処理部14等に適宜供給される。
光電変換素子は、例えばCMOS(Complementary Metal Oxide Semiconductor)型の光電変換素子等から構成される。光電変換素子には、光学レンズ部から被写体像が入射される。そこで、光電変換素子は、被写体像を光電変換(撮像)して画像信号を一定時間蓄積し、蓄積した画像信号をアナログ信号としてAFEに順次供給する。
AFEは、このアナログの画像信号に対して、A/D(Analog/Digital)変換処理等の各種信号処理を実行する。各種信号処理によって、ディジタル信号が生成され、撮像部18の出力信号として出力される。
なお、以下、撮像部18の出力信号が、「撮像画像のデータ」であるものとする。従って、撮像部18からは撮像画像のデータが出力されて、CPU11や画像処理部14等に適宜供給される。
操作部19は、各種釦等で構成され、ユーザの指示操作を受け付ける。
表示部20は、液晶ディスプレイ等で構成され、各種画像を表示する。
記憶部21は、DRAM(Dynamic Random Access Memory)等で構成され、画像処理部14等から出力された画像のデータを一時的に記憶する。また、記憶部21は、画像処理部14等の処理に必要な各種データも記憶する。
通信部22は、インターネットを含むネットワークを介して他の装置(図示せず)との間で行う通信を制御する。
表示部20は、液晶ディスプレイ等で構成され、各種画像を表示する。
記憶部21は、DRAM(Dynamic Random Access Memory)等で構成され、画像処理部14等から出力された画像のデータを一時的に記憶する。また、記憶部21は、画像処理部14等の処理に必要な各種データも記憶する。
通信部22は、インターネットを含むネットワークを介して他の装置(図示せず)との間で行う通信を制御する。
ドライブ23には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等よりなるリムーバブルメディア31が適宜装着される。ドライブ23によってリムーバブルメディア31から読み出されたプログラムは、必要に応じて記憶部21にインストールされる。また、リムーバブルメディア31は、記憶部21に記憶されている画像のデータ等の各種データも、記憶部21と同様に記憶することができる。
このような構成を有する撮像装置1は、撮像の前後を通じて、スルー撮像処理及びスルー表示処理を開始する。
即ち、撮像装置1は、撮像部18による撮像動作を継続させ、その間、当該撮像部18を介して画像処理部14から順次出力される撮像画像(フレーム画像)のデータを、メモリ(本実施形態では記憶部21)に一時的に記憶させる。このような一連の処理が、ここでいう「スルー撮像処理」である。
また、撮像装置1は、スルー撮像時にメモリ(本実施形態では記憶部21)に一時的に記録された各撮像画像(フレーム画像)のデータを順次読み出して、各々に対応する撮像画像を表示部20に順次表示させる。このような一連の制御処理が、ここでいう「スルー表示処理」である。なお、スルー表示処理により表示部20に表示されている撮像画像を、以下、「スルー画像」と呼ぶ。
即ち、撮像装置1は、撮像部18による撮像動作を継続させ、その間、当該撮像部18を介して画像処理部14から順次出力される撮像画像(フレーム画像)のデータを、メモリ(本実施形態では記憶部21)に一時的に記憶させる。このような一連の処理が、ここでいう「スルー撮像処理」である。
また、撮像装置1は、スルー撮像時にメモリ(本実施形態では記憶部21)に一時的に記録された各撮像画像(フレーム画像)のデータを順次読み出して、各々に対応する撮像画像を表示部20に順次表示させる。このような一連の制御処理が、ここでいう「スルー表示処理」である。なお、スルー表示処理により表示部20に表示されている撮像画像を、以下、「スルー画像」と呼ぶ。
ユーザは、スルー画像をみながら構図を決めた後、操作部19のシャッタスイッチ(図示せず)を下限まで押下することで、撮像画像のデータの記録の指示をすることができる。なお、このように、シャッタスイッチを下限まで押下する操作を、以下、「全押し操作」又は単に「全押し」と呼ぶ。
なお、以下、スルー撮像処理及びスルー表示処理のための撮像と区別すべく、全押し操作により記録の指示がなされたときの撮像を、「記録用撮像」と呼ぶ。
なお、以下、スルー撮像処理及びスルー表示処理のための撮像と区別すべく、全押し操作により記録の指示がなされたときの撮像を、「記録用撮像」と呼ぶ。
さらに、本実施形態では、撮像装置1は、追尾処理による被写体の追尾を短時間で行うにあたり、次のような一連の処理を実行する。
撮像装置1は、撮像部18により順次スルー画像用として出力される各々のフレーム画像のデータから、顔と推定される対象を検出する顔検出処理を実行する。
撮像装置1は、検出された対象について被写体らしさを表す信頼度を算出し、算出された信頼度に基づいて、検出された対象を追尾する期間(以下「追尾期間」と呼ぶ)を設定する。
撮像装置1は、設定された追尾期間において、検出された対象を追尾する追尾処理を実行する。
このような一連の処理のうち、顔検出処理により検出される対象(誤検出がない場合には顔)が、1つである場合の処理を以下「単一顔追尾処理」と呼び、複数である場合の処理を以下「複数顔追尾処理」と呼ぶ。
撮像装置1は、撮像部18により順次スルー画像用として出力される各々のフレーム画像のデータから、顔と推定される対象を検出する顔検出処理を実行する。
撮像装置1は、検出された対象について被写体らしさを表す信頼度を算出し、算出された信頼度に基づいて、検出された対象を追尾する期間(以下「追尾期間」と呼ぶ)を設定する。
撮像装置1は、設定された追尾期間において、検出された対象を追尾する追尾処理を実行する。
このような一連の処理のうち、顔検出処理により検出される対象(誤検出がない場合には顔)が、1つである場合の処理を以下「単一顔追尾処理」と呼び、複数である場合の処理を以下「複数顔追尾処理」と呼ぶ。
図2は、図1の撮像装置1が単一顔追尾処理又は複数顔追尾処理を実行するための機能的構成を示す機能ブロック図である。
図2においては、図1の撮像装置1の構成のうち、CPU11と、画像処理部14と、追尾部15と、記憶部21と、のみが図示されている。
CPU11においては、顔信頼度算出部41、追尾期間設定部42、追尾リスト登録更新部43及び追尾制御部44が設けられている。
なお、顔信頼度算出部41、追尾期間設定部42、追尾リスト登録更新部43及び追尾制御部44は、本実施形態では、CPU11と、当該CPU11により実行されるプログラムとの組み合わせ、即ち、ハードウェアとソフトウェアとの組み合わせにより構成されている。しかしながら、これは例示であって、顔信頼度算出部41、追尾期間設定部42、追尾リスト登録更新部43及び追尾制御部44の機能の少なくとも一部を、CPU11以外の他の構成要素(画像処理部14等)に移譲させることも当然可能である。
なお、顔信頼度算出部41、追尾期間設定部42、追尾リスト登録更新部43及び追尾制御部44は、本実施形態では、CPU11と、当該CPU11により実行されるプログラムとの組み合わせ、即ち、ハードウェアとソフトウェアとの組み合わせにより構成されている。しかしながら、これは例示であって、顔信頼度算出部41、追尾期間設定部42、追尾リスト登録更新部43及び追尾制御部44の機能の少なくとも一部を、CPU11以外の他の構成要素(画像処理部14等)に移譲させることも当然可能である。
また、画像処理部14には、フレーム画像取得部51及び顔検出部52が設けられている。なお、フレーム画像取得部51及び顔検出部52が画像処理部14に設けられていることは例示であって、フレーム画像取得部51及び顔検出部52の少なくとも一部を、画像処理部14以外の他の構成要素(CPU11等)に移譲させることも当然可能である。
記憶部21の一領域として、追尾リスト記憶部61及び過去フレーム画像記憶部62が設けられている。なお、追尾リスト記憶部61及び過去フレーム画像記憶部62が記憶部21の一領域として設けられていることは例示であって、その他例えばリムーバブルメディア31の一領域として設けられるようにしてもよい。
追尾リスト記憶部61は、後述する顔追尾リストを記憶する。過去フレーム画像記憶部62は、後述する追尾部15の追尾処理において、処理対象のフレーム画像のデータと比較される過去のフレーム画像のデータを記憶する。即ち、追尾部15の追尾処理における今回の処理対象のフレーム画像のデータは、次回以降の処理対象のフレーム画像のデータとの比較用として、過去フレーム画像記憶部62に記憶される。
フレーム画像取得部51は、撮像部18からスルー画像用として順次供給されてくるフレーム画像のデータを逐次取得する。フレーム画像取得部51は、取得したフレーム画像のデータを、顔検出部52、追尾部15及び過去フレーム画像記憶部62に供給する。
本実施形態においては、フレーム画像取得部51は、撮像部18により供給されたフレーム画像のデータを取得しているがこれに限られることではなく、リムーバブルメディア31や、通信部22を介するインターネット等から取得してもよい。
本実施形態においては、フレーム画像取得部51は、撮像部18により供給されたフレーム画像のデータを取得しているがこれに限られることではなく、リムーバブルメディア31や、通信部22を介するインターネット等から取得してもよい。
顔検出部52は、フレーム画像取得部51から供給される各々のフレーム画像のデータから、被写体の顔と推定される対象(以下、「検出顔」と呼ぶ)を検出する。なお、検出顔とは、顔検出部52により検出された対象を意味するため、顔検出部52が誤検出した場合には誤検出されたものも含まれる。
具体的には、顔検出部52は、公知の顔検出アルゴリズムを用いて、検出顔の領域の情報(画素値等)及び検出顔の位置情報(位置座標等)を検出する。顔検出部52は、検出顔の領域の情報及び位置情報を顔信頼度算出部41に供給する。また、顔検出部52は、検出顔の位置情報を追尾リスト登録更新部43に供給する。
具体的には、顔検出部52は、公知の顔検出アルゴリズムを用いて、検出顔の領域の情報(画素値等)及び検出顔の位置情報(位置座標等)を検出する。顔検出部52は、検出顔の領域の情報及び位置情報を顔信頼度算出部41に供給する。また、顔検出部52は、検出顔の位置情報を追尾リスト登録更新部43に供給する。
顔信頼度算出部41は、顔検出部52から供給された検出顔の領域の情報及び位置情報に基づいて、検出顔についての信頼度を算出する。
「信頼度」は、検出顔の顔らしさを表すパラメータである。信頼度の算出手法は、特に限定されないが、本実施形態では、公知の顔検出アルゴリズムで動作する顔識別器の出力値、即ち、顔検出部52の出力により算出する算出手法が採用されている。
ここで、顔信頼度算出部41により算出される信頼度のパラメータの単位は、特に限定されないが、本実施形態では、%単位が採用されており、%が増えるほど信頼度が増すものとする。
顔信頼度算出部41は、算出した信頼度を追尾期間設定部42に通知する。
「信頼度」は、検出顔の顔らしさを表すパラメータである。信頼度の算出手法は、特に限定されないが、本実施形態では、公知の顔検出アルゴリズムで動作する顔識別器の出力値、即ち、顔検出部52の出力により算出する算出手法が採用されている。
ここで、顔信頼度算出部41により算出される信頼度のパラメータの単位は、特に限定されないが、本実施形態では、%単位が採用されており、%が増えるほど信頼度が増すものとする。
顔信頼度算出部41は、算出した信頼度を追尾期間設定部42に通知する。
追尾期間設定部42は、顔信頼度算出部41から通知された信頼度に基づいて、追尾部15による検出顔の追尾のための追尾期間を設定する。
本実施形態では、追尾期間設定部42は、図3のテーブルに基づき追尾期間を算出する処理を行う。
本実施形態では、追尾期間設定部42は、図3のテーブルに基づき追尾期間を算出する処理を行う。
図3は、記憶部21に記憶される、信頼度及び追尾期間を登録(記憶)するためのテーブルの構造例である。
「追尾期間」は、追尾部15により追尾対象を追尾する期間であり、フレーム画像取得部51により取得されたフレーム画像の数(フレーム数)により規定される。
追尾期間設定部42により設定される追尾期間の表現形態は、時間の単位そのものに限定されず、時間の長さを定量的に表現できるものであれば足り、図3の例では、追尾処理の対象となるフレーム数が採用されている。
この場合、追尾期間の変化の度合の量は、特に限定されないが、ここでは、10フレーム単位である。即ち、本実施形態では、図3に示すように、30フレーム、40フレーム、50フレーム、60フレーム、70フレーム、80フレーム及び90フレームのうち何れかが、追尾期間として追尾期間設定部42により設定され得るようになっている。
例えば、顔信頼度算出部41により算出された信頼度が10〜19%の場合は、追尾期間として30フレームが設定される。また、顔信頼度算出部41により算出された信頼度が20〜29%の場合は、追尾期間として40フレームが設定される。また、顔信頼度算出部41により算出された信頼度が30〜39%の場合は、追尾期間として50フレームが設定される。また、顔信頼度算出部41により算出された信頼度が40〜49%の場合は、追尾期間として60フレームが設定される。また、顔信頼度算出部41により算出された信頼度が50〜59%の場合は、追尾期間として70フレームが設定される。また、顔信頼度算出部41により算出された信頼度が60〜69%の場合は、追尾期間として80フレームが設定される。また、顔信頼度算出部41により算出された信頼度が70%以上の場合は、追尾期間として90フレームが設定される。
なお、顔信頼度算出部41により算出された信頼度が10%以下の場合は、追尾期間は設定されない。
このように、各追尾期間は、信頼度に応じて設定される。具体的には信頼度の高い(顔らしい)検出顔の追尾対象の追尾期間は長く、信頼度の低い(顔らしくない)検出顔の追尾期間は短くなるように設定される。
追尾期間設定部42は、設定した追尾期間、及び、顔検出部52から供給された検出顔の位置情報を追尾リスト登録更新部43に供給する。
追尾期間設定部42により設定される追尾期間の表現形態は、時間の単位そのものに限定されず、時間の長さを定量的に表現できるものであれば足り、図3の例では、追尾処理の対象となるフレーム数が採用されている。
この場合、追尾期間の変化の度合の量は、特に限定されないが、ここでは、10フレーム単位である。即ち、本実施形態では、図3に示すように、30フレーム、40フレーム、50フレーム、60フレーム、70フレーム、80フレーム及び90フレームのうち何れかが、追尾期間として追尾期間設定部42により設定され得るようになっている。
例えば、顔信頼度算出部41により算出された信頼度が10〜19%の場合は、追尾期間として30フレームが設定される。また、顔信頼度算出部41により算出された信頼度が20〜29%の場合は、追尾期間として40フレームが設定される。また、顔信頼度算出部41により算出された信頼度が30〜39%の場合は、追尾期間として50フレームが設定される。また、顔信頼度算出部41により算出された信頼度が40〜49%の場合は、追尾期間として60フレームが設定される。また、顔信頼度算出部41により算出された信頼度が50〜59%の場合は、追尾期間として70フレームが設定される。また、顔信頼度算出部41により算出された信頼度が60〜69%の場合は、追尾期間として80フレームが設定される。また、顔信頼度算出部41により算出された信頼度が70%以上の場合は、追尾期間として90フレームが設定される。
なお、顔信頼度算出部41により算出された信頼度が10%以下の場合は、追尾期間は設定されない。
このように、各追尾期間は、信頼度に応じて設定される。具体的には信頼度の高い(顔らしい)検出顔の追尾対象の追尾期間は長く、信頼度の低い(顔らしくない)検出顔の追尾期間は短くなるように設定される。
追尾期間設定部42は、設定した追尾期間、及び、顔検出部52から供給された検出顔の位置情報を追尾リスト登録更新部43に供給する。
追尾リスト登録更新部43は、追尾期間設定部42から供給された追尾期間、及び、顔検出部52から供給された顔の位置情報を、追尾リスト記憶部61に記憶されている顔追尾リストに登録又は更新する。
図4は、顔追尾リストの一例を示している。
本実施形態において、顔追尾リストは行列構造を有しているため、以下、図4中横方向の項目の集合体を「行」と呼び、同図中縦方向の項目の集合体を「列」と呼ぶ。
顔追尾リストの1行は、顔検出部52により検出された1つの検出顔が対応する。従って、顔検出部52により1つの検出顔のみが検出されることが前提となる単一顔追尾処理が実行される場合には、顔追尾リストの行は、1行のみとなる。これに対して、顔検出部52により複数の検出顔が検出され得ることが前提となる複数顔追尾処理が実行される場合には、顔追尾リストの行は、複数行になり得る。図4においては、説明の便宜上、単一顔追尾処理が実行される場合の顔追尾リストの一例が示されている。
顔追尾リストにおいて、所定の行には、顔検出部52により検出された所定の検出顔についての、「顔の種類」、「位置情報(顔の位置座標)」及び「追尾期間」という項目がそれぞれ配置されている。
所定の行の「顔の種類」には、当該行に対応する検出顔の種類が格納される。ここで、検出顔の種類とは、複数顔追尾処理が実行される場合において、顔検出部52により検出された複数の検出顔の各々を、相互に区別するためのものであり、いわゆるIDに近い概念である。
所定の行の「位置情報」には、当該行に対応する検出顔の位置情報、即ち検出顔の位置座標が格納される。
例えば、本実施形態では、フレーム画像内の位置を示す座標系は、左上端の画素の位置を原点(0,0)とし、水平右方向の軸をX軸として、垂直下方向の軸をY軸とするように構築されている。そして、フレーム画像の水平方向の画素数は640画素とされ、垂直方向の画素数は480画素とされている。このため、「位置座標」のX座標の項には、フレーム画像のX座標が取り得る0乃至639の範囲内の値が格納され、「位置座標」のY座標の項には、フレーム画像のY座標が取り得る0乃至479の範囲内の値が格納される。
所定の行の「追尾期間」には、当該行に対応する検出顔の追尾期間、即ち、追尾期間設定部42により設定された追尾期間が格納されている。
なお、上述の顔追尾リストの各行に対応する検出顔のうち、追尾部15による追尾対象の候補を以下「追尾候補顔」と呼ぶ。
顔追尾リストの1行は、顔検出部52により検出された1つの検出顔が対応する。従って、顔検出部52により1つの検出顔のみが検出されることが前提となる単一顔追尾処理が実行される場合には、顔追尾リストの行は、1行のみとなる。これに対して、顔検出部52により複数の検出顔が検出され得ることが前提となる複数顔追尾処理が実行される場合には、顔追尾リストの行は、複数行になり得る。図4においては、説明の便宜上、単一顔追尾処理が実行される場合の顔追尾リストの一例が示されている。
顔追尾リストにおいて、所定の行には、顔検出部52により検出された所定の検出顔についての、「顔の種類」、「位置情報(顔の位置座標)」及び「追尾期間」という項目がそれぞれ配置されている。
所定の行の「顔の種類」には、当該行に対応する検出顔の種類が格納される。ここで、検出顔の種類とは、複数顔追尾処理が実行される場合において、顔検出部52により検出された複数の検出顔の各々を、相互に区別するためのものであり、いわゆるIDに近い概念である。
所定の行の「位置情報」には、当該行に対応する検出顔の位置情報、即ち検出顔の位置座標が格納される。
例えば、本実施形態では、フレーム画像内の位置を示す座標系は、左上端の画素の位置を原点(0,0)とし、水平右方向の軸をX軸として、垂直下方向の軸をY軸とするように構築されている。そして、フレーム画像の水平方向の画素数は640画素とされ、垂直方向の画素数は480画素とされている。このため、「位置座標」のX座標の項には、フレーム画像のX座標が取り得る0乃至639の範囲内の値が格納され、「位置座標」のY座標の項には、フレーム画像のY座標が取り得る0乃至479の範囲内の値が格納される。
所定の行の「追尾期間」には、当該行に対応する検出顔の追尾期間、即ち、追尾期間設定部42により設定された追尾期間が格納されている。
なお、上述の顔追尾リストの各行に対応する検出顔のうち、追尾部15による追尾対象の候補を以下「追尾候補顔」と呼ぶ。
具体的には例えば、1行目に着目すると、「顔の種類」が「A」の検出顔については、「顔の位置座標」は(Xi,Yi)であり、追尾期間として「70フレーム画像」が設定されていることを示している。
図2に戻り、追尾制御部44は、追尾期間設定部42により設定された追尾期間において、追尾部15による追尾処理の実行を制御する。
具体的には、追尾制御部44は、追尾リスト記憶部61に記憶されている顔追尾リストの各行に対応する追尾顔のうち、追尾候補顔を追尾する追尾処理の実行を、当該追尾候補顔の位置情報及び追尾期間(顔追尾リストの登録内容)に基づいて制御する。
具体的には、追尾制御部44は、追尾リスト記憶部61に記憶されている顔追尾リストの各行に対応する追尾顔のうち、追尾候補顔を追尾する追尾処理の実行を、当該追尾候補顔の位置情報及び追尾期間(顔追尾リストの登録内容)に基づいて制御する。
追尾部15は、追尾制御部44の制御の下、フレーム画像取得部51により順次取得される各フレーム画像のデータの各々について、追尾対象たる追尾候補顔を追尾する追尾処理を実行する。なお、図示はしないが、追尾対象たる追尾対象候補顔の追尾結果、例えば位置情報は、追尾リスト登録更新部43にフレーム画像単位で供給され、顔追尾リストのうち、追尾対象候補顔に対応する行の内容が更新される。
なお、追尾処理の手法は、特に限定されず、ブロックマッチングやパーティクルフィルタを用いる手法等任意の手法を採用することができる。
なお、追尾処理の手法は、特に限定されず、ブロックマッチングやパーティクルフィルタを用いる手法等任意の手法を採用することができる。
次に、図5及び図6を参照して、撮像装置1の処理のうち、このような図2の機能的構成により実現される単一顔追尾処理について説明する。即ち、先ず、説明の便宜上、顔検出処理により検出される検出顔は1つであることを前提とした撮像装置1の処理について説明する。
図5及び図6は、単一顔追尾処理の流れを説明するフローチャートである。
図5及び図6は、単一顔追尾処理の流れを説明するフローチャートである。
図5及び図6の単一顔追尾処理は、撮像部18による撮像が行われる場合に実行される処理である。
即ち、少なくともスルー撮像処理及びスルー表示処理が開始されており、ユーザにより全押し操作がなされて記録用撮像が行われるまでの間に、単一顔追尾処理は実行される。
即ち、少なくともスルー撮像処理及びスルー表示処理が開始されており、ユーザにより全押し操作がなされて記録用撮像が行われるまでの間に、単一顔追尾処理は実行される。
ステップS1において、追尾リスト登録更新部43は、追尾リスト記憶部61に記録されている顔追尾リストをリセットする。この処理では、顔追尾リストの記録内容が全て削除される。
ステップS2において、フレーム画像取得部51は、撮像部18からフレーム画像のデータを取得する。フレーム画像取得部51は、取得したフレーム画像のデータを顔検出部52、追尾部15及び過去フレーム画像記憶部62に供給する。
ステップS3において、追尾リスト登録更新部43は、追尾リスト記憶部61に記憶されている顔追尾リストに、追尾候補顔が存在するか否かを判定する。
追尾リスト記憶部61の顔追尾リストに追尾候補顔に対応する行が存在する場合、ステップS3においてYESであると判定されて、処理は図6のステップS9に進む。ステップS9以降の処理については後述する。
これに対して、ステップS1の処理で顔追尾リストが削除された後の段階では、追尾リスト記憶部61の顔追尾リストには追尾候補顔に対応する行は存在しない。このような場合、ステップS3においてNOであると判定されて、処理はステップS4に進む。
ステップS4において、顔検出部52は、直前のステップS2の処理で取得されたフレーム画像のデータ中から、顔を検出する顔検出処理を実行する。
ステップ5において、顔検出部52は、ステップS4の処理で顔の検出が成功したか否かを判定する。
ステップS4の処理で何ら顔が検出されなかった場合、顔の検出が成功しなかったとして、ステップS5においてNOであると判定されて、処理は図6のステップS18に進む。ステップS18以降の処理については後述するが、単一顔追尾処理の終了指示がない限り、ステップS2の処理でフレーム画像のデータが取得される度に、顔検出処理が繰り返し実行される。この場合、顔が検出されないと、ステップS2乃至ステップS18のループ処理が繰り返し実行される。
その後、所定のフレーム画像のデータから検出顔が検出されると、次のステップS5においてYESであると判定されて、処理はステップ6に進む。この場合、顔検出部52は、検出顔の領域の情報及び位置情報を顔信頼度算出部41に供給すると共に、検出顔の位置情報を追尾リスト登録更新部43に供給する。
ステップS6において、顔信頼度算出部41は、顔検出部52から供給された検出顔の領域の情報及び位置情報に基づいて、検出顔の信頼度を算出する。顔信頼度算出部41は、検出顔の信頼度を追尾期間設定部42に通知する。
ステップS7において、追尾期間設定部42は、ステップS6の処理で算出された信頼度に基づいて、検出顔の追尾期間を設定する。具体的には、追尾期間設定部42は、図3のテーブルを参照して、信頼度に対応する追尾期間を設定する。追尾期間設定部42は、設定した追尾期間を追尾リスト登録更新部43に供給する。
ステップS8において、追尾リスト登録更新部43は、検出顔を新たな追尾候補顔として、その位置情報及び追尾期間を顔追尾リストに追加登録する。続いて、処理は図6のステップS18に進む。
ステップS18において、フレーム画像取得部51は、処理の終了指示がなされたか否かを判定する。
処理の終了指示は、特に限定されないが、本実施形態では、全押し操作による記録の指示が併用して採用されているものとする。
従って、本実施形態では全押し操作がなされると、ステップS18においてYESであると判定されて、単一顔追尾処理全体が終了となる。
これに対して、全押し操作がなされていない場合には、ステップS18においてNOであると判定されると、処理はステップS2に戻され、それ以降の処理が繰り返される。即ち、ステップS2の処理で、新たなフレーム画像のデータが取得される。そして、前回のフレーム画像のデータから検出顔が検出されて、前回のステップS6乃至S8の処理で、当該検出顔が追尾対象候補として顔追尾リストに新たに登録されたので、次のステップS3の処理ではYESであると判定されて、処理は図6のステップS9に進む。
処理の終了指示は、特に限定されないが、本実施形態では、全押し操作による記録の指示が併用して採用されているものとする。
従って、本実施形態では全押し操作がなされると、ステップS18においてYESであると判定されて、単一顔追尾処理全体が終了となる。
これに対して、全押し操作がなされていない場合には、ステップS18においてNOであると判定されると、処理はステップS2に戻され、それ以降の処理が繰り返される。即ち、ステップS2の処理で、新たなフレーム画像のデータが取得される。そして、前回のフレーム画像のデータから検出顔が検出されて、前回のステップS6乃至S8の処理で、当該検出顔が追尾対象候補として顔追尾リストに新たに登録されたので、次のステップS3の処理ではYESであると判定されて、処理は図6のステップS9に進む。
ステップS9において、追尾制御部44は、追尾リスト記憶部61に記憶されている顔追尾リストに基づいて、追尾候補顔の追尾期間が過ぎたか否かを判定する。
追尾期間が過ぎていない場合には、ステップS9においてNOであると判定されて、処理はステップS10に進む。
追尾期間が過ぎていない場合には、ステップS9においてNOであると判定されて、処理はステップS10に進む。
ステップS10において、追尾部15は、追尾候補顔に対する追尾処理を行う。即ち、追尾部15は、直前のステップS2(図5)の処理で取得されたフレーム画像のデータを処理対象にして、追尾候補顔を追尾する。
ステップS11において、追尾リスト登録更新部43は、追尾処理の結果に基づいて、顔追尾リストの追尾候補顔の位置情報を更新する。具体的には、図示していないが、追尾処理の結果のうち、処理対象のフレーム画像内における、追尾された追尾候補顔の位置情報が、追尾リスト登録更新部43に供給される。そこで、追尾リスト登録更新部43は、当該追尾候補顔の位置情報を、顔追尾リストの位置情報として上書き更新する。
ステップS12において、顔検出部52は、直前のステップS2(図5)の処理で取得されたフレーム画像のデータについて、顔検出処理を再度行う。
ステップ13において、顔検出部52は、ステップS12の処理で顔の再検出が成功したか否かを判定する。
ステップS12の処理で何ら顔が検出されなかった場合、ステップS13においてNOであると判定されて、処理はステップS18に進む。即ち、全押し操作による処理の終了指示がない限り、ステップS18においてNOであると判定されて、処理はステップS2(図5)に戻され、追尾候補顔の追尾が引き続き実行される。
なお、ステップS12の処理で何ら顔が検出されなかった場合、追尾候補顔は顔でない対象(壁等)である可能性が高いため、追尾顔リストから追尾候補顔の情報(対応する行の格納情報)を削除する処理を実行してもよい。ただし、本フローチャートの例では、説明の便宜上、1度設定された追尾期間の間は、追尾候補顔の追尾が継続されるという思想の下、上述の流れの処理が実行される。
なお、ステップS12の処理で何ら顔が検出されなかった場合、追尾候補顔は顔でない対象(壁等)である可能性が高いため、追尾顔リストから追尾候補顔の情報(対応する行の格納情報)を削除する処理を実行してもよい。ただし、本フローチャートの例では、説明の便宜上、1度設定された追尾期間の間は、追尾候補顔の追尾が継続されるという思想の下、上述の流れの処理が実行される。
これに対して、ステップS12の処理で顔が検出された場合、ステップS13においてYESであると判定されて、処理はステップS14に進む。
ステップS14において、追尾リスト登録更新部43は、ステップS12の顔検出処理により再検出された検出顔(以下、「再検出顔」と呼ぶ)の領域と、ステップS10の処理で追尾処理により追尾された追尾候補顔の領域とが所定の割合以上重なっているか否か判定する。
再検出顔の領域と、追尾候補顔の領域とが一定以上重なっていない場合、ステップS14の処理でNOと判定されて、処理はステップS18に進む。即ち、全押し操作による処理の終了指示がない限り、ステップS18においてNOであると判定されて、処理はステップS2(図5)に戻され、追尾候補顔の追尾が引き続き実行される。
なお、再検出顔の領域と、追尾候補顔の領域とが一定以上重なっていない場合、追尾候補顔は顔でない対象(壁等)であり、再検出顔が新たに登場してきた顔である可能性が高い。このため、追尾顔リストからこれまでの追尾候補顔の情報(対応する行の格納情報)を削除すると共に、再検出顔を新たな追尾候補顔に設定して、新たな追尾候補顔の情報(対応する行の格納情報)を追加登録する処理を実行してもよい。ただし、本フローチャートの例では、説明の便宜上、上述の如く1度設定された追尾期間の間は追尾候補顔の追尾が継続されるという思想が採用されているため、上述の流れの処理が実行される。
なお、再検出顔の領域と、追尾候補顔の領域とが一定以上重なっていない場合、追尾候補顔は顔でない対象(壁等)であり、再検出顔が新たに登場してきた顔である可能性が高い。このため、追尾顔リストからこれまでの追尾候補顔の情報(対応する行の格納情報)を削除すると共に、再検出顔を新たな追尾候補顔に設定して、新たな追尾候補顔の情報(対応する行の格納情報)を追加登録する処理を実行してもよい。ただし、本フローチャートの例では、説明の便宜上、上述の如く1度設定された追尾期間の間は追尾候補顔の追尾が継続されるという思想が採用されているため、上述の流れの処理が実行される。
これに対して、再検出された検出顔の領域と、追尾候補顔の領域とが一定以上重なっている場合には、ステップS14の処理でYESであると判定されて、処理はステップS15に進む。
ステップS15において、顔信頼度算出部41は、再検出顔の信頼度を再算出する。
ステップS16において、追尾期間設定部42は、ステップS15において行われた再算出後の信頼度に基づいて再検出顔の追尾期間を再設定する。
ステップS17において、追尾リスト登録更新部43は、再検出顔の位置情報及び追尾期間を顔追尾リストの追尾候補顔の情報として上書き更新する。即ち、再検出顔の領域と、追尾候補顔の領域とが一定以上重なっている場合、再検出顔と追尾候補顔とは同一対象である可能性が非常に高いことを意味する。そして、顔検出処理と追尾処理とを比較すると、そのアルゴリズムの違い等により、顔検出処理の方が精度が高いため、顔検出処理により得られた情報等の方が信頼性が高い。そこで、顔追尾リストの追尾候補顔の情報が、信頼性が高い情報、即ち、顔検出処理により得られた情報に置換されるのである。また、追尾期間も演算し直され上書きされるので、実質的に、追尾期間も延長されることになる。
続いて、処理はステップS18に進む。即ち、全押し操作による処理の終了指示がない限り、ステップS18においてNOであると判定されて、処理はステップS2(図5)に戻され、追尾候補顔の追尾が引き続き実行される。
続いて、処理はステップS18に進む。即ち、全押し操作による処理の終了指示がない限り、ステップS18においてNOであると判定されて、処理はステップS2(図5)に戻され、追尾候補顔の追尾が引き続き実行される。
その後、上述した一連の処理が、フレーム画像のデータが取得される毎に繰り返し実行され、追尾期間が過ぎた場合には、次のステップS9においてYESであると判定されて、処理はステップS19に進む。
ステップS19において、追尾リスト登録更新部43は、追尾リスト記憶部61に記憶されている顔追尾リストを削除する。続いて、処理はステップS18に進む。なお、ステップS18の処理は上述したので、ここではその説明は省略する。
以上、図5及び図6を参照して、顔検出処理により検出される検出顔が1つであるという前提の下で実行される単一顔追尾処理について説明した。
次に、図7及び図8を参照して、顔検出処理により検出される検出顔が複数になり得る場合の複数顔追尾処理について説明する。
図7及び図8は、複数顔追尾処理の流れを説明するフローチャートである。
次に、図7及び図8を参照して、顔検出処理により検出される検出顔が複数になり得る場合の複数顔追尾処理について説明する。
図7及び図8は、複数顔追尾処理の流れを説明するフローチャートである。
図7及び図8の複数顔追尾処理は、撮像部18による撮像が行われる場合に実行される処理である。
即ち、少なくともスルー撮像処理及びスルー表示処理が開始されており、ユーザにより全押し操作がなされて記録用撮像が行われるまでの間に、複数顔追尾処理は実行される。
即ち、少なくともスルー撮像処理及びスルー表示処理が開始されており、ユーザにより全押し操作がなされて記録用撮像が行われるまでの間に、複数顔追尾処理は実行される。
ステップS41において、追尾リスト登録更新部43は、追尾リスト記憶部61に記録されている顔追尾リストをリセットする。この処理では、顔追尾リストの記録内容が全て削除される。
ステップS42において、フレーム画像取得部51は、撮像部18からフレーム画像のデータを取得する。フレーム画像取得部51は、取得したフレーム画像のデータを顔検出部52、追尾部15及び過去フレーム画像記憶部62に供給する。
ステップS43において、追尾リスト登録更新部43は、追尾リスト記憶部61に記憶されている顔追尾リストに、追尾候補顔が存在するか否かを判定する。
ステップS41の処理で顔追尾リストが削除された後の段階では、追尾リスト記憶部61の顔追尾リストには追尾候補顔に対応する行は存在しない。このような場合、ステップS43においてNOであると判定されて、処理は図8のステップS50に進む。ステップS50以降の処理については後述する。
追尾リスト記憶部61の顔追尾リストに追尾候補顔に対応する行が存在する場合、ステップS43においてYESであると判定されて、処理はステップS44に進む。
ステップS44において、追尾制御部44は、追尾リスト記憶部61の顔追尾リストに存在する各追尾候補顔の1つを追尾対象として設定する。
ステップS45において、追尾制御部44は、追尾リスト記憶部61に記憶されている顔追尾リストに基づいて、ステップS44の処理で追尾対象として設定した追尾候補顔の追尾期間が過ぎたか否かを判定する。
追尾対象の追尾期間が過ぎた場合には、ステップS45においてYESであると判定されて、処理はステップS46に進む。
ステップS46においては、追尾リスト登録更新部43は、追尾期間が過ぎた追尾対象を顔追尾リストから削除する。これにより、処理はステップS49に進むが、ステップS49以降の処理については後述する。
ステップS46においては、追尾リスト登録更新部43は、追尾期間が過ぎた追尾対象を顔追尾リストから削除する。これにより、処理はステップS49に進むが、ステップS49以降の処理については後述する。
これに対して、追尾対象の追尾期間が過ぎていない場合には、ステップS45においてNOであると判定されて、処理はステップS47に進む。
ステップS47においては、追尾部15は、追尾対象に対する追尾処理を行う。即ち、追尾部15は、直前のステップS44の処理で追尾対象として設定した追尾候補顔を追尾対象にして、追尾候補顔を追尾する。
ステップS47においては、追尾部15は、追尾対象に対する追尾処理を行う。即ち、追尾部15は、直前のステップS44の処理で追尾対象として設定した追尾候補顔を追尾対象にして、追尾候補顔を追尾する。
ステップS48において、追尾リスト登録更新部43は、追尾処理の結果に基づいて、顔追尾リストの追尾対象の位置情報を更新する。具体的には、図示していないが、追尾処理の結果のうち、処理対象のフレーム画像内における、追尾された追尾対象の位置情報が、追尾リスト登録更新部43に供給される。そこで、追尾リスト登録更新部43は、当該追尾対象の位置情報を、顔追尾リストの位置情報として上書き更新する。
ステップS48及びステップS46の処理の後、ステップS49において、追尾リスト登録更新部43は、全ての追尾候補顔が追尾対象として設定されたか否かを判定する。
追尾候補顔のうち追尾対象として設定されていないものが未だ存在する場合には、ステップS49においてNOであると判定されて、処理はステップS44に戻される。即ち、1以上の追尾候補顔の各々が追尾対象として順次設定され、ステップS44乃至ステップS49のループ処理が繰り返し実行される。
そして、最後の追尾候補顔が追尾対象に設定されて、ステップS44乃至ステップS48の処理が実行されると、次のステップS49においてYESであると判定されて、処理は図8のステップS50に進む。
そして、最後の追尾候補顔が追尾対象に設定されて、ステップS44乃至ステップS48の処理が実行されると、次のステップS49においてYESであると判定されて、処理は図8のステップS50に進む。
図8のステップS50において、顔検出部52は、直前のステップS42の処理で取得されたフレーム画像のデータ中から、顔を検出する顔検出処理を実行する。
ステップ51において、顔検出部52は、ステップS50の処理で顔の検出が成功したか否かを判定する。
ステップS50の処理で何ら顔が検出されなかった場合、顔の検出が成功しなかったとして、ステップS51においてNOであると判定されて、処理はステップS60に進む。このため、全押し操作による複数顔追尾処理の終了指示がない限り、ステップS60においてNOであると判定されて、処理はステップS42(図7)に戻される。即ち、ステップS42の処理でフレーム画像のデータが取得される度に、顔検出処理が繰り返し実行される。この場合、顔が検出されないと、ステップS42乃至ステップS60のループ処理が繰り返し実行される。
その後、所定のフレーム画像のデータから検出顔が検出されると、次のステップS51においてYESであると判定されて、処理はステップ52に進む。この場合、顔検出部52は、検出顔の領域の情報及び位置情報を顔信頼度算出部41に供給すると共に、検出顔の位置情報を追尾リスト登録更新部43に供給する。
ステップS52において、顔信頼度算出部41は、顔検出部52から供給された各検出顔の領域の情報及び位置情報に基づいて、各検出顔の各信頼度を算出する。顔信頼度算出部41は、算出した各検出顔の各信頼度を追尾期間設定部42に通知する。
ステップS53において、追尾期間設定部42は、ステップS52の処理で算出された各信頼度に基づいて、各検出顔の各追尾期間を設定する。具体的には、追尾期間設定部42は、図3のテーブルを参照して、各信頼度に対応する各追尾期間を設定する。追尾期間設定部42は、設定した各追尾期間を追尾リスト登録更新部43に供給する。
ステップS54において、追尾制御部44は、ステップS50の処理において検出した各検出顔の1つを注目検出顔として設定する。
「注目検出顔」とは、後述のステップS55乃至ステップS59の処理において対象となる検出顔をいう。
「注目検出顔」とは、後述のステップS55乃至ステップS59の処理において対象となる検出顔をいう。
ステップS55において、追尾リスト登録更新部43は、追尾リスト記憶部61の顔追尾リストの中に、ステップS54の処理により設定された注目検出顔の領域と、一定以上の領域とが重なる追尾候補顔が存在するか否かを判定する。
顔追尾リストの中に、注目検出顔の領域と、一定以上の領域とが重なる追尾候補顔が存在している場合には、ステップS55の処理でYESであると判定されて、処理はステップ56に進む。
ステップS56において、追尾リスト登録更新部43は、注目検出顔の領域と一定以上の領域が重なる追尾候補顔を更新対象に決定する。
ステップS57において、追尾リスト登録更新部43は、注目検出顔の位置情報及び追尾期間を顔追尾リストの更新対象の情報として上書き更新する。即ち、注目検出顔の領域と、顔追尾リスト中の追尾候補顔の領域とが一定以上重なっている場合、注目検出顔と追尾候補顔とは同一対象である可能性が非常に高いことを意味する。そして、顔検出処理と追尾処理とを比較すると、そのアルゴリズムの違い等により、顔検出処理により得られた情報等の方が信頼性が高い。そこで、顔追尾リストの追尾候補顔の情報が、信頼性が高い情報、即ち、顔検出処理により得られた情報に置換されるのである。また、追尾期間も演算し直され上書きされるので、実質的に、追尾期間も延長されることになる。
続いて、処理はステップS59に進む。ステップS59以降の処理については後述する。
続いて、処理はステップS59に進む。ステップS59以降の処理については後述する。
これに対し、顔追尾リストの中に、注目検出顔の領域と、一定以上の領域とが重なる追尾候補顔が存在していない場合、ステップS55においてNOであると判定されて、処理はステップ58に進む。
ステップS58において、追尾リスト登録更新部43は、注目検出顔を新たな追尾候補顔として、その位置情報及び追尾期間を顔追尾リストに追加登録する。即ち、注目検出顔の領域と、顔追尾リスト中の追尾候補顔の領域とが一定以上重なっていない場合、追尾候補顔は顔でない対象(壁等)であり、注目検出顔が新たに登場してきた顔である可能性が高い。このため、追尾顔リスト中の追尾候補顔の情報(対応する行の格納情報)は更新しないと共に、注目検出顔を新たな追尾候補顔に設定して、新たな追尾候補顔の情報(対応する行の格納情報)を追加登録する処理を実行する。
続いて、処理はステップS59に進む。
続いて、処理はステップS59に進む。
ステップ58又はステップS57の後、ステップS59において、追尾リスト登録更新部43は、全ての検出顔が注目検出顔に設定されたか否かを判定する。
検出顔のうち注目検出顔として設定されていないものが未だ存在する場合には、ステップS59においてNOであると判定されて、処理はステップS54に戻される。即ち、1以上の検出顔の各々が注目検出顔として順次設定されて、ステップS54乃至ステップS58の処理が実行されると、次のステップS59においてYESであると判定されて、処理はステップS60に進む。
ステップS60において、フレーム画像取得部51は、処理の終了指示がなされたか否かを判定する。即ち、全押し操作による処理の終了指示がない限り、ステップS60においてNOであると判定されて、処理はステップS42(図7)に戻され、追尾候補顔の追尾が引き続き実行される。
以上説明したように、本実施形態の撮像装置1は、フレーム画像取得部51と、顔検出部52と、顔信頼度算出部41と、追尾部15と、追尾期間設定部42と、追尾制御部44と、を備えている。
フレーム画像取得部51は、画像データを逐次取得する。
顔検出部52は、フレーム画像取得部51により逐次取得される各々の画像データから、被写体と推定される顔を検出する。
顔信頼度算出部41は、顔検出部52により検出顔について、被写体らしさを表す信頼度を算出する。
追尾期間設定部42は、顔信頼度算出部41により算出された信頼度に基づいて、検出顔の追尾のための追尾期間を設定する。
追尾部15は、フレーム画像取得部51により次回以降逐次取得される画像データから顔検出部52により検出された検出顔を追尾する。
追尾制御部44は、追尾期間設定部42により設定された追尾期間に基づいて、検出顔の追尾をさせるよう制御する。
フレーム画像取得部51は、画像データを逐次取得する。
顔検出部52は、フレーム画像取得部51により逐次取得される各々の画像データから、被写体と推定される顔を検出する。
顔信頼度算出部41は、顔検出部52により検出顔について、被写体らしさを表す信頼度を算出する。
追尾期間設定部42は、顔信頼度算出部41により算出された信頼度に基づいて、検出顔の追尾のための追尾期間を設定する。
追尾部15は、フレーム画像取得部51により次回以降逐次取得される画像データから顔検出部52により検出された検出顔を追尾する。
追尾制御部44は、追尾期間設定部42により設定された追尾期間に基づいて、検出顔の追尾をさせるよう制御する。
これにより、顔検出部52による検出時における検出結果に対する信頼度に応じて、追尾部15における追尾期間を制御することができる。これにより、顔検出処理で顔でない対象(壁等)を顔であると誤検出してしまった場合、誤検出の対象に対する追尾処理、即ち、不必要な対象に対する追尾処理を低減することができる。その結果、被写体の顔を検出して追尾するまでの全体の処理時間を短時間で行うことができる。
また、本実施形態の撮像装置1は、追尾リスト登録更新部43をさらに備えている。
追尾リスト登録更新部43は、顔検出部52により検出顔を追尾候補として、追尾候補の情報として、顔検出部52により検出顔の位置情報と、追尾期間設定部42により設定された追尾期間とを登録する。
そして、追尾制御部44は、追尾リスト登録更新部43により追尾候補として登録された該顔の位置情報及び該追尾期間に基づいて、追尾部15による顔の追尾を制御する。
追尾リスト登録更新部43は、顔検出部52により検出顔を追尾候補として、追尾候補の情報として、顔検出部52により検出顔の位置情報と、追尾期間設定部42により設定された追尾期間とを登録する。
そして、追尾制御部44は、追尾リスト登録更新部43により追尾候補として登録された該顔の位置情報及び該追尾期間に基づいて、追尾部15による顔の追尾を制御する。
これにより、顔検出部52により検出される顔が複数であっても、複数の顔のそれぞれについて、他とは独立して追尾期間を設定して、他とは独立して追尾処理を実行することが容易に可能になる。
また、顔検出部52は、追尾部15による検出顔の追尾の後に、再検出顔を検出する。
追尾期間設定部42は、再検出顔の位置情報と追尾期間とを新たに設定する。
追尾リスト登録更新部43は、さらに、再検出顔の領域と検出顔の領域が所定の範囲以上重なると、追尾候補を検出顔から再検出顔に更新し、追尾候補の情報として、再検出顔の位置情報と、再検出顔について設定手段により新たに設定された追尾期間とを上書き更新する。
追尾期間設定部42は、再検出顔の位置情報と追尾期間とを新たに設定する。
追尾リスト登録更新部43は、さらに、再検出顔の領域と検出顔の領域が所定の範囲以上重なると、追尾候補を検出顔から再検出顔に更新し、追尾候補の情報として、再検出顔の位置情報と、再検出顔について設定手段により新たに設定された追尾期間とを上書き更新する。
一般的に、追尾処理に比べて、顔検出処理の方が、そのアルゴリズムの違い等により、精度が高い処理となるため、得られる位置情報の信頼性も高い。従って、信頼性の高い位置情報に更新されるので、次回以降の追尾処理の精度が向上する。
また、追尾期間を上書きすることにより、追尾期間の実質的延長を行うことが可能になる。
また、追尾期間を上書きすることにより、追尾期間の実質的延長を行うことが可能になる。
また、フレーム画像取得部51は、フレーム画像を単位として画像データを逐次取得する。
追尾期間設定部42は、フレーム画像数によって求められる追尾期間を設定する。
追尾期間設定部42は、フレーム画像数によって求められる追尾期間を設定する。
これにより、追尾期間の制御のために別途計時部等を設ける必要がなく、他の画像処理と同一の処理単位であるフレーム画像単位を採用して、追尾処理を適切に実行することができる。
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
例えば、上述の実施形態では、追尾期間設定部42は、フレーム画像を単位として追尾期間を設定したがこれに限られることではなく、時間的長さを定量的に特定できる単位であれば足りる。例えば、別途計時部を設けて、信頼度毎に設定した単位時間毎に追尾期間を設定することができる。
また例えば、上述の実施形態では、本発明が適用される画像処理装置は、デジタルカメラ等の画像処理装置として構成される例として説明した。しかしながら、本発明は、画像処理装置に特に限定されず、撮像機能の有無を問わず(撮像画像のデータは別の装置から取得してもよい)、上述の画像処理を実行可能な電子機器一般に適用することができる。具体的には例えば、本発明は、パーソナルコンピュータ、ビデオカメラ、携帯型ナビゲーション装置、ポータブルゲーム機等に適用可能である。
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
このようなプログラムを含む記録媒体は、ユーザにプログラムを提供するために装置本体とは別に配布される図1のリムーバブルメディア31により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体等で構成される。リムーバブルメディアは、例えば、磁気ディスク(フロッピディスクを含む)、光ディスク、又は光磁気ディスク等により構成される。光ディスクは、例えば、CD−ROM(Compact Disk−Read Only Memory),DVD(Digital Versatile Disk)等により構成される。光磁気ディスクは、MD(Mini−Disk)等により構成される。また、装置本体に予め組み込まれた状態でユーザに提供される記録媒体は、例えば、プログラムが記録されている図1のROM12や、図1の記憶部21に含まれるハードディスク等で構成される。
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。
1・・・撮像装置、11・・・CPU、12・・・ROM、13・・・RAM、14・・・画像処理部、15・・・追尾部、16・・・バス、17・・・入出力インターフェース、18・・・撮像部、19・・・操作部、20・・・表示部、21・・・記憶部、22・・・通信部、23・・・ドライブ、31・・・リムーバブルメディア、41・・・顔信頼度算出部、42・・・追尾期間設定部、43・・・追尾リスト登録更新部、44・・・追尾制御部、51・・・フレーム画像取得部、52・・・顔検出部、61・・・追尾リスト記憶部、62・・・過去フレーム画像記憶部
Claims (7)
- 画像データを逐次取得する画像取得手段と、
前記画像取得手段により逐次取得される各々の画像データから、被写体と推定される第1の対象を検出する検出手段と、
前記検出手段により検出された第1の対象について、前記被写体らしさを表す信頼度を算出する算出手段と、
前記算出手段により算出された信頼度に基づいて、第1の対象の追尾のための追尾期間を設定する設定手段と、
前記画像取得手段により次回以降逐次取得される画像データから、前記検出手段により検出された第1の対象を追尾する追尾手段と、
前記設定手段により設定された追尾期間に基づいて、第1の対象の追尾をさせるよう制御する追尾制御手段と、
を備えることを特徴とする画像処理装置。 - 前記検出手段により検出された第1の対象の位置情報を取得する取得手段と、
前記取得手段により取得された第1の対象の位置情報と前記設定手段により設定された追尾期間とを登録する候補登録手段をさらに備え、
前記追尾制御手段は、前記候補登録手段により登録された第1の対象の位置情報と前記追尾期間とに基づいて、前記追尾手段による第1の対象の追尾を制御する、
ことを特徴とする請求項1記載の画像処理装置。 - 前記検出手段は、前記追尾手段による第1の対象の追尾の後に、第2の対象を検出し、
前記設定手段は、前記第2の対象の位置情報と追尾期間とを新たに設定し、
前記候補登録手段は、さらに、前記第2の対象の領域と前記第1の対象の領域が所定の範囲以上重なると、前記第1の対象の位置情報と追尾期間とを、前記第2の対象の位置情報との追尾期間とに上書きする、
ことを特徴とする請求項2記載の画像処理装置。 - 前記検出手段は、前記対象として、顔を検出する、
ことを特徴とする請求項1乃至3の何れかに記載の画像処理装置。 - 前記画像取得手段は、1つの画像データを一単位として前記画像データを一単位ずつ逐次取得し、
前記設定手段は、前記画像取得手段により一単位として取得されるフレーム画像の数を前記追尾期間として設定する、
ことを特徴とする請求項1乃至4の何れかに記載の画像処理装置。 - 画像を取得する画像取得手段を備える画像処理装置の画像処理方法であって、
画像データを逐次取得する画像取得ステップと、
前記画像取得ステップにて逐次取得される各々の画像データから、被写体と推定される対象を検出する検出ステップと、
前記検出ステップにて検出された対象についての、前記被写体らしさを表す信頼度を算出する算出ステップと、
前記算出ステップにて算出された信頼度に基づいて、対象の追尾のための追尾期間を設定する設定ステップと、
前記画像取得ステップにて次回以降逐次取得される画像データから、前記検出ステップにより検出された対象を追尾する追尾ステップと、
前記設定ステップにて設定された追尾期間に基づいて、対象の追尾をさせるよう制御する追尾制御ステップと、
を含むことを特徴とする画像処理方法。 - 画像を取得する画像取得手段を備える画像処理装置のコンピュータを、
画像データを逐次取得する画像取得手段、
前記画像取得手段により逐次取得される各々の画像データから、被写体と推定される対象を検出する検出手段、
前記検出手段により検出された対象についての、前記被写体らしさを表す信頼度を算出する算出手段と、
前記算出手段により算出された信頼度に基づいて、対象の追尾のための追尾期間を設定する設定手段、
前記画像取得手段に次回以降逐次取得される画像データから、前記検出手段により検出された対象を追尾する追尾手段、
前記設定手段により設定された追尾期間に基づいて、前記追尾手段による対象の追尾をさせるよう制御する追尾制御手段、
として機能させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010222349A JP2012080251A (ja) | 2010-09-30 | 2010-09-30 | 画像処理装置、画像処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010222349A JP2012080251A (ja) | 2010-09-30 | 2010-09-30 | 画像処理装置、画像処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012080251A true JP2012080251A (ja) | 2012-04-19 |
Family
ID=46240016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010222349A Pending JP2012080251A (ja) | 2010-09-30 | 2010-09-30 | 画像処理装置、画像処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012080251A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014013617A (ja) * | 2013-10-08 | 2014-01-23 | Toshiba Corp | 映像表示装置及び映像表示方法 |
JP2016071830A (ja) * | 2014-09-26 | 2016-05-09 | 日本電気株式会社 | 物体追跡装置、物体追跡システム、物体追跡方法、表示制御装置、物体検出装置、プログラムおよび記録媒体 |
WO2016084611A1 (ja) * | 2014-11-26 | 2016-06-02 | ソニー株式会社 | 画像処理装置および方法、並びに、プログラム |
US10664705B2 (en) | 2014-09-26 | 2020-05-26 | Nec Corporation | Object tracking apparatus, object tracking system, object tracking method, display control device, object detection device, and computer-readable medium |
US11553136B2 (en) | 2020-02-19 | 2023-01-10 | Canon Kabushiki Kaisha | Subject tracking device, subject tracking method, and storage medium |
-
2010
- 2010-09-30 JP JP2010222349A patent/JP2012080251A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014013617A (ja) * | 2013-10-08 | 2014-01-23 | Toshiba Corp | 映像表示装置及び映像表示方法 |
JP2016071830A (ja) * | 2014-09-26 | 2016-05-09 | 日本電気株式会社 | 物体追跡装置、物体追跡システム、物体追跡方法、表示制御装置、物体検出装置、プログラムおよび記録媒体 |
US10664705B2 (en) | 2014-09-26 | 2020-05-26 | Nec Corporation | Object tracking apparatus, object tracking system, object tracking method, display control device, object detection device, and computer-readable medium |
US11113538B2 (en) | 2014-09-26 | 2021-09-07 | Nec Corporation | Object tracking apparatus, object tracking system, object tracking method, display control device, object detection device, and computer-readable medium |
US11676388B2 (en) | 2014-09-26 | 2023-06-13 | Nec Corporation | Object tracking apparatus, object tracking system, object tracking method, display control device, object detection device, and computer-readable medium |
WO2016084611A1 (ja) * | 2014-11-26 | 2016-06-02 | ソニー株式会社 | 画像処理装置および方法、並びに、プログラム |
US11553136B2 (en) | 2020-02-19 | 2023-01-10 | Canon Kabushiki Kaisha | Subject tracking device, subject tracking method, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5507014B2 (ja) | 動体検出装置及び方法 | |
US10630891B2 (en) | Image processing apparatus, image processing method, and program | |
JP2007072606A (ja) | 画像処理装置及び方法 | |
JP6338424B2 (ja) | 画像処理装置およびその制御方法、撮像装置、プログラム | |
JP6539091B2 (ja) | 撮像装置およびその制御方法 | |
JP5699432B2 (ja) | 画像処理装置 | |
US9384552B2 (en) | Image registration methods for still image stabilization | |
JP2010114752A (ja) | 撮像装置及び撮像方法及びプログラム | |
JP2013228930A (ja) | 被写体領域検出装置、その制御方法、および制御プログラム、並びに撮像装置および表示装置 | |
JP2012080251A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2011066827A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP5329940B2 (ja) | 画像処理装置、その制御方法、及び撮像装置 | |
JP5300413B2 (ja) | 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム | |
JP5539565B2 (ja) | 撮像装置及び被写体追跡方法 | |
JP2009171341A (ja) | ぶれ補正装置及び撮像装置 | |
JP2013152643A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP7122916B2 (ja) | 撮像装置およびその制御方法、プログラムならびに記憶媒体 | |
JP2010257041A (ja) | 被写体追尾装置、およびカメラ | |
JP2019041414A (ja) | 電子機器、撮像装置、およびプログラム | |
JP2014023054A (ja) | 画像処理装置、撮像装置、および画像処理プログラム | |
JP5740934B2 (ja) | 被写体検出装置、被写体検出方法及びプログラム | |
US20230276127A1 (en) | Image processing apparatus and image processing method | |
JP5247419B2 (ja) | 撮像装置および被写体追跡方法 | |
JP6833607B2 (ja) | 制御装置、撮像装置、制御方法、プログラム、および、記憶媒体 | |
JP2010118822A (ja) | 手ぶれ補正装置及び手ぶれ補正方法 |