Ana içeriğe atla

Kayıtlar

Mart, 2010 tarihine ait yayınlar gösteriliyor

Yüz Tanıma Sistemi - 6

C# Kameradan Görüntü Alma Kameradan görüntüyü almak için "webcam_capture" kütüphanesini kullanıyoruz.Referanslardan dll'i ekledikten sonra. Önce forum kısmına bir picturebox ve bir buton ekleyelim.Daha sonra "Kamera" adında bir sınıf oluşturuyoruz.Bu sınıf kod içeriği şöyle ; using System.Data; class Kamera {  private WebCamCapture kameraa;  private Anaform p;  PictureBox ilkresim; public void Kamera_Etkin(Anaform form, int W, int H, PictureBox ilkres) {   p = form;  ilkresim = ilkres;  kameraa = new WebCamCapture();  kameraa.CaptureHeight = H;  kameraa.CaptureWidth = W;  kameraa.TimeToCapture_milliseconds = 1;  kameraa.ImageCaptured += new WebCamCapture.WebCamEventHandler(kamera_resim); } public void Start() {   kameraa.Start(0); } public void kamera_resim(object source, WebcamEventArgs e) {   ilkresim.Image = e.WebCamImage; } } Kamera sınıfımızı oluşturduk şimdi anaform'da bir kamera nesnesi tanımlıyoruz ; using S...

Yüz Tanıma Sistemi - 5

Sayısal Resim Sayısal resim bir matrise benzetilebilir. Resmin en küçük elemanına piksel adı verilir. Alttaki resimde görüldüğü gibi M x N boyutunda matris olarak düşünürsek her bir pikselin değeri bir dizinin i ve j' inci terimi olarak ifade edilebilir. En basit durumda pikseller 0 veya 1 değerini alırlar. Bu piksellerden oluşan resimlere binary (ikili) resim denir. Monokrom, yani tek renkli resimlerde ise her eleman 0 ile 255 arasında değerler alır. Böylece her pikselin parlaklık değerinin farklı olması ile gri tonda bir resim elde edilir. En parlak nokta 255 beyaz, en karanlık nokta 0 siyah bunların arasındakiler ise gri renk değerlerini alırlar. Renkli resimler ise üç ana rengin karışımı ile oluşurlar. Bunlar kırmızı (Red) ,yeşil (Green) ve mavidir (Blue). Renkli resimler hakkında daha ayrıntılı bilgileri  www.goruntuisleme.org  adresinde diğer makalelerde bulabilirsiniz.. Kaynak :   http://www.goruntuisleme.org/

Yüz Tanıma Sistemi - 4

Kullanılan Kütüphaneler Yüz tanıma sistemi geliştirirken kullanabileceğimiz birçok kütüphane var. Genel olarak en yaygını OpenCV kütüphanesi. OpenCV hem açık kaynak olması hem de performans olarak da iyi olduğundan biraz daha önde. Ayrıca Aforge,EmguCv,SharperCV,OpenCVDotNet gibi seçenekler mevcut. OpenCV ana sayfası : http://opencv.willowgarage.com/wiki/ OpenCV kütüphanesini indirmek için (2.0 Sürümü)  : http://sourceforge.net/projects/opencvlibrary/ Ayrıca OpenCV konusunda BlueKid hocamızın sitesinden çok ayrıntılı bilgi edinebilir ve birçok örnek bulabilirsiniz.( http://derindelimavi.blogspot.com/ ) OpenCvSharp C# ile kullanımı gayet kolay olan ve başarımı yüksek bir diğer kütüphane. Başlangıç olarak kamera görüntüsünde yüz bulma işleminde ben Aforge framework'unu kullandım.Aforge framework'u de gayet kullanışlı ve birçok kütüphaneye sahip. Daha çok bilgi almak ve indirmek için sitesine bir göz atabilirsiniz : http://code.google.com/p/aforge/  ...

Java Dilinde Küçük Bir Alıştırma

