• Tidak ada hasil yang ditemukan

Pengenalan Gerakan Tangan Manusia Untuk Interaksi Manusia-Komputer

N/A
N/A
Protected

Academic year: 2017

Membagikan "Pengenalan Gerakan Tangan Manusia Untuk Interaksi Manusia-Komputer"

Copied!
21
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1 Computer Vision

Computer Vision merupakan salah satu cabang ilmu pengetahuan yang bertujuan untuk membuat suatu keputusan yang berguna mengenai objek fisik nyata dan keadaan berdasarkan sebuah gambar atau citra (Shapiro & Stockman, 2001). Computer vision merupakan kombinasi antara :

a. Pengolahan Citra

Pengolahan Citra (Image Processing) merupakan bidang yang berhubungan dengan proses perubahan pada citra agar mendapatkan kualitas citra yang lebih baik. b. Pengenalan Pola

Pengenalan Pola (Pattern Recognition) merupakan bidang yang berhubungan dengan proses identifikasi objek pada citra atau interpretasi citra, yang bertujuan untuk mengekstrak informasi yang disampaikan oleh citra.

2.2 Pengolahan Citra Digital

Pengolahan citra digital (digital image processing) adalah metode yang digunakan untuk memanipulasi citra digital sehingga menghasilkan kualitas citra yang lebih baik. Pengolahan citra digital berfokus pada dua tugas utama, yaitu peningkatan informasi bergambar untuk interpretasi manusia dan pengolahan data citra untuk penyimpanan, transmisi dan representasi untuk persepsi mesin otonom (Annadurai & Shanmugalakshmi, 2007).

2.2.1 Resizing

(2)

ukuran yang sama dan mempercepat proses pengolahan citra ketika ukuran citra diperkecil.

2.2.2 Color Space Conversion

Konversi ruang warna (color space conversion) adalah proses pengubahan suatu ruang warna ke ruang warna lainnya dengan tranformasi matematis. Konversi ruang warna digunakan untuk mendapatkan channel warna yang mengandung informasi tertentu dalam suatu citra.

2.2.2.1 RGB to Grayscale Conversion

Salah satu proses konversi ruang warna yang paling sering dilakukan adalah grayscaling, yaitu proses pengubahan citra warna yang memiliki ruang warna RGB menjadi citra keabuan. Proses ini mengubah 3 channel red, green dan blue menjadi 1 channel gray (keabuan) dengan transformasi matematis seperti persamaan 2.1 (Bradski & Kaehler, 2008).

= 0.299. + 0.587. + 0.114.

Dimana : Y = citra hasil konversi RGB menjadi Grayscale

R = nilai red channel pada piksel G = nilai green channel pada piksel B = nilai blue channel pada piksel

2.2.2.2 Normalized RGB

Normalized RGB sering disebut dengan warna murni. Proses normalisasi RGB merupakan proses pengubahan nilai RGB dalam range 0 sampai 1 yang dibentuk secara independen dari berbagai tingkat pencahayaan. Jumlah dari nilai red, green dan blue channel yang telah dinormalisasi adalah 1. Ketiga channel yang telah dinormalisasi tersebut tidak memiliki informasi yang signifikan dan dapat diabaikan, sehingga dapat mengurangi dimensi ruang. Proses normalisasi RGB dilakukan dengan persamaan 2.2 sampai 2.4 (Ennehar, et al., 2010).

(3)

= + + = + + = + +

Dimana : R’ = nilai red channel yang telah dinormalisasi pada piksel G’ = nilai green channel yang telah dinormalisasi pada piksel B’ = nilai blue channel yang telah dinormalisasi pada piksel R = nilai red channel pada piksel

G = nilai green channel pada piksel B = nilai blue channel pada piksel

2.2.2.3 RGB to HSV Conversion

HSV (Hue, Saturation, Value) memiliki karakteristik utama dari warna tersebut, yaitu :

1. Hue, menyatakan warna yang sebenarnya, seperti merah, violet dan kuning, yang digunakan untuk menentukan kemerahan (redness), kehijauan (greeness) dan sebagainya.

2. Saturation, terkadang disebut chroma, mewakili tingkat intensitas warna.

