MATLAB ile Özellik Çıkarımı (Feature Extraction) Teknikleri

Feature Extraction

Günümüzde bilgisayarlı görü (Computer Vision), görüntü işleme (Image Processing) ve yapay zekâ (AI) projelerinde anlam çıkarma bakımından sıkça kullanılan bir yöntem olan özellik çıkarımı (Feature Extraction), ham veri üzerinde boyut azaltma yöntemine başvurulmasıdır [1]. Bildiğiniz üzere makine öğrenimi son zamanlarda çarpıcı gelişmeler yaşamaktadır. Bu durum makine öğreniminin endüstri, akademi ve popüler kültürden büyük ilgi görmesini sağlamıştır 🏭👩‍🔬. Dünyada ve hatta ülkemizde son zamanlarda sağlık alanında makine öğreniminin ve derin öğrenme modellerin uygulamaya alınmasıyla birlikte akıllı sistemler, birçok hastalığı önceden tespit edebilmekte veya uzman bir kişinin göremediği ayrıntıları gözden kaçırmamaktadır [2]. Tıbbi tedavilerde sıkça rastlanılan MRI görüntüler üzerinde hastalığı tespit edebilecek farklı bölgeler bulunmaktadır ☢️. Bu bölgelerde yoğunlaşmak üzere özellik seçimi ve özellik çıkarımı gerçekleştirilerek elde edilen sonuçlar çeşitli algoritmalara yansıtılarak insanın algıladığı hastalıkları makinenin tespit edilmesi sağlanır.

[gdlr_core_space height=”30px”]

Örnek Beyin MR Görüntüsündeki Lezyon Bölgelerinin Özellik Çıkarımı ile Tespit Edilmesi [3]

[gdlr_core_space height=”30px”]

Daha önce “Görüntü İşleme ile Kemik Yaşı Tespitinde Ön Aşamalar” adlı makalemde bahsettiğim bireylerden alınmış sol el bilek MR görüntüleri üzerinde çalışmaya devam edeceğim. Tabi bu kullanılan görüntüler tamamen kişinin isteğine kalmış, dilerseniz başka bir görüntü veri seti üzerinde de özellik çıkarımı yapmanız mümkündür ✔️. Önemli olan görüntü içerisindeki nesnelerin farkına varabilmemiz ve içerisinde ne gibi feature (özellik) barındırdığını tespit edebilmemiz olacaktır. Şekil 2’ de kısaca anlatmak gerekirse görüntü ön işleme aşamalarını MATLAB ortamında göstermekteyim. Ön işleme aşamaları sırasında görüntüde bulunan önemsiz detayların silinmesi, ışık faktörünün azaltılması ve bazı bölgelerin belirginleşmesi için belirli filtreler kullanılmıştır.

[gdlr_core_space height=”30px”]

MATLAB Ön İşleme Adımları

[gdlr_core_space height=”30px”]

Özellik Çıkarımı İncelenmesi

📌 Özellik çıkarımı bir projedeki performansı olumlu yönden etkilemek amacıyla boyut indirgeme yapılarak detayların elde edilmesidir. Makine öğrenimi, örüntü tanıma ve görüntü işleme alanlarında kullanılan özellik çıkarımı (özellik çıkarımı), girdi olarak verilen ölçülmüş verileri kullanarak türetilmiş değerler (özellikler) oluşturur [3].

📌 Makine öğrenmesindeki bir özellik (feature), gözlemlenen bir verinin bireysel olarak ölçülebilir özelliğidir. Özellikler, bir tahmin veya sınıflandırma yapılabilmesi için makine öğrenme modeline beslenilen girdilerdir [4].

Veri Analizinin Adımları

[gdlr_core_space height=”30px”]

Özellik Çıkarımı Teknikleri

Özellik çıkarımı, mevcut olan verilerden yeni özellikler oluşturarak ve ardından orijinal özellikleri atarak veri kümesindeki özellik sayısını azaltmayı amaçlamaktadır [6]. Bu bilgiler doğrultusunda, MATLAB ortamında görüntülerin renk kanalları öncelikle kontrol edilmiştir. Ardından belirtilen renk kanalına göre RGB ve Gray-Level bilgisi tutularak renk dönüşümleri sağlanmış ve bu sonuçlardan sayısal değerler elde edilecektir. Bu sayısal değerler daha sonra makine öğreniminde kullanılacak olup öncelikle manuel olarak aynı sınıflara ait olup olmadığı kontrol edilecektir.

[gdlr_core_space height=”30px”]

🔎 RGB, HSV, LAB Renk Kanalları ve GLCM Matris İncelenmesi

🔗 RGB Renk Kanalı : RGB en yaygın kullanılan renk alanıdır. Bu renk modelinde her renk kırmızı, yeşil ve mavi ana spektral bileşenleri olarak görür. Bu modelin altyapısında Kartezyen Koordinat Sistemi barınmaktadır. İlgilenilen renk alt uzayı, görüntü işlemede sıkça kullanılan bu küp olarak incelenir [7].

📌RGB renk kanalında çalışırken öncellikle alınan görüntünün RGB renk kanalına uygun olup olmadığını kontrol edelim ve daha sonra Red (Kırmızı), Green (Yeşil) ve Blue (Mavi) kanallarının matris değerlerini değişken olarak tutalım.

Görüntünün R,G ve B Kanallarına Ayrıştırılması

Örnek Red Kanalı Değerlerinin Gösterimi

[gdlr_core_space height=”30px”]

