Anda di halaman 1dari 6

Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer e-ISSN: 2548-964X

Vol. 3, No. 8, Agustus 2019, hlm. 8031-8036 http://j-ptiik.ub.ac.id

Sistem Tracking Objek Menggunakan Metode Edge Detection pada


Quadcopter
Dimas Bagus Jatmiko1, Gembong Edhi Setyawan 2, Hurriyatul Fitriyah3

Program Studi Teknik Komputer, Fakultas Ilmu Komputer, Universitas Brawijaya


Email: 1dhimasbagusj@gmail.com, 2gembong@ub.ac.id, 3hfitriyah@ub.ac.id
Abstrak

Tracking objek biasanya digunakan untuk mengetahui posisi objek dan kondisi lingkungan di
sekitar objek tersebut. Objek yang membutuhkan pengawasan agar dapat berjalan sebagaimana
mestinya membutuhkan sistem untuk mengawasi objek tersebut. Quadcopter merupakan salah satu jenis
UAV (Unmanned Aerial Vehicle) yang dapat melakukan beberapa gerakan (pitch, yaw, roll and gaz).
Dengan kamera pada quadcopter, setiap gerakan dari objek akan diketahui langsung melalui citra
kamera. Sehingga dalam penelitian ini dibuatlah sistem untuk mendeteksi dan melakukan tracking
terhadap objek. Menerapkan sistem pendeteksi objek berbasis pengolahan citra menggunakan metode
shape detection. Kemudian menampilkan hasil deteksi pada frame image yang dibagi menjadi 9 grid
dan melakukan tracking objek berupa gerak maju, gerak mundur, gerak naik, gerak turun, putar kanan
dan putar kiri. Pengujian dilakukan dengan menguji akurasi tracking objek. Dari pengujian akurasi
tracking objek didapatkan rata-rata keberhasilan 76,6%, kegagalan sebesar 23,4% disebabkan oleh
pencahayaan dalam ruangan yang tidak menentu dan benda dengan bentuk menyerupai objek yang di
tracking.

Kata kunci: Shape detection, Deteksi, Tracking, Quadcopter


Abstract
Tracking objects are usually used to determine the position of objects and environmental conditions
around the object. Objects that require supervision to be able to run properly require a system to
monitor the object. Quadcopter is a type of UAV (Unmanned Aerial Vehicle) that can do several
movements (pitch, yaw, roll and gaz). With a camera on a quadcopter, every movement of the object
will be known directly through the camera image. So that in this study a system was created to detect
and track objects. Applying an image processing system based on image processing using the shape
detection method. Then displays the detection results in the frame image which is divided into 9 grids
and tracks the object in the form of forward, backward, upward, downward, turn right and turn left.
System will be tested based on tracking accuracy of objects. From the testing of object tracking accuracy
obtained an average success of 76,6%, failure of 23,4% caused by uncertain lighting in the room and
objects with shapes resembling objects that are tracking.
Keywords: Shape detection, Detection, Tracking, Quadcopter

1. PENDAHULUAN video, terdapat pada bagian depan dan bawah


quadcopter.
Quadcopter merupakan salah satu jenis
Objek maupun target yang membutuhkan
UAV (Unmanned Aerial Vehicle) yang dikenal
pengawasan dan perlu dimonitor agar berjalan
dengan kemampuannya melakukan take-off
sebagaimana mestinya membutuhkan sistem
secara vertical, malakukan beberapa gerakan
untuk mengontrol dan mengawasi objek
(pitch, yaw, roll) dan landing secara vertical.
tersebut. Oleh karena itu, perlu adanya system
Quadcopter mempunyai kompleksitas yang
tracking untuk mengatasi masalah tersebut.
cukup baik dalam bentuk model maupun
Tracking objek digunakan untuk mengetahui
pengendalian gerakan, menggunakan 4 motor
posisi objek dan kondisi lingkungan di sekitar
brushless sebagai penggerak utama (Hamdani,
objek tersebut. Dalam beberapa penelitian
2013). Pada salah satu UAV jenis quadcopter,
sebelumnya, tracking objek dilakukan dengan
yaitu AR.Drone telah dilengkapi kamera yang
menggunakan GPS (Global Positioning System)
dapat menangkap gambar maupun merekam
untuk mengetahui posisi objek. Kamera

