i
Universitas Kristen Maranatha KARAKTER SESEORANG DENGAN MENGGUNAKAN
ALGORITMA PROBABILISTIC NEURAL NETWORK
ABSTRAK
Dwi Putra Alexander (0722067)
Jurusan Teknik Elektro Universitas Kristen Maranatha email : dwiputraalexander@rocketmail.com
Grafologi adalah ilmu yang mempelajari karakter seseorang seseorang dengan cara menganalisa tulisan tangan. Menganalisa tulisan tangan sangatlah membantu dalam banyak bidang saat ini, misalnya dalam bidang pendidikan, kriminalitas dan forensik. Dalam grafologi ada beberapa aspek yang digunakan untuk mengetahui karakter seseorang, diantaranya adalah dengan menganalisa : margin atau jarak pinggiran tulisan, spasi atau jarak antar kata atau baris tulisan, garis dasar tulisan, ukuran tulisan, tekanan penulisan, zona penulisan, kemiringan tulisan, tipe tulisan, kecepatan tulisan,dan huruf-huruf unik.
Pada Tugas Akhir ini dirancang dan direalisasikan perangkat lunak berbasis Jaringan Saraf Tiruan untuk mengenali pola garis dasar kalimat dari tulisan tangan manusia, dengan menggunakan nilai spesifik yaitu rata-rata dari posisi piksel yang bernilai 1 pada citra tulisan tangan yang akan menjadi masukan dari data latih dan data uji pada algoritma
Probabilistic Neural Network. Perangkat lunak ini direalisasikan menggunakan MATLAB R2009a.
Perangkat lunak pengenalan pola garis dasar tulisan tangan pada Tugas Akhir ini berhasil direalisasikan. Pola garis dasar naik dan pola garis dasar turun dapat dikenali dengan tingkat keberhasilan pengenalan 100%, pola garis dasar lurus dikenali dengan tingkat keberhasilan pengenalan sebesar 16.67%, dan pola garis dasar acak dikenali dengan tingkat keberhasilan pengenalan 33.33%.
Kata Kunci : Grafologi, Jaringan Saraf Tiruan, Probabilistic Neural
ii
Universitas Kristen Maranatha USING PROBABILISTIC NEURAL NETWORK ALGORITHM
ABSTRACT
Dwi Putra Alexander (0722067)
Department of Electrical Engineering Maranatha Christian University email : dwiputraalexander@rocketmail.com
Graphology is the study of a person's character by handwriting analysis. Handwriting analysis is very helpful in many areas today, for example in education, crime and forensics. In graphology there are some aspects that are used to determine a person's character, such as by analyzing: margin or fringe spacing writing, spacing or distance between words or lines of text, base line of writing, font size, the pressure of writing, writing zone, the slope of the writings, literary type , writing speed,and unique letters.
This final project is designed and realized a software based Artificial Neural Networks to recognize patterns of baseline sentences of human handwriting, by using the average value of the positions of pixels of value 1 in entire image that will become input from the training data and testing data in Probabilistic Neural Network Algorithm. The software is realized using MATLAB R2009a.
Handwriting Baseline Pattern Recognition on this final project successfully realized. Baseline pattern up and down can be recognized with 100% success rate, straight-baseline recognized with 16.67% success rate and random baseline has recognized with 33.33% success rate.
vi
Universitas Kristen Maranatha
ABSTRAK ... i
ABSTRACT ... ii
DAFTAR GAMBAR ... ix
DAFTAR TABEL ... xi
BAB I ... 1
PENDAHULUAN... 1
I.1 Latar Belakang ... 1
I.2 Perumusan Masalah ... 2
I.3 Tujuan ... 3
I.4 Pembatasan Masalah ... 3
I.5 Sistematika Penelitian ... 4
BAB II ... 6
DASAR TEORI ... 6
II.1 Pengolahan Citra Dijital ... 6
II.1.1 Representasi Citra Warna ... 6
II.1.2 Pra-proses ... 7
II.3 Jaringan Saraf Tiruan ... 9
II.3.1 Model Neuron ... 10
II.3.2 Fungsi Aktivasi ... 12
II.3.3 Arsitektur Jaringan Saraf Tiruan ... 14
II.3.4 Algoritma Pembelajaran ... 15
II.3.5 Probabilistic Neural Network... 16
vii
Universitas Kristen Maranatha
II.4.1 Definisi Grafologi ... 20
II.4.2 Pola Garis Dasar Kalimat ... 21
BAB III... 25
PERANCANGAN PERANGKAT LUNAK ... 25
III.1 Arsitektur Perancangan ... 25
III.2 Blok Diagram ... 26
III.3 Diagram Alir ... 27
III.4 Pelatihan Probabilistic Neural Network (PNN) ... 34
III.5 Perancangan Antarmuka Pemakai (User Interface) ... 38
Tabel 3.4 Atribut MATLAB Pada Perancangan Perangkat Lunak ... 40
BAB IV ... 42
SIMULASI DAN ANALISA ... 42
IV.1 Proses Pelatihan ... 42
IV.2 Proses Pengujian ... 46
IV.2.1 Pengujian... 50
IV.3 Analisa ... 54
BAB V ... 55
KESIMPULAN DAN SARAN ... 55
V.1 Kesimpulan... 55
V.2 Saran ... 55
viii
ix
Universitas Kristen Maranatha
Gambar 2.1 Komposisi Kombinasi Warna Tiap Piksel ... 7
Gambar 2.2 Grayscalling ... 7
Gambar 2.3 Binerisasi ... 8
Gambar 2.4 Cropping... 9
Gambar 2.5 Struktur Sel Saraf [3] ... 10
Gambar 2.6 Struktur Unit Jaringan Saraf Tiruan ... 11
Gambar 2.7 Fungsi Treshold ... 12
Gambar 2.8 Fungsi Sigmoid Biner... 12
Gambar 2.9 Fungsi Sigmoid Bipolar ... 13
Gambar 2.10 Fungsi Gaussian ... 13
Gambar 2.11 Jaringan Saraf Tiruan Lapisan Tunggal [2] ... 14
Gambar 2.12 Jaringan Saraf Tiruan Lapisan Jamak ... 15
Gambar 2.13 Arsitektur Probabilistic Neural Network ... 17
Gambar 2.14 Algoritma Probabilistic Neural Network ... 19
Gambar 2.15 Pola Garis Dasar Lurus ... 21
Gambar 2.16 Pola Garis Dasar Naik ... 22
Gambar 2.17 Pola Garis Dasar Turun ... 23
Gambar 2.18 Pola Garis Dasar Tidak Beraturan ... 23
Gambar 3.1 Arsitektur Probabilistic Neural Network untuk pengenalan pola garis dasar tulisan tangan ... 25
Gambar 3.2 Blok Diagram untuk pengenalan pola garis dasar tulisan tangan ... 26
Gambar 3.3 Diagram Alir Utama Perancangan Pengenalan Pola Garis Dasar tulisan tangan ... 27
Gambar 3.4 Diagram Alir Pelatihan PNN untuk pengenalan pola garis dasar tulisan tangan ... 28
Gambar 3.5 Diagram Alir Pengujian PNN untuk pengenalan pola garis dasar tulisan tangan ... 28
x
Universitas Kristen Maranatha
Gambar 3.9 Posisi Nilai Spesifik dari gambar A yang dibentuk dengan Garis ... 33
Gambar 3.10 Rancangan Perangkat Lunak ... 38
Gambar 4.1 Percobaan Dengan Nilai Konstanta g sebesar 0.01 < g < 1 ... 43
Gambar 4.2 Percobaan Dengan Nilai Konstanta g sebesar 0.01 < g < 0.1 ... 44
Gambar 4.3 Percobaan Dengan Nilai Konstanta g sebesar 0.01 < g < 0.03 ... 45
Gambar 4.4 Hasil Pengujian Pola Garis Dasar Lurus ... 46
Gambar 4.5 Hasil Pengujian Pola Garis Dasar Naik... 47
Gambar 4.6 Hasil Pengujian Pola Garis Dasar Turun... 47
xi
Universitas Kristen Maranatha
Tabel 3.1 Pola Data Input Dan Target ... 34
Tabel 3.2 Pola Data Input Dan Target Sesuai Kelas ... 34
Tabel 3.3 Atribut MATLAB Pada Perancangan Perangkat Lunak ... 39
Tabel 3.4 Penjelasan Rancangan Menu ... 40
Tabel 4.1 Contoh Nilai Spesifik Dari Responden 1 ... 49
Tabel 4.2 Hasil Pengujian Tulisan Tangan ... 50
LAMPIRAN A
A - 1
% pembentukan unit unit pola yang dikelompokan sesuai kelasnya % penghitungan jumlah pola pada masing masing kelas
A - 2 ;inputtotal(29,:);inputtotal(30,:)]; %% Garis Dasar Turun
PR =
[inputtotal(31,:) ;inputtotal(32,:) ;inputtotal(33,:);inputtotal(34,:) ;inputtotal(35,:) ;inputtotal(36,:);inputtotal(37,:) ;inputtotal(38,:) ;inputtotal(39,:);inputtotal(40,:)]; %% Garis Dasar Random
JPL = length(PL(:,1)); % jumlah pola latih kelas Garis Dasar Lurus
JPN = length(PN(:,1)) ; % jumlah pola latih kelas Garis Dasar Naik
JPT = length(PT(:,1)) ; % jumlah pola latih kelas Garis Dasar Turun
JPR = length(PR(:,1)) ; % jumlah pola latih kelas Garis Dasar Random %====================================================================== % TAHAP ke Dua
% Penghitungan total jarak terdekat antara masing masing pola % terhadap pola-pola lain dalam satu kelas
% penghitungan parameter penghalus untuk setiap kelas
%======================================================================
TMD1 = GetTMD(PL) ; %total minimum distance kelas Dasar Lurus
TMD2 = GetTMD(PN); %total minimum distance kelas Dasar Naik
TMD3 = GetTMD(PT); %total minimum distance kelas Dasar Turun
TMD4 = GetTMD(PR); %total minimum distance kelas Dasar Random
m = length(PL(1,:)); % jumlah atribut pada data masukan
AllAkurasi = [];
for g=gb:kuantisasi:ga, %
% Perhitungan Parameter penghalus
SP1 =(g*TMD1) / JPL;%% perhitungan parameter penghalus kelas Dasar Lurus
%Perhitungan Probability Pada Kelas Garis Dasar Naik
A - 3
% ============ Mencari Probabilitas Terbesar % ============ Untuk mendapatkan kelas keputusan
A - 4
title('Akurasi JST Probabilistik dengan beberapa variasi konstanta g')
save PNNTRainResrata.mat PL PN PT PR JPL JPN JPT JPR TMD1 TMD2 TMD3 TMD4 m SP1 SP2 SP3 SP4
Program Pengujian PNN
clc
close all
%--PROGRAM PENGUJIAN PNN--
A - 5
SP1 =(g*TMD1) / JPL; %% perhitungan parameter penghalus kelas Lurus
SP2 =(g*TMD2) / JPN; %% perhitungan parameter penghalus kelas Naik
SP3 =(g*TMD3) / JPT; %% perhitungan parameter penghalus kelas Turun
SP4 =(g*TMD3) / JPR; %% perhitungan parameter penghalus kelas ACak
DAkurasi=[];
%Perhitungan Probability Pada Kelas Garis Dasar Naik
A - 6
% ============ Mencari Probabilitas Terbesar % ============ Untuk mendapatkan kelas keputusan
A - 7
plot(gvar,AllAkurasi(:,1),'k-') axis([gb ga 0 1.2])
legend('Test Set')
title('Akurasi JST Probabilistik dengan beberapa variasi konstanta g') xlabel('konstanta g')
% GUI_TAuu2 M-file for GUI_TAuu2.fig
% GUI_TAuu2, by itself, creates a new GUI_TAuu2 or raises the
% GUI_TAuu2('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in GUI_TAuu2.M with the given input arguments.
% Edit the above text to modify the response to help GUI_TAuu2
% Last Modified by GUIDE v2.5 22-Jul-2013 01:57:12
% Begin initialization code - DO NOT EDIT
gui_Singleton = 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
% Choose default command line output for GUI_TAuu2
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
A - 8
% Get default command line output from handles structure
varargout{1} = handles.output;
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
[FileName,PathName] = uigetfile('*.jpg','Select the JPG-file'); handles.gambar=imread(fullfile(PathName, FileName));
image(handles.gambar) axis off
guidata(hObject, handles);
% --- Executes on button press in pushbutton5.
function pushbutton5_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton6.
function pushbutton6_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton6 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) %convert to binary
if handles.cannyawal(baris2,kolom2)==1 batas_kiri=kolom2;
end
end end
A - 9
handles.Gamcrop = imcrop(handles.cannyawal,[batas_kiri batas_atas width height]);%%position vector, [xmin ymin width height].
handles.GbrAkhir=imresize(handles.Gamcrop,[50,1000]); imshow (handles.GbrAkhir);
% %%==================================================
[x y] = size(handles.GbrAkhir) ;
A - 10
save preprocessing.mat input_uji_8 axis off
guidata(hObject, handles);
% --- Executes on button press in pushbutton7.
function pushbutton7_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton7 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
imshow (handles.cannyawal); axis off
guidata(hObject, handles);
% --- Executes on button press in pushbutton9.
function pushbutton9_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton9 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
imshow (handles.GbrAkhir); axis off
guidata(hObject, handles);
% --- Executes on button press in pushbutton4.
function pushbutton4_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton4 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
load preprocessing.mat
% %% make sure the image doesn't disappear if we plot something else
handles.glurus4=im2double(handles.gambar);
A - 11
handles.Gamcrop = imcrop(handles.cannyawal,[batas_kiri batas_atas width height]);%%position vector, [xmin ymin width height].
handles.GbrAkhir=imresize(handles.Gamcrop,[50,1000]); imshow (handles.GbrAkhir);
% %%==================================================
[x y] = size(handles.GbrAkhir) ;
A - 12
% --- Executes on button press in pushbutton10.
function pushbutton10_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton10 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
imshow (handles.Gamcrop); axis off
guidata(hObject, handles);
% --- Executes on button press in pushbutton11.
function pushbutton11_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton11 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton12.
function pushbutton12_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton12 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton13.
function pushbutton13_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton13 (see GCBO)
A - 13
% handles structure with handles and user data (see GUIDATA)
function ga1_Callback(hObject, eventdata, handles)
% hObject handle to ga1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of ga1 as text
% str2double(get(hObject,'String')) returns contents of ga1 as a double
% --- Executes during object creation, after setting all properties.
function ga1_CreateFcn(hObject, eventdata, handles)
% hObject handle to ga1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function kuantisasi1_Callback(hObject, eventdata, handles)
% hObject handle to kuantisasi1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of kuantisasi1 as text % str2double(get(hObject,'String')) returns contents of
kuantisasi1 as a double
% --- Executes during object creation, after setting all properties.
function kuantisasi1_CreateFcn(hObject, eventdata, handles)
% hObject handle to kuantisasi1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
A - 14
function gb1_Callback(hObject, eventdata, handles)
% hObject handle to gb1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of gb1 as text
% str2double(get(hObject,'String')) returns contents of gb1 as a double
% --- Executes during object creation, after setting all properties.
function gb1_CreateFcn(hObject, eventdata, handles)
% hObject handle to gb1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in pushbutton14.
function pushbutton14_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton14 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton15.
function pushbutton15_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton15 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
figure('name','Hasil Probabilitas'); t=uitable
set(t,'ColumnName', {'Prob Lurus','Prob Naik','Prob Turun','Prob Random'});
% --- Executes on button press in pushbutton16.
function pushbutton16_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton16 (see GCBO)
A - 15
% --- Executes on button press in pushbutton17.
function pushbutton17_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton17 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton18.
function pushbutton18_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton18 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton19.
function pushbutton19_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton19 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
function edit4_Callback(hObject, eventdata, handles)
% hObject handle to edit4 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit4 as text
% str2double(get(hObject,'String')) returns contents of edit4 as a double
% --- Executes during object creation, after setting all properties.
function edit4_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit4 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit5_Callback(hObject, eventdata, handles)
% hObject handle to edit5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes during object creation, after setting all properties.
function edit5_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit6_Callback(hObject, eventdata, handles)
% hObject handle to edit6 (see GCBO)
A - 16
% --- Executes during object creation, after setting all properties.
function edit6_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit6 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes during object creation, after setting all properties.
function edit7_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit7 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton20.
function pushbutton20_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton20 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
A - 18
keputusan =1;
pola='Pola Garis Dasar Lurus';
karakter='TIPE ORANG DENGAN TULISAN INI ADALAH ORANG YANG MEMILIKI KONSENTRASI CUKUP TINGGI,MEMILIKI ENERGI YANG BESAR,CENDERUNG MENCOBA MENGATUR ,BIASA MENYIAPKAN DIRINYA SAAT BERHADAPAN DENGAN ORANG LAIN,ORANG INI SANGAT TERKONTROL ,MENGIKUTI ATURAN MAIN DAN
DIPLOMATIS,HIDUPNYA SERBA TERATUR, PENUH DENGAN ATURAN MAIN DAN JADWAL';
CITA,MELIHAT DUNIA DENGAN PENUH SEMANGAT DAN KETAKJUBAN' end
if pmax ==3, keputusan =3;
pola='Pola Garis Dasar Turun';
karakter='TIPE ORANG DENGAN TULISAN INI SERING MELIHAT SEGALA SESUATU DARI SEGI BURUK,BERPIKIR NEGATIF,SERING MERASA SINIS TERHADAP LINGKUNGAN SEKITAR, SERING MERASA SELALU MENJADI KORBAN KEADAAN, HIDUPNYA SELALU RUMIT,SUSAH DAN BERUJUNG ANEH';
end
if pmax ==4, keputusan =4;
pola='Pola Garis Dasar Acak';
karakter='TIPE ORANG DENGAN TULISAN INI MEMILIKI PERASAAN YANG TIDAK STABIL ,KADANG BERSEMANGAT, TERTAWA , TETAPI KEMUDIAN TIBA-TIBA LOYO BAHKAN MENANGIS, MEMILIKI PENGENDALIAN DIRI YANG BURUK, MERASA KEHILANGAN RASA AMAN (KARENA DITINGGALKAN , TIDAK ADA ORANG YANG BISA DIPERCAYA DAN DIPERLAKUKAN KASAR), CENDERUNG MERASA RAPUH DAN MUDAH HANCUR, CENDERUNG MERUSAK DIRI DAN IMPULSIF';
end
hsl(ii,:)=keputusan;
A - 19
% --- Executes on button press in pushbutton21.
function pushbutton21_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton21 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
set(handles.edit4,'String',handles.SP1);
% --- Executes on button press in pushbutton22.
function pushbutton22_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton22 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
set(handles.edit5,'String',handles.SP2);
% --- Executes on button press in pushbutton23.
function pushbutton23_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton23 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
set(handles.edit6,'String',handles.SP3);
% --- Executes on button press in pushbutton24.
function pushbutton24_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton24 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
set(handles.edit7,'String',handles.SP4);
% --- Executes on button press in pushbutton25.
function pushbutton25_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton25 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
close();
% --- Executes during object creation, after setting all properties.
function listbox1_CreateFcn(hObject, eventdata, handles)
% hObject handle to listbox1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: listbox controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in pushbutton27.
function pushbutton27_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton27 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
Akurasi_awal=0;
load total.mat inputtotal %% Mengambil Nilai Input training % gb=0.0207;ga=0.0217;kuantisasi=0.001;
Ptrain=inputtotal ;
A - 20
% pembentukan unit unit pola yang dikelompokan sesuai kelasnya % penghitungan jumlah pola pada masing masing kelas
A - 21
PL = [inputtotal(1,:) ;inputtotal(2,:)
;inputtotal(3,:);inputtotal(4,:) ;inputtotal(5,:) ;inputtotal(6,:);inputtotal(7,:) ;inputtotal(8,:)
;inputtotal(9,:);inputtotal(10,:)]; %% Garis Dasar Lurus
PN = [inputtotal(11,:) ;inputtotal(12,:);inputtotal(13,:)
;inputtotal(14,:) ;inputtotal(15,:);inputtotal(16,:) ;inputtotal(17,:) ;inputtotal(18,:);inputtotal(19,:) ;inputtotal(20,:)]; %% Garis Dasar Naik
PT = [inputtotal(21,:) ;inputtotal(22,:)
;inputtotal(23,:);inputtotal(24,:) ;inputtotal(25,:) ;inputtotal(26,:);inputtotal(27,:) ;inputtotal(28,:) ;inputtotal(29,:);inputtotal(30,:)]; %% Garis Dasar Turun
PR = [inputtotal(31,:) ;inputtotal(32,:)
;inputtotal(33,:);inputtotal(34,:) ;inputtotal(35,:) ;inputtotal(36,:);inputtotal(37,:) ;inputtotal(38,:)
;inputtotal(39,:);inputtotal(40,:)]; %% Garis Dasar Random
JPL = length(PL(:,1)); % jumlah pola latih kelas Garis Dasar Lurus
JPN = length(PN(:,1)) ; % jumlah pola latih kelas Garis Dasar Naik
JPT = length(PT(:,1)) ; % jumlah pola latih kelas Garis Dasar Turun
JPR = length(PR(:,1)) ; % jumlah pola latih kelas Garis Dasar Random
%====================================================================== % TAHAP ke Dua
% Penghitungan total jarak terdekat antara masing masing pola % terhadap pola-pola lain dalam satu kelas
% penghitungan smoothing parameter untuk setiap kelas
%======================================================================
TMD1 = GetTMD(PL) ; %total minimum distance kelas Dasar Lurus
TMD2 = GetTMD(PN); %total minimum distance kelas Dasar Naik
TMD3 = GetTMD(PT); %total minimum distance kelas Dasar Turun
TMD4 = GetTMD(PR); %total minimum distance kelas Dasar Random
m = length(PL(1,:)); % jumlah atribut pada data masukkan
A - 22
%Perhitungan Probability Pada Kelas Garis Dasar Naik
hslprob2(ii,:)=prob; % variabel penampung semua hasil probablitas semua kelas
% ==Mencari Probabilitas Terbesar Untuk mendapatkan kelas keputusan
A - 23
title('Akurasi JST Probabilistik dengan gb=0.0207,ga=0.0217, dan kuantisasi=0.001;')
save PNNTRainResrata.mat PL PN PT PR JPL JPN JPT JPR TMD1 TMD2 TMD3 TMD4 m SP1 SP2 SP3 SP4
% --- Executes on button press in pushbutton28.
function pushbutton28_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton28 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton29.
function pushbutton29_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton29 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% --- Executes on button press in pushbutton30.
function pushbutton30_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton30 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
function gb2_Callback(hObject, eventdata, handles)
% hObject handle to gb2 (see GCBO)
A - 24
% Hints: get(hObject,'String') returns contents of gb2 as text
% str2double(get(hObject,'String')) returns contents of gb2 as a double
% --- Executes during object creation, after setting all properties.
function gb2_CreateFcn(hObject, eventdata, handles)
% hObject handle to gb2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function ga2_Callback(hObject, eventdata, handles)
% hObject handle to ga2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of ga2 as text
% str2double(get(hObject,'String')) returns contents of ga2 as a double
% --- Executes during object creation, after setting all properties.
function ga2_CreateFcn(hObject, eventdata, handles)
% hObject handle to ga2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function kuantisasi2_Callback(hObject, eventdata, handles)
% hObject handle to kuantisasi2 (see GCBO)
A - 25
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of kuantisasi2 as text % str2double(get(hObject,'String')) returns contents of
kuantisasi2 as a double
input = str2num(get(hObject,'string'));
if(isempty(input))
set(hObject,'String','0')
end
LAMPIRAN B
B - 1
Tabel B-1 Hasil Nilai Spesifik setiap 20 piksel (input 1-25) pada Pelatihan
B - 2
Tabel B-2 Hasil Nilai Spesifik Setiap 20 Piksel (input 26-50) Pada Pelatihan
B - 3
Tabel B-3 Hasil Nilai Spesifik setiap 20 piksel (input 1-25) pada Pengujian
DATA UJI Ke
Hasil Nilai Spesifik
B - 4
Tabel B-4 Hasil Nilai Spesifik setiap 20 piksel (input 26-50) pada Pengujian
DATA UJI Ke
Hasil Nilai Spesifik
LAMPIRAN C
C-1
Tabel C-1 Hasil Pengenalan Dan Karakter Pada Pengujian
Nama CITRA Tulisan Tangan Pola
Garis
Keluaran
Pola GarisPengenalan Karakter
Resp1 Lurus Turun Salah
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp2
Lurus Turun Salah
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp3 Lurus Naik Salah
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp4 Lurus Naik Salah
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp5
Lurus Acak Salah
C-2
Nama CITRA Tulisan Tangan Pola
Garis
Keluaran
Pola GarisPengenalan Karakter
Resp6 Lurus Lurus Benar
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Memiliki Konsentrasi Cukup Tinggi,Memiliki Energi Yang Besar, Cenderung Mencoba Mengatur ,Biasa Menyiapkan Dirinya Saat Berhadapan Dengan Orang Lain,Orang Ini Sangat Terkontrol ,Mengikuti Aturan Main Dan Diplomatis,Hidupnya Serba Teratur, Penuh Dengan Aturan Main Dan Jadwal
Resp7 Naik Naik Benar
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp8 Naik Naik Benar
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp9 Naik Naik Benar
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp10 Naik Naik Benar
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp11 Naik Naik Benar
C-3
Nama CITRA Tulisan Tangan Pola
Garis
Keluaran
Pola GarisPengenalan Karakter
Resp12 Naik Naik Benar
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp13 Naik Naik Benar
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp14 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp15 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp16 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp17 Turun Turun Benar
C-4
Nama CITRA Tulisan Tangan Pola
Garis
Keluaran
Pola GarisPengenalan Karakter
Resp18 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp19 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp20 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp21 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp22 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp23
Turun Turun Benar
C-5
Nama CITRA Tulisan Tangan Pola
Garis
Keluaran
Pola GarisPengenalan Karakter
Resp24 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp25 Turun Turun Benar
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp26 Acak Naik Salah
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp27 Acak Turun Salah
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp28 Acak Acak Benar
C-6
Nama CITRA Tulisan Tangan Pola Garis
Keluaran
Pola GarisPengenalan Karakter
Resp29 Acak Turun Salah
Tipe Orang Dengan Tulisan Ini Sering Melihat Segala Sesuatu Dari Segi Buruk,Berpikir Negatif,Sering Merasa Sinis Terhadap Lingkungan Sekitar, Sering Merasa Selalu Menjadi Korban Keadaan, Hidupnya Selalu Rumit,Susah Dan Berujung Aneh
Resp30 Acak Naik Salah
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp31 Acak Naik Salah
Tipe Orang Dengan Tulisan Ini Adalah Orang Yang Optimis,Aktif,Berpikir Positif,Selalu Berusaha Mencapai Cita
Resp32 Acak Acak Benar
Tipe Orang Dengan Tulisan Ini Memiliki Perasaan Yang Tidak Stabil ,Kadang Bersemangat, Tertawa , Tetapi Kemudian Tiba-Tiba Loyo Bahkan Menangis, Memiliki Pengendalian Diri Yang Buruk, Merasa Kehilangan Rasa Aman (Karena Ditinggalkan , Tidak Ada Orang Yang Bisa Dipercaya Dan Diperlakukan Kasar), Cenderung Merasa Rapuh Dan Mudah Hancur, Cenderung Merusak Diri Dan Impulsif
Resp33 Acak Turun Salah
C-7
Resp34 Acak Acak Benar
LAMPIRAN D
D-1
Nama CITRA Tulisan Tangan Pola Garis
Resp1 Lurus
Resp2
Lurus
Resp3 Lurus
Resp4 Lurus
Resp5
Lurus
Resp6 Lurus
D-2
Nama CITRA Tulisan Tangan Pola Garis
Resp8 Lurus
Resp9 Lurus
Resp10 Lurus
Resp11 Naik
Resp12 Naik
Resp13 Naik
D-3
Nama CITRA Tulisan Tangan Pola Garis
Resp15 Naik
Resp16 Naik
Resp17 Naik
Resp18 Naik
Resp19 Naik
Resp20 Naik
D-4
Nama CITRA Tulisan Tangan Pola Garis
Resp22 Turun
Resp23 Turun
Resp24 Turun
Resp25 Turun
Resp26 Turun
Resp27 Turun
D-5
Nama CITRA Tulisan Tangan Pola Garis
Resp29 Turun
Resp30 Turun
Resp31 Acak
Resp32 Acak
Resp33 Acak
Resp34 Acak
D-6
Nama CITRA Tulisan Tangan Pola Garis
Resp36 Acak
Resp37 Acak
Resp38 Acak
Resp40 Acak
LAMPIRAN E
E - 1
Teknik Elektro 1
Universitas Kristen Maranatha
BAB I
PENDAHULUAN
I.1 Latar Belakang
Tulisan tangan dapat menyimpan informasi yang dapat mengidentifikasi karakter seseorang. Dalam cabang ilmu psikologi, ilmu yang mempelajari karakter seseorang dengan cara menganalisa tulisan tangan disebut grafologi [5][6].
Grafologi dapat melihat karakter seseorang dengan memperhatikan pola dari tulisan tangan seperti : pola garis dasar, ukuran huruf, kemiringan huruf dan kata, penekanan pena, jarak antar huruf , dan jarak antar kata [6] [10]
. Apabila pola tersebut dianalisis berdasarkan ilmu psikologi maka karakter dari penulis tulisan tersebut dapat diketahui. Tugas Akhir ini menitik-beratkan analisa grafologi berdasarkan pola garis dasar kalimat (base-line). Garis dasar kalimat adalah garis imajiner yang tercipta ketika manusia menghubungkan bagian bawah dari huruf - huruf dalam kata ataupun kalimat[6]. Garis dasar ini dapat mengarah ke bagian atas kertas, bagian bawah kertas, mendatar, ataupun naik turun tidak beraturan.[6]
BAB I Pendahuluan
Teknik Elektro 2
Universitas Kristen Maranatha
test yang lebih akurat daripada lie detector, bahkan Di Perancis dan Swiss banyak perusahaan yang menggunakan grafo-test untuk mencari karakter karyawan yang sesuai dengan kriteria perusahaan.
Dewasa ini pengenalan pola tulisan tangan dilakukan dengan bantuan perangkat lunak yang menggunakan Jaringan Saraf Tiruan (JST). JST didefinisikan sebagai suatu sistem pemrosesan informasi yang mempunyai karakteristik menyerupai jaringan saraf manusia.[3] JST tercipta sebagai suatu generalisasi model matematis dari jaringan saraf biologi.[3]
Masalah umum yang sering dihadapi saat proses pengenalan pola garis dasar tulisan tangan adalah variasi tulisan yang sangat banyak. Kalimat yang sama ditulis berkali-kali dan tentu dapat menghasilkan bentuk yang berbeda. Maka perlu ditemukan nilai spesifik dari pola garis dasar tulisan tangan tersebut. Dengan mendapatkan nilai spesifik sebelum dilatihkan ke dalam JST, maka masukan dari proses pelatihan tidak besar karena nilai yang diambil dan dipakai hanya nilai-nilai spesifiknya saja sehingga proses pelatihan bisa berjalan lebih cepat.
Salah satu algoritma JST untuk klasifikasi adalah algoritma
Probabilistic Neural Network (PNN) dan bisa digunakan sebagai algoritma pembelajaran dan pengujian untuk pengenalan pola garis dasar kalimat pada tulisan tangan untuk mengetahui karakter seseorang.
I.2 Perumusan Masalah
Terdapat beberapa perumusan masalah dalam pembuatan Tugas Akhir ini. Adapun perumusan masalah tersebut antara lain :
1. Bagaimana merancang Jaringan Saraf Tiruan (JST) dengan menggunakan algoritma Probabilistic Neural Network dalam MATLAB ?
BAB I Pendahuluan
Teknik Elektro 3
Universitas Kristen Maranatha I.3 Tujuan
Tujuan dari Tugas Akhir ini adalah :
1. Memahami dan merancang perangkat lunak yang dapat mengenali pola garis dasar tulisan tangan untuk mengetahui karakter seseorang dengan menggunakan algoritma Probabilistic Neural Network.
I.4 Pembatasan Masalah
Pada Tugas Akhir ini dilakukan pembatasan masalah sebagai berikut : 1. Tulisan tangan yang digunakan adalah tulisan tangan dari 74 orang, 40
tulisan digunakan sebagai data latih dan 34 tulisan sebagai data uji. 2. Responden menuliskan tulisan tangannya pada kertas yang dibatasi
kotak berukuran 21 x 17 cm.
3. Algoritma pelatihan dan pengujian yang digunakan adalah
Probabilistic Neural Network.
4. Pola garis dasar dari tulisan tangan yang akan dikenali dan diketahui karakternya adalah pola garis dasar lurus, naik, turun, dan tidak beraturan.
5. Pola garis dasar tulisan yang akan dikenali dari tiap responden diambil hanya 1 baris yang dianggap sudah mewakili karakter secara keseluruhan.
6. Sudut pola garis dasar tulisan tangan dihitung berdasarkan referensi dari Dr Erika Karohs.
7. Database karakter diambil berdasarkan referensi dari buku Bayu Ludvianto.
BAB I Pendahuluan
Teknik Elektro 4
Universitas Kristen Maranatha
9. Tulisan tangan dipindai dengan resolusi 200 dpi dan komponen warna 24 bit format Red Green Blue (RGB).
10.Citra tulisan tangan yang digunakan adalah 50 x 1000 piksel dengan ekstensi Joint Photographic Experts Group (JPEG).
11.Proses pengenalan dilakukan secara offline.
I.5 Sistematika Penelitian
Laporan Tugas Akhir ini terbagi menjadi lima bab utama. Untuk memudahkan dalam membaca laporan ini, akan diuraikan secara singkat sistematika beserta uraian dari masing-masing bab, yaitu:
BAB I. PENDAHULUAN
Bab ini menjelaskan latar belakang penulisan laporan Tugas Akhir, mengidentifikasi masalah yang akan diselesaikan dalam Tugas Akhir, menjelaskan tujuan dari topik yang diangkat, memberikan batasan masalah yang akan diteliti dan menguraikan sistematika penulisan laporan Tugas Akhir.
BAB II. DASAR TEORI
Merupakan bab yang disusun untuk memberikan penjelasan mengenai citra dijital, Jaringan Saraf Tiruan, algoritma PNN, dan grafologi.
BAB III. PERANCANGAN PERANGKAT LUNAK
BAB I Pendahuluan
Teknik Elektro 5
Universitas Kristen Maranatha BAB IV. SIMULASI DAN ANALISA
Bab ini berisi hasil yang diperoleh dari penelitian dan analisa data yang diperoleh melalui Tugas Akhir ini .
BAB V KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan yang didapatkan dari Tugas Akhir serta saran-saran yang dapat membantu pengembangan Tugas Akhir ini.
Teknik Elektro 55
Universitas Kristen Maranatha
BAB V
KESIMPULAN DAN SARAN
Pada bab ini disimpulkan hasil pengamatan dan saran-saran untuk perbaikan penelitian selanjutnya
V.1 Kesimpulan
• Pengenalan pola tulisan tangan menggunakan Jaringan Saraf tiruan
Probabilistic Neural Network telah berhasil diimplementasikan dan dapat berfungsi untuk mengidentifikasi karakter seseorang sesuai referensi yang ada.
• Dari 34 sampel data uji Pengenalan pola garis dasar tulisan tangan menggunakan algoritma PNN pola garis dasar naik dan pola garis dasar turun dapat dikenali dengan tingkat keberhasilan pengenalan 100%, pola garis dasar lurus dikenali dengan tingkat keberhasilan pengenalan sebesar 16.67%, dan pola garis dasar acak dikenali dengan tingkat keberhasilan pengenalan 33.33%.
V.2 Saran
• Pengenalan Karakter pada tulisan tangan dapat dilakukan tidak hanya melihat pola garis dasar kalimat saja, tetapi dari kemiringan tulisan, spasi antar kata.
• Pengenalan pola tulisan tangan dapat dilakukan untuk mengenali pola tulisan tangan pada 1 paragraf atau lebih.
Teknik Elektro 56
Universitas Kristen Maranatha
DAFTAR PUSTAKA
[1] Away, Gunaidi Abdia. The Shortcut Of MATLAB Programming. Bandung: Informatika. 2010
[2] Ghosh, Rajib, Mandal, Gouranga. Skew Detection and Correction of Online Bangla Handwritten Word .July 2012.
[3] Hermawan, Arief. Jaringan saraf tiruan, Teori dan Aplikasi. Yogyakarta : Andi. 2006.
[4] Jek Siang, Jong. Jaringan Syaraf Tiruan & Pemogramannya menggunakan MATLAB. Andi, Yogyakarta. 2004.
[5] Karohs, Erika. Measurements in Handwriting with illustrations and comprehensive interpretation: ISHA.
[6] Ludvianto, Bayu. Analisis Tulisan Tangan.Gramedia,Jakarta. 2011 [7] Matius, Teady. Pengolahan Citra. 2010.
[8] Purnomo, Mauridhi Hery and Arif Muntasa. Konsep Pengolahan Citra Digital dan Ekstraksi Fitur. Yogyakarta: Graha Mulia. 2010.
[9] Putra,Darma.Pengolahan Citra Digital.Yogyakarta:Andi. 2009.
[10] Prasad,Shitala.,Kumar singh, Vivek,Sapre,Akhsay. Handwriting Analysis based on segmentation Method for prediction of Human Personality using Support Vektor Machine.International Journal of Computer Applications(0975-8887) Volume 8-No 112.October 2010.
[11] Specht, Donald F. Probabilistic Neural Network. vol 3.pp.109- 118. 1990. [12] Sumathi,S,P,Surekha .Computational Intelligence Paradigms.CRC Press:
2010.
[13] Suyanto. Artificial Intelegence. Bandung. Indonesia: Informatika Bandung 2011.
[14] http://www.grafologiindonesia.com/ di akses Oktober 2012.