170

大学のプロジェクト用の無料の顔認識ライブラリを探しています。私は顔検出を探していません。私は実際の認識を探しています。これは、特定の顔の間の距離を計算する特定の顔またはライブラリを含む画像を見つけることを意味します。

現在、顔の検出にはOpenCVを使用し、認識には大まかなEigenfaceアルゴリズムを使用しています。しかし、自分で書いた Eigenface アルゴリズムよりも優れたパフォーマンスを発揮するものがあるはずだと思いました。パフォーマンスとしての速度について話しているのではなく、単純な Eigenface アプローチよりも優れた結果が得られるライブラリを探しています。

Faintを見てみましたが、ライブラリは自分のアプリケーションではあまり再利用できないようです。

Python、Java、C++、C などのライブラリに満足しています。現時点では、外部の Windows のみのコードに依存しているため、Windows マシンで実行できるのが最善の方法です。

4

11 に答える 11

85

以下は、Windows で動作する顔認識用の既製のパッケージを提供している商用ベンダーの一覧です。

  1. Cybula -顔認識 SDKに関する情報。これは大学教授によって設立された会社であり、そのため、彼らのウェブサイトは専門的ではないように見えます. ダウンロードできる価格情報やデモはありません。価格情報については、彼らに連絡する必要があります。

  2. NeuroTechnology -顔認識 SDKに関する情報。この会社には、事前の価格情報、SDK の実際の 30 日間の試用版の両方があります。

  3. Pittsburgh Pattern Recognition - ( Google が買収)顔追跡および認識 SDKに関する情報。彼らが提供するデモは、技術の評価には役立ちますが、SDSK の評価には役立ちません。価格情報については、彼らに連絡する必要があります。

  4. Sensible Vision - SDKに関する情報。彼らのサイトでは、価格の見積もりを簡単に入手できます。また、彼らの技術を評価するのに役立つ評価キットを注文することもできます。

于 2009-06-22T11:19:40.630 に答える
55

アップデート

OpenCV 2.4.2には、非常に新しいcv::FaceRecognizerが付属しています。次の非常に詳細なドキュメントを参照してください。

元の投稿

OpenCV C ++ API(BSDライセンス)用の最新の顔認識ライブラリであるlibfacerecをリリースしました。libfacerecには追加の依存関係はなく、Eigenfacesメソッド、Fisherfacesメソッド、およびローカルバイナリパターンヒストグラムを実装します。ライブラリの一部はOpenCV2.4に含まれる予定です。

libfacerecの最新リビジョンは、次の場所で入手できます。

ライブラリは、今後のOpenCV2.4を念頭に置いてOpenCV2.3.1用に作成されたため、2.3.1より前のバージョンのOpenCVはサポートしていません。このプロジェクトは、十分に文書化されたAPIを備えたCMakeプロジェクトとして提供されます。また、性別分類に関するチュートリアルもあります。ドキュメントのHTMLバージョンは次の場所で確認できます。

これらのアルゴリズムがどのように機能するかを理解したい場合は、私の顔認識ガイド(PythonおよびGNU Octave / MATLABの例を含む)を読むことをお勧めします。

私のgithubリポジトリには、PythonとGNU Octave/MATLABによるアルゴリズムの実装もあります。facerecの両方のプロジェクトには、アルゴリズムを評価するためのいくつかの相互検証方法も含まれています。

関連する出版物は次のとおりです。

  • Turk、M.、およびPentland、A.認識のための固有顔。。Journal of Cognitive Neuroscience 3(1991)、71–86。
  • Belhumeur、PN、Hespanha、J.、およびKriegman、D. Eigenfaces vs. Fisherfaces:クラス固有の線形射影を使用した認識。。パターン分析とマシンインテリジェンスに関するIEEEトランザクション19、7(1997)、711–720。
  • Ahonen、T.、Hadid、A.、およびPietikainen、M .ローカルバイナリパターンによる顔認識。。コンピュータビジョン-ECCV2004(2004)、469–481。
于 2011-11-22T22:22:14.830 に答える
19

