Imresize merupakan fungsi dalam Matlab untuk memperkecil ukuran citra. Misal sebuah citra berukuran 100 x 100 dapat diperkecil menjadi 10 x 10. Gunanya adalah menurunkan resolusi agar dapat lebih cepat diproses. Perhatikan citra berikut (nama file “Huruf A.png”):
Citra bertipe JPG atau PNG harus dibaca di konsol Matlab. Gunakan fungsi imread untuk mengkonversi JPG menjadi matriks gambar.
-
x=imread(‘Huruf A.png’);
-
x2=rgb2gray(x);
Fungsi rgb2gray bermaksud merubah citra berwarna (red, green, dan blue) menjadi hitam putih. Berikutnya kita coba mereduksi matriksnya dengan fungsi imresize berikut ini:
-
x3=imresize(x2,.05)
Perhatikan x3 merudiksi x2 sebesar 5 persen. Jika dilihat gambarnya dengan fungsi imshow akan muncul citra yang sudah tereduksi ukurannya.
-
Imshow(x3,’InitialMagnification’,’fit’)
Citra hasil imresize dari sulit dimanipulasi. Misal dibagi dgn 255 tiap elemennya menjadi 1.
Tampak citra yang masih berbentuk gray. Untuk diolah dengan jaringan syaraf tiruan perlu dikonversi menjadi biner 1 dan 0 atau +1 dan -1. Untuk gambar yg normal bisa dengan im2bw, tetapi hasilnya akan 1 semua. Cari paling sederhana adalah membuat kode untuk merubah 255 menjadi -1 dan yang bukan 255 menjadi 1.
-
[row kol]=size(x3)
-
for i=1:row
-
for j=1:row
-
if x3(i,j)==max(max(x))
-
x3(i,j)=-1;
-
else
-
x3(i,j)=1;
-
end
-
end
-
end
Hasilnya matrix nol dan 1 yang harus dikalikan dengan 255 terlebih dahulu sebelum dimanipulasi dengan fungsi im2bw.
-
x4=x3*255;
-
x5=im2bw(x4);
-
x6=x5*2-1;
-
imshow(x6,’InitialMagnification’,’fit’)
Hasilnya adalah tampak pada gambar di bawah, berupa matriks hasil reduksi dari yang sebelah kanan. Dari ukuran matriks 190×193 menjadi matriks 10×10 yang lebih mudah dimanipulasi.