Pages

Search

Grayscale citra digital dengan Matlab

31 May 2012

Grayscale adalah sebuah teknik mengubah gambar (image) atau citra berwarna RGB menjadi citra berwarna abu-abu. Citra RGB memiliki 3 layer warna yg memiliki nilai piksel pada masing-masing layer dan didefinisikan pada matriksnya masing-masing. Citra RGB memiliki 3 buah matriks yang menyimpan nilai piksel dari warna merah, hijau dan biru, untuk mengubahnya menjadi citra abu-abu maka ke-3 matriks tersebut dijumlahkan dan dibagi 3, sehingga menjadi 1 matriks tunggal yang menyimpan nilai piksel berwarna yang berkisar dari warna putih sampai hitam atau yang terlihat secara visual berwarna abu-abu. Cara menerapkan teori tersebut pada MATLAB dapat dilihat pada source code berikut :

a=imread('lopi0003.jpg');
[baris, kolom] = size(a);
for i = 1:baris
    for j = 1:(kolom/3)
        nilaigray = (a(i,j,1)+a(i,j,2)+a(i,j,3))/3;
        a(i,j,1) = nilaigray;
        a(i,j,2) = nilaigray;
        a(i,j,3) = nilaigray;
    end
end
imshow(a);

Dimana variabel yang dipakai pada source code diatas :
nilaigray = Nilai intensitas citra grayscale
a(i, j, 1) = Nilai intensitas warna merah dari citra asal
a(i, j, 2) = Nilai intensitas warna hijau dari citra asal
a(i, j, 3) = Nilai intensitas warna biru dari citra asal
Algoritma diatas hanya merupakan salah satu cara mengubah citra berwarna menjadi warna abu-abu, masih banyak cara lainnya. Hasil dari algoritma diatas pada MATLAB dapat diliihat pada citra berikut, yang  dimana citra sebelah kiri merupakan citra asli dan citra sebelah kanan merupakan citra setelah dikonversi menjadi citra abu-abu :

Photobucket Photobucket

No comments:

Post a Comment

 

Link Exchange

Molotuspi Studio