Sunday, 12 December 2010

Pada matlab fungsi untuk melakukan pembacaan image standar yaitu:
imread(‘filename’)
Perintah ini digunakan untuk membaca beberapa format file diantaranya:



Hasil dari pembacaan imread(‘filename’) bisa berupa matriks dua dimensi jika gambar yang dibaca
adalah gambar grayscale dan matrik 3 dimensi jika berupa gambar 3 dimensi.

Ekstraksi Nilai Piksel Red, Green dan Blue (RGB)
Hampir setiap pengolahan citra yang berbasis warna perlu dilakukan pemisahan band-band yang ada
pada citra khususnya citra RGB,MATLAB menyediakan fasilitas yang cukup baik dalam memisahkan
ketiga warna RGB, yaitu sebagai berikut:
gambar=imread(‘gambarkoe.jpg’); %--------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 merah
blue=gambar(:,:,3); %memanggil matriks gambar yang hanya berisi piksel
warna merah
%----------menampilkan gambar---------------------
imshow(gambar)
imshow(red)
imshow(green)
imshow(blue)
Terlihat bahwa untuk mengambil nilai piksel merah memiliki indeks 1, warna hijau memiliki indeks 2
dan warna biru memiliki indeks 3.
Konversi Gambar RGB ke Grayscale
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 yang telah dilakukan diatas seperti contoh berikut:
gambar=imread(‘gambarkoe.jpg’); %--------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 merah
blue=gambar(:,:,3); %memanggil matriks gambar yang hanya berisi piksel
warna merah
gray2=0.3*red+0.5*green+0.2*blue ;
Membuat Histogram Image
Dasar Image Processing Menggunakan MATLAB,Muhammad Iqbal 13
Fungsi yang disediakan MATLAB untuk membuat histogram dari gambar yaitu dengan fungsi
imhist(matrik_1_dimensi_image)
Perlu diperhatikan bahwa imhist hanya dapat digunakan untuk matrik image 1 dimensi sehingga bila
diimplementasikan pada matriks gambar maka hanya berupa matriks merah saja, hijua saja, biru saja
atau grayscale.
Contoh penggunaan Histogram dari Image yaitu:
gambar=imread(‘gambarkoe.jpg’); %--------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 merah
blue=gambar(:,:,3); %memanggil matriks gambar yang hanya berisi piksel
warna merah
merahgray2=0.3*red+0.5*green+0.2*blue ;
imhist(red)
imhist(green)
imhist(blue)
imhist(gray)
contoh Hasil:
Crop Image
Dasar Image Processing Menggunakan MATLAB,Muhammad Iqbal 14
Matlab juga menyediakan fungsi untuk melakukan cropping (pemotongan bagian tertentu dari
gambar menjadi matrik baru yang independen). Fungsi tersebut yaitu
Imcrop(matrik_gambar,matrik_titiksudut_crop);
Contoh implementasinya adalah:
gambar=imread('turtle.jpg');
crop=imcrop(gambar,[627 237 230 250])
imshow(gambar), figure, imshow(crop)
contoh hasil keluaranya dari program diatas yaitu:
Penentuan titik yang akan diambil yaitu menggunakan matrik_titiksudut_crop yaitu yang
merepresentasikan nilai [x,y,a,b] dimana x dan y adalah titik awal (sudut kiri atas) dari image yang
akan dikrop sedangakan a adalah jumlah piksel memanjang kearah sumbu-x dan b adalah jumlah
piksel ke arah sumbu-y.
Region Of Interest (ROI)
Kelemahan proses cropping jika itu merupakan daerah yang kita tertarik maka proses cropping
hanya dapat digunakan untuk bentuk kotak (rectangular). Untuk bentuk lain atau area yang
berbentuk tidak beraturan yang ingin dipisahkan dari image induk maka didefinisikan sebagai ROI
(Region of Interest) dimana di MATLAB terdapat banyak sekali fungsi yang bisa digunakan, salah
satunya yaitu roipoly(I,c,r) dimana I adalah matrik gambar, c adalah matrik titik kolom daerah yang
menjadi ROI dan r adalah matrik titik baris daerah yang menjadi ROI.
Contoh penggunaan ROI yaitu:
I=imread('turtle.jpg');
c = [625 685 733 798 816 753 667];
r = [327 282 247 288 221 402 427];
BW = roipoly(I,c,r);
figure, imshow(I)
figure, imshow(BW)
Dasar Image Processing Menggunakan MATLAB,Muhammad Iqbal 15
Contoh implementasi real ROI
gambar=imread('turtle.jpg');
I=gambar(:,:,1);
c = [625 685 733 798 816 753 667];
r = [327 282 247 288 221 402 427];
BW = roipoly(I,c,r);
j = roifill(I,c,r);
figure, imshow(gambar)
figure, imshow(I)
figure, imshow(BW)
figure, imshow(j)
Dasar Image Processing Menggunakan MATLAB,Muhammad Iqbal 16
Pengolahan Citra dengan Domain Frekuensi
Pada Domain frekuensi, citra dinyatakan sebagai kombinasi dari gelombang penyusun dengan
frekuensi berbeda.
Beberapa fungsi MATLAB yang biasa digunakan untuk pengolahan sinyal untuk domain frekuensi
yaitu:
 fft, fft2
 dct, dct2