Segmentasi Warna Citra Digital
Segmentasi citra merupakan suatu proses yang bertujuan untuk memisahkan antara region foreground dengan region background. Pemisahan tersebut didasarkan pada perbedaan karakteristik masing-masing region yang mencolok.
Pada contoh pemrograman ini, dilakukan segmentasi citra berdasarkan pada perbedaan warna antara foreground dengan background. Dalam citra digital, warna yang merupakan spektrum cahaya tampak (merah, jingga, kuning, hijau, biru, ungu) direpresentasikan oleh nilai Hue. Oleh sebab itu, proses segmentasi citra pada pemrograman ini dilakukan pada ruang warna HSV (Hue, Saturation, Value).
Langkah-langkah pemrograman matlab untuk melakukan segmentasi warna adalah sebagai berikut:
1. Membaca dan menampilkan citra asli. Citra yang digunakan adalah citra bird.jpg di mana foreground atau objek yang dimaksud adalah berupa burung.
clc; clear; close all; warning off all; % Membaca citra asli RGB = imread('bird.jpg'); figure, imshow(RGB);
2. Melakukan transformasi ruang warna citra yang semula RGB (Red, Green, Blue) menjadi HSV (Hue, Saturation, Value).
% Melakukan transformasi ruang warna citra yang semula RGB menjadi HSV HSV = rgb2hsv(RGB); figure, imshow(HSV);
citra HSV yang dihasilkan yaitu
3. Melakukan segmentasi warna biru terhadap komponen Hue. Pada contoh ini range nilai hue untuk warna biru adalah 100 s.d 250.
% Melakukan segmentasi terhadap warna biru (nilai Hue 100-250) H = HSV(:,:,1); range = [100 250]/360; mask = (H>range(1)) & (H<range(2)); figure, imshow(mask)
sehingga diperoleh citra biner hasil segmentasi
4. Mengubah warna background menjadi grayscale
% 1. Mengubah warna background menjadi grayscale H = HSV(:,:,1); S = HSV(:,:,2); V = HSV(:,:,3); S = S.*mask; HSV1 = cat(3,H,S,V); RGB1 = hsv2rgb(HSV1); figure, imshow(RGB1);
5. Mengubah warna objek menjadi merah
% 2. Mengubah warna objek menjadi merah H = HSV(:,:,1); S = HSV(:,:,2); V = HSV(:,:,3); H(mask) = H(mask)+.4; HSV2 = cat(3,H,S,V); RGB2 = hsv2rgb(HSV2); figure, imshow(RGB2);
6. Mengubah warna objek menjadi merah & warna background menjadi grayscale
% 3. Mengubah warna objek menjadi merah &amp; warna background menjadi grayscale H = HSV(:,:,1); S = HSV(:,:,2); V = HSV(:,:,3); H(mask) = H(mask)+.4; S = S.*mask; HSV3 = cat(3,H,S,V); RGB3 = hsv2rgb(HSV3); figure, imshow(RGB3);
7. Mengubah warna objek menjadi ungu & warna background menjadi hijau
% 4. Mengubah warna objek menjadi ungu &amp; warna background menjadi hijau H = HSV(:,:,1); S = HSV(:,:,2); V = HSV(:,:,3); H(mask) = H(mask)+.33; H(~mask) = H(~mask)+.2; HSV4 = cat(3,H,S,V); RGB4 = hsv2rgb(HSV4); figure, imshow(RGB4);
File source code lengkap beserta citra pada pemrograman matlab untuk segmentasi warna di atas dapat diperoleh melalui halaman berikut ini: Source Code
Tutorial deteksi warna berdasarkan komponen hue dan saturation pada citra HSV dapat dilihat pada video berikut ini:

