Pengenalan Gerakan Tangan Manusia Menggunakan Deep Neural Network

PENGENALAN GERAKAN TANGAN MANUSIA
MENGGUNAKAN DEEP NEURAL NETWORK

SKRIPSI

EKA PRATIWI GOENFI
121402057

PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016

Universitas Sumatera Utara

PENGENALAN GERAKAN TANGAN MANUSIA
MENGGUNAKAN DEEP NEURAL NETWORK

SKRIPSI


Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Teknologi Informasi

EKA PRATIWI GOENFI
121402057

PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016

Universitas Sumatera Utara

ii

PERSETUJUAN

Judul


: PENGENALAN GERAKAN TANGAN MANUSIA
MENGGUNAKAN DEEP NEURAL NETWORK

Kategori

: SKRIPSI

Nama

: EKA PRATIWI GOENFI

Nomor Induk Mahasiswa

: 121402057

Program Studi

: S1 TEKNOLOGI INFORMASI

Departemen


: TEKNOLOGI INFORMASI

Fakultas

: ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing

:

Pembimbing 2

Pembimbing 1

Prof. Dr. Opim Salim Sitompul, M.Sc

Romi Fadillah Rahmat, B.Comp.Sc., M.Sc


NIP. 19610817 198701 1 001

NIP. 19860303 201012 1 004

Diketahui/disetujui oleh
Program Studi S1 Teknologi Informasi
Ketua,

Muhammad Anggia Muchtar, ST., MM.IT
NIP. 19800110 200801 1 010

Universitas Sumatera Utara

iii

PERNYATAAN

PENGENALAN GERAKAN TANGAN MANUSIA
MENGGUNAKAN DEEP NEURAL NETWORK


SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, 28 Juli 2016

Eka Pratiwi Goenfi
121402057

Universitas Sumatera Utara

iv

UCAPAN TERIMA KASIH

Puji dan syukur penulis sampaikan ke hadirat Tuhan Yang Maha Esa yang telah
memberikan rahmat serta restu-Nya sehingga penulis dapat menyelesaikan skripsi ini
sebagai syarat untuk memperoleh gelar Sarjana Teknologi Informasi.
Pertama, penulis ingin mengucapkan terima kasih kepada Bapak Romi Fadillah

Rahmat, B.Comp.Sc., M.Sc selaku pembimbing pertama dan Bapak Prof. Dr. Opim
Salim Sitompul, M.Sc selaku pembimbing kedua yang telah meluangkan waktu dan
tenaganya untuk membimbing penulis dalam penelitian serta penulisan skripsi ini.
Tanpa inspirasi serta motivasi yang diberikan dari kedua pembimbing, tentunya
penulis tidak akan dapat menyelesaikan skripsi ini. Penulis juga mengucapkan terima
kasih kepada Ibu Amalia, ST., M.T sebagai dosen pembanding pertama dan Ibu Ulfi
Andayani, S.Kom, M.Kom sebagai dosen pembanding kedua yang telah memberikan
masukan serta kritik yang bermanfaat dalam penulisan skripsi ini. Ucapan terima
kasih juga ditujukan kepada Ketua dan Sekretaris Program Studi Teknologi Informasi,
Dekan dan Wakil Dekan Fakultas Ilmu Komputer dan Teknologi Informasi, dan
semua dosen serta pegawai di lingkungan program studi Teknologi Informasi, yang
telah membantu serta membimbing penulis selama proses perkuliahan.
Penulis tentunya tidak lupa berterima kasih kepada kedua orang tua penulis, yaitu
Bapak Ir. Rusdy Goenfi dan Ibu Liani yang telah membesarkan penulis dengan sabar
dan penuh kasih sayang, serta doa dari mereka yang selalu menyertai selama ini.
Terima kasih juga penulis ucapkan kepada adik penulis Vera Pratiwi Goenfi dan Eko
Prayogo Goenfi, yang selalu memberikan dukungan kepada penulis. Penulis juga
berterima kasih kepada seluruh anggota keluarga penulis yang namanya tidak dapat
disebutkan satu persatu.
Terima kasih juga penulis ucapkan kepada teman-teman yang telah memberikan