3. Value, merupakan kecerahan dari warna. Nilainya berkisar antara 0-100%. Apabila nilainya 0 maka warnanya akan menjadi hitam. Semakin besar nilai value maka semakin cerah dan muncul variasi-variasi baru dari warna tersebut.

Citra yang tertangkap oleh kamera web memiliki warna RGB. Untuk mengurangi efek iluminasi pada sebuah citra, kita dapat mengkonversikan warna citra tersebut ke colour space yang lain. Pada penelitian sebelumnya, Zarit et al. pada tahun 1999 membandingkan performa colour space dan mendapatkan kesimpulan bahwa HSV colour space merupakan colour space terbaik untuk mendeteksi warna kulit. Adapun persamaan yang digunakan untuk mengkonversi warna RGB ke HSV yaitu seperti ditunjukkan pada persamaan 2.5 sampai 2.8 dibawah ini (diambil dari www.docs.opencv.org) :

(2.2)

(4)

= max ( , , )

2.2.2.4 RGB to YCbCr Conversion

YCbCr merupakan suatu ruang warna yang sering digunakan pada studio televisi eropa dan untuk kompresi citra. Ruang warna ini memiliki 3 (tiga) channel, yaitu :

1. Y, merupakan komponen single yang menyimpan informasi luminance

2. Cb, merupakan komponen yang menyimpan informasi chrominance dan

merepresentasikan perbedaan antara komponen blue channel dan nilai referensi

3. Cr, merupakan komponen yang menyimpan informasi chrominance dan

merepresentasikan perbedaan antara komponen red channel dan nilai referensi Dalam pendeteksian warna kulit yang bervariasi dan memiliki sensitivitas untuk beberapa faktor seperti kondisi pencahayaan, karakteristik individu, etnis, karakteristik kamera, dan sebagainya, pemilihan ruang warna sangatlah berpengaruh. Pada penelitian sebelumnya, Premal & Vinsley pada tahun 2014 mendeteksi adanya kebakaran hutan menggunakan ruang warna YCbCr dan menyimpulkan bahwa ruang warna ini sangat

(2.7)

(5)

baik mendeteksi warna walaupun dalam keadaan pencahayaan yang berubah-ubah, karena ruang warna ini memisahkan antara luminance dan chrominance.

Adapun persamaan yang digunakan untuk mengkonversi warna RGB ke YCbCr yaitu seperti ditunjukkan pada persamaan 2.9 sampai 2.11 dibawah ini (diambil dari www.docs.opencv.org) :

= 0.299. + 0.587. + 0.114. = ( − ). 0.713 +

= ( − ). 0.564 +

dimana

= 32768,128, 8 − 16 −

0.5, floating − point

Keterangan :

Y = nilai luminance channel pada piksel Cr = nilai chrominance red channel pada piksel Cb = nilai chrominance blue channel pada piksel R = nilai red channel pada piksel

G = nilai green channel pada piksel B = nilai blue channel pada piksel

2.2.3 Perbaikan Citra (Image Enhancement)

Tahap perbaikan citra dilakukan untuk meningkatkan kualitas citra agar lebih mudah diproses dan untuk menekankan karakteristik pada citra dengan cara memanipulasi parameter pada citra. Perbaikan citra memungkinkan informasi yang ingin ditampilkan atau diproses dari sebuah citra menjadi lebih baik dan jelas.

2.2.3.1 Erosion

(6)

sebuah citra. Kernel atau structuring element merupakan matriks berukuran m x n yang memiliki titik pusat.

Pada umumnya, proses erosi yang dilakukan pada sebuah citra menghasikan objek yang lebih kecil dan menghilangkan titik-titik objek menjadi bagian dari background berdasarkan kernel yang digunakan. Pada penelitian sebelumnya, Febriani, et al. pada tahun 2014 menggunakan proses erosi untuk menghilangkan objek lain diluar area optic disc dalam pengidentifikasian diabetic retinopathy melalui citra retina. Erosi dilakukan dengan persamaan 2.12 (Moeslund, 2012).

( , ) = ( , ) ⊖

Dimana : g(x,y) = citra hasil erosi dengan matriks x,y f(x,y) = citra asal dengan matriks x,y SE = Structuring Element atau kernel

