Jumat, 19 Oktober 2012

Aplikasi Edge Detection dengan MatLab

Pada posting blog kali ini, saya akan membahas tentang peningkatan mutu citra beserta salah satu aplikasinya. To the point aja yaah..

Teknik peningkatan mutu citra dapat dibagi menjadi dua, yaitu :
1. peningkatan mutu citra pada domain spatial, yang terbagi menjadi 2 :
    - point processing
    - mask processing
 2. peningkatan mutu citra pada domain frekuensi

Yang akan saya bahas dalam blog ini adalah peninglatan mutu citra pada domain spatial yang menggunakan teknik mask processing, dan salah satu contoh aplikasinya adalah edge detection (deteksi tepi).

Edge detection (deeksi tepi) pada suatu citra adalah suatu proses yang menghasilkan tepi-tepi dari objek-objek citra. deteksi tepi sendiri dimanfaatkan untuk berbagai keperluan diantaranya adalah pendeteksian tepi dalam penggunaannya untuk aplikasi pengenalan nomor mobil. Tujuan dari teknik peningkatan mutu citra adalah untuk meakukan pemrosesan terhadap citra agae hasilnya mempunyai kualitas yang relatif lebih baik dari citra awal untuk aplikasi tertentu.

Tahapan Pembuatan Aplikasi Edge Detection dengan MatLab

1. Pastikan MatLab sudah ter-install sempurna pada PC/Laptop
2. Klik icon MatLab untuk mulai menjalankannya



3. Rancang program pada GUI MatLab terlebih dahulu
    Klik File pada Menu bar >> New >> GUI >> Blank GUI , klik OK


4. Buat rancangan GUI, berikut rancangan dari aplikasi yang ingin dibuat. Terdiri dari :
    - 2 static txt
    - 2 axes
    - 3 push button


Untuk mebuat rancangan lebin menarik, kita bisa merubah warnanya, dengan cara
Klik kanan pada area yang ingin diubah warnanya, lalu pilih Property Inspector
 

Jika sudah selesai dirancang, simpan file tersebut dengan ekstensi (.fig) setelah itu akan langsung muncul tampilan m.file untuk mengetikkan coding untuk aplikasi tersebut


5. Mulai membuat script, kita mulai dari pushbutton1 (Pilih Gambar)
    Klik kanan button Pilih Gambar >> View Callback >> Callback

    Setelah itu akan muncul tampilan editor untuk memasukkan scrip edge detection yang kita buat

    Script untuk button Pilih Gambar :


% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
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);
   Script untuk button Start Detection :

 % --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton2 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
proyek=guidata(gcbo);
I=get(proyek.axes1,'Userdata');
if isequal(I,[])
msgbox('PLEASE CHOOSE YUOR PICTURE !!!');
else
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);
end
   Script untuk button Simpan Gambar :


% --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton3 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
proyek=guidata(gcbo);
[namafile,direktori]=uiputfile({'*.jpg';'*.*'},'Simpan Citra');
I=get(proyek.axes2,'Userdata');
imwrite(I,strcat(direktori,namafile));

Setelah semua script selesai ditulis, simpan file tersebut dengan format "nama_file.m" kemudian RUN.
Jika sudah tidak ada script yang error, maka akan keluar output sebagai berikut





 6. Klik Tombol Start Detection, maka akan muncul text box "Please Choose Your Picture !!!"
     Text box ini muncul karena kita belum memilih gambar yang ingin di proses.




7. Untuk menganbil gambar, klik button Pilih Gambar, setelah itu pilih gambar yang ingin di proses



   Klik Open, maka akan tampil output sebagai berikut :






8. Setelah gambar berhasil tampil, klik button Start Detection, maka akn keluar outpu sebagai berikut



9. Dan terakhir, klik button Simpan Gambar untuk meyimpan hasil dari aplikasi Edge Detection ini dengan format "nama_file.jpg"


Demikian yang bisa saya jelaskan pada tulisan saya kali ini, semoga bermanfaat, dan terakhir .......

SELAMAT MENCOBA ^^,