Kabuk zincir koduyla şekil tanıma
Shape recognition with shell chain code
Yazar: HAYDAR TUNA
Danışman: PROF. DR. RECEP DEMİRCİ
Gazi Üniversitesi / Bilişim Enstitüsü / Elektronik-Bilgisayar Eğitimi Ana Bilim Dalı
Derece: Doktora, 2019
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Bilgisayar ortamında şekil tanıma nesnelerin görüntüdeki diğer nesnelerden ayırt edilmesiyle başlayan bir süreçtir. Arka plandan ayrılan nesnelerden daha sonra şekil temsil yöntemleri kullanılarak özellik vektörleri çıkartılır. Şekil temsil yöntemleri sınır ve bölge tabanlı olarak ikiye ayrılırlar. Sınır tabanlı şekil temsil yöntemlerinden biri olan zincir kodları pikseller arasındaki geçişleri temel alan bir yaklaşımdır. Normal şartlarda, zincir kodlarının öteleme, döndürme ve ölçeklenmeden bağımsız olması beklenir. Ancak sınır noktalarda meydana gelen gürültülerden ve değişimden dolayı zincir kodlarının içerikleri de değişir. Örneğin bir şekil döndürüldüğünde aynı başlangıç noktasından alınan zincir kod içerikleri farklı olacaktır. Bununla birlikte zincir kodları normalize edilerek başlangıç noktasından bağımsız hale getirilebilirler. Ölçeklenen şekillerde ise zincir kodlarının histogramları hesaplanarak sabit uzunlukta özellik vektörleri oluşturmak mümkündür. Bu çalışmada sınır noktalardaki kabuk etiketlerini temel alan öteleme ve döndürmeye dayanıklı yeni bir zincir kod yaklaşımı önerilmiştir. Geliştirilen yaklaşımda kabuk etiketleri sınır noktaları ile ağırlık merkezi arasındaki Öklid uzaklıklarının kuantalanmasıyla elde edilmiştir. İlgili yaklaşım sembol sayısı esnek olup, diğer zincir kodlarındaki gibi sabit değildir. Ayrıca önerilen zincir kodunun histogramını kullanarak ölçeklenmeden bağımsız özellik vektörü oluşturmak mümkündür. Önerilen zincir kodunun Levenshtein mesafesi ve histogramı kullanılarak ölçeklenme, döndürme ve ayırt edicilik deneyleri gerçekleştirilmiştir. Deneylerde Kimia 99 ve Kimia 216 şekil veri tabanları kullanılmıştır. Tüm deneyler sekiz yönlü Freeman (FR8) zincir kodunun Levenshtein mesafesi ve histogramıyla da tekrar edilmiş ve karşılaştırmalar yapılmıştır. FR8 zincir kodu ve Levenshtein mesafesi kullanılarak yapılan döndürme deneylerinde Kimia 99 veri tabanında %25'lik ve Kimia 216 veri tabanında  %37'lik performans düşüşü olur iken, önerilen kabuk zincir kodu (8 kabuk) ile yapılan deneylerde ciddi bir değişim olmamıştır. Ayrıca zincir kod histogramı kullanılarak döndürme deneyleri yapılmıştır.  FR8 histogramı ile Kimia 99 veri tabanında %42'lik ve Kimia 216 veri tabanında  %52'lik performans düşüşü olur iken, önerilen kabuk zincir kodu (8 kabuk) ile yapılan deneylerde %2'lik bir değişim olmuştur.

Abstract:
In the computer environment, shape recognition is a process which begins with isolating objects from others in a digital image. Feature vectors are then extracted from separated objects using shape representation methods. These methods are divided into two categories: contour-based and region-based. Chain code, which is one of the contour-based shape representation methods is an approach based on transitions between pixels. Under normal conditions, the chain codes are expected not to be sensitive for translation, rotation, and scaling. However, the contents of the chain codes change because of the noise and changes on the boundary points. For example, when a shape is rotated, the contents of the chain code produced with the same starting point will be different. Nevertheless, chain codes could be normalized to be invariant for the starting point.  In addition, the lengths of the chain codes increase in scaled shapes.  However, by calculating histograms of the chain codes, it is possible to generate fixed-length feature vectors for scaled shapes. In this study, a new chain code approach which is invariant to translation and rotation based on shell labels at contour points has been proposed. Shell labels were determined by quantization of Euclidean distances between boundary points and the center of gravity of shapes. In proposed approach, the number of symbols is flexible and not constant as in other chain codes. Additionally, it is possible to generate a scale-independent feature vector using the histogram of the shell chain code developed. Scaling, rotation and discrimination tests were performed using Levenshtein distance and histogram of the proposed chain code. Kimia 99 and Kimia 216 shape databases were used in the experiments. All experiments were repeated with Levenshtein distance and histogram of the FR8 chain code and comparisons were made. In the experiments conducted by using FR8 chain code and Levenshtein distance, there was a 25% decrease in performance in Kimia 99 database and 37% in Kimia 216 database with rotation, while there was no significant change in shell chain code (8 shells) experiments. In addition, in experiments performed by using FR8 chain code histogram, there was a 42% decrease in performance in Kimia 99 database and a 52% in Kimia 216 database, whereas there was a 2% change in experiments with the proposed shell chain code histogram (8 shells).