(57)【特許請求の範囲】
【請求項１】
画像データから複数の顔画像を認識する顔認識手段と、
前記顔画像の位置を取得する取得手段と、
隣接する前記顔画像の距離を算出する算出手段と、
前記隣接する前記顔画像の距離に基づいて、前記隣接する顔画像の間に、前記顔認識手段により前記顔画像が認識されなかった失敗顔画像を検出する検出手段と、
前記失敗顔画像を並べて表示装置に表示させる表示制御手段とを備えたことを特徴とする画像処理装置。
【請求項２】
前記顔画像の位置にしたがって前記顔画像および前記失敗顔画像のレイアウトを決定する決定手段をさらに備え、
前記表示制御手段は前記レイアウトにしたがって前記顔画像および前記失敗顔画像を並べて前記表示装置に表示させることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記表示制御手段は、前記顔画像を前記失敗顔画像と区別して前記表示装置に表示させることを特徴とする請求項１または２記載の画像処理装置。
【請求項４】
前記表示制御手段は前記失敗顔画像を所定の倍率で拡大して前記表示装置に表示させることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記表示制御手段は前記失敗顔画像を互いのサイズが等しくなるように調整して前記表示装置に表示させることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。  
【請求項６】
前記顔画像の数と前記失敗顔画像の数との合計が所定の数より大きい場合に、前記顔画像および前記失敗顔画像をそれぞれの位置にしたがってグルーピングするグループ作成手段を備え、
前記表示制御手段は、前記グルーピングされたグループ毎に表示させることを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記検出手段は、前記隣接する顔画像の距離が、他の隣接する顔画像の距離の平均よりも所定値以上大きいとき、前記隣接する顔画像の間に、前記失敗顔画像を検出することを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
画像データから複数の顔画像を認識するステップと、
前記顔画像の位置を取得するステップと、
隣接する前記顔画像の距離を算出するステップと、
前記隣接する前記顔画像の距離に基づいて、前記隣接する顔画像の間に、前記顔認識手段により前記顔画像が認識されなかった失敗顔画像を検出するステップと、
前記失敗顔画像を並べて表示装置に表示させるステップとを備えたことを特徴とする画像処理装置の制御方法。
【請求項９】
コンピュータに
画像データから複数の顔画像を認識するステップと、
前記顔画像の位置を取得するステップと、
隣接する前記顔画像の距離を算出するステップと、
前記隣接する前記顔画像の距離に基づいて、前記隣接する顔画像の間に、前記顔認識手段により前記顔画像が認識されなかった失敗顔画像を検出するステップと、
前記失敗顔画像を並べて表示装置に表示させるステップとを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルカメラなどの画像入力装置を用いて人物を撮影することにより得られた画像データを扱う画像処理装置およびその制御方法およびプログラムに関する。
【背景技術】
【０００２】
従来、デジタルカメラで被写体を撮影することにより得られた画像をパーソナルコンピュータに取り込み、そのモニタに表示して、画像全体の構図や被写体、特に人物の顔の映り具合をチェックしている。ここで、ユーザは画像の中から人物の顔を探し出して確認していた。画像に多くの人物が含まれる場合には人物の顔は小さくなるため、確認が困難であった。
【０００３】
そこで、顔を画像から抽出し、その顔画像を拡大表示することがおこなわれている（特許文献１参照）。特許文献１では、画像全体から認識された人物の顔を画面の特定のエリアに縦に並べて表示することで、人物の顔の状態を個別に確認できる。
【特許文献１】特開２００７−０１９６７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１では顔画像は画像全体における位置に関わらず特定のエリアに縦に並べて表示している。したがって、特に多数の人物の顔が画像に含まれている場合には、その顔画像が画像全体のどの位置のものかを特定するのが困難であった。
【０００５】
また、特許文献１では顔認識された顔画像しか表示されず、実際には顔であるが横向きになっていたり、あるいは目を瞑っているために顔認識されなかった顔については区別して表示されなかった。
【０００６】
本発明は上述の問題点を鑑みて考案されたものであり、ユーザが複数の人物の顔画像が含まれる画像を容易に確認できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本願第１の発明の画像処理装置は、画像データから複数の顔画像を認識する顔認識手段と、前記顔画像の位置を取得する取得手段と、隣接する前記顔画像の距離を算出する算出手段と、前記隣接する顔画像の距離に基づいて、前記隣接する顔画像の間に、前記顔認識手段により前記顔画像が認識されなかった失敗顔画像を検出する検出手段と、前記失敗顔画像を並べて表示装置に表示させる表示制御手段とを備えたことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ユーザは画像に含まれる人物の顔画像を個別に確認しやすくなるとともに、各顔画像の全体画像での位置を容易に特定することができるので、画像を確認する作業を効率的に行えるようになる。
【発明を実施するための最良の形態】
【０００９】
（実施例１）
以下、図面を用いて、本発明の一実施形態について説明する。
【００１０】
本実施例における画像処理装置は、画像選択アプリケーションプログラムにしたがって、外部記憶装置に格納されている画像データに映しこまれた人物の顔を認識する。そして、認識された顔画像を抽出し、画像データ内での顔同士の相対位置を維持して並べたグラフィカルユーザーインターフェース（ＧＵＩ）を表示装置に表示する。
【００１１】
図１は本実施例の画像処理装置を実現するコンピュータ装置（情報処理装置）の構成を示すブロック図である。ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１００は、コンピュータ装置全体の動作をコントロールする。メモリ１２０はコンピュータ装置の動作に必要なプログラムやデータ、パラメータなどを記憶する。ハードディスクなどに代表される外部記憶装置１３０はＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や画像選択アプリケーションソフトウェア、画像データを記憶している。表示メモリ１１０は外部記憶装置１３０に記憶されている画像データを展開し、表示装置１５０に表示させる。画像処理装置のユーザの操作は、キーボードやポインティングデバイスなどの入力装置１４０を介して入力される。
【００１２】
なお、本実施例の画像処理装置は、ＣＰＵ１００が外部記憶装置１３０に記憶されたＯＳや画像選択アプリケーションソフトウェアのプログラムコードを読出して実行することにより、以下に説明するような動作を実現する。また画像選択アプリケーションソフトウェアは着脱可能な記憶媒体からＣＰＵ１００に供給されてもよい。したがって、そのプログラムコード自体が以下の実施例の機能を実現することになり、プログラムコードを記憶した記憶媒体も本発明を構成することになる。
【００１３】
図２は本実施例の画像処理装置にインストールされた画像選択アプリケーションプログラムにより実現されるモジュール構成を示す図である。外部記憶装置１３０から画像データを読み込む画像読み込み手段２００、複数の画像（元画像や、顔画像をふくむ）を表示装置に表示させる画像表示制御手段２１０、画像データに含まれる人物の顔を認識する顔認識手段２２０で構成される。また、実際には顔が撮影された領域であると推測されるが、顔認識手段２２０は認識できなかった領域を検出する失敗顔画像検出手段２３０で構成される。また、顔認識された顔画像の位置情報を取得する顔位置取得手段２４０と、指定されたレイアウトで顔画像を並び替える並び替え手段２５０とで構成される。
【００１４】
図６のフローチャート図を参照して、本実施例の画像処理装置の動作を説明する。
【００１５】
ステップＳ６００において、画像読み込み手段２００は画像データを外部記憶装置１３０から読み込む。本実施例では、図３に示すような集合写真の画像データが読み込まれるものとする。画像データ３００は人物Ａから人物Ｎまでの１４人が３列に渡って順に並んで撮影されたものである。
【００１６】
ステップＳ６０１において、顔認識手段２２０はステップＳ６００で読み込まれた画像データに対して顔認識処理を実行する。顔認識処理の結果、画像データ内で顔と認識される顔画像の領域が取得される。
【００１７】
ステップＳ６０２において、顔位置取得手段２４０は顔画像の位置情報（座標）を取得する。これは各顔画像について画像データにおける位置を検出し、顔画像同士の互いの相対的な位置情報を取得し、メモリ１２０に登録する。
【００１８】
一方、ステップＳ６０１では、実際には人物の顔であっても、横を向いていたり、目をつむっていたりしていると、顔認識されるための情報が足りないために、顔認識手段２２０は顔画像として認識しない。例えば、図３の画像データ３００で「Ｇ」の位置の人物が下を向いてしまって顔認識されなかった場合を考える。ここで、集合写真のような場合は、一定の間隔で人物が並んで撮影されることが多い。したがって、ステップＳ６０２で取得された顔画像の位置情報のうち不規則に離散した位置情報がある場合、それらの間に認識されなかった人物が存在していると予測できる。
【００１９】
そこで、ステップＳ６０３において、失敗顔画像検出手段２３０はまず、ステップＳ６０２で取得された顔画像の位置情報から、ステップＳ６０１で認識されなかった失敗顔画像が存在する領域を検出する。
【００２０】
すなわち、失敗顔画像検出手段２３０は、ステップＳ６０２で取得された各顔画像の位置情報にしたがい、隣接する顔画像の間の距離を求める。図３の画像データでは「Ｆ」と「Ｈ」は顔画像として認識され、「Ｆ」と「Ｈ」はそれぞれの位置情報から互いに隣接すると判断され、それらの間の距離が求められる。そして、顔画像「Ｆ」と「Ｈ」の間の距離は他の隣接する顔画像の中心同士の間の距離の平均よりも所定値以上大きいので、「Ｆ」と「Ｈ」の間に失敗顔画像「Ｇ」が存在すると推測される。このようにして、顔認識手段２２０が精密な認識処理を行うことにより顔画像と認識しなかった領域であっても、実際には顔が存在すると推測される領域も失敗顔画像として認識することができる。特に顔認識手段２２０が顔認識できなかった顔の撮影部分は失敗である可能性が高いので、ユーザが画像データを確認する際に役立つ。
【００２１】
ステップＳ６０４において、顔位置取得手段２４０はステップＳ６０３で検索された領域の位置情報を取得し、失敗顔画像の位置情報としてメモリ１２０に登録する。
【００２２】
ステップＳ６０５において、並び替え手段２５０はメモリ１２０から顔画像の位置情報を読み出し、顔画像と失敗顔画像のレイアウトを決定する。
【００２３】
図４に、メモリ１２０に登録された、ステップＳ６０１で認識された顔画像と、ステップＳ６０３で推測された失敗顔画像を示す。画像データ３００のうち点線の矩形枠４０１で囲まれた領域が顔画像または失敗顔画像である。
【００２４】
ステップＳ６０６において、画像表示制御手段２１０はステップＳ６０５で決定されたレイアウトにしたがって顔画像と失敗顔画像を並べて表示装置１５０に表示させる。ここで、顔画像や失敗顔画像は画像データから切り出されたサイズよりも大きく所定の倍率で拡大して表示するようにしてもよい。また、顔画像や失敗顔画像は互いのサイズが等しくになるように調整してから表示するようにしてもよい。
【００２５】
ステップＳ６０６での表示例を図５（ａ）あるいは（ｂ）に示す。図５（ａ）では、元画像データが表示された画面とは独立した別の画面に、顔画像や失敗顔画像がステップＳ６０５で決定されたレイアウトにしたがって並べて表示されている。図５（ｂ）では元画像データの上に重ねて顔画像や失敗顔画像がステップＳ６０５で決定されたレイアウトにしたがって並べて表示されている。このようにして、顔画像や失敗顔画像を拡大表示することで、ユーザは各人物の顔の映り具合を詳細に確認することができる。
【００２６】
なお、ステップＳ６０１で認識された顔画像と、ステップＳ６０３で推測された失敗顔画像とを区別して表示するようにしてもよい。例えば、顔画像や失敗顔画像の近傍にアイコンを表示したり、顔画像と失敗顔画像とで矩形の色や線の種類を変えたりすることが考えられる。これにより、目を瞑ったり、横を向いたりして顔認識されない状態で撮影された人物は撮影失敗であることが多いので、ユーザは失敗の可能性のある顔を認識しやすくなる。
【００２７】
また、ステップＳ６０３で推測された失敗顔画像だけを画面に表示するようにしてもよい。失敗顔画像だけを選択的に表示することで、ユーザは集中的に失敗の可能性の高い顔画像を確認することができ、作業にかかる時間を短縮することができる。
【００２８】
また、ステップＳ６０１で、複数種類の条件で顔認識を行った場合にいくつかの条件を満たさなかったために顔認識されなかった領域を顔候補画像としてメモリ１２０に記憶しておくようにしてもよい。例えば、ある領域の画素について肌色認識はされたが、瞳認識がされなかったため顔認識されなかった領域などである。そして、ステップＳ６０３で失敗顔画像検出手段２３０は、顔候補画像の位置と推測された位置とを比較して互いに重なり合った場合に、顔候補画像が存在する領域を失敗顔画像が存在する領域として推測するようにしてもよい。位置の条件と顔認識の条件の両方を用いて推測することにより、顔画像が存在すると推測した結果の正確性が上がることになる。
【００２９】
以上のようにして、本実施例によれば、撮影された顔が画像全体の中での位置関係を保った状態で表示されるので、ユーザは顔のそれぞれが画像全体の中でどの位置に存在するのかを容易に認識できるようになる。
【００３０】
（実施例２）
大人数の集合写真の場合、画像データに多くの顔画像が存在するので一度に全てを表示してしまうと、煩雑かつ見づらくなってしまう。そこで、本実施例では、画像データに含まれる顔画像を画像データでの位置関係を保った状態でグループ毎に画面に表示する場合について説明する。以下では上記実施例１と同様の部分については説明を省略し、本実施例に特有の部分について詳細に説明する。
【００３１】
本実施例の画像処理装置は図７に示すようなモジュール構成を有し、グループ作成手段７１０や人数計測手段７２０を備える。
【００３２】
上述したステップＳ６０４の後、人数計測手段７２０はステップＳ６０１で認識された顔画像の数とステップＳ６０３で検出された失敗顔画像の数との合計を算出し、所定の人数より大きいかどうか判定する。合計が所定の人数より大きいと判定された場合、グループ作成手段７１０は、顔画像および失敗画像をそれぞれの位置情報にしたがって自動的にグルーピングする。
【００３３】
例えば、顔画像および失敗画像の合計が２０人より大きいと判定された場合に、図８に示すように横一列毎にグルーピングを行う。顔画像および失敗画像は位置情報のＹ座標の値によってどの列に属するかを判別できる。また、横一列に限らず、所定のエリア毎にグルーピングを行うようにしてもよい。
【００３４】
そして、グルーピングによって生成された各グループを順に表示装置１５０に表示する。ユーザによる入力装置１４０の操作に応答してグループを切替えて表示するようにしてもよいし、所定の時間が経過すると自動的にグループを切替えて表示するようにしてもよい。
【００３５】
本実施例によれば、顔画像や失敗画像を複数のグループに分類し、グループ毎に表示することで、ユーザは顔のそれぞれが見やすくなり、また、画像全体の中でどの位置に存在するのかを認識できる。
【図面の簡単な説明】
【００３６】
【図１】本発明の一実施例におけるコンピュータ装置の構成を示すブロック図である。
【図２】本発明の一実施例における画像処理装置のモジュール構成を示すブロック図である。
【図３】本発明の一実施例における集合写真の画像データを示す図である。
【図４】本発明の一実施例における画像データに含まれる顔画像の位置を示す図である。
【図５】本発明の一実施例における画像データに含まれる顔画像の表示例を示す図である。
【図６】本発明の一実施例における画像処理装置の動作を示すフローチャート図である。
【図７】本発明の一実施例における画像処理装置のモジュール構成を示すブロック図である。
【図８】本発明の一実施例における画像データに含まれる顔画像のグループの例を示す図である。
【符号の説明】
【００３７】
１００  ＣＰＵ
１１０  表示メモリ
１２０  メモリ
１３０  外部記憶装置
１４０  入力装置
１５０  表示装置
【図１】
0004991510.tif 000002
【図２】
0004991510.tif 000003
【図３】
0004991510.tif 000004
【図４】
0004991510.tif 000005
【図５】
0004991510.tif 000006
【図６】
0004991510.tif 000007
【図７】
0004991510.tif 000008
【図８】
0004991510.tif 000009