TüRKÇe doküman tanima sistemlerinde karşilaşilan karmaşik metin satirlarinin tespit edilmesi problemiNİ ortadan kaldiran bir göRÜNTÜ analiZİ yaklaşimi hasan karal, Emre uzun
TÜRKÇE DOKÜMAN TANIMA SİSTEMLERİNDE KARŞILAŞILAN KARMAŞIK METİN SATIRLARININ TESPİT EDİLMESİ PROBLEMİNİ ORTADAN KALDIRAN BİR GÖRÜNTÜ ANALİZİ YAKLAŞIMI
Hasan KARAL, Emre UZUN
Karadeniz Teknik Üniversitesi
Fatih Eğitim Fakültesi, Bilgisayar ve Öğretim Teknolojileri Eğitimi Bölümü
hasankaral@ktu.edu.tr, euzun61@hotmail.com
ÖZET Günümüzde yazılı dokümanların bilgisayar ortamında analiz edilmesi ve içeriğindeki metin bilgisinin elde belirlenmesi oldukça geniş bir kullanım alanına sahiptir. Bu tür sistemlere Doküman Tanıma Sistemleri adı verilmektedir. Bu amaçla kullanılan yazılım yöntemleri, her türden yazılı dokümana uygulanabilirlik açısından sınırlılıklar taşımaktadır. Başlıca sorun, doküman resmi üzerindeki metin olarak yorumlanacak kısımların uygun biçimde elde edilememesinden veya metnin orijinalde karmaşık olmasından kaynaklanır. Bu çalışmada, geliştirilen yorumlama tekniği sayesinde, görüntü üzerindeki metinde, karmaşık dahi olsa kendisini oluşturan satırlar tespit edilebilmiş ve yine tespit edilen her metin satırı görüntüsü, üzerinde uygulanan istatistiki hesaplamalar neticesinde kelime ve karakterlere doğru biçimde ayrılabilmiştir. Dokümanlar üzerindeki işlemleri ve sonuçları gerçekleştiren yazılım tarafımızdan C++ Builder yazılım geliştirme ortamı kullanılarak tasarlanmış ve uygulanmıştır. Yazılım, üzerine inşa edilecek ve tespit edilen karakterler üzerinde etkili bir özellik çıkartma yöntemi kullanarak, karakterleri, resimden analiz edilen metin, satır, cümle ve kelime yapısına uygun biçimde düzenlenebilir sayısal metne dönüştürecek bir yapay sinir ağı sistemi, sonraki adımda gerçekleştirilecektir. Çalışmamızda doküman resminin analiz ve görsel biçim değerlendirmesi yapılmış, karşılaşılan problemler geliştirilen algoritmalar ile çözülmüş ve bu işlem başarı ile gerçekleştirilmiştir. ABSTRACT Analyzing written document having a wide range of use at computer environment and obtaining information on it is a needed technology nowadays. We say these systems Document Recognition System. Software development methods that are used for this purpose have limited properties in terms of usability.
Main problem is related with not to interpret parts of the document that has needed characters and having complex text document. With the help of interpretation technique that was developed at this study, on the documented text, lines were determined although they are complex and every determined documented text line were separated to word and characters with the help of statistical calculations. Software that makes processes on document and interpreting the results was developed and applied using C++ Builder software development environment. Adding new features to existing software, an Artificial Neural Network converting text on the picture, lines and sentences to digital text will be developed. At this study, documented picture were analyzed and visual concept of the documented picture were evaluated, problems were solved with the developed algorithms and process is successfully completed. Anahtar Kelimeler:Doküman tanıma sistemleri, görüntü işleme, sinyal işleme, yapay sinir ağları
1. GİRİŞ Doküman tanıma konusunda dünya genelinde yoğun bir akademik çalışma vardır. Bu çalışmalar daha ziyade el yazması karakter tanıma üzerinedir [1,2]. Genel olarak doküman tanıma sistemleri, günümüzde birçok alanda geniş kullanıma hitap eden teknolojiler arasındadır. Fakat bu amaçla geliştirilen ve kullanılan yazılımlar çoğunlukla amaca hizmet etmekle beraber, karşı karşıya kaldıkları bazı doküman biçimlerine cevap veremeyebilmektedir [3,4,5]. Bu amaçla, karmaşık bir satır yapısına sahip olsa bile, analiz edilecek doküman resimleri üzerine geliştirilen bir yaklaşımla, metin başarılı bir şekilde elde edilebilmektedir. Çalışmamızda tarayıcı yardımı ile elde edilen karmaşık yapıda satır biçimine sahip bir doküman resmi üzerinden, analiz, tespit ve belirleme işlemleri gerçekleştirilmiştir. Uygulanan işlemler sırası ile açıklanacak ve örnek program görüntüleri verilecektir.
İlk adımda karmaşık yapıda satır biçimine sahip bir doküman resmi, renk derinliği üzerinden 8 bit gri ölçekleme ile işlenmektedir. Yeterli parlaklık değeri ortalaması yardımıyla, doküman resmi eşikleme işlemine tabi tutulmuştur. Daha sonra resim üzerine uygulanan filtre yardımı ile eşikleme işlemi ile ortadan kalkmayan siyah parlaklığa sahip görüntü bozulmaları ortadan kaldırılmıştır. Doküman görüntüsü üzerindeki karmaşık satır kısımları geliştirilen yaklaşımla tespit edilmiş, açısal analizden geçirilmiş ve doğrusal satır görüntülerinden oluşan ve daha basit görsel analizin uygulanmasına izin veren yeni doküman görüntüsü oluşturulmuştur. Yatay ve dikey özellikteki basit satır analizleri yardımı ile bu resim üzerindeki karakterler, aynı anda işletilen istatistiki hesaplamalar yardımı ile, sahip oldukları cümle ve kelime yapıları sinir ağı sistemine sunularak tanıma işleminde kullanılacak biçimde başarı ile elde edilmiştir.
2. DOKÜMAN RESMİ TEMEL GÖRÜNTÜ ANALİZİ Çalışma boyunca üzerinde işlem yapılmış olan ve geliştirilen görüntü analizi yöntem ve algoritmaların işlerliğinin üzerinde test edilmiş olduğu karmaşık satır yapısına sahip doküman resmi Şekil 1’de görülmektedir.
Şekil 1. Karmaşık satır yapısına sahip görüntü analizi doküman resmi
İlk gerçekleştirilecek işlem, doküman resmi üzerindeki 8 bit gri ölçekleme dönüşümüdür. Böylelikle resim, üzerinde daha hızlı işlem yapılabilecek düzeye indirgenir. Daha sonra gri tonlu parlaklık seviyesine sahip olan piksellerin eşikleme işlemine tabi tutulması ile, doküman resmi siyah/beyaz biçimine dönüştürülür ki, böylelikle ikili veriler (1-0) üzerinde çok daha hızlı bir şekilde yapılan işlemlere cevap verir. Ancak bu işlemler sonucunda metin görüntüsü üzerinde kalan ve analiz sırasında yazılımı yanıltma olasılığı olan anlamsız bozulmaları gidermek gerekmektedir. Bu amaçla bir filtre uygulanmıştır.
Şekil 2 bu başlangıç işlemleri sonucunda doküman görüntüsünün son durumunu göstermektedir.
Şekil 2. Başlangıç düzeyi temel görüntü analizi
3. SATIR GÖRÜNTÜLERİNİN ŞEKİL HALİNE DÖNÜŞTÜRÜLMESİ VE KOORDİNAT TESPİTİ Sırada doküman resmi üzerindeki satır görüntülerinin tespit edilmesi ve resimden alınması işlemi vardır. Sırası ile tespit edilerek alınan satır görüntülerinin her biri için doğrusal analize hazırlık olması nedeniyle açısal analiz işlemi uygulanmıştır.
Uygulanan işlem biçimi şu şeklidedir. Satır görüntülerinin ayrı ayrı birbirine karışmadan tespit edilmesi için, her satırın kendi başına bir şekil oluşturması yaklaşımından başlamak şartıyla, satırlar yine görüntü işleme algoritmaları yardımı ile genişletilir. Kontrollü olarak gerçekleştirilen belirli bir orandaki genişletme işleminden sonra Şekil 3’te görüldüğü gibi, artık satırlar bilgisayar mantığına uygun şekilde karışmadan birbirinden görsel olarak ayrılmışlardır.
Şekil 3. Genişletme işlemi sonrasında karmaşık metin satırlarının görsel olarak ayrılması
Burada bir problem vardır. Uygulanan genişletme filtresi nedeniyle doküman resmi etrafında bir çerçeve oluşmuştur.
Fakat basit görüntü işleme yöntemleri ile bu çerçevenin ortadan kaldırılması kolaylıkla sağlanmıştır. Sapma ve bozulma göstermeden filtrenin görüntü üzerinde kaç kez uygulandığına bağlı olarak ortaya çıkan bu çerçevenin silinmesi sonucunda elde edilen dokuman görüntüsü Şekil 4’te görülmektedir.
Şekil 4. Çerçeveden bağımsız ve görsel olarak rahatlıkla birbirinden ayrılmış satır görüntülerini içeren doküman resmi
Sıra görüntü üzerindeki bu nesnelerin başlangıç ve bitiş koordinat aralıklarının tespit edilmesi ve bellekte hazır halde olan Şekil 2’deki görüntüden bu koordinat aralıklarının satır görüntüsü olarak elde edilmesi işlemlerindedir.
Şekil 4’teki doküman görüntüsü üzerindeki satır tespit yaklaşımı şu şekilde çalışmaktadır.
Yukarıdan aşağı ve soldan sağa olmak üzere resim üzerindeki siyah pikseller taranır. Anlamsız lekeler daha önceden temizlendiği için yazılımın tespit sırasında yanılması en aza indirilmiştir. İlk siyah piksel bulunduğunda, aynı zamanda ilk satırda tespit edilmiş demektir.
Bir noktasından yakalanan herhangi bir satır, tamamen siyah piksellerden oluştuğu için eğim açısı, eğim yönü, sol, sağ, üst ve alt sınır koordinatları bu çalışmada geliştirilen bir yöntemle başarılı bir şekilde tespit edilmiştir. Şekil 5 bu satır şekli koordinat analizini göstermektedir.
Sütun
H
Satır
Şekil 5. Tespit edilecek satır şeklinin eğim ve aksi eğim noktası koordinat analizi
Yukarıdan aşağıya tarama neticesinde en üst noktasından yakalanan bir satır şekli ile ilgili analiz ve karar mantığı şu şekildedir.
h = H / 2 + Satır ve Sütun değerlerinden sağa ve sola son beyaz bölgeye kadar çizilen dikmeler kullanılarak ilk orta noktanın bu dikmelere olan uzaklıkları Sağ Mesafe ve Sol Mesafe adları ile saklanır. Şekilden de anlaşılabileceği gibi satır şekli görüntüsü sola eğiktir. Bu nedenle Sol Mesafe olarak hesaplanan değer Sağ Mesafe değerinden daha büyük olacaktır. İşte geliştirilen bu yaklaşım ile satır görüntüsünün hangi yöne eğimli olduğu belirlenmiştir.
Şekildeki gibi sola eğik bir satır görüntüsünün, doküman resmi üzerindeki sağ sınır koordinatı;
Sağ Sınır Sütun Değeri = Sütun + Sağ Mesafe
Sağ Sınır Satır Değeri = Satır + h
Sağ sınır orta noktası bu yöntemle hesaplanır. Fakat Sağ üst ve sağ alt nokta koordinatları da yaklaşık olarak aşağıdaki formüller yardımıyla tespit edilir.
Sağ üst nokta sınır koordinatı (~) :
Sağ Sınır Satır Değeri-(h+20),
Sağ Sınır Sütun Değeri+10
Sağ alt nokta sınır koordinatı (~) :
Sağ Sınır Satır Değeri+(h+20),
Sağ Sınır Sütun Değeri+10
Sağ sınır nokta koordinatları belirlendikten sonra, eğimin sola olduğu bilgisinden yola çıkılarak, şekil sol tarafa doğru bu çalışmada geliştirilen tarama yöntemi ile kontrol edilecektir. Şekil 6 sola eğimli bir satır görüntüsü için Sol Sınır Koordinatının tespit edilme yöntemi açıklanmıştır.
Şekil 6. Tespit edilecek satır şeklinin eğim noktası koordinat analizi
Bulunan ilk orta noktadan sora her döngü değeri için h kadar aşağı ve beyaz piksel bulana kadar sola gitmek gerekir. Her defasında gidilen sol mesafe, ilk bulunan Sol Mesafe değerinin yarısından küçük olduğunda son kez sola gittik anlamına gelir ve son geldiğimiz sol alt orta nokta sınır koordinatı olarak bulunur. Sol alt ve sol üst koordinatları da yaklaşık olarak aşağıdaki formüller yardımıyla hesaplanır.
Sol üst nokta sınır koordinatı (~) :
Sol Sınır Satır Değeri-(h+20),
Sol Sınır Sütun Değeri-10
Sol alt nokta sınır koordinatı (~) :
Sol Sınır Satır Değeri+(h+20),
Sol Sınır Sütun Değeri-10
Bu çalışmada geliştirilen yaklaşım sayesinde, dört koordinat olarak hesaplanan satır görüntüsü, orijinal satırların bellekte tutulduğu doküman görüntüsünden alınır. Üzerinde çalışılan genişletilmiş satır şekil görüntülerinin bulunduğu resim üzerinden, koordinatları tespit edilen satır, orijinal görüntüsü elde edildikten sonra silinir. Ve yine başlangıçtaki soldan sağa ve yukarıdan aşağıya siyah piksel tarama yaklaşımı ile kalan diğer satır koordinatlarının tespit edilmesi ile işleme satırlar bitene kadar devam edilir. Eğim yönü sağ olduğu durumda ise algoritma benzer birkaç deşiklikle işlemi sağlıklı bir şekilde yerine getirecek biçime dönüşmüştür.
İşte bu yaklaşım ve yöntemler kullanılarak dinamik olarak oluşturulan listeye, koordinatı tespit edildikten sonra orijinal doküman resminden her elde edilen satır görüntüsünün eklenmesi ile açısal satır analizi işlemi için gerekli hazırlık yapılmış olur.
4. AÇISAL SATIR ANALİZİ VE DOKÜMAN RESMİNİN DOĞRUSAL ANALİZE HAZIR HALE GETİRİLMESİ Satırlar üzerinde açısal analiz şu biçimde gerçekleştirilir. Her satır resmi için, alttan yukarı, soldan sağa ve sağan sola tarama ve siyah piksel bulma mantığı işletilir. Satırın alt ilk temas noktası denge merkezi olarak kabul edilir ve sol, sağ yaklaşımlarda matematiksel olarak tespit edilen yine eğim yönü ve bu defa ek olarak eğim açısı yardımı ile satır görüntüsü eğim açısı kadar saat yönünde veya tersi yönde görüntü döndürme yöntemleri sayesinde düzgün hale getirilir.
X2
(Sağdan yaklaşma)
X1
X3
α
Y2
Y1
Y3
(Alttan yaklaşma)
(Soldan yaklaşma)
Şekil 7. Koordinatı genişletilmiş satır görüntülerinden tespit edilen ve orijinal doküman resminden satır biçiminde alınan ilk satır resmi
(Açısal analizden önce)
Şekil 8. Her satır için kayıtlı liste boyunca uygulanacak açısal satır analizi işleminden sonra satır görüntüsü
Satırın açısal analizi işlem mantığı, eğim açısı ve eğim yönü tespiti aşağıdaki biçimde açıklanabilir.
Eğer X3 sütun koordinatı, X1’e X2’den daha yakın ise satır sola eğimlidir denir ve dönme açısı saat yönünde;
α = ArcTan ( ( Y3 – Y2 ) / ( X2 – X3 ) )
biçiminde hesaplanır.
Eğer tabandan yaklaşan X3 sütün koordinatı, X2’ye X1’den daha yakın ise satır sağa eğimlidir denir ve dönme açısı saat yönünün tersi yönde;
α = ArcTan ( ( Y3 – Y1 ) / ( X3 – X1 ) )
biçiminde hesaplanır.
Sonuç olarak karmaşık satırlardan oluşan doküman görüntüsündeki metin Şekil 9’daki biçime dönüştürülmüştür.
Şekil 9. Karmaşık doküman satırlarının doğrusal resim-metin analizi için hazır hale getirilmesi
Yapılması gereken son işlem, Şekil 9’daki resim üzerinden doğrusal görüntü analizi yardımı ile satır resimlerinin teker teker elde edilmesidir. Yatay ve dikey olarak birbirinden rahatlıkla ayrılabilen satır ve karakterler elde edilir.
Burada dikkat edilmesi gereken nokta, satırlardaki kelime ayrımlarının tespit edilmesidir. Her satır için, karakterler arası ortalama boşluk miktarı hesaplanır. Muhtemel kelime ayrımları bu ortalama boşluk miktarından daha uzun olan yerlerdir.
Böylelikle doküman görüntüsünün işlenmesi ve anlamlı bir şekilde bölümlendirilmesi sağlanmış olur. Oluşturulan dinamik veri yapıları kullanılarak, görüntüden elde edilen karakterleri kelime ve cümle yapıları ile doğru bir şekilde ayrılmıştır.
5. SONUÇLAR Çalışmamızda ürettiğimiz yazılım şimdilik karmaşıklık düzeyi oldukça yüksek seviyeli dokümanların görsel analizine yapabilmektedir. Geliştirmeler devam etmektedir. Yazılıma eklenmesi olası yapay sinir ağı sistemi ile karakter tanıma işlemi rahatlıkla gerçekleştirilebilir. Şu an için, çalışmamızda sadece doküman tanıma sistemlerinin temelini teşkil eden görüntü analizi ve resim üzerindeki metnin tespiti konuları ele alınmıştır. Geliştirilen yeni yaklaşımlar ve yöntemler belirtilmeye çalışılmıştır.
KAYNAKLAR
Karal, H., 'Kestirim Öğrenmeli Bulanık Denetimli Otonom Taşıtlar İçin Doku Benzersizliği Kullanılarak Stabilize Yol Belirleme', Karadeniz Teknik Üniversitesi, Fen Bilimleri Enstitüsü, Haziran 2000.
Yazıcı, R., Karal, H., 'Determination of the Orientation of Cylindrical Bodies Buried in a Slab by the Use of Scattering Data', ELEKTRİK, vol.4, no. 1-2-3, 1996.
Wang, K., Kangas, J. A., Character Location In Scene Images From Digital Camera', The Journal of Pattern Recognition Society, no.36, March 2003, pp 2287-2299.
Ye, Q., Gao, W., Huang, Q., 'Automatic Text Segmentation From Complex Background', Institute of Computing Technology, Chinese Academy of Sciences, China.
Ishitani, Y., 'Document Image Analysis with Cooperative Interaction Between Layout Analysis And Logical Structure Analysis', Toshiba Corporation, Komukai Toshiba-cho, Saiwai-ku, Kawasaki, Japan.