(57)【要約】  画像管理装置では、画像を取得してクラスタリングを行うと（Ｓ２０１）、各画像を区分けしてブロックを生成する（Ｓ２０２）。続いて、生成したブロック毎に、そのクラスタのブロック内重要度を算出し（Ｓ２０４）、算出したクラスタのブロック内重要度を積算することによりクラスタの重要度を算出し（Ｓ２０５）、算出したクラスタの重要度に基づいて画像の重要度を算出する（Ｓ２０６）。
2012101697.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像を、重要度を基にランキングするための画像管理装置であって、
複数の画像を取得する画像取得部と、
取得された各画像において、当該画像に含まれるオブジェクトを検出する検出部と、
前記検出された各オブジェクトの画像特徴量を抽出する抽出部と、
検出された各オブジェクトを、それぞれの画像特徴量に基づいて、複数のクラスタのいずれかに分類するクラスタリング部と、
前記画像取得部で取得された複数の画像を区分けして複数のブロックを生成するブロック生成部と、
各ブロックにおいて、当該ブロック内の画像に含まれるオブジェクトが属するクラスタのブロック内重要度を、当該画像と当該クラスタとの関係性に基づいて算出するブロック内重要度算出部と、
算出された各ブロックにおける各クラスタのブロック内重要度を積算することにより、前記複数の画像における各クラスタの重要度を算出するクラスタ重要度算出部と、
算出されたクラスタ重要度を基に、各画像の重要度を算出する画像重要度算出部と、
を備えることを特徴とする画像管理装置。
【請求項２】
前記ブロック生成部は、前記複数の画像を区分けすることにより、区分けされたブロックを識別するブロックＩＤを各画像に付与し、
さらに、各画像に付与されたブロックＩＤを記憶するブロック情報記憶部を備え、
前記画像取得部が新たに画像を取得した場合に、前記ブロック生成部は、当該取得した新しい画像を対象に前記区分けを行うが、前記ブロック情報記憶部にブロックＩＤが記憶された画像を対象としては前記区分けを行わない
ことを特徴とする請求項１記載の画像管理装置。
【請求項３】
前記ブロック生成部は、前記複数の画像を区分けすることにより、区分けされたブロックを識別するブロックＩＤを各画像に付与し、
さらに、各画像に付与されたブロックＩＤを記憶するブロック情報記憶部を備え、
前記画像取得部が新たに画像を取得した場合に、前記ブロック生成部は、前記ブロック情報記憶部にブロックＩＤが記憶された画像の一部と当該取得した新しい画像との両方を対象として前記区分けを行う
ことを特徴とする請求項１記載の画像管理装置。
【請求項４】
各ブロックにおいて、当該ブロックを構成する画像それぞれを示す画像ノードと、前記画像に含まれるオブジェクトが属するクラスタをそれぞれ示すクラスタノードと、前記画像の背景を示す１個の背景ノードとを作成し、作成したノード間のリンクの値を設定し、作成したノードと設定したリンクの値とにより構成されたグラフを生成するグラフ生成部を備え、
前記ブロック内重要度算出部は、生成されたグラフを基に、各ノードに示される画像およびクラスタのブロック内重要度を算出する
ことを特徴とする請求項１記載の画像管理装置。
【請求項５】
前記ブロック内重要度算出部は、前記グラフ生成部によって生成したグラフ情報を元に、確率遷移行列を生成し、この確率遷移行列の固有ベクトルを求めることで、各ブロックにおける画像の重要度およびクラスタのブロック内重要度を算出する
ことを特徴とする請求項４に記載の画像管理装置。
【請求項６】
前記グラフ生成部は、前記グラフに含めてダミーノードを作成し、当該ダミノードと前記画像ノードとの間、当該ダミノードとクラスタノードとの間、および当該ダミノードと前記背景ノードとの間のリンクの値をゼロに設定する
ことを特徴とする請求項５に記載の画像管理装置。
【請求項７】
前記ブロック内重要度算出部は、ランダムウォークを示す行列に基づいて、生成した確率遷移行列を修正し、修正後の確率遷移行列について固有ベクトルを求める
ことを特徴とする請求項６に記載の画像管理装置。
【請求項８】
前記クラスタ重要度算出部は、各ブロックにおいて、ブロックにおけるクラスタのブロック内重要度から、ブロックにおけるダミーノードのブロック内重要度を差し引くことにより、当該クラスタのブロック内重要度を補正する
ことを特徴とする請求項７に記載の画像管理装置。
【請求項９】
前記クラスタ重要度算出部が算出した各ブロックにおける各クラスタのブロック内重要度を、ブロックそれぞれにおけるダミーノードのブロック内重要度の値を元に正規化する重要度正規化部を備え、
前記クラスタ重要度算出部は、正規化された後のクラスタのブロック内重要度を元に、前記複数の画像におけるクラスタの重要度を算出する
ことを特徴とする請求項７に記載の画像管理装置。
【請求項１０】
前記クラスタ重要度算出部は、算出された各ブロックにおけるクラスタのブロック内重要度を足し合わせることにより前記複数の画像におけるクラスタの重要度を算出する
ことを特徴とする請求項１に記載の画像管理装置。
【請求項１１】
さらに、前記クラスタ重要度算出部により算出された各ブロックにおけるクラスタの重要度を、ブロック内に含まれる画像数およびクラスタ数に応じて正規化する重要度正規化部を備え、
前記クラスタ重要度算出部は、正規化された後のクラスタの重要度を足し合わせる
ことを特徴とする請求項１０に記載の画像管理装置。
【請求項１２】
前記クラスタリング部は、外部装置から、当該外部装置において分類されたクラスタの特徴量を取得し、取得した特徴量と分類後の各クラスタの特徴量とを比較することにより、取得した特徴量が、分類後の各クラスタのうちのどのクラスタに対応するかを特定し、
前記クラスタ重要度算出部は、特定されたクラスタの重要度を前記外部装置から取得して、前記積算に用いる
ことを特徴とする請求項１に記載の画像管理装置。
【請求項１３】
前記ブロック生成部は、ブロックの生成に利用できるリソースを示すリソース情報に基づいて生成すべき各ブロックの大きさを決定し、決定された大きさになるように前記複数のブロックを生成を行う
ことを特徴とする請求項１に記載の画像管理装置。
【請求項１４】
前記リソース情報とは、利用できるメモリサイズを示す
ことを特徴とする請求項１３に記載の画像管理装置。
【請求項１５】
複数の画像を、重要度を基にランキングするための画像管理方法であって、
複数の画像を取得する画像取得ステップと、
取得された各画像において、当該画像に含まれるオブジェクトを検出する検出ステップと、
前記検出された各オブジェクトの画像特徴量を抽出する抽出ステップと、
検出された各オブジェクトを、それぞれの画像特徴量に基づいて、複数のクラスタのいずれかに分類するクラスタリングステップと、
前記画像取得ステップで取得された複数の画像を区分けして複数のブロックを生成するブロック生成ステップと、
各ブロックにおいて、当該ブロックを構成する画像に含まれるオブジェクトが属するクラスタのブロック内重要度を、当該画像と当該クラスタとの関係性に基づいて算出するブロック内重要度算出ステップと、
算出された各ブロックにおける各クラスタのブロック内重要度を積算することにより、前記複数の画像における各クラスタの重要度を算出するクラスタ重要度算出ステップと、
算出されたクラスタ重要度を基に、各画像の重要度を算出する画像重要度算出ステップと、
を含むことを特徴とする画像管理方法。
【請求項１６】
画像管理ステップを含む処理をコンピュータに実行させるためのプログラムであって、
前記画像管理ステップは、
複数の画像を取得する画像取得ステップと、
取得された各画像において、当該画像に含まれるオブジェクトを検出する検出ステップと、
前記検出された各オブジェクトの画像特徴量を抽出する抽出ステップと、
検出された各オブジェクトを、それぞれの画像特徴量に基づいて、複数のクラスタのいずれかに分類するクラスタリングステップと、
前記画像取得ステップで取得された複数の画像を区分けして複数のブロックを生成するブロック生成ステップと、
各ブロックにおいて、当該ブロックを構成する画像に含まれるオブジェクトが属するクラスタのブロック内重要度を、当該画像と当該クラスタとの関係性に基づいて算出するブロック内重要度算出ステップと、
算出された各ブロックにおけるクラスタのブロック内重要度を積算することにより、前記複数の画像におけるクラスタの重要度を算出するクラスタ重要度算出ステップと、
算出されたクラスタ重要度を基に、各画像の重要度を算出する画像重要度算出ステップと、
の各ステップを含むことを特徴とするプログラム。
【請求項１７】
画像管理ステップを含む処理をコンピュータに実行させるためのプログラムを記録した記録媒体であって、
前記画像管理ステップは、
複数の画像を取得する画像取得ステップと、
取得された各画像において、当該画像に含まれるオブジェクトを検出する検出ステップと、
前記検出された各オブジェクトの画像特徴量を抽出する抽出ステップと、
検出された各オブジェクトを、それぞれの画像特徴量に基づいて、複数のクラスタのいずれかに分類するクラスタリングステップと、
前記画像取得ステップで取得された複数の画像を区分けして複数のブロックを生成するブロック生成ステップと、
各ブロックにおいて、当該ブロックを構成する画像に含まれるオブジェクトが属するクラスタのブロック内重要度を、当該画像と当該クラスタとの関係性に基づいて算出するブロック内重要度算出ステップと、
算出された各ブロックにおけるクラスタのブロック内重要度を積算することにより、前記複数の画像におけるクラスタの重要度を算出するクラスタ重要度算出ステップと、
算出されたクラスタ重要度を基に、各画像の重要度を算出する画像重要度算出ステップと、
の各ステップを含むことを特徴とする記録媒体。
【請求項１８】
複数の画像を重要度を基にランキングするための集積回路であって、
複数の画像を取得する画像取得部と、
取得された各画像において、当該画像に含まれるオブジェクトを検出する検出部と、
前記検出された各オブジェクトの画像特徴量を抽出する抽出部と、
検出された各オブジェクトを、それぞれの画像特徴量に基づいて、複数のクラスタのいずれかに分類するクラスタリング部と、
前記画像取得部で取得された複数の画像を区分けして複数のブロックを生成するブロック生成部と、
各ブロックにおいて、当該ブロックを構成する画像に含まれるオブジェクトが属するクラスタのブロック内重要度を、当該画像と当該クラスタとの関係性に基づいて算出するブロック内重要度算出部と、
算出された各ブロックにおけるクラスタのブロック内重要度を積算することにより、前記複数の画像におけるクラスタの重要度を算出するクラスタ重要度算出部と、
算出されたクラスタ重要度を基に、各画像の重要度を算出する画像重要度算出部と、
を備えることを特徴とする集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
画像や画像に含まれるオブジェクトをランキングする技術に関する。
【背景技術】
【０００２】
近年、デジタルカメラの普及により、膨大な枚数の画像をユーザが保有するようになってきている。しかし、保有する画像の枚数が膨大になるにつれて、ユーザにとって重要な画像を選び出すことが困難になってきている。【０００３】
そのため、ユーザが所望する画像を効率的に検索することができるように、ユーザにとって重要な画像から順に並べるランキングが必要となっている。【０００４】
画像をランキングして表示することにより、ユーザが必要な画像を簡単に選び出せるよう支援できる。【０００５】
ランキングに関する技術としては、Webサイトのページ間のリンクを元に各ページの重要度を決定する技術が知られている（特許文献１，非特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−１８３８２５号公報
【非特許文献】
【０００７】
【非特許文献１】"Exploiting the Block Structure of the Web for Computing PageRank" D. Kamvar, H.Haveliwala, D.Manning, H.Golub,2003年
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、本発明者らは、ユーザにとって重要な人物が写る画像が重要な写真となるようなランキングを実現する方法として、画像と、画像に写る人物（オブジェクトの一種）をリンク構造で結び、そのリンク構造を元に画像の重要度および人物の重要度を算出する手法を検討している。【０００９】
この手法では、画像を示す画像ノードと人物を示す人物ノードを生成し、画像に特定の人物が写っていた場合、それらの画像ノードと人物ノード間で双方向のリンクを張る。【００１０】
ここで、ノード間のリンクは、そのリンク元ノードの重要度がリンクを通してリンク先ノードへと伝播されることを意味する。また、複数のノードからリンクを張られているノードの重要度は、それぞれのリンクから伝播する全ての重要度を加算したものとする。さらに、重要度の高いノードからリンクを張られているノードの重要度は高くなるものとする。【００１１】
従って、多くの画像ノードからリンクを張られている人物ノードの重要度は高くなる。つまり、多くの画像に写っている人物の重要度は高くなる。【００１２】
また、重要度の高い人物ノードからリンクを張られている画像ノードの重要度は高くなる。つまり、重要度の高い人物が写っている画像の重要度が高くなる。【００１３】
このようにリンク構造を構成し、それぞれの重要度を伝播させていくことで、多くの画像に写っている人物が写る画像の重要度が高くなる。【００１４】
また、この手法では、具体的に重要度を算出するには、すべての画像ノードおよび人物ノードとノード間のリンク構造を元に確率遷移行列を作成し、その行列の固有ベクトルを求めることで、画像の重要度を算出する。固有ベクトルは、各ノードによって重要度が伝播され続けたときの収束値を表している。【００１５】
しかしながら、この手法では、重要度の算出対象とする画像や人物の数が多くなるにつれて、行列演算に関するリソースの負荷が過大になることがある。【００１６】
つまり、上記確率遷移行列は、画像ノードおよび人物ノードの数を足し合わせた分の数を行および列として持つ行列となる。したがって、画像の数が膨大になると、確率遷移行列も巨大になるのである。【００１７】
一例を挙げると、画像の数が100万、人物の数が1000であった場合、確率遷移行列は、およそ（100万＋1000）行×（100万＋1000）列となる。【００１８】
特に、コンシューマデバイスなどでは、このような巨大な行列をメモリ上に展開して演算することは困難である。係る問題は、行列演算を用いた手法に限られず、個々の要素間の関係性に基づいて算出する手法において広く生じ得るものである。【００１９】
なお、特許文献１や非特許文献１では、あらかじめリンク構造を複数のグループとしてまとめ、まずはグループ間の重要度を求め、次にグループ内の重要度を算出することで、演算に要する負荷を軽くできるとしている。【００２０】
しかしながら、これらの従来の技術は、重要度の算出対象はWebサイトであり、算出対象が画像や画像に写るオブジェクトである場合については開示が無い。【００２１】
本発明は、このような背景に鑑みてなされたものであって、画像や当該画像に写るオブジェクトの重要度を、リソースの負荷を軽減しつつ算出することを目的とする。
【課題を解決するための手段】
【００２２】
上記課題を解決するために本発明に係る画像管理装置は、複数の画像を、重要度を基にランキングするための画像管理装置であって、複数の画像を取得する画像取得部と、取得された各画像において、当該画像に含まれるオブジェクトを検出する検出部と、前記検出された各オブジェクトの画像特徴量を抽出する抽出部と、検出された各オブジェクトを、それぞれの画像特徴量に基づいて、複数のクラスタのいずれかに分類するクラスタリング部と、前記画像取得部で取得された複数の画像を区分けして複数のブロックを生成するブロック生成部と、各ブロックにおいて、当該ブロック内の画像に含まれるオブジェクトが属するクラスタのブロック内重要度を、当該画像と当該クラスタとの関係性に基づいて算出するブロック内重要度算出部と、算出された各ブロックにおける各クラスタのブロック内重要度を積算することにより、前記複数の画像における各クラスタの重要度を算出するクラスタ重要度算出部と、算出されたクラスタ重要度を基に、各画像の重要度を算出する画像重要度算出部と、を備えるとしている。
【発明の効果】
【００２３】
本発明に係る画像管理装置によれば、取得した画像の枚数よりは、少ない枚数から構成される各ブロック毎にクラスタの重要度を算出するので、リソース負荷の軽減に寄与できる。【００２４】
ここで、前記ブロック生成部は、前記複数の画像を区分けすることにより、区分けされたブロックを識別するブロックＩＤを各画像に付与し、さらに、各画像に付与されたブロックＩＤを記憶するブロック情報記憶部を備え、前記画像取得部が新たに画像を取得した場合に、前記ブロック生成部は、当該取得した新しい画像を対象に前記区分けを行うが、前記ブロック情報記憶部にブロックＩＤが記憶された画像を対象としては前記区分けを行わないとしても構わない。【００２５】
この構成によれば、ブロック情報記憶部にブロックＩＤが記憶された画像、つまり区分け済みの画像については新たな区分けの対象としないこととなる。ゆえに、新たな区分けがもたらすであろう、ブロック内重要度算出部によるクラスタのブロック内重要度の再計算を減らすことができる。【００２６】
ここで、前記ブロック生成部は、前記複数の画像を区分けすることにより、区分けされたブロックを識別するブロックＩＤを各画像に付与し、さらに、各画像に付与されたブロックＩＤを記憶するブロック情報記憶部を備え、前記画像取得部が新たに画像を取得した場合に、前記ブロック生成部は、前記ブロック情報記憶部にブロックＩＤが記憶された画像の一部と当該取得した新しい画像との両方を対象として前記区分けを行うとしても構わない。【００２７】
このようにすることで、例えば、画像管理装置の計算処理性能に応じて、ブロックの区分けを柔軟に最適化することに貢献できる。【００２８】
ここで、各ブロックにおいて、当該ブロックを構成する画像それぞれを示す画像ノードと、前記画像に含まれるオブジェクトが属するクラスタをそれぞれ示すクラスタノードと、前記画像の背景を示す１個の背景ノードとを作成し、作成したノード間のリンクの値を設定し、作成したノードと設定したリンクの値とにより構成されたグラフを生成するグラフ生成部を備え、前記ブロック内重要度算出部は、生成されたグラフを基に、各ノードに示される画像およびクラスタのブロック内重要度を算出するとしても構わない。【００２９】
また、前記ブロック内重要度算出部は、前記グラフ生成部によって生成したグラフ情報を元に、確率遷移行列を生成し、この確率遷移行列の固有ベクトルを求めることで、各ブロックにおける画像の重要度およびクラスタのブロック内重要度を算出するとしても構わない。【００３０】
また、前記グラフ生成部は、前記グラフに含めてダミーノードを作成し、当該ダミノードと前記画像ノードとの間、当該ダミノードとクラスタノードとの間、および当該ダミノードと前記背景ノードとの間のリンクの値をゼロに設定するとしても構わない。【００３１】
また、前記ブロック内重要度算出部は、ランダムウォークを示す行列に基づいて、生成した確率遷移行列を修正し、修正後の確率遷移行列について固有ベクトルを求めるとしても構わない。【００３２】
また、前記クラスタ重要度算出部は、各ブロックにおいて、ブロックにおけるクラスタのブロック内重要度から、ブロックにおけるダミーノードのブロック内重要度を差し引くことにより、当該クラスタのブロック内重要度を補正するとしても構わない。【００３３】
ここで、各ブロックにおけるクラスタのブロック内重要度には、一定の重要度が上乗せされているものと考えられ、その上乗せ分は、ダミーノードのブロック内重要度として表れると考えられる。【００３４】
このため、各ブロックにおいて、クラスタのブロック内重要度からダミーノードのブロック内重要度を差し引くことにより実質的なクラスタのブロック内重要度を算出できる。【００３５】
特に、区分けの手法に依存して、クラスタの重要度が変わってしまうことを防止できる。【００３６】
また、前記クラスタ重要度算出部が算出した各ブロックにおける各クラスタのブロック内重要度を、ブロックそれぞれにおけるダミーノードのブロック内重要度の値を元に正規化する重要度正規化部を備え、前記クラスタ重要度算出部は、正規化された後のクラスタのブロック内重要度を元に、前記複数の画像におけるクラスタの重要度を算出するとしても構わない。【００３７】
このようにすることで、複数の画像におけるクラスタの重要度が、区分けの手法に依存して変わることを防止できる。【００３８】
また、前記クラスタ重要度算出部は、算出された各ブロックにおけるクラスタのブロック内重要度を足し合わせることにより前記複数の画像におけるクラスタの重要度を算出するとしても構わない。【００３９】
また、さらに、前記クラスタ重要度算出部により算出された各ブロックにおけるクラスタの重要度を、ブロック内に含まれる画像数およびクラスタ数に応じて正規化する重要度正規化部を備え、前記クラスタ重要度算出部は、正規化された後のクラスタの重要度を足し合わせるとしても構わない。【００４０】
この構成によれば、例えば、ブロック内に含まれる画像数やクラスタ数がブロック間で不揃いであった場合でも、ブロック間で実質的なクラスタのブロック内重要度を調整することができる。【００４１】
また、  前記クラスタリング部は、外部装置から、当該外部装置において分類されたクラスタの特徴量を取得し、取得した特徴量と分類後の各クラスタの特徴量とを比較することにより、取得した特徴量が、分類後の各クラスタのうちのどのクラスタに対応するかを特定し、前記クラスタ重要度算出部は、特定されたクラスタの重要度を前記外部装置から取得して、前記積算に用いるとしても構わない。【００４２】
また、前記ブロック生成部は、ブロックの生成に利用できるリソースを示すリソース情報に基づいて生成すべき各ブロックの大きさを決定し、決定された大きさになるように前記複数のブロックを生成を行うとしても構わない。【００４３】
また、前記リソース情報とは、利用できるメモリサイズを示すとしても構わない。【００４４】
また、本発明に係る画像管理方法は、複数の画像を、重要度を基にランキングするための画像管理方法であって、複数の画像を取得する画像取得ステップと、取得された各画像において、当該画像に含まれるオブジェクトを検出する検出ステップと、前記検出された各オブジェクトの画像特徴量を抽出する抽出ステップと、検出された各オブジェクトを、それぞれの画像特徴量に基づいて、複数のクラスタのいずれかに分類するクラスタリングステップと、前記画像取得ステップで取得された複数の画像を区分けして複数のブロックを生成するブロック生成ステップと、各ブロックにおいて、当該ブロックを構成する画像に含まれるオブジェクトが属するクラスタのブロック内重要度を、当該画像と当該クラスタとの関係性に基づいて算出するブロック内重要度算出ステップと、算出された各ブロックにおける各クラスタのブロック内重要度を積算することにより、前記複数の画像における各クラスタの重要度を算出するクラスタ重要度算出ステップと、算出されたクラスタ重要度を基に、各画像の重要度を算出する画像重要度算出ステップと、を含むことを特徴としている。【００４５】
また、本発明に係るプログラムは、画像管理ステップを含む処理をコンピュータに実行させるためのプログラムであって、前記画像管理ステップは、複数の画像を取得する画像取得ステップと、取得された各画像において、当該画像に含まれるオブジェクトを検出する検出ステップと、前記検出された各オブジェクトの画像特徴量を抽出する抽出ステップと、検出された各オブジェクトを、それぞれの画像特徴量に基づいて、複数のクラスタのいずれかに分類するクラスタリングステップと、前記画像取得ステップで取得された複数の画像を区分けして複数のブロックを生成するブロック生成ステップと、各ブロックにおいて、当該ブロックを構成する画像に含まれるオブジェクトが属するクラスタのブロック内重要度を、当該画像と当該クラスタとの関係性に基づいて算出するブロック内重要度算出ステップと、算出された各ブロックにおけるクラスタのブロック内重要度を積算することにより、前記複数の画像におけるクラスタの重要度を算出するクラスタ重要度算出ステップと、算出されたクラスタ重要度を基に、各画像の重要度を算出する画像重要度算出ステップと、の各ステップを含むことを特徴としている。【００４６】
また、本発明に係る記録媒体は、上記プログラムを記録した記録媒体である。【００４７】
また、本発明に係る集積回路は、複数の画像を重要度を基にランキングするための集積回路であって、複数の画像を取得する画像取得部と、取得された各画像において、当該画像に含まれるオブジェクトを検出する検出部と、前記検出された各オブジェクトの画像特徴量を抽出する抽出部と、検出された各オブジェクトを、それぞれの画像特徴量に基づいて、複数のクラスタのいずれかに分類するクラスタリング部と、前記画像取得部で取得された複数の画像を区分けして複数のブロックを生成するブロック生成部と、各ブロックにおいて、当該ブロックを構成する画像に含まれるオブジェクトが属するクラスタのブロック内重要度を、当該画像と当該クラスタとの関係性に基づいて算出するブロック内重要度算出部と、算出された各ブロックにおけるクラスタのブロック内重要度を積算することにより、前記複数の画像におけるクラスタの重要度を算出するクラスタ重要度算出部と、算出されたクラスタ重要度を基に、各画像の重要度を算出する画像重要度算出部と、を備えることを特徴とする。
【図面の簡単な説明】
【００４８】
【図１】実施の形態１における画像管理装置１００の機能ブロック図
【図２】撮影装置１３０から取得した画像に基づいて、ランキングを表示装置１４０に表示するまでの処理の流れを示すフローチャート
【図３】画像取得からクラスタリングまでの処理の詳細を示すフローチャート
【図４】撮影装置１３０から取得した画像群と、画像群に含まれるオブジェクトの一例を示す図
【図５】オブジェクト情報５００の一例を示す図
【図６】ブロックＩＤ付与の処理を詳細に示すフローチャート
【図７】ブロック情報の一例を示す図
【図８】ブロックのグラフ情報生成の処理を詳細に示すフローチャート
【図９Ａ】ブロック１のグラフ情報９００の一例を示す図
【図９Ｂ】ブロック１のグラフ情報９０１の一例を示す図
【図１０】ブロックにおける重要度算出の処理を詳細に示すフローチャート
【図１１】確率遷移行列Ｍ１１００の一例を示す図
【図１２】ランダムウォーク行列Ｘ１２００の一例を示す図
【図１３】固有ベクトル１３００の一例を示す図
【図１４】確率ベクトル化した固有ベクトル１４００の一例を示す図
【図１５】ブロック内重要度情報１５００の一例を示す図
【図１６】クラスタ重要度算出の処理を詳細に示すフローチャート
【図１７】ブロック内重要度情報１５０１をノード数で正規化する様子を示す図
【図１８】ブロック内重要度情報１７０１において、クラスタの重要度を、ダミーノードの重要度で減算する様子を示す図
【図１９】ブロックの分け方が同じ場合のリンク構造と、そのブロックにおけるブロック内重要度を示す図
【図２０】ブロックの分け方が同じでない場合のリンク構造と、そのブロックにおけるブロック内重要度を示す図
【図２１】クラスタ重要度情報２１００の一例を示す図
【図２２】画像重要度算出の処理を詳細に示すフローチャート
【図２３】画像重要度情報２３００の一例を示す図
【図２４】画像ランキング情報の一例を示す図
【図２５】実施の形態２におけるブロックID付与の処理を示すフローチャート
【図２６】実施の形態３におけるクラスタ重要度算出の処理を示すフローチャート
【図２７】ダミーノードの重要度で正規化したブロック内重要度の一例
【図２８】ブロック１〜３におけるクラスタ１のブロック内重要度を足し合わせて、すべての画像におけるクラスタ１の重要度を求める手法を説明する図
【図２９】クラスタ重要度から画像の重要度を求める手法を説明する図
【図３０】新たに取得した画像から、新しいブロックを作成する手法を説明する図
【図３１】新たに取得した画像と、取得済みの画像とを混ぜ合わせて新しいブロックを作成する手法を説明する図
【図３２】ブロック１〜３におけるクラスタ１のブロック内重要度を足し合わせて、すべての画像におけるクラスタ１の重要度を求める手法を説明する図
【図３３】クラスタ重要度から画像の重要度を求める手法を説明する図
【図３４】実施の形態４における処理のイメージを示す図
【図３５】処理のイメージを示す図
【図３６】処理のイメージを示す図
【発明を実施するための形態】
【００４９】
（実施の形態１）
以下、実施の形態１に係る画像管理装置１００および画像管理装置１００の制御方法について、図面を参照しながら説明する。
【００５０】
図１は、実施の形態１における画像管理装置１００とそれに関連する装置との接続を含むブロック図である。
【００５１】
画像管理装置１００は、撮影装置１３０及び表示装置１４０と接続されている。
【００５２】
撮影装置１３０は、画像を撮影することができ、また撮影した画像を蓄積する装置である。ここで言う画像とは、例えば、写真などの静止画でも良いし、動画でも良い。撮影装置１３０は、例えば、デジタルカメラから構成される。
【００５３】
なお、画像管理装置１００と撮影装置１３０とは、例えばUSB（Universal Serial Bus）ケーブルを介して接続されている。
【００５４】
表示装置１４０は、例えばデジタルテレビから構成され、画像管理装置１００から出力される画像などの映像を表示する。表示装置１４０は、例えばHDMI(High-Definition Multimedia Interface)ケーブルを介して画像管理装置１００と接続されている。
【００５５】
次に、図１を用いて、画像管理装置１００の内部構成について説明する。
【００５６】
図１に示すように、画像管理装置１００は、画像取得部１０１、オブジェクト検出部１０２、オブジェクト特徴量抽出部１３０、クラスタリング部１０４、ブロック生成部１０５、グラフ生成部１０６、記憶部１０７、評価部１１４および表示制御部１２０から構成される。
【００５７】
画像取得部１０１は、撮影装置１３０が蓄積している画像を取得し、取得した画像それぞれについて、固有の画像ＩＤを付与する。
【００５８】
画像取得部１０１は、例えば、USBケーブルを挿入するためのUSBポートおよびUSBドライバなどのインターフェイスを制御するソフトウェアから構成される。
【００５９】
オブジェクト検出部１０２は、画像取得部１０１が取得した画像から、オブジェクトが写っている領域（画像における座標）を検出し、検出したオブジェクトそれぞれについて、固有のオブジェクトＩＤを付与する。
【００６０】
ここでいうオブジェクトとは、例えば人物の顔や一般物体（車、家、食べ物など）などが挙げられるが、以降の説明では、オブジェクトとして人物の顔を例に挙げて説明する。
【００６１】
また、オブジェクト検出部１０２は画像のサイズに対するオブジェクトの大きさ（以降では、「占有度」と表記する。）を算出する。
【００６２】
オブジェクト特徴量抽出部１０３は、オブジェクト検出部１０２で画像から検出された顔の画像特徴量を抽出する。
【００６３】
画像特徴量とは、画像中の複数の画素に係る画素値の分布に係る特徴を示したものである。例えば画像特徴量は画像の特徴を示す複数の数値を成分とするベクトルである。画像の特徴には、Ｇａｂｏｒフィルタを用いて得られる画像データの画素値の分布の周期性や方向性などがあり、人物の顔に係る画像特徴量の場合、画素値の分布の周期性や方向性などから目と認識された点２つの間の距離や、鼻と認識された点と口と認識された点との距離などの量を成分とすることができる。
【００６４】
クラスタリング部１０４は、オブジェクト特徴量抽出部１０３で抽出された顔の画像特徴量を元に類似する顔同士を同じクラスタとして分類する。
【００６５】
つまり、クラスタリング部１０４により同じクラスタに分類された顔に対しては、同じクラスタＩＤが付与されることとなる。クラスタリングの結果から、同じクラスタの顔画像は類似した画像特徴量を持っていることを確認できる。クラスタリング手法としては、例えばＫ−Ｍｅａｎｓ法を用いてもよい。
【００６６】
なお、オブジェクト特徴量抽出部１０３やクラスタリング部１０４が行う詳細な手法については、一般的な顔認識技術などを利用することができるので上述の説明は簡単にしている。
【００６７】
ブロック生成部１０５は、取得した画像のうち顔が写っている画像だけを抽出し、抽出した画像をいくつかのブロックに区分けする。
【００６８】
この区分けの方法は特に限定されないが、本実施の形態では、各ブロックに含まれる画像数がなるべく等しくなるように行われる。区分けを行うと、ブロック生成部１０５は、抽出した画像それぞれに、区分けされたブロックを識別するためのブロックＩＤを付与する。
【００６９】
グラフ生成部１０６は、次の（１）〜（３）の処理を、ブロック生成部１０５により生成されたブロック毎に行う機能を有する。
【００７０】
（１）ノードの作成
まず、グラフ生成部１０６は、あるブロックに含まれる画像を示す画像ノード、およびその画像に含まれる人物のクラスタを示すクラスタノード、画像の背景を示す１個の背景ノード、およびダミーノードを生成する。
【００７１】
（２）ノード間のリンクの値の設定
続いて、グラフ生成部１０６は、作成したノード間のリンクの値を設定する。
このリンクは、ノードの重要度を伝播するために用いる。具体的には、リンク元のノードの重要度にリンクの値を掛け合わせた値がリンク先のノードの重要度になる。例えば、あるノードＡの重要度が１とし、ノードＡからノードＢにリンクが張られており、そのリンクの値が0.1とする。このとき、ノードＢの重要度は1×0.1=0.1となる。また、複数のノードからリンクされている場合は、それらの値を加算したものが重要度になる。この設定の詳細は後述する。
【００７２】
（３）ノードとリンクの値とにより構成されたグラフを生成
グラフ生成部１０６は、作成したノードと設定したリンクの値とを表現するグラフを生成する。
【００７３】
記憶部１０７は、オブジェクト情報記憶部１０８、ブロック情報記憶部１０９、グラフ情報記憶部１１０、ブロック内重要度記憶部１１１、画像重要度記憶部１１２およびクラスタ重要度記憶部１１３のサブブロックで構成されている。記憶部１０７は、例えば、RAM(Random Access Memory)から構成することができる。
【００７４】
各記憶部１０８〜１１３が格納する情報の詳細については後述する。
【００７５】
評価部１１４は、確率遷移行列生成部１１５、ブロック内重要度算出部１１６、重要度正規化部１１７、クラスタ重要度算出部１１８および画像重要度算出部１１９のサブブロックから構成される。
【００７６】
確率遷移行列生成部１１５は、グラフ生成部により生成されたグラフ情報に基づいて、確率遷移行列を生成する。
【００７７】
ブロック内重要度算出部１１６は、確率遷移行列の固有ベクトルを求めることで、確率遷移行列を構成する画像やクラスタの各ノードのブロック内重要度を求める。なお、固有ベクトルの算出手法は、べき乗法など一般的な手法を採用できる。
【００７８】
重要度正規化部１１７は、ブロックの分け方に依存して最終的な重要度が変わらないようにするために、ブロック間の重要度を調整する機能を有する。具体的には、例えば、ブロック内重要度をそのブロックに含まれるノード数に基づいて正規化する。
【００７９】
クラスタ重要度算出部１１８は、重要度正規化部１１７で正規化された各クラスタのブロック内重要度を積算することで、画像取得部１０１が取得した画像における各クラスタの重要度を算出する。なお、この積算のやり方には、乗算、加算やこれらの組み合わせなど色々なやり方があるが、本実施の形態では加算であるとして説明する。
【００８０】
画像重要度算出部１１９は、クラスタ重要度算出部１１８が算出したクラスタ毎の重要度に基づいて、画像の重要度を算出する。例えば、クラスタ１が含まれる画像１に対しては、クラスタ１の重要度に基づいて画像１の重要度を算出する。
【００８１】
表示制御部１２０は、ＨＤＭＩ出力端子などの出力インターフェースを介して表示装置１４０に各種表示を実行させる機能を有する。
【００８２】
図２のフローチャートを用いて、画像管理装置１００が行う動作の概要を説明する。
【００８３】
図２のフローチャートは、撮影装置１３０から入力した画像群から、画像ランキングを作成して、結果を表示装置１４０に表示するまでの動作を示している。
【００８４】
図２に示すように、画像管理装置１００は、まずは取得した画像に含まれるオブジェクトを検出し、特徴量の類似するオブジェクトをクラスタとする（Ｓ２０１）。そして、取得した画像群を一定数毎のブロックに分割し、それぞれにブロックＩＤを付与する（Ｓ２０２）。そして、ブロックに含まれる画像とその画像に含まれるクラスタによるリンク構造を表すグラフ情報を生成する（Ｓ２０３）。そして、各ブロックにおいて画像およびクラスタの重要度を算出する。（Ｓ２０４）。その後、各ブロックで求められたブロック内クラスタ重要度を元に、クラスタ重要度を算出する（Ｓ２０５）。そして、クラスタ重要度を元に画像重要度を算出する（Ｓ２０６）。最後に画像の重要度順に画像をランキング（Ｓ２０７）、という順で処理を行う。これら各ステップの詳細動作について、以下に説明する。
【００８５】
図３は、図２におけるＳ２０１の画像取得からクラスタリングまでの詳細を示すフローチャートである。
【００８６】
画像取得部１０１は撮影装置１３０に蓄積されている画像群を取得する（Ｓ３０１）。ここで、画像取得部１０１は、各画像に対して一意に識別できるように画像ＩＤを付与する。なお、以下では、ステップＳ３０１で取得した画像を「取得画像」と呼ぶことがある。
【００８７】
次に、オブジェクト検出部１０２は、取得画像に含まれるオブジェクトを検出する（Ｓ３０２）。
【００８８】
取得画像群と、その画像に写るオブジェクトの例を図４に示す。
【００８９】
ここでは、オブジェクトとは人物の顔であるとし、各オブジェクトにユニークなオブジェクトＩＤを付与している。
【００９０】
例えば、画像1にはオブジェクト1（オブジェクトＩＤ=1）のオブジェクトが検出されている。画像2にはオブジェクト2および3のオブジェクトが検出されている。画像3にはオブジェクト4のオブジェクトが検出されている。
【００９１】
オブジェクトを検出する方法としては、例えば規定の顔領域の切り出しに関する学習辞書を用いて顔領域を切り出す方法がある。
【００９２】
オブジェクトの検出を終えると、オブジェクト検出部１０２は、検出したオブジェクトの占有度を求める（Ｓ３０３）。
【００９３】
この占有度とは、画像全体に占めるオブジェクトの大きさを表す。例えば、図４の画像１の場合、オブジェクト１が写っている。また画像１の画像サイズが600×400であり、オブジェクト１の顔の大きさを200×120とすると、オブジェクト１の占有度は(200×120)÷(600×400)=10%になる。同様にして、すべての画像に写るオブジェクトの占有度を求める。
【００９４】
オブジェクト特徴量抽出部１０３は、オブジェクト検出部１０２で検出されたオブジェクトの画像特徴量を抽出する（Ｓ３０４）。
【００９５】
そして、クラスタリング部１０４では、オブジェクト特徴量抽出部１０３で抽出されたオブジェクトの画像特徴量を元にクラスタリングを行う（Ｓ３０５）。
【００９６】
このクラスタリングの手法は上述したように、例えば、画像特徴量を元にしてＫ−ｍｅａｎｓ法を用いる方法がある。
【００９７】
図４の例では、クラスタリング部１０４は、
・画像1に登場するオブジェクト１
・画像2に登場するオブジェクト2
の両者の画像特徴量が類似しているので、これらのオブジェクト１，2に同じクラスタ1というクラスタＩＤを付与する。
【００９８】
図５に、図２の一連の処理による結果を表すオブジェクト情報５００を示す。
【００９９】
図５に示すように、オブジェクト情報５００は、オブジェクトＩＤ、クラスタＩＤ、画像ＩＤおよび占有度の情報を関連付けたものである。このオブジェクト情報５００は、記憶部１０７におけるオブジェクト情報記憶部１０８に記憶される。
【０１００】
このように画像取得からクラスタリングまでの処理を終えると（図２：Ｓ２０１）、取得した画像毎にブロックＩＤを付与する処理（Ｓ２０２）に移行する。
【０１０１】
図６のフローにその詳細を示す。
【０１０２】
ここでは、取得した画像を複数のブロックに分割する作業を行う。これにより、以降の処理におけるオブジェクトの重要度の算出に必要なメモリなどのリソースの軽減を図る。
【０１０３】
まずは、ブロック生成部１０５において、オブジェクト情報５００（図５参照）をもとに取得された画像のうちオブジェクトが含まれている画像を抽出し、その画像数を算出する（Ｓ６０１）。
【０１０４】
例えば、図４の例では、画像群に含まれる画像は10枚であり、そのうちにオブジェクトが含まれていない画像は画像6と画像10の2枚である。この場合、オブジェクトが含まれている画像数は10-2=8枚になる。
【０１０５】
このように、オブジェクトが含まれている画像数は、取得された画像数からオブジェクトが含まれていない画像数を減算することで算出できる。
【０１０６】
次に、ブロック生成部１０５は、オブジェクトが含まれる画像を複数のブロックに区分けし（Ｓ６０２）、区分けしたブロックにブロックＩＤを付与する（Ｓ６０３）。
【０１０７】
このステップＳ６０２〜Ｓ６０３の処理は、例えば、まずブロック１つあたりの画像数の上限数を規定し、画像ＩＤを昇順に並べて、上限数になるまでブロックＩＤを昇順に割り振っていくやり方である。
【０１０８】
例えば、上限数が3枚とすると、図４のようなオブジェクトが含まれる8枚の画像に対しては、画像１〜３はブロック１、画像４,５,７はブロック２、画像８,９はブロック３というブロックＩＤを付与する。
【０１０９】
このように各画像にブロックＩＤを付与した結果を示すブロック情報７００を図７に示す。このブロック情報７００は、記憶部１０７におけるブロック情報記憶部１０９に記憶される。なお、図７中、画像６,１０にブロックＩＤが付与されていないのは、両画像にはオブジェクトが含まれていないからである。
【０１１０】
このようなブロックＩＤ付与の処理を終えると（図２：Ｓ２０２）、ブロックのグラフ情報を生成する処理（Ｓ２０３）に移行する。
【０１１１】
図８のフローにその詳細を示す。
【０１１２】
グラフ情報とは、以降の処理であるＳ２０４のブロックにおける重要度を算出するために必要な情報であり、このグラフ情報は、ノードとノード間のリンクの値とを含んでいる。
【０１１３】
このノードとしては、画像ＩＤ毎に対応した画像ノードと、クラスタＩＤ毎に対応したクラスタノードとを含む。
【０１１４】
また、特に、ある画像にあるオブジェクトが写っている場合、その画像の画像ノードからそのオブジェクトが属するクラスタを示すクラスタノードへは、画像におけるオブジェクトの占有度に応じたリンクの値が設定される。反対に、クラスタノードから画像ノードへのリンクは、一定のリンクの値を返すようにする。これにより、それぞれのノードから重要度がリンクの値に応じて伝播するようになる。
【０１１５】
まずは、グラフ生成部１０６において、取得画像から特定のブロックＩＤの画像を抽出する（Ｓ８０１）。
【０１１６】
次に、グラフ生成部１０６は、オブジェクト情報５００から抽出した画像ＩＤに対応する情報を抽出する（Ｓ８０２）。
【０１１７】
ステップＳ８０１，Ｓ８０２の例を説明すると、Ｓ８０１において、ブロック１の画像１〜３を抽出すると、Ｓ８０２では、オブジェクト情報５００（図５参照）から、画像１〜３に対応するオブジェクトＩＤ，クラスタＩＤおよび占有度を抽出する。
【０１１８】
次に、グラフ生成部１０６は、抽出したオブジェクト情報の情報をもとにグラフ構造を生成し（Ｓ８０３）、生成したグラフ構造を記憶部１０７のグラフ情報記憶部１１０に記憶させる。
【０１１９】
この生成のステップは、（１）ノード作成、（２）作成したノード間のリンク値の設定、という２段階の処理からなる。以下順に説明する。
【０１２０】
＜ノード作成＞
まず、そのブロックに含まれる画像を示す画像ノードと、その画像に含まれるオブジェクトに付与されたクラスタを示す人物ノードを生成する。また、背景ノードとダミーノードも生成する。
【０１２１】
背景ノードとは、画像に含まれる背景の重要度をあらわすノードである。具体的には、画像において、オブジェクトが検出されていない領域は全て背景であるとする。
【０１２２】
ダミーノードは、ブロックごとのクラスタの重要度を適切な値へと補正するために用いる。詳細は後述する。
【０１２３】
＜リンク値の設定＞
画像ノードから人物ノードへは、占有度に応じてリンクが張られるが、背景ノードも同様に、画像に含まれている背景の占有度に応じてリンクが張られる。
【０１２４】
なお、背景の占有度は、画像全体から全オブジェクトの占有度を引いた値とする。例えば、画像2については、画像全体（100%）から、オブジェクト2の占有度（12%）と、オブジェクト3の占有度（6%）を引いた値82%（=100 -12 -6）が背景の占有度となる。
【０１２５】
そして、以下の（１）〜（６）のルールに従って、各ノード間のリンクの値を設定する。
（１）画像ノードからクラスタノードへのリンクの値は、画像に含まれるオブジェクトが属するクラスタの占有度とする。
（２）クラスタノードから画像ノードへのリンクの値は、任意の固定値とする（例えば0.01）。
（３）画像ノードから背景ノードへのリンクの値は、画像ノードからクラスタノードへのリンクの値の総和を、1から減算したものとする。
（４）クラスタノードから背景ノードへのリンクの値は、クラスタノードから画像ノードへのリンクの値の総和を、1から減算したものとする。
（５）背景ノードからダミーノードを除くノードへのリンクの値は、均等に分配される。
（６）ダミーノードへのリンクおよびダミーノードからのリンクは存在しない（リンクの値をゼロに設定する。）。
【０１２６】
図９Ａにブロック1のグラフ情報９００を示す。
【０１２７】
グラフ情報９００は、7個のノードとノード間に設定されたリンクの値とを含んで構成される。
【０１２８】
7個のノードは、クラスタ１，２を示す2個のクラスタノード、画像１〜３を示す3個の画像ノード、背景ノード、ダミーノードから構成される。
【０１２９】
リンクの値の設定は、上述の（１)〜（６）のルールに従って設定されている。例えば、画像１とクラスタ１との間のリンクを説明すると、画像１からクラスタ１のリンクの値は、画像１におけるオブジェクト１の占有度である10%、つまり0.1である。
【０１３０】
このようなリンクの値は、重要度がどのくらい伝播するかを示す指標になる。具体的には、（リンク元の重要度）×（リンクの値）＝（リンク先の重要度）として利用することができる。
【０１３１】
これに対して、クラスタ１から画像１へのリンクは、固定値の0.01となっている。
【０１３２】
また、クラスタ１に属するオブジェクトは画像２にも含まれているので、クラスタ１と画像２とのノード間にもリンクが設定されている。
【０１３３】
このようにして、画像とクラスタとのノード間のリンクを設定することができる。
【０１３４】
次に、背景ノードに説明する。例えば、画像１のノードから背景ノードへのリンクの値は、画像１から全てのクラスタノードへのリンクの値の総和0.1を１から減算した値となる。つまり1-0.1=0.9になる。
【０１３５】
また、クラスタ１のノードから背景ノードへのリンクの値についても同様に、クラスタ１のノードから画像ノードへのリンクの値の総和である0.01*1を1から減算した値となる。つまり1-0.01*2=0.98となる。さらに、背景ノードからダミーノードへのリンクの値は、ダミーノードを除いて均等に分配する。ダミーノードを除く全ノード数は、3（画像ノード数）＋2（クラスタノード数）＋1（背景ノード数）＝6個なので、各ノードへの値は1/6となる。これは、背景ノードから背景ノードへのリンクの値も含まれる。
【０１３６】
最後にダミーノードへのリンクおよびダミーノードからのリンクは作らない。
このようにして、ブロックごとに画像ノード、クラスタノード、背景ノードおよびダミーノードのリンク構造を設定する。
【０１３７】
なお、グラフ情報９００は、図９Ａのような背景ノードからダミーノードを除く全ノード（画像ノード、人物ノード、背景ノード）へリンクを持つもののほか、画像のみにリンクを返すというようなものであってもよい。このような場合のグラフ情報９０１の例を図９Ｂに示す。図９Ｂの例では、図９Ａとは異なり、背景ノードから人物ノードへのリンクおよび背景ノードから自身のノードへのリンクが存在せず、背景ノードから画像ノードへのリンクのみが存在する。また、画像ノードへのリンクの重みのつけ方は、各画像ノードに均等に分配している。具体的には、画像ノード数が３であることから、リンクの重み付けはそれぞれ１／３となっている。
【０１３８】
以下で説明に用いるグラフ情報は、図９Ａのグラフ情報９００を例にとって説明するが、これに代えて図９Ｂのグラフ情報９０１を用いても構わない。
【０１３９】
次に、グラフ生成部１０６は、全てのブロックにおいてグラフ構造を生成しているかを確認する（Ｓ８０４）。全てのブロックのグラフ構造を生成しているならば終了、そうでなければ残りのブロックのグラフ構造を生成する。
【０１４０】
図１０は、ブロックにおける各画像および各クラスタの重要度算出の詳細を示す。
【０１４１】
図１０の処理の概要を説明すると、ここでは、グラフ生成部１０６で生成したリンク情報を元に、確率遷移行列を生成する。ここで確率遷移行列は、各ノード間のリンク関係およびリンクの値を示した行列である。そして、その確率遷移行列のその行列の固有ベクトルを求めることで、ブロックにおける各画像および各クラスタの重要度を算出する。各ノードの重要度は様々なノード間のリンク関係により変動するが、最後はある一定の値に収束する。固有ベクトルは、各ノードの重要度の伝播が収束した値を示す。
【０１４２】
図１０の処理の詳細の説明に入る。まずは、評価部１１４の確率遷移行列生成部１１５において、取得画像から特定のブロックを抽出する（Ｓ１００１）。例えば、前記の例では、ブロック１を抽出する。次に、抽出したブロック１のグラフ情報９００をもとに確率遷移行列Ｍを生成する（Ｓ１００２）。
【０１４３】
確率遷移行列の求め方は、各ノード間のリンクの値を行列の要素として指定する。例えば、ブロック１における確率遷移行列Ｍを生成する場合は、図９Ａで生成したグラフ情報９００を用いる。
【０１４４】
このグラフ情報９００を元に導き出した確率遷移行列Ｍ１１００を図１１に示す。行列における行および列には、全てのノードを割り当てる。ここでは、画像ノード、クラスタノード、ダミーノードおよび背景ノードの順に並べている。そして、各ノード間のリンクの値の情報をこの行列の各要素として埋めていく。例えば、画像１のノードからクラスタ１のノードへのリンクの値は0.1である。従って、４行１列目の要素は0.1になる。また、画像１のノードから背景ノードへのリンクの値は0.9である。従って、７行１列目の要素は0.9になる。また、画像１から画像１，２，３、またクラスタ２、さらにダミーノードへのリンクは存在しないので、それぞれの要素は0になる。このようにして、行列における全ての要素を埋めていくことで、確率遷移行列Ｍ１１００を生成する。
【０１４５】
次に、確率遷移行列生成部１１５は、ランダムウォーク行列Ｘを作成する（Ｓ１００３）。この行列Ｘは、自ノードを他ノードを含めてそれぞれ等しい確率で遷移するということを表すためのものである。
【０１４６】
本手法では、確率遷移行列の固有ベクトルを求めることで画像やクラスタの重要度を算出している。しかし、画像やクラスタとのリンクを持たないダミーノードは、スコアが伝播しないため値が求められない。つまり、ランダムウォーク行列はダミーノードのスコアを求めるために用いるものである。
【０１４７】
ランダムウォーク行列Ｘは、全ノード数に対してリンクの値を均等に分配した値を行列の各要素とする。例えば、ブロック１におけるランダムウォーク行列Ｘ１２００を図１２に示す。行列の行と列の並び方は、図１１と同様とする。このとき、ダミーノードを含めたノード数は7個になる。従って、ランダムウォーク行列Ｘ１２００の全要素は1/7となる。
【０１４８】
次に、確率遷移行列生成部１１５は、確率遷移行列Ｍ’を作成する（Ｓ１００４）。具体的には、確率遷移行列Ｍ１１００とランダムウォーク行列Ｘ１２００を元に、以下の式に基づいて決定する。
【０１４９】
Ｍ’＝αＭ＋（１−α）Ｘ  ・・・（式１）
ここで、αは例えば0.85といった固定値になる。
【０１５０】
続いて、ブロック内重要度算出部１１６は、確率遷移行列Ｍ’の固有ベクトルを算出する（Ｓ１００５）。行列の固有ベクトルの求め方としては例えば、べき乗法を用いる方法がある。ここで、固有ベクトルが複数もとめられる場合があるが、ここで算出の対象となるベクトルは、固有値の絶対値が１に対応する固有ベクトルに限る。
【０１５１】
図１３に確率遷移行列Ｍ’から求められる固有ベクトル１３００を示す。ただし、図１３に示す値は、実際に算出された値ではなく例示用の仮の数であるため、注意が必要である。
【０１５２】
次に、ブロック内重要度算出部１１６は、Ｓ１００５で求めた固有ベクトル１３００を確率ベクトル化する（Ｓ１００６）。確率ベクトル化とは、各要素の和が1になるように正規化することである。確率ベクトル化する前の固有ベクトルは、ノルムが１である。しかし、重要度は、ある時点における各ノードに存在する確率を表す。従って、固有ベクトルの確率ベクトル化が必要になる。具体的には、各要素を以下の式に基づき求める。
【０１５３】
【数１】
2012101697.tif 000003
【０１５４】
ここで、右辺のＸｉとは固有ベクトル１３００におけるｉ番目の要素である。また、左辺のＸｉ’とは、確率ベクトル化した固有ベクトルにおけるｉ番目の要素である。例えば、図１３の固有ベクトルの場合、確率ベクトル化した固有ベクトルの1番目の要素は、0.3×(0.3+0.4+0.1+0.22+0.15+0.01+0.8)=0.152となる。同様にして、求めた確率ベクトル化した固有ベクトル１４００を図１４に示す。
【０１５５】
次に、ブロック内重要度算出部１１６は、ブロックにおける各ノードの重要度を決定する（Ｓ１００７）。ここで、確率ベクトル化した固有ベクトル１４００の各要素が元の確率遷移行列Ｍ１１００の各ノードに対応する。
【０１５６】
例えば、確率遷移行列Ｍ１１００における1行目のノードは画像１になる。この場合、画像１のブロック１における重要度は、確率ベクトル化した固有ベクトル１４００の１行目の要素である0.152となる。
【０１５７】
図１５に各ノードのブロック内重要度情報１５００を示す。ブロック内重要度とは、あるブロックにおいて算出されたローカルな重要度を表す。
【０１５８】
このブロック内重要度情報１５００は、ブロック１〜３のそれぞれにおけるブロック内重要度１５０１〜１５０３を含んでおり、記憶部１０７におけるブロック内重要度情報記憶部１１１に記憶される。
【０１５９】
最後に取得した画像が含まれる全てのブロックにおいて重要度を算出し終えたかどうかを確認する（Ｓ１００８）。全てのブロックにおける重要度を算出している場合は（Ｓ１００８：Ｙｅｓ）、ここで完了である。
【０１６０】
これに対して、まだ算出していないブロックがある場合は（Ｓ１００８：Ｎｏ）、そのステップＳ１００１において重要度が未算出な特定のブロックを抽出し、Ｓ１００２から同様の処理を行う。
【０１６１】
図１６は、図２におけるＳ２０５のクラスタ重要度の算出の詳細を示すフローチャートである。
【０１６２】
クラスタ重要度とは、クラスタの良し悪しを計るための指標である。クラスタの重要度は、そのクラスタのオブジェクトがより多くの画像に大きく写っているほど、より高く算出される。
【０１６３】
クラスタ重要度は、各ブロックで求められたクラスタの重要度を元に求める。クラスタ重要度算出部１１８では、ブロック内重要度情報記憶部に記憶されている１つのブロックのブロック内重要度１５００を抽出する（Ｓ１６０１）。
【０１６４】
次に、重要度正規化部１１７において、抽出したブロック内重要度をそのブロックに含まれるノード数で正規化する（Ｓ１６０２）。ここで、この処理は、同じリンク構造をもつノードのブロック内重要度は、どのブロックに含まれていても同じ重要度になるようにするために行う。同じリンク構造を持つノードであったとしても、Ｓ１００６の確率ベクトル化の影響でブロックに含まれるノード数が多いほど、重要度は小さくなる傾向がある。なぜなら、ブロックにおける各ノードの重要度は全て足し合わせて１になるように確率ベクトル化しているためである。ここでは、その影響を排除するためにこの処理を行う。具体的には、ブロック内重要度の各要素にそのブロックの全ノード数をかける。
【０１６５】
図１７に算出の例を示す。ブロック１の全ノード数は７つである（画像１、２、３、クラスタ１、２、ダミー、背景）。従って、ブロック１における各ノードのブロック内重要度に７を掛け合わせる。例えば、画像１のノード数で正規化された値は、0.152×7=1.064になる。重要度正規化部１１７は、同様にして他のブロックに対してもブロック内重要度の正規化を行う。
【０１６６】
ノード数による正規化を終えると、重要度正規化部１１７は、クラスタノードのブロック内重要度からダミーノードのブロック内重要度を減算する（Ｓ１６０３）。これについて図１８を用いて説明する。
【０１６７】
図１８に示すように、正規化されたブロック内重要度１７０１のうち、クラスタ１のブロック内重要度は、0.777である。またダミーノードのブロック内重要度は0.035である。従って、0.777 - 0.035＝0.742とする。同様に、全てのクラスタノードにおいてダミーノードのブロック内重要度を減算して、ブロック内重要度１８０１を求める。
【０１６８】
Ｓ１６０３の処理が必要な理由について図１９，図２０を参照しながら説明する。例えば、図１９のように、同じようなリンク構造を持つクラスタＡとクラスタＢがあるとする。ここで、説明を簡略化するためにリンクの値は全て同じであるとする。このとき、クラスタＡとクラスタＢのブロック内重要度はともに0.71で同じになる。つまり、あるクラスタに分類されたオブジェクトが含まれる画像数と、その画像における占有度が２つのクラスタにおいて同じである場合、それらのクラスタの重要度は同じになる。しかし、図２０のように、ブロックの分け方が同じようにならない場合もある。ここでは、ダミーノードのスコアは算出していない。
【０１６９】
このときのクラスタの重要度の求め方は、後で詳しく説明するが、各ブロックに含まれるブロック内重要度を加算する。例えば、クラスタＡはブロック１にしか含まれていないので、クラスタＡのクラスタ重要度は、ブロック１のブロック内重要度である0.72になる。また、クラスタＢのクラスタ重要度は、ブロック１、２、３および４にクラスタＢが含まれているので、それぞれのブロック内重要度を加算した値になる。つまり、0.56+0.65×3=2.51になる。結果を見て分かるとおり、ブロックの分け方によって、クラスタＡとクラスタＢのクラスタ重要度が異なってしまう。これは、リンク構造に拠らずノードに付与されてしまう重要度が原因である。
【０１７０】
つまり、ブロック２〜４それぞれのクラスタＢの重要度0.65という値は、一定の重要度が上乗せされた値であると考えられる。
【０１７１】
この一定の重要度は、ダミーノードが持つ重要度として表れると考えられる。
【０１７２】
このため、他のノードへの、および他のノードからのリンクを持たないダミーノードの重要度を求めた上で、この値を各ノードのブロック内重要度から減算することで、リンク構造が同じ場合、ブロックの分け方に寄らず、クラスタ重要度が同じ結果となるように図ることができる。
【０１７３】
例えば、図２０の場合、クラスタＡのクラスタ重要度は0.72-0.51=0.21になる。また、クラスタＢのクラスタ重要度は(0.56-0.51)+(0.65-0.563)×3=0.21になる。
【０１７４】
ブロック内重要度算出部１１６がＳ１６０３で求めた値は、そのクラスタのブロック内重要度となる。そして、クラスタ重要度算出部１１８は、クラスタ毎に対応付けて記憶しているクラスタ重要度に、求められたクラスタのブロック内重要度を加算する（Ｓ１６０４）。
【０１７５】
最後に、評価部１１５は、全てのブロックについて重要度を算出し終えたかどうかが確認する（Ｓ１６０５）。
【０１７６】
全てのブロックにおける重要度を算出している場合は（Ｓ１６０５：Ｙｅｓ）、クラスタ毎に対応付けて記憶しているクラスタ重要度を出力して、クラスタ重要度情報記憶部１１３に記憶させる（Ｓ１６０６）。
【０１７７】
これに対して、まだ算出していないブロックがある場合は（Ｓ１６０５：Ｎｏ）、そのブロックにおいてＳ１６０１から同様の処理を行う。このようにして求めるクラスタ重要度情報２１００を図２１に示す。
【０１７８】
各ブロックにおいて、ステップＳ１６０４を繰り返すことにより、あるクラスタの重要度は、各ブロックにおけるブロック内重要度が足し合わせされた大きさとなる。
【０１７９】
この一例を図２８を用いて説明する。ブロック１〜３におけるクラスタ１のブロック内重要度が、それぞれ0.742，0，0であるとすると、0.742＋0＋0＝0.742が取得したすべての画像におけるクラスタ１の重要度となる。
【０１８０】
なお、図２１のクラスタ重要度情報２１００は、記憶部１０７のクラスタ重要度情報記憶部１１３に記憶される。
【０１８１】
図２２は、図２におけるＳ２０６の画像重要度の算出の詳細を示すフローチャートである。画像重要度とは、画像の良し悪しを計るための指標である。画像の重要度は、重要度の高いクラスタが多く含まれていた場合、高く算出される。画像重要度は、クラスタ重要度情報２１００とグラフ情報を元に求める。画像重要度算出部１１９は、クラスタ重要度情報記憶部からクラスタ重要度情報２１００を抽出する（Ｓ２２０１）。
【０１８２】
そして、画像重要度算出部１１９は、各ブロックのグラフ情報を抽出する（Ｓ２２０２）。
【０１８３】
次に、画像重要度算出部１１９は、グラフ情報のクラスタから画像へのリンクの値を元に画像重要度を算出する(Ｓ２２０３)。
【０１８４】
具体的には、クラスタの重要度に、クラスタから画像へのリンクの値を掛け合わせた値が画像の重要度になる。また、複数のクラスタからリンクされている場合は、それらの値を加算したものとする。
【０１８５】
図９Ａのブロック１のグラフ情報と、図２１のクラスタ重要度情報２１００を例にとって説明すると、ブロック１においては、画像１〜３が含まれている。従って、ブロック１のグラフ情報からは画像１〜３３の画像重要度が算出できる。
【０１８６】
具体的には、画像１の画像重要度はクラスタ１のクラスタ重要度である0.772に、クラスタ１から画像１へのリンクの値である0.01を掛け合わせた値、つまり0.772×0.01=0.00772となる（図２９（ａ）参照）。
【０１８７】
同様にして、画像２の重要度は、クラスタ１とクラスタ２のクラスタ重要度を元に、0.772×0.01+0.527×0.01=0.01299なる（図２９（ｂ）参照）。
【０１８８】
次に、画像重要度算出部１１９は、全てのブロックについて画像重要度を計算したかを確認する（Ｓ２２０４）。全てのブロックにおける重要度を算出している場合は（Ｓ２２０４：Ｙｅｓ）、ここで完了である。これに対して、まだ算出していない画像がある場合は（Ｓ２２０４：Ｎｏ）、そのＳ２２０２の処理対象を重要度が未算出な画像を含むブロックとして同様の処理を繰り返す。
【０１８９】
このようにして求められた画像重要度情報２３００の例を図２３に示す。この値は、すべてのブロックのグラフ情報を元に求める。この画像重要度情報２３００は、記憶部１０７の画像重要度情報記憶部１１２に記憶される。
【０１９０】
Ｓ２０７の画像重要度順に画像をランキングした結果を図２４に示す。これにより、ユーザは画像の順位を知ることができる。この結果を表示制御部１２０を通して表示装置１４０に出力する。
【０１９１】
以上の説明のように、実施の形態１に係る画像管理装置１００は、取得した画像に含まれるオブジェクトから生成したクラスタと画像の関係をグラフとし、画像重要度を算出する。さらに、算出に必要な行列のサイズを小さくするために取得した画像を複数のブロックごとに重要度を算出する。
【０１９２】
これにより、画像重要度の算出に係る処理負荷を軽減することができる。
【０１９３】
つまり、図４の例では、オブジェクトを含む画像は8枚であり、クラスタの種類は6種類であるので、ダミーノードと背景ノードの1個ずつを合わせると、18+6+1+1=26で、26行26列の確率遷移行列を演算の対象とする必要がある。これに対して、8枚の画像をブロック１〜３に分けることで、ブロック１は7行7列の確率遷移行列Ｍ１１００（図１１参照）となり、ブロック２，３も同じ行数列数程度の確率遷移行列となる。このように、行数列数がより少ない確率遷移行列を演算の対象とすることができ、特に、固有ベクトルの算出に関する処理負荷を大幅に軽減することができる。
【０１９４】
また、画像の枚数が膨大な場合を想定し、例えば、画像の枚数を100万枚、この画像に含まれるクラスタは100種類であるとする。
【０１９５】
この場合の確率遷移行列は(100万+1000)×(100万+1000)以上になるため、行列の各要素を記憶するために必要なバイト数を4byteとすると、約4×1012byte(≒約4ＴＢ)にもなり、大容量のメモリを必要とする。
【０１９６】
しかし、ブロックに含む画像を１万とした場合、確率遷移行列は(1万+1000)×(1万+1000)程度で良いため、限られたメモリしかない環境でも画像重要度を算出することができる。
【０１９７】
（実施の形態２）
実施の形態２では、取得した画像だけではなく、既に蓄積済みの画像も含めてブロックを生成する方法について説明する。なお、実施の形態１における処理フローである図２のフローチャートのうち、Ｓ２０２のブロックＩＤ付与の部分だけが異なる。それ以外の部分については、実施の形態１と変わらないため、ここでは説明を割愛する。
【０１９８】
図２５は、図２におけるＳ２０２のブロックＩＤ付与の詳細を示す。ここでは取得した画像に加えて、すでに蓄積済みの画像を元に複数のブロックに分割する作業を行う。これにより、以降の処理におけるオブジェクトの重要度の算出に必要なメモリを軽減することができる。
【０１９９】
まずは、ブロック生成部１０５において、オブジェクト情報５００をもとに取得された画像のうちオブジェクトが含まれている画像を抽出し、その画像数を算出する（Ｓ２５０１）。次に、既に蓄積済みの画像に取得した画像を追加する（Ｓ２５０２）。
【０２００】
次に、オブジェクトが含まれる画像を複数のブロックに分割する（Ｓ２５０３）。このとき、既に蓄積済みの画像にブロックＩＤが付与されていたとしても再度ブロックに分割しなおす。以降の処理は、実施の形態１のＳ６０２とＳ６０３と同様なので割愛する。
【０２０１】
ここで、ステップＳ２５０３におけるブロックの分け方は次の3通り考えられる。
【０２０２】
（分け方１）蓄積済みの画像の全部および取得画像をブロック分けの対象として分ける。
【０２０３】
例えば、すでに画像１〜８までが蓄積されており、ブロック１（画像１〜３）、ブロック２（画像４〜６）、ブロック３（画像７〜８）とブロック分けされているとする。このとき新規に画像９〜画像１６を取得したならば、すべての画像である画像１〜１６を対象としてブロック分けをやり直す。
【０２０４】
（分け方２）新たに取得した取得画像のみをブロック分けの対象とし、蓄積済みの画像は一切ブロック分けの対象としない。
【０２０５】
例えば、図３０に示すように、すでに画像１〜３００が蓄積されておりブロック分けが済んでいるとする。このとき新規に画像３０１〜３０８を取得したならば、画像３０１〜画像３０８のみをブロック分けの対象とする。
【０２０６】
（分け方３）分け方３は、分け方１，２を折衷したやり方である。
【０２０７】
例えば、図３１に示すように、すでに画像１〜２９９が蓄積されておりブロック分けが済んでいるとする。このとき新規に画像３００〜３０３を取得したならば、上限枚数３枚に対して余裕があるブロック１００の画像２９８〜２９９と、画像３００〜画像３０３とをブロック分けの対象とする。
【０２０８】
上述した分け方１〜３は、いずれが最良というわけではなく一長一短であり、状況に応じて適宜採用できる。
【０２０９】
すなわち、分け方１は、ブロック分けをやり直すのでそれに伴い各ブロックの行列演算が増えるという側面があるものの、特に、新たに取得した画像の枚数やオブジェクトの有無などに応じてブロック分けを柔軟に最適化し易いという利点がある。
【０２１０】
具体的には、新規取得画像の枚数が蓄積済みの画像の枚数に比べて多く、ブロック分けの単位を大きくする必要がある（例えば、10枚で1ブロックから100枚で1ブロックへと変更するなど）場合には、分け方１は有効である。
【０２１１】
これに対して、分け方２では、図３０のように、蓄積済み画像のブロック１〜１００については、ブロック内のクラスタ重要度および画像重要度の値は変わらないので、行列演算を行わなくてよい。このため、新しいブロック１０１〜１０３についてのみを行列演算の対象とすれば足りることになるので演算量の削減に貢献できる。
【０２１２】
（実施の形態３）
実施の形態３では、実施の形態１におけるクラスタ重要度の算出において、各ブロックのブロック内重要度の正規化を、ノード数を用いるのではなく、ダミーノードの重要度を用いる方法について説明する。
【０２１３】
図２６に図２におけるＳ２０５のクラスタ重要度の算出の詳細を示す。なお、実施の形態１における処理フローである図１６のフローチャートのうち、Ｓ１６０２のノード数で正規化の部分だけが異なる。それ以外の部分については、実施の形態１と変わらないため、ここでは説明を割愛する。
【０２１４】
クラスタ重要度算出部１１８は、ダミーノードの重要度で各ブロックのブロック内重要度を正規化する（Ｓ２６０２）。具体的には、各ブロック内重要度に含まれているダミーノードのスコアを１にするような値を全ての重要度に掛け合わせる。図２７に例を示す。例えば、ブロック１のブロック内重要度が図のようであるとする。このとき、ダミーノードの重要度が0.005である。ここで、ダミーノードの重要度を１にするためには、1/0.005=200を全てのノードのブロック内重要度に掛け合わせる。画像１のブロック内重要度は0.152であるため、0.152×200=30.4になる。同様に、その他のノードのブロック内重要度も正規化する。
【０２１５】
以上の説明のように、実施の形態３に係る画像管理装置１００は、実施の形態１とは異なった正規化の方法を用いて画像の重要度を算出することができる。
【０２１６】
（実施の形態４）
実施の形態４は、あるクラスタの重要度を算出する際に、ブロック内重要度の積算に加えて、外部装置において算出済みで上記クラスタに対応する重要度をも積算することで、より妥当な重要度算出を図るものである。以下では、外部装置において算出したクラスタの重要度を「外部重要度」と呼ぶ。
【０２１７】
図３４に示す画像管理装置３４００は、画像管理装置１００と同様な機能を備えている。すなわち、オブジェクト特徴量抽出部１０３のように画像から顔を抽出する機能、クラスタリング部１０４のように抽出した顔を基にクラスタリングを行う機能、クラスタ重要度算出部１１８のように各クラスタの重要度を算出する機能などを備える。
【０２１８】
画像管理装置１００と画像管理装置３４００との間は、回線（有線・無線問わない。）を通して各種情報のやりとりが可能である。
【０２１９】
図３５，図３６を用いて本実施の形態の処理の流れを説明する。
【０２２０】
まず、画像管理装置１００のクラスタリング部１０４は、画像管理装置３４００から特徴量を取得する（Ｓ３５０１）。
【０２２１】
続いて、クラスタリング部１０４は、分類後の各クラスタの特徴量を、取得した特徴量と比較する（Ｓ３５０２）。図３５の例では、クラスタａ１の特徴量を取得し、取得した特徴量を、クラスタ１〜３それぞれの特徴量と比較している。
【０２２２】
そして、クラスタリング部１０４は、取得した特徴量が、分類後の各クラスタのうちのどのクラスタに対応するかを特定する（Ｓ３５０３）。この特定の手法は、例えば特徴値の類似度が最高のものを特定するやり方や、特徴値の類似度が閾値を超えたかどうかにより特定するやり方を用いることができる。
【０２２３】
続いて、クラスタリング部１０４は、特徴量の比較により特定されたクラスタＩＤの対応関係を示す対応表を作成する。
【０２２４】
例えば、図中の対応表では、画像管理装置１００におけるクラスタ１は、画像管理装置３４００におけるクラスタａ１に対応していることを示している。
【０２２５】
このような対応表により、画像管理装置１００と画像管理装置３４００の両装置の間において、クラスタのＩＤが共有されることとなる。
【０２２６】
このようにクラスタのＩＤを共有した後で、画像管理装置１００においてクラスタの重要度を算出する際には、クラスタ重要度算出部１１８は、画像管理装置３４００からＩＤが対応するクラスタの外部重要度を取得する（Ｓ３５０５）。
【０２２７】
例えば、画像管理装置１００においてクラスタ１の重要度を算出する際には、上記対応表を参照して、クラスタ１に対応するクラスタａ１の外部重要度を画像管理装置３４００から取得する。
【０２２８】
そして、図３６に示すように、クラスタ重要度算出部１１８がクラスタ１の重要度を算出する際には、クラスタ重要度算出部１１８は、ブロック１〜３におけるクラスタ１のブロック内重要度に加えて、取得した外部装置（画像管理装置３４００）におけるクラスタａ１（クラスタ１に対応）の外部重要度をも積算に用いてクラスタ１の重要度を算出する。
【０２２９】
なお、画像管理装置３４００においては、画像管理装置１００と同様に、画像を複数のブロックに区分けし、ブロック内重要度を足し合わせることによりクラスタの重要度を求めるとしてもよい。
【０２３０】
また、画像管理装置１００，３４００だけでなく、クラスドベースのサーバをも連携させて、このサーバに処理を分担させるようにしてもよい。
【０２３１】
なお、本実施の形態では、画像管理装置１００においてＩＤの対応表を作成するとしたが、画像管理装置３４００のＩＤを画像管理装置１００のＩＤに合わせて書き換えるやり方もありうる（例えば、クラスタａ１をクラスタ１と書き換える。）。
【０２３２】
また、画像管理装置１００と画像管理装置３４００との間の、顔認識のアルゴリズムが大幅に異なる場合などには、特徴量を比較する手法が用いにくいことがある。このような場合には、特徴量に代えて、クラスタに属する画像を取得するとしてもよい。
【０２３３】
（実施の形態５）
上記各実施の形態では、複数の画像を区分けしてブロックを生成する例について説明したが、細かくブロック分けすると重要度の伝播が遮断される可能性が高くなるので、個々のブロックの大きさはなるべく大きいことが好ましい。
【０２３４】
もっとも、ブロックの大きさが大きすぎると、行列演算に関するリソースの負荷が過大となる。
【０２３５】
そこで、実施の形態５は、ブロックの大きさを、装置のリソースに即した大きさとすることを図る。
【０２３６】
リソースの例としては、メモリサイズが挙げられる。すなわち、重要度算出のために利用可能なメモリサイズに応じてブロック生成部１０５が生成するブロックがそれぞれ含む画像数を変更する。
【０２３７】
例えば、重要度算出のために利用可能なメモリサイズが２ＭＢの場合、１ブロックあたりの画像数を１万と設定し、メモリサイズが１ＭＢの場合、１ブロックあたりの画像数を５千と設定することが考えられる。その他にもメモリサイズに応じて、１ブロックあたりの画像数の範囲（下限値や上限値）を設定するとしてもよい。
【０２３８】
また、メモリサイズに限らず、リソースの例としては、ＣＰＵのクロック周波数、ＣＰＵ使用率などが挙げられる。また、記憶部１０７がＨＤＤの場合には、１分あたりの回転数やキャッシュサイズなどを利用しても構わない。
【０２３９】
また、上に挙げた項目（メモリサイズ、ＣＰＵのクロック周波数、ＣＰＵ使用率、ＨＤＤの回転数、ＨＤＤのキャッシュサイズ）を基に、重要度算出処理能力の指標となる数値を算出し、この数値を基にブロックがそれぞれ含む画像数を設定するとしてもよい。
＜補足＞
以上、本発明の実施の形態について説明したが、本発明は上記の内容に限定されず、本発明の目的とそれに関連又は付随する目的を達成するための各種形態においても実施可能であり、例えば、以下であっても構わない。
【０２４０】
（１）クラスタのブロック内重要度からクラスタの重要度を求めるやり方について
図２８で簡単に説明した重要度を求めるやり方について補足する。
【０２４１】
あるクラスタが複数のブロックに含まれていた場合、算出されるブロック内重要度は複数になる。この場合、複数のブロック重要度を積算することにより最終的なクラスタの重要度を算出することができる。
【０２４２】
例えば、図３２に示すように、ブロック２およびブロック３の両方に含まれるクラスタ３の重要度については、クラスタ３のブロック１〜３におけるブロック内重要度ａ，ｂ，ｃを足し合わせたａ＋ｂ＋ｃを最終的なクラスタの重要度として算出することができる。
【０２４３】
（２）画像重要度の算出方法について
図２９では、画像の重要度を算出する場合には、その画像に含まれるクラスタの重要度に、クラスタから画像へのリンクの固定値0.01を掛け合わせているがこれに限られない。
【０２４４】
例えば、画像に写っている人物の占有度の大小を画像の重要度に反映させたい場合には、図３３に示すように、画像に含まれるクラスタの重要度に、その画像におけるクラスタの占有度を掛け合わせることによって求めるとしてもよい。
【０２４５】
こうすることで、クラスタ１の人物がより大きく写る画像Ｙを画像Ｘより高い重要度とすることができる。
【０２４６】
（３）クラスタリングについて
実施の形態では、クラスタリング部１０４が行うクラスタリングの手法として、非階層的な手法であるk-means法を例に挙げたが、これに限らずウォード法(Ward's method)などの階層的な手法を用いてもよい。
【０２４７】
（４）オブジェクトについて
各実施の形態では、オブジェクトとして人の顔を例に挙げて説明したが、人に限らず、犬（図４：画像１０）や猫などの動物の顔をオブジェクトとして画像特徴量の抽出対象としても構わない。また、画像に写るオブジェクトとしては、顔に限らず、自動車（図４：画像６）や植物、建物など様々な物体などが考えられる。
【０２４８】
（５）背景のノードについて
実施の形態２では、全画像の背景を１個の背景ノードとしてグラフ生成する例を説明したが、これに限らず、背景のノードを複数個作成したり、あるいは背景のノードを有さないグラフを作成しても構わない。
【０２４９】
（６）画像特徴量について
各実施の形態では、画像特徴量の一例として占有度を挙げて説明したがこれに限られない。
【０２５０】
例えば、占有度に加えて人物の笑顔の度合いや顔の向きの度合いさらには人物のピントの度合いを重みとしても良い。
【０２５１】
笑顔の度合いとしては、より笑顔の度合いが大きい画像をより高い画像重要度とすることが考えられる。
【０２５２】
また、顔の向きの度合いの場合は、より正面を向くほど、より高い画像重要度となるような計算式とすることができる。
【０２５３】
人物のピントの度合いについては、例えば、人物のピントがシャープであるほど高く評価し、ピントがぼけているほど低く評価する。
【０２５４】
さらに、占有度を全く用いずに、笑顔の度合いや顔の向きの度合いや人物のピントの度合いなどに基づいて各オブジェクトの重要度を算出しても構わない。
【０２５５】
要するに、オブジェクトが各画像において写り込んでいる特徴を示す値であれば足り、占有度、笑顔の度合い、顔の向きの度合い、などに限らず様々な値を用いることができる。
【０２５６】
（７）画像を取得する対象について
各実施の形態では、撮影装置１３０から画像を取得するとして説明したが、取得の対象はこれに限られない。
【０２５７】
例えば、携帯端末などの外部機器から画像を取得するとしてもよい。機器どうしの接続の態様としては、有線（ＬＡＮケーブル、ＵＳＢケーブルなど）、無線（赤外線やBluetoothなど）を問わず様々な形態をとり得る。
【０２５８】
また、スマートメディア、コンパクトフラッシュ（登録商標）、メモリースティック、SDメモリーカード、マルチメディアカード、CD-R/RW、DVD±R/RW、DVD-RAM、HD-DVD、BD (Blu-ray Disc)といった記録媒体を着脱可能なドライブを介して取得するようにしてもよい。
【０２５９】
（８）集積回路
各実施の形態の画像評価装置は、典型的には集積回路であるＬＳＩ(Large Scale Integration)として実現されてよい。各回路を個別に１チップとしてもよいし、全ての回路又は一部の回路を含むように１チップ化されてもよい。ここでは、ＬＳＩとして記載したが、集積度の違いにより、ＩＣ(Integrated Circuit)、システムＬＳＩ、スーパＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後にプログラム化することが可能なＦＰＧＡ（FieldProgrammable Gate Array）、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０２６０】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
【０２６１】
（９）プログラム
各実施の形態で示した画像の重要度算出に係る処理をコンピュータ等の各種機器のプロセッサ、及びそのプロセッサに接続された各種回路に実行させるためのプログラムコードからなる制御プログラムを、記録媒体に記録すること、又は各種通信路を介して流通させ頒布することもできる。
【０２６２】
このような記録媒体には、スマートメディア、コンパクトフラッシュ（商標）、メモリースティック（商標）、SDメモリーカード、マルチメディアカード、CD-R/RW、DVD±R/RW、DVD-RAM、HD-DVD、ＢＤ(Blu-ray Disc)等がある。
【０２６３】
流通、頒布された制御プログラムは、プロセッサに読み出され得るメモリ等に格納されることにより利用に供され、そのプロセッサがその制御プログラムを実行することにより実施の形態で示したような各種機能が実現されるようになる。
【産業上の利用可能性】
【０２６４】
本発明に係る画像管理装置は、静止画または動画を蓄積する装置、デジタルカメラ、カメラ付き携帯電話やムービーカメラなどの撮影装置および、ＰＣ（Personal Computer）などに適用することができる。
【符号の説明】
【０２６５】
１００  画像管理装置
１０１  画像取得部
１０２  オブジェクト検出部
１０３  オブジェクト特徴量抽出部
１０４  クラスタリング部
１０５  ブロック生成部
１０６  グラフ生成部
１０７  記憶部
１０８  オブジェクト情報記憶部
１０９  ブロック情報記憶部
１１０  グラフ情報記憶部
１１１  ブロック内重要度記憶部
１１２  画像重要度記憶部
１１３  クラスタ重要度記憶部
１１４  評価部
１１５  確率遷移行列生成部
１１６  ブロック内重要度算出部
１１７  重要度正規化部
１１８  クラスタ重要度算出部
１１９  画像重要度算出部
１２０  表示制御部
１３０  撮影装置
１４０  表示装置
４００  画像群
５００  オブジェクト情報
７００  ブロック情報
９００  ブロック１のグラフ情報
９０１  ブロック１のグラフ情報
１１００  確率遷移行列M
１２００  ランダムウォーク行列X
１３００  固有ベクトル
１４００  確率ベクトル化後の固有ベクトル
１５００  ブロック内重要度情報
１５０１  ブロック１におけるブロック内重要度情報
１７０１  ブロック１におけるブロック内重要度（正規化後）
１８０１  ダミーノードの重要度を減算したクラスタのブロック内重要度
２１００  クラスタ重要度情報
２３００  画像重要度情報
２４００  画像ランキング
２７００  ダミーノードの重要度で正規化したブロック内重要度
３４００  画像管理装置（外部装置）
【図１】
2012101697.tif 000004
【図２】
2012101697.tif 000005
【図３】
2012101697.tif 000006
【図４】
2012101697.tif 000007
【図５】
2012101697.tif 000008
【図６】
2012101697.tif 000009
【図７】
2012101697.tif 000010
【図８】
2012101697.tif 000011
【図９Ａ】
2012101697.tif 000012
【図９Ｂ】
2012101697.tif 000013
【図１０】
2012101697.tif 000014
【図１１】
2012101697.tif 000015
【図１２】
2012101697.tif 000016
【図１３】
2012101697.tif 000017
【図１４】
2012101697.tif 000018
【図１５】
2012101697.tif 000019
【図１６】
2012101697.tif 000020
【図１７】
2012101697.tif 000021
【図１８】
2012101697.tif 000022
【図１９】
2012101697.tif 000023
【図２０】
2012101697.tif 000024
【図２１】
2012101697.tif 000025
【図２２】
2012101697.tif 000026
【図２３】
2012101697.tif 000027
【図２４】
2012101697.tif 000028
【図２５】
2012101697.tif 000029
【図２６】
2012101697.tif 000030
【図２７】
2012101697.tif 000031
【図２８】
2012101697.tif 000032
【図２９】
2012101697.tif 000033
【図３０】
2012101697.tif 000034
【図３１】
2012101697.tif 000035
【図３２】
2012101697.tif 000036
【図３３】
2012101697.tif 000037
【図３４】
2012101697.tif 000038
【図３５】
2012101697.tif 000039
【図３６】
2012101697.tif 000040
【国際調査報告】
2012101697.tif 000041
2012101697.tif 000042
2012101697.tif 000043
2012101697.tif 000044