• Sonuç bulunamadı

Birleşik ve eğik Türkçe el yazısı tanıma sistemi

N/A
N/A
Protected

Academic year: 2021

Share "Birleşik ve eğik Türkçe el yazısı tanıma sistemi"

Copied!
118
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Yüksek Lisans Tezi

Trakya Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Bölümü

ÖZET

Bu çalışmada, birleşik ve eğik Türkçe el yazısı için bir tanıma sistemi tasarlanmıştır. Tasarlanan sistemde el yazısı tanıma sistemlerindeki aşamaların çoğu kullanılmıştır. Bunlar, dökümanın taranması, görüntüdeki gürültünün temizlenmesi, satırların ayıklanması, kelimelerin ayıklanması, kelime eğiminin düzeltilmesi, karakterlerin ayrıştırılması, tanınması ve doğrulama aşamalarıdır. Tanıma sistemi büyük harf, küçük harf ve rakam olmak üzere üç tipteki karakteri ayrı ayrı tanıyacak şekilde tasarlanmıştır.

Bu çalışma esnasında, yaşları 15 ile 45 arasında değişen toplam 172 kişiden, 29 adet büyük harf, 29 adet küçük harf ve 10 adet rakam olmak üzere toplam 11696 el yazısı karakter örneği toplanmıştır.

Satırların ayrıştırılması aşamasında yatay doğrultudaki histogram bilgisinden yararlanılmıştır. Karakterlerin ayrıştırılması aşamasında, dikey doğrultudaki histogram bilgisi kullanılmıştır. Karakter tanıma aşamasında Korelasyon yöntemi kullanılarak K-en yakın komşuluk sınıflama yöntemi ile sistem kuvvetlK-endirilmiştir.

Doğrulama aşamasında sınırlı sayıda kelime içeren bir sözlük kullanılmıştır. Bu sözlük kullanımı ile anlamsız harf gruplarının seçilmesi engellenmiştir.

Visual Basic.Net ortamında Türkçe elyazısı tanıma işlemini gerçekleştiren bir uygulama geliştirilmiştir. Bu sistem ile yüksek başarı oranı elde edilmiştir.

(2)

Giriş bölümünde karakter tanıma işleminin önemi, gerekliliği ve sağladığı faydalar anlatılmıştır.

Karakter tanımaya genel bakış bölümünde “optik karakter tanıma” nın tanımı ve çeşitleri hakkında bilgiler verildi. Makine baskısı ve el yazısı karakterlerin tanınması üzerine yapılan bir çok çalışma incelenmiştir.

Karakter tanıma işleminin aşamaları bölümünde karakter tanıma işleminin aşamaları hakkında ayrıntılı bilgiler verilmiştir.

Geliştirilen uygulama bölümde ise yapılan deneysel çalışma anlatılmıştır.

Sonuç bölümünde, tanıma sisteminin, rakam guruplarında, ayrık yazılan kelimelerde ve birleşik yazılan kelimelerdeki başarı oranları gösterilmiştir.

Anahtar kelimeler : Karakter Tanıma, Korelasyon, K-en yakın komşuluk, görüntü işleme, sözlük.

Yıl : 2007 Sayfa : 105

(3)

Master Thesis

Trakya University Graduate School of Natural and Applied Sciences

Department of Computer Engineering

ABSTRACT

A Character Recognition System for connected and slant handwritten Turkish texts is designed in this study. Most of levels used in handwritten recognition systems are used in this system. These levels are scanning document, noise reduction, appointing the satires of text, appointing words, smoothing the slant of the word, finding the characters, character recognition and verification. Recognition system consists of three recognition modules which are designed for recognize uppercase characters, lowercase characters and numbers.

In this study handwritten character examples are collected from 172 persons whom ages are between 15 and 45. 29 uppercase, 29 lowercase characters and 10 digits are collected from every person. Total 11696 character examples are collected.

Horizontal histogram graphic is used at satire finding level. Vertical histogram graphic is used at character finding level. Correlation algorithm is used at character recognition level and system strengthened by K-n neighbor classification algorithm.

A limited dictionary is used at verification level. Returning meaningless character groups is prevented by using dictionary.

First chapter is about the importance, necessity and usefulness of the character recognition process.

(4)

Second chapter gives information about the explanation and types of optic character recognition. Lots of study about printed and handwritten character recognition is studied at this section.

Detailed information about the levels of character recognition is showed at the third section.

At the fourth chapter, the experimental work is explained.

At the fifth chapter the test results of recognition system is studied.

Key Words : Character recoginiton, Correlation, K-nn, image processing, lexicon.

Year : 2007 Page : 105

(5)

TEŞEKKÜR

Danışmanım Sayın Yrd.Doç.Dr.Rembiye KANDEMĐR’e tez çalışmam boyunca beni yönlendirdiği, bilgisini, değerli görüşlerini ve deneyimlerini bana aktardığı için çok teşekkür ederim.

Desteğini esirgemeyen, Sayın Yrd.Doç.Dr.Yılmaz KILIÇASLAN’a ve tez jürisinde yer alan Yrd.Doç.Dr. Hilmi KUŞÇU’ya teşekkür ederim.

Hayatımın ve çalışmalarımın her aşamasında bana destek olan arkadaşım Zekeriya KAPLAN’a ve Ayhan SELAMET’e başta olmak üzere T.Ü. Bilgisayar Mühendisliği bölümündeki bütün arkadaşlarıma teşekkür ederim.

Hayatım boyunca desteklerini hiçbir zaman eksik etmeyen, benim için her türlü fedakârlıkta bulunan, beni yüreklendiren ve bana güvenen sevgili anneme, sevgili babama, sevgili teyzeme, sevgili abime ve sevgili kardeşime çok teşekkür ederim.

(6)

ĐÇĐNDEKĐLER

ÖZET ... ABSTRACT... ... TEŞEKKÜR ... ĐÇĐNDEKĐLER ... SĐMGELER DĐZĐNĐ ... KISALTMALAR LĐSTESĐ ... ŞEKĐLLER VE TABLOLAR DĐZĐNĐ ... 1. GĐRĐŞ ...

2. KARAKTER TANIMAYA GENEL BAKIŞ ... 2.1. Karakter tanıma nedir? ... 2.2. Temel Kavramlar ... 2.3. Çevrimdışı yöntemler ... 2.4. Çevrimiçi yöntemler ... 2.5. Makine baskısı karakterlerin tanınması ... 2.6. El yazısı karakterlerin tanınması ... 2.7. El yazısı karakter tanıma sistemleri ... 2.8. NEC karakter tanıma sistemi ... 2.9. El yazısı karakter tanıma alanında yapılmış çalışmalar ...

3. KARAKTER TANIMA ĐŞLEMĐNĐN AŞAMALARI ... 3.1. Ön işleme ... i iii v vi ix x xi 1 4 4 4 6 8 10 10 12 14 15 19 19

(7)

3.1.1. Tarama ... 3.1.2. Đkili seviyeye indirgeme ...

3.1.3. Gürültü Temizleme ... 3.1.4. Satırların ve Karakterlerin Ayrıştırılması ... 3.1.5. Boyut Normalleştirme ... 3.1.6. Meyil-Eğim düzeltme ... 3.1.7 Đnceltme ... 3.2. Özellik çıkarma ... 3.2.1. Histogram özellikleri ... 3.2.2. Şekil özellikleri... 3.2.3. Sınır eğrisi ... 3.2.4. Zincir Kod ... 3.3. Dilimleme ...

3.4. Karakter Tanıma Metotları ...

3.4.1. Ağırlık merkezine dayalı tanıma ...

3.4.2. Korelasyon ... 3.4.3. K-en yakın komşuluk ...

3.4.4. Kontur Çıkarma ...

3.4.5. Tekleştirme Modeline Dayalı Tanıma ... 3.4.6. Yapay Sinir Ağları ... 3.5. Son işleme ...

4. GELĐŞTĐRĐLEN UYGULAMA ... 4.1. El Yazısı Tanıma Sistemi ...

19 20 21 24 27 27 32 38 39 40 40 41 42 46 47 47 48 50 52 53 56 57 57

(8)

4.2. El yazısı karakter örneklerinin toplanması ve dijitalleştirilmesi ... 4.3. Veri Tabanının oluşturulması ... 4.4. K-en yakın komşuluk ... 4.5. El yazısı kelime örneklerinin toplanması ve taranması ... 4.6. Satırların ve kelimelerin ayrıştırılması ... 4.7. Eğim düzeltme ... 4.8. Rakam gruplarının tanınması ... 4.9. Kelimelerin tanınması ... 4.9.1. Ayrık yazılan kelimelerin tanınması ... 4.9.2. Birleşik yazılan kelimelerin tanınması ...

5. SONUÇ ... EKLER ... KAYNAKLAR ... ÖZGEÇMĐŞ ... 58 58 61 66 66 70 72 75 75 78 85 88 101 105

(9)

SĐMGELER DĐZĐNĐ

a(p) Komşular üzerindeki değişim işlemi sayısıdır. α Ana hat ile yatay çizgi arasındaki açı değeri b(p) P’nin komşuluğundaki siyah piksel sayısıdır. -β Eğim düzeltme açısı

β Dikeye yakın çizgilerin ortalaması ile dikey eksen arasındaki açı değeri dj Đstenen çıkış değeri,

f (x) Sigmoid fonksiyonu

η Öğrenme katsayısı,

p' Đşlem sonunda karar verilen piksel değeri

R –γ,–α açısı ile eş zamanlı eğim ve meyil düzeltme işlemini yapan matris t1, t2 Eşik değerleri

T Döndürme ve eğim düzeltme işleminin bileşim matrisi

V N adet vektörden oluşan herhangi bir sınır eğrisine ait zincir kod açılımı

j δ Üretilen hata yj Üretilen çıkış değeri

(10)

KISALTMALAR LĐSTESĐ

