4. Form Perbandingan Input-an Citra Ber-noise
function varargout = PROSES2varargin
gui_Singleton = 1; gui_State = struct
gui_Name , mfilename,
... gui_Singleton
, gui_Singleton, ...
gui_OpeningFcn , PROSES2_OpeningFcn,
... gui_OutputFcn
, PROSES2_OutputFcn, ...
gui_LayoutFcn , [],
... gui_Callback
, []; if
nargin ischarvarargin{1} gui_State.gui_Callback = str2funcvarargin{1};
end if
nargout [varargout{1:nargout}] = gui_mainfcngui_State, varargin{:};
else gui_mainfcngui_State, varargin{:};
end function
PROSES2_OpeningFcnhObject, eventdata, handles, varargin handles.output = hObject;
guidatahObject, handles; function
varargout = PROSES2_OutputFcnhObject, eventdata, handles varargout{1} = handles.output;
function btn_open_CallbackhObject, eventdata, handles
[nama_file, namaPath]=uigetfile{ .bmp
}, Buka File
; if
~isequal nama_file,0 handles.citra=imreadfullfilenamaPath,nama_file;
guidatahObject,handles; axeshandles.citra_noise;
imshowhandles.citra; sethandles.filename,
String ,nama_file;
sethandles.panjang, String
,sizehandles.citra,1; sethandles.lebar,
String ,sizehandles.citra,2;
else return
; end
sethandles.btn_open, Enable
, Off
sethandles.btn_clear, Enable
, On
sethandles.btn_mean, Enable
, On
sethandles.btn_median, Enable
, On
sethandles.btn_combined, Enable
, On
function filename_CallbackhObject, eventdata, handles
function filename_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function panjang_CallbackhObject, eventdata, handles
function panjang_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function lebar_CallbackhObject, eventdata, handles
function lebar_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function btn_mainmenu_CallbackhObject, eventdata, handles
HOME; closegcbf;
function btn_combined_CallbackhObject, eventdata, handles
global runtime;
runtime=cputime; citra_asli = getimagehandles.citra_noise;
temp=citra_asli; [b k c]=sizetemp;
for x=1:1:b
for y=1:1:k
for z=1:1:c
try matriks1,1=tempx-1,y-1,z;
catch matriks1,1=0;
end try
matriks1,2=tempx-1,y,z; catch
matriks1,2=0; end
try matriks1,3=tempx-1,y+1,z;
catch matriks1,3=0;
end try
matriks2,1=tempx,y-1,z; catch
matriks2,1=0; end
try matriks2,2=tempx,y,z;
catch matriks2,2=0;
end try
matriks2,3=tempx,y+1,z; catch
matriks2,3=0; end
try matriks3,1=tempx+1,y-1,z;
catch matriks3,1=0;
end try
matriks3,2=tempx+1,y,z; catch
matriks3,2=0; end
try matriks3,3=tempx+1,y+1,z;
catch matriks3,3=0;
end filteredx,y,z=meanmeanmatriks+medianmedianmatriks2;
end end
end filtered=uint8filtered;
handles.citra=filtered; axeshandles.axes_meanmedian;
imshowhandles.citra; runtime=cputime-runtime;
sethandles.txt_runtime_combined, String
,runtime; sethandles.btn_combined,
Enable ,
Off sethandles.save_combine,
Enable ,
On sethandles.btn_mse_combined,
Enable ,
On sethandles.btn_psnr_combined,
Enable ,
On function
btn_mean_CallbackhObject, eventdata, handles global
runtime; runtime=cputime;
citra_asli = getimagehandles.citra_noise; temp=citra_asli;
[b k c]=sizetemp; for
x=1:1:b for
y=1:1:k for
z=1:1:c try
matriks1,1=tempx-1,y-1,z; catch
matriks1,1=0; end
try matriks1,2=tempx-1,y,z;
catch matriks1,2=0;
end try
matriks1,3=tempx-1,y+1,z; catch
matriks1,3=0; end
try matriks2,1=tempx,y-1,z;
catch matriks2,1=0;
end try
matriks2,2=tempx,y,z; catch
matriks2,2=0; end
try matriks2,3=tempx,y+1,z;
catch matriks2,3=0;
end try
matriks3,1=tempx+1,y-1,z; catch
matriks3,1=0; end
try matriks3,2=tempx+1,y,z;
catch matriks3,2=0;
end try
matriks3,3=tempx+1,y+1,z; catch
matriks3,3=0; end
filteredx,y,z=meanmeanmatriks; end
end end
filtered=uint8filtered; handles.citra=filtered;
axeshandles.axes_meanfilter; imshowhandles.citra;
runtime=cputime-runtime; sethandles.txt_runtime_mean,
String ,runtime;
sethandles.btn_mean, Enable
, Off
sethandles.save_mean, Enable
, On
sethandles.btn_mse_mean, Enable
, On
sethandles.btn_psnr_mean, Enable
, On
function btn_median_CallbackhObject, eventdata, handles
global runtime;
runtime=cputime; citra_asli = getimagehandles.citra_noise;
temp=citra_asli; [b k c]=sizetemp;
for x=1:1:b
for y=1:1:k
for z=1:1:c
try matriks1,1=tempx-1,y-1,z;
catch matriks1,1=0;
end try
matriks1,2=tempx-1,y,z; catch
matriks1,2=0; end
try matriks1,3=tempx-1,y+1,z;
catch matriks1,3=0;
end try
matriks2,1=tempx,y-1,z; catch
matriks2,1=0; end
try matriks2,2=tempx,y,z;
catch matriks2,2=0;
end try
matriks2,3=tempx,y+1,z; catch
matriks2,3=0; end
try matriks3,1=tempx+1,y-1,z;
catch matriks3,1=0;
end try
matriks3,2=tempx+1,y,z; catch
matriks3,2=0; end
try matriks3,3=tempx+1,y+1,z;
catch matriks3,3=0;
end filteredx,y,z= medianmedianmatriks;
end end
end filtered=uint8filtered;
handles.citra=filtered; axeshandles.axes_medianfilter;
imshowhandles.citra; runtime=cputime-runtime;
sethandles.txt_runtime_median, String
,runtime; sethandles.btn_median,
Enable ,
Off sethandles.save_median,
Enable ,
On sethandles.btn_mse_median,
Enable ,
On sethandles.btn_psnr_median,
Enable ,
On function
btn_mse_median_CallbackhObject, eventdata, handles citra = getimagehandles.citra_noise;
citra_hasil=getimagehandles.axes_medianfilter; [psnrval mseval] = MSE_PSNRcitra,citra_hasil;
sethandles.txt_mse_median, String
,mseval; function
btn_psnr_median_CallbackhObject, eventdata, handles citra = getimagehandles.citra_noise;
citra_hasil=getimagehandles.axes_medianfilter; [psnrval mseval] = MSE_PSNRcitra,citra_hasil;
sethandles.txt_psnr_median, String
,psnrval; function
btn_runtime_median_CallbackhObject, eventdata, handles
global runtime;
sethandles.txt_runtime_median, String
,runtime; function
txt_mse_median_CreateFcnhObject, eventdata, handles if
ispc isequalgethObject, BackgroundColor
, get0,
defaultUicontrolBackgroundColor sethObject,
BackgroundColor ,
white ;
end function
txt_psnr_median_CreateFcnhObject, eventdata, handles if
ispc isequalgethObject, BackgroundColor
, get0,
defaultUicontrolBackgroundColor sethObject,
BackgroundColor ,
white ;
end function
txt_runtime_median_CreateFcnhObject, eventdata, handles if
ispc isequalgethObject, BackgroundColor
, get0,
defaultUicontrolBackgroundColor sethObject,
BackgroundColor ,
white ;
end function
btn_mse_mean_CallbackhObject, eventdata, handles citra = getimagehandles.citra_noise;
citra_hasil=getimagehandles.axes_meanfilter; [psnrval mseval] = MSE_PSNRcitra,citra_hasil;
sethandles.txt_mse_mean, String
,mseval; function
btn_psnr_mean_CallbackhObject, eventdata, handles citra = getimagehandles.citra_noise;
citra_hasil=getimagehandles.axes_meanfilter; [psnrval mseval] = MSE_PSNRcitra,citra_hasil;
sethandles.txt_psnr_mean, String
,psnrval; function
btn_runtime_mean_CallbackhObject, eventdata, handles global
runtime; sethandles.txt_runtime_mean,
String ,runtime;
function txt_mse_mean_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function txt_psnr_mean_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function txt_runtime_mean_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function btn_mse_combined_CallbackhObject, eventdata, handles
citra = getimagehandles.citra_noise; citra_hasil=getimagehandles.axes_meanmedian;
[psnrval mseval] = MSE_PSNRcitra,citra_hasil; sethandles.txt_mse_combined,
String ,mseval;
function btn_psnr_combined_CallbackhObject, eventdata, handles
citra = getimagehandles.citra_noise; citra_hasil=getimagehandles.axes_meanmedian;
[psnrval mseval] = MSE_PSNRcitra,citra_hasil; sethandles.txt_psnr_combined,
String ,psnrval;
function btn_runtime_combined_CallbackhObject, eventdata, handles
global runtime;
sethandles.txt_runtime_combined, String
,runtime; function
txt_mse_combined_CallbackhObject, eventdata, handles function
txt_mse_combined_CreateFcnhObject, eventdata, handles if
ispc isequalgethObject, BackgroundColor
, get0,
defaultUicontrolBackgroundColor sethObject,
BackgroundColor ,
white ;
end function
txt_psnr_combined_CreateFcnhObject, eventdata, handles if
ispc isequalgethObject, BackgroundColor
, get0,
defaultUicontrolBackgroundColor sethObject,
BackgroundColor ,
white ;
end function
txt_runtime_combined_CreateFcnhObject, eventdata, handles if
ispc isequalgethObject, BackgroundColor
, get0,
defaultUicontrolBackgroundColor sethObject,
BackgroundColor ,
white ;
end function
btn_clear_CallbackhObject, eventdata, handles citra_combine=handles.citra[];
axeshandles.axes_meanmedian; imshowcitra_combine;
citra_median=handles.citra[]; axeshandles.axes_medianfilter;
imshowcitra_median; citra_mean=handles.citra[];
axeshandles.axes_meanfilter; imshowcitra_mean;
handles.citra=handles.citra[]; axeshandles.citra_noise;
imshowhandles.citra; sethandles.btn_clear,
Enable ,
Off sethandles.btn_mean,
Enable ,
Off sethandles.btn_median,
Enable ,
Off sethandles.btn_combined,
Enable ,
Off sethandles.btn_mse_mean,
Enable ,
Off sethandles.btn_psnr_mean,
Enable ,
Off sethandles.btn_mse_median,
Enable ,
Off sethandles.btn_psnr_median,
Enable ,
Off sethandles.btn_mse_combined,
Enable ,
Off sethandles.btn_psnr_combined,
Enable ,
Off sethandles.save_mean,
Enable ,
Off sethandles.save_median,
Enable ,
Off sethandles.save_combine,
Enable ,
Off sethandles.txt_mse_mean,
String ,0;
sethandles.txt_psnr_mean, String
,0; sethandles.txt_runtime_mean,
String ,0;
sethandles.txt_mse_median, String
,0; sethandles.txt_psnr_median,
String ,0;
sethandles.txt_runtime_median, String
,0; sethandles.txt_mse_combined,
String ,0;
sethandles.txt_psnr_combined, String
,0; sethandles.txt_runtime_combined,
String ,0;
function txt_probabilitas_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function switch_noise_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function slider_noise_CallbackhObject, eventdata, handles
function slider_noise_CreateFcnhObject, eventdata, handles
if isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
,[.9 .9 .9]; end
function txt_mse_noise_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function txt_psnr_noise_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function txt_rt_noise_CreateFcnhObject, eventdata, handles
if ispc isequalgethObject,
BackgroundColor ,
get0, defaultUicontrolBackgroundColor
sethObject, BackgroundColor
, white
; end
function save_combine_CallbackhObject, eventdata, handles
[nama_file,nama_path] = uiputfile .bmp
, save file
; nama_file_simpan=fullfilenama_path,nama_file;
citra=getframehandles.axes_meanmedian; [x,map]=frame2imcitra;
if isemptymap
rgb = x; else
rgb = ind2rgbx,map; end
imwritex,nama_file_simpan, bmp
; function
save_mean_CallbackhObject, eventdata, handles [nama_file,nama_path] = uiputfile
.bmp ,
save file ;
nama_file_simpan=fullfilenama_path,nama_file; citra=getframehandles.axes_meanfilter;
[x,map]=frame2imcitra; if
isemptymap rgb = x;
else rgb = ind2rgbx,map;
end imwritex,nama_file_simpan,
bmp ;
function save_median_CallbackhObject, eventdata, handles
[nama_file,nama_path] = uiputfile .bmp
, save file
; nama_file_simpan=fullfilenama_path,nama_file;
citra=getframehandles.axes_medianfilter; [x,map]=frame2imcitra;
if isemptymap
rgb = x; else
rgb = ind2rgbx,map; end
imwritex,nama_file_simpan, bmp
;
5. Form About