Fakultas Ilmu Komputer


Universitas Brawijaya 8031
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 8032

merupakan alat yang tepat untuk mengetahui gerak mundur, gerak naik, gerak turun, putar
posisi objek. Setiap perubahan posisi objek akan kanan dan putar kiri dengan quadcopter.
diketahui langsung melalui pencitraan dari Pada penelitian ini akan membahas
kamera, serta dapat menangkap suatu objek yang pengimplementasian metode shape detection
ada di depan kamera, mengidentifikasi jenis, untuk melakukan tracking objek, penentuan laju
bentuk serta melakukan tracking objek. kecepatan quadcopter agar quadcopter dapat
(Hendy Mulyawan, 2016) menggunakan melakukan tracking objek dengan stabil, rata-
kamera webcam untuk melakukan pengambilan rata waktu eksekusi, hingga hasil ketepatan saat
citra sehingga akan didapatkan hasil gambar melakukan tracking objek.
objek. Lalu gambar objek tersebut diproses
menggunakan metode template matching untuk 2. PERANCANGAN DAN
mendeteksi dan melakukan tracking objek dari IMPLEMENTASI
gambar tersebut. Hasilnya, dapat mendeteksi dan Skema perancangan dan implementasi pada
melakukan tracking objek secara real-time. penelitian ini dibagi menjadi dua, yaitu
Namun dalam penelitian tersebut memiliki perangkat keras dan perangkat lunak. Pada
kekurangan, tidak dapat melakukan tracking saat perangkat keras terdapat komunikasi system.
objek bergerak keluar dari tangkapan webcam. Sedangkan pada perangkat lunak terdapat
(Pamungkas, 2017) membangun sistem deteksi objek dan pergerakan quadcopter,
yang dapat mendeteksi dan melacak posisi bola seperti yang terlihat pada gambar 1.
dengan menggunakan image processing.
Memanfaatkan library dari OpenCV yang
diaplikasikan pada platform ROS (Robot
Operating System). Menggunakan beberapa
metode deteksi objek yaitu, hough circle
transform, blob detection, dan camshif.
Hasilnya, rata-rata waktu yang dibutuhkan untuk
mendeteksi bola menggunakan metode hough
circle transform yaitu 0,0054 detik dan
menggunakan metode blob detection yaitu
0,0116 detik. Sistem mampu melakukan Gambar 1. Skema Perancangan dan
pendeteksian bola yang berdiameter 20 cm Implementasi
menggunakan metode hough circle transform
dengan jarak 500 cm sedangkan menggunakan Langkah awal yang harus dilakukan adalah
metode blob detection dengan jarak 900 cm. komunikasi sistem menghubungkan quadcopter
Keberhasilan saat tracking bola menggunakan dengan komputer melalui wifi. Kemudian
metode camshift dari hasil hough circle transfom deteksi objek dengan mengambil data gambar
mencapai 100% sedangkan dari hasil blob dari kamera depan, melakukan proses
detection adalah 96,67%. Sistem mampu pengolahan citra. Kemudian quadcopter akan
mendeteksi dengan beberapa metode seperti melakukan tracking objek.
hough circle transform, blob detection, dan 2.1 Komunikasi Sistem
camshif. Namun objek yang digunakan hanya Dalam perancangan komunikasi sistem,
terbatas pada bentuk bola. Membuat kode program dengan menggunakan
Berdasarkan permasalahan dan kekurangan bahasa pemrograman C++ merupakan langkat
dari penelitian tersebut maka pada penelitian ini awal yang harus dilakukan. Pada kode program
dibuat sebuah sistem untuk dapat mendeteksi tersebut terdapat fungsi sebagai subscriber dari
dan melakukan tracking terhadap objek seperti “driver autonomy_drone” yang digunakan
segitiga, segiempat dan segilima dengan ukuran untuk mengakses data yang terdapat pada
objek yang terlah ditentukan. Menerapkan quadcopter. Kemudian mengubah kode program
sistem pendeteksi objek berbasis pengolahan yang telah dibuat menjadi bentuk node agar
citra menggunakan metode shape detection dapat dijalankan pada ROS. Setelah itu,
untuk mendukung pendeteksian objek seperti menggunakan komunikasi Wi-Fi 802.11 b/g/n
segitiga, segiempat dan segilima supaya tidak untuk mengirimkan program tersebut pada
menimbulkan kerancuan selama proses deteksi quadcopter, seperti yang ditunjukkan pada
dan melakukan tracking objek. Kemudian gambar 2.
melakukan tracking objek berupa gerak maju,

