• Tidak ada hasil yang ditemukan

Sistem Antar Muka Senapan Pada Game Firs

N/A
N/A
Protected

Academic year: 2018

Membagikan "Sistem Antar Muka Senapan Pada Game Firs"

Copied!
8
0
0

Teks penuh

(1)

Sistem Antar Muka Senapan Pada Game First Person Shooter

Menggunakan Deteksi Gerak Obyek Berbasis Computer Vision

VIALLI HARDI

Jurusan Sistem Komputer,Fakultas Ilmu Komputer dan Teknologi Informasi-Universitas Gunadarma, Margonda Raya 100 Depok 16424 telp (021) 78881112, 7863788

hvialli@yahoo.com

Abstrak

Game FPS (First Person Shooter) pada platform PC (Personal Computer) yang ada pada saat ini masih menggunakan media mouse dan keyboard dalam kontrol game FPS, sehingga kebebasan gerak kurang interaktif dan kurang efesien. Media kontrol game FPS yang menggunakan senapan hanya digunakan pada platform konsol seperti pada XBOX Kinect, PS3 Move dan Nintendo wii. Dalam beberapa tahun terakhir computer vision dikembangkan kedalam sebuah game dengan teknik pengolahan citra melalui web-camera untuk menangkap setiap gerakan.

Berkaitan dengan hal tersebut maka dibuatlah sebuah kontrol game FPS untuk platform PC. Penelitian ini bertujuan untuk merancang dan membangun sebuah alat pengendali game FPS melalui sebuah web-camera (motion tracking) dan Arduino Leonardo, untuk mendeteksi arah gerakan senapan yang dikendalikan pemain, agar pemain bergerak lebih interaktif dalam memainkan game FPS.

Kata Kunci : FPS, Computer vision, web-camera, motion tracking, Arduino Leonardo

1. Pendahuluan

Teknologi computer vision saat ini berkembang dengan sangat pesat. Perkembangan ini ditunjang oleh kemajuan teknologi mikroprosesor dan perkembangan mikroelektronik seperti web-camera dan digital camera. Salah satu teknologi computer vision adalah motion tracking (Deteksi Gerak).

Game FPS pada platform PC masih menggunakan media mouse dan keyboard dalam kontrol game FPS. Media kontrol game FPS yang menggunakan media senapan hanya digunakan pada platform konsol seperti pada XBOX Kinect, PS3 Move dan Nintendo wii. Oleh karena itu dibutuhkan suatu media kontrol game untuk platform PC yang interaktif dan menarik dalam penggunaannya.

Dengan menggunakan teknologi computer vision memungkinkan ruang gerak pemain menjadi lebih luas dalam mengendalikan sebuah game. Memanfaatkan sebuah web-camera untuk

menangkap setiap gerakan, dan sebuah obyek untuk pembacaan gerakan yang ditangkap oleh web-camera. Analog thumb digunakan untuk navigasi gerak lebih efesien agar pemain bebas menggerakan game FPS kesegala arah. Pemain dapat mengendalikan gerak game menggunakan senapan sungguhan sehingga game terasa seperti nyata.

Perangkat lunak yang digunakan dalam pembangunan sistem motion tracking kendali game FPS merupakan software berlisensi open source. Pembangunan sistem dilakukan menggunakan pemrograman perangkat lunak opensource IDE Code Blocksdan library OpenCV. Sedangkan, pemrograman perangkat keras menggunakan IDE arduino.

(2)

bergerak lebih interaktif dalam memainkan game FPS.

1.2 Metode Penelitian

Pada bagian ini dilakukan pengumpulan mengenai informasi-informasi yang berkaitan dengan motion tracking seperti : a. Studi Pustaka, yaitu mengambil

beberapa data yang berasal dari berbagai sumber seperti buku, jurnal, artikel dan internet dimana isi dari sumber-sumber tersebut dijadikan referensi dan acuan dalam penulisan akhir ini.

b. Analisis kebutuhan, yaitu melakukan pembuatan simulasi alat, percobaan-percobaan dan pengambilan data terhadap beberapa alat seperti analog thumb dan push button.

c. Konsultasi, yaitu bertanya kepada beberapa personal yang ahli dalam bidangnya masing-masing.

2. Tinjauan Pustaka

2.1 Computer Vision