DTV Dikey Tanımlama Vektörü HMM Hidden Markov Modelleri ICR Akıllı Karakter Tanıma K-en En Yakın Komşuluk Yöntemi KTS Karakter Tanıma Sistemi NEC Nippon Electric Company

NWG Nagendraprasad-Wang-Gupta inceltme algoritması OKT Optik Karakter Tanıma

RGB Kırmızı, Yeşil, Mavi YSA Yapay sinir ağları

(11)

ŞEKĐLLER VE TABLOLAR DĐZĐNĐ

Şekil 2.1. Makine baskısı yazının, zayıf kalitedeki taranmış görüntü örneği ... Şekil 2.2. Birleşik el yazısı örnekleri ... Şekil 2.3. Değişik tipteki el yazısı örnekleri ... Şekil 3.1. Ön işlemenin temel aşamaları ... Şekil 3.2. Đkili seviyeye indirgeme örnekleri ... Şekil 3.3. Gürültü temizleme örneği ... Şekil 3.4. 3x3’lük ve 4x4’lük şablonlar ...

Şekil 3.5. Gürültü temizleme örneği ... Şekil 3.6. Örnek satırların satırbaşı ve satır sonları ...

Şekil 3.7. Örnek çerçevelenmiş karakter görüntüsü ... Şekil 3.8. Histogram ile satır ayıklama örneği ... Şekil 3.9. Kelimelerin ayrıştırılması örneği ... Şekil 3.10. Boyut normalleştirme ...

Şekil 3.11. Meyili düzeltilen kelime örneği ... Şekil 3.12. Eğimi düzelilen kelime örneği ...

Şekil 3.13. Meyil-eğim düzeltmede kullanılan birinci metot ... Şekil 3.14. Meyil-eğim düzeltmede kullanılan ikinci metot ...

Şekil 3.15. Birinci ve ikinci metodun karşılaştırılması ... Şekil 3.16. Eğim-meyil düzeltme örnekleri ...

Şekil 3.17. Silme kuralları ... Şekil 3.18. Muhafaza şablonları ... Şekil 3.19. Đnceltme uygulamasından bazı örnekler ... Şekil 3.20. Komşu piksellerin numaralandırılması ... Şekil 3.21. NWG inceltme algoritması ... Şekil 3.22. NWG algoritmasıyla üretilen iskelet örneği ... Şekil 3.23. Đnceltme örnekleri ... Şekil 3.24. Bir görüntüye ait histogram fonksiyonu ... Şekil 3.25. Şekil özelliklerinin sınıflandırılması ...

5 6 12 19 21 22 23 23 24 25 26 27 27 28 28 30 30 31 32 34 35 35 36 37 37 38 39 40

(12)

Şekil 3.26. 4’lü piksel komşuluğu, 8’li piksel komşuluğu ... Şekil 3.27. 4’lü ve 8’li zincir kod vektörleri ... Şekil 3.28. Histogram yöntemi ile dilimleme örneği ... Şekil 3.29. Eğitim desenlerinin ağırlık merkezleri ... Şekil 3.30. Dört yönde oluşan izdüşüm bilgileri ... Şekil 3.31. Orjinal resmin ikili örüntüsü ... Şekil 3.32. Çok katmanlı bir yapay sinir ağı ... Şekil 3.33. Sinir ağı için giriş vektörünün elde edileceği harf matrisi ... Şekil 4.1. Karakterlerin ızgaralanması ve ikili biçimde ifade edilmesi ... Şekil 4.2. Rakam Tanıma Modülü ... Şekil 4.3. Küçük Harf Tanıma Modülü ... Şekil 4.4. Büyük Harf Tanıma Modülü ... Şekil 4.5. Yazı örneğinin orijinal görüntüsü ... Şekil 4.6. Yazı örneğin ikili seviyeye indirgenmiş ve gürültüleri temizlenmiş şekli .. Şekil 4.7. Satırların saptanması ... Şekil 4.8. Kelimelerin ayrıştırılması ... Şekil 4.9. Kelimelerin çerçevelenmesi ... Şekil 4.10.Tanıma sisteminin ürettiği sonuç ... Şekil 4.11. Farklı derecelerde yapılan eğim düzeltme işleminin sonuçları ... Şekil 4.12. Serbest stilde yazılan rakam grupları ... Şekil 4.13. Rakam gruplarının üst ve alt taban çizgileri ... Şekil 4.14. Dilimleme örnekleri ve sonuçlar ... Şekil 4.15. Doğru ve yanlış tanınan rakam grupları ... Şekil 4.16. Ayrık yazılan kelime ve birleşik yazılan kelime örnekleri ... Şekil 4.17. Karakterlerin ayrıştırılması ... Şekil 4.18. Karakterlerin K-en yöntemi ile tanınması ... Şekil 4.19. Orijinal metin görüntüsü ve sistemin ürettiği sonuç ... Şekil 4.20. Histogram tipleri ... Şekil 4.21. Histogram 1 ve histogram 2’nin beraber kullanılması ve sonuç ... Şekil 4.22. Dilimleme çeşitleri ve ilk ona giren kelimeler ile benzeme değerleri ... Şekil 4.23. Orijinal görüntü, ilk ona giren kelimeler ve sistemin ürettiği sonuç ... Şekil 4.24. Serbest stilde yazılmış metin görüntüsü ...

41 42 46 47 51 52 54 55 60 63 64 65 67 68 68 69 69 69 71 72 73 74 74 75 76 76 77 79 80 82 83 83

(13)

Şekil 4.25. Sistemin ürettiği sonuç ... Şekil 4.26. Serbest stilde yazılmış metin görüntüsü ... Şekil 4.27. Sistemin ürettiği sonuç ...

Tablo 3.1. Tanıma Oranları ... Tablo 3.2. K-en işlemi için örnek tablo ... Tablo 3.3. K-en işlemi için örnek tablo ... Tablo 4.1. K-en işlemi için örnek tablo ... Tablo 5.1. Karakter tanıma oranları ... Tablo 5.2. Birleşik yazılan rakamlarda tanıma oranları ... Tablo 5.3. Ayrık yazılan kelimelerde tanıma oranları ... Tablo 5.4. Birleşik yazılan kelimelerde tanıma oranları ...

84 84 84 14 49 50 61 85 86 86 86

(14)

1. GĐRĐŞ

Kağıt bazlı formların bilgisayarlar tarafından kullanılabilir formatlara çevrilme gereksinimi her geçen gün artmaktadır. Halen kurumların tozlu raflarında yığılı yeni ve eski kağıt formlarda kayıtlı olan ve pazarlama, istatistik gibi stratejik iş operasyonlarında kullanılabilecek bilgiler bulunmaktadır. Bu bilgilerin varlığı ve açığa çıkarılmalarına duyulan ihtiyaç, el yazısı ve makine çıktısı gibi bir çok yazı formatını okuyup tanıyabilecek yazılımların geliştirilmesi ihtiyacını doğurmuştur.

El ile bilgi girişinin birçok şirket için yüksek maliyetli bir işlem haline geldiği günümüzde, bu tür işlemleri defalarca gerçekleştirebilecek çalışan kişilerin firmalarda uzun süre çalışmalarını sağlamak da bir hayli zorlaşmıştır. Ayrıca, bu tür el ile yapılan bilgi girişi işlemlerinin çıktısı ve verimliliği düşük, hata oranları ise yüksek olmaktadır. Profesyonel bilgi girişi ile uğraşan firmalara bu işlemlerin dışarıdan yaptırılması ise güvenlik ve servis kalitesinin devamlı olmaması gibi sebeplerden dolayı tercih edilmemektedir.

Karakter tanıma yazılımları günümüzde ucuz fiyatlarıyla orta ve büyük ölçekli firmaların bilgi girişi maliyetlerini %55 ila %90 arasında düşürebilmektedirler. Dökümanlar hızlı olarak taranabilmekte ve bu dökümanlar merkezi işlem noktalarına gönderilmek yerine teslim alındıkları noktada tüm işlemleri tamamlanıp çıkarılan bilgilerin elektronik ortamlarda merkeze yollanması ile zaman, maliyet ve randıman açılarından yüksek kazanımlar sağlanmaktadır.

Karakter tanıma işlemi formun taranması, el yazısı ve makine çıktısı ile basılmış öğelerin formdan ayrılması işlemlerinden oluşmaktadır. Tanıma yazılımları, kullanıldıkları yazı tanımlama dilleri yardımıyla grafik öğeleri karakterler ile eşleştirirler. Gelişmiş tanıma motorları yazı şablonlarını tekrar tekrar okuyarak öğrenme kapasitesine sahiptirler. Tanıma yazılımları son çıktılarını oluşturduktan sonra kullanıcıya el ile değişiklik yapma izni verirler.

(15)

Karakter tanıma teknolojilerinin sağladığı kolaylıklar, diğer birçok iş alanında bu teknolojilerin hızla uygulanmaya başlanmasına yardımcı olmuştur. Örneğin; mektupların üstlerindeki adreslerin tanınıp posta koduna göre otomatik olarak ayrıştırılması, bankalara yollanan çeklerin otomatik olarak tanınıp gerekli hesap işlemlerinin elektronik ortamlarda gerçekleştirilmesi gibi projeler karakter tanıma teknolojileri ile gerçekleştirilmektedir.

Günümüzde büyüklüğü 250 milyar doları bulan döküman teknolojileri endüstrisinin dünya çapındaki yıllık büyüme hızı %26 olarak tahmin edilmektedir [Khalid, 1996]. Bu hızla büyüyen bir endüstride, teknolojinin gerisinde kalan dökümanların yeni sistemlere transfer edilmeleri ihtiyacı nedeniyle karakter tanıma teknolojilerinin önemi giderek artmaktadır. Gelecek nesil kurumsal bilgi zinciri çözümleri internet, döküman ve telefon operasyonlarının birbirlerine entegre hale getirilmeleriyle kurulacaklardır. Bu tür entegre sistemler kuran firmalar kendilerini rakiplerinden farklılaştıracak, rekabet güçlerini ve müşteri hizmet kalitelerini artıracaklardır.

