Yüz tanıma Kütüphanesi [kapalı]


169

Bir üniversite projesi için ücretsiz bir yüz tanıma kütüphanesi arıyorum . Yüz tanıma aramıyorum . Gerçek tanıma arıyorum. Bu, belirli yüzler arasındaki mesafeleri hesaplayan belirtilen yüzleri veya kitaplıkları içeren görüntüleri bulmak anlamına gelir.

Şu anda yüzleri tespit etmek için OpenCV ve tanıma için kaba bir Eigenface algoritması kullanıyorum. Ancak, kendi kendine yazılan bir Eigenface algoritmasından daha iyi performans gösteren bir şey olması gerektiğini düşündüm. Performans olarak hızdan bahsetmiyorum, basit bir Eigenface yaklaşımından daha iyi sonuçlara sahip bir kütüphane arıyorum.

Faint'e bir göz attım , ancak kütüphane kendi uygulamalarım için çok fazla yeniden kullanılabilir değil gibi görünüyor.

Python, Java, C ++, C veya benzeri bir kütüphaneden memnunum. En iyi şey, şu anda bir Windows harici koduna güveniyorum çünkü bir Windows makinesinde çalıştırılabilirse olurdu.


1
Politik veya pratik nedenlerle özgür olması gerekiyor mu? Eğer saf bir araştırma projesi ise, ticari tedarikçilerden birinden ücretsiz bir akademik lisans alabilirsiniz.
Christoffer

2
Sadece özyüzler yaklaşımı ile nispeten iyi sonuçlar aldım ama kullanımı ücretsiz olan iyi bir yüz algılama api şu anda eksik bir şey gibi görünüyor
Janusz



4
2009'da mükemmel bir şekilde kabul edilebilir olmasına rağmen, bu soru sorusu artık konu üzerinde değerlendirilmiyor: Bir araç, kütüphane veya favori site dışı kaynak önermemizi veya bulmamızı isteyen sorular Yığın Taşması için konu dışı. Bkz . Yığın Taşması için önceden tanımlanmış konu dışı nedenler ne olmalıdır?
JDB hala Monica

Yanıtlar:


85

Windows'da çalışan yüz tanıma için hazır paketler sağlayan ticari satıcıların listesi:

  1. Cybula - Yüz Tanıma SDK'sı hakkında bilgi . Bu, bir üniversite profesörü tarafından kurulmuş bir şirkettir ve bu nedenle web siteleri profesyonel görünmemektedir. İndirebileceğiniz hiçbir fiyat bilgisi veya demo yok. Fiyat bilgisi için onlarla iletişime geçmeniz gerekir .

  2. NeuroTechnology - Yüz Tanıma SDK'sı hakkında bilgi . Bu şirketin hem ön fiyatlandırma bilgileri hem de SDK'larının 30 günlük gerçek bir deneme sürümü var .

  3. Pittsburgh Örüntü Tanıma - ( Google tarafından satın alındı ) Yüz İzleme ve Tanıma SDK'sı hakkında bilgi . Sağladıkları demolar SDSK'larını değil teknolojilerini değerlendirmenize yardımcı oluyor. Fiyat bilgisi için onlarla iletişime geçmeniz gerekir .

  4. Duyarlı Vizyon - SDK'ları hakkında bilgi . Siteleri kolayca fiyat teklifi almanızı sağlar ve ayrıca teknolojilerini değerlendirmenize yardımcı olacak bir değerlendirme kiti sipariş edebilirsiniz.


5
Linkler için teşekkürler ama şu anda ücretsiz bir kütüphane bulmam gerekiyor
Janusz

1
Yüz tanıma için olmayabilir se başına ancak numenta.com sizi ilgilendiren olabilir.
RCIX

7
listeye face.com ücretsiz REST API'sini ekleyebilirsiniz
Omry Yadan

@Omry, bir cevap olarak eklemeniz veya bunu face.com
Scott


54

Güncelleme

OpenCV 2.4.2 artık çok yeni cv :: FaceRecognizer ile geliyor . Lütfen şu adresteki çok ayrıntılı belgelere bakın:

Orijinal Mesaj

OpenCV C ++ API (BSD lisansı) için modern bir yüz tanıma kütüphanesi olan libfacerec'i yayınladım . libfacerec'in ek bir bağımlılığı yoktur ve Özyüzler yöntemini, Balıkçı Yüzleri yöntemini ve Yerel İkili Desen Histogramlarını uygular. Kütüphanenin bazı kısımları OpenCV 2.4'e dahil edilecektir.

Libfacerec'in en son revizyonunu şu adreste bulabilirsiniz:

Kütüphane, yaklaşmakta olan OpenCV 2.4 göz önünde bulundurularak OpenCV 2.3.1 için yazılmıştır, bu nedenle 2.3.1'den önceki OpenCV sürümlerini desteklemiyorum. Bu proje iyi belgelenmiş bir API ile bir CMake projesi olarak geliyor, ayrıca cinsiyet sınıflandırması hakkında bir eğitim var. Dokümanların HTML sürümünü şu adreste görebilirsiniz:

