LISTING PROGRAM
Kode Program Figure Menu :
function varargout = Menu(varargin) gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Menu_OpeningFcn, ... 'gui_OutputFcn', @Menu_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
function Menu_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;
guidata(hObject, handles);
function varargout = Menu_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output;
% ---
function home_Callback(hObject, eventdata, handles)
% ---
function Embedd_Callback(hObject, eventdata, handles) EOFOF
% ---
function extract_Callback(hObject, eventdata, handles) Extract1
% ---
function file_Callback(hObject, eventdata, handles)
% ---
function help_Callback(hObject, eventdata, handles) Help
% ---
function exit_Callback(hObject, eventdata, handles) choice= questdlg ('Do you want to exit?','confirm',... 'Yes','No','No');
end
Kode Program Figure EOFOF (
Embedding):
function varargout = EOFOF(varargin) gui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @EOFOF_OpeningFcn, ... 'gui_OutputFcn', @EOFOF_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
function EOFOF_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;
guidata(hObject, handles);
function varargout = EOFOF_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output;
function btnOpen_Callback(hObject, eventdata, handles)
[fileName, pathName] = uigetfile({'*.bmp', 'File bmp (*.bmp)'}, 'Open Bitmap File');
if isequal(fileName, 0) return;
else
info = imfinfo([pathName, fileName]); location = info.Filename;
filesize = info.FileSize / 1024;
handles.image = imread(fullfile(pathName, fileName)); guidata(hObject, handles);
axes(handles.cover); imshow(handles.image);
set(handles.fileName, 'string', fileName); set(handles.location, 'string', location); set(handles.size, 'string', filesize);
set(handles.heigth, 'string', size(handles.image, 1)); set(handles.width, 'string', size(handles.image, 2)); set(handles.btnOpentxt, 'visible', 'on');
set(handles.btnEmbedd, 'visible', 'on'); set(handles.btnReset, 'visible', 'on'); end;
function btnOpentxt_Callback(hObject, eventdata, handles)
[fileName, pathName] = uigetfile({'*.txt', 'File Text (*.txt)'}, 'Open Text File');
if isequal(fileName, 0) return;
else
urlname = ['file:///' fullfile(pathName, fileName)]; try
catch err
disp(err.message) end
set(handles.msg, 'string', str); end;
function btnEmbedd_Callback(hObject, eventdata, handles)
%EOF
tStart=tic;
m = get(handles.msg,'String'); m
m = double(m);
penanda1 = double('zx'); m = [penanda1 m 'zx']; [d e] = size(m);
awal = handles.image; cover = handles.image; cover = double(cover); awal = double(awal); [b k c] = size(cover); x = k;
status = 1; status2 = false; while (~status2) x = x + 1; for i = 1:1:k
cover(i,x,1) = m(status); status = status + 1; if (status > e) status2 = true; break;
end
cover(i,x,2) = m(status); status = status + 1; if (status > e) status2 = true; break;
end
cover(i,x,3) = m(status); status = status + 1; if (status > e) status2 = true; break;
end end
if status2 == true break;
end end
stego1 = uint8(cover); EOFtime = toc(tStart); guidata(hObject, handles); axes(handles.stego1); imshow(stego1);
% FOF
efof1(:,:,:) = 0; efof2(:,:,:) = 0; for i = 1:1:b
fof(i,1,1) = 0; efof(i,1,1) = 0; efof1(i,1,1) = 0; efof2(i,1,1) = 0; efof(i,1,2) = 0; efof1(i,1,2) = 0; efof2(i,1,2) = 0; efof(i,1,3) = 0; efof1(i,1,3) = 0; efof2(i,1,3) = 0; end
x = 0; status = 1; status2 = false; while (true) x = x + 1; for i = 1:1:k
fof(i,x,1) = m(status); status = status + 1; if (status > e) status2 = true; break;
end
fof(i,x,2) = m(status); status = status + 1; if (status > e) status2 = true; break;
end
fof(i,x,3) = m(status); status = status + 1; if (status > e) status2 = true; break;
end end
if status2 == true break;
end end
fof = [fof awal]; stego2 = uint8(fof); FOFtime = toc(tStart); axes(handles.stego2); imshow(stego2);
% EOFOF tStart=tic;
m = get(handles.msg, 'String'); m = double(m);
penanda1 = double('zzxx'); m = [penanda1 m 'zx']; [d e] = size(m);
while (~status2) x = x + 1; for i = 1:1:k
efof1(i,x,1) = m(status);
status = status + 1; if (status > e) status2 = true; break;
end
efof2(i,x,1) = m(status);
status = status + 1; if (status > e) status2 = true; break;
end
efof1(i,x,2) = m(status);
status = status + 1; if (status > e) status2 = true; break;
end
efof2(i,x,2) = m(status);
status = status + 1; if (status > e) status2 = true; break;
end
efof1(i,x,3) = m(status);
status = status + 1; if (status > e) status2 = true; break;
end
efof2(i,x,3) = m(status);
status = status + 1; if (status > e) status2 = true; break;
end end end
efof = [efof1 awal efof2]; stego3 = uint8(efof); EOFOFtime = toc(tStart); axes(handles.stego3); imshow(stego3);
pathName = 'D:\TA\';
file1 = 'EOF.bmp';
result1 = getimage(handles.stego1);
imwrite(result1, strcat(pathName, file1)); info = imfinfo([pathName, file1]);
location = info.Filename;
filesize = info.FileSize / 1024;
set(handles.TimeEOF, 'string', EOFtime);
set(handles.lEOF, 'string', size(handles.image, 1)); set(handles.wEOF, 'string', size(handles.image, 2)); set(handles.locationEOF, 'string', location);
set(handles.sizeEOF, 'string', filesize);
file2 = 'FOF.bmp';
result2 = getimage(handles.stego2);
imwrite(result2, strcat(pathName, file2)); info = imfinfo([pathName, file2]);
handles.image = imread(fullfile(pathName, file2)); location = info.Filename;
filesize = info.FileSize / 1024;
set(handles.TimeFOF, 'string', FOFtime);
set(handles.lFOF, 'string', size(handles.image, 1)); set(handles.wFOF, 'string', size(handles.image, 2)); set(handles.locationFOF, 'string', location);
set(handles.sizeFOF, 'string', filesize);
file3 = 'EOFOF.bmp';
result3 = getimage(handles.stego3);
imwrite(result3, strcat(pathName, file3)); info = imfinfo([pathName, file3]);
handles.image = imread(fullfile(pathName, file3)); location = info.Filename;
filesize = info.FileSize / 1024;
set(handles.TimeEOFOF, 'string', EOFOFtime);
set(handles.lEOFOF, 'string', size(handles.image, 1)); set(handles.wEOFOF, 'string', size(handles.image, 2)); set(handles.locationEOFOF, 'string', location);
set(handles.sizeEOFOF, 'string', filesize);
function btnReset_Callback(hObject, eventdata, handles) set(handles.msg, 'string', '');
set(handles.btnStatistik, 'Visible', 'off'); null(:,:,:) = 1;
stego1 = null;
axes(handles.stego1); imshow(stego1);
stego2 = null;
axes(handles.stego2); imshow(stego2);
stego3 = null;
axes(handles.stego3); imshow(stego3);
function msg_Callback(hObject, eventdata, handles)
function msg_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function fileName_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function size_Callback(hObject, eventdata, handles)
function size_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function heigth_Callback(hObject, eventdata, handles)
function heigth_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function width_Callback(hObject, eventdata, handles)
function width_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function location_Callback(hObject, eventdata, handles)
function location_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function TimeEOFOF_Callback(hObject, eventdata, handles)
function TimeEOFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function sizeEOFOF_Callback(hObject, eventdata, handles)
function sizeEOFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function wEOFOF_Callback(hObject, eventdata, handles)
set(hObject,'BackgroundColor','white'); end
function lEOFOF_Callback(hObject, eventdata, handles)
function lEOFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function locationEOFOF_Callback(hObject, eventdata, handles)
function locationEOFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function TimeFOF_Callback(hObject, eventdata, handles)
function TimeFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function sizeFOF_Callback(hObject, eventdata, handles)
function sizeFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function wFOF_Callback(hObject, eventdata, handles)
function wFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function lFOF_Callback(hObject, eventdata, handles)
function lFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function locationFOF_Callback(hObject, eventdata, handles)
function locationFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function TimeEOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function sizeEOF_Callback(hObject, eventdata, handles)
function sizeEOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function wEOF_Callback(hObject, eventdata, handles)
function wEOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function lEOF_Callback(hObject, eventdata, handles)
function lEOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function locationEOF_Callback(hObject, eventdata, handles)
function locationEOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function btnStatistik_Callback(hObject, eventdata, handles) Statistic
% ---
function Home_Callback(hObject, eventdata, handles) Menu
% ---
function File_Callback(hObject, eventdata, handles)
% --- function Embedd_Callback(hObject, eventdata, handles)
EOFOF
% ---
% ---
function Help_Callback(hObject, eventdata, handles) Help
% ---
function Exit_Callback(hObject, eventdata, handles) choice= questdlg ('Do you want to exit?','confirm',... 'Yes','No','No');
switch choice case 'Yes' close all; end
% ---
function Close_Callback(hObject, eventdata, handles) close
Kode Program Figure Extract1:
function varargout = Extract1(varargin) gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Extract1_OpeningFcn, ... 'gui_OutputFcn', @Extract1_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
function Extract1_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;
guidata(hObject, handles);
function varargout = Extract1_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output;
function btnOpen1_Callback(hObject, eventdata, handles)
[fileName, pathName] = uigetfile({'*.bmp','File bmp (*.bmp)'},'Open Stego Image');
if ~isequal(fileName,0)
handles.image=imread(fullfile(pathName, fileName)); guidata(hObject,handles);
axes(handles.Stego1); imshow(handles.image);
set(handles.btnExtract1,'Visible','on'); else
return; end;
[fileName, pathName] = uigetfile({'*.bmp','File bmp (*.bmp)'},'Open Stego Image');
if ~isequal(fileName,0)
handles.image=imread(fullfile(pathName, fileName)); guidata(hObject,handles);
axes(handles.Stego2); imshow(handles.image);
set(handles.btnExtract2,'Visible','on');
else
return; end;
function btnOpen3_Callback(hObject, eventdata, handles)
[fileName, pathName] = uigetfile({'*.bmp','File bmp (*.bmp)'},'Open Stego Image');
if ~isequal(fileName,0)
handles.image=imread(fullfile(pathName, fileName)); guidata(hObject,handles);
axes(handles.Stego3); imshow(handles.image);
set(handles.btnExtract3,'Visible','on'); else
return; end;
function btnExtract1_Callback(hObject, eventdata, handles) tStart=tic;
cover = handles.image; cover = double(cover) [b k c] = size(cover); penanda1=('zx');
penanda1=double(penanda1); penanda1;
x = k; kondisi=0; for i = 1:1:k
tanda=[cover(1,i,1) cover(1,i,2)]; tanda=double(tanda);
if tanda == penanda1 kondisi=1;
indeks=i break; end
end
if kondisi==1
for l=1:1:indeks-1 for t= 1:1:b
for rgb= 1:1:3
gambarku(t, l, rgb)= cover(t, l, rgb); end
end end;
gambarku= uint8(gambarku) pathName = 'D:\HASIL\'; file1 = 'EOF.bmp';
imwrite(gambarku, strcat(pathName, file1)); sss=1;
for i=indeks:1:k for j=1:1:b
teks=[teks char(cover(j,i,1))]; sss=sss+1;
teks=[teks char(cover(j,i,2))]; sss=sss+1;
teks=[teks char(cover(j,i,3))]; sss=sss+1;
end end
posisi=3;
a=length(teks); for i=3:a-1
posisi1=teks(i); posisi2=teks(i+1); if (posisi1=='z') if (posisi2=='x') b=3;
b=i; end end end; baru=[]; for i=3:b
tekss=teks(i); baru=[baru tekss]; end
baru;
tampung = [];
for i = 1 : (length(baru)-1)
if baru(i) == 'z' && baru(i+1) == 'x' break
end
tampung =[tampung baru(i)]; end
tampung;
msgbox({'There is hidden message.'}','Message','modal'); EOFtime = toc(tStart);
set(handles.TimeEOF, 'String', EOFtime); set(handles.edEOF,'String',tampung); else
set(handles.TimeEOF, 'String', ''); set(handles.edEOF,'String','');
msgbox({'There is no hidden message. Please select another image.'},'Message','modal');
end;
function btnExtract2_Callback(hObject, eventdata, handles) tStart=tic;
cover = handles.image; cover = double(cover) [b k c] = size(cover);
penanda1=('zx');
penanda1=double(penanda1); penanda1;
for i = 1:1:k
tanda=[cover(1,i,1) cover(1,i,2)]; tanda=double(tanda);
if tanda == penanda1 kondisi=1;
indeks=i break; end
end
pos=1;
[b k c] = size(cover); if kondisi==1
for l=indeks+2:1:k for t= 1:1:b
for rgb= 1:1:3
gambarku(t, pos, rgb)= cover(t, l, rgb); end
end
pos=pos+1; end;
gambarku= uint8(gambarku); pathName = 'D:\HASIL\'; file1 = 'FOF.bmp';
imwrite(gambarku, strcat(pathName, file1));
sss=1; teks=[];
for i=indeks:1:k for j=1:1:b
teks=[teks char(cover(j,i,1))]; sss=sss+1;
teks=[teks char(cover(j,i,2))]; sss=sss+1;
teks=[teks char(cover(j,i,3))]; sss=sss+1;
end end
posisi=3;
a=length(teks); for i=3:a-1
posisi1=teks(i); posisi2=teks(i+1); if (posisi1=='z') if (posisi2=='x') b=3;
b=i;
end end end; baru=[]; for i=3:b
tekss=teks(i); baru=[baru tekss]; end
tampung = [];
for i = 1 : (length(baru)-1)
if baru(i) == 'z' && baru(i+1) == 'x' break
end
tampung =[tampung baru(i)]; end
tampung;
msgbox({'There is hidden message.'}','Message','modal'); FOFtime = toc(tStart);
set(handles.TimeFOF, 'String', FOFtime); set(handles.edFOF,'String',tampung); else
set(handles.TimeFOF, 'String', ''); set(handles.edFOF,'String','');
msgbox({'There is no hidden message. Please select another image.'},'Message','modal');
end;
function btnExtract3_Callback(hObject, eventdata, handles) tStart=tic;
cover = handles.image; cover = double(cover) [b k c] = size(cover);
penanda1=('zx');
penanda1=double(penanda1); penanda1;
x = k; kondisi=0;
tanda=[cover(1,1,1) cover(1,1,2)] tanda=double(tanda);
indeks=0;
handles.teks1=[];
guidata(hObject,handles); sss=1;
if tanda == penanda1
for i = 2:1:k
tanda=[cover(1,i,1) cover(1,i,2)]; tanda=double(tanda);
if tanda == penanda1 kondisi=1;
teks=[]; indekss=i p1=i-1; p2=k-p1+1; break; end
end
indeks=indekss; if(indekss>0)
for i=1:1:(indekss-2) for j=1:1:b
teks=[teks char(cover(j,indeks,2))]; teks=[teks char(cover(j,i,3))]; teks=[teks char(cover(j,indeks,3))]; end
break end
end
posisi=3;
a=length(teks); for i=3:a-1
posisi1=teks(i); posisi2=teks(i+1); if (posisi1=='z') if (posisi2=='x') b=3;
b=i; end
end end; baru=[]; for i=5:b
tekss=teks(i); baru=[baru tekss] end
baru;
tampung = [];
for i = 1 : (length(baru)-1)
if baru(i) == 'z' && baru(i+1) == 'x' break
end
tampung =[tampung baru(i)]; end
tampung;
pos=1;
[b k c] = size(cover); for l=p2:p1
for t= 1:1:b
for rgb= 1:1:3
gambarku(t, pos, rgb)= cover(t, l, rgb); end
end
pos=pos+1; end;
gambarku= uint8(gambarku) pathName = 'D:\HASIL\'; file1 = 'EOFOF.bmp';
imwrite(gambarku, strcat(pathName, file1));
msgbox({'There is hidden message.'},'Message','modal'); EOFOFtime = toc(tStart);
set(handles.TimeEOFOF, 'String', EOFOFtime); set(handles.edEOFOF,'String',tampung);
else
set(handles.edEOFOF,'String','');
msgbox({'There is no hidden message. Please select another image.'},'Message','modal');
end;
function edEOFOF_Callback(hObject, eventdata, handles)
function edEOFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function edit2_Callback(hObject, eventdata, handles)
function edit2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function edit1_Callback(hObject, eventdata, handles)
function edit1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function edFOF_Callback(hObject, eventdata, handles)
function edFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function edEOF_Callback(hObject, eventdata, handles)
function edEOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
% ---
function Menu_Callback(hObject, eventdata, handles) Menu
% ---
function File_Callback(hObject, eventdata, handles)
% ---
% ---
function Extract_Callback(hObject, eventdata, handles) Extract1
% ---
function MSE_Callback(hObject, eventdata, handles) Statistic
% ---
function Help_Callback(hObject, eventdata, handles) Help
% ---
function Exit_Callback(hObject, eventdata, handles) choice= questdlg ('Do you want to exit?','confirm',... 'Yes','No','No');
switch choice case 'Yes' close all; end
function TimeEOF_Callback(hObject, eventdata, handles)
function TimeEOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function TimeFOF_Callback(hObject, eventdata, handles)
function TimeFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function TimeEOFOF_Callback(hObject, eventdata, handles)
function TimeEOFOF_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
% ---
function Close_Callback(hObject, eventdata, handles) close
% --- Executes on button press in reset.
function reset_Callback(hObject, eventdata, handles) set(handles.edEOF, 'string', '');
set(handles.TimeEOF, 'string', ''); set(handles.TimeFOF, 'string', ''); set(handles.TimeEOFOF, 'string', '');
Kode Program Figure Statistic:
function varargout = Statistic(varargin) gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Statistic_OpeningFcn, ... 'gui_OutputFcn', @Statistic_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
function Statistic_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;
guidata(hObject, handles);
function varargout = Statistic_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output;
function btnOpen1_Callback(hObject, eventdata, handles)
[fileName, pathName] = uigetfile({'*.bmp','File bmp (*.bmp)'},'Open Image');
if ~isequal(fileName,0)
handles.image=imread(fullfile(pathName, fileName)); guidata(hObject,handles);
axes(handles.Stego1); imshow(handles.image); else
return; end;
function btnOpen2_Callback(hObject, eventdata, handles)
[fileName, pathName] = uigetfile({'*.bmp','File bmp (*.bmp)'},'Open Image');
if ~isequal(fileName,0)
handles.image=imread(fullfile(pathName, fileName)); guidata(hObject,handles);
axes(handles.Stego2); imshow(handles.image); else
return; end;
function btnOpen3_Callback(hObject, eventdata, handles)
if ~isequal(fileName,0)
handles.image=imread(fullfile(pathName, fileName)); guidata(hObject,handles);
axes(handles.Stego3); imshow(handles.image); else
return; end;
function btnOpen4_Callback(hObject, eventdata, handles)
[fileName, pathName] = uigetfile({'*.bmp','File bmp (*.bmp)'},'Open Image');
if ~isequal(fileName,0)
handles.image=imread(fullfile(pathName, fileName)); guidata(hObject,handles);
axes(handles.Stego4); imshow(handles.image); else
return; end;
function Mse3_Callback(hObject, eventdata, handles)
function Mse3_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function Mse2_Callback(hObject, eventdata, handles)
function Mse2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function Mse1_Callback(hObject, eventdata, handles)
function Mse1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
% ---
function Menu_Callback(hObject, eventdata, handles) Menu
% ---
function File_Callback(hObject, eventdata, handles)
% ---
% ---
function Extract_Callback(hObject, eventdata, handles) Extract1
% ---
function MSE_Callback(hObject, eventdata, handles) Statistic
% ---
function Help_Callback(hObject, eventdata, handles) Help
% ---
function Exit_Callback(hObject, eventdata, handles) choice= questdlg ('Do you want to exit?','confirm',... 'Yes','No','No');
switch choice case 'Yes' close all; end
function btnMse_Callback(hObject, eventdata, handles)
Stego1 = getimage(handles.Stego1); StegoA = double(Stego1);
[b1 k1 c]= size (StegoA);
Stego2 = getimage(handles.Stego2); StegoB = double(Stego2);
[b2 k2 c]= size (StegoB);
Stego3 = getimage(handles.Stego3); StegoC = double(Stego3);
[b3 k3 c]= size (StegoC);
Stego4 = getimage(handles.Stego4); StegoD = double(Stego4);
[b4 k4 c]= size (StegoD);
C1= StegoA; C1(1,1,1)
if(b1==b2 && k1==k2) C2= StegoB;
dC= double(C1) - double(C2); mse= (dC(:).^2);
p= length(mse);
mse1= (sum(mse(1:p))/p);
set(handles.Mse1,'String',mse1); else
msgbox({'Image 1 ~= Image 2'}','Message','modal'); end
if(b1==b3 && k1==k3) C3= StegoC;
p= length(mse);
mse2= (sum(mse(1:p))/p);
set(handles.Mse2,'String',mse2); else
msgbox({'Image 1 ~= Image 3'}','Message','modal'); end
if(b1==b4 && k1==k4) C4= StegoD;
dC= double(C1) - double(C4); mse= (dC(:).^2);
p= length(mse);
mse3= (sum(mse(1:p))/p);
set(handles.Mse3,'String',mse3); else
msgbox({'Image 1 ~= Image 4'}','Message','modal'); end
% ---
function Close_Callback(hObject, eventdata, handles) close
% --- Executes on button press in reset.
function reset_Callback(hObject, eventdata, handles) set(handles.Mse1, 'string', '');
set(handles.Mse2, 'string', ''); set(handles.Mse3, 'string', '');
Kode Program Figure Help:
function varargout = Help(varargin) gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Help_OpeningFcn, ... 'gui_OutputFcn', @Help_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
function Help_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;
guidata(hObject, handles);
function edit1_Callback(hObject, eventdata, handles)
function edit1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function edit2_Callback(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function edit3_Callback(hObject, eventdata, handles)
function edit3_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
function edit4_Callback(hObject, eventdata, handles)
function edit4_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white'); end
% ---
function home_Callback(hObject, eventdata, handles) Menu
% ---
function file_Callback(hObject, eventdata, handles)
% ---
function Embedd_Callback(hObject, eventdata, handles) EOFOF
% ---
function extract_Callback(hObject, eventdata, handles) Extract1
% ---
function close_Callback(hObject, eventdata, handles) close
function help_Callback(hObject, eventdata, handles) Help
% ---
function exit_Callback(hObject, eventdata, handles) choice= questdlg ('Do you want to exit?','confirm',... 'Yes','No','No');
CURRICULUM VITAE
Nama
: Arfiyah
Tempat / Tanggal Lahir
: Medan / 15 Februari 1991
Alamat
: Gang.Pringgan Lor.Camar Marelan
Agama
: Islam
Jenis Kelamin
: Perempuan
Alamat Email
No. Hp
: 081376502332
PENDIDIKAN FORMAL
2009-2013
S1 Ilmu Komputer Fasilkom-TI USU, Medan.
2006-2009
SMA Negeri 3 Medan
2003-2006
SMP Hang-Tuah I Belawan
1997-2003
SD Hang-Tuah III Belawan
SEMINAR, KURSUS
2013
Peserta Seminar Nasional dengan Tema “Pencaplokan
Budaya” Universitas Sumatera Utara
2012
Peserta Kursus Bahasa Inggris
2011
Peserta Seminar Teknologi Informasi “The
Development of Modern Operating System Technology:
Android – The new Trend in Modern Operating Sytem”
Universitas Sumatera Utara
2010
Peserta Seminar Internasional Matematika dan Terapan
Universitas Sumatera Utara
2008
Peserta Kursus Komputer
KEAHLIAN
Bahasa
Indonesia, Inggris
Bahasa Pemrograman
Matlab, C++, C#.Net, Delphi, PHP, MySQL.
PENGALAMAN ORGANISASI
2011
Anggota
IMILKOM (Ikatan Mahasiswa Ilmu
Komputer) USU Medan
2009
Anggota BKM AL-KHAWARIZMI S1 Ilmu Komputer
USU Medan