Yüz tanıma sistemine kısa bir ara.Bu aralar yeni yeni uğraşmaya başladığım java dilinde küçük bir örnek program. Örneğimiz şöyle ; 1'den 100'e kadar sayıları ekrana yazacak bir program yazıyorsunuz. Fakat 3'ün katları için "Noqo", 5'in katları için "Nisqo" ve 3'e ve 5'e tam bölünen sayılar için de "NoqoNisqo" yazacaksınız. Örnek ekran çıktısı: 1 2 Noqo 4 Nisqo Noqo 7 8 Noqo Nisqo 11 Noqo 13 14 NoqoNisqo 16 …….. 98 Noqo Nisqo Kodlarımız da şöyle ;   public class NoqoNisqo {     public static void main(String args[]) {         for (int i = 1; i <= 100; i++)         {          if(i%15==0) System.out.print("NoqoNisqo\n");          else          if(i%3==0) System.out.print("Noqo\n");          else          if(i%5==0) System.out.print("Nisqo\n"); ...

Yüz Tanıma Sistemi - 3

Yüz Bulma ( Face Detection) Yüz tanımaya geçmeden önce en önemli husus bir kamera görüntüsünde yada resim içinde yüz kısmının ayrıştırılması gerekmektedir. İnsan yüzü kendine özgü rengi ile renk uzayında belli bir aralıkta temsil edilebilmektedir. Bu durum imgeler üzerinde de sadece ışıktan kaynaklanan bir yoğunluk değişimi göstermektedir. Ayrıca, insan teni ayırt edilebilir bir dokusal doygunluğa sahiptir. Yüz bulma işlemi, öncelikle renk tonu ve doygunluk değerlerinden faydalanılarak ten süzgeci gerçeklenmesi ile başlamaktadır. Özgün imgeden elde edilen değerler bu konuda yetersiz kalmasına karşın negatif imgeden de elde edilen renk tonu ve doygunluk değerleri ile daha kararlı bir süzgeç yapısı oluşturmak gerekir .  0 ≤ H ≤ 0.942 , 0.1 ≤ S ≤ 0.69 , 0.25 ≤ Sn Sn : Negatif imgeye ait doygunluk değeri Ten süzgeci sonucunda elde edilen siyah-beyaz imge üzerinde iyileştirme amaçlı olarak önce morfolojik işlemler, daha sonra da bağlantısallığa b...

Yüz Tanıma Sistemi - 2

PCA Algoritması ve Özyüzler Metodu PCA algoritması ve Özyüzler metodunun kısaca bir tarihçesine bakalım; Öz yüzler yaklaşımı ilk olarak Sirovich ve Kirby (Eigenfaces, Principal Component Analysis, PCA, 1987) tarafından kullanılarak yüzü etkin bir şekilde göstermek için uygulanmıştır. Temel bileşen analizi olarak da bilinen Karhunen-Louve genişlemesine dayanmaktadır. Bu, bilgi teorisinde veriyi kodlama ve kodunu çözmede iyi bilinen bir tekniktir. Bu kişiler yüz resimleri gruplarından başlayarak bu resimlerin temel bileşenlerini hesaplamışlardır. Daha sonra da öz vektörün sadece küçük parçalarının ağırlıklı birleşimini kullanılarak yüz resmini yeniden oluşturmuşlardır. (Kirby ve Sirovich, 1990) bu metotlarını 115 yüz resmi veri tabanında test ettiler ve yaklaşık olarak %3 yanılma (hata) payıyla bir yüzü yeniden oluşturmak için sadece 40 öz vektörün yeterli olduğunu göstermişlerdir. Bundan kısa bir süre sonra yüzün simetrisini dikkate alarak (örneğin bütün yüzlerde gözler, burun v.s....

Yüz Tanıma Sistemi - 1

Türkçe kaynağın bulunmasının oldukça zor olduğu bir konu. Bitirme tezi konum olduğu için bu konuda araştırmalarımı sürdürmekteyim. Elimden geldiğince çalışmalarımı ve araştırma sonuçlarını burada paylaşacağım. Yüz tanıma sistemine geçmeden önce temel olması açısından biyometriyi açıklamak gerekir.Aslında Ahmet Kakıcı bu konuyu çok iyi açıklamış ve başlangıç olarak bana rehber olan bir yazı yazmış. Peki yüz tanıma sistemi nedir?  Yüz tanıma sistemi, yüzün karakteristik özelliklerini analiz ederek, farklı noktalar ve bölgeler arası biyometrik ölçümler yaparak veritabanı ile karşılaştırma yapar ve kişiyi tanımlar. Yüzün bu karakteristik özelliklerine düğüm noktaları da denir. Bu düğüm noktalarından bazıları şöyledir; Burunun genişliği, Göz çukurunun derinliği, Elmacık kemiğinin şekli, Çene kemiğinin uzunluğu Bu düğüm noktaları rakamsal bir değerle kodlanır ve bu kodlara faceprint adı denir. Tabiki bu sadece genel bir probleme bakış. Bu problemin birçok çözüm yolu var ve çı...