dukungan, khususnya Aaron, S.TI, Tengku Chairunnisa, S.Kom, Franco Baggio, S.E.,
BBM, Novia Elisha Haloho, Theresia Aruan, Dennis, Anita Ratna Sari, Reza
Taqyuddin serta seluruh teman-teman angkatan 2012 dan teman-teman mahasiswa
Teknologi Informasi lainnya.

Universitas Sumatera Utara

v

ABSTRAK

Interaksi manusia dan komputer secara umum dilakukan menggunakan keyboard dan
mouse. Namun, interaksi tersebut memiliki kekurangan dimana interaksi tidak dapat
dilakukan oleh tunadaksa yang mengalami disabilitas (cacat) pada pergelangan tangan
sampai ujung jari tangan. Untuk mengatasi permasalahan yang terjadi, dibutuhkan
suatu pendekatan untuk mengenali gerakan tangan sebagai sarana interaksi manusiakomputer. Metode yang diajukan oleh penulis adalah penggunaan algoritma nearest
neighbor untuk mengecilkan ukuran frame gambar yang telah dipisahkan dari video,
grayscalling, frame differencing, Principal Component Analysis (PCA), serta Deep
Neural Network (DNN). Penelitian ini dilakukan dalam dua percobaan yaitu
percobaan dengan enam jenis gerakan tangan dan percobaan dengan empat jenis

gerakan tangan. Masing-masing percobaan dilakukan lima kali dengan parameter
jumlah hidden layer dan hidden neuron yang berbeda. Hasil terbaik yang didapatkan
dari percobaan dengan enam jenis gerakan tangan adalah tingkat akurasi pengujian
sebesar 77,02% untuk percobaan dua dengan jumlah hidden layer sebanyak dua dan
jumlah hidden neuron masing-masing sebanyak 300 dan 50. Hasil terbaik yang
didapatkan dari percobaan dengan empat jenis gerakan tangan adalah tingkat akurasi
pengujian sebesar 89,72% untuk percobaan satu dengan jumlah hidden layer sebanyak
dua dan jumlah hidden neuron masing-masing sebanyak 300 dan 50. Hasil terbaik dari
keseluruhan percobaan yakni percobaan satu dari percobaan dengan empat jenis
gerakan tangan diimplementasikan ke dalam sistem front-end untuk mengendalikan
aplikasi file explorer, music player, video player, slideshow dan PDF reader.

Kata kunci: pengenalan gerakan tangan, interaksi manusia-komputer, Principal
Component Analysis, Deep Neural Network

Universitas Sumatera Utara

vi

HAND GESTURE RECOGNITION USING DEEP NEURAL NETWORK


ABSTRACT

Interaction between human and computer is generally performed using a keyboard and
mouse. However, these interactions have certain drawbacks which are they cannot be
done by user with physical disabilities or user who experience disability from the
wrist to the fingertip. To overcome this problem, an approach to recognize human
hand gesture as a means of human-computer interaction is needed. The method
proposed by the author is the use of algorithms: nearest neighbor, grayscaling, framedifferencing, Principal Component Analysis (PCA) and Deep Neural Network (DNN).
This research was conducted in two experiments, which are experiment with six
different types of hand gestures and experiments with four different types of hand
gestures. Each experiment is performed five times with different value of number of
hidden layers parameter and hidden neurons parameter. The best testing result
obtained from the experiment with six kinds of hand gestures is from the second
experiment with two hidden layers using 300 and 50 hidden neurons for each layer,
resulting in an accuracy rate of 77.02%. The best testing result obtained from the
experiment with four different types of hand gesture is from the first experiment with
two hidden layers using 300 and 50 hidden neurons for each layer, resulting in an
accuracy rate of 89.72%. The best overall result is then implemented into the frontend system for controlling application such as: file explorer, music player, video
player, slideshows and PDF reader.


