27
Rakam Tanıma İçin KNN ve LDA Algoritmalarının Karşılaştırılması Halit Çetiner Ömer Kuşcu

Rakam Tanıma İçin KNN ve LDA Algoritmalarının Karşılaştırılması

  • Upload
    oren

  • View
    108

  • Download
    0

Embed Size (px)

DESCRIPTION

Rakam Tanıma İçin KNN ve LDA Algoritmalarının Karşılaştırılması. Halit Çetiner Ömer Kuşcu. Görüntü Sınıflandırma. Görüntü sınıflandırma, yapay zekanın en önemli araştırma alanlarından biridir. - PowerPoint PPT Presentation

Citation preview

Page 1: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Rakam Tanıma İçin KNN ve LDA Algoritmalarının Karşılaştırılması

Halit Çetiner Ömer Kuşcu

Page 2: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Görüntü Sınıflandırma• Görüntü sınıflandırma, yapay zekanın en önemli araştırma

alanlarından biridir.

• Görüntü sınıflandırma uygulamaları, optik karakter tanımada karakter tanımanın gelişmesi yönünde ilerlediği görülmektedir.

• Karakter tanıma son yüzyılda geniş bir şekilde uygulama alanı bulmuştur.

Page 3: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Uygulama Alanları• Uygulama alanları

• posta kodlarının okunması,

• araç plakası tanıma, barkod okuma,

• banka çeklerinin otomatik okunması,

• büro otomasyonu,

• reklam,

• afiş,

Page 4: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Uygulama Alanları• Market panolarının okunması,

• yol işaretlerinin okunarak araçların yönlendirilmesi,

• çeşitli bankalara ait kart numaraların tanınması gibi farklı alanlardaki karakter tanıma çalışmalarından oluşmaktadır.

• Bu gibi farklı uygulama alanlarında artan isteği karşılayabilmek için daha gelişmiş yöntemlere gereksinim duyulmaktadır.

Page 5: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Araştırmanın Sebebi• Bu makalede, kimlik kartlarından elde edilmiş rakamlar üzerinde

doğrusal ayırt edici analiz (LDA) ile en yakın k komşu algoritması (KNN) sınıflandırıcılarının karakteristikleri tartışılmıştır.

• İki farklı sınıflandırıcı, moment değişmezleri (IM) ile elde edilen özniteliklerinin sınıflandırma doğruluğu, eğitim/test süreleri incelenerek karşılaştırılmıştır.

Page 6: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Öznitelik Çıkarma• Aynı karakterin farklı durumlarını tanımlayabilmek için karakterlerin

farklı dönüşümlerinde, varyasyonlarında karakter özniteliklerinin sabit, değişmez olması gerekmektedir.

• Orijinal resmin döndürülmüş, ölçeklendirilmiş, gerilmiş, eğimli, eğimsiz, simetriği alınmış her durumda özniteliklerin sabit kalması gerekmektedir.

• Bu noktada farklı frekans ve ölçeklerdeki görüntüyü en iyi temsil edecek değişmez momentleri yöntemi tercih edilmiştir.

Page 7: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Sınıflandırma• Sınıflandırmada öğrenme ve test aşamalarını içeren yöntemler

kullanılmıştır.

• Öğrenme aşamasında ön işlemlerden geçirilmiş her bir rakam için değişmez momentleri kullanılarak öznitelikleri çıkarılmaktadır.

• İkinci adımda önceden belirlenen hedef değerlerine göre sınıflandırma işlemi yapılmaktadır.

• Öğrenme fazında, RIGK görüntülerinden elde edilmiş 116 tane görüntüden oluşmuş bir veri seti kullanılmaktadır.

Page 8: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Genel Öğrenme Algoritması• Genel Öğrenme Algoritması:

• Giriş: n kimlik kartının n rakamlı ön işlenmiş m x n‘lik görüntü

• Çıktı: her bir kimlik kartındaki her bir rakam için değişmez momentleriyle elde edilmiş 7 öznitelikten oluşan öznitelik vektörü

• for k=1 to m ( her bir rakam sınıfı için)

• for i=1 to rakam örneklerinin numarası

• Ön işlemlerden geçirme

• IM momentleriyle 7 öznitelik değerini hesapla

• end

• end

Page 9: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

KNN Sınıflandırma Algoritması• KNN, eğitimli öğrenme algoritmasıdır ve amacı, yeni bir örnek geldiğinde

varolan öğrenme verisi üzerinde sınıflandırma yapmaktır.

• Algoritma, yeni bir örnek geldiğinde, onun en yakın K komşusuna bakarak

