Journal Review : An Enhancement on Content-Based Image Retrieval using Color and Texture Features

Latar Belakang

Penyimpanan citra dijital merupakan metode alternatif penyimpanan citra yang menyebabkan terbentuknya perpustakaan dijital atau basis data citra yang besar. Pengambilan citra adalah salah satu layanan yang paling penting atau fungsi yang harus didukung semua sistem citra dijital. Dua pendekatan utama telah dikembangkan, yaitu pengambilan citra tekstual dan pengambilan citra berbasis konten.

Untuk dapat menggunakan metadata citra, semua citra digital harus dijelaskan dengan metadata. Namun penjelasan secara manual memakan waktu yang lama, melelahkan dan mahal [Wikipedia2014]. Metode lain untuk pengambilan citra adalah Penerimaan Citra Berbasis Konten/Content Based Image Retrieval (CBIR). Pencarian citra tekstual bukanlah CBIR, melainkan pengambilan citra dengan konten citra. Konten citra adalah seperangkat fitur visual yang menjelaskan suatu citra. Ekstraksi fitur visual citra bukanlah proses yang mudah dan sebelum ekstrak fitur visual, pengetahuan tentang jenis fitur yang dibutuhkan harus dimiliki. Ekstrasi fitur visual dari citra merupakan hal yang mendasar dari CBIR .

Warna sejauh ini merupakan fitur visual yang paling umum digunakan dalam CBIR, terutama karena kesederhanaan penggalian informasi warna dari citra. Warna dapat direpresentasikan dengan menggunakan ruang warna yang berbeda tergantung pada standar yang digunakan oleh peneliti atau tergantung pada aplikasi seperti Red-Green-Blue (RGB) dan Hue-Saturation-Value (HSV). Sedangkan tekstur masih belum memiliki definisi standar. Makalah penelitian yang berbeda mendefinisikannya berbeda. Mengukur tekstur juga bukanlah proses yang sederhana. Tidak ada standar proses penggalian nilai-nilai tekstur yang ditetapkan.

Metode

Fitur visual utama yang digunakan untuk mengenali dan mengidentifikasi citra adalah warna, tekstur dan bentuk. Dibutuhkan warna dan tekstur yang cukup spesifik untuk mengidentifikasi citra dengan fitur serupa, tetapi juga tidak terlalu spesifik untuk mengambil citra yang tepat atau sangat mirip. Yang digunakan pada penelitian ini adalah fitur warna dan tekstur, bukan fitur bentuk.

Pembagian Citra

Untuk mendapatkan hasil yang lebih baik, masing-masing citra dibagi menjadi enam blok, lebih akurat jika dua baris dan tiga kolom dengan ukuran yang sama [Ch.Kavitha2011]. Dalam penelitian ini, gambar akan diubah ukurannya untuk 160×240 untuk memperoleh hasil yang lebih baik.

Ekstraksi Fitur Warna

Ada banyak ruang warna yang berbeda dan standar yang telah digunakan, yang paling umum adalah RGB atau CMYK. Namun, untuk aplikasi ini HSV dianggap menjadi yang terbaik, di samping fitur warna yang diusulkan bernama Average Color Dominance (ACD). [Ch.Kavitha2011]

Fitur Warna HSV

Untuk proses yang efisien dan mengurangi rentang nilai untuk perhitungan, nilai-nilai HSV dikuantisasi menjadi non-equal bins (8x3x3 bins) seperti yang dilakukan oleh penulis dalam [Wikipedia2014]yaitu Hue: 8 bins; Saturation: 3 bins; Value: 3 bins.

Fitur Warna ACD

Algoritma ekstraksi ACD dimulai dengan preprocessing citra terlebih dahulu dengan mengubah ukurannya ke ukuran preset 160×240. Kemudian citra dibagi menjadi 6 blok. Setiap blok akan dikuantisasi oleh median cut quantizer. Citra terkuantisasi akan mendapatkan warna yang serupa yang memiliki 4 warna pixel tetangga dan rata-rata 3 warna teratas diambil untuk berakhir dengan nilai ACD.

Algoritma ekstraksi ACD adalah sebagai berikut:

  1. Resize image into 160×240
  2. Partition image into 6 blocks
  3. Loop: for each image block Do:
    1. Quantize block using Aforge’s Median Cut Quantizer into eleven colors
    2. Count the number of times each color exists with a color similar to its 4-neighbor pixel colors 3.3-Quantize the 3-dimensional RGB vectors into 1-dimensional vectors equal to the average of the R,G and B components = (R + G + B) / 3
    3. Calculate the average of the top 3 most counted colors (RGB average values)
    4. Store this RGB average value (ACD value) into the database for this image block
  4. End Loop

