Kendi yüzleri

Özyüzler (Engl. Özyüzler olarak da adlandırılır), otomatik yüz tanıma için bir yöntemin sonucudur . Bir makine görüşü yöntemi olarak insan yüzleri , önceden eğitilmiş bir dizi insan kimliğinin gerçek zamanlı olarak tanınmasını sağlar- bununla birlikte, aydınlatma koşulları, görüntülerin boyutu, yüzün döndürülmesi ve ölçeklenmesi açısından çok yüksek derecede homojenlik gerektirir. Eğitim veri seti ile gerçekte sınıflandırılacak yüz arasındaki varyasyona yönelik bu yüksek hassasiyet nedeniyle, pratikte yüz tanıma için öz yüzler gittikçe daha az kullanılmaktadır. 1991 yılında geliştirilen prosedür, ilk tam otomatik yüz tanıma teknolojisi olarak kabul edilir ve çok sayıda ileri geliştirme, endüstriyel uygulama ve alternatif yaklaşımlar için ilham kaynağı sağlar. Yöntem, temel bileşen analizine dayanır ve daha modern olanın aksine Evrişimli sinir ağlarını kullanan yöntemler , denetimsiz öğrenme kategorisine girer.

Sürecin tarihi

Temel geliştirme

Makine görüşünün temel problemlerinden biri , boyutlara sahip bir görüntünün boyutları ve bu muazzam serbestlik derecesine sahip yüksek boyutlu bir uzayda bir vektör olarak görülebilmesidir (halihazırda gri ölçekli 8 bitlik görüntüler vardır. piksel), tamamen istatistiksel olarak konuşursak, çok zor bir nesne algılama Problemi haline gelir. , Ana bileşen analizi (PCA) mümkün olan en küçük vektörel bir yöntemdir alt uzay verilerin varyansın büyük miktarını temsil eder, ve ortadan kaldırır gereksiz ilişkilerin ortaya çıkarılması. Yüz görüntülerinin daha kompakt bir temsili arayışında, Sirovich ve Kirby ilk olarak 1987'de temel bileşen analizini kullanarak, doğrusal kombinasyonu orijinal görüntüleri etkili bir şekilde yeniden oluşturabilen daha küçük boyutlu bir temsil oluşturmak için en önemli ana bileşenleri temel vektörler olarak kullandılar . Büyük varyans tarifi ile PCA ile elde edilir hesaplama özvektörler ve bir öz kovaryans matrisi arasından olasılık dağılımının mümkün yüz görüntüleri yüksek boyutlu alan üzerinde (sadece ilgili yüzlerinin en karakteristik özellikleri koymak ). Dört yıl sonra, Turk ve Pentland, yüz tanıma teknolojisinde bir dönüm noktası olan yüzlerin neredeyse gerçek zamanlı olarak sınıflandırılması ve sınıflandırılması için süreci daha da geliştirdiler. Genel olarak, korelasyon matrisinin özvektörlerinin hesaplanması çok zaman alır, çünkü bu kare matrisin boyutu görüntü kalitesine bağlıdır. Gerçek zamanlı hesaplama için çok önemli olan, Turk ve Pentland'ın, boyutu yalnızca veri setindeki görüntülerin miktarıyla ölçeklenen ilgili bir matrisin özvektörlerini hesaplayarak bu yüksek boyutlu korelasyon matrisinin özvektörlerini hesaplamanın bir yolunu bulmasıydı. ( prosedürün açıklaması bölümündeki ayrıntılar ).

Gelişmeler

Orijinal yöntemin, iyileştirmeler yoluyla telafi edilmeye çalışılan bir takım bariz zayıflıkları ( ayrıntılar aşağıda ) vardır. Aşağıdakiler örnek olarak verilmiştir:

  • Pentland vd. 1994'te View-Based Eigenfaces ile sunulan bir yaklaşım , yüzlerin farklı yüz ifadeleri için ayrı öz boşluklar yaratarak yüz tanımanın nötr ifadelerle sınırlı kalmamasını sağlıyor.
  • Aynı çalışmada, yüzün belirli bileşenleri için farklı öz boşlukları hesaplayan ve kendi yüzünün "kaba" bir temsilini geliştirmek için ortaya çıkan kendi burunlarını , kendi gözlerini ve diğer özellikleri kullanan modüler bir Öznitelik Çerçevesi tanımlandı .
  • İçin sınıflandırma optimize etmek (yerine üretmek için en kompakt temsilden başka) yüzleri olabilir Fisher (Engl bakmaktadır. FisherFaces ) kendi yüzeyleri tarafından kullanılabilir yerine - dayalı doğrusal ayırma analizi .
  • Yerel İkili Model Histogramları (LBPH). Özyüzler ve balıkçı yüzleri aydınlatma koşullarına büyük ölçüde bağlıdır. Bu dezavantaj, LBPH yüz tanıma yardımı ile aşılır.