Fakultas Ilmu Komputer, Universitas Brawijaya


Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 8033

menggunakan persamaan 2:
1 1 1
1
𝐾= [1 1 1] (2)
9
1 1 1
Metode canny edge detection digunakan
Gambar 2. Perancangan Komunikasi Sistem untuk mendeteksi tepian dari objek sehingga
nantinya mempermudah proses pencarian
2.2 Deteksi Objek kontur. Perhitungan tepian menggunakan
Data dari kamera depan quadcopter diproses metode canny edge detection melalui empat
dengan mengubah RGB ke grayscale, tahap, yaitu:
menghilangkan noise dengan blur, mendeteksi 1. Mencari nilai intensitas gradient untuk
tepian dari objek dengan canny edge detection. memperoleh gradient vertical dan horizontal
Kemudian mengenali bentuk objek dari tepian pada setiap tepi menggunakan persamaan 3,
dan jumlah titik puncak dari objek tersebut 4, dan 5.
dengan metode shape detection. Setelah objek −1 0 +1
terdeteksi, maka akan ditampilakan pada frame 𝐺𝑥 = [−2 0 +2] (3)
image seperti yang ditunjukkan pada gambar 3. −1 0 +1
−1 −2 −1
𝐺𝑦 = [ 0 0 0] (4)
+1 +2 +1
𝐺 = √𝐺𝑥 2 + 𝐺𝑦 2 (5)
2. Untuk mendapatkan angle pada tepian, perlu
dilakukan pencari direksi menggunakan
persamaan 6.
𝐺𝑦
𝜃 = arctan 𝐺𝑥 (6)

3. Setelah mendapatkan besaran dan arah


gradien, dilakukan pemindaian penuh pada
gambar untuk menghilangkan piksel yang
tidak diinginkan yang mungkin bukan bagian
tepi. Untuk ini, dilakukan pemeriksaan pada
setiap piksel. Titik A berada pada tepian
objek (dalam arah vertikal). Arah gradien
biasanya berada pada tepian objek. Titik B
dan C berada dalam arah gradien. Titik A
diperiksa dengan titik B dan C untuk melihat
apakah itu membentuk maksimum (lokal).
Jika demikian, maka proses akan
melanjutkan ke tahap selanjutnya. Jika tidak
membentuk local maximum, maka akan
diabaikan (nol) seperti yang ditunjukkan
Gambar 3. Diagram Alir Deteksi Objek pada gambar 4.
Agar objek yang berwarna lebih mudah untuk
dideteksi maka dilakukan perubahan piksel dari
RGB ke Grayscale. Mendapatkan nilai
luminosity dari gambar menggunakan
persamaan 1:
𝐿 = 0.2126 𝑅 + 0.7152 𝐺 + 0.0722 𝐵 (1)
Menghilangkan noise dengan blur
bertujuan agar objek lebih mudah untuk Gambar 4. Non-maximum suppression
dideteksi. Mengkonversi nilai blur dengan Sumber : (OpenCV, 2012)
averaging, mencari nilai pada setiap piksel
Fakultas Ilmu Komputer, Universitas Brawijaya
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 8034