Computer vision pada hakekatnya meniru sistem visual manusia (human vision), dimana manusia melihat objek dengan mata lalu diteruskan ke otak untuk di intepretasikan sehingga manusia dapat mengetahui apa yang tampak dalam penglihatannya dan apa yang harus dikerjakan. Computer vision merupakan proses otomatis yang mengintegrasikan proses visual seperti akusisi gambar, pengolahan gambar, analysis, recognition dan membuat keputusan serta melakukan aksi tertentu, misalnya memandu robot, mengontrol peralatan, memantau proses manufaktur [1].

2.2 Pengolahan Citra Digital

Citra digital dinyatakan dengan matriks berukuran N x M (baris/ tinggi = N, kolom/ lebar = M). Setiap titik memiliki koordinat

dan biasanya dinyatakan dalam bilangan bulat positif, yaitu 0 atau 1 bergantung pada sistem yang digunakan. Format nilai piksel sama dengan format citra keseluruhan. Pada kebanyakan sistem pencitraan, nilai ini biasanya berupa bilangan bulat positif juga. Citra digital dinyatakan dengan matriks berukuran N x M dapat dilihat pada Gambar 2.2 dan Ilustrasi sistem koordinat piksel dilihat pada Gambar 2.3.

Gambar 2.2 Matriks Citra Digital MxN [4]

Gambar 2.3 Koordinat Citra Digital [4]

2.3 Motion Tracking

(3)

Motion merupakan pergerakan atau arah pergerakan yang terlihat dilakukan objek atau yang terjadi terhadap objek akibat pergantian frame.

Tujuan dari Motion tracking adalah untuk mendeteksi dan melacak obyek bergerak melalui urutan gambar seperti yang diilustrasikan pada Gambar 2.4

Gambar 2.4

Tracking Obyek Melalui Urutan Video [6]

Teknik tracking yang digunakan menggunakan teknik blob detection. Blob detection digunakan untuk memfilter obyek, mengeksrak obyek dan mendapatkan dimensi obyek yang sudah dipisahkan oleh latar belakang hitam dengan memberi pelebelan pada obyek yang terdeteksi.

Gambar 2.5

Deteksi Obyek Warna pada Teknik Blob [7]

2.4 Thresholding

Operasi pengambangan (thresholding) digunakan untuk mengubah citra dengan format skala keabuan yang mempunyai kemungkinan nilai lebih dari 2, ke citra biner, yang hanya memiliki 2 buah nilai (0 atau 1). Pada threshold pixel dengan nilai lebih tinggi dari nilai threshold yang

diantisipasi akan disimpan dan yang dibawah nilai threshold akan diturunkan menjadi 0 dengan sebuah pixel x1 operasi untuk tiap-tiap pixel adalah

If (

x

1 < threshold)

x1

=0 ; else

x1

= 1;

Untuk contoh hasil dari threshold dapat dilihat pada gambar 2.6

Gambar 2.6

Contoh Hasil Threshold pada Obyek Warna Biru 2.5 Model Warna HSV

Model warna HSV mendefinisikan warna dalam terminologi Hue, Saturation dan Value. Hue menyatakan warna sebenarnya, seperti merah, violet, dan kuning. Hue digunakan untuk membedakan warna-warna dan menentukan kemerahan (redness), kehijauan (greeness), dsb, dari cahaya. Hue berasosiasi dengan panjang gelombang cahaya. Saturation menyatakan tingkat kemurnian suatu warna, yaitu mengindikasikan seberapa banyak warna putih diberikan pada warna. Value adalah atribut yang menyatakan banyaknya cahaya yang diterima oleh mata tanpa memperdulikan warna.

(4)

3. Perancangan Sistem 3.1 Rancangan Sistem

Sebelum sistem diimplementasikan, terebih dahulu dibuat sistematika rancangan pada keseluruhan sistem.

Rancangan sistem pada Gambar 3.1, merupakan keseluruhan perancangan untuk mengimplementasikan tugas akhir ini. Dimana pada tahap awal user adalah pemain yang akan mengendalikan arah gerakan senapan (navigasi). Pada senapan diberi obyek yang berupa warna RGB dan analog analog thumb untuk kontrol navigasi. Web-camera akan mendeteksi adanya obyek berupa warna RGB. Setalah mendeteksi adanya obyek warna RGB, setelah itu warna RGB tersebut akan diterima oleh komputer melalui web-camera untuk proses segmentasi menjadi warna HSV dan dikonversi menjadi warna threshold. Proses segmentasi dan konversi diolah menggunakan fungsi-fungsi pada library OpenCV. Kontrol navigasi analog thumb akan menghasilkan data koordinat x,y. Data koordinat akan diterima dan diproses oleh Arduino Leonardo. Data yang diolah arduino berupa karakter keyboard akan dikirim ke komputer melalui komunikasi serial untuk menggerakan navigasi pada game FPS.