Posted on November 9, 2016, in Pengolahan Citra and tagged cara membuat koding matlab, cara membuat koding pengolahan citra, cara membuat koding segmentasi citra, Citra Digital, citra digital adalah, citra RGB, contoh koding matlab pengolahan citra, contoh koding matlab pengolahan citra digital, definisi citra digital, koding matlab sederhana, materi pengolahan citra, olah citra matlab, pemrograman matlab, pengertian citra digital, pengolahan citra, Pengolahan Citra Digital, ruang warna hsv, ruang warna rgb, segmentasi citra, segmentasi warna, segmentasi warna matlab. Bookmark the permalink. 25 Comments.
assalamualaikum mas Adi, ak mau tanya… metode segementasi yg bagus yg tahan terhadap pengaruh pencahayaan apa ya????
ak pake ruang warna ycbcr, tp kata dosen ku sruh pake metode karna ycbcr bukan metode..
Waalaikumsalam amalia
Segmentasi citra pada ruang warna ycbcr adalah sebuah metode
selain metode ycbcr metode apa lagi ya ka selain pake ruang warna,,,?
untuk deteksi deteksi warna kulit
deteksi warna kulit bisa menggunakan transformasi ruang warna yang lain seperti rgb, hsv, hsi, L*a*b, cmyk, dll
Untuk yang mengubah warna obyek menjadi merah kok saya run error di H(mask) = H(mask)+4; ya?
Assalamualaikum ini metoda apa ya?
waalaikumsalam
pada materi di atas telah dijelaskan bahwa metode yg digunakan adalah thresholding pada komponen Hue
kak, mau tanya, untuk mengambil hasil dari masking (variabel mask), rencananya saya akan mengubah citra ke dalam biner. itu bagaimana caranya ya kak? karna saya coba menggunakan BW = imbinarize(mask, 0.4); itu error kak. Mohon pencerahannya kak
Utk mengubah citra menjadi biner bisa menggunakan perintah im2bw
Assalamualaikum mas,saya mau nanya mengenai identifikasi jenis wayang kulit . cuman saya disini masih bingung apakah harus di segmentasi terlebih dahulu atau tidak ya mas, lalu untuk metode ekstraksi ciri dan identifikasi sebaiknya apa ya mas? mohon bantuannya mas untuk tugas akhir saya mas. terima kasih sebelumnya
Waalaikumsalam
Bisa dilakukan segmentasi terlebih dahulu
Proses ekstraksi ciri bisa dilakukan melalui analisis bentuk dan warna
Utk identifikasi bisa menggunakan algoritma jaringan syaraf tiruan, pca, deep learning, dll
ow begitu ya mas,klau saya pilih metode untuk segmentasinya thresholding warna hsv,bentuk deteksi tepi canny misalnya dan identifikasi jst apakah sudah pas belum ya mas?atau ada saran lain mas? terima kasih
Bisa dicoba diimplementasikan
oke makasih mas
tahu range nilai hue untuk warna biru adalah 100 s.d 250.dari mana ya?
Bisa dilakukan menggunakan algoritma fuzzy
assalamualaikum mas, saya sdg melakukan penelitian ttg pengetesan algoritma clustering. saya menggunakan segmentasi citra warna ruang HSV, lalu selanjutnya citra hsv tsb akan diimplementasikan dengan k-means dan pso berbasis clustering. saya mau tanya, sehabis saya transformasi citra rgb ke hsv apakah perlu dilakukan thresholding terhadap komponen hue baru dilanjutkan dengan algoritma clustering apa bisa langsung ya mas diimplementasikan ke algoritma clustering tanpa thresholding ya mas? mohon bantuannya, terima kasih
assalamualaikum ,mas saya mau nanya sedikit, saya sdang melakukan penilitian identifikasi lipstick palsu dan asli dengan warna rgb, yang dibutuhkan hanya nilai rgb dan histogram. apakah penentuan asli dan palsu nya itu menggunakan segmentasi biner dan grayscale ?
Waalaikumsalam
Bisa mencoba segmentasi warna rgb, bukan grayscale atau biner
trus untuk segmentasinya warna rgbnya itu apa aja ya ? dan identifikasi nya biasanya menggunakan metode apa yaa? maaf masih awam bgt terimakasih sebelumnya
Banyak metode yang bisa diterapkan
Bisa dicoba terlebih dahulu
Assalamu’alaikum kak mau tanyak, kalau Sudah pakek transformasi ruang warna hsv apa harus pake metode lain lagi ya untuk pendeteksian kematangan buah Manggis, kalau pakek cocoknya metode apa yg ringan untuk digunakan ya kak?
Waalaikumsalam
Setelah dilakukan segmentasi maka dilanjutkan dengan tahapan ekstraksi ciri dan identifikasi
kak mau tanya, kalau mau identifikasi varietas ikan koi selain menggunakan glcm mebggunakan apa ya kak? karna yg glcm sudah ada tetapi dengan 4 fitur (contras, corelation, energy, homogenity).. terima kasih kak..
Untuk identifikasi varietas ikan koi selain glcm bisa dicoba menggunakan ekstraksi ciri warna seperti rgb, hsv, hsi, ycbcr, lab, dll