<実施形態1>
以下、図面を参照して本発明の実施形態1に係る撮像装置を詳細に説明する。図1は、本発明の実施形態1に係る撮像装置100の構成を示すブロック図である。図1に示す撮像装置100は、基本的に実施形態1だけでなく、他の実施形態においても適用される。図1に示すように、撮像装置100は、結像光学系1、撮像部2、結像光学系制御部3、撮像制御部4、画像データ記憶部5、画像データ記録部6、被写体候補情報抽出部7、撮像抑止判定部8及び通知部9を含む。また撮像装置100はさらに操作部13を備える。尚、後述するように通知部9は表示部10、音響発生部11及び振動発生部12を含む。 結像光学系1は、詳細は図示しないが、ズーム機構を備えた光学レンズを含んで構成される。また、パン及びティルト軸方向の駆動機構も備える。撮像部2は、詳細は図示しないが、画像センサ、センサ信号処理回路、センサ駆動回路等で構成される。使用される画像センサとしては、CCD又はCMOS等の半導体イメージセンサが用いられる。そして、不図示のセンサ駆動回路からの読み出し制御信号により、所定の画像データ(例えば、不図示のサブサンプリング回路、ブロック読み出し回路、AD変換回路等を経て得られる信号)が出力される。したがって撮像部2からの出力としては、画像データが出力されるものとして説明する。
撮像制御部4は、操作部13を使用する撮影者からの指示(画角調整指示、シャッタ押下等)、結像光学系制御部3及び撮像抑止判定部8からの情報を基に、撮像部2に含まれるセンサ駆動回路に対して読み出し制御信号を出力する。かくして実際の撮像が行われる。
結像光学系制御部3は、操作部13を使用した撮影者からの指示や、後述する撮像制御部4からの情報に基づいた結像光学系1のズーム制御、及び/又は結像光学系1の構成に駆動機構を設け、パン及びティルト方向の駆動制御を行う。
画像データ記憶部5は半導体メモリ等で構成され、撮像部2から転送された画像データを一時的に保持し、画像データ記録部6、被写体候補情報抽出部7及び撮像抑止判定部8からの要求に応じて、所定のタイミングで画像データを転送する。画像データ記録部6には、着脱可能な記録媒体が着脱され、最終的に画像データはこの記録媒体に記録される。この最終的に画像データが画像データ記録部6に記録されたことで撮像が行われたこととなる。
被写体候補情報抽出部7は、撮像部2から画像データ記憶部5で一時的に記憶された画像データを取得して後述する被写体候補情報の抽出処理を行い、その被写体候補情報を出力する。被写体候補情報抽出部7は、専用回路(ASIC)や、プロセッサ(リコンフィギュラブルプロセッサ、DSP、CPUなど)内部において実行されるプログラムとして存在する。また、予め又は所定の手順に従って登録しておくことにより、画像データに含まれる被写体の被写体カテゴリ等を抽出するプログラムモジュールを複数備える。そしてこれらのプログラムモジュールをダイナミックにロードして実行し、所望する被写体候補情報を抽出するような構成にすることも可能である。なお、被写体候補情報には、カテゴリ情報およびその属性情報を含む。
撮像抑止判定部8は、被写体候補情報抽出部7および撮像制御部4の情報を使用して被写体候補情報抽出部7によって抽出された被写体候補が、撮像抑止対象被写体候補に属するかどうか判定する。さらに、上記判定結果から総合的に画像データが撮像抑止対象画像データであるか否かを判断し、その結果を撮像制御部4および通知部9に出力する。この処理については、後に詳しく説明する。
撮像抑止判定部8は、専用回路(ASIC)やプロセッサ(リコンフィギュラブルプロセッサ、DSP、CPUなど)内部において実行されるプログラムとして存在する。なお、ここで撮像抑止対象被写体候補は予め登録済みのものから選ばれても、撮影者の所定の操作によって指定されたものであってもよい。また、撮像抑止対象被写体候補の撮像抑止対象被写体候補情報に含まれる撮像抑止対象カテゴリ情報及びその属性情報は複数であってもよい。
通知部9は、撮像抑止判定部8から出力される判定情報の結果を撮影者に通知するためのものである。通知部9は、表示部10、音響発生部11及び振動発生部12を含む。表示部10は、液晶モニタなどの表示装置が用いられる。この場合、通知部9の表示部10を使用して撮像する被写体像を表示したり、画像データ記憶部5又は画像データ記録部6の画像データを表示することが可能である。別の形態として、電子式ファインダ(EVF)を利用しても良い。また、撮影者が撮像モード等の選択を行うための操作部13と連動してメニュー表示を行うLCD表示部を備えてもよい。通知部9に液晶モニタなどの表示装置を用いる場合、即ち表示部10を使用する場合には、例えば撮像部2からの画像データに、被写体候補情報抽出部7および撮像抑止判定部8の判定情報の結果が重畳して表示される。
典型的には、被写体候補情報抽出部7の抽出結果としての被写体候補情報に含まれる属性情報で示される被写体候補の位置、大きさ等の情報をマーカ表示し、撮像抑止判定部8の判定情報の結果として、この画像データが撮像に適するかの表示が行われる。また別の形態として、通知部9には、音声スピーカから電子音または音声によって撮影者に被写体候補の情報や、判定情報に基づき撮像を抑止する情報を提示する音響発生部11が設けられている。さらに別の形態として、通知部9は、撮像装置100本体の一部、例えばグリップ部などを振動させることによって、撮影者にこの画像データの撮像を抑止すべきかの情報を提示する振動発生部12を設けるようにしてもよい。
図2は、本実施形態1に係る撮像装置100の処理フローチャートの一例を示す図である。図2を参照しながら、本実施形態1に係る撮像装置が、撮影者に画像データの撮像を抑止する判定情報を通知する際に行われる処理について詳しく説明する。
なお、この処理は、撮影者が操作部13のシャッタを押したタイミングでなされても良いし、撮像装置100が動作している間、継続的に行われていても良い。
始めに、処理の開始後のステップS201において、撮像抑止判定部8が、結像光学系1の焦点距離、画角、歪み係数、パン及びティルト方向情報、撮像モード等のカメラパラメータを、撮像制御部4及び結像光学系制御部3から取得する。続いてステップS202に進み、撮像部2で撮像した画像データを画像データ記憶部5に記憶することで画像データの一時記憶が行われる。このステップS202において、画像データ記憶部5に蓄えられた画像データは、ステップS203で被写体候補情報抽出部7に供給され、後述の被写体候補情報抽出処理が実行される。
被写体候補情報抽出部7で被写体候補情報抽出処理の実行後ステップS204に進み、被写体候補があった場合には、次のステップS205の撮像抑止判定処理に進む。しかし被写体候補が何もなかった場合には、ステップS201まで一度戻る。ステップS204で被写体候補があった場合にはステップS205に進み、撮像抑止判定部8において、カメラパラメータに含まれる撮像モード等を参照する。そして被写体候補情報抽出部7で抽出された被写体候補情報と、撮像抑止対象被写体候補情報とのマッチング処理により、この被写体候補が、撮像抑止対象被写体候補に属するか否か、すなわち、撮像を抑止すべき撮像抑止対象被写体候補か否かが判定される。
撮像抑止判定部8での処理は後に改めて詳しく説明する。そしてステップS206においては、被写体候補情報抽出部7で抽出された全ての被写体候補について判定した否かが判定される。まだ撮像抑止判定の対象か否かの処理がされていない被写体候補があれば、ステップS205に戻り、それらの被写体候補が撮像抑止対象被写体候補に属するか否の判定処理を行う。かくして、被写体候補情報抽出部7で抽出された全ての被写体候補について繰り返す。そして、全ての被写体候補について判定した後ステップS207に進み、この画像データが、撮像抑止対象画像データに属するか否かの判定処理が行われ、最終的な判定情報が出力されることになる。
ステップS207において、前記の判定情報でこの画像データが撮像抑止対象画像データに属すると判定された場合には、ステップS208に進む。そして、通知部9を使用して撮影者に現在の画像データの被写体候補撮像抑止情報と被写体候補属性情報の通知が行われ、処理を終了する。先に述べたようにこの通知処理は、たとえば通知部9に含まれる表示部10で行われる。
次に、図2のステップS203の、被写体候補情報抽出部7による被写体候補情報抽出処理の内容について、図3のフローチャートを用いて説明する。まず、ステップS310において、画像データ記憶部5から画像データを読出して、後述するフレームバッファ71に保持する。続いてステップS311に進み、フレームバッファ71に保持された画像データに対して特徴抽出が行われる。そして、ステップS312では、予め登録されて記憶されている被写体候補の被写体カテゴリ毎のモデルデータを、後述するモデルデータ記憶部73から読み出す。そしてステップS313において、特徴抽出が行われた画像データと、読み出された被写体候補のモデルデータとの、例えば類似度の算出処理等のマッチング処理が行われる。
この登録済みの全ての被写体候補のモデルデータと画像データの抽出された特徴データとのマッチング処理を、ステップS314、S312、S313のステップを繰り返すことで行う。その結果、類似度が最も高くかつ所定の閾値より高い被写体候補のモデルデータがあれば、そのモデルデータに対応する画像データに含まれる被写体が被写体候補として検出されたと判定する。かくして1つの被写体候補が、フレームバッファ71に保持された画像データから抽出されたことになる。なお、モデルデータ記憶部73に予め記憶されている各モデルデータはカテゴリ情報と該カテゴリ情報の属性情報を含み、従って被写体候補情報抽出処理の結果として、被写体候補のカテゴリ情報と該カテゴリ情報の属性情報が抽出されて出力されることになる。
以上説明した被写体候補情報抽出処理を実行する回路構成につき、図4に示す被写体候補情報抽出部7の主な構成要素を表したブロック図を用いてさらに詳しく説明する。図において、フレームバッファ71は、画像データ記憶部5から読み出された画像データを時系列に保持する。特徴抽出部72は、フレームバッファ71に保持された画像データ中の各場所(サンプリング点)において、幾何学的特徴またはその他の特徴量を抽出する。その他の特徴量には、色、輝度分布、高次局所自己相関、主成分分析や独立成分分析などによって得られる所定の特徴ベクトルデータ等を含んでもよい。これらの特徴を時系列データとして抽出したものを、新たな特徴量としても良い。
特定の被写体カテゴリの被写体である被写体候補に関する被写体候補のモデルデータ、例えば自動車、人物、建築物等は、それぞれカテゴリ情報と該カテゴリ情報の属性情報を含んでモデルデータ記憶部73に予め格納されている。特徴抽出部72から取得した被写体の特徴量と、モデルデータ記憶部73から読み出された被写体候補のモデルデータとのマッチング処理、例えば類似度算出等をマッチング処理部74で行う。ここで検出される特定の被写体カテゴリの被写体候補の大きさ等の属性は可変である。即ち、カテゴリ情報の種類としては、例えば人物、車、建築物などのような大分類から、人物の中での老若男女に類する中程度の分類クラス、更には特定人物レベルまでの細分化したクラスを用意することも可能である。
マッチング処理部74で行う処理としては、例えば特開平9−130714号公報に記載の画像情報抽出装置で用いる方法を利用することが可能である。即ち、被写体距離に応じたテンプレートモデル画像データを生成し、生成したテンプレートモデル画像データを用いて画面内を走査しながら、各場所で正規化相関係数などを計算することにより入力画像の局所部分とモデルデータとの類似度分布を算出する。この場合、特許3078166号公報に記載の局所的特徴の空間配置関係に基づくアルゴリズムや特開2002−8032号公報に記載の、畳み込み神経回路網をベースにしたアルゴリズムなどを用いても良い。一般的には、類似度分布の最大値が所定の閾値を越していれば、その被写体カテゴリに属するパターンが検出されたことになる。
なお、本発明の実施形態で実行されるマッチング処理部74の処理は、上記したマッチングの処理方法に限られるものではなく、公知の方法を適宜利用可能であることは言うまでもない。
たとえば別の構成として、上記処理によって被写体候補として抽出された被写体に、その属性情報を調べる処理を追加しても良い。例えば、被写体候補が人物であるとして、その視線方向や、表情をさらに詳しく調べることができる。これらの属性情報の検出には、それぞれ公知の画像認識技術を用いればよい。本発明の実施形態における被写体候補情報抽出処理に、公知の画像認識技術を用いて、被写体候補の属性情報を調べる処理をさらに加えることに何ら制限はない。かくして画像データ記憶部5から読み出された画像データに含まれる複数の被写体候補のカテゴリ情報および属性情報としての特徴データが、後述する被写体候補情報バッファ81に蓄積される。
次に、図2のステップS205で示した撮像抑止判定処理について説明する。この撮像抑止判定処理は、基本的に撮像抑止判定部8で実行される。図5は撮像抑止判定処理の処理フローチャート図である。まずステップS520で撮像抑止判定部8は、撮像制御部4からカメラパラメータを取得する。ここで、カメラパラメータとは、結像光学系1の焦点距離や、結像光学系制御部3の制御パラメータ、撮像制御部4の制御パラメータ等である。撮像制御部4の制御パラメータは、典型的には撮像モード、即ち風景モード、ポートレートモード、マクロモードや、自動露出制御(AE)、自動焦点制御(AF)のパラメータ等である。またステップS521では、被写体候補情報抽出部7より出力された被写体候補情報を読み込む。そしてステップS522では、予め登録してある撮像抑止対象被写体候補情報のデータを、ステップS520で取得したカメラパラメータにしたがって読み出し、ステップS523に進み、被写体候補情報と撮像抑止対象被写体候補情報とのマッチング処理を行う。
上記のマッチング処理が、登録された全ての撮像抑止対象被写体候補情報、すなわち、撮像抑止対象被写体候補情報のデータ、被写体候補の組み合わせによるデータの全てについて行なわれたか否かをステップS524で判断する。まだであればステップS522に戻り、処理を繰り返す。全て終了すれば、ステップS525に進む。そしてマッチング処理された結果と、後述するようにカメラパラメータとを統合的に判定する。そして画像データ記憶部5に一時的に蓄えられた画像データ、即ち、いま撮像しようとする画像データが撮像抑止対象画像データとなるか否かを判定し、判定情報を出力して処理を終了する。 以上説明した撮像抑止判定処理について、図6に示す撮像抑止判定部8の主な構成要素を表したブロック図を用いて、さらに詳しく説明する。図において、被写体候補情報バッファ81は、被写体候補情報抽出部7の出力結果である被写体候補情報を時系列に保持するためのバッファである。撮像抑止情報記憶部82には、予め撮像抑止対象となる被写体の撮像抑止対象被写体候補情報が登録されている。マッチング部83は、被写体候補情報バッファ81から被写体候補の被写体候補情報を読み出す。さらに撮像抑止情報記憶部82から撮像抑止対象被写体候補情報を読み出して、両者のマッチング処理を実行する。
ここでのマッチング処理は、たとえば、被写体候補の被写体候補情報に含まれる被写体カテゴリ情報のデータと、撮像抑止対象被写体候補情報に含まれる撮像抑止対象カテゴリ情報のデータとの一致を検証するものである。例えば、カテゴリ情報が人物を示し、撮像抑止対象カテゴリ情報も人物を示す場合に、このカテゴリ情報を有する被写体候補には、撮像抑止対象カテゴリを意味する属性値が設定される。全ての被写体候補のカテゴリ情報について、撮像抑止対象カテゴリ情報とのマッチング処理が行われ、属性値が設定された後、撮像抑止統合判定部84で撮像抑止統合判定処理が行われる。この処理については、後に詳しく説明する。
撮像抑止対象被写体候補情報のデータを読み出す際には、カメラパラメータを参照するようにしてもよい。以下、図を参照して具体的に説明する。図7は、カメラパラメータと撮像抑止対象被写体候補情報の撮像抑止対象カテゴリ情報およびその属性値の関係を表した参照テーブルである。図7の参照テーブル700には、カメラパラメータ(例えば、撮像モード、自動露出(AE)、自動合焦(AF)、結像光学系の制御、等のパラメータ)と、撮像抑止対象カテゴリ情報およびその属性情報である属性値との対応関係が記録されている。
例えば、撮像モードがポートレートの場合、撮像抑止カテゴリ情報には人物以外の、車、建築物、犬、猫、不分類(被写体カテゴリ不明)などが登録されている。さらにAE、AF、及び結像光学系の制御パラメータに対して、属性値フィールドとしては、大きさ、角度、色、テクスチャ等の詳しい情報が記憶されている。このようにカメラパラメータが与えられた場合、図7に示すような参照テーブル700を参照することによって、撮像抑止対象カテゴリとその属性値をきめ細かく指定した撮像抑止対象被写体候補情報を提供することが可能になる。
上記のような図7に示す参照テーブル700を用いた場合、図6に示す撮像抑止判定部8でのマッチング処理は、図8に示す処理フローチャート図のようになる。まずステップS831において被写体候補のカテゴリ情報の被写体カテゴリと、撮像抑止対象カテゴリ情報の撮像抑止対象カテゴリとのカテゴリ情報の比較が行われる。ここで、ステップS832でカテゴリが一致していないと判断された場合にはステップS836に進み、この被写体候補は、撮像許可の対象であるとして判定される。またステップS832でカテゴリが一致していると判断された場合にはステップS833に進み、更にその属性情報に含まれる属性値について比較が行われる。
ステップS834の判断で、カテゴリ情報の属性値が参照テーブル700の属性値の情報と全て一致(若しくは一定誤差の範囲内で略一致)している場合は、ステップS835に進む。そして、この被写体候補を撮像抑止対象被写体候補として設定する。ステップS834の判断で、属性値が参照テーブル700の属性値の情報と一致していない場合にはステップS836に進み、この被写体候補カテゴリ情報を備える被写体候補は撮像許可の対象として判定する。
なお、ここでは被写体候補および撮像抑止対象被写体候補のカテゴリ情報の属性情報である属性値について、その大きさ、角度、色、テクスチャ等について説明した。しかし、本発明は、これに限定されるわけではなく、その他の属性を用いても良いことは言うまでもない。例えば、撮像抑止対象カテゴリが人物である場合、その表情情報や視線情報を判定基準に用いても良い。このような属性を用いることで、撮像モードが風景などである場合に、笑った人物やカメラ目線の人物を撮像してしまうことを抑止できる。かくして、全ての被写体候補について、撮像許可対象の被写体カテゴリか、または撮像抑止対象カテゴリかの判定が行われる。
次に、撮像抑止統合判定部84の処理について説明する。ここでは、マッチング部83の結果と、撮像モード、撮像画角等のカメラパラメータを考慮して、いま撮像しようとしている画像データの撮像を抑止すべきか統合的に判断する。具体的には、被写体候補同士の相対的な関係とカメラパラメータとの対応を考慮して判定する。
一例として、図9に示す処理フローチャートを用いて説明する。まずステップS941で、いま撮像しようとしている画像データに含まれる被写体候補について、マッチング部83の結果である各被写体候補が撮像許可のカテゴリか、または撮像抑止対象カテゴリかの判定結果の情報を入力する。またステップ942ではカメラパラメータを取得し、次にステップS943において、判定されている被写体候補の中から主となる被写体候補を選び出す。
ここで、被写体候補の中から主となる被写体候補を選び出すステップS943での処理は、例えば次のようなものが考えられる。即ち、いま撮像しようとしている画像データ中の被写体候補の属性情報を基準にして、画像データ中の主となる被写体候補を選び出す方法である。例えば、被写体候補のうち、所定の大きさより大きく、かつその中で画面内に占める領域面積が最も大きく、さらに前段の図8で説明したマッチング処理の結果が撮像許可の対象となっている被写体候補を選べばよい。また大きさだけでなく、画面内での位置や角度、色等、複数の属性を用いて選んでも良い。このようにして被写体候補の中から主となる被写体候補を選び出す。
ステップS944での判断で主となる被写体候補が存在しなかった場合には、撮像すべき主となる被写体候補が存在しないということでステップS948に進み、いま撮像しようとしている画像データに対しては撮像抑止対象画像データとして設定する。しかし、ステップS944での判断で主となる被写体候補が存在する場合には、ステップS945に進み、更に主となる被写体候補とそれ以外の被写体候補の、属性情報である属性値との関係を得点化する。ステップS945での得点化には、カメラパラメータを用いてもよい。
即ち、図10に示すような参照テーブル1000にしたがって得点を算出する。例えば、撮像モードがポートレートである場合、被写体候補の被写体カテゴリ情報が人物でサイズが大きければ得点を高くする。また、例えば被写体候補の被写体カテゴリ情報が夜景モードで人物が大きく写っている場合には、マイナスの得点を与える等とすることもできる。さらに、図11に示すように、カメラパラメータと、主となる被写体候補と、主とはならない被写体候補の被写体カテゴリ情報の属性値の関係について参照テーブル1100等を用意することによって得点を算出することもできる。
図には示さないが、得点の算出の際に、この他の被写体候補の画像データ内での位置や、主となる被写体候補、主とはならない被写体候補の画像データ内での位置関係も用いても良い。このようにして、カメラパラメータと被写体候補そのもの、およびカメラパラメータと主被写体候補及び非主被写体候補の関係を加味した、撮像対象を評価する画像データの得点評価がなされる。次にステップS946に進み、算出された得点が所定値より低い場合にはステップS948に進み、いま撮像しようとしている画像データを撮像抑止対象画像データとして設定する。一方ステップS946で、算出された得点の値が所定値より高い場合にはステップS947に進み、いま撮像しようとしている画像データを撮像許可の対象の画像データとして設定する。以上のようにして、撮像抑止統合判定部84の処理が行われ、判定情報が出力されることとなる。
次に、図2で説明したステップS208の撮影者に通知する際の通知処理について、図12を用いて詳しく説明する。たとえば図12に、通知部9の表示部10に画像データを表示する場合を示している。図12は、撮像モードがポートレートで、画面内の人物の大きさと位置が不適切で、撮像に適さない画像データである場合の一表示例である。図中の1251は、撮像に適さないと判断された要因となった被写体候補を識別可能に囲む識別用の枠であって、いま撮像しようとする画像データ中の被写体候補の画面に重畳して表示される。図中の1252は、抽出された被写体候補のカテゴリと属性を表示する文字列である。ここでは、表示の一例として、被写体のカテゴリ名、大きさ、画面上での位置等を示している。この例では、表示形式が文字列であるが、例えばアイコンなどを使用した別な表示方法を用いても良い。また、画面上での位置は、画面左上の隅を原点とする2次元座標系の数値で示しても良い。さらに主となる被写体候補である主被写体候補には、それを示す文字列やアイコンを付加し、撮影者に提示するようにしてもよい。
また図中1253は、撮影者に対する撮像を抑止するためのメッセージ表示である。画像データ中の被写体候補の情報から、この画像データが撮像に適さないと判定した判定結果を撮影者に警告のために提示している。ここでは結果を文字列で示しているが、これを撮像を抑止することを表すアイコンに変えても良い。
また画像データの撮像を抑止する結果だけでなく、撮像抑止と判定された理由を示しても良い。例えば、次のようにしてこの画像データの撮像が不適であるの判定理由とする。つまり、図6の撮像抑止統合判定部84で、属性の得点算出に際し最も寄与の大きかった項目を撮像不適の判定理由とする。この場合の表示方法は、例えば不適の判定理由の最も寄与の大きかった被写体候補に色を変えた枠を重畳表示することなどが考えられる。また、全ての若しくは一部の被写体候補の属性表示に得点そのものを表示しても良い。
なお、ここでは通知部9の説明として、液晶画面に画像表示する例を挙げたが、本発明がこれに限定されないことは前述した通りである。通知する手段は、例えば音声スピーカーからの電子音、音声による音響発生部11や、撮像装置100のグリップ部を振動させる振動発生部12を用いるなど、撮影者に撮像抑止の情報を伝えることができる手段ならば、どのような手段を用いても良い。
以上説明した実施形態1によれば、撮像モードや撮像の画角等の情報から、撮影者の意図しない被写体が画角内にある場合、その画像データの撮像を抑止する判定結果を撮影者に、その旨の表示、警告音や振動等で通知する。それにより、撮影者が、意図しない被写体を含む構図の画像データを誤って撮像してしまうことを抑止することが可能になる。
<実施形態1の変形例>
上記の実施形態1では、いま撮像しようとする画像データが撮像抑止対象画像データとして判定された場合に、撮影者にその旨を通知する例を説明したが、通知するだけでなく実際の撮像を禁止するようにしても良い。本変形例では、実際の撮像を禁止する場合について説明する。なお撮像装置100の基本的な構成及び処理は、上述した実施形態1と同様であるため、ここでの説明は実施形態1と異なる部分について説明する。
図13は、実施形態1の変形例の処理の流れを表した処理のフローチャート図である。上記実施形態1で使用した図2で説明したフローチャート図の、ステップS208における処理が、図13では、ステップS1358の撮像禁止処理に変わっている点のみが異なる。この撮像禁止処理のステップS1358では、図14のフローチャート図に示したような処理が行われる。
まず、ステップS1460において、撮影者によって撮像装置100の操作部13にあるシャッタボタンが押された場合、ステップS1461に進み、図1に示した撮像制御部4によって、シャッタ信号をブロックしてシャッタ動作を禁止する。その後撮影者には、ステップS1462において、撮像しようとする画像データが撮像抑止対象画像データであるためにシャッタを禁止していることを、図1の通知部9の表示部10によって通知する。シャッタが押されていないときであっても、ステップS1463において、図1の通知部9により撮影者にシャッタが禁止状態であることを通知しておく。
図15は、実施形態1の変形例において、通知部9の表示部10を使用した場合の表示例である。図中の1561のメッセージ表示部に、シャッタが禁止状態であることを撮影者に通知するメッセージを表示している。シャッタを押した際のメッセージは、例えば「シャッタ動作禁止です。表示を参考にして、構図を調整して下さい」などと表示する。このメッセージ表示部に表示する情報ついては、上記の実施形態1と同様に、シャッタ禁止情報だけでなく、その理由や主な撮像抑止対象被写体候補を表示するなどしてもよい。また、通知部9としては、表示部10に限らず、シャッタボタンを押した際、電子音で禁止状態を知らせるように音響発生部11を使用してもよい。あるいは、撮像装置100本体若しくはその一部、例えばグリップ部などを振動させる振動発生部12を使用することによって通知するようにしても良い。
以上説明した通り、上記の実施形態1の変形例によれば、撮像モードや撮像画角等の情報から、撮影者の意図しない被写体が画角内にある場合、その画像データの撮像を積極的に禁止する。これにより、撮影者が誤って撮影者の意図しない被写体の含まれる画像データを撮像してしまうことを防ぐことが可能になる。
<実施形態2>
本実施形態2では、先の実施形態1に対して以下の点が異なる。即ち、撮像する画像データが撮像抑止対象画像データであると判断した場合に、撮像する画角を調整するよう撮像状態を制御する処理が行われる点が異なる。
以下、本実施形態2を具体的に説明する。なお重複を避けるため、以下の説明において、前の実施形態1と同じ部分は説明を省略する。図16は、本実施形態2に係る撮像装置100の処理のフローチャート図の一例を表したものである。この図16に示したフローチャート図を参照しながら、撮像する画像データが撮像抑止対象画像データである場合に、この撮像装置100が撮像抑止対象画像データとならない画角に調整する処理について説明する。なおこの処理は、撮影者がシャッタを押したタイミングでなされても良いし、撮像装置100が動作している間、継続的に行われていても良い。
図16の処理のフローチャート図は、図2の処理のフローチャート図におけるステップS208での処理が、図16のステップS1678で示す撮像範囲調整処理に変わっている点が異なる。図16の処理のフローチャート図においては、基本的にステップS1677までは、上記の実施形態1と同様の処理が行われる。
図16のステップS1677で、撮像する画像データに対して撮像抑止対象画像データと判定された場合に、ステップS1678に進み、撮像範囲調整処理が実行される。図17は、ステップS1678における撮像範囲調整処理の処理のフローチャートを表したものである。まず始めに、ステップS1780において、たとえば通知部9を使用して撮影者に、画角調整処理を行っていることを通知する。例えば、図18の1871で示すメッセージ表示部に、現在、画角調整中である旨の情報を表示する。また、上記の実施形態1の変形例のように、積極的に撮像動作を禁止するようにしてもよい。この場合も撮影者には、撮像を禁止する旨のメッセージを通知部9に含まれる表示部10に表示することも可能である。さらに、図18に示すように、画角調整を行うパン、ティルト、ズーム等の駆動信号を使用し、例えば1872で示すパン方向を表す矢印等を表示しても良い。
次に、ステップS1781に進み、画角調整を行う。画角調整の処理については、後に詳しく説明する。画角調整が行われた後はステップS1782に進み、調整後の画像データについて画像データ判定処理が行われる。その後ステップS1783では、画角調整が終了したかを判定し、終了していない場合はステップS1780に戻り、更に調整を行い、判定処理もおこなう。一方、ステップS1783で調整が終了していると判定された場合には、ステップS1784に進み、通知部9を使用して撮影者にその情報を通知する。ここで、ステップS1782の画像データ判定処理は、画角調整した後に改めて画像データを取り込み、撮像抑止対象画像データか否かを判定するための処理であり、典型的には次のように行われる。即ち、新たに取得した画像データに対して、図16のステップS1671からステップS1677までの処理と同様の処理を行うようにすればよい。
また、他の例としては、撮像抑止対象被写体候補となっている被写体候補が全て画角内に入らないことを判定基準として、画像データが撮像抑止対象画像データでないか判定するような処理であっても良い。上記は処理の一例であるが、本質的には、画像データが撮像抑止対象画像データとならない画角調整を行うような判定がここでの処理の目的である。
画角調整の終了後に撮影者に対して行う通知は、通知部9に含まれる表示部10のモニタ表示でメッセージ表示を行っても良いし、上記の実施形態1で既に述べた音響発生部11や、振動発生部12を使用した通知を行っても良い。
次に、ステップS1781の画角調整の内容について説明する。図19は、画角調整の処理の一例を示した処理フローチャート図である。まず、ステップS1990では、画像データ中の被写体候補のカテゴリ情報、属性情報およびカメラパラメータを取得する。続いてステップS1991に進み、被写体候補のうちで、最も寄与の小さい被写体候補を選び出す。具体的な例としては、被写体候補の属性値のうち、図9のステップS945で算出された被写体候補の得点について、最も値が低いものを選ぶなどすれば良い。最も値が低い被写体候補を選び画角調整することによって、画角調整量を最小にできる可能性が高くなる。この画角調整によって、画像データが撮像抑止対象画像データであると判定される要因となった被写体候補を、撮像抑止対象被写体候補から外すことができる。
次に、ステップS1992に進み、選出された被写体候補が、画角が変わることによって、その被写体候補の寄与が最も増加する方向を探す。具体的には、画像処理により、画像データに対して画角調整を行った場合の画像データを仮想的に作り出して、被写体候補の得点を計算して評価するなどすればよい。そして、最後のステップS1993において、選ばれた方向にパン、ティルト、ズーム等の制御信号を結像光学系制御部3に供給し、結像光学系1に設けられらた駆動機構を使用してパン及びティルト方向の駆動制御を行うことで画角調整を実行する。
なお、図19の画角調整処理の説明では、被写体候補を属性情報を用いて得点化し、寄与が小さいものを、その被写体候補の寄与が増加する位置にするような処理について述べたが、本発明はこれに限定されるものではない。例えば、被写体候補の位置関係と大きさから、主被写体候補が画面上の中央に配置されるような画角調整を行うような処理を行っても良い。また、被写体候補の動きベクトル情報を使っても良い。撮像モードが風景など、動きのある領域を被写体候補として取り除きたい場合は、一定サイズ以上のまとまった動きベクトル量を有する領域を、撮像抑止対象領域として抽出しておき、画角調整の基準として用いることもできる。
なお、ここでは撮像装置100は所定位置に固定して設置されているものとする。手持ち撮像を行う場合には、撮像装置100そのものの動きに伴うグローバルな動きベクトル量(Ego−motionベクトル)を抽出する。そして、それを全体の動きベクトル分布から相殺した後に動きベクトル量に基づく領域分割を行う。これにより人物など動きのある被写体候補の候補領域を求めることができる。
以上、いくつか例を挙げて画角調整について説明したが、撮像抑止の判定がされないような画角の調整を行うことが、この実施形態2の処理の目的であり、個々の手法や判定基準などは本実施形態の本質でないことは言うまでもない。
<実施形態3>
本実施形態3では、第1の実施形態に対して以下の点が異なる。即ち、撮像抑止対象カテゴリ情報やその属性情報を撮影者が指定し、追加可能とする撮像抑止対象カテゴリ指定手段を持つ点が、実施形態1と異なる。以下、本実施形態3を具体的に説明する。なお重複を避けるため、以下の説明において、図1に追加された撮像抑止カテゴリ指定部14及び多少構成が変更された撮像抑止判定部8’以外の上記実施形態1と同じ部分は、同じ参照番号を使用して詳しい説明は省略する。
即ち、図20において、実施形態3に係る撮像装置100’の構成要素としては、実施形態1の撮像装置100と比較して、撮像抑止カテゴリ指定部14が新たに加えられていると共に、多少構成が変更された撮像抑止判定部8’を備える。この撮像抑止カテゴリ指定部14は、撮像装置100’にある操作部13に含まれるものとする。また、表示部10に表示されたメニューから操作部13の撮像抑止カテゴリ指定部14で選ぶ形式であっても良い。さらには、所定の手順に従って、新たに撮像抑止被写体カテゴリ情報に加えたい被写体候補の情報を撮像装置100’に対して指定する形式であっても良い。後者は、具体的には予め撮影者が撮像した画像データを表示部10で見ながら、撮像抑止カテゴリ指定部14で被写体候補を指定して、撮像抑止被写体カテゴリ情報を登録しても良い。
図21は、撮像抑止カテゴリ指定部14が、表示部10でのモニタ表示によるメニューを使用して指定可能とする場合の一例である。画像データ中の被写体候補である人物を指定して、抑止する被写体カテゴリ(この場合は人物)とその一致レベルを指定するメニュー2181がある。撮影者は、このメニュー2181から、撮像を抑止したい人物とそのレベルを指定することができる。例えば、図中のメニュー2181の「1、このカテゴリ(人物)を抑止」を指定した場合は、「人物」というカテゴリに属する全ての被写体候補を撮像抑止対象被写体候補とする。「2、このカテゴリ(人物)と大きさ(中サイズ)を抑止」を指定した場合は、人物が画面上の被写体枠2182と同じサイズであるときに撮像抑止対象被写体候補の撮影抑止カテゴリとすることができる。
以下同様に、被写体候補のカテゴリ情報と属性情報を組み合わせた指定をすることによって、常にある被写体の撮像が抑止されてしまうような状況を避けることができる。また、「5、この個体(この人物)を抑止」を選択した場合は、「人物」全体ではなく、特定の人物のみを撮像抑止対象被写体候補とする。また、「6、この個体(人物)以外を抑止」とした場合には、例えば、自分の家族以外など指定した以外の人物が被写体として画角内に入ってきたときに、撮像抑止対象被写体候補とすることができる。さらに、「7、この個体(人物)以外、かつカメラ目線であるものを抑止」を選択した場合は、登録した人物以外が、カメラに視線を向けた場合に撮像抑止対象被写体候補とするものである。このように、撮像抑止対象被写体候補を追加して指定することで、例えば風景を主となる被写体候補として撮像したい場合に、不自然な構図を避けることができる。
ここで、図21のメニュー2181中の「6、この個体(人物)以外」を選んだ場合のように、あるカテゴリ以外を指定した場合には、撮像抑止判定処理において、実施形態1とは一部判定を逆にすれば、容易に処理を実行できる。以下具体的に説明する。ここでは、「カテゴリA(人物)」以外の被写体候補を撮像抑止対象被写体候補とした場合とする。図8のフローチャート図で、撮像抑止対象カテゴリの被写体の人物を「カテゴリA」して、被写体候補のカテゴリと「カテゴリA」と比較する。ここで、被写体候補のカテゴリと「カテゴリA」とが一致した場合には、その被写体候補は撮像抑止対象被写体候補としてさらにその属性値の比較を行い、属性値が一致した場合に、最終的に撮像抑止対象被写体候補として判定する。
また、上記のように、表示画面の被写体枠2182で表示された被写体候補を選択するのではなく、撮影者が、画像データに対して直接的に領域を指定して、撮像抑止対象被写体候補を指定してもよい。具体的には、表示画面に表示された画像データに範囲を指定するメニューや、座標を入力する手段が備えられ、撮影者は、それらを用いて画像データ中で撮像を抑止したい領域を直接指定する。この入力手段は操作部13に含まれるものであってもよい。
次に、変形された撮像抑止判定部8’の構成について説明する。図22は、本実施形態3での撮像抑止判定部8’の一構成例を表すブロック図である。これは、実施形態1に対して、撮像抑止対象カテゴリ特徴抽出部85を持つ点が異なる。この撮像抑止対象カテゴリ特徴抽出部85は、上述したように撮影者が、新たに撮像を抑止したい被写体候補を登録しようとした場合に、その被写体候補から特徴となるカテゴリ情報およびその属性情報を抽出する処理を行う。
次に、撮像抑止対象カテゴリ特徴抽出部85での特徴抽出処理について、さらに詳しく説明する。なおここでは、新たに登録する撮像抑止対象カテゴリを「特定の人物」として個人識別の場合を説明する。なお当然のことであるが、本実施形態においては人物の個人識別について限定されるものではない。
図23は、撮像抑止対象カテゴリ特徴抽出部85で行われる処理のフローチャートを表したものである。始めに処理の開始後ステップS2310において、撮像する画像データに含まれる被写体の被写体候補情報や、カメラパラメータ等が取得される。被写体候補の被写体候補情報は、被写体候補情報抽出部7によって得られた被写体候補カテゴリ情報及びその属性情報等である。撮像抑止カテゴリ指定部14からの入力が、画像データの領域情報であった場合は、被写体候補情報抽出部7で指定された領域の画像データを改めて入力し、被写体候補情報としての被写体候補カテゴリ情報等を取得すればよい。
続いて、ステップS2311に進み、被写体候補の状態検出処理が行われる。被写体候補の被写体候補カテゴリ情報が人物であった場合には、典型的には顔検出が行われる。角度によっては顔が正面から見えない場合があるが、その場合には、頭部から肩にかけてのシルエットなど、その人固有の特徴が抽出されるような処理が行われる。この処理については、後に詳しく説明する。人物の場合には顔の傾き、大きさ等が検出された後、さらに性別や個人、表情などを表す特徴量となる目、鼻、口等の形状や位置関係等が検出され、顔の状態を調べる。
その後ステップS2312に進み、さらに、後述する検出された状態に基づく特徴抽出用の処理モジュールが選択される。そしてステップS2313では、特定部位での輝度ベクトル抽出やFFT(高速フーリエ変換)による特定周波数の成分抽出といった特徴抽出処理が行われる。抽出された特徴量は、ステップS2314において、その人物固有の情報として被写体候補カテゴリ情報及び属性情報とともに、撮像抑止情報記憶部82に追加登録される。
図24は、撮像抑止対象カテゴリ特徴抽出部85の一構成例を表すブロック図である。状態検出部851では、撮影者または本実施形態3の撮像装置100’のモードにより指定された、例えば「顔」などの被写体候補のカテゴリに関する属性情報として状態クラスの検出を行う。状態クラスは、撮影者または本実施形態3の撮像装置100’のモードにより指定されたカテゴリを大分類の状態クラスとし、その他中分類及び小分類のレベルで状態検出を行う。
状態カテゴリとしては、検出される物体の種類に応じて、例えば本実施形態3のように人物であれば、表情、顔の向き等が予め分類されて所定のメモリに格納され、顔の表情や向きの検出を行う。図25にメモリに格納される物体の種類ごとに木構造で分類された状態クラスの例を示す。図25に示すように、顔の向きとしてはパン方向、ティルト方向に細分化されたクラスが予め定められている。顔の状態クラスを検出する場合、まず顔の目尻、口元など性別や表情、顔の向きの検出に有効な部位の特徴点の検出を行う。その結果、状態クラスとしては、「斜め向き」、「男性」、「大笑い」などのような状態カテゴリが検出される。
次に、図24の特徴抽出部852について説明する。特徴抽出部852は、状態検出部851で検出された顔の状態クラスでの特徴抽出処理を行う。図26に特徴抽出部852の一構成例を示す。ここでは、状態クラスは(Aクラス、Bクラス、、、、Xクラス)の形式で木構造に予め分類され、各状態クラスごとに一つの処理モジュール群がまとまって配列している。Aクラスは例えば、「顔」、Bクラスは「正面」などの顔の向き、Xクラスは「年齢」などのような状態を示す。
なお、状態クラスの分類形式は、このような木構造以外のほかの形式であっても良いことは言うまでもない。状態検出部851より検出された状態クラスに特化した特徴抽出処理モジュールを選択する制御部および選択されるべき特徴抽出処理モジュール群は、撮像抑止対象カテゴリ特徴抽出部85に内蔵される。あるいは、所定のメモリに格納されるプログラムとして、若しくはハードIPコアとして予め本撮像装置100’のシステムLSI内等に格納されている。
例えば、顔の状態が「正面」及び「男性」を状態クラスとして状態検出部851により検出したとすると、特徴抽出部852は、その状態クラスに対応する特徴抽出モジュールを選択する。各状態クラスに対応した特徴抽出モジュールは、「正面」及び「男性」を識別する際に有効な特徴を抽出する。例えば、正面顔であれば、両目、鼻、口、ひげなどの位置、輝度情報などを用いる。仮に状態クラスが「横顔」及び「女性」であった場合には、両目の特徴を捉えることは不可能であり、ひげが検出される可能性も低く、このように異なった特徴抽出の選択を可能にすることで、識別性能を向上させることができる。
上記のようにして特徴を抽出した後に、例えば特定の状態カテゴリにある特定の二人の顔を識別可能とするような識別装置を構成する。これは、例えば、サポートベクトルマシンの学習により生成することができる。学習は、例えば、特定状態カテゴリ(ここでは、「正面」及び「笑顔」)を中心とするある範囲の、例えば、正面から±20度の範囲で顔の向きが横向きになっている顔である。したがって、(様々な年代の男性の顔を含むある程度広範な)特定の二人に関する顔データセット用いて、その二人を識別するようにサポートベクトルマシンをトレーニングする。なお、所謂one−against−allタイプのサポートベクトルマシンを生成してもよい。この場合、識別する個体数だけサポートベクトルマシンをトレーニングにより生成すればよい。
また、この特定のカテゴリの状態クラスについてこのようなバイナリの識別を行うサポートベクトルマシンを全てのペアの組み合わせ数だけ学習により生成してもよい。マッチング処理の時には、全てのペアの組み合わせについて実行するのではなく、2本木認識方式を用いれば、クラス数−1回の比較をすればよい。
2本木認識方式は、文献の、Guo, Li, and Chan “Face Recognition by Support Vector Machines, in Proc. of 14th International Conf. on Automatic Face and Gesture Recognition, 2000に示される。但し、このような識別モジュールの生成を全ペアの全状態クラスについて予め行っておくのは困難である場合がある。
そこで、識別モジュールの生成は、状態クラスの検出を行った結果、識別できなかった人物について事後的にかつ蓄積的に生成するようにしてもよい。例えば、検出されたある特定の状態カテゴリについて識別ができない場合(若しくは、識別結果の信頼度が低いと推定される場合)、その状態クラスの同一人物の顔画像データを用いて学習を行うなどの方法による識別モジュールの生成を試みてもよい。
また、変動に強い識別を行うためには、画像のサンプルは多いほど良い。時系列データを用いて、姿勢や照明の変動を含んだ学習データを作ることで、後のマッチング処理の際に、ロバストな個体識別が可能になる。
以上が、撮像抑止対象カテゴリを撮影者が指定した場合の処理であるが、次に、これを検出してマッチング処理する(以下、個体マッチング処理)場合について説明する。以下は、実施形態1の図8で説明した被写体候補の属性の一致を判定する処理であるステップS833及びS834での処理に対応する。
個体マッチング処理では、特徴抽出と同じように、被写体候補の状態クラス検出が、予め行われる。状態クラスが検出されたのち、状態クラスに対応した識別モジュールが起動される。状態クラスと識別モジュールの構成は、例えば、図26の特徴抽出モジュールの場合と同一の構成をとることが望ましい。
個体マッチング処理の各モジュールとしては、前述のサポートベクトルマシンをベースにした方法のほかに階層的神経回路網や統計的パターン認識の手法を用いても良い。例えば、階層的神経回路網として畳み込み神経回路網を用いた方法をベースしてもよい。
この方法は、文献:Lawrence et al.,“Face Recognition: A Convolutional Neural-Network Approach, IEEE Transactions on Neural Networks, vol.8, pp.98-113, 1997に示されている。この場合、状態クラス毎に学習用顔画像データを用意する特徴抽出モジュールと、個体認識用処理モジュールの生成が必要である。
このように顔の識別時と学習時ともに先ず状態クラス(顔の向きや性別など)を判定し、その結果に基づいて特定の状態クラスに特化した識別モジュールの生成を行う。或いは学習済みの特定の識別モジュールを選択的に起動(必ずしも一つの識別モジュールとは限らない)して個体の識別動作を行う。選択的起動の仕方としては、検出された状態クラスを中心としてその近傍にあるクラスに対応する個体認識モジュールの起動を行っても良い。
以上のように、本発明の実施形態3に係る撮像装置においては、被写体候補情報の予め設定された種類の状態クラス(性別、顔の向きなど)の何れに属するかの判定(比較的軽い処理)を個体認識に先立って行う。これにより、特徴空間内での個体識別のための探索範囲が効率的に絞り込まれ、その後に検出された状態クラスに特化して生成された識別モジュールによる識別動作を実行する。
以上の処理により、画像データに含まれる被写体候補の被写体候補情報を判定することで、その画像データが撮像抑止対象画像データか否かが判定され、判定情報を出力することができる。
本実施形態3では、被写体候補の被写体候補情報の全ての状態クラスを含む集合の中で個体識別を行う場合と比べて、より効率的にかつ高い精度での認識が可能となる。以上のように、撮影者が指定する撮像抑止対象カテゴリに対しても、特徴の抽出とマッチング処理を行うことにより、撮像抑止の判定が可能である。なお、本発明は、その画像形式が静止画であっても、動画であっても良く、そのどちらかに限定されるものではない。
<その他の実施形態>
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給しても達成可能である。すなわち、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性の半導体メモリカード、ROMなどを用いることができる。また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される場合もある。
さらにそのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる場合もあり得る。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。