Bu algoritmaların nasıl çalıştığını anlamak istiyorsanız, Yüz Tanıma Kılavuzumu (Python ve GNU Octave / MATLAB örneklerini içerir) okumak isteyebilirsiniz:

Github veri havuzumdaki algoritmaların Python ve GNU Octave / MATLAB uygulaması da var . Facerec'teki her iki proje de algoritmaları değerlendirmek için birkaç çapraz doğrulama yöntemi içerir:

İlgili yayınlar:

  • Turk, M. ve Pentland, A. Tanıma için özyüzler. . Bilişsel Nörobilim Dergisi 3 (1991), 71-86.
  • Belhumeur, PN, Hespanha, J. ve Kriegman, D. Eigenfaces vs. Fisherfaces: Sınıfa özgü lineer projeksiyon kullanarak tanıma. . Kalıp Analizi ve Makine Zekası Üzerine IEEE İşlemleri 19, 7 (1997), 711-720.
  • Ahonen, T., Hadid, A. ve Pietikainen, M.Yerel İkili Kalıplarla Yüz Tanıma. . Bilgisayarla Görme - ECCV 2004 (2004), 469-481.


19

pam-face-kimlik doğrulama Yüz Kimlik Doğrulaması için bir PAM Modülü: ancak istediğinizi elde etmek için biraz çalışma yapılması gerekir. Hızlı bir test, tanıma oranının NeuroTechnology'den VeriLook'unki kadar iyi olmadığını gösterdi.

Malic , Gabor Wavelet tanımlayıcılarını kullanan başka bir açık kaynak yüz tanıma yazılımıdır. Ancak kaynaktaki son güncelleme 3 yaşında.

Web sitesinden: " Malic gabor dalgacık kullanan bir açık kaynak kodlu yüz tanıma yazılımıdır. Malib ve CSU Yüz Tanıma Değerlendirme Sistemi (csuFaceIdEval) tabanlı gerçek zamanlı yüz tanıma sistemidir. tanıma. "

Ayrıca, bu ilgi çekici olabilir:

gaborboosting : Gabor Wavelet ve AdaBoost Algoritması ile Yüz Tanıma üzerine uygulanan bilimsel bir program

Özellik Çıkarma Kütüphanesi - FELib , "Dönüştürücü Çekirdek Fisher Ayırıcı tarafından Yüz Ek Açıklama",


13

Zaten yaptığınız Eigenface'in yüzler arasındaki mesafeyi hesaplamak istiyorsanız gitmenin yolu olduğunu düşünürdüm . Destek Vektör Makinesi veya Gizli Markov Modeli gibi farklı yaklaşımları deneyebilirsiniz . Yüz tanıma için kullanılabilecek büyük algoritmaları listeleyen bir sayfa buldum: Yüz Tanıma Ana Sayfası .

Ayrıca, "daha iyi performans" derken, hız veya doğruluk mu demek istediniz? Ne tür bir sorun yaşıyorsunuz? Veriler ne kadar değişken? Çoğunlukla ön yüz mü yoksa profiller içeriyor mu?


5
Performans ile algılama doğruluğunu öğrendim. Özyüzler güzel ama aradığım şey yüzleri tanımak için raf paketinden hazır çünkü tekerleği yeniden icat etmek istemiyorum ve zamanım yok
Janusz


7

Http://libccv.org/ adresine bakmalısınız.

Oldukça yenidir, ancak yüz tanıma için ücretsiz bir açık kaynak kodlu üst düzey API sağlar.

(... ve söylemeye cesaret ediyorum, oldukça şaşırtıcı)

Düzenleme: Ayrıca kayda değer, bu opencv bağlı DEĞİL birkaç libs biridir ve sadece tekmeler için, işte size ne hakkında bir fikir vermek için belge sayfasından yüz algılama kodunun bir kopyası:

#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;
} 

5

Bir süre geçtiğini biliyorum, ancak ilgilenen herkes için , bu özelliklerin çoğunu (algılama, tanıma vb.) Güzel bir yazılım paketine bir araya getiren Faint projesi var.


4

OpenCV kullanıyoruz . İçinde çok sayıda yüz tanıma öğesi de var, ancak emin olun, yüz tanıma yapıyor.


2
Yüz tanıma için OpenCV'de doğrudan bir algoritma olmadığını düşünüyorum. OpenCV Kütüphanesinden Yüz Algılama iyi çalışıyor
Janusz

3
Evet haklısın. Yüz tanıma ve yüz algılamayı karıştırdım.
Paul J. Lucas

Tıpkı bir yan not olarak, tanıma için kullanılabilecek cv :: FaceRecognizer var.
huesforalice

1

Açık MVG kütüphanesini deneyebilirsiniz, Çoklu arayüzler için de kullanılabilir.


0

Bir sonraki adım FisherFaces olacaktır. Deneyin ve sizin için çalışıp çalışmadığını kontrol edin. İşte güzel bir karşılaştırma.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.