J-ICON, Vol. 2 No. 1, Maret 2014, pp. 65~72
65
PENGENALAN POLA TULISAN TANGAN DENGAN METODE K – NEAREST NEIGHBOR Ryan Arief Misnadin 1, S. Adi. S. Mola 2, Adriana Fanggidae 3 1,2,3
Jurusan Ilmu Komputer, Fakultas Sains dan Teknik, Universitas Nusa Cendana
ABSTRAK Pola adalah komposit/ gabungan dari fitur yang merupakan sifat dari sebuah obyek. Pengenalan pola juga dapat diterapkan untuk mengenali berbagai obyek seperti karakter tulisan tangan. K–Nearest Neighbor adalah sebuah metode untuk melakukan klasifikasi terhadap objek berdasarkan data pembelajaran yang jaraknya paling dekat dengan objek tersebut. Pada penelitian ini citra digital tulisan tangan seseorang akan dipisahkan tiap karakternya dan diproses dengan: penapisan luas, konversi warna, edge detection, edge linking, dilasi dan erosi, setelah itu citra akan diekstaksi menggunakan metode momen invarian dan dikenali dengan metode K – Nearest Neighbor. Sistem ini diuji dengan 3 data set. Dataset pertama dengan 15X36 data latih dan 5X36 data uji, dataset kedua dengan 35X36 data latih dan 15X36 data uji serta data set ketiga dengan 100X36 data latih dan 25X36 data uji selain itu digunakan 3 nilai K yaitu 1,3 dan 5. Secara keseluruhan, sistem ini memiliki akurasi sebesar 40,38%. Kata Kunci : Jaringan Syaraf Tiruan, Pengenalan Pola, Tulisan Tangan, K – Nearest Neighbor.
ABSTRACT Pattern is composite of feature that has characteristic from an object. Pattern recognition can also being apply to recognize any other type of objects that has particular characteristic to differentiate an object between another. Pattern recognizing can being applying for recognize any object like handwriting character. K-Nearest Neighbor is a method for classifying any objects based learning data which has nearest distance with that object. In this research people’s handwriting digital image will be separated by every characters and will be processed by image cluster filtering, color conversion, edge detection, edge linking, dilation and erosion, after that image will be extracted by invariant moment method and being recognized with K-Nearest Neighbor method. This system is tested using 3 datasets. First dataset has 15X36 training data and 5X36 testing data, second dataset has 35X36 training data and 15X36 testing data, as well as third dataset has 100X36 training data and 25X36 testing data beside that three K value will be used, that is 1,3 and 5. Overall, this system has 40.38% accurately. Keywords: Artificial Neural Network, Pattern Recognition, Handwriting, K – Nearest Neighbor.
I.
PENDAHULUAN
Pola adalah komposit/ gabungan dari fitur yang merupakan sifat dari sebuah obyek, sedangkan pengenalan pola adalah suatu ilmu untuk mengklasifikasikan atau menggambarkan sesuatu berdasarkan pengukuran kuantitatif fitur (ciri) atau sifat utama dari suatu obyek (Fatta, 2009). Pengenalan pola juga dapat diterapkan untuk mengenali berbagai jenis obyek yang memiliki ciri khas tertentu yang membedakan obyek yang satu dan obyek yang lainya. Seiring dengan berkembangnya teknologi, telah banyak obyek yang dapat dikenali polanya secara otomatis oleh komputer, antara lain wajah, tanda tangan, maupun sidik jari. Salah satu cabang pengenalan pola yang sering dijadikan obyek penelitian adalah pengenalan pola tulisan tangan.
ISSN 2337-7631
66
ISSN 2337-7631
II. METODE PENELITIAN Deskripsi Sistem Data yang akan digunakan dalam penelitian ini adalah data citra dari tulisan tangan cetak seseorang baik citra digital maupun citra analog. Citra analog harus diakuisisi terlebih dahulu sebelum diproses. Apabila data sudah dalam bentuk citra digital maka dapat diolah melalui tahapan pemrosesan citra, ekstraksi ciri dengan metode momen invarian yang menghasilkan tujuh ciri dari tiap karakter. Tujuh ciri itu kemudian dipakai sebagai data untuk diolah dalam sistem jaringan syaraf tiruan.
2.1
2.2
Konversi Citra Citra masukan dari pengguna perlu dikonversi terlebih dahulu menjadi citra biner sebelum diolah, akan tetapi citra hasil akuisisi memiliki format RGB (Red, Green, Blue), sehingga citra perlu dikonversi terlebih dahulu menjadi citra greyscale dengan persamaan (Achmad dan Firdausy, 2004). 2.3
Penapisan Luas Citra Untuk menapis atau menyaring obyek-obyek sampah perlu dilakukan proses penapisan luas citra. Proses ini diawali dengan proses penandaan komponen terhubung, yaitu pemberian tanda terhadap piksel-piksel yang berhubungan satu sama lain. Penandaan komponen terhubung dilakukan dengan memeriksa suatu citra, piksel per piksel untuk mengidentifikasi area piksel terhubung yaitu suatu area dari piksel berbatas yang memiliki nilai piksel yang sama (pada citra biner nilainya 1) (Putra, 2010): Selanjutnya akan dilakukan penapisan terhadap jumlah dari elemen tanda baru yang telah dihitung sebelumnya, apabila jumlahnya kurang dari threshold yang ditentukan maka piksel dengan tanda terebut akan diubah nilainya menjadi 0 (putih).
2.4
Segmentasi Citra Segmentasi citra merupakan proses membagi citra ke dalam beberapa bagian yaitu bagian yang diperlukan dan bagian yang tidak diperlukan oleh sistem (Rakhmanullah, 2008). Proses segmentasi dilakukan dengan cara mencari titik terluar yaitu titik y terbesar, y terkecil, x terbesar dan x terkecil dari tiap karakter citra masukan. Proses dilanjutkan dengan memisahkan tiap huruf dalam satu citra dilakukan dengan cara menginialisasi suatu matriks baru dengan ukuran 1 x N, dimana matriks tersebut merupakan perwakilan dari citra M x N yang setiap kolomnya mewakili setiap piksel yang ada dalam satu kolom citra asli. Kemudian matriks tersebut digunakan untuk membantu proses pemisahan dari tiap huruf, dimana deretan angka 1 dianggap sebagai huruf dan akan disimpan dalam matriks baru, deretan piksel 0 di bawah 80 piksel dianggap sebagai pemisah antar huruf sedangkan deretan piksel 0 di atas 80 piksel dianggap sebagai pemisah kata atau karakter spasi.
2.5
Edge Detection Operasi edge detection perlu dilakukan terlebih dahulu sebelum citra mengalami operasi edge linking. Operasi edge detection berfungsi untuk menentukan lokasi titik-titik yang merupakan tepi obyek. Secara umum, tepi suatu obyek dalam citra dinyatakan yang nilai awalnya berbeda cukup besar dengan titik yang ada disebelahnya. Mask yang akan digunakan untuk pendeteksian tepi adalah operator Sobel (Gonzalez dan Woods, 2002). Nilai yang diperlukan dalam operasi edge detection adalah magnitudo dari vektor, yang biasanya hanya disebut dengan gradien dan dituliskan dengan 𝛻𝑓 yang persamaanya: 𝛻𝑓 𝑥, 𝑦 =
[𝐺𝑥2 + 𝐺𝑦2 ]
dimana 𝛻𝑓 𝑥, 𝑦 𝐺𝑥 𝐺𝑦
: Gradien titik x,y : Nilai dari Gx : Nilai dari Gy
J-ICON, Vol. 2 No. 1, Maret 2014 : 65~72
(1)
J-ICON
ISSN 2337-7631
67
Sebuah piksel akan dianggap sebagai tepi, jika nilai piksel tersebut memenuhi persamaan: 𝛻𝑓 𝑥, 𝑦 ≥ 𝑇
(2)
dimana T adalah threshold tepi. Selain itu arah dari vektor gradien juga diperlukan dalam operasi edge detection. Jika 𝛼(x,y) menunjukan arah sudut vektor 𝛻f (x,y), maka dari analisa vektor dapat dilihat pada persamaan: 𝛼 𝑥, 𝑦 = 𝑡𝑎𝑛−1
𝐺𝑦
(3)
𝐺𝑥
dimana arah sudut diukur terhadap sumbu x. 2.6
Edge Linking Salah satu cara yang paling sederhana untuk menghubungkan titik-titik tepi adalah dengan menganalisa karakteristik piksel-piksel di suatu area piksel tetangga kecil di setiap titik (x,y) pada citra yang sudah terdapat titik tepi yang diperoleh dengan teknik deteksi tepi. Dua unsur penting yang digunakan untuk menentukan kesamaan suatu piksel tepi dengan analisa di atas adalah nilai respon dari operator gradien yang digunakan untuk menghasilkan piksel tepi, dimana sebuah piksel tepi dengan koordinat (x0,y0) dalam suatu structuring element dari (x,y) memiliki kesamaan dalam magnitudo dengan piksel pada (x,y) jika memenuhi persamaan (Gonzalez dan Woods, 2002): |𝛻𝑓 𝑥, 𝑦 − 𝛻𝑓(𝑥0 , 𝑦0 )| ≤ 𝐸 dimana E 𝛻𝑓 𝑥, 𝑦 𝛻𝑓(𝑥0 , 𝑦0 )
(4)
: Threshold gradien. : Gradien citra x,y : Gradien piksel tetangga x,y
Sebuah piksel tepi pada (x0,y0) di suatu structuring element dari (x,y) mempunyai sudut yang sama dengan piksel pada (x,y) jika 𝛼 𝑥, 𝑦 − 𝛼 𝑥0 , 𝑦0 dimana A 𝛼 𝑥, 𝑦 𝛼 𝑥0 , 𝑦0
<𝐴
(5)
: Threshold sudut. : Arah sudut gradien citra x,y : Arah sudut piksel tetangga x,y
Arah dari tepi pada (x,y) adalah tegak lurus dengan arah vektor gradien pada titik tersebut. Unsur yang kedua yaitu arah dari gradien vektor. Sebuah titik di area tetangga dari (x,y) akan dihubungkan dengan piksel pada (x,y) jika kedua kriteria dan arah terpenuhi. Proses ini dilakukan berulang-ulang di setiap lokasi pada citra. 2.7
Penskalaan Citra Operasi penskalaan (scaling) berfungsi untuk memperbesar dan memperkecil citra. Operasi ini dilakukan dengan cara menerapkan persamaan (Achmad dan Firdausy, 2004): 𝑥 ′ = 𝑆 𝑥
𝑦 ′ = 𝑆𝑣 𝑦
(6)
Apabila persamaan tersebut dibalik maka akan menghasilkan: 𝑥=
𝑥′ 𝑆
𝑦=
𝑦′ 𝑆𝑣
(7)
Selain itu ukuran (resolusi) piksel baru didapat dari persamaan: 𝑤 ′ = 𝑆𝑣 𝑤
′ = 𝑆
(8)
Pengenalan Pola Tulisan Tangan Dengan Metode K – Nearest Neighbor (Ryan A. Misnadin)
68
ISSN 2337-7631
dimana 𝑥 ′ , 𝑦 ′ 𝑥, 𝑦 𝑆, 𝑆𝑣 𝑤 ′ , ′ 𝑤,
: Titik koordinat x dan y baru : Titik koordinat x dan y awal : Penskalaan horizontal dan vertikal : Lebar dan tinggi citra baru : Lebar dan tinggi citra lama
2.8
Dilasi Citra Terkadang citra hasil akusisi tidak cukup tebal untuk diolah sehingga perlu dilakukan penebalan dengan operasi dilasi citra terlebih dahulu. Operasi ini dilakukan dengan menggabungkan (XOR) titiktitik latar (0) menjadi bagian dari obyek (1), berdasarkan structuring element S yang digunakan yang memiliki persamaan sebagai berikut (Putra, 2010): 𝐷(𝐴, 𝑆) = 𝐴 ⊕ 𝑆 dimana D S A
(9)
: Hasil proses dilasi : Elemen penstruktur : Citra awal
2.9
Erosi Citra Operasi erosi dilakukan apabila citra hasil dari akuisisi terlalu tebal. Operasi erosi merupakan kebalikan dari operasi dilasi, apabila proses dilasi berfungsi untuk menebalkan citra, maka operasi erosi berfungsi untuk menipiskan citra. Operasi ini dilakukan dengan menghapus (XNOR) titik-titik obyek (1) menjadi bagian dari latar (0), berdasarkan structuring element S yang digunakan dan memiliki persamaan sebagai berikut (Putra, 2010): 𝐸 𝐴, 𝑆 = 𝐴
𝑆
dimana E S A
: Hasil proses erosi : Elemen penstruktur : Citra awal
(10)
2.9
Momen Invarian Momen dapat menggambarkan suatu obyek dalam hal area, posisi, orientasi dan parameter terdefinisi lainnya. Persamaan dasar dari momen suatu obyek didefinisikan sebagai berikut (Putra, 2009): 𝑀𝑖𝑗 = 𝛴𝑥 𝛴𝑦 𝑥 𝑖 . 𝑥 𝑗 . 𝑎𝑥𝑦 dimana M i,j x,y 𝑎𝑥𝑦
(11)
: Momen : Tingkat momen : Koordinat vertical dan horizontal citra : Intensitas piksel titik x,y
Dari persamaan di atas dapat dihitung pusat massa (centroid), yang menggambarkan lokasi dari obyek. Pusat massa ini didefenisikan dengan (Putra, 2009): 𝑥′ =
𝑚 10 𝑚 00
𝑦′ =
dan
𝑚 01 𝑚 00
(12)
Dengan (𝑥 ′ , 𝑦 ′ ) merupakan pusat koordinat dari obyek. Dari nilai pusat massa pada persamaan (12) selanjutnya dihitung momen pusat µ dengan persamaan (Putra, 2009): µ𝑖𝑗 = 𝛴𝑥 𝛴𝑦 𝑥 − 𝑥 ′
𝑖
𝑗
𝑦 − 𝑦 ′ 𝑎𝑥𝑦
J-ICON, Vol. 2 No. 1, Maret 2014 : 65~72
(13)
J-ICON
ISSN 2337-7631
Momen pusat kemudian dinormalisasi menjadi momen pusat ternormalisasi dengan (Putra, 2009): 𝜂𝑖𝑗 =
µij (µ00 )𝜆
69
yang dinyatakan
dengan i j 1, dengan (i+j) ≥ 2 (14) 2
Dari momen ternormalisasi di atas, kemudian diperoleh fitur-fitur berupa 7 momen invarian (invariant moments) yang persamaannya adalah sebagai berikut (Putra, 2009):
1 20 02
(15)
2 20 02 2 4112
(16)
3 30 312 2 321 03 2
(17)
4 30 12 2 21 03 2
(18)
5 30 312 30 12 30 12 3 21 03 2
2
321 03 21 03 330 12 2 21 03 2 2 2 6 20 02 30 12 21 03 41130 12 21 03
3
(20)
7 321 30 30 12 30 12 321 03
321 03 21 03
2
(19)
2
30 12 21 03 2
2
(30)
Dimana sampai pada persamaan 15 sampai 30 adalah momen invarian pertama sampai momen 1
7
invarian ketujuh dan adalah momen pusat ternormalisasi.
2.10 K-Nearest Neighbor K–Nearest Neighbor adalah sebuah metode untuk melakukan klasifikasi terhadap objek berdasarkan data pembelajaran yang jaraknya paling dekat dengan objek tersebut. K-Nearest Neighbor termasuk algoritma unsupervised learning dimana hasil dari query instance yang baru akan diklasifikan berdasarkan mayoritas dari kategori pada K-Nearest Neighbor yang nantinya kelas yang paling banyak munculah yang akan menjadi kelas hasil klasifikasi. Prinsip kerja K-Nearest Neighbor adalah mencari jarak terdekat data uji terhadap K tetangga terdekat dengan persamaan 𝑁
𝑑𝐸 =
𝑖=1
𝑥𝑖 − 𝑦𝑖
2
(30)
dimana 𝑑𝐸 : Jarak Euclidean data x ke y atau sebaliknya 𝑁 : Jumlah ciri data latih 𝑥𝑖 : Ciri data latih ke-i 𝑦𝑖 : Ciri data uji ke-i dari data latih kemudian memberikan label / class terhadap data uji tersebut berdasarkan label / class terbanyak dalam K tetangga terdekat (Bezdek dkk., 2005). 2.11 Pengukuran Akurasi Setelah dilalakukan pelatihan, maka sistem akan diuji kemudian diukur presentase tingkat akurasinya dengan persamaan 31. Pengenalan Pola Tulisan Tangan Dengan Metode K – Nearest Neighbor (Ryan A. Misnadin)
70
% 𝑎𝑘𝑢𝑟𝑎𝑠𝑖 =
ISSN 2337-7631
𝐽𝑢𝑚𝑙𝑎 𝑑𝑎𝑡𝑎 𝑦𝑎𝑛𝑔 𝑏𝑒𝑛𝑎𝑟 𝐽𝑢𝑚𝑙𝑎 𝑑𝑎𝑡𝑎 𝑦𝑎𝑛𝑔 𝑑𝑖𝑢𝑗𝑖
𝑋 100
(31)
Hal ini dilakukan untuk mendapatkan nilai kisaran presentase akurasi dalam bilangan nyata. 2.12 Tahap Pembangunan Sistem Tahap pembangunan system merupakan tahap-tahap yang harus dikerjakan dalam membangun sebuah sistem. 2.12.1 Identifikasi Masalah Pembuatan sistem ini diawali dengan preprocessing citra, apabila citra sudah matang (siap diolah). Maka akan diekstraksi ciri-cirinya dan dikenali (diklasifikasikan) dengan jaringan syara tiruan. a. Preprocessing Dalam proses ini citra akan diolah sedemikain rupa sehingga menemui keadaan dimana citra latih tersebut memiliki kesamaan yang semirip mungkin, proses ini meliputi: konversi warna, penapisan luas citra, segmentasi, edge detection, edge linking, penskalaan tetangga terdekat, dilasi dan juga erosi. Untuk lebih jelasnya dapat dilihat pada tabel 1. Tabel 1. Detail preprocessing citra No. Proses Variabel 1 Konversi warna T= 127 2 Penapisan luas citra T= 10% 3 Segmentasi 4 Edge detection 5 T. Grad= 1.4, T. Alfa= 25 Edge linking 6 Penskalaan tetangga terdekat 100X100px 7 Dilasi/ Erosi Ketebalan= 5px b. Ekstraksi ciri Pada proses ini citra hasil preprocessing akan di ubah dari bentuk citra menjadi kumpulan angka. Dalam penelitian ini, metode ekstraksi ciri yang digunakan adalah momen invarian. c. Pengenalan pola Proses ini berfungsi untuk mengenali (mengklasifikasi) ciri data uji dengan data telah diekstraksi sebelumnya (data latih), pengenalan pola yang digunakan dalam penelitian ini adalah metode knearest neighbor. d. Pengukuran tingkat akurasi Proses ini dibutuhkan untuk mengetahui (mengukur) tingkat akurasi yang dimiliki oleh sistem yang telah dibuat. 2.6.2 Desain Sistem Sistem akan dirancang dengan UML yang terdiri dari beberapa diagram antara lain: use case diagram, activity diagram, sequence diagram, class diagram serta desain antar muka yang sebagaimana dalam skripsi pengenalan pola tulisan tangan dengan metode k-nearest neighbor (Misnadin, 2013), namun perancangan system dapat digambarkan secara umum dengan menggunakan use case diagram. a. Use case diagram Use case diagram adalah sebuah penggambaran dari sekelompok urutan kegiatan yang yang dikerjakan oleh sistem untuk menghasilkan keluaran yang dapat dilihat oleh pengguna (actor) (Booch dkk., 1999)
J-ICON, Vol. 2 No. 1, Maret 2014 : 65~72
J-ICON
ISSN 2337-7631
71
USE CASE APLIKASI PENGENALAN POLA TULISAN TANGAN Mengatur nilai pengaturan 1(A) 2(A) 3(A)
Melakukan Pengujian
Menginputkan data latih
1(A)
Form pengaturan 2(A) <
>
2(A)
Form pengujian 3(A) <<extend>>
3(A)
Form data latih
Normalisasi Data 1(A) <>
2,3(A) <<extend>>
Pencarian tetangga terdekat 2(A) <<extend>>
2(A)
<>
<> 3(A)
Aplikasi pengenalan pola tulisan tangan 1(A) <<extend>>
1(A) <<extend>> 2,3(A) <<extend>>
Menampilkan nilai pengaturan
Perhitungan ekstraksi ciri
Meng-update pengaturan
(A) Pengguna
Gambar 1. Use case diagram b. Antarmuka Antarmuka atau interface pada sistem ini dirancang nantinya sebagai media interaksi antara pengguna sistem dengan sistem itu sendiri. Rancangan antarmuka dari aplikasi ini sebagaimana dalam skripsi pengenalan pola tulisan tangan dengan metode K-Nearest Neighbor (Misnadin, 2013). Salah satu tampilan dari antarmuka aplikasi ini dapat dilihat pada gambar 2.
Gambar 2. Tampilan form Pengujian
III.
HASIL DAN PEMBAHASAN
3.1
Pengujian Sistem Sistem ini diuji dengan 3 data set, dataset pertama dengan 15X36 data latih dan 5X36 data uji, dataset kedua dengan 35X36 data latih dan 15X36 data uji serta data set ketiga dengan 100X36 data latih dan 25X36 data uji selain itu digunakan 3 nilai K yaitu 1,3 dan 5. Proses pengujian sistem diawali dengan menginputkan tulisan tangan pada kanvas yang telah tersedia di form pengujian kemudian dilanjutkan dengan meng-klik tombol proses. 3.2
Analisis Pengujian Setelah ketiga data set tersebut diuji dengan berbagai nilai K dengan data belum pernah dilatih (data uji), maka didapatkan hasil sebagai berikut: Tabel 2. Data hasil pengujian terhadap sistem Berhasil dikenali % akurasi Total DATA pengenalan % SET K=1 K=3 K=5 K=1 K=3 K=5 Akura si I 113 102 88 62,77 56,6 48,88 56,1 II 173 177 177 32,04 32,77 32,77 32,53 III 396 294 288 32,89 32 32 32,52
IV. Pengenalan Pola Tulisan Tangan Dengan Metode K – Nearest Neighbor (Ryan A. Misnadin)
72
ISSN 2337-7631 V. KESIMPULAN DAN SARAN
4.1 Kesimpulan a) Presentase akurasi pengenalan secara keseluruhan terhadap seluruh karakter menggunakan semua data set yang ada mencapai 40,38%. b) Hal yang menyebabkan system ini memiliki akurasi yang buruk adalah karena metode momen invarian diniliai memiliki performa yang buruk untuk dapat membedakan 36 karakter (class) secara spesifik dan konsisten sehingga terdapat banyak ciri dari berbagai data yang saling beririsan. c) Presentase pengenalan yang mencapai 90% adalah karakter “C, L, T dan U”. d) Tulisan tangan yang bersifat luas, bebas, dan sangat bervariasi serta dapat berubah-ubah pada berbagai kondisi tertentu yang menyebabkan pola lebih sulit untuk dikenali. 4.2 Saran a) Diharapkan untuk menambahkan metode pengenalan pola lainya serta memodifikasi alur pengenalan pola seperti serial ataupun pararel agar hasil dari pengenalan dapat lebih akurat. b) Diharapkan menambahkan preprocessing pada citra sehingga saat dilakukan proses ektraksi ciri, citra tulisan tangan tersebut berada pada keadaan yang paling maksimal yakni mempunyai perbedaan yang seminim mungkin. c) Diharapkan untuk menambah jumlah data latih. DAFTAR PUSTAKA [1].
Achmad, B. dan Kartika F., 2004, Teknik Pengolahan Citra Digital Menggunakan Delphi, Ardi publishing, Yogyakarta. [2]. Bezdek, C.Dubois., Keller, J., Krisnapuram, R., Pal, N.R, 2005, Fuzzy Models and Algorithms for Pattern Recognition and Image Processing. [3]. Booch, G., Rumbaugh, J. and Jacobson, I. 1999. The Unified Modeling Language User Guide. Addison-Wesley, Canada [4]. Fatta, H., 2009, Rekayasa Sistem Pengenalan Wajah, Andi Offset, Yogyakarta. [5]. Gonzalez, R. C. and Woods, R. E., 2002, Digital Image Processing Using Matlab, PrenticeHall,inc., New Jersey. [6]. Misnadin, R. A., 2013 Pengenalan pola tulisan tangan dengan metode K-Nearest Neighbor, Skripsi, Jurusan Ilmu Komputer, Fakultas Sains Dan Teknik, Universitas Nusa Cendana, Kupang. [7]. Putra, D., 2009, Pengolahan Citra Digital, Andi, Yogyakarta. [8]. Putra, D., 2010, Pengolahan Citra Digital, Andi Offset, Yogyakarta. [9]. Rakhmanullah, A., Autentifikasi Pengenalan Pola Tanda Tangan Manual Menggunakan Jaringan Saraf Tiruan LVQ (Learning Vector Quantization) Dan Tanda Tangan Digital Menggunakan Algoritma RSA (Riset Shamir Adleman). Skripsi, Jurusan Teknik Informatika, Universitas Islam Negeri Maulana Malik Ibrahim, Malang, Diakses dari lib.uinmalang.ac.id/files/thesis/fullchapter/05550002.ps, 25 Juni 2011. [10]. Rumbaugh, J., Jacobson, I. and Booch, G., 2005. The Unified Modeling Language Reference Manual second edition. Pearson Education, Inc., Boston.
J-ICON, Vol. 2 No. 1, Maret 2014 : 65~72