Keywords: hand gesture recognition, Human Computer Interaction, Principal
Component Analysis, Deep Neural Network

Universitas Sumatera Utara

DAFTAR ISI

Hal.
PERSETUJUAN

ii

PERNYATAAN

iii

UCAPAN TERIMA KASIH

iv


ABSTRAK

v

ABSTRACT

vi

DAFTAR ISI

vii

DAFTAR TABEL

ix

DAFTAR GAMBAR

x

BAB 1 PENDAHULUAN

1

1.1. Latar Belakang

1

1.2. Rumusan Masalah

3

1.3. Tujuan Penelitian

3

1.4. Batasan Masalah

3

1.5. Manfaat Penelitian

4

1.6. Metodologi Penelitian

4

1.7. Sistematika Penulisan

5

BAB 2 LANDASAN TEORI

7

2.1. Nearest Neighbor

7

2.2. Grayscaling

9

2.3. Frame Differencing

9

2.4. Principal Component Analysis

11

2.5. Artificial Neural Network

12

2.6. Deep Neural Network

14

2.7. Backpropagation

16

2.8. Penelitian Terdahulu

18

Universitas Sumatera Utara

viii

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

23

3.1. Dataset

23

3.2. Analisis Sistem

26

3.2.1. Pemisahan video gerakan tangan menjadi beberapa frame
27

gambar
3.2.2. Perkecil ukuran gambar menggunakan algoritma nearest

27

neighbor
3.2.3. Grayscaling

28

3.2.4. Frame differencing

28

3.2.5. Principal Component Analysis (PCA)

28

3.2.6. Implementasi Deep Neural Network

29

3.3. Perancangan Sistem

31

3.3.1. Perancangan sistem bagian belakang (back-end)

32

3.3.2. Perancangan sistem bagian depan (front-end)

32

BAB 4 IMPLEMENTASI DAN PENGUJIAN

35

4.1. Spesifikasi Perangkat Keras dan Perangkat Lunak

35

4.2. Hasil Pre-processing

36

4.3. Hasil Pelatihan Deep Neural Network (DNN)

39

4.4. Hasil Pengujian Deep Neural Network (DNN)

43

4.5. Implementasi Sistem Bagian Depan (Front-End)

47

4.5.1. Tampilan antarmuka

47

4.5.2. Prosedur operasional

49

BAB 5 KESIMPULAN DAN SARAN

55

5.1. Kesimpulan

55

5.2. Saran

56

DAFTAR PUSTAKA

57

Universitas Sumatera Utara

DAFTAR TABEL

Hal.
Tabel 2.1. Penelitian Terdahulu

20

Tabel 3.1. Detail Video Data Penelitian Percobaan Pertama

24

Tabel 3.2. Detail Training Dataset Percobaan Pertama

24

Tabel 3.3. Detail Testing Dataset Percobaan Pertama

24

Tabel 3.4. Detail Video Data Penelitian Percobaan Kedua

25

Tabel 3.5. Detail Training Dataset Percobaan Kedua

25

Tabel 3.6. Detail Testing Dataset Percobaan Kedua

25

Tabel 3.7. Nilai Parameter DNN pada Percobaan dengan Enam Gerakan Tangan

29

Tabel 3.8. Nilai Parameter DNN pada Percobaan dengan Empat Gerakan
Tangan

30

Tabel 3.9. Target Output untuk Setiap Jenis Gerakan Tangan pada Percobaan
dengan Enam Gerakan Tangan

31

Tabel 3.10. Target Output untuk Setiap Jenis Gerakan Tangan pada Percobaan
dengan Empat Gerakan Tangan

31

Tabel 4.1. Hasil Pelatihan DNN pada Percobaan dengan Enam Gerakan Tangan

40

Tabel 4.2. Hasil Pelatihan DNN pada Percobaan dengan Empat Gerakan Tangan

40

