alpikasi pengolahan citra rotasi kita menggunakan matlab 7 karena pada matlab 7 sudah menyediakan fasilitas GUI.
langusng saja buka matlab 7 anda, kemudian pilih file> new> GUI
pertama kita akan membuat menu dengan menu editor.
pada tampilan GUI klik icon menu editor.
setelah keluar jendela menu editor buat sebuah menu dengan label "open". Accelerator nya Ctrl + O ganti tag nya menjadi "buka"
buat menu baru label "save". Accelerator nya Ctrl + S ganti tag nya menjadi "simpan"
buat 1 menu lagi dengan label "exit" tag "keluar", klik ok jika anda sudah selesai membuat menu.
langkah selanjutnya adalah membuat static text dan ubah property nya dengan melakukan double click.
text1 ubah string : "Program Aplikasi untuk Merotasi Citra"
text2 ubah string : "Citra Asli"
text3 ubah string : "Citra Hasil Rotasi"
text4 ubah string : "Derajat Rotasi"
untuk tag nya biarkan saja default text1, text2 dll. guna tag yaitu untuk di function nya nanti. jadi ketika kita ingin memberi aksi pada text1 kita tinggal menambahkan kode pada function text1
Kemudian buat 2 axes.
buat 1 edit text
terakhir buat slider ubah propery min nya 1.0 dan max 360.0
susun sehingga seperti ini
simpan file anda dan secara otomatis anda akan mendapatkan file dengan extensi .m
selesai untuk GUI sekarang kita ke programming, bukalah file .m anda.
cari function slider1_Callback(hObject, eventdata, handles)
tambahkan koding berikut
kemudian cari function buka_Callback(hObject, eventdata, handles)
tambahkan
selanjutnya pada bagian function simpan_Callback(hObject, eventdata, handles)
function keluar_Callback(hObject, eventdata, handles)
selesai jalankan aplikasi dengan mengklik Run.
download sourcenya disini..
pertama kita akan membuat menu dengan menu editor.
pada tampilan GUI klik icon menu editor.
setelah keluar jendela menu editor buat sebuah menu dengan label "open". Accelerator nya Ctrl + O ganti tag nya menjadi "buka"
buat menu baru label "save". Accelerator nya Ctrl + S ganti tag nya menjadi "simpan"
buat 1 menu lagi dengan label "exit" tag "keluar", klik ok jika anda sudah selesai membuat menu.
langkah selanjutnya adalah membuat static text dan ubah property nya dengan melakukan double click.
text1 ubah string : "Program Aplikasi untuk Merotasi Citra"
text2 ubah string : "Citra Asli"
text3 ubah string : "Citra Hasil Rotasi"
text4 ubah string : "Derajat Rotasi"
untuk tag nya biarkan saja default text1, text2 dll. guna tag yaitu untuk di function nya nanti. jadi ketika kita ingin memberi aksi pada text1 kita tinggal menambahkan kode pada function text1
Kemudian buat 2 axes.
buat 1 edit text
terakhir buat slider ubah propery min nya 1.0 dan max 360.0
susun sehingga seperti ini
simpan file anda dan secara otomatis anda akan mendapatkan file dengan extensi .m
selesai untuk GUI sekarang kita ke programming, bukalah file .m anda.
cari function slider1_Callback(hObject, eventdata, handles)
tambahkan koding berikut
% get(hObject,'Min') and get(hObject,'Max') to determine range of slider
nilai_slider = get(handles.slider1,'Value');
handles.nilai_slider=round(nilai_slider);
guidata(hObject,handles);
set(handles.edit1,'String',handles.nilai_slider);
hasil = imrotate(handles.data1,handles.nilai_slider,'bilinear','crop');
handles.hasil=hasil;
guidata(hObject,handles);
axes(handles.axes2);
imshow(hasil);
kemudian cari function buka_Callback(hObject, eventdata, handles)
tambahkan
[nama_file1, nama_path1]=uigetfile(...
{'*.bmp;*.jpg','File Citra (*.bmp,*.jpg)';
'*.bmp','File Bitmap (*.bmp)';...
'*.jpg','File jpeg (*.jpg)';
'*.*','Semua File (*.*)'},...
'Buka File Citra Host/Asli');
if ~isequal(nama_file1, 0)
handles.data1=imread(fullfile(nama_path1,nama_file1));
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes1);
imshow(handles.current_data1);
axes(handles.axes2);
imshow(handles.current_data1);
else
return;
end
selanjutnya pada bagian function simpan_Callback(hObject, eventdata, handles)
[nama_file_simpan, path_simpan]=uiputfile(...
{'*.bmp','file citra (*.bmp)';
'*.bmp','citra bmp (*.bmp)';...
'*.*','Semua File (*.*)'},...
'Menyimpan Citra Hasil Rotasi');
imwrite(handles.hasil,fullfile(path_simpan,nama_file_simpan),'BMP');
function keluar_Callback(hObject, eventdata, handles)
selection = questdlg(['Tutup ' get(handles.figure1,'Name') '?'],...
['Tutup ' get(handles.figure1,'Name') '...'],...
'Ya','Tidak','Ya');
if strcmp(selection,'Tidak')
return;
end
delete(handles.figure1)
selesai jalankan aplikasi dengan mengklik Run.
download sourcenya disini..
mantep gan.jelas dan detail
ReplyDeleteboleh di coba ne.
kok saya coba gagal ya ???
ReplyDeleteminta penjelasanya dong ....
TERIMAKASIH ILMUNYA
ReplyDeletekak linknya sudah mati..
ReplyDeleteFunction untuk rotasinya kok ga ada?
ReplyDelete