P. 1
Laporan Citra Belom Kelar

Laporan Citra Belom Kelar

|Views: 460|Likes:
Dipublikasikan oleh Imlie Toyou

More info:

Published by: Imlie Toyou on Jan 25, 2012
Hak Cipta:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

01/12/2014

pdf

text

original

BAB I PENDAHULUAN

A. Latar Belakang Peningkatan perbaikan kualitas Citra merupakan salah satu cara yang digunakan guna ntuk perbaikan suat Citra atau gambar. Meskipun sebuah citra kaya informasi, namun seringkali citra yang dimiliki mengalami penurunan mutu (degradasi), misalnya mengandung cacat atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring), dan sebagainya. Tentu saja citra semacam ini menjadi lebih sulit diinterpretasi karena informasi yang disampaikan oleh citra tersebut menjadi berkurang. Agar citra yang mengalami gangguan mudah diinterpretasi (baik oleh manusia maupun mesin), maka citra tersebut perlu dimanipulasi menjadi citra lain yang kualitasnya lebih baik.Sehingga dalam pembahasan ini kami akan membahas bagaimana "Perbaikan kualitas Citra dalam Domain Spasial " . Operasi inidigunakan untuk memperaiki sebuah citra menjadi lebih baik dari sebelumnya. Secara umum, objek dalam citra dinyatakan sebagai titik yang nilai keabuannyaberbeda.Banyak bentuk kernel/mask yang dapat digunakan sebagai operator dalam perbaikan kualirs Citra, antara lain dengan menggunakan filter – filter yang sudah ada seperti LPF (Low Pass Filter), HPF (High Pass Filter), MPF (Median Pass Filter),Gaussian Filter dan bisa juga dapat kita gunakan filter buatan sendiri dan sebagainya. Dalam program Matlab (Matrix Laboratory), beberapa operator sudah ada dalam toolbox-nya, sehingga mudah dalam implementasinya yang penting kita mengetahui sintaksnya. Pengolahan citra digital dapat dilakukan berbagai cara diantaranya adalah representasi dan permodelan citra, peningkatan kualitas citra, restorasi citra, analisis citra, rekonstruksi citra dan kompresi citra. Pada makalah ini, pengolahan citra digital difokuskan pada teknik peningkatan mutu suatu citra dalam domain spasial. Peningkatan kualitas citra bertujuan menghasilkan citra dengan kualitas yang lebih baik dibandingkan dengan citra semula. Analisis citra bertujuan mengidentifikasi parameter yang diasosiasikan dengan ciri dari objek dalam citra, untuk selanjutnya parameter tersebut digunakan dalam menginterpretasi citra.. Penggunaan Filter dalam perbaikan suatu citra sangatlah penting guna memperbaiki kualitas suatu citra,namun apabila dalam penerapannya kita salah menempatkannya maka kualitas citra tersebut tidak akan menghasilkan sebuah citra yang baik sesuai dengan keinginan kita atau dapat dikatakan gagal. Karena itu perbaikan kualitas suatu citra itu sangatlah penting dalam kaitannya dalam kehidupan ini. B. Rumusan Masalah

1

Adapun rumusan massalah yang dibahas dalam tugas ini adalah :  Apa yang dimaksud dengan citra digital dan perbaikan kualitas citra dalam domain Spasial.  Bagaimana Implementasi perbaikan kualitas dalam domain Spasial dengan Menggunakan MATLAB

A. Tujuan Memberikan pemahaman kepada mahasiswamengenai berbagai teknik perbaikan citra padadomain spasial, antara lain: 1. Mengetahui apa itu citra digital dan perbaikan kualitas citra dalam domain spasial 2. Mengetahui Implementasi perbaikan kualitas dalam domain Spasial dengan Menggunakan MATLAB

BAB II DASAR TEORI

2

Penjelasan Umum Tentang Citra Istilah “citra” yang pada umumnya digunakan dalam bidang pengolahan citra diartikan sebagai suatu fungsi kontinu dari intensitas cahaya f(x,y) dalam bidang dua dimensi, dengan (x,y) menyatakan suatu koordinat dan nilai f pada setiap titik (x,y) menyatakan intensitas atau tingkat kecerahan (brightness). Suatu citra digital adalah suatu citra kontinu yang diubah ke dalam bentuk diskrit, baik koordinat maupun intensitas cahayanya. Kita dapat menganggap suatu citra digital sebagai suatu matriks, dimana indeks baris dan kolomnya menyatakan koordinat sebuah titik pada citra tersebut dan nilai masing-masing elemennya menyatakan intensitas cahaya pada titik tersebut. Suatu titik pada sebuah citra digital sering disebut sebagai “image element” (elemen citra), “picture element” (elemen gambar), “pixel” ataupun “pel”. Citra digital yang berupa matrik dengan ukuran M x N digambarkan sebagai berikut:

Gambar 2.1 Citra f (x,y) Berukuran M x N Tetangga-Tetangga Piksel

3