örneğin sınıfına karar verir.

• 1. K değerini seç

• 2. Tüm öğrenme örnekleri ile olan

• uzaklığını hesapla

• 3. Minimum uzaklığa göre sırala

• 4. Ait oldukları sınıf değerlerini bul

• 5. Değeri baskın olan sınıfı seç

Page 10: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

KNN Algoritmasının Performans Kriterleri

• Yöntemin performansını k en yakın komşu sayısı, eşik değer, benzerlik ölçümü ve öğrenme kümesindeki normal davranışların yeterli sayıda olması kriterleri etkilemektedir

Page 11: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

KNN Eğitim Zamanı• KNN algoritmasının en önemli avantajlarından biri

model yaratmamasıdır.

• Bu sebeple eğitim için bir zaman harcamaz. Ama bu durum aynı zamanda bir dezavantaj yaratmaktadır. Çünkü algoritma sınama için diğer modellerin aksine daha çok zamana ihtiyaç duyar. Örnek olarak 4000 boyutlu eğitim kümesi düşünelim. Eğer KNN algoritmasıuygulanırsa bir tek sınama örneği için 4000 satırın herbiriyle karşılaştırma yapılır.

Page 12: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

KNN Test İşlemi

• KNN algoritması yeni gelen örnekleri olumlu olumsuz olarak belirlemesi için çok fazla zamana ihtiyaç duymaktadır.

Page 13: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

LDA ile Sınıflandırma• LDA’nın temel fikri, dönüşüm sonrası en ayırt edilebilir öznitelik

kümeleri kullanılarak kümelerin doğrusal dönüşümlerini bulmayı amaçlamaktadır.

• LDA, düşük boyutlu uzayda sınıfları en başarılı ayıracak vektorleri bulur. Amaç sınıf-içi saçılımı en büyük yapmaya çalışırken, sınıflar arası saçılımı en düşük seviyeye çekmektir.

• Yani, LDA gruplar arasında varyansı maksimum yaparken, her bir grup içerisindeki varyansı minimize etmeye çalışmaktadır.

Page 14: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Genel Test Algoritması• Genel Test Algoritması:

• Giriş: kimlik kartlarındaki rakamlardan elde edilmiş rakam görüntüleri

• Çıktı: her bir rakamın sınıf tipi

• Her bir rakam sınıfı için tekrarla

• Her bir rakam sınıfındaki rakam için tekrarla • KNN sınıflandırıcı kullanılarak değişmez momentleri ile elde edilmiş özniteliklerinin

sınıflandırılması • LDA sınıflandırıcı kullanılarak değişmez momentleri ile elde edilmiş özniteliklerinin

sınıflandırılması • Doğruluk = (tanımlanmış rakamların sayısı / rakam kümelerindeki toplam rakam sayısı)* 100• Zaman ve doğruluk oranı açısından performans karşılaştırılması

Page 15: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Sistemin Özeti• KNN ve LDA algoritmalarının olumlu ve olumsuz yanları göz önünde

bulundurularak yapılan çalışmada, kimlik numaralarının yer tespitleri yapılarak elde edilen numaraların ;• Normalleştirme• Öznitelik çıkarma• Sınıflandırma • Sınıflandırma sonuçlarının karşılaştırması

Page 16: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Deneysel Çalışmalar• Her klasörde farklı bir rakam bulunmak üzere farklı kimliklerden

bölütlenmiş ikili görüntüler bulunmaktadır. 10 klasör içerisinde, her klasörde 116 tane örnek olmak üzere toplam 1160 tane örnek vardır. Bu örneklerin her birinden 7 tane olmak üzere 1160x7 tane öznitelik elde edilmiştir.

• Çalışma MATLAB 7.14 sürümünde gerçekleştirilmiştir. Deney sonuçları, 4GB RAM’li Intel Core i5 CPU (2.06 GHz) işlemciye sahip Windows 7 işletim sistemi üzerinde elde edilmiştir.

Page 17: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Deneysel Çalışma Adımları - 1

Rakam Kümesi Normalleştirme İşlemleri

IM Momentleriyle

Öznitelik Çıkarma

KNN Algoritması İle Sınıflandırma

Doğruluk Yüzdelerinin

Tespiti

Tanıma Sonuçları

Aynı Problemle Uğraşılan Uygulama

Alanlarında Kullanımının

Yorumlanması

Page 18: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Deneysel Çalışma Adımları - 2

Rakam Kümesi Normalleştirme İşlemleri

IM Momentleriyle

Öznitelik Çıkarma