3.1 Perancangan Berdasarkan Fungsi Dasar

Secara umum perancangan sistem yang akan dibuat dapat dilihat pada Gambar 3.2.

Alat pendeteksi dan kontrol terbagi kedalam dua bagian, vision dan HID (human interface device). Pada bagian masukan terdiri dari Web-camera yang digunakan sebagai alat pendeteksi obyek adalah web-camera Logitech c170 dengan 30 fps (frame per second) dan obyek yang dideteksi berupa warna RGB.

Gambar 3.2 Blok Diagram

Bagian proses, PC (personal computer) menerima dua data berbeda, yaitu data berupa hasil deteksi dan data virtual key code. Masing-masing data diolah dengan proses yang berbeda. Proses pertama menggunakan perangkat lunak Code::block untuk compiler dan library OpenCV untuk pengolahan data vision. Proses kedua hasil dari analog thumb berupa koordinat x,y diproses di Arduino dan dikirm ke PC berupa karakter keyboard.

Hasil keluaran yang dihasilkan dari pengolahan data vision berupa informasi posisi koordinat x,y dan pergerakan pointer mouse.

3.2 Proses Pengambilan Data

Pada proses ini web-camera akan meng-capture obyek warna dan akan diolah di library OpenCV. Untuk mencari daerah warna yang di capture digunakan metode color detection, metode ini bertujuan untuk mendeteksi warna yang dituju, dan membuang seluruh gambar yang tidak dimiliki oleh warna yang dituju. Jika warna yang dideteksi adalah warna kuning maka, web-camera akan mendeteksi lokasi warna kuning dengan membuang semua gambar yang tidak memiliki warna kuning.

(5)

Untuk proses pengambilan data dilakukan di OpenCV. Dalam penggunaana library OpenCV dengan menggunakan bahasa pemrogramman C++, diperlukan beberapa library yang di include untuk menghubungkan antara sistem yang dibangun dengan library openCV.

3.3 Segmentasi Warna

Setelah web-camera terkoneksi dengan library OpenCV, langkah proses berikutnya adalah proses segmentasi warna. Proses ini dilakukan dengan cara mengklasifikasi berdasarkan warna obyek. Dalam pengambilan obyek warna melingkupi proses konversi warna RGB ke HSV (Hue Saturation Value), threshold, filter, dan smoothing.

Gambar 3.11

Flowchart Proses Segmentasi Warna

3.3.1 Deteksi Obyek Blob

Dalam mendapatkan posisi koordinat x,y dari proses deteksi obyek tidak semua warna diklasifikasi. Hanya warna HSV yang nilai parameternya ditetapkan. flowchart pada proses deteksi obyek blob dapat dilihat pada Gambar 3.13

Gambar 3.13

Flowchart Deteksi Obyek Blob

4.1 Pengujian

Pada bagian ini dilakukan pengujian terhadap program, pengujian ini didasarkan pada parameter-parameter yang telah ditentukan. Parameter-parameter ini meliputi keakuratan serta sensitivitas pengujian yang dilakukan meliputi :

 Pengujian dengan mengukur hasil nilai HSV dengan menggunakan beberapa obyek warna.

 Pengujian terhadap fps (frame per second) pada web-camera dengan mengkukur kecepatan motion tracking pada obyek warna

 Pengujian terhadap arah motion tracking obyek warna berdasarkan pada sudut arah senapan pada game FPS.  Pengujian dengan mengukur tingkat

keakuratan nilai analog pada analog thumb.

4.1.1 Pengujian Deteksi Warna HSV

(6)

dan dijadikan parameter untuk motion tracking pada obyek warna.

4.1.2 Pengujian Kecepatan Motion Tracking Obyek Warna

Pada pengujian ini dilakukan untuk menguji kemampuan sensitifitas frame per second (fps) web-camera dalam melakukan motion tracking pada obyek warna. Pengujian terhadap motion tracking ini dilakukan dengan cara melakukan

pergerakan obyek warna dari posisi ke posisi

lain.

Tabel 4.2 Pengujian Kecepatan Motion tracking

Pengujian Diam Sedang Cepat 1 Terdeteksi Terdeteksi Terdeteksi 2 Terdeteksi Terdeteksi Delay 1s 3 Terdeteksi Terdeteksi Delay 1s 4 Terdeteksi Terdeteksi Terdeteksi 5 Terdeteksi Terdeteksi Terdeteksi 6 Terdeteksi Delay 1s Delay 1s Rata-rata 100% 83,3% 50%

