Perbandingan Weighted Mean Filtering Dan Harmonic Mean Filtering Dalam Mereduksi Rayleigh Noise Dan Gamma Noise Pada Citra Digital
LISTING PROGRAM
// Source Code form utama.m
function varargout = utama(varargin) % Begin initialization code - DO NOT EDIT gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @utama_OpeningFcn, ...
'gui_OutputFcn', @utama_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Executes just before utama is made visible.
function utama_OpeningFcn(hObject, eventdata, handles, varargin) citra=imread('fasilkom-TI.jpg');
axes(handles.logo_fklts); imshow(citra);
% Choose default command line output for utama handles.output = hObject;
% Update handles structure guidata(hObject, handles);
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles) desc
close utama;
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles) pengujian
(2)
// Source Code form pengujian.m
function varargout = pengujian(varargin) % Begin initialization code - DO NOT EDIT gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @pengujian_OpeningFcn, ...
'gui_OutputFcn', @pengujian_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Executes on button press in tombolbuka1.
%function tombolbuka1_Callback(hObject, eventdata, handles)
function varargout = tombolbuka1_Callback(hObject, eventdata, handles) %variabel_keluaran
[nama_file, namaPath]=uigetfile({'*.bmp'},'Buka File');
if ~isequal (nama_file,0)
handles.citra=imread(fullfile(namaPath,nama_file)); guidata(hObject,handles); axes(handles.axes_asli); imshow(handles.citra); else return; end
% --- Executes on button press in tombol_gsc.
function tombol_gsc_Callback(hObject, eventdata, handles) I = handles.citra ;
%I_noise = rgb2gray(I); citra_double = double(I); [b k c]= size(citra_double);
for x=1:b for y=1:k semua =
citra_double(x,y,1)+citra_double(x,y,2)+citra_double(x,y,3); gr(x,y)=semua / 3;
end end
gr = uint8(gr);
axes(handles.axes_gsc); imshow(gr);
(3)
% --- Executes on button press in tombol_noise1. Gamma Noise
function tombol_noise1_Callback(hObject, eventdata, handles) I = getimage(handles.axes_gsc);
[m, n] = size(I); a = 2;
b = str2double(get(handles.txt_gam,'string'))*7; alpha = b;
varians = b / (a * a);
p = sqrt(varians * a ) / 2.0; I = double(I);
for i=1 : m for j=1 : n
k = -1 / a; derau = 0; for p=1 : b
derau = derau + k * log(1 - rand); end
G(i,j) = round(I(i,j)+derau); if G(i,j) > 255
G(i,j) = 255; end
end end
G = uint8(G);
axes(handles.axes_gamma); imshow(G);
% --- Executes on button press in tombol_noise2.Rayleigh Noise
function tombol_noise2_Callback(hObject, eventdata, handles) I = getimage(handles.axes_gsc);
a = 1;
b = str2double(get(handles.txt_ray,'string'))*7; [m, n] = size(I);
I = double(I); G = zeros(m, n); for i=1 : m for j=1 : n
derau = a + sqrt(-b * log(1 - rand)); G(i,j) = round(I(i,j) + derau);
if G(i,j) > 255 G(i,j) = 255; end
end
end
G = uint8(G);
axes(handles.axes_ray); imshow(G);
% --- Executes on button press in button_save1.
function button_save1_Callback(hObject, eventdata, handles) S = getimage(handles.axes_gamma);
[nama_save_file, path_save]=uiputfile('*.jpg','Simpan Citra'); nama_file_simpan=fullfile(path_save,nama_save_file);
(4)
% --- Executes on button press in button_save2.
function button_save2_Callback(hObject, eventdata, handles) S = getimage(handles.axes_ray);
[nama_save_file, path_save]=uiputfile('*.jpg','Simpan Citra'); nama_file_simpan=fullfile(path_save,nama_save_file);
imwrite(S,nama_file_simpan,'jpg');
% --- Executes on button press in btnWeight.
function btnWeight_Callback(hObject, eventdata, handles)
global runtime; runtime=cputime; disp('ongoing');
if strcmp(handles.noise, 'radio_gamma');
noise_image = getimage(handles.axes_gamma);
else
noise_image = getimage(handles.axes_ray);
end
G = wmfilter(noise_image,handles); disp('end');
axes(handles.axes_weighted); imshow(G);
runtime=cputime-runtime;
set(handles.txt_runtime_weighted,'String',runtime); % --- Executes on button press in btnHarmonic.
function btnHarmonic_Callback(hObject, eventdata, handles)
global runtime; runtime=cputime; disp('ongoing');
if strcmp(handles.noise, 'radio_gamma');
noise_image = getimage(handles.axes_gamma);
else
noise_image = getimage(handles.axes_ray);
end
G = hrmfilter(noise_image,handles); disp('end');
axes(handles.axes_harmonic); imshow(G);
runtime=cputime-runtime;
set(handles.txt_runtime_harmonic,'String',runtime);
function G = wmfilter(myimage,handles) array_bobot = [1 2 1; 2 3 2; 1 2 1]; jumlah_bobot = sum(sum(array_bobot)); myimage = uint8(myimage);
[m, n] = size(myimage); ukuran = 3;
setengah = floor(ukuran / 2); I = double(myimage);
G = zeros(m,n);
for i=1+setengah : m-setengah for j=1+setengah: n-setengah jum_meanL = 0;
% penjumlahan total submatriks * bobot for p = -setengah : setengah %citrahasil for q = -setengah : setengah
jum_meanL = jum_meanL + (I(i+p, j+q) * array_bobot(2+p, 2+q));
(5)
end
pixel_hasil = jum_meanL / jumlah_bobot; G(i, j) = pixel_hasil;
end
end
G = uint8(G);
function G = hrmfilter(myimage,handles) myimage = uint8(myimage);
[m, n] = size(myimage); ukuran = 3;
pembilang = ukuran * ukuran; setengah = floor(ukuran / 2); I = double(myimage);
G = zeros(m,n);
for i=1+setengah : m-setengah for j=1+setengah: n-setengah jum_mean = 0;
% penjumlahan total submatriks * bobot for p = -setengah : setengah %citrahasil for q = -setengah : setengah
jum_mean = jum_mean + (1 / I(i+p, j+q)); end
end
pixel_hasil = pembilang / jum_mean; G(i, j) = pixel_hasil;
end end
G = uint8(G); disp(G);
% --- Executes on button press in pushbutton11.
function pushbutton11_Callback(hObject, eventdata, handles) utama
close pengujian;
% --- Executes when selected object is changed in uipanel10.
function uipanel10_SelectionChangeFcn(hObject, eventdata, handles) handles.noise = get(eventdata.NewValue, 'Tag');
guidata(hObject, handles);
% --- Executes during object creation, after setting all properties.
function uipanel10_CreateFcn(hObject, eventdata, handles) handles.noise = 'radio_gamma';
guidata(hObject, handles); % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
(6)
% --- Executes on button press in button_mse2.
function button_mse2_Callback(hObject, eventdata, handles) citra = getimage(handles.axes_gsc);
citra_hasil=getimage(handles.axes_ray);
mse = (double(citra)- double(citra_hasil)) .^ 2; [m n] = size(citra_hasil);
nilai = sum(mse(:)) / (m * n); set(handles.txt_mse2,'String',nilai);
% --- Executes on button press in button_psnr2.
function button_psnr2_Callback(hObject, eventdata, handles) citra = getimage(handles.axes_gsc);
citra_hasil=getimage(handles.axes_ray);
mse = (double(citra)- double(citra_hasil)) .^ 2; [m n] = size(citra_hasil);
nilai_mse = sum(mse(:)) / (m * n);
nilai_psnr = 10 * log10( 255^2 / nilai_mse); set(handles.txt_psnr2,'String',nilai_psnr); % --- Executes on button press in button_mse.
function button_mse_Callback(hObject, eventdata, handles) citra = getimage(handles.axes_gsc);
citra_hasil=getimage(handles.axes_gamma);
mse = (double(citra)- double(citra_hasil)) .^ 2; [m n] = size(citra_hasil);
nilai = sum(mse(:)) / (m * n); set(handles.txt_mse,'String',nilai);
% --- Executes on button press in button_psnr.
function button_psnr_Callback(hObject, eventdata, handles) citra = getimage(handles.axes_gsc);
citra_hasil=getimage(handles.axes_gamma);
mse = (double(citra)- double(citra_hasil)) .^ 2; [m n] = size(citra_hasil);
nilai_mse = sum(mse(:)) / (m * n);
nilai_psnr = 10 * log10( 255^2 / nilai_mse); set(handles.txt_psnr,'String',nilai_psnr); % --- Executes on slider movement.
function prob_gamma_Callback(h, eventdata, handles) nilai_prob = get(handles.prob_gamma,'value');
handles.nilai_prob = round(nilai_prob); guidata(h,handles);
set(handles.txt_gam, 'string',handles.nilai_prob);
% --- Executes during object creation, after setting all properties.
function prob_gamma_CreateFcn(hObject, eventdata, handles) % hObject handle to prob_gamma (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: slider controls usually have a light gray background.
if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 .9 .9]);
(7)
% --- Executes on slider movement.
function prob_ray_Callback(h, eventdata, handles) nilai_prob = get(handles.prob_ray,'value');
handles.nilai_prob = round(nilai_prob); guidata(h,handles);
set(handles.txt_ray, 'string',handles.nilai_prob);
% --- Executes during object creation, after setting all properties.
function prob_ray_CreateFcn(hObject, eventdata, handles)
if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 .9 .9]);
end
% --- Executes during object creation, after setting all properties.
function txt_ray_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes during object creation, after setting all properties.
function txt_mse2_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function txt_psnr2_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in button_msehasil.
function button_msehasil_Callback(hObject, eventdata, handles)
if strcmp(handles.noise, 'radio_gamma'); citra = getimage(handles.axes_gamma);
else
(8)
end
citra_hasil=getimage(handles.axes_weighted); mse = (double(citra)- double(citra_hasil)) .^ 2; [m n] = size(citra_hasil);
nilai = sum(mse(:)) / (m * n);
set(handles.txt_msehasil,'String',nilai);
function txt_msehasil_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in button_psnrhasil.
function button_psnrhasil_Callback(hObject, eventdata, handles)
if strcmp(handles.noise, 'radio_gamma'); citra = getimage(handles.axes_gamma);
else
citra = getimage(handles.axes_ray);
end
citra_hasil=getimage(handles.axes_weighted); mse = (double(citra)- double(citra_hasil)) .^ 2; [m n] = size(citra_hasil);
nilai_mse = sum(mse(:)) / (m * n);
nilai_psnr = 10 * log10( 255^2 / nilai_mse); set(handles.txt_psnrhasil,'String',nilai_psnr);
% --- Executes during object creation, after setting all properties.
function txt_psnrhasil_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in button_msehasil2.
function button_msehasil2_Callback(hObject, eventdata, handles)
if strcmp(handles.noise, 'radio_gamma'); citra = getimage(handles.axes_gamma);
else
citra = getimage(handles.axes_ray);
end
citra_hasil=getimage(handles.axes_harmonic); mse = (double(citra)- double(citra_hasil)) .^ 2; [m n] = size(citra_hasil);
nilai = sum(mse(:)) / (m * n);
set(handles.txt_msehasil2,'String',nilai);
% --- Executes on button press in button_psnrhasil2.
function button_psnrhasil2_Callback(hObject, eventdata, handles)
if strcmp(handles.noise, 'radio_gamma'); citra = getimage(handles.axes_gamma);
(9)
citra = getimage(handles.axes_ray);
end
citra_hasil=getimage(handles.axes_harmonic); mse = (double(citra)- double(citra_hasil)) .^ 2; [m n] = size(citra_hasil);
nilai_mse = sum(mse(:)) / (m * n);
nilai_psnr = 10 * log10( 255^2 / nilai_mse); set(handles.txt_psnrhasil2,'String',nilai_psnr);
function txt_msehasil2_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function txt_psnrhasil2_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in pushbutton20.
function pushbutton20_Callback(hObject, eventdata, handles) S = getimage(handles.axes_weighted);
[nama_save_file, path_save]=uiputfile('*.jpg','Simpan Citra'); nama_file_simpan=fullfile(path_save,nama_save_file);
imwrite(S,nama_file_simpan,'jpg');
% --- Executes on button press in pushbutton21.
function pushbutton21_Callback(hObject, eventdata, handles) S = getimage(handles.axes_harmonic);
[nama_save_file, path_save]=uiputfile('*.jpg','Simpan Citra'); nama_file_simpan=fullfile(path_save,nama_save_file);
imwrite(S,nama_file_simpan,'jpg');
% --- Executes during object creation, after setting all properties.
function txt_runtime_weighted_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes during object creation, after setting all properties.
function txt_runtime_harmonic_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
(10)
// Source Code form desc.m
function varargout = desc(varargin)
% Begin initialization code - DO NOT EDIT gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @desc_OpeningFcn, ...
'gui_OutputFcn', @desc_OutputFcn, ...
'gui_LayoutFcn', [] , ... 'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Executes just before desc is made visible.
function desc_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;
% Update handles structure guidata(hObject, handles);
% --- Outputs from this function are returned to the command line.
function varargout = desc_OutputFcn(hObject, eventdata, handles)
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles) utama
(11)
CURRICULUM VITAE
Wahyu Eko Putra wahyudefa19
--- Data Pribadi
Nama : Wahyu Eko Putra Tempat/Tanggal Lahir : Padang / 19 April 1992 Tinggi/Berat Badan : 168 cm / 88 kg
Agama : Islam
Kewarganegaraan : Indonesia
Alamat Sekarang : Jl. Pembanguna USU gang Pribadi no 1. Medan Selayang
Alamat Orang Tua : Komplek Perumahan Taruko Permai IV blok G no 7. Bungo Pasang. Koto Baru. Kota Padang
Telp/ Hp : 085373875815
Email : wahyuekoputra19@gmail.com
--- Riwayat Pendidikan
[2010 – 2015] : S1 Ilmu Komputer Universitas Sumatera Utara, Medan [2007 – 2010] : SMA Negeri Agam Cendekia Maninjau, Sumatera Barat [2004 – 2007] : SMP PMT Prof. Dr. Hamka, Padang Pariaman, Sumatera Barat [1998 – 2004] : SD Negeri no. 28 Gurun Laweh. Padang, Sumatera Barat
--- Keahlian/Kursus
Keahlian Komputer
Pemrograman : Java, C++, MATLAB
Database : MysQL
(12)
--- Pengalaman Organisasi
[2008 – 2009] OSIS SMA Negeri Agam Cendekia
[2011 – 2012] Anggota bidang Syi’ar (humas) BKM Al- Khuwarizmi Ilmu Komputer 2011/2012 [2012 – 2013] Ketua bidang Syi’ar (humas) UKMI Al- Khuwarizmi Ilmu Komputer 2012/2013 [2011 – 2012] Anggota IMILKOM 2011/2012
[2012 – 2013] Anggota IMILKOM 2012 – 2013
[2011 – 2012] Anggota bidang Kerohanian Islam IMIB USU [2012 – 2013] Ketua bidang Kerohanian Islam IMIB USU
--- Pengalaman Kepanitiaan
[2010] Anggota Seksi Perlengkapan Seminar I-Pear ILKOM [2011] Koordinator Dana PMB IMIB USU
[2012] Ketua Panitia TRICK 6 UKMI Al-Khuwarizmi
--- Seminar
(13)
DAFTAR PUSTAKA
Burger, W. & Burge, M.J. 2008. Digital Image Processing An Algorithmic Introduction Using
Java. Springer : New York.
Hendry, J. 2009. Pengolahan Citra Digital : Menghaluskan Citra dengan Filter Spasial
Non-Linear: Median, Mean, Max, Min, pada Pengolahan Citra Digital. Skripsi. Jurusan
Teknik Elektro Universitas Gadjah Mada.
Kadir, A. & Susanto, A. 2013. Teori dan Aplikasi Pengolahan Citra. Pernerbit Andi : Yogyakarta.
Myler, H.R. & Weeks A.R. 1993. The Pocket Handbook Of Image Processing Algorithms in C. Prentice Florida : Hall P T R.
Putra, D. 2010. Pengolahan Citra Digital. Penerbit Andi : Yogyakarta.
Putra, G.A.M. 2011. Pengurangan Noise pada Citra Digital menggunakan Adaptive Minimum
Mean Square Error Filtering. Skripsi. Jurusan Teknik Informatika Institut Teknologi
Telkom.
Prihatini, Tuti Adi. 2010. Analisis dan Implementasi Low Pass Filter untuk Mereduksi Noise pada Citra Digital . Skripsi. Universitas Sumatera Utara.
Ramayanti, D. 2012. Pengolahan Citra, Pusat Pengembangan Bahan Ajar. Diktat. Universitas Mercu Buana.
Santoso, I. 2013. Implementasi dan Perbandingan Optimum Notch Filter dan Band Reject Filter untuk Mereduksi Periodic Noise pada Citra Digital. Skripsi. Universitas Sumatera Utara.
Sutoyo, T. & Mulyanto, E. 2009. Teori Pengolahan Citra Digital. Penerbit ANDI: Yogyakarta. Wiliyana. 2012. Perbandingan Algoritma Arithmetic dengan Geometric Mean Filter untuk
Reduksi Noise pada Citra. Skripsi. Universitas Sumatera Utara.
Sulityo, W., dkk. 2009. Analisis Penerapan Metode Median Filter Untuk Mengurangi Noise Pada Citra Digital. KSN&109-035.Bali: Universitas Kristen Satya Wacana.
Taurisna, A. 2009. Analisis Pengaruh Resolusi Citra Terhadap Kinerja Metode Pendeteksi Tepi. Skripsi. Medan: Universitas Sumatera Utara.
(14)
Wardhani, R.K., dkk._____. Analisis Penerapan Metode Konvolusi Untuk Reduksi Derau Pada Citra Digital. Tugas Akhir. Depok : Politeknik Negeri Jakarta.
Lestari, Dewi. 2006. Analisis dan Implementasi Penghalusan Citra (Image Smoothing) pada Citra Digital Menggunakan Metode Uniform Smoothing, Gaussian Smoothing, dan Threshold
(15)
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
Analisis sistem merupakan suatu tahapan yang dilakukan untuk membantu mengerti dan memahami hal-hal apa saja yang diperlukan oleh sistem. Hal ini bertujuan untuk membuat sistem mengetahui permasalahan-permasalahan yang nantinya akan diselesesaikan sehingga nanti dapat membantu dalam proses perancangan model suatu sistem yang akan diimplementasikan.
3.1.1. Analisis Masalah
Media gambar atau citra (image) lebih cenderung digunakan orang untuk mempresentasikan sesuatu dalam penyampaian informasi, misalnya penggunaan rambu-rambu lalu lintas, penggunaan gambar dalam pembelajaran, penggunaan gambar dalam penyuluhan dan lain sebagainya.
Oleh karena itu, gangguan yang terjadi pada citra digital seperti kecerahan atau intensitas cahaya yang tidak rata, ataupun gangguan tekstur seringkali menjadi permasalahan karena menyebabkan gambar/citra tersebut tidak seperti yang kita harapkan. Gangguan ini bisa mengakibatkan penurunan kualitas pada citra digital, misalnya citra tersebut mengandung noise (derau). Noise tersebut diantaranya adalah Rayleigh noise dan Gamma(Erlang) noise.
Gangguan oleh noise ini dapat diatasi dengan reduksi noise pada citra
digital. Salah satu teknik resuksi noise ini adalah dengan cara melakukan filtering,
(16)
Reduksi noise pada citra digital Material
User
Metode
Sistem
Weighted Mean Filtering
Harmonic Mean Filtering Gamma Noise
Rayleigh Noise
Memberikan noise pada citra
Melakukan Reduksi noise Citra berformat *.bmp
Memberikan persentase variance noise Menginput citra
dalam penelitian ini adalah Weighted Mean Filtering dan Harmonic Mean
Filtering.
Penyebab dan dampak permasalahan yang dihadapi dapat dilihat di diagram Ishikawa pada Gambar 3.1. berikut :
Gambar. 3.1. Diagram Ishikawa.
Pada Gambar 3.1 diatas, bagian persegi besar disebelah kanan adalah kepala atau permasalahan yang dihadapi sistem, yaitu bagaimana mereduksi Gamma noise dan Rayleigh noise dengan metode Weighted Mean Filtering dan
Harmonic Mean Filtering. Sementara di bagian tulang-tulang cabangnya
merupakan penyebab sekaligus cara yang akan meyelesaikannya.
3.1.2. Analisis Kebutuhan Sistem
Analisis kebutuhan sistem terbagi menjadi dua yaitu analisis kebutuhan fungsional sistem dan analisis kebutuhan non-fungsional sistem.
(17)
3.1.2.1. Analisis Kebutuhan Fungsional Sistem
Sistem yang akan dirancang memiliki beberapa kebutuhan fungsional sebagai berikut :
1. Sistem dapat mereduksi citra yang terkena Gamma noise dan Rayleigh
noise.
2. Sistem dapat mengeluarkan hasil perbandingan Weighted Mean Filtering dengan Harmonic Mean Filtering yang digunakan dalam mereduksi
noise.
3.1.2.2. Analisis Kebutuhan non-Fungsional Sistem
Kebutuhan non-fungsional berfungsi untuk menunjang kinerja sistem supaya lebih baik. Adapun kebutuhan non-fungsional sistem yang akan dirancang adalah sebagai berikut:
1. Kinerja
Sistem harus dapat menampilkan hasil dari proses. 2. Mudah Digunakan
Sistem harus mudah digunakan sehingga pengguna dapat mengoperasikannya dengan baik.
3. Hemat biaya
Sistem yang akan dibangun tidak memerlukan perangkat tambahan dalam proses eksekusinya, sehingga tidak memerlukan biaya banyak dalam pembuatan maupun pengoperasiannya.
3.1.3. Analisis Proses
Sistem yang akan dirancang memiliki dua proses utama yaitu proses Noising dan proses Filtering. Proses Noising adalah pemberian noise pada citra masukan. Sedangkan proses Filtering adalah proses mereduksi noise pada citra. Proses ini menggunakan metode Weighted Mean Filtering dan Harmonic Mean Filtering, kemudian dilakukan perbandingan hasil dari kedua metode tersebut.
(18)
3.1.3.1 Proses Noising
Proses Noising adalah pemberian noise pada citra masukan. Tahapan dalam proses Noising ini adalah sebagai berikut:
1. Membaca citra inputan
2. Mengubah citra asli ke citra grayscale 3. Membaca persentase noise
4. Memberikan noise pada citra inputan.
5. Menampilkan hasil citra yang sudah terkena noise 6. Menampilkan parameter MSE dan PNSR citra ber-noise. 3.1.3.2 Proses Filtering
Proses Filtering pada penelitian ini menggunakan dua metode, yaitu Weighted
Mean Filtering dan Harmonic Mean Filtering. Tahapan dalam proses ini yaitu :
1. Membaca citra yang sudah terkena noise 2. Mereduksi noise pada citra
3. Menampilkan citra hasil yang sudah direduksi
4. Meanmpilkan perbndingan parameter MSE dan PSNR citra hasil reduksi. 3.2 Pemodelan
Pada penelitian ini digunakan bahasa UML (Unified Modeling Language) sebagai bahasa pemodelan yang berfungsi untuk membantu dalam mempermudah perancangan sistem. Model UML yang digunakan dalam penelitian ini yaitu Use
case diagram, Sequence diagram, dan Activity digaram.
3.2.1 Use case Diagram
Use case diagram adalah gambaran graphical dari beberapa atau semua actor,
use-case, dan interaksi diantara komponen-komponen tersebut yang memperkenalkan suatu sistem yang akan dibangun. Use case diagram menjelaskan manfaat suatu sistem jika dilihat menurut pandangan orang yang berada di luar sistem. Diagram ini menunjukkan fungsionalitas suatu sistem atau
(19)
kelas dan bagaimana sistem tersebut berinteraksi dengan dunia luar. Use case diagram terdiri dari sebuah aktor dan interaksi yang dilakukanya, aktor tersebut dapat berupa manusia, perangkat keras, sistem lain, ataupun yang berinteraksi dengan sistem.
Pada gambar 3.2 berikut adalah Use case diagram dari penelitian ini :
Gambar 3.2. Use case Diagram Sistem Perbandingan Weighted Mean
Filtering dan Harmonic Mean Filtering dalam Mereduksi Rayleigh Noise dan Gamma Noise pada Citra Digital
Pada sistem ini terdapat actor, yang dalam hal ini adalah user. User memilih pengujian untuk nantinya akan dilanjutkan dengan proses filtering dengan masing-masing metode terhadap masing-masing noise. Kemuadian stelah itu user akan mendapatkan hasil nilai dari MSE dan PSNR dari citra hasil untuk nantinya dapat dilakukan perbandingan.
Penjelasan naratif dari proses pengujian yang terdapat dalam Use case diagram dapat dilihat pada Tabel 3.1 berikut :
PERBANDINGAN WEIGHTED M EAN FILTERING DAN HARM ONIC M EAN FILTERING DALAM MEREDUKSI RAYLEIGH NOISE DAN GAMMA NOISE PADA CITRA DIGITAL
Actor
Harmonic Mean Filter Weighted Mean
Filter
Rayleigh Noise
Rayleigh Noise
<<include>> <<include>> <<include>> <<include>>
<<include>>
<<include>>
Hitung MSE dan PSNR
(20)
Tabel 3.1 Dokumentasi Naratif Use case Metode
Nama Use case Pengujian
Aktor User
Deskripsi Use case mendeskripsikan Metode yang digunakan
yaitu Weighted Mean Filtering dan Harmonic Mean
Filtering.
Pre-Condition Memberikan Noise
Typical course of event
Aksi Aktor Respon Sistem Langkah 1: Memilih
salah satu Metode
Langkah 3: Menginput citra dengan menekan button “buka”
Langkah 6: Melakukan konversi file citra asli menjadi citra grayscale dengan menekan
button “konversi”
Langkah 2: Sistem menerima masukan pemilihan metode .
Langkah 4: Sistem membaca file citra yang telah dimasukkan aktor. Langkah 5: Menampilkan
file citra yang telah
(21)
Langkah 7: Sistem
melakukan proses konversi citra asli ke citra
grayscale.
Langkah 8: Menampilkan citra grayscale
Alternate course Aksi Aktor Respon Sistem
Langkah 1: Memilih
form Tentang.
Langkah 2: Menampilkan deskripsi tentang program aplikasi.
Post Conditions Sistem melanjutkan ke tahap Filtering
Dokumentasi naratif pada proses filtering yang terdapat dalam Use case diagram dilihat pada Tabel 3.2
Tabel 3.2 Dokumentasi Naratif Use case Noise yang digunakan
Nama Use case Noise
Aktor User
Deskripsi Use case mendeskripsikan Noise yang akan
digunakan
Pre-Condition Telah mengubah citra ke grayscale
Typical course of event
Aksi Aktor Respon Sistem Langkah 1:
Menambahkan noise
Gamma dengan
memilih probabilitas
noise antara 0-50 dan
menekan button
(22)
Langkah 3: Melakukan perhitungan MSE dan
PSNR, dengan
menekan button “MSE, PSNR” untuk Gamma
Noise .
Langkah 5:
Menambahkan noise
Rayleigh dengan
memilih probabilitas
noise antara 0-50 dan
menekan button
“Tambah Noise”
Langkah 7: Melakukan perhitungan MSE dan
PSNR, dengan
menekan button “MSE,
Langkah 2: Sistem malakukan proses
penambahan noise Gamma pada citra yang telah dikonversi.
Langkah 4: Sistem melakukan perhitungan
MSE dan PSNR dan
menampilkan hasilnya.
Langkah 6: Sistem malakukan proses penambahan noise
Rayleigh pada citra yang
(23)
PSNR” untuk Rayleigh
noise.
Langkah 9 : Aktor melakukan proses
Filtering, dengan
memilih noise yang akan di filter dan memilih metode
filtering yang diuji.
Langkah 12:
Melakukan perhitung
MSE dan PSNR
masing- masing citra hasil metode filtering.
Langkah 8: Sistem melakukan perhitungan
MSE dan PSNR dan
menampilkan hasilnya.
Langkah 10: Sistem Melaku proses Filtering sesuai noise yang dipilih dan metode filtering yang dipilih.
Langkah 11: Sistem Menampilkan citra hasil
Filtering.
Langkah 13: Sistem melakukan perhitungan
MSE dan PSNR citra hasil
dan menampilkan hasil
(24)
Alternate course Aksi Aktor Respon Sistem
- -
Post Conditions Sistem siap melaksanakan tahapan Filtering.
3.2.2 Sequence Diagram
Sequence diagram adalah suatu diagram yang menggambarkan interaksi antar
obyek dan mengindikasikan komunikasi diantara obyek-obyek tersebut. Diagram ini juga menunjukkan serangkaian pesan yang dipertukarkan oleh obyek-obyek yang melakukan suatu tugas atau aksi tertentu. Obyek-obyek tersebut kemudian diurutkan dari kiri ke kanan, aktor yang menginisiasi interaksi biasanya ditaruh di paling kiri dari diagram.
Pada diagram ini, dimensi vertikal merepresentasikan waktu. Bagian paling atas dari diagram menjadi titik awal dan waktu berjalan ke bawah sampai dengan bagian dasar dari diagram. Garis Vertical, disebut lifeline, dilekatkan pada setiap obyek atau aktor. Kemudian lifeline tersebut digambarkan menjadi kotak ketika obyek melakukan suatu operasi , kotak tersebut disebut activation. Obyek dikatakan mempunyai live activation pada saat tersebut.
Pesan yang dipertukarkan antar obyek digambarkan sebagai sebuah anak panah antara activation box pengirim dan penerima. Kemudian diatasnya diberikan label pesan.
(25)
Actor
Input Gambar
Input Gambar Konversi Pilih Noise Filtering MSE dan
PSNR
Menampilkan Hasil Inputan Gambar
Ubah Citra ke Grayscale
Menampilkan gambar grayscale
Beri noise pada Citra
Menampilkan Citra yang terkena Noise
Melakukan proses filtering
Menampilkan Citra Hasil Filtering
Hitung nilai MSE dan PSNR
Menampilkan nilai MSE dan PSNR
Pada gambar 3.3 berikut adalah Sequence diagram dari penelitian ini :
Gambar 3.3. Sequence Diagram Sistem Perbandingan Weighted Mean
Filtering dan Harmonic Mean Filtering dalam Mereduksi Rayleigh Noise dan Gamma Noise pada Citra Digital.
3.2.3 Activity Diagram
Activity diagram merupakan diagram yang menggambarkan berbagai alir aktivitas
dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir.
Activity diagram berfungsi untuk menggambarkan workflow / aliran kerja
dari suatu proses bisnis. Suatu aliran kerja bisa saja dituangkan dalam bentuk narasi / teks, akan tetapi jika aliran kerjanya sudah kompleks maka kita akan kesulitan untuk membayangkan bagaimana proses itu terjadi. Oleh karena itu, dibuatlah Activity diagram sebagai salah satu cara untuk menggambarkan aliran kerja tersebut.
(26)
USER SISTEM
Input Citra Menampilkan direktori
gambar
Pilih Konversi Mengubah Citra menjadi
Grayscale
Menambahkan Noise
Menampilkan Citra Ber-noise
Menampilkan nilai MSE dan PSNR citra ber-noise
noise Gamma
Noise Rayleigh
Weighted Mean Filter
Harmonic Mean Filter
Menampilkan Citra Hasil Filtering dan nilai MSE serta
PSNR Citra Hasil Pengujian
Tentang
Menampilkan deskripsi aplikasi dan petunjuk Pada gambar 3.4 berikut adalah Activity diagram dari penelitian ini :
Gambar 3.4. Activity Diagram Sistem Perbandingan Weighted Mean
Filtering dan Harmonic Mean Filtering dalam Mereduksi Rayleigh Noise dan Gamma Noise pada Citra Digital.
(27)
3.3 Perancangan Sistem
Perancangan sistem merupakan tahap selanjutnya setelah analisa sistem, mendapatkan gambaran dengan jelas tentang apa yang dikerjakan pada analisa sistem, maka dilanjutkan dengan memikirkan bagaimana membentuk sistem tersebut.
Perancangan sistem adalah suatu fase dimana diperlukan suatu keahlian perancangan untuk elemen-elemen komputer yang akan mengunakan sistem yaitu pemilihan peralatan dan program komputer untuk sistem yang baru.
3.3.1 Perancangan Flowchart Sistem
Flowchart adalah adalah suatu bagan dengan simbol-simbol tertentu yang
menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses (instruksi) dengan proses lainnya dalam suatu program.
Flowchart Sistem merupakan bagan yang menunjukkan alur kerja atau apa
yang sedang dikerjakan di dalam sistem secara keseluruhan dan menjelaskan urutan dari prosedur-prosedur yang ada di dalam sistem. Dengan kata lain,
flowchart ini merupakan dekripsi secara grafik dari urutan prosedur-prosedur
(28)
Flowchart gambaran umum sistem ditunnjuk pada gambar 3.5 berikut :
Gambar 3.5. Flowchart Gambaran Umum Sistem
Mulai Input citra asli (.bmp)
Citra Grayscale? Ubah ke citra grayscale
Citra grayscale (.bmp) Tambahkan noise Tambahkan Gamma noise? no yes Tambahkan rayleigh noise no Citra dengan Gamma noise Citra Dengan rayleigh noise yes
Hitung nilai MSE dan PNSR citra dengan
gamma noise
Hitung nilai MSE dan PNSR citra dengan
rayleigh Noise Tampilkan nilai
MSE dan PNSR citra dengan gamma noise
Tampilkan nilai MSE dan PNSR
citra dengan rayleigh noise
Proses Filtering
Weighted Mean Filtering?
Proses Harmonic Mean Filtering no
Proses Weighted Mean Filtering
yes
Citra dengan noise tereduksi Hitung nilai MSE dan PNSR
Tampilkan nilai MSE dan PSNR
(29)
Pada Gambar 3.5. ditunjukkan gambaran sistem yang akan dirancang secara keseluruhan.
3.3.2 Perancangan Antarmuka Sistem
Perancangan antarmuka sistem merupakan tahap kelanjutan dari analisa sistem. Perancangan ini dimaksudkan untuk membuat antarmuka yang memungkinkan pengguna dapat berinteraksi dengan sistem. Tahap perancangan antarmuka sistem merupakan tahap pengerjaan design tampilan dari sistem. Dalam membuat perancangan antarmuka sistem haruslah dipertimbangkan tampilan yang menarik,
user friendly agar user nyaman disaat menggunakan sistem tersebut.
Sistem pada penelitian ini dirancang dengan menggunakan bahasa pemrograman MATLAB R2012a.
3.3.2.1 Perancangan Tampilan Awal Aplikasi
Tampilan awal aplikasi merupakan halaman utama dari aplikasi penelitian ini yang berfungsi sebagai menu awal yang nantinya dapat mengakses menu lain seperti Pengujian dan menu Tentang.
Pada gambar 3.6 berikut menunjukkan rancangan dari tampilan awal aplikasi :
(30)
Keterangan Gambar 3.6. : 1. Text judul Penelitian
2. Axes dari logo Fakultas Ilmu Komputer dan Teknologi Informasi.
3. Button untuk menuju halaman Pengujian
4. Button untuk menuju halaman Tentang
5. Text nama dan NIM peneliti.
3.3.2.2 Perancangan Halaman Pengujian
Pada halaman ini nantinya akan dilakukan pengujian metode Weighted Mean
Filtering dan metode Harmonic Mean Filtering dalam mereduksi Gamma Noise
dan Rayleigh Noise.
Rancangan halaman pengujian ini dapat ditunjukkan Gambar 3.7. berikut :
(31)
Keterangan Gambar 3.7. :
1. Button Buka, untuk browse citra/image yang akan dipakai untuk
pengujian.
2. Axes_asli, tempat menampilkan citra/image asli
3. Button Konversi, untuk mengubah citra ke grayscale
4. Axes_gsc, untuk menampilkan citra yang telah diubah ke grayscale
5. Slider persentasi noise Gamma, untuk mengatur tingkat persentasi noise Gamma
6. Buttton Tambah Noise Gamma, untuk menambahkan noise Gamma pada
citra yang akan diuji
7. Button Simpan, untuk menyimpan citra yang telah diberi noise Gamma
8. Axes_Gamma, untuk menampilkan citra yang diberi noise Gamma
9. Button MSE dan PSNR noise Gamma, untuk menampilkan nilai MSE
dan PSNR citra yang telah diberi noise Gamma
10. Slider persentasi noise Rayleigh, untuk mengatur tingkat persentasi noise Rayleigh
11. Button Tambah Noise Rayleigh, untuk menambahkan noise Rayleigh
pada citra yang akan diuji
12. Button Simpan, untuk menyimpan citra yang telah diberi noise Rayleigh
13. Axes_ray, untuk menampilkan citra yang telah diberi noise Rayleigh
14. Button MSE dan PSNR noise Rayleigh, untuk menampilkan nilai MSE
dan PSNR citra yang telah diberi noise Rayleigh
15. Panel radio button, untuk memilih noise yang akan difilter
16. Axes_weighted, untuk menampilkan citra yang telah difilter dengan Weighted Mean Filter
17. Axes_harmonic, untuk menampilkan citra yang telah difilter dengan Harmonic Mean Filter.
18. Button Weighted Mean Filter, untuk melakukan proses Weighted Mean
Filter
19. Button Harmonic Mean Filter, untuk melakukan proses Harmonic Mean
(32)
20. Button MSE dan PSNR, untuk menghitung dan menampilkan nilai MSE
dan PSNR dari citra yang telah direduksi dengan metode Weighted Mean
Filter
21. Button MSE dan PSNR, untuk menghitung dan menampilkan nilai MSE
dan PSNR dari citra yang telah direduksi dengan metode Harmonic Mean
Filter
22. Button Kembali, untuk kembali ke halaman utama.
3.3.2.3. Perancangan Halaman Tentang
Pada halaman ini nantinya akan terdapat deskripsi dari aplikasi dan cara atau petunjuk penggunaan dari aplikasi yang akan dibuat.
Rancangan halaman Tentang dapat ditunjukkan pada Gambar 3.8 berikut :
Gambar 3.8. Rancangan Tampilan Halaman Tentang Keterangan Gambar 3.8 :
1. Text deskripsi aplikasi
2. Text petunjuk penggunaan aplikasi.
(33)
BAB IV
IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1. Implementasi
Sistem ini dibangun dengan menggunakan bahasa pemrograman MATLAB R2012a. Pada sistem aplikasi ini terdapat beberapa form atau halaman yaitu form utama (halaman tampilan awal aplikasi), form pengujian (halaman pengujian metode filtering), dan form desc (halaman Tentang, berisi petunjuk penggunaan dan deskripsi sistem aplikasi).
4.1.1. Halaman Utama
Halaman utama merupakan halaman tampilan awal aplikasi. Pada form ini terdapat menu yang berupa button atau tombol yaitu menu Pengujian dan Tentang. Masing-masing dari button tersebut mengarahkan user nantinya ke form Tentang dan form pengujian. Pada halaman awal ini juga terdapat tampilan label judul dari penelitian juga label dari nama dan NIM peneliti serta juga terdapat
logo Fakultas peneliti yaitu Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Sumatera Utara
Halaman utama dalam aplikasi ini dapat ditunjukkan oleh Gambar 4.1. berikut :
(34)
Gambar 4.1. Tampilan Halaman Utama
4.1.2 Halaman Pengujian
Pada halaman pengujian ini dilakukan pemilihan image, pemberian noise dan juga pengujian dua metode filtering yang diteliti yaitu Weighted Mean Filter dan
Harmonic Mean Filter. Citra/image yang akan digunakan dipilih melalui button
Buka, kemudian noise akan dikonversikan ke grayscale dengan tombol Konversi, setelah itu citra grayscale akan diberi noise dengan tombol Tambah noise yang sebelumnya memilih range variance noise-nya dengan persentasi nilai antara 1-50, kemudian dihitung nilai MSE dan PNSR masing-masing noise-nya, untuk selanjutnya di reduksi dengan kedua metode yang sedang diteliti dengan masing tombol metode reduksi. Setelah citra direduksi, maka dihitung masing-masing nilai MSE dan PSNR citra hasil reduksi.
(35)
Halaman pengujian dapat ditunjukkan oleh Gambar 4.2. berikut :
Gambar 4.2. Tampilan Halaman Pengujian
4.1.3 Halaman Tentang
Halaman Tentang ini berisi tentang deskripsi dari aplikasi dan petunjuk penggunaan aplikasi.
(36)
Tampilan halaman Tentang dapat dilihat pada Gambar 4.3. berikut :
Gambar 4.3. Tampilan Halaman Tentang
4.2 Pengujian Sistem
Pengujian sistem dilakukan untuk mengetahui bagaimana perbandingan kedua metode filtering yang digunakan pada masing-masing noise berdasarkan pada nilai MSE dan PNSR citra yang telah direduksi. Citra yang digunakan pada pengujian ini adalah citra BMP yang berformat *.bmp dan nanti akan diberi
Gamma noise dan Rayleigh niose. Citra awal nantinya akan diubah ke grayscale
terlebih dahulu oleh sistem. Dalam pemrosesannya, pada metode Weighted Mean
Filtering menggunakan bobot binomial [1,2,1,2,3,2,1,2,1] dan pada metode Harmonic Mean Filtering menggunakan kernel 3x3. Selanjutnya citra yang telah
direduksi dari masing-masing noise dengan masing-masing metode dihitung nilai
(37)
4.2.1 Pengujian Weighted Mean Filtering
Pengujian ini dilakukan dalam halaman Pengujian. Saat pertama membuka aplikasi, maka dipilih tombol Pengujian sehingga terbuka halaman pengujian. Selanjutnya dipilih tombol Buka untuk memilih image yang akan diuji. Proses diatas dapat dilihat pada gambar 4.4. dan 4.5. berikut :
Gambar 4.4. Pilih tombol Pengujian.
(38)
Selanjutnya dilakukan proses filtering yang diawali dengan pemberian
noise Gamma dan noiseRayleigh pada citra yang telah diubah ke grayscale.
Kemudian noise direduksi dengan menekan tombol Weighted Mean Filter.
4.2.1.1. Pengujian Metode Weighted Mean Filter dengan Gamma noise
Pengujian ini menguji hasil reduksi Gamma noise dengan menggunakan metode
Weighted Mean Filtering. Dalam pengujian ini nanti akan diambil data berupa
nilai dari MSE dan PSNR sebelum dan setelah dilakukan proses filtering, serta
Running time saat direduksi. Pada penelitian ini dipakai persentasi noise antara
1 sampai 50%, untuk itu akan digunakan persentasi 10%, 20%, 30%, 40% dan 50% sebagai sampel pengujian.
Pengujian Weighted Mean Filtering pada Gamma noise dapat ditunjukkan pada tabel 4.1 berikut :
Tabel 4.1.Pengujian Metode Weighted Mean Filter dengan Gamma noise
Persentasi
noise
Citra Terkena Gamma noise Citra setelah direduksi dengan Metode Weighted Mean Filtering 10%
nilai MSE = 992.129 nilai PSNR = 18.1651 dB
nilai MSE = 892.689 nilai PSNR = 18.6238 dB
(39)
20%
nilai MSE = 3633.74 nilai PSNR = 12.5273 dB
nilai MSE = 940.939 nilai PSNR =18.3952 dB
Running time =0.078125s
30%
nilai MSE = 7773.87 nilai PSNR = 9.22443 dB
nilai MSE = 1003.86 nilai PSNR = 18.1141 dB
Running time = 0.109375s
40%
nilai MSE = 13291.8 nilai PSNR = 6.89495 dB
nilai MSE = 1077.39 nilai PSNR = 17.8071 dB
(40)
50%
nilai MSE =19973.3 nilai PSNR =5.12631 dB
nilai MSE = 1177.41 nilai PSNR = 17.4215 dB
Running time = 0.078125s
Citra pada tabel diatas merupakan citra asli yang sudah dikonversi ke
grayscale kemudian diberi noise dengan persentasi 1 sampai 50%. Terlihat pada
tabel diatas citra dengan noise 10% memiliki nilai MSE sebesar 992.129 dan nilai
PSNR sebesar 18.1651 dB. Citra yang terkena noise 10% kemudian di filtering
sehingga didapat nilai MSE sebesar 892.689 dan nilai PSNR sebesar 18.6238 dB. Citra dengan noise 20% memiliki nilai MSE sebesar 3633.74 dan nilai PSNR sebesar 12.5273 dB. Citra yang terkena noise 20% kemudian di filtering sehingga didapat nilai MSE sebesar 940.939 dan nilai PSNR sebesar 18.3952 dB. Citra dengan noise 30% memiliki nilai MSE sebesar 7773.87 dan nilai PSNR sebesar 9.22443 dB. Citra yang terkena noise 30% kemudian di filtering sehingga didapat nilai MSE sebesar 1003.86 dan nilai PSNR sebesar 18.1141 dB. Citra dengan
noise 40% memiliki nilai MSE sebesar 13291.8 dan nilai PSNR sebesar 6.89495
dB. Citra yang terkena noise 40% kemudian di filtering sehingga didapat nilai
MSE sebesar 1077.39 dan nilai PSNR sebesar 17.8071 dB. Citra dengan noise
50% memiliki nilai MSE sebesar 19973.3 dan nilai PSNR sebesar 5.12631 dB. Citra yang terkena noise 50% kemudian di filtering sehingga didapat nilai MSE sebesar 1177.41 dan nilai PSNR sebesar 17.4215 dB.
Perbandingan nilai MSE dan PSNR citra yang terkena Gamma noise dengan citra ber-noise yang sudah dilakukan proses filtering dapat dilihat pada grafik-grafik di gambar 4.6 dan gambar 4.7 berikut ini :
(41)
0 2 4 6 8 10 12 14 16 18 20
10% 20% 30% 40% 50%
PSNR sebelum difilter PSNR setelah difilter
Gambar 4.6. Grafik Perbandingan nilai MSE Gamma noise sebelum dan setelah dilakukan proses filtering dengan metode Weighted Mean Filtering
Pada grafik diatas dapat dilihat bahwa nilai MSE semakin meningkat apabila nilai persentasi noise nya jug bernilai besar. Kemudian setelah di filter nilai MSE nya menjadi semakin kecil dibandingkan dengan nilai MSE sebelum dilakukan filtering.
Gambar 4.7. Grafik Perbandingan nilai PSNR Gamma noise sebelum dan setelah dilakukan proses filtering dengan metode Weighted Mean Filtering
0 5000 10000 15000 20000 25000
10% 20% 30% 40% 50%
MSE sebelum difilter MSE setelah difilter
(42)
Pada grafik diatas dapat dilihat bahwa nilai PSNR semakin menurun apabila nilai persentasi noise nya bernilai besar. Kemudian setelah difilter nilai
PSNR nya menjadi semakin besar dibandingkan dengan nilai PSNR sebelum
dilakukan filtering.
Dapat dilihat pada Gambar 4.6. dan Gambar 4.7. bahwa pengujian
Gamma noise dengan metode Weighted Mean Filtering sesuai dengan teori
berdasarkan pada perbandingan nilai parameter MSE dan PSNR sebelum dan setelah dilakukan proses reduksi noise.
4.2.1.2. Pengujian Metode Weighted Mean Filter dengan Rayleigh noise
Pengujian ini menguji hasil reduksi Rayleigh noise dengan menggunakan metode
Weighted Mean Filtering. Dalam pengujian ini nanti akan diambil data berupa
nilai dari MSE dan PSNR sebelum dan setelah dilakukan proses filtering, serta
Running time saat direduksi. Pada penelitian ini dipakai persentasi noise antara
1 sampai 50%, untuk itu akan digunakan persentasi 10%, 20%, 30%, 40% dan 50% sebagai sampel pengujian.
Pengujian Weighted Mean Filtering pada Rayleigh noise dapat ditunjukkan pada tabel 4.2 berikut :
Tabel 4.2.Pengujian Metode Weighted Mean Filter dengan Rayleigh noise
Persentasi
noise
Citra Terkena Rayleigh noise Citra setelah direduksi dengan Metode Weighted Mean Filtering 10%
nilai MSE = 80.4656 nilai PSNR = 29.0747dB
nilai MSE = 840.095 nilai PSNR = 18.8875dB
(43)
20%
nilai MSE = 143.891 nilai PSNR = 26.5505dB
nilai MSE = 860.436 nilai PSNR = 18.7836dB
Running time = 0.078125s
30%
nilai MSE = 207.01 nilai PSNR = 24.9709 dB
nilai MSE = 874.251 nilai PSNR = 18.7144 dB
Running time = 0.09375s
40%
nilai MSE = 267.933 nilai PSNR = 23.8505dB
nilai MSE = 888.8 nilai PSNR = 18.6428dB
(44)
50%
nilai MSE = 324.321 nilai PSNR = 23.0211 dB
nilai MSE = 900.352 nilai PSNR = 18.5867 dB
Running time = 0.078125s
Citra pada tabel diatas merupakan citra asli yang sudah dikonversi ke
grayscale kemudian diberi noise dengan persentasi 1 sampai 50%. Terlihat pada
tabel diatas citra dengan noise 10% memiliki nilai MSE sebesar 80.4656 dan nilai
PSNR sebesar 29.0747 dB. Citra yang terkena noise 10% kemudian di filtering
sehingga didapat nilai MSE sebesar 840.095 dan nilai PSNR sebesar 18.8875 dB. Citra dengan noise 20% memiliki nilai MSE sebesar 143.891 dan nilai PSNR sebesar 26.5505 dB. Citra yang terkena noise 20% kemudian di filtering sehingga didapat nilai MSE sebesar 860.436 dan nilai PSNR sebesar 18.7836 dB. Citra dengan noise 30% memiliki nilai MSE sebesar 207.01 dan nilai PSNR sebesar 24.9709 dB. Citra yang terkena noise 30% kemudian di filtering sehingga didapat nilai MSE sebesar 874.251 dan nilai PSNR sebesar 18.7144 dB. Citra dengan
noise 40% memiliki nilai MSE sebesar 267.933 dan nilai PSNR sebesar 23.8505
dB. Citra yang terkena noise 40% kemudian di filtering sehingga didapat nilai
MSE sebesar 888.8 dan nilai PSNR sebesar 18.6428 dB. Citra dengan noise 50%
memiliki nilai MSE sebesar 324.321 dan nilai PSNR sebesar 23.0211 dB. Citra yang terkena noise 50% kemudian di filtering sehingga didapat nilai MSE sebesar 900.352 dan nilai PSNR sebesar 18.5867 dB.
(45)
0 100 200 300 400 500 600 700 800 900 1000
10% 20% 30% 40% 50%
MSE sebelum difilter MSE setelah difilter
Perbandingan nilai MSE dan PSNR citra yang terkena Rayleigh noise dengan citra ber-noise yang sudah dilakukan proses filtering dapat dilihat pada grafik di gambar 4.8 dan gambar 4.9 berikut ini:
Gambar 4.8. Grafik Perbandingan nilai MSE Rayleigh noise sebelum dan setelah dilakukan proses filtering dengan metode Weighted Mean Filtering
Pada grafik diatas dapat dilihat bahwa nilai MSE semakin meningkat apabila nilai persentasi noise nya juga bernilai besar. Kemudian setelah di filter nilai MSE nya menjadi semakin besar dibandingkan dengan nilai MSE sebelum dilakukan filtering.
(46)
0 5 10 15 20 25 30 35
10% 20% 30% 40% 50%
PSNR sebelum difilter PSNR setelah difilter
Gambar 4.9. Grafik Perbandingan nilai PSNR Rayleigh noise sebelum dan setelah dilakukan proses filtering dengan metode Weighted Mean Filtering
Pada grafik diatas dapat dilihat bahwa nilai PSNR semakin menurun apabila nilai persentasi noise nya bernilai besar. Kemudian setelah di filter nilai
PSNR nya menjadi semakin kecil dibandingkan dengan nilai PSNR sebelum
dilakukan filtering.
Dapat dilihat pada Gambar 4.8. dan Gambar 4.9. bahwa pengujian
Rayleigh noise dengan metode Weighted Mean Filtering tidak sesuai dengan teori
berdasarkan pada perbandingan nilai parameter MSE dan PSNR sebelum dan setelah dilakukan proses reduksi noise.
(47)
4.2.2 Pengujian Harmonic Mean Filtering
Pada aplikasi, metode ini juga terdapat pada halaman Pengujian sama hal nya dengan metode Weighted Mean Filtering, tetapi pada saat setelah selesai proses pemberian noise maka yang dipilih pada halaman tersebut adalah tombol
Harmonic Mean Filtering.
4.2.2.1. Pengujian Metode Harmonic Mean Filter dengan Gamma noise
Pengujian ini menguji hasil reduksi Gamma noise dengan menggunakan metode
Harmonic Mean Filtering. Dalam pengujian ini nanti akan diambil data berupa
nilai dari MSE dan PSNR sebelum dan setelah dilakukan proses filtering, serta
Running time saat direduksi. Pada penelitian ini dipakai persentasi noise antara
1 sampai 50%, untuk itu akan diagunakan persentasi 10%, 20%, 30%, 40% dan 50% sebagai sampel pengujian.
Pengujian Harmonic Mean Filtering pada Gamma noise dapat ditunjukkan pada tabel 4.3 berikut :
Tabel 4.3.Pengujian Metode Harmonic Mean Filter dengan Gamma noise
Persentasi
noise
Citra Terkena Gamma noise Citra setelah direduksi dengan Metode Harmonic Mean Filtering 10%
nilai MSE = 995.456 nilai PSNR = 18.1596 dB
nilai MSE = 1168.06 nilai PSNR = 17.4561 dB
(48)
20%
nilai MSE = 3631.24 nilai PSNR = 12.5302 dB
nilai MSE = 1093.78 nilai PSNR = 17.7415 dB
Running time = 0.265625 s
30%
nilai MSE = 7773.78 nilai PSNR = 9.22448 dB
nilai MSE = 1093.93 nilai PSNR = 17.7409 dB
Running time = 0.234375 s
40%
nilai MSE = 13289 nilai PSNR = 6.89587 dB
nilai MSE = 1134.02 nilai PSNR = 17.5846 dB
(49)
50%
nilai MSE = 19961.7 nilai PSNR = 5.12884 dB
nilai MSE = 1207.88 nilai PSNR = 17.3106 dB
Running time = 0.21875 s
Citra pada tabel diatas merupakan citra asli yang sudah dikonversi ke
grayscale kemudian diberi noise dengan persentasi 1 sampai 50%. Terlihat pada
tabel diatas citra dengan noise 10% memiliki nilai MSE sebesar 995.456 dan nilai
PSNR sebesar 18.1596 dB. Citra yang terkena noise 10% kemudian di filtering
sehingga didapat nilai MSE sebesar 1168.06 dan nilai PSNR sebesar 17.4561 dB. Citra dengan noise 20% memiliki nilai MSE sebesar 3631.24 dan nilai PSNR sebesar 12.5302 dB. Citra yang terkena noise 20% kemudian di filtering sehingga didapat nilai MSE sebesar 1093.78 dan nilai PSNR sebesar 17.7415 dB. Citra dengan noise 30% memiliki nilai MSE sebesar 7773.78 dan nilai PSNR sebesar 9.22448 dB. Citra yang terkena noise 30% kemudian di filtering sehingga didapat nilai MSE sebesar 1093.93 dan nilai PSNR sebesar 17.7409 dB. Citra dengan
noise 40% memiliki nilai MSE sebesar 13289 dan nilai PSNR sebesar 6.89587 dB.
Citra yang terkena noise 40% kemudian di filtering sehingga didapat nilai MSE sebesar 1134.02 dan nilai PSNR sebesar 17.5846 dB. Citra dengan noise 50% memiliki nilai MSE sebesar 19961.7 dan nilai PSNR sebesar 5.12884 dB. Citra yang terkena noise 50% kemudian di filtering sehingga didapat nilai MSE sebesar 1207.88 dan nilai PSNR sebesar 17.3106 dB.
Perbandimgan nilai MSE dan PSNR citra yang terkena Gamma noise dengan citra ber-noise yang sudah dilakukan proses filtering dapat dilihat pada grafikdi gambar 4.10 dan gambar 4.11 berikut ini:
(50)
0 2 4 6 8 10 12 14 16 18 20
10% 20% 30% 40% 50%
PSNR sebelum difilter PSNR setelah difilter 0
5000 10000 15000 20000
10% 20% 30% 40% 50%
MSE sebelum difilter MSE setelah difilter
Gambar 4.10. Grafik Perbandingan nilai MSE Gamma noise sebelum dan setelah dilakukan proses filtering dengan metode Harmonic Mean Filtering
Pada grafik diatas dapat dilihat bahwa nilai MSE semakin meningkat apabila nilai persentasi noise nya juga bernilai besar. Kemudian setelah di filter nilai MSE nya menjadi semakin kecil dibandingkan dengan nilai MSE sebelum dilakukan filtering, kecuali pada persentasi noise 10% yang nilai MSE sebelum dilakukan filtering lebih besar daripada setelah dilakukan filtering.
Gambar 4.11. Grafik Perbandingan nilai PSNR Gamma noise sebelum dan setelah dilakukan proses filtering dengan metode Harmonic Mean Filtering.
(51)
Pada grafik diatas dapat dilihat bahwa nilai PSNR semakin menurun apabila nilai persentasi noise nya bernilai besar. Kemudian setelah difilter nilai
PSNR nya menjadi semakin besar dibandingkan dengan nilai PSNR sebelum
dilakukan filtering.
Dapat dilihat pada Gambar 4.10. dan Gambar 4.11. bahwa pengujian
Gamma noise dengan metode Harmonic Mean Filtering sesuai dengan teori
berdasarkan pada perbandingan nilai parameter MSE dan PSNR sebelum dan setelah dilakukan proses reduksi noise. Kecuali pada nilai MSE pada nilai persentasi Gamma noise 10% yang nilai MSE sebelum difilter lebih kecil daripada setelah difilter.
4.2.2.2. Pengujian Metode Harmonic Mean Filter dengan Rayleigh noise
Pengujian ini menguji hasil reduksi Rayleigh noise dengan menggunakan metode
Harmonic Mean Filtering. Dalam pengujian ini nanti akan diambil data berupa
nilai dari MSE dan PSNR sebelum dan setelah dilakukan proses filtering, serta
Running time saat direduksi. Pada penelitian ini dipakai persentasi noise antara
1 sampai 50%, untuk itu akan digunakan persentasi 10%, 20%, 30%, 40% dan 50% sebagai sampel pengujian.
Pengujian Harmonic Mean Filtering pada Rayleigh noise dapat ditunjukkan pada tabel 4.4 berikut :
(52)
Tabel 4.4. Pengujian Metode Harmonic Mean Filter dengan Rayleigh noise
Persentasi
noise
Citra Terkena Rayleigh noise Citra setelah direduksi dengan Metode Harmonic Mean Filtering 10%
nilai MSE = 80.6452 nilai PSNR = 29.065dB
nilai MSE = 1342.12 nilai PSNR = 16.8529dB
Running time = 0.25s
20%
nilai MSE = 145.823 nilai PSNR = 26.4925dB
nilai MSE = 1330.03 nilai PSNR = 16.8922dB
Running time = 0.265625s
30%
nilai MSE = 205.237 nilai PSNR = 25.0082dB
nilai MSE = 1330.91 nilai PSNR = 16.8893 dB
(53)
40%
nilai MSE = 265.364 nilai PSNR = 23.8924dB
nilai MSE = 1333.05 nilai PSNR = 16.8823 dB
Running time = 0.28125s
50%
nilai MSE = 324.12 nilai PSNR = 23.0237dB
nilai MSE = 1331.39 nilai PSNR = 16.8877 dB
Running time = 0.234375s
Citra pada tabel diatas merupakan citra asli yang sudah dikonversi ke
grayscale kemudian diberi noise dengan persentasi 1 sampai 50%. Terlihat pada
tabel diatas citra dengan noise 10% memiliki nilai MSE sebesar 80.6452 dan nilai
PSNR sebesar 29.065 dB. Citra yang terkena noise 10% kemudian di filtering
sehingga didapat nilai MSE sebesar 1342.12 dan nilai PSNR sebesar 16.8529 dB. Citra dengan noise 20% memiliki nilai MSE sebesar 145.823 dan nilai PSNR sebesar 26.4925 dB. Citra yang terkena noise 20% kemudian di filtering sehingga didapat nilai MSE sebesar 1330.03 dan nilai PSNR sebesar 16.8922 dB. Citra dengan noise 30% memiliki nilai MSE sebesar 205.237 dan nilai PSNR sebesar 25.0082 dB. Citra yang terkena noise 30% kemudian di filtering sehingga didapat nilai MSE sebesar 1330.91 dan nilai PSNR sebesar 16.8893 dB. Citra dengan
(54)
0 200 400 600 800 1000 1200 1400 1600
10% 20% 30% 40% 50%
MSE sebelum difilter MSE setelah difilter
dB. Citra yang terkena noise 40% kemudian di filtering sehingga didapat nilai
MSE sebesar 1333.05 dan nilai PSNR sebesar 16.8823 dB. Citra dengan noise
50% memiliki nilai MSE sebesar 324.12 dan nilai PSNR sebesar 23.0237 dB. Citra yang terkena noise 50% kemudian di filtering sehingga didapat nilai MSE sebesar 1331.39 dan nilai PSNR sebesar 16.8877 dB.
Perbandingan nilai MSE dan PSNR citra yang terkena Rayleigh noise dengan citra ber-noise yang sudah dilakukan proses filtering dapat dilihat pada grafik di gambar 4.12 dan gambar 4.13 berikut ini:
Gambar 4.12. Grafik Perbandingan nilai MSE Rayleigh noise sebelum dan setelah dilakukan proses filtering dengan metode Harmonic Mean Filtering
Pada grafik diatas dapat dilihat bahwa nilai MSE semakin meningkat apabila nilai persentasi noise nya juga bernilai besar. Kemudian setelah di filter nilai MSE nya menjadi semakin besar dibandingkan dengan nilai MSE sebelum dilakukan filtering.
(55)
0 5 10 15 20 25 30 35
10% 20% 30% 40% 50%
PSNR sebelum difilter PSNR setelah difilter
Gambar 4.13. Grafik Perbandingan nilai PSNR Rayleigh noise sebelum dan setelah dilakukan proses filtering dengan metode Harmonic Mean Filtering
Pada grafik diatas dapat dilihat bahwa nilai PSNR semakin menurun apabila nilai persentasi noise nya bernilai besar. Kemudian setelah di filter nilai
PSNR nya menjadi semakin kecil dibandingkan dengan nilai PSNR sebelum
dilakukan filtering.
Dapat dilihat pada Gambar 4.12. dan Gambar 4.13. bahwa pengujian
Rayleigh noise dengan metode Harmonic Mean Filtering tidak sesuai dengan
teori berdasarkan pada perbandingan nilai parameter MSE dan PSNR sebelum dan setelah dilakukan proses reduksi noise.
(56)
0 0.05 0.1 0.15 0.2 0.25 0.3
10% 20% 30% 40% 50%
Running Time Weighted Mean Filtering Running Time Harmo nic Mean Filtering
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
10% 20% 30% 40% 50%
Running Time Weighted Mean Filtering Running Time Harmo nic Mean Filtering
Dari hasil pengujian diatas dapat kita lihat perbandingan dari running time masing- masing metode pada garfik di gambar 4.14 dan 4.15 berikut :
Gambar 4.14. Grafik perbandingan Running Time masing-masing metode dengan Gamma noise
Gambar 4.15. Grafik perbandingan Running Time masing-masing metode dengan Rayleigh noise
Dari Gambar 4.14. dan gambar 4.15. dapat dilihat bahwa running time dari metode Weighted Mean Filtering lebih kecil daripada running time dari metode
(57)
metode Weighted Mean Filtering lebih cepat dalam filtering kedua noise daripada metode Harmonic Mean Filtering.
4.2.3 Pengujian Black Box
Tahapan ini merupakan kelanjutan dari tahap implementasi yaitu melakukan pengujian terhadap aplikasi yang dibangun. Pengujian yang akan dilakukan yaitu dengan pengujian Black Box yang berfokus pada persyaratan fungsional perangkat lunak.
4.2.3.1 Rencana Pengujian
Rencana pengujian yang akan dilakukan dengan menguji sistem secara Alpha dapat dilihat pada tabel 4.5 berikut :
Tabel 4.5. Rencana Pengujian
Item Pengujian Detail Pengujian Jenis Pengujian
Filtering menggunakan
Weighted Mean Filter
dan Harmonic Mean
Filter
Lakukan Input Citra Black Box
Tampilkan Hasil Filter Black Box
Pada Tabel 4.5 diatas dapat dilihat hal yang akan diuji dalam proses
filtering menggunakan Weighted Mean Filter dan Harmonic Mean Filter adalah
melakukan input citra dan menampilkan hasil filtering, diuji dengan menggunakan pengujian Black Box.
(58)
4.2.3.2 Kasus dan Hasil Pengujjian Alpha
Berdasarkan rencana pengujian, maka dapat dilakukan pengujian Alpha pada perangkat lunak pada tabel 4.6 dan 4.7 berikut :
Tabel 4.6. Pengujian hasil input citra digital oleh user Kasus dan Hasil Uji
Masukan Yang Diharapkan Pengamatan Kesimpulan Citra digital
*.bmp
Menampilkan hasil konversi ke
grayscale dan
pertambahan
noise.
Menampilkan hasil konversi ke
grayscale dan
pertambahan
noise.
Diterima
Pada Tabel 4.6 diatas dapat dilihat bahwa kesimpulan pengujian pada hasil
input citra digital dengan masukan citra digital berformat *.bmp dapat diterima.
Tabel 4.7. Pengujian hasil filter oleh sistem. Kasus dan Hasil Uji
Masukan Yang Diharapkan Pengamatan Kesimpulan Nilai-nilai
Parameter filter
Menampilkan hasil filter kepada user beserta nilai parameter pembanding kualitas citra (MSE dan PSNR)
Menampilkan hasil filter kepada user beserta nilai parameter pembanding kualitas citra (MSE dan PSNR)
Diterima
Pada Tabel 4.7 diatas dapat dilihat bahwa kesimpulan pengujian pada hasil
filter oleh sistem dengan masukan nilai- nilai parameter filter dapat diterima.
4.2.3.3 Kesimpulan Hasil Pengujian Alpha
Berdasarkan hasil pengujian Alpha yang telah dilakukan dapat ditarik kesimpulan bahwa aplikasi sudah berjalan cukup maksimal, tetapi tidak menutup kemungkinan dapat terjadi kesalahan suatu saat pada saat aplikasi digunakan.
(59)
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Setelah melakukan beberapa tahap, yang dimulai dari tahap penelitian, perancangan hingga tahap implementasi dan perbandingan metode Weighted
Mean Filter dan Harmonic Mean Filter dalam mereduksi Gamma noise dan Rayleigh Noise pada citra digital dapat disimpulkan bahwa :
1. Semakin rendah nilai MSE suatu citra dari nilai MSE citra sebelumnya, berarti semakin baik pula kualitas suatu citra daripada citra sebelumnya. Sebaliknya pada PSNR, semakin tinggi nilai PSNR dari nilai PSNR citra sebelumnya, berarti semakin baik pula kualitas suatu citra daripada citra sebelumnya.
2. Weighted Mean Filter dapat mereduksi Gamma noise dengan baik, tetapi
kurang baik dalam mereduksi Rayleigh noise berdasarkan pada parameter nilai MSE dan PSNR.
3. Harmonic Mean Filter juga dapat mereduksi Gamma noise dengan baik,
tetapi kurang baik dalam mereduksi Rayleigh noise berdasarkan pada parameter nilai MSE dan PSNR.
4. Gamma noise dapat direduksi dengan baik oleh kedua metode, tetapi
rayleigh noise tidak dapat direduksi dengan baik.
5. Berdasarkan parameter running time, Weighted Mean Filtering lebih cepat dalam filtering kedua noise daripada metode Harmonic Mean Filtering. 6. Meskipun menurut parameter MSE dan PSNR citra dapat direduksi dan
mengurangi noise, namun secara visual diliat dengan mata citra malah semakin buram / blur. Hal ini terjadi karena dalam proses reduksi citra rumus dari kedua metode memang diberlakukan pada seluruh kernel pada
(60)
semua bagian piksel citra sehingga menyebabkan piksel yang tidak terkena
noise pun akan direduksi sehingga citra hasil akan menjadi blur secara visual tetapi tereduksi secara teori.
5.2 Saran
Berikut ini adalah saran yang dapat digunakan untuk tahap pengembangan sistem ini antara lain:
1. Menambah jenis citra lain yang diuji seperti *.jpeg atau *.gif. 2. Noise yang direduksi pada sistem ini ada dua noise, diharapkan
untuk pengembangan selanjutnya dapat menggunakan noise lain
3. Pada Harmonic Mean Filter dapat ditambahkan jenis kernel yang lain, bukan hanya 3x3 tetapi bisa ditambahkan dengan kernel 4x4 ataupun 5x5 dst.
4. Sebaiknya citra yang akan diuji adalah citra yang tidak terlalu gelap, sehingga akan meminimalisir terjadinya citra hasil yang
(61)
BAB II
LANDASAN TEORI
2.1. Citra
Citra (image) atau yang secara umum disebut gambar merupakan representasi spasial dari suatu objek yang sebenarnya dalam bidang dua dimensi yang biasanya ditulis dalam koordinat kartesian x-y, dan setiap koordinat merepresentasikan satu sinyal terkecil dari objek yang biasanya koordinat terkecil ini disebut sebagai pixel
(picture element). Pixel (Picture Elements) adalah nilai tiap-tiap entri matriks
pada bitmap. Rentang nilai-nilai pixel ini dipengaruhi oleh banyaknya warna yang dapat ditampilkan. Jika suatu bitmap dapat menampilkan 256 warna maka nilai-nilai pixel-nya dibatasi dari 0 hingga 255. Suatu citra bitmap akan mampu menampilkan warna lebih banyak, karena bitmap mempunyai kerapatan pixel yang tinggi (Prihatini, 2010). Karena merupakan sistem koordinat yang memiliki nilai maka biasanya image dianggap sebagai sebuah matrik x-y yang berisi nilai
pixel.
2.2 Citra Digital
Citra digital merupakan sebuah larik (array) yang berisi nilai-nilai real maupun komplek yang direpresentasikan dengan deretan bit tertentu. Secara umum, pengolahan citra digital menunjuk pada pemrosesan gambar 2 dimensi menggunakan komputer. Dalam konteks yang lebih luas, pengolahan citra digital mengacu pada pemrosesan setiap data 2 dimensi (Putra, 2010).
(62)
Citra digital merupakan salah satu bentuk citra yang sangat mudah dipergunakan jika dilihat dari segi pengiriman citra sebagai data, pengolahan dan pemrosesan citra. Disamping itu juga, citra digital menjadi hal yang sangat penting dan berguna dalam berbagai hal bidang kehidupan sehingga akses terhadap citra digital ini semakin banyak (Putra, 2011).
Citra digital (diskrit) dihasilkan dari citra analog (kontinu) melalui digitalisasi Digitalisasi citra analog terdiri atas penerokan (sampling) dan kuantisasi (quantization) Penerokan adalah pembagian citra ke dalam elemen elemen diskrit (pixel), sedangkan kuantisasi adalah pemberian nilai intensitas warna pada setiap pixel dengan nilai yang berupa bilangan bulat.
Citra digital dapat ditulis dalam bentuk matriks sebagai berikut :
Contoh ilustrasi citra digital dapat dilihat pada Gambar 2.1.
(63)
2.2.1 Jenis Citra
Banyaknya nilai yang dapat digunakan dalam kuantisasi citra bergantung kepada kedalaman pixel, yaitu banyaknya bit yang digunakan untuk merepresentasikan intensitas warna pixel. Kedalaman pixel sering disebut juga kedalaman warna.
Berdasarkan warna-warna penyusunnya, citra digital dapat dibagi menjadi tiga macam (Kadir, 2013) yaitu:
1. Citra Biner
Citra biner adalah citra yang hanya direpresentasikan nilai tiap pixel-nya dalam satu bit (satu nilai binary). Jadi, kemungkinan nilai yang dimiliki oleh citra biner ini hanya ada dua yaitu hitam dan putih. Dibutuhkan satu bit pada memori untuk menyimpan kedua warna ini dan setiap pixel pada citra biner bernilai 0 untuk warna hitam dan 1 untuk warna putih.
Contoh citra biner dapat dilihat pada Gambar 2.2.
Gambar 2.2. Citra Biner
2. Citra Grayscale (Skala Keabuan)
Citra yang nilai pixel-nya merepresentasikan derajat keabuan atau intensitas warna putih. Nilai intensitas paling rendah merepresentasikan warna hitam dan nilai intensitas paling tinggi merepresentasikan warna putih. Pada umumnya citra
grayscale memiliki kedalaman pixel 8 bit (255 derajat keabuan), tetapi ada juga
citra grayscale yang kedalaman pixel-nya bukan 8 bit, misalnya 16 bit untuk penggunaan yang memerlukan ketelitian tinggi atau dengan bit yang kecil. Pada
(1)
vii
COMPARISON OF WEIGHTED MEAN FILTERING AND HARMONIC MEAN FILTERING TO REDUCE RAYLEIGH NOISE AND
GAMMA NOISE ON DIGITAL IMAGE
ABSTRACT
The image processing in the digital age is required to obtain the image quality better. Most image quality degraded due to noise. Many things can cause an image affected by noise, among which dust attaches to the lens, the camera ISO (International Organization of Standardization) setting level is high, or because pixel image error / died. However, these problems can be solved by an image processing technique called Noise Reduction (filtering). In noise reduction techniques also include a method of using formulas and special way in reducing a variety of noises, some of the filtering methods are Weighted Mean Filtering and Harmonic Mean Filtering. Both of these methods are part of the Mean Filtering method, but both methods are to use a formula that has been modified so that it is expected to reduce noise better. In this study investigated how both methods in reducing the noise that has been selected, the type of noise chosen was Gamma Noise and Rayleigh Noise and the file type of image is *.bmp, then made comparisons at both methods based on the parameters MSE, PSNR and Running Time when the noise reduction is done. In this study, the comparison results obtained both methods . On testing Gamma noise can be reduced by both methods , either Weighted Harmonic Mean and Mean Filtering Filtering, while Rayleigh noise can not be reduced by both of these methods.
(2)
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak vi
Abstract vii
Daftar Isi viii
Daftar Tabel x
Daftar Gambar xi
Bab 1 Pendahuluan
1.1 Latar Belakang 1
1.2 Rumusan Masalah 2
1.3 Batasan Masalah 2
1.4 Tujuan Penelitian 3
1.5 Manfaat Penelitian 3
1.6 Sistematika Penulisan 4
Bab 2 Landasan Teori
2.1 Citra 5
2.2 Citra Digital 5
2.2.1 Jenis Citra 7
2.2.2 Format File Citra 9
2.3 Noise (Derau) 9
2.3.1 Gamma (Erlang) Noise 10
2.3.2 Rayleigh Noise 10
2.4 Filtering 11
2.4.1 Weighted Mean Filtering (Filter Rata-rata
Berbobot) 11
2.4.2 Harmonic Mean Filtering 13
2.5 Mean Square Error (MSE) 15
2.6 Peak Signal to Noise Ratio (PNSR) 16
Bab 3 Analisis dan Perancangan Sistem
3.1 Analisis Sistem 17
3.1.1 Analisis Masalah 17
3.1.2 Analisis Kebutuhan Sistem 18
3.1.2.1 Kebutuhan Fungsional Sistem 19 3.1.2.2 Kebutuhan Non Fungsional Sistem 19
3.1.3 Analisis Proses 19
3.1.3.1 Proses Noising 20
3.1.3.2 Proses Filtering 20
3.2 Pemodelan 20
(3)
ix
3.2.2 Sequence Diagram 27
3.2.3 Activity Diagram 27
3.3 Perancangan Sistem 29
3.3.1 Perancangan Flowchart Sistem 29
3.3.2 Perancangan Antarmuka Sistem 31
3.3.2.1 Perancangan Tampilan Awal Aplikasi 31 3.3.2.2 Perancangan Halaman Pengujian 32 3.3.2.3 Perancangan Halaman Tentang 34 Bab 4 Implementasi dan Pengujian Sistem
4.1 Implementasi 35
4.1.1 Halaman Utama 35
4.1.2 Halaman Pengujian 36
4.1.3 Halaman Tentang 37
4.2 Pengujian Sistem 38
4.2.1 Pengujian Weighted Mean Filtering 39 4.2.1.1 Pengujian Metode Weighted Mean Filter
dengan Gamma noise 40
4.2.1.2 Pengujian Metode Weighted Mean Filter
dengan Rayleigh noise 44 4.2.2 Pengujian Harmonic Mean Filtering 49
4.2.2.1 Pengujian Metode Harmonic Mean Filter
dengan Gamma noise 49 4.2.2.2 Pengujian Metode Harmonic Mean Filter
dengan Rayleigh noise 53
4.2.3 Pengujian Black Box 59
4.2.3.1 Rencana Pengujian 59
4.2.3.2 Kasus dan Hasil Pengujian Alpha 59 4.2.2.2 Kesimpulan Pengujian Alpha 60 Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan 61
5.2 Saran 62
Daftar Pustaka 63
Listing Program A-1
(4)
DAFTAR GAMBAR
Nomor
Gambar Nama Gambar Halaman
2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8
Contoh Citra Digital. Citra Biner
Citra Grayscale Citra Berwarna
(a) Citra sebelum terkena noise, (b) Citra setelah terkena Gamma Noise
(a) Citra sebelum terkena noise, (b) Citra setelah terkena Rayleigh Noise.
Contoh proses perhitungan Weighted Mean Filtering. Contoh proses perhitungan Harmonic Mean Filtering Diagram Ishikawa.
Use case Diagram Sistem Perbandingan Weighted Mean Filtering dan Harmonic Mean Filtering dalam Mereduksi Rayleigh Noise dan Gamma Noise pada Citra Digital
Sequence Diagram Sistem Perbandingan Weighted Mean Filtering dan Harmonic Mean Filtering dalam Mereduksi Rayleigh Noise dan Gamma Noise pada Citra Digital.
Activity Diagram Sistem Perbandingan Weighted Mean Filtering dan Harmonic Mean Filtering dalam Mereduksi Rayleigh Noise dan Gamma Noise pada Citra Digital.
Flowchart Gambaran Umum Sistem Rancangan Tampilan Awal Aplikasi. Rancangan Tampilan Halaman Pengujian Rancangan Tampilan Halaman Tentang Tampilan Halaman Utama
Tampilan Halaman Pengujian Tampilan Halaman Tentang Pilih tombol Pengujian
Buka citra *.bmp pada form Pengujian
Grafik Perbandingan nilai MSE Gamma noise sebelum dan setelah dilakukan proses filtering dengan metode Weighted Mean Filtering
Grafik Perbandingan nilai PSNR Gamma noise sebelum dan setelah dilakukan proses filtering dengan metode Weighted Mean Filtering
Grafik Perbandingan nilai MSE Rayleigh noise sebelum dan setelah dilakukan proses filtering dengan metode Weighted Mean Filtering 6 7 8 8 10 11 13 15 18 21 27 28 30 31 32 34 36 37 38 39 39 43 43 47
(5)
xi
4.9
4.10
4.11
4.12
4.13
4.14 4.15
Grafik Perbandingan nilai PSNR Rayleigh noise sebelum dan setelah dilakukan proses filtering dengan metode Weighted Mean Filtering
Grafik Perbandingan nilai MSE Gamma noise sebelum dan setelah dilakukan proses filtering dengan metode Harmonic Mean Filtering
Grafik Perbandingan nilai PSNR Gamma noise sebelum dan setelah dilakukan proses filtering dengan metode Harmonic Mean Filtering.
Grafik Perbandingan nilai MSE Rayleigh noise sebelum dan setelah dilakukan proses filtering dengan metode Harmonic Mean Filtering
Grafik Perbandingan nilai PSNR Rayleigh noise sebelum dan setelah dilakukan proses filtering dengan metode Harmonic Mean Filtering
Grafik perbandingan Running Time masing-masing metode dengan Gamma noise
Grafik perbandingan Running Time masing-masing metode dengan Rayleigh noise
48
52
52
56
57 58 58
(6)
DAFTAR TABEL
Nomor
Tabel Nama Tabel Halaman
3.1 3.2 4.1 4.2 4.3 4.4 4.5 4.6 4.7
Dokumentasi Naratif Use case
Dokumentasi Naratif Use case Filtering
Pengujian Metode Weighted Mean Filter dengan Gamma noise Pengujian Metode Weighted Mean Filter dengan Rayleigh noise Pengujian Metode Harmonic Mean Filter dengan Gamma noise Pengujian Metode Harmonic Mean Filter dengan Rayleigh noise Rencana Pengujian
Pengujian hasil input citra digital oleh user Pengujian hasil filter oleh sistem.
22 23 40 44 49 54 59 59 60