JPWO2010041377A1 - 代表画像表示装置及び代表画像選択方法 - Google Patents

代表画像表示装置及び代表画像選択方法 Download PDF

Info

Publication number
JPWO2010041377A1
JPWO2010041377A1 JP2010532783A JP2010532783A JPWO2010041377A1 JP WO2010041377 A1 JPWO2010041377 A1 JP WO2010041377A1 JP 2010532783 A JP2010532783 A JP 2010532783A JP 2010532783 A JP2010532783 A JP 2010532783A JP WO2010041377 A1 JPWO2010041377 A1 JP WO2010041377A1
Authority
JP
Japan
Prior art keywords
representative
image
unit
cluster
images
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.)
Granted
Application number
JP2010532783A
Other languages
English (en)
Inventor
邦昭 磯貝
邦昭 磯貝
河村 岳
岳 河村
Original Assignee
パナソニック株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority to JP2008259237 priority Critical
Priority to JP2008259237 priority
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Priority to PCT/JP2009/004468 priority patent/WO2010041377A1/ja
Publication of JPWO2010041377A1 publication Critical patent/JPWO2010041377A1/ja
Granted legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content

Abstract

人物クラスタ選択部230は、顔画像数の多い順番に1以上の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、各代表人物クラスタにおいて、1番目に代表ユニットを選択する際は尤度の最も高いユニットを代表ユニットとして選択し、2番目以降に代表ユニットを選択する際は尤度の低い順番にユニットを代表ユニットとして選択する。代表顔画像選択部250は、各代表ユニットにおいて、1番目に代表顔画像を選択する際は尤度の最も高い顔画像を代表顔画像として選択し、2番目以降に代表顔画像を選択する際は尤度の低い順番に顔画像を代表顔画像として選択する。

Description