Ektraksi Fitur Tekstur

Dalam penelitian ini, Gray-Level Co-occurence Matrix (GLCM) dibuat untuk menyediakan beberapa informasi tekstur. Dari GLCM ini, nilai-nilai numerik tertentu dapat diekstraksi untuk memasok berbagai jenis informasi tentang tekstur citra.

Algoritma Generasi GLCM adalah sebagai berikut:

  1. Quantize the original image’s gray-level Histogram to a known number of bins e.g. 3 bins
  2. Create a 3×3 matrix: M(i,j)
  3. Loop: for each i, j pair in the matrix M(i,j):
    1. Count the number of pairs in the original image according to the relationship
    2. Store the pairs count into the GLCM at position (i, j)
  4. End Loop
  5. Normalize the GLCM M(i,j) by dividing all its values by the number of pixel pair

Penerimaan Citra

Aplikasi yang sebenarnya dari penelitian ini adalah pengambilan citra yang didasarkan pada kesamaan konten. Untuk melakukan ini dilakukan perbandingan data yang diambil dari masing-masing citra. Setiap citra memiliki informasi untuk 6 blok yang harus dibandingkan. Kesesuaian blok sumber citra dan citra yang disimpan dibandingkan terhadap satu sama lain, yaitu blok pertama dari citra yang tersimpan dibandingkan dengan blok pertama dari sumber citra, blok kedua dari citra yang dibandingkan dengan blok kedua dari sumber citra dan seterusnya.

Pencocokan Citra