Son yıllarda, yazı tanıma konusunda yapılan çalışmalarda büyük ilerleme kaydedilmiştir, bu sayede özellikle temiz ve okunabilir bir zemin üzerinde basılı yani, matbaa ürünü ya da daktilo veya bilgisayarda yazılmış yazıları otomatik olarak tanıyan programlar hayatımızın içine girmeye başlamıştır. Tanıma yüzdesi yüksek olan bu programlar birçok kurum ve şirkette maliyeti düşürmekte ve hayatı oldukça kolaylaştırmaktadır.

Oysa, şu anki teknoloji el yazısı tanıma konusunda henüz kısıtlı bir düzeydedir. El yazısı tanıma hala tam olarak çözülmüş bir problem değildir. El yazısı tanımadaki zorluk, çok fazla sayıda değişik yazı karakteri olması ve kişiden kişiye farklılıklar göstermesinin yanında harflerin birbirine bağlı yazılmasından kaynaklanmaktadır. Yazı sitili, duruma ve kullanılan kalem ya da kağıda göre bile farklılıklar gösterebilmektedir. Kişilerin yazı yazma tarzlarına ve hızlarına bağlı olarak harfler çok değişik şekil ve büyüklükte olabilmektedir. Đnsan görme sistemi harflerin büyüklük ve yön farklılıklarından etkilenmemekte, oysa otomatik bir sistemde bunlar büyük sorunlar

(16)

oluşturmaktadır. Çoğu zaman harfler ancak cümle içerisindeki anlama göre bir şey ifade etmekte, aksi takdirde tanınması mümkün olmamaktadır. Ayrıca, kağıt üzerine yazılmış ve daha sonra tarayıcı ile sayısallaştırılmış bir belge çok fazla gürültü içermektedir. Bütün bunlar el yazısı tanıma problemini zor ve henüz tam anlamıyla çözülmemiş bir problem olarak bırakmakta, otomatik bir el yazısı tanıma sisteminin sağlayacağı avantajlar ve kolaylıklarsa çekiciliğini artırmaktadır [Duygulu, 2004].

Bununla beraber bazı dillerde, oldukça iyi düzeyde çalışan el yazısı tanıma sistemleri geliştirilmiştir. Fakat Türkçe konusunda yeterli derecede çalışma bulunmamaktadır. Yapılan çalışmalarda başarı seviyesi oldukça düşüktür.

Bu tezde eğim düzeltme, karakter ayrıştırma, karakter tanıma ve kelimenin doğrulanması alanında yapılmış olan çalışmalar incelenerek birleşik ve eğik Türkçe el yazıları için bir tanıma sistemi gerçekleştirilmiştir.

Karakter tanıma işleminin öneminin, gerekliliğinin ve sağladığı faydaların anlatıldığı bu giriş bölümünden sonra, tezin organizasyonu aşağıdaki gibi olacaktır.

Karakter tanımaya genel bakış bölümünde “optik karakter tanıma” nın tanımı ve çeşitleri hakkında bilgiler verilmiştir. Makine baskısı ve el yazısı karakterlerin tanınması üzerine yapılan bir çok çalışma incelenmiştir.

Karakter tanıma işleminin aşamaları bölümünde karakter tanıma işleminin aşamaları hakkında ayrıntılı bilgiler verilmiştir.

Geliştirilen uygulama bölümde ise yapılan deneysel çalışma anlatılmıştır.

Sonuç bölümünde, tanıma sisteminin, rakam guruplarında, ayrık yazılan kelimelerde ve birleşik yazılan kelimelerdeki başarı oranları gösterilmiştir.

(17)

2. KARAKTER TANIMAYA GENEL BAKIŞ

2.1. Karakter tanıma nedir?

Elle veya makineyle yazılmış yazıların bilgisayar tarafından tanınmasına çok genel terimiyle Karakter Tanıma Sistemi (KTS) adı verilmektedir.

Karakter tanıma, metin-tabanlı giriş örüntülerinin makine tarafından işlenerek anlamlı çıktılar üretilmesidir.

Dökümanların makine tarafından okunabilecek forma dönüştürülmesi için, tarama, kamera ile görüntüleme veya dokunma hassasiyetli ekrana doğrudan yazma gibi bir çok yöntem vardır.

2.2. Temel Kavramlar

Karakter tanıma çalışmaları üç tipte incelenebilir:

• Makine baskısı karakterlerini tanıma • Ayrık el yazısı karakterlerini tanıma • Birleşik el yazısı karakterlerini tanıma

El yazısı karakter tanıma iki alt kategoride incelenir:

• çevrimiçi (on-line) tanıma • çevrimdışı (off-line) tanıma

(18)

Makine baskısı karakterler ile el yazısı karakterler arasında önemli bir farklılık vardır. El yazısı karakterler arasındaki değişimler makine baskısındakilere göre oldukça büyüktür. Makine baskısı karakterlerdeki değişiklikler sadece font stili ve büyüklüğünden kaynaklanmaktadır. El yazılarında ise durum farklıdır. Dünyada hiçbir yazarın el yazıları birbirinin aynısı değildir. Aynı yazarın farklı zamanlarda yazdığı aynı karakterlerde bile büyük değişiklikler gösterebilir. Karakterlerin büyüklüğü değişebildiği gibi şekli de değişebilmektedir. Yazarın içinde bulunduğu ortam, moral durumu, sağlık durumu gibi etkenler bile yazının şekline tesir etmektedir. El yazısı tanımanın tam olarak çözülememiş bir problem olmasının altında yatan sebeplerden bazıları da bunlardır. Bu nedenle makine baskısı tanıma oranı her zaman el yazısı tanıma oranından yüksektir.

Tanıma sisteminin karakterleri tanıyabilmesi için, onları görüntüden ayıklaması gerekir. Kelimelerdeki harflerin birbirinden ayrı olması durumu nadirdir. Böyle durumlar ancak karakterler için ayrılmış kutucukları içeren formlarda olur. Diğer taraftan makine baskılarında bile karakterler birbirine bitişik olabilmektedir. Đlk bakışta, makine baskısı yazıların kolayca karakterlere ayrıştırılabileceği düşünülmekle beraber bazı sebeplerden dolayı böyle olmadığı görülmektedir.

Şekil 2.1. Makine baskısı yazının, zayıf kalitedeki taranmış görüntü örneği

Şekil 2.1’de görüldüğü gibi makine baskısı dökümanın görüntü kalitesi her zaman mükemmel olmayabilir. Nokta vuruşlu yazıcılar, özellikle hızlı olanları, çok gürültülü görüntüler oluşturabilmektedir. Eğer iki karakter arasındaki boşluk bir piksel büyüklüğünden küçükse o zaman karakterler bitişik olarak görüntülenir [Mulgaonkar vd., 1994].

(19)

Şekil 2.2. Birleşik el yazısı örnekleri

El yazılarında ise şekil 2.2’de görüldüğü gibi birleşik karakter problemi daha karmaşık bir hal almaktadır. Đnsanlar için yazılarındaki karakterleri birleşik yazmak gayet doğaldır. Bu tipteki yazılarda, karakterler arasında boşluk olmadığı gibi bazı karakterler üst üste çakışabilmektedir. Bu gibi durumlar el yazısı karakter tanımayı zorlaştıran etkenlerdir. Karakter tanıma sistemlerinin bazıları sadece izole edilmiş karakterler üzerinde çalışır, bazıları hem dilimleme hem tanıma işlemlerini gerçekleştirir, bazılarında iki aşama birbirinden bağımsızdır.

2.3. Çevrimdışı yöntemler

Kağıt üzerindeki yazıların tanınabilmesi için çevrimdışı yöntemler kullanılır. Öncelikle belgenin sayısallaştırılması gerekmektedir. Belge analizi ilk önemli aşamadır. Belgenin önce paragraf ve cümlelere, daha sonra sözcüklere bölünmesi gerekmektedir. Eğer söz konusu belge doldurulmuş bir form ise yine öncelikle formun analiz edilerek tanınması istenen sözcüklerin çıkarılması gerekmektedir [Steinherz vd., 1999, Arica vd., 2001]. Çevrimdışı yöntemler oldukça geniş bir yelpazede yer alsa da genelde benzer bir işlem sırasını izler. Bunlar şu şekilde sıralanabilir:

1) ön-işleme 2) dilimleme 3) öznitelik çıkarımı 4) tanıma 5) son-işleme

(20)

Önişleme aşaması gürültü azaltılması, normalleştirme, referans çizgisinin bulunması gibi işlemlerden oluşur. Sayısallaştırma sırasında yazıyı oluşturan eğriler arasında boşluklar oluşabilir, yeni nokta ya da çizgiler ortaya çıkabilir. Bu tür problemler filtreleme, gürültü modelleme ya da morfolojik operatörler kullanılarak çözülebilir. Normalleştirme, yazı karakterlerinden kaynaklanan farklılıkların ortadan kaldırılarak standart bir şekle getirilmesidir. Yazı düz bir çizgi üzerinde değil de yukarı ya da aşağı doğru yazılmışsa öncelikle bunun düzeltilmesi gerekir. Aynı şekilde yazı karakterine bağlı olarak sağa ya da sola eğik şekilde yazılmış yazılar düz bir şekle getirilir. Bir başka normalleştirme işlemi de karakterlerin aynı büyüklüğe getirilmesidir. Bazı sistemlerde öznitelik çıkarılması için inceltme yöntemlerinin uygulanması da gerekebilir. Referans çizgisi bütün karakterlerin üzerine oturduğu çizgi şeklinde tanımlanabilir. Bu işlem bazı karakterlerin ayırt edilmesi için önemlidir. Örneğin ‘g’ ve ‘9’ birbirine karışabilecekken, referans çizgisine göre konumları dikkate alındığında bu karışıklık ortadan kalkacaktır [Steinherz vd., 1999] .

