LAMPIRAN LISTING PROGRAM

Similar documents
LAMPIRAN 1. Percobaan

LISTING PROGRAM. if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); else gui_mainfcn(gui_state, varargin{:}); end

LISTING PROGRAM. % Edit the above text to modify the response to help cover. % Last Modified by GUIDE v Jun :24:43

LISTING PROGRAM. % UIWAIT makes pertama wait for user response (see UIRESUME) % uiwait(handles.figure1);

1. Peralatan LAMPIRAN

% --- Executes on button press in btn_gsn. function btn_gsn_callback(hobject, eventdata, handles) GaussianSpeckleNoise close AiSoftware;

Signal and Systems. Matlab GUI based analysis. XpertSolver.com

% Edit the above text to modify the response to help Video_Player. % Last Modified by GUIDE v May :38:12

LAMPIRAN A LISTINGPROGRAM

GUI code for different sections is in following sections

MV 1:00 1:05 1:00 1:05

% Edit the above text to modify the response to help Principal

1.Matlab Image Encryption Code

LAMPIRAN A PROGRAM PELATIHAN DAN PENGUJIAN

Supplementary Information

Homeworks on FFT Instr. and Meas. for Communication Systems- Gianfranco Miele. Name Surname

ECE Fall 05. Undergraduate Research: Digital Signal Processing & Quantization Effects

Finding a Minimum Covering Circle Based on Infinity Norms

Lampiran 1. Script M-File Global Ridge

We are IntechOpen, the world s leading publisher of Open Access books Built by scientists, for scientists. International authors and editors

OMR Sheet Recognition

Ear Recognition. By: Zeyangyi Wang

GUI Signal Analysis and Filtering Design

Akkad Bakad Bambai Bo

COMPLETELY AUTOMATED PUBLIC TURING TEST TO TELL COMPUTERS AND HUMANS APART

A NEW MACHINING COST CALCULATOR (MC 2 )

Main Form visual Studio

Lithium-Ion Battery Data. Management

Implementation of a Motion Detection System

Solving Sudoku with MATLAB

.., 7. References. [ 1] 1 mage Analysis and Mathematical Morphology:J.Serra. [2] Erosion, dilation and related operators,by Mariusz Jankowski

Contents INTERFACING MATLAB WITH EMBEDDED SYSTEMS

Airfoil Boundary Layer Separation Prediction

Parallel-connected solar arrays

MEASURING INTERFACIAL TENSION WITH THE PENDANT DROP METHOD

LOK-Viewer : Graphical Interface Application for Geomagnetic Data in Observatory Geomagnetic Lombok

LISTING PROGRAM. mainform.vb A-1. Universitas Sumatera Utara

PROGRAMMING IN MATLAB

ALGORITHMS AND INTERFACE FOR OCEAN ACOUSTIC RAY-TRACING (Developed in MATLAB)

IMAGE STEGANOGRAPHY USING DISCRETE COSINE TRNASFORM ALGORITHM

TREBALL FINAL DE GRAU

Accepted by... John H. Lienhard V