Algoritma dari pencocokan citra adalah sebagai berikut:

  1. Provide source image
  2. Preprocess source image (resizing image into 160×240)
  3. Partition image into 6 blocks
  4. Loop: For each block Do 4.1-Compute HSV, ACD, and GLCM texture values (orig_HSV, orig_ACD, orig_GLCM_Contrast, orig_GLCM_Energy, orig_GLCM_Entropy, orig_GLCM_InvDiff)
  5. End Loop
  6. Loop: For each image in the database Do
    1. Loop: For each block b in current image Do
      1. Compute Euclidean distance diff_HSVb# = current_HSVb# – orig_HSVb#, diff_ ACDb# = current_ ACDb# – orig_ACDb#, etc…
      2. Create six lists of all database images ordered by the Euclidean distance computed for each of the HSV, ACD, Energy, Entropy, Contrast and Inverse Difference features and for the current block
      3. Order each of these lists by their list values i.e. diff_HSV, diff_ACD etc…
    2. End Loop
  7. End Loop
  8. Create six new lists with all images (lstImageBlock#)
  9. Loop: For each image i Do:
    1. Loop: For each image block b Do:
      1. lstImageBlockb#[i].value = List(dif_HSVb#)[i].Index + List(diff_ACDb#)[i].Index + List(diff_Contrastb#)[i].Index + etc… -//i.e. image1’s index in List(diff_HSV1) is 10 and in List(diff_ACD1) is 33 and in List(diff_Contrast1) is 15 etc.. So. lstImageBlock1[image1].value = 10 + 33 + 15 + ….. (for block 1)
      2. Order lstImageBlock#b by its values (the sum of indices)
    2. End Loop
  10. End Loop
  11. Create a new list of all images (lstImages)
  12. Loop: For each image i Do:
    1. lstImages[i].value = lstImageBlock1[i].Index + lstImageBlock2[i].Index + etc..
  13. End Loop
  14. Order lstImages by its values (the sum of indices)

Hasil

Metode dalam penelitian ini dibandingkan dengan metode Kavitha. Perbandingan dilakukan dengan membandingkan presisi dan recall dari kedua metode. Hasilnya, presisi rata-rata dalam metode yang diusulkan lebih tinggi dari metode Kavitha. Metode yang diusulkan menghasilkan output dan akurasi yang lebih baik. Namun, tidak semua kategori ditingkatkan dalam metodoe yang diusulkan. Presisi dan recall hasil beberapa kategori tetap hampir sama dan beberapa memiliki presisi yang lebih rendah dan nilai recall. Hal ini disebabkan fakta bahwa kategori yang berbeda memiliki sifat warna yang berbeda yaitu beberapa kategori mungkin memiliki warna dominan sangat jelas atau satu set warna sementara beberapa kategori lain mungkin tidak.

Kelebihan dan Kekurangan

Kelebihan

  • Hasil presisi lebih baik dari metode Kavita.
  • Perhitungan nilai ACD dari rata-rata 3 warna teratas yang paling mendominasi memperoleh hasil yang lebih baik daripada hanya menggunakan 1 warna teratas saja.
  • Menghitung ACD menggunakan nilai d sebagai 1 (1 piksel jauh dari pixel saat ini atau dengan kata lain 4 pixel tetangga) diambil presisi lebih tinggi daripada menggunakan nilai yang lebih besar dari d seperti 3.
  • Bekerja ukuran citra 160×240 pixel menghasilkan hasil yang lebih baik daripada citra dengan ukuran 384×256 pixel.

Kekurangan

  • Citra dengan ukuran kurang dari 160×240 akan ditingkatkan hingga 160×240 yang tidak akan memungkinkan efek yang sama dari skala bawah citra berlangsung. Oleh karena itu,citra dengan ukuran yang lebih kecil harus ditangani dengan berbeda.
  • Dengan peningkatan jumlah citra output ke 40 dan 60 gambar, masing-masing presisi mengalami penurunan sebesar 18% dan 27%. Bagian pencocokan citra adalah inti dari aplikasi ini terletak. Perbaikan pada algoritma pencocokan bisa memberikan hasil yang lebih baik secara keseluruhan.
  • Ektraksi warna masih terpisah
  • Penyepadanan citra masih 1:1

Penelitian Lanjutan

  • Perbaikan utama adalah Algoritma Pencocokan Citra. Sistem ini mengambil semua citra dan memilahnya berdasarkan seberapa dekat citra dengan sumber citra. Namun, algoritma sorting (algoritma pencocokan citra) dapat lebih ditingkatkan untuk mendapatkan presisi yang lebih baik.
  • Lebih baik menurunkan citra dari 384×256 pixel ke 160×240 pixel. Namun citra dengan ukuran yang lebih kecil dari 160×240 akan ditingkatkan sehingga tidak akan memperoleh hasil yang sama. Selain itu, citra yang sangat besar akan kehilangan banyak informasi visual ketika diperkecil untuk 160×240.

 

Daftar Pustaka

  1. Wikipedia. (2014, May) Image retrieval. [Online]. Available: http://en.wikipedia.org/wiki/Image_retrieval
  2. Ch.Kavitha, D. Rao, and Dr.A.Govardhan, Image retrieval based on color and texture features of the image sub-blocks, International Journal of Computer Applications, vol. 15, no. 7, pp. 3337, February 2011, published by Foundation of Computer Science.
  3. R. M. Haralick, Dinstein, and K. Shanmugam, Textural features for image classication, IEEE Transactions on Systems, Man, and Cybernetics, vol. SMC-3, no. 3, pp. 610621, Nov. 1973.
  4. K. Hirata and T. Kato, Query by visual example – content based image retrieval, in Proceedings of the 3rd International Conference on Extending Database Technology: Advances in Database Technology, ser. EDBT ’92. London, UK, UK: Springer-Verlag, 1992, pp. 5671. [Online]. Available: http://dl.acm.org/citation.cfm?id=645336.649863
  5. P. S. Hiremath and J. Pujari, Content based image retrieval based on color, texture and shape features using image and its complement, International Journal of Computer Science and Security, vol. 1, no. 4, pp. 2535, 2007.
  6. T. Kato, Database architecture for content-based image retrieval, in Proc SPIE 1662, 1992.
  7. H. Müller, N. Michoux, D. Bandon, and A. Geissbuhler, A review of content-based image retrieval systems in medical applications  clinical benets and future directions, International Journal of Medical Informatics, vol. 73, no. 1, pp. 123, February 2004.
  8. M. Partio, B. Cramariuc, M. Gabbouj, and A. Visa, Rock texture retrieval using gray level co-occurrence matrix, in Proc. of 5th Nordic Signal Procesing Symposium, 2002.
  9. J. M. Zachary, Jr., and S. D. Gratias, An information theoretic approach to content based image retrieval, Ph.D. dissertation, Louisiana State University and Agricultural and Mechanical College, 2000.
  10. D. Zhang, A. Wong, M. Indrawan, and G. Lu, Content-based image retrieval using gabor texture features, in IEEE Transactions PAMI, 2000, pp. 1315.

 

Leave a Reply

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