4.1.3 Pengujian Posisi Motion Tracking Obyek Warna

Pengujian terakhir pada motion tracking ini dilakukan dengan beberapa variasi posisi sudut searah jarum jam yang dibentuk oleh obyek warna pada senapan, diantaranya 0o (normal), 30o , 45o dan 90o. Masing-masing posisi dilakukan dalam waktu selama 1 menit setiap 1 posisi.

Tabel 4.3 Pengujian Posisi Motion tracking obyek warna

Pengujian 0o (normal) 30o 45o 90o 1 Terdeteksi Terdeteksi Gagal Gagal 2 Terdeteksi Terdeteksi Gagal Gagal 3 Terdeteksi Delay 1s Gagal Gagal 4 Terdeteksi Delay 2s Gagal Gagal 5 Terdeteksi Gagal Gagal Gagal 6 Terdeteksi Gagal Gagal Gagal Rata-rata 100% 33,33% 0% 0%

4.1.4 Pengujian motion tracking pada Game FPS

Pengujian dilakukan dengan menguji sensitifitas dan akurasi motion tracking pada obyek warna yang dideteksi oleh web-camera ke dalam game FPS berdasarkan sudut arah senapan. Warna background saat melakukan pengujian motion tracking tidak boleh memiliki kemiripan dangan obyek warna.

Warna background yang digunakan pada motion tracking memiliki kemiripan dengan warna obyek warna, maka hasil motion tracking tidak akurat dan menghasilkan beberapa threshold dan area titik point pada obyek warna. Pada Gambar 4.1 merupakan hasil pengujian pada warna background memiliki kemiripan warna dengan obyek.

Gambar 4.1

(7)

Gambar 4.2

Pengujian arah motion tracking pada game FPS

Pengujian pada arah motion tracking pada game FPS dilakukan dengan mencoba 4 arah, arah atas, bawah, kanan, kiri. Hasil pengujian pada Gambar 4.2 diatas, didapatkan hasil sesuai dengan arah yang ditentukan.

4.1.5

Pengujian

Analog thumb

dan

Push

Button

Pengujian dilakukan dengan menguji analog thumb ke 8 arah, yaitu arah atas, bawah, kiri, kanan, kiri-atas, kiri-bawah, kanan-atas, dan kanan-bawah. Sedangkan pada push button dilakukan pengujian menggunakan karakter teks pada serial monitor. Push button terdiri dari 2 buah button, button 1 untuk jump (lompat) pada karakter dan button 2 untuk trigger (pelatuk) pada senapan.

Tabel 4.4 Nilai Analog Thumb

S

Hasil pengujian data diatas dijadikan acuan untuk nilai setiap pergerakan arah karakter

dalam game FPS dengan nilai konstan (nilai tetap).

4.1.6 Pengujian Push Button

Pengujian push button ini dilakukan dengan menekan button, dan melihat hasil keluaran pada serial monitor arduino Tujuan dari pengujian ini adalah untuk mengetahui kemampuan pengiriman dan penerimaan data.

Gambar 4.3 Karakter Push Button

Berdasarkan pengujian pada push button yang dilakukan dapat diketahui bahwa arduino dapat mengirim karakter dengan baik tanpa ada loss dan delay.

5.1 Kesimpulan

Telah dirancang sebuah sebuah kendali senapan yang mampu berinteraksi dengan game FPS (First Person Shooter) pada platfrom PC. Alat ini menggunakan prinsip motion tracking dengan mendeteksi obyek warna. Dari hasil penelitian yang telah dilakukan motion tracking pada obyek warna, bekerja cukup baik dalam prosesnya. Bekerja sesuai yang diharapkan dapat mendeteksi pergerakan titik target pada obyek warna dengan cepat. Sistem mampu menangkap obyek warna dengan baik pada kecepatan 1-2 detik. Nilai warna HSV yang didapatkan menjadi parameter pada masing-masing warna yang berbeda dan menjadi acuan untuk setiap warna.

(8)

digunakan pada motion tracking tidak boleh memiliki kemiripan dengan obyek warna.

Pada analog thumb menghasilkan nilai analog yang akurat sehingga pada pergerakan arah didapatkan nilai yang tetap/konstan, sehingga sistem pada analog thumb menghasilkan nilai sensitifitas dan akurasi yang baik.

5.2 Saran