yazılım

Gelen ücretsiz yazılım - kütüphanesinde için görüntü işleme OpenCV kendi Faces, Yüzler ve Fisher LBPH uygulanmaktadır.

Prosedürün açıklaması

Öz yüzler, temel bileşen analizi (PCA) kullanılarak oluşturulur .

Pratik uygulama talimatları

Her görüntünün boyutlara sahip olması için bir dizi yüz görüntünüz olduğunu varsayalım (örneğin , her görüntü piksellerden oluşur). Yöntemin işe yaraması için görüntülerin benzer ışık koşullarında çekilmiş olması ve aynı bileşenlerin (göz, burun, ağız vb.) Aynı pozisyonda olması gerekir. Ardından prosedür aşağıdaki gibidir:

1. Tek tek görüntüler bir matristen 90.000 boyutlu bir vektöre dönüştürülür , öyle ki .

2. Tüm eğitim veri setinden ortalama bir yüz hesaplanır:

.

3. Bu ortalama yüz, eğitim veri setinden her görüntüden çıkarılır:

.

4. Fark yüzleri şimdi bir matris oluşturmak için birleştirilir .

5. Kovaryans matrisi hesaplanır:

Şimdi kaydeder ana Diagonal'da tüm veri seti ve fazla bireysel piksel sapmalar kovaryans pikselin piksel ile tüm veriyi Pozisyon ana Diagonal kapalı .

6. Daha sonra kovaryans matrisinin özvektörleri ve özdeğerleri hesaplanır . Kovaryans matrisinin özvektörleri , orijinal görüntülerle aynı boyutluluğa sahiptir. Turk ve Pentland, yüz görünümleri nedeniyle onlara öz yüzler adını verdi .

7. Özvektörler, özdeğerlerin mutlak boyutuna göre azalan sırada sıralanır, böylece ilk özvektörler en fazla varyansı kapsar. Dikkate alınan özyüzler kümesi şimdi, açıklanan kümülatif varyans için bir eşik değeri temelinde oldukça keyfi bir şekilde yapılmaktadır.

8. Artık kendi yüzleri, bilinen veya yeni yüzleri yoğun bir şekilde temsil etmek ve onları daha sonra yeniden yapılandırmak veya bir kişinin kimliğini belirlemek için kullanılabilir.

Hız sorunu

Özvektörlerin hesaplanması iki nedenden dolayı genellikle kolay değildir. Birincisi: Piksel boyutundaki görüntülerde bile özvektörleri tatmin edici bir sürede hesaplanamayan boyutta bir kovaryans matrisi oluşturulduğundan. İkincisi, genel kural şudur . Özyüzlerin hesaplanmasının özel durumunda kural , eğitim setinin her bir görüntü pikselinden daha az görüntü içermesi, tam sıralaması olmaması ve buna bağlı olarak bazı özdeğerlerin sıfıra eşit olmasıdır. Kural olarak, tam olarak gerçek özvektörler vardır. Bunları aşırı hesaplama çabasıyla hesaplamak yerine , Turk ve Pentland , yüzlerin gerçek zamanlı olarak yerelleştirilmesini ve tanınmasını sağlayan bir hile kullandı : Yeni bir matrisin özvektörleri şu şekilde tanımlanır:

Özvektörleri, çok daha küçük bir boyuta sahip olduğundan, zamanın bir bölümünde hesaplanabilir . Bir eğitim seti de görüntülerin boyutu olan , yalnızca boyut yerine orijinal boyutundan, . Özyüzleri hesaplama üzerinde kayması nedeniyle aşağıdakilerden geçerlidir:

Verilen özdeğer ayrışımı olsun

arandı. Çünkü matris çok büyük, biz özdeğer ayrışmasını düşünün :