🔗 HSV Renk Kanalı : HSV uzayının ismi, renk tonu, doygunluk ve parlaklık kelimelerinin İngilizce karşılığı olan hue, saturation ve intensity kelimelerinin baş harflerinden gelmektedir. HSV renk uzayı Hue, Saturation ve Value terimleri ile rengi tanımlar. RGB de renklerin karışımı kullanılmasına karşın HSV de renk, doygunluk ve parlaklık değerleri kullanılır. Doygunluk rengin canlılığını belirlerken parlaklık rengin aydınlığını ifade eder.  HSI uzayı, bir renkli görüntüdeki yeğinlik bileşenini renk taşıyan bilgiler olan renk tonu ve doygunluktan ayrıştırır [9].

Görüntünün H,S ve V Özelliklerine Ayrıştırılması

Örnek V Kanalı Değerlerinin Gösterimi

[gdlr_core_space height=”30px”]

🔗 CIE Renk Kanalı: CIE 1931 renk uzayları , elektromanyetik görünür spektrumdaki dalga boylarının dağılımı ile insan renk görüşünde fizyolojik olarak algılanan renkler arasındaki ilk tanımlanmış kantitatif bağlantılardı . Bu renk uzaylarını tanımlayan matematiksel ilişkiler, renk mürekkepleri, ışıklı ekranlar ve dijital kameralar gibi kayıt aygıtlarıyla uğraşırken önemli olan renk yönetimi için gerekli araçlardır [11] . RGB görüntünün CIELAB kanallarına ayrıştırılması için rgb2lab komutu ile dönüşümünün gerçekleştirilmesi gerekir.

Görüntünün C, I ve E Kanallarına Ayrıştırılması

Örnek C Kanalı Değerlerinin Gösterimi

[gdlr_core_space height=”30px”]

🔎 GLCM (Gray-Level Co-Occurrence Matrix) : Gri düzeyde eş oluşum matrisi ile bir dizi doku özelliği çıkarılabilmektedir. Doku filtresi işlevleri, görüntü histogramına dayalı olarak dokunun istatistiksel bir görünümünü sağlar. Bu işlevler bir görüntünün dokusu hakkında yararlı bilgiler sağlayabilir, ancak şekil, yani bir görüntüdeki piksellerin uzaysal ilişkileri hakkında bilgi sağlayamaz [12].

Görüntünün Gri Seviye Eş Oluşum Matrisinin Oluşturulması

🔔 Özellik Vektörünün Oluşturulması: Makine öğreniminde özellik vektörleri, bir nesnenin özellikler olarak adlandırılan sayısal veya sembolik özelliklerini matematiksel, kolayca analiz edilebilir bir şekilde temsil etmek için kullanılır. Makine öğrenimi ve örüntü işlemenin birçok farklı alanı için önemlidir. Makine öğrenimi algoritmaları, algoritmaların işleme ve istatistiksel analiz yapabilmesi için genellikle nesnelerin sayısal bir gösterimini gerektirir. Özellik vektörleri, doğrusal regresyon gibi istatistiksel prosedürlerde kullanılan açıklayıcı değişkenlerin vektörlerinin eşdeğeridir [13].

Oluşan özellik vektörü 1×28 boyutunda değerler içeren bir vektördür.

Özellik Vektörünün Grafikleştirilmesi

Bu şekilde özellik vektörünü elde etmiş olduk. Bir sonraki yazımda görüşmek dileğiyle 🙌🏻

Diğer yazılarıma buradan ulaşabilirsiniz.

REFERANSLAR

[1] Şadi Evren Şeker, “Özellik Çıkarımı (Feature Extraction)”, 1 Aralık 2008, https://bilgisayarkavramlari.sadievrenseker.com/2008/12/01/ozellik-cikarimi-feature-extraction/ adresinden alınmıştır.

[2] M. Mert Tunalı, “MRI Görüntüleri Üzerinden Beyin Tümörü Tespiti Bölüm 1 (U-Net)”, Medium yazısından alınmıştır.

[3] Shahab Aslani, Michael Dayan, Vittorio Murino, Diego Sona, “Deep 2D Encoder-Decoder Convolutional Neural Network for Multiple Sclerosis Lesion Segmentation in Brain MRI”, September 2018, Conference Paper, MICCAI2018 (BrainLes Workshop).
[4] MC.AI, The Computer Vision Pipeline, Part 4: Feature Extraction, October 2019, https://mc.ai/the-computer-vision-pipeline-part-4-feature-extraction/.

[5] Javier Gonzalez-Sanchez, Mustafa Baydoğan, Maria-Elena Chavez-Echeagaray, Winslow Burleson, Affect Measurement: A Roadmap Through Approaches, Technologies, and Data Analysis, December 2017.

[6] Pier Paolo Ippolito, “Feature Extraction Techniques”, Towards Data Science, https://towardsdatascience.com/feature-extraction-techniques-d619b56e31be.

[7] C. Gonzalez, Rafael, E. Woods, Richard, Sayısal Görüntü İşleme, Palme Yayıncılık, (Ankara, 2014).

[8] https://favpng.com/png_view/light-rgb-color-space-rgb-color-model-light-png/BsYUHtec adresinden alınmıştır.

[9] Dr. Öğr. Üyesi Caner Özcan, Karabük Üniversitesi, BLM429 Görüntü İşlemeye Giriş, “Renkli Görüntü İşleme”.

[10] https://tr.pinterest.com/pin/391179917623338540/ adresinden alınmıştır.

[11] From Vikipedi, Özgür Ansiklopedi, “CIE 1931 renk alanı”, 10 Nisan 2020, https://en.wikipedia.org/wiki/CIE_1931_color_space.

[12] Matlab, Image Processing Toolbox User’s Guide, “Using a Gray-Level Co-Occurrence Matrix (GLCM)”, https://matlab.izmiran.ru/help/toolbox/images/enhanc15.html.

[13] Brilliant, “Feature Vector”,  https://brilliant.org/wiki/feature-vector/, April 2020.

Leave a Reply

Your email address will not be published. Required fields are marked *