Konversi Gambar RGB ke Grayscale di Matlab
Untuk merubah gambar RGB ke gambar grayscale di MATLAB disediakan fungsi khusus yaitu rgb2gray(matrik_gambar), tetapi kadangkala diinginkan untuk perubahan bentuk grayscale ini tidak menggunakan fungsi MATLAB yang sudah ada yang merupakan nilai rata-rata piksel RGB tetapi masing-masing nilai RGB diberi nilai bobot yang berbeda-beda, hal ini dengan mudah dilakukan dengan menggunakan pemisahan nilai seperti contoh berikut ini :
gambar=imread('PDPI.png'); %--------membaca file gambar
red=gambar(:,:,1); %memanggil matriks gambar yang hanya berisi piksel warna merah
green=gambar(:,:,2);% memanggil matriks gambar yang hanya berisi piksel warna hijau
blue=gambar(:,:,3); %memanggil matriks gambar yang hanya berisi piksel warna biru
gray2=0.3*red+0.5*green+0.2*blue ;
red=gambar(:,:,1); %memanggil matriks gambar yang hanya berisi piksel warna merah
green=gambar(:,:,2);% memanggil matriks gambar yang hanya berisi piksel warna hijau
blue=gambar(:,:,3); %memanggil matriks gambar yang hanya berisi piksel warna biru
gray2=0.3*red+0.5*green+0.2*blue ;
imshow(gambar)
imshow(gray2)
imshow(gray2)
Dan Inilah hasilnya :
Sebelum
Sesudah
Error in ==> imageDisplayValidateParams at 48
common_args.Map = gray(256);
Error in ==> imageDisplayParseInputs at 79
common_args = imageDisplayValidateParams(common_args);
Error in ==> imshow at 199
[common_args,specific_args] = ...
Error in ==> gray at 9
subplot(2,2,1);imshow(gray2);
knp y pak??