LDA Algoritması İle Sınıflandırma

Doğruluk Yüzdelerinin

Tespiti

Tanıma Sonuçları

Aynı Problemle Uğraşılan Uygulama

Alanlarında Kullanımının

Yorumlanması

Page 19: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

GörüntüAlımı

CCD kameranın yerleştirilmesi

TC Kimlik Numarasını

İçermeyen Görüntü

TC Kimlik Numarası Olabilecek Görüntü

Nesne Sayısı 11'e eşit veya fazla mı?

Ön İşlemlerin Yapılması (Otomatik Eşik Değeri Belirleme, İkilileştirme ve kesme

işlemleri gibi...)

Etiketleme işlemleri yapılarak görüntüdeki nesne sayısının tespit

edilmesi

Hayır

Evet

Karakterlerin koordinat

değerleri gibi genel özelliklerinin tespit

edilmesi

TC kimlik numarasının olduğu bölgenin tespiti

Page 20: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Rakam Bazlı LDA ve KNN Algoritmalarının Karşılaştırma Sonuçları

0 (%) 1 (%) 2 (%) 3 (%) 4 (%) 5 (%) 6 (%) 7 (%) 8 (%) 9 (%)0

20

40

60

80

100

120

100 97 97 98 95100

63

100

91

60 LDAKNN

Page 21: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

1160 Tane Rakam Görüntüsünün Eğitim İşlemi Sınıflandırma Süreleri

LDA KNN1

10

100

22.73 22.652

Eğitim Zamanı (sn)

Page 22: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

1160 Tane Rakam Görüntüsünün Test İşlemi Tanıma Süreleri

LDA KNN0.1

1

10

2.903 2.99

Test Zamanı (sn)

Page 23: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

1160 Tane Görüntünün Doğrulama İşlemi Süreleri

LDA KNN

0.001

0.002

Doğrulama Zamanı (sn)

Page 24: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Eğitim, Test ve Doğrulama Toplam Zamanı (sn)

LDA KNN1

10

100

26.431 26.635

Toplam Zaman (sn)

Page 25: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Araştırmanın Sonucu• Eğitim/test sürelerinin yaklaşık

olarak aynı olmasına karşın sınıflandırma doğruluğu açısından KNN sınıflandırıcı LDA sınıflandırıcıdan daha yüksek başarı vermektedir.

Page 26: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

TEŞEKKÜR EDERİZ.

Page 27: Rakam Tanıma İçin KNN ve LDA  Algoritmalarının  Karşılaştırılması

Kaynaklar• [1] Alshebeili, S. A., Nabawib, A. A. F., Mahmoud, S. A., “Arabic character recognition using 1-D slices of the character spectrum”. Signal

Processing V. 56, pp. 59-75, 1997.• [2] Chim, Y. C., Kassim, A., Ibrahim, Y., “Character recognition using statistical moments”. Image and Vision Computing V. 17, pp. 299-

307, Singapore, 1999. • [3] Çetiner, H., “Görüntü işleme teknikleri kullanarak optik karakter tanımlama”, SDÜ, Fen Bilimleri Enstitüsü, Yüksek Lisans Tezi, 2012. • [4] Kurt, Z., Turkmen, H., İ., Karsligil, M.E., “Linear Dicriminant Analysis in Ottoman Alphabet Character Recognition”, ECC 2007,(2007). • [5] Tatale, S., Khare, A., “Character recognition and transmission of characters using network security”, International Journal of

Advances in Engineering&Technology, (2011). • [6] Das, M. S., Rani, D. S., Reddy, C., Govardhan, A., “Script identification from multilingual Telugu, Hindi and English Text Documents”,

International Journal of Wisdom Based Computing, Vol. 1(3), (2011). • [7] Hu, M., “Visual pattern recognition by moment invariants”. IRE Trans. Inf. Theor. IT-8: 179–187, (1962). • [8] Mercimek, M., Gülez, K., Mumcu, T. V., “Real object recognition using moment invariants”, Sadhana Vol. 30, pp. 765-775, (2005). • [9] Wilks, S. S. “Mathematical Statistics”, New York: Wiley, (1962). • [10] Fukunaga, K., “Introduction to Statistical Pattern Recognition”. New York: Academic Press, (1990). • [11] Yang, J, Yu, H., Kunz, W., “An efficient LDA algorithm for face recognition”, (2000). • [12] Çetiner, H., Cetişli, B., Çetiner, İ., “Gerçek zamanlı T.C. kimlik numarası tanıma”, SAÜ., Fen Bilimleri Dergisi, (2012)