Matlab ile Yüz Tanıma Uygulaması - 1 (Yüzleri Bulma)

Ex Machina (2014)


Yüz Tanıma Nedir?

Bir yüz dağarcığı içerisinde bir kişinin yüzünü tespit edip o kişiyi bulma işlemine yüz tanıma denir. Yüz tanıma işlemi öncelikle yüzün tespiti ve daha sonra tespit edilen bu yüzün veritabanındaki yüz dağarcığıyla çeşitli yöntemleri (PCA, LDA, EP, ICA vb.) kullanarak bulma işlemidir

Matlab Ortamında Resimden Yüzleri Bulma İşlemi

Matlab'da yüz tanıma yapabilmek için öncelikle resimdeki yüzleri bulmamız gerekmektedir. Bunun için Matlab'ın içinde bulunan Viola-Jones algoritmasını kullanarak nesneleri algılama işlemi yapan Cascade nesne dedektörünü kullanacağız. Cascade nesne dedektörü uygulanan resim içerisinde bulduğu yüzlerin resim üzerindeki x ve y eksenine göre koordinatlarını vermektedir. Örnek olarak TestImage yolundaki resmimiz üzerinde yüzleri bulmak için aşağıdaki işlemler yapılmıştır
%TestImage yolundaki resmi okuyup A değişkenine atıyoruz.
A = imread(TestImage); 
%FaceDedector adında  yüz bulma nesnesi oluşturuyoruz.
YuzBulucu = vision.CascadeObjectDetector();
%Resmimizde Kaskad yüz bulmayı çalıştırıyoruz.
%Bulunan yüzlerin koordinat değerlerini BBOX şeklinde bir matris olarak alıyoruz.
BBOX = step(YuzBulucu, A);

Yukarıdaki kod parçacığını çalıştırdığımızda bulduğu yüzlerin koordinatlarını BBOX 'a atıyoruz. Daha sonra bu yüzlerin koordinatlarını aşağıdaki kod ile resim üzerine çizdirirsek Resim 1 'deki sonuç oluşur.
ciz = insertObjectAnnotation(A,'rectangle',BBOX,'Face');
imshow(ciz);
Resim 1 - Yüz bulma ve çizdirme işlemi

NOT: Yazının devamı olan 2. bölümüne buradan ulaşabilirsiniz.

Yorumlar

Popüler Yayınlar