Dalam pembangunan sistem berteknologi computer vision yang menggunakan teknik motion tracking disarankan menggunakan web-camera yang khusus untuk teknik motion tracking, seperti PS3 eye sehingga akan memperkecil pengaruh noise dari hasil deteksi obyek. Penambahan fungsi pada HSV dengan menggunakan metode segmentasi dengan menseleksi pada warna RGB agar pemasukan nilai integer tidak dilakukan secara manual. Membuat tampilan GUI, agar program menjadi lebih user friendly. Sistem yang dibuat masih menggunakan sistem built-in USB, untuk pengembangan lebih lanjut digunakan sistem WiFi sehingga tidak membutuhkan koneksi menggunakan kabel USB.

DAFTAR PUSTAKA

[1] Albert Pujol, at All, "Real Time Pharmaceutical”, Product Recognition Using.

[2] Universitas Binus, “Introduction to computer vision system”, revisi 1. 2005.

[3] Tim Morris (2004), “Computer Vision and Image Processing”, Palgrave Macmillan.

[4] Suhendra, Adang. “Catatan Kuliah

Pengantar Pengolahan Citra”,

Universitas Gunadarma.

[5] Nalwan, Agustinus, “Pemrograman Animasi dan Game Profesional”, Elex Media Komputindo, Jakarta, 1998.

[6] Labian,Wauthier, “Motion Tracking

Project Synopsis, , university of california, Berkeley.

[7] Anonim, “Code::Block”,

http://www.codeblocks.org/index.php (diakses 30 juli 10:09 AM)

[8] Gunanto, S.G. (2009). “Segmentasi

warna bagian tubuh manusia pada citra 2D”, Proceeding SENTIA.

[9] Jeong, Sangoh, “Histogram-Based

Color Image Retrieval”,

Psych221/EE362 Project Report. Mar.15, 2001.

[10] Anonim, “thumb stick”, https://www.sparkfun.com/search/result s?term= thumb+ stick&what=products (diakses 30 juli 11:11 PM)

[11] Arifianto, Deni , “Funatik. Ari, Anti Gaptek Hardware Komputer”. Jakarta. Kawan Pustaka 2009

[12] Anonim, “Arduino”, http://arduino.cc (diakses 30 juli 6:28 AM)

[13] Anonim, “Arduino Leonardo with Headers” , https://www.sparkfun.com/ products/11286 (diakses 23 Juli 11.30 PM)

[14] Atmel, “8-bit AVR microcontroller with 32KByte In-System Programable of flash” , Atmel Inc, USA, Februari 2010.

[15] G. Bradski, Kehler, Adrian, “Learning OpenCV First”, ed. New Yourk: O'Relly, 2008.

[16] Fadlisyah, Computer Vision dan Pengolahan Citra: Andi, 2007.

Gambar

Gambar 2.2 dan Ilustrasi sistem koordinat
Gambar 3.1 Rancangan Sistem
Gambar 3.13
Tabel 4.3 Pengujian Posisi Motion tracking
+2

Referensi

Dokumen terkait

Hasil penelitian ini menunjukan bahwa upaya kecakapan personal remaja memiliki nilai rata-rata 29.34 (SD = 4.52) yang berarti kemampuan remaja dalam kecakapan personal

Metode yang di usulkan pada penelitian ini adalah metode data mining dengan menggunakan pendekatan algoritma decisison tree, dan dapat diterapkan pada studi kasus

Dari semua grafik di atas menunjukan bahwa perlakuan yang diberikan terhadap serangan penyakit diplodia pada tanaman jeruk secara statistik belum memberikan hasil yang

Pegawai, karena Kecamatan Banjar Kota Banjar belum mempunyai pegawai yang dapat diberdayakan secara penuh. Pengaruh Pemberdayaan Sumber Daya Manusia melalui Faktor Memperlancar

Bila anda ingin melihat judul kembali, dalam mode judul, tekan dan tahan tombol [DISP] selama 3 detik atau lebih lama untuk melihat judul.. Fungsi pengubah CD BIla sebuah pengubah

Laba perusahaan yang diukur dengan rasio profitabilitas menunjukan kinerja dari manajemen,Apabila rasio profitabilitas tinggi, berarti menunjukkan adanya efisiensi

5&#34; Pertah Pertahankan ankan higien higiene mul e mulut seb ut sebelum d elum dan sesu an sesudah m dah makan. &lt;ipertermi berhubung 777. &lt;ipertermi berhubungan dengan

Ini berarti tidak ada perbedaan rerata komedo, papul, pustul, dan jumlah lesi total antara awal dan akhir penelitian yang bermakna, Rerata nodul pada kedua kelompok dapat