Görüntü işleme ve yapay zeka yöntemleriyle sınır belirleme
Contour detection with image processing and artificial intelligence methods
Yazar: HAKAN ÜNAL
Danışman: PROF. DR. ZAFER ASLAN
İstanbul Aydın Üniversitesi / Lisansüstü Eğitim Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2021
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Derin öğrenme = Deep learning ; Makine öğrenmesi = Machine learning ; Sayısal görüntü işleme = Digital image processing ; Yapay zeka = Artificial intelligence

Özet:
Bu çalışma Görüntü İşleme ve Yapay Zekâ Yöntemleriyle Sınır Belirleme problemini ele almaktadır. Sınır belirleme probleminin çözülmesi nesne tanıma, nesne sayma, görüntünün belli bir bölümünün çıkarılması ya da sınırı belli nesnenin arkasına başka bir görüntü eklenmesi gibi işlemler için kullanılmaktadır. Görünü İşleme görüntüyü işlemenin bilgisayar ile yapılması olup, bilgisayarın görüntüyü görme şekline "Bilgisayarla Görü" denilmektedir. Yapay Zekâ kısaca insan beyninin taklit edilmesidir. Bu durumda insan beynini görüntüyü işleme için kullandığı gibi bilgisayar 'da Yapay Zekâ ile Görüntüyü İşleme için kullanılabilmektedir. Makine Öğrenmesi, insanın geçmiş deneyimlerden faydalanma yetisinin taklit edilmesidir. Derin Öğrenme Yapay Sinir Ağları gibi Yapay Zekâ yöntemlerinin daha derin hali olarak kabul edilmektedir. Bu çalışmada kullanılan görseller görüntü işleme çalışmalarında sıkça kullanılan Cameraman ve Lenna görselleridir. Yöntem olarak Canny, Auto Canny, Sobel, Laplacian, Prewitt, Scharr, Holistically-Nested Edge Detection ve Richer Convolutional Features for Edge Detection yöntemleri kullanılmıştır. Yöntem uygulanırken Ortalama, Gaussian ve Medyan filtrelemeleri kullanılmış olup bu filtreler ile daha keskin sınırlar elde edilmeye çalışılmıştır. Programlama dili olarak Python dili kullanılmış olup derleyici olarak PyCharm derleyicisi tercih edilmiştir. Tezin uygulama bölümünde, Python 3.8.5 ve PyCharm 2021.1 versiyonları kullanılmıştır. Python ile beraber görüntü işleme kütüphanesi olarak OpenCV ve matematiksel işlevler için NumPy kütüphaneleri kullanılmıştır. Holistically-Nested Edge Detection yönteminde önceden eğitilmiş model için Caffe çatısı uygulanmıştır. Richer Convolutional Features for Edge Detection yönteminde PyTorch kütüphanesi kullanılmıştır. Versiyon olarak OpenCV 4.0.1 ve NumPy 1.19.2 versiyonları kullanılmıştır. Python ile yapılan uygulamanın tasarımı için PyQt5 kullanılmıştır. Tasarım için Qt Designer programı, Qt ve Qt Designer 5.6.0 versiyonu kullanılmıştır. Tez araştırması sonucunda uygulanan yöntemlerden elde edilen bulgular karşılaştırılmıştır. Filtreleme yöntemlerinin sınır belirleme işlemlerinde büyük kolaylık sağladığı görülmüştür. Yapay Zekâ yöntemlerinin gelişmesinin Görüntü İşleme yöntemleri üzerinde etkili olduğu saptanmıştır. RCF yönteminde görüntü işleme yöntemlerine göre daha iyi sonuçlar elde edilmiş fakat görüntü işleme ve HED yöntemlerine göre daha bulanık sonuçlar elde edilmesine rağmen görüntü üzerindeki sınırların daha iyi belirlendiği görülmüş ve bu durumdan dolayı RCF yönteminin diğer yöntemlere göre daha başarılı olduğu görülmüştür.

Abstract:
This study deals with the problem of Contour Detection with Image Processing and Artificial Intelligence Methods. Solving the Contour Detection problem is used for operations such as object recognition, object counting, removing a certain part of the image or adding another image behind the object with a certain contour. Image Processing methods are the processing of the image by the computer and the way the computer sees the image is called Computer Vision. Artificial Intelligence is simply an imitation of the human brain. In this study, the human brain can be used for image processing, as well as the computer can be used for image processing, as well as the computer can be used for image processing with Artificial Intelligence. In short, Machini Learning is the imitation of human ability to benefit from past experiences. Deep Learning can be briefly called as the deeper version of Artificial Intelligence methods such as Artificial Neural Networks. The images used in this study are Cameraman and Lenna images, which are frequently used in image processing studies. Canny, Auto Canny, Sobel, Laplacian, Prewitt, Holistically-Nested Edge Detection and Richer Convolutional Features for Edge Detection methods were used as methods. While applying the method, Averaging, Gaussian and Median filters were used and sharper contours were tried to be obtained with these filters. Python language was used as programming language and PyCharm compiler was preferred as compiler. Python 3.8.5 and PyCharm 2021.1 versions were used as versions. OpenCV as image processing library and NumPy libraries for mathematical functions were used together with Python. In the Holistically-Nested Edge Detection method, the Caffe framework was used for the pre-trained model. PyTorch library is used in Richer Convolutional Features for Edge Detection method. OpenCV 4.0.1 and NumPy 1.19.2 versions were used as versions. PyQt5 was used for the design of the application made with Python. The Qt Designer program was used for the design, and Qt and Qt Designer version 5.6.0 were used. As a result, these methods were compared. It has been seen that filtering methods facilitate the contour detection processes. As a conclusion, the development of Artificial Intelligence methods is effective on Image Processing methods. In the RCF method, better results were obtained than the image processing methods, but although more blurred results were obtained compared to the image processing and HED methods, it was seen that the contours on the image were determined better, and because of this, it was seen that the RCF method was more successful than other methods.