Rabu, 06 November 2013

Program Matlab Sederhana

Program Matlab Sederhana

Pada kesempatan kali ini saya mencoba menulis tentang GUI (Graphic User Interface) pada MATLAB secara sederhana. Saya membuat GUI yang digunakan untuk memproses image/gambar agar warnanya menjadi HSV (Hue, Saturation, Value), Gray, atau Hot.
Jalankan program MATLAB, kemudian klik File>New>GUI
Kemudian pilih Blank GUI (Default) seperti yang ditunjukkan pada gambar di bawah lalu klik tombol OK.



Setelah itu akan muncul figure seperti yang ditunjukkan pada gambar di bawah ini


Bagian yang dilingkar dengan kotak merah digunakan untuk membuat komponen-komponen dalam figure, seperti axis, button, slider, panel, pop-up menu, dan lain sebagainya. Dengan menggunakan komponen-komponen tersebut, buatlah GUI seperti gambar berikut:


Setelah itu klik run atau dengan shortcut keyboard ctrl+T. Kemudian akan muncul figure sesuai dengan komponen yang telah kita buat tadi beserta file .m di editor MATLAB. Akan tetapi, tombol-tombol yang terdapat pada GUI tersebut belum mempunyai fungsi apa-apa. Oleh sebab itu kita beralih pada file .m yang dihasilkan untuk mengatur programnya.
Pada function image_pro_OpeningFcn(hObject, eventdata, handles, varargin), isikan program berikut setelah %varagin
handles.gambar=imread('gambarmu.gif');
gambar=handles.gambar;
imagesc(gambar)
axis off
Dimana file ‘gambarmu.gif’ terletak dalam satu directory dengan file .m dan merupakan gambar awal yang ingin kita tampilkan namun bukan untuk diproses.
Kemudian tambahkan pada function Select_File_Callback(hObject, eventdata, handles) sintaks berikut
[FileName,PathName] = uigetfile('*.jpg','Select the jpg-file');
handles.gambar=imread(fullfile(PathName, FileName));
image(handles.gambar)
axis off
guidata(hObject, handles);
Pada function Normal_Callback(hObject, eventdata, handles) tambahkan dengan berikut
gambar=handles.gambar;
imagesc(gambar)
axis off

Kemudian pada function HSV_Callback(hObject, eventdata, handles) kita tambahkan program dibawah ini
hsvgambar = rgb2hsv(handles.gambar) ;
image(hsvgambar)
axis off
Juga pada function Gray_Callback(hObject, eventdata, handles) kita tambahkan:
[X,map] = rgb2ind(handles.gambar, 28);
I = ind2gray(X,map);
imagesc(I)
colormap(gray)
axis off
Dan terakhir pada function Hot_Callback(hObject, eventdata, handles) juga kita tambahkan program berikut
[Y,map] = rgb2ind(handles.gambar,28);
imagesc(Y)
colormap(hot)
axis off
Setelah semua program selesai, maka klik run pada edit atau dengan menekan tombol F5.
Maka akan muncul GUI yang telah kita buat dengan tombol-tombol yang telah berfungsi dengan baik.
Untuk menggunakan programnya, pertama kita harus menekan tombol Select File kemudian pilih file gambar dengan format .jpg lalu klik OK maka gambar yang kita pilih akan tampil di GUI. Jika kita ingin gambar tersebut dalam bentuk warna HSV, maka silakan klik tombol HSV, jika ingin dalam bentuk Gray, klik tombol Gray, begitu juga untuk warna Hot. Jika kita ingin gambar tersebut seperti keadaan semula, klik tombol Normal.
Gambar berikut menunjukkan gambar dengan warna HSV.


               Gambar dengan warna Grey





                   Gambar dengan warna Hot



           Gambar dengan warna yang sebenarnya