Gambar 2.1. Erosion : Mengambil Nilai Minimum Daerah Kernel B (Bradski & Kaehler, 2008)

Gambar 2.1 menunjukkan bahwa proses erosi menghitung nilai minimum setiap piksel dari citra asal A yang berada di daerah kernel B dan menghasilkan gambar baru dengan cara menggantikan nilai titik pusat kernel dengan nilai minimum yang didapatkan. Perhitungan akan dilakukan pada setiap piksel citra asal A (Bradski & Kaehler, 2008).

(7)

2.2.3.2 Dilation

Dilation merupakan kebalikan dari proses erosi. Dilation atau dilasi merupakan salah satu operasi morfologi citra yang menghitung nilai maksimum lokal berdasarkan area kernel atau structuring element. Pada umumnya, proses dilasi yang dilakukan pada sebuah citra menghasikan objek yang lebih besar dan meleburkan titik-titik objek menjadi bagian dari objek berdasarkan kernel yang digunakan. Dilasi dilakukan dengan persamaan 2.13 dibawah ini (Moeslund, 2012).

( , ) = ( , ) ⊕

Dimana : g(x,y) = citra hasil erosi dengan matriks x,y f(x,y) = citra asal dengan matriks x,y SE = Structuring Element atau kernel

Gambar 2.2. Dilation : Mengambil Nilai Maximum Daerah Kernel B (Bradski & Kaehler, 2008)

Gambar 2.2 menunjukkan bahwa proses dilasi menghitung nilai maksimum setiap piksel dari citra asal A yang berada di daerah kernel B dan menghasilkan gambar baru dengan cara menggantikan nilai titik pusat kernel dengan nilai maksimum yang didapatkan. Perhitungan akan dilakukan pada setiap piksel citra asal A (Bradski & Kaehler, 2008).

(8)

2.2.3.3 Gaussian Blur

Blurring (pengaburan), sering juga disebut smoothing, merupakan pemerataan nilai piksel-piksel tetangga yang menghilangkan detail halus dari suatu citra. Pada penelitian ini, teknik blurring yang digunakan adalah Gaussian Blur. Gaussian Blur merupakan teknik pengaburan suatu citra menggunakan fungsi Gaussian, yang digunakan untuk mengurangi noise pada citra dan mengurangi detail (Nayakwadi & Pokale, 2014).

Gaussian blur telah banyak digunakan pada penelitian sebelumnya, seperti pada penelitian yang dilakukan oleh Zhaoxue, et al. pada tahun 2008 yang melakukan segmentasi bentuk hati secara otomatis pada CT (Computerized Tomography) Image berdasarkan Gaussian blurring pada citra biner. Dalam penelitian ini dapat disimpulkan bahwa Gaussian Blur cukup efisien sebagai langkah awal untuk digunakan perfusi hati berdasarkan citra CT abdomen.

Persamaan fungsi Gaussian untuk satu dimensi ditunjukkan pada persamaan 2.14.

( ) =

Maka untuk citra dua dimensi, persamaan fungsi Gaussian berubah menjadi seperti ditunjukkan pada persamaan 2.15.

( , ) =

Dimana : G(x) = citra hasil Gaussian Blur

2.2.4 Thresholding

Thresholding merupakan teknik binerisasi yang digunakan untuk mengubah citra keabuan menjadi citra biner. Thresholding dapat digunakan dalam proses segmentasi citra untuk mengidentifikasi dan memisahkan objek yang diinginkan dari background berdasarkan distribusi tingkat keabuan atau tekstur citra (Liao, et al.,

(2.14)

(9)

2001). Proses thresholding menggunakan nilai batas (threshold) untuk mengubah nilai piksel pada grayscale image menjadi hitam atau putih.

Teknik thresholding telah banyak dilakukan pada penelitian sebelumnya, seperti penelitian yang dilakukan oleh Du & Chang pada tahun 2002 yang melakukan proses thresholding pada video untuk mendeteksi teks. Pada penelitian ini disimpulkan bahwa teknik thresholding sudah umum digunakan untuk mendeteksi dokumen dan dapat mengatasi background yang kompleks pada citra keabuan. Adapun beberapa tipe thresholding yang dapat diimplementasikan pada sebuah citra keabuan, yaitu :

1. Threshold Binary

