(57)【要約】【課題】  ベクトル検出による手ぶれ補正機能を有したカメラにてぶれ補正を行う場合、人を追っかけて撮ろうとすると背景の動きを止めるような動作になりやすく、撮影者の意図に反して非常に見づらい画となる。【解決手段】  本発明の撮像装置は、画像を複数のブロック領域に分割して、分割されたそれぞれのブロック領域ごとに動きベクトルを検出し、画像から人の顔を検出し、顔検出によって顔が検出されたとき、分割された複数のブロック領域の中から顔およびその周辺部に位置する所定のブロック領域を選択し、選択されたブロック領域の動きベクトルの度数に対して所定の重み付けを行い、それぞれのブロック領域ごとの動きベクトルを、動きベクトルの大きさを階級として度数分布上に、重み付けを施した度数に基づいて振り分け、度数の大きさに基づいて、代表動きベクトルを決定し、代表動きベクトルに基づいて画像を補正する。【選択図】  図２
2010114752.tif 000002
【特許請求の範囲】
【請求項１】
画像を複数のブロック領域に分割して、分割されたそれぞれのブロック領域ごとに動きベクトルを検出するベクトル検出手段と、
前記画像から人の顔を検出する顔検出手段と、
前記顔検出手段によって顔が検出された場合に、前記分割された複数のブロック領域の中から前記顔およびその周辺部に位置する所定のブロック領域を選択する選択手段と、
前記選択手段によって選択されたブロック領域の動きベクトルの度数に対して所定の重み付けを設定する設定手段と、
前記動きベクトルの大きさを階級として、前記設定手段により重み付けを設定した度数に基づいて前記それぞれのブロック領域ごとの動きベクトルを度数分布上に振り分ける分類手段と、
前記度数の大きさに基づいて代表動きベクトルを決定する決定手段と、
前記代表動きベクトルに基づいて画像のぶれを補正するぶれ補正手段とを有する撮像装置。
【請求項２】
パンニング状態であるかどうかを検出するパンニング検出手段と、
前記顔検出手段により検出された顔の位置が移動したかどうかを判定する位置判定手段とをさらに有し、
前記パンニング検出手段によりパンニングが検出され、かつ、前記位置判定手段により顔の位置が移動していないと判定されたときは、前記選択手段は前記分割された複数のブロック領域の中から前記顔およびその周辺部に位置する所定のブロック領域を選択することを特徴とする請求項１記載の撮像装置。
【請求項３】
前記選択手段により選択される領域は、前記顔検出手段により検出された顔と、前記顔に対応する胴体部分のブロック領域であることを特徴とする請求項１又は２に記載の撮像装置。
【請求項４】
前記選択手段により選択される領域の大きさは、検出された顔の大きさに基づいて変化することを特徴とする請求項１ないし３何れか１項に記載の撮像装置。
【請求項５】
前記重み付け設定手段によって設定される重み付けの量は、前記選択手段により選択された領域の大きさにより変化することを特徴とする請求項１ないし４の何れか１項に記載の撮像装置。
【請求項６】
前記顔検出手段により検出された顔の周辺部に位置する所定のブロック領域の画像の色を検出する色検出手段と、
前記色検出手段により検出された色が変化したかどうかを監視する監視手段とをさらに有し、
前記顔検出手段による顔の検出がなされなくなった後、前記監視手段により色が変化したことが検出されたときに、前記重み付け設定手段により設定した重み付け量を変更することを特徴とする請求項１ないし５の何れか１項に記載の撮像装置。
【請求項７】
前記顔検出手段により検出された顔が複数ある場合は、前記画像の中央部にある顔およびその周辺の領域に対して前記重み付け設定手段による重み付けを行うことを特徴とした請求項１ないし６の何れか１項に記載の撮像装置。
【請求項８】
前記顔の大きさが所定の大きさよりも小さい場合は、前記重み付け設定手段による重み付けを行わないことを特徴とする請求項１ないし６の何れか１項に記載の撮像装置。
【請求項９】
画像を複数のブロック領域に分割して、分割されたそれぞれのブロック領域ごとに動きベクトルを検出するベクトル検出工程と、
前記画像から人の顔を検出する顔検出工程と、
前記顔検出工程によって顔が検出された場合に、前記分割された複数のブロック領域の中から前記顔およびその周辺部に位置する所定のブロック領域を選択する選択工程と、
前記選択工程によって選択されたブロック領域の動きベクトルの度数に対して所定の重み付けを設定する設定工程と、
前記動きベクトルの大きさを階級として、前記設定工程により重み付けを設定した度数に基づいて前記それぞれのブロック領域ごとの動きベクトルを度数分布上に振り分ける分類工程と、
前記度数の大きさに基づいて代表動きベクトルを決定する決定工程と、
前記代表動きベクトルに基づいて画像のぶれを補正するぶれ補正工程とを有する撮像方法。
【請求項１０】
請求項９に記載の撮像方法をコンピュータに実行させるためのプログラム。
【請求項１１】
請求項１０に記載のプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は動きベクトルを検出して手ぶれ補正を行うぶれ補正装置を搭載した撮像装置及び撮像方法及びプログラムに関するものである。
【背景技術】
【０００２】
ビデオカメラなどの動画像を撮影する撮像装置においては、特にレンズを望遠側にズームしたときに、手ぶれにより画像がぶれることが問題となる。このような手ぶれによる画像のぶれを防止するために、従来より撮影した画像信号から画像の動きベクトルを検出し、この動きベクトルに基づいて画像のぶれを補正する技術が提案されている。また、撮影中に、撮りたい人の顔にピントを合わせるために、画面内にある人間の顔の部分を検出する技術がある。
【０００３】
動きベクトルを検出し、画像のぶれを補正する技術の中で、画像の動きベクトルを検出する方法としては、従来より、相関演算に基づく相関法やブロックマッチング法等が知られている。
【０００４】
ブロックマッチング法では、入力された画像信号を複数の適当な大きさのブロック領域（例えば８画素×８ライン）に分割する。そして、このブロック単位で前のフィールド（またはフレーム）の一定範囲の画素との差を計算し、この差の絶対値の和が最小となる前のフィールド（またはフレーム）のブロックを探索する。そして、画面間の相対的なずれが、そのブロックの動きベクトルを示している。
【０００５】
また、マッチング演算については、尾上守夫等により、情報処理Ｖｏｌ．１７，Ｎｏ．７，ｐ．６３４  〜６４０  Ｊｕｌｙ  １９７６  で詳しく論じられている。
【０００６】
ブロックマッチング法を用いた従来の動きベクトル検出法の一例を、図面を用いて説明する。図１１は従来の動きベクトル検出法によりぶれを防止する装置の概略ブロック図である。
【０００７】
まず動きベクトルの検出対象となる画像信号（フィールドまたはフレーム）が画像メモリ９及び空間周波数成分を抽出するフィルタ２に加えられる。画像メモリ９は画像信号を一時記憶する。フィルタ２は画像信号から動きベクトル検出に有用な空間周波数成分を抽出する。即ち、画像信号の低空間周波数成分及び高空間周波数成分を除去する。
【０００８】
フィルタ２を通過した画像信号は２値化回路３に加えられる。２値化回路３は画像信号を、ゼロレベルを基準として２値化する。具体的には出力信号の符号ビットを出力する。２値化された画像信号は相関演算回路４及び１フィールド期間遅延手段としてのメモリ５に加えられる。相関演算回路４には更にメモリ５から前フィールドの画像信号が加えられている。
【０００９】
相関演算回路４はブロックマッチング法に従い、上記のように適当な大きさのブロック領域に画像領域を分割し、ブロック単位に現フィールドと前フィールドとの相関演算を行い、その結果の相関値を動きベクトル検出回路６に加える。動きベクトル検出回路６は算出された相関値からブロック単位の動きベクトルを検出する。具体的には相関値が最小となる前フィールドのブロックを探索し、その相対的なずれを動きベクトルとしている。このブロック単位の動きベクトルは動きベクトル決定回路７に加えられる。動きベクトル決定回路７はブロック単位の動きベクトルから全体の動きベクトルを決定する。具体的には、ブロック単位の動きベクトルを縦と横のベクトルにし、縦、横それぞれの動きベクトルに対し大きさ度数としたヒストグラムを作成する。
【００１０】
図１０において、（Ａ）は、撮像画像、（Ｂ）は、検出されたブロックごとの動きベクトル、（Ｃ）は検出された動きベクトルの、縦と横それぞれのヒストグラムを示している。このようにヒストグラムを作成し、度数がピークとなったところを、全体の動きベクトルとしている。
【００１１】
動きベクトル決定回路７は決定した画像全体の動きベクトルをメモリ読み出し制御回路８に加える。メモリ読み出し制御回路８は上記の全体の動きベクトルに応じて画像の動きが相殺されるように画像メモリ９の読み出し位置を制御し、画像メモリ９からぶれが補正された画像信号が出力される。
【００１２】
しかしながら、上記の方法では、移動している人物を追いかけながら撮影する場合、人物の画面に対する割合が小さいときは、背景のベクトルに対する度数が増加してしまう。そのため、背景が画面内の元の位置にとどまるように画像メモリの読み出し位置が変化し、それにより本来動きがないはずである画面内の領域の位置が変化するため、画面が背景に引っ張られたような動きをしてしまう。
【００１３】
この問題点を解決する方法として、特許文献１には、次のような方法が開示されている。即ち、動きベクトルの大きさの絶対値が小さい方が補正すべき動きベクトルであり、大きい方が移動物であるという識別方法を用いることにより、背景に引っ張られるような動きを回避している。
【００１４】
また、動きベクトルによるパンニング検出方法としては、特許文献２には、各検出領域における動きベクトルの大きさがほぼ一定で、所定時間継続しているかどうかで判定する方法が開示されている。
【００１５】
次に、顔検出に関する技術としては、特許文献３に認識された顔領域を含む焦点検出エリアを設定し、焦点検出を行う方法が開示されている。
【特許文献１】特許第２９５６０５６号公報
【特許文献２】特許第３０３９６６９号公報
【特許文献３】特開２００６−２２７０８０
【発明の開示】
【発明が解決しようとする課題】
【００１６】
上記の特許文献１の方法は、撮像装置のぶれが比較的小さい場合や、撮像装置によって生じる画像が移動物の速度と比較して小さいときには有効である。例えば、撮像装置に装着される、又は撮像装置が備える撮像光学系の焦点距離が比較的短い場合等である。
【００１７】
しかしながら、撮像装置のぶれは、撮影環境や撮影者の熟練度等によってその大きさが変化する。また、撮像装置のぶれによって生じる画像は、上記撮像光学系の焦点距離に比例して大きくなっていく。さらに、人物の動きがゆっくりの場合は、背景の動きベクトル自体が小さくなる。そのため、人物を追いかけている（パンニング動作）時に発生する撮像装置の動きにより生じる動きベクトルと、人物等の移動被写体の手ぶれによる動きベクトルとの識別を、動きベクトルの大きさによってのみ行うと、誤差が大きくなる。その結果、実際の被写体と背景の動きを判別できずに、被写体の動きが非常に見苦しくなってしまう。
【００１８】
また、特許文献２では、パンニング検出時はカメラ自体が移動しているため、防振機能を停止する旨が記載されているが、被写体をカメラで追いかけている場合は、被写体に対するぶれ補正が行われないことになる。
【００１９】
従って、本発明は上述した課題に鑑みてなされたものであり、被写体をカメラで追いかけながら撮影するときに、人物を識別し、主要被写体に対するぶれ補正を抑え、結果としてスムーズに追従が行えるようにすることを目的とする。
【課題を解決するための手段】
【００２０】
上記問題を解決するために、本発明の撮像装置は、画像を複数のブロック領域に分割して、分割されたそれぞれのブロック領域ごとに動きベクトルを検出するベクトル検出手段と、前記画像から人の顔を検出する顔検出手段と、前記顔検出手段によって顔が検出された場合に、前記分割された複数のブロック領域の中から前記顔およびその周辺部に位置する所定のブロック領域を選択する選択手段と、前記選択手段によって選択されたブロック領域の動きベクトルの度数に対して所定の重み付けを設定する設定手段と、前記動きベクトルの大きさを階級として、前記設定手段により重み付けを設定した度数に基づいて前記それぞれのブロック領域ごとの動きベクトルを度数分布上に振り分ける分類手段と、前記度数の大きさに基づいて代表動きベクトルを決定する決定手段と、前記代表動きベクトルに基づいて画像のぶれを補正するぶれ補正手段とを有することを特徴としている。
【００２１】
また、上記問題を解決するために、本発明の撮像方法は、画像を複数のブロック領域に分割して、分割されたそれぞれのブロック領域ごとに動きベクトルを検出するベクトル検出工程と、前記画像から人の顔を検出する顔検出工程と、前記顔検出工程によって顔が検出された場合に、前記分割された複数のブロック領域の中から前記顔およびその周辺部に位置する所定のブロック領域を選択する選択工程と、前記選択工程によって選択されたブロック領域の動きベクトルの度数に対して所定の重み付けを設定する設定工程と、前記動きベクトルの大きさを階級として、前記設定工程により重み付けを設定した度数に基づいて前記それぞれのブロック領域ごとの動きベクトルを度数分布上に振り分ける分類工程と、前記度数の大きさに基づいて代表動きベクトルを決定する決定工程と、前記代表動きベクトルに基づいて画像のぶれを補正するぶれ補正工程とを有することを特徴としている。
【発明の効果】
【００２２】
以上説明したように、本発明によれば、顔を検出したとき、顔の位置とその下の体に相当する部分の領域の動きベクトルの大きさに対する度数に重み付けを行うことにより、人物に対する動きベクトルを検出しやすくなる。また、特にパンニング中に手ぶれを補正することができ、撮影者の意図通りの撮影を行うことが可能となる。
【００２３】
これによって、被写体をカメラで追いかけながら撮影するときに、被写体を識別し、主要被写体に対するぶれ補正を抑え、結果としてスムーズに追従が行えるようになる。
【発明を実施するための最良の形態】
【００２４】
（実施例１）
以下、本発明について図面を参照しながら詳細に説明する。図１は本発明の特徴を備えた撮像装置の構成を構成を示している。
【００２５】
図１において、１０１はレンズおよび絞りからなる撮像光学系、１０２はＣＣＤやＣＭＯＳセンサ等からなる固体撮像素子、１０３は撮影した画像に必要な信号処理を行う信号処理回路である。１０４は信号処理回路１０３で信号処理された画像を複数のブロック領域に分割する画像領域分割部、１０５は前記分割されたそれぞれの画像領域での動きベクトルを検出する動きベクトル検出部である。１０９は画像から、顔の位置を検出する顔検出部であり、画像に対して公知の顔認識処理を施し、撮影画面内の人物の顔領域を検出する。顔認識処理としては、例えば、画像で表される各画素の階調色から、肌色領域を抽出し、予め用意する顔の輪郭プレートとのマッチング度で顔を検出する方法がある。また、周知のパターン認識技術を用いて、目、鼻、口等の顔の特徴点を抽出することで顔検出を行う方法等が開示されている。１１０は顔検出部１０９により画像から顔の位置を検出された画像上の顔の位置から、顔を含んだ所定の画像領域を選択する画像領域選択部である。
【００２６】
１０６は画像領域選択部１１０により選択された画像領域の動きベクトルに対し、所定の重み付けを行う重み付け設定部である。１０７は各画像領域ごとの動きベクトルを、その大きさを階級とし、重み付け設定部１０６により重み付けを施した度数を基に度数分布上に振り分けてベクトルの分類を行うヒストグラム作成部である。１０８はヒストグラム作成部１０７により度数分布上に振り分けられた動きベクトルから、代表となる動きベクトルを決定する動きベクトル決定部である。１１２は動きベクトル決定部１０８により決定された動きベクトルから、記録または表示する画像の範囲を決める制御を行うメモリ読み出し制御部である。１１１は信号処理された画像データを記憶する画像メモリ、１１３は画像データをメモリカード、ハードディスク等の記録媒体に記録するための記録部である。
【００２７】
図２を用いて本実施例における重み付けを行う領域を説明する。
【００２８】
図２の例では、画面内に被写体が存在しており、その被写体が右側に動いているシーンを撮影しており、ビデオカメラを被写体に合わせて右側に動かしている（パンニング状態である）とする。また、動画撮影時は特定の周期でビデオカメラに画像を取り込んでいるので、前フレームと現フレーム（前フィールドと現フィールドでも可）の画像から動きベクトルを検出することができる。
【００２９】
２０１は画像領域分割部１０４で分割されたブロック（ベクトル検出領域）を示し、このブロック単位でフィールド間（フレーム間）の動きベクトルを取得する。顔検出枠２０２は顔検出部１０９にて画像から検出された顔の検出枠である。設定枠２０３は画像領域選択部１１０にて選択された設定枠であり、顔の検出領域とその下の部分が選択される。顔の下の部分も選択するのは、顔の下にはその人の胴体部があるため、顔と胴体に相当する部分を含んだ領域を選択するためである。この設定枠の大きさは、標準的な顔と胴体のバランスを考え、横方向は顔の２倍程度、縦方向は顔の４倍程度の大きさとしている。顔の部分のみを選択領域としないのは、顔の領域のみでは全体のブロック数に対する選択領域の割合が小さくなり、必要な被写体に対する動きベクトルの検出精度が低下するためである。
【００３０】
図３は、本発明の重み付け変更のフローチャートを示している。以下、図３を用いて、本発明によるベクトル検出の動作について説明する。
【００３１】
図３において、ステップＳ３００において、顔検出部１０９を用いて画像から顔の位置を検出する。
【００３２】
ステップＳ３０１において、画像領域選択部１１０によって、ステップＳ３００で画像内に顔が検出された場合は顔が検出されたと判定され、ステップＳ３０２に進む。ステップＳ３００で画像内に顔が検出さなかった場合は、画像領域選択部１１０によって、画像から顔が検出されなかったと判定され、ステップＳ３０６に進む。
【００３３】
図３のステップＳ３０２では、検出された顔の大きさから、画像領域選択部１１０にて設定枠の大きさを決めている。なお、画像領域選択部１１０にて選択された設定枠は図２の設定枠２０３に該当する。
【００３４】
次に、ステップＳ３０２にて領域を選択した後、ステップＳ３０３で重み付け設定部１０６により設定枠内の重み付け量を変更する。この重み付け量は、人を追いかけている時の画面内の大きさから、経験的に約４倍の重み付けとしている。しかし、設定枠の大きさが大きい場合と小さい場合で同じ重み付けを行った場合、設定枠が小さいと、重み付けをおこなったとしても主要な被写体の動きベクトルを決定するための度数が検出に必要な量まで増加しない可能性もある。そのため、設定枠が小さい場合、つまり選択領域の動きベクトル検出枠の数が少ない場合は、重み付け量を増やすようにしてもよい。この操作により、ヒストグラム作成時に必要な動きベクトルの大きさに対する度数が確保できるようにしている。
【００３５】
ステップＳ３０４では、ヒストグラム作成部１０７によって重み付けを行った度数によりヒストグラムが作成される。図４は、本発明を適用し、重み付けを行った場合に、動きベクトルの大きさに対するヒストグラム上の度数がどのように変化するかを示した図である。先ず、各ブロック（ベクトル検出領域）の移動ベクトルとして複数の移動ベクトルが検出される。その後に図４（Ａ）のように度数分布上にこの複数のベクトルの個数に相当する度数が属する階級に振り分けてプロットすることで分類し、各階級の度数（頻度）を得ることができる。なお、それぞれ範囲を持つ階級の階級値としては、その階級の上限値と下限値の中間値を用いればよい。また、Ｙ方向（画面縦方向）の処理とＸ方向（画面横方向）の処理は同様の処理を行うため、以下ではＸ方向の処理のみを例にとって説明を行う。
【００３６】
なお、図４（Ａ）のように重み付けを行う前においては、主被写体に対する動きベクトルのヒストグラムは度数が低く、このヒストグラムから求められる代表ベクトルは図４に示す背景領域の動きに対するベクトルとなる。これに対し、図４（Ｂ）は顔およびその周辺部に対する重み付けを行っている。この場合、主被写体部の度数が増加するため、検出される代表ベクトルは本来の被写体に対する動きベクトルとすることができる。このように、顔を含んだ所定の領域を選択し、かつ領域の大きさに応じて重み付け設定を変更することで、主被写体の大きさに依存することなく主被写体に対するぶれ補正を行うことが可能となる。
【００３７】
ステップＳ３０５では、ステップＳ３０４によって作成されたヒストグラムを用いて、動きベクトル決定部１０８は代表ベクトルを決定する。
【００３８】
ステップＳ３００にて、画像から顔が検出されていない場合は、ステップＳ３０１からステップＳ３０６に進むが、ステップＳ３０６では画像領域選択部１１０において重み付けを行うための設定枠を無効にする。
【００３９】
ステップＳ３０７では、重み付け設定部１０６が重み付け量をリセットする。その結果、顔が検出されていない場合は、図４（Ａ）のような重み付けをしていない従来のヒストグラムを作成し、そこから代表動きベクトルが決定されることになる。
【００４０】
以上説明したように、顔検出を用いて画像から検出された顔の部分と胴体に対応する部分の領域を選択し（設定枠を設定し）、選択した部分のベクトルの大きさに対する度数に重み付けを行うことで、高い精度で主要被写体に対する動きベクトルを検出可能になる。その結果として、撮影者が意図した通りに被写体に対するぶれのみを補正することが可能となる。
【００４１】
（実施例２）
図５は、本発明の第２の実施例を示した構成図である。図５において、図１と同じ構成のものは同じ符号を付し、説明は省略する。
【００４２】
５０１はパンニング検出部である。パンニング検出部５０１では、各動きベクトル検出領域に対するベクトルの時間的変化を観察し、動きベクトル検出領域のうち、同じ方向の動きベクトルが所定数以上ある場合に、パンニング動作がなされていると判断する。
【００４３】
５０２は顔検出位置判定部である。顔検出位置判定部５０２は、顔検出部１０９で画像から検出された顔が、所定時間の間、所定領域内にいるかどうかの判定を行っている。パンニング検出中に顔が検出され、かつ検出された顔の位置が所定時間の間、所定領域内にある場合は、人を追いかけながら撮影している状況である確率が上がる。そのため、本実施例においては、パンニング情報と顔検出情報を用いることで、より精度良く撮影者の意図を反映し、被写体の追いかけが出来るようにしたものである。
【００４４】
図６は、本発明の主要な制御部のフローチャートを示している。以下、図６と図５を基に、本発明の第２の実施例について説明する。
【００４５】
ステップＳ６００では、パンニング検出部５０１にて、パンニングが検出されたかどうかの判定を行う。ここでパンニング判定がなされている場合、ステップＳ６０１に進む。ステップＳ６０１は、顔検出部１０９にて画像から顔を検出する部分である。ここで画像内に顔が検出された場合は、ステップＳ６０２にて、顔が検出されたと判定され、ステップＳ６０３に進む。ステップＳ６０３では、顔検出位置判定部５０２にて検出した顔が所定領域内にあるかどうかの判定を行っている。
【００４６】
さらに、ステップＳ６０４では、同じく顔検出位置判定部５０２にて画像から顔を検出した時間が所定時間以上かどうかの判定を行っている。ステップＳ６０３およびステップＳ６０４での判定は、パンニング状態であるにもかかわらず、画像から検出された顔が画面内で停止状態にあるかどうかの判定となり、この条件が整った場合は追いかけ撮影がなされていると見なすことができる。条件がそろった場合、ステップＳ６０５にて、検出された顔の大きさから、画像領域選択部１１０にて画像の設定枠の大きさを決めている。
【００４７】
ステップＳ６０５にて領域を選択した後、次にステップＳ６０６で設定枠内の重み付け量を変更する。ここでの重み付け量は、実施例１と同じである。そして、ステップＳ６０７で、実施例１と同様に重み付けを行った度数によりヒストグラムが作成され、ステップＳ６０８で代表ベクトルが決定されることになる。
【００４８】
ステップＳ６００にてパンニング検出がなされていない場合、また、ステップＳ６０２で顔が検出されていない場合、さらにステップＳ６０３、ステップＳ６０４にて所定の条件がそろっていない場合は、ステップＳ６０９にて設定枠を無効にする。そしてステップＳ６１０で重み付け量をリセットすることで、従来のヒストグラムを作成し、代表ベクトルが決定されることになる。
【００４９】
以上説明したように、パンニングが検出されたとき、画面内に顔が検出され、さらに顔の位置が画面内の所定領域内に所定時間入っていることを確認することで、撮影者が人物の追っかけ撮影を行っていることを、高い精度で判定することが可能となる。これによって、撮影者の意図通りの撮影画像を得ることができるようになる。
【００５０】
（実施例３）
第３の実施例では、顔を検出し、重み付けを行った後、たとえば人が後ろを向くなどして、顔検出ができなくなった場合の動作について説明する。
【００５１】
図７は、本発明の第３の実施例を示した構成図である。図７において、図１と同じ構成のものは同じ符号を付し、説明は省略する。
【００５２】
図７において、実施例３のベクトル領域選択部７０１は図１の画像領域選択部１１０と同じブロック領域選択部であるとともに、胴体部のブロック領域も指定できるようになっている。７０２は色検出および記憶部であり、ベクトル領域選択部７０１で選択された胴体部のブロック領域内の色を検出し、それを記憶している。７０３は色監視部であり、ベクトル領域選択部７０１にて選択された胴体の位置に対して、７０２で記憶した色が変化したかどうかを監視する。ここでは顔を検出したとき、胴体部の色、すなわち服の色を記憶し、被写体としている人が後ろを向いて顔検出ができなくなった場合でも、服の色をもとに、被写体がそこにいるかどうかの判定を行うことで、違和感のない追っかけの撮影を可能にしている。
【００５３】
図８は、本発明の主要な制御部のフローチャートを示している。以下、図８と図７を基に、本発明の第３の実施例について説明する。
【００５４】
図８において、ステップＳ８００は、顔検出部１０９にて、画像から顔を検出する部分である。次にステップＳ８０１で、画像から顔が検出されたかどうかの判定を行い、画像から顔が検出された場合は、ステップＳ８０２へと進む。ステップＳ８０２では、画像から検出された顔の大きさから、ベクトル領域選択部７０１にて設定枠の大きさを決めている。
【００５５】
ステップＳ８０２にて領域を選択した後、次にステップＳ８０３で、色検出および記憶部７０２により、人の胴体部分に相当する領域の色を検出して記憶する。そして、ステップＳ８０４では、重み付け設定部１０６にて設定枠内の重み付け量を変更する。
【００５６】
重み付け設定部１０６における重み付け量の設定は、実施例１と同じである。そしてステップＳ８０５では、ヒストグラム作成部１０７にて重み付けを行った度数によりヒストグラムが作成され、ステップＳ８０６では、動きベクトル決定部１０８により代表ベクトルが決定されることになる。
【００５７】
さて、ステップＳ８０１にて顔が検出されなかった場合、ステップＳ８０７にて、重み付けが設定されているかどうかの判定を行う。すでに重み付けの設定が行われている場合は、顔が一度検出された後に、被写体が後ろを向くなどの理由で検出できなくなったことになる。
【００５８】
そこでステップＳ８０８では、色監視部７０３により胴体に相当する部分の色が、色検出および記憶部７０２で記憶した色から変化したかどうかの判定を行う。ここで色が変化していない場合はステップＳ８０４へと進み、重み付け量は変更されたままとしている。この動作により、顔が撮影の途中で検出されなくなったとしても、対象となっている被写体の服の色を検出することにより、撮影者の意図通りに追っかけ撮影が行えることになる。
【００５９】
ステップＳ８０７で重み付けがなされていない場合、また、ステップＳ８０８で胴体部の色が変化したと判定された場合は、追っかけている被写体はいないと判断する。そしてステップＳ８０９で設定枠を無効にし、ステップＳ８１０で重み付け量をリセットすることで、従来のヒストグラムを作成し、代表ベクトルが決定されることになる。
【００６０】
以上説明したように、人物を追っかけながらの撮影を行っているとき、顔が検出されなくなっても胴体に相当する部分の色（例えば服の色）を監視し、色が変化するまでは設定枠、および重み付け量を変更しないようにする。これによって、撮影者の意図した撮影を行うことができる。
【００６１】
（実施例４）
本発明の第４の実施例を示した構成図は図１と同じであり、説明は省略する。第４の実施例として、検出された顔が画像領域に対して非常に小さい場合の動作について説明する。検出された顔が非常に小さい場合は、人物の追っかけではなく、風景の撮影を行っているなかで、人物が動いている状況、あるいは被写体の動き自体を撮ろうとしていると考えられる。そこで、顔が画像領域に対して非常に小さい場合は、重み付けを行わないほうが望ましい。
【００６２】
図９は、実施例４の主要部のフローチャートを示している。図９において、ステップＳ９００において、顔検出部１０９にて画像から顔を検出する。ここで画像内に顔が検出された場合は、ステップＳ９０１にて顔が検出されたと判定され、ステップＳ９０２に進む。
【００６３】
ステップＳ９０２では、検出された顔の大きさから、画像領域選択部１１０にて設定枠の大きさを決めている。ステップＳ９０２にて領域を選択した後、次にステップＳ９０３で設定枠の大きさが所定値以上かどうかの判定を行う。所定値以上の場合は、ステップＳ９０４にて設定枠内の重み付け量を変更する。この重み付け量は実施例１と同様である。そして、ステップＳ９０５で、重み付けを行った度数によりヒストグラムが作成され、ステップＳ９０６で代表ベクトルが決定されることになる。
【００６４】
ステップＳ９００にて、顔が検出されていない場合、およびステップＳ９０３で、設定枠の大きさが所定値未満である場合はステップＳ９０７に進み、ステップＳ３０７では重み付けを行うための設定枠を無効にし、ステップＳ９０８で重み付け量をリセットする。その結果、画像から顔が検出されていない場合、または、画像から顔が検出されていても、その大きさが非常に小さい場合は従来のヒストグラムを作成し、そこから代表動きベクトルが決定されることになる。
【００６５】
以上説明したように、画像から顔が検出されても、その大きさが非常に小さい場合は、重み付けを行わないことで、撮影者の意図通りの撮影を行うことができる。
【００６６】
（その他の実施例）
その他実施例として、画像領域内に複数の顔が検出された場合の動作について説明する。その他の実施例においても構成図は図１と同じであり、説明は省略する。
【００６７】
複数の顔が検出されたときは、基本的に画像の中央部に位置する顔およびその下の胴体部分に対する重み付けを変更する。通常、撮影者は自分が撮りたい被写体を画面の中央に配置する。そこで、顔が複数検出された場合は、もっとも中心に近い顔を用いて重み付けを行うことで、撮影者の意図にもっとも合った撮影を行うことが可能となる。
【００６８】
なお、本発明は、以下の構成でも達成され得る。
【００６９】
前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、コンピュータあるいは装置に供給するとする。これによって、このコンピュータあるいは装置の制御部が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成され得る。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７０】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【図面の簡単な説明】
【００７１】
【図１】本発明の第１の実施例の構成図である。
【図２】重み付けを行う領域を示した図である。
【図３】本発明の第１の実施例の主要部の動作を示したフローチャートである。
【図４】重み付けを変更した場合のヒストグラムの変化を示した図である。
【図５】本発明の第２の実施例の構成図である。
【図６】本発明の第２の実施例の主要部の動作を示したフローチャートである。
【図７】本発明の第３の実施例の構成図である。
【図８】本発明の第３の実施例の主要部の動作を示したフローチャートである。
【図９】本発明の第４の実施例の主要部の動作を示したフローチャートである。
【図１０】従来のヒストグラム作成方法を示した図である。
【図１１】従来の画像補正システムのブロック図である。
【符号の説明】
【００７２】
２０１  分割されたブロック
２０２  顔検出枠
２０３  設定されたブロック領域
５０１  パンニング検出部
５０２  顔検出位置判定部
７０２  色検出および記憶部
７０３  色監視部
【図１】
2010114752.tif 000003
【図２】
2010114752.tif 000004
【図３】
2010114752.tif 000005
【図４】
2010114752.tif 000006
【図５】
2010114752.tif 000007
【図６】
2010114752.tif 000008
【図７】
2010114752.tif 000009
【図８】
2010114752.tif 000010
【図９】
2010114752.tif 000011
【図１０】
2010114752.tif 000012
【図１１】
2010114752.tif 000013