Dilimleme aşamasında, sözcüklerin harflere ya da rakamlara karşılık gelecek parçalara bölünmesi amaçlanır. Bazı sistemler dilimlemeyi harfler arsındaki boşluklara göre yapmaktadır. Ancak bu parçalanmış harflere neden olabilmektedir. Bu nedenle tanıma ve dilimleme kısımlarını birleştirerek, sadece olası karakterlere denk gelecek şekilde bir dilimleme yapmaya çalışan sistemler önerilmiştir. Bir başka yaygın yöntemse önce mümkün olduğunca küçük parçalara bölmek, daha sonra bunları genellikle gizli markov modeller (Hidden Markov Model-HMM) kullanarak birleştirmektir [Arica vd., 2001].

Bazı sistemler dilimleme aşamasını yapmadan doğrudan tanıma kısmına geçmeyi tercih etmektedir. Dilimleme içerip içermemesine göre öznitelik çıkarma işlemi de farklılıklar gösterir. Öğrenme aşamasında bütün pikseller işlenmeden kullanılırsa hem uzay büyüklüğünden hem de gürültüden kaynaklanabilecek problemler ortaya çıkabilir. Öznitelik çıkarmada ana amaç verinin daha kısıtlı bir uzayda tanımlanarak bu tür problemlerin engellenmesidir. Çok faklı yöntemler izlenebilir. Fourier, Wavelet gibi dönüşümler uygulamak, histogram ya da izdüşüm bazlı yöntemler, ya da harfleri çizgi,

(21)

eğri, köşe gibi basit şekiller bütünü olarak tanımlamak bunlardan bazılarıdır [Arica vd., 2001].

Tanıma ya da harflerin sınıflandırılması aşamasında çok farklı yöntemler kullanılabilir. Yapay sinir ağları, istatistiksel veya kural-tabanlı öğrenme, şablon eşleştirme gibi yöntemler bunlardan bazılarıdır. El yazısı tanımadaki en büyük problemlerden biri sözcükleri bulmak için harflerin tanınmasının gerekmesi, oysa özellikle gürültülü bir veri geldiğinde harflerin de ancak içinde bulundukları bağlam bilindiğinde tanınabilmesidir. Bu tür problemleri biraz olsun azaltabilmek için, bazı sistemler bir sözlükten yararlanarak tanınan harflerin anlamlı sözcüklere denk gelmesini sağlamak için tanıma sonrasında bir son-işleme yapmaktadır.

2.4. Çevrimiçi yöntemler

Çevrimiçi tanıma, karakterlerin yazılması anında işleyen tanıma yöntemidir. Bu tanıma yöntemini uygulayan stratejiler, yazım esnasında elde edilen bilgileri kullanmaktadır. Tipik olarak karakterler bir çubukla hassas ekrana yazılır ve bilgisayar sistemi, çubuğun üzerinden geçtiği pikselleri boyar. Bu yöntem ile karakter yazılırken, yazının hızı, yönü ve sırası gibi bilgiler elde edilir. Günümüzde, özellikle taşınabilir el bilgisayarlarında, bu karakter tanıma yöntemini kullanan bir çok ticari sistem vardır ve genellikle bu makineler başka karakterleri ve hareketleri tanıyabilecek şekilde tasarlanmıştır. Örneğin bir kelime üzerinden çizerek geçildiğinde, “kelimeyi sil” fonksiyonu çalışır. El yazısı karakterlerin taranmış görüntüsü ele alındığında, gerçek-zamanlı yazı bilgisi elde edilemediğinden bu teknikler geçersizdir.

Çevrimiçi sistemler genellikle elektronik tabletler tarafından kalem hareketlerinin koordinatlarının elde edilmesiyle el yazısı ya da çizimlerin otomatik olarak algılanmasını sağlayan sistemlerdir. Varolan bir belgenin bilgisayar ortamına geçirilmesinde klavye kullanmak daha hızlı olsa da, kalem ve kağıt kullanımı yaratıcılık gerektiren konularda ve belgelerin yeniden düzenlenmesinde daha fazla tercih edilmektedir. Bu nedenle el yazısını çevrimiçi olarak tanıyan bu tür sistemler oldukça önemlidir. Tabletlerin en büyük

(22)

avantajlarından biri de Çince, Japonca gibi Latin alfabesi dışındaki dillerde ve çizimlerde çok büyük kolaylık sağlamasıdır.

Tabletler için değişik teknolojiler arasında iki ana sınıftan bahsedilebilir. Bunlar, elektromanyetik/elektrostatik ve basınç duyarlı sistemlerdir. Son yıllardaki gelişmeler de girdi ve çıktının aynı yüzey üzerinden olmasına olanak sağlamıştır [Tappert vd., 1990].

Çevrimiçi sistemler de çevrimdışı sistemlere benzer yöntemler izler. Çevrimiçi sistemlerde gürültü genelde tabletin sınırlı özellikleri nedeniyle ortaya çıkmaktadır. Yumuşatma ve inceltme gibi yöntemlerle gürültüler azaltılmaya çalışılır.

Dilimleme problemi sistemin çevrimiçi olması nedeniyle farklılıklar gösterir. Çevrimiçi sistemlerin en büyük avantajı kullanıcının sisteme yardımcı olmasının sağlanabilmesidir. Dilimleme için ilk uygulanan yöntemlerden biri harf bittiğinde bir işaretle kullanıcının bunu belirtmesidir. Bazı sistemlerdeyse kullanıcı harfleri kutucuklara yazmaya zorlanmakta dolayısıyla dilimleme büyük bir problem olmamaktadır. Diğer bazı yöntemlerde çevrimdışı sistemlere benzer şekilde harfler arasındaki boşluklardan yararlanılır, ancak bu sefer bu boşlukların bulunmasında harfleri yazma sırasında harcanan zaman da önem taşır. Kalemin tabletten kaldırıldığı ve yeniden konulduğu süre arasındaki fark belli bir eşik değerini aştığında yeni bir harfe bağlandığı varsayılır.

Harflerin doğru tanınmasında iki farklı özellik önem taşır: statik ve dinamik özellikler. Statik özellikler çevrimdışı sistemler tarafından da kullanılan, büyük ve küçük harflerin farklı büyüklüklere sahip olması, 'g', 'y', 'j' gibi harfler referans çizgisinin altına uzanırken 'l', 'k', 'b' gibi harflerin diğer harflerden daha uzun olması, bazı harflerin noktalı olması gibi özelliklerdir. Bunlar harflerin birbirinden ayrılması için önem taşır. Dinamik özellikler ise çevrimiçi sistemlere özgü olan, bir harf yazılırken kalemin ilk dokunuşunun nerede olduğuna, daha sonra kalemin nasıl bir hareket izlediğine, tek bir harf sırasında elin kaç kez kalkıp indiğine benzer özelliklerdir. Çevrimiçi sistemler, el yazısı tanımak için her iki özelliği de kullanır.

(23)

Yazı karakterleri “grafitti” tarzı basit ve sabit harflerle kısıtlandığında tanıma oranı oldukça yükselmektedir. Çevrimiçi sistemlerin en büyük avantajlarından biri de kullanıcı ile sürekli bir etkileşim içinde olduğu için kullanıcının sisteme gün geçtikçe uyum sağlaması ve yazılarını, tanınması daha kolay olacak şekilde yazmaya başlaması, ayrıca hataları anında düzeltebilmesidir [Tappert, 1984].

2.5. Makine baskısı karakterlerin tanınması

Makine baskısı yazılar; kitaplar, gazeteler, dergiler ile yazıcı, daktilo ve plotter ile yazılmış dökümanlar gibi bütün materyalleri içerir. Baskı karakterler kapasite ve karmaşıklığa göre aşağıdaki gibi sınıflandırılır:

• Sabit font karakter tanıma (özel fontların tanınması) • Çoklu font karakter tanıma (birden fazla fontun tanınması) • Serbest font karakter tanıma (her tür fontun tanınması)

Yukarıda belirtilen, baskı karakter tanımanın sınıfları hakkında oldukça başarılı çalışmalar yapılmıştır. Dökümanlar yüksek kalitedeki sayfalara modern yazım teknolojileriyle yazıldığında, günümüzdeki sistemler %99’a varan doğruluk oranıyla tanıma işlemini gerçekleştirmektedir. Bununla beraber, kullanılan ticari ürünlerin tanıma oranları, dökümanın yaşına, sayfanın kalitesine ve mürekkebin durumuna göre değişir.

2.6. El yazısı karakterlerin tanınması

El yazısı karakter tanıma iki kategoriye ayrılır: birleşik ve ayrık karakterler. Đkisinin kombinasyonu sıkça görülür. Yazım türüne ve dilimleme zorluğuna göre Tappert [Tappert, 1984] el yazısı kelime tanıma problemi için beş aşama tanımlar.

(24)

1. Aşama: Kutulu ayrık karakterler 2. Aşama: Ayrık karakterler

3. Aşama: Bitişik yazılan karakterler 4. Aşama: Birleşik yazılan karakterler

5. Aşama: Bitişik, birleşik ve ayrık karakterlerin karışımı

Makine baskısı dökümanların tanınması için güçlü ve yeterli teknikler kullanılmasına rağmen el yazısı tanıma hala tam olarak çözülememiş bir problemdir. Aynı zamanda, akıllı karakter tanıma alanındaki en zor tiptir. Çünkü, yazarın stiline ve yazım hızına göre karakterlerin büyüklüğü, şekli, yazım sırası ve yazı kalınlığı değişiklik göstermektedir.

Şekil 2.3’te her bir aşamadan birer örnek gösterilmektedir. Birinci aşamadaki formatı elde etmek için yazarın, her bir karakteri ilgili kutucuğa yazması gerekir. Kutular kolayca bulunur ve görüntüden ayıklanır veya form üzerindeki kutular özel bir renkte basılır, sonra tarama esnasında bu kutuların alınması engellenir. Bu şekilde kolayca dilimleme işlemi yapılır.