Pada jenis threshold ini, jika nilai piksel pada citra lebih besar dari nilai threshold, maka nilai piksel akan diganti dengan nilai maxval, sebaliknya jika nilai piksel citra keabuan lebih kecil dari threshold maka nilai piksel akan diganti dengan 0 (hitam). Operasi threshold binary dapat dilakukan dengan persamaan 2.16.

( , ) = , 0( , ) > ℎ ℎ

Dimana : src(x,y) = citra keabuan yang akan diproses dst(x,y) = citra hasil threshold binary thresh = nilai threshold

maxVal = nilai maksimum yang akan digunakan

Proses threshold binary dapat diilustrasikan pada Gambar 2.3.

Gambar 2.3. Threshold Binary (diambil dari www.docs.opencv.org)

2. Threshold Binary Inverted

Jenis threshold ini adalah kebalikan dari threshold binary. Threshold binary inverted akan mengganti nilai piksel menjadi nilai 0 jika nilai piksel citra keabuan lebih kecil dari threshold, sebaliknya jika nilai piksel pada citra keabuan lebih besar

(10)

dari nilai threshold maka nilai piksel akan diganti dengan nilai maxval. Operasi threshold binary inverted dapat dilakukan dengan persamaan 2.17.

( , ) = 0, ( , ) > ℎ ℎ

Dimana : src(x,y) = citra keabuan yang akan diproses dst(x,y) = citra hasil threshold binary inverted thresh = nilai threshold

maxVal = nilai maksimum yang akan digunakan

Proses threshold binary inverted dapat diilustrasikan pada Gambar 2.4.

Gambar 2.4. Threshold Binary Inverted (diambil dari www.docs.opencv.org)

3. Threshold Truncate

Pada jenis threshold ini, nilai maksimum pada piksel adalah nilai threshold. Jika nilai piksel pada citra keabuan lebih besar, maka nilai tersebut akan dipotong. Operasi threshold truncate dapat dilakukan dengan persamaan 2.18.

( , ) = ℎ ℎ , ( , )( , ) > ℎ ℎ

Dimana : src(x,y) = citra keabuan yang akan diproses dst(x,y) = citra hasil threshold binary inverted thresh = nilai threshold

Proses threshold binary truncate dapat diilustrasikan pada Gambar 2.5 .

(2.17)

(11)

Gambar 2.5. Threshold Truncate (diambil dari www.docs.opencv.org)

4. Threshold to Zero

Threshold to zero akan menggantikan nilai piksel menjadi 0 (hitam) jika nilai piksel pada citra keabuan lebih kecil daripada nilai threshold. Operasi threshold to zero dapat dilakukan dengan persamaan 2.19.

( , ) = ( , ), 0( , ) > ℎ ℎ

Dimana : src(x,y) = citra keabuan yang akan diproses dst(x,y) = citra hasil threshold binary inverted thresh = nilai threshold

Proses threshold binary truncate dapat diilustrasikan pada Gambar 2.6.

Gambar 2.6. Threshold to Zero (diambil dari www.docs.opencv.org)

5. Threshold to Zero Inverted

Jenis threshold ini merupakan kebalikan dari threshold to zero. Threshold to zero inverted akan menggantikan nilai piksel menjadi 0 (hitam) jika nilai piksel pada citra keabuan lebih besar daripada nilai threshold. Operasi threshold to zero dapat dilakukan dengan persamaan 2.20.

( , ) = 0, ( , ) > ℎ( , )

(2.19)

(12)

Dimana : src(x,y) = citra keabuan yang akan diproses dst(x,y) = citra hasil threshold binary inverted thresh = nilai threshold

Proses threshold binary truncate dapat diilustrasikan pada Gambar 2.7.

Gambar 2.7. Threshold to Zero Inverted (diambil dari www.docs.opencv.org)

2.2.5 Inversi

Inversi merupakan proses negatif pada citra, dimana setiap nilai piksel pada citra dibalik dengan acuan threshold yang diberikan (Febriani, 2014). Pada umumnya, proses inversi yang dilakukan pada sebuah citra untuk memperjelas warna putih atau abu-abu pada bagian gelap. Pada penelitian sebelumnya, Febriani, et al. pada tahun 2014 menggunakan proses inversi untuk melakukan proses perkalian citra dengan citra hasil proses contrast stretching agar menghasilkan citra optic disc yang tereliminasi dalam pengidentifikasian diabetic retinopathy melalui citra retina. Untuk citra 8 bit, proses inversi dilakukan dengan persamaan 2.21.