Tabel 4.3. Hasil Pengujian DNN yang Telah Dilatih untuk Enam Jenis Gerakan
Tangan

43

Tabel 4.4. Hasil Pengujian DNN yang Telah Dilatih untuk Empat Jenis Gerakan
Tangan

45

Tabel 4.5. Fungsi Gerakan Tangan pada Aplikasi File Explorer

49

Tabel 4.6. Fungsi Gerakan Tangan pada Aplikasi Windows Media Player

50

Tabel 4.7. Fungsi Gerakan Tangan pada Aplikasi VLC Media Player

51

Tabel 4.8. Fungsi Gerakan Tangan pada Aplikasi Microsoft Power Point

52

Tabel 4.9. Fungsi Gerakan Tangan pada Aplikasi Acrobat Reader DC

53

Universitas Sumatera Utara

DAFTAR GAMBAR

Hal.
Gambar 2.1. Nilai-Nilai Piksel Gambar Awal (Malepati, 2010)

7

Gambar 2.2. Nilai Piksel Setelah Gambar Diperbesar (Malepati, 2010)

8

Gambar 2.3. Arsitektur Umum Sebuah Jaringan Saraf Tiruan
(Negnevitsky, 2005)

13

Gambar 2.4. Fungsi Aktivasi Neuron (Negnevitsky, 2005)

14

Gambar 2.5. Arsitektur Multilayer Perceptron dengan Dua Hidden Layer
(Negnevitsky, 2005)

15

Gambar 3.1. Arsitektur Umum

27

Gambar 3.2. Rancangan Bagian Penjelasan Penggunaan Aplikasi

32

Gambar 3.3. Rancangan Bagian Panel Kamera Web

33

Gambar 3.4. Rancangan Bagian Keterangan mengenai Cara Pengendalian
Aplikasi Melalui Gerakan Tangan

34

Gambar 4.1. Hasil Pemisahan Video Gerakan Tangan Menjadi Beberapa Frame
Gambar

36

Gambar 4.2. Hasil Proses Nearest Neighbor

37

Gambar 4.3. Hasil Proses Grayscaling

37

Gambar 4.4. Hasil Proses Frame Differencing

38

Gambar 4.5. Empat Gambar yang Dipilih Setelah Proses Frame Differencing

39

Gambar 4.6. Contoh Isi File “TrainingDatasetPCA.txt”

39

Gambar 4.7. Contoh Isi File “TestingDatasetPCA.txt”

39

Gambar 4.8. Grafik Hasil Pelatihan DNN dengan Enam Gerakan Tangan

41

Gambar 4.9. Grafik Hasil Pelatihan DNN dengan Empat Gerakan Tangan

42

Gambar 4.10. Grafik Perbandingan Actual Ecpoch

42

Gambar 4.11. Grafik Hasil Pengujian DNN yang Telah Dilatih untuk Enam Jenis
Gerakan Tangan

44

Gambar 4.12. Grafik Hasil Pengujian DNN yang Telah Dilatih untuk Empat Jenis
Gerakan Tangan

46

Gambar 4.13. Tampilan Bagian Penjelasan Penggunaan Aplikasi

47

Universitas Sumatera Utara

xi

Gambar 4.14. Tampilan Bagian Panel Kamera Web

48

Gambar 4.15. Tampilan Bagian Keterangan mengenai Cara Pengendalian Aplikasi
Melalui Gerakan Tangan

48

Gambar 4.16. Tampilan Pertama Kali Sistem Front-End Dijalankan

49

Gambar 4.17. Tampilan Saat File Explorer Dijalankan

50

Gambar 4.18. Tampilan Saat Windows Media Player Dijalankan

51

Gambar 4.19. Tampilan Saat VLC Media Player Dijalankan

52

Gambar 4.20. Tampilan Saat Microsoft Power Point Dijalankan

53

Gambar 4.21. Tampilan Saat Acrobat Reader DC Dijalankan

54

Universitas Sumatera Utara