LISTING PROGRAM. a = b; b = c; c = a + b; } fibs.reverse(); for (int i = 0; i < fibs.count; i++) { if (n >= fibs[i]) { n = n - fibs[i];

Real-Time IIR Digital Filters

UNIVERSITÀ DEGLI STUDI DI PADOVA

Keywords: Learning automata, Vertex multicoloring.

GENDER ESTIMATION BASED ON FACIAL IMAGE AZLIN BT YAJID UNIVERSITI TEKNOLOGI MALAYSIA

Listing Progam. Universitas Sumatera Utara

1 The Options and Structures in the Neural Net

Design of Automated Digital Eye Palpation Exam for Intraocular Pressure Measurement

Sandia National Laboratories: Implementation of and Experimenting with a Clustering Tool

LISTING PROGRAM. 1. Module SkripsiUmri.py. import sys, operator, codecs, time. class Timer(object): def init (self): self.t1= time.

LAMPIRAN A: LISTING PROGRAM

Blind to Change. More on Graphical User Interfaces. Exploring change blindness

LAMPIRAN A LISTING PROGRAM

Special Topics II: Graphical User Interfaces (GUIs)

LAMPIRAN A : LISTING PROGRAM

Lampiran 2 MASTER TABEL

1 Lab 3, Simulation of crank-piston system

MATLAB. Creating Graphical User Interfaces Version 7. The Language of Technical Computing

Chapter 6 User-Defined Functions. dr.dcd.h CS 101 /SJC 5th Edition 1

LAMPIRAN A : LISTING PROGRAM

Computational Methods of Scientific Programming

Gdansk University of Technology Faculty of Electrical and Control Engineering Department of Control Systems Engineering

A-1 LISTING PROGRAM. 1. Form1.cs. Universitas Sumatera Utara

Flow Control and Functions

LISTING CODE A-1. Indo_to_jawa_Fragments.java. package studio.arti.kamusjawaindonesia;

Flow Control. Spring Flow Control Spring / 26

Matlab for Engineers

Interactive Programs

Rev. 1.5 (Preliminary)

Ultraplatjoslas radaru izmantošana automašīnu skaitīšanai

COMS 3101 Programming Languages: MATLAB. Lecture 2

Using the NNET Toolbox

LISTING PROGRAM. void KOMPRESIToolStripMenuItemClick(object sender, EventArgs e) { Kompresi k = new Kompresi(); k.show(); this.

10 M-File Programming

1 >> Lecture 3 2 >> 3 >> -- Functions 4 >> Zheng-Liang Lu 169 / 221

1 >> Lecture 3 2 >> 3 >> -- Functions 4 >> Zheng-Liang Lu 172 / 225

W1005 Intro to CS and Programming in MATLAB. Data Structures. Fall 2014 Instructor: Ilia Vovsha. hep://

Performance Evaluation of Artificial Neural Networks for Spatial Data Analysis

MISIS Tutorial. I. Introduction...2 II. Tool presentation...2 III. Load files...3 a) Create a project by loading BAM files...3

MATLAB for the Sciences

Asst. Prof. Sandeep Shrivastava M. Tech Scholar Assistant Professor

Graphical LCD Display Datasheet EB

Statistical & Data Analysis Using Neural Network

Updating Your Local Program Webpage

ALGORITHMS FOR INITIALIZATION OF NEURAL NETWORK WEIGHTS

Technical Info. Installation instruction for GPRS Modem in SILVERBALL Beetle and Beetle PRO

ANN training the analysis of the selected procedures in Matlab environment

ANALYSIS OF LABOR EMPLOYMENT ASSESMENT ON PRODUCTION MACHINE TO MINIMIZE TIME PRODUCTION

Interfacing to MATLAB. You can download the interface developed in this tutorial. It exists as a collection of 3 MATLAB files.

NEURAL NETWORK FOR PLC

ANEXO G. % Se calcula el valor de la señal cuando a llegado % al 28.3% y 63.2% de su de su cambio total.

The Language of Technical Computing. Computation. Visualization. Programming. Creating Graphical User Interfaces Version 1

SECTION 2: PROGRAMMING WITH MATLAB. MAE 4020/5020 Numerical Methods with MATLAB

Firmware Update Procedure for the 3 rd Generation Rack-Mount RDMS Telemetry Receiver

ECE 662 Hw2 4/1/2008

Analysis of labor employment assessment on production machine to minimize time production

Using GARP to Get and Save an Image With Cloud Top Temperatures Dr. Brad Muller Embry-Riddle Aeronautical University

Where to Upload The address to upload images for Tri-Club is: Tri-Club

Transcription:

A1 LAMPIRAN LISTING PROGRAM Prototype.m function varargout = prototype(varargin) gui_singleton = 1; gui_state = struct('gui_name', mfilename,... 'gui_singleton', gui_singleton,... 'gui_openingfcn', @prototype_openingfcn,... 'gui_outputfcn', @prototype_outputfcn,... 'gui_layoutfcn', [],... 'gui_callback', []); if nargin && ischar(varargin{1}) gui_state.gui_callback = str2func(varargin{1}); if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); gui_mainfcn(gui_state, varargin{:}); % Executes just before prototype is made visible. function prototype_openingfcn(hobject, eventdata, handles, varargin) handles.output = hobject; guidata(hobject, handles); % Outputs from this function are returned to the command line. function varargout = prototype_outputfcn(hobject, eventdata, handles) varargout{1} = handles.output; function utama_callback(hobject, eventdata, handles) function pelatihan_callback(hobject, eventdata, handles) function pengujian_callback(hobject, eventdata, handles) function bantuan_callback(hobject, eventdata, handles) menubantuan

A2 function keluar_callback(hobject, eventdata, handles) choice= questdlg ('apakah Anda yakin ingin keluar?','confirm',... 'Yes','No','No'); switch choice case'yes' close all; function ujibackpropagation_callback(hobject, eventdata, handles) ujibackpropagation close prototype; function ujiperceptron_callback(hobject, eventdata, handles) ujiperceptron close prototype; function metodebackpropagation_callback(hobject, eventdata, handles) metodebackpropagation close prototype; function metodeperceptron_callback(hobject, eventdata, handles) metodeperceptron close prototype; metodebackpropagation.m function varargout = metodebackpropagation(varargin) gui_singleton = 1; gui_state = struct('gui_name', mfilename,... 'gui_singleton', gui_singleton,... 'gui_openingfcn', @metodebackpropagation_openingfcn,... 'gui_outputfcn', @metodebackpropagation_outputfcn,... 'gui_layoutfcn', [],... 'gui_callback', []); if nargin && ischar(varargin{1}) gui_state.gui_callback = str2func(varargin{1}); if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); gui_mainfcn(gui_state, varargin{:}); % End initialization code DO NOT EDIT % Executes just before metodebackpropagation is made visible.

A3 function metodebackpropagation_openingfcn(hobject, eventdata, handles, varargin) handles.output = hobject; guidata(hobject, handles); function varargout = metodebackpropagation_outputfcn(hobject, eventdata, handles, varargin) varargout{1} = handles.output; function utama_callback(hobject, eventdata, handles) metodebackpropagation \ function uji_jst_callback(hobject, eventdata, handles) ujibackpropagation close metodebackpropagation; function bantuan_callback(hobject, eventdata, handles) bantuanpelatihan function keluar_callback(hobject, eventdata, handles) function menuutama_callback(hobject, eventdata, handles) prototype close metodebackpropagation; function edit1_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit1_createfcn(hobject, eventdata, handles) % Executes on button press in cari. function cari_callback(hobject, eventdata, handles) [nama_file,nama_path] = uigetfile({'*.jpg','file jpeg (*.jpg)'},'buka File Citra'); if ~isequal(nama_file,0) handles.citra=imread(fullfile(nama_path,nama_file)); imshow(handles.citra); imshow(handles.citra); return; ;