( , ) = 255 − ( , )

Dimana : src(x,y) = nilai piksel pada citra input

dst(x,y) = nilai piksel pada citra setelah proses inversi

2.3 Average Background

Metode average background pada dasarnya menghitung nilai rata-rata dan standard deviasi dari setiap piksel yang didefinisikan sebagai model background. Metode ini merupakan salah satu cara yang dapat mengatasi kelemahan pada proses background subtraction (Bradski & Kaehler, 2008). Average background telah digunakan sebelumnya pada penelitian sebelumnya, seperti pada tahun 2015, Goswami, et al.

(13)

melakukan penelitian untuk mendeteksi kejadian yang tidak biasa terjadi di sekitar mesin ATM, guna untuk meningkatkan keamanan ATM. Pada penelitian ini disimpulkan bahwa metode ini dapat membantu mempercepat performa sistem pendeteksi walaupun hanya menggunakan kamera yang memiliki resolusi yang rendah. Ada empat tahap yang dilakukan pada metode ini yaitu :

1. Mengakumulasikan atau mengumpulkan frame-frame video dengan jarak waktu tertentu

2. Melakukan proses frame differencing pada frame-frame video yang telah diakumulasikan, lalu mencari nilai rata-rata piksel yang berbeda diantara frame 3. Segmentasi citra background dengan proses thresholding

4. Inversi citra hasil thresholding

Seperti yang telah dijabarkan diatas, terdapat proses frame differencing dan background subtraction pada metode average background. Berikut ini adalah penjelasan tentang kedua teknik tersebut.

2.3.1 Background Subtraction

Background subtraction merupakan proses untuk mendeteksi pergerakan atau perbedaan signifikan yang terjadi pada frame video ketika dibandingkan dengan citra referensi. Tujuan dari background subtraction yaitu untuk memisahkan objek dan background sehingga gerakan dari sebuah objek dapat terdeteksi.

Teknik ini mendefinisikan frame video pertama sebagai background lalu mendeteksi perbedaan yang terjadi pada frame-frame selanjutnya, sehingga dapat didefinisikan sebagai pergerakan objek. Proses background subtraction dilakukan dengan persamaan 2.22 dan 2.23 dibawah ini (Alex & Wahi, 2014).

( , ) = ( , ) − ( , )

( , ) = 1 ∶0 ∶ ( , ) ≤ ( , ) >

Dimana : Rk (x,y) = citra hasil perbedaan frame

fk (x,y) = citra frame

B (x,y) = citra background T = nilai threshold

(2.22)

(14)

Background subtraction memiliki kelebihan yaitu mudah untuk diimplementasi dan cepat, namun juga memiliki kekurangan ketika terjadi perubahan iluminasi atau pencahayaan pada video karena juga akan terdefinisi sebagai perbedaan piksel (Bradski & Kaehler, 2008). Teknik background subtraction telah digunakan pada penelitian sebelumnya, seperti penelitian yang dilakukan oleh Intachak & Kaewapichai pada tahun 2011, yang menggunakan teknik tersebut untuk video traffic monitoring.

2.3.2 Frame Differencing

Frame differencing adalah suatu teknik sederhana yang yang digunakan untuk mendeteksi perbedaan piksel antara dua frame video. Teknik ini biasanya digunakan untuk mendeteksi pergerakan objek berdasarkan perbedaan piksel yang terjadi pada dua frame video dengan interval waktu yang singkat. Untuk mengetahui perbedaan frame video yang terjadi dilakukan perhitungan matematis dengan persamaan 2.24 sampai 2.26 (Alex & Wahi, 2014).

Differential :

= − , ( − 0 ) > 0

Negative Differential :

= | − | , 0 ( − ) > 0

Fully Differential :

= | − |

Dimana : Dk = hasil citra frame differencing

fk = citra frame

fk-1 = citra frame sebelumnya dengan interval waktu