Denklem solda ile çarpılırsa sonuç

Şimdi , özdeğer ayrışımı, özdeğer ayrışımından açıkça elde edilir . Bu şekilde elde edilen vektörler özvektörleridir , burada sadece en yüksek özdeğerlere sahip olanlarla ilgileniyoruz. Var olmalıdır ortonormal , yani H. yine de normalleştirilmeleri gerekiyor.

Kendi yüzlerinin yorumlanması

Büyük bir veritabanından oluşturulan özyüz örnekleri

Özyüzler , korelasyon matrisinin sonuçta ortaya çıkan özvektörleridir . Öz yüzler, gerçek yüzlerin kendi yüzlerinin doğrusal kombinasyonları ile yeniden yapılandırılabilmesi anlamında genel yüzlerdir. Yeterince büyük bir veri kümesi verildiğinde, her insan yüzü bu standartlaştırılmış yüzlerin bir kombinasyonu ile temsil edilebilir. Sağ elle gösterilen özyüzlere dayanarak , eğitim görüntülerinin çeşitli özyüzlerinin çeşitli özelliklerini (net özellikler haline gelir ) kodlar. Üst yüzler saç stilinin kısımlarını yansıtırken, sol alttaki yüz arka planın aydınlatmasını ve sağ alttaki yüz ışık geliş yönünü temsil etmektedir.

Eigen yüzlerini görselleştirmek için, önce vektörden matris gösterimine dönüştürülmeleri gerekir. Özyüzleri, ilişkili özdeğerlerin mutlak miktarına göre sıralamak gelenekseldir , böylece ilk özyüzler, en büyük varyans konumlarını temsil eder ve sonraki özyüzlerin alaka düzeyi giderek azalır. Matematiksel bir bakış açısından, PCA, koordinat sistemini, yeni koordinat sisteminin eksenleri (öz yüzler), eğitim verileri tarafından verilen manifoldun en büyük varyansı yönünde uzanacak şekilde döndürür .

Yüzlerin sıkıştırılması ve yeniden yapılandırılması

Özyüzler, her eğitim görüntüsünün Özyüz tarafından yayılan özuzaya yansıtılmasıyla, görüntüleri çok kompakt bir biçimde kaydetmeyi mümkün kılar. Bu, görüntü vektörünü özyüz matrisiyle çarparak ve orijinal boyut matrisi yerine bir uzunluk vektörüyle sonuçlanarak elde edilebilir . Kural olarak, yalnızca en önemli yüzler yansıtıldığından, bir görüntünün gerçek temsili daha da kompakttır. Gerçek eğitim görüntüleri artık en önemli bireysel yüzlerin doğrusal bir kombinasyonu yoluyla yeniden oluşturulabilir. Yeniden yapılandırma hatası, yeniden yapılandırma için ne kadar çok yüz kullanılırsa azalır. Örneğin, aşağıdakiler ilk eğitim görüntüsü için geçerli olabilir : (yani, ilk yüz ifadesinin% 15'i artı ikinci yüzün% 42'si vb.).

Karşıdaki grafik (yakında takip edilecektir), yeniden yapılanma için artan sayıda ilişkili öz yüzlerin etkisini göstermektedir. Her sütunda aynı görüntüyü yeniden oluşturmak için bir girişimde bulunuldu. İlk satırda bunun için sadece ilk Eigenface kullanıldı, ikinci satırda ilk 5 Eigenface, üçüncü satırda ilk 10 Eigenface ve son satırda tüm Özyüzler kullanıldı. Yüzleri aşağıda görmek daha kolay olsa da, bu örnekte bile yeniden yapılandırma hatasının hızlı bir şekilde doygunluk noktasına ulaştığı dikkat çekicidir.

Kimlik tanıma için öz yüzler

Özyüzler, önceden eğitilmiş kimlikleri tanımak için çok zarif bir şekilde kullanılabilir. Bu, algoritma tarafından bilinmeyen bilinen bir kişinin kaydını Eigenface tarafından oluşturulan özuzaya yansıtarak yapılır . Elde edilen vektör artık klasik, vektörel mesafe ölçümleri (ör. Öklid normu ) kullanılarak eğitim veritabanındaki tüm görüntülerle karşılaştırılabilir. Bilinmeyen kaydın kimliği daha sonra K en yakın komşu veya benzer sınıflandırma yöntemleri kullanılarak belirlenebilir.

