(57)【要約】【課題】カメラを設置した後に学習データを作成する際の運用コストが過大になることを抑制する。【解決手段】プロセッサとメモリを備えた計算機が、入力された画像から第１のオブジェクトと第２のオブジェクトとを検知し、前記第１のオブジェクトの第１の画像特徴量と、前記第２のオブジェクトの第２の画像特徴量とを抽出し、前記第１のオブジェクトと前記第２のオブジェクトとが異なるオブジェクトであると判定し、異なるオブジェクト同士となる前記第１の画像特徴量と前記第２の画像特徴量との間の分散が大きくなるような変換行列を生成し、前記変換行列を用いて前記画像特徴量を変換した後の画像特徴量を格納する。【選択図】図４
2015158848.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサとメモリを備えた計算機で画像を検索する画像検索方法であって、
前記計算機が、入力された画像から第１のオブジェクトと第２のオブジェクトとを検知する第１のステップと、
前記計算機が、前記第１のオブジェクトの第１の画像特徴量と、前記第２のオブジェクトの第２の画像特徴量とを抽出する第２のステップと、
前記計算機が、前記第１のオブジェクトと前記第２のオブジェクトとが異なるオブジェクトであると判定する第３のステップと、
前記計算機が、異なるオブジェクト同士となる前記第１の画像特徴量と前記第２の画像特徴量との間の分散が大きくなるような変換行列を生成する第４のステップと、
前記計算機が、前記変換行列を用いて前記画像特徴量を変換した後の画像特徴量を格納する第５のステップと、
を含むことを特徴とする画像検索方法。
【請求項２】
請求項１に記載の画像検索方法であって、
前記計算機が、検索対象の画像を受け付けて、前記変換行列で変換された前記画像特徴量を用いて、前記受け付けた画像の検索を行う第６のステップをさらに含むことを特徴とする画像検索方法。
【請求項３】
請求項１に記載の画像検索方法であって、
前記第１のステップは、
入力された複数の画像のそれぞれから第１のオブジェクトと第２のオブジェクトとを検知し、
前記第３のステップは、
同一の画像で前記第１のオブジェクトと前記第２のオブジェクトとが異なるオブジェクトであると判定するステップと、
前記複数の画像間で前記第１のオブジェクトまたは前記第２のオブジェクトのうち同一のオブジェクトを特定するステップと、
を含むことを特徴とする画像検索方法。
【請求項４】
請求項３に記載の画像検索方法であって、
前記第４のステップは、
異なるオブジェクト同士となる前記第１の画像特徴量と前記第２の画像特徴量との間の分散が大きくなる第１の変換行列を生成するステップと、
前記複数の画像で同一のオブジェクトとして特定された前記第１の画像特徴量または第２の画像特徴量の画像間の分散が小さくなる第２の変換行列を生成するステップと、
を含むことを特徴とする画像検索方法。
【請求項５】
請求項３に記載の画像検索方法であって、
前記第４のステップは、
前記複数の画像で同一のオブジェクトとして特定された前記第１の画像特徴量または第２の画像特徴量の平均値から前記変換行列を生成することを特徴とする画像検索方法。
【請求項６】
請求項３に記載の画像検索方法であって、
前記第４のステップは、
前記複数の画像のうち第１のオブジェクトと第２のオブジェクトとを含む第１の画像と第２の画像がある場合、第１の画像の第１のオブジェクトの画像特徴量と、第２の画像の第２のオブジェクトの画像特徴量から前記変換行列を生成することを特徴とする画像検索方法。
【請求項７】
プロセッサとメモリを備えて画像を検索するサーバであって、
前記サーバは、
入力された画像から第１のオブジェクトと第２のオブジェクトとを検知する検知処理部と、
前記第１のオブジェクトの第１の画像特徴量と、前記第２のオブジェクトの第２の画像特徴量とを抽出する特徴量抽出部と、
前記第１のオブジェクトと前記第２のオブジェクトとが異なるオブジェクトであると判定するオブジェクト情報生成部と、
異なるオブジェクト同士となる前記第１の画像特徴量と前記第２の画像特徴量との間の分散が大きくなるような変換行列を生成する変換行列生成部と、
を有することを特徴とするサーバ。
【請求項８】
請求項７に記載のサーバであって、
検索対象の画像を受け付けて、前記変換行列で変換された前記画像特徴量を用いて、前記受け付けた画像の検索を行う検索部をさらに有することを特徴とするサーバ。
【請求項９】
請求項７に記載のサーバであって、
前記検知処理部は、
入力された複数の画像のそれぞれから第１のオブジェクトと第２のオブジェクトとを検知し、
前記オブジェクト情報生成部は、
同一の画像で前記第１のオブジェクトと前記第２のオブジェクトとが異なるオブジェクトであると判定し、前記複数の画像間で前記第１のオブジェクトまたは前記第２のオブジェクトのうち同一のオブジェクトを特定することを特徴とするサーバ。
【請求項１０】
請求項９に記載のサーバであって、
前記変換行列生成部は、
異なるオブジェクト同士となる前記第１の画像特徴量と前記第２の画像特徴量との間の分散が大きくなる第１の変換行列を生成し、前記複数の画像で同一のオブジェクトとして特定された前記第１の画像特徴量または第２の画像特徴量の画像間の分散が小さくなる第２の変換行列を生成することを特徴とするサーバ。
【請求項１１】
請求項９に記載のサーバであって、
前記変換行列生成部は、
前記複数の画像で同一のオブジェクトとして特定された前記第１の画像特徴量または第２の画像特徴量の平均値から前記変換行列を生成することを特徴とするサーバ。
【請求項１２】
請求項９に記載のサーバであって、
前記変換行列生成部は、
前記複数の画像のうち第１のオブジェクトと第２のオブジェクトとを含む第１の画像と第２の画像がある場合、第１の画像の第１のオブジェクトの画像特徴量と、第２の画像の第２のオブジェクトの画像特徴量から前記変換行列を生成することを特徴とするサーバ。
【請求項１３】
プロセッサとメモリを備えたサーバと、
前記サーバに接続された撮像装置と、を有する画像検索システムであって、
前記サーバは、
前記撮像装置から入力された画像から第１のオブジェクトと第２のオブジェクトとを検知する検知処理部と、
前記第１のオブジェクトの第１の画像特徴量と、前記第２のオブジェクトの第２の画像特徴量とを抽出する特徴量抽出部と、
前記第１のオブジェクトと前記第２のオブジェクトとが異なるオブジェクトであると判定するオブジェクト情報生成部と、
異なるオブジェクト同士となる前記第１の画像特徴量と前記第２の画像特徴量との間の分散が大きくなるような変換行列を生成する変換行列生成部と、
を有することを特徴とする画像検索システム。
【請求項１４】
請求項１３に記載の画像検索システムであって、
前記サーバに接続されたクライアント計算機をさらに有し、
前記クライアント計算機から検索対象の画像を受け付けて、前記変換行列で変換された前記画像特徴量を用いて、前記受け付けた画像の検索を行う検索部をさらに有することを特徴とする画像検索システム。
【請求項１５】
請求項１３に記載の画像検索システムであって、
前記検知処理部は、
入力された複数の画像のそれぞれから第１のオブジェクトと第２のオブジェクトとを検知し、
前記オブジェクト情報生成部は、
同一の画像で前記第１のオブジェクトと前記第２のオブジェクトとが異なるオブジェクトであると判定し、前記複数の画像間で前記第１のオブジェクトまたは前記第２のオブジェクトのうち同一のオブジェクトを特定することを特徴とする画像検索システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像検索システム及び方法に関し、計算機での情報検索に関する。
【背景技術】
【０００２】
近年、凶悪犯罪の増加やセキュリティ意識の向上に伴い、店舗や空港、道路などの人が集まる場所に、多くの監視カメラが設置されつつある。これらの監視カメラで撮影された映像は、監視レコーダなどの蓄積装置に格納され、必要に応じて閲覧される。しかしながら、ＩＰカメラ（ネットワーク接続カメラ）の普及によってネットワーク経由で多数のカメラが接続可能になり、また蓄積装置の大容量化が進んだことも相まって、膨大な量の映像が蓄積されつつある。したがって、従来のように目視で全映像データを確認することは非常に困難になっている。
【０００３】
そこで、蓄積装置の大量の映像データの中から、特定の人物や物体が映っている場面を検索して提示するために、様々な類似検索技術が提案されている。ここで、類似検索技術とは、ユーザが指定した検索クエリに類似したデータを対象データ内から探して、その結果を提示する技術を指す。特に、類似画像検索技術とは、画像自体から抽出される色合いや形状、構図等の特徴量を用いて、特徴量間の類似度が大きいデータを検索する技術である。例えば、人物を検索する際には、顔画像のエッジパターンや服の色ヒストグラムなどのベクトルデータを特徴量として用いることができる。また、特徴量ベクトル間の距離が小さいほど類似度が大きくなる。
【０００４】
しかしながら、一般的にこのような特徴量は数百次元から数千次元といった高次元ベクトルになるため、特徴量ベクトル間の距離を計算する際に、計算量が大きいことが課題となっている。
【０００５】
そこで、高次元の特徴量ベクトルを低次元に圧縮して、距離計算の回数を削減する必要がある。高次元ベクトルを低次元に圧縮する方法として、判別分析を用いる方法が提案されている。
【０００６】
特許文献１では、入力された特徴量ベクトルから文字画像や顔画像の判別に有効な特徴量ベクトルを得るために、判別分析を用いて特徴量ベクトルを変換する技術が開示されている。
【０００７】
特許文献２では、文字画像を対象にして判別分析を用いて次元圧縮を行う際に、高品質な画像データと低品質な画像データの両方を用いることで、精度を向上する技術が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−１４０５１３
【特許文献２】特開２００４−３１０６３９
【発明の概要】
【発明が解決しようとする課題】
【０００９】
判別分析とは、クラスと特徴量ベクトルが対となっている形式の学習データが与えられたとき、クラス間の分散を大きくし、クラス内の分散を小さくするような特徴量ベクトル変換行列を求めるための教師あり次元削減方法である。以下、この変換行列を判別行列と呼ぶ。
【００１０】
顔画像から抽出した特徴量ベクトルに対して判別分析による次元圧縮を行う場合、同一人物の顔画像の集合を上記同一クラスとして扱う。したがって、本人同士のベクトル間距離が小さく、他人同士のベクトル間距離が大きくなるような判別行列を求めることになる。つまり、顔の向きや表情、照明条件が異なる場合でも本人同士の類似度が大きくなり、同一環境で撮影した場合でも他人同士の類似度が小さくなるように変換される。
【００１１】
類似画像検索に適用する場合は、学習データ全体から一つの判別行列を作成し、顔画像から抽出した特徴量ベクトル全てに対して、この判別行列を用いた射影を行う。そして、射影された特徴量ベクトル同士のベクトル間距離の計算を行い、距離の値が小さいものから順にソートすることで、類似した顔画像を検索する。よって、判別分析による次元削減を行った特徴量ベクトルを用いて類似画像検索を行うと、本人を見つける精度が向上すると推定される。
【００１２】
以下、判別分析を用いた次元圧縮方法について説明する。ここでは、ある顔画像から抽出したｄ次元の特徴量ベクトルｘを、判別分析によってｄ’次元の特徴量ベクトルに変換するための判別行列Φの生成方法について述べる。なお、ｄ次元は、顔画像から抽出した画像の数の次元数である。また、ｄ’次元は、圧縮後の次元数で、必要とされる精度や計算機の性能などに応じて設定された次元数である。
【００１３】
まず、次式に示すように、本人同士、つまり同一クラスに属するデータを用いてクラス内分散行列Ｗを、他人同士、つまり異クラスに属するデータを用いてクラス間分散行列Ｂを計算する。
【００１４】
【数１】
2015158848.tif 000003
【００１５】
【数２】
2015158848.tif 000004
【００１６】
ここで、クラス数はｃ≧２、総データ数はｎ 、データ集合はＸ＝｛ｘ｝、データ全体の平均値はaveｘである。また、クラスｉのデータ集合をｘi、データ集合ｘiのデータ数をｎi、データ数ｎiのデータの平均をaveｘiとする。また、Ｔは転置行列を示す。
【００１７】
これらのクラス内分散行列Ｗとクラス間分散行列Ｂを用いて、次の（３）式を満たす固有ベクトル行列Ψと固有値行列Λを求める。
【００１８】
ＢΨ  ＝  ＷΨΛ      ・・・  （３）
【００１９】
ここで、Ψは固有ベクトルψi (ｉ＝０、…、ｄ）を列ベクトルとする行列であり、Λは固有値λi)（λ1≧λ2≧…≧λd）を対角要素に持つ行列である。こうして得られた固有ベクトルを固有値の大きい順にｄ’個並べた行列Φ＝｛φ１、φ２、…、φｄ｝が判別行列となる。尚、この判別行列Φを用いて射影した空間を判別空間と呼ぶ。
【００２０】
圧縮前のｄ次元の特徴量ベクトルＸと判別行列Φを用いて、圧縮後のｄ’次元の特徴量ベクトルＹは次の（４）式のように表される。
【００２１】
Ｙ  ＝  ΦTＸ        ・・・  （４）
【００２２】
なお、圧縮後の次元数ｄ’と学習データのクラス数ｃは、次の（５）式のような関係になる。
【００２３】
ｍ≦（ｃ−１）  ・・・  （５）
【００２４】
また、クラス内分散行列Ｗを使用せずに、クラス間分散行列Ｂのみを使用して、次の（６）式を満たす固有ベクトル行列Ψ’と固有値行列Λ’を求めることで、判別行列を作成することも可能である。
【００２５】
ＢΨ’＝Ψ’Λ’      ・・・  （６）
【００２６】
このように判別分析を用いて次元圧縮を行う場合は、人物の顔画像が映っている学習データを予め用意し、各顔画像を人物ごとに分類する必要がある。また、人物の特徴を保持したまま特徴量を圧縮できる量には限度があるため、一般的に数千次元の特徴量を圧縮する場合は数百次元の特徴量になると考えられる。
【００２７】
したがって、上記（５）式に示したように、数百人以上の異なる人物が写っている画像を学習データとして収集する必要がある。さらに、クラス内分散を計算するためには、同一人物の学習データも多数必要である。以上の理由から、人手で学習データを作成するためには非常に多くの時間を必要としていた。
【００２８】
一方、顔認証装置のように、人物が撮影される環境の照明条件や顔画像の向きや大きさが統制されていて変化がない場合は、一度作成した判別空間を別の場所でも使用できると考えられる。したがって、統制環境向けに次元圧縮を行う場合は、初期の学習データ作成に多くの時間が必要となるが、同じ学習データを使いまわすことが可能であった。
【００２９】
しかしながら、カメラの撮影パラメータが異なる場合や、周囲の照明条件、人物が写る角度や大きさなどの撮影環境が異なる場合、適切な判別空間は異なる可能性が高い。例えば、証明写真のようにカメラに正対した顔写真を用いて判別空間を学習した場合、斜めを向いた顔画像や照明が暗い環境では適切な射影を行うことができない。
【００３０】
したがって、監視カメラのように周囲の環境や人物の行動が予測できない非統制な状況で撮影された画像を対象に類似顔画像検索を行う場合、対象となる監視カメラで撮影された顔画像を用いて学習データを作成することが望ましい。
【００３１】
以上のことから、異なる環境で事前に作成した判別空間を用いても高精度な次元圧縮を行うことはできない。よって、実際に使用される場所に設置された多数のカメラに写った顔画像を用いて、判別空間を学習して判別行列を一つ作成し、この判別行列を用いて特徴量ベクトルを射影することが求められる。この場合、事前に学習データを作成することができないため、カメラを設置した後に学習データを作成することになり、運用コストが非常に大きくなることが課題である。
【課題を解決するための手段】
【００３２】
プロセッサとメモリを備えた計算機で画像を検索する画像検索方法であって、前記計算機が、入力された画像から第１のオブジェクトと第２のオブジェクトとを検知する第１のステップと、前記計算機が、前記第１のオブジェクトの第１の画像特徴量と、前記第２のオブジェクトの第２の画像特徴量とを抽出する第２のステップと、前記計算機が、前記第１のオブジェクトと前記第２のオブジェクトとが異なるオブジェクトであると判定する第３のステップと、前記計算機が、異なるオブジェクト同士となる前記第１の画像特徴量と前記第２の画像特徴量との間の分散が大きくなるような変換行列を生成する第４のステップと、前記計算機が、前記変換行列を用いて前記画像特徴量を変換した後の画像特徴量を格納する第５のステップと、を含む。
【発明の効果】
【００３３】
本発明によれば、異なるオブジェクト同士の特徴量間の分散Ｂを大きくするために、同一画像中のオブジェクトは異なるオブジェクトであると決定することで、よりよい変換行列が生成でき、検索精度が向上する。そして、変換行列を作成する学習データを自動的に収集できるため、学習データを作成する処理を低減し、システムの運用コストを抑制することができる。
【図面の簡単な説明】
【００３４】
【図１】本発明の第１の実施例を示し、画像検索システムの構成を示すブロック図である。
【図２】本発明の第１の実施例を示し、特徴量管理情報を示す説明図である。
【図３Ａ】本発明の第１の実施例を示し、別人情報の生成を示し、カメラの画像である。
【図３Ｂ】本発明の第１の実施例を示し、別人情報の生成を示し、他のカメラの画像である。
【図４】本発明の第１の実施例を示し、判別行列生成処理を示すブロック図である。
【図５】本発明の第１の実施例を示し、特徴量ベクトル登録処理を示すフローチャートである。
【図６】本発明の第１の実施例を示し、検索処理を示すフローチャートである。
【図７】本発明の第２の実施例を示し、別人情報および同一人物情報の生成を示す模式図である。
【図８】本発明の第２の実施例を示し、判別行列生成処理を示すフローチャートである。
【発明を実施するための形態】
【００３５】
以下、本発明の実施形態を添付図面に基づいて説明する。
【実施例１】
【００３６】
以下、本発明の第１の実施例の画像検索システムについて、図面に従って説明する。
【００３７】
図１は、第１の実施例の画像検索システムの構成を示すブロック図である。
【００３８】
第１の実施例の画像検索システムは、サーバ計算機１１０、クライアント計算機１３０、判別行列情報１４０、及び検索データベース１５０、カメラ１６０を備える。各装置は、通信基盤１２０によって相互に接続される。
【００３９】
サーバ計算機１１０は、外部インタフェース１１１、中央処理演算装置（ＣＰＵ）１１２、メモリ１１３及び大容量外部記憶装置（ＨＤ）１１４を備える。
【００４０】
外部インタフェース１１１は、サーバ計算機１１０を通信基盤１２０に接続するためのインタフェース（Ｉ／Ｆ）である。ＣＰＵ１１２は、サーバ計算機１１０の処理を実行するプロセッサである。メモリ１１３は、ＣＰＵ１１２によって実行される処理のための作業領域であり、各種データ、及び、ＨＤ１１４からロードされたプログラムを格納する。ＨＤ１１４は、ハードディスクなどの大容量記憶装置であり、ＣＰＵ１１２によって実行されるプログラム、データ（判別行列情報１４０、検索データベース１５０）などを格納する。なお、ＨＤ１１４は、サーバ計算機１１０に接続された外部の記憶装置であってもよい。
【００４１】
クライアント計算機１３０は、通信基盤１２０に接続される計算機である。図１には１つのクライアント計算機１３０を示すが、任意の数のクライアント計算機１３０を備えてもよい。尚、クライアント計算機１３０と同等の機能をサーバ計算機１１０が備えている場合、全ての処理をサーバ計算機１１０で行っても良い。
【００４２】
クライアント計算機１３０は、いかなる構成の計算機であってもよい。図１には、典型的なクライアント計算機１３０の構成を示す。すなわち、図１のクライアント計算機１３０は、ＣＰＵ１３１、メモリ１３２、Ｉ／Ｆ１３３、入力装置１３４及び出力装置１３５を備える。
【００４３】
ＣＰＵ１３１は、メモリ１３２に格納されたプログラムを実行するプロセッサである。メモリ１３２は、ＣＰＵ１３１によって実行されるプログラム等を格納する記憶装置である。Ｉ／Ｆ１３３は、通信基盤１２０に接続され、クライアント計算機１３０とサーバ計算機１１０との間の通信に使用されるインタフェースである。入力装置１３４は、クライアント計算機１３０のユーザから入力を受け付ける装置である。入力装置１３４は、例えば、キーボード又はマウス等である。出力装置１３５は、クライアント計算機１３０のユーザに情報を表示する装置である。例えばＣＲＴ又は液晶ディスプレイのような画像表示装置である。なお、入力装置１３４及び出力装置１３５としては、タッチセンサを備えたディスプレイを入出力装置として用いてもよい。
【００４４】
なお、本実施例の画像検索システムは、通信基盤１２０（ネットワーク）を介して接続されたサーバ計算機１１０とクライアント計算機１３０とがサービスを提供する構成であるが、一般的なパーソナルコンピュータが画像検索のアプリケーションによってサービスを提供する構成であってもよい。
【００４５】
判別行列情報１４０は、特徴量ベクトルの次元圧縮を行うための判別行列（または変換行列）３００を格納している。なお、判別行列３００を転置した行列を格納しても良い。
【００４６】
また、検索データベース１５０は、検索対象とする画像から抽出された画像特徴量（特徴量ベクトル）を格納するためのデータベースであり、例えば、特徴量管理情報２００（図２参照）を格納する。
【００４７】
カメラ１６０ａから１６０ｎは、監視対象エリアに設置したカメラである。以下、カメラ１６０ａから１６０ｎの総称を、カメラ１６０と呼ぶ。なお、処理対象となる映像もしくは画像を事前に撮影しており、クライアント計算機１３０からサーバ計算機１１０に全ての映像もしくは画像を送信する場合は、カメラ１６０を備えなくても良い。あるいは、処理対象となる画像データ（映像または画像）を、予めＨＤ１１４に格納しておいても良い。または、カメラ１６０から受信した画像データを、ＨＤ１１４に格納してもよい。
【００４８】
ＣＰＵ１１２は、各プログラムの処理を実行することによって、所定の機能を提供する機能部として稼働する。例えば、ＣＰＵ１１２は、判別行列生成プログラム４００に従って処理することで判別行列生成部として機能する。ここで、判別行列生成部は、図４で示すように、画像取得部４０１、顔検知処理部４０２、人物情報生成部４０３、特徴量抽出部４０４、クラス間分散計算部４０５、判別行列生成部４０６、及び判別行列格納部４０７の機能部を含む。
【００４９】
また、ＣＰＵ１１２は、検索用特徴量変換プログラム５００に従って処理することで検索用特徴量変換部として機能する。ここで、検索用特徴量変換部は、図５で示すように、画像取得部５０１、顔検知処理部５０２、特徴量抽出部５０３、特徴量変換部５０４、及び特徴量格納部５０５の機能部を含む。
【００５０】
また、ＣＰＵ１１２は、検索プログラム６００に従って処理することで検索部として機能する。ここで、検索部は、図６で示すように、画像入力部６０１、顔検知処理部６０２、特徴量抽出部６０３、特徴量変換部６０４、類似検索部６０５、及び検索結果出力部６０６の機能部を含む。
このように、ＣＰＵ１１２は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
【００５１】
サーバ計算機１１０の各機能を実現するプログラム、テーブル等の情報は、ＨＤ１１４や不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶デバイス、または、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【００５２】
図２は、第１の実施例の特徴量管理情報２００を示す説明図である。
【００５３】
特徴量管理情報２００は、検索データＩＤ２０１、及び検索対象画像特徴量２０２を含む。検索データＩＤ２０１は、特徴量を識別するための識別子であり、画像データなどを紐付けるために使用される。検索対象画像特徴量２０２は、画像から抽出された後に判別行列３００を用いて変換された特徴量ベクトルである。
【００５４】
なお、判別行列情報１４０及び検索データベース１５０は、サーバ計算機１１０が備えるＨＤ１１４に格納されてもよいし、ＨＤ１１４とは異なる他のハードディスクに格納されてもよい。また、画像データがＨＤ１１４に格納される場合、検索対象画像特徴量２０２に対応する画像データには検索データＩＤ２０１が付与される。あるいは、画像データが他の装置に格納される場合、検索対象画像特徴量２０２に対応する画像データに、検索データＩＤ２０１を付与する指示を送信しても良い。
【００５５】
図３Ａ、図３Ｂは、第１の実施例の別人情報の生成を示し、カメラ１６０ａ、１６０ｂの画像である。図４は、第１の実施例の判別行列生成プログラム４００で行われる判別行列生成処理の一例を示すブロック図である。
【００５６】
以下、図３Ａ、図３Ｂと図４を使用して、判別行列生成処理について説明する。
【００５７】
本実施例では、サーバ計算機１１０は判別行列生成プログラム４００を実行することで、判別行列生成部として機能する。判別行列生成部は、画像取得部４０１、顔検知処理部４０２、人物情報生成部４０３、特徴量抽出部４０４、クラス間分散計算部４０５、判別行列生成部４０６、及び判別行列格納部４０７によって、判別行列３００の生成を実行する。
【００５８】
なお、図１に示したＣＰＵ１１２は、ＨＤ１１４に格納された各種プログラムをメモリ１１３にロードし、メモリ１１３にロードされた各種プログラムを読み出し、読み出された各種プログラムを実行することによって、画像取得部４０１、顔検知処理部４０２、人物情報生成部４０３、特徴量抽出部４０４、クラス間分散計算部４０５、判別行列生成部４０６、及び判別行列格納部４０７の機能部を上述したように実現する。
【００５９】
まず、画像取得部４０１では、サーバ計算機１１０が、カメラ１６０から通信基盤１２０を経由して、画像を取得する。画像取得部４０１では、学習データとして画像を取得する。なお、サーバ計算機１１０は、カメラ１６０から映像を取得した後に映像をデコードして、フレーム毎の画像を取得しても良い。また、カメラ１６０で撮影した画像もしくは映像を一旦クライアント計算機１３０に保存しておき、クライアント計算機１３０から通信基盤１２０を経由して、サーバ計算機１１０に画像もしくは映像を送信し、画像取得部４０１で受信しも良い。あるいは、学習データとして予め撮影した画像をＨＤ１１４に格納しておき、ＨＤ１１４から画像を取得（または入力）しても良い。
【００６０】
次に、顔検知処理部４０２では、取得した画像に対して顔検知処理を実行し、画像に写った人物の顔領域を取得する。顔検知処理については、周知または公知の技術を適用すればよいので、ここでは詳述しない。
【００６１】
次に、人物情報生成部（オブジェクト情報生成部）４０３では、顔検知処理部４０２で検知した顔領域を対象に、一台のカメラ１６０から取得した画像に複数の人物が写っている場合、同時に写っている人物は別人であるとして、人物情報を生成する。
【００６２】
例えば、図３Ａ、図３Ｂを用いて説明すると、カメラ１６０ａから取得した画像３１０に人物３２０Ａ、３２０Ｂ、３２０Ｃが映っていた場合、人物３２０Ａ、３２０Ｂ、３２０Ｃはそれぞれ別の人物であると推定される。よって、人物情報生成部４０３は人物３２０Ａと３２０Ｂと３０２Ｃは各々が別人であるという情報を生成する。
【００６３】
また、カメラ１６０ｂから取得した画像３３０に人物３４０Ａ、３４０Ｂ、３４０Ｃ、３４０Ｄが映っていた場合、人物３４０Ａ、３４０Ｂ、３４０Ｃ、３４０Ｄもそれぞれ別の人物であると推定される。よって、人物情報生成部４０３は３４０Ａと３４０Ｂと３４０Ｃと３４０Ｄも各々が別人であるという情報を生成する。
【００６４】
人物情報生成部４０３は、同一人物という情報や別人の情報として、例えば、顔領域の人物毎に識別子を付与し、別人には異なる識別子を付与すれば良い。
【００６５】
次に、特徴量抽出部４０４では、顔検知処理部４０２で検知した顔領域から、顔画像特徴量としてｄ次元の特徴量ベクトルを抽出する。顔画像特徴量は例えば、エッジパターンや色ヒストグラム等に基づいて作成される多次元ベクトルである。なお、特徴量ベクトルの算出については前記エッジパターンや色ヒストグラム等の周知または公知の技術を用いればよいのでここでは詳述しない。
【００６６】
なお、前記人物情報生成部４０３と特徴量抽出部４０４の処理は、並列して行っても良いし、どちらかを先に行っても良い。
【００６７】
次に、クラス間分散計算部４０５では、次の（７）式に従って、顔領域から抽出した特徴量ベクトルを用いて、クラス間分散Ｂを計算する。
【００６８】
【数３】
2015158848.tif 000005
【００６９】
ここで、学習データの全フレーム数をｎfとすると、クラス数ｃj≧２はｊ番目のフレーム画像から検出された顔画像（顔領域）の数であり、ｘijはｊ番目のフレーム画像のｉ番目の顔領域から抽出された特徴量ベクトルであり、特徴量ベクトルのデータの平均はaveｘjである。
【００７０】
次に、判別行列生成部（変換行列生成部）４０６では、次の（８）式を満たす固有ベクトル行列ΨBと固有値行列ΛBを求める。
【００７１】
ＢΨB ＝  ΨBΛB     ・・・ (８)
【００７２】
ここで、ΨBは固有ベクトルψBi（ｉ＝０、…、ｄ）を列ベクトルとする行列であり、ΛBは、固有値λBi（λB1≧λB2≧…≧λBd）を対角要素に持つ行列である。こうして得られた固有ベクトルψBiを固有値λBiの大きい順にｄ’個並べた行列ΦB＝[ΦB1，ΦB2，…，ΦBd]がｄ列×ｄ’行の判別行列３００となる。この判別行列ΦBを用いて後述する変換を行うことでクラス間の分散Ｂは大きくなる。
【００７３】
最後に、判別行列格納部４０７では、判別行列（変換行列）３００を判別行列情報（変換行列情報）１４０に格納する。
【００７４】
以上の処理により、サーバ計算機１１０は入力された画像から顔領域を抽出し、顔領域から人物情報と特徴量ベクトルを抽出する。そして、サーバ計算機１１０は、抽出した人物情報と特徴量ベクトルからクラス間分散Ｂが大きくなるような判別行列３００を算出し、判別行列情報１４０に格納する。
【００７５】
図５は、第１の実施例の検索用特徴量変換プログラム５００で行われる特徴量ベクトル登録処理を示すブロック図である。
【００７６】
本実施例では、サーバ計算機１１０は検索用特徴量変換プログラム５００を実行することで、検索用特徴量変換部として機能する。検索用特徴量変換部は、画像取得部５０１、顔検知処理部５０２、特徴量抽出部５０３、特徴量変換部５０４、及び特徴量格納部５０５によって、特徴量ベクトルを特徴量管理情報２００に登録する処理を実行する。なお、画像取得部５０１、顔検知処理部５０２、特徴量抽出部５０３は、それぞれ図４に示した画像取得部４０１、顔検知処理部４０２、特徴量抽出部４０４と同一でも良いし、異なっても良い。
【００７７】
まず、画像取得部５０１では、カメラ１６０から通信基盤１２０を経由して、類似画像の検索の対象となる画像を取得する。なお、映像を取得した後に映像をデコードして画像を取得しても良い。また、クライアント計算機１３０から通信基盤１２０を経由して、類似画像検索の対象となる画像もしくは映像を送信し、画像取得部５０１で受け取っても良い。あるいは、予め撮影した画像をＨＤ１１４に格納しておき、ＨＤ１１４から画像を取得（または入力）しても良い。
【００７８】
次に、顔検知処理部５０２では、取得した画像に対して顔検知処理を実行し、画像に写った人物の顔領域を取得する。顔検知処理は、前記図４の顔検知処理部４０２と同様であり、周知または公知の技術を適用すればよい。
【００７９】
次に、特徴量抽出部５０３では、顔検知処理部５０２で検知した顔領域から、顔画像の特徴量としてｄ次元の特徴量ベクトルを抽出する。顔画像特徴量は例えば、エッジパターンや色ヒストグラムに基づいて作成される多次元ベクトルである。顔検知処理部５０２で複数の顔領域を検出した場合は、全ての顔領域からｄ次元の特徴量ベクトルを抽出する。なお、特徴量ベクトルは前記図４の特徴量抽出部４０４と同様であり、周知または公知の技術を用いればよい。
【００８０】
次に、特徴量変換部５０４では、特徴量抽出部５０３で抽出したｄ次元の特徴量ベクトルと、判別行列情報１４０から取得した判別行列３００の積を計算して、ｄ’次元の特徴量ベクトルに変換する。なお、次元数はｄ’＜ｄで、判別行列３００によって特徴量ベクトルの圧縮を行う。
【００８１】
最後に、特徴量格納部５０５では、特徴量変換部５０４で得たｄ’次元の特徴量ベクトルを検索データベース１５０の特徴量管理情報２００に格納する。
【００８２】
ここで、特徴量格納部５０５は、特徴量管理情報２００の検索対象画像特徴量２０２に特徴量ベクトルを格納し、この特徴量ベクトルに対応する検索データＩＤ２０１を付与する。なお、特徴量管理情報２００には、検索処理時に高速検索を行うために、クラスタリングやハッシュを生成し、インデクス情報も併せて格納しても良い。また、特徴量管理情報２００には、検索対象画像特徴量２０２に対応する画像の識別子や所在（ファイルパス等）を付加しても良い。
【００８３】
上記処理によって、サーバ計算機１１０は、入力された画像（または映像）からｄ次元の特徴量ベクトルを算出し、判別行列３００を用いてｄ’次元の特徴量ベクトルに変換し、次元圧縮を行って特徴量管理情報２００に特徴量ベクトルを格納する。
【００８４】
図６は、第１の実施例の検索プログラム６００で行われる検索処理を示すブロック図である。
【００８５】
本実施例では、サーバ計算機１１０は検索プログラム６００を実行することで、検索部として機能する。検索部は、画像入力部６０１、顔検知処理部６０２、特徴量抽出部６０３、特徴量変換部６０４、類似検索部６０５、及び検索結果出力部６０６によって、検索処理を実行する。なお、顔検知処理部６０２、特徴量抽出部６０３、特徴量変換部６０４は、それぞれ図４に示した顔検知処理部４０２、特徴量抽出部４０４、特徴量変換部５０４と同一でも良いし、異なっても良い。
【００８６】
まず、画像入力部６０１では、クライアント計算機１３０から通信基盤１２０を経由して、類似画像検索の検索キー（検索対象）となる人物が写っている画像（検索対象画像）が入力され、この画像を受け付ける。
【００８７】
次に、顔検知処理部６０２では、入力された画像（検索対象画像）に対して顔検知処理を実行し、画像に写った人物の顔領域を取得する。顔検知処理は、前記図４の顔検知処理部４０２と同様である。
【００８８】
次に、特徴量抽出部６０３では、顔検知処理部５０２で検知した顔領域から、顔画像特徴量としてd次元の特徴量ベクトルを抽出する。顔画像特徴量は例えば、エッジパターンや色ヒストグラムに基づいて作成される多次元ベクトルである。顔検知処理部５０２で複数の顔領域を検出した場合は、全ての顔領域からｄ次元の特徴量ベクトルを抽出する。なお、顔検知処理部６０２で複数の顔領域が検知された場合は、クライアント計算機１３０から検索キーとなる顔領域を指定しても良いし、複数の顔領域全てから特徴量ベクトルを抽出して、今後の処理に使用しても良い。なお、特徴量ベクトルは前記図４の特徴量抽出部４０４と同様である。
【００８９】
次に、特徴量変換部６０４では、特徴量抽出部６０３で抽出したｄ次元の特徴量ベクトルと、判別行列情報１４０から取得した判別行列３００の積を計算して、ｄ’次元の特徴量ベクトルを得る。なお、複数の検索キーを用いる場合は、判別行列３００を用いて全ての特徴量ベクトルを変換する。なお、特徴量の変換は、前記図５の特徴量変換部５０４と同様である。
【００９０】
次に、類似検索部６０５では、検索キーである特徴量ベクトルと、検索データベース１５０に格納されている検索対象画像特徴量２０２のベクトル間距離を計算する。そして、ベクトル間距離の小さいものから昇順に、検索データＩＤ２０１を並べる。
【００９１】
最後に、検索結果出力部６０６では、並び替えられた検索データＩＤ２０１を元に検索結果をクライアント計算機１３０に出力する。例えば、検索データＩＤ２０１に画像データが紐付けられている場合は、画像データ列を出力する。
【００９２】
以上の処理によって、サーバ計算機１１０は、クライアント計算機１３０から入力された検索対象画像について、ｄ’次元の特徴量ベクトルを算出し、検索データベース１５０の検索対象画像特徴量２０２のベクトル間距離を算出する。そして、サーバ計算機１１０は、ベクトル間距離の小さい順に検索データＩＤ２０１または画像をクライアント計算機１３０へ検索結果として送信する。なお、サーバ計算機１１０が検索結果としてクライアント計算機１３０へ送信する検索データＩＤ２０１の数または画像の数は、所定の値以内に制限しても良い。
【００９３】
なお、本実施例１では、検出した顔領域から抽出した顔特徴量を対象に説明したが、画像の中から検出できるものであれば、全て特徴量の対象にすることができる。例えば、人物領域から抽出した人物特徴量や、人物以外の物体の特徴量を用いても良い。
【００９４】
以上を踏まえ、本実施例１に記載の画像検索システムは、入力された画像から第１のオブジェクトと第２のオブジェクトとを検知し、前記第１のオブジェクトの第１の画像特徴量と、前記第２のオブジェクトの第２の画像特徴量とを抽出し、前記第１のオブジェクトと前記第２のオブジェクトとが異なるオブジェクトであると決定し、異なるオブジェクト同士となる前記第１の画像特徴量と前記第２の画像特徴量との間の分散Ｂが大きくなるような変換行列（判別行列３００）を生成し、前記変換行列を用いて変換した後の画像特徴量を用いて検索することを特徴とする。
【００９５】
かかる特徴により、人手を介することなく、本人同士のベクトル間距離が小さく、他人同士のベクトル間距離が大きくなるような変換行列が生成でき、検索精度が向上する。そして、変換行列を作成する学習データを自動的に収集できるため、学習データを作成する処理を低減し、システムの運用コストを抑制することができる。
【実施例２】
【００９６】
以下、本発明の第２の実施例の画像検索システムについて、図７、図８に従って説明する。
【００９７】
第２の実施例の画像検索システムは、前記第１の実施の例の画像検索システムと同じコンピュータシステムを用いて実現したものであり、構成を示すブロック図、特徴量管理情報を示す説明図、特徴量ベクトル登録処理を示すブロック図、検索処理を示すブロック図は同一である。
【００９８】
図７は、第２の実施例の別人情報および同一人物情報の生成を示す模式図であり、図８は、第２の実施例の判別行列生成処理を示すブロック図である。
【００９９】
以下、図７と図８を使用して、第２の実施例の判別行列生成処理について説明する。
【０１００】
本実施例２では、サーバ計算機１１０は判別行列生成プログラム４００を実行することで、判別行列生成部として機能する。判別行列生成部は、図８で示すように、画像取得部８０１、顔検知処理部８０２、人物追跡部８０３、人物情報生成部８０４、特徴量抽出部８０５、クラス間分散計算部８０６、クラス内分散計算部８０７、判別行列生成部８０８、及び判別行列格納部８０９によって、判別行列３００の生成を実行する。
【０１０１】
まず、画像取得部８０１では、サーバ計算機１１０が、カメラ１６０から通信基盤１２０を経由して、画像を取得する。画像取得部８０１では、前記実施例１と同様に、学習データとして画像を取得する。
【０１０２】
なお、サーバ計算機１１０は、カメラ１６０から映像を取得した後に映像をデコードして、フレーム毎の画像を取得しても良い。また、カメラ１６０または他のカメラで撮影した画像もしくは映像を一旦クライアント計算機１３０に保存しておき、クライアント計算機１３０から通信基盤１２０を経由して、サーバ計算機１１０に画像もしくは映像を送信し、画像取得部８０１で受信しも良い。あるいは、学習データとして予め撮影した画像をＨＤ１１４に格納しておき、ＨＤ１１４から画像を取得（または入力）しても良い。
【０１０３】
次に、顔検知処理部８０２では、取得した画像に対して顔検知処理を実行し、画像に写った人物の顔領域を取得する。顔検知０処理は、前記実施例１の図４に示した顔検知処理部４０２と同様であり、周知または公知の技術を適用すればよい。
【０１０４】
次に、人物追跡部８０３では、連続したフレーム（画像）中に写った人物を追跡する。顔検知処理部８０２で複数の顔領域を検知した場合は、それぞれの顔領域を追跡する。人物追跡部８０３の顔領域の追跡は、異なるフレーム間で同一人物の顔領域を関連付けるもので、周知または公知の技術を用いればよいので、ここでは詳述しない。
【０１０５】
次に、人物情報生成部８０４では、顔検知処理部８０２で検知した顔領域を対象に、一台のカメラ１６０から取得した画像に複数の人物が写っている場合、同時に写っている人物は別人であるとして、別人用人物情報を生成する。別人用人物情報として、画像中の顔領域に人物ＩＤを付与しても良いし、別人という情報のみを保持しておいても良い。さらに、人物追跡部８０３で、追跡した顔領域は同一人物であるとして、同一人物用人物情報を生成する。同一人物用人物情報として、人物ＩＤを付与してグループ化しても良い。このように人物追跡部８０３は、サーバ計算機１１０に入力された複数の画像間で第１のオブジェクトまたは第２のオブジェクトが同一であれば同一のオブジェクト（同一人物）として特定する。
【０１０６】
例えば、図７を用いて説明すると、カメラ１６０ａから取得した画像（フレーム）７１０に顔領域（人物）７２０Ａ、７２０Ｂ，７２０Ｃが映っていた場合、人物７２０Ａ、７２０Ｂ，７２０Ｃはそれぞれ別の人物であると推定される。よって、人物追跡部８０３は、人物７２０Ａと７２０Ｂと７０２Ｃは各々が別人であるという情報を生成する。人物追跡部８０３は、画像７３０に写っている人物７４０Ａ，７４０Ｂ，７４０Ｃと、画像７５０に写っている人物７６０Ａ，７６０Ｂ，７６０Ｃについても同様である。また、人物追跡部８０３は、画像７１０の人物７２０Ａ、７２０Ｂ，７２０Ｃを画像７３０，７５０で追跡した結果、画像７３０中に７４０Ａ、７４０Ｂ，７４０Ｃを検出し、画像７５０中に７６０Ａ、７６０Ｂ，７６０Ｃを検出した場合、人物７２０Ａ，７４０Ａ，７６０Ａは同一人物であり、人物７２０Ｂ，７４０Ｂ，７６０Ｂは同一人物であり、人物７２０Ｃ，７４０Ｃ，７６０Ｃは同一人物という情報を生成する。
【０１０７】
人物情報生成部８０４は、同一人物という情報や別人の情報として、例えば、顔領域の人物毎に識別子を付与し、同一人物には同一の識別子を付与し、別人には異なる識別子を付与すれば良い。
【０１０８】
次に、特徴量抽出部８０５では、顔検知処理部８０２で検知した顔領域から、顔画像特徴量としてd次元の特徴量ベクトルを抽出する。顔画像特徴量は例えば、エッジパターンや色ヒストグラムに基づいて作成される多次元ベクトルである。なお、人物追跡部８０３と人物情報生成部８０４の処理と、特徴量抽出部８０５の処理は、並列して行っても良いし、どちらかを先に行っても良い。なお、特徴量ベクトルは前記実施例１の特徴量抽出部４０４と同様であり、周知または公知の技術を用いればよい。
【０１０９】
次に、クラス間分散計算部８０６では、前記実施例１に示した（７）式に従って、顔領域から抽出した特徴量ベクトルを用いて、クラス間分散Ｂを計算する。
【０１１０】
次に、クラス内分散計算部８０７では、次の（９）式に従って、顔領域から抽出した特徴量ベクトルを用いて、クラス内分散Ｗを計算する。
【０１１１】
【数４】
2015158848.tif 000006
【０１１２】
ここで、人物追跡部８０３で追跡された人物の数をｎpとすると、ｐj≧２はｊ番目の人物から検出された顔画像（顔領域）の数であり、ｘijはｊ番目の人物のｉ番目の顔領域から抽出された特徴量ベクトルであり、特徴量ベクトルのデータの平均はaveｘjである。
【０１１３】
次に、判別行列生成部８０８では、次の（１０）式を満たす固有ベクトル行列ΨBWと固有値行列ΛBWを求める。
【０１１４】
ＢΨBW  ＝  ＷΨBWΛBW    ・・・  （１０）
【０１１５】
ここで、ΨBWは固有ベクトルψBWi（ｉ＝０、…、ｄ）を列ベクトルとする行列であり、ΛBWは固有値λBWi（λBW1≧λBW2≧…≧λBWd）を対角要素に持つ行列である。こうして得られた固有ベクトルψBWiを固有値の大きい順にｄ’個並べた行列ΦBW＝｛ΦBW1，ΦBW2，…，ΦBWd']がｄ列×ｄ’行の判別行列３００となる。これにより、クラス間分散Ｂが大きく、同一のクラス内分散が小さくなるような判別行列３００を求めることができる。
【０１１６】
最後に、判別行列格納部８０９では、上記算出された判別行列３００を判別行列情報１４０に格納する。
【０１１７】
以上により、複数の画像を入力した場合、異なるクラス（顔領域）間では分散Ｂが大きくなる変換行列（第１変換行列）を得るのに加え、同一のクラス（顔領域）内では分散Ｗが小さくなる変換行列（第２変換行列）を得ることができる。これにより、本実施例２では前記実施例１の効果に加えて、同一人物の検出精度を向上させることが可能となる。
【実施例３】
【０１１８】
前記実施例１のクラス間分散計算部４０５では、１枚の画像に映っている顔画像（顔領域）ら抽出した特徴量ベクトルを用いて、クラス間分散Ｂを計算する例を示した。実施例３では、クラス間分散Ｂの計算を行う際に、１枚の画像に映っている顔画像のみを用いて計算するのではなく、前記実施例２で示したように各顔画像（顔領域）を追跡した結果、同一人物だと見なされた複数の顔画像を用いて計算しても良い。
【０１１９】
本実施例３では、次の（１１）式に従って、顔領域から抽出した特徴量ベクトルを用いて、クラス間分散Ｂを計算する。
【０１２０】
【数５】
2015158848.tif 000007
【０１２１】
ここで、学習データの全フレーム数をｎfとすると、クラス数ｃj≧２はｊ番目のフレーム画像から検出された顔画像（顔領域）数である。また、ｙijはｊ番目のフレーム画像のｉ番目の顔領域と、追跡の結果、同一人物と見なされた他の顔画像から抽出された特徴量ベクトルの平均値であり、aveｙjは特徴量ベクトルｙijの平均値である。
【０１２２】
すなわち、学習データとして図７で示したように複数の画像７１０、７３０、７５０が入力された場合、サーバ計算機１１０は、例えば、画像７１０の顔領域７２０Ａは、画像７３０の顔領域７４０Ａと、画像７５０の顔領域７６０Ａと同一人物と判定する。そして、上述のようにサーバ計算機１１０は、３つの顔領域７２０Ａ、７４０Ａ、７６０Ａの特徴量ベクトルの平均値を用いてクラス間分散Ｂを算出する。
【０１２３】
以上のように、複数のフレーム（画像）で同一人物と見なされた顔領域の特徴量ベクトルの平均値からクラス間分散Ｂを演算することで、クラス間分散Ｂが大きくなるような判別行列３００の精度を向上させることが可能となる。なお、複数の画像は、連続した画像あるいは所定時間毎の画像であればよい。
【０１２４】
＜変形例＞
前記実施例１のクラス間分散計算部４０５では、１枚の画像に映っている顔画像（顔領域）ら抽出した特徴量ベクトルを用いてクラス間分散Ｂを計算する例を示したが、異なる画像の顔領域の特徴量ベクトルを用いてクラス間分散Ｂを算出しても良い。
【０１２５】
例えば、学習データとして図７で示したように画像７１０、７３０、７５０を入力された場合、前記実施例２より画像７１０の顔領域（人物）７２０Ａと、画像７３０の顔領域７４０Ｂと、画像７５０の顔領域７６０Ｃはそれぞれ別人としてサーバ計算機１１０は認識する。そして、サーバ計算機１１０は、３つの顔領域７２０Ａ、７４０Ｂ、７６０Ｃの特徴量ベクトルを用いてクラス間分散Ｂを算出する。
【０１２６】
以上のように、複数のフレーム（画像）で別人と見なされた顔領域の特徴量ベクトルからクラス間分散Ｂを演算することで、クラス間分散Ｂが大きくなるような判別行列３００の精度を向上させることが可能となる。
【０１２７】
なお、本発明において説明した計算機等の構成、処理部及び処理手段等は、それらの一部又は全部を、専用のハードウェアによって実現してもよい。
【０１２８】
また、本実施例で例示した種々のソフトウェアは、電磁的、電子的及び光学式等の種々の記録媒体（例えば、非一時的な記憶媒体）に格納可能であり、インターネット等の通信網を通じて、コンピュータにダウンロード可能である。
【０１２９】
また、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明をわかりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
【符号の説明】
【０１３０】
１１０  サーバ計算機
１１１  外部インタフェース
１１２  ＣＰＵ（中央処理演算装置）
１１３  メモリ（主記憶装置）
１１４  ＨＤ（大容量外部記憶装置）
１２０  通信基盤
１３０  クライアント計算機、
１４０  判別行列情報
１５０  検索データベース
１６０ａ〜１６０ｎ  カメラ
２００  特徴量管理情報
４０１  画像取得部
４０２  顔検知処理部
４０３  人物情報生成部
４０４  特徴量抽出部
４０５  クラス間分散計算部
４０６  判別行列生成部
４０７  判別行列格納部
５０１  画像取得部
５０２  顔検知処理部
５０３  特徴量抽出部
５０４  特徴量変換部
５０５  特徴量格納部
【図１】
2015158848.tif 000008
【図２】
2015158848.tif 000009
【図３Ａ】
2015158848.tif 000010
【図３Ｂ】
2015158848.tif 000011
【図４】
2015158848.tif 000012
【図５】
2015158848.tif 000013
【図６】
2015158848.tif 000014
【図７】
2015158848.tif 000015
【図８】
2015158848.tif 000016