Teknik frame differencing juga telah digunakan dalam penelitian sebelumnya seperti penelitian yang dilakukan oleh Kang & Hayes pada tahun 2015. Pada penelitian ini, teknik frame differencing digunakan dalam pengenalan wajah untuk personalisasi kendaraan.

(2.24)

(2.25)

(15)

2.4 Ekstraksi Fitur

Ekstraksi fitur merupakan proses yang menonjolkan ciri atau karakteristik pada suatu citra yang mengandung informasi penting untuk proses pengklasifikasian ataupun analisa data citra. Tujuan dari proses ekstraksi fitur adalah untuk meningkatkan efektivitas dan efisiensi dari proses analisa ataupun pengklasifikasian. Salah satu teknik computer vision untuk mengekstraksi fitur adalah dengan teknik pendeteksian contour, convex-hull dan convexity defects.

Pada penelitian sebelumnya, Youssef, et al. pada tahun 2010 menggunakan teknik tersebut untuk mengekstraksi fitur yang terdapat pada citra yang tertangkap oleh kamera dalam pengenalan aktifitas manusia yang dapat digunakan untuk pengawasan ataupun analisa medis. Berikut ini adalah penjelasan tentang ekstraksi fitur menggunakan contour, convex-hull dan convexity defects.

2.4.1 Contour

Kontur (contour) dapat didefinisikan sebagai suatu keadaan yang terjadi karena adanya perubahan intensitas pada piksel-piksel yang bertetangga. Dengan adanya perubahan intensitas ini, maka titik-titik tepi (edge) pada citra dapat terdeteksi. Kontur juga dapat didefinisikan sebagai urutan titik yang dapat menguraikan bentuk atau region (Williamson, A, 2014). Gambaran contour dapat dilihat pada Gambar 2.8.

Gambar 2.8. Contour (Dhawan & Honrao, 2013)

2.4.2 Convex-Hull

(16)

Gambar 2.9. Convex-Hull (Dhawan & Honrao, 2013)

2.4.3 Convexity Defects

Convexity defects merupakan titik atau vector yang diperoleh dari titik contour dan garis convex-hull. Convexity defects direpresentasikan dengan 4 (empat) elemen titik atau vector, yaitu :

1. Start_index, yaitu titik kontur yang mendefinisikan permulaan dari defects 2. End_index, yaitu titik kontur yang mendefinisikan akhir dari defects 3. Farthest_index, yaitu titik terjauh dari garis convex-hull ke titik kontur 4. Fix_depth, yaitu perkiraan fixed-point dari jarak antara titik terjauh dari garis

convex-hull ke titik kontur.

Gambaran convexity defects dapat dilihat pada Gambar 2.10.

(17)

2.4.4 Moment

Moment merupakan karakteristik dari titik kontur yang dihitung dengan mengintegrasikan seluruh piksel dari titik kontur. Momen biasanya digunakan untuk memandingkan dua titik kontur. Pada umumnya, moment dari sebuah titik kontur didefinisikan sebagai persamaan 2.27 sebagai berikut (Bradski & Kaehler, 2008).

,

= ∑

( , )

Dimana : m = moment

p = x-order

q = y-order

n = batas kontur

I(x,y) = citra hasil ekstraksi fitur

2.4.5 Center of Gravity

Center of Gravity (CoG) adalah titik tengah dari sebuah objek yang terdeteksi dari citra hasil ekstraksi fitur. Pada penelitian sebelumnya, Ling, et al. pada tahun 2013 memanfaatkan informasi dari titik center of gravity untuk menilai kemampuan keseimbangan tubuh manusia pada postur statis dan disimpulkan bahwa titik center of gravity pada tubuh manusia sangat baik dalam memberikan informasi tentang keseimbangan tubuh.

Titik CoG dapat diperoleh dari momen setiap titik kontur yang terdeteksi. Untuk menghitung titik center of gravity dapat dilakukan dengan persamaan 2.28 sebagai berikut (diambil dari www.docs.opencv.org) :

=

,

=

Dimana : x = koordinat x titik center of gravity y = koordinat y titik center of gravity m10 = moment dengan x-order 1 dan y-order 0

m01 = moment dengan x-order 0 dan y-order 1

m00 = panjang piksel dari kontur

(2.27)

