Gerçek Zamanlı Yüz Tanıma İçin En İyi 6 Açık Kaynaklı Proje
Gerçek zamanlı yüz tanıma sistemleri, bilgisayarlı görü alanında hala popüler bir konudur ve birçok şirket, büyüyen pazardan yararlanmaya yönelik kendi çözümlerini geliştirmiştir. Geleneksel tanıma yöntemleriyle karşılaştırıldığında, gerçek zamanlı yüz tanıma sistemlerinin aynı kişinin birden çok görüntüsünü ardışık karelerde kullanma avantajı bulunmaktadır.
Eğer gerçek zamanlı yüz tanımanın avantajlarından yararlanmak istiyorsanız, açık kaynaklı projeler harika bir başlangıç noktası olabilir. Kaynak kodu yayınlandığı için nasıl çalıştığını görebilir ve verilerinizi çalmadığından emin olabilirsiniz. Bu makalede, en iyi açık kaynaklı yüz tanıma projeleri arasında gezinmenize yardımcı olacak ve neden açık kaynaklı yazılımı seçmenin genellikle en iyi seçenek olduğunu göstereceğiz.
Açık Kaynaklı Yüz Tanıma Çözümlerine Giriş
Yüz tanıma sistemleri, işlevselliği ve özel özellikleri açısından çeşitlilik gösterir. Ancak genellikle, yüz tanıma yazılımıyla sisteminizi otomatikleştirmek için temel adımlar aynıdır.
Öncelikle, istediğiniz konuma bir kamera yerleştirir ve video yayınına başlarsınız. Kamera, lensin yeterli ışık almasını ve konunun kameraya bakmasını sağlayacak şekilde yerleştirilmelidir. Eğer kullanıcının yüzünü tam olarak görmek mümkün değilse, kamera mümkün olduğunca net bir çözünürlüğe sahip olmalıdır. Yüz tanıma sunucusunu aşırı yüklememek için önce hareketi algılamak daha iyi olacaktır.
Neden Açık Kaynaklı Yüz Tanıma Projesi Seçmelisiniz?
Açık kaynaklı yazılımın birçok avantajı vardır. İlk olarak, açık kaynaklı kod ile verilerinizin nasıl işlendiğinden emin olursunuz. İkincisi, açık kaynaklı projeler genellikle daha yüksek kalitededir.
Hatalar, kodun birden çok geliştirici tarafından sürekli olarak gözden geçirilmesi sayesinde hızlı bir şekilde belirlenir. Üçüncü olarak, lisans ücretleri daha düşüktür ve bu tür projeler genellikle şirket içinde veya serbest seçilebilir IT hizmet sağlayıcıları tarafından geliştirilir. Eski ve güncelliğini yitirmiş açık kaynaklı yazılım bulmak zordur, çünkü genellikle modern yazılım geliştirme uygulamalarını takip eder. Son olarak, açık kaynaklı yazılım, kodu birkaç dakika içinde akıcı bir şekilde anlamak ve üzerinde çalışmak için geliştiricilere izin verir.
En İyi Açık Kaynaklı Yüz Tanıma Yazılımları
Gerçek zamanlı açık kaynaklı yüz tanıma yazılımlarının GitHub depolarını inceledik ve en iyi seçenekleri şu şekilde listeledik:
1. Deepface
Bu kütüphane FaceNet ve InsightFace gibi farklı yüz tanıma yöntemlerini destekler. Ayrıca bir REST API sağlar, ancak yalnızca doğrulama yöntemlerini destekler, bu nedenle yüz koleksiyonları oluşturamaz ve bunlar arasında bir yüz bulamazsınız. Python geliştiricisiyseniz kolayca başlamak mümkün olabilir, ancak diğerleri için entegre etmek daha zor olabilir. 2021 yılı başında en son sürümü 0.0.49'dur.
2. CompreFace
Bu çözüm, Temmuz 2020'de yalnızca GitHub’da yayınlanmış olup çok umut vaat ediyor. CompreFace, en yaygın yüz tanıma yöntemlerinden FaceNet (LFW doğruluğu %99,65) ve InsightFace (LFW doğruluğu %99,86) arasında seçim yapma imkanı sunarak en iyi açık kaynaklı yüz tanıma projeleri listemize girdi. Bir REST API’si sayesinde önceden makine öğrenme becerisi gerektirmeden sisteminize kolayca entegre edilebilir ve ölçeklenebilir olması sayesinde birden fazla video akışında aynı anda yüzleri tanıma imkanı verir. Kullanıcı rolleri ve yüz koleksiyonlarını yönetmek için basit bir arayüz sunar. Hala aktif geliştirme aşamasında olup, 2021 yılı başında en son sürümü 0.5'tir.
3. Face Recognition
Bu çözümün ana özelliği kendi Python API’sini ve ikili komut satırı aracını kullanmasıdır. Ayrıca, ana platformlara yönelik kurulum talimatları ve hızlı bir kurulum için bir docker görüntüsü bile GitHub üzerinde mevcuttur. Popüler olmasına rağmen, yazılımın birkaç dezavantajı vardır. Son sürüm 2018 yılında yayınlandı ve o zamandan beri önemli bir geliştirme yapılmadı. Ayrıca, yüz tanıma modeli oldukça eski ve sadece LFW’de %99,38 doğruluk sağlar ve bir REST API’si yoktur.
4. InsightFace
InsightFace, yüz tespiti için (RetinaFace) ve yüz tanıma için (SubCenter-ArcFace) en güncel ve doğru yüz tanıma yöntemlerinden birini kullanan başka bir açık kaynaklı Python kütüphanesidir. Bu çözümün doğruluk oranı çok yüksektir ve LFW veri kümesinde %99,86'lık bir doğruluk sağlar. Tek dezavantajı, kullanımının kolay olmamasıdır.
5. FaceNet
FaceNet, popüler bir açık kaynaklı Python kütüphanesidir. Bu yöntemin doğruluk oranı oldukça yüksektir ve LFW veri kümesinde %99,65'lik bir doğruluk sağlar, bu da harika bir sonuçtur ancak en yüksek değil. Bu çözümün dezavantajları, bir REST API’si olmaması ve depoya daha fazla destek verilmemesidir (son güncelleme Nisan 2018'de yapılmıştır).
6. InsightFace-REST
Bu, 2019 yılında oluşturulmuş ve Ekim 2020'de aktif geliştirilmeye başlanmış diğer umut verici bir depodur. CompreFace gibi bu da bir Docker tabanlı bir çözümdür ve kullanımı kolay bir REST API sağlar. En büyük avantajı, InsightFace’in tanıma hızını üç kat hızlandıran geliştiricileri tarafından yapılmış olmasıdır. Bu çözümün dezavantajı, yalnızca yüzlerin gömütlerini sağlaması ve gerçek yüz tanıma için bir API sağlamamasıdır, bu nedenle kendi sınıflandırıcınıza sahip olmanız gerekecektir. Hala bir lisansı yoktur, bu nedenle kullanmak için yazarla iletişime geçmeniz gerekebilir. 2021 yılı başında en son sürümü v0.5.9.6'dır.
Sonuç
Bugün GitHub’da mevcut en iyi açık kaynaklı yüz tanıma projeleri özellikleri açısından farklılık gösterse de, hepsi hayatınızı kolaylaştırmak için potansiyele sahiptir. Açık kaynaklı yüz tanıma çözümü seçerken işletmenizle ilgili kriterleri derlemenizi ve tercihlerinizi yansıtan bir seçim yapmanızı öneririz. Belki sizin için diğerlerinden daha önemli olan bazı özellikler olabilir, ancak burada tanımlanan ücretsiz açık kaynaklı projeler, yüksek kaliteli gerçek zamanlı yüz tanıma deneyimi sağlayacaktır.
Bu yazı Alesia Traichuk’un hackernoon.com platformunda paylaştığı “6 Best Open-Source Projects for Real-Time Face Recognition” isimli makalesinden çevrilmiştir.