0}. Himpunan piksel tersebut dinamakan 4 tetangga p atau N4 (p) terdapat pada gambar 2.1.y) memiliki empat tetangga horisontal dan vertikal dengan koordinat-koordinatnya adalah sebagai berikut : (x+1.0.y). (x-1. Sedangkan gabungan N4 (p) dan Np(p) dinamakan dengan N8 (p). Beberapa titik Np (p) atau N8 (p) bisa saja terletak di luar citra jika (x.2(c).1. Piksel dengan ruang yang lebih gelap adalah N8 (2) yaitu {0. 4 .y).y-1).y-1). (x-1. (x.y) terletak dipinggir citra.Sebuah piksel p pada koordinat (x. (x.2(a).1. Contoh N8 (p) terdapat pada gambar 2. Disamping itu juga terdapat empat tetangga diagonal p yang disebut dengan Np (p) dengan koordinat-koordinatnya adalah : (x+1. (x+1.1.y+1).y+1).0. koordinat-koordinatnya : (x+1.y-1).y-1). (x-1.0}. Piksel dengan ruang yang lebih gelap adalah Np (2) yaitu {0. (x-1.0}.y). (x-1.y).1.y+1). (x-1. (x+1.0. (x.2(b). Piksel dengan ruang yang lebih gelap adalah N4 (2) yaitu {0.y+1). Contoh Np (p) terdapat pada gambar 2.y-1).0.y-1).1.

Untuk memberikan gambaran umum. 5. 2. 3. 4. maka pembahasan disini dilakukan cara membagi operasi pengolahan citra dalam beberapa kelompok yaitu : 1.Jenis-Jenis Pengolahan citra Mengingat banyak dan luasnya bidang aplikasi dari pengolahan citra. tidaklah mungkin akan kita bahas setiap operasi secara terperinci. Perbaikan Citra (image restoration) Peningkatan kualitas citra (image enhancement) Registrasi citra (image registration) Pemampatan citra (image compression) Pemilahan Citra (image segmentation) Segmentation Enhancement Registration Restoration Compression 5 .

Proses tersebut dilakukan dengan menggunakan berbagai macam metode tergantung pada kondisi yang diharapkan pada citra tersebut. Pemampatan citra merupakan proses untuk meminimasi jumlah bit yang diperlukan untuk merepresentasikan suatu citra digital. Pada proses ini tiap-tiap citra digabungakan menjadi suatu objek agar dapat dianalisa lebih lanjut. memperbesar dan interpolasi.Registrasi citra dilakukan berdasarkan beberapa atau banyak citra dari objek yang diambil secara terpisah.Gambar 2.3 Kelompok Pengolahan Citra Perbaikan citra adalah proses untuk mendapatkan kembali (rekontruksi) citra asli dari suatu citra yang telah mengalami proses degradasi. Secara umum metode-metode yang digunakan dalam peningkatan kualitas citra dapat digolongkan dalam dua kelompok yaitu metode domain 6 . Pemilahan citra merupakan proses pemilahan citra menjadi bagian-bagian pokok dari citra tersebut. menghilangkan gangguan. metode yang dapat dilakukan berbeda-beda tergantung pada citra yang akan diproses serta kondisi yang diharapkan. misalnya mempertajam bagian tertentu pada citra. Proses ini banyak diterapkan pada proses pengenalan citra (image recognition) Peningkatan Kualitas Citra Peningkatan kualitas citra merupakan suatu proses yang dilakukan untuk mendapatkan kondisi tertentu pada citra. Pada umumnya citra mempunyai jumlah data yang besar dalam bentuk bitbit píxel. sehingga memerlukan kapasitas media penyimpanan yang besar. manipulasi kontras dan skala keabuan. Peningkatan kualitas citra adalah pemrosesan sebuah citra yang ditujukan untuk menghasilkan kondisi tertentu pada citra.

g (x. teknik yang digunakan pada metode ini seperti highpass filtering yang bertujuan untuk mempertajam citra. Ciri-ciri dari fungsi low pass filter adalah sebagai berikut : Sebagai contoh dibuat program Low Pass Filter untuk n=3dan n=5 dengan fungsi filter rata-rata sebagai berikut : 7 . Low Pass Filter Low pass filter adalahprosesfilter yangmengambilcitradengangradiasiintensitasyang halusdanperbedaanIntensitasyangtinggiakandikurangiataudibuang. teknik pemrosesannya berdasarkan pada modifikasi transformasi Fourier terhadap nilai piksel. Mengenai cara kerja dari metode domain frekuensi ini tidak dibahas lebih lanjut pada tugas besar ini karena penekanannya dititikberatkan pada metode domain spasial. 1. Salah satu filtering citra yang termasuk dalam metode domain spasial adalah Median filter.y).y)] f (x. sedangkan T adalah operator atas f.y) = T [f (x. Contoh dari metode ini adalah operasi filtering citra yaitu penghalusan citra dengan cara menghilangkan noise pada citra tersebut.y) adalah citra hasil atau keluaran.y) adalah fungsi citra masukan.frekuensi dan metode domain spasial Pada metode domain frekuensi. Metode Yang Terdapat padaDomain Spasial Metode domain spasial adalah suatu proses yang dioperasikan langsung terhadap piksel. Fungsi matematis dari metode domain spasial adalah sebagai berikut : g (x. yang didefinisikan terhadap kumpulan tetangga-tetangga (x.

Contoh Penerapan Low Pass Filter (a) Gambar Asli. Median Filter Metode Median filter adalah salah satu teknik filtering citra non linear yang berfungsi untuk memperhalus suatu citra dan menghilangkan noise atau gangguan yang berupa bintik putih.15.25 2.5. (b)-(f) hasil dari spatial lowpass filtering dengan ukuran mask3.7.High Pass Filter High pass filter Adalah proses filter yg mengambil citra dengan gradiasi intensitas yg tinggi dan perbedaanintensitas yg rendah akan dikurangi atau dibuang. Ciri-ciri dari fungsi High pass filter adalah sebagai berikut : Sebagai contoh dibuat program High Pass Filter untuk n=3 dengan fungsi filter rata-rata sebagai berikut : 3. Cara kerja metode ini diakukan dengan 8 .

horisontal.4 Proses Kerja Median filter 4. A B D A A A B D A D A B F B D A A C B C A A D B C A B D A A A B D A D A B B B D A A C B C A A D B C Gambar 2. nilai tengah yang didapat tersebut akan menjadi nilai yang menggantikan nilai piksel yang akan diganti 9 . Cara kerja filter ini sangat sederhana dimana proses pencarian nilai tengah untuk mengganti nilai piksel dilakukan secara bertahap dengan mencari nilai tengah secara vertikal. Metode Multilevel Median Filter Metode Multilevel median filter digunakan untuk melakukan proses filtering dan untuk menghaluskan suatu citra digital. diagonal dan setelah didapatkan nilai tengahnya selanjutnya diurutkan kembali nilai yang didapatkan dengan nilai piksel yang akan diganti dan diambil nilai tengahnya.mengganti nilai piksel yang diacu dalam suatu bidang operasi dengan suatu formula yang memanfaatkan nilai piksel tetangganya.

-N ≤k ≤ N} W2 (i.j).j). Z2 (i.j) (s=1.j)] Ymax (i.j+k}.j).j).4) adalah nilai median pada elemenelemen dari keempat himpunan.Gambar 2. kemudian dicari nilai minimum (Ymin (i. -N ≤ k ≤ N} Misalkan Zs (i.j) = {x (i+k. -N ≤ k ≤ N} W3 (i.j). Terdapat 4 himpunan dari bidang W yang didefinisikan sebagai berikut : W1(i. Z4 (i.j) = {x (i+k.j). Ymin (i. -N ≤ k ≤N} W4 (i.j}.3.j) = max[Z1 (i.j)] 10 .j)) dari Zs (i.j). Z4 (i.j) = min[Z1 (i.j) = {x (i.j+k}.…) adalah serangkaian citra digital dan W adalah mask atau bidang operasi dengan ukuran (2N+1)x(2N+1) dengan pusat pada piksel (i.j) = {x (i+k.j)) dan nilai maksimum (Ymax (i. Z2 (i.5 Contoh Himpunan Dari Bidang W Misalkan x (….j).j-k}.2. Z3 (i. Z3 (i.

Y (i.Nilai piksel yang didapat dari metode Multievel median filter ini (Y (i. dan nilai piksel yang lama (x (i. Penilaian secara objektif yaitu dengan menggunakan suatu ukuran tertentu. Signal to Noise Ratio (PSNR) PSNR = 20 Log 10  255     MSE  BAB III PEMBAHASAN Citra Digital Citra (image) bisa didefinisikan sebagai fungsi dua dimensi f(x.j) = Med [Ymin (i. Root Mean Square Error (RMSE) RMSE = MSE 1.y) di mana x dan y adalah koordinat spasial dan amplitudo f pada setiap pasang (x.j). Mean Square Error (MSE) MSE = 1 MN M −1 x =0 (f (x.j))] Kriteria Penilaian Kualitas Citra Analisa terhadap citra yang telah diproses dapat dilakukan baik dengan cara objektif. maka beberapa parameter yang dijasikan sebagai kriteria penilaian objektif adalah sebagai berikut: 1. (x (i. Untuk citra asal f (x.y) – g (x.j).j).j).y) dengan ukuran piksel M x N.j)). Jika x dan y berhingga (finite) dan 11 . Ymax (i.y) disebut intensitas (gray level) citra pada titik tersebut.Kriteria objektif didasarkan pada error yang terdapat pada citra yang telah diolah.y))2 ∑ ∑ y =0 N −1 2.j)) adalah nilai median dari Ymin (i.y) dan citra hasil proses g (x. Ymax (i.

komponen-komponen tersebut digantikan oleh komponen R(ed).Elemen-elemen dari citra digital tersebut biasanya disebut dengan pixel. akan diperoleh warna campuran sebanyak 256 x 256 x 256 = 1677726 jenis warna. komponen-y dan komponen-z.z). Untuk warna. Citra digital adalah citra dengan f(x.0). nilai rentangnya paling kecil = 0 dan paling besar = 255. dapat dibayangkan sebagai sebuah vektor di ruang 3 dimensi yang biasanya dipakai dalam matematika. 255). B(lue). Dengan cara ini. misalnya merah. Pilihan skala 256 ini didasarkan pada cara mengungkap 8 digit bilangan biner yang digunakan oleh mesin komputer. sedangkan untuk hitam= RGB(0. Digitalisasi dari koordinat spasial citra disebut dengan image sampling. 12 . Putih = RGB (255.Citra digital dapat dibayangkan sebagai suatu matriks dimana baris dan kolomnya menunjukkan gray level di titik tersebut. sedangkan digitalisasi dari gray-level citra disebut dengan gray-level quantization. Untuk monitor komputer. digabungkan dalam membentuk suatu susunan warna yang luas. Sebuah jenis warna. Jadi.255.diskrit (tdk kontinyu) maka disebut citra digital.255). 75.y) yang nilainya didigitalisasi-kan (dibuat diskrit) baik dalam koordinat spasialnya maupun dalam gray level nya. Citra digital terdiri dari sejumlah elemen berhingga yang masing-masing mempunyai lokasi dan nilai. yang merupakan singkatan dari picture elements. Misalkan sebuah vektor dituliskan sebagai r = (x. hijau. koordinatnya dinyatakan dalam bentuk tiga bilangan. dan biru.y.Setiap warna dasar. sebuah jenis warna dapat dituliskan sebagai berikut: warna = RGB(30. dapat diberi rentang-nilai. Elemen-elemen x dan y disebut elemen citra / pels / pixel. Tujuan pengolahan citra digital adalah untuk mendapatkan citra baru yang lebih sesuai untuk digunakan dalam aplikasi tertentu.0. G(reen). yaitu komponen-x. Dasar Warna RGB adalah suatu model warna yang terdiri dari merah.

menghilangkan gangguan. maka jumlah byter yang terpakai di memory adalah 200x300x2 = 120000bit. misalnya mempertajam bagian tertentu pada citra.sebagai contoh. sementara piksel yang memiliki derajat keabuan yang lebih besar dari batas akan diubah menjadi bernilai 1. manipulasi kontras dan skala keabuan.Citra Gray Graysacale adalah warna-warna piksel yang berada dalam rentang gradasi warna hitam dan putih. jika kita mempunyai gambar berukuran 200x300 pixel. sebagai contoh. Secara umum metode-metode yang digunakan dalam peningkatan 13 . Jadi untuk gambar yang biasanya berwarna hitam puth. memperbesar dan interpolasi. Piksel yang memiliki derajat keabuan lebih kecil dari nilai batas yang ditentukan akan diberikan nilai 0. maka jumlah byter yang terpakai di memory adalah 200x300x1 = 60000bit. jika kita mempunyai gambar berukuran 200x300 pixel. nilai nya 0 dan 1. Proses tersebut dilakukan dengan menggunakan berbagai macam metode tergantung pada kondisi yang diharapkan pada citra tersebut. Citra Biner Citra biner diperoleh melalui proses pemisahan piksel-piksel berdasarkan derajat keabuan yang dimilikinya. Perbaikkan Kualitas Citra (image enhancement) Perbaikan kualitas citra merupakan suatu proses yang dilakukan untuk mendapatkan kondisi tertentu pada citra.

Tujuan pemugaran citra hampir sama dengan operasi perbaikkan citra. Setelah tampil GUIDE quick start. seperti gambar dibawah ini. 3. Perbaikkan tepian objek (edge enhancement) c. Perbaikkan kontras gelap/terang b. Kemudian setelah masuk ke program MATLAB. pada pemugaran citra penyebab degradasi gambar diketahui. 14 . Berikut adalah cara membuat GUI (GeneralUser Interface) perbaikan citra menggunakan MatLab : 1. Penghilangan kesamaran (deblurring) b. ciri-ciri khusus yang terdapat didalam citra lebih ditonjolkan. pilih Blank GUI.kualitas citra dapat digolongkan dalam dua kelompok yaitu metode domain frekuensi dan metode domain spasial Image enhancement bertujuan untuk memperbaiki citra dengan cara memanipulasi parameter -parameter citra. Contoh-contoh operasi pemugaran citra : a. pilih File → New → GUI atau bisa ketik guide di Command Windows Kemudian Enter. Contoh-contoh operasi perbaikan kualitas citra: a. Dengan operasi ini. perbaikan kualitas citra terdapat pada toolbox image processing. Bedanya. Penajaman (sharpening) d. Pemberian warna semu (pseudocoloring) e. Penghilangan derau (noise) Implementasi perbaikan kualitas dengan Menggunakan MatLab Pada MATLAB. Penapisan derau (noise filtering) Pemugaran Citra (image restoration) Operasi ini bertujuan menghilangkan cacat pada citra. Pertama buka program MATLAB 2.

Selanjutnya akan muncul tampilan jendela GUIDE layout editor untukmempermudah kita dalam membuat antar muka grafis. 15 .4.

Setelah melakukan desain rancangan seperti yang terlihat pada gambar dibawah ini. 5. Gunakan komponenkomponen yang ada pada bagian kiri layar dengan cara mengklik dan menarik komponen yang akan digunakan ke dalam area rancangan. Run Aplikasi ini dengan mengklik icon atau menekan F5 16 .m yang merupakan editor untuk memasukkan script program ke dalam rancangan yang telah kita buat sebelumnya. simpan program dengan nama UAS_Citra. maka secara otomatis akan terbentuk m-file matlab dengan nama yang sama. yaitu UAS_Citra.Desain tampilan sesuai dengan aplikasi yang akan kita buat.fig.

gambar tersebut otomatis akan diresize menjadi 512 x 512. Setelah pilih gambar. Untuk mengetahui nilai PSNR serta MSE dari gambar hasil filter tersebut. cukup memilih button maka akan muncul nilai PSNR dan MSEnya.6. Selanjutnya kita akan diberi pilihan untuk mengubah gambar tersebut menjadi Grayscale atau tetap RGB. Gambar yang di masukkan diberi noise terlebih dahulu dan kemudian akan melakukan pemfilteran. Klik button Pilih Gambar untuk pilih gambar yang akan kita gunakan 7. 17 . 8.

18 . kemudian klik button PSNR & MSE untuk menghitung PSNR dan MSEnya. Gambar tersebut akan diberi noise dan kemudian akan melakukan pemfilteran.9. Kalau kita pilih Grayscale maka akan tampil seperti di bawah ini 10.

Penajaman (sharpening) d. Pemberian warna semu (pseudocoloring) e. Perbaikan kualitas citra merupakan suatu proses yang dilakukan untuk mendapatkan kondisi tertentu pada citra. yang bertujuan untuk mendapatkan suatu citra hasil yang lebih baik dari sebelumnya. Contoh-contoh operasi perbaikan kualitas citra: a.y) disebut intensitas (gray level) citra pada titik tersebut. Penapisan derau (noise filtering) Untuk membuat aplikasi perbaikan kualitas citra dapat digunakan program MATLAB dimana sudah tersedia Toolbox–toolbox yang dapat digunakan. pada 19 . dimana x dan y berhingga (finite) dan diskrit (tdk kontinyu). Proses tersebut dilakukan dengan menggunakan berbagai macam metode tergantung pada kondisi yang diharapkan pada citra tersebut. Perbaikkan tepian objek (edge enhancement) c.BAB IV PENUTUP Kesimpulan Citra digital adalah fungsi dua dimensi f(x.y) di mana x dan y adalah koordinat spasial dan amplitudo f pada setiap pasang (x. Perbaikkan kontras gelap/terang b.

. 20 ..Executes just before UAS_Citra is made visible.DO NOT EDIT % --. gui_Singleton. mfilename.Tampil.. eventdata. varargin{:}). 'gui_OutputFcn'.'visible'.'off') % Choose default command line output for UAS_Citra handles.. LAMPIRAN Lampiran Script Matlab GUI (UAS_CITRA) function varargout = UAS_Citra(varargin) % Begin initialization code .. 'gui_Singleton'. .output = hObject. % UIWAIT makes UAS_Citra wait for user response (see UIRESUME) % uiwait(handles. varargin{:}). end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State. @UAS_Citra_OutputFcn. . dengan tujuan agar dapat lebih mudah dipahami bagi pembaca lainnya.'off') set(handles. 'gui_OpeningFcn'. . @UAS_Citra_OpeningFcn. % Update handles structure guidata(hObject.. gui_State = struct('gui_Name'.Tampil. handles).gui_Callback = str2func(varargin{1}).figure1). oleh karena itu penulis dapat memberikan saran kepada pembaca yang mungkin lebih mengerti dalam menggunakan MATLAB. 'gui_Callback'. [] . . end % End initialization code .DO NOT EDIT gui_Singleton = 1. 'gui_LayoutFcn'... else gui_mainfcn(gui_State.'visible'. . handles. function UAS_Citra_OpeningFcn(hObject.. if nargin && ischar(varargin{1}) gui_State.. hendaknya dalam pembuatan programnya dibuat output yang lebih detail pada setiap tahap perbaikan kualitas citra. Saran Penulis menyadari laporan ini masih memiliki banyak kekurangan. varargin) %set(handles.kasus ini digunakan pengolahan citra dimana secara otomatis matlab melakukan pengolahan terhadap citra sesuai dengan syntaksnya. []).

% --.proyek. eventdata.'Userdata'). % hObject handle to pushbutton1 (see GCBO) % eventdata reserved .figure1.']). %else %PSF=fspecial('unsharp').Tampil.[]) %msgbox('Belum ada gambar!'.to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % --.axes1.'CurrentAxes'.'bilinear').Executes on button press in pushbutton1. eventdata. set(imshow(I)).'visible'.Executes on button press in pushbutton3.tif'}.I).0)png return. set(proyek.figure1. %set(proyek.axes1.jpg'.Tampil.I). %redo_Callback(hObject. %set(proyek. eventdata.'*.'on') set(handles. handles) proyek=guidata(gcbo). handles) hello_world.axes2.'Userdata'.Executes on button press in pushbutton2.'CurrentAxes'. eventdata.'*.axes2). end eval(['cd ''' direktori '''.'. %set(handles. 21 . set(proyek.bmp'. set(proyek.proyek.'Peringatan'.'Buk a Gambar') if isequal(namafile.'salt & pepper'). %proyek=guidata(gcbo).axes1). %A=imnoise(I.'*. handles) % Get default command line output from handles structure varargout{1} = handles.to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % --. function pushbutton2_Callback(hObject.'string'. function pushbutton3_Callback(hObject. %end % hObject handle to pushbutton2 (see GCBO) % eventdata reserved .'Userdata'.figure1.Tampil.direktori]=uigetfile({'*.A). function varargout = UAS_Citra_OutputFcn(hObject. [namafile. I=imresize(R. function pushbutton1_Callback(hObject. %I=get(proyek.'Userdata'. handles). R=imread(namafile).[512 512]. %set(imshow(A)).% --. %if isequal(I. eventdata.'Gambar Asli Telah Diresize Menjadi 512 x 512').output.'on') set(handles.'visible'. handles) proyek=guidata(gcbo).'warn').Outputs from this function are returned to the command line.

set(proyek.axes4).figure1.[]) msgbox('Maaf Belum disimpan karena Belum ada gambar!'. end 22 . A=imnoise(Y.axes5).axes1).'Userdata').axes2.proyek.'Simpan Citra').to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % --.axes2).figure1.figure1.'speckle').axes5. else PSF=fspecial('unsharp').'warn'). set(proyek.A).[]) msgbox('Maaf Belum Diberi Noise karena Belum Ada Gambar.. handles) proyek=guidata(gcbo). cla. else imwrite(I.direktori]=uiputfile({'*.!!!'.[]) msgbox('Maaf Belum Diberi Noise karena Belum Ada Gambar. else A=imnoise(Y.to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % --.. function pushbutton4_Callback(hObject.proyek. set(imshow(A)).'Userdata'). if isequal(I. set(proyek. I=get(proyek.figure1.'CurrentAxes'.*'}..jpg'.namafile)). handles) proyek=guidata(gcbo).axes2.'poisson').'Userdata'. cla.proyek. eventdata. idMode = get (hObject. function mode_Callback(hObject.axes2). set(proyek. Y=get(proyek. if idMode ==5 if isequal(Y.Executes on button press in pushbutton4.'Peringatan'.axes2).'Userdata'. set(proyek.figure1. end % hObject handle to pushbutton3 (see GCBO) % eventdata reserved .axes2. end else if idMode ==4 if isequal(Y.strcat(direktori.'CurrentAxes'.'warn').proyek. set(proyek.proyek. cla. 'Value').'*.'Peringatan'. set(imshow(A)).'Peringatan'.[namafile.'warn').A). set(proyek. eventdata.proyek.'CurrentAxes'. cla.figure1.. % hObject handle to pushbutton4 (see GCBO) % eventdata reserved . set(proyek.'CurrentAxes'.!!!'.Executes on selection change in mode.'CurrentAxes'.'CurrentAxes'.

eventdata.!!!'.figure1.. end else if idMode == 1 msgbox('Maaf Silahkan Pilih Noise Ke-1.A).Executes during object creation. get(0.[]) msgbox('Maaf Belum Diberi Noise karena Belum Ada Gambar. set(proyek. % See ISPC and COMPUTER.'Userdata'.axes2).'Value')} returns selected item from mode % --.to be defined in a future version of MATLAB % handles empty . set(imshow(A)).'white').proyek. Ke-2. A=imnoise(Y. else A=imnoise(Y.'Peringatan'.proyek.to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject.figure1.'String') returns mode contents as cell array % contents{get(hObject. if ispc && isequal(get(hObject.'gaussian')..else if idMode == 3 if isequal(Y.'warn').'Userdata'.!!!'..'BackgroundColor'.[]) msgbox('Maaf Belum Diberi Noise karena Belum Ada Gambar..'Peringatan'. atau Ke3. set(imshow(A)). after setting all properties.A). handles) % hObject handle to mode (see GCBO) % eventdata reserved .'CurrentAxes'. set(proyek.'defaultUicontrolBackgroundColor')) set(hObject.!!!'.'warn').axes2. set(proyek.'warn') end end end end end % hObject handle to mode (see GCBO) % eventdata reserved .handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows.. else PSF=fspecial('unsharp').'BackgroundColor'). function mode_CreateFcn(hObject.'Peringatan'.'CurrentAxes'. end 23 ..'salt & pepper').axes2).axes2. set(proyek. end else if idMode == 2 if isequal(Y.

'symmetri'.Executes on selection change in mode1.A)..axes4. else J=[1/20 1/20 1/20.J).[3 3]).'Peringatan'. eventdata.figure1.!!!'.'CurrentAxes'. set(proyek. set(imshow(B)). set(imshow(B.'CurrentAxes'.]. set(proyek. B=filter2(J.. end else if idMode == 3 if isequal(A.figure1.[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar.'warn').% --.J.4].'CurrentAxes'.'warn').1/20 1/20 1/20.[4.[]) 24 . set(imshow(B)). end else if idMode == 4 if isequal(A.proyek. set(proyek.axes4)..'Userdata'.'Userdata'. set(imshow(B))..B).'DisplayRange'. A=get(proyek.axes2.!!!'.axes4). else B=medfilt2(A.figure1.. end else if idMode ==5 if isequal(A. 1/50 1/50 1/50. set(proyek. if idMode ==7 if isequal(A.'conv'). set(proyek.B).B).axes4). set(proyek. B=imfilter(A. else J=fspecial('gaussian'.'Userdata').'warn').axes4.axes4.'Userdata'. set(proyek.proyek. function mode1_Callback(hObject..'Peringatan'..'warn'). set(proyek.. end else if idMode == 6 if isequal(A. 'Value').!!!'.'Userdata'. else J=fspecial('average'.figure1. idMode = get (hObject.B).axes4).!!!'.15) B=imfilter(A.proyek.[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar.'Peringatan'.'CurrentAxes'.axes4.proyek.[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar. handles) proyek=guidata(gcbo).[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar.'Peringatan'.[4 4]).[])).

25 . set(imshow(B.'Userdata'.axes4).to be defined in a future version of MATLAB % handles empty .'String') returns mode1 contents as cell array % contents{get(hObject.A).!!!'. 1/9 1/9 1/9.msgbox('Maaf Belum Difilter karena Belum Ada Gambar. function mode1_CreateFcn(hObject. Ke-2.B). set(proyek.proyek.'Peringatan'.axes4. Ke-3 Atau Ke4..'warn').'Peringatan'.'warn').'CurrentAxes'.'warn') end end end end end end end % hObject handle to mode1 (see GCBO) % eventdata reserved . set(imshow(B. -1 9 -1. else %High Pass Filter J=[-1 -1 -1.'Peringatan'..[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar. after setting all properties.'DisplayRange'.handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows.'Userdata'...[])).1/9 1/9 1/9].axes4. end else if idMode == 2 if isequal(A.!!!'. set(proyek. B=filter2(J. -1 -1 -1]. handles) % hObject handle to mode1 (see GCBO) % eventdata reserved .. eventdata.!!!'.B).figure1.[])). set(proyek.A). else %Low Pass Filter J=[1/9 1/9 1/9.axes4)..figure1. set(proyek.to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject.proyek. end else if idMode == 1 msgbox('Maaf Silahkan Difilter Ke-1.'Value')} returns selected item from mode1 % --. B=filter2(J.'DisplayRange'.'CurrentAxes'.Executes during object creation.

'Peringatan'.'white'). I=get(proyek. else Y=rgb2gray(I).'Userdata').'BackgroundColor').to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % --. eventdata.strcat(direktori.!!!'.to be defined in a future version of MATLAB % handles empty .Y). end % --.jpg'.handles not created until after all CreateFcns called % Hint: place code in OpeningFcn to populate axes4 % --.axes5.. if ispc && isequal(get(hObject.axes1.'Peringatan'.*'}.'Peringatan'. set(imshow(Y)).namafile)).% See ISPC and COMPUTER.'warn'). after setting all properties. handles) proyek=guidata(gcbo).!!!'.'Simpan Citra'). set(proyek.'warn').. get(0.'*. eventdata.axes4.'Userdata'.Executes on button press in pushbutton5.'defaultUicontrolBackgroundColor')) set(hObject. eventdata. end else if idMode == 1 if isequal(I. set(proyek. 'Value').Executes on selection change in mode3. 26 . if isequal(I.proyek.'BackgroundColor'.[]) msgbox('Maaf Belum disimpan karena Belum ada gambar!'..direktori]=uiputfile({'*. else imwrite(I.Executes during object creation. handles) proyek=guidata(gcbo).axes5).'CurrentAxes'. if idMode == 2 if isequal(I. function axes4_CreateFcn(hObject. function pushbutton5_Callback(hObject.[]) msgbox('Maaf Belum Ada Gambar.'Userdata'). handles) % hObject handle to axes4 (see GCBO) % eventdata reserved . [namafile..'warn'). I=get(proyek. idMode = get (hObject.[]) msgbox('Maaf Belum Belum Ada Gambar.figure1. end % hObject handle to pushbutton5 (see GCBO) % eventdata reserved . function mode3_Callback(hObject.

'Userdata').'Peringatan'. else citra = A.'BackgroundColor'.axes2.'BackgroundColor').'white').'String') returns mode3 contents as cell array % contents{get(hObject.figure1.'Userdata'.axes5. eventdata. set(proyek. handles) proyek=guidata(gcbo). 'Value'). baris= size(citra. if ispc && isequal(get(hObject.proyek.Executes on selection change in mode4. function mode4_Callback(hObject.axes5).. kolom = size(citra. set(imshow(Y)). end % --.else Y=I. handles) % hObject handle to mode3 (see GCBO) % eventdata reserved .[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar..'Value')} returns selected item from mode3 % --. function mode3_CreateFcn(hObject. eventdata. A=get(proyek. idMode = get (hObject.'CurrentAxes'.1).!!!'.Executes during object creation. % See ISPC and COMPUTER.'warn').to be defined in a future version of structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject.handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows.2). after setting all properties. get(0. %matriks High Pass Filter 27 . size(citra). set(proyek. if idMode ==6 if isequal(A. end end end % hObject % eventdata MATLAB % handles handle to mode3 (see GCBO) reserved .to be defined in a future version of MATLAB % handles empty .'defaultUicontrolBackgroundColor')) set(hObject.Y).

15) B=imfilter(A... else J=fspecial('average'.j.B).warna)+citra(i+1. end else if idMode == 3 if isequal(A. 28 . set(proyek.axes4.j+1.warna)+ citra(i+1.J).'CurrentAxes'.hasilcitra).[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar.j-1.j.4].1). set(proyek.axes4).matriksHPF =[1 0 1..figure1.figure1. set(imshow(B)). baris= size(citra.'warn').[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar.warna)/9.proyek. set(imshow(B)). for warna = 1 : 3 for i = 2 : (baris-1) for j = 2 : (kolom-1) hasilcitra(i.j+1. set(proyek. else J=fspecial('gaussian'.'Userdata'.warna) = .warna) +citra(i.j.[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar.'CurrentAxes'.axes4. size(citra).warna) + citra(i-1..j-1. set(proyek.warna)+citra(i.'warn').axes4). hasilcitra=double(hasilcitra).'CurrentAxes'.j-1.j. set(proyek.j+1. end end end %Blok display citra hasilcitra=uint8(hasilcitra).'symmetri'.axes4..!!!'.warna)+ citra(i+1.[4..B).proyek.warna) = hasilcitra(i.'Peringatan'. B=imfilter(A.warna) + citra(i-1.'Userdata'.proyek.. hasilcitra(i.'Userdata'. else citra = A. end else if idMode == 5 if isequal(A. citra(i-1.!!!'.J. set(imshow(hasilcitra)).axes4).[3 3]).j.warna) + citra(i. citra = double(citra).figure1.!!!'. 1 0 1]. end else if idMode ==4 if isequal(A.'Peringatan'.'conv'). set(proyek. 0 5 0..'Peringatan'.warna).'warn').j.

set(proyek.1).axes4.j+1.axes4). citra(i-1. baris= size(citra.j-1.warna). end end end %Blok display citra hasilcitra=uint8(hasilcitra).j.warna) + citra(i. -1 -1 -1].warna)+citra(i+1.j+1. else citra = A. 29 .j-1..warna) + citra(i-1. %matriks Low Pass Filter matriksLPF =[1/4 1/4.warna)+ citra(i+1.j-1.warna)+citra(i.j.j-1.proyek.warna) +citra(i. end else if idMode == 2 if isequal(A..warna)+ citra(i+1.warna) = hasilcitra(i. citra(i-1. for warna = 1 : 3 for i = 2 : (baris-1) for j = 2 : (kolom-1) hasilcitra(i.j. 1/4 1/4]. hasilcitra=double(hasilcitra).j+1.axes4).warna)+ citra(i+1. % 1/9 1/9 1/9].j+1.2).figure1.warna) +citra(i. set(proyek.warna)+citra(i.j.j-1.warna)+ citra(i+1. for warna = 1 : 3 for i = 2 : (baris-1) for j = 2 : (kolom-1) hasilcitra(i.warna) = hasilcitra(i.warna) + citra(i-1.j. set(proyek.j. %matriks High Pass Filter matriksHPF =[-1 -1 -1.warna)/9. hasilcitra(i.j+1.warna) = .!!!'. hasilcitra(i.kolom = size(citra.j. citra = double(citra).j+1.warna) + citra(i..j.j-1. hasilcitra=double(hasilcitra).hasilcitra).j.'CurrentAxes'.'Userdata'.warna)+citra(i+1.'Peringatan'..warna) + citra(i-1.j. end end end %Blok display citra hasilcitra=uint8(hasilcitra). kolom = size(citra. -1 8 -1.j. citra = double(citra).warna) + citra(i-1.warna)/9.j.[]) msgbox('Maaf Belum Difilter karena Belum Ada Gambar.proyek.warna).'CurrentAxes'.2)..figure1.warna) = . set(imshow(hasilcitra)). size(citra).'warn')..

to be defined in a future version of MATLAB % handles empty .axes5. else if idMode == 1 msgbox('Maaf Silahkan Difilter Ke-1.'Userdata'). A=get(proyek.axes4.j).'Userdata').1:0. eventdata. set(proyek.'warn') end end end end end end % hObject % eventdata MATLAB % handles handle to mode4 (see GCBO) reserved . eventdata. 30 .. handles) proyek=guidata(gcbo).end set(imshow(hasilcitra)).'defaultUicontrolBackgroundColor')) set(hObject. function mode4_CreateFcn(hObject. mse = sum(sum(mseImage)) / (rows * columns) PSNR = 10 * log10( 256^2 / mse) %for j=1:4 %subplot(1. % See ISPC and COMPUTER. mseImage = (double(A) . [rows columns] = size(A). after setting all properties. %imshow(noisyImage.!!!'. end % --. 'salt & pepper'.Executes during object creation. for i=0.Executes on button press in pushbutton6. B=get(proyek.. function pushbutton6_Callback(hObject.'Peringatan'.'BackgroundColor').^ 2.double(B)) .'BackgroundColor'.4 %for j=1:4 %noisyImage = imnoise(grayImage.hasilcitra). if ispc && isequal(get(hObject.to be defined in a future version of structure with handles and user data (see GUIDATA) % Hints: contents = get(hObject.axes4. Ke-3 Atau Ke4.'Value')} returns selected item from mode4 % --.handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows.4.'String') returns mode4 contents as cell array % contents{get(hObject. get(0.'white'). handles) % hObject handle to mode4 (see GCBO) % eventdata reserved .i).[]). Ke-2.'Userdata'.

'Userdata'. PSNR).figure1.^2)) set(handles.Executes on button press in pushbutton7.'string'. %set(proyek.'Ya'). 'Ya'.'Name')'']. handles) selection=questdlg(['Keluar Dari ' get(handles. %set(imshow(A)).. ['Keluar ' get(handles. if strcmp(selection. % hObject % eventdata MATLAB % handles handle to pushbutton6 (see GCBO) reserved .axes2.'Tidak') return.axes6).to be defined in a future version of structure with handles and user data (see GUIDATA) % --...MSEE.figure1) 31 .'Name')''].'Tidak'. set(handles.PS..mse).Executes during object creation. end delete(handles.figure1.%PSNR = 10*log10(1/mean((A(:)-B(:)). after setting all properties.handles not created until after all CreateFcns called % --. eventdata.PSNR).proyek.. % hObject handle to text7 (see GCBO) % eventdata reserved .'string'.figure1. end %set(proyek..'CurrentAxes'.to be defined in a future version of MATLAB % handles empty . function pushbutton7_Callback(hObject.

Emy. Ebook. Ebook Pertemuan ke – 5.blogspot.com/ 32 . 2012. http://www.C. Ebook. Digital Image Processing. Peningkatan Mutu Citra. Ebook. 2006. R. 2001.Woods. 2012. Blnchet Gerard and Charbit Maurice. Catatan Kuliah Pengantar Pengolahan Citra.Referensi http://shinigamirulez. W.E. R. PENINGKATAN MUTU CITRA (IMAGE ENHANCEMENT) PADA DOMAIN SPATIAL. 2007.com/2009/01/pengolahan-citra-digital. Digital Signal And Image Proccesing using MATLAB. Digital signal and image proccesing series.mathworks. Gonzalez. Prasetyo Eri.html SuhendraAdang.

You're Reading a Free Preview

Mengunduh
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->