(18)

2.5 OpenCV

OpenCV (Open Source Computer Vision Library) adalah sebuah API (Application Programming Interface) library yang menyediakan struktur data dan algoritma yang cepat dan efisien serta dapat digunakan untuk pengolahan citra dan real-time computer vision (Bradski & Kaehler, 2008).

Adapun 5 library yang terdapat pada OpenCV, yaitu :

1. CV, merupakan komponen yang berisikan algoritma dasar pengolahan citra digital dan computer vision yang lebih tinggi.

2. ML, merupakan komponen yang berisikan pustaka dari machine learning untuk pengklasifikasian statistical dan clustering tools yang mencakup algoritma seperti berikut :

a. Naïve Bayes Classifier

b. K-nearest Neighbor Algortithm c. Support Vector Machine d. Decision Tree

e. Boosting f. Random Forest

g. Expectation Maximization h. Neural Network

3. HighGUI, berisi fungsi-fungsi I/O untuk penyimpanan dan pembacaan video atau gambar.

4. CXCORE, berisi struktur data, support XML dan fungsi-fungsi grafis. 5. CvAux, berisi both defunct areas dan algoritma eksperimental.

(19)

2.6 Penelitian Terdahulu

Penelitian tentang pengenalan gerakan tangan (hand gesture recognition) dalam interaksi manusia-komputer telah banyak dilakukan dengan beberapa metode. Pada umumnya pengenalan gerakan tangan ini diimplementasikan untuk bahasa isyarat (sign language), robotik, virtual reality, permainan, dan lain-lain. Seperti yang telah dijelaskan sebelumnya, pengenalan gerakan tangan terbagi atas dua jenis yaitu pengenalan gerakan tangan statis dan pengenalan gerakan tangan dinamis.

Pada tahun 2014, Ramjan, et al. menggunakan algoritma Blob Detection COG untuk ekstraksi fitur dan Template/Pattern Matching untuk mengenali gerakan tangan dinamis. Penelitian ini diimplementasikan untuk menulis pada notepad menggunakan gerakan tangan dengan fasilitas ekstra dengan berbagai bahasa seperti bahasa Jepang, Gujarati, Tamil, Kanada, dsb.

Pada penelitian lainnya juga telah dilakukan untuk pengenalan gerakan tangan statis. Jalab, A. H. pada tahun 2012 menggunakan jaringan saraf tiruan untuk mengenali gerakan tangan secara statis. Metode ekstraksi fitur yang digunakan adalah algoritma Wavelet Network dan Artificial Neural Network (ANN). Dalam tahap uji coba, dilakukan pengujian 60 citra gerakan tangan dengan jumlah noise Gaussian yang berbeda-beda dan dibagi menjadi 6 kelas. Adapun tingkat akurasi hasil uji coba tersebut yaitu 97%. Selanjutnya pada tahun 2013, Nagarajan & Subashini melakukan penelitian untuk mengenali bahasa isyarat huruf alphabet sesuai dengan American Sign Language dengan menggunakan metode Edge Oriented Histogram untuk ekstraksi fitur dan menggunakan algoritma Multiclass SVM untuk mengenali gerakan tangan statis. Pada penelitian ini didapat kesimpulan bahwa algoritma Multiclass SVM dapat memberikan akurasi yang baik sebesar 93.75% dalam mengklasifikasikan gerakan tangan statis.

(20)

tersebut dapat disimpulkan bahwa teknik computer vision sangat mudah dan cepat untuk diimplementasi dalam pengenalan gerakan tangan.

Yesugade, et al. pada tahun 2014 juga meneliti tentang pengenalan gerakan tangan dengan menggunakan metode sederhana yaitu Blob Detection untuk ekstraksi fitur untuk pengenalan gerakan tangan. Penelitian ini berfokus pada pemanfaatan pengenalan gerakan tangan dalam berbagai fungsionalitas seperti mouse control, kalibrasi single-pointer, kalibrasi multi-pointer, winamp control dan gaming control. Namun pada penelitian ini terdapat batasan dalam keadaan background dan kondisi pencahayaan.