Đkinci aşamadaki ayrık karakterlerin dilimlenmesi için dikey doğrultudaki histogram bilgisinden faydalanılır. Histogramdaki vadilerin orta noktasından dikey doğrultuda kesim yapılarak karakterler ayıklanır. Bu aşamadaki yazıların dilimlenmesi, temiz basılmış makine baskısı yazılarının dilimlenmesine oldukça benzer.

Üçüncü aşamadaki yazılarda genellikle karakterler birbirine değer. Bu yüzden dilimlenme noktaları açık değildir. Kalitesiz makine baskısı yazılar da bu zorluk seviyesine dahildir [Govindan ve Shivaprasad, 1990]. Đlk üç aşama üzerine yapılan bir çok çalışma mevcuttur.

Dördüncü ve beşinci aşamadaki yazıların dilimlenmesi ve tanınması için, önceki durumlara nazaran daha karmaşık yaklaşımlara ihtiyaç duyulur. Her şeyden önce, karakterleri ayıklamak için geliştirilmiş dilimleme teknikleri kullanılmalıdır. Dördüncü aşamadaki yazılar genelde bir seferde yazılan yazılardır. Yani, yazar kalemini

(25)

kaldırmadan kelimeyi yazmayı bitirir. Bu durum klasik histogram yöntemlerini geçersiz kılar. U-V, I-1,O-o gibi karakterler arasındaki şekil benzerlikleri tanıma işini zorlaştırır ve bağlam bilgisi gerektirir. Arapça gibi bazı dillerde diğer karakterlerden, sadece sahip oldukları noktaların sayısına veya pozisyonuna bağlı olarak ayırt edilen karakterler vardır. El yazısı karakter tanıma konusunda yapılan bir çok çalışma konusunda zengin kaynaklar mevcuttur [Cho ve Hinton, 1993].

Şekil 2.3. Değişik tipteki el yazısı örnekleri

2.7. El yazısı karakter tanıma sistemleri

El yazısı karakter sistemleri genellikle akıllı karakter tanıma olarak adlandırılır (ICR). Çevrimdışı akıllı karakter tanıma sistemleri için iki ana yaklaşım tanımlanır:

1) Genel yaklaşım

(26)

Birinci yaklaşımda, kelimenin özelliklerinin tanımlanması gerekir. Đkinci yaklaşımda önce kelimedeki karakterlerin dilimlenmesi gerekir. Sonra, izole edilen karakterler tek tek tanınır.

Optik karakter tanımaya (OKT) değinmeden el yazısı karakter tanımanın tarihi tam anlaşılmayacaktır [Verma ve Blumenstein, 1997]. Optik karakter tanıma problemi bilgisayarların tarihi kadar eski bir konudur. Modern OKT, 1951 yılında GISMO adında okur-yazar bir robot icat eden M. Sheppard ile başlar. 1954’de J. Rainbow tarafından çok düşük hızlarda çalışan daktilo ile yazılmış büyük harfleri okuyan bir prototip makine geliştirilmiştir. 1967’de IBM gibi şirketler OKT sistemleri pazarlamaya başlamışlardır. Bugünlerde OKT sistemleri oldukça ucuz ve yüksek başarı oranında tanıma yapabilmektedir.

Günümüzdeki araştırmalar el yazısı rakam ve karakterler üzerine yoğunlaşmış bulunmaktadır. Maalesef OKT’nin başarısı, insanların el yazılarındaki farklılıklara bağlı olarak, akıllı karakter tanıma sistemlerinde sağlanamamıştır. Suen izole edilmiş rakamlar konusunda umut verici sonuçlara sahip bir çok çalışmanın detayını anlatmıştır [Suen vd., 1993]. Suen, yüksek tanıma oranına ulaşmak için özellik çıkarımının anahtar kelime olduğunu belirtir.

Tablo 3.1’de bazı araştırmacıların tanıma sonuçları gösteriliyor [Verma vd., 1997]. Tablo üç ana bölümden oluşuyor: rakam tanıma, karakter tanıma, kelime tanıma.

(27)

Yazarlar Tanıma Oranları

Denker 86

Rakam Bottou ve diğerleri 91,9

Srihari 89-93

Lee 99,5

Koutsougeras ve Jameel 65-98

Karakter Liou ve Yang 88-95

Srihari 85-93

Shustorovich 89,4-96,4

Edelman ve diğerleri 50

Lecolinet ve diğerleri 53

Leroux ve diğerleri 62

Kelime Chen ve diğerleri 64,9-72,3

Bozinovic ve diğerleri 54-72

Senior ve Fallside 78,6

Simon 86

Guillevic ve Suen 76-98,5

Bunke ve diğerleri 98,27

Tablo 3.1. Tanıma Oranları

2.8. NEC karakter tanıma sistemi

Bu sistem Nippon Electric Company (NEC) posta işleme bölümünde kullanılmıştır. Donanıma dayalı bir tanıma mantığına sahiptir. Bu yaklaşımın giriş verisi 68 eleman içeren dikey bir tarayıcıdan gelmektedir. Her bir dikey taramada döküman 10 mm. ilerlemektedir. Analog sinyaller dökümanın siyah/beyaz bölgelerine denk düşen ikili sinyallere indirgenir. Bundan sonraki aşamada siyah/beyaz sinyaller birleştirilerek daha az sayıda ikili bitlere dönüştürülür. Dört tane yan yana dizilmiş tarama grubundan elde edilen hücre adlı sinyaller, bu hücre için tek bir ikili bite birleştirilir. Verilen hücrenin siyah/beyaz yapısına göre ikili bitin alacağı değer konusunda karar aşağıdaki 5 temel faktöre dayanır :

• Hücrede kısa dikey bir çizginin bulunması • Hücrede yatay bir çizginin bulunması • Hücredeki toplam siyah sinyal sayısı

(28)

• Bir önceki yatay komşu hücredeki siyah/beyaz kararı • Bir önceki dikey komşu hücredeki siyah/beyaz kararı

Bu veri indirgeme kuralları uygulandığında, taranan bölge 17x10’luk bir hücre dizisine indirgenmiş olur.

Her bir hücreye karşı gelen ikili bitler 170 bit bir kaydırmalı kaydediciye girilir. Her bir hücrenin oluşumu ile kaydırmalı kaydedicideki tüm bitler bir pozisyon kaydırılır. Bu durumda her bir karakter, kaydedicideki mümkün olan her pozisyona kaydırılmaktadır. Böylece tüm karakter kayıtları, her bir karakter kaydı için tanıma kriterinin ayrı ayrı gerçeklenmesi ve kaydedicinin her kaydırılmasından sonra test yapılması sayesinde eşlenmektedir. Tanıma kriteri, her bir karakter için kabul edilebilen örüntüleri kaydırmalı kaydedicinin uygun pozisyonlarına bağlanan AND-OR lojik devre ile tanımlanmaktadır. Tüm karakter tanıma kriterleri paralel olarak çalışmaktadır. Lojik devre geliştirilirken karakterleri birbirinden ayırt edecek şartlara dikkat edilmiştir. Bir çok karakterde ortak bir özellik gerektiğinde bu bir bölge şartı olarak diğerlerinden bağımsız olarak gerçeklenir ve her bir karakterin lojik devresinde ayrı bir veri olarak kullanılır.

Böyle bir karakter tanıma modülünün performansı, kullanılan yazı tipi ile sınırlıdır. Bununla beraber çoklu yazı tipli tanımada kullanılamaz. Donanım tasarımı esnek değildir [Kazanıcı, 1999].

2.9. El yazısı karakter tanıma alanında yapılmış çalışmalar

Fukushima, çok katmanlı ve hiyerarşik yapıda tasarlanmış bir ağ yapısı (neocognitron) kullanarak, piksel tabanlı tanıma işlemi gerçekleştirilmiştir. Bu sistemde giriş katmanına uygulanan veriler, ağın her tabakasında adım adım işlenerek bağlantıdaki diğer hücrelere aktarılır. Her katmanda karakterin farklı bir özelliği teşhis edilmektedir. Katmanlar ilerledikçe seçiciliğin artması ve karmaşık özelliklerin ayrıştırılması sonucu, son katmanda tanıma sağlanmaktadır [Fukishima, 1998].

(29)

Le Cun, rakam karakterlerin normalize edilmiş formlarını kullanarak, piksel tabanlı bir tanıma uygulaması gerçekleştirilmiştir. Uygulamada dört katmanlı geri yayılım ağı tasarlanmıştır [Le Cun, 1989].

Kimura, rakam karakterlerin tanınması için iki özellik setini birleştirerek kullanmaktadır. Bunlardan ilki, karakter sınır eğrisinden üretilen yerel doğrultu bileşenleridir. Diğeri ise karakter dış sınır eğrisinin sağ ve sol profillerinden elde edilen yapısal özelliklerdir. Sınıflandırma aşamasında ise tanıma başarısının yükseltilmesi amacıyla çoğul yöntem kullanımı tercih edilmektedir. Sınıflandırma işleminde, istatistik yöntemler ve karar ağacı kullanılarak bunların ayrı ayrı verimlilik oranları incelenmektedir. Yüksek tanıma oranı (%98) elde edilmekle birlikte, işlem yükü fazlalığı görülmektedir [Kimura, 1991].

Duran, hücresel sinir ağlarına dayalı el yazısı karakterleri tanıma sistemi uygulamıştır. Uygulanan sistem temel olarak özellik çıkartma ve karar verme kısımlarından oluşmaktadır. Özellik çıkartmada hücresel sinir ağları, karar vermede ise geri yayılım ve hücresel sinir ağları kullanılmıştır. Sistemin performansı farklı kişilerden alınan el yazısı karakterler ile test edilmiştir. Sistemin ortalama doğru tanıma oranı geri yayılım ağları için %80, hücresel sinir ağları için %70’tir [Duran, 1995].