4. Hysteresis thresholding menggunakan dua 2.3 Pergerakan Quadcopter


thresholds (atas dan bawah), seperti pada Membuat sebuah frame untuk mendeteksi
gambar 5. Apabila gradien piksel lebih tinggi objek yang diambil dari data kamera depan
dari ambang atas, maka akan dianggap quadcopter. Frame yang digunakan untuk
sebagai tepi (A). Apabila gradien piksel lebih menampilkan posisi objek berukuran 660x480.
rendah dari ambang bawah, maka akan Membagi frame menjadi sembilan bagian (grid)
ditolak dan dianggap bukan tepi (C). Apabila untuk mempermudah proses pendeteksian objek.
gradien piksel berada di antara dua ambang, 𝑠𝑢𝑚𝑏𝑢 𝑥
maka akan dianggap sebagai tepi hanya jika 𝑠𝑢𝑚𝑏𝑢 𝑥 = (7)
3
gradien piksel terhubung (B). 𝑠𝑢𝑚𝑏𝑢 𝑦
𝑠𝑢𝑚𝑏𝑢 𝑦 = (8)
3

Menggunakan persamaan 7 untuk membagi


sumbu x menjadi 3 bagian, masing-masing
bagian dari sumbu x mempunyai ukuran 220
piksel. Sedangkan pada sumbu y membagi
menjadi 3 bagian menggunakan persamaan 5.2,
masing-masing bagian dari sumbu y mempunyai
Gambar 5. Hysteresis Thresholding ukuran 160 piksel. Sehingga sumbu x adalah
Sumber: (OpenCV, 2012) range 0-220, range 221-440, dan range 441-660.
Kontur dapat dijelaskan sebagai kurva yang Sedangkan pada sumbu y adalah range 0-160,
dapat menghubungkan semua titik-titik kontinu range 161-320, dan range 321-480. Pada
pada gambar, memiliki intensitas atau warna gambar 6 menunjukkan pembagian area dari
yang sama. Kontur dapat digunakan untuk setiap grid pada sumbu x dan sumbu y.
menganalisis bentuk dan mengenali objek
(OpenCV, 2012). Kontur adalah tepian dari
bentuk objek dengan intensitas yang sama.
Metode ini digunakan untuk melakukan analisa
dan mendeteksi bentuk objek pada gambar.
Dalam OpenCV, FindContours merupakan
salah satu fungsi menemukan kontur seperti
mencari objek dari background. Ada 3 elemen
dalam FindContours yaitu gambar sumber,
mode pengambilan kontur dan metode
pendekatan kontur. Menggunakan metode
contour approximation. Menyimpan koordinat Gambar 6. Area Deteksi
(x,y) dari tepian bentuk tersebut. Setelah mendapatkan bentuk objek dari
hasil pengolahan citra dengan menggunakan
Metode shape detection adalah metode yang metode shape detection, selanjutnya adalah
digunakan untuk mengetahui bentuk objek yang mencari koordinat dari titik tengah objek sebagai
telah dideteksi dengan menggunakan perintah untuk mengatur pergerakan dari
perhitungan titik puncak (vertice) dari canny quadcopter sesuai dengan posisi grid
edge detection yang telah mendeteksi tepian terdeteksinya koordinat titik tengah objek.
objek. Metode ini merupakan implementasi dari Mencari titik koordinat objek diawali
algoritma Douglas-Peucker. Algoritma dengan membuat bounding rectangle pada
Douglas-Peucker adalah algoritma yang dapat kontur yang telah ditemukan. Kemudian
digunakan untuk meningkatkat proses menggunakan persamaan (9) dan (10) untuk
pengolahan citra menjadi lebih baik. Algoritma menghitung koordinat titik tengah objek:
ini digunakan untuk menentukan jalur pada 𝑟.𝑤𝑖𝑑𝑡ℎ
𝑥 = (𝑥𝑜𝑏𝑗 + ( )) (9)
sebuah peta yang mempunyai fitur zoom. Hanya 2
𝑟.ℎ𝑒𝑖𝑔ℎ𝑡
menyimpan titik-titik tertentu dan dianggap 𝑦= (𝑦𝑜𝑏𝑗 + ( )) (10)
2
penting sebagai jalur pada sebuah peta yang akan Dimana:
digambar dengan memanfaatkan fitur zoom in (𝑥, 𝑦) : koordinat titik tengah objek
(diperkecil), maka jalur pada sebuah peta yang (𝑥𝑜𝑏𝑗 , 𝑦𝑜𝑏𝑗 ) : koordinat objek
akan digambar terlihat lebih kecil (Stefano, 𝑟. 𝑤𝑖𝑑𝑡ℎ : lebar dari objek
2016).