本発明は、デジタルスチルカメラやデジタルビデオカメラなどで撮影された画像を分類して表示する技術に関する。
従来の画像を分類して表示する表示手法として、画像に撮影されている人物に着目し、顔画像認識技術を用いて類似する顔同士をクラスタ単位に分類し、同じ人物が写っている写真毎に表示するものがある。
また、顔画像のクラスタリングの精度を向上させることを目的として、ユーザにクラスタリング結果を修正する操作インターフェース(以下、「操作IF」と言う。)を提供し、人物の分類を補助する目的のものがある(例えば、非特許文献1参照。)。これは、ユーザが顔画像のクラスタリングの結果に対して手動で編集(アノテーション)を行うことによって顔画像のクラスタリングの結果を修正できるようになっている。例えば、異なる複数の人物の顔画像が一つのクラスタにまとめられていた場合、ユーザの判断で該クラスタを個別の人物のクラスタに分割することで、異なる人物の顔画像が同じクラスタ内に混在する状況を解消できる。一方、同一人物の顔画像が複数のクラスタに分かれていた場合は、該複数のクラスタを一つのクラスタに結合することで、同一人物の顔画像が複数のクラスタに分かれている状況を解消できる。
Jingyu Cui, Fang Wen, Rong Xiao, Yuandong Tian, Xiaoou Tang. "EasyAlbun: An Interactive Photo Annotation System Based on Face Clustering and Re-ranking". CHI 2007 Proceedings, p.367-376, 2007.
しかしながら、アノテーションを行う際に通常クラスタ内の顔画像の一部を代表顔画像として表示することになるが、上記の従来技術では表示する代表顔画像の選択の仕方については考慮されていない。このため、ユーザにとって修正すべき顔画像が表示されず、顔画像のクラスタリング結果に対して効率的にアノテーションを行うことができないと言う問題がある。なお、係る問題は、ユーザが顔画像以外の画像のクラスタリング結果に対してアノテーションを行う場合にも発生する。
そこで、本発明は、ユーザが画像の分類結果に対して効率的にアノテーションを行えるようにする代表画像表示装置及び代表画像選択方法を提供することを目的とする。
上記目的を達成するために本発明の代表画像表示装置は、複数の画像が類似する画像をまとめた下位クラスタに分類され、複数の下位クラスタが類似する下位クラスタをまとめた上位クラスタに分類された分類結果を用いて、表示部に表示する代表画像を選択して表示部に表示する代表画像表示装置において、1以上の上位クラスタを代表上位クラスタとして選択する上位クラスタ選択部と、各代表上位クラスタにおいて、下位クラスタの分類結果の確からしさを示す尤度に基づいて代表上位クラスタ内の下位クラスタからM(Mは1以上で代表上位クラスタ内の下位クラスタの数以下の整数)個の下位クラスタを代表下位クラスタとして選択する下位クラスタ選択部と、各代表下位クラスタにおいて、画像の分類結果の確からしさを示す尤度に基づいて代表下位クラスタ内の画像からN(Nは1以上で代表下位クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択部と、を備える。
また、本発明の代表画像表示方法は、複数の画像が類似する画像をまとめた下位クラスタに分類され、複数の下位クラスタが類似する下位クラスタをまとめた上位クラスタに分類された分類結果を用いて、表示する代表画像を選択して表示する代表画像表示方法において、1以上の上位クラスタを代表上位クラスタとして選択する上位クラスタ選択ステップと、各代表上位クラスタにおいて、下位クラスタの分類結果の確からしさを示す尤度に基づいて代表上位クラスタ内の下位クラスタからM(Mは1以上で代表上位クラスタ内の下位クラスタの数以下の整数)個の下位クラスタを代表下位クラスタとして選択する下位クラスタ選択ステップと、各代表下位クラスタにおいて、画像の確からしさを示す分類結果の尤度に基づいて代表下位クラスタ内の画像からN(Nは1以上で代表下位クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択ステップと、を有する。
上記の代表画像表示装置及び代表画像表示方法によれば、下位クラスタの分類結果の確からしさを示す尤度及び画像の分類結果の確からしさを示す尤度を用いて代表画像を選択して表示するため、代表画像をランダムに選択して表示する場合に比べて、ユーザは分類結果に対して効率的にアノテーションを行うことができる。
上記の代表画像表示装置において、前記下位クラスタ選択部は、前記代表上位クラスタ内の1番尤度が高い下位クラスタを第1の代表下位クラスタとして選択し、前記Mが2以上の場合には、更に、前記代表上位クラスタ内の尤度が低い方から(M−1)個の下位クラスタを第2から第Mの代表下位クラスタとして選択するようにしてもよい。
これによれば、ユーザは尤度の高い下位クラスタ内の画像を見ながら、場合によっては更に尤度の低い下位クラスタ内の画像を見ながら、分類結果に対してアノテーションを行うことができるので、ユーザは上位クラスタに誤って分類された下位クラスタの分離などアノテーションを効率的に行うことができる。
上記の代表画像表示装置において、前記下位クラスタ選択部は、前記尤度として、代表上位クラスタの特徴量空間上の中心位置又は重心位置から下位クラスタの特徴量空間上の中心位置又は重心位置までの距離を用いるようにしてもよい。
上記の代表画像表示装置において、前記下位クラスタ選択部は、前記第1の代表下位クラスタの選択に用いる前記尤度として、代表上位クラスタの特徴量空間上の中心位置又は重心位置から下位クラスタの特徴量空間上の中心位置又は重心位置までの距離を用い、前記第2から第Mの代表下位クラスタの選択に用いる前記尤度として、ユーザが分類を修正した下位クラスタであるか否かを示す情報を用いるようにしてもよい。
上記の代表画像表示装置において、前記下位クラスタ選択部は、前記第1の代表下位クラスタの選択に用いる前記尤度として、代表上位クラスタの特徴量空間上の中心位置又は重心位置から下位クラスタの特徴量空間上の中心位置又は重心位置までの距離を用い、前記第2から第Mの代表下位クラスタの選択に用いる前記尤度として、下位クラスタ内の画像の数を用いるようにしてもよい。
これらによれば、適切な下位クラスタの選択ができる。
上記の代表画像表示装置において、前記代表画像選択部は、前記代表下位クラスタ内の1番尤度が高い画像を第1の代表画像として選択し、前記Nが2以上の場合には、更に、前記代表下位クラスタ内の尤度が低い方から(N−1)個の画像を第2から第Nの代表画像として選択するようにしてもよい。
これによれば、ユーザは尤度の高い画像を見ながら、場合によっては更に尤度の低い画像を見ながら、分類結果に対してアノテーションを行うことができるので、ユーザは下位クラスタに誤って分類された画像の分離などアノテーションを効率的に行うことができる。
上記の代表画像表示装置において、前記代表画像選択部は、前記尤度として、代表下位クラスタの特徴量空間上の中心位置又は重心位置から画像の特徴量空間上の位置までの距離を用いるようにしてもよい。
上記の代表画像表示装置において、前記代表画像選択部は、前記第1の代表画像の選択に用いる前記尤度として、代表下位クラスタの特徴量空間上の中心位置又は重心位置から画像の特徴量空間上の位置までの距離を用い、前記第2から第Nの代表画像の選択に用いる前記尤度として、ユーザが分類を修正した画像であるか否かを示す情報を用いるようにしてもよい。
これらによれば、適切な画像の選択ができる。
上記の代表画像表示装置において、第1の代表画像と第2から第Nの代表画像とを異なる表示方法で前記表示部に表示する処理を行う表示レイアウト制御部を更に備えるようにしてもよい。
これによれば、ユーザは尤度の高い画像と尤度の低い画像とを一目見て区別できる。
上記の代表画像表示装置において、前記表示部の表示領域サイズとユーザが視認可能な画像サイズとに基づいて前記表示部に表示する代表画像の数を決定する表示画像数決定部を更に備えるようにしてもよい。
これによれば、ユーザは視認可能な画像サイズで多くの画像を見ながら分類結果に対してアノテーションを行えるので、ユーザはアノテーションを効率的に行うことができる。
上記の代表画像表示装置において、前記画像は人物の顔画像であってもよい。
これによれば、ユーザはニーズの高い人物の顔画像の分類結果に対して効率的にアノテーションを行うことができる。
本発明の代表画像表示装置は、複数の画像が類似する画像をまとめたクラスタに分類された分類結果を用いて、表示部に表示する代表画像を選択して表示部に表示する代表画像表示装置において、1以上のクラスタを代表クラスタとして選択するクラスタ選択部と、各代表クラスタにおいて、画像の分類結果の確からしさを示す尤度に基づいて代表クラスタ内の画像からN(Nは1以上で代表クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択部と、を備える。
また、本発明の代表画像表示方法は、複数の画像が類似する画像をまとめたクラスタに分類された分類結果を用いて、表示する代表画像を選択して表示する代表画像表示方法において、1以上のクラスタを代表クラスタとして選択するクラスタ選択ステップと、各代表クラスタにおいて、画像の分類結果の確からしさを示す尤度に基づいて代表クラスタ内の画像からN(Nは1以上で代表クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択ステップと、を有する。
上記の代表画像表示装置及び代表画像表示方法によれば、画像の分類結果の確からしさを示す尤度を用いて代表画像を選択して表示するため、代表画像をランダムに選択して表示する場合に比べて、ユーザは分類結果に対して効率的にアノテーションを行うことができる。
上記の代表画像表示装置において、前記代表画像選択部は、前記代表クラスタ内の1番尤度が高い画像を第1の代表画像として選択し、前記Nが2以上の場合には、更に、前記代表クラスタ内の尤度が低い方から(N−1)個の画像を前記第2から第Nの代表画像として選択するようにしてもよい。
これによれば、ユーザは尤度の高い画像を見ながら、場合によっては更に尤度の低い画像を見ながら、分類結果に対してアノテーションを行うことができるので、ユーザはクラスタに誤って分類された画像の分離などアノテーションを効率的に行うことができる。
第1の実施の形態の代表画像表示装置の全体構成図。 図1の画像データベース(画像DB)の一例を示す図。 図1の顔画像データベース(顔画像DB)の一例を示す図。 図1の顔画像クラスタデータベース(顔画像クラスタDB)の一例を示す図。 図1の代表画像表示装置が行う顔画像自動分類処理の流れを示すフローチャート。 図1の代表画像表示装置が行う顔画像分類修正処理の流れを示すフローチャート。 図1の代表画像表示装置が行う顔画像選択表示処理の流れを示すフローチャート。 図7の代表顔画像選択処理の流れを示すフローチャート。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 第2の実施の形態の代表画像表示装置の全体構成図。 図15の顔画像クラスタデータベース(顔画像クラスタDB)の一例を示す図。 図15の代表画像表示装置が行う顔画像自動分類処理の流れを示すフローチャート。 図15の代表画像表示装置が行う顔画像分類修正処理の流れを示すフローチャート。 図15の代表画像表示装置が行う顔画像選択表示処理の流れを示すフローチャート。 図15の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図15の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 図15の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図15の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 顔画像選択表示処理の結果に基づく表示部の表示内容の他の表示方法を示す図。
≪第1の実施の形態≫
以下、本発明の第1の実施の形態について図面を参照しつつ説明する。
<装置構成>
図1は本実施の形態の代表画像表示装置1の全体構成図であり、代表画像表示装置1は演算処理部10と記憶部20と表示部30と操作インターフェース部(以下、「操作IF部」と言う。)40とを備える。
演算処理部10は、例えばCPU(Central Processing Unit)などで構築され、代表画像表示装置1全体の各種制御や各種演算を行う。
記憶部20は、例えばROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)などで構築されており、代表画像表示装置1を制御するための各種制御プログラムや各種アプリケーションプログラムなどを記憶している。記憶部20は、図5〜図8に動作フローを示す手順を記述したプログラムを記憶している。また、記憶部20は、画像データ、顔画像データ及び顔特徴量データを記憶するとともに、画像データベース(以下、「画像DB」と言う。)21、顔画像データベース(以下、「顔画像DB」と言う。)22、及び顔画像クラスタデータベース(以下、「顔画像クラスタDB」と言う。)23を記憶する。
表示部30は、液晶ディスプレイやプラズマディスプレイなどを備える表示デバイスである。
操作IF部40は、マウスやタッチパネル等によりユーザ操作を受け付ける。
(記憶部内の各データベースの構成)
以下、記憶部20に記憶されている画像DB21、顔画像DB22、及び顔画像クラスタDB23について順に説明する。
「画像DBの構成」
図2は図1の画像DB21の一例を示す図である。画像DB21は、画像毎に、画像を識別するためのID(以下、「画像ID」と言う。)に、画像が撮影された撮影時刻と画像の画像データの画像ファイル名とを対応付けて格納するためのデータベースである。但し、画像ファイル名は画像データの実体を表すファイル名である。
「顔画像DBの構成」
図3は図1の顔画像DB22の一例を示す図である。顔画像DB22は、顔画像毎に、顔画像を識別するためのID(以下、「顔ID」と言う。)に、顔画像を含む画像の画像IDと、顔画像の顔画像データの顔画像ファイル名と、顔画像の顔画像データから算出される顔特徴量データの顔特徴量ファイル名とを対応付けて格納するためのデータベースである。
但し、顔画像ファイル名は顔画像データの実体を表すファイル名であり、顔特徴量ファイル名は顔特徴量データの実体を表すファイル名である。但し、顔画像データはビットマップ形式で格納されているが、これに限らず、顔画像データは他のデータ形式で格納されていてもよい。なお、顔画像データ及び顔特徴量データについては後述する。
「顔画像クラスタDBの構成」
図4は図1の顔画像クラスタDB23の一例を示す図である。顔画像クラスタDB23は、顔画像毎に、顔画像の顔IDに、顔画像を含む画像の画像IDと、顔画像が属する人物クラスタを識別するためのID(以下、「人物IDと言う。)と、顔画像が属するユニットを識別するためのID(以下、「ユニットIDと言う。)と、顔画像の分類者情報と、顔画像の分類時刻情報とを対応付けて格納するためのデータベースである。但し、人物クラスタは同一人物の顔画像によって形成されるクラスタであり、ユニットは人物クラスタ内で特に類似する顔画像をまとめたクラスタであり、人物クラスタの形成及びユニットの形成については後述する。なお、本実施の形態の「ユニット」は「下位クラスタ」に相当し、「人物クラスタ」は「上位クラスタ」に相当する。
但し、分類者情報は、顔画像が後述するクラスタ形成部130によって自動分類された顔画像であるか、ユーザのアノテーションに従って後述するクラスタ修正部140によって分類の修正が行われた顔画像であるかを示す情報であり、分類者情報の内容は前者の場合には「システム」となり、後者の場合には「ユーザ」となる。分類時刻情報は顔画像が自動分類された時刻、分類の修正が行われた場合には分類の修正が行われた時刻を示す情報である。
なお、以下では、顔画像クラスタDB23の1レコード分の情報の集まりを、適宜、「顔画像クラスタ情報」と言う。
(演算処理部の構成)
演算処理部10は、記憶部20から図5〜図8に動作フローを示す手順を記述したプログラムを読み出し、読み出したプログラムを実行する。これによって、演算処理部10は画像解析部100と画像表示部200として機能する。
(画像解析部の機能構成)
画像解析部100は、図1に示すように、画像入力部110と、顔認識処理部120と、クラスタ形成部130と、クラスタ修正部140とを備える。
画像入力部110は、例えばデジタルスチルカメラやデジタルビデオカメラなどの撮影機器によって撮影された画像の画像データを読み込む。そして、画像入力部110は、画像に対して一意に画像IDを付与し、画像IDに画像が撮影された撮影時刻と画像の画像データの画像ファイル名とを対応付けて画像DB21に格納するとともに、読み込んだ画像データを記憶部20に格納する。
但し、撮影時刻は画像データが撮影された日時情報であり、日時情報はデジタルビデオカメラやデジタルスチルカメラなどの撮影機器により撮影時に記録され、画像入力部110はEXIF(Exchangeable Image File Format)情報として画像ファイルに記憶されている日時情報を撮影時刻として読み出す。
なお、代表画像表示装置1が備える例えばUSB(Universal Serial Bus)コネクタと撮影機器などを直接ケーブルで接続し、画像入力部110が撮影機器に装着された記録媒体から画像データを読み込むようにしてもよい。また、画像入力部110は、代表画像表示装置1に装着されたSD(Secure Digital)メモリーカードなどの記録媒体から画像データを読み込むようにしてもよい。
また、画像データは一般的なJPEG(Joint Photographic Experts Group)形式で圧縮符号化された画像データであってもよく、MPEG−4(Moving Picture Experts Group phase 4)等の動画形式で圧縮符号化された画像データであってもよい。
顔認識処理部120は、画像DB21を参照して、画像ID毎に、画像IDに対応する画像ファイル名の画像データを記憶部20から読み出し、読み出した画像データに画像認識処理を実行して画像に写っている人間の顔領域を検出する。顔認識処理部120は、1以上の顔領域を検出した場合には、検出した顔領域毎に、顔領域に対する顔画像の顔画像データを生成する。そして、顔認識処理部120は、顔領域に対する顔画像に対して一意に顔IDを付与し、顔IDに、顔画像を含む画像の画像IDと、顔画像の顔画像データの顔画像ファイル名とを対応付けて顔画像DB22に格納するとともに、顔画像データを記憶部20に格納する。
続いて、顔認識処理部120は、顔画像DB22を参照して、顔ID毎に、顔IDに対応する顔画像ファイル名の顔画像データを記憶部20から読み出し、読み出した顔画像データから特徴量ベクトルで記述される顔画像の顔特徴量データを生成する。そして、顔認識処理部120は、顔画像の顔IDに顔画像の顔特徴量データの顔特徴量ファイル名を対応付けて顔画像DB22に格納するとともに、顔特徴量データを記憶部20に格納する。
なお、1つの画像IDに対応する顔IDが複数存在する場合はあるが、1つの顔IDに対応する画像IDが複数存在する場合はない。
但し、顔認識処理部120は、画像データに対して例えば輪郭抽出処理や色分布分析処理等の公知の画像処理を行うことによって顔領域を検出し、画像データのうちの顔領域部分のデータから当該顔領域に対する顔画像の顔画像データを生成する。また、顔認識処理部120は、顔画像データをガボールフィルタ等を用いて特徴量ベクトルのデータへ変換することによって、顔画像データに対応する顔画像の顔特徴量データを生成する。
クラスタ形成部130は、顔画像DB22を参照して、各顔IDに対応する顔特徴量ファイル名の顔特徴量データを記憶部20から読み出す。そして、クラスタ形成部130は、読み出した顔特徴量データを用いて、類似する顔画像をまとめてユニットを形成し、形成した各ユニットに対して一意にユニットIDを付与する。続いて、クラスタ形成部130は、各ユニットの類似度を算出し、類似するユニットをまとめて人物クラスタを形成し、形成した人物クラスタに対して一意に人物IDを付与する。
そして、クラスタ形成部130は、顔画像毎に、顔画像の顔IDに、顔画像を含む画像の画像IDと、顔画像が属する人物クラスタの人物IDと、顔画像が属するユニットのユニットIDと、顔画像の分類者情報と、顔画像の分類時刻情報とを対応付けて顔画像クラスタDB23に格納する。但し、分類者情報の内容はシステムとなり、分類時刻情報の内容は自動分類された時刻となる。
但し、クラスタ形成部130は、記憶部20から読み出した複数の顔特徴量データを互いに比較し、顔特徴量データ間の差が第1閾値以下である顔特徴量データの顔画像が互いに類似するものとして、それらを1つにまとめることによって、ユニットを形成する。
また、クラスタ形成部130は、形成した複数のユニットの夫々に対して、ユニットの特徴量空間上の中心位置又は重心位置に最も近い位置の顔特徴量データの顔画像を選択する。そして、クラスタ形成部130は、複数のユニットの夫々から選択した顔画像の顔特徴量データを互いに比較し、顔特徴量データ間の差が第2閾値以下である顔特徴量データに対応するユニットが互いに類似するものとして、それらを1つにまとめることによって、人物クラスタを形成する。
なお、上記の第1閾値及び第2閾値は例えば第1閾値が第2閾値より小さくなるように予め設定される。また、ユニット及び人物クラスタの形成の手法は上記の手法に限定されるものではない。
クラスタ修正部140は、操作IF部40を介してユーザ操作を受け取り、顔画像クラスタDB23において、受け取ったユーザ操作に従ってユーザが分類結果の修正を施した顔画像の顔画像クラスタ情報を修正する。但し、顔画像クラスタ情報に含まれる分類者情報の内容はユーザになり、分類時刻情報の内容は分類の修正が行われた時刻になる。
(画像表示部の機能構成)
画像表示部200は、図1に示すように、表示レイアウト制御部210と、表示顔画像数決定部220と、人物クラスタ選択部230と、ユニット選択部240と、代表顔画像選択部250とを備える。
表示レイアウト制御部210は、表示部30に表示する顔画像の表示レイアウトを画像DB21、顔画像DB22及び顔画像クラスタDB23の格納内容を参照して制御するものである。但し、表示レイアウト制御部210は、表示レイアウトを制御する際に、ユニット選択部240及び代表顔画像選択部250から入力される情報や操作IF部40から入力される情報も用いる。
表示顔画像数決定部220は、表示レイアウト制御部210から表示部30に表示する顔画像(以下、「代表顔画像」と言う。)の数(以下、「表示顔画像数」と言う。)の決定を要求されると、表示顔画像数を決定し、決定した表示顔画像数を人物クラスタ選択部230へ出力する。
本実施の形態では、表示顔画像数決定部220は、表示部30の表示領域サイズを取得する。そして、表示顔画像数決定部220は、表示部30に表示する顔画像の表示サイズを顔画像の視認性を確保できるようなサイズに決定し、表示部30の表示領域サイズと顔画像の表示サイズとに基づいて表示顔画像数を決定する。なお、表示部30の表示領域サイズが一定である場合には、顔画像の表示サイズが大きければ表示顔画像数は少なくなり、顔画像の表示サイズが小さければ表示顔画像数は多くなる。
人物クラスタ選択部230は、顔画像クラスタDB23を参照して、人物IDの数、即ち、人物クラスタの数を取得する。そして、人物クラスタ選択部230は、表示顔画像数が人物クラスタの数未満の場合には代表顔画像を表示する人物クラスタ(以下、「代表人物クラスタ」と言う。)の数(以下、「代表人物クラスタ数」と言う。)を表示顔画像数と同じ値に決定し、表示顔画像数が取得した人物クラスタの数以上の場合には代表人物クラスタ数を取得した人物クラスタの数と同じ値に決定する。なお、前者では人物クラスタの一部が代表人物クラスタになり、後者では全ての人物クラスタが代表人物クラスタになる。
続いて、人物クラスタ選択部230は、顔画像クラスタDB23を参照して、人物クラスタ内の顔画像の数が多い順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択するとともに、各代表人物クラスタで表示される代表顔画像の数(以下、「人物クラスタ表示顔画像数」と言う。)を代表人物クラスタ間で均等になるように決定する。そして、人物クラスタ選択部230は、代表人物クラスタの人物IDと人物クラスタ表示顔画像数とをユニット選択部240へ出力する。
なお、人物クラスタ選択部230は、表示顔画像数を人物クラスタの数で除算した余りの値に等しい数分の代表人物クラスタが選択されるまでは、選択した代表人物クラスタの人物クラスタ表示顔画像数をその除算した商の値に1加算した値に決定し、それ以降に選択される代表人物クラスタの人物クラスタ表示顔画像数をその除算した商の値に決定する。
顔画像の数が多い人物クラスタは顔画像の数が少ない人物クラスタに比べて誤った顔画像を含んでいる可能性が高いと考えられる。従って、代表人物クラスタの選択に人物クラスタ内の顔画像の数を用いることによって、人物クラスタ選択部230は、誤った顔画像を含んでいる可能性が高い人物クラスタを代表人物クラスタとして選択する可能性が高くなる。
ユニット選択部240は、人物クラスタ選択部230から入力された人物IDの人物クラスタ(代表人物クラスタ)の夫々に対して、以下のようにして、代表人物クラスタ内のユニットから代表顔画像を表示するユニット(以下、「代表ユニット」と言う。)を選択し、選択した代表ユニットで表示される代表顔画像の数(以下、「ユニット表示顔画像数」と言う。)を決定する。
ユニット選択部240は、顔画像クラスタDB23を参照して、代表人物クラスタ内のユニットIDの数、即ち、ユニットの数を取得する。そして、ユニット選択部240は、人物クラスタ選択部230から入力される代表人物クラスタの人物クラスタ表示顔画像数がユニットの数未満の場合には代表顔画像を表示するユニット(代表ユニット)の数(以下、「代表ユニット数」と言う。)を人物クラスタ表示顔画像数と同じ値に決定し、人物クラスタ表示顔画像数がユニットの数以上の場合には代表ユニット数をユニットの数と同じ値に決定する。なお、前者では代表人物クラスタ内のユニットの一部が代表ユニットになり、後者では代表人物クラスタ内の全てのユニットが代表ユニットになる。
続いて、ユニット選択部240は、代表人物クラスタ内の各ユニットに対してユニットの分類結果の確からしさを示す尤度を算出する。そして、ユニット選択部240は、1番目に代表ユニットを選択する場合には代表人物クラスタ内の尤度が最も高いユニットを代表ユニットとして選択し、2番目以降に代表ユニットを選択する場合には代表人物クラスタ内の尤度が低い順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。これととともに、ユニット選択部240は、各代表ユニットで表示される代表顔画像の数(ユニット表示顔画像数)を代表人物クラスタ内の代表ユニット間で均等になるように決定する。そして、ユニット選択部240は、代表ユニットのユニットIDとユニット表示顔画像数とを代表顔画像決定部250へ出力する。また、ユニット選択部240は、代表ユニットのユニットIDと代表人物クラスタ内で代表ユニットが選択された順番とを表示レイアウト制御部210へ出力する。この情報は表示レイアウト制御部210が代表人物クラスタ内の一番尤度が高い代表ユニットとそれ以外の代表ユニットとを異なる表示方法で表示する際に利用される。なお、代表ユニット数が1の場合には、2番目以降の代表ユニットの選択が行われないことは言うまでもない。
なお、ユニット選択部240は、人物クラスタ表示顔画像数を選択した代表人物クラスタ内のユニットの数で除算した余りの値に等しい数分の代表ユニットが選択されるまでは、選択した代表ユニットのユニット表示顔画像数をその除算した商の値に1加算した値に決定し、それ以降に選択される代表ユニットのユニット表示顔画像数をその除算した商の値に決定する。
但し、ユニット選択部240は、尤度として、代表人物クラスタの特徴量空間上の中心位置又は重心位置からユニットの特徴量空間上の中心位置又は重心位置までの距離を用い、距離が小さいほどユニットに関する尤度が高く、距離が大きいほどユニットに関する尤度が低いとする。ユニット選択部240は、顔画像クラスタDB23及び顔画像DB22を参照し、代表人物クラスタの中心位置又は重心位置を代表人物クラスタ内の顔画像の顔特徴量データを用いて算出し、代表人物クラスタ内の各ユニットの中心位置又は重心位置をユニット内の顔画像の顔特徴量データを用いて算出する。そして、ユニット選択部240は、1番目に代表ユニットを選択する場合には代表人物クラスタの中心位置又は重心位置に中心位置又は重心位置が1番近いユニットを代表ユニットとして選択する。ユニット選択部240は、2番目以降に代表ユニットを選択する場合には代表人物クラスタの中心位置又は重心位置から中心位置又は重心位置が遠い順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。
上記の各場合において、代表人物クラスタの中心位置又は重心位置に中心位置又は重心位置が1番近いユニットは代表人物クラスタに正しく分類された可能性が最も高い。一方、代表人物クラスタの中心位置又は重心位置から中心位置又は重心位置が離れているユニットほど代表人物クラスタに誤って分類された可能性が高い。従って、ユーザは、例えば、正しく分類された可能性が高い代表ユニットの顔画像と誤って分類された可能性が高い代表ユニットの顔画像とを見ながら顔画像の分類を修正することができることから、効率的なアノテーションを行うことができる。
代表顔画像選択部250は、ユニット選択部240から入力されたユニットIDのユニット(代表ユニット)の夫々に対して、以下のようにして、代表ユニット内の顔画像から代表顔画像を選択する。
代表顔画像選択部250は、顔画像クラスタDB23を参照して、代表ユニット内の顔IDの数、即ち、顔画像の数を取得する。そして、代表顔画像選択部250は、ユニット選択部240から入力されるユニット表示顔画像数が顔画像の数未満の場合には、代表ユニットでの代表顔画像の数(以下、「代表顔画像数」と言う。)をユニット表示顔画像数と同じ値に決定し、ユニット表示顔画像数が顔画像の数以上の場合には代表顔画像数を顔画像の数に決定する。なお、前者では代表ユニット内の顔画像の一部が代表顔画像になり、後者では代表ユニット内の全ての顔画像が代表顔画像になる。
続いて、代表顔画像選択部250は、代表ユニット内の各顔画像に対して顔画像の分類結果の確からしさを示す尤度を算出する。そして、代表顔画像選択部250は、1番目に代表顔画像を選択する場合には代表ユニット内の尤度が最も高い顔画像を代表顔画像として選択し、2番目以降に代表顔画像を選択する場合には代表ユニット内の尤度が低い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。そして、代表顔画像選択部250は、代表顔画像の顔IDと代表ユニット内で代表顔画像が選択された順番とを表示レイアウト制御部210へ出力する。この情報は表示レイアウト制御部210が代表顔画像を表示し、代表ユニット内の一番尤度が高い代表顔画像とそれ以外の代表顔画像とを異なる表示方法で表示する際に利用される。なお、代表顔画像数が1の場合には、2番目以降の代表顔画像の選択が行われないことは言うまでもない。
但し、代表顔画像選択部250は、尤度として、代表ユニットの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用い、距離が小さいほど顔画像に関する尤度が高く、距離が大きいほど顔画像に関する尤度が低いとする。代表顔画像選択部250は、顔画像クラスタDB23及び顔画像DB22を参照し、代表ユニットの特徴量空間上の中心位置又は重心位置を代表ユニット内の顔画像の顔特徴量データを用いて算出し、代表ユニット内の各顔画像の特徴量空間上の位置をその顔画像の顔特徴量データを用いて算出する。そして、代表顔画像選択部250は、1番目に代表顔画像を選択する場合には代表ユニットの中心位置又は重心位置に位置が1番近い顔画像を代表顔画像として選択する。代表顔画像選択部250は、2番目以降に代表顔画像を選択する場合には代表ユニットの中心位置又は重心位置から位置が遠い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。
上記の各場合において、代表ユニットの中心位置又は重心位置に位置が1番近い顔画像は代表ユニットに正しく分類された可能性が最も高い。一方、代表ユニットの中心位置又は重心位置から位置が離れている顔画像ほど代表ユニットに誤って分類された可能性が高い。従って、ユーザは、例えば、正しく分類された可能性が高い顔画像と誤って分類された可能性が高い顔画像とを見ながら顔画像の分類を修正することができることから、効率的なアノテーションを行うことができる。
<装置動作>
図1の代表画像表示装置1によって行われる処理を、顔画像を自動分類する処理(以下、「顔画像自動分類処理」と言う。)、ユーザによるアノテーションに応じて顔画像の分類を修正する処理(以下、「顔画像分類修正処理」と言う。)、及び顔画像から代表顔画像を選択して表示する処理(以下、「顔画像選択表示処理」と言う。)の3つに分けて説明する。
(顔画像自動分類処理の動作)
図5は図1の代表画像表示装置1が行う顔画像自動分類処理の流れを示すフローチャートである。
画像入力部110は、例えば撮影機器から当該撮影機器によって撮影された画像の画像データを順次読み込む。そして、画像入力部110は、画像に対して一意に画像IDを付与し、画像IDに画像が撮影された撮影時刻と画像の画像データの画像ファイル名とを対応付けて画像DB21に格納するとともに、画像データを記憶部20に記憶する(ステップS101)。
顔認識処理部120は、画像認識処理の対象となっていない画像IDがあるか、即ち、画像認識処理が実行されていない画像データ(以下、「未処理の画像データ」と言う。)があるかを判定する(ステップS102)。顔認識処理部120は、未処理の画像データがある場合には(S102:YES)、一つの未処理の画像データを記憶部20から読み出し(ステップS103)、読み出した画像データに画像認識処理を実行して画像に写っている人間の顔領域を検出する(ステップS104)。
顔認識処理部120は、画像認識処理の結果、顔領域を検出できたかを判定する(ステップS105)。顔領域が検出できなかった場合には(S105:NO)、ステップS102の処理が行われる。一方、顔領域が検出できた場合には(S105:YES)、顔認識処理部120は、検出した顔領域毎に、顔領域に対する顔画像の顔画像データを生成する。そして、顔認識処理部120は、各顔領域に対する顔画像に対して一意に顔IDを付与し、顔IDに、顔画像を含む画像の画像IDと、顔画像の顔画像データの顔画像ファイル名とを対応付けて顔画像DB22に格納するとともに、顔画像データを記憶部20に格納する(ステップS106)。
顔認識処理部120は、顔特徴量データの算出処理の対象となっていない顔IDがあるか、即ち、顔特徴量データの算出処理が実行されていない顔画像データ(以下、「未処理の顔画像データ」と言う。)があるかを判定する(ステップS107)。未処理の顔画像データがある場合には(S107:YES)、顔認識処理部120は、一つの未処理の顔画像データを記憶部20から読み出し、読み出した顔画像データから顔画像の顔特徴量データを生成する。そして、顔認識処理部120は、顔画像の顔IDに顔画像の顔特徴量データの顔特徴量ファイル名を対応付けて顔画像DB22に格納するとともに、顔特徴量データを記憶部20に格納する(ステップS108)。そして、ステップS107の処理が行われる。
未処理の顔画像データがない場合には(S107:NO)、ステップS103で読み出した画像データの画像内の全ての顔画像に対して顔特徴量データの算出を行ったことになるので、他の未処理の画像データを処理すべく、ステップS102の処理が行われる。
未処理の画像データがない場合には(S102:NO)、クラスタ形成部130は、顔画像DB22を参照して、各顔IDに対応する顔特徴量ファイル名の顔特徴量データを記憶部20から読み出す。そして、クラスタ形成部130は、読み出した顔特徴量データを用いて、類似する顔画像をまとめてユニットを形成し、形成した各ユニットにユニットIDを付与する(ステップS109)。続いて、クラスタ形成部130は、顔特徴量データを用いて、類似するユニットをまとめて人物クラスタを形成し、形成した各人物クラスタに人物IDを付与する(ステップS110)。そして、クラスタ形成部130は顔画像毎に顔画像クラスタ情報を顔画像クラスタDB23に格納する(ステップS111)。なお、顔画像クラスタ情報に含まれる分類者情報の内容はシステムであり、分類時刻情報の内容は自動分類された時刻である。
(顔画像分類修正処理の動作)
図6は図1の代表画像表示装置1が行う顔画像分類修正処理の流れを示すフローチャートである。なお、クラスタ修正部140は、表示レイアウト制御部210から入力される表示レイアウトに係る情報と操作IF部40から入力される信号とを用いて、ユーザによる選択対象(人物クラスタ、ユニット、顔画像)を判断し、ユーザが選択対象をドラッグ・アンド・ドロップした先(選択対象の移動先)を判断する。
クラスタ修正部140は操作IF部40からユーザの操作に係る操作情報を受け取ったかを判定する(ステップ201)。操作IF部40から操作情報を受け取っていない場合には(S201:NO)、ステップS201の処理が行われる。
操作情報を受け取った場合には(S201:YES)、クラスタ修正部140はユーザによる選択対象が人物クラスタであるかを判定する(ステップS202)。選択対象が人物クラスタである場合には(S202:YES)、クラスタ修正部140は、顔画像クラスタDB23において、選択された人物クラスタ内の各顔画像の顔画像クラスタ情報を修正する(ステップS203)。但し、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
選択対象が人物クラスタでない場合には(S202:NO)、クラスタ修正部140は選択対象がユニットであるかを判定する(ステップS204)。選択対象がユニットである場合には(S204:YES)、クラスタ修正部140は、顔画像クラスタDB23において、選択されたユニット内の各顔画像の顔画像クラスタ情報を修正する(ステップS205)。但し、選択されたユニットの移動先が別の人物クラスタの場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。また、選択されたユニットの移動先が人物クラスタが存在しないエリアである場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDをこれまでに付与していない人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。更に、選択されたユニットの移動先が別のユニットの場合、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先のユニットが属する人物クラスタの人物IDに、ユニットIDを移動先のユニットのユニットIDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
選択対象がユニットでない場合には(S204:NO)、クラスタ修正部140は選択対象が顔画像であるかを判定する(ステップS206)。選択対象が顔画像でない場合には(S206:NO)、ステップS201の処理が行われる。一方、選択対象が顔画像である場合には(S206:YES)、クラスタ修正部140は、顔画像クラスタDB23において、選択された顔画像の顔画像クラスタ情報を修正する(ステップS207)。但し、選択された顔画像の移動先が人物クラスタの場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、ユニットIDをこれまでに付与していないユニットIDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。また、選択された顔画像の移動先が別のユニットである場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先のユニットが属する人物クラスタの人物IDに、ユニットIDを移動先のユニットのユニットIDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。更に、選択された顔画像の移動先が人物クラスタが存在しないエリアである場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDをこれまでに付与していない人物IDに、ユニットIDをこれまでに付与していないユニットIDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
(顔画像選択表示処理の動作)
図7は図1の代表画像表示装置1が行う顔画像選択表示処理の流れを示すフローチャートである。
表示顔画像数決定部220は、表示部30の表示領域サイズを取得し(ステップS301)、顔画像の表示サイズと表示領域サイズとを利用して表示顔画像数を決定する(ステップS302)。
人物クラスタ選択部230は、顔画像クラスタDB23を参照して人物IDの数、即ち、人物クラスタの数を取得する(ステップS303)。そして、人物クラスタ選択部230は、ステップS302で決定された表示顔画像数とステップS303で取得された人物クラスタの数とを用いて、表示部30に顔画像を表示する人物クラスタ(代表人物クラスタ)の数(代表人物クラスタ数)Pを決定し、変数pの値を1にする(ステップS304)。
人物クラスタ選択部230は顔画像の数がp(変数pの値)番目に多い人物クラスタを代表人物クラスタとして選択するともに、ステップS302で決定された表示顔画像数とステップS303で取得された人物クラスタの数とを用いて、選択した代表人物クラスタで表示される代表顔画像の数(人物クラスタ表示顔画像数)を決定する(ステップS305)。
ユニット選択部240は、顔画像クラスタDB23を参照して、ステップS305で選択された代表人物クラスタ内のユニットIDの数、つまり、ユニットの数を取得する(ステップS306)。そして、ユニット選択部240は、ステップS305で決定された人物クラスタ表示顔画像数とステップS306で取得したユニットの数とを用いて、代表人物クラスタで表示部30に顔画像を表示するユニット(代表ユニット)の数(代表ユニット数)Mを決定し、変数mの値を1にする(ステップS307)。
ユニット選択部240は、代表人物クラスタ内の1番尤度が高いユニットを第1の代表ユニットとして選択するともに、ステップS305で決定された人物クラスタ表示顔画像数とステップS306で取得したユニットの数とを用いて、選択した第1の代表ユニットで表示される代表顔画像の数(ユニット表示顔画像数)を決定する(ステップS308)。このとき、ユニット選択部240は第1の代表ユニットのユニットIDと第1の代表ユニットが代表人物クラスタ内で選択された順番とを表示レイアウト制御部210へ出力する。
代表顔画像選択部250は図8に動作フローを示す代表顔画像選択処理を行って第1の代表ユニット内の顔画像から代表顔画像を選択する(ステップS309)。
ユニット選択部240は、変数mの値を1インクリメントし(ステップS310)、変数mの値が代表ユニット数M以下であるかを判定する(ステップS311)。
変数mの値が代表ユニット数M以下である場合には(S311:YES)、ユニット選択部240は、代表人物クラスタ内の(m−1)番目に尤度が低いユニットを第mの代表ユニットとして選択するともに、ステップS305で決定された人物クラスタ表示顔画像数とステップS306で取得したユニットの数とを用いて、第mの代表ユニットで表示される代表顔画像の数(ユニット表示顔画像数)を決定する(ステップS312)。このとき、ユニット選択部240は第mの代表ユニットのユニットIDと第mの代表ユニットが代表人物クラスタ内で選択された順番とを表示レイアウト制御部210へ出力する。
代表顔画像選択部250は図8に動作フローを示す代表顔画像選択処理を行って第mの代表ユニット内の顔画像から代表顔画像を選択する(ステップS313)。そして、ステップS310の処理が行われる。
変数mの値が代表ユニット数M以下でない場合には(S311:NO)、人物クラスタ選択部230は、変数pの値を1インクリメントし(ステップS314)、変数pの値が代表人物クラスタ数P以下であるかを判定する(ステップS315)。変数pの値が代表人物クラスタ数P以下である場合には(S315:YES)、代表人物クラスタ数P分の代表人物クラスタの選択が行われていないので、ステップS305の処理が行われる。
変数pの値が代表人物クラスタ数P以下でない場合には(S315:NO)、表示レイアウト制御部210は、ステップS301からステップS315までの処理の実行結果に基づいて、表示部30に代表顔画像を表示する表示制御を実行する(ステップS316)。但し、表示レイアウト制御部210は、各代表人物クラスタのエリアを示す枠を表示する。表示レイアウト制御部210は、各代表人物クラスタの枠内に当該代表人物クラスタ内の第1から第Mの代表ユニットを配置し、第1の代表ユニットのエリアを示す枠を太い線幅で表示し、第2から第Mの代表ユニットのエリアを示す枠を細い線幅で表示する。表示レイアウト制御部210は、各代表ユニットの枠内に当該代表ユニット内の第1から第Nの代表顔画像を配置し、第1の代表顔画像の枠を太い線幅で表示し、第2から第Nの代表顔画像の枠を細い線幅で表示する。なお、第1から第Nの代表顔画像は図8に動作フローを示す代表顔画像選択処理によって選択される。このように表示することによって、ユーザは、尤度の高い代表ユニットと尤度の低い代表ユニットとを簡単に区別することができ、尤度の高い代表顔画像と尤度の低い代表顔画像とを簡単に区別することができる。
「代表顔画像選択処理の動作」
図8は図7の代表顔画像選択処理の流れを示すフローチャートである。
代表顔画像選択部250は、顔画像クラスタDB23を参照して、代表ユニット内の顔画像の数を取得する(ステップS331)。そして、代表顔画像選択部250は、ステップS308又はステップS312で決定されたユニット表示顔画像数とステップS331で取得したユニットの数とを用いて、選択された代表ユニットで表示部30に表示する顔画像の数(代表顔画像数)Nを決定し、変数nの値を1にする(ステップS332)。
代表顔画像選択部250は、代表ユニット内の1番尤度が高い顔画像を第1の代表顔画像として選択する(ステップS333)。このとき、代表顔画像選択部250は第1の代表顔画像の顔IDと第1の代表顔画像が代表ユニット内で選択された順番とを表示レイアウト制御部210へ出力する。
代表顔画像選択部250は、変数nの値を1インクリメントし(ステップS334)、変数nの値が代表顔画像数N以下であるかを判定する(ステップS335)。変数nの値が代表顔画像数N以下である場合には(S335:YES)、代表顔画像選択部250は、代表ユニット内の(n−1)番目に尤度が低い顔画像を第nの代表顔画像として選択する(ステップS336)。このとき、代表顔画像選択部250は第nの代表顔画像の顔IDと第nの代表顔画像が代表ユニット内で選択された順番とを表示レイアウト制御部210へ出力する。ステップS336の処理に続いてステップS334の処理が行われる。
変数nの値が代表顔画像数N以下でない場合には(S335:NO)、代表ユニットでの代表顔画像の選択が終了したので、図7のステップS310の処理が行われる。
(代表画像表示装置の処理の例)
以下、図1の代表画像表示装置1が行う一連の処理の一例を図9から図14を参照して説明する。
図9は顔画像を自動分類した結果を特徴量空間上で模式的に表した図である。
但し、図9において、“ID111”〜“ID114”の顔画像は“ID11”のユニットに分類されており、“ID11”のユニットは“ID1”の人物クラスタに分類されている。また、“ID211”の顔画像は“ID21”のユニットに分類され、“ID221”の顔画像は“ID22”のユニットに分類され、“ID231”の顔画像は“ID23”のユニットに分類され、“ID241”〜“ID242”の顔画像は“ID24”のユニットに分類されている。“ID21”〜“ID24”のユニットは“ID2”の人物クラスタに分類されている。
“ID11”のユニット内の顔画像は、“ID111”、“ID112”、“ID113”、“ID114”の順で尤度が高いとする。また、“ID2”の人物クラスタ内のユニットは、“ID21”、“ID22”、“ID23”、“ID24”の順で尤度が高いとし、“ID24”のユニット内の顔画像は、“ID241”、“ID242”の順で尤度が高いとする。
図9に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“6”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID2”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”のユニットを第1の代表ユニットとして選択し、代表顔画像選択部250は、“ID21”の第1の代表ユニット内の最も尤度が高い“ID211”の顔画像を第1の代表顔画像として選択する。次に、ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が低い“ID24”のユニットを第2の代表ユニットとして選択し、代表顔画像選択部250は、“ID24”の第2の代表ユニット内の最も尤度が高い“ID241”の顔画像を第1の代表顔画像として選択する。更に、ユニット選択部240は、“ID2”の代表人物クラスタ内の2番目に尤度が低い“ID23”のユニットを第3の代表ユニットとして選択し、代表顔画像選択部250は、“ID23”の第3の代表ユニット内の最も尤度が高い“ID231”の顔画像を第1の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID1”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”のユニットを第1の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID11”の第1の代表ユニット内の最も尤度が高い“ID111”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID114”の顔画像を第2の代表顔画像として選択し、2番目に尤度が低い“ID113”の顔画像を第3の代表顔画像として選択する。
表示レイアウト制御部210は、上記の処理結果に基づいて、図10に示す表示内容を表示部30に表示する。図10は、図9の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210は、“ID2”の人物クラスタの枠内に“ID21”、“ID23”、“ID24”のユニットを配置し、第1の代表ユニットに相当する“ID21”のユニットの枠を太い線幅で表示し、それ以外のユニットの枠を細い線幅で表示する。“ID21”、“ID23”、“ID24”のユニットの枠内に“ID211”、“ID231”、“ID241”の顔画像を配置し、第1の代表顔画像に相当する“ID211”、“ID231”、“ID241”の顔画像の枠を太い線幅で表示する。
また、表示レイアウト制御部210は、“ID1”の人物クラスタの枠内に“ID11”のユニットを配置し、第1の代表ユニットに相当する“ID11”のユニットの枠を太い線幅で表示する。“ID11”のユニットの枠内に“ID111”、“ID113”、“ID114”の顔画像を配置し、第1の代表顔画像に相当する“ID111”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。
ユーザが図10の表示に対して“ID24”のユニットを選択して人物クラスタの枠外にドラッグ・アンド・ドロップする操作を行ったとする。この操作に応じて、クラスタ修正部140は、“ID24”のユニット内の“ID241”,“ID242”の顔画像の顔画像クラスタ情報の人物IDを“ID3”に、分類者情報を“ユーザ”に、分類時刻情報を分類を修正した時刻に修正する。顔画像の分類を修正した結果は図11に示すようになる。図11は顔画像の分類を修正した結果を特徴量空間上で模式的に表した図である。
但し、図11において、“ID111”〜“ID114”の顔画像は“ID11”のユニットに分類されており、“ID11”のユニットは“ID1”の人物クラスタに分類されている。また、“ID211”の顔画像は“ID21”のユニットに分類され、“ID221”の顔画像は“ID22”のユニットに分類され、“ID231”の顔画像は“ID23”のユニットに分類されている。“ID21”〜“ID23”のユニットは“ID2”の人物クラスタに分類されている。さらに、“ID241”〜“ID242”の顔画像は“ID24”のユニットに分類されており、“ID24”のユニットは“ID3”の人物クラスタに分類されている。
“ID11”のユニット内の顔画像は、“ID111”、“ID112”、“ID113”、“ID114”の順で尤度が高いとする。また、“ID2”の人物クラスタ内のユニットは、“ID21”、“ID22”、“ID23”の順で尤度が高いとする。“ID24”のユニット内の顔画像は、“ID241”、“ID242”の順で尤度が高いとする。
図11に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“6”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID1”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”のユニットを第1の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID11”の第1の代表ユニット内の最も尤度が高い“ID111”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID114”の顔画像を第2の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID2”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”のユニットを第1の代表ユニットとして選択し、代表顔画像選択部250は、“ID21”の第1の代表ユニット内の最も尤度が高い“ID211”の顔画像を第1の代表顔画像として選択する。次に、ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が低い“ID23”のユニットを第2の代表ユニットとして選択し、代表顔画像選択部250は、“ID23”の第2の代表ユニット内の最も尤度が高い“ID231”の顔画像を第1の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が3番目に多い“ID3”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID3”の代表人物クラスタ内の最も尤度が高い“ID24”のユニットを第1の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID24”の第1の代表ユニット内の最も尤度が高い“ID241”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID242”の顔画像を第2の代表顔画像として選択する。
表示レイアウト制御部210は、上記の処理結果に基づいて、図12に示す表示内容を表示部30に表示する。図12は、図11の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210は、“ID1”の人物クラスタの枠内に“ID11”のユニットを配置し、第1の代表ユニットに相当する“ID11”のユニットの枠を太い線幅で表示する。“ID11”のユニットの枠内に“ID111”、“ID114”の顔画像を配置し、第1の代表顔画像に相当する“ID111”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。
また、表示レイアウト制御部210は、“ID2”の人物クラスタの枠内に“ID21”、“ID23”のユニットを配置し、第1の代表ユニットに相当する“ID21”のユニットの枠を太い線幅で表示し、それ以外のユニットの枠を細い線幅で表示する。“ID21”、“ID23”のユニットの枠内に“ID211”、“ID231”の顔画像を配置し、第1の代表顔画像に相当する“ID211”、“ID231”の顔画像の枠を太い線幅で表示する。
さらに、表示レイアウト制御部210は、“ID3”の人物クラスタの枠内に“ID24”のユニットを配置し、第1の代表ユニットに相当する“ID24”のユニットの枠を太い線幅で表示する。“ID24”のユニットの枠内に“ID241”、“ID242”の顔画像を配置し、第1の代表顔画像に相当する“ID241”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。
ユーザが図12の表示に対して“ID3”の人物クラスタを選択して“ID1”の人物クラスタ内にドラッグ・アンド・ドロップする操作を行ったとする。この操作に応じて、クラスタ修正部140は、“ID3”の人物クラスタ内の“ID241”,“IS242”の顔画像の顔画像クラスタ情報の人物IDを“ID1”に、分類者情報を“ユーザ”に、分類時刻情報を分類を修正した時刻に修正する。顔画像の分類を修正した結果は図13に示すようになる。図13は顔画像の分類を修正した結果を特徴量空間上で模式的に表した図である。
但し、図13において、“ID111”〜“ID114”の顔画像は“ID11”のユニットに分類され“ID241”〜“ID242”の顔画像は“ID24”のユニットに分類されている。“ID11”、“ID24”のユニットは“ID1”の人物クラスタに分類されている。また、“ID211”の顔画像は“ID21”のユニットに分類され、“ID221”の顔画像は“ID22”のユニットに分類され、“ID231”の顔画像は“ID23”のユニットに分類されている。“ID21”〜“ID23”のユニットは“ID2”の人物クラスタに分類されている。
“ID1”の人物クラスタ内のユニットは、“ID11”、“ID24”の順で尤度が高いとする。“ID11”のユニット内の顔画像は、“ID111”、“ID112”、“ID113”、“ID114”の順で尤度が高いとし、“ID24”のユニット内の顔画像は、“ID241”、“ID242”の順で尤度が高いとする。また、“ID2”の人物クラスタ内のユニットは、“ID21”、“ID22”、“ID23”の順で尤度が高いとする。
図13に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“6”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID1”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”のユニットを第1の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID11”の第1の代表ユニット内の最も尤度が高い“ID111”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID114”の顔画像を第2の代表顔画像として選択する。次に、ユニット選択部240は、“ID1”の代表人物クラスタ内の最も尤度が低い“ID24”のユニットを第2の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID24”の第2の代表ユニット内の最も尤度が高い“ID241”の顔画像を第1の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID2”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”のユニットを第1の代表ユニットとして選択し、代表顔画像選択部250は、“ID21”の第1の代表ユニット内の最も尤度が高い“ID211”の顔画像を第1の代表顔画像として選択する。次に、ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が低い“ID23”のユニットを第2の代表ユニットとして選択し、代表顔画像選択部250は、“ID23”の第2の代表ユニット内の最も尤度が高い“ID231”の顔画像を第1の代表顔画像として選択する。更に、ユニット選択部240は、“ID2”の代表人物クラスタ内の2番目に尤度が低い“ID22”のユニットを第3の代表ユニットとして選択し、代表顔画像選択部250は、“ID22”の第3の代表ユニット内の最も尤度が高い“ID221”の顔画像を第1の代表顔画像として選択する。
表示レイアウト制御部210は、上記の処理結果に基づいて、図14に示す表示内容を表示部30に表示する。図14は、図13の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210は、“ID1”の人物クラスタの枠内に“ID11”、“ID24のユニットを配置し、第1の代表ユニットに相当する“ID11”のユニットの枠を太い線幅で表示し、それ以外のユニットの枠を細い線幅で表示する。“ID11”のユニットの枠内に“ID111”、“ID114”の顔画像を配置し、第1の代表顔画像に相当する“ID111”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。“ID24”のユニットの枠内に“ID241”の顔画像を配置し、第1の代表顔画像に相当する“ID241”の顔画像の枠を太い線幅で表示する。
また、表示レイアウト制御部210は、“ID2”の人物クラスタの枠内に“ID21”、“ID22”、“ID23”のユニットを配置し、第1の代表ユニットに相当する“ID21”のユニットの枠を太い線幅で表示し、それ以外のユニットの枠を細い線幅で表示する。“ID21”、“ID22”、“ID23”のユニットの枠内に“ID211”、“ID221”、“ID231”の顔画像を配置し、第1の代表顔画像に相当する“ID211”、“ID221”、“ID231”の顔画像の枠を太い線幅で表示する。
≪第2の実施の形態≫
以下、本発明の第2の実施の形態について図面を参照しつつ説明する。
第1の実施の形態では、顔画像は類似する顔画像をまとめたユニットに分類され、ユニットは類似するユニットをまとめた人物クラスタに分類され、この分類結果を利用して代表顔画像を選択して表示する。これに対して、本実施の形態では、顔画像は類似する顔画像をまとめた人物クラスタに分類され、この分類結果を利用して代表顔画像を選択して表示する。なお、本実施の形態の「人物クラスタ」は「クラスタ」に相当する。
なお、本実施の形態において、第1の実施の形態の構成要素と実質的に同じ構成要素には同じ符号を付し、第1の実施の形態の説明が適用できるため本実施の形態ではその説明を省略し或いは概略を記載するに留める。
<装置構成>
図15は本実施の形態の代表画像表示装置1aの全体構成図であり、代表画像表示装置1aは演算処理部10aと記憶部20aと表示部30と操作IF部40とを備える。
演算処理部10aは、例えばCPUなどで構築され、代表画像表示装置1a全体の各種制御や各種演算を行う。
記憶部20aは、例えばROM、RAM、HDDなどで構築されており、代表画像表示装置1aを制御するための各種制御プログラムや各種アプリケーションプログラムなどを記憶している。記憶部20aは、図17〜図19に動作フローを示す手順を記述したプログラムを記憶している。また、記憶部20aは、画像データ、顔画像データ及び顔特徴量データを記憶するとともに、画像DB21、顔画像DB22、及び顔画像クラスタDB23aを記憶する。
(記憶部内の各データベースの構成)
「顔画像クラスタDBの構成」
図16は図15の顔画像クラスタDB23aの一例を示す図である。顔画像クラスタDB23aは、顔画像毎に、顔画像の顔IDに、顔画像を含む画像の画像IDと、顔画像が属する人物クラスタの人物IDと、顔画像の分類者情報と顔画像の分類時刻情報とを対応付けて格納するためのデータベースである。なお、以下では、顔画像クラスタDB23aの1レコード分の情報の集まりを、適宜、「顔画像クラスタ情報」と言う。
(演算処理部の構成)
演算処理部10aは、記憶部20aから図17〜図19に動作フローを示す手順を記述したプログラムを読み出し、読み出したプログラムを実行する。これによって、演算処理部10aは画像解析部100aと画像表示部200aとして機能する。
(画像解析部の機能構成)
画像解析部100aは、図15に示すように、画像入力部110と、顔認識処理部120と、クラスタ形成部130aと、クラスタ修正部140aとを備える。
クラスタ形成部130aは、顔画像DB22を参照して、各顔IDに対応する顔特徴量ファイル名の顔特徴量データを記憶部20から読み出す。そして、クラスタ形成部130aは、読み出した顔特徴量データを用いて、類似する顔画像をまとめて人物クラスタを形成し、形成した各人物クラスタに対して一意に人物IDを付与する。
そして、クラスタ形成部130aは、顔画像毎に、顔画像の顔IDに、顔画像を含む画像の画像IDと、顔画像が属する人物クラスタの人物IDと、顔画像の分類時刻情報とを対応付けて顔画像クラスタDB23aに格納する。但し、分類者情報の内容はシステムとなり、分類時刻情報の内容は自動分類された時刻となる。
但し、クラスタ形成部130aは、記憶部20aから読み出した複数の顔特徴量データを互いに比較し、顔特徴量データ間の差が例えば予め定められた閾値以下である顔特徴量データの顔画像が互いに類似するものとして、それらを1つにまとめることによって、人物クラスタを形成する。なお、人物クラスタの形成の手法は上記の手法に限定されるものではない。
クラスタ修正部140aは、操作IF部40を介してユーザ操作を受け取り、顔画像クラスタDB23aにおいて、受け取ったユーザ操作に従ってユーザが分類の修正を施した顔画像の顔画像クラスタ情報を修正する。但し、顔画像クラスタ情報に含まれる分類者情報の内容はユーザになり、分類時刻情報の内容は分類の修正が行われた時刻になる。
(画像表示部の機能構成)
画像表示部200aは、図14に示すように、表示レイアウト制御部210aと、表示顔画像数決定部220と、人物クラスタ選択部230と、代表顔画像選択部250aとを備える。
表示レイアウト制御部210aは、表示部30に表示する顔画像の表示レイアウトを画像DB21、顔画像DB22及び顔画像クラスタDB23aの格納内容を参照して制御するものである。但し、表示レイアウト制御部210aは、表示レイアウトを制御する際に、代表顔画像選択部250aから入力される情報や操作IF部40から入力される情報も用いる。
代表顔画像選択部250aは、人物クラスタ選択部230から入力された人物IDの人物クラスタ(代表人物クラスタ)の夫々に対して、以下のようにして、代表人物クラスタ内の顔画像から代表顔画像を選択する。
代表顔画像選択部250aは、顔画像クラスタDB23aを参照して、代表人物クラスタ内の顔IDの数、即ち、顔画像の数を取得する。そして、代表顔画像選択部250aは、人物クラスタ選択部230から入力される人物クラスタ表示顔画像数が顔画像の数未満の場合には代表人物クラスタでの代表顔画像の数(代表顔画像数)を人物クラスタ表示顔画像数と同じ値に決定し、人物クラスタ表示顔画像数が顔画像の数未満の場合には代表顔画像数を取得した顔画像の数と同じ値に決定する。なお、前者では代表人物クラスタ内の顔画像の一部が代表顔画像になり、後者では代表人物クラスタ内の全ての顔画像が代表顔画像になる。
続いて、代表顔画像選択部250aは、代表人物クラスタ内の各顔画像に対して顔画像の分類結果の確からしさを示す尤度を算出する。そして、代表顔画像選択部250aは、1番目に代表顔画像を選択する場合には代表人物クラスタ内の尤度が最も高い顔画像を代表顔画像として選択し、2番目以降に代表顔画像を選択する場合には代表人物クラスタ内の尤度が低い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。そして、代表顔画像選択部250aは、代表顔画像の顔IDと代表人物クラスタ内で代表顔画像が選択された順番とを表示レイアウト制御部210aへ出力する。この情報は表示レイアウト制御部210aが代表顔画像を表示し、代表人物クラスタ内の一番尤度が高い代表顔画像とそれ以外の代表顔画像とを異なる表示方法で表示する際に利用される。なお、代表顔画像数が1の場合には、2番目以降の代表顔画像の選択が行われないことは言うまでもない。
但し、代表顔画像選択部250aは、尤度として、代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用い、距離が小さいほど顔画像に関する尤度が高く、距離が大きいほど顔画像に関する尤度が低いとする。代表顔画像選択部250aは、顔画像クラスタDB23及び顔画像DB22を参照し、代表人物クラスタの特徴量空間上の中心位置又は重心位置を代表人物クラスタ内の顔画像の顔特徴量データを用いて算出し、代表人物クラスタ内の夫々の顔画像の特徴量空間上の位置をその顔画像の顔特徴量データを用いて算出する。そして、代表顔画像選択部250aは、1番目に代表顔画像を選択する場合には代表人物クラスタの中心位置又は重心位置に位置が1番近い顔画像を代表顔画像として選択する。代表顔画像選択部250aは、2番目以降に代表顔画像を選択する場合には代表人物クラスタの中心位置又は重心位置から位置が遠い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。
上記の各場合において、代表人物クラスタの中心位置又は重心位置に位置が1番近い顔画像は代表人物クラスタに最も正しく分類された可能性が高い。一方、代表人物クラスタの中心位置又は重心位置から位置が離れている顔画像ほど代表人物クラスタに誤って分類された可能性が高い。従って、ユーザは、例えば、正しく分類された可能性が高い顔画像と誤って分類された可能性が高い顔画像とを見ながら顔画像の分類を修正することができることから、効率的なアノテーションを行うことができる。
<装置動作>
図17の代表画像表示装置1aによって行われる処理を、顔画像自動分類処理、顔画像分類修正処理、及び顔画像選択表示処理の3つに分けて説明する。
(顔画像自動分類処理の動作)
図17は図15の代表画像表示装置1aが行う顔画像自動分類処理の流れを示すフローチャートである。
画像入力部110及び顔認識処理部120は、図5を参照して説明したステップS101〜ステップS108の処理を行う。
クラスタ形成部130aは、顔画像DB22を参照して、各顔IDに対応する顔特徴量ファイル名の顔特徴量データを記憶部20から読み出す。そして、クラスタ形成部130aは、読み出した顔特徴量データを用いて、類似する顔画像をまとめて人物クラスタを形成し、形成した各人物クラスタに人物IDを付与する(ステップS151)。そして、クラスタ形成部130aは、顔画像毎に顔画像クラスタ情報を顔画像クラスタDB23に格納する(ステップS152)。なお、顔画像クラスタ情報に含まれる分類者情報の内容はシステムであり、分類時刻情報の内容は自動分類された時刻である。
(顔画像分類修正処理の動作)
図18は図15の代表画像表示装置1aが行う顔画像分類修正処理の流れを示すフローチャートである。なお、クラスタ修正部140aは、表示レイアウト制御部210aから入力される表示レイアウトに係る情報を用いるとともに、操作IF部40から入力される信号を用いて、ユーザによる選択対象(人物クラスタ、顔画像)を判断し、ユーザが選択対象をドラッグ・アンド・ドロップした先(選択対象の移動先)を判断する。
クラスタ修正部140aは、図6を参照して説明したステップS201〜ステップS202の処理を行う。クラスタ修正部140aは、顔画像クラスタDB23aにおいて、選択された人物クラスタ内の各顔画像の顔画像クラスタ情報を修正する(ステップS203a)。但し、クラスタ修正部140aは、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
クラスタ修正部140aは、図6を参照して説明したステップS206の処理を行う。クラスタ修正部140aは、顔画像クラスタDB23において、選択された顔画像の顔画像クラスタ情報を修正する(ステップS207a)。但し、選択された顔画像の移動先が人物クラスタの場合には、クラスタ修正部140aは、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。更に、選択された顔画像の移動先が人物クラスタが存在しないエリアである場合には、クラスタ修正部140aは、顔画像クラスタ情報の人物IDをこれまでに付与していない人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
(顔画像選択表示処理の動作)
図19は図15の代表画像表示装置1aが行う顔画像選択表示処理の流れを示すフローチャートである。
表示顔画像数決定部220及び人物クラスタ選択部230は、図7を参照して説明したステップS301〜ステップS305の処理を行う。
代表顔画像選択部250aは、顔画像クラスタDB23を参照して、代表人物クラスタ内の顔画像の数を取得する(ステップS351)。そして、代表顔画像選択部250aは、代表人物クラスタで表示部30に表示する顔画像の数(代表顔画像数)Nを決定し、変数nの値を1にする(ステップS352)。
代表顔画像選択部250aは、代表人物クラスタ内の1番尤度が高い顔画像を第1の代表顔画像として選択する(ステップS353)。このとき、代表顔画像選択部250は第1の代表顔画像の顔IDと第1の代表顔画像が代表人物クラスタ内で選択された順番とを表示レイアウト制御部210aへ出力する。
代表顔画像選択部250aは、変数nの値を1インクリメントし(ステップS354)、変数nの値が代表顔画像数N以下であるかを判定する(ステップS355)。変数nの値が代表顔画像数N以下である場合には(S355:YES)、代表顔画像選択部250aは、代表人物クラスタ内の(n−1)番目に尤度が低い顔画像を第nの代表顔画像として選択する(ステップS356)。このとき、代表顔画像選択部250aは第nの代表顔画像の顔IDと第nの代表顔画像が代表ユニット内で選択された順番とを表示レイアウト制御部210へ出力する。ステップS356の処理に続いてステップS354の処理が行われる。
代表顔画像選択部250aは、図7を参照して説明したステップS314〜ステップS315の処理を行う。
表示レイアウト制御部210aは、ステップS301からステップS315までの処理の実行結果に基づいて、表示部30に代表顔画像を表示する表示制御を実行する(ステップS316a)。但し、表示レイアウト制御部210aは、各代表人物クラスタのエリアを示す枠を表示する。表示レイアウト制御部210aは、各代表人物クラスタの枠内に当該代表人物クラスタ内の第1から第Nの代表顔画像を配置し、第1の代表顔画像の枠を太い線幅で表示し、第2から第Nの代表顔画像の枠を細い線幅で表示する。このように表示することによって、ユーザは、尤度の高い代表顔画像と尤度の低い代表顔画像とを簡単に区別することができる。
(代表画像表示装置の処理の例)
以下、図15の代表画像表示装置1が行う一連の処理の一例を図20から図23を参照して説明する。
図20は顔画像を自動分類した結果を特徴量空間上で模式的に表した図である。
但し、図20において、“ID11”〜“ID12”の顔画像は“ID1”の人物クラスタに分類され、“ID21”〜“ID25”の顔画像は“ID2”の人物クラスタに分類されている。
“ID1”の人物クラスタ内の顔画像は、“ID11”、“ID12”の順で尤度が高いとし、“ID2”の人物クラスタ内の顔画像は、“ID21”、“ID22”、“ID23”、“ID24”、“ID25”の順で尤度が高いとする。
図20に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“4”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID2”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID25”の顔画像を第2の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID1”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID12”の顔画像を第2の代表顔画像として選択する。
表示レイアウト制御部210aは、上記の処理結果に基づいて、図21に示す表示内容を表示部30に表示する。図21は、図20の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210aは、“ID2”の人物クラスタの枠内に“ID21”、“ID25”の顔画像を配置し、第1の代表顔画像に相当する“ID21”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。また、表示レイアウト制御部210aは、“ID1”の人物クラスタの枠内に“ID11”、“ID12”の顔画像を配置し、第1の代表顔画像に相当する“ID11”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。
ユーザが図21の表示に対して“ID25”の顔画像を選択して人物クラスタの枠外にドラッグ・アンド・ドロップする操作を行ったとする。この操作に応じて、クラスタ修正部140aは、“ID25”の顔画像の顔画像クラスタ情報の人物IDを“ID3”に、分類者情報を“ユーザ”に、分類時刻情報を分類を修正した時刻に修正する。顔画像の分類を修正した結果は図22に示すようになる。図22は顔画像の分類を修正した結果を特徴量空間上で模式的に表した図である。
但し、図22において、“ID11”〜“ID12”の顔画像は“ID1”の人物クラスタに分類され、“ID21”〜“ID24”の顔画像は“ID2”の人物クラスタに分類され、“ID25”の顔画像は“ID1”の人物クラスタに分類されている。
“ID1”の人物クラスタ内の顔画像は、“ID11”、“ID12”の順で尤度が高いとし、“ID2”の人物クラスタ内の顔画像は、“ID21”、“ID22”、“ID23”、“ID24”の順で尤度が高いとする。
図22に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“4”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID2”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID24”の顔画像を第2の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID1”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”の顔画像を第1の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が3番目に多い“ID3”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID3”の代表人物クラスタ内の最も尤度が高い“ID25”の顔画像を第1の代表顔画像として選択する。
表示レイアウト制御部210aは、上記の処理結果に基づいて、図23に示す表示内容を表示部30に表示する。図23は、図22の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210aは、“ID2”の人物クラスタの枠内に“ID21”、“ID24”の顔画像を配置し、第1の代表顔画像に相当する“ID21”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。また、表示レイアウト制御部210aは、“ID1”の人物クラスタの枠内に“ID11”の顔画像を配置し、第1の代表顔画像に相当する“ID11”の顔画像の枠を太い線幅で表示する。さらに、表示レイアウト制御部210aは、“ID3”の人物クラスタの枠内に“ID25”の顔画像を配置し、第1の代表顔画像に相当する“ID25”の顔画像の枠を太い線幅で表示する。
≪補足≫
本発明は上記の実施の形態で説明した内容に限定されず、本発明の目的とそれに関連又は付随する目的を達成するためのいかなる形態においても実施可能であり、例えば、以下であってもよい。
(1)上記の第1及び第2の実施の形態では、人物の顔画像をクラスタの対象としているが、これに限らず、人物の顔画像以外の各種画像に対して第1及び第2の実施の形態で説明した手法を適用可能である。
(2)上記の第1及び第2の実施の形態では、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタ内の顔画像の数を利用しているが、これに限らず、例えば次のような選択の指標を用いて代表人物クラスタを選択するようにしてもよい。
人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタが形成又は修正された時刻を用い、形成又は修正された時刻が新しい順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、これは、形成又は修正された時刻が古い人物クラスタはユーザが修正し終えて既に正しいものとなっており、形成又は修正された時刻が新しい人物クラスタはまだユーザが修正をし終えていないと考えられることを踏まえたものである。
また、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタ内の顔画像の顔特徴量データの分散を用いる。人物クラスタ選択部230は、各人物クラスタに対して、人物クラスタ内の顔画像の顔特徴量データを用いて当該人物クラスタ内の顔画像の顔特徴量データの分散を算出し、算出した分散が大きい順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、これは、分散が大きい人物クラスタほど特徴量空間上で顔画像の顔特徴量データが広がっているので人物クラスタの内容が誤っている可能性が高く、それが小さい人物クラスタほど特徴量空間上で顔画像の顔特徴量データが広がっていないので人物クラスタの内容が誤っている可能性が低いと考えられることを踏まえたものである。
更に、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタの特徴量空間上のクラスタ半径を用いる。人物クラスタ選択部230は、各人物クラスタに対して、人物クラスタ内の顔画像の顔特徴量データを用いて当該人物クラスタのクラスタ半径を算出し、算出したクラスタ半径が大きい順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、これは、クラスタ半径が大きい人物クラスタほど特徴量空間上で顔画像の顔特徴量データが広がっているので人物クラスタの内容が誤っている可能性が高く、それが小さい人物クラスタほど特徴量空間上で顔画像の顔特徴量データが広がっていないので人物クラスタの内容が誤っている可能性が低いと考えられることを踏まえたものである。
更に、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタの特徴量空間上の中心位置や重心位置などの位置を用いる。人物クラスタ選択部230は、各人物クラスタに対して、人物クラスタ内の顔画像の顔特徴量データを用いて当該人物クラスタの位置(中心位置、重心位置など)を算出し、特徴量空間上の特定の位置から算出した位置が近い順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、特定の位置として、例えば特徴量空間の全体から見た中心位置、全ての人物クラスタの空間特徴量上の重心位置、指定された人物クラスタの特徴量空間上の中心位置や重心位置など位置を利用することができる。
更に、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタ内の顔画像のうち分類者情報が「システム」である顔画像の比率を用いる。人物クラスタ選択部230は、各人物クラスタに対して、人物クラスタ内の顔画像のうち分類者情報が「システム」である顔画像の比率を算出し、算出した比率が大きい順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、これは、ユーザが修正していない顔画像の比率が高い人物クラスタほどまだユーザが修正をし終えておらず、比率が低い人物クラスタほどユーザが修正し終えて既に正しいものとなっていると考えられることを踏まえたものである。
(3)上記の第1の実施の形態では、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として代表人物クラスタの特徴量空間上の中心位置又は重心位置からユニットの特徴量空間上の中心位置又は重心位置までの距離を用いているが、これに限らず、例えば次のような尤度を用いて1番目の代表ユニットを選択するようにしてもよい。
ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニットが形成又は修正された時刻を用い、形成又は修正された時刻が古いほど尤度が高いとする。ユニット選択部240は、形成又は修正された時刻が最も古いユニットを1番目の代表ユニットとして選択する。なお、これは、形成又は修正された時刻が古いユニットほど分類結果が正しいためにユーザが修正を必要としないと考えられること踏まえたものである。
また、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニット内の顔画像の数を用い、顔画像の数が少ないほど尤度が高いとする。ユニット選択部240は、顔画像の数が最も少ないユニットを1番目の代表ユニットとして選択する。なお、これは、顔画像の数が少ないユニットほど誤った顔画像を含んでいる可能性が低いと考えられることを踏まえたものである。
更に、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニットの特徴量空間上のクラスタ半径を用い、クラスタ半径が小さいほど尤度が高いとする。ユニットの選択部240は、代表人物クラスタ内の各ユニットの特徴量空間上のクラスタ半径をユニット内の顔画像の顔特徴量データを用いて算出し、クラスタ半径が最も小さいユニットを1番目の代表ユニットとして選択する。なお、これは、クラスタ半径が小さいユニットほど誤った顔画像を含んでいる可能性が低いと考えられることを踏まえたものである。
更に、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニット内の顔画像の顔特徴量データの特徴量空間上の密度を用い、密度が高いほど尤度が高いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットの特徴量空間上の密度をユニット内の顔画像の顔特徴量データを用いて算出し、密度が最も高いユニットを1番目の代表ユニットとして選択する。なお、これは、密度が高いユニットほど特徴量空間上で顔画像の顔特徴量データが集まっているので誤った顔画像を含んでいる可能性が低いと考えられることを踏まえたものである。
更に、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニット内の顔画像の特徴量空間上の分散を用い、分散が小さいほど尤度が高いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットに対して、ユニット内の顔画像の顔特徴量データを用いてユニット内の顔画像の顔特徴量データの分散を算出し、分散が最も小さいユニットを代表ユニットとして選択する。なお、これは、分散が小さいユニットほど特徴量空間上で顔画像の顔特徴量データが集まっているので誤った顔画像を含んでいる可能性が低いと考えられることを踏まえたものである。
更に、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニット内の顔画像のうち分類者情報が「ユーザ」である顔画像の比率を用い、比率が大きいほど尤度が高いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットにおいて、ユニット内の顔画像のうち分類者情報が「ユーザ」である顔画像の比率を算出し、算出した比率が最も大きいユニットを1番目の代表ユニットとして選択する。なお、これは、ユーザが修正した顔画像の比率が高いユニットほどユーザが修正を終えていると考えられることを踏まえたものである。
(4)上記の第1の実施の形態では、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として代表人物クラスタの特徴量空間上の中心位置又は重心位置からユニットの特徴量空間上の中心位置又は重心位置までの距離を用いているが、これに限らず、例えば次のような尤度を用いて2番目以降の代表ユニットを選択するようにしてもよい。
ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニットが形成又は修正された時刻を用い、形成又は修正された時刻が新しいほど尤度が低いとする。ユニット選択部240は、形成又は修正された時刻が新しい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、形成又は修正された時刻が新しいユニットほどユーザが修正をし終えていないと考えられることを踏まえたものである。
また、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニット内の顔画像の数を用い、顔画像の数が多いほど尤度が低いとする。ユニット選択部240は、顔画像の数が多い順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、顔画像の数が多いユニットほど誤った顔画像を含んでいる可能性が高いと考えられることを踏まえたものである。
更に、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニットの特徴量空間上のクラスタ半径を用い、クラスタ半径が大きいほど尤度が低いとする。ユニットの選択部240は、代表人物クラスタ内の各ユニットの特徴量空間上のクラスタ半径をユニット内の顔画像の顔特徴量データを用いて算出し、クラスタ半径が大きい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、クラスタ半径が大きいユニットほど特徴量空間上で顔画像の顔特徴量データが広がっているので誤った顔画像を含んでいる可能性が高いと考えられることを踏まえたものである。
更に、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニット内の顔画像の顔特徴量データの特徴量空間上の密度を用い、密度が小さいほど尤度が低いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットの特徴量空間上の密度をユニット内の顔画像の顔特徴量データを用いて算出し、密度が小さい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、密度が小さいユニットほど特徴量空間上で顔画像の顔特徴量データが広がっているので誤った顔画像を含んでいる可能性が高いと考えられることを踏まえたものである。
更に、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニット内の顔画像の特徴量空間上の分散を用い、分散が大きいほど尤度が低いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットに対して、ユニット内の顔画像の顔特徴量データを用いてユニット内の顔画像の顔特徴量データの分散を算出し、分散が大きい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、分散が大きいユニットほど特徴量空間上で顔画像の顔特徴量データが広がっているので誤った顔画像を含んでいる可能性が高いと考えられることを踏まえたものである。
更に、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニット内の顔画像のうち分類者情報が「システム」である顔画像の比率を用い、比率が大きいほど尤度が低いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットにおいて、ユニット内の顔画像のうち分類者情報が「システム」である顔画像の比率を算出し、算出した比率が大きい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、ユーザが修正していない顔画像の比率が高いユニットほどまだユーザが修正をし終えていないと考えられることを踏まえたものである。
(5)上記の第1及び第2の実施の形態では、代表顔画像選択部250又は代表顔画像選択部250aは、1番目の代表顔画像を選択する際の尤度として代表ユニット又は代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用いているが、これに限らず、例えば次のような尤度を用いて代表顔画像を選択するようにしてもよい。
代表顔画像選択部250,250aは、1番目の代表顔画像を選択する際の尤度として、顔画像が分類された時刻(自動分類された時刻、分類の修正が施された時刻)を用い、分類された時刻が古いほど尤度が高いとする。代表顔画像選択部250,250aは、分類された時刻が最も古い顔画像を1番目の代表顔画像として選択する。なお、これは、分類された時刻が古い顔画像ほど分類結果が正しいためにユーザが修正を必要としないと考えられることを踏まえたものである。
代表顔画像選択部250,250aは、1番目の代表顔画像を選択する際の尤度として、顔画像の分類者情報を用い、分類者情報が「ユーザ」である顔画像ほど尤度が高いとする。代表顔画像選択部250,250aは、分類者情報が「ユーザ」である顔画像を優先して、1番目の代表顔画像として選択する。
代表顔画像選択部250は、1番目の代表顔画像を選択する際の尤度として、代表ユニットが属する代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用い、距離が小さいほど尤度が高いとする。代表顔画像選択部250は、代表ユニットが属する代表人物クラスタ内の顔画像の顔特徴量データを用いて代表人物クラスタの特徴量空間上の中心位置又は重心位置を算出し、代表ユニット内の各顔画像の特徴量空間上の位置をその顔特徴量データを用いて算出する。代表顔画像選択部250は、代表人物クラスタの中心位置又は重心位置に位置が最も近い顔画像を1番目の代表顔画像として選択する。
(6)上記の第1及び第2の実施の形態では、代表顔画像選択部250又は代表顔画像選択部250aは、2番目以降の代表顔画像を選択する際の尤度として代表ユニット又は代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用いているが、これに限らず、例えば次のような尤度を用いて代表顔画像を選択するようにしてもよい。
代表顔画像選択部250,250aは、2番目以降の代表顔画像を選択する際の尤度として、顔画像が分類された時刻(自動分類された時刻、分類の修正が施された時刻)を用い、分類された時刻が新しいほど尤度が低いとする。代表顔画像選択部250,250aは、分類された時刻が新しい順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。なお、これは、分類された時刻が新しい顔画像ほどユーザが正しい分類に修正をし終えていないと考えられることを踏まえたものである。
代表顔画像選択部250,250aは、2番目以降の代表顔画像を選択する際の尤度として、顔画像の分類者情報を用い、分類者情報が「システム」である顔画像ほど尤度が低いとする。代表顔画像選択部250,250aは、分類者情報が「システム」である顔画像を優先して、代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。
代表顔画像選択部250は、2番目以降の代表顔画像を選択する際の尤度として、代表ユニットが属する代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用い、距離が大きいほど尤度が低いとする。代表顔画像選択部250は、代表ユニットが属する代表人物クラスタ内の顔画像の顔特徴量データを用いて代表人物クラスタの特徴量空間上の中心位置又は重心位置を算出し、代表ユニット内の各顔画像の特徴量空間上の位置をその顔特徴量データを用いて算出する。代表顔画像選択部250は、代表人物クラスタの中心位置又は重心位置から位置が遠い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。
(7)上記の第1及び第2の実施の形態において、ユニット選択部240は代表ユニットの分布が顔特徴量空間上で均一になるように代表ユニットの選択を行ってもよく、代表顔画像選択部250,250aは代表顔画像の分布が顔特徴量空間上で均一になるように代表顔画像の選択を行ってもよい。
(8)上記の第1の実施の形態では、表示レイアウト制御部250は、第1の代表ユニットとそれ以外の代表ユニットとをその枠の線幅を変えることによって、第1の代表ユニットとそれ以外の代表ユニットとを異なる表示方法で表示している。しかしながら、これに限られるものではなく、表示レイアウト制御部250は、第1の代表ユニットとそれ以外の代表ユニットとをユーザが区別できるように、第1の代表ユニットとそれ以外の代表ユニットとを異なる表示方法で表示すればよい。例えば、第1の代表ユニットとそれ以外の代表ユニットとの表示色を変えること、第1の代表ユニット内の顔画像とそれ以外の代表ユニット内の顔画像との表示サイズを変えること、第1の代表ユニットであることを明示するためのアイコンを重畳表示することを、挙げることができる。
上記の第1及び第2の実施の形態では、表示レイアウト制御部250,250aは、第1の代表顔画像とそれ以外の代表顔画像とをその枠の線幅を変えることによって、第1の代表顔画像とそれ以外の代表顔画像とを異なる表示方法で表示している。しかしながら、これに限られるものではなく、表示レイアウト制御部250,250aは、第1の代表顔画像とそれ以外の代表顔画像とをユーザが区別できるように、第1の代表顔画像とそれ以外の代表顔画像とを異なる表示方法で表示すればよい。例えば、第1の顔画像とそれ以外の代表顔画像との表示色を変えること、第1の代表顔画像とそれ以外の代表顔画像との表示サイズを変えること、第1の代表顔画像であることを明示するためのアイコンを重畳表示することを、挙げることができる。
(9)上記の第1の実施の形態では、表示レイアウト制御部250は、例えば顔画像選択表示処理の結果の表示方法として図10に一例を示す表示方法を用いている。しかしながら、これに限らず、例えば、表示レイアウト制御部250は顔画像選択表示処理の結果の表示方法として図24に示す表示方法を用いてもよい。この場合、例えば、代表人物クラスタにおいて第1の代表ユニットから第Mの代表ユニットの順番に上から配置し、代表ユニットにおいて第1の代表顔画像から第Nの代表顔画像の順番に左から配置する。図中の空行は新たな人物の人物クラスタを形成するため、或いは、新たなユニットを形成するために利用される。
但し、分類結果を修正する場合には、ユーザは修正対象の人物クラスタ、ユニット又は顔画像を選択し、それを移動先の人物クラスタ(空行を含む。)又はユニット(空行を含む。)にドラッグ・アンド・ドロップすればよい。例えば“ID24”のユニット内の顔画像を別の人物の顔画像とする場合には、ユーザは“ID24”のユニットを選択し、それを人物クラスタの“空行”の欄にドラッグ・アンド・ドロップする。
なお、この表示方法は変形を加えることによって第2の実施の形態にも適用できる。
(10)上記の第1及び第2の実施の形態の代表画像表示装置1,1aを、ユーザがアノテーションを行う場合には第1及び第2の実施の形態などで説明した方法に従って代表顔画像を選択して表示し、ユーザが画像の閲覧のみを行う場合には異なる方法に従って代表顔画像を選択して表示し、これらの表示方法を切り替えることができるように変形してもよい。なお、閲覧のみを行う場合、例えば、代表人物クラスタでの代表ユニットを選択する際、尤度が高いユニットから順に代表ユニットとして選択していき、代表ユニット又は代表人物クラスタで代表顔画像を選択する際、尤度が高い顔画像から順に代表顔画像として選択していくようにする。こうすることにより、ユーザは、代表人物クラスタがどの人物のものであるか、代表ユニットがどの人物のものであるかを把握しやすくなる。
(11)上記の第1及び第2の実施の形態では、人物クラスタ選択部230は、代表人物クラスタ内で表示する代表顔画像の数(人物クラスタ表示顔画像数)が代表人物クラスタ間でほぼ均等になるように、人物クラスタ表示顔画像数を決定しているが、これに限らず、例えば次のようなものであってもよい。
第1の実施の形態では、人物クラスタ選択部230は、代表人物クラスタ内のユニットの数を考慮して、ユニットの数が多い代表人物クラスタほど代表人物クラスタ内で表示する代表顔画像の数(人物クラスタ表示顔画像数)が多くなるように、人物クラスタ表示顔画像数を決定する。
また、第1及び第2の実施の形態では、人物クラスタ選択部230は、代表人物クラスタ内の顔画像の数を考慮して、顔画像の数が多い代表人物クラスタほど代表人物クラスタ内で表示する代表顔画像の数(人物クラスタ表示顔画像数)が多くなるように、人物クラスタ表示顔画像数を決定する。
(12)上記の第1の実施の形態では、ユニット選択部240は、代表ユニット内で表示する代表顔画像の数(ユニット表示顔画像数)が代表ユニット間でほぼ均等になるように、ユニット表示顔画像数を決定しているが、これに限らず、例えば次のようなものであってもよい。ユニットタ選択部240は、代表ユニット内の顔画像の数を考慮して、顔画像の数が多い代表ユニットほど代表ユニット内で表示する代表顔画像の数(ユニット表示顔画像数)が多くなるように、ユニット表示顔画像数を決定する。
(13)上記の各実施の形態の各装置は、CPUやMPUで動作するソフトウェア構成に限られるものではなく、例えば、ハードウェア構成で実現されてもよい。この場合、典型的には集積回路であるLSI(Large Scale Integration)として実現される。これらは、個別に1チップ化されてもよいし、全てまたは一部を含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
本発明は、画像のクラスタリングの結果を表示する代表画像表示装置に有用である。
1 代表画像表示装置
10,10a 演算処理部
20,20a 記憶部
21 画像データベース(画像DB)
22 顔画像データベース(顔画像DB)
23,23a 顔画像クラスタデータベース(顔画像クラスタDB)
30 表示部
40 操作インターフェース部(操作IF部)
100 画像解析部
110 画像入力部
120 顔認識処理部
130,130a クラスタ形成部
140,140a クラスタ修正部
200 画像表示部
210 表示レイアウト制御部
220 表示顔画像数決定部
230 人物クラスタ選択部
240 ユニット選択部
250,250a 代表顔画像選択部
本発明は、デジタルスチルカメラやデジタルビデオカメラなどで撮影された画像を分類して表示する技術に関する。
従来の画像を分類して表示する表示手法として、画像に撮影されている人物に着目し、顔画像認識技術を用いて類似する顔同士をクラスタ単位に分類し、同じ人物が写っている写真毎に表示するものがある。
また、顔画像のクラスタリングの精度を向上させることを目的として、ユーザにクラスタリング結果を修正する操作インターフェース(以下、「操作IF」と言う。)を提供し、人物の分類を補助する目的のものがある(例えば、非特許文献1参照。)。これは、ユーザが顔画像のクラスタリングの結果に対して手動で編集(アノテーション)を行うことによって顔画像のクラスタリングの結果を修正できるようになっている。例えば、異なる複数の人物の顔画像が一つのクラスタにまとめられていた場合、ユーザの判断で該クラスタを個別の人物のクラスタに分割することで、異なる人物の顔画像が同じクラスタ内に混在する状況を解消できる。一方、同一人物の顔画像が複数のクラスタに分かれていた場合は、該複数のクラスタを一つのクラスタに結合することで、同一人物の顔画像が複数のクラスタに分かれている状況を解消できる。
Jingyu Cui, Fang Wen, Rong Xiao, Yuandong Tian, Xiaoou Tang."EasyAlbun: An Interactive Photo Annotation System Based on FaceClustering and Re-ranking". CHI 2007 Proceedings, p.367-376, 2007.
しかしながら、アノテーションを行う際に通常クラスタ内の顔画像の一部を代表顔画像として表示することになるが、上記の従来技術では表示する代表顔画像の選択の仕方については考慮されていない。このため、ユーザにとって修正すべき顔画像が表示されず、顔画像のクラスタリング結果に対して効率的にアノテーションを行うことができないと言う問題がある。なお、係る問題は、ユーザが顔画像以外の画像のクラスタリング結果に対してアノテーションを行う場合にも発生する。
そこで、本発明は、ユーザが画像の分類結果に対して効率的にアノテーションを行えるようにする代表画像表示装置及び代表画像選択方法を提供することを目的とする。
上記目的を達成するために本発明の代表画像表示装置は、複数の画像が類似する画像をまとめた下位クラスタに分類され、複数の下位クラスタが類似する下位クラスタをまとめた上位クラスタに分類された分類結果を用いて、表示部に表示する代表画像を選択して表示部に表示する代表画像表示装置において、1以上の上位クラスタを代表上位クラスタとして選択する上位クラスタ選択部と、各代表上位クラスタにおいて、下位クラスタの分類結果の確からしさを示す尤度に基づいて代表上位クラスタ内の下位クラスタからM(Mは1以上で代表上位クラスタ内の下位クラスタの数以下の整数)個の下位クラスタを代表下位クラスタとして選択する下位クラスタ選択部と、各代表下位クラスタにおいて、画像の分類結果の確からしさを示す尤度に基づいて代表下位クラスタ内の画像からN(Nは1以上で代表下位クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択部と、を備える。
また、本発明の代表画像表示方法は、複数の画像が類似する画像をまとめた下位クラスタに分類され、複数の下位クラスタが類似する下位クラスタをまとめた上位クラスタに分類された分類結果を用いて、表示する代表画像を選択して表示する代表画像表示方法において、1以上の上位クラスタを代表上位クラスタとして選択する上位クラスタ選択ステップと、各代表上位クラスタにおいて、下位クラスタの分類結果の確からしさを示す尤度に基づいて代表上位クラスタ内の下位クラスタからM(Mは1以上で代表上位クラスタ内の下位クラスタの数以下の整数)個の下位クラスタを代表下位クラスタとして選択する下位クラスタ選択ステップと、各代表下位クラスタにおいて、画像の確からしさを示す分類結果の尤度に基づいて代表下位クラスタ内の画像からN(Nは1以上で代表下位クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択ステップと、を有する。
上記の代表画像表示装置及び代表画像表示方法によれば、下位クラスタの分類結果の確からしさを示す尤度及び画像の分類結果の確からしさを示す尤度を用いて代表画像を選択して表示するため、代表画像をランダムに選択して表示する場合に比べて、ユーザは分類結果に対して効率的にアノテーションを行うことができる。
上記の代表画像表示装置において、前記下位クラスタ選択部は、前記代表上位クラスタ内の1番尤度が高い下位クラスタを第1の代表下位クラスタとして選択し、前記Mが2以上の場合には、更に、前記代表上位クラスタ内の尤度が低い方から(M−1)個の下位クラスタを第2から第Mの代表下位クラスタとして選択するようにしてもよい。
これによれば、ユーザは尤度の高い下位クラスタ内の画像を見ながら、場合によっては更に尤度の低い下位クラスタ内の画像を見ながら、分類結果に対してアノテーションを行うことができるので、ユーザは上位クラスタに誤って分類された下位クラスタの分離などアノテーションを効率的に行うことができる。
上記の代表画像表示装置において、前記下位クラスタ選択部は、前記尤度として、代表上位クラスタの特徴量空間上の中心位置又は重心位置から下位クラスタの特徴量空間上の中心位置又は重心位置までの距離を用いるようにしてもよい。
上記の代表画像表示装置において、前記下位クラスタ選択部は、前記第1の代表下位クラスタの選択に用いる前記尤度として、代表上位クラスタの特徴量空間上の中心位置又は重心位置から下位クラスタの特徴量空間上の中心位置又は重心位置までの距離を用い、前記第2から第Mの代表下位クラスタの選択に用いる前記尤度として、ユーザが分類を修正した下位クラスタであるか否かを示す情報を用いるようにしてもよい。
上記の代表画像表示装置において、前記下位クラスタ選択部は、前記第1の代表下位クラスタの選択に用いる前記尤度として、代表上位クラスタの特徴量空間上の中心位置又は重心位置から下位クラスタの特徴量空間上の中心位置又は重心位置までの距離を用い、前記第2から第Mの代表下位クラスタの選択に用いる前記尤度として、下位クラスタ内の画像の数を用いるようにしてもよい。
これらによれば、適切な下位クラスタの選択ができる。
上記の代表画像表示装置において、前記代表画像選択部は、前記代表下位クラスタ内の1番尤度が高い画像を第1の代表画像として選択し、前記Nが2以上の場合には、更に、前記代表下位クラスタ内の尤度が低い方から(N−1)個の画像を第2から第Nの代表画像として選択するようにしてもよい。
これによれば、ユーザは尤度の高い画像を見ながら、場合によっては更に尤度の低い画像を見ながら、分類結果に対してアノテーションを行うことができるので、ユーザは下位クラスタに誤って分類された画像の分離などアノテーションを効率的に行うことができる。
上記の代表画像表示装置において、前記代表画像選択部は、前記尤度として、代表下位クラスタの特徴量空間上の中心位置又は重心位置から画像の特徴量空間上の位置までの距離を用いるようにしてもよい。
上記の代表画像表示装置において、前記代表画像選択部は、前記第1の代表画像の選択に用いる前記尤度として、代表下位クラスタの特徴量空間上の中心位置又は重心位置から画像の特徴量空間上の位置までの距離を用い、前記第2から第Nの代表画像の選択に用いる前記尤度として、ユーザが分類を修正した画像であるか否かを示す情報を用いるようにしてもよい。
これらによれば、適切な画像の選択ができる。
上記の代表画像表示装置において、第1の代表画像と第2から第Nの代表画像とを異なる表示方法で前記表示部に表示する処理を行う表示レイアウト制御部を更に備えるようにしてもよい。
これによれば、ユーザは尤度の高い画像と尤度の低い画像とを一目見て区別できる。
上記の代表画像表示装置において、前記表示部の表示領域サイズとユーザが視認可能な画像サイズとに基づいて前記表示部に表示する代表画像の数を決定する表示画像数決定部を更に備えるようにしてもよい。
これによれば、ユーザは視認可能な画像サイズで多くの画像を見ながら分類結果に対してアノテーションを行えるので、ユーザはアノテーションを効率的に行うことができる。
上記の代表画像表示装置において、前記画像は人物の顔画像であってもよい。
これによれば、ユーザはニーズの高い人物の顔画像の分類結果に対して効率的にアノテーションを行うことができる。
本発明の代表画像表示装置は、複数の画像が類似する画像をまとめたクラスタに分類された分類結果を用いて、表示部に表示する代表画像を選択して表示部に表示する代表画像表示装置において、1以上のクラスタを代表クラスタとして選択するクラスタ選択部と、各代表クラスタにおいて、画像の分類結果の確からしさを示す尤度に基づいて代表クラスタ内の画像からN(Nは1以上で代表クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択部と、を備える。
また、本発明の代表画像表示方法は、複数の画像が類似する画像をまとめたクラスタに分類された分類結果を用いて、表示する代表画像を選択して表示する代表画像表示方法において、1以上のクラスタを代表クラスタとして選択するクラスタ選択ステップと、各代表クラスタにおいて、画像の分類結果の確からしさを示す尤度に基づいて代表クラスタ内の画像からN(Nは1以上で代表クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択ステップと、を有する。
上記の代表画像表示装置及び代表画像表示方法によれば、画像の分類結果の確からしさを示す尤度を用いて代表画像を選択して表示するため、代表画像をランダムに選択して表示する場合に比べて、ユーザは分類結果に対して効率的にアノテーションを行うことができる。
上記の代表画像表示装置において、前記代表画像選択部は、前記代表クラスタ内の1番尤度が高い画像を第1の代表画像として選択し、前記Nが2以上の場合には、更に、前記代表クラスタ内の尤度が低い方から(N−1)個の画像を前記第2から第Nの代表画像として選択するようにしてもよい。
これによれば、ユーザは尤度の高い画像を見ながら、場合によっては更に尤度の低い画像を見ながら、分類結果に対してアノテーションを行うことができるので、ユーザはクラスタに誤って分類された画像の分離などアノテーションを効率的に行うことができる。
第1の実施の形態の代表画像表示装置の全体構成図。 図1の画像データベース(画像DB)の一例を示す図。 図1の顔画像データベース(顔画像DB)の一例を示す図。 図1の顔画像クラスタデータベース(顔画像クラスタDB)の一例を示す図。 図1の代表画像表示装置が行う顔画像自動分類処理の流れを示すフローチャート。 図1の代表画像表示装置が行う顔画像分類修正処理の流れを示すフローチャート。 図1の代表画像表示装置が行う顔画像選択表示処理の流れを示すフローチャート。 図7の代表顔画像選択処理の流れを示すフローチャート。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図1の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 第2の実施の形態の代表画像表示装置の全体構成図。 図15の顔画像クラスタデータベース(顔画像クラスタDB)の一例を示す図。 図15の代表画像表示装置が行う顔画像自動分類処理の流れを示すフローチャート。 図15の代表画像表示装置が行う顔画像分類修正処理の流れを示すフローチャート。 図15の代表画像表示装置が行う顔画像選択表示処理の流れを示すフローチャート。 図15の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図15の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 図15の代表画像表示装置が行う処理の一例を説明するための顔画像の分類結果を特徴量空間上で模式的に表した図。 図15の代表画像表示装置が行う処理の一例を説明するための顔画像選択表示処理の結果に基づく表示部の表示内容を表した図。 顔画像選択表示処理の結果に基づく表示部の表示内容の他の表示方法を示す図。
≪第1の実施の形態≫
以下、本発明の第1の実施の形態について図面を参照しつつ説明する。
<装置構成>
図1は本実施の形態の代表画像表示装置1の全体構成図であり、代表画像表示装置1は演算処理部10と記憶部20と表示部30と操作インターフェース部(以下、「操作IF部」と言う。)40とを備える。
演算処理部10は、例えばCPU(Central Processing Unit)などで構築され、代表画像表示装置1全体の各種制御や各種演算を行う。
記憶部20は、例えばROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)などで構築されており、代表画像表示装置1を制御するための各種制御プログラムや各種アプリケーションプログラムなどを記憶している。記憶部20は、図5〜図8に動作フローを示す手順を記述したプログラムを記憶している。また、記憶部20は、画像データ、顔画像データ及び顔特徴量データを記憶するとともに、画像データベース(以下、「画像DB」と言う。)21、顔画像データベース(以下、「顔画像DB」と言う。)22、及び顔画像クラスタデータベース(以下、「顔画像クラスタDB」と言う。)23を記憶する。
表示部30は、液晶ディスプレイやプラズマディスプレイなどを備える表示デバイスである。
操作IF部40は、マウスやタッチパネル等によりユーザ操作を受け付ける。
(記憶部内の各データベースの構成)
以下、記憶部20に記憶されている画像DB21、顔画像DB22、及び顔画像クラスタDB23について順に説明する。
「画像DBの構成」
図2は図1の画像DB21の一例を示す図である。画像DB21は、画像毎に、画像を識別するためのID(以下、「画像ID」と言う。)に、画像が撮影された撮影時刻と画像の画像データの画像ファイル名とを対応付けて格納するためのデータベースである。但し、画像ファイル名は画像データの実体を表すファイル名である。
「顔画像DBの構成」
図3は図1の顔画像DB22の一例を示す図である。顔画像DB22は、顔画像毎に、顔画像を識別するためのID(以下、「顔ID」と言う。)に、顔画像を含む画像の画像IDと、顔画像の顔画像データの顔画像ファイル名と、顔画像の顔画像データから算出される顔特徴量データの顔特徴量ファイル名とを対応付けて格納するためのデータベースである。
但し、顔画像ファイル名は顔画像データの実体を表すファイル名であり、顔特徴量ファイル名は顔特徴量データの実体を表すファイル名である。但し、顔画像データはビットマップ形式で格納されているが、これに限らず、顔画像データは他のデータ形式で格納されていてもよい。なお、顔画像データ及び顔特徴量データについては後述する。
「顔画像クラスタDBの構成」
図4は図1の顔画像クラスタDB23の一例を示す図である。顔画像クラスタDB23は、顔画像毎に、顔画像の顔IDに、顔画像を含む画像の画像IDと、顔画像が属する人物クラスタを識別するためのID(以下、「人物IDと言う。)と、顔画像が属するユニットを識別するためのID(以下、「ユニットIDと言う。)と、顔画像の分類者情報と、顔画像の分類時刻情報とを対応付けて格納するためのデータベースである。但し、人物クラスタは同一人物の顔画像によって形成されるクラスタであり、ユニットは人物クラスタ内で特に類似する顔画像をまとめたクラスタであり、人物クラスタの形成及びユニットの形成については後述する。なお、本実施の形態の「ユニット」は「下位クラスタ」に相当し、「人物クラスタ」は「上位クラスタ」に相当する。
但し、分類者情報は、顔画像が後述するクラスタ形成部130によって自動分類された顔画像であるか、ユーザのアノテーションに従って後述するクラスタ修正部140によって分類の修正が行われた顔画像であるかを示す情報であり、分類者情報の内容は前者の場合には「システム」となり、後者の場合には「ユーザ」となる。分類時刻情報は顔画像が自動分類された時刻、分類の修正が行われた場合には分類の修正が行われた時刻を示す情報である。
なお、以下では、顔画像クラスタDB23の1レコード分の情報の集まりを、適宜、「顔画像クラスタ情報」と言う。
(演算処理部の構成)
演算処理部10は、記憶部20から図5〜図8に動作フローを示す手順を記述したプログラムを読み出し、読み出したプログラムを実行する。これによって、演算処理部10は画像解析部100と画像表示部200として機能する。
(画像解析部の機能構成)
画像解析部100は、図1に示すように、画像入力部110と、顔認識処理部120と、クラスタ形成部130と、クラスタ修正部140とを備える。
画像入力部110は、例えばデジタルスチルカメラやデジタルビデオカメラなどの撮影機器によって撮影された画像の画像データを読み込む。そして、画像入力部110は、画像に対して一意に画像IDを付与し、画像IDに画像が撮影された撮影時刻と画像の画像データの画像ファイル名とを対応付けて画像DB21に格納するとともに、読み込んだ画像データを記憶部20に格納する。
但し、撮影時刻は画像データが撮影された日時情報であり、日時情報はデジタルビデオカメラやデジタルスチルカメラなどの撮影機器により撮影時に記録され、画像入力部110はEXIF(ExchangeableImage File Format)情報として画像ファイルに記憶されている日時情報を撮影時刻として読み出す。
なお、代表画像表示装置1が備える例えばUSB(Universal Serial Bus)コネクタと撮影機器などを直接ケーブルで接続し、画像入力部110が撮影機器に装着された記録媒体から画像データを読み込むようにしてもよい。また、画像入力部110は、代表画像表示装置1に装着されたSD(SecureDigital)メモリーカードなどの記録媒体から画像データを読み込むようにしてもよい。
また、画像データは一般的なJPEG(Joint Photographic Experts Group)形式で圧縮符号化された画像データであってもよく、MPEG−4(MovingPicture Experts Group phase 4)等の動画形式で圧縮符号化された画像データであってもよい。
顔認識処理部120は、画像DB21を参照して、画像ID毎に、画像IDに対応する画像ファイル名の画像データを記憶部20から読み出し、読み出した画像データに画像認識処理を実行して画像に写っている人間の顔領域を検出する。顔認識処理部120は、1以上の顔領域を検出した場合には、検出した顔領域毎に、顔領域に対する顔画像の顔画像データを生成する。そして、顔認識処理部120は、顔領域に対する顔画像に対して一意に顔IDを付与し、顔IDに、顔画像を含む画像の画像IDと、顔画像の顔画像データの顔画像ファイル名とを対応付けて顔画像DB22に格納するとともに、顔画像データを記憶部20に格納する。
続いて、顔認識処理部120は、顔画像DB22を参照して、顔ID毎に、顔IDに対応する顔画像ファイル名の顔画像データを記憶部20から読み出し、読み出した顔画像データから特徴量ベクトルで記述される顔画像の顔特徴量データを生成する。そして、顔認識処理部120は、顔画像の顔IDに顔画像の顔特徴量データの顔特徴量ファイル名を対応付けて顔画像DB22に格納するとともに、顔特徴量データを記憶部20に格納する。
なお、1つの画像IDに対応する顔IDが複数存在する場合はあるが、1つの顔IDに対応する画像IDが複数存在する場合はない。
但し、顔認識処理部120は、画像データに対して例えば輪郭抽出処理や色分布分析処理等の公知の画像処理を行うことによって顔領域を検出し、画像データのうちの顔領域部分のデータから当該顔領域に対する顔画像の顔画像データを生成する。また、顔認識処理部120は、顔画像データをガボールフィルタ等を用いて特徴量ベクトルのデータへ変換することによって、顔画像データに対応する顔画像の顔特徴量データを生成する。
クラスタ形成部130は、顔画像DB22を参照して、各顔IDに対応する顔特徴量ファイル名の顔特徴量データを記憶部20から読み出す。そして、クラスタ形成部130は、読み出した顔特徴量データを用いて、類似する顔画像をまとめてユニットを形成し、形成した各ユニットに対して一意にユニットIDを付与する。続いて、クラスタ形成部130は、各ユニットの類似度を算出し、類似するユニットをまとめて人物クラスタを形成し、形成した人物クラスタに対して一意に人物IDを付与する。
そして、クラスタ形成部130は、顔画像毎に、顔画像の顔IDに、顔画像を含む画像の画像IDと、顔画像が属する人物クラスタの人物IDと、顔画像が属するユニットのユニットIDと、顔画像の分類者情報と、顔画像の分類時刻情報とを対応付けて顔画像クラスタDB23に格納する。但し、分類者情報の内容はシステムとなり、分類時刻情報の内容は自動分類された時刻となる。
但し、クラスタ形成部130は、記憶部20から読み出した複数の顔特徴量データを互いに比較し、顔特徴量データ間の差が第1閾値以下である顔特徴量データの顔画像が互いに類似するものとして、それらを1つにまとめることによって、ユニットを形成する。
また、クラスタ形成部130は、形成した複数のユニットの夫々に対して、ユニットの特徴量空間上の中心位置又は重心位置に最も近い位置の顔特徴量データの顔画像を選択する。そして、クラスタ形成部130は、複数のユニットの夫々から選択した顔画像の顔特徴量データを互いに比較し、顔特徴量データ間の差が第2閾値以下である顔特徴量データに対応するユニットが互いに類似するものとして、それらを1つにまとめることによって、人物クラスタを形成する。
なお、上記の第1閾値及び第2閾値は例えば第1閾値が第2閾値より小さくなるように予め設定される。また、ユニット及び人物クラスタの形成の手法は上記の手法に限定されるものではない。
クラスタ修正部140は、操作IF部40を介してユーザ操作を受け取り、顔画像クラスタDB23において、受け取ったユーザ操作に従ってユーザが分類結果の修正を施した顔画像の顔画像クラスタ情報を修正する。但し、顔画像クラスタ情報に含まれる分類者情報の内容はユーザになり、分類時刻情報の内容は分類の修正が行われた時刻になる。
(画像表示部の機能構成)
画像表示部200は、図1に示すように、表示レイアウト制御部210と、表示顔画像数決定部220と、人物クラスタ選択部230と、ユニット選択部240と、代表顔画像選択部250とを備える。
表示レイアウト制御部210は、表示部30に表示する顔画像の表示レイアウトを画像DB21、顔画像DB22及び顔画像クラスタDB23の格納内容を参照して制御するものである。但し、表示レイアウト制御部210は、表示レイアウトを制御する際に、ユニット選択部240及び代表顔画像選択部250から入力される情報や操作IF部40から入力される情報も用いる。
表示顔画像数決定部220は、表示レイアウト制御部210から表示部30に表示する顔画像(以下、「代表顔画像」と言う。)の数(以下、「表示顔画像数」と言う。)の決定を要求されると、表示顔画像数を決定し、決定した表示顔画像数を人物クラスタ選択部230へ出力する。
本実施の形態では、表示顔画像数決定部220は、表示部30の表示領域サイズを取得する。そして、表示顔画像数決定部220は、表示部30に表示する顔画像の表示サイズを顔画像の視認性を確保できるようなサイズに決定し、表示部30の表示領域サイズと顔画像の表示サイズとに基づいて表示顔画像数を決定する。なお、表示部30の表示領域サイズが一定である場合には、顔画像の表示サイズが大きければ表示顔画像数は少なくなり、顔画像の表示サイズが小さければ表示顔画像数は多くなる。
人物クラスタ選択部230は、顔画像クラスタDB23を参照して、人物IDの数、即ち、人物クラスタの数を取得する。そして、人物クラスタ選択部230は、表示顔画像数が人物クラスタの数未満の場合には代表顔画像を表示する人物クラスタ(以下、「代表人物クラスタ」と言う。)の数(以下、「代表人物クラスタ数」と言う。)を表示顔画像数と同じ値に決定し、表示顔画像数が取得した人物クラスタの数以上の場合には代表人物クラスタ数を取得した人物クラスタの数と同じ値に決定する。なお、前者では人物クラスタの一部が代表人物クラスタになり、後者では全ての人物クラスタが代表人物クラスタになる。
続いて、人物クラスタ選択部230は、顔画像クラスタDB23を参照して、人物クラスタ内の顔画像の数が多い順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択するとともに、各代表人物クラスタで表示される代表顔画像の数(以下、「人物クラスタ表示顔画像数」と言う。)を代表人物クラスタ間で均等になるように決定する。そして、人物クラスタ選択部230は、代表人物クラスタの人物IDと人物クラスタ表示顔画像数とをユニット選択部240へ出力する。
なお、人物クラスタ選択部230は、表示顔画像数を人物クラスタの数で除算した余りの値に等しい数分の代表人物クラスタが選択されるまでは、選択した代表人物クラスタの人物クラスタ表示顔画像数をその除算した商の値に1加算した値に決定し、それ以降に選択される代表人物クラスタの人物クラスタ表示顔画像数をその除算した商の値に決定する。
顔画像の数が多い人物クラスタは顔画像の数が少ない人物クラスタに比べて誤った顔画像を含んでいる可能性が高いと考えられる。従って、代表人物クラスタの選択に人物クラスタ内の顔画像の数を用いることによって、人物クラスタ選択部230は、誤った顔画像を含んでいる可能性が高い人物クラスタを代表人物クラスタとして選択する可能性が高くなる。
ユニット選択部240は、人物クラスタ選択部230から入力された人物IDの人物クラスタ(代表人物クラスタ)の夫々に対して、以下のようにして、代表人物クラスタ内のユニットから代表顔画像を表示するユニット(以下、「代表ユニット」と言う。)を選択し、選択した代表ユニットで表示される代表顔画像の数(以下、「ユニット表示顔画像数」と言う。)を決定する。
ユニット選択部240は、顔画像クラスタDB23を参照して、代表人物クラスタ内のユニットIDの数、即ち、ユニットの数を取得する。そして、ユニット選択部240は、人物クラスタ選択部230から入力される代表人物クラスタの人物クラスタ表示顔画像数がユニットの数未満の場合には代表顔画像を表示するユニット(代表ユニット)の数(以下、「代表ユニット数」と言う。)を人物クラスタ表示顔画像数と同じ値に決定し、人物クラスタ表示顔画像数がユニットの数以上の場合には代表ユニット数をユニットの数と同じ値に決定する。なお、前者では代表人物クラスタ内のユニットの一部が代表ユニットになり、後者では代表人物クラスタ内の全てのユニットが代表ユニットになる。
続いて、ユニット選択部240は、代表人物クラスタ内の各ユニットに対してユニットの分類結果の確からしさを示す尤度を算出する。そして、ユニット選択部240は、1番目に代表ユニットを選択する場合には代表人物クラスタ内の尤度が最も高いユニットを代表ユニットとして選択し、2番目以降に代表ユニットを選択する場合には代表人物クラスタ内の尤度が低い順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。これととともに、ユニット選択部240は、各代表ユニットで表示される代表顔画像の数(ユニット表示顔画像数)を代表人物クラスタ内の代表ユニット間で均等になるように決定する。そして、ユニット選択部240は、代表ユニットのユニットIDとユニット表示顔画像数とを代表顔画像決定部250へ出力する。また、ユニット選択部240は、代表ユニットのユニットIDと代表人物クラスタ内で代表ユニットが選択された順番とを表示レイアウト制御部210へ出力する。この情報は表示レイアウト制御部210が代表人物クラスタ内の一番尤度が高い代表ユニットとそれ以外の代表ユニットとを異なる表示方法で表示する際に利用される。なお、代表ユニット数が1の場合には、2番目以降の代表ユニットの選択が行われないことは言うまでもない。
なお、ユニット選択部240は、人物クラスタ表示顔画像数を選択した代表人物クラスタ内のユニットの数で除算した余りの値に等しい数分の代表ユニットが選択されるまでは、選択した代表ユニットのユニット表示顔画像数をその除算した商の値に1加算した値に決定し、それ以降に選択される代表ユニットのユニット表示顔画像数をその除算した商の値に決定する。
但し、ユニット選択部240は、尤度として、代表人物クラスタの特徴量空間上の中心位置又は重心位置からユニットの特徴量空間上の中心位置又は重心位置までの距離を用い、距離が小さいほどユニットに関する尤度が高く、距離が大きいほどユニットに関する尤度が低いとする。ユニット選択部240は、顔画像クラスタDB23及び顔画像DB22を参照し、代表人物クラスタの中心位置又は重心位置を代表人物クラスタ内の顔画像の顔特徴量データを用いて算出し、代表人物クラスタ内の各ユニットの中心位置又は重心位置をユニット内の顔画像の顔特徴量データを用いて算出する。そして、ユニット選択部240は、1番目に代表ユニットを選択する場合には代表人物クラスタの中心位置又は重心位置に中心位置又は重心位置が1番近いユニットを代表ユニットとして選択する。ユニット選択部240は、2番目以降に代表ユニットを選択する場合には代表人物クラスタの中心位置又は重心位置から中心位置又は重心位置が遠い順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。
上記の各場合において、代表人物クラスタの中心位置又は重心位置に中心位置又は重心位置が1番近いユニットは代表人物クラスタに正しく分類された可能性が最も高い。一方、代表人物クラスタの中心位置又は重心位置から中心位置又は重心位置が離れているユニットほど代表人物クラスタに誤って分類された可能性が高い。従って、ユーザは、例えば、正しく分類された可能性が高い代表ユニットの顔画像と誤って分類された可能性が高い代表ユニットの顔画像とを見ながら顔画像の分類を修正することができることから、効率的なアノテーションを行うことができる。
代表顔画像選択部250は、ユニット選択部240から入力されたユニットIDのユニット(代表ユニット)の夫々に対して、以下のようにして、代表ユニット内の顔画像から代表顔画像を選択する。
代表顔画像選択部250は、顔画像クラスタDB23を参照して、代表ユニット内の顔IDの数、即ち、顔画像の数を取得する。そして、代表顔画像選択部250は、ユニット選択部240から入力されるユニット表示顔画像数が顔画像の数未満の場合には、代表ユニットでの代表顔画像の数(以下、「代表顔画像数」と言う。)をユニット表示顔画像数と同じ値に決定し、ユニット表示顔画像数が顔画像の数以上の場合には代表顔画像数を顔画像の数に決定する。なお、前者では代表ユニット内の顔画像の一部が代表顔画像になり、後者では代表ユニット内の全ての顔画像が代表顔画像になる。
続いて、代表顔画像選択部250は、代表ユニット内の各顔画像に対して顔画像の分類結果の確からしさを示す尤度を算出する。そして、代表顔画像選択部250は、1番目に代表顔画像を選択する場合には代表ユニット内の尤度が最も高い顔画像を代表顔画像として選択し、2番目以降に代表顔画像を選択する場合には代表ユニット内の尤度が低い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。そして、代表顔画像選択部250は、代表顔画像の顔IDと代表ユニット内で代表顔画像が選択された順番とを表示レイアウト制御部210へ出力する。この情報は表示レイアウト制御部210が代表顔画像を表示し、代表ユニット内の一番尤度が高い代表顔画像とそれ以外の代表顔画像とを異なる表示方法で表示する際に利用される。なお、代表顔画像数が1の場合には、2番目以降の代表顔画像の選択が行われないことは言うまでもない。
但し、代表顔画像選択部250は、尤度として、代表ユニットの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用い、距離が小さいほど顔画像に関する尤度が高く、距離が大きいほど顔画像に関する尤度が低いとする。代表顔画像選択部250は、顔画像クラスタDB23及び顔画像DB22を参照し、代表ユニットの特徴量空間上の中心位置又は重心位置を代表ユニット内の顔画像の顔特徴量データを用いて算出し、代表ユニット内の各顔画像の特徴量空間上の位置をその顔画像の顔特徴量データを用いて算出する。そして、代表顔画像選択部250は、1番目に代表顔画像を選択する場合には代表ユニットの中心位置又は重心位置に位置が1番近い顔画像を代表顔画像として選択する。代表顔画像選択部250は、2番目以降に代表顔画像を選択する場合には代表ユニットの中心位置又は重心位置から位置が遠い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。
上記の各場合において、代表ユニットの中心位置又は重心位置に位置が1番近い顔画像は代表ユニットに正しく分類された可能性が最も高い。一方、代表ユニットの中心位置又は重心位置から位置が離れている顔画像ほど代表ユニットに誤って分類された可能性が高い。従って、ユーザは、例えば、正しく分類された可能性が高い顔画像と誤って分類された可能性が高い顔画像とを見ながら顔画像の分類を修正することができることから、効率的なアノテーションを行うことができる。
<装置動作>
図1の代表画像表示装置1によって行われる処理を、顔画像を自動分類する処理(以下、「顔画像自動分類処理」と言う。)、ユーザによるアノテーションに応じて顔画像の分類を修正する処理(以下、「顔画像分類修正処理」と言う。)、及び顔画像から代表顔画像を選択して表示する処理(以下、「顔画像選択表示処理」と言う。)の3つに分けて説明する。
(顔画像自動分類処理の動作)
図5は図1の代表画像表示装置1が行う顔画像自動分類処理の流れを示すフローチャートである。
画像入力部110は、例えば撮影機器から当該撮影機器によって撮影された画像の画像データを順次読み込む。そして、画像入力部110は、画像に対して一意に画像IDを付与し、画像IDに画像が撮影された撮影時刻と画像の画像データの画像ファイル名とを対応付けて画像DB21に格納するとともに、画像データを記憶部20に記憶する(ステップS101)。
顔認識処理部120は、画像認識処理の対象となっていない画像IDがあるか、即ち、画像認識処理が実行されていない画像データ(以下、「未処理の画像データ」と言う。)があるかを判定する(ステップS102)。顔認識処理部120は、未処理の画像データがある場合には(S102:YES)、一つの未処理の画像データを記憶部20から読み出し(ステップS103)、読み出した画像データに画像認識処理を実行して画像に写っている人間の顔領域を検出する(ステップS104)。
顔認識処理部120は、画像認識処理の結果、顔領域を検出できたかを判定する(ステップS105)。顔領域が検出できなかった場合には(S105:NO)、ステップS102の処理が行われる。一方、顔領域が検出できた場合には(S105:YES)、顔認識処理部120は、検出した顔領域毎に、顔領域に対する顔画像の顔画像データを生成する。そして、顔認識処理部120は、各顔領域に対する顔画像に対して一意に顔IDを付与し、顔IDに、顔画像を含む画像の画像IDと、顔画像の顔画像データの顔画像ファイル名とを対応付けて顔画像DB22に格納するとともに、顔画像データを記憶部20に格納する(ステップS106)。
顔認識処理部120は、顔特徴量データの算出処理の対象となっていない顔IDがあるか、即ち、顔特徴量データの算出処理が実行されていない顔画像データ(以下、「未処理の顔画像データ」と言う。)があるかを判定する(ステップS107)。未処理の顔画像データがある場合には(S107:YES)、顔認識処理部120は、一つの未処理の顔画像データを記憶部20から読み出し、読み出した顔画像データから顔画像の顔特徴量データを生成する。そして、顔認識処理部120は、顔画像の顔IDに顔画像の顔特徴量データの顔特徴量ファイル名を対応付けて顔画像DB22に格納するとともに、顔特徴量データを記憶部20に格納する(ステップS108)。そして、ステップS107の処理が行われる。
未処理の顔画像データがない場合には(S107:NO)、ステップS103で読み出した画像データの画像内の全ての顔画像に対して顔特徴量データの算出を行ったことになるので、他の未処理の画像データを処理すべく、ステップS102の処理が行われる。
未処理の画像データがない場合には(S102:NO)、クラスタ形成部130は、顔画像DB22を参照して、各顔IDに対応する顔特徴量ファイル名の顔特徴量データを記憶部20から読み出す。そして、クラスタ形成部130は、読み出した顔特徴量データを用いて、類似する顔画像をまとめてユニットを形成し、形成した各ユニットにユニットIDを付与する(ステップS109)。続いて、クラスタ形成部130は、顔特徴量データを用いて、類似するユニットをまとめて人物クラスタを形成し、形成した各人物クラスタに人物IDを付与する(ステップS110)。そして、クラスタ形成部130は顔画像毎に顔画像クラスタ情報を顔画像クラスタDB23に格納する(ステップS111)。なお、顔画像クラスタ情報に含まれる分類者情報の内容はシステムであり、分類時刻情報の内容は自動分類された時刻である。
(顔画像分類修正処理の動作)
図6は図1の代表画像表示装置1が行う顔画像分類修正処理の流れを示すフローチャートである。なお、クラスタ修正部140は、表示レイアウト制御部210から入力される表示レイアウトに係る情報と操作IF部40から入力される信号とを用いて、ユーザによる選択対象(人物クラスタ、ユニット、顔画像)を判断し、ユーザが選択対象をドラッグ・アンド・ドロップした先(選択対象の移動先)を判断する。
クラスタ修正部140は操作IF部40からユーザの操作に係る操作情報を受け取ったかを判定する(ステップ201)。操作IF部40から操作情報を受け取っていない場合には(S201:NO)、ステップS201の処理が行われる。
操作情報を受け取った場合には(S201:YES)、クラスタ修正部140はユーザによる選択対象が人物クラスタであるかを判定する(ステップS202)。選択対象が人物クラスタである場合には(S202:YES)、クラスタ修正部140は、顔画像クラスタDB23において、選択された人物クラスタ内の各顔画像の顔画像クラスタ情報を修正する(ステップS203)。但し、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
選択対象が人物クラスタでない場合には(S202:NO)、クラスタ修正部140は選択対象がユニットであるかを判定する(ステップS204)。選択対象がユニットである場合には(S204:YES)、クラスタ修正部140は、顔画像クラスタDB23において、選択されたユニット内の各顔画像の顔画像クラスタ情報を修正する(ステップS205)。但し、選択されたユニットの移動先が別の人物クラスタの場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。また、選択されたユニットの移動先が人物クラスタが存在しないエリアである場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDをこれまでに付与していない人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。更に、選択されたユニットの移動先が別のユニットの場合、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先のユニットが属する人物クラスタの人物IDに、ユニットIDを移動先のユニットのユニットIDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
選択対象がユニットでない場合には(S204:NO)、クラスタ修正部140は選択対象が顔画像であるかを判定する(ステップS206)。選択対象が顔画像でない場合には(S206:NO)、ステップS201の処理が行われる。一方、選択対象が顔画像である場合には(S206:YES)、クラスタ修正部140は、顔画像クラスタDB23において、選択された顔画像の顔画像クラスタ情報を修正する(ステップS207)。但し、選択された顔画像の移動先が人物クラスタの場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、ユニットIDをこれまでに付与していないユニットIDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。また、選択された顔画像の移動先が別のユニットである場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDを移動先のユニットが属する人物クラスタの人物IDに、ユニットIDを移動先のユニットのユニットIDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。更に、選択された顔画像の移動先が人物クラスタが存在しないエリアである場合には、クラスタ修正部140は、顔画像クラスタ情報の人物IDをこれまでに付与していない人物IDに、ユニットIDをこれまでに付与していないユニットIDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
(顔画像選択表示処理の動作)
図7は図1の代表画像表示装置1が行う顔画像選択表示処理の流れを示すフローチャートである。
表示顔画像数決定部220は、表示部30の表示領域サイズを取得し(ステップS301)、顔画像の表示サイズと表示領域サイズとを利用して表示顔画像数を決定する(ステップS302)。
人物クラスタ選択部230は、顔画像クラスタDB23を参照して人物IDの数、即ち、人物クラスタの数を取得する(ステップS303)。そして、人物クラスタ選択部230は、ステップS302で決定された表示顔画像数とステップS303で取得された人物クラスタの数とを用いて、表示部30に顔画像を表示する人物クラスタ(代表人物クラスタ)の数(代表人物クラスタ数)Pを決定し、変数pの値を1にする(ステップS304)。
人物クラスタ選択部230は顔画像の数がp(変数pの値)番目に多い人物クラスタを代表人物クラスタとして選択するともに、ステップS302で決定された表示顔画像数とステップS303で取得された人物クラスタの数とを用いて、選択した代表人物クラスタで表示される代表顔画像の数(人物クラスタ表示顔画像数)を決定する(ステップS305)。
ユニット選択部240は、顔画像クラスタDB23を参照して、ステップS305で選択された代表人物クラスタ内のユニットIDの数、つまり、ユニットの数を取得する(ステップS306)。そして、ユニット選択部240は、ステップS305で決定された人物クラスタ表示顔画像数とステップS306で取得したユニットの数とを用いて、代表人物クラスタで表示部30に顔画像を表示するユニット(代表ユニット)の数(代表ユニット数)Mを決定し、変数mの値を1にする(ステップS307)。
ユニット選択部240は、代表人物クラスタ内の1番尤度が高いユニットを第1の代表ユニットとして選択するともに、ステップS305で決定された人物クラスタ表示顔画像数とステップS306で取得したユニットの数とを用いて、選択した第1の代表ユニットで表示される代表顔画像の数(ユニット表示顔画像数)を決定する(ステップS308)。このとき、ユニット選択部240は第1の代表ユニットのユニットIDと第1の代表ユニットが代表人物クラスタ内で選択された順番とを表示レイアウト制御部210へ出力する。
代表顔画像選択部250は図8に動作フローを示す代表顔画像選択処理を行って第1の代表ユニット内の顔画像から代表顔画像を選択する(ステップS309)。
ユニット選択部240は、変数mの値を1インクリメントし(ステップS310)、変数mの値が代表ユニット数M以下であるかを判定する(ステップS311)。
変数mの値が代表ユニット数M以下である場合には(S311:YES)、ユニット選択部240は、代表人物クラスタ内の(m−1)番目に尤度が低いユニットを第mの代表ユニットとして選択するともに、ステップS305で決定された人物クラスタ表示顔画像数とステップS306で取得したユニットの数とを用いて、第mの代表ユニットで表示される代表顔画像の数(ユニット表示顔画像数)を決定する(ステップS312)。このとき、ユニット選択部240は第mの代表ユニットのユニットIDと第mの代表ユニットが代表人物クラスタ内で選択された順番とを表示レイアウト制御部210へ出力する。
代表顔画像選択部250は図8に動作フローを示す代表顔画像選択処理を行って第mの代表ユニット内の顔画像から代表顔画像を選択する(ステップS313)。そして、ステップS310の処理が行われる。
変数mの値が代表ユニット数M以下でない場合には(S311:NO)、人物クラスタ選択部230は、変数pの値を1インクリメントし(ステップS314)、変数pの値が代表人物クラスタ数P以下であるかを判定する(ステップS315)。変数pの値が代表人物クラスタ数P以下である場合には(S315:YES)、代表人物クラスタ数P分の代表人物クラスタの選択が行われていないので、ステップS305の処理が行われる。
変数pの値が代表人物クラスタ数P以下でない場合には(S315:NO)、表示レイアウト制御部210は、ステップS301からステップS315までの処理の実行結果に基づいて、表示部30に代表顔画像を表示する表示制御を実行する(ステップS316)。但し、表示レイアウト制御部210は、各代表人物クラスタのエリアを示す枠を表示する。表示レイアウト制御部210は、各代表人物クラスタの枠内に当該代表人物クラスタ内の第1から第Mの代表ユニットを配置し、第1の代表ユニットのエリアを示す枠を太い線幅で表示し、第2から第Mの代表ユニットのエリアを示す枠を細い線幅で表示する。表示レイアウト制御部210は、各代表ユニットの枠内に当該代表ユニット内の第1から第Nの代表顔画像を配置し、第1の代表顔画像の枠を太い線幅で表示し、第2から第Nの代表顔画像の枠を細い線幅で表示する。なお、第1から第Nの代表顔画像は図8に動作フローを示す代表顔画像選択処理によって選択される。このように表示することによって、ユーザは、尤度の高い代表ユニットと尤度の低い代表ユニットとを簡単に区別することができ、尤度の高い代表顔画像と尤度の低い代表顔画像とを簡単に区別することができる。
「代表顔画像選択処理の動作」
図8は図7の代表顔画像選択処理の流れを示すフローチャートである。
代表顔画像選択部250は、顔画像クラスタDB23を参照して、代表ユニット内の顔画像の数を取得する(ステップS331)。そして、代表顔画像選択部250は、ステップS308又はステップS312で決定されたユニット表示顔画像数とステップS331で取得したユニットの数とを用いて、選択された代表ユニットで表示部30に表示する顔画像の数(代表顔画像数)Nを決定し、変数nの値を1にする(ステップS332)。
代表顔画像選択部250は、代表ユニット内の1番尤度が高い顔画像を第1の代表顔画像として選択する(ステップS333)。このとき、代表顔画像選択部250は第1の代表顔画像の顔IDと第1の代表顔画像が代表ユニット内で選択された順番とを表示レイアウト制御部210へ出力する。
代表顔画像選択部250は、変数nの値を1インクリメントし(ステップS334)、変数nの値が代表顔画像数N以下であるかを判定する(ステップS335)。変数nの値が代表顔画像数N以下である場合には(S335:YES)、代表顔画像選択部250は、代表ユニット内の(n−1)番目に尤度が低い顔画像を第nの代表顔画像として選択する(ステップS336)。このとき、代表顔画像選択部250は第nの代表顔画像の顔IDと第nの代表顔画像が代表ユニット内で選択された順番とを表示レイアウト制御部210へ出力する。ステップS336の処理に続いてステップS334の処理が行われる。
変数nの値が代表顔画像数N以下でない場合には(S335:NO)、代表ユニットでの代表顔画像の選択が終了したので、図7のステップS310の処理が行われる。
(代表画像表示装置の処理の例)
以下、図1の代表画像表示装置1が行う一連の処理の一例を図9から図14を参照して説明する。
図9は顔画像を自動分類した結果を特徴量空間上で模式的に表した図である。
但し、図9において、“ID111”〜“ID114”の顔画像は“ID11”のユニットに分類されており、“ID11”のユニットは“ID1”の人物クラスタに分類されている。また、“ID211”の顔画像は“ID21”のユニットに分類され、“ID221”の顔画像は“ID22”のユニットに分類され、“ID231”の顔画像は“ID23”のユニットに分類され、“ID241”〜“ID242”の顔画像は“ID24”のユニットに分類されている。“ID21”〜“ID24”のユニットは“ID2”の人物クラスタに分類されている。
“ID11”のユニット内の顔画像は、“ID111”、“ID112”、“ID113”、“ID114”の順で尤度が高いとする。また、“ID2”の人物クラスタ内のユニットは、“ID21”、“ID22”、“ID23”、“ID24”の順で尤度が高いとし、“ID24”のユニット内の顔画像は、“ID241”、“ID242”の順で尤度が高いとする。
図9に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“6”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID2”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”のユニットを第1の代表ユニットとして選択し、代表顔画像選択部250は、“ID21”の第1の代表ユニット内の最も尤度が高い“ID211”の顔画像を第1の代表顔画像として選択する。次に、ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が低い“ID24”のユニットを第2の代表ユニットとして選択し、代表顔画像選択部250は、“ID24”の第2の代表ユニット内の最も尤度が高い“ID241”の顔画像を第1の代表顔画像として選択する。更に、ユニット選択部240は、“ID2”の代表人物クラスタ内の2番目に尤度が低い“ID23”のユニットを第3の代表ユニットとして選択し、代表顔画像選択部250は、“ID23”の第3の代表ユニット内の最も尤度が高い“ID231”の顔画像を第1の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID1”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”のユニットを第1の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID11”の第1の代表ユニット内の最も尤度が高い“ID111”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID114”の顔画像を第2の代表顔画像として選択し、2番目に尤度が低い“ID113”の顔画像を第3の代表顔画像として選択する。
表示レイアウト制御部210は、上記の処理結果に基づいて、図10に示す表示内容を表示部30に表示する。図10は、図9の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210は、“ID2”の人物クラスタの枠内に“ID21”、“ID23”、“ID24”のユニットを配置し、第1の代表ユニットに相当する“ID21”のユニットの枠を太い線幅で表示し、それ以外のユニットの枠を細い線幅で表示する。“ID21”、“ID23”、“ID24”のユニットの枠内に“ID211”、“ID231”、“ID241”の顔画像を配置し、第1の代表顔画像に相当する“ID211”、“ID231”、“ID241”の顔画像の枠を太い線幅で表示する。
また、表示レイアウト制御部210は、“ID1”の人物クラスタの枠内に“ID11”のユニットを配置し、第1の代表ユニットに相当する“ID11”のユニットの枠を太い線幅で表示する。“ID11”のユニットの枠内に“ID111”、“ID113”、“ID114”の顔画像を配置し、第1の代表顔画像に相当する“ID111”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。
ユーザが図10の表示に対して“ID24”のユニットを選択して人物クラスタの枠外にドラッグ・アンド・ドロップする操作を行ったとする。この操作に応じて、クラスタ修正部140は、“ID24”のユニット内の“ID241”,“ID242”の顔画像の顔画像クラスタ情報の人物IDを“ID3”に、分類者情報を“ユーザ”に、分類時刻情報を分類を修正した時刻に修正する。顔画像の分類を修正した結果は図11に示すようになる。図11は顔画像の分類を修正した結果を特徴量空間上で模式的に表した図である。
但し、図11において、“ID111”〜“ID114”の顔画像は“ID11”のユニットに分類されており、“ID11”のユニットは“ID1”の人物クラスタに分類されている。また、“ID211”の顔画像は“ID21”のユニットに分類され、“ID221”の顔画像は“ID22”のユニットに分類され、“ID231”の顔画像は“ID23”のユニットに分類されている。“ID21”〜“ID23”のユニットは“ID2”の人物クラスタに分類されている。さらに、“ID241”〜“ID242”の顔画像は“ID24”のユニットに分類されており、“ID24”のユニットは“ID3”の人物クラスタに分類されている。
“ID11”のユニット内の顔画像は、“ID111”、“ID112”、“ID113”、“ID114”の順で尤度が高いとする。また、“ID2”の人物クラスタ内のユニットは、“ID21”、“ID22”、“ID23”の順で尤度が高いとする。“ID24”のユニット内の顔画像は、“ID241”、“ID242”の順で尤度が高いとする。
図11に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“6”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID1”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”のユニットを第1の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID11”の第1の代表ユニット内の最も尤度が高い“ID111”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID114”の顔画像を第2の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID2”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”のユニットを第1の代表ユニットとして選択し、代表顔画像選択部250は、“ID21”の第1の代表ユニット内の最も尤度が高い“ID211”の顔画像を第1の代表顔画像として選択する。次に、ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が低い“ID23”のユニットを第2の代表ユニットとして選択し、代表顔画像選択部250は、“ID23”の第2の代表ユニット内の最も尤度が高い“ID231”の顔画像を第1の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が3番目に多い“ID3”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID3”の代表人物クラスタ内の最も尤度が高い“ID24”のユニットを第1の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID24”の第1の代表ユニット内の最も尤度が高い“ID241”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID242”の顔画像を第2の代表顔画像として選択する。
表示レイアウト制御部210は、上記の処理結果に基づいて、図12に示す表示内容を表示部30に表示する。図12は、図11の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210は、“ID1”の人物クラスタの枠内に“ID11”のユニットを配置し、第1の代表ユニットに相当する“ID11”のユニットの枠を太い線幅で表示する。“ID11”のユニットの枠内に“ID111”、“ID114”の顔画像を配置し、第1の代表顔画像に相当する“ID111”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。
また、表示レイアウト制御部210は、“ID2”の人物クラスタの枠内に“ID21”、“ID23”のユニットを配置し、第1の代表ユニットに相当する“ID21”のユニットの枠を太い線幅で表示し、それ以外のユニットの枠を細い線幅で表示する。“ID21”、“ID23”のユニットの枠内に“ID211”、“ID231”の顔画像を配置し、第1の代表顔画像に相当する“ID211”、“ID231”の顔画像の枠を太い線幅で表示する。
さらに、表示レイアウト制御部210は、“ID3”の人物クラスタの枠内に“ID24”のユニットを配置し、第1の代表ユニットに相当する“ID24”のユニットの枠を太い線幅で表示する。“ID24”のユニットの枠内に“ID241”、“ID242”の顔画像を配置し、第1の代表顔画像に相当する“ID241”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。
ユーザが図12の表示に対して“ID3”の人物クラスタを選択して“ID1”の人物クラスタ内にドラッグ・アンド・ドロップする操作を行ったとする。この操作に応じて、クラスタ修正部140は、“ID3”の人物クラスタ内の“ID241”,“IS242”の顔画像の顔画像クラスタ情報の人物IDを“ID1”に、分類者情報を“ユーザ”に、分類時刻情報を分類を修正した時刻に修正する。顔画像の分類を修正した結果は図13に示すようになる。図13は顔画像の分類を修正した結果を特徴量空間上で模式的に表した図である。
但し、図13において、“ID111”〜“ID114”の顔画像は“ID11”のユニットに分類され“ID241”〜“ID242”の顔画像は“ID24”のユニットに分類されている。“ID11”、“ID24”のユニットは“ID1”の人物クラスタに分類されている。また、“ID211”の顔画像は“ID21”のユニットに分類され、“ID221”の顔画像は“ID22”のユニットに分類され、“ID231”の顔画像は“ID23”のユニットに分類されている。“ID21”〜“ID23”のユニットは“ID2”の人物クラスタに分類されている。
“ID1”の人物クラスタ内のユニットは、“ID11”、“ID24”の順で尤度が高いとする。“ID11”のユニット内の顔画像は、“ID111”、“ID112”、“ID113”、“ID114”の順で尤度が高いとし、“ID24”のユニット内の顔画像は、“ID241”、“ID242”の順で尤度が高いとする。また、“ID2”の人物クラスタ内のユニットは、“ID21”、“ID22”、“ID23”の順で尤度が高いとする。
図13に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“6”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID1”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”のユニットを第1の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID11”の第1の代表ユニット内の最も尤度が高い“ID111”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID114”の顔画像を第2の代表顔画像として選択する。次に、ユニット選択部240は、“ID1”の代表人物クラスタ内の最も尤度が低い“ID24”のユニットを第2の代表ユニットとして選択する。そして、代表顔画像選択部250は、“ID24”の第2の代表ユニット内の最も尤度が高い“ID241”の顔画像を第1の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID2”の人物クラスタを代表人物クラスタとして選択する。ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”のユニットを第1の代表ユニットとして選択し、代表顔画像選択部250は、“ID21”の第1の代表ユニット内の最も尤度が高い“ID211”の顔画像を第1の代表顔画像として選択する。次に、ユニット選択部240は、“ID2”の代表人物クラスタ内の最も尤度が低い“ID23”のユニットを第2の代表ユニットとして選択し、代表顔画像選択部250は、“ID23”の第2の代表ユニット内の最も尤度が高い“ID231”の顔画像を第1の代表顔画像として選択する。更に、ユニット選択部240は、“ID2”の代表人物クラスタ内の2番目に尤度が低い“ID22”のユニットを第3の代表ユニットとして選択し、代表顔画像選択部250は、“ID22”の第3の代表ユニット内の最も尤度が高い“ID221”の顔画像を第1の代表顔画像として選択する。
表示レイアウト制御部210は、上記の処理結果に基づいて、図14に示す表示内容を表示部30に表示する。図14は、図13の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210は、“ID1”の人物クラスタの枠内に“ID11”、“ID24のユニットを配置し、第1の代表ユニットに相当する“ID11”のユニットの枠を太い線幅で表示し、それ以外のユニットの枠を細い線幅で表示する。“ID11”のユニットの枠内に“ID111”、“ID114”の顔画像を配置し、第1の代表顔画像に相当する“ID111”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。“ID24”のユニットの枠内に“ID241”の顔画像を配置し、第1の代表顔画像に相当する“ID241”の顔画像の枠を太い線幅で表示する。
また、表示レイアウト制御部210は、“ID2”の人物クラスタの枠内に“ID21”、“ID22”、“ID23”のユニットを配置し、第1の代表ユニットに相当する“ID21”のユニットの枠を太い線幅で表示し、それ以外のユニットの枠を細い線幅で表示する。“ID21”、“ID22”、“ID23”のユニットの枠内に“ID211”、“ID221”、“ID231”の顔画像を配置し、第1の代表顔画像に相当する“ID211”、“ID221”、“ID231”の顔画像の枠を太い線幅で表示する。
≪第2の実施の形態≫
以下、本発明の第2の実施の形態について図面を参照しつつ説明する。
第1の実施の形態では、顔画像は類似する顔画像をまとめたユニットに分類され、ユニットは類似するユニットをまとめた人物クラスタに分類され、この分類結果を利用して代表顔画像を選択して表示する。これに対して、本実施の形態では、顔画像は類似する顔画像をまとめた人物クラスタに分類され、この分類結果を利用して代表顔画像を選択して表示する。なお、本実施の形態の「人物クラスタ」は「クラスタ」に相当する。
なお、本実施の形態において、第1の実施の形態の構成要素と実質的に同じ構成要素には同じ符号を付し、第1の実施の形態の説明が適用できるため本実施の形態ではその説明を省略し或いは概略を記載するに留める。
<装置構成>
図15は本実施の形態の代表画像表示装置1aの全体構成図であり、代表画像表示装置1aは演算処理部10aと記憶部20aと表示部30と操作IF部40とを備える。
演算処理部10aは、例えばCPUなどで構築され、代表画像表示装置1a全体の各種制御や各種演算を行う。
記憶部20aは、例えばROM、RAM、HDDなどで構築されており、代表画像表示装置1aを制御するための各種制御プログラムや各種アプリケーションプログラムなどを記憶している。記憶部20aは、図17〜図19に動作フローを示す手順を記述したプログラムを記憶している。また、記憶部20aは、画像データ、顔画像データ及び顔特徴量データを記憶するとともに、画像DB21、顔画像DB22、及び顔画像クラスタDB23aを記憶する。
(記憶部内の各データベースの構成)
「顔画像クラスタDBの構成」
図16は図15の顔画像クラスタDB23aの一例を示す図である。顔画像クラスタDB23aは、顔画像毎に、顔画像の顔IDに、顔画像を含む画像の画像IDと、顔画像が属する人物クラスタの人物IDと、顔画像の分類者情報と顔画像の分類時刻情報とを対応付けて格納するためのデータベースである。なお、以下では、顔画像クラスタDB23aの1レコード分の情報の集まりを、適宜、「顔画像クラスタ情報」と言う。
(演算処理部の構成)
演算処理部10aは、記憶部20aから図17〜図19に動作フローを示す手順を記述したプログラムを読み出し、読み出したプログラムを実行する。これによって、演算処理部10aは画像解析部100aと画像表示部200aとして機能する。
(画像解析部の機能構成)
画像解析部100aは、図15に示すように、画像入力部110と、顔認識処理部120と、クラスタ形成部130aと、クラスタ修正部140aとを備える。
クラスタ形成部130aは、顔画像DB22を参照して、各顔IDに対応する顔特徴量ファイル名の顔特徴量データを記憶部20から読み出す。そして、クラスタ形成部130aは、読み出した顔特徴量データを用いて、類似する顔画像をまとめて人物クラスタを形成し、形成した各人物クラスタに対して一意に人物IDを付与する。
そして、クラスタ形成部130aは、顔画像毎に、顔画像の顔IDに、顔画像を含む画像の画像IDと、顔画像が属する人物クラスタの人物IDと、顔画像の分類時刻情報とを対応付けて顔画像クラスタDB23aに格納する。但し、分類者情報の内容はシステムとなり、分類時刻情報の内容は自動分類された時刻となる。
但し、クラスタ形成部130aは、記憶部20aから読み出した複数の顔特徴量データを互いに比較し、顔特徴量データ間の差が例えば予め定められた閾値以下である顔特徴量データの顔画像が互いに類似するものとして、それらを1つにまとめることによって、人物クラスタを形成する。なお、人物クラスタの形成の手法は上記の手法に限定されるものではない。
クラスタ修正部140aは、操作IF部40を介してユーザ操作を受け取り、顔画像クラスタDB23aにおいて、受け取ったユーザ操作に従ってユーザが分類の修正を施した顔画像の顔画像クラスタ情報を修正する。但し、顔画像クラスタ情報に含まれる分類者情報の内容はユーザになり、分類時刻情報の内容は分類の修正が行われた時刻になる。
(画像表示部の機能構成)
画像表示部200aは、図14に示すように、表示レイアウト制御部210aと、表示顔画像数決定部220と、人物クラスタ選択部230と、代表顔画像選択部250aとを備える。
表示レイアウト制御部210aは、表示部30に表示する顔画像の表示レイアウトを画像DB21、顔画像DB22及び顔画像クラスタDB23aの格納内容を参照して制御するものである。但し、表示レイアウト制御部210aは、表示レイアウトを制御する際に、代表顔画像選択部250aから入力される情報や操作IF部40から入力される情報も用いる。
代表顔画像選択部250aは、人物クラスタ選択部230から入力された人物IDの人物クラスタ(代表人物クラスタ)の夫々に対して、以下のようにして、代表人物クラスタ内の顔画像から代表顔画像を選択する。
代表顔画像選択部250aは、顔画像クラスタDB23aを参照して、代表人物クラスタ内の顔IDの数、即ち、顔画像の数を取得する。そして、代表顔画像選択部250aは、人物クラスタ選択部230から入力される人物クラスタ表示顔画像数が顔画像の数未満の場合には代表人物クラスタでの代表顔画像の数(代表顔画像数)を人物クラスタ表示顔画像数と同じ値に決定し、人物クラスタ表示顔画像数が顔画像の数未満の場合には代表顔画像数を取得した顔画像の数と同じ値に決定する。なお、前者では代表人物クラスタ内の顔画像の一部が代表顔画像になり、後者では代表人物クラスタ内の全ての顔画像が代表顔画像になる。
続いて、代表顔画像選択部250aは、代表人物クラスタ内の各顔画像に対して顔画像の分類結果の確からしさを示す尤度を算出する。そして、代表顔画像選択部250aは、1番目に代表顔画像を選択する場合には代表人物クラスタ内の尤度が最も高い顔画像を代表顔画像として選択し、2番目以降に代表顔画像を選択する場合には代表人物クラスタ内の尤度が低い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。そして、代表顔画像選択部250aは、代表顔画像の顔IDと代表人物クラスタ内で代表顔画像が選択された順番とを表示レイアウト制御部210aへ出力する。この情報は表示レイアウト制御部210aが代表顔画像を表示し、代表人物クラスタ内の一番尤度が高い代表顔画像とそれ以外の代表顔画像とを異なる表示方法で表示する際に利用される。なお、代表顔画像数が1の場合には、2番目以降の代表顔画像の選択が行われないことは言うまでもない。
但し、代表顔画像選択部250aは、尤度として、代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用い、距離が小さいほど顔画像に関する尤度が高く、距離が大きいほど顔画像に関する尤度が低いとする。代表顔画像選択部250aは、顔画像クラスタDB23及び顔画像DB22を参照し、代表人物クラスタの特徴量空間上の中心位置又は重心位置を代表人物クラスタ内の顔画像の顔特徴量データを用いて算出し、代表人物クラスタ内の夫々の顔画像の特徴量空間上の位置をその顔画像の顔特徴量データを用いて算出する。そして、代表顔画像選択部250aは、1番目に代表顔画像を選択する場合には代表人物クラスタの中心位置又は重心位置に位置が1番近い顔画像を代表顔画像として選択する。代表顔画像選択部250aは、2番目以降に代表顔画像を選択する場合には代表人物クラスタの中心位置又は重心位置から位置が遠い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。
上記の各場合において、代表人物クラスタの中心位置又は重心位置に位置が1番近い顔画像は代表人物クラスタに最も正しく分類された可能性が高い。一方、代表人物クラスタの中心位置又は重心位置から位置が離れている顔画像ほど代表人物クラスタに誤って分類された可能性が高い。従って、ユーザは、例えば、正しく分類された可能性が高い顔画像と誤って分類された可能性が高い顔画像とを見ながら顔画像の分類を修正することができることから、効率的なアノテーションを行うことができる。
<装置動作>
図17の代表画像表示装置1aによって行われる処理を、顔画像自動分類処理、顔画像分類修正処理、及び顔画像選択表示処理の3つに分けて説明する。
(顔画像自動分類処理の動作)
図17は図15の代表画像表示装置1aが行う顔画像自動分類処理の流れを示すフローチャートである。
画像入力部110及び顔認識処理部120は、図5を参照して説明したステップS101〜ステップS108の処理を行う。
クラスタ形成部130aは、顔画像DB22を参照して、各顔IDに対応する顔特徴量ファイル名の顔特徴量データを記憶部20から読み出す。そして、クラスタ形成部130aは、読み出した顔特徴量データを用いて、類似する顔画像をまとめて人物クラスタを形成し、形成した各人物クラスタに人物IDを付与する(ステップS151)。そして、クラスタ形成部130aは、顔画像毎に顔画像クラスタ情報を顔画像クラスタDB23に格納する(ステップS152)。なお、顔画像クラスタ情報に含まれる分類者情報の内容はシステムであり、分類時刻情報の内容は自動分類された時刻である。
(顔画像分類修正処理の動作)
図18は図15の代表画像表示装置1aが行う顔画像分類修正処理の流れを示すフローチャートである。なお、クラスタ修正部140aは、表示レイアウト制御部210aから入力される表示レイアウトに係る情報を用いるとともに、操作IF部40から入力される信号を用いて、ユーザによる選択対象(人物クラスタ、顔画像)を判断し、ユーザが選択対象をドラッグ・アンド・ドロップした先(選択対象の移動先)を判断する。
クラスタ修正部140aは、図6を参照して説明したステップS201〜ステップS202の処理を行う。クラスタ修正部140aは、顔画像クラスタDB23aにおいて、選択された人物クラスタ内の各顔画像の顔画像クラスタ情報を修正する(ステップS203a)。但し、クラスタ修正部140aは、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
クラスタ修正部140aは、図6を参照して説明したステップS206の処理を行う。クラスタ修正部140aは、顔画像クラスタDB23において、選択された顔画像の顔画像クラスタ情報を修正する(ステップS207a)。但し、選択された顔画像の移動先が人物クラスタの場合には、クラスタ修正部140aは、顔画像クラスタ情報の人物IDを移動先の人物クラスタの人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。更に、選択された顔画像の移動先が人物クラスタが存在しないエリアである場合には、クラスタ修正部140aは、顔画像クラスタ情報の人物IDをこれまでに付与していない人物IDに、分類者情報をユーザに、分類時刻情報を分類が修正された時刻に修正する。
(顔画像選択表示処理の動作)
図19は図15の代表画像表示装置1aが行う顔画像選択表示処理の流れを示すフローチャートである。
表示顔画像数決定部220及び人物クラスタ選択部230は、図7を参照して説明したステップS301〜ステップS305の処理を行う。
代表顔画像選択部250aは、顔画像クラスタDB23を参照して、代表人物クラスタ内の顔画像の数を取得する(ステップS351)。そして、代表顔画像選択部250aは、代表人物クラスタで表示部30に表示する顔画像の数(代表顔画像数)Nを決定し、変数nの値を1にする(ステップS352)。
代表顔画像選択部250aは、代表人物クラスタ内の1番尤度が高い顔画像を第1の代表顔画像として選択する(ステップS353)。このとき、代表顔画像選択部250は第1の代表顔画像の顔IDと第1の代表顔画像が代表人物クラスタ内で選択された順番とを表示レイアウト制御部210aへ出力する。
代表顔画像選択部250aは、変数nの値を1インクリメントし(ステップS354)、変数nの値が代表顔画像数N以下であるかを判定する(ステップS355)。変数nの値が代表顔画像数N以下である場合には(S355:YES)、代表顔画像選択部250aは、代表人物クラスタ内の(n−1)番目に尤度が低い顔画像を第nの代表顔画像として選択する(ステップS356)。このとき、代表顔画像選択部250aは第nの代表顔画像の顔IDと第nの代表顔画像が代表ユニット内で選択された順番とを表示レイアウト制御部210へ出力する。ステップS356の処理に続いてステップS354の処理が行われる。
代表顔画像選択部250aは、図7を参照して説明したステップS314〜ステップS315の処理を行う。
表示レイアウト制御部210aは、ステップS301からステップS315までの処理の実行結果に基づいて、表示部30に代表顔画像を表示する表示制御を実行する(ステップS316a)。但し、表示レイアウト制御部210aは、各代表人物クラスタのエリアを示す枠を表示する。表示レイアウト制御部210aは、各代表人物クラスタの枠内に当該代表人物クラスタ内の第1から第Nの代表顔画像を配置し、第1の代表顔画像の枠を太い線幅で表示し、第2から第Nの代表顔画像の枠を細い線幅で表示する。このように表示することによって、ユーザは、尤度の高い代表顔画像と尤度の低い代表顔画像とを簡単に区別することができる。
(代表画像表示装置の処理の例)
以下、図15の代表画像表示装置1が行う一連の処理の一例を図20から図23を参照して説明する。
図20は顔画像を自動分類した結果を特徴量空間上で模式的に表した図である。
但し、図20において、“ID11”〜“ID12”の顔画像は“ID1”の人物クラスタに分類され、“ID21”〜“ID25”の顔画像は“ID2”の人物クラスタに分類されている。
“ID1”の人物クラスタ内の顔画像は、“ID11”、“ID12”の順で尤度が高いとし、“ID2”の人物クラスタ内の顔画像は、“ID21”、“ID22”、“ID23”、“ID24”、“ID25”の順で尤度が高いとする。
図20に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“4”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID2”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID25”の顔画像を第2の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID1”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID12”の顔画像を第2の代表顔画像として選択する。
表示レイアウト制御部210aは、上記の処理結果に基づいて、図21に示す表示内容を表示部30に表示する。図21は、図20の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210aは、“ID2”の人物クラスタの枠内に“ID21”、“ID25”の顔画像を配置し、第1の代表顔画像に相当する“ID21”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。また、表示レイアウト制御部210aは、“ID1”の人物クラスタの枠内に“ID11”、“ID12”の顔画像を配置し、第1の代表顔画像に相当する“ID11”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。
ユーザが図21の表示に対して“ID25”の顔画像を選択して人物クラスタの枠外にドラッグ・アンド・ドロップする操作を行ったとする。この操作に応じて、クラスタ修正部140aは、“ID25”の顔画像の顔画像クラスタ情報の人物IDを“ID3”に、分類者情報を“ユーザ”に、分類時刻情報を分類を修正した時刻に修正する。顔画像の分類を修正した結果は図22に示すようになる。図22は顔画像の分類を修正した結果を特徴量空間上で模式的に表した図である。
但し、図22において、“ID11”〜“ID12”の顔画像は“ID1”の人物クラスタに分類され、“ID21”〜“ID24”の顔画像は“ID2”の人物クラスタに分類され、“ID25”の顔画像は“ID1”の人物クラスタに分類されている。
“ID1”の人物クラスタ内の顔画像は、“ID11”、“ID12”の順で尤度が高いとし、“ID2”の人物クラスタ内の顔画像は、“ID21”、“ID22”、“ID23”、“ID24”の順で尤度が高いとする。
図22に模式的に表した分類結果に対する顔画像選択表示処理の概略を以下に記載する。なお、表示顔画像数を“4”とする。
人物クラスタ選択部230は、顔画像の数が最も多い“ID2”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID2”の代表人物クラスタ内の最も尤度が高い“ID21”の顔画像を第1の代表顔画像として選択し、最も尤度が低い“ID24”の顔画像を第2の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が2番目に多い“ID1”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID1”の代表人物クラスタ内の最も尤度が高い“ID11”の顔画像を第1の代表顔画像として選択する。
人物クラスタ選択部230は、顔画像の数が3番目に多い“ID3”の人物クラスタを代表人物クラスタとして選択する。代表顔画像選択部250aは、“ID3”の代表人物クラスタ内の最も尤度が高い“ID25”の顔画像を第1の代表顔画像として選択する。
表示レイアウト制御部210aは、上記の処理結果に基づいて、図23に示す表示内容を表示部30に表示する。図23は、図22の分類結果に対して顔画像選択表示処理が実行されたときの表示部30の表示内容を表した図である。
但し、表示レイアウト制御部210aは、“ID2”の人物クラスタの枠内に“ID21”、“ID24”の顔画像を配置し、第1の代表顔画像に相当する“ID21”の顔画像の枠を太い線幅で表示し、それ以外の顔画像の枠を細い線幅で表示する。また、表示レイアウト制御部210aは、“ID1”の人物クラスタの枠内に“ID11”の顔画像を配置し、第1の代表顔画像に相当する“ID11”の顔画像の枠を太い線幅で表示する。さらに、表示レイアウト制御部210aは、“ID3”の人物クラスタの枠内に“ID25”の顔画像を配置し、第1の代表顔画像に相当する“ID25”の顔画像の枠を太い線幅で表示する。
≪補足≫
本発明は上記の実施の形態で説明した内容に限定されず、本発明の目的とそれに関連又は付随する目的を達成するためのいかなる形態においても実施可能であり、例えば、以下であってもよい。
(1)上記の第1及び第2の実施の形態では、人物の顔画像をクラスタの対象としているが、これに限らず、人物の顔画像以外の各種画像に対して第1及び第2の実施の形態で説明した手法を適用可能である。
(2)上記の第1及び第2の実施の形態では、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタ内の顔画像の数を利用しているが、これに限らず、例えば次のような選択の指標を用いて代表人物クラスタを選択するようにしてもよい。
人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタが形成又は修正された時刻を用い、形成又は修正された時刻が新しい順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、これは、形成又は修正された時刻が古い人物クラスタはユーザが修正し終えて既に正しいものとなっており、形成又は修正された時刻が新しい人物クラスタはまだユーザが修正をし終えていないと考えられることを踏まえたものである。
また、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタ内の顔画像の顔特徴量データの分散を用いる。人物クラスタ選択部230は、各人物クラスタに対して、人物クラスタ内の顔画像の顔特徴量データを用いて当該人物クラスタ内の顔画像の顔特徴量データの分散を算出し、算出した分散が大きい順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、これは、分散が大きい人物クラスタほど特徴量空間上で顔画像の顔特徴量データが広がっているので人物クラスタの内容が誤っている可能性が高く、それが小さい人物クラスタほど特徴量空間上で顔画像の顔特徴量データが広がっていないので人物クラスタの内容が誤っている可能性が低いと考えられることを踏まえたものである。
更に、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタの特徴量空間上のクラスタ半径を用いる。人物クラスタ選択部230は、各人物クラスタに対して、人物クラスタ内の顔画像の顔特徴量データを用いて当該人物クラスタのクラスタ半径を算出し、算出したクラスタ半径が大きい順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、これは、クラスタ半径が大きい人物クラスタほど特徴量空間上で顔画像の顔特徴量データが広がっているので人物クラスタの内容が誤っている可能性が高く、それが小さい人物クラスタほど特徴量空間上で顔画像の顔特徴量データが広がっていないので人物クラスタの内容が誤っている可能性が低いと考えられることを踏まえたものである。
更に、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタの特徴量空間上の中心位置や重心位置などの位置を用いる。人物クラスタ選択部230は、各人物クラスタに対して、人物クラスタ内の顔画像の顔特徴量データを用いて当該人物クラスタの位置(中心位置、重心位置など)を算出し、特徴量空間上の特定の位置から算出した位置が近い順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、特定の位置として、例えば特徴量空間の全体から見た中心位置、全ての人物クラスタの空間特徴量上の重心位置、指定された人物クラスタの特徴量空間上の中心位置や重心位置など位置を利用することができる。
更に、人物クラスタ選択部230は、代表人物クラスタの選択の指標として人物クラスタ内の顔画像のうち分類者情報が「システム」である顔画像の比率を用いる。人物クラスタ選択部230は、各人物クラスタに対して、人物クラスタ内の顔画像のうち分類者情報が「システム」である顔画像の比率を算出し、算出した比率が大きい順に代表人物クラスタ数分の人物クラスタを代表人物クラスタとして選択する。なお、これは、ユーザが修正していない顔画像の比率が高い人物クラスタほどまだユーザが修正をし終えておらず、比率が低い人物クラスタほどユーザが修正し終えて既に正しいものとなっていると考えられることを踏まえたものである。
(3)上記の第1の実施の形態では、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として代表人物クラスタの特徴量空間上の中心位置又は重心位置からユニットの特徴量空間上の中心位置又は重心位置までの距離を用いているが、これに限らず、例えば次のような尤度を用いて1番目の代表ユニットを選択するようにしてもよい。
ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニットが形成又は修正された時刻を用い、形成又は修正された時刻が古いほど尤度が高いとする。ユニット選択部240は、形成又は修正された時刻が最も古いユニットを1番目の代表ユニットとして選択する。なお、これは、形成又は修正された時刻が古いユニットほど分類結果が正しいためにユーザが修正を必要としないと考えられること踏まえたものである。
また、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニット内の顔画像の数を用い、顔画像の数が少ないほど尤度が高いとする。ユニット選択部240は、顔画像の数が最も少ないユニットを1番目の代表ユニットとして選択する。なお、これは、顔画像の数が少ないユニットほど誤った顔画像を含んでいる可能性が低いと考えられることを踏まえたものである。
更に、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニットの特徴量空間上のクラスタ半径を用い、クラスタ半径が小さいほど尤度が高いとする。ユニットの選択部240は、代表人物クラスタ内の各ユニットの特徴量空間上のクラスタ半径をユニット内の顔画像の顔特徴量データを用いて算出し、クラスタ半径が最も小さいユニットを1番目の代表ユニットとして選択する。なお、これは、クラスタ半径が小さいユニットほど誤った顔画像を含んでいる可能性が低いと考えられることを踏まえたものである。
更に、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニット内の顔画像の顔特徴量データの特徴量空間上の密度を用い、密度が高いほど尤度が高いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットの特徴量空間上の密度をユニット内の顔画像の顔特徴量データを用いて算出し、密度が最も高いユニットを1番目の代表ユニットとして選択する。なお、これは、密度が高いユニットほど特徴量空間上で顔画像の顔特徴量データが集まっているので誤った顔画像を含んでいる可能性が低いと考えられることを踏まえたものである。
更に、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニット内の顔画像の特徴量空間上の分散を用い、分散が小さいほど尤度が高いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットに対して、ユニット内の顔画像の顔特徴量データを用いてユニット内の顔画像の顔特徴量データの分散を算出し、分散が最も小さいユニットを代表ユニットとして選択する。なお、これは、分散が小さいユニットほど特徴量空間上で顔画像の顔特徴量データが集まっているので誤った顔画像を含んでいる可能性が低いと考えられることを踏まえたものである。
更に、ユニット選択部240は、1番目の代表ユニットを選択する際の尤度として、ユニット内の顔画像のうち分類者情報が「ユーザ」である顔画像の比率を用い、比率が大きいほど尤度が高いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットにおいて、ユニット内の顔画像のうち分類者情報が「ユーザ」である顔画像の比率を算出し、算出した比率が最も大きいユニットを1番目の代表ユニットとして選択する。なお、これは、ユーザが修正した顔画像の比率が高いユニットほどユーザが修正を終えていると考えられることを踏まえたものである。
(4)上記の第1の実施の形態では、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として代表人物クラスタの特徴量空間上の中心位置又は重心位置からユニットの特徴量空間上の中心位置又は重心位置までの距離を用いているが、これに限らず、例えば次のような尤度を用いて2番目以降の代表ユニットを選択するようにしてもよい。
ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニットが形成又は修正された時刻を用い、形成又は修正された時刻が新しいほど尤度が低いとする。ユニット選択部240は、形成又は修正された時刻が新しい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、形成又は修正された時刻が新しいユニットほどユーザが修正をし終えていないと考えられることを踏まえたものである。
また、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニット内の顔画像の数を用い、顔画像の数が多いほど尤度が低いとする。ユニット選択部240は、顔画像の数が多い順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、顔画像の数が多いユニットほど誤った顔画像を含んでいる可能性が高いと考えられることを踏まえたものである。
更に、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニットの特徴量空間上のクラスタ半径を用い、クラスタ半径が大きいほど尤度が低いとする。ユニットの選択部240は、代表人物クラスタ内の各ユニットの特徴量空間上のクラスタ半径をユニット内の顔画像の顔特徴量データを用いて算出し、クラスタ半径が大きい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、クラスタ半径が大きいユニットほど特徴量空間上で顔画像の顔特徴量データが広がっているので誤った顔画像を含んでいる可能性が高いと考えられることを踏まえたものである。
更に、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニット内の顔画像の顔特徴量データの特徴量空間上の密度を用い、密度が小さいほど尤度が低いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットの特徴量空間上の密度をユニット内の顔画像の顔特徴量データを用いて算出し、密度が小さい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、密度が小さいユニットほど特徴量空間上で顔画像の顔特徴量データが広がっているので誤った顔画像を含んでいる可能性が高いと考えられることを踏まえたものである。
更に、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニット内の顔画像の特徴量空間上の分散を用い、分散が大きいほど尤度が低いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットに対して、ユニット内の顔画像の顔特徴量データを用いてユニット内の顔画像の顔特徴量データの分散を算出し、分散が大きい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、分散が大きいユニットほど特徴量空間上で顔画像の顔特徴量データが広がっているので誤った顔画像を含んでいる可能性が高いと考えられることを踏まえたものである。
更に、ユニット選択部240は、2番目以降の代表ユニットを選択する際の尤度として、ユニット内の顔画像のうち分類者情報が「システム」である顔画像の比率を用い、比率が大きいほど尤度が低いとする。ユニット選択部240は、代表人物クラスタ内の各ユニットにおいて、ユニット内の顔画像のうち分類者情報が「システム」である顔画像の比率を算出し、算出した比率が大きい順に代表ユニット数より1小さい数分のユニットを代表ユニットとして選択する。なお、これは、ユーザが修正していない顔画像の比率が高いユニットほどまだユーザが修正をし終えていないと考えられることを踏まえたものである。
(5)上記の第1及び第2の実施の形態では、代表顔画像選択部250又は代表顔画像選択部250aは、1番目の代表顔画像を選択する際の尤度として代表ユニット又は代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用いているが、これに限らず、例えば次のような尤度を用いて代表顔画像を選択するようにしてもよい。
代表顔画像選択部250,250aは、1番目の代表顔画像を選択する際の尤度として、顔画像が分類された時刻(自動分類された時刻、分類の修正が施された時刻)を用い、分類された時刻が古いほど尤度が高いとする。代表顔画像選択部250,250aは、分類された時刻が最も古い顔画像を1番目の代表顔画像として選択する。なお、これは、分類された時刻が古い顔画像ほど分類結果が正しいためにユーザが修正を必要としないと考えられることを踏まえたものである。
代表顔画像選択部250,250aは、1番目の代表顔画像を選択する際の尤度として、顔画像の分類者情報を用い、分類者情報が「ユーザ」である顔画像ほど尤度が高いとする。代表顔画像選択部250,250aは、分類者情報が「ユーザ」である顔画像を優先して、1番目の代表顔画像として選択する。
代表顔画像選択部250は、1番目の代表顔画像を選択する際の尤度として、代表ユニットが属する代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用い、距離が小さいほど尤度が高いとする。代表顔画像選択部250は、代表ユニットが属する代表人物クラスタ内の顔画像の顔特徴量データを用いて代表人物クラスタの特徴量空間上の中心位置又は重心位置を算出し、代表ユニット内の各顔画像の特徴量空間上の位置をその顔特徴量データを用いて算出する。代表顔画像選択部250は、代表人物クラスタの中心位置又は重心位置に位置が最も近い顔画像を1番目の代表顔画像として選択する。
(6)上記の第1及び第2の実施の形態では、代表顔画像選択部250又は代表顔画像選択部250aは、2番目以降の代表顔画像を選択する際の尤度として代表ユニット又は代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用いているが、これに限らず、例えば次のような尤度を用いて代表顔画像を選択するようにしてもよい。
代表顔画像選択部250,250aは、2番目以降の代表顔画像を選択する際の尤度として、顔画像が分類された時刻(自動分類された時刻、分類の修正が施された時刻)を用い、分類された時刻が新しいほど尤度が低いとする。代表顔画像選択部250,250aは、分類された時刻が新しい順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。なお、これは、分類された時刻が新しい顔画像ほどユーザが正しい分類に修正をし終えていないと考えられることを踏まえたものである。
代表顔画像選択部250,250aは、2番目以降の代表顔画像を選択する際の尤度として、顔画像の分類者情報を用い、分類者情報が「システム」である顔画像ほど尤度が低いとする。代表顔画像選択部250,250aは、分類者情報が「システム」である顔画像を優先して、代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。
代表顔画像選択部250は、2番目以降の代表顔画像を選択する際の尤度として、代表ユニットが属する代表人物クラスタの特徴量空間上の中心位置又は重心位置から顔画像の特徴量空間上の位置までの距離を用い、距離が大きいほど尤度が低いとする。代表顔画像選択部250は、代表ユニットが属する代表人物クラスタ内の顔画像の顔特徴量データを用いて代表人物クラスタの特徴量空間上の中心位置又は重心位置を算出し、代表ユニット内の各顔画像の特徴量空間上の位置をその顔特徴量データを用いて算出する。代表顔画像選択部250は、代表人物クラスタの中心位置又は重心位置から位置が遠い順に代表顔画像数より1小さい数分の顔画像を代表顔画像として選択する。
(7)上記の第1及び第2の実施の形態において、ユニット選択部240は代表ユニットの分布が顔特徴量空間上で均一になるように代表ユニットの選択を行ってもよく、代表顔画像選択部250,250aは代表顔画像の分布が顔特徴量空間上で均一になるように代表顔画像の選択を行ってもよい。
(8)上記の第1の実施の形態では、表示レイアウト制御部250は、第1の代表ユニットとそれ以外の代表ユニットとをその枠の線幅を変えることによって、第1の代表ユニットとそれ以外の代表ユニットとを異なる表示方法で表示している。しかしながら、これに限られるものではなく、表示レイアウト制御部250は、第1の代表ユニットとそれ以外の代表ユニットとをユーザが区別できるように、第1の代表ユニットとそれ以外の代表ユニットとを異なる表示方法で表示すればよい。例えば、第1の代表ユニットとそれ以外の代表ユニットとの表示色を変えること、第1の代表ユニット内の顔画像とそれ以外の代表ユニット内の顔画像との表示サイズを変えること、第1の代表ユニットであることを明示するためのアイコンを重畳表示することを、挙げることができる。
上記の第1及び第2の実施の形態では、表示レイアウト制御部250,250aは、第1の代表顔画像とそれ以外の代表顔画像とをその枠の線幅を変えることによって、第1の代表顔画像とそれ以外の代表顔画像とを異なる表示方法で表示している。しかしながら、これに限られるものではなく、表示レイアウト制御部250,250aは、第1の代表顔画像とそれ以外の代表顔画像とをユーザが区別できるように、第1の代表顔画像とそれ以外の代表顔画像とを異なる表示方法で表示すればよい。例えば、第1の顔画像とそれ以外の代表顔画像との表示色を変えること、第1の代表顔画像とそれ以外の代表顔画像との表示サイズを変えること、第1の代表顔画像であることを明示するためのアイコンを重畳表示することを、挙げることができる。
(9)上記の第1の実施の形態では、表示レイアウト制御部250は、例えば顔画像選択表示処理の結果の表示方法として図10に一例を示す表示方法を用いている。しかしながら、これに限らず、例えば、表示レイアウト制御部250は顔画像選択表示処理の結果の表示方法として図24に示す表示方法を用いてもよい。この場合、例えば、代表人物クラスタにおいて第1の代表ユニットから第Mの代表ユニットの順番に上から配置し、代表ユニットにおいて第1の代表顔画像から第Nの代表顔画像の順番に左から配置する。図中の空行は新たな人物の人物クラスタを形成するため、或いは、新たなユニットを形成するために利用される。
但し、分類結果を修正する場合には、ユーザは修正対象の人物クラスタ、ユニット又は顔画像を選択し、それを移動先の人物クラスタ(空行を含む。)又はユニット(空行を含む。)にドラッグ・アンド・ドロップすればよい。例えば“ID24”のユニット内の顔画像を別の人物の顔画像とする場合には、ユーザは“ID24”のユニットを選択し、それを人物クラスタの“空行”の欄にドラッグ・アンド・ドロップする。
なお、この表示方法は変形を加えることによって第2の実施の形態にも適用できる。
(10)上記の第1及び第2の実施の形態の代表画像表示装置1,1aを、ユーザがアノテーションを行う場合には第1及び第2の実施の形態などで説明した方法に従って代表顔画像を選択して表示し、ユーザが画像の閲覧のみを行う場合には異なる方法に従って代表顔画像を選択して表示し、これらの表示方法を切り替えることができるように変形してもよい。なお、閲覧のみを行う場合、例えば、代表人物クラスタでの代表ユニットを選択する際、尤度が高いユニットから順に代表ユニットとして選択していき、代表ユニット又は代表人物クラスタで代表顔画像を選択する際、尤度が高い顔画像から順に代表顔画像として選択していくようにする。こうすることにより、ユーザは、代表人物クラスタがどの人物のものであるか、代表ユニットがどの人物のものであるかを把握しやすくなる。
(11)上記の第1及び第2の実施の形態では、人物クラスタ選択部230は、代表人物クラスタ内で表示する代表顔画像の数(人物クラスタ表示顔画像数)が代表人物クラスタ間でほぼ均等になるように、人物クラスタ表示顔画像数を決定しているが、これに限らず、例えば次のようなものであってもよい。
第1の実施の形態では、人物クラスタ選択部230は、代表人物クラスタ内のユニットの数を考慮して、ユニットの数が多い代表人物クラスタほど代表人物クラスタ内で表示する代表顔画像の数(人物クラスタ表示顔画像数)が多くなるように、人物クラスタ表示顔画像数を決定する。
また、第1及び第2の実施の形態では、人物クラスタ選択部230は、代表人物クラスタ内の顔画像の数を考慮して、顔画像の数が多い代表人物クラスタほど代表人物クラスタ内で表示する代表顔画像の数(人物クラスタ表示顔画像数)が多くなるように、人物クラスタ表示顔画像数を決定する。
(12)上記の第1の実施の形態では、ユニット選択部240は、代表ユニット内で表示する代表顔画像の数(ユニット表示顔画像数)が代表ユニット間でほぼ均等になるように、ユニット表示顔画像数を決定しているが、これに限らず、例えば次のようなものであってもよい。ユニットタ選択部240は、代表ユニット内の顔画像の数を考慮して、顔画像の数が多い代表ユニットほど代表ユニット内で表示する代表顔画像の数(ユニット表示顔画像数)が多くなるように、ユニット表示顔画像数を決定する。
(13)上記の各実施の形態の各装置は、CPUやMPUで動作するソフトウェア構成に限られるものではなく、例えば、ハードウェア構成で実現されてもよい。この場合、典型的には集積回路であるLSI(LargeScale Integration)として実現される。これらは、個別に1チップ化されてもよいし、全てまたは一部を含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(FieldProgrammable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
本発明は、画像のクラスタリングの結果を表示する代表画像表示装置に有用である。
1 代表画像表示装置
10,10a 演算処理部
20,20a 記憶部
21 画像データベース(画像DB)
22 顔画像データベース(顔画像DB)
23,23a 顔画像クラスタデータベース(顔画像クラスタDB)
30 表示部
40 操作インターフェース部(操作IF部)
100 画像解析部
110 画像入力部
120 顔認識処理部
130,130a クラスタ形成部
140,140a クラスタ修正部
200 画像表示部
210 表示レイアウト制御部
220 表示顔画像数決定部
230 人物クラスタ選択部
240 ユニット選択部
250,250a 代表顔画像選択部

Claims (15)

  1. 複数の画像が類似する画像をまとめた下位クラスタに分類され、複数の下位クラスタが類似する下位クラスタをまとめた上位クラスタに分類された分類結果を用いて、表示部に表示する代表画像を選択して表示部に表示する代表画像表示装置において、
    1以上の上位クラスタを代表上位クラスタとして選択する上位クラスタ選択部と、
    各代表上位クラスタにおいて、下位クラスタの分類結果の確からしさを示す尤度に基づいて代表上位クラスタ内の下位クラスタからM(Mは1以上で代表上位クラスタ内の下位クラスタの数以下の整数)個の下位クラスタを代表下位クラスタとして選択する下位クラスタ選択部と、
    各代表下位クラスタにおいて、画像の分類結果の確からしさを示す尤度に基づいて代表下位クラスタ内の画像からN(Nは1以上で代表下位クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択部と、
    を備える代表画像表示装置。
  2. 前記下位クラスタ選択部は、
    前記代表上位クラスタ内の1番尤度が高い下位クラスタを第1の代表下位クラスタとして選択し、前記Mが2以上の場合には、更に、前記代表上位クラスタ内の尤度が低い方から(M−1)個の下位クラスタを第2から第Mの代表下位クラスタとして選択する
    請求項1記載の代表画像表示装置。
  3. 前記下位クラスタ選択部は、前記尤度として、代表上位クラスタの特徴量空間上の中心位置又は重心位置から下位クラスタの特徴量空間上の中心位置又は重心位置までの距離を用いる
    請求項2記載の代表画像表示装置。
  4. 前記下位クラスタ選択部は、
    前記第1の代表下位クラスタの選択に用いる前記尤度として、代表上位クラスタの特徴量空間上の中心位置又は重心位置から下位クラスタの特徴量空間上の中心位置又は重心位置までの距離を用い、
    前記第2から第Mの代表下位クラスタの選択に用いる前記尤度として、ユーザが分類を修正した下位クラスタであるか否かを示す情報を用いる
    請求項2記載の代表画像表示装置。
  5. 前記下位クラスタ選択部は、
    前記第1の代表下位クラスタの選択に用いる前記尤度として、代表上位クラスタの特徴量空間上の中心位置又は重心位置から下位クラスタの特徴量空間上の中心位置又は重心位置までの距離を用い、
    前記第2から第Mの代表下位クラスタの選択に用いる前記尤度として、下位クラスタ内の画像の数を用いる
    請求項2記載の代表画像表示装置。
  6. 前記代表画像選択部は、
    前記代表下位クラスタ内の1番尤度が高い画像を第1の代表画像として選択し、前記Nが2以上の場合には、更に、前記代表下位クラスタ内の尤度が低い方から(N−1)個の画像を第2から第Nの代表画像として選択する
    請求項1記載の代表画像表示装置。
  7. 前記代表画像選択部は、前記尤度として、代表下位クラスタの特徴量空間上の中心位置又は重心位置から画像の特徴量空間上の位置までの距離を用いる
    請求項6記載の代表画像表示装置。
  8. 前記代表画像選択部は、
    前記第1の代表画像の選択に用いる前記尤度として、代表下位クラスタの特徴量空間上の中心位置又は重心位置から画像の特徴量空間上の位置までの距離を用い、
    前記第2から第Nの代表画像の選択に用いる前記尤度として、ユーザが分類を修正した画像であるか否かを示す情報を用いる
    請求項6記載の代表画像表示装置。
  9. 第1の代表画像と第2から第Nの代表画像とを異なる表示方法で前記表示部に表示する処理を行う表示レイアウト制御部
    を更に備える請求項6記載の代表画像表示装置。
  10. 前記表示部の表示領域サイズとユーザが視認可能な画像サイズとに基づいて前記表示部に表示する代表画像の数を決定する表示画像数決定部
    を更に備える請求項1記載の代表画像表示装置。
  11. 前記画像は人物の顔画像である
    請求項1記載の代表画像表示装置。
  12. 複数の画像が類似する画像をまとめたクラスタに分類された分類結果を用いて、表示部に表示する代表画像を選択して表示部に表示する代表画像表示装置において、
    1以上のクラスタを代表クラスタとして選択するクラスタ選択部と、
    各代表クラスタにおいて、画像の分類結果の確からしさを示す尤度に基づいて代表クラスタ内の画像からN(Nは1以上で代表クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択部と、
    を備える代表画像表示装置。
  13. 前記代表画像選択部は、
    前記代表クラスタ内の1番尤度が高い画像を第1の代表画像として選択し、前記Nが2以上の場合には、更に、前記代表クラスタ内の尤度が低い方から(N−1)個の画像を前記第2から第Nの代表画像として選択する
    請求項12記載の代表画像表示装置。
  14. 複数の画像が類似する画像をまとめた下位クラスタに分類され、複数の下位クラスタが類似する下位クラスタをまとめた上位クラスタに分類された分類結果を用いて、表示する代表画像を選択して表示する代表画像表示方法において、
    1以上の上位クラスタを代表上位クラスタとして選択する上位クラスタ選択ステップと、
    各代表上位クラスタにおいて、下位クラスタの分類結果の確からしさを示す尤度に基づいて代表上位クラスタ内の下位クラスタからM(Mは1以上で代表上位クラスタ内の下位クラスタの数以下の整数)個の下位クラスタを代表下位クラスタとして選択する下位クラスタ選択ステップと、
    各代表下位クラスタにおいて、画像の確からしさを示す分類結果の尤度に基づいて代表下位クラスタ内の画像からN(Nは1以上で代表下位クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択ステップと、
    を有する代表画像表示方法。
  15. 複数の画像が類似する画像をまとめたクラスタに分類された分類結果を用いて、表示する代表画像を選択して表示する代表画像表示方法において、
    1以上のクラスタを代表クラスタとして選択するクラスタ選択ステップと、
    各代表クラスタにおいて、画像の分類結果の確からしさを示す尤度に基づいて代表クラスタ内の画像からN(Nは1以上で代表クラスタ内の画像の数以下の整数)個の画像を代表画像として選択する代表画像選択ステップと、
    を有する代表画像表示方法。
JP2010532783A 2008-10-06 2009-09-10 代表画像表示装置及び代表画像選択方法 Granted JPWO2010041377A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008259237 2008-10-06
JP2008259237 2008-10-06
PCT/JP2009/004468 WO2010041377A1 (ja) 2008-10-06 2009-09-10 代表画像表示装置及び代表画像選択方法

Publications (1)

Publication Number Publication Date
JPWO2010041377A1 true JPWO2010041377A1 (ja) 2012-03-01

Family

ID=42100339

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010532783A Granted JPWO2010041377A1 (ja) 2008-10-06 2009-09-10 代表画像表示装置及び代表画像選択方法

Country Status (4)

Country Link
US (1) US8682085B2 (ja)
JP (1) JPWO2010041377A1 (ja)
CN (1) CN101889282A (ja)
WO (1) WO2010041377A1 (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8774526B2 (en) * 2010-02-08 2014-07-08 Microsoft Corporation Intelligent image search results summarization and browsing
US9465993B2 (en) * 2010-03-01 2016-10-11 Microsoft Technology Licensing, Llc Ranking clusters based on facial image analysis
CN102822822B (zh) * 2011-01-26 2016-10-05 松下电器(美国)知识产权公司 图像管理装置、图像管理方法、程序、记录介质、集成电路
JPWO2012114727A1 (ja) * 2011-02-24 2014-07-07 パナソニック株式会社 画像処理装置および画像処理方法
JP2013003631A (ja) * 2011-06-13 2013-01-07 Sony Corp 情報処理装置、情報処理方法、情報処理システム、及びプログラム
US8798362B2 (en) 2011-08-15 2014-08-05 Hewlett-Packard Development Company, L.P. Clothing search in images
US9229958B2 (en) 2011-09-27 2016-01-05 Hewlett-Packard Development Company, L.P. Retrieving visual media
JP5810920B2 (ja) * 2012-01-05 2015-11-11 富士通株式会社 コンテンツ再生装置、コンテンツ再生プログラム、及びコンテンツ再生方法
JP6021366B2 (ja) * 2012-03-12 2016-11-09 キヤノン株式会社 情報処理システム、情報処理システムの制御方法、情報処理装置、コンピュータプログラム。
JP5794185B2 (ja) * 2012-03-21 2015-10-14 カシオ計算機株式会社 画像処理装置、画像処理方法及びプログラム
US20130275431A1 (en) * 2012-04-12 2013-10-17 Nainesh Rathod Visual clustering method
US8958645B2 (en) * 2012-04-19 2015-02-17 Canon Kabushiki Kaisha Systems and methods for topic-specific video presentation
US20140105466A1 (en) * 2012-10-16 2014-04-17 Ocean Images UK Ltd. Interactive photography system and method employing facial recognition
US8837867B2 (en) 2012-12-07 2014-09-16 Realnetworks, Inc. Method and system to detect and select best photographs
WO2014162659A1 (ja) * 2013-04-01 2014-10-09 ソニー株式会社 表示制御装置、表示制御方法および表示制御プログラム
US10032091B2 (en) * 2013-06-05 2018-07-24 Emotient, Inc. Spatial organization of images based on emotion face clouds
US20140372419A1 (en) * 2013-06-13 2014-12-18 Microsoft Corporation Tile-centric user interface for query-based representative content of search result documents
JP5930450B2 (ja) * 2013-09-06 2016-06-08 Necソリューションイノベータ株式会社 アノテーション装置及びアノテーションシステム
US10824666B2 (en) 2013-10-10 2020-11-03 Aura Home, Inc. Automated routing and display of community photographs in digital picture frames
US10430986B2 (en) * 2013-10-10 2019-10-01 Pushd, Inc. Clustering photographs for display on a digital picture frame
JP6540129B2 (ja) * 2015-03-19 2019-07-10 株式会社ニコン 観察装置、観察方法、及びプログラム
JP6679266B2 (ja) * 2015-10-15 2020-04-15 キヤノン株式会社 データ解析装置、データ解析方法及びプログラム
WO2017069231A1 (ja) * 2015-10-23 2017-04-27 国立大学法人大阪大学 人体における治療後の形態予測方法及びシステム
US20180101540A1 (en) * 2016-10-10 2018-04-12 Facebook, Inc. Diversifying Media Search Results on Online Social Networks

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6449612B1 (en) * 1998-03-17 2002-09-10 Microsoft Corporation Varying cluster number in a scalable clustering system for use with large databases
US7298931B2 (en) * 2002-10-14 2007-11-20 Samsung Electronics Co., Ltd. Image retrieval method and apparatus using iterative matching
US7373612B2 (en) * 2002-10-21 2008-05-13 Battelle Memorial Institute Multidimensional structured data visualization method and apparatus, text visualization method and apparatus, method and apparatus for visualizing and graphically navigating the world wide web, method and apparatus for visualizing hierarchies
EP1831804A1 (de) * 2004-12-24 2007-09-12 Panoratio Database Images GmbH Relationale komprimierte datenbank-abbilder (zur beschleunigten abfrage von datenbanken)
JP4841553B2 (ja) * 2005-08-17 2011-12-21 パナソニック株式会社 映像シーン分類装置、映像シーン分類方法、プログラム、記録媒体、集積回路およびサーバ−クライアントシステム
US7644373B2 (en) * 2006-01-23 2010-01-05 Microsoft Corporation User interface for viewing clusters of images
US9507778B2 (en) * 2006-05-19 2016-11-29 Yahoo! Inc. Summarization of media object collections
JP5035596B2 (ja) * 2006-09-19 2012-09-26 ソニー株式会社 情報処理装置および方法、並びにプログラム
US7869658B2 (en) * 2006-10-06 2011-01-11 Eastman Kodak Company Representative image selection based on hierarchical clustering
US20080118160A1 (en) * 2006-11-22 2008-05-22 Nokia Corporation System and method for browsing an image database
US8086048B2 (en) * 2008-05-23 2011-12-27 Yahoo! Inc. System to compile landmark image search results

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNG200800694007; 五味愛ほか: 'CAT:大量画像の一覧可視化と詳細度制御のためのGUI' 画像電子学会誌 第37巻 第4号, 20080725, 436-443頁, 画像電子学会 *
JPN6013020727; 五味愛ほか: 'CAT:大量画像の一覧可視化と詳細度制御のためのGUI' 画像電子学会誌 第37巻 第4号, 20080725, 436-443頁, 画像電子学会 *

Also Published As

Publication number Publication date
US8682085B2 (en) 2014-03-25
CN101889282A (zh) 2010-11-17
US20100271395A1 (en) 2010-10-28
WO2010041377A1 (ja) 2010-04-15

Similar Documents

Publication Publication Date Title
US10558860B2 (en) Method of selecting important digital images
JP6741719B2 (ja) 画像ベース検索
KR101731771B1 (ko) 버스트 포토 캡처된 세트로부터 키퍼 이미지의 자동 선택
US20180218202A1 (en) Image processing device, method thereof, and program
US10810454B2 (en) Apparatus, method and program for image search
US9218367B2 (en) Method and interface for indexing related media from multiple sources
JP5386007B2 (ja) 画像クラスタリング方法
US8548211B2 (en) Indicating a correspondence between an image and an object
CN101783886B (zh) 信息处理设备、信息处理方法和程序
US8176426B2 (en) Image reproduction apparatus and image reproduction program product
US7725837B2 (en) Digital image browser
US9507802B2 (en) Information processing apparatus and method, and program
JP5537557B2 (ja) 事象毎に意味論的に分類する方法
US8078623B2 (en) Systems and methods for summarizing photos based on photo information and user preference
JP5358083B2 (ja) 人物画像検索装置及び画像検索装置
JP5727476B2 (ja) 画像評価装置、画像評価方法、プログラム、集積回路
US9538116B2 (en) Relational display of images
US8724908B2 (en) System and method for labeling a collection of images
US10558884B2 (en) System and method for creating navigable views
US8704913B2 (en) Image recording apparatus, image recording method, and storage medium storing program, for use in recording shot images
JP5632084B2 (ja) コンシューマ配下画像集における再来性イベントの検出
JP5346941B2 (ja) データ表示装置、集積回路、データ表示方法、データ表示プログラム及び記録媒体
JP5879544B2 (ja) コンテンツ出力装置、コンテンツ出力方法、プログラム、プログラム記録媒体及びコンテンツ出力集積回路
US8583647B2 (en) Data processing device for automatically classifying a plurality of images into predetermined categories
JP5791364B2 (ja) 顔認識装置、顔認識方法、顔認識プログラム、およびそのプログラムを記録した記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120521

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130430

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130903