pam-face-authentication顔認証用の PAM モジュール: ただし、必要なものを取得するにはいくつかの作業が必要です。簡単なテストでは、認識率が NeuroTechnology の VeriLook ほど良くないことが示されました。

Malicは、ガボール ウェーブレット記述子を使用する別のオープン ソースの顔認識ソフトウェアです。ただし、ソースの最終更新は 3 年前です。

ウェブサイトより:「Malic は gabor ウェーブレットを使用するオープンソースの顔認識ソフトウェアです。Malib と CSU Face Identification Evaluation System (csuFaceIdEval) に基づいたリアルタイム顔認識システムです。リアルタイムの画像処理には Malib ライブラリを使用し、顔には csuFaceIdEval の一部を使用します。認識。

さらに、これは興味深いかもしれません:

gaborboosting : Gabor Wavelet と AdaBoost アルゴリズムを使用した顔認識に適用される科学的プログラム

特徴抽出ライブラリ - FELibは、 「トランスダクティブ カーネル フィッシャー判別式による顔の注釈」を指します。

于 2009-08-03T18:07:30.617 に答える
13

顔間の距離を計算したい場合は、すでに行っているEigenfaceが最適だと思います。サポート ベクター マシン隠れマルコフ モデルなど、さまざまなアプローチを試すことができます。顔認識に使用できる主要なアルゴリズムを一覧表示しているページを見つけました: Face Recognition Homepage .

また、「より良いパフォーマンス」とは、スピードですか、それとも正確さですか? どのような問題がありますか? データはどの程度変化していますか?ほとんどが正面の顔ですか、それとも横顔が含まれていますか?

于 2009-06-21T05:47:17.900 に答える
9

あなたのプロジェクトが映画やテレビ、または台本のあるものであれば、間違いなくMark Everingham の作品を見たいと思われます. Buffy エピソードの結果と同様に、ソフトウェアは入手可能です

于 2009-06-25T22:47:42.700 に答える
7

http://libccv.org/をご覧ください。

これはかなり新しいものですが、顔検出用の無料のオープンソース高レベルAPIを提供します。

(...そして、あえて言うと、かなりすごいです)

編集:これはopencvに依存しない数少ないライブラリの1つであり、キックのためだけに、ドキュメントページから顔検出用のコードのコピーを作成して、何が関係しているかを把握できることにも注意してください。

#include <ccv.h>
int main(int argc, char** argv)
{
    ccv_dense_matrix_t* image = 0;
    ccv_read(argv[1], &image, CCV_IO_GRAY | CCV_IO_ANY_FILE);
    ccv_bbf_classifier_cascade_t* cascade = ccv_load_bbf_classifier_cascade(argv[2]);         ccv_bbf_params_t params = { .interval = 8, .min_neighbors = 2, .accurate = 1, .flags = 0, .size = ccv_size(24, 24) };
    ccv_array_t* faces = ccv_bbf_detect_objects(image, &cascade, 1, params);
    int i;
    for (i = 0; i < faces->rnum; i++)
    {
        ccv_comp_t* face = (ccv_comp_t*)ccv_array_get(faces, i);
        printf("%d %d %d %d\n", face->rect.x, face->rect.y, face->rect.width, face->rect.y);
    }
    ccv_array_free(faces);
    ccv_bbf_classifier_cascade_free(cascade);
    ccv_matrix_free(image);
    return 0;
} 
于 2012-07-03T01:03:39.780 に答える
5

しばらく時間が経っていることは知っていますが、興味のある人のために、これらの機能 (検出、認識など) の多くを優れたソフトウェア パッケージにバンドルしたFaintプロジェクトがあります。

于 2010-01-30T21:13:54.380 に答える
4

OpenCVを使用しています。そこには顔認識以外のものもたくさんありますが、安心してください、それは顔認識を行います.

于 2009-06-10T15:39:15.277 に答える
0

次のステップは、FisherFaces です。試してみて、それらがあなたのために働くかどうかを確認してください. ここに素晴らしい比較があります。

于 2009-06-22T14:48:45.903 に答える