Deteksi Tepi dengan MATLAB. Prewitt,LoG,Roberts, dan Sobel

Deteksi Tepi, kita menggunakan Software MATLAB. MATLAB (Matrix Laboratory) adalah sebuah program untuk analisis dan komputasi numerik dan merupakan suatu bahasa pemrograman matematika lanjutan yang dibentuk dengan dasar pemikiran menggunkan sifat dan bentuk matriks.
            GUIDE atau GUI builder merupakan sebuah graphical user interface (GUI) yang dibangun dengan obyek grafik seperti tombol (button), kotak teks, slider, menu dan lain-lain. Aplikasi yang menggunakan GUI umumnya lebih mudah dipelajari dan digunakan karena orang yang menjalankannya tidak perlu mengetahui perintah yang ada dan bagaimana kerjanya. Untuk Memulai GUIDE Matlab dapat dilakukan dengan dua cara, yaitu:
1.       Melalui command matlab dengan mengetikkan: >> guide
2.       Klik tombol Start Matlab dan pilihlah MATLAB, lalu pilih GUIDE (GUI Bulder)

Setelah kita masuk dalam fitur GUI, maka kita buat tampilan untuk program Deteksi Tepi ini dengan membuat 2 Axes dan 7 Pushbutton. Axes berguna untuk menampilkan sebuah grafik atau gambar (image).  Axes sebenarnya tidak masuk dalam UIControl, tetapi axes dapat diprogram agar pemakai dapat berinteraksi dengan axes dan obyek grafik yang ditampilkan melalui axes. Sedangkan Pushbutton merupakan jenis kontrol berupa tombol tekan yang akan menghasilkan tindakan jika diklik, misanya tombol OK, Cancel, Hitung, Hapus, dan sebagainya.

Untuk penulisan koding di pushbutton, klik kiri pada push button sebelah kiri, kemudian pilih callbacks dan pilih lagi view callback, ini berguna untuk mempermudah letak dalam menulis coding. Dibawah komentar itulah kita menulis kodingannya.

Berikut kodingannya : 

Kodingan untuk memanggil gambar/ mencari gambar :

proyek=guidata(gcbo);
[namafile,direktori]=uigetfile({‘*.jpg’;’*.bmp’;’*.png’;’*.tif’},’Buka Gambar’)
if isequal(namafile,0)
return;
end
eval([‘cd ”’ direktori ”’;’]);
I=imread(namafile);
set(proyek.figure1,’CurrentAxes’,proyek.axes1);
set(imshow(I));
set(proyek.figure1,’Userdata’,I);
set(proyek.axes1,’Userdata’,I);

Kodingan untuk mengeksekusi gambar menjadi method Deteksi Tepi (Sobel)  :

proyek=guidata(gcbo);
I=get(proyek.axes1,’Userdata’);
gray=rgb2gray(I);
BW = edge(gray,’sobel’);
set(proyek.figure1,’CurrentAxes’,proyek.axes2);
set(imshow(BW));
set(proyek.axes2,’Userdata’,A);
redo_Callback(hObject, eventdata, handles);

Kodingan untuk method Prewitt :

proyek=guidata(gcbo);
I=get(proyek.axes1,’Userdata’);
gray=rgb2gray(I);
BW = edge(gray,’prewitt’);
set(proyek.figure1,’CurrentAxes’,proyek.axes2);
set(imshow(BW));
set(proyek.axes2,’Userdata’,A);
redo_Callback(hObject, eventdata, handles);

Kodingan untuk method Laplasian Of Gaussian (LOG) :

proyek=guidata(gcbo);
I=get(proyek.axes1,’Userdata’);
gray=rgb2gray(I);
BW = edge(gray,’log’);
set(proyek.figure1,’CurrentAxes’,proyek.axes2);
set(imshow(BW));
set(proyek.axes2,’Userdata’,A);
redo_Callback(hObject, eventdata, handles);

Kodingan untuk method Roberts :

proyek=guidata(gcbo);
I=get(proyek.axes1,’Userdata’);
gray=rgb2gray(I);
BW = edge(gray,’roberts’);
set(proyek.figure1,’CurrentAxes’,proyek.axes2);
set(imshow(BW));
set(proyek.axes2,’Userdata’,A);
redo_Callback(hObject, eventdata, handles);

Tombol keluar :

selection=questdlg([‘Keluar ‘ get(handles.figure1,’Name’)”],…
[‘Keluar ‘ get(handles.figure1,’Name’)”],…
‘Ya’,’Tidak’,’Ya’);
if strcmp(selection,’Tidak’)
return;
end
delete(handles.figure1)

Gimana caranya program tersebut dibuat .exe nya  ? Sebenarnya cukup mudah, setelah teman saya menemukan caranya entah darimana. Berikut :

  • Pada command window di matlab ketik mbuild -setup
  • Lalu ketik y
  • Kemudian pilih 1 dan ketik y
  • Sesudah itu ketik mcc -m nama_file_utama.m -o nama_file yang ingin dijadikan exe
  • Dan enter.
  • Cari .exe nya di folder work yang berada di program file – matlab – work.

Contoh Deteksi tepi Prewitt :
thx sob : akung

11 Responses

  1. Wahh,,,Terima kasih untuk informasinya 🙂

    Keep Blogging 🙂

    http://www.disave.blogspot.com

    Salam Persahabatan.

  2. thanks ilmunya sangat bermanfaat…

    sukses selalu…

  3. ilmunya sangat bermanfaat sekali misalkan saya terapkan dalam skripsi saya apakah diperbolehkan?

  4. Terima kasih….sangat bermanfaat…saya sudah coba kodingnya….sudah jalan…cara menyimpan gambarnya gimana ya mas ?..terlupa di listing tidak disertakan…matur nuwun

    • sama2.. wah maap bro, untuk save gambar kalo tidak salah waktu itu gagal (error) dan belom sempet di benerin sampai sekarang. project kelas sementara , cuman sebentar jd agak malas dikembangkan. hehe

  5. mbak ane tannyak, tau program untuk menggabungkan antara GUI satu dengan yang lain..???
    ne FB ane mbak, tolong balez ya.., (Huda Aja)

  6. bro ane udah nyoba nih udah ane copas ke matlab. tapi kok gambarnya gak bisa keluar?
    tulisannya “Error in @(hObject,eventdata)Coba(‘Cari_Callback’,hObject,eventdata,guidata(hObject))

    Error while evaluating uicontrol Callback”

    ane make matlab 2014
    mohon bantuannya bro

  7. Kueren Broooo

  8. sore mas,
    boleh kirim source code matlab gui dan program nya ?
    ke; putri14tet@mahasiswa.pcr.ac.id
    terimakasih mas

  9. thanks bro sangat membantu

Leave a comment