Döküman İmajlarını Binarize Etme Yöntemleri

Not: İnternetim tatil dolayısıyla kötü olduğunda yazıda İmaj bulunmamaktadır.

Dökümanlar (Özellikle El Yazısı) diğer resimlerden farklı olarak değişen puntolar yazıların değişen kalınlıkları çeşitli renkteki yapılar klasik tek 1 değer yardımı ile binarize ettiğinizde veri kaybı çok büyük boyutlara ulaşabilmektedir. Örneğin Matlabın OTSU Thresholdu[2] bayağı bir veri kaybettirmektedir: Örnek olarak:

Görülmediği gibi El yazısı dökümanında bayağı problemli bir yapı ile karşılaşmaktayız.

Peki Bunu nasıl Aşacağız. Çalışmalar yapılmış bu konuda ve en bilinen yöntem olarak niblack[1] thresholding karşımıza çıkmıştır. Halen daha üzerinde çalışılan alan (Ancient İmage Binarization) alanında halen daha bir çok çalışma yapılmaktadır.

Matlab’da bir kardeşimiz implementasyonunu yapmış aslında oldukça kolay bir yöntem yerel ortalama ve standart sapma ile belirliyor 0 ve 1 olacağını yani direkt olarak belli bir yüzdenin 1 olmasını veya 0 olmasını garanti ediyor. Matlab implemantasyonunu şu linkten: https://www.mathworks.com/matlabcentral/fileexchange/40849-niblack-local-thresholding

Kodda verdiği örnek ile binarization işlemini yeniden yapar isek:

Görülmediği gibi çok daha iyi sonuçlar ile karşılaşmaktayız. Tabi parametre belirlemenin sıkıntılı bir işlem olması dolayısıyla kullanılırlılığı biraz daha zor olabilmektedir ama yine de zahmete değdiği söylenebilir.

1 Niblack, W (1986), An introduction to Digital Image Processing, Prentice-Hall.

2 https://en.wikipedia.org/wiki/Otsu%27s_method

Originally published at http://anilkaynr.wordpress.com on June 4, 2019.

Computer Engineer,Sociologist, CSE Master Student