Penelitian terkait lainnya dilakukan oleh Yi & Liangzhong pada tahun 2010, yaitu mendeteksi objek yang bergerak dengan menggunakan metode average background. Pada penelitian ini disimpulkan bahwa metode tersebut dapat mendeteksi background dengan tingkat kompleksitas dalam komputasi yang rendah. Rangkuman dari penelitian terdahulu dapat dilihat pada Tabel 2.1.

Tabel 2.1 Penelitian Terdahulu

No. (Tahun) Peneliti Metode Keterangan

1 Ramjan, et al

(2014) Ekstraksi Fitur : Blob Detection COG Recognition :

Template/Pattern Matching

 Pengenalan gerakan tangan dinamis

 Fungsi : untuk menulis pada notepad menggunakan gerakan waktu yang cukup lama dalam proses training

 Fungsi : untuk mengenali bahasa isyarat huruf alphabet sesuai dengan American Sign Language

(21)

Tabel 2.1 Penelitian Terdahulu (lanjutan)

No. (Tahun) Peneliti Metode Keterangan

 Semakin besar tingkat pembelajaran SVM, semakin besar pula tingkat akurasi yang dihasilkan. Namun hal ini

dan convexity defects  Pengenalan gerakan tangan statis  Fingertips Counting merupakan

metode yang sederhana, cepat dan mudah untuk

diimplementasi 5 Yesugade, et al

(2014) Blob Detection  statisPengenalan gerakan tangan 

 Berfokus pada pemanfaatan

Average Background Pendeteksian background

 Berfokus pada penggunaan

metode yang memiliki

kompleksitas dalam komputasi yang rendah

Perbedaan penelitian yang dilakukan dengan penelitian terdahulu adalah penelitian ini berfokus pada kesederhanaan metode dan kemudahan pengguna dalam kebebasan penggunaan. Berikut ini adalah metode beserta alasan penggunaan metode yang akan diterapkan pada penelitian ini.

 Menggunakan kombinasi ruang warna HSV dan YCbCr, yaitu HSCbCr untuk

mendeteksi warna kulit, sehingga pengguna tidak perlu menggunakan alat seperti Kinect ataupun data glove.

 Menggunakan metode average background untuk menangani kondisi

background yang tidak diperlukan, sehingga dapat mempercepat proses pengenalan gerakan tangan.

Gambar

Gambar 2.1. Erosion : Mengambil Nilai Minimum Daerah Kernel B (Bradski & Kaehler, 2008)
Gambar 2.2. Dilation : Mengambil Nilai Maximum Daerah Kernel B (Bradski &
Gambar 2.3. Threshold Binary (diambil dari www.docs.opencv.org)
Gambar 2.4. Threshold Binary Inverted (diambil dari www.docs.opencv.org)
+7

Referensi

Dokumen terkait

Dengan adanya penelitian dengan menggunakan metode Simple Additive Weighting (SAW) dan Weighted Product (WP) diharapkan dapat menjadi bahan acuan pihak yayasan dalam

terkait keberlakuan Perma No.4 Tahun 2014 tentang Pedoman Pelaksanaan Diversi dalam SPPA khususnya penanganan petkara tindak pidana Anak yang telah kawin serta

Sampel dalam penelitian ini adalah seluruh pertandingan putra dari berbagai tim bola basket yang mengikuti kompetisi bola basket L.A Campus League 2013 di Bandung yang berjumlah 31

Dengan memanfaatkan penyedot debu portebel sebagai mesin utama penghisapnya ditunjang dengan motor DC sebagai motor penggerak roda belakang alat ini, servo

Sistem pgelapgoran manajemen bertujuan untuk mengumpgulkan data yang kemudian dipgroses untuk menghasilkan informasi atau lapgoran yang dipgerlukan oleh manajer dalam menentukan

Dalam The Giver , nilai tanggung jawab muncul secara intens terutama pada diri tokoh utama (Jonas) yang memiliki niat untuk mengubah cara pandang masyarakatnya.. yang ia

Adapun kesimpulan dalam penelitian ini adalah bahwa metode yang diusulkan mampu meminimalkan total biaya minimum lebih baik dibandingkan metode sebelumnya pada kasus sistem

Mengingat hal demikian maka di ciptakanlah sebuah sistem yang mampu membantu user dalam menerima informasi mengenai data penduduk ataupun aktifitas kependudukan pada