Lee, piksel tabanlı tanıma yöntemi benimsemektedir. Bununla birlikte, maskeleme yöntemleri ile karakterin alt bölgeler içerisindeki bölümleri için ayrı ayrı yerel doğrultu bilgileri çıkartılmaktadır. Ayrıca alt bölgelerin içerdiği doğrultuların niteliğine göre, karakter bütününü temsil eden matris bilgisi üretilmektedir. Sınıflandırma aşamasında ise, elde edilen yerel ve küresel verilerin grup yapısına göre, her bir grubu karşılayan ve ayrı kümeler şeklinde bağlantı içeren çok katmanlı bir yapay sinir ağı tasarlanmaktadır [Lee, 1995].

Sarıcaoğlu, el yazısı karakterlerin dilimlenmesi için yeni bir algoritma geliştirmiştir. Bu algoritmada çok katlı bir sinir ağı hata geri yayma yöntemiyle eğitilmiştir ve el yazısı karakterleri değişik biçimlerde analog veya ikili olarak tanıtılıp,

(30)

ağırlıklandırma denilen yöntem ile beraber kullanılan, pencereleme yöntemiyle de karakterlerin dilimlenmesi işlemi gerçekleştirilmiştir [Sarıcaoğlu, 1996].

Li, çevrimiçi karakter tanıma yöntemi geliştirmiştir. Yöntemde, karakteri oluşturan çizgiler üzerinde baskın noktalar belirlenmektedir. Bu noktalar köşe noktaları ve düz çizgilerin orta noktaları olarak tanımlanmaktadır. Sınırlandırma işlemi benzerlik ölçümleri ile gerçekleştirilmektedir [Li, 1997].

Kılıç, yapay sinir ağlarının önemli bir uygulaması olan karakter algılama işlemini ele almıştır. Buna örnek olması açısından 0 ile 9 arasındaki karakterler ağa sunulmuştur ve eğitim işlemi bu karakterler üzerinden gerçekleştirilmiştir. Sonuçta, ağın bu karakterleri belirsiz ortamlarda da tanıması gerçekleştirilmiştir. Bu çalışmada çok katmanlı ileri beslemeli bir yapay sinir ağı mimarisi ve geri yayılım öğrenme metodu kullanılmaktadır [Kılıç, 1998].

Cheng, rakam karakterler üzerine gerçekleştirdiği çalışmada, karakter sınır eğrilerini temel alan bir yaklaşım sergilemektedir. Sınır eğrileri kullanılarak çevre uzunluğu, alan oranları, piksel uzaklık parametreleri gibi yapısal özelliklerin yanında, sınır eğrilerinin Fourier açılımından üretilen bilgiler tanıma amaçlı olarak kullanılmaktadır. Sınıflandırıcı olarak karar ağacı kullanılmaktadır [Cheng, 1998].

Arıca, el yazısı tanıma problemi için yeni bir algoritma geliştirmiştir. Bu algoritma bir dizi ayrıştırma ve tanıma yöntemini kullanırken yazı stili ve çeşitliliği üzerinde hiçbir varsayım gerektirmez. Önce bir ayrıştırma yöntemi yazıyı karakterlerine böler. Đlk aşamada bu karakterlerin çoğu doğru bulunmakla birlikte daha sonraki aşamalarda düzeltilmesi gereken bazı hatalar da mevcuttur. Bu ayrıştırma yöntemi gri seviyeli ve ikili görüntü üzerindeki bilgileri bir arada kullanır. Đkinci aşamada her bir ayrıştırma aralığındaki mustakbel karakter üzerinde bir set öznitelik çıkarılır. Önerilen öznitelik uzayı iki boyutlu görüntüyü tek boyutlu sembollere dönüştürür. Bu yapı Saklı Markov Modeli ile geliştirilen tanıma problemi için çok uygundur. Elde edilen öznitelikler yüksek dereceli bir Saklı Markov Modeli aracılığı ile önce öğrenilir sonra

(31)

da tanınır. Son olarak ise ayrıştırma ve tanıma aşamalarındaki hatalar, tanıma bazlı bir ayrıştırma yöntemi ile düzeltilir [Arıca, 1998].

Çelik, el yazısı rakam tanımaya ilişkin bir uygulama geliştirmiştir. Uygulama ayrık yazılmış rakam örnekleri üzerinde gerçekleştirilir. El yazısı rakamların tanınması amacıyla üretilen öznitelik seti iki alt bölümden oluşmaktadır. Bunlar, rakam şeklinin sınır eğrisi ve iskelet yapısından çıkartılmaktadır. Bu şekilde elde edilen yeni öznitelikler rakamları yansıtmada dayanıklı bir yapı gösterir. El yazısı rakamların sınıflandırılması için yapay sinir ağı kullanmaktadır [Çelik, 1999].

Kazanıcı, önce algoritmik olan ağırlık merkezine dayalı tanıma, daha sonra da sezgisellik içeren tekleştirme modeline dayalı tanıma yöntemleri geliştirmiştir. Bu iki yöntemin de hata toleransının düşük olması nedeniyle, sezgisellik bulanıklık temelinde, bulanık sınıflamalı tekleştirme modeli adı verilen, üçüncü bir modelleme yapıldı. Kurallı bilgi tabanı ve karşılaştırma kriterleri belirlenerek elde edilen deneysel sonuçlara dayanarak modelin gerçek tanıma (insan tanıması) modeline daha yakın olduğu gösterilmiştir. Bu modelin bilgi tabanı ile aynı yazı tipinde, fakat farklı büyüklükteki karakterlerdeki başarısı %98 düzeyindedir. Aynı zamanda, belirlenen kriterler göre en yüksek değeri veren ilk iki karakterlerden biri %100 doğru karakterdir. Bulanık sınıflamalı tekleştirme modeli, bilgi tabanını oluşturan karakterler ile farklı yazı tipindeki karakterlerde de %70 civarında başarı göstermektedir [Kazanıcı, 1999].

Yılmaz, karakter tanıma uygulamaları için yeni bir tanıma algoritması ve veritabanı yapısı geliştirilmiştir. DECRA adı verilen tanıma algoritması, iskelet halindeki karakteri, “dizi” adı verilen piksel grupları ve bu diziler arasındaki bağlantı tanımları ile ifade eder. DECRA algoritması, karmaşık, matematiksel ifadeler kullanmadan basit şekilde istendik karakter bilgileri üretir. Veritabanının yapısı ise burada ortaya çıkan karakter bilgilerine göre oluşturulur. Veritabanındaki karakterler “segment” denilen parçalar ve segmentlere ait özelliklerle tanımlanır. DECRA algoritmasının çıkışından alınan karakter bilgileri segmente edilir. Bu bilgiler database’de tanımlı karakter bilgileri ile karşılaştırılır ve tanıma işlemi gerçekleşir [Yılmaz, 1999].

(32)

3. KARAKTER TANIMA ĐŞLEMĐNĐN AŞAMALARI

3.1. Ön işleme

Ön işleme algoritmaları, ihtiyaç duyulan verileri, ileriki aşamalar için uygun hale getirmeyi sağlar. Diğer bir deyişle, gerçek dünya ile tanıma motorları arasındaki köprüyü sağlar. Şekil 3.1’de ön işlemenin temel aşamaları görülmektedir.

Şekil 3.1. Ön işlemenin temel aşamaları

3.1.1. Tarama

Tarama gerçek nesnelerin bilgisayarların anlayabileceği forma dönüştürülmesi işlemidir. Çevrimdışı el yazısı karakter tanıma işleminde, tarayıcılar, bu işlem için en çok kullanılan araçlardır.

Tarayıcılar bir çok formatta görüntü üretebilirler. Bunlardan en çok kullanılanı BMP formatıdır. BMP dosyaları iki ana parçadan oluşur. Birincisi başlık kısmıdır.

Tarama Đkili seviyeye indirgeme Dilimleme Normalleştirme Đnceltme Görüntü Đkili görüntü Karakter Đleriki aşamalar için hazır veri Doküman

(33)

Başlık; genişlik, yükseklik, piksel görüntü derinliği, her bir pikseldeki bit sayısı ve piksel bilgisi için işaretçi gibi, görüntü hakkında gerekli olan bazı bilgileri içerir [Umbaugh, 1998]. Gerçek piksel bilgisi birinci parçadan sonra başlar. Her bir pikselin kırmızı, yeşil, mavi (RGB) değeri vardır. Bu değerler o pikselin rengini belirler. BMP dosyaları 24 bittir; kırmızı için 8 bit, yeşil için 8 bit ve mavi için 8 bit kullanılır. Toplam 24 bitlik RGB değeri tek bir pikseli temsil eder.

3.1.2. Đkili seviyeye indirgeme

Đkili seviyeye indirgeme, gerçek görüntünün gri seviyeye indirgenmesi ile ilgilidir. Đkili seviyeye indirgenen görüntü, bilgi karmaşıklığını azaltmak için bazı bilgilerin budanmasına rağmen, nesnenin şekli, pozisyonu ve piksel sayısı gibi gerekli bilgileri içerir.

Bir RGB görüntüden ikili seviyede bir görüntü elde etmek için iki temel aşama vardır. Birincisi, 8 bitlik kırmızı, yeşil ve kırmızı değerleri kullanılarak, her bir pikselin ortalama gri değeri hesaplanır.

Gri (i, j) = 0,299 * k(i, j) + 0,587 * y(i, j) + 0,114 * m(i, j) (3.1)

Burada, i satır numarasıdır, j ise sütun numarasıdır; k, kırmızı değeri; y, yeşil değeri, m ise mavi değerini gösterir. Gri ise ilgili pikselin gri değeridir.