Fakultas Ilmu Komputer, Universitas Brawijaya


Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 8035

𝑟. ℎ𝑒𝑖𝑔ℎ𝑡 : tinggi dari objek 3.1 Pengujian Akurasi Tracking Objek


Pengujian dilakukan untuk menguji
Pergerakan quadcopter ketika melakukan
performa dari sistem saat pendeteksian dan
tracking objek ditunjukkan pada gambar 7.
melakukan tracking (menyesuaikan posisi
terhadap objek) dengan objek segitiga,
segiempat dan segilima. Dilakukan dengan
menjalankan perintah takeoff, kemudian
quadcopter melakukan tracking objek dengan
gerakan maju, mundur, naik, turun, putar kiri,
dan putar kanan. Kecepatan quadcopter ketika
melakukan tracking objek adalah 0.3m/s.
Mengatur nilai kecepatan dari quadcopter
dengan cara memberikan nilai pada parameter
linear (x,y) dan angular (z). Mengamati
pergerakan quadcopter berdasarkan koordinat
objek yang terdeteksi.
Tabel 3. Hasil pengujian akurasi tracking objek
Pengujian ke-
Objek %
1 2 3 4 5 6 7 8 9 10

√ √ x √ x √ √ √ √ x 70

x √ √ √ √ √ √ x x √ 70

√ √ √ √ √ x √ √ √ √ 90

Rata – rata hasil tracking 76

Pada tabel 3 didapat hasil persentase akurasi


tracking objek dengan nilai rata-rata sebesar
76.6% dengan melakukan 10 kali pengujian pada
Gambar 7. Diagram Alir Pergerakan masing-masing objek. Untuk setiap objek,
Quadcopter persentase keberhasilannya adalah 70% untuk
Memasukkan perintah takeoff, kemudian segitiga, 70% untuk segiempat dan 90% untuk
quadcopter mendeteksi adanya objek yang akan segilima. Analisis yang dapat menyebabkan
di tracking. Quadcopter akan melakukan keberhasilan dan kegagalan pada tracking objek
pergerakan secara linear pada sumbu z (naik, yaitu sebagai berikut :
turun) atau secara angular pada sumbu z (kiri,
kanan), untuk menyesuaikan posisi agar objek a. Terdeteksi
terdeteksi pada grid 5. Jika objek telah terdeteksi Objek pada gambar yang akan dideteksi telah
pada grid 5 namun besar objek <200 atau >300, memenuhi seluruh ketentuan dan berada pada
maka quadcopter akan melakukan pergerakan jarak yang telah ditentukan pada program.
linear pada sumbu x (maju, mundur). Jika 200 Ketentuan tersebut adalah nilai RGB, tepian
<besar objek <300 maka quadcopter akan dari objek, nilai kontur dan jumlah titik
melakukan hover. Tracking dilakukan hingga puncak (vertice). Jika seluruh ketentuan telah
perintah landing dijalankan. terpenuhi, maka bentuk objek terdefinisikan
dan dapat melakukan tracking objek.
3. PENGUJIAN DAN HASIL b. Gagal terdeteksi
Kegagalan dikarenakan kondisi pencahayaan
Untuk menyimpulkan performa dari sistem dalam ruangan yang tidak menentu dapat
in, maka akan dilakukan 3 jenis pengujian yaitu menghambat ketika pendeteksian, lalu
pengujian kecepatan, pengujian waktu eksekusi quadcopter mendeteksi benda yang
dan pengujian akurasi tracking objek. bentuknya menyerupai ketika melakukan
tracking objek, seperti yang ditunjukkan pada
gambar 9.