A4 % Executes on button press in cari2. function cari2_callback(hobject, eventdata, handles) [nama_file,nama_path] = uigetfile({'*.jpg','file jpeg (*.jpg)'},'buka File Citra'); if ~isequal(nama_file,0) handles.citra2=imread(fullfile(nama_path,nama_file)); axes(handles.axes2); imshow(handles.citra); axes(handles.axes2); imshow(handles.citra); return; ; % function edit3_callback(hobject, eventdata, handles) function edit3_createfcn(hobject, eventdata, handles) % Executes on slider movement. function varargout = sd_tres_callback(hobject, eventdata, handles, varargin) nilai_red = get(handles.sd_tres,'value'); handles.nilai_red = round(nilai_red); set(handles.edit,'string',handles.nilai_red); citra_gray=rgb2gray(handles.citra); citra_gray=double(citra_gray); [b k]=size(citra_gray); for x=1:b for y=1:k if citra_gray(x,y)<nilai_red citra_threshold(x,y)=0; if citra_gray(x,y)>=nilai_red citra_threshold(x,y)=1; citra_threshold handles.citra_tres=citra_threshold; imshow(citra_threshold); % Executes during object creation, after setting all properties. function sd_tres_createfcn(hobject, eventdata, handles) if isequal(get(hobject,'backgroundcolor'), set(hobject,'backgroundcolor',[.9.9.9]); function varargout = sd_tres2_callback(hobject, eventdata, handles, varargin)

A5 nilai_red2 = get(handles.sd_tres2,'value'); handles.nilai_red2 = round(nilai_red2); set(handles.edit3,'string',handles.nilai_red2); citra_gray2=rgb2gray(handles.citra2); citra_gray2=double(citra_gray2); [b k]=size(citra_gray2); for x=1:b for y=1:k if citra_gray2(x,y)<nilai_red2 citra_threshold2(x,y)=0; if citra_gray2(x,y)>=nilai_red2 citra_threshold2(x,y)=1; citra_threshold2 handles.citra_tres2=citra_threshold2; axes(handles.axes2); imshow(citra_threshold2); function sd_tres2_createfcn(hobject, eventdata, handles) if isequal(get(hobject,'backgroundcolor'), set(hobject,'backgroundcolor',[.9.9.9]); % Executes on button press in reduksidata. function reduksidata_callback(hobject, eventdata, handles) dataawal = xlsread('programbackpropagation.xlsx','datapincode'); prosesdata=mean(dataawal); [A,B]=size(dataawal); databaru= dataawal repmat(prosesdata,a,1); [A,B]=size(databaru); for x = 1:A for y = 1:B if databaru(x,y)<=0 databaru(x,y)=0; olahdata = 1/B *(databaru*databaru'); [PC,V]= eig(olahdata); V=diag(V); [junk,rindices]= sort(1*v); V=V(rindices); PC = PC (:,rindices); signal=dataawal'*pc; ext= dataawal*signal; minr=min(ext); minr=min(minr); maxr=max(ext); maxr=max(maxr); delta=maxrminr; datautama=2*(extminr)/delta1; xlswrite('programbackpropagation1.xlsx',signal,'datapincode','a1:t250 0');

A6 xlswrite('programbackpropagation1.xlsx',ext,'datapincode','a2502:t252 1'); xlswrite('programbackpropagation1.xlsx',datautama,'datapincode','a252 3:T2542'); % Executes on button press in simpanbackpropagation. function simpanbackpropagation_callback(hobject, eventdata, handles) nopin = get(handles.edit1,'string'); a = double(handles.citra_tres); b = double(handles.citra_tres2); pin = [reshape(a,1,2500); reshape(b,1,2500)]; set(handles.edit1,'string',''); set(handles.edit,'string','0'); set(handles.edit3,'string','0'); imshow(1); axes(handles.axes2); imshow(1); if(strcmp(nopin,'21a86cc1')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a1'); if (strcmp(nopin,'21e52edc')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a3'); if (strcmp(nopin,'25d6096b')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a5'); if (strcmp(nopin,'26b5e5c0')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a7'); if (strcmp(nopin,'27c30b0b')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a9'); if (strcmp(nopin,'27fbba4a')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a11'); if (strcmp(nopin,'29ea3a24')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a13'); if (strcmp(nopin,'3114aa76')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a15'); if (strcmp(nopin,'231708d0')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a17'); if (strcmp(nopin,'2585926a')) xlswrite('programbackpropagation.xlsx',pin,'datapincode','a19'); xlswrite('programbackpropagation.xlsx',pin,'datapincode','a21'); % Executes on button press in resetbackpropagation. function resetbackpropagation_callback(hobject, eventdata, handles) set(handles.edit1,'string','','enable','on'); set(handles.edit,'string','','enable','on'); imshow(1); axes(handles.axes2); imshow(2); % Executes during object creation, after setting all properties. function edit_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit_createfcn(hobject, eventdata, handles)

A7 % Executes on button press in backpropagation. function backpropagation_callback(hobject, eventdata, handles) input = xlsread('programbackpropagation1.xlsx','datapincode','a2523:t2542'); target = [1 0 0 0 0 0 0 0 0 0; 1 0 0 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0 0 0; 0 0 1 0 0 0 0 0 0 0; 0 0 1 0 0 0 0 0 0 0; 0 0 0 1 0 0 0 0 0 0; 0 0 0 1 0 0 0 0 0 0; 0 0 0 0 1 0 0 0 0 0; 0 0 0 0 1 0 0 0 0 0; 0 0 0 0 0 1 0 0 0 0; 0 0 0 0 0 1 0 0 0 0; 0 0 0 0 0 0 1 0 0 0; 0 0 0 0 0 0 1 0 0 0; 0 0 0 0 0 0 0 1 0 0; 0 0 0 0 0 0 0 1 0 0; 0 0 0 0 0 0 0 0 1 0; 0 0 0 0 0 0 0 0 1 0; 0 0 0 0 0 0 0 0 0 1; 0 0 0 0 0 0 0 0 0 1]; target = target'; input=input'; net = newff(minmax(input),[20 20 10], {'tansig','tansig','tansig'},'traingda'); net.trainparam.show=100; net.trainparam.epochs=20000; net.trainparam.goal=0.0001; net.trainparam.lr = 0.1; net.trainparam.mc = 0.1; [net,tr] = train(net,input,target); xlswrite('programbackpropagation2.xlsx',net.iw{1,1},'bobot','a'); xlswrite('programbackpropagation3.xlsx',net.lw{2,1},'bobot','a'); xlswrite('programbackpropagation4.xlsx',net.lw{3,2},'bobot','a'); xlswrite('programbackpropagation5.xlsx',net.b{1},'bias','a1:a20'); xlswrite('programbackpropagation5.xlsx',net.b{2},'bias','b1:b20'); xlswrite('programbackpropagation5.xlsx',net.b{3},'bias','c1:c10'); output = sim(net,input) metodeperceptron.m function varargout = metodeperceptron(varargin) gui_singleton = 1; gui_state = struct('gui_name', mfilename,... 'gui_singleton', gui_singleton,... 'gui_openingfcn', @metodeperceptron_openingfcn,... 'gui_outputfcn', @metodeperceptron_outputfcn,... 'gui_layoutfcn', [],... 'gui_callback', []); if nargin && ischar(varargin{1})

A8 gui_state.gui_callback = str2func(varargin{1}); if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); gui_mainfcn(gui_state, varargin{:}); % Executes just before metodeperceptron is made visible. function metodeperceptron_openingfcn(hobject, eventdata, handles, varargin) handles.output = hobject; guidata(hobject, handles); % Outputs from this function are returned to the command line. function varargout = metodeperceptron_outputfcn(hobject, eventdata, handles) varargout{1} = handles.output; function edit1_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit1_createfcn(hobject, eventdata, handles) function utama_callback(hobject, eventdata, handles) metodeperceptron function bantuan_callback(hobject, eventdata, handles) bantuanpelatihan function keluar_callback(hobject, eventdata, handles) close metodeperceptron; function uji_jst_callback(hobject, eventdata, handles) ujiperceptron close metodeperceptron; % Executes on button press in cari. function cari_callback(hobject, eventdata, handles) [nama_file,nama_path] = uigetfile({'*.jpg','file jpeg (*.jpg)'},'buka File Citra'); if ~isequal(nama_file,0) handles.citra=imread(fullfile(nama_path,nama_file));

A9 imshow(handles.citra); imshow(handles.citra); return; ; % Executes on button press in cari. function cari2_callback(hobject, eventdata, handles) [nama_file,nama_path] = uigetfile({'*.jpg','file jpeg (*.jpg)'},'buka File Citra'); if ~isequal(nama_file,0) handles.citra2=imread(fullfile(nama_path,nama_file)); axes(handles.axes2); imshow(handles.citra2); axes(handles.axes2); imshow(handles.citra2); return; ; % Executes on slider movement. function varargout = sd_tres_callback(hobject, eventdata, handles, varargin) nilai_red = get(handles.sd_tres,'value'); handles.nilai_red = round(nilai_red); set(handles.edit1,'string',handles.nilai_red); citra_gray=rgb2gray(handles.citra); citra_gray=double(citra_gray); [b k]=size(citra_gray); for x=1:b for y=1:k if citra_gray(x,y)<nilai_red citra_threshold(x,y)=0; if citra_gray(x,y)>=nilai_red citra_threshold(x,y)=1; citra_threshold handles.citra_tres=citra_threshold; imshow(citra_threshold); % Executes on slider movement. function sd_tres2_callback(hobject, eventdata, handles) nilai_red2 = get(handles.sd_tres2,'value'); handles.nilai_red2 = round(nilai_red2); set(handles.edit2,'string',handles.nilai_red2); citra_gray2=rgb2gray(handles.citra2); citra_gray2=double(citra_gray2); [b k]=size(citra_gray2); for x=1:b for y=1:k if citra_gray2(x,y)<nilai_red2

A10 citra_threshold2(x,y)=0; if citra_gray2(x,y)>=nilai_red2 citra_threshold2(x,y)=1; citra_threshold2 handles.citra_tres2=citra_threshold2; axes(handles.axes2); imshow(citra_threshold2); function sd_tres2_createfcn(hobject, eventdata, handles) function sd_tres_createfcn(hobject, eventdata, handles) if isequal(get(hobject,'backgroundcolor'), set(hobject,'backgroundcolor',[.9.9.9]); if isequal(get(hobject,'backgroundcolor'), set(hobject,'backgroundcolor',[.9.9.9]); % Executes on button press in simpanperceptron function simpanperceptron_callback(hobject, eventdata, handles) nopin = get(handles.edit3,'string'); a = double(handles.citra_tres); b = double(handles.citra_tres2); pin = [reshape(a,1,2500); reshape(b,1,2500)]; set(handles.edit3,'string',''); set(handles.edit1,'string','0'); set(handles.edit2,'string','0'); imshow(1); axes(handles.axes2); imshow(1); if(strcmp(nopin,'21a86cc1')) xlswrite('programperceptron.xlsx',pin,'datapincode','a1'); if (strcmp(nopin,'21e52edc')) xlswrite('programperceptron.xlsx',pin,'datapincode','a3'); if (strcmp(nopin,'25d6096b')) xlswrite('programperceptron.xlsx',pin,'datapincode','a5'); if (strcmp(nopin,'26b5e5c0')) xlswrite('programperceptron.xlsx',pin,'datapincode','a7'); if (strcmp(nopin,'27c30b0b')) xlswrite('programperceptron.xlsx',pin,'datapincode','a9'); if (strcmp(nopin,'27fbba4a')) xlswrite('programperceptron.xlsx',pin,'datapincode','a11'); if (strcmp(nopin,'29ea3a24')) xlswrite('programperceptron.xlsx',pin,'datapincode','a13'); if (strcmp(nopin,'3114aa76')) xlswrite('programperceptron.xlsx',pin,'datapincode','a15'); if (strcmp(nopin,'231708d0')) xlswrite('programperceptron.xlsx',pin,'datapincode','a17'); if (strcmp(nopin,'2585926a')) xlswrite('programperceptron.xlsx',pin,'datapincode','a19');

A11 xlswrite('programperceptron.xlsx',pin,'datapincode','a21'); % Executes on button press in reduksidata. function reduksidata_callback(hobject, eventdata, handles) dataawal = xlsread('programperceptron.xlsx','datapincode'); prosesdata=mean(dataawal); [A,B]=size(dataawal); databaru= dataawal repmat(prosesdata,a,1); [A,B]=size(databaru); for x = 1:A for y = 1:B if databaru(x,y)<=0 databaru(x,y)=0; olahdata = 1/B *(databaru*databaru'); [PC,V]= eig(olahdata); V=diag(V); [junk,rindices]= sort(1*v); V=V(rindices); PC = PC(:,rindices); signal=dataawal'*pc; ext= dataawal*signal; minr=min(ext); minr=min(minr); maxr=max(ext); maxr=max(maxr); delta=maxrminr; datautama=2*(extminr)/delta1; xlswrite('programperceptron1.xlsx',signal,'datapincode','a1:t2500'); xlswrite('programperceptron1.xlsx',ext,'datapincode','a2502:t2521'); xlswrite('programperceptron1.xlsx',datautama,'datapincode','a2523:t25 42'); % Executes on button press in reset. function reset_callback(hobject, eventdata, handles) set(handles.edit1,'string','','enable','on'); set(handles.edit2,'string','','enable','on'); imshow(1); axes(handles.axes2); imshow(2); % Executes on button press in latihjst. function latihjst_callback(hobject, eventdata, handles) input = xlsread('programperceptron1.xlsx','datapincode','a2523:t2542') target = [1 0 0 0 0 0 0 0 0 0; 1 0 0 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0 0 0; 0 0 1 0 0 0 0 0 0 0; 0 0 1 0 0 0 0 0 0 0; 0 0 0 1 0 0 0 0 0 0; 0 0 0 1 0 0 0 0 0 0; 0 0 0 0 1 0 0 0 0 0; 0 0 0 0 1 0 0 0 0 0; 0 0 0 0 0 1 0 0 0 0;

A12 0 0 0 0 0 1 0 0 0 0; 0 0 0 0 0 0 1 0 0 0; 0 0 0 0 0 0 1 0 0 0; 0 0 0 0 0 0 0 1 0 0; 0 0 0 0 0 0 0 1 0 0; 0 0 0 0 0 0 0 0 1 0; 0 0 0 0 0 0 0 0 1 0; 0 0 0 0 0 0 0 0 0 1; 0 0 0 0 0 0 0 0 0 1]; target = target'; input=input'; net = newp(minmax(input),10); net.trainparam.show=1000; net.trainparam.epochs=20000; net.trainparam.goal=0.0001; %net.adaptparam.passes = 500; [net,output]= adapt (net,input,target); [net,tr] = train (net,input,target); xlswrite('programperceptron2.xlsx',net.iw{1,1},'bobot','a'); xlswrite('programperceptron5.xlsx',net.b{1},'bias','a1:a10'); output = sim (net,input) function edit2_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit2_createfcn(hobject, eventdata, handles) function menuutama_callback(hobject, eventdata, handles) prototype close metodeperceptron; function edit3_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit3_createfcn(hobject, eventdata, handles) ujibackpropagation.m function varargout = ujibackpropagation(varargin) gui_singleton = 1; gui_state = struct('gui_name', mfilename,... 'gui_singleton', gui_singleton,... 'gui_openingfcn', @ujibackpropagation_openingfcn,... 'gui_outputfcn', @ujibackpropagation_outputfcn,... 'gui_layoutfcn', [],...

A13 'gui_callback', []); if nargin && ischar(varargin{1}) gui_state.gui_callback = str2func(varargin{1}); if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); gui_mainfcn(gui_state, varargin{:}); % Executes just before ujibackpropagation is made visible. function ujibackpropagation_openingfcn(hobject, eventdata, handles, varargin) handles.output = hobject; guidata(hobject, handles); % Outputs from this function are returned to the command line. function varargout = ujibackpropagation_outputfcn(hobject, eventdata, handles) varargout{1} = handles.output; function utama_callback(hobject, eventdata, handles) ujibackpropagation function bantuan_callback(hobject, eventdata, handles) bantuanpengujian function keluar_callback(hobject, eventdata, handles) function menuutama_callback(hobject, eventdata, handles) prototype function edit1_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit1_createfcn(hobject, eventdata, handles) % Executes on button press in cari. function cari_callback(hobject, eventdata, handles) [filename, pathname] = uigetfile({'*.jpg','file jpeg (*.jpg)'}, 'Open Bitmap File'); if isequal(filename, 0) return; info = imfinfo([pathname, filename]);

A14 filename = info.filename; handles.citra = imread(fullfile(pathname, filename)); guidata(hobject, handles); imshow(handles.citra); set(handles.edit3, 'string', filename); ; function edit2_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit2_createfcn(hobject, eventdata, handles) % Executes on slider movement. function slider1_callback(hobject, eventdata, handles) nilai_red = get(handles.slider1,'value'); handles.nilai_red = round(nilai_red); set(handles.edit1,'string',handles.nilai_red); citra_gray=rgb2gray(handles.citra); citra_gray=double(citra_gray); [b k]=size(citra_gray); for x=1:b for y=1:k if citra_gray(x,y)<nilai_red citra_threshold(x,y)=0; if citra_gray(x,y)>=nilai_red citra_threshold(x,y)=1; citra_threshold handles.citra_tes=citra_threshold; guidata(hobject,handles) imshow(citra_threshold); % Executes during object creation, after setting all properties. function slider1_createfcn(hobject, eventdata, handles) if isequal(get(hobject,'backgroundcolor'), set(hobject,'backgroundcolor',[.9.9.9]); % Executes on button press in reset. function reset_callback(hobject, eventdata, handles) set(handles.edit1,'string','','enable','on'); set(handles.edit2,'string','','enable','on'); imshow(1); % Executes on button press in ujipengenalan. function ujipengenalan_callback(hobject, eventdata, handles)

A15 tstart=tic; Signal = xlsread('programbackpropagation1.xlsx','datapincode','a1:t2500'); ext = xlsread('programbackpropagation1.xlsx','datapincode','a2502:t2521'); input = xlsread('programbackpropagation1.xlsx','datapincode','a2523:t2542'); citrauji = double(handles.citra_tes); flatvec = [reshape(citrauji,1,2500)]; mat_uji = flatvec*signal; minr=min(ext); minr=min(minr); maxr=max(ext); maxr=max(maxr); delta=maxrminr; datapengujian = 2 *(mat_ujiminr)/delta1; target =[ 1 0 0 0 0 0 0 0 0 0; 1 0 0 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0 0 0; 0 0 1 0 0 0 0 0 0 0; 0 0 1 0 0 0 0 0 0 0; 0 0 0 1 0 0 0 0 0 0; 0 0 0 1 0 0 0 0 0 0; 0 0 0 0 1 0 0 0 0 0; 0 0 0 0 1 0 0 0 0 0; 0 0 0 0 0 1 0 0 0 0; 0 0 0 0 0 1 0 0 0 0; 0 0 0 0 0 0 1 0 0 0; 0 0 0 0 0 0 1 0 0 0; 0 0 0 0 0 0 0 1 0 0; 0 0 0 0 0 0 0 1 0 0; 0 0 0 0 0 0 0 0 1 0; 0 0 0 0 0 0 0 0 1 0; 0 0 0 0 0 0 0 0 0 1; 0 0 0 0 0 0 0 0 0 1]; target = target'; input = input'; net = newff(minmax(input),[20 20 10], {'tansig','tansig','tansig'},'traingdx'); net = init(net); net.iw{1,1}= xlsread('programbackpropagation2.xlsx','bobot'); net.lw{2,1}= xlsread('programbackpropagation3.xlsx','bobot'); net.lw{3,2}= xlsread('programbackpropagation4.xlsx','bobot'); net.b{1}= xlsread('programbackpropagation5.xlsx','bias','a1:a20'); net.b{2}= xlsread('programbackpropagation5.xlsx','bias','b1:b20'); net.b{3}= xlsread('programbackpropagation5.xlsx','bias','c1:c10'); datapengujian=datapengujian' output = sim(net,datapengujian) if (output(1,1)<0.9) a(1,1)=0; a(1,1)=1; if (output(2,1)<0.9) a(2,1)=0;

A16 a(2,1)=1; if (output(3,1)<0.9) a(3,1)=0; a(3,1)=1; if (output(4,1)<0.9) a(4,1)=0; a(4,1)=1; if (output(5,1)<0.9) a(5,1)=0; a(5,1)=1; if (output(6,1)<0.9) a(6,1)=0; a(6,1)=1; if (output(7,1)<0.9) a(7,1)=0; a(7,1)=1; if (output(8,1)<0.9) a(8,1)=0; a(8,1)=1; if (output(9,1)<0.9) a(9,1)=0; a(9,1)=1; if (output(10,1)<0.9) a(10,1)=0; a(10,1)=1; pin=[a(1,1);a(2,1);a(3,1);a(4,1);a(5,1);a(6,1);a(7,1);a(8,1);a(9,1);a (10,1)]; pin1 = [1; 0; 0; 0; 0; 0; 0; 0; 0; 0;]; pin2 = [0; 1; 0; 0; 0; 0; 0; 0; 0; 0;]; pin3 = [0; 0; 1; 0; 0; 0; 0; 0; 0; 0;]; pin4 = [0; 0; 0; 1; 0; 0; 0; 0; 0; 0;]; pin5 = [0; 0; 0; 0; 1; 0; 0; 0; 0; 0;]; pin6 = [0; 0; 0; 0; 0; 1; 0; 0; 0; 0;];

A17 pin7 = [0; 0; 0; 0; 0; 0; 1; 0; 0; 0;]; pin8 = [0; 0; 0; 0; 0; 0; 0; 1; 0; 0;]; pin9 = [0; 0; 0; 0; 0; 0; 0; 0; 1; 0;]; pin10 = [0; 0; 0; 0; 0; 0; 0; 0; 0; 1;]; if isequal (a,pin1) edit2='21a86cc1'; if isequal (a,pin2) edit2='21e52edc'; if isequal (a,pin3) edit2='25d6096b'; if isequal (a,pin4) edit2= '26B5E5C0'; if isequal (a,pin5) edit2='27c30b0b'; if isequal (a,pin6) edit2='27fbba4a'; if isequal (a,pin7) edit2='29ea3a24'; if isequal (a,pin8) edit2='3114aa76'; if isequal (a,pin9) edit2= '231708D0'; if isequal (a,pin10) edit2= '2585926A'; edit2='tidak Dikenali'; set(handles.edit2,'string',edit2); waktuuji = toc(tstart); set(handles.edit4,'string',waktuuji); function edit3_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit3_createfcn(hobject, eventdata, handles) function edit4_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit4_createfcn(hobject, eventdata, handles) ujiperceptron.m function varargout = ujiperceptron(varargin) gui_singleton = 1; gui_state = struct('gui_name', mfilename,... 'gui_singleton', gui_singleton,...

A18 'gui_openingfcn', @ujiperceptron_openingfcn,... 'gui_outputfcn', @ujiperceptron_outputfcn,... 'gui_layoutfcn', [],... 'gui_callback', []); if nargin && ischar(varargin{1}) gui_state.gui_callback = str2func(varargin{1}); if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); gui_mainfcn(gui_state, varargin{:}); % Executes just before ujiperceptron is made visible. function ujiperceptron_openingfcn(hobject, eventdata, handles, varargin) handles.output = hobject; guidata(hobject, handles); % Outputs from this function are returned to the command line. function varargout = ujiperceptron_outputfcn(hobject, eventdata, handles) varargout{1} = handles.output; % function utama_callback(hobject, eventdata, handles) ujiperceptron function bantuan_callback(hobject, eventdata, handles) bantuanpengujian function keluar_callback(hobject, eventdata, handles) close ujiperceptron; function menuutama_callback(hobject, eventdata, handles) prototype close ujiperceptron; function edit3_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit3_createfcn(hobject, eventdata, handles) % Executes on button press in cari. function varargout = cari_callback(hobject, eventdata, handles, varargin) [filename, pathname] = uigetfile({'*.jpg','file jpeg (*.jpg)'}, 'Open Bitmap File');

A19 if isequal(filename, 0) return; info = imfinfo([pathname, filename]); filename = info.filename; handles.citra = imread(fullfile(pathname, filename)); guidata(hobject, handles); imshow(handles.citra); set(handles.edit3, 'string', filename); ; % Executes on slider movement. function slider1_callback(hobject, eventdata, handles) nilai_red = get(handles.slider1,'value'); handles.nilai_red = round(nilai_red); set(handles.edit1,'string',handles.nilai_red); citra_gray=rgb2gray(handles.citra); citra_gray=double(citra_gray); [b k]=size(citra_gray); for x=1:b for y=1:k if citra_gray(x,y)<nilai_red citra_threshold(x,y)=0; if citra_gray(x,y)>=nilai_red citra_threshold(x,y)=1; citra_threshold handles.citra_tes=citra_threshold; guidata(hobject,handles) imshow(citra_threshold); % Executes during object creation, after setting all properties. function slider1_createfcn(hobject, eventdata, handles) if isequal(get(hobject,'backgroundcolor'), set(hobject,'backgroundcolor',[.9.9.9]); % Executes on button press in reset. function reset_callback(hobject, eventdata, handles) set(handles.edit1,'string','','enable','on'); set(handles.edit2,'string','','enable','on'); imshow(1); % function edit1_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit1_createfcn(hobject, eventdata, handles)

A20 % function edit2_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit2_createfcn(hobject, eventdata, handles) % Executes on button press in ujipengenalan. function ujipengenalan_callback(hobject, eventdata, handles) tstart=tic; signal = xlsread('programperceptron1.xlsx','datapincode','a1:t2500'); ext = xlsread('programperceptron1.xlsx','datapincode','a2502:t2521'); input = xlsread('programperceptron1.xlsx','datapincode','a2523:t2542'); datainput = double (handles.edit2); citrauji = double(handles.citra_tes); flatvec = [reshape(citrauji,1,2500)]; mat_uji = flatvec*signal; minr=min(ext); minr=min(minr); maxr=max(ext); maxr=max(maxr); delta=maxrminr; datapengujian = 2 *(mat_ujiminr)/delta1; target =[ 1 0 0 0 0 0 0 0 0 0; 1 0 0 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0 0 0; 0 1 0 0 0 0 0 0 0 0; 0 0 1 0 0 0 0 0 0 0; 0 0 1 0 0 0 0 0 0 0; 0 0 0 1 0 0 0 0 0 0; 0 0 0 1 0 0 0 0 0 0; 0 0 0 0 1 0 0 0 0 0; 0 0 0 0 1 0 0 0 0 0; 0 0 0 0 0 1 0 0 0 0; 0 0 0 0 0 1 0 0 0 0; 0 0 0 0 0 0 1 0 0 0; 0 0 0 0 0 0 1 0 0 0; 0 0 0 0 0 0 0 1 0 0; 0 0 0 0 0 0 0 1 0 0; 0 0 0 0 0 0 0 0 1 0; 0 0 0 0 0 0 0 0 1 0; 0 0 0 0 0 0 0 0 0 1; 0 0 0 0 0 0 0 0 0 1]; target = target'; input = input'; net = newp(minmax(input),10); net = init(net); net.adaptparam.passes = 500; [net,output]= adapt (net,input,target); net.iw{1,1}= xlsread('programperceptron2.xlsx','bobot'); net.b{1}= xlsread('programperceptron5.xlsx','bias','a1:a10'); datapengujian=datapengujian' output = sim(net,datapengujian)

A21 if (output(1,1)<0.6) a(1,1)=0; a(1,1)=1; if (output(2,1)<0.6) a(2,1)=0; a(2,1)=1; if (output(3,1)<0.6) a(3,1)=0; a(3,1)=1; if (output(4,1)<0.6) a(4,1)=0; a(4,1)=1; if (output(5,1)<0.9) a(5,1)=0; a(5,1)=1; if (output(6,1)<0.9) a(6,1)=0; a(6,1)=1; if (output(7,1)<0.9) a(7,1)=0; a(7,1)=1; if (output(8,1)<0.9) a(8,1)=0; a(8,1)=1; if (output(9,1)<0.9) a(9,1)=0; a(9,1)=1; if (output(10,1)<0.9) a(10,1)=0; a(10,1)=1;

A22 pin=[a(1,1);a(2,1);a(3,1);a(4,1);a(5,1);a(6,1);a(7,1);a(8,1);a(9,1);a (10,1)]; pin1 = [1; 0; 0; 0; 0; 0; 0; 0; 0; 0;]; pin2 = [0; 1; 0; 0; 0; 0; 0; 0; 0; 0;]; pin3 = [0; 0; 1; 0; 0; 0; 0; 0; 0; 0;]; pin4 = [0; 0; 0; 1; 0; 0; 0; 0; 0; 0;]; pin5 = [0; 0; 0; 0; 1; 0; 0; 0; 0; 0;]; pin6 = [0; 0; 0; 0; 0; 1; 0; 0; 0; 0;]; pin7 = [0; 0; 0; 0; 0; 0; 1; 0; 0; 0;]; pin8 = [0; 0; 0; 0; 0; 0; 0; 1; 0; 0;]; pin9 = [0; 0; 0; 0; 0; 0; 0; 0; 1; 0;]; pin10 = [0; 0; 0; 0; 0; 0; 0; 0; 0; 1;]; if isequal (a,pin1) edit2='21a86cc1'; if isequal (a,pin2) edit2='21e52edc'; if isequal (a,pin3) edit2='25d6096b'; if isequal (a,pin4) edit2= '26B5E5C0'; if isequal (a,pin5) edit2='27c30b0b'; if isequal (a,pin6) edit2='27fbba4a'; if isequal (a,pin7) edit2='29ea3a24'; if isequal (a,pin8) edit2='3114aa76'; if isequal (a,pin9) edit2= '231708D0'; if isequal (a,pin10) edit2= '2585926A'; edit2='tidak Dikenali'; set(handles.edit2,'string',edit2); waktuuji = toc(tstart); set(handles.edit4,'string',waktuuji); function edit4_callback(hobject, eventdata, handles) % Executes during object creation, after setting all properties. function edit4_createfcn(hobject, eventdata, handles) menubantuan.m function varargout = menubantuan(varargin) gui_singleton = 1; gui_state = struct('gui_name', mfilename,... 'gui_singleton', gui_singleton,...

A23 'gui_openingfcn', @menubantuan_openingfcn,... 'gui_outputfcn', @menubantuan_outputfcn,... 'gui_layoutfcn', [],... 'gui_callback', []); if nargin && ischar(varargin{1}) gui_state.gui_callback = str2func(varargin{1}); if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); gui_mainfcn(gui_state, varargin{:}); function menubantuan_openingfcn(hobject, eventdata, handles, varargin) handles.output = hobject; guidata(hobject, handles); function varargout = menubantuan_outputfcn(hobject, eventdata, handles) varargout{1} = handles.output; function edit3_callback(hobject, eventdata, handles) function edit3_createfcn(hobject, eventdata, handles) function bantuan_callback(hobject, eventdata, handles) menubantuan function keluar_callback(hobject, eventdata, handles) close menubantuan; bantuanpelatihan.m function varargout = bantuanpelatihan(varargin) gui_singleton = 1; gui_state = struct('gui_name', mfilename,... 'gui_singleton', gui_singleton,... 'gui_openingfcn', @bantuanpelatihan_openingfcn,... 'gui_outputfcn', @bantuanpelatihan_outputfcn,... 'gui_layoutfcn', [],... 'gui_callback', []); if nargin && ischar(varargin{1}) gui_state.gui_callback = str2func(varargin{1});

A24 if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); gui_mainfcn(gui_state, varargin{:}); function bantuanpelatihan_openingfcn(hobject, eventdata, handles, varargin) handles.output = hobject; guidata(hobject, handles); function varargout = bantuanpelatihan_outputfcn(hobject, eventdata, handles) varargout{1} = handles.output; function edit3_callback(hobject, eventdata, handles) function edit3_createfcn(hobject, eventdata, handles) function bantuanpelatihan_callback(hobject, eventdata, handles) bantuanpelatihan function keluar_callback(hobject, eventdata, handles) close bantuanpelatihan bantuanpengujian.m function varargout = bantuanpengujian(varargin) gui_singleton = 1; gui_state = struct('gui_name', mfilename,... 'gui_singleton', gui_singleton,... 'gui_openingfcn', @bantuanpengujian_openingfcn,... 'gui_outputfcn', @bantuanpengujian_outputfcn,... 'gui_layoutfcn', [],... 'gui_callback', []); if nargin && ischar(varargin{1}) gui_state.gui_callback = str2func(varargin{1}); if nargout [varargout{1:nargout}] = gui_mainfcn(gui_state, varargin{:}); gui_mainfcn(gui_state, varargin{:}); function bantuanpengujian_openingfcn(hobject, eventdata, handles, varargin)

A25 handles.output = hobject; guidata(hobject, handles); function varargout = bantuanpengujian_outputfcn(hobject, eventdata, handles) varargout{1} = handles.output; function edit3_callback(hobject, eventdata, handles) function edit3_createfcn(hobject, eventdata, handles) function bantuanpengujian_callback(hobject, eventdata, handles) bantuanpengujian function keluar_callback(hobject, eventdata, handles) close bantuanpengujian

B1 CURRICULUM VITAE Nama Alamat Sekarang Alamat Orang tua : Ardi Hasiholan : Jl. Dr. Mansyur No. 70 Asrama PuteraMedan : Jl. Lumbu Timur 1A No. 60 RawalumbuBekasi Telp/Hp : 082163779327 Email : ardihasiholan@gmail.com Riwayat Pidikan 20092013 : S1 Ilmu Komputer, Medan 20062009 : SMA Mahanaim Bekasi 20032006 : SMP Negeri 16 Bekasi 19972003 : SD Negeri Bojong Rawalumbu XI Bekasi Keahlian/Kursus yang diikuti Jaringan Komputer