(57)【特許請求の範囲】
【請求項１】
画像を取得する画像取得手段と、
前記画像取得手段が取得した画像が属するカテゴリを取得するカテゴリ取得手段と、
前記画像取得手段が取得した画像から特定のオブジェクトが写る特定画像を探索する画像探索手段と、
前記カテゴリ取得手段が取得したカテゴリ毎に前記特定画像の数を算出する算出手段と、
前記算出手段が算出したカテゴリ毎の画像数に応じて選択されたカテゴリに属する画像であって前記画像探索手段が前記特定画像ではないと判断した画像の中から前記特定画像を詳細に探索する詳細探索手段と、
を備えることを特徴とする画像検索装置。
【請求項２】
前記詳細探索手段は、前記算出手段が算出したある前記カテゴリに属する特定画像の数が予め定めた画像数より少ないか、または、ある前記カテゴリに属する前記画像のうち、前記画像探索手段が特定画像と判断した画像の割合が予め定めた割合より低い場合に探索する、
ことを特徴とする請求項１に記載の画像検索装置。
【請求項３】
前記詳細探索手段は、
前記画像探索手段が探索した特定画像に写る特定オブジェクトの一部から取得した情報と
前記画像探索手段が特定画像ではないと判断した画像に写るオブジェクトの一部であって、前記画像探索手段が特定画像であると判断した画像に写る前記特定オブジェクトの前記一部に相当する部分から取得した情報と
を比較して特定画像を探索する、
ことを特徴とする請求項１または２に記載の画像検索装置。
【請求項４】
前記画像探索手段は、
前記画像取得手段が取得した画像に写るオブジェクトが特定のオブジェクトにどれだけ似ているかを示すスコアを算出し、
予め定めた閾値と前記スコアとを比較することで、前記画像が前記特定画像か否かを判断する、
ことを特徴とする請求項１から３のいずれか１項に記載の画像検索装置。
【請求項５】
前記詳細探索手段は、
前記画像取得手段が取得した画像に写るオブジェクトが特定のオブジェクトにどれだけ似ているかを示すスコアであって、前記画像探索手段が算出したスコアと同じ種類のスコアを算出し、
前記画像探索手段が比較に使用した前記閾値とは異なる値の閾値と前記詳細探索手段が算出した前記スコアとを比較することで、前記画像が前記特定画像か否かを判断する、
ことを特徴とする請求項４に記載の画像検索装置。
【請求項６】
前記詳細探索手段は、
前記画像取得手段が取得した画像に写るオブジェクトが特定のオブジェクトにどれだけ似ているかを示すスコアであって、前記画像探索手段が算出したスコアと異なる種類のスコアを算出し、
予め定めた閾値と前記詳細探索手段が算出した前記スコアとを比較することで、前記画像が前記特定画像か否かを判断する、
ことを特徴とする請求項４に記載の画像検索装置。
【請求項７】
前記詳細探索手段が探索の対象とする前記特定画像は、前記画像探索手段が探索する前記特定画像よりも、前記特定のオブジェクトのサイズが予め定めた閾値より小さい、または、前記特定のオブジェクトの位置が予め定めた閾値よりも前記画像の中央から離れている、のいずれか一方または両方である
ことを特徴とする請求項１に記載の画像検索装置。
【請求項８】
前記オブジェクトは人物の全身または一部であることを特徴とする請求項１から７のいずれか１項に記載の画像検索装置。
【請求項９】
前記オブジェクトは人物の顔であることを特徴とする請求項８に記載の画像検索装置。
【請求項１０】
前記画像探索手段が特定画像と判断した画像と、前記詳細探索手段が特定画像と判断した画像をユーザに提示する提示手段をさらに備え、
前記提示手段は、前記詳細探索手段が特定画像と判断した画像は、ユーザの要求に応じて提示する、
ことを特徴とする請求項１から９のいずれか１項に記載の画像検索装置。
【請求項１１】
画像取得手段が、画像を取得する画像取得工程と、
カテゴリ取得手段が、前記画像取得手段が取得した画像が属するカテゴリを取得するカテゴリ取得工程と、
画像探索手段が、前記画像取得手段が取得した画像から特定のオブジェクトが写る特定画像を探索する画像探索工程と、
算出手段が、前記カテゴリ取得手段が取得したカテゴリ毎に前記特定画像の数を算出する算出工程と、
詳細探索手段が、前記算出手段が算出したカテゴリ毎の画像数に応じて選択されたカテゴリに属する画像であって、前記画像探索手段が前記特定画像ではないと判断した画像の中から前記特定画像を詳細に探索する詳細探索工程と、
を含むことを特徴とする画像検索方法。
【請求項１２】
コンピュータを、請求項１から１０のいずれか１項に記載の画像検索装置の各手段として機能させるためのコンピュータが読取可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、大量の画像の中から所望の画像を検索・提示する画像検索装置および画像検索方法に関する。
【背景技術】
【０００２】
近年のデジタルカメラの普及とストレージの大容量化に伴い、大量の画像を撮影し、保存しておくことが可能となった。その一方で、大量の画像の中からユーザが所望の画像を発見するのは大きな手間となるため、簡易に所望の画像を発見できる検索技術の開発が求められていた。例えば特許文献１では、画像を撮影時刻毎に分類した上でユーザに提示する技術が開示されている。撮影時刻は、どのような撮影を行ったかユーザが思い出す助けとなるため、所望の画像を比較的容易に発見することができる。
【０００３】
また、特許文献２では、撮影時刻、撮影場所等から設定したカテゴリ毎に重要度を算出し、重要度が高いカテゴリの画像を提示する技術が開示されている。撮影時刻だけでなく、場所等を考慮したカテゴリから重要度を設定するこの技術を用いることで、ユーザが所望の画像をより容易に発見できる。
また一方で、特許文献３では、画像認識技術を用いて特定のオブジェクトが写る画像を自動で提示する技術が開示されている。ユーザが特定のオブジェクトが写る画像を探したい場合に、この技術を用いることで、ユーザは選択に必要となる手間を大幅に軽減することができ、利便性が高い。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２９６１６５号公報
【特許文献２】特開２００７−２５８７６号公報
【特許文献３】特開２００９―８７００５号公報
【非特許文献】
【０００５】
【非特許文献１】Ｐ．  Ｖｉｏｌａ  ａｎｄ  Ｍ．  Ｊｏｎｅｓ，  “Ｒｏｂｕｓｔ  ｒｅａｌ−ｔｉｍｅ  ｆａｃｅ  ｄｅｔｅｃｔｉｏｎ”，  Ｉｎ  ｐａｇｅ  ＩＩ：  ７４７，  ２００１．
【非特許文献２】Ｙ. Ｙａｎｇ ａｎｄ Ｄ. Ｒａｍａｎａｎ. Ａｒｔｉｃｕｌａｔｅｄ ｐｏｓｅ ｅｓｔｉｍａｔｉｏｎ ｕｓｉｎｇ  Ｆｌｅｘｉｂｌｅ ｍｉｘｔｕｒｅｓ ｏｆ ｐａｒｔｓ. Ｉｎ ＣＶＰＲ ２０１１, ２０１１．
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記の方法では、ユーザが特定のオブジェクトが写る画像を、カテゴリ毎に検索したい場合に、画像認識の誤りや認識設定によって、検索結果に見落としが発生する場合がある。特に、ユーザにとって重要度の高いカテゴリであっても、見落としによって検索結果の画像数が１枚もないか、少なくなってしまう場合があるのは利便性が低い。また、逆に、見落としが少なくなるような画像認識技術を使用するか、その認識設定（典型的には認識の閾値）を調整すると、今度は検索結果に提示する画像数が多くなりすぎてしまい、ユーザが選択に必要とする手間が増加する。
【課題を解決するための手段】
【０００７】
上述した課題を解決するために、本発明に係わる画像検索装置は、画像を取得する画像取得手段と、
前記画像取得手段が取得した画像が属するカテゴリを取得するカテゴリ取得手段と、
前記画像取得手段が取得した画像から特定のオブジェクトが写る特定画像を探索する画像探索手段と、
前記カテゴリ取得手段が取得したカテゴリ毎に前記特定画像の数を算出する算出手段と、
前記算出手段が算出したカテゴリ毎の画像数に応じて選択されたカテゴリに属する画像であって前記画像探索手段が前記特定画像ではないと判断した画像の中から前記特定画像を詳細に探索する詳細探索手段と、
を備えることを特徴とする。
【０００８】
また、本発明に係わる画像検索方法は、画像取得手段が、画像を取得する画像取得工程と、
カテゴリ取得手段が、前記画像取得手段が取得した画像が属するカテゴリを取得するカテゴリ取得工程と、
画像探索手段が、前記画像取得手段が取得した画像から特定のオブジェクトが写る特定画像を探索する画像探索工程と、
算出手段が、前記カテゴリ取得手段が取得したカテゴリ毎に前記特定画像の数を算出する算出工程と、
詳細探索手段が、前記算出手段が算出したカテゴリ毎の画像数に応じて選択されたカテゴリに属する画像であって、前記画像探索手段が前記特定画像ではないと判断した画像の中から前記特定画像を詳細に探索する詳細探索工程と、
を含むことを特徴とする。
【発明の効果】
【０００９】
本発明により、特定のオブジェクトが写る画像を、カテゴリ毎に検索する場合に、あるカテゴリの検索結果が見落としにより１枚もないか、少なくなることを軽減できる。また、見落としが少ない画像認識技術またはその設定を使うことによる検索結果の画像数増大を軽減することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１の実施例に係る画像検索装置のハードウェア構成の一例を示す図である。
【図２】本発明の第１の実施例に係る画像検索装置の制御プログラムの機能構成を示したブロック図である。
【図３】本発明の第１の実施例に係る画像検索装置の画像検索処理フローチャートである。
【図４】カテゴリの自動分類方法を説明する模式図である。
【図５】詳細探索する画像の選択処理を説明する模式図である。
【図６】本発明の第１の実施例に係る画像検索装置の画像探索処理フローチャートである。
【図７】本発明の第１の実施例に係る画像検索装置の検出する顔の位置とサイズを示した模式図である。
【図８】本発明の第１の実施例に係る画像検索装置の詳細探索処理フローチャートである。
【図９】本発明の第２の実施例に係る画像検索装置のハードウェア構成の一例を示す図である。
【図１０】本発明の第２の実施例に係る画像検索装置の制御プログラムの機能構成を示したブロック図である。
【図１１】本発明の第２の実施例に係る画像検索装置の詳細探索処理フローチャートである。
【図１２】本発明の第２の実施例に係る画像検索装置の詳細探索処理を説明する模式図である。
【発明を実施するための形態】
【００１１】
［第１の実施例］
以下、図面を参照して本発明の第１の実施例を詳細に説明する。本実施例では、画像検索装置のユーザが、特定人物が主要被写体として写った写真を探す、という目的で使用する場合の例を説明する。すなわち、特定のオブジェクトが写る画像を検索する画像検索の一例として、特定人物の顔が画像の中央付近に大きく写る画像を検索する場合の画像検索処理について述べる。
【００１２】
＜ハードウェア構成＞
図１に、本実施例における画像検索装置のハードウェア構成の一例を示す。図１に示すように、本実施例における画像検索装置１００は、ＣＰＵ１、ＲＯＭ２、ＲＡＭ３、二次記憶装置４、通信装置５、映像出力装置６、および接続バス７で構成されている。
ＣＰＵ１は、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）であり、ＲＯＭ２やＲＡＭ３に格納された制御プログラムを実行することにより、本装置全体の制御を行う。
【００１３】
ＲＯＭ２は、不揮発性メモリであり、制御プログラムや各種パラメタデータを記憶する。制御プログラムは、ＣＰＵ１で実行され、後述する各処理を実行するための手段として、当該装置を機能させる。
ＲＡＭ３は、揮発性メモリであり、画像データや制御プログラムおよびその実行結果を一時的に記憶する。
【００１４】
二次記憶装置４は、ハードディスクやフラッシュメモリーなどの書き換え可能な二次記憶装置であり、画像や制御プログラム、各種設定内容、検索の処理結果などを記憶する。これらの情報はＲＡＭ３に出力され、ＣＰＵ１がプログラムの実行に利用する。
通信装置５は、無線通信ユニットであり、他の機器との通信に使用する。通信装置５は、有線通信ユニットであってもよい。
映像出力装置６は、ＣＲＴやＴＦＴ液晶などのモニタである。ＲＡＭ３または二次記憶装置４から取得した画像データや制御プログラムの実行結果等を表示する。
接続バス７は、ＣＰＵ１、ＲＯＭ２、ＲＡＭ３、二次記憶装置４、通信装置５、および映像出力装置６を接続して相互にデータの入出力を行う。
【００１５】
カメラ１０１〜１０３は、撮像装置と撮像した画像を保存するストレージ、および画像を外部へ出力する通信装置で構成される一般的なカメラである。本実施例では、図１に示すように１０１〜１０３の３台のカメラが画像検索装置１００にカメラの通信装置（図示せず）および画像検索装置１００の通信装置５を介して接続されている。接続するカメラの台数はこれに限るものではない。カメラ１０１〜１０３は自身のストレージに格納した画像を画像検索装置１００に送信し、画像検索装置１００は画像を二次記憶装置４に格納する。
【００１６】
なお、後述する処理を、画像検索装置１００のＣＰＵ１を用いてソフトウェアで実現することとするが、その処理の一部または全部をハードウェアで実現するようにしても構わない。ハードウェアとして専用回路（ＡＳＩＣ）やプロセッサ（リコンフィギュラブルプロセッサ、ＤＳＰ）などを用いることができる。
また、後述する処理を記述したソフトウェア（プログラム）をネットワークまたは各種記憶媒体を介して取得し、パーソナルコンピュータ等の処理装置（ＣＰＵ、プロセッサ）にて実行してもよい。
また、本実施例では撮像データをカメラ１０１〜１０３から通信装置５を介して取得するが、画像検索装置１００が撮像装置を持ち、その撮像装置を用いて撮影することによって画像を取得するようにしてもよい。
【００１７】
＜機能構成＞
図２は、本実施例における画像検索装置の制御プログラムの機能構成の一例を示したブロック図である。図２に示すように、本実施例の制御プログラムの機能構成は、画像取得部１１、画像探索部１２、カテゴリ情報取得部１３、特定画像数算出部１４、詳細探索画像選択部１５、詳細探索部１６、および表示部１７を含む。ここに示す機能構成はハードウェアとソフトウェアの組み合わせによって実現できるものであって、一つの機能ブロックが一つのハードウェアに対応するものではない。
【００１８】
画像取得部１１は、通信装置５を介して、カメラ１０１、カメラ１０２、カメラ１０３から画像を取得し、二次記憶装置４に画像を記憶し、要求に応じて画像探索部１２、カテゴリ情報取得部１３へ画像を出力する。ここで取得する画像には、人物の顔が写っている顔画像や、人物の全身または一部が写っている人体画像、または人物が写っていない画像等が含まれる。
【００１９】
画像探索部１２は、二次記憶装置４に記憶されている画像を探索し、特定人物が写る特定画像かどうか識別し、探索結果を特定画像数算出部１４および表示部１７へ出力する。探索結果とは、各画像が特定画像か否か、すなわち、画像に特定人物が写っているか、否かを示す情報である。特定画像とは、特定のオブジェクト（本実施例では特定の人物）が写る画像を意味する。
カテゴリ情報取得部１３は、画像取得部１１から取得した画像からカテゴリ情報を取得し、特定画像数算出部１４へ出力する。カテゴリ情報とは、各画像が属するグループを指す情報で、典型的には撮影場所、撮影日時などがある。
【００２０】
特定画像数算出部１４は、カテゴリ情報取得部１３から取得したカテゴリ情報および画像探索部１２から取得した探索結果から、カテゴリ毎の特定画像の数を算出する。算出したカテゴリ毎の特定画像の数と探索結果を詳細探索画像選択部１５に出力する。
詳細探索画像選択部１５は、特定画像数算出部１４から取得した探索結果とカテゴリ毎の特定画像の数から詳細探索するカテゴリを選択し、そのカテゴリに属する画像を二次記憶装置４から取得し、詳細探索部１６に出力する。
【００２１】
詳細探索部１６は、詳細探索画像選択部１５から詳細探索対象の画像を取得し、詳細探索する。その後、詳細探索部１６は、詳細探索結果を表示部１７へ出力する。詳細探索結果とは、各画像が特定画像か否か、すなわち、画像に特定人物が写っているか、否かを示す情報である。
表示部１７は、ユーザに検索結果を提示する提示部として機能し、詳細探索部１６から取得した詳細探索結果と画像探索部１２から取得した探索結果を映像出力装置６に出力し、結果を表示する。
【００２２】
＜全体の処理＞
図３は、本実施例の画像検索装置１００が、特定人物が写る画像の検索および表示を行う処理フローチャートの一例を示したものである。この図を参照しながら、実際の処理について詳細を説明する。なお、このフローの開始時に、画像検索装置１００、カメラ１０１〜１０３の電源はオンになっており、カメラ１０１〜１０３から画像検索装置へ画像を送信する準備が完了した状態にあるものとする。
【００２３】
始めに、画像取得部１１は、カメラ１０１〜１０３から画像を、通信装置５を介して、受信する（ステップＳ０１１）。このとき受信する画像には、画像の撮影時のカメラ設定や撮影場所等の情報が記述されたメタデータが付随しているものとする。例えば、Ｅｘｉｆ（Ｅｘｃｈａｎｇｅａｂｌｅ  ｉｍａｇｅ  ｆｉｌｅｆｏｒｍａｔ）の画像を使用することができる。
【００２４】
続いて、画像探索部１２は、画像取得部１１から画像を取得し、特定人物の写る画像の画像探索処理を行う（ステップＳ０１２）。本実施例では、画像に特定人物が写っているか否かの識別処理を行うことで画像を探索する。このとき、人物の顔の位置とサイズでフィルタリング処理を施し、画像の中央付近で大きく写る人物の顔だけを探索対象とする。これにより、ユーザの特定人物が主要被写体として写った写真を探すという目的により合致した探索結果を得ることができる。画像探索処理の詳細は後述する。
続いて、カテゴリ情報取得部１３は、画像取得部１１から画像を取得し、取得した画像からカテゴリ情報を取得する（ステップＳ０１３）。本実施例ではカテゴリは撮影時刻と撮影場所（ＧＰＳデータ）から自動で分類される。撮影場所と撮影時刻は画像のメタデータから読み込む。
【００２５】
図４は、カテゴリの自動分類の詳細について示した模式図である。図４には撮影時刻１１０、撮影場所１２０、およびカテゴリ自動分類結果１３０が示されている。撮影時刻１１０は画像がどの時刻に撮影されたかを黒丸と画像番号で示しており、この図では時刻が進むに従って画像番号１〜９の合計９枚が撮影されたことを意味している。
【００２６】
撮影場所１２０は、撮影時刻１１０で示した９枚の画像がそれぞれどこで撮影されたかを示している。撮影時刻１１０と撮影場所１２０で画像番号が同じ黒丸は同一の画像を意味している。なお、この図に表示している地図データは事前に二次記憶装置４に記憶しておく。この撮影時刻１１０と撮影場所１２０からカテゴリを自動分類した結果がカテゴリ自動分類結果１３０である。ここでは、事前に設定した撮影時刻の範囲、撮影場所の範囲をもとにカテゴリを自動で設定している。
【００２７】
図４に示すように画像番号１〜３の画像は撮影時刻、撮影場所ともに近い範囲にあるため同じカテゴリ１に設定されている。画像番号９の画像は、撮影場所は画像番号１〜３の画像に近いものの、撮影時刻が画像番号１〜３の画像から離れているため、画像番号１〜３の画像のカテゴリ１とは別のカテゴリ４として設定されている。
残りの画像についても同様にカテゴリを自動分類している。カテゴリの自動分類のルールについては撮影時刻だけを基準として設定してもよいし、撮影場所だけを基準として設定してもよい。また他のメタデータの単体または複数の組み合わせを基準として設定してもよい。
【００２８】
本実施例では、事前に設定したルールと画像のメタデータに従ってカテゴリを自動分類する場合について述べたが、カテゴリ情報の取得方法についてはこれ以外の方法を用いてもよい。例えば、画像を認識して認識結果に基づいてカテゴリを設定してもよい。画像内に写る人物の年齢を推定して、同じ年代でカテゴリを設定するなどしてもよい。そうすれば、例えば、ある人物の幼少期から大人までの画像群に対して、各年代毎のカテゴリを設定できるなど、利便性の高い画像検索装置が実現できる。この他に、画像のサイズや撮影したカメラの種類、設定等を基準としてカテゴリを設定してもよい。
【００２９】
続いて、特定画像数算出部１４が、カテゴリ情報と画像探索結果から、カテゴリ毎に特定人物が写っている画像の数（カテゴリ毎の特定人物画像数）を算出する（ステップＳ０１４）。
続いて、詳細探索画像選択部１５は、カテゴリ毎の特定人物画像数から、詳細探索する画像を選択する（ステップＳ０１５）。
【００３０】
図５は、詳細探索する画像を決定する際の処理を示した模式図である。図５に示すように、カテゴリ毎の特定人物画像が黒丸、画像探索部１２によって特定人物が写っていないと判定された非特定画像が破線の白丸で示されている。この例の場合、カテゴリ１に属する３枚の画像のうち、２枚が特定画像と判断されたことを意味している。カテゴリ３を見ると、３枚の画像のうち、特定画像と判断された画像が１枚もない、という結果となっている。ここで、このカテゴリ３に属する特定画像の数が所定の数（本実施例では１枚）よりも小さいため、カテゴリ３の画像を詳細探索対象の画像として選択する。
【００３１】
その後、選択した詳細探索対象の画像のカテゴリ毎のリストを二次記憶装置４に記憶しておき、後の詳細探索部１６の処理で使用する。本実施例では、特定画像の数を所定の数と比較することで詳細探索対象の画像を選択したが、この他の方法を用いてもよい。
例えば、各カテゴリで特定画像が所定の割合を超えた場合に詳細探索対象の画像として選択するようにしてもよい。また、詳細探索対象の画像をリストにして詳細探索部１６で使うようにしたが、詳細探索対象の画像を詳細探索部１６に伝達する方法はこれに限らない。詳細探索対象の画像そのものを詳細探索部１６に出力するようにしてもよい。
【００３２】
本実施例では、撮影時刻・撮影場所のようなユーザにとって意味のある情報を基準にカテゴリを設定している。この場合、ユーザにとって意味のあるカテゴリ（この例ではカテゴリ３）において、見落としにより検索結果に画像が１枚もないという状態が起こりうる。この見落としは、画像探索部１２が探索の際に、顔の位置とサイズでフィルタリングしていることにより発生している可能性がある。このフィルタリングは画像に対して顔が大きく、中央付近に写る画像を探す、という目的では有効な方法と言える。
【００３３】
しかし、あるカテゴリの検索結果が１枚もないという状態になった場合、顔のサイズが多少小さくても、顔の位置が画像の端に多少寄っていても、ユーザとしては、１枚でも検索結果に提示してくれたほうが利便性は高いと考えられる。そこで、本実施例ではこのカテゴリ３を詳細探索対象の画像として選択し、後述する詳細探索処理により見落としの軽減を図っている。
【００３４】
続いて、詳細探索部１６が、詳細探索画像選択部１５によって選択された詳細探索対象の画像に対して詳細探索処理を行う（ステップＳ０１６）。詳細探索対象の画像は二次記憶装置４にリストの形式で記憶されているので、それを読み取り、同じく二次記憶装置４に記憶されている対象の画像を取得する。この詳細探索処理によって、ステップＳ０１２の画像探索処理で見落とした特定画像を、検索結果に追加できる可能性がある。詳細探索処理の詳細については後述する。
【００３５】
続いて、表示部１７が詳細探索部１６の詳細探索結果と画像探索部１２の探索結果を取得し、最終的な検索結果を表示する。表示する際に、詳細探索結果と探索結果をマージして表示する。はじめに探索結果を表示し、ユーザからの要求に応じて詳細探索結果を追加で表示するようにしてもよい。こうすることで、画像探索部１２の探索結果だけの検索結果で満足できるユーザにとって、より利便性の高い画像検索装置を提供できる。
以上が、本実施例における全体の処理フローである。
【００３６】
＜画像探索処理＞
図６は、本実施例における画像探索処理（図３のステップＳ０１２）の詳細を示した処理フローチャートである。この図を参照しながら、具体的な処理の詳細を説明する。なお、この画像探索処理の全ての処理は画像探索部１２で実行される。
始めに、画像探索部１２が画像取得部１１から画像を取得する（ステップＳ０２１）。
続いて、取得した画像から対象物体である人物の顔を検出する（ステップＳ０２２）。人物の顔を検出する方法に関しては既存の手法を用いればよい。例えば、非特許文献１に記載の手法を用いることができる。
顔の検出を実行した後に、顔の位置とサイズでフィルタリング処理を行う。すなわち、画像に対して所定割合以下の大きさの顔や画像中央付近の所定範囲にない顔は、顔ではないと判定する。
【００３７】
図７はこのフィルタリング処理の一例を説明する模式図である。この模式図は、人物の顔３０２〜３０４が写っている画像３００を示しており、顔の座標範囲３０１、基準外接矩形３０５は、本来は見えないが説明のために表示している。この図の場合、まず、画像３００内において、顔の中心位置が顔の座標範囲３０１の内側にない顔は、除外する。これにより顔３０４は範囲外なので除外される。
【００３８】
また、基準外接矩形３０５は、検出された顔の輪郭を囲う外接矩形の基準サイズを示しており、この矩形内に入る顔は小さい顔とみなして除外する。これにより顔３０３は除外される。以上のフィルタリング処理により、最終的に検出結果の顔として残るのは顔３０２のみとなる。これにより、以下に続く処理で特定人物が写っているか識別する際に、画像に対して大きく、中央付近に写る顔のみを識別の対象とすることができる。このようにすることでこの画像探索処理では、特定人物が主要被写体として写る画像を探索することができる。
【００３９】
続いて、画像中に人物の顔が一つもない場合（ステップＳ０２３でＮｏ）、全画像を処理したかどうかの判定（ステップＳ０２９）に進む。
画像中に人物の顔が一つ以上ある場合（ステップＳ０２３でＹｅｓ）、ＲＡＭ３に事前に読み込んでおいた特定情報を取得する（ステップＳ０２４）。特定情報とは、検索クエリとしてユーザが指定する（特定人物の）顔画像であり、ステップＳ０２２で検出した顔画像と比較することで、画像中に特定人物が写っているか否か、判定する。特定情報として、顔画像から取得した特徴量を登録するようにしてもよい。特定情報は事前に二次記憶装置４に記憶しておけばよい。特定情報に複数の人物がいる場合、どの人物を検索するかはユーザに選択させてもよい。その場合は、通信装置５を使って他の機器を介したユーザの入力を受信すればよい。
【００４０】
続いて、検出した顔を一つ選択し、特徴量を抽出する（ステップＳ０２５）。特徴量を抽出するアルゴリズムに関しては既存の手法を用いればよい。例えば、ＬＢＰ（Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ）特徴量や、ＨＯＧ（Ｈｉｓｔｏｇｒａｍ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔ）特徴量、ＳＩＦＴ（Ｓｃａｌｅ−Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ）特徴量などを用いることができる。
特定情報からも、同様に特徴量を抽出する。特定情報が複数の顔画像を含む場合は、全ての顔画像から特徴量を抽出しておく。ただし、特定情報が画像ではなく、特徴量として記憶されている場合は、ここで抽出する必要はない。
【００４１】
続いて、検出した顔から抽出した特徴量と特定情報から抽出した特徴量とを比較し、スコアを算出する（ステップＳ０２６）。スコアとは、検出した顔と特定情報の顔がどれだけ類似しているかを示す数値であり、これが高いほど、両者が類似していることを示す。スコアを算出する手法は既存の手法を用いればよい。例えば、コサイン類似度などを用いることができる。特定情報が複数の顔画像を含む場合は、特定情報に含まれる顔画像のそれぞれと検出した顔との全組み合わせについてスコアを算出し、最大のものを代表スコアとして採用する。
【００４２】
続いて、算出したスコアを、事前に定めた閾値と比較して、特定情報の人物と同一人物か否かの判定を行う（ステップＳ０２７）。閾値は動的に定めるようにしてもよい。
続いて、検出した顔のうち、スコア算出の処理が終わっていない顔があれば（ステップＳ０２８でＮｏ）、ステップＳ０２５に戻り、残りの顔に対して処理を行う。
検出した全ての顔に対してスコア算出の処理が終わっていれば（ステップＳ０２８でＹｅｓ）、取得した全画像について処理を完了したか判定する（ステップＳ０２９）。
【００４３】
全画像を処理していない場合（ステップＳ０２９でＮｏ）、ステップＳ０２２に戻り同様の処理を繰り返す。全画像を処理している場合（ステップＳ０２９でＹｅｓ）、探索結果を特定画像数算出部１４へ出力する（ステップＳ０３０）。
以上が、本実施例における画像探索処理フローである。画像探索処理に関しては、ここで挙げた方法以外の別の方法を用いてもよい。本実施例では顔の画像による識別を行ったが、人間の全身または一部の画像を使って識別してもよい。
【００４４】
＜詳細探索処理＞
図８は、本実施例における詳細探索処理（図３のステップＳ０１６）の詳細を示した処理フローチャートである。この図を参照しながら、具体的な処理の詳細を説明する。なお、この詳細探索処理の全ての処理は詳細探索部１６で実行される。
【００４５】
具体的な処理フローは図６の画像探索処理フローと同じ部分が多いため、異なる部分のみ説明し、同様の箇所は説明を省略する。
始めに、詳細探索部１６は、詳細探索対象の画像を、詳細探索画像選択部１５の出力をもとに、二次記憶装置４から取得する（Ｓ０３１）。
【００４６】
続いて、取得した詳細探索対象の画像から対象物体を検出する（Ｓ０３２）。このとき検出した顔について、図７で説明したフィルタリング処理は実行せず、全画像領域の全てのサイズの顔を検出するようにする。これにより、画像探索処理で顔の位置とサイズによるフィルタリングに起因する見落としを軽減することができる。この詳細探索処理で詳細探索した特定人物の顔はサイズが小さいか、画像の隅に配置されている、のいずれか一方または両方、ということになる。
【００４７】
ユーザが特定の人物が写る画像を探す際に、小さい顔の画像や画像の隅に顔が写った画像を所望しない可能性はある。しかし、あるカテゴリの検索結果が１枚もないような場合は、そのカテゴリでは顔のサイズが事前に定めた閾値より小さく、顔の位置が事前に定めた閾値よりも画像の中央から離れて隅に配置されていても、検索結果に表示された方がユーザの利便性は高い。
なお、本実施例では顔の検出を再度実行したが、画像探索処理フローの対象物体の検出（図６のステップＳ０２２）の際の顔の検出結果をＲＡＭ３や二次記憶装置４に記憶しておき、再利用してもよい。
【００４８】
この後のステップＳ０３３〜Ｓ０４０の処理は、図６のステップ０２３〜Ｓ０３０の処理と同様であるため説明を省略する。
以上が、本発明における第１の実施例の説明である。
本実施例では、カメラから取得した画像の中から画像検索装置で特定人物が写る画像を検索する方法について説明した。まず、画像探索処理によって特定人物が主要被写体として写る、すなわち、顔が中央付近に大きく写る、特定人物の画を検索した。その上で、特定のカテゴリにおいて検索結果の画像が１枚もなかった場合については、顔の位置とサイズによるフィルタリングを外した詳細探索を実施した。これにより、画像探索処理による画像の見落としのために特定カテゴリにおいて検索結果の画像数が少なくなる現象を軽減することができる。
【００４９】
また、本実施例の詳細探索処理（図３のステップＳ０１６）では、顔の位置とサイズによるフィルタリングを外して画像探索処理（図３のステップＳ０１２）とは異なる再検索を実施したが、この他の方法を使ってもよい。
例えば、詳細探索処理でスコアと比較する閾値（図８のステップＳ０３７）を画像探索処理でスコアと比較する閾値（図６のステップＳ０２７）よりも下げて再検索をしてもよい。また、詳細探索処理に使う特徴量（図８のステップＳ０３５）を画像探索処理に使う特徴量（図６のステップＳ０２５）とは異なるものを使用してもよい。
また、本実施例では、特定の人物が写る画像を検索する場合の画像検索処理について説明したが、人物以外のその他のオブジェクトを検索してもよい。例えば、特定の自動車や動物を検索するようにしてもよい。青空や山といった風景をオブジェクトとして識別して、検索するようにしてもよい。これらのオブジェクトの場合も、画像に対する大きさや画像中の位置を計測することで本実施例を適用することができる。
【００５０】
［第２の実施例］
第１の実施例では、画像検索装置が複数のカメラから画像を取得し、画像検索を行う場合について説明したが、本実施例では、画像検索装置自体が撮像装置を備える場合について説明する。また、第１の実施例では、検出した顔の位置とサイズでフィルタリングを外して詳細探索を実行したが、本実施例では、画像探索結果から顔以外の属性情報を使用して詳細探索を実行する例を説明する。なお、第１の実施例と同じ処理を行う場合は説明を省略し、処理の異なる部分のみを説明する。
【００５１】
＜ハードウェア構成＞
図９に、本実施例における画像検索装置のハードウェア構成の一例を示す。図９に示すように、本実施例における画像検索装置５００は、ＣＰＵ５１、ＲＯＭ５２、ＲＡＭ５３、二次記憶装置５４、通信装置５５、映像出力装置５６、接続バス５７、入力装置５８および撮像装置５９で構成されている。
【００５２】
入力装置５８は、ハードウェアボタンで構成されるインターフェース（Ｉ／Ｆ）であり、ユーザの操作を受け付け、接続バス５７を介して、各部へ操作内容を出力する。
撮像装置５９は、一般的なカメラで使用されるレンズや撮像素子等で構成されており、撮影した画像をＲＡＭ５３または二次記憶装置５４に記憶する。
この他のハードウェアに関しては第１の実施例と同様であるため、説明を省略する。また、第１の実施例と同様に後述する処理を、ＣＰＵ５１によりソフトウェアで実現することとするが、その処理の一部または全部をハードウェアで実現するようにしても構わない。
【００５３】
＜機能構成＞
図１０は、本実施例における画像検索装置の制御プログラムの機能構成の一例を示したブロック図である。この図に示すように、本実施例の制御プログラムは、画像取得部６１、画像探索部６２、カテゴリ情報取得部６３、特定画像数算出部６４、詳細探索画像選択部６５、詳細探索部６６、および表示部６７を含む。以下、第１の実施例の機能構成（図２）と異なる部分について説明する。ここに示す機能構成もハードウェアとソフトウェアの組み合わせによって実現できるものであって、一つの機能ブロックが一つのハードウェアに対応するものではない。
【００５４】
画像探索部６２は、二次記憶装置４の画像中から特定人物を探索し、探索結果を特定画像数算出部６４、詳細探索部６６および表示部６７へ出力する。また、特定人物と判断された人物の画像領域から属性情報を判定するための特徴量を抽出し、詳細探索部６６へ出力する。属性情報とは、具体的には、その人物の年齢や性別、身長や服の色等の情報である。
【００５５】
＜全体の処理＞
本実施例では、画像検索装置５００が撮像装置５９で撮影した画像を二次記憶装置に記憶した上で、ユーザが特定の人物が写った写真を検索し、表示する処理について説明する。
全体の処理フローは第１の実施例と同様であるため、図３を参照しながら、実際の処理について詳細を説明する。なお、第１の実施例と同様の処理は説明を省略する。
【００５６】
始めに、画像取得部６１が二次記憶装置５４から画像を取得する（ステップＳ０１１）。ここで二次記憶装置５４に記憶されている画像は、撮像装置５９によって撮影された画像である。
続いて、画像探索部６２は、画像取得部６１から画像を取得し、画像探索処理を行う（ステップＳ０１２）。このとき、第１の実施例とは異なり、顔の検出結果を顔の位置・サイズでフィルタリングせずに、全画像領域の全顔サイズについて検出・識別を行う。
【００５７】
検索する特定人物の顔画像は、撮像装置５９を用いてユーザに撮影させるようにしてもよいし、入力装置を使って、事前に登録した候補の中からユーザに選択させるようにしてもよい。また、このとき、画像探索の結果、特定人物だと判断された人物について顔以外の属性情報を識別するための特徴量を取得しておく。本実施例では人物の服の色を識別するため、色ヒストグラム特徴量を抽出する。
【００５８】
その他の属性情報を識別するため、属性情報に適した特徴量を抽出するようにしてもよい。ＬＢＰ（Ｌｏｃａｌ Ｂｉｎａｒｙ Ｐａｔｔｅｒｎ）特徴量や、ＨＯＧ（Ｈｉｓｔｏｇｒａｍ ｏｆ  Ｏｒｉｅｎｔｅｄ Ｇｒａｄｉｅｎｔ）特徴量、ＳＩＦＴ（Ｓｃａｌｅ−Ｉｎｖａｒｉａｎｔ Ｆｅａｔｕｒｅ Ｔｒａｎｓｆｏｒｍ）特徴量等の既存の手法を用いることができる。この他、属性情報として、眼鏡の有無や、帽子・手袋等の服飾の有無、などが考えられる。
【００５９】
続くステップＳ０１３〜Ｓ０１５は第１の実施例と同様であるため説明を省略する。
続いて、詳細探索部６６が、詳細探索画像選択部６５によって選択された詳細探索対象の画像に対して詳細探索処理を行う（ステップＳ０１６）。本実施例では、ステップＳ０１２の画像探索処理の結果から顔以外の属性情報を取得して詳細探索する。詳細探索処理の詳細については後述する。
続くステップＳ０１７は、第１の実施例と同様であるため説明を省略する。
以上が、本実施例における全体の処理フローである。
【００６０】
＜詳細探索処理＞
図１１は、本実施例における詳細探索処理（図３のステップＳ０１６）の詳細を示した処理フローチャートである。この図を参照しながら、具体的な処理の詳細を説明する。なお、この詳細探索処理の全ての処理は詳細探索部６６で実行される。
ステップＳ０４１からステップＳ０４４までの処理は第１の実施例のステップＳ０３１からステップＳ０３４までの処理と同様であるので、説明を省略する。
【００６１】
続いて、詳細探索部６６は、画像探索部６２から属性情報を識別するための特徴量を取得し、属性スコアを算出する（ステップＳ０４５）。本実施例では、属性情報として服の色を識別するための色ヒストグラム特徴量を画像探索部６２で抽出しており、それをこの処理で用いる。
【００６２】
図１２は、ここでの処理の一例を示した模式図である。
図１２（ａ）は特定画像と判断された画像６００ａと、その画像内に人物６０１ａの顔と人体部分の両方が含まれている様子を示している。
図１２（ｂ）は、ステップＳ０４１で取得した詳細探索対象の画像６００ｂと、その画像内に人物６０１ｂ、６０２〜６０３の顔と人体部分の両方が含まれている様子を示している。ここでユーザが検索したい人物は人物６０１ｂであるとする。この例では、人物６０１ｂは横を向いているため、画像探索部６２の画像探索処理（図１２（ｂ）の人物６０１ｂの顔領域６０４ｂだけを使った画像探索処理）ではスコアが閾値を超えずに見落とされた（特定画像とは判断されなかった）とする。
【００６３】
ここでは、まず、顔領域６０４ｂの下方にある服領域６０５ｂから色ヒストグラムを抽出する。そして、１）服領域６０５ｂから抽出された色ヒストグラムと、２）画像探索部６２が特定画像と判断した画像６００ａから抽出しておいた特定人物と判断された人物６０１ａの服領域６０５ａの色ヒストグラムとを比較し、スコアを算出する。
つまり、本実施例では、詳細探索部６６は、
画像探索部６２が探索した特定画像６００ａに写る特定オブジェクト６０１ａの一部（服領域６０５ａ）から取得した情報と
画像探索部６２が特定画像ではないと判断した画像６００ｂに写るオブジェクト６０１ｂの一部であって、画像探索部６２が特定画像であると判断した画像６００ａに写る特定オブジェクトの一部（服領域６０５ａ）に相当する部分（服領域６０５ｂ）から取得した情報と
を比較して特定画像を探索している。
【００６４】
スコアを算出する方法は既存の方法を用いればよい。２つの色ヒストグラム間のヒストグラムインターセクションなどを用いることができる。なお、本実施例では服領域は顔領域の所定距離下方にあるとしているが、別の方法を用いて設定してもよい。例えば、人体のパーツ検出の結果を用いて服領域を設定してもよい。人体のパーツ検出には非特許文献２に記載の方法を用いることができる。
【００６５】
続いて、画像探索部６２の処理と同様に顔領域（図１２に示す顔領域６０４）から特徴量を抽出し（Ｓ０４６）、顔領域のスコアを算出する（Ｓ０４７）。本実施例では、顔領域のスコアは、ここで再計算しているが、画像探索部６２で計算したものを保持しておき、再利用してもよい。
【００６６】
続いて、顔領域について算出したスコアと属性スコア（服の色の識別スコア）を統合する（Ｓ０４８）。ここでは、以下に示す重みつき和で統合する。
Ｓ＝α・Ｆｓｃｏｒｅ+（１−α）・Ｃｓｃｏｒｅ      (数式１)
ここで、Ｓは統合したスコア、Ｆｓｃｏｒｅが顔領域で算出したスコア、Ｃｓｃｏｒｅが服の色の識別スコア、αは定数で、０＜α＜１を満たす。統合方法はここで示した方法に限定されない。この他既知の方法を用いてもよい。
ステップＳ０４９からステップＳ０５２までの処理は第１の実施例のステップＳ０３７からステップＳ０４０までの処理と同様であるため説明を省略する。
【００６７】
以上のように、本実施例では、画像探索処理で顔領域だけでスコア算出し、詳細探索処理では服領域についてもスコアを算出し、顔領域について算出したスコアと統合した。これにより顔領域だけでは見落とすような横顔の人物（図１２の人物６０１）の見落としを軽減できる。ユーザが特定の人物が写る画像を探す際に、横を向いた顔は所望しない可能性はある。しかし、あるカテゴリの検索結果が１枚もないような場合は、そのカテゴリでは顔が正面を向いていなくても、横を向いた顔でも検索結果に表示されたほうがユーザの利便性は高い。
【００６８】
［その他の実施例］
本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００６９】
１、５１  ＣＰＵ
２、５２  ＲＯＭ
３、５３  ＲＡＭ
４、５４  二次記憶装置
５、５５  通信装置
６、５６  映像出力装置
７、５７  接続バス
５８  入力装置
５９  撮像装置
１０１、１０２、１０３  カメラ
１１０  撮影時刻
１２０  撮影場所
１３０  カテゴリ自動分類結果
３００  画像
３０１  顔の座標範囲
３０２、３０３、３０４  人物の顔
３０５  基準外接矩形
【図１】
0006463095.tif 000002
【図２】
0006463095.tif 000003
【図３】
0006463095.tif 000004
【図４】
0006463095.tif 000005
【図５】
0006463095.tif 000006
【図６】
0006463095.tif 000007
【図７】
0006463095.tif 000008
【図８】
0006463095.tif 000009
【図９】
0006463095.tif 000010
【図１０】
0006463095.tif 000011
【図１１】
0006463095.tif 000012
【図１２】
0006463095.tif 000013