Fakultas Ilmu Komputer, Universitas Brawijaya


Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 8036

Berbasis Image. Identifikasi dan


Tracking Objek Berbasis Image.
OpenCV, 2012. Canny Edge Detection.
[Online]
Available at:
https://docs.opencv.org/3.1.0/da/d22/tu
Gambar 9. Kegagalan ketika melakukan torial_py_canny.html
tracking objek [Accessed 18 Januari 2019].
OpenCV, 2012. Contour : Getting Started.
4. KESIMPULAN [Online]
Berdasarkan beberapa analisis dari hasil
Available at:
yang telah dilakukan pada penelitian ini, dapat https://docs.opencv.org/2.4/modules/im
dirangkum bahwa sistem tracking objek gproc/doc/structural_analysis_and_sha
menggunakan edge detection pada quadcopter pe_descriptors.html?highlight=findcont
Sistem dapat melakukan pendeteksian objek ours#findcontours
menggunakan metode shape detection dengan [Accessed 06 Agustus 2018].
mengkorversi gambar dari RGB ke grayscale, OpenCV, 2012. Contours. [Online]
kemudian blur image yang digunakan untuk Available at:
menghilangkan noise. Setelah itu mendeteksi https://docs.opencv.org/3.4/d4/d73/tuto
tepian dari objek dengan canny edge detection. rial_py_contours_begin.html
Mencari nilai kontur sesuai dengan objek yang
[Accessed 07 Januari 2019].
dideteksi agar quadcopter dapat mengenali
setiap bentuk objek melalui tepian yang telah
OpenCV, 2012.
didapat. imgproc_color_conversions. [Online]
Available at:
Mencari titik tengah koordinat objek https://docs.opencv.org/3.1.0/de/d25/i
menggunakan perhitungan dari panjang dan
mgproc_color_conversions.html
lebar dari objek yang telah terdeteksi. Kemudian
membuat sebuah grid pada frame image yang
[Accessed 02 Agustus 2018].
terbagi menjadi 9 bagian, frame image Pamungkas, E. M., 2017. Sistem Pendeteksi
berukuran 660x480 piksel. Quadcopter dapat dan Pelacakan Bola dengan Metode
melakukan pergerakan menyesuaikan posisi Hough Circle Transform, Blob
terhadap objek berdasarkan posisi objek yang Detection, dan Camshift Menggunakan
terdeteksi pada grid tersebut. AR.Drone. IJEIS, Vol.7, No.1, April
Akurasi pergerakan penyesuaian posisi 2017, pp. 1~12.
terhadap objek, mendapatkan hasil rata-rata Stefano, 2016. algoritma douglas peucker.
persentase 76.6% dalam 10 kali percobaan. [Online]
23.4% yang merupakan kegagalan deteksi Available at:
disebabkan oleh kondisi cahaya yang tidak https://piptools.net/algoritma-douglas-
menentu, quadcopter mendeteksi objek lain peucker/
yang bentuknya menyerupai, dan sistem yang [Accessed 18 Januari 2019].
mengharuskan perubahan posisi pendeteksian Weiner, S. J., 2010. Feasibility of a 802.11
menghilangkan focus dari kamera quadcopter. VANET Based Car Accident Alert
System. s.l.:Northeastern University.
5. DAFTAR PUSTAKA
Hamdani, C. N., 2013. Perancangan
Autonomous Landing pada Quadcopter
Menggunakan Behavior-Based
Intelligent Fuzzy Control. Volume 2, p.
2.
Hendy Mulyawan, M. Z. H. S. S., 2016.
Identifikasi dan Tracking Objek

Fakultas Ilmu Komputer, Universitas Brawijaya

Anda mungkin juga menyukai