Öz yüzlerin öz imgelere genelleştirilmesi

Öz-yüz kavramı, diğer tüm görüntü türlerine kolayca genelleştirilebilir ( Eigenimages ). Öz yüzler terimi , yalnızca öz görüntüleri kullanarak araştırılan ilk uygulamanın yüz tanıma olması nedeniyle kendini kanıtlamıştır. Örneğin, kendi görüntüleri, aynı nesneyi farklı açılardan, mesafelerden ve aydınlatma koşullarından gösteren bir dizi görüntüden, mümkün olduğunca dönüşümle değişmeyen bir nesne temsili oluşturmak için çıkarılabilir ve bu daha sonra aşağıdakiler için kullanılabilir. şablon eşleştirme veya tel kafes modelleri gibi yukarıdan aşağıya nesne tanıma algoritmaları . Başka bir örnek, gözlenen, statik bir sahnenin mikro kaymalar nedeniyle retinada nasıl ileri geri hareket ettiğini gösteren bir dizi görüntü olabilir . Burada da öz görüntüler, sahnenin özellikle değişmeyen bileşenlerini gösterir. Öz görüntülerin diğer uygulamaları dudak okuma , konuşmacı kimlik doğrulama , görüntüleme işlemleri veya el yazısı tanımadır .

Özet

Başına

  • Eğitim süreci tamamen otomatiktir, denetimsizdir ve uygulaması kolaydır.
  • Eğitim süreci tamamlandıktan sonra, yüz tanıma gerçek zamanlı olarak yapılabilir.
  • Kendi yüzleri, eğitim görüntülerinin büyük veritabanlarıyla (ölçeklenebilirlik) ilgilenebilir.
  • Özyüzler, yüzlerin yüksek boyutlu görüntülerinin optimal olarak (varyans açısından) sıkıştırılmış temsilleridir.

Eksileri

  • Işık koşullarındaki değişikliklere, yüzün döndürülmesine ve ölçeklenmesine, yüz ifadesine, görüntünün karartılmasına ve boyutuna karşı yüksek hassasiyet. Buna göre, görüntülerin çekildiği koşullar çok hassas bir şekilde kontrol edilmelidir.
  • Pratik uygulamalarda, ilk öz yüzler genellikle aydınlatma koşullarındaki farklılıkları temsil eder ve yüzlerin kendilerindeki farklılıkları temsil etmez Algoritmanın hassasiyetini iyileştirmek için, ilk 3 öz yüzler genellikle göz ardı edilir.

Bireysel kanıt

  1. ^ Shang Zeng ve Matthew Turk: Özyüzler. Scholarpedia makalesi, 2008, 1 Ocak 2018'de erişildi .
  2. Lawrence Sirovich, Michael Kirby: İnsan yüzlerinin karakterizasyonu için düşük boyutlu prosedür. (PDF) Journal of the Optical Society of America, 1987, pp. 509-524 , 1 Ocak 2018'de erişildi .
  3. Matthew Turk, Alex Petland: Self Faces for Recognition. (PDF) Journal of Cognitive Neuroscience, 1991, s. 71–86 , 1 Ocak 2018'de erişildi (İngilizce).
  4. ^ A. Pentland ve diğerleri: Yüz tanıma için görünüm tabanlı ve modüler eigenspace'ler. CVPR Proceedings, 1994, 1 Ocak 2018'de erişildi .
  5. PB Belhumeur ve diğerleri: Özyüzler vs Balıkçı Yüzler: Sınıfa Özgü Doğrusal Projeksiyon Kullanarak Tanıma. (PDF) IEEE Process on Pattern Analysis and Machine Intelligence, Temmuz 1997, 1 Ocak 2018'de erişildi .
  6. Ramiz Raja: OpenCV ve Python kullanarak Yüz Algılama. Super Data Science, 3 Ağustos 2017, 24 Ocak 2019'da erişildi .
  7. OpenCV belgeleri: OpenCV ile Yüz Tanıma. Erişim tarihi: January 24, 2019 .
  8. ^ Born, J. ve diğerleri: Primat Görsel Sisteminin Hiyerarşik Sinir Ağı Modelinde El Merkezli Temsillerin Hebbian Öğrenimi. PLOS ONE, Mayıs 2017, 1 Ocak 2018'de erişildi .