Đkinci aşamada, gri seviyesine indirgenmiş görüntüye bir eşikleme işlemi uygulanır. En çok kullanılan yöntem, tek bir eşik değeri belirlemektir. Bu eşik değerinin altındaki bütün pikseller siyah (0), üstündeki bütün pikseller beyaz (1) olarak sınıflandırılır. Đkileştirme işleminde doğru bir eşik değeri belirlemek çok önemlidir. Bu değer, görüntünün ortalama gri değeri kullanılarak hesaplanabildiği gibi kullanıcı tarafından da belirlenebilir.

Şekil 3.2’de görüldüğü gibi eşikleme işlemi bir görüntü üzerine uygulanır. Resimdeki her bir pikselin Kırmızı, Yeşil, Mavi (RGB) değerleri alınır. Bu değerler eşik

(34)

seviyesinin altındaysa siyah, değilse beyaz kabul edilir. Böylece resim iki renk ile ifade edilir. Eşik değeri küçük seçilirse bilgi kaybı olur ve faydalı noktalar da silinir. Eğer eşik değeri büyük seçilirse fazla gürültü meydana gelir ve gereksiz siyah noktalar karakter tanıma sisteminin işini zorlaştırır. Eşik seviyesi uygun seçildiğinde bilgi kaybı olmamakla birlikte lüzumsuz noktalar da meydana gelmez [Kharma, 1999].

Şekil 3.2. Đkili seviyeye indirgeme örnekleri

3.1.3. Gürültü Temizleme

Elde edilen ikili düzen görüntüye yansıyan gürültülerin giderilmesi, sonraki işlem adımlarına olumlu katkı sağlaması bakımından önem kazanmaktadır. Çoğunlukla gürültülerin bir kısmı, kağıt yüzeyin detaylı görünümünde var olabilen küçük lekelerden, diğer kısmı ise kalem hataları sonucu oluşan çiziklerden meydana gelmektedir. Đlk gruba ait görüntüler daha çok, piksel serpintisi şeklinde beliren tuz-biber gürültüsünü oluşturmaktadır. Bu gürültü biçimi artan algılama çözünürlüğü ile birlikte, piksel grupları şeklinde de görüntüye yansıyabilmektedir. Kalem hataları sonucu oluşan ve karaktere ait olmayan nokta veya çizikler ise, öncekine oranla genellikle daha geniş çaplı piksel grupları biçiminde ortaya çıkmaktadır.

Gürültü piksellerinin giderilmesi amacıyla kullanılan yöntemlerden birisi 5x5 boyutlarında bir filtre elemanı kullanmaktır. Maskeleme yöntemi ile gerçekleştirilen

(35)

filtreleme işleminde 5x5 maskeleme elemanı, karakter alanı içerisindeki bütün piksel noktalarına uygulanır [Pratt, 1991]. Maske eleman değerleri 1 olarak seçilir. Komşuluk sayısı eşik değerinin altında olan piksellerin silinmesi sonucu gürültüyü oluşturan pikseller silinmektedir. Şekil 3.3’te gürültülü bir yazı görüntüsünün üzerinde filtreleme işleminin sonucu görülmektedir.

a) b)

Şekil 3.3. Gürültü temizleme örneği. a) Orjinal resim b) Gürültüden temizlenmiş resim

Filtreleme öncesi piksel değeri (p) ve işlem sonunda karar verilen piksel değeri (p') ile temsil edilirse filtreleme işlemi aşağıdaki bağıntılarla tanımlanabilir:

p = 1 ise ; p = 0 ise ; 0,

= 24 1 i i p < t1 1,

= 24 1 i i p < t2 p' = p' = (3.2) 1, diğer 0, diğer (t1, t2 : eşik değerleri; t1=10, t2=13)

Filtreleme işlemi ile birlikte istenmeyen artık piksel veya piksel grupları temizlenirken, aynı zamanda karakter içerisinde yer alan küçük piksel boşlukları da doldurulmaktadır. Bu etki aynı zamanda, karaktere ait fakat karakter ile bağlantısı

(36)

kopuk görünen yakın piksel gruplarının, karakter gövdesine bağlanarak onarılmasını da sağlar. Ayrıca bu işlemlerin doğal sonucu olarak, karakter şeklinin keskin geçişli kenar noktaları doldurma/silme işlemleri sonucu göreceli olarak daha yumuşak geçişli bir forma indirgenmektedir [Çelik, 1999].

Gürültü temizlemek amacıyla kullanılan başka bir yöntem ise 3x3’lük veya 4x4’lük şablonlar kullanmaktır. Bu şablonlar kullanılarak gereksiz noktalar silinir. Bu şablonlardaki “0” beyaz pikseli gösterir, “X” ise siyah pikseli gösterir. Buna göre, resimdeki her bir piksel üzerinde 3x3’lük şablon gezdirilir ve bu şartları sağlayan siyah piksel silinir. Diğer taraftan her bir 4 piksel üzerinde 4x4’lük şablon gezdirilir ve bu şablon ile eşleşen siyah pikseller silinir. Şekil 3.5’te, gürültülü bir yazı görüntüsü üzerinde yapılan gürültü temizleme işlemi görülmektedir.

Şekil 3.4. 3x3’lük ve 4x4’lük şablonlar

Şekil 3.5. Gürültü temizleme örneği a) Orjinal resim b) Gürültüden temizlenmiş resim a)

(37)

3.1.4. Satırların ve Karakterlerin Ayrıştırılması

Karakterlerin çerçevelenmesi için ilk önce verilen metnin satırlara ayrılması gerekmektedir. Dökümanın yalnızca tek bir sütun metin içerdiği ve eğimsiz bir şekilde ikileştirilmiş biçime dönüştürüldüğü varsayılır. Bir diğer varsayım ise karakterlerin birbirinden ayrık olmalarıdır. Satırların belirlenmesi için döküman görüntüsünün dikey başlangıç noktasından başlamak üzere soldan sağa her bir yatay piksel satırı taranır. Đlk siyah piksele rastlanılan piksel satırı metin satırının başlangıcı (satırbaşı) kabul edilir. Bu aşamadan sonra gelen ilk piksel içermeyen piksel satırı, metin satırının kapsadığı yatay piksel satırını yani metin satırının yüksekliğini belirler. Ayrılan metin satırının Türkçe’de rastlanan üzeri noktalı karakterlerin (Đ, Ö, Ü, Ğ) üst kısmını imha etmek ihtimali vardır. Bu sebeple ikinci bir metin satırı anlatılan yöntemle tespit edilir. Bu iki satırın yükseklik oranları ve birbirinden uzaklıklarının ikinci satıra oranı dikkate alınarak, ilk tespit edilen satırın üzeri noktalı karakterlere ait olup olmadığı araştırılır. Satırların tek bir satır haline dönüşebilmesi için şu şartlar sağlanmalıdır:

• Đki satır arasındaki uzaklığın ikinci satıra oranı 1/5’e eşit ya da küçük olmalıdır.

• Đlk satırın piksel sayısının ikinci satırın piksel sayısına oranı 1/5’e eşit ya da küçük olmalıdır.

Eğer bu şartlar sağlanmazsa, ilk satır, karakter ayırma modülüne gönderilip, ikinci satır sonraki satırla birleşme ihtimaline karşın tutulur. Şartlar sağlanırsa, satırlar birleştirilip karakter ayırma modülüne gönderilir. Şekil 3.6’da bazı örnek metin satırlarının çizgilerle ayrılmış hali görülmektedir.

Şekil 3.6. Örnek satırların satırbaşı ve satır sonları

satırbaşı

satırbaşı satırsonu

(38)

Karakterlerin çerçevelenmesinde ise satırın başlangıç ve son pikselleri arasında yatay başlangıç noktasından (x=0) başlanarak dikey doğrultuda tarama yapılır. Satır belirlemeye benzer şekilde, rastlanan ilk siyah piksel içeren sütun karakterin sol başlangıcı kabul edilir. Bu sütundan sonra rastlanan ilk siyah piksel içermeyen sütun ise karakterin sonu kabul edilir. Böylece karakter sol ve sağ kenarından hiç boşluğu olmayan bir çerçevenin içine alınarak karakterin eni belirlenmiş olur.

Bir sonraki, aşamada, çerçeve aşağıdan ve yukarıdan daraltılır. Çünkü, karakter tüm bir satırın yüksekliğinde olmayabilir. Satır hem üzeri noktalı (Đ,Ö gibi), hem de kuyruklu (ç,g,j gibi) karakterler içerebileceği için, önce üstten, ilk siyah piksel içeren piksel satırına ulaşıncaya kadar çerçeve daraltılır. Aynı şekilde aşağıdan yukarıya doğru da yatay tarama yapılarak ilk siyah piksel içeren piksel satırına kadar çerçeve yukarıya çekilir. Böylece karakterin çerçeve kenarlarında siyah piksel içermeyen satır veya sütun kalmayacaktır. Karakterin boyu çerçevenin üst ve alt sınırları arasındaki yatay piksel satır sayısıdır. Şekil 3.7’de çerçevelenmiş bir karakter görüntüsü örneği sunulmuştur.

Şekil 3.7. Örnek çerçevelenmiş karakter görüntüsü

El yazısı örneklerinde satır ayıklama işlemi yukarıdaki metotla yapıldığında hatalar meydana gelebilir. Çünkü satırların eğimli olma durumu söz konusudur. Yukarıdaki metot yazı örneğini yatay doğrultuda tarar ve piksel içermeyen bir piksel satırı arar. Fakat bazen iki satır arasında, her bir piksel satırında, siyah pikseller bulunabilir. Dolayısıyla bu satırlar fark edilmez ve iki satır tek bir satır olarak alınır.

Bunu önlemek için histogramdan faydalanılır. Giriş satırlarının yatay histogramları alınır. Bunu yaparken satırlar yatay doğrultuda taranır ve her bir piksel

en

(39)

satırındaki siyah piksel sayısı belirlenir. Bu siyah piksel sayısı histogramın o piksel satırındaki değerini verir.

