Fakultas Ilmu Komputer
5277
Sistem Kendali Navigasi
Ar Drone
Berbasis Pengenalan Teks Dengan
Menggunakan Metode
Optical Character Recognition
Haqqi Rizqi
1, Gembong Edhi Setyawan 2, Wijaya Kurniawan3Program Studi Teknik Komputer, Fakultas Ilmu Komputer, Universitas Brawijaya
Email: 1abimanyurizqi@gmail.com, 2gembong@ub.ac.id, 3wjaykurnia@ub.ac.id
Abstrak
Quadcopter adalah satu bentuk Unmanned Aerial Vehicle(UAV) yang banyak dimanfaatkan dalam banyak sektor antara lain bidang pertahanan, pertanian dan bidang lainnya. UAV telah
membuktikan manfaatnya contoh seperti E-commerce Amazon yang memanfaatkan UAV sebagai media
pendistribusian barang kepada customer dengan jaminan pesanan akan sampai dalam waktu kurang dari
setengah jam. Selain itu banyak fitur Quadcopter yang telah dikembangkan seperti face recognition, object tracking dan pendaratan pada objek dan medan spesifik. Seiring dengan kemajuan kegunannnya yang semakin meluas dalam berbagai bidang dan sektor, fitur yang dimiliki perlu ditingkatkan lagi seperti fitur untuk melakukan gerakan navigasi otomatis dengan hanya membaca teks pada sebuah
gambar. Maka dalam penelitian ini dirancang sebuah sistem navigasi pada quadcopter dengan tipe Ar
Drone v2.0 dengan memanfaatkan optical character recognition yang berbasis pada pemrogaman grafik
menggunakan LabVIEW. Hasil pengujian yang dilakukan pada pengujian akurasi pembacaan teks
dengan didapati jarak terbaik adalah 1 meter dengan keberhasilan sebesar 100%.
Kata kunci: quadcopter, kendali navigasi, pengenalan teks, optical character recognition.
Abstract
Quadcopter is one of Unmanned Aerial Vehicle which is used such a field of defense, agriculture and other fields. UAVs have proven their usefulness like the Amazon E-commerce giant that uses UAV as a medium of delivery of orders to customers with guaranteed goods will arrive in approximately half an hour. Many features of developed Quadcopter UAVs such as face recognition, object tracking and landing on specific objects. Along with the benefits that are increasingly widespread in various areas of features owned needs to be upgraded again like a feature to perform automatic navigation by simply reading the text on an image. So in this study has designed a navigation system on the type of Ar Drone quadcopter using optical character recognition based on the graphical programming using LabVIEW. The result show accuracy of reading text found the best distance is 1 m with 100% success.
Keywords: quadcopter, navigation control, text recognition, optical character recognition.
1. PENDAHULUAN
Unmanned Aerial Vehicle (UAV) atau dalam bentuk populer quadcopter adalah salah satu wahana yang dapat terbang dengan
memanfaatkan gaya aerodinamik untuk
menghasilkan gaya angkat, quadcopter dapat terbang secara manual ataupun autonomus dan banyak digunakan dalam bidang militer maupun sipil (Hidayat, 2016). Quadcopter biasanya dilengkapi dengan berbagai sensor dan sebuah kamera untuk melakukan pekerjaan spesifik
seperti pendeteksian api menggunakan image
processing dan dengan fitur kamera tersebut
memungkinkan quadcopter untuk melakukan pengolahan gambar dalam bidang lain seperti militer dan pertanian (Abdullah, 2016).
Dari paparan tersebut menunjukan bahwa telah terjadi perkembangan dalam teknologi
pemanfaatan quadcopter pada umumnya yang
memungkinkan untuk menerapkan metode-metode kecerdasan yang dapat dimanfaatkan pada tujuan tertentu. Manfaat yang ingin dicapai berupa sebuah misi, misalnya misi mekanisme navigasi otomatis dengan memanfaatkan teks perintah pada suatu gambar yang ditangkap oleh
kamera quadcopter. Sistem navigasi mempunyai
serta yang terpenting sebagai estimator
parameter posisi dan sudut quadcopter
(Kharisman, 2014).
Pada penelitian ini bahasa pemrogaman
yang digunakan adalah graphical progamming
yang berbasis LabVIEW yang merupakan produk
dari National Instruments. LabVIEW memiliki
tools yang sangat lengkap meliputi tools
embedded, simulation control, communication protocol, image processing dan tools lainnya.
LabVIEW dirancang untuk tidak bergantung pada mesin sehingga dapat dipergunakan antar sistem operasi (Wijaya, 2016). Alasan lain
penggunaan LabVIEW adalah konsep dataflow
progamming yang digunakan memungkinkan untuk mengeksekusi kode program secara paralel sehingga bisa meningkatkan performa sistem secara baik, tidak hanya itu LabVIEW
dirancang untuk membangun sebuah sistem dengan waktu
yang cepat dan memudahkan pengguna serta pengembang (Rajput, 2013).
Optical character recognition atau dikenal dengan OCR merupakan salah satu metode pengolahan citra yang mengandung karakter
menjadi bentuk karakter ASCII yang dapat
dikenali oleh komputer (Mohammad et al.,
2014). OCR banyak digunakan dalam bidang
industri seperti industri farmasi dalam aplikasi pengecekan kode obat dan kapsul, dalam bidang industri otomotif untuk melakukan inspeksi pada kode komponen mesin (National Instruments, 2013). Pada implementasi dengan objek mobile robot OCR digunakan sebagai kendali navigasi robot dengan teks yang diletakkan pada signboard untuk selanjutnya dijadikan penentu navigasi robot, namun dalam penelitian tersebut output yang dihasilkan bukan dalam gerakan navigasi robot melainkan hanya dalam indikator tampilan gerakan yang akan dilakukan serta
penerapan OCR bukan pada quadcopter
(Vinutha, 2013). Dalam penelitian lain OCR digunakan sebagai metode following pada karakter tertentu yang akan dijalankan pada robot dengan memanfaatkan logika fuzzy sebagai inputan tambahan namun penelitian ini bersifat simulasi dan tidak diterapkan pada quadcopter sebagai objek penelitian (Sanjay et al., 2016)
Pada penelitian ini akan diimplementasikan metode optical character recognition dengan
menggunakan LabVIEW sebagai kendali
navigasi otomatis pada quadcopter berjenis Ar Drone. Dengan melakukan pengambilan gambar melalui kamera Ar drone yang akan dikirim pada
ground control system (GCS) yang dalam penelitian ini menggunakan personal computer
sebagai pusat pengolah data. Gambar yang
diolah pada GCS akan diproses dengan
melakukan konversi tipe gambar kedalam bentuk HSL color space dan grayscale untuk dapat menghasilkan data teks secara maksimal. Data teks yang didapat akan diubah kedalam
bentuk perintah AT- command dan dikirim
kembali menuju Ar Drone melalui koneksi wi-fi sehingga Ar drone dapat mengeksekusi perintah tersebut dan menjadikannya kedalam bentuk gerakan navigasi.
2. METODOLOGI PENELITIAN
Gambar 1. Diagram Blok Metodologi Penilitian
Pada gambar 1 dapat diketahui tahapan penelitian yang dilakukan pada penelitian ini meliputi studi literatur sebagai pendukung dan dasar teori dalam melakukan implementasi metode, analisis kebutuhan yang menjelaskan kebutuhan dan kemampuan sistem pada sisi
hardware dan software. Pada bagian perancangan sistem akan dibagi menjadi perancangan komunikasi sistem, perancangan data latih karakter dan perancangan ground control system dan perancangan gerakan
quadcopter. Pada perancangan komunikasi sistem akan dijelaskan tentang tahapan dan kinerja quadcopter untuk bertukar data dan
saling berkomunikasi dengan GCS. Kemudian
menjadi dasar pengenalan teks yang menjadi perintah navigasi. Pada perancangan GCS akan dijelaskan mengenai tahapan dan kinerja GCS
untuk melakukan pengolahan gambar dan data navigasi. Kemudian terakhir pada perancangan gerakan quadcopter akan dijelaskan mengenai tahapan untuk menjadikan data teks sebagai perintah gerakan navigasi pada quadcopter.
2.1. Perancangan Komuinikasi Sistem
Dalam sistem yang akan dirancang terdapat
dua macam jalur komunikasi. Pertama
komunikasi data navigasi dan yang kedua adalah komunikasi streaming video. Komunikasi yang pertama ialah komunikasi navigasi data, komunikasi ini adalah komunikasi dua arah yang memanfaatkan protokol UDP dan dikirim dalam
bentuk AT-command. Komunikasi yang kedua
adalah komunikasi satu arah yang digunakan untuk mengirim data gambar dari perangkat
quadcopter kepada GCS (Ground control
system).
Gambar 2. Alur Komunikasi Sistem
Mengacu pada gambar 2 yang menjelaskan
mengenai komunikasi yang digunakan ialah
wi-fi. Yaitu memanfaatkan dua buah UDPport pada
GCS yang masing-masing digunakan sebagai
pengirim dan penerima data navigasi serta perintah yaitu port 5555. Port 56828 digunakan sebagai jalur untuk data video yang akan
diproses menggunakan blok OCR. Komunikasi
ini menggunakan blok UDP yang
mengalokasikan port 5555 sebagai jalur pertukaran data. Dalam komunikasi dibutuhkan beberapa parameter yang terlebih dahulu
ditetapkan yaitu port UDP, IP address
quadcopter, referensi koneksi. Data IP address
yang berupa string terlebih dahulu akan dirubah menjadi format ip dengan string toIP blok pada
LabVIEW.
Gambar 3. Komunikasi Navigasi Data
Pada komunikasi mengirim dan menerima
data dengan memanfaatkan AT-command yang
terdiri dari beberapa perintah yaitu AT REF dan
AT PCMD. AT-Command merupakan perintah
berbentuk string yang dikirimkan pada AR
Drone untuk menerima perintah navigasi atau
perintah-perintah lain. AT command ini
dikirimkan dengan port UDP 5555
menggunakan UDP blok pada LabVIEW.
2.2. Perancangan Data Latih Karakter
.
Gambar 4. Diagram alir preprocessing
Dari gambar 4 dijelaskan mengenai tahapan preprocessing. Tahapan preprocessing
sebelum citra diproses pada step pelatihan
ataupun pembacaaan karakter. Tahapan
preprocessing berguna untuk memperkecil besaran nilai di setiap bit gambar dan untuk
memudahkan pemrosesan gambar untuk
membedakan karakter dengan background gambar. Dalam tahap pelatihan data karakter akan melibatkan software NI Vision Assistant
yang berguna untuk mempercepat tahap pelatihan dengan menggunakan grapichal code
yang kan dimasukkan ke LabVIEW.
Gambar 5. Perancangan Sasaran Teks
Gambar 5 menjelaskan tentang sasaran teks yang akan dibuat yaitu dengan memanfaatkan kertas berukuran A4 dengan mode horizontal, dengan teks menggunakan font calibri, ukuran teks sebesar 250px dan dicetak tebal. Tidak diberikan spasi antar karakter serta latar
belakang gambar berwarna putih untuk
membedakan antara teks dengan background
yang ada. Semua teks yang dipakai
menggunakan huruf kapital atau biasa disebut
uppercase.
Tabel 1. Perintah Gerakan Quadcopter
Pada Tabel 1 perintah gerakan navigasi yang dibuat berjumlah 5 perintah yaitu RIGHT
untuk perintah navigasi berputar ke arah kanan,
LEFT untuk perinntah gerakan navigasi untuk berputar ke arah kiri, UP sebagai perintah navigasi naik ke atas, DOWN sebagai perintah
turun secara vertikal dan LAND sebagai perintah
navigasi melakukan pendaratan. Batas
maksimum karakter berjumlah 5 karakter dengan ketentuan ukuran 250px serta ukuran kertas sasaran A4.
Gambar 6. Data latih Putar Kanan
Gambar 6 menunjukkan data latih yang telah melalui tahap preprocessing dan siap digunakan untuk menjadi data latih perintah navigasi.
Gambar 7. Pembuatan Data Latih
Gambar 7 menunjukkan bahwa data latih berhasil diproses terlihat dari karakter yang
tersegmentasi dengan menggunakan NI Vision
Assistant. Dari tahap pelatihan karakter
didapatkan parameter klasifikasi yang
digunakan untuk tahap pembacaan. kurang dari sama dengan d2 maka:
D1= jarak objek dengan kelas karakter terbaik pertama
D2= jarak objek dengan kelask karakter terbaik kedua
Classification Score=(1-d1∕d2)×1000 (1)
Classification Score=(1-6∕24)×1000
Classification Score=750
Teks Pada Gambar Perintah Yang Dijalankan
LAND (ukuran 250px) Quadcopter mendarat UP (ukuran 250px) Quadcopter bergerak naik
DOWN (ukuran 250px) Quadcopter bergerak turun
LEFT (ukuran 250px) Quadcopter bergerak memutar ke kiri
2.3. Perancangan Ground Control System
.
Gambar 8. Skema Perancangan GCS
Pada Gambar 8 terdapat beberapa bagian dari ground control system. Program utama
merupakan interface bagi pengguna dengan
sistem untuk dapat melihat keseluruhan proses yang dilakukan oleh sistem seperti mengamati data navigasi, menampilkan data gambar sebelum dilakukan proses maupun sesudah proses pembacaan. Dari program utama
pengguna dapat mengirim perintah emergency
landing jika quadcopter mengalami kesalahan terbang atau navigasi yang dapat dikendalikan.
Kemudian Global sub VI adalah temporary
sementara bagi data yang digunakan sebagi
penghubung antara OCR sub VI dengan program
utama untuk melakukan pengiriman data gambar dan data parameter navigasi.
Gambar 9. Alur pertukaran data
Mengacu pada gambar 9 digambarkan mengenai alur pertukaran data pada program utama dimulai dari OCR VI akan mengakuisisi data gambar lewat kamera AR drone selanjutnya memproses gambar tersebut dan mendapatkan data teks perintah. Kemudian OCR VI akan mengirimkan gambar hasil olahan dengan nilai navigasi quadcopter pada sisi yaw, pitch, roll
serta verticalspeed pada Global VI. Selanjutnya
Global VI sebagai penampung data sementara
atau sebagai jembatan antara OCR VI dan
program utama akan menampung data tersebut. Program utama akan mengambil data dari
Global VI baik data gambar olahan ataupun nilai navigasi sesuai teks perintah yang didapat dari gambar yag sudah diolah. Program utama yang akan meneruskan perintah ke Ar Drone.
Gambar 10. Diagram Alir Program Utama
Pada Gambar 10 akan dijelaskan tentang alur program utama yang akan membaca data pada global vi termasuk perintah teks hasil olahan pada citra menggunakan OCR. Setelah didapatkan semua data untuk gerakan navigasi program utama akan mengirim perintah gerakan navigasi berupa AT-command setiap 25-30 ms. Program utama juga akan menampilkan semua data pada front panel program termasuk gambar olahan dan hasil lain yang diperlukan.
Mengacu pada gambar 11 sebelum dilakukan akuisisi video pada OCR VI telah dipersiapkan sebuah rectangle template yang ukurannya akan dijadikan sebagai ROI pada gambar hasil akuisisi yang digunaka sebagai objek utama pengambilan data teks didalamnya.
Gambar pengubahan tipe dari HSL (High,
saturation and luminance) menjadi grayscale untuk memperkecil nilai bit pixel sehingga mudah untuk dilakukan manipulasi pada bit pixel. Kemudian video akan menjadi tipe
grayscale yang kemudian dilakukan proses
pembacaan karakter dengan menggunakan OCR
read text blok pada LabVIEW.
Gambar 12. Wilayah ROI dari frame
Gambar 12 menjelaskan mengenai
region of interest yang digunakan untuk membaca teks. Frame asli berukuran 630x360 dan pada ukuran tersebut region of interest ditentukan pada poin koordinat 213 left, poin koordinat 125 top, poin koordinat 239 bottom
dan poin koordinat 410 right. Koordinat left
adalah x koordinat dari sudut kiri atas rectangle. Koordinat top adalah y koordinat dari sudut kiri atas rectangle. Koordinat right adalah x koordinat dari sudut kanan bawah rectangle. Koordinat bottom adalah y koordinat dari sudut
kanan bawah rectangle. Penempatan ROI
ditentukan pada sifat lensa kamera Ar drone
yang melakukan perbesaran pada daerah tengah
area pembacaan. Wilayah ROI diambil
berdasarkan kecembungan kamera depan
quadcopter agar dapat mencapai jarak yang jauh.
2.4 Perancangan Gerakan Quadcopter
Gambar 13. Diagram Alir Gerakan
Tabel 3. Manipulasi Parameter Navigasi Otomatis
3. PENGUJIAN DAN HASIL
Untuk menyimpulkan performa dari sistem ini maka akan dilakukan pengujian akurasi pembacaan pada jarak tertentu.
3.1. Hasil Pengujian Akurasi Pembacaan pada Jarak tertentu
Pengujian ini dilakukan agar dapat membuktikan apakah sistem pengenalan teks
dapat menghasilkan output sesuai tahap
perancangan yang dilakukan yaitu dapat membaca perintah teks pada jarak tertentu dari sasaran teks.
Gambar 14. Pengujian akurasi pada jarak 1m.
Pada gambar 14 memperlihatkan pengujian akurasi pembacaan teks pada jarak 0,5m dan ketinggian 1 meter. Dari semua jenis teks akurasi yang didapatkan dari pengujian ini adalah 100% dikarenakan pada jarak 0,5m ukuran karakter hampir memenuhi region of interest, warna teks dan background terlihat sangat berbeda sehingga teks mudah dikenali. hasil analisis pada jarak lainnya dapat dilihat pada tabel 4, 5, 6,7 dan tabel 8.
Tabel 4. Akurasi pembacaaan pada jarak 0,5 m
Teks 1 2 3 4 5 6 7 8 9 10 Hasil
Tabel 5. Akurasi pembacaaan pada jarak 0,75m.
Teks 1 2 3 4 5 6 7 8 9 10 Hasil
Tabel 6. Akurasi pembacaaan pada jarak 1m.
Teks 1 2 3 4 5 6 7 8 9 10 Hasil
Tabel 7. Akurasi pembacaaan pada jarak 1,25m.
Tabel 8. Akurasi pembacaaan pada jarak 1,5m.
Teks 1 2 3 4 5 6 7 8 9 10 Hasil meter semua jenis perintah berhasil dikenali sehingga pada semua jenis perintah mencapai nilai keakuratan sebesar 100%. Pada jarak 0,75 semua jenis perintah juga mendapatkan nilai keakurasian sebesar 100%. Dan pada jarak 1 meter semua jenis teks perintah juga berhasil dikenali dan mendapat total nilai mencapai 100%. Seiring dengan bertambahnya jarak nilai keakurasian pembacaan mulai berkurang pada beberapa jenis perintah, seperti pada jarak 1,25
meter perintah DOWN dan perintah RIGHT
mendapat nilai keakurasian sebesar 90% dan perintah UP, LEFT dan LAND berhasil dikenali dan didapatkan masing-masing dari ketiga
Perintah teks parameter navigasi
LAND Default
perintah tersebut sebesar 100% akurat. Pada jarak terjauh 1,5 meter didapatkan keakurasian dari perintah UP dan LEFT 100% kemudian
pengenalan terhadap perintah DOWN sebesar
80%, perintah RIGHT sebesar 80%, perintah
LAND sebesar 90.
4. KESIMPULAN
Penerapan OCR blok yang berbasiskan
LabVIEW akan didapatkan hasil yang kurang jika hanya mengakuisisi citra dan kemudian menjadikannya sebagai inputan citra pada
OCR blok. Perlu dilakukan tahapan untuk
preprocessing agar dapat mempermudah proses pengolahan citra serta meningkatkan akurasi untuk mendapatkan data teks secara baik dan maksimal. Setelah melaksanakan pengujian pada jarak tertentu yang dilakukan
untuk mengetahui akurasi pembacaan
didapatkan hasil bahwa jarak 1 meter adalah jarak paling optimal untuk melakukan pembacaan teks dengan tingkat keberhasilan sebesar 100%.
5. DAFTAR PUSTAKA
A. Vinutha M Ha, B. S. K. N. and C. S. K. aDept. (2013). Optical Character Recognition Based Auto Navigation of Robot, 1242–1246.
Abdullah, M. F. (2016). Implementasi Algoritma Pendeteksi Api Berdasar Komposisi Warna Citra Digital Pada Quadcopter Yang Bergerak Otomatis,
3(2), 1978–1985.
Hidayat, R. (2016). ( Unmanned Aerial Vehicle ) dengan GPS ( Global Positioning, 5(2).
Kharisman, R., Astrowulan, K., & Ak, E. (2014). Perancangan Sistem Navigasi Menggunakan Kamera pada Quadcopter untuk Estimasi Posisi dengan Metode Neural Network, 3(1), 1–6.
Mohammad, F., Anarase, J., Shingote, M., & Ghanwat, P. (2014). Optical Character Recognition Implementation Using
Pattern Matching. Faisal Mohammad et
al,/(IJCSIT) International Journal of Computer Science and Information Technologies., 5(2), 2088–2090.
National Instruments. (2013). OCR concept and terminology. Retrieved March 20, 2006, from http://zone.ni.com/reference/en-
XX/help/372916P-01/nivisionconcepts/ocr_concepts_and_ter minology/
Rajput, A. K. (2013). Simulation of R-L-C Series and Parallel Resonance in Basic Electrical Engineering with LabVIEW,
2(1), 45–49.
Sanjay, D., Kumar, P., & Savithri, T. (2016). OCR Training and Simulation for Person Follower Robot in an Indoor
Environment. British Journal of Applied Science & Technology, 17(3), 1–8. https://doi.org/10.9734/BJAST/2016/2897 3