penerapan computer vision pada robot soccer

Upload: rifki-asfari

Post on 13-Oct-2015

164 views

Category:

Documents


5 download

TRANSCRIPT

  • PENERAPAN COMPUTER VISION PADA ROBOT SEPAKBOLA

    IMPLEMENTATION COMPUTER VISION ON ROBOSOCCER

    Laporan ini disusun untuk memenuhi salah satu syarat menyelesaikan

    Tugas Poyek 5 Diploma III Program Studi Teknik Informatika

    Jurusan Teknik Komputer dan Informatika

    Disusun oleh :

    Muhammad Taufik H 101511019

    Pajar Fathurrahman 101511023

    Rizal Ramdani 101511027

    JURUSAN TEKNIK KOMPUTER DAN INFORMATIKA

    POLITEKNIK NEGERI BANDUNG

    2013

  • ABSTRAK

    Dalam memenuhi kebutuhan agar sebuah robot dapat mengetahui keadaan

    lingkungan sekitar, diperlukan suatu cara agar keadaan sekitar tersebut dapat diubah menjadi

    suatu bentuk data. Cara tersebut dapat diraih dengan bantuan suatu perangkat berjenis

    kamera yang mampu mengubah keadaan sekitar menjadi suatu data dengan mengubah sinyal

    analog yang didapatnya menjadi sinyal digital. Berbekal data digital atau yang lebih dikenal

    dengan citra digital yang dimiliki, maka citra digital tersebut dapat diolah untuk membentuk

    suatu informasi yang spesifik menggunakan ilmu image processing.

    Pemikiran di atas kemudian dihubungkan dengan suatu permasalahan pada robot

    pemain sepak bola terkait pengenalan bola dan gawang dalam pertandingan. Hal yang perlu

    diperhatikan ialah bagaimana robot tersebut mampu mengejar, menggiring, dan menendang

    bola dengan benar. Hal-hal tersebut tentunya tidak lepas dari bagaimana robot mengetahui

    posisi bola untuk kemudian melakukan tracking pada bola yang telah ditemukan sehingga

    robot dapat selalu melihat bola untuk diketahui keberadaan posisinya.

    Berdasarkan landasan permasalahan dan pemikiran di atas, dibuatlah sebuah sistem

    yang mampu mengenali lingkungan untuk kemudian diolah dan hasil pengolahannya

    disampaikan pada robot. Sistem ini dibuat pada sebuah circuit board yang terintegrasi

    dengan kamera dan dihubungkan langsung pada robot. Sistem dirancang menggunakan

    OpenCV untuk menunjang kebutuhan computer vision. Sistem ini bekerja dengan menerima

    stream video dari kamera dan menghasilkan output posisi bola atau gawang. Untuk dapat

    menghasilkan posisi yang benar, sistem memanfaatkan teknik noise reduction, segmentasi,

    dan hough circle transform. Noise reduction dilakukan untuk mengurangi noise yang muncul

    pada citra yang ditangkap. Teknik noise reduction yang digunakan ialah median filter.

    Kemudian, segmentasi dilakukan bertujuan untuk memisahkan objek yang berwarna jingga

    dengan objek lain. Teknik segmentasi yang diadopsi ialah thresholding untuk membentuk

    citra hitam putih atau yang lebih dikenal dengan citra biner. Setelah citra biner terbentuk,

    selanjutnya dilakukan pengenalan bentuk lingkaran menggunakan teknik hough transform

    circle. Jika lingkaran terdeteksi, maka posisi pusat lingkaran tersebut yang dijadikan output

    sistem ke robot. Proses ini terus diulang kembali hingga sistem dimatikan.

    Kata Kunci: computer vision, robot soccer, median filter, noise reduction, circle hough

    transform.

  • i

    KATA PENGANTAR

    Puji syukur penulis panjatkan ke hadirat Allah SWT karena atas rahmat-Nyalah penulis dapat

    menyelesaikan penulisan laporan yang berjudul Penerapan Computer Vision pada Robot

    Soccer. Penulisan laporan merupakan salah satu tugas dan persyaratan untuk menyelesaikan

    tugas mata kuliah Proyek 5 di Politeknik Negeri Bandung.

    Dalam penulisan laporan ini, penulis menyampaikan ucapan terima kasih yang tidak terhingga

    kepada pihak-pihak yang membantu dalam menyelesaikan laporan ini, khususnya kepada:

    1. Bapak Priyanto Hidayatullah dan Bambang Wisnuadhi, selaku pembimbing mata kuliah

    Kerja Praktik.

    2. Segenap manajer Mata Kuliah Proyek 5.

    3. Rekan-rekan kelas 2-A D3 Jurusan Teknik Komputer 2010, yang senantiasa memberikan

    saran.

    4. Secara khusus penulis menyampaikan terima kasih kepada keluarga tercinta yang telah

    memberikan dorongan dan bantuan serta pengertian yang besar kepada penulis, baik

    selama mengikuti perkuliahan maupun dalam menyelesaikan laporan ini.

    5. Semua pihak yang tidak dapat disebutkan satu persatu, yang telah memberikan bantuan

    dalam penulisan laporan ini.

    Dalam penulisan laporan ini, penulis merasa masih banyak kekurangan baik pada teknis penulisan

    maupun materi, mengingat akan kemampuan yang dimiliki penulis. Untuk itu, kritik dan saran

    dari semua pihak sangat penulis harapkan demi penyempurnaan pembuatan laporan ini.

    Akhir kata, penulis berharap semoga Allah memberikan imbalan yang setimpal pada mereka yang

    telah memberikan bantuan, dan dapat menjadikan semua bantuan ini sebagai ibadah, Aamiin Yaa

    Robbal Alamiin.

    Bandung, Januari 2013

    Penulis

  • ii

    DAFTAR ISI

    KATA PENGANTAR ................................................................................................................. i DAFTAR ISI .............................................................................................................................. ii

    DAFTAR GAMBAR ................................................................................................................. iii BAB I ......................................................................................................................................... 1 Pendahuluan ............................................................................................................................... 1

    1.1 Latar Belakang ........................................................................................................... 1 1.2 Perumusan Masalah ................................................................................................... 2

    1.3 Tujuan dan Manfaat Sistem ....................................................................................... 3 1.4 Lingkup Sistem .......................................................................................................... 3

    1.5 Hasil Yang Diharapkan ............................................................................................. 4

    BAB II ....................................................................................................................................... 5 Tinjauan Pustaka ........................................................................................................................ 5

    2.1 Computer Vision ....................................................................................................... 5 2.1.1 Image Acquisition ............................................................................................ 5

    2.1.2 Image Processing ............................................................................................. 6 2.1.3 Image Analysis ............................................................................................... 10

    2.2 Teknologi Penunjang ............................................................................................... 12 2.2.1 OpenCV ......................................................................................................... 12 2.2.2 Komunikasi Serial .......................................................................................... 13

    BAB III .................................................................................................................................... 16 Hasil Analisis dan Pembahasan ................................................................................................ 16

    3.1 Analisis Kebutuhan ................................................................................................. 16

    3.1.1 Penerapan Computer Vision .......................................................................... 16

    3.1.2 OpenCV ......................................................................................................... 23 3.1.3 Komunikasi Data ............................................................................................ 25

    BAB IV .................................................................................................................................... 27 KESIMPULAN ........................................................................................................................ 27

    DAFTAR PUSTAKA ............................................................................................................... 28

  • iii

    DAFTAR GAMBAR

    Gambar 1. Hasil pengolahan median filter dengan ukuran window yang berbeda-beda ... 8 Gambar 2. Ilustrasi circle hough transform ..................................................................... 11

    Gambar 3. Struktur dan konten OpenCV ......................................................................... 12 Gambar 4. Gambaran umum OpenCV ............................................................................. 13 Gambar 5. RS-232-C Line untuk connector DB-9 .......................................................... 15 Gambar 6. Flowchart sistem ............................................................................................ 17 Gambar 7. Mean Filter dan Median Filter ....................................................................... 21

    Gambar 8. Gambar pendeteksian partial circle ................................................................ 23

    Gambar 9. gambar perbandingan opencv dengan library lain ......................................... 24 Gambar 10. Komunikasi data antara sistem, robot dan webcam ....................................... 26

  • 1

    BAB I

    Pendahuluan

    1.1 Latar Belakang

    Robotika merupakan salah satu disiplin ilmu teknologi yang berkonsentrasi dalam

    pembentukan suatu wujud mekanis dengan menggabungkan banyak disiplin ilmu lainnya,

    yang utamanya ialah ilmu elektronika dan ilmu komputer. Sehubungan dengan

    dibutuhkannya ilmu komputer dan latar belakang keilmuan yang dimiliki ialah ilmu

    komputer, maka muncul rasa keingintahuan untuk mengeksplorasi dan memelajari ilmu

    robotika sekaligus hendak mencoba menerapkan ilmu komputer yang dimiliki kedalam

    disiplin ilmu robotika ini. Dengan diterapkannya ilmu komputer yang baik, diharapkan dapat

    menunjang hasil pergerakan mekanis yang lebih baik lagi melalui kecerdasan yang disimpan

    pada robot melalui algoritma yang tepat dan efisien.

    Disiplin ilmu robotika itu sendiri merupakan disiplin ilmu yang begitu luas karena

    wujud mekanis yang dibuat dapat berupa apapun yang tentunya dibuat dengan tujuannya

    masing-masing. Salah satu kegiatan robotika yang hendak dipelajari pada kesempatan ini

    ialah robot soccer, yakni sebuah rangka mekanis (robot) yang dibuat mengikuti bentuk rangka

    manusia dan dibuat dengan tujuan agar dapat bermain bola layaknya pemain bola sungguhan.

    Dipilihnya robot soccer sebagai kegiatan robotik yang hendak dikaji dilatarbelakangi

    oleh kebutuhan UKM Robotika Polban untuk bisa berpartisipasi pada kompetisi robot soccer

    yang diselengarakan setiap tahunnya oleh DIKTI dengan nama kompetisi RSHL (Robot

    Soccer Humanoid League). Kompetisi ini pun dapat berperan sebagai gerbang untuk

    berpartisipasi pada kompetisi tingkat internasional. Kompetisi ini diselenggarakan dengan

    aturannya yang mengadopsi peraturan kompetisi robot soccer internasional yang mana robot

    yang hendak berpartisipasi harus dibangun mengikuti aturan yang dinyatakan. Salah satu dari

    segenap peraturan yang ada menyatakan bahwa robot harus memiliki rangka dan bertindak

    layaknya manusia. Dengan demikian, agar robot dapat bertindak layaknya seorang pemain

    bola, robot perlu dibuat agar mampu mengenali bola dan berusaha membawanya. Setelah bola

    terdeteksi maka robot juga harus mampu menentukan ke arah gawang mana ia harus

  • Pendahuluan 2

    Penerapan Computer Vision pada Robot Sepak Bola

    menendang bola. Oleh karena itu, robot harus dapat melihat seperti manusia agar dapat

    bermain sepak bola dengan baik,

    Untuk menunjang kebutuhan penglihatan robot terhadap lingkungannya, maka

    diperlukan suatu perangkat yang dapat menangkap keadaan dunia nyata dan mengubahnya ke

    dalam bentuk data digital. Perangkat yang dimaksud ialah kamera dan data tersebut berupa

    citra yang dihasilkan dari kamera tersebut. Kemudian, melalui data lingkungan yang dimiliki,

    robot dapat mengambil informasi yang ada. Selanjutnya, robot hanya tinggal bertindak sesuai

    dengan informasi yang ia miliki.

    Proses pengolahan citra sebagai data menjadi informasi yang bermanfaat menjadi hal

    utama yang dipikirkan. Proses inilah yang dikatakan sebagai metode pengolahan citra digital

    atau yang lebih dikenal dengan image processing. Hasil dari proses pengolahan citra digital

    yang dilakukan kemudian digunakan untuk penerapan tingkah laku robot dalam menjejaki

    objek (bola ataupun gawang). Namun, image processing itu sendiri bukan merupakan

    persoalan yang mudah, karena image processing juga harus dilakukan sebaik mungkin

    sehingga robot tidak salah dalam bertindak. Dengan kata lain, dapat disimpulkan bahwa fokus

    utama kajian ini ialah teknik penjejakan bola dan pendeteksian gawang pada pertandingan

    sepak bola robot dan dilanjutkan dengan memberikan informasi maupun perintah pada robot.

    1.2 Perumusan Masalah

    Dalam bahasan ini terdapat beberapa masalah yang ditemukan dan dirumuskan sebagai

    berikut:

    Dibutuhkannya pengolahan citra dan pengenalan objek untuk pendeteksian bola.

    Demi mendapatkan informasi dari data citra yang didapat, perlu dilakukan teknik

    image processing pada citra tersebut.

    Untuk keperluan pendeteksian objek yang terus-menerus, diperlukan sebuah sistem

    yang mampu melakukan tracking (penjejakan) objek secara real-time.

    Citra yang diberikan oleh kamera mengandung noise dan dapat mengganggu

    pengolahan citra sehingga memengaruhi keakuratan informasi yang didapat. Oleh

    karena itu dibutuhkan suatu teknik untuk mengurangi noise pada citra yang didapat

    dari kamera.

  • Pendahuluan 3

    Penerapan Computer Vision pada Robot Sepak Bola

    Dalam mendeteksi objek diinginkan agar intensitas cahaya tidak terlalu peka bagi

    sistem. Dengan kata lain, perbedaan intensitas cahaya (terhadap cahaya ruangan

    tertutup) yang tidak terlalu signifikan tidak begitu memengaruhi keakuratan

    pendeteksian lokasi objek.

    Diperlukannya parameter nilai warna jingga yang sesuai dengan warna bola. Namun,

    warna yang tersedia pada format HSV tidak terdapat warna jingga, sehingga perlu

    dilakukan penggabungan warna yang ada pada format HSV untuk mendapatkan warna

    jingga.

    Diperlukannya komunikasi antara robot dengan sistem agar perilaku robot atau sistem

    benar-benar sesuai dengan kebutuhan pada satu waktu tertentu.

    1.3 Tujuan dan Manfaat Sistem

    Berdasarkan rumusan masalah maka tujuan pembuatan sistem ini antara lain :

    Membuat sistem yang mampu menerapkan metoda computer vision untuk

    pendeteksian bola.

    Membuat sistem yang mampu melakukan noise reduction dari citra yang diambil dari

    kamera

    Membuat sistem yang mampu melakukan penjejakan objek secara real time dan akurat

    Membuat sistem yang mampu melakukan penjejakan objek sesuai dengan warna bola

    yang di definisikan dalam pertandingan robot soccer

    Membuat sistem yang mampu melakukan komunikasi 2 arah dengan sistem. Sistem

    mengirimkan data data hasil penglihatannya dan robot memberikan perintah untuk

    memulai proses pendeteksian bola.

    Sedangkan manfaat sistem antara lain :

    Robot dapat mengetahui koordinat bola dengan adanya sistem

    Robot dapat mengetahui apakah bola jauh atau dekat karena mengetahui luas dari

    objek bola yang diberikan sistem

    1.4 Lingkup Sistem

    Berikut merupakan batasan dari sistem yang dibuat:

  • Pendahuluan 4

    Penerapan Computer Vision pada Robot Sepak Bola

    Sistem hanya dapat mendeteksi bola dengan warna yang telah di definisikan yaitu

    warna jingga.

    Warna bola harus memiliki perbedaan yang cukup contrast dengan warna lain.

    1.5 Hasil Yang Diharapkan

    Sistem yang dibuat mampu menjejaki bola berwarna jingga dan mengirimkan koordinat

    bola serta luas bola pada robot secara realtime dan tepat dalam ruangan dengan intensitas

    cahaya seperti pada pertandingan robot soccer.

  • 5

    BAB II

    Tinjauan Pustaka

    2.1 Computer Vision

    Computer vision merupakan proses otomatis yang mengintegrasikan sejumlah besar

    proses untuk persepsi visual, seperti akuisisi citra, pengolahan citra, pengenalan dan membuat

    keputusan. Computer vision mencoba meniru cara kerja sistem visual manusia (human vision)

    yang sesungguhnya sangat kompleks. Untuk itu, computer vision diharapkan memiliki

    kemampuan tingkat tinggi sebagaimana human visual. Computer Vision merupakan salah

    satau cabang ilmu pengetahuan yang mempelajari bagaimana komputer dapat mengenali

    obyek yang diamati/ diobservasi. Cabang ilmu ini bersama intelijensia semu (Artificial

    Intelligence) akan mampu menghasilkan sistem intelijen visual (Visual Intelligence System).

    Computer vision merupakan gabungan dari 2 cabang ilmu yaitu Image Processing dan

    Pattern Recognition. Pengolahan Citra (Image Processing) merupakan bidang yang

    berhubungan dengan proses transformasi citra/gambar (image). Proses ini bertujuan untuk

    mendapatkan kualitas citra yang lebih baik. Sedangkan,Pengenalan Pola (Pattern

    Recognition), bidang ini berhubungan dengan proses identifikasi obyek pada citra atau

    interpretasi citra. Proses ini bertujuan untuk mengekstrak informasi/pesan yang disampaikan

    oleh gambar/citra.

    Agar dapat menyerupai cara kerja mata manusia terdapat tahapan umum dan dasar

    dalam computer vision:

    1. Proses penangkapan citra/gambar (image acquisition)

    2. Proses pengolahan citra (image processing)

    3. Analisa data citra (image analysis)

    4. Proses pemahaman data citra (image understanding).

    2.1.1 Image Acquisition

    Image Acqusition adalah proses mengambil gambar dari lingkungan. Pada manusia

    proses ini dilakukan oleh mata, kemudian informasi visual diterjemahkan ke dalam suatu

  • Tinjauan Pustaka 6

    Penerapan Computer Vision pada Robot Sepak Bola

    format yang kemudian dapat dimanipulasi oleh otak. Seperti halnya dengan proses di atas,

    computer vision membutuhkan sebuah mata untuk menangkap sebuah sinyal

    visual.Umumnya mata pada computer vision adalah sebuah kamera video.Kamera

    menerjemahkan sebuah scene atau image, Kemudian sinyal listrik ini diubah menjadi

    bilangan biner yang akan digunakan oleh komputer untuk pemrosesan. Output dari kamera

    adalah berupa sinyal analog, dimana frekuensi dan amplitudonya (frekuensi berhubungan

    dengan jumlah sinyal dalam satu detik, sedangkan amplitudo berkaitan dengan tingginya

    sinyal listrik yang dihasilkan) merepresentasikan detail ketajaman (brightness) pada

    scene.Kamera mengamati sebuah kejadian pada satu jalur dalam satu waktu, memindainya

    dan membaginya menjadi ratusan garis horizontal yang sama.Tiaptiap garis membuat sebuah

    sinyal analog yang amplitudonya menjelaskan perubahan brightness sepanjang garis sinyal

    tersebut.Karena komputer tidak bekerja dengan sinyal analog, maka sebuah analogtodigital

    converter (ADC), dibutuhkan untuk memproses semua sinyal tersebut oleh komputer.ADC ini

    akan mengubah sinyal analog yang direpresentasikan dalam bentuk informasi sinyal tunggal

    ke dalam sebuah aliran (stream) sejumlah bilangan biner.Bilangan biner ini kemudian

    disimpan di dalam memori dan akan menjadi data rawyang akan diproses.

    2.1.2 Image Processing

    Image Processing adalah proses pengolahan ( manipulasi ) citra menjadi sesuatu yang

    lebih mempunyai makna, seperti membentuk citra biner menggunakan teknik segmentasi.

    Tidak hanya itu saja image processing juga bertujuan agar gambar yang dihasilkan oleh

    kamera lebih bagus dan bebas noise contohnya menggunakan teknik noise reduction.

    2.1.2.1 Median Filterring

    Untuk mengurangi noise yang ada pada gambar, maka digunakan salah satu teknik

    image filtering yang dinamakan median filter yang tergolong kedalam image filtering dasar.

    Median filter memiliki cara kerja yang sederhana, membuatnya tepat diterapkan pada gambar

    dengan tingkat noise yang rendah hingga menengah dan mampu mempertahankan kejelasan

    sisi yang tajam pada gambar atau dengan kata lain batas-batas objek masih dipertahankan.

    Tujuan dari median filter ini ialah menghaluskan gambar dengan menggantikan satu

    piksel dalam suatu ruang lingkup dengan nilai piksel tengah yang dari sekumpulan piksel

    (yang telah diurutkan nilainya) pada ruang tersebut. Proses ini dilakukan hingga seluruh

  • Tinjauan Pustaka 7

    Penerapan Computer Vision pada Robot Sepak Bola

    piksel pada gambar diproses, bersamaan dengan hal tersebut, ruang pemrosesan tersebut

    tentunya juga akan bergeser seiring pemrosesan seluruh piksel. Ukuran ruang pemrosesan

    yang digunakan akan menentukan kehalusan gambar yang dihasilkan. Semakin besar ukuran

    segi empat yang digunakan, maka akan semakin halus (blur) pula gambar yang dihasilkan.

    Ruang pemrosesan ini dapat berupa bentuk simeteris apapun, cakram bundar, lingkaran,

    kotak, atau bentuk silang. Ruang pemrosesan yang dimaksud lebih dikenal dengan nama

    window.

    Penjelasan teknisnya dimisalkan dengan array satu dimensi sehingga segi empat

    sebagai ruang lingkupnya berdimensi 1 x n, dengan n merupakan jumlah piksel sebanyak n

    piksel ke kiri dan n piksel ke kanan. Untuk piksel di awal, sejumlah n piksel ke kiri digantikan

    dengan piksel awal tersebut. Begitu pula piksel di akhir pada gilirannya akan menggantikan

    sejumlah n piksel ke kanan. Pada intinya, piksel yang tidak ada akan digantikan oleh piksel

    yang paling ujung. Misalkan terdapat array A = [4 6 100 3 4], dan ukuran segi empat yang

    dipakai ialah 1 x 3, maka hasil pemrosesan tiap-tiap elemen pada array tersebut akan menjadi

    seperti berikut:

    B[0] = Median[4 4 6] = 4

    B[1] = Median[4 6 100] = 6

    B[2] = Median[6 100 3] = Median[3 6 100] = 6

    B[3] = Median[100 3 4] = Median[3 4 100] = 4

    B[4] = Median[3 4 4] = 4

    Dengan B merupakan array hasil atau diibaratkan sebagai gambar hasil penerapan teknik

    median filtering. Dengan karakteristiknya, teknik ini hanya dapat memberikan hasil yang baik

    pada citra dengan tingkat noise yang rendah hingga menengah dan biasanya diterapkan untuk

    menghilangkan speckle noise dan salt and pepper noise.

  • Tinjauan Pustaka 8

    Penerapan Computer Vision pada Robot Sepak Bola

    Gambar 1. Hasil pengolahan median filter dengan ukuran window yang berbeda-beda

    2.1.2.2 Segmentation

    Segmentasi merupakan proses membagi-bagi daerah dalam satu citra berdasarkan

    kriteria warna yang ada pada gambar tersebut. Proses ini dilakukan guna memudahkan

    pembacaan citra tersebut agar mudah untuk keperluan analisis, yaitu mengenali pola yang ada

    pada citra tersebut. Kualitas hasil segmentasi yang dilakukan akan berbanding lurus dengan

    kualitas pengenalan pola pada suatu citra. Artinya, semakin baik proses segmentasi yang

    dilakukan, akan semakin baik pula pola yang dapat dikenali pada suatu citra.

    Tiga pendekatan umum yang banyak digunakan dalam proses segmentasi antara lain

    ialah:

    a) Teknik threshold, yaitu pengelompokan citra berdasarkan properti piksel yang dalam

    hal ini ialah warna piksel. Dengan kata lain, pengelompokkan daerah-daerah pada citra

    dilakukan berdasarkan warna.

    b) Teknik region-based, yaitu pengelompokkan citra secara langsung menjadi daerah-

    daerah tertentu sesuai dengan persamaan karakteristik suatu area citranya. Dengan

    teknik ini, daerah yang memiliki karakteristik yang sama akan dikotakkan sebagai satu

    region.

    c) Teknik edge-based, yaitu pengelompokkan citra ke dalam wilayah yang berbeda

    dikarenakan adanya perubahan warna tepi dan warna dasar citra yang signifikan.

    Artinya, teknik ini bertujuan untuk mengelompokkan citra berdasarkan perubahan

    intensitas warna untuk mengetahui batas atau tepi objek.

  • Tinjauan Pustaka 9

    Penerapan Computer Vision pada Robot Sepak Bola

    Segmentasi dapat dilakukan secara kualitatif dan kuantitatif. Penilaian secara kualitatif

    ditinjau dari sisi pengamatan mata manusia, yakni pemberian nilai pada region-region dalam

    citra atau yang lebih dikenal dengan Mean Opinion Score (MOS) sehingga pengelompokkan

    daerah dilakukan berdasarkan nilai tersebut. Sedangkan, penilaian secara kuantitatif dilihat

    dari segi performansi segmentasi yang dihasilkan melalui perhitungan yang dilakukan dengan

    menghitung nilai koefisien variansi dari hasil segmentasi. Koefesien ini berperan dalam

    menyatakan variasi nilai piksel dalam suatu region. Jika variasi yang terjadi tidak terlalu

    signifikan atau secara mata warna yang menyusun suatu region tampak homogen, maka

    koefesien variansinya akan bernilai kecil yang menandakan pengelompokkan daerah terjadi

    dengan baik sehingga hasil segmentasinya semakin bagus. Bagaimanapun juga, pada kajian

    ini yang menjadi fokus ialah bagaimana teknik segmentasi dilakukan atau dengan kata lain

    berfokus pada pendekatan proses segmentasi, bukan pada perhitungan hasil atau performansi

    segmentasi.

    2.1.2.3 Thresholding

    Thresholding merupakan salah satu teknik dalam melakukan segmentasi pada citra.

    Teknik ini bekerja dengan memerhatikan nilai warna piksel dan menghasilkan citra baru

    dengan dua warna atau yang lebih dikenal dengan citra biner. Pembentukan citra biner ini

    bertujuan untuk menyederhanakan citra ke dalam dua warna saja sehingga dapat memudahkan

    proses analisis citra.

    Teknik thresholding bekerja dengan cara memeroses tiap piksel pada citra dan

    membandingkannya dengan satu rentang nilai yang dinamakan nilai threshold. Jika piksel

    yang diproses memiliki nilai diluar nilai threshold, maka piksel tersebut diberi tanda 0.

    Sebaliknya, jika piksel yang diproses memiliki nilai didalam nilai threshold, maka piksel

    tersebut diberi tanda 1. Selanjutnya, hanya tinggal menentukan piksel apakah piksel dengan

    nilai 0 atau 1 yang hendak diberi warna hitam sehingga satunya lagi diberi warna putih yang

    pada akhirnya terbentuklah citra biner hasil proses thresholding.

    Parameter kunci dalam menerapkan teknik ini ialah penentuan nilai threshold yang

    tepat. Nilai ini dapat ditentukan secara manual atau dengan menggunakan suatu algoritma

    untuk menghitung nilai threshold secara otomatis yang dikenal dengan nama automatic

    thresholding. Ketika automatic thresholding dipilih, terdapat teknik lainnya yang dinamakan

  • Tinjauan Pustaka 10

    Penerapan Computer Vision pada Robot Sepak Bola

    dynamic thresholding. Teknik ini memiliki nilai threshold yang berbeda-beda pada setiap

    region karena nilai threshold dihitung berdasarkan region itu sendiri.

    2.1.3 Image Analysis

    Image analysis adalah proses ekstraksi informasi yang telah didapat oleh sistem melalui

    tahap image processing. Image analysis juga sering disebut pattern recognition karena sering

    digunakan untuk mendeteksi pola yang ada dalam sebuah image, seperti pola lingkaran dan

    tepi objek. Salah satu contoh dari image analysis adalah object detection dan sharp detection.

    Dengan melakukan image analysis sistem akan mengetahu tepian (edge) yang terbentuk

    antara objek dan latar belakangnya atau antara dua objek yang spesifik berdasarkan perbedaan

    format warna pada sisi yang berbeda dengan salah satu batasnya. Sehingga sistem dapat

    mengetahui bentuk dari objek yang terdeteksi.

    2.1.3.1 Edge Detection

    Edge detection adalah salah satu image analysis untuk mendeteksi tepi dari objek

    dalam gambar yang diolah. Dengan menggunakan edge detection tepi dari suatu objek dapat

    diketahui, sehingga bentuk objek dapat terdefinisi. Tujuan dari edge detection adalah

    Untuk menandai bagian yang menjadi detail citra

    Untuk memperbaiki detail dari citra yang kabur, yang terjadi karena error

    Inti dari algoritma edge detection adalah memeriksa setiap pixel yang ada dalam

    gambar dan menandai titik pixel yang mempunyai perbedaan tinggi dengan tetanggannya.

    Kemudian titik titik pixel tersebut dihubungkan dengan sebuah garis sehingga batasan

    antara objek dapat terlihat.

    2.1.3.2 Circle Detection

    Circle detection adalah salah satu teknik Image Analysis untuk mendeteksi apakah ada

    objek berbentuk lingkaran dari citra yang telah diolah.

    Salah satu algoritma yang digunakan untuk mendeteksi lingkaran adalah circle hough

    transform. Inti dari circle hough transform adalah mendeteksi apakah terdapat pola lingkaran

  • Tinjauan Pustaka 11

    Penerapan Computer Vision pada Robot Sepak Bola

    dari tepi objek yang terdeteksi. Suatu objek dikatakan mempunyai pola lingkaran apabila dari

    titik titik tepi objek tersebut dibuat lingkaran sebesar r, lingkaran lingakaran yang

    terbentuk tersebut beririsan tepat di 1 titik ( menyinggung 1 titik).

    Secara umum algoritma circle hough transform adalah sebagai berikut:

    Lakukan pendeteksian tepi dari objek yang terdeteksi.

    Untuk setiap titik tepi yang terdeteksi buat lingkaran dengan pusat titik tepi tersebut

    dengan jari jari sebesar r.

    Lakukan pengecekan apakah lingkaran lingkaran tersebut bersinggungan (beririsan)

    di 1 titik, jika iya maka lingkaran terdeteksi dan hentikan algoritma. Jika tidak lakukan

    langkah 2 dengan r lebih besar dari sebelumnya. Apabila nilai r sama dengan nilai

    diagonal gambar, hentikan algoritma artinya lingkaran berada di luar gambar.

    Untuk lebih jelasnya ilustrasi dapat digambarkan seperti gambar berikut:

    Gambar 2. Ilustrasi circle hough transform

    Gambar kiri merupakan gambar pendeteksian edge dari objek yang terbentuk. Kemudian dari

    titik tepi yang terdeteksi tersebut dibuat lingkaran dengan jari- jari sebesar r seperti pada

    gambar kanan. Apabila lingkaran yang dibuat tepat menyinggung 1 titik maka objek tersebu

    adalah lingkaran dan titik singgung tersebut merupakan pusat lingkarannya.

  • Tinjauan Pustaka 12

    Penerapan Computer Vision pada Robot Sepak Bola

    2.2 Teknologi Penunjang

    2.2.1 OpenCV

    OpenCV (Open Computer Vision) adalah sebuah API (Application Programming

    Interface) Library untuk Pengolahan Citra Computer Vision. OpenCV merupakan library

    Open Source untuk Computer Vision untuk C/C++, java dan phyton, OpenCV didesain untuk

    aplikasi real-time, memiliki fungsi-fungsi akuisisi yang baik untuk image/video dan

    mempunyai lebih dari 500 fungsi yang mendukung image processing dan pattern recognition

    serta cocok untuk robot karena dapat menggunakan native language yaitu phyton dan C/C++.

    OpenCV terdiri dari 4 library, yaitu :

    1. CV : untuk algoritma Image processing dan Vision.

    2. ML : untuk machine learning library

    3. Highgui : untuk GUI, Image dan Video I/O.

    4. CXCORE : untuk struktur data, support XML dan fungsi-fungsi grafis.

    Keempat library tersebut dapat digambarkan menjadi struktur dan konten OpenCV sebagai

    berikut:

    Gambar 3. Struktur dan konten OpenCV

    Sedangakan mengenai fitur OpenCV dapat ditunjukan oleh gambar berikut

  • Tinjauan Pustaka 13

    Penerapan Computer Vision pada Robot Sepak Bola

    Gambar 4. Gambaran umum OpenCV

    2.2.2 Komunikasi Serial

    Dalam pengembangan sistem ini, salah satu hal yang dibutuhkan oleh sistem yaitu

    bagaimana sistem ini dapat berkomunikasi dengan object lainnya, dalam hal ini object

    yang dibutuhkan oleh sistem dan object yang membutuhkan sistem itu sendiri. Untuk

    mendukung hal tersebut dibutuhkan salah satu teknologi komunikasi yang dapat membuat

    komunikasi antara sistem dan object lainnya. Dalam pengembangan sistem ini salah satu

    teknologi komunikasi yang dipakai adalah komunikasi serial. Komunikasi serial

    merupakan komunikasi data dengan pengiriman data secara satu per satu dengan

    menggunakan satu jalur kabel data. Sehingga komunikasi serial hanya menggunakan 2

    kabel data yaitu kabel data untuk pengiriman yang disebut transmit (Tx) dan kabel data

    untuk penerimaan yang disebut receive (Rx). Kelebihan dari komunikasi serial adalah

    jarak pengiriman dan penerimaan dapat dilakukan dalam jarak yang cukup jauh

    dibandingan dengan komunikasi parallel tetapi kekurangannya adalah kecepatan lebih

    lambat daripada komunikasi parallel, namun untuk teknologi embedded system, banyak

    mikrokontroler yang dilengkapi dengan komunikasi serial (baik seri RISC maupun CISC)

    atau Serial Communication Interface (SCI). Dengan adanya SCI yang terpadu pada 1C

    mikrokontroler akan mengurangi jumlah pin keluaran, sehingga hanya dibutuhkan 2 pin

    utama TxD dan RxD . Ada tiga metode yang sering dijumpai pada komunikasi data serial

    yaitu Simpleks, half dupleks, dan full duplex. Pada transmisi data simpleks , data hanya

    dapat dikirim dalam satu arah saja. Pada half dupleks data dapat ditransmisikan dalam dua

  • Tinjauan Pustaka 14

    Penerapan Computer Vision pada Robot Sepak Bola

    arah secara bergantian. Transmisi data secara full dupleks merupakan transmisi data dua

    arah dimana data dapat diterima oleh system dan sekaligus system tersebut dapat

    mengirimkan data secara bersamaan. Transmisi data full dupleks dapat dijumpai pada

    system telepon. Dalam komunikasi data serial, ada dua metode dasar yang digunakan

    yaitu komunikasi serial asinkron dan komunikasi serial sinkron.

    Dalam pengembangan sistem image processing pada robot soccer ini standar

    komunikasi serial yang dipakai yaitu RS-232-C. Ada beberapa standar yang telah

    dikembangkan oleh Electronic Industries Association (EIA) untuk komunikasi serial

    antara lain RS-232-C, RS-422, RS-423 dan RS-449. RS adalah kependekan dari

    Recomended Standard. Standar yang paling sederhana dan paling sering digunakan adalah

    RS-232-C. Standar RS-232-C termasuk dalam komunikasi data serial asinkron. Dalam

    komunikasi serial, pengirim dan penerima harus memenuhi protokol komunikasi. Berikut

    ini adalah beberapa istilah dalam protokol komunikasi RS-232-C :

    1. Baud periode : Kecepatan transmisi yang diukur dalam satuan bit per sekon. Clock

    dari pengirim dan peneriman harus disinkronisasi pada baud perioda yang sama.

    2. Marking state : Periode waktu selama tidak ada data yang dikirim. Selama kondisi

    marking, output line pengirim selalu logic 1 (High).

    3. Start bit : Logika '0' (Low) menunjukkan transmisi data dimulai. Kondisi low yang

    terjadi pada start bit dinamakan spacing state.

    4. Karakter bit : Berisi data dengna jumlah 5, 6, 7 atau 8 bit. Bit pertama yang

    dikirim adalah LSB.

    5. Parity bit : Parity bit adalah bit pilihan yang dikirim setelah karakter bit untuk

    mendeteksi error transmisi. Ada dua macam parity yaitu parity genap dan parity

    ganjil.

    6. Stop bit : Satu, satu setengah dan dua bit berlogika ' 1 ' (High) akan dikirim setelah karakter bit atau parity bit jika ada parity bit. Dengan adanya stop bit dapat

    dipastikan bahwa penerima mempunyai waktu yang cukup untuk menerima

    karakter berikut.

    Spesifikasi connector untuk standar RS-232-C terdiri dari 25 pin. Connector 25 pin

    ini dinamakan D-shell connector atau DB-25. Tetapi tidak semua PC serial portnya

    menggunakan DB-25 connector. Ada yang menggunakan DB-9 connector ataupun 16-

  • Tinjauan Pustaka 15

    Penerapan Computer Vision pada Robot Sepak Bola

    position BERG connector. Fungsi dari setiap pin berbeda - beda untuk masing - masing

    connector. Gambar dibawah ini menunjukan RS-232-C line untuk connector DB-9

    Gambar 5. RS-232-C Line untuk connector DB-9

  • 16

    BAB III

    Hasil Analisis dan Pembahasan

    3.1 Analisis Kebutuhan

    Dengan berlandaskan latar belakang, permasalahan yang muncul, dan tujuan yang hendak

    dicapai, serta hal-hal lainnya yang telah diuraikan sebelumnya, maka terdapat beberapa hal

    yang dibutuhkan untuk membentuk sistem yang mampu menunjang kebutuhan computer

    vision pada robot sepak bola, diantaranya ialah:

    1. Dibutuhkan sebuah sistem yang mampu menerima video dari kamera

    2. Dibutuhkan sebuah sistem yang dapat membedakan daerah yang berwarna jingga dan

    daerah yang bukan

    3. Dibutuhkan sebuah sistem yang mampu mengetahui apakah terdapat lingkaran pada

    citra yang didapat atau tidak

    4. Dibutuhkan sebuah sistem yang mampu mengetahui posisi lingkaran pada citra dan

    merepresentasikannya dalam bentuk koordinat kartesian

    5. Dibutuhkan sebuah sistem yang mampu berkomunikasi dengan robot secara serial

    3.1.1 Penerapan Computer Vision

    Robot soccer harus mampu mengetahui letak bola.Berdasarkan kebutuhan tersebut

    maka dibutuhkan sistem yang mampu bertindak sebagai mata pada robot yang bertugas untuk

    menjejaki objek bola pada pertandingan robot soccer. Oleh karena itu dibutuhkanlah

    penerapan metoda computer vision. Karena dengan menerapkan metoda computer vision

    robot soccer dengan bantuan sistem seolah olah mempunyai mata untuk melihat keadaan

    sekitar sehingga robot dapat mengetahui letak bola dan dapat membuat keputusan seperti

    mengejar bola ataupun menendang bola.

    Sistem yang dibuat menerapkan metoda computer vision oleh karena itu flow chart

    atau langkah kerja sistem yang dibuat harus memuat tahap dasar computer vision yaitu image

  • Hasil Analisis dan Pembahasan 17

    Penerapan Computer Vision pada Robot Sepak Bola

    acquisition, image processing dan image analisis untuk mendapatkan informasi yang

    diinginkan yaitu koordinat titik tengah bola.

    Berikut merupakan flow chart dari sistem yang dibuat:

    Gambar 6. Flowchart sistem

    Dari flowchart dapat diketahui bahwa langkah 1 dan 2 adalah teknik image acquisition karena

    berhubungan dengan proses pengambilan citra dari kamera. Untuk teknik image processing

    dilakukan pada tahap no 3, 4 dan 5 karena berhubungan dengan pengolahan citra, dalam hal

    ini citra dirubah menjadi citra biner melalui teknik segmentasi. Sedangakan tahap 6

    merupakan image analisis karena merupakan tahap pendeteksian dari citra biner yang telah

    didapat apakah terdapat pola lingkaran atau tidak.

  • Hasil Analisis dan Pembahasan 18

    Penerapan Computer Vision pada Robot Sepak Bola

    3.1.1.1 Image Acquisition

    Berdasarkan flowchart dapat diketahui bahwa image acquisition pada sistem dilakukan

    oleh kamera. Seperti halnya mata pada manusia kamera merupakan mata dalam sistem

    karena bertugas untuk mengambil gambar kondisi lingkungan. Kamera yang dipakai

    terhubung pada sistem secara serial.

    Proses pengambilan gambar pada sistem dilakukan secara realtime, agar proses

    penjejakan objek tidak lepas atau gagal.Maka untuk memenuhi kebutuhan tersebut data yang

    diambil harus berupa video. Video merupakan sequence of image sedangkan pengolahan citra

    dapat dilakukan pada 1 image saja dalam satu satuan waktu. Oleh karena itu video hasil

    pengambilan dari kamera harus diambil frame demi frame. Barulah kemudian frame yang

    didapat tersebut yang akan dilakukan teknik image processing.

    Kemampuan pengambilan banyakanya frame pada kamera berbeda beda. Untuk

    mendapatkan proses tracking yang handal maka diperlukan kamera dengan spesfikasi fps

    yang cukup kurang lebih 30 fps. Fps ( frame per second ) adalah kemampuan kamera untuk

    menangkap jumlah frame dalam satu satuan waktu. Meskipun sistem akan bekerja lebih berat

    karena dalam satu satuan waktu kamera akan mengirim banyak frame dalam satuan waktu

    tetapi, hal ini tidak menjadi masalah karena proses tracking akan lebih handal dikarenakan

    kemungkinan frame yang hilang menjadi sedikit.

    3.1.1.2 Image Processing

    Dalam pertandingan sepak bola robot, kebutuhan pandangan (vision) robot akan

    lingkungan sekitar sangat diperlukan. Kebutuhan ini datang agar robot dapat mengidentifikasi

    objek nyata yang ada disekitarnya. Hal ini tentu dilakukan untuk menunjang kemampuan

    robot dalam bermain sepak bola. Untuk bisa memenuhi kebutuhan ini, salah satu langkah

    yang dapat dilakukan ialah dengan menyediakan sebuah alat (device) yang mampu

    menangkap keadaan dunia nyata, yaitu kamera yang kemudian dikombinasikan dengan ilmu

    image processing sehingga dari citra yang dihasilkan melalui kamera dapat diperoleh

    informasi.

    Objek penting yang perlu dideteksi pada permainan sepak bola ini diantaranya ialah

    bola dan gawang. Baik bola maupun gawang yang hendak dideteksi memiliki karakteristik

    warna yang kontras dengan lapangan pertandingan yang berwarna hijau, yaitu jingga sebagai

  • Hasil Analisis dan Pembahasan 19

    Penerapan Computer Vision pada Robot Sepak Bola

    warna bola dan dua buah gawang yang warnanya berbeda, yaitu gawang dengan warna

    kuning dan gawang dengan warna biru. Adanya perbedaan warna yang nampak jelas tersebut

    menjadi sesuatu yang membuat image processing memang benar-benar diperlukan karena

    image processing dilakukan atas dasar warna yang terdapat pada citra yang dihasilkan oleh

    kamera.

    Image processing yang dilakukan dalam suatu sistem dibuat agar dapat mendukung

    untuk dilakukannya pelacakan bola maupun gawang secara terus menerus (real-time) atau

    dengan kata lain melakukan tracking terhadap bola maupun gawang. Oleh karena itu,

    informasi yang didapat robot merupakan data yang aktual akan posisi bola dan gawang pada

    satu waktu. Dengan demikian, diharapkan robot dapat memperoleh informasi tentang

    keberadaan bola dan gawang melalui sistem sehingga robot mampu memasukkan bola ke

    gawang lawan.

    3.1.1.2.1 Noise Reduction

    Ketika suatu citra diperoleh melalui kamera yang ada, gambar yang dihasikan tidak

    sepenuhnya bersih, akan tetapi mengandung noise dengan tingkat noise yang masih

    dikategorikan rendah. Noise ini menjadi hal yang wajar terdapat pada citra yang dihasilkan,

    karena citra tersebut merupakan kombinasi frekuensi dua dimensi, yaitu frekuensi dalam arah

    horizontal dan vertikal. Perlu diketahui bahwa pada perangkat penangkap sinyal analog,

    frekuensi yang ditangkap rusak atau tidak semestinya merupakan hal yang wajar. Noise ini

    hadir sebagai suatu piksel dengan nilai yang berbeda jauh dari nilai piksel disekitar

    tetangganya. Dengan kata lain, noise hadir dalam wujud frekuensi yang berfluktuasi jauh

    terhadap frekuensi yang disekitarnya sehingga menimbulkan piksel dengan warna yang

    berbeda dari sekitarnya.

    Dengan maksud agar kualitas citra yang dihasilkan meningkat, maka noise yang ada

    perlu dieliminasi. Noise yang ada pada citra dapat dikurangi dengan menerapkan teknik image

    filtering atau smoothing pada citra tersebut. Hal tersebut terjadi dikarenakan teknik smoothing

    bekerja dengan cara memerhatikan piksel dalam suatu lingkup dan memerosesnya. Dengan

    demikian, teknik seperti ini mampu menekan piksel dengan nilai yang berdeviasi tinggi dari

    nilai disekitarnya (noise) pada satu ruang lingkup.

  • Hasil Analisis dan Pembahasan 20

    Penerapan Computer Vision pada Robot Sepak Bola

    Selain itu, dikarenakan noise yang muncul pada citra yang didapat masih

    dikategorikan rendah, maka proses pengurangan noise yang dibutuhkan cukuplah dengan

    memanfaatkan teknik yang sederhana, sehingga dapat memperkecil waktu yang dibutuhkan

    dalam prosesnya. Sederhana, namun tetap perlu memerhatikan sisi batas objek.

    Berdasarkan kebutuhan yang telah dijabarkan di atas, maka teknik filtering atau

    smoothing yang digunakan ialah median filtering. Teknik ini dipilih dikarenakan teknik ini

    prosesnya sederhana dan gambar blur yang dihasilkan masih memiliki batas-batas warna atau

    dengan kata lain sisi objek masih dipertahankan. Dengan menerapkan teknik median filtering,

    noise yang sebelumnya muncul pada objek bola dapat dikatakan tereliminasi sehingga objek

    bola menjadi objek yang dipenuhi dengan warna jingga.

    Sebenarnya, terdapat pula teknik filtering lain dengan karakteristik yang hampir

    serupa dengan median filtering, yaitu mean filtering. Kesamaannya terletak pada karakteristik

    cara kerjanya yang memerhatikan satu ruang lingkup tertentu. Teknik mean filtering bekerja

    dengan cara memberikan nilai pada satu piksel dengan nilai rata-rata piksel-piksel

    tetangganya dalam satu lingkungan (dengan luas lingkungan yang ditentukan) dan dilakukan

    hingga seluruh piksel pada gambar telah diproses seluruhnya. Teknik seperti ini memang

    mampu menghilangkan noise dengan cara merata-ratakan nilai piksel, namun akibatnya

    gambar akan menjadi blur.

    Perbedaan antara mean filtering dengan median filtering ialah pada kejelasan gambar

    yang dihasilkan. Jika menggunakan mean filtering, batas warna besar kemungkinan akan

    bercampur akibat proses perata-rataan nilai piksel atau suatu objek dengan sisi tajam tidak

    lagi tajam setelah diterapkan teknik ini. Akibatnya, batas objek tidak lagi menjadi jelas dan

    akurat setelah gambar menjadi blur. Sedangkan, dengan teknik median filtering, kejelasan

    batas warna yang dihasilkan masih terlihat sehingga objek dapat dibedakan dengan mudah.

    Sebenarnya, berdasarkan jenisnya pun kedua teknik ini dikategorikan ke dalam jenis yang

    berbeda. Mean filtering tergolong ke dalam linear filtering karena memanfaatkan nilai rata-

    rata. Sedangkan, median filtering tergolong ke dalam non-linear filtering karena tidak

    memanfaatkan nilai rata-rata Berikut perbedaan hasil gambar dengan menggunakan teknik

    mean filtering dan median filtering.

  • Hasil Analisis dan Pembahasan 21

    Penerapan Computer Vision pada Robot Sepak Bola

    Gambar 7. Mean Filter dan Median Filter

    3.1.1.2.2 Segmentasi dan Thresholding

    Pada kajian yang dibahas atau computer vision pada robot sepak bola, segmentasi

    perlu dilakukan untuk mempermudah proses analisis atau pendeteksian objek bola selama

    pertandingan. Teknik segmentasi yang digunakan ialah thresholding. Teknik ini dipilih

    dengan memerhatikan kejelasan bola yang akan digunakan selama pertandingan. Dengan kata

    lain, dikarenakan objek bola telah pasti, yakni hadir sebagai objek bundar yang berwarna

    jingga, maka kejelasan inilah yang dijadikan pemutusan penggunaan teknik thresholding.

    Berbeda dengan metode segmentasi lainnya yang mengelompokkan suatu area dalam

    citra yang memiliki warna yang sama (region-based). Region-based akan mengelompokkan

    area citra yang memiliki warna yang sama, sedangkan pendeteksian yang diinginkan ialah

    pendeteksian terhadap warna bola dan gawang saja, warna lainnya tidak perlu dideteksi atau

    bahkan dikelompok-kelompokkan, sehingga region-based tidak dilakukan pada citra yang

    didapat. Pendekatan lainnya, yakni edge-detection akan digunakan setelah thresholding

    dilakukan terlebih dahulu atau dengan kata lain setelah terbentuk citra biner. Edge detection

    ini digunakan untuk keperluan analisis citra, yaitu pendekteksian objek bola. Dengan

    dilakukannya thresholding, edge detection pun akan lebih cepat dilakukan dikarenakan hanya

    ada dua warna pada citra yang diproses.

    Nilai threshold yang menjadi parameter kunci dalam melakukan thresholding ialah

    warna bola yang digunakan dalam pertandingan, yaitu warna jingga. Dengan melakukan

  • Hasil Analisis dan Pembahasan 22

    Penerapan Computer Vision pada Robot Sepak Bola

    thresholding pada citra yang didapat selama proses image acquisition, daerah berwarna jingga

    akan diwarnai putih dan jika tidak berwarna jingga akan diwarnai hitam. Sederhananya,

    kesimpulan singkatnya ialah jika pada citra biner terdapat daerah dengan warna putih, maka

    daerah tersebut menandakan posisis bola.

    3.1.1.3 Image Analisis

    Dalam sistem yang dibuat image analisis dilakukan karena definisi bola didefinisiakan

    tidak hanya berdasarkan warna saja tetapi juga berdasarkan bentuk. Oleh karena itu image

    analisis diperlukan agar sistem mampu mendeteksi apakah citra yang telah diolah memilki

    pola seperti objek bola.

    3.1.1.3.1 Circle Detection

    Dalam pertandingan robot soccer bola yang digunakan adalah bola tennis berwarna

    jingga. Oleh karena itu objek bola didefinisikan tidak hanya sebagai benda yang berwarna

    jingga saja tetapi juga mempunyai bentuk seperti bola.

    Gambar yang diambil melalui kamera adalah gambar 2 dimensi, berbeda dengan

    kenyataannya ( duni nyata) yaitu objek bola yang merupakan bangun 3 dimensi. Agar sistem

    dapat mengenai bola sistem harus mampu mendeteksi apakah objek yang terdeteksi

    mempunyai bentuk 2 dimensi dari bangun bola yaitu lingkaran.

    Deteksi lingkaran pada sebuah citra dapat dilakukan menggunakan algoritma circle

    hough transform. Hough transform dipakai karena dengan menggunakan algoritma ini

    lingkaran masih dapat dideteksi meskipun image yang didapat hanya merupakan partial circle.

    Seperti pada gambar dibawah ini

  • Hasil Analisis dan Pembahasan 23

    Penerapan Computer Vision pada Robot Sepak Bola

    Gambar 8. Gambar pendeteksian partial circle

    Gambar diatas menunjukan bahwa meskipun koin koin ada yang tertutupi oleh koin

    lain sehingga hanya berbentuk setengah lingkaran tetapi masih dengan menggunakan

    algoritma circle hough transform masih terdeteksi lingkaran dikarena terdapat pola lingkaran

    pada objek tersebut. Hal ini sangat bagus karena dalam pertandingan soccer ada kemungkinan

    robot hanya dapat melihat sebagian dari bola contohnya ketika bola terhalang oleh robot lain.

    Berdasarkan flow chart sistem pendeteksian lingkaran akan dilakukan setelah proses

    segmentasi maka citra yang merupakan inputan pada proses ini adalah citra biner.

    3.1.2 OpenCV

    OpenCV dipilih karena mempunyai library Computer Vision yang lengkap yaitu lebih

    dari 500 fungsi image processing serta pattern recognition dan mendukung untuk diterapkan

    dalam robot. OpenCV lebih baik dibandingkan dengan library library image processing

    yang lainnya, terutama dalam hal kecepatan. Berikut merupakan gambar perbandingan

    OpenCV dengan beberapa library lain.

  • Hasil Analisis dan Pembahasan 24

    Penerapan Computer Vision pada Robot Sepak Bola

    Gambar 9. gambar perbandingan opencv dengan library lain

    Gambar diatas merupakan perbandingan lamanya runtime beberapa proses image processing

    antara OpenCV dengan beberapa library lain dengan sumbu x adalah kecepatan runtime dan

    sum bu y adalah beberapa proses image processing yang di tes. Tes dilakukan pada prosessor

    dengan kecepatan 1.7 GHZ dan fungsi yang di tes yaitu 2D DFT, Resize, Optical flow (

    tracking) dan Neural Net. Dapat disimpulkan bahwa OpenCV lebih cepat dibandingkan

    dengan library LTI dan VXL karena mempunyai waktu runtime yang paling kecil. Tetapi

    OpenCV lebih lambat jika dibandingkan OpenCV + IPP yang merupakan library

    pengembangan dari OpenCV.

    Dalam pengembangan sistem semua kebutuhan algoritma algoritma yang

    dibutuhkan oleh computer vision sudah disediakan oleh OpenCV. Berikut merupakan rincian

    dari fungsi fungsi OpenCV yang mendukung pengembangan sistem:

    Untuk image acquisition dapat menggunakan fungsi cvCaptureFromCAM., fungsi ini

    adalah untuk mengambil gambar dari kamera. Maka kebutuhan untuk mengambil

    gambar dari lingkungan melalui kamera sudah terpenuhi. Tahap image acquisition

    juga membutuhkan bagaimana cara untuk mengambil frame demi frame dari video

    yang ditangkap, proses ini dapat dipenuhi menggunakan fungsi OpenCV yaitu

    cvQueryFrame. Dengan menggunakan cvQueryFrame dapat mengambil 1 frame dari

    kumpulan image yang ditangkap oleh kamera.

  • Hasil Analisis dan Pembahasan 25

    Penerapan Computer Vision pada Robot Sepak Bola

    Tahap image processing dalam sistem juga dapat dipenuhi oleh fungsi OpenCV. Noise

    reduction menggunakan algoritma median filter dapat dipenuhi menggunakan fungsi

    medianBlur yang memiliki kegunaan untuk mengurangi noise dengan cara membuat

    gambar menjadi lebih halus. Pembentukan citra biner juga dapat menggunakan fungsi

    OpenCV. Seperti telah dijelaskan pada analisis kebutuhan segmentasi untuk

    membentuk citra biner, format warna citra harus dirubah terlebih dahulu menjadi

    HSV. OpenCV telah menyediakan fungsi cvCvtColor untuk merubah format warna.

    Sedangkan untuk memisahkan antara objek dan objek ( membentuk citra biner ) dapat

    menggunakan fungsi cvInRanges dengan parameternya adalah nilai HSV dari warna

    jingga.

    Proses image analisis pendeteksian lingkaran yang dibutuhkan oleh sistem

    menggunakan algoritma circle hough transform telah disediakan oleh OpenCV

    menggunakan fungsi cvHoughCircles.

    3.1.3 Komunikasi Data

    Dalam pembuatan sistem ini terdapat komunikasi data yang harus dianalisis yaitu

    bagaimana sistem dapat berkomunikasi dengan robot dan webcam. Sistem dan robot

    berkumunikasi agar robot dapat menerima informasi dari sistem untuk mengetahui posisi bola

    dan gawang sedangkan sistem menerima informasi dari robot tentang informasi apa yang

    harus diberikan oleh sistem. Komunikasi antara sistem dan robot itu disertai webcam yang

    terhubung pada sistem dimana webcam berfungsi sebagai pengirim data hasil capture dari

    webcam itu sendiri.

    Kebutuhan komunikasi sistem dengan object lainnya yaitu robot dan webcam harus

    memiliki kemampuan mengirim dan menerima data secara cepat, agar saat robot mencari bola

    atau gawang dapat memiliki respon yang cepat, dalam hal ini system dengan robot

    menggunakan komunikasi serial 2 arah (Duplex), sedangkan webcam terhubung pada sistem

    menggunakan USB.

  • Hasil Analisis dan Pembahasan 26

    Penerapan Computer Vision pada Robot Sepak Bola

    Gambar 10. Komunikasi data antara sistem, robot dan webcam

    Seperti terlihat dari gambar di atas, merupakan suatu proses komunikasi data sistem,

    robot dan webcam untuk mencari posisi bola, diawali oleh komunikasi antara sistem dan

    robot dimana robot mengirim perintah pada sistem lewat komunikasi serial untuk mencari

    posisi bola, lalu sistem menerima data hasil capture dari webcam yang nantinya data itu

    langsung di olah dan di ambil informasinya, apabila bola sudah diketahui posisinya sistem

    mengirim data posisi bola kepada robot berupa koordinat posisi bola dan radius bola.

    Komunikasi antara sistem dan robot ini menggunakan standar yang paling sederhana

    yaitu RS-232-C dengan connector 9 Pin yaitu DB-9, karena processor yang akan dipakai pada

    system dan robot nanti sudah mendukung SCI (Serial Communication Interface) sehingga

    hanya membutuh kan 3 pin saja dari 9 pin connector DB-9 yaitu pin TX (Transmiter), RX

    (Receiver) dan GND (Ground).

  • 27

    BAB IV

    KESIMPULAN

    Berdasarkan hal yang diuraikan sebelumnya dapat disimpulkan bahwa bola

    didefinisikan sebagai objek yang berbentuk lingkaran dan berwarna jingga oleh karena itu

    proses pendeteksian dilakukan berdasarkan warna menggunakan teknik segmentasi dan

    menggunakan algoritma circle hough transform untuk mendeteksi lingkaran. Segmentasi

    dilakukan untuk membentuk citra biner yaitu memisahkan antara objek dan bukan objek

    berdasarkan warna agar gambar yang dihasilkan lebih mudah untuk dianalisis. Pendeteksian

    lingkaran dilakukan agar sistem lebih akurat dapat mendeteksi bola dan dapat mengetahui

    luas lingkaran sebagai parameter untuk menunjukan jauh atau dekatnya bola.

    Sebagai teknologi pendukung OpenCV sudah dapat memenuhi penerapan metoda

    computer vision pada sistem yang meliputi image acquisition, image processing dan image

    analisis. Sedangkan agar sistem mampu berkomunikasi dengan robot, dibutuhkannya

    teknologi pendukung yang dapat mengkomunikasikan sistem dan robot, dalam hal ini

    teknologi komunikasi yang dipakai yaitu koneksi serial dengan standar RS-232 karena

    processor yang ada di sistem dan robot mendukung Serial Comnication Interface sehingga

    dapat mempermudah saat implementasi.

  • 28

    DAFTAR PUSTAKA

    Barends, Johannes Nassa.1998. Komunikasi data serial antar computer dengan metoda

    frequency-shift keying.Surabaya:Universitas Kristen Petra.

    Bradski, Gary, dan Kaehler ,Adrian.2008.Learning OpenCV. USA: OReilly Media Inc.

    Laganire, Robert.2011.OpenCV 2 Computer Vision Application Programming Cookbook.

    UK: Packt Publishing Ltd.

    Priawadi, Ozi. OpenCV. http://priawadi.blogspot.com/2012/09/opencv.html [2 Januari 2013].

    Rhody, Harvey.2005.Lecture 10 : Hough Circle Transform.

    www.cis.rit.edu/class/simg782/lectures/lecture_10/lec782_05_10.pdf [ 15 Desember 2012].

    Riwinoto. 2011. Penggunaan Algoritma Hough Transform Untuk Deteksi Bentuk Lingkarann

    pada Ruang 2D: 3-4.

    Wang,Ruye . Smoothing and Noise Reduction.

    http://fourier.eng.hmc.edu/e161/lectures/smooth_sharpen/node3.html [1 Januari 2013].

    SAADAH, SITI. Analisis Dan Implementasi Segmentasi Citra Menggunakan Algoritma

    Graph Cut.

    http://digilib.ittelkom.ac.id/index.php?option=com_content&view=article&id=575:segmentas

    i-citra&catid=20:informatika&Itemid=14 [2 Januari 2013].

    Tarigan, Priskanta. Computer Vision. http://freezcha.wordpress.com/2010/11/16/computer-

    vision/ [2 Januari 2013].

  • A-1