Daha sonra histogram üzerinde, dikey doğrultuda bir eşik seviyesi belirlenir. Bu eşik seviyesi üzerinde tarama yapılır. Eşik seviyesini geçen tepeler belirlenir. Bu tepelerin arasındaki boşlukların orta noktalarından yatay çizgiler çizilir. Bu çizgiler iki satırı ayıran çizgilerdir. Şekil 3.8’de histogram grafiği kullanılarak yapılan bir satır ayıklama örneği gösterilmiştir.

Şekil 3.8. Histogram ile satır ayıklama örneği

Satırlar ayıklandıktan sonra harflerin ayıklanması gerekir. Fakat el yazılarında genellikle harfler bitişik yazıldığından dolayı birinci metot burada işe yaramayacaktır. Dolayısıyla harfler başka yöntemlerle ayrıştırılır.

Kelimelerin ayrıştırılması için eşik değeri belirlenir. Bu değer iki kelime arasındaki muhtemel boşluk büyüklüğüdür. Her bir satır dikey doğrultuda taranır. Geçilen boş piksel kolonu sayısı, eşik seviyesini geçerse bunun iki kelime arasındaki boşluk olduğuna karar verilir. Böylece kelimeler ayıklanmış olur ve bu kelimeler, harf ayrıştırma algoritmalarına sunulur [Nabiyev, 2003]. Şekil 3.9’da kelimelerin ayrıştırılması örneği gösterilmektedir.

(40)

Şekil 3.9. Kelimelerin ayrıştırılması örneği

3.1.5. Boyut Normalleştirme

El yazısı karakterler çok farklı boyutlarda yazılabileceği için, ölçek farklılıkları düzenleyen bir normalleştirme işlemine ihtiyaç duyulur. Normalleştirme işlemi sonucu farklı boyutlardaki karakterler, öngörülen boyutlardaki sabit çerçeve içerisine tam olarak yerleşecek şekilde yeniden düzenlenir [Li, 1997]. Bu uyarlama, farklı karakterlerden çıkarılan özellik bilgileri arasındaki ilişkilerin korunmasını sağlar. Şekil 3.10’da örnek bir normalleştirme işlemi görülmektedir.

(a) (b)

Şekil 3.10. Boyut normalleştirme, (a) Orijinal karakter görüntüsü, (b) Normalleştirilmiş karakter

3.1.6. Meyil-Eğim düzeltme

El yazısı karakter tanıma uygulamalarında, meyil ve eğim düzeltme önemli bir işlemdir. Meyil; ana hattın yatay yöndeki sapmasıdır (Şekil 3.11). Eğim ise dikeye yakın çizgilerin ortalamasının dikey doğrultudaki sapmasıdır (Şekil 3.12).

(41)

Şekil 3.11. Kelime örneği Şekil 3.12. Kelime örneği a) Orjinal resim a) Orjinal resim

b) Meyili düzeltmiş resim b) Eğimi düzeltmiş resim

Bu işlem için kullanılan iki metot vardır. Birincisinde, önce meyil açısı sonra eğim açısı düzeltilir. Đkincisinde ise önce eğim, daha sonra meyil açısı düzeltilir [Slavik ve Govindaraju, 2001].

Ana hattın yatay çizgiden α kadar saptığı ve dikeye yakın çizgilerin ortalamasının da dikey eksenden β kadar saptığı bir kelime farz edilsin (Şekil 3.13). Ana hattın, koordinat sisteminin orijini ile kesiştiği farz edilsin.

1. Metot

Meyil düzeltmek için, (x,y) koordinat değerlerine sahip bir nokta, bütün resmin orijin etrafında -α açısıyla döndürülmesinde sonra (x',y ) değerlerine sahip olur. '

= (3.3)

-β açısı ile eğim düzeltme işleminden sonra noktanın yeni koordinatları şöyle olur.

= = T (3.4)

döndürme ve eğim düzeltme işleminin bileşim matrisi :

T = (3.5) x' y' cos α sin α -sin α cos α x y x'' y'' 1 -tan β 0 1 x y x' y'

cosα + sinα tanβ sinα – cosα tanβ - sinα cosα a)

b)

a)

(42)

Şekil 3.10’da görüldüğü gibi γ, dikeye yakın çizgilerin ortalamasının dikey eksenden sapma açısıdır (γ = β- α).

tanβ – tanα = (1 + tanα tanβ)tan(β-α) (3.6.)

= (1+ tanα tanβ)tan γ

(3.6.) formülü kullanılarak T şöyle hesaplanır :

T = cosα

= cosα = DT.R ,

R = (3.7)

R, yatay doğrultuda – γ açısı ile, dikey doğrultuda – α açısı ile eş zamanlı eğim ve meyil düzeltme işlemi için bir matristir.

DT = (3.8.)

DT , resmi y yönünde daraltan ve x yönünde genişleten (veya cosα+sinα tanβ değerine göre daraltan) bir diyagonal matristir. T’nin determinantı 1’dir. Bu yüzden resmin alanı korunmuştur.

1 + tanα tanβ tanα – tanβ - tanα 1 1 + tanα tanβ 0 0 1 1 - tanγ - tanα 1 1 - tanγ - tanα 1

cosα + sinα tanβ 0

(43)

2. Metot

(x, y) koordinat değerlerine sahip bir nokta, - γ açısıyla eğim düzeltme işleminden sonra (x , ' y ) değerlerine sahip olur. '

= (3.9)

ω açısıyla meyil düzeltme işleminden sonra ise aşağıdaki değerlere sahip olur.

= (3.10)

Şekil 3.15’te Birinci ve ikinci metot ile yapılan eğim-meyil düzeltme işlemleri sonucunda üretilen kelime çerçevesinin boyutları gösterilmektedir.

Şekil 3.13. Birinci metot Şekil 3.14. Đkinci metot x' y' 1 - tanγ 0 1 x y x'' y'' 1 0 -tanω 1 x' y'

(44)

a) b)

Şekil 3.15. a) Birinci Metot b) Đkinci Metot

Kelimenin meyil açısının hesaplanması

Kelime görüntüsü, -40 ile 40 arasında 10’ar derece aralıklarla kendi etrafında döndürülür. Her bir döndürme sonucunda elde edilen kelime görüntüsünün yükseklik değerleri karşılaştırılır. En küçük yüksekliği netice veren döndürme açısı, kelimenin muhtemel meyil açısıdır.

Kelimenin eğim açısının hesaplanması

Kelime görüntüsü üzerinde, -40 ile 40 arasında 10’ar derece aralıklarla eğim düzeltme işlemi uygulanır. Her bir eğim düzeltme işlemi sonucunda elde edilen kelime görüntüsünün genişlik değerleri karşılaştırılır. En küçük genişliği üreten eğim düzeltme açısı, kelimenin muhtemel eğim açısıdır. Şekil 3.16’da eğim ve meyil düzeltme örnekleri gösterilmiştir.

(45)

a) b) c) Şekil 3.16. a) Eğim Düzeltme b) Meyil Düzeltme c) Meyil + Eğim Düzeltme

3.1.7. Đnceltme

Bu aşamadaki amaç, karakterin bir piksel kalınlığındaki iskeletinin üretilmesidir. Eğer karakterin özellik setinin çıkarılması gerekiyorsa inceltmeye ihtiyaç duyulur. Đnceltme algoritmalarında aranan özellikler çatallanma olmaması, bir piksel kalınlık elde edilmesi, bağların muhafaza edilmesi, bilgi kaybı olmaması gibi durumlardır.

Son yıllarda bir çok inceltme algoritması geliştirilmiştir. Bazı klasik algoritmalar güzel sonuçlar elde etmiştir ama hâlâ eksiklikleri mevcuttur. Mesela bazı algoritmalar imajın bağlarını muhafaza edememektedir. Datta’nın algoritmasında inceltmenin bazı temel özellikleri sağlanır [Datta ve Parui, 1994]. Ama çok geçişli tekrarlama kullanılmaktadır ve tam paralel işleyen bir algoritma değil. Han 5x5 maskesi bilgisine dayalı tam paralel işleyen bir algoritma önerir [Han vd., 1997]. Fakat Han’ın algoritması çok zaman kullanmaktadır. Ek olarak bütün bu algoritmalar bazı özel durumlarda verimli değillerdir.

Huang’ın algoritmasında bağlanabilirlik problemini çözmek için bazı yeni kurallar ve bilgi kaybını önlemek için şekil bilgisi kullanılır. Bu algoritma ile bir-piksel kalınlık ve bağlanabilirlik elde edilir. Đskelet orta eksene yakın konumdadır. Böylece imajın topolojisi muhafaza edilir. Đkili resim siyah ve beyaz piksellerle temsil edilir. 1 siyah pikseli, 0 ise beyaz pikseli gösterir.

Referanslar

Benzer Belgeler

Bu Döküman Elif Aydın

Ahmet Hamdi Tanpınar için metafor kullanımı, yani hep bir şeyi başka bir şey gibi görme tutumu bir eğilim ya da tercih değil, neredeyse Tanpınar’ın olma

Alınan yolu bulmak için alınan yolu kapat gerisi formüldür :?. Sürati bulmak için sürati kapat

Ama içeriden ölüm, yani kişinin bilinçli olarak algılanan kendi ölümü hiç kimse için var olmaz: ne ölen kişi için ne de ötekiler için vardır;

Aklından, beyninden yana olan Faik, kendisini bir uyarcaya dönüştüren (iradesi dışında kan pompalayıp yaşamını sürdürmesi nedeniyle) yüreğinin

The framework that has been used in this study consists of the textbook evaluation criteria of Ansary and Babaii (2009) and Tucker (1975) with some modifications and adaptations

Ayrıca, Ortaoyunu ile Komedi Dükkânı’nda dile dayalı gülmece unsurları (söz komiği), sözcük oyunları, belirsizlikler ve kabalık stratejileri

The Proceedings of West Coast Conference in formal linguistics (WCCFL). Studies in Turkish