RANCANG BANGUN PROTOTYPE PENGOLAHAN CITRA MOBIL …
Transcript of RANCANG BANGUN PROTOTYPE PENGOLAHAN CITRA MOBIL …
RANCANG BANGUN PROTOTYPE PENGOLAHAN
CITRA MOBIL UNTUK MENDETEKSI SLOT
PARKIR YANG KOSONG DENGAN
MENGGUNAKAN MODEL SSD (SINGLE SHOT
DETECTOR) BERBASIS RASPBERRY PI
LAPORAN SKRIPSI
PRAYOGA HADITYA PUTRA 4616030010
PROGRAM STUDI TEKNIK MULTIMEDIA DAN JARINGAN
JURUSAN TEKNIK INFORMATIKA DAN KOMPUTER
POLITEKNIK NEGERI JAKARTA
2020
RANCANG BANGUN PROTOTYPE PENGOLAHAN
CITRA MOBIL UNTUK MENDETEKSI SLOT
PARKIR YANG KOSONG DENGAN
MENGGUNAKAN MODEL SSD (SINGLE SHOT
DETECTOR) BERBASIS RASPBERRY PI
LAPORAN SKRIPSI
Dibuat untuk Melengkapi Syarat-Syarat yang Diperlukan
untuk Memperoleh Diploma Empat Politeknik
PRAYOGA HADITYA PUTRA
4616030010
PROGRAM STUDI TEKNIK MULTIMEDIA DAN JARINGAN
JURUSAN TEKNIK INFORMATIKA DAN KOMPUTER
POLITEKNIK NEGERI JAKARTA
2020
ii
HALAMAN PERNYATAAN ORISINALITAS
Skripsi ini adalah hasil karya saya sendiri, dan semua sumber baik yang
dikutip maupun dirujuk telah saya nyatakan dengan benar.
Nama : Prayoga Haditya Putra
NIM : 4616030010
Tanggal : 3 Agustus 2020
Tanda Tangan :
iii
LEMBAR PENGESAHAN
Skripsi diajukan oleh :
Nama : Prayoga Haditya Putra
NIM : 4616030010
Program Studi : Teknik Multimedia dan Jaringan
Judul Skripsi : Rancang bangun Prototype Pengolahan Citra Mobil untuk
Mendeteksi Slot Parkir yang Kosong dengan
Menggunakan Model SSD (Single Shot Detector) berbasis
Raspberry Pi
Telah diuji oleh tim penguji dalam Sidang Skripsi pada hari Senin, Tanggal 3,
Bulan Agustus, Tahun 2020 dan dinyatakan LULUS.
Disahkan oleh
Pembimbing I : Indri Neforawati, S.T., M.T.
Penguji I : Fachroni Arbi Murad, S.Kom., M.Kom.
Penguji II : Defiana Arnaldy, S.Tp., M.Si.
Penguji III : Asep Kurniawan, S.Pd., M.Kom.
iv
KATA PENGANTAR
Puji syukur saya panjatkan kepada Tuhan Yang Maha Esa, karena atas berkat dan
rahmat-Nya, penulis dapat menyelesaikan Skripsi ini. Penulisan Skripsi ini
dilakukan dalam rangka memenuhi salah satu syarat untuk mencapai gelar Diploma
Empat Politeknik.
Penulis menyadari bahwa tanpa bantuan dan bimbingan dari berbagai pihak, dari
masa perkuliahan hingga penyusunan, sangatlah sulit penulis bagi penulis
menyelesaikan skripsi ini. Oleh karena itu, penulis mengucapkan terima kasih
kepada:
1. Ibu Indri Neforowati, S.T., M.Kom., selaku dosen pembimbing yang telah
menyediakan waktu, tenaga, dan pikiran untuk mengarahkan penulis dalam
penyusunan skripsi ini;
2. Bapak dan Ibu dosen serta Civitas Akademika Jurusan Teknik Informatika
Komputer Politeknik Negeri Jakarta yang selama hampir empat tahun tanpa
kenal letih mengajarkan ilmu yang sangat bermanfaat bagi penulis untuk
kedepannya;
3. Orang tua, adik dan kakak yang telah memberikan doa serta dukungan moril
maupun materil;
4. Dwika Nur Ridlo Robby selaku teman satu kelompok skripsi yang telah
membantu dan memberi dukungan dalam menyelesaikan Skripsi ini;
5. Teman-teman TMJ 2016 yang telah banyak membantu penulis dalam
menyelesaikan skripsi ini.
Akhir kata, penulis berharap Tuhan Yang Maha Esa berkenan membalas segala
kebaikan semua pihak yang telah membantu. Semoga skripsi ini membawa manfaat
bagi pengembang ilmu.
Depok
Penulis
v
HALAMAN PERNYATAAN PERSETUJUAN PUBLIKASI
SKRIPSI UNTUK KEPENTINGAN AKADEMIS
Sebagai sivitas akademik Politeknik Negeri Jakarta, saya yang bertanda tangan di
bawah ini:
Nama : Prayoga Haditya Putra
NIM : 4616030010
Program Studi : Teknik Multimedia dan Jaringan
Jurusan : Teknik Informatika dan Komputer
Jenis Karya : Skripsi/Tesis/Disertasi/Karya Ilmiah Lainnya*:.............
demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada
Politeknik Negeri Jakarta Hak Bebas Royalti Noneksklusif (Non-exclusive
Royalty-Free Right) atas karya ilmiah saya yang berjudul:
Rancang bangun Prototype Pengolahan Citra Mobil untuk Mendeteksi Slot
Parkir yang Kosong dengan Menggunakan Model SSD (Single Shot Detector)
berbasis Raspberry Pi
beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti
Noneksklusif ini Politeknik Negeri Jakarta berhak menyimpan,
mengalihmedia/format-kan, mengelola dalam bentuk pangkalan data (database),
merawat, dan mempublikasikan skripsi saya selama tetap mencatumkan nama saya
sebagai penulis/pencipta dan sebagai. pemilik Hak Cipta
Demikian pernyataan ini saya buat dengan sebenarnya.
Dibuat di : Depok Pada tanggal : 14 Agustus 2020
Yang menyatakan
(Prayoga Haditya Putra)
vi
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Rancang bangun Prototype Pengolahan Citra Mobil Untuk Mendeteksi Slot
Parkir yang Kosong dengan Menggunakan Model SSD (Single Shot Detector)
berbasis Raspberry Pi
ABSTRAK
Tempat parkir merupakan salah satu sarana yang tidak dapat dipisahkan dari sistem
transportasi. Informasi tentang adanya ketersediaan dan lokasi tempat parkir yang kosong
sangat penting untuk diketahui oleh pengendara khusunya mobil sebelum memasuki tempat
parkir. Pencarian slot parkir yang kosong pada tempat parkir dapat menyebabkan
terbuangnya waktu pengendara mobil untuk mengelilingi tempat parkir. Pada penelitian
ini dibuat suatu sistem menggunakan Raspberry Pi yang terintegrassi dengan aplikasi
android untuk mendeteksi slot parkir yang terisi dengan menerapkan object detection.
Metode yang digunakan menggunakan model SSD (Single Shot Detector) dengan
framework TensorFlow. Pengujian yang dilakukan pada sistem ini yaitu pengujian data
training, pengujian akurasi model dan pengujian integrasi pada scan QR dan sensor
ultrasonik yang digunakan sebagai pemicu penangkap gambar oleh webcam. Pengujian data training yang dilakukan dengan 100.000 step menghabiskan waktu 12 jam.
Hasil pengujian deteksi objek mobil terhadap model yang sudah ditraining menghasilkan
akurasi sebesar 100% dengan resolusi 1280x720 yang ditangkap oleh webcam dan akurasi
88,3% dengan resolusi 640x480 yang ditangkap oleh webcam, Hasil pengujian Sedangkan
pengujian integrasi dengan scan QR (webcam) mendapat rata-rata waktu 49,2 detik dan
dengan sensor ultrasonik mendapat rata-rata waktu 40,5 detik untuk melakukan
pembaruan gambar yang dikirim ke database.
Kata kunci: Object Detection, Parkir, Raspberry Pi, Single Shot Detector, Slot Kosong
vii
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
DAFTAR ISI
HALAMAN PERNYATAAN ORISINALITAS ............................................................ ii
LEMBAR PENGESAHAN ............................................................................................. iii
KATA PENGANTAR ...................................................................................................... iv
HALAMAN PERNYATAAN PERSETUJUAN PUBLIKASI ...................................... v
DAFTAR ISI.................................................................................................................... vii
DAFTAR TABEL ............................................................................................................. x
DAFTAR GAMBAR ........................................................................................................ xi
DAFTAR LAMPIRAN .................................................................................................. xiii
BAB I PENDAHULUAN .................................................................................................. 1
1.1 Latar Belakang .................................................................................................... 1
1.3 Batasan Masalah ................................................................................................. 2
1.4 Tujuan dan Manfaat ............................................................................................ 2
1.4.1 Tujuan ......................................................................................................... 3
1.4.2 Manfaat ....................................................................................................... 3
1.5 Metode Pelaksanaan Skripsi ............................................................................... 3
BAB II TINJAUAN PUSTAKA....................................................................................... 5
2.1 Penelitian Sejenis ................................................................................................ 5
2.2 Parkir ................................................................................................................... 5
2.3 Internet Of Things (IoT) ...................................................................................... 5
2.4 Raspberry Pi ........................................................................................................ 6
2.5 Webcam ............................................................................................................... 7
2.6 Flowchart ............................................................................................................ 7
2.7 Tensorflow .......................................................................................................... 9
2.8 Base64 ............................................................................................................... 10
2.9 Computer Vision ............................................................................................... 11
2.10 Object Detection ............................................................................................... 11
2.11 Image Processing .............................................................................................. 11
2.12 OpenCV ............................................................................................................ 12
2.13 Bahasa Pemrograman Phyton ........................................................................... 12
2.14 Model SSD (Single Shot Detector) ................................................................... 13
viii
BAB III PERENCANAAN DAN REALISASI ............................................................. 15
3.1 Perancangan Model dan Alat ............................................................................ 15
3.1.1 Deskripsi Alat ........................................................................................... 15
3.1.2 Cara Kerja Alat ......................................................................................... 18
3.1.3 Cara Kerja Perancangan Model ................................................................ 20
3.1.3.1 Pengumpulan Dataset ................................................................................ 21
3.1.3.2 Preprocessing ........................................................................................... 22
3.1.3.3 Training Data ............................................................................................ 23
3.1.3.4 Deteksi Objek Mobil ................................................................................. 24
3.2. Realisasi Program Model dan Alat ................................................................... 25
3.2.1 Realisasi Alat ............................................................................................ 25
3.2.2 Realisasi Pengumpulan Dataset ................................................................ 26
3.2.3 Realisasi Tahap Preprocessing ................................................................. 26
3.2.3.1 Pelabelan Gambar ..................................................................................... 26
3.2.3.2 Konversi Dataset XML ke CSV ................................................................ 27
3.2.3.3 Konversi Dataset CSV ke TFRecord ........................................................ 28
3.2.3.4 Label Map ................................................................................................. 28
3.2.4 Realisasi Training ..................................................................................... 28
3.2.4.1 Konfigurasi Pipeline Config ..................................................................... 29
3.2.4.2 Training Neural Network .......................................................................... 30
3.2.4.3 Export Graph Model ................................................................................. 30
BAB IV PEMBAHASAN ............................................................................................... 32
4.1 Pengujian........................................................................................................... 32
4.2 Deskripsi Pengujian .......................................................................................... 32
4.3 Prosedur Pengujian ........................................................................................... 32
4.4 Data Hasil Pengujian ......................................................................................... 33
4.4.1 Pengujian Training Dataset ....................................................................... 33
4.4.2 Pengujian Deteksi Objek Berdasarkan Resolusi ....................................... 34
4.4.3 Pengujian Deteksi Objek dengan Pencahayaan Kurang ........................... 38
4.4.4 Pengujian Scan QR pada Setiap Slot ........................................................ 39
4.4.5 Pengujian Ultrasonik pada Sistem ............................................................ 40
4.5 Analisis Data / Evaluasi .................................................................................... 40
4.5.1 Analisis Data Training .............................................................................. 40
ix
4.5.2 Analisis Deteksi Objek Berdasarkan Resolusi .......................................... 41
4.5.3 Analisis Deteksi Objek dengan Pencahayaan Kurang .............................. 44
4.5.4 Analisis Scan QR pada Setiap Slot ........................................................... 44
4.5.5 Analisis pengujian ultrasonik pada Sistem ............................................... 45
BAB V PENUTUP ........................................................................................................... 47
5.1 Kesimpulan ....................................................................................................... 47
5.2 Saran ................................................................................................................. 47
DAFTAR ISI.................................................................................................................... 48
x
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
DAFTAR TABEL
Tabel 1 Komponen Alat ........................................................................................ 16
Tabel 2 Analisis Pengujian Resolusi 1280x720 .................................................... 42
Tabel 3 Analisis Pengujian Resolusi 640x480 ...................................................... 42
Tabel 4 Analisis Pengujian Scan QR .................................................................... 44
Tabel 5 Analisis Pengujian Ultrasonik .................................................................. 45
xi
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
DAFTAR GAMBAR
Gambar 2. 1 Arsitektur IoT ..................................................................................... 6
Gambar 2. 2 Infrastruktur Raspberry Pi 3 ............................................................... 6
Gambar 2. 3 Tensorflow ......................................................................................... 9
Gambar 2. 4 Arsitektur Umum Tensorflow .......................................................... 10
Gambar 2. 5 Arsitektur Single Shot Detector ....................................................... 13
Gambar 3. 1 Flowchart Cara Kerja Alat…………………………………………18
Gambar 3. 2 Diagram Blok ................................................................................... 19
Gambar 3. 3 Flowchart Perancangan Model ......................................................... 20
Gambar 3. 4 Data Train ......................................................................................... 21
Gambar 3. 5 Data Test .......................................................................................... 22
Gambar 3. 6 Flowchart Preprocessing .................................................................. 22
Gambar 3. 7 Training Proses ................................................................................. 23
Gambar 3. 8 Flowchart Deteksi Objek .................................................................. 24
Gambar 3. 9 Rangkaian Alat ................................................................................. 25
Gambar 3. 10 Proses Pelabelan ............................................................................. 27
Gambar 3. 11 Kode Konversi XML ke CSV ........................................................ 27
Gambar 3. 12 Kode Konversi CSV ke TFRecord ................................................. 28
Gambar 3. 13 Konfigurasi Label Map .................................................................. 28
Gambar 3. 14 Jenis Model .................................................................................... 29
Gambar 3. 15 Konfigurasi Step ............................................................................. 29
Gambar 3. 16 Konfigurasi Train Input .................................................................. 29
Gambar 3. 17 Konfigurasi Eval Config................................................................. 30
Gambar 3. 18 Training Program .......................................................................... 30
Gambar 3. 19 Program Export Graph ................................................................... 31
Gambar 4. 1 Proses Training ................................................................................. 33
Gambar 4. 2 Grafik Proses Training ..................................................................... 34
Gambar 4. 3 Hasil yang terdeteksi ........................................................................ 34
Gambar 4. 4 Hasil yang Terdeteksi ....................................................................... 35
Gambar 4. 5 Hasil yang Terdeteksi ....................................................................... 35
Gambar 4. 6 Hasil yang Terdeteksi ....................................................................... 36
Gambar 4. 7 Hasil yang Terdeteksi ....................................................................... 36
Gambar 4. 8 Hasil yang Terdeteksi ....................................................................... 36
Gambar 4. 9 Hasil yang Terdeteksi ....................................................................... 37
Gambar 4. 10 Hasil yang Terdeteksi ..................................................................... 37
Gambar 4. 11 Hasil yang Terdeteksi ..................................................................... 38
Gambar 4. 12 Pengujian Pencahayaan Kurang ..................................................... 38
Gambar 4. 13 Hasil Pencahayaan Kurang............................................................. 39
Gambar 4. 14 Mengambil Data ............................................................................. 39
Gambar 4. 15 Berhasil Mengirim Gambar ............................................................ 39
Gambar 4. 16 Hasil Gambar di Database ............................................................. 39
xii
Gambar 4. 17 Trigger Ultrasonik .......................................................................... 40
Gambar 4. 18 Berhasil dikirim .............................................................................. 40
Gambar 4. 19 Data Diterima Database ................................................................. 40
Gambar 4. 20 Training Selesai .............................................................................. 41
Gambar 4. 21 Hasil Model yang Selesai Training ................................................ 41
Gambar 4. 22 Isi file Protobuf............................................................................... 41
xiii
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
DAFTAR LAMPIRAN
L-1 Daftar Riyawat Hidup Penulis ........................................................................ 51
L-2 Source Code ................................................................................................... 52
L-3 Dokumentasi Pengujian .................................................................................. 57
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Tempat parkir merupakan salah satu sarana yang tidak dapat dipisahkan dari sistem
transportasi. (Nurhayati dan Ilmi, 2017) Tempat parkir sangat dibutuhkan terutama
di pusat perbelanjaan. Informasi tentang adanya ketersediaan dan lokasi tempat
parkir yang kosong sangat penting untuk diketahui oleh pengendara khususnya
mobil. Banyaknya jumlah mobil di tempat parkir dapat menjadi suatu kendala bagi
pengendara mobil lain yang akan memasuki suatu tempat tanpa mengetahui
ketersediaan tempat parkir. Hal ini menyebabkan terbuangnya waktu pengendara
mobil untuk mengelilingi tempat parkir. (Putra dan Candradewi, 2017)
Perkembangan sistem parkir saat ini sudah banyak diterapkan seperti menggunakan
sensor ultrasonik, geomagnetik serta infrared ray (Ding dan Yang, 2019). Namun
sistem tersebut masih kurang maksimal karena hanya menentukan jumlah berapa
slot yang belum terisi dan yang sudah terisi sehingga pengendara tidak mengetahui
dimana letak slot parkir yang kosong maupun yang sudah terisi untuk menghemat
waktu mencari parkir.
Berdasarkan masalah diatas, maka dibutuhkan suatu sistem yang dapat memantau
tempat parkir secara keseluruhan dan terus menerus sehingga dapat memberikan
informasi tentang ketersediaan dan lokasi tempat parkir yang kosong. Pengolahan
citra adalah teknik yang digunakan untuk memproses dan memanipulasi sebuah
citra digital untuk mendapatkan informasi tertentu dari citra yang diproses. Salah
satu pemanfaatannya yaitu object detection untuk pendeteksian ketersediaan slot
parkir.
Sistem ini dirancang dengan kamera sebagai alat pemantau yang ditempatkan
sedemikian rupa pada sebuah tiang sehingga dapat memantau keseluruhan lahan
parkir. Kamera tersebut untuk mendeteksi objek kendaraan roda empat
menggunakan model SSD (Single Shot Detector) pada suatu gambar hasil capture
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
dari kamera webcam. Kemudian hasil tersebut ditampilkan pada aplikasi Park-In
untuk memberikan informasi kepada pengguna.
1.2 Perumusan Masalah
Dari uraian di atas dapat dirumuskan sebuah masalah dalam penelitian ini adalah:
1. Bagaimana cara merancang prototype pendeteksian slot parkir yang kosong
dengan memanfaatkan pengolahan citra mengggunakan model SSD (Single
Shot Detector) berbasis Raspberry Pi 3?
2. Bagaimana tingkat akurasi deteksi mobil untuk mendefinisikan slot parkir
yang terisi dengan model yang sudah dibuat?
3. Bagaimana cara merancang pengambilan gambar agar webcam menangkap
gambar ketika user melakukan scan QR?
4. Bagaimana cara mengintegrasikan hasil object detection dengan web service
yang terdiri dari API dan database
1.3 Batasan Masalah
Agar penulisan dari Skripsi ini tidak menyimpang dari topik yang telah ditentukan
dan direncanakan dengan matang. Sehingga dapat mempermudah dalam
mendapatkan data dan informasi yang relevan, maka pada penelitian ini diberikan
batasan sebagai berikut:
1. Mikrokontroller yang digunakan untuk sistem ini yaitu Raspberry Pi Model
B+.
2. Pengambilan citra mobil menggunakan kamera webcam logitech c525
3. Mengirimkan data hasil objek deteksi dengan format jpg ke aplikasi.
4. Kamera diletakkan fix tidak bergerak atau berubah tempat.
5. Menggunakan bahasa pemrograman Pyhton dengan framework Tensorflow.
6. Sistem ini dibangun untuk parkir pada lahan yang datar dan terbuka.
7. Parkiran pada sistem ini dikhususkan untuk kendaraan roda empat
1.4 Tujuan dan Manfaat
Adapun tujuan dan manfaat yang ingin dicapai dari pembuatan skripsi ini antara
lain sebagai berikut:
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
1.4.1 Tujuan
1. Merancang prototype pendeteksian slot parkir yang sudah terisi dengan
memanfaatkan pengolahan citra mengggunakan metode SSD (Single Shot
Detector) berbasis Raspberry Pi.
2. Mengetahui kinerja tingkat akurasi dari metode SSD (Single Shot Detector)
dalam melakukan deteksi objek pada sebuah mobil.
3. Merancang sistem pengambilan gambar pada kamera webcam.
4. Mengintegrasikan object detection dengan aplikasi yang terhubung dengan
web service yang terdiri dari API dan database
1.4.2 Manfaat
1. Dapat membantu memudahkan pengendara untuk mengetahui slot parkir
yang kosong.
2. Dapat membantu menghemat waktu pengendaran dalam pencarian slot parkir
yang kosong, sehingga pengendara tidak harus berkeliling mencari slot
parkir.
1.5 Metode Pelaksanaan Skripsi
Metode pelaksanaan skripsi ini adalah sebagai berikut:
1. Studi Literatur
Studi literatur dilakukan dengan melakukan pencarian dan pengumpulan literatur-
literatur yang berkaitan metode pada objek deteksi menggunakan model SSD
(Single Detector Shot), penggunaan Open CV, penggunaan Tensorflow. Baik itu
berupa artikel, buku refrensi, jurnal-jurnal, internet, dan sumber-sumber yang dapat
menunjang penelitian sebagai bahan referensi untuk menyelesaikan permasalahan
yang dihadapi.
2. Analisis Kebutuhan
Melakukan analisis terhadap kebutuhan pada pembuatan sistem. Seperti alat yang
dipakai untuk dibangunnya protopype dan pembuatan model agar tercipta prediksi
yang akurat.
3. Perancangan Sistem
Meliputi perancangan hardware (perangkat keras) dan perancangan software
(perangkat lunak) dari sistem ini serta perancangan model menggunakan Single
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Shot Detector sebagai penyelesaian masalah dengan batasan masalah yang telah
ditentukan.
4. Pembuatan Sistem
Melakukan pembuatan sistem baik perangkat keras dan perangkat lunak sehingga
sistem siap diuji coba. Perangkat keras yang akan dibuat yaitu lahan parkir dengan
4 slot serta tiang untuk kamera yang akan diimplementasikan pada sebuah maket.
Sedangkan pada pembuatan perangkat lunak yaitu meliputi pembuatan model yang
akan menyiapkan data-data berupa gambar yang dibagi dua yaitu data train dan
data test, dimana data train untuk membuat model dan data test untuk menguji
model yang sudah dibuat.
5. Pengujian Sistem
Melakukan Meliputi pengujian terhadap alat dengan menghasilkan data-data
dengan beberapa parameter yang diterapkan untuk selanjutnya akan dianalisa.
Pengujian akan dilakukan pada posisi atau jarak tertentu sehingga dapat mengetahui
tingkat keberhasilan dari deteksi objek pada sebuah mobil.
6. Analisis Hasil
Melakukan analisis terhadap seluruh data dan pengujian model yang telah
didapatkan.
7. Perbaikan
Memperbaiki kekurangan yang ada pada model dan memperbaiki error yang terjadi
pada kinerja alat dan sistem yang tidak sesuai dengan kebutuhan yang telah
direncanakan di awal.
8. Dokumentasi Kerja
Pengambilan gambar dan video sebagai bukti dokumentasi selama pengerjaan
dilakukan.
5
BAB II
TINJAUAN PUSTAKA
2.1 Penelitian Sejenis
Terdapat beberapa penelitian sejenis mengenai deteksi parkir menggunakan metode
object detection. Penelitian pertama dilakukan oleh Evan Tanuwijaya dan Chastine
Fatichah pada tahun 2020 yang berjudul “Penandaan Otomatis Tempat Parkir
Menggunakan YOLO untuk Mendeteksi Ketersediaan Tempat Parkir Mobil pada
Video CCTV”. Penelitian ini menerapkan metode You Only Look Once (YOLO)
V3 untuk mendeteksi posisi tempat parkir yang ada pada lapangan parkir kemudian
membuat penanda pada tempat parkir tersebut. Setelah tempat parkir pada lapangan
parkir tersebut ditandai, masing-masing penanda akan diklasifikasikan apakah
tempat parkir tersebut terisi atau tidak. (Tanuwijaya et al., 2020)
Penelitian kedua dilakukan oleh Rizqy Maulana, Hurriyatul Fitriyah , Esa Prakasa
pada tahun 2018 yang berjudul “Implementasi Sistem Deteksi Slot Parkir Mobil
Menggunakan Metode Morfologi dan Background Subtraction. Penelitian ini
menerapkan metode morfologi dan background subtraction sehingga sistem dapat
mendeteksi jumlah slot parkir dan ketersediaan tiap slot parkir sesuai dengan
keadaan sebenarnya menggunakan sebuah sistem embedded yang terdiri dari modul
kamera V2 Raspberry Pi dan Raspberry Pi 3. (Maulana et al., 2018)
2.2 Parkir
Parkir merupakan prasarana transportasi yang diperuntukan sebagai tempat
pemberhentian kendaraan dalam jangka waktu pendek atau lama, sesuai dengan
kebutuhan pengendara. (Noperiyadi, 2015) Parkir merupakan suatu kebutuhan bagi
pemilik kendaraan yang menginginkan kendaraannya diparkir ditempat dimana
tempat tersebut mudah untuk dicapai, salah satunya dengan parkir di badan jalan.
(Wahida, 2018)
2.3 Internet Of Things (IoT)
Konsep IoT diartikan sebagai sebuah kemampuan untuk menghubungkan objek -
objek cerdas dan memungkinkannya untuk berinteraksi dengan objek lain,
lingkungan maupun dengan peralatan komputasi cerdas lainnya melalui jaringan
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
internet. IoT dalam berbagai bentuknya telah mulai diaplikasikan pada banyak
aspek kehidupan manusia. (Arimbawa et al., 2019)
Gambar 2. 1 Arsitektur IoT
(Sumber: https://mobnasasemka.com/2016)
2.4 Raspberry Pi
Raspberry Pi adalah modul mikrokomputer yang memiliki input dan output digital
port seperti pada board mikrokontroler. Raspberry Pi merupakan sebuah komputer
mini ukuran saku, yang terdiri dari beberapa generasi. Namun dari generasi
tersebut, dibagi kembali menjadi beberapa tipe Raspberry Pi board. Terdapat tipe
A, A+, B dan B+. Perbedaan antara kedua tipe tersebut pada RAM dan Port LAN.
Untuk tipe A memiliki RAM 256 Mb dan tidak memiliki port LAN ( ethernet),
kemudian untuk tipe B memiliki RAM 512 Mb dan memiliki port LAN. (Azkarika,
2017)
Gambar 2. 2 Infrastruktur Raspberry Pi 3
Processor yang dapat mengakses pi GPIO sebagai wiring, kemudian RAM
digunakan sebagai menyimpan data sementara. Setelah itu terdapat USB HUB yang
bercabang menjadi ethernet dan USB. Ethernet disini berguna sebagai remote
desktop. Untuk USB terdapat 2 port yang bisa digunakan untuk flashdisk, webcam,
kamera, mouse, keyboard, dan sebagainya.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Raspberry Pi board memiliki input dan output beserta kegunaannya, yaitu:
1. HDMI, berguna untuk menyambungkan ke layar atau TV yang terdapat port
HDMI juga. Cara menghubungkan port HDMI Raspberry Pi ke layar dengan
menggunakan kabel konverter HDMI ke VGA.
2. Video analog (RCA port), dapat dihubungkan ke TV apabila tidak mempunya
monitor PC.
3. Audio output, berguna untuk mengeluarkan suara dengan menggunakan 3.5
mm jack.
4. 2 buat port USB, digunakan untuk menghubungkan keyboard dan mouse.
5. 26 pin I/O digital.
6. CSI port (Camera Serial Interface), merupakan port khusus dapat
menyambungkan kamera Pi.
7. DSI (Display Serial Interface).
8. LAN port, dapat digunakan untuk menyambungkan Raspberry Pi menuju
modem dengan menggunakan kabel LAN.
9. SD card slot, berguna untuk menyimpan SD card memori untuk menyimpan
sistem operasi yang berfungsi seperti hardisk.
2.5 Webcam
Webcam (singkatan dari web camera) adalah sebutan bagi kamera real-time
(bermakna keadaan pada saat ini juga) yang gambarnya bisa diakses atau dilihat
melalui World Wide Web, program instant messaging, atau aplikasi video call.
Webcam adalah sebuah kamera video digital kecil yang dihubungkan ke komputer
melalui port USB ataupun port COM dan hingga sekarang webcam sudah lebih
maju dan tertanam lansung dilaptop tanpa menggunakan port USB.
Sebuah web camera biasanya dilengkapi dengan software, software ini mengambil
gambar dari kamera digital secara terus menerus ataupun dalam interval waktu
tertentu dan menyiarkannya melalui koneksi internet. (Andre, 2016)
2.6 Flowchart
Flowchart merupakan sebuah penggambaran secara grafik dari langkah-langkah
dan urut-urutan dalam prosedur dari suatu program. Flowchart menolong analis dan
programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam
pengoperasian. Flowchart biasanya mempermudah penyelesaian suatu masalah
khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut. Flowchart
memiliki urutan-urutan langkah kerja suatu proses yang digambarkan dengan
menggunakan simbol-simbol yang disusun secara sistematis. (Iswandy, 2015)
Simbol-simbol yang digunakan pada flowchart dapat dilihat pada tabel 1.
Tabel 1 Simbol – simbol flowchart
Simbol Nama Fungsi
Terminator Permulaan/akhir program
Garis Alir
Arah aliran program
Preparation Proses Inisialisasi
Proses
Proses perhitungan / proses
pengolahan data
Input/Output Data
Proses input/output data,
parameter, dan informasi
Predefined
Process
(Sub Program)
Permulaan sub program/proses
menjalankan sub program
Decision
Perbandingan pernyataan,
penyeleksian data yang
memberi pilihan untuk langkah
selanjutnya
(On Page
Connector)
Penghubung bagian-bagian
flowchart yang berada pada
satu halaman
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Off Page
Connector
Penghubung bagian-bagian
flowchart yang berada pada
halaman berbeda
2.7 Tensorflow
Gambar 2. 3 Tensorflow
Tensorflow adalah open source library untuk machine learning yang diperkenalkan
oleh Google dan mendukung beberapa bahasa pemrograman. Saat ini tensorflow
sangat berperan pada penelitian skala besar dalam machine learning dan penelitian
deep neural network yang membutuhkan komputasi paralel secara masif. Dengan
cara melakukan penggabungan atas suatu bentuk aljabar komputasi dan teknik
kompilasi optimal, pemanfaatan tensorflow akan memberikan kemudahan dalam
proses penghitungan ekspresi matematika yang majemuk, dimana permasalahan
yang kerap terjadi adalah lamanya waktu proses yang dibutuhkan dalam
menyelesaiakn bentuk perhitungan matematika. Tensorflow sendiri dapat
digunakan pada semua sistem operasi.
Fitur utama yang dimiliki oleh tensorflow meliputi:
1. Pendefinisian, pengoptimalan serta proses perhitungan yang dilakukan secara
efisien dalam bentuk ekspresi matematis yang juga melibatkan bentuk
multidimensional array atau disebut dengan istilah tensors.
2. Fitur pembelajaran mesin serta fitur pemrograman yang mendukung komputasi
jaringan syaraf dalam. Tensorflow dapat menarik pengetahuan yang diberikan
kedalamnya untuk dipergunakan dalam proses penyelesaian tugas perhitungan
ekpresi matematika.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
3. Graphics Processing Unit (GPU) yang transparan, serta kemampuan optimalisasi
dan otomatisasi manajemen memori yang sama dengan data yang dipakai. Dimana
tensorflow memiliki kemampuan untuk menuliskan similarity code serta dapat
menjalankan dengan maksimal pada bagian Central Processing Unit (CPU)
ataupun pada bagian GPU. Lebih khususnya lagi, tensorflow dapat mengetahui
mana saja bagian perhitungan yang akan dan harus ditransfer ke dalam GPU.
4. Large data sets serta high computing scalability pada seluruh bagiannya,
sehingga memberikan akurasi yang baik dalam pemanfaatannya. (Sutjiadi et al.,
2020).
Arsitektur umum dari Tensorflow dapat dilihat pada Gambar 2.4 berikut ini:
Gambar 2. 4 Arsitektur Umum Tensorflow
(Sumber: www.tensorflow.org)
2.8 Base64
Transformasi base64 merupakan salah satu algoritma untuk encoding dan decoding
suatu data ke dalam format ASCII, yang didasarkan pada bilangan dasar 64 atau
bisa dikatakan sebagai salah satu metode yang digunakan untuk melakukan
encoding (penyandian) terhadap data binary. Karakter yang dihasilkan pada
transformasi base64 ini terdiri dari A..Z, a..z dan 0..9, serta ditambah simbol “+”
dan “/” serta satu buah karakter sama dengan (=) di dua karakter terakhir yang
dipakai untuk pengisian pad atau dengan kata lain penyesuaian dan menggenapkan
data binary. Karakter simbol yang akan dihasilkan akan tergantung dari proses
algoritma yang berjalan. (Gunadhi et al., 2017)
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
2.9 Computer Vision
Computer Vision merupakan salah satu cabang ilmu pengetahuan yang bertujuan
untuk membuat suatu keputusan yang berguna untuk mengenali objek fisik nyata
dan keadaan berdasarkan sebuah gambar atau citra. Computer Vision menjadikan
komputer “acts like human sight”, sehingga mendekati kemampuan manusia dalam
menangkap informasi visual. Kemampuan itu diantaranya adalah:
1. Object Detection: Mengenali sebuah objek ada pada scene dan mengetahui
dimana batasanya.
2. Recognition: Menempatkan label pada objek.
3. Description: Menugaskan properti kepada objek.
4. 3D Inference: Menafsirkan adegan 3D dari 2D yang dilihat.
5. Interpreting motion: Menafsirkan gerakan. (Dewi, 2018)
2.10 Object Detection
Object detection menentukan keberadaan suatu objek dan ruang lingkupnya serta
lokasi pada sebuah gambar. Hal ini dapat diperlakukan sebagai pengenalan objek
kelas dua, dimana satu kelas mewakili kelas objek dan kelas lain mewakili kelas
non-objek. Deteksi objek dapat dibagi lagi menjadi soft detection dan hard
detection. Soft detection hanya mendeteksi adanya objek sedangkan hard detection
mendeteksi adanya objek serta lokasi objek. (Jalled dan Voronkov, 2016)
2.11 Image Processing
Citra adalah gambar pada bidang dua dimensi. Ditinjau dari sudut pandang
matematis, citra merupakan fungsi menerus (continues) dari intensitas cahaya pada
bidang dua dimensi. Sumber cahaya menerangi objek, objek memantulkan kembali
sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh alat – alat
optik, misalnya mata pada manusia, kamera, pemindai dan sebagainya, sehingga
bayangan objek yang disebut citra tersebut terekam.
Pengolahan citra digital adalah (Digital Image Processing) adalah sebuah disiplin
ilmu yang mempelajari tentang teknik-teknik mengolah citra. Citra yang dimaksud
disini adalah gambar diam (foto) maupun gambar bergerak (yang berasal dari
webcam). Sedangkan digital disini mempunyai maksud bahwa pengolahan citra
atau gambar dilakukan secara digital menggunakan komputer.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Suatu citra digital melalui pengolahan citra digital menghasilkan citra digital yang
baru, termasuk didalamnya adalah perbaikan citra dan peningkatan kualitas citra.
Sedangkan analisis citra digital menghasilkan suatu keputusan atau suatu data,
termasuk didalamnya adalah pengenalan pola. (Arsy et al., 2016)
2.12 OpenCV
Open CV (Open Source Computer Vision Library) adalah salah satu software
pustaka yang ditujukan untuk pengolahan citra dinamis secara real-time, yang
dibuat oleh Intel, dan sekarang didukung oleh Willow Garage dan Itseez. OpenCV
dirilis dibawah lisensi permisif BSD yang lebih bebas dari pada GPL, dan
memberikan kebebasan sepenuhnya untuk dimanfaatkan secara komersil tanpa
perlu mengungkapkan kode sumbernya. Ia juga memiliki antar muka yang
mendukung bahasa pemrograman C++, C, Python dan Java, termasuk untuk sistem
operasi Windows, Linux, Mac OS, iOS dan Android. OpenCV didisain untuk
efisiensi dalam komputasi dan difokuskan pada aplikasi real-time.
Intinya, OpenCV bersama Python dimanfaatkan untuk mengolah image atau video
(tumpukan frame/image) sesuai dengan tujuan masing-masing yang melibatkan
kamera untuk menangkap gambar lalu diolah di komputer. Sebenarnya, OpenCV
bisa digunakan di bahasa C++ dan Java, selain Python, tetapi bahasa yang paling
mudah dari ketiga ini adalah Python karena sederhana. Saya sudah mempelajari
C++ untuk OpenCV, ternyata cukup rumit kode-kodenya. Maka, Anda beruntung
mempelajari Python dan juga beruntung mendapatkan modul ini. (Zein, 2018)
2.13 Bahasa Pemrograman Phyton
Python adalah bahasa pemrograman yang bersifat open source. Bahasa
pemrograman ini dioptimalisasikan untuk software quality, developer productivity,
program portability, dan component integration. Python telah digunakan untuk
mengembangkan berbagai macam perangkat lunak, seperti internet scripting,
systems programming, user interfaces, product customization, numberic
programming dll. Python saat ini telah menduduki posisi 4 atau 5 bahasa
pemrograman paling sering digunakan di seluruh dunia. Bahasa pemrograman
Python memiliki beberapa fitur yang dapat digunakan oleh pengembang perangkat
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
lunak (Harismawan et al., 2018). Berikut adalah beberapa fitur yang ada pada
bahasa pemrograman Python:
1. Multi Paradigm Design
2. Open Source
3. Simplicity
4. Library Support
5. Portability
6. Extendable
7. Scalability
2.14 Model SSD (Single Shot Detector)
Single Shot Detector (SSD) adalah sebuah metode untuk mengenali atau
mendeteksi sebuah object pada suatu gambar dengan menggunakan single deep
neural network dan salah satu algoritma deteksi object yang paling populer karena
kemudahan implementasi, akurasi yang baik vs rasio yang dibutuhkan komputasi.
Single Shot Detector (SSD) hanya perlu mengambil satu bidikan tunggal untuk
mendeteksi beberapa object didalam gambar.
Metode Single Shot Detector (SSD) ini termasuk kedalam deteksi object secara real
time, meskipun lebih intuitif daripada rekan-rekannya seperti R-CNN, Fast R-CNN
Faster R-CNN dan You Only Look Once (YOLO), Single Shot Detector (SSD)
adalah algoritma yang sangat kuat. Menjadi sederhana dalam desain,
implementasinya lebih langsung dari GPU dan sudut pandang kerangka kerja
pembelajaran yang dalam dan dengan demikian melakukan pengangkatan berat
deteksi dengan kecepatan kilat.
Gambar 2. 5 Arsitektur Single Shot Detector
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Pada arstitektur SSD termasuk kedalam jenis Convolutation Neural Network,
Convolutional Neural Network (CNN) adalah salah satu jenis Neural Network yang
biasa digunakan pada data image. CNN bisa digunakan untuk mendeteksi dan
mengenali object pada sebuah gambar. Arsitektur dari CNN dibagi menjadi 2
bagian besar, Feature Extraction Layer dan Convolutional Layer. Dimana pada
bagian Feature Extraction Layer ini adalah melakukan “encoding” dari sebuah
image menjadi features yang berupa angka-angka yang merepresentasikan gambar
tersebut, Sedangkan dibagian Convolutional Layer terdiri dari neuron yang tersusun
sedemikian rupa sehingga membentuk sebuah filter dengan panjang dan tinggi
(pixels). Secara matematis, Convolutional layer atau yang dalam Bahasa
Indonesianya konvolusi, adalah integral yang mencerminkan jumlah lingkaran dari
sebuah sudut fungsi F yang digeser atas fungsi g sehingga menghasilkan fungsi h.
(Thohari dan Adhitama, 2019)
15
BAB III
PERENCANAAN DAN REALISASI
3.1 Perancangan Model dan Alat
Perancangan model mendeteksi objek slot parkir yang terisi dengan Bahasa
pemrograman python. Perancangan model bertujuan memberikan informasi tentang
slot parkir mana yang sudah terisi pada suatu lahan parkir.
Bab ini akan membahas tentang perancangan model deteksi objek menggunakan
model SSD yang terdiri dari deskripsi model, perancangan model, dan cara kerja
model.
3.1.1 Deskripsi Alat
Alat yang akan dirancang dan dibangun yaitu sebuah prototype yang akan
digunakan untuk mendeteksi slot terisi pada lahan parkir. Sistem akan mendeteksi
sebuah mobil untuk memprediksi sebuah slot terisi atau belum, data yang
digunakan yaitu hasil gambar yang ter-capture dari webcam yang terhubung
dengan raspberry pi 3 kemudian raspberry mengirim hasil capture gambar untuk
ditampilkan di aplikasi android. Sebelum sistem dapat melakukan proses deteksi
akan dilakukan sebuah training dengan menggunakan dataset sebanyak 200
gambar. Dataset tersebut dibagi menjadi 2 folder yaitu untuk data train dan data
test, dimana data train untuk melatih gambar-gambar dari objek mobil dan data test
untuk menguji model yang ditraining sebelumnya. Data yang telah di training akan
dibuat modelnya menggunakan metode SSD (Single Shot Detector). Alur dalam
perancangan alat dimulai dengan melakukan capture gambar menggunakan QR
scanner dan modul sensor ultrasonik, QR scanner digunakan ketika user baru
melakukan parkir pada slot yang telah dipilih sedangkan modul sensor ultrasonik
digunakan ketika user telah selesai parkir dan menuju keluar sehingga melewati
sensor ultrasonik, kemudian raspberry pi akan memproses hasil capture gambar
tersebut dengan melakukan deteksi objek. Setelah diproses hasil deteksi tersebut
akan dikirim ke database dengan encode base64 dan akan didecode oleh aplikasi
sehingga hasil deteksi berupa gambar dapat ditampilkan pada aplikasi.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Tabel 1 Komponen Alat
No Nama Komponen
Alat
Fungsi Spesifikasi
1 Raspberry Pi 3B+ - Sebagai kontroler
utama untuk
pengoperasian alat
embeded
- Broadcom BCM2837B0,
Cortex-A53 (ARMv8) 64-
bit @ 1.4GHz
- 1 GB RAM LPDDR2
SDRAM
- 2.4GHz and 5GHz IEEE
802.11.b/g/n/ac wireless
LAN, - Bluetooth:
Bluetooth 4.2, BLE
- Ethernet: Gigabit Ethernet
over USB 2.0 (maximum
throughput 300 Mbps)
- 40 pin GPIO
- Display Output: HDMI
- 4 port USB 2.0
- 3.5mm Audio Jack
- Penyimpanan: Micro SD
2 Kamera Webcam
Logitech C525
Kamera webcam
berfungsi untuk
pengambilan citra
tempat parkir
- 8 MP
- Resolusi 1080p
3 Sensor Ultrasonik Sebagai trigger untuk
melukan capture
ketika user keluar
parkiran
Operating voltage: +5V
Theoretical Measuring
Distance: 2cm to 450cm
Practical Measuring
Distance: 2cm to 80cm
Accuracy: 3mm
Measuring angle
covered: <15°
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Operating Current:
<15mA
Operating Frequency:
40Hz
4 Adaptor Sebagai power untuk
raspberry
DC5V 3A
5 Kode QR - Sebagai
authentikasi booking
untuk mengawali
waktu parkir dan
mengakhiri waktu
parkir
- Sebagai pemicu
untuk pembayaran
pada aplikasi
- sebagai trigger
untuk melakukan
capture
Tersedia pada tiap slot
parkir
6 Tiang Sebagai tiang untuk
menyangga kamera
webcam
60 cm
7 Papan Kayu Sebagai alas untuk
tiang
1 lembar
Tabel 1 merupakan beberapa komponen alat yang digunakan untuk merancang
sistem pada penelitian ini. Tipe Raspberry Pi yang dipakai yaitu Raspberry Pi 3
model B+ yang dihubungkan dengan modul sensor ultrasonik dan kamera webcam.
Pembuatan prototype pada sistem ini menggunakan papan kayu sebagai lahan
parkir dan tiang setinggi 60cm sebagai penyangga kamera.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
3.1.2 Cara Kerja Alat
a. Flowchart
Perancangan alat dibuat dengan menggunakan sensor ultrasonik, kamera, dan
raspberry pi. Adapun flowchart mengenai cara kerja alat pada sistem deteksi objek
mobil seperti yang terlihat pada Gambar 3.1.
Gambar 3. 1 Flowchart Cara Kerja Alat
Gambar 3.1 merupakan flowchart yang menjelaskan cara kerja alat. Untuk
melakukan sebuah capture kamera, dibutuhkan penerima trigger dari QR code dan
sensor ultrasonik. Ketika user melakukan scan QR pada aplikasi, sistem akan
memulai proses dengan secara terus menerus mengambil data valid scan QR dari
database. Ketika ada data yang terdeteksi, maka kamera akan mengambil gambar
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
kondisi lahan parkir dimana sudah ada mobil yang terparkir. Sedangkan sensor
ultrasonik akan membaca jarak ketika user telah selesai parkir dan keluar melewati
sensor. Jika terbaca kurang dari 10cm, maka kamera akan mengambil gambar
kondisi lahan parkir ketika mobil keluar lahan parkir.
Hasil gambar yang sudah diproses dengan program deteksi objek dari kedua kondisi
tersebut akan dilakukan encode menggunakan base6. Data hasil encode berupa
string dan dikirim ke database. Data tersebut akan diproses untuk ditampilkan pada
aplikasi android.
b. Diagram Blok Alat
Gambar 3. 2 Diagram Blok
Gambar 3.2 menunjukan bahwa sistem terdiri dari input, proses, dan output. Input
pertama yaitu dari kamera webcam dan input kedua dari sensor ultrasonik. Input
pertama mendapatkan trigger dari hasil scan yang ada database, kemudian input
kedua yaitu sensor ultrasonik membaca jarak kurang dari 10cm. Keduanya akan
memacu kamera webcam untuk melakukan capture yang hasilnya diproses
menggunakan metode SSD (Single Shot Detector) pada Raspberry, kemudian
mengahsilkan gambar yang sudah ada deteksi objeknya. Langkah selanjutnya
gambar akan dilakukan encode menggunakan Base64 yang hasilnya berupa string.
Kemudian hasilnya dikirim ke database menggunakan “POST” request method.
Aplikasi android membaca ada data gambar lalu melakukan decode dan
ditampilkan di aplikasi berupa gambar.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
3.1.3 Cara Kerja Perancangan Model
Perancangan model dibuat dengan menggunakan dataset mobil untuk mendeteksi
slot parkir yang terisi dengan model SSD (Single Shot Detector). Adapun tahap-
tahap dalam pembuatan model seperti yang ditunjukkan flowchart pada gambar 3.3
berikut ini.
Gambar 3.3 Flowchart Perancangan Model
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Alur dalam perancangan model dimulai dengan pengumpulan data gambar atau
dataset yang menggunakan kamera telepon seluler dengan total 250 gambar, 200
gambar untuk proses training dan 50 gambar untuk test/validation. Setelah itu ada
tahap perancangan preprocessing sebelum melakukan training. Training data
menggunakan model SSD untuk dapat memprediksi atau mendeteksi slot terisi pada
tempat parkir dengan data gambar. Setelah data tersebut di training akan dilakukan
pengujian model model SSD yang sudah ditraining dengan data tes yang berasal
dari gambar yang sudah dikumpulkan. Model disebut akurat apabila jika diuji
dengan gambar yang minimal terdapat 1 mobil akan mendeteksi slotnya terisi
karena prediksinya sudah berhasil mendeteksi 1 mobil, jika sudah ada beberapa
mobil tetapi masih tidak mendeteksi ada slot yang terisi maka model perlu
dilakukan perbaikan dengan training ulang.
3.1.3.1 Pengumpulan Dataset
Proses pengumpulan dataset diambil dengan menggunakan kamera telepon seluler
dengan format JPEG dan resolusi 4000x3000 pixel dengan kondisi cahaya normal
dan mode standard. Semua gambar akan di resize menjadi ukuran 720x1240 pixel
untuk data train dan test.
Semua data gambar yang telah di resize akan dimasukan ke dalam 2 folder yang
terdiri dari folder train dan test. Total gambar pada folder train adalah 200 gambar
dan total gambar pada folder test adalah 50 gambar. Berikut gambar 3.4 dan gambar
3.5 merupakan contoh isi folder train dan test.
Gambar 3. 4 Data Train
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3. 5 Data Test
3.1.3.2 Preprocessing
Setelah mengumpulkan dataset, selanjutnya dilakukan tahap preprocessing citra
dengan beberapa tahapan berikut seperti yang terlihat flowchart preprocessing pada
gambar 3.6.
G
Gambar 3. 6 Flowchart Preprocessing
Tahap awal pada preprocessing yaitu pelabelan gambar yang ada di folder train dan
test, dimana dataset input diberikan label atau penanda dengan tujuan untuk
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
menyimpan informasi gambar yang selanjutnya akan disimpan dalam format XML,
selanjutnya akan dilakukan konversi dari format XML ke CSV untuk tujuan
konversi selanjutnya ke TFRecord. Hasil konversi ke TFRecord akan menjadi
dataset yang digunakan untuk kebutuhan training.
3.1.3.3 Training Data
Setelah mendapatkan hasil konversi file TFRecord, langkah selanjutnya yaitu
proses training data seperti flowchart pada gambar 3.7.
Gambar 3. 7 Training Proses
Pada tahap training data menggunakan model SSD (Single Shot Detector)
prosesnya awalnya yaitu convolution untuk mendapatkan feature pada sebuah citra
atau gambar, proses ini membentuk sebuah filter dengan panjang dan tinggi
(pixels). Gambar/citra akan diresize ke 300x300 pixels dengan kedalaman sebesar
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
3 channels yaitu RGB (Red, Green, Blue). Lapisan convolution ini dibentuk dengan
menjalankan filter yang dimana filter tersebut digunakan untuk menentukan pola
apa yang akan dideteksi yang selanjutnya dilakukan konvulasi kembali sampai
mendapatkan bagian terkecil dari sebuah gambar/citra. Kemudian pada tahap
pooling menggunakan metode max pooling yang bertujuan untuk menentukan nilai
maksimum pada setiap nilai input yang telah dikonvulasi dengan filter. Pada proses
fully connected layer yaitu tahap yang menghubungkan convulation dan pooling
dimana piksel yang dianggap sebagai mobil akan menjadi sebuah output yang
terdiri dari satu kelas label. Fungsi aktivasi yang diterapkan pada klasifikasi adalah
activation ReLu, hasil klasifikasi tersebut akan menentukan bagian mana saja pada
setiap piksel yang memiliki pola mobil.
3.1.3.4 Deteksi Objek Mobil
Hasil model yang sudah dilakukan tahap training akan siap digunakan untuk
mendeteksi objek. Berikut gambar 3.8 merupakan flowchart proses dalam
menjalankan program deteksi objek.
Gambar 3. 8 Flowchart Deteksi Objek
Proses dari alur jalannya deteksi objek mobil dapat dilihat flowchart pada gambar
3.8, dimulai dengan kamera menangkap gambar secara otomatis ketika pengguna
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
aplikasi melakukan scan QR dan ketika pengguna melewati sensor ultrasonik pada
saat keluar dari tempat parkir. Selanjutnya sistem akan memasukkan hasil
tangkapan gambar tersebut ke dalam program deteksi objek, program tersebut akan
memanggil atau load model yang telah selesai dilakukan training dan dikonversi
menjadi file protobuf dengan nama file (inference_graph.pb), serta memanggil file
labelmap untuk memberikan nama label ketika objek terdeteksi. Program akan
menjalankan proses convolution untuk menentukan bagian mana saja pada setiap
piksel yang memiliki pola mobil sebagai pola yang telah ditentukan pada tahap
training. Setelah selesai ditentukan bagian mana yang dianggap mobil hasilnya
akan berupa gambar dengan bounding box berwarna hijau dibagian yang dideteksi
sebagai mobil. Gambar tersebut akan langsung dikirim ke database dan ditampilkan
pada aplikasi pengguna.
3.2. Realisasi Program Model dan Alat
3.2.1 Realisasi Alat
Alat memprediksi mobil untuk mendeteksi slot parkir yang terisi ketika saat user
melakukan scan QR dan saat mobil melewati pintu keluar dimana terdapat sensor
ultrasonik untuk melakukan trigger proses capture gambar, setelah gambar
didapatkan akan diprediksi oleh model yang dibuat dan menghasilkan output
berupa informasi gambar pada slot yang terisi di aplikasi android. Berikut gambar
3.9 merupakan rangkaian alat
Gambar 3. 9 Rangkaian Alat
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3.9 merupakan rancangan sensor ultrasonik dan kamera yang terhubung ke
Raspberry Pi. Adapun port yang digunakan adalah sebagai berikut:
Tabel 2. Port Sensor Ultrasonik dan Kamera Webcam
Port Raspberry Pi 3 Port Alat Fungsi
18 Trigger Sebagai Transmitter
24 Echo Sebagai Receiver
5V VCC Sumber Tegangan (+)
GND GND Sumber Tegangan (-)
USB Kamera Menangkap Gambar
Tabel 2 adalah port yang digunakan pada sensor ultrasonik dan kamera webcam.
3.2.2 Realisasi Pengumpulan Dataset
Data yang digunakan pada dataset ini adalah data yang diambil langsung pada
maket lahan parkir yang sudah dibuat. Kemudian dilakukan resize pada data
tersebut dengan ukuran dan format yang telah ditentukan. Format untuk file image
adalah JPG. Semua data gambar yang telah di resize akan dimasukan ke dalam 2
folder yang terdiri dari folder train dan test. Total gambar pada folder train
sebanyak 200 gambar dan total gambar pada folder test sebanyak 50 gambar.
3.2.3 Realisasi Tahap Preprocessing
Preprocessing citra dilakukan dengan beberapa tahapan seperti berikut:
3.2.3.1 Pelabelan Gambar
Pelabelan gambar adalah tahap awal dimana dataset input diberikan label atau
penanda dengan tujuan untuk menyimpan informasi gambar yang selanjutnya akan
disimpan dalam format XML. Pelabelan dilakukan secara manual terhadap 200
gambar pada folder train dan 50 gambar pada folder test menggunakan software
open source labelImg. Berikut adalah proses pelabelan yang ditunjukkan pada
Gambar 3.10.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3. 10 Proses Pelabelan
3.2.3.2 Konversi Dataset XML ke CSV
Setelah dilakukan pelabelan perlu adanya konversi berkas format XML dan CSV
untuk tujuan konversi dataset ke berkas TFRecord karena tensorflow hanya akan
membaca berkas TFRecord. Berikut gambar 3.11 merupakan kode untuk
mengkonversi berkas train dan test XML ke CSV.
Gambar 3. 11 Kode Konversi XML ke CSV
Hasil pelabelan gambar dari software labelimg menghasilkan file xml untuk setiap
file gambar yang dilakukan pelabelan. Ketika dilakukan konversi menjadi satu file
CSV akan mendefinisikan ’filename’, ‘width’, ‘height’, ‘class, ‘ xmin’, ‘ymin’,
‘xmax’, dan ‘ymax’ dalam beberapa kolom.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
3.2.3.3 Konversi Dataset CSV ke TFRecord
Setelah proses konversi berkas XML dengan output berupa file CSV perlu adanya
konversi ke TensorFlow Record file yang digunakan untuk feeding data pada proses
training, berikut gambar 3.12 adalah kode konversi dari CSV ke TFRecord
Gambar 3. 12 Kode Konversi CSV ke TFRecord
Pada proses konversi ke TFRecord akan membaca folder yang berisi file gambar
yang digunakan sebagai dataset dan file hasil pelabelan yang sudah di konversi ke
file CSV.
3.2.3.4 Label Map
Dataset (file TFRecord) dan peta labelnya yang sesuai dengan proses pelabelan
gambar. Berikut ini adalah peta label yang digunakan dan peta label memiliki satu
kelas yaitu untuk mobil dinamakan dengan “Terisi” yang disimpan pada berkas
dengan format “.pbtxt” yang selanjutnya dibutuhkan pada saat konfigurasi pipeline
untuk kebutuhan training. Berikut gambar 3.13 merupakan konfigurasi pada file
label map.
Gambar 3. 13 Konfigurasi Label Map
3.2.4 Realisasi Training
Proses training dilakukan setelah dataset terkumpul dan sudah dilakukan
preprocessing. Training bertujuan untuk mengenali objek yang akan di deteksi.
Sistem dilatih untuk mengenali sebuah mobil. Tahap pertama yang dilakukan yaitu
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
konfigurasi konfigurasi pipeline config, kemudian Training Neural Network, dan
terakhir Export Graph Model
3.2.4.1 Konfigurasi Pipeline Config
API Deteksi Objek Tensorflow menggunakan berkas protobuf untuk
mengkonfigurasi proses pelatihan dan evaluasi, file konfigurasi dibagi menjadi 4
bagian yaitu:
- Model : jenis model yang akan dilatih menggunakan model SSD (Single Shot
Detector), berikut gambar 3.14 contoh model yang akan digunakan untuk
proses training
Gambar 3. 14 Jenis Model
- Training config : input preprocessing menjadi parameter yang digunakan untuk
melatih model serta menentukan 50000 step untuk proses training.
Gambar 3. 15 Konfigurasi Step
- Train input config: Mendefinisikan dataset apa yang akan dilatih dengan
menyertakan path dataset yang sudah dilakukan proses preprocessing.
Gambar
3. 16 Konfigurasi Train Input
- Eval input config: Mendefinisikan dataset yang akan dievaluasi
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3. 17 Konfigurasi Eval Config
3.2.4.2 Training Neural Network
Tahap pelatihan Neural Network adalah tahap utama dimana sebuah Neural
Network dilatih untuk mempelajari suatu pola yang diharapkan menghasilkan suatu
pengenalan deteksi objek yang sesuai dengan yang diharapkan yaitu dengan
mendeteksi sebuah objek mobil. Berikut gambar 3.18 merupakan program dari
tahap training neural network
Gambar 3. 18 Training Program
Berdasarkan gambar 3.18, proses training akan membaca data dari file yang sudah
di konversi menjadi file TFRecord dan membaca folder train yang berisi config
model yang akan dipakai yaitu model SSD (Single Shot Detector) kemudian akan
membuat file pipeline config di dalam folder tersebut. ‘model config’
mendefinisikan model yang akan digunakan dalam proses training, ‘train.config’
mendefinisikan dataset apa yang akan digunakan dalam proses training, ‘input
config’ mendefinisikan file dataset yang sudah dilakukan tahapan preprocessing.
3.2.4.3 Export Graph Model
Berikut gambar 3.19 merupakan program untuk mengekspor hasil training menjadi
file protobuf.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 3. 19 Program Export Graph
Berdasarkan pada gambar 3.19, pada saat proses training akan menghasilkan
checkpoint yang dibuat secara otomatis oleh Tensorflow berbentuk graph tensor
yang bertujuan untuk menyimpan informasi proses training yang dilakukan dengan
format file .ckpt, jika proses training selesai maka selanjutnya adalah mengekspor
graph tensor dan dijadikan model protobuf yang siap dipakai untuk proses
selanjutnya yaitu deteksi objek.
32
BAB IV
PEMBAHASAN
4.1 Pengujian
Pengujian pada sistem ini dilakukan setelah sistem telah selesai dibangun.
Pengujian dilakukan untuk mengetahui apakah sistem dalam mendeteksi objek
mobil berfungsi dengan baik.
4.2 Deskripsi Pengujian
Pengujian sistem dilakukan dalam lima skenario pengujian, yaitu:
- Skenario yang pertama akan dilakukan pengujian pada proses training
dataset.
- Skenario yang kedua akan dilakukan pengujian proses deteksi objek dengan
resolusi tertentu.
- Skenario yang ketiga akan dilakukan pengujian proses deteksi objek dengan
kondisi cahaya tertentu.
- Skenario yang keempat akan dilakukan pengujian akses API dari scan QR
- Skenario yang kelima akan dilakukan pengujian sensor ultrasonik untuk
trigger capture.
4.3 Prosedur Pengujian
a. Skenario Pertama
Pada skenario pertama, pengujian dilakukan dengan menjalankan program training
untuk melatih komputer dalam mengenali objek yang akan dideteksi serta melihat
berapa lama waktu yang dibutuhkan untuk melakukan training dari dataset yang
telah dibuat.
b. Skenario Kedua
Pada skenario kedua, pengujian dilakukan dengan menguji deteksi mobil pada
resolusi 1280x720 dan 640x480, dihitung berapa akurasi yang dihasilkan dari setiap
resolusi.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
c. Skenario Ketiga
Pada skenario ketiga, pengujian dilakukan dengan menguji deteksi mobil pada
kondisi pencahayaan yang kurang, apakah model yang sudah dibuat masih mampu
mendeteksi mobil dengan kondisi cahaya yang kurang.
d. Skenario Keempat
Pada skenario keempat, pengujian dilakukan dengan simulasi user melakukan scan
pada setiap slot untuk melakukan trigger kamera menangkap gambar dan akan
dikirim dengan encode base64 ke database.
e. Skenario Kelima
Pada skenario kelima, pengujian dilakukan dengan menggunakan sensor ultrasonik
dengan jarak <10cm, user melewati sensor tersebut yang melakukan trigger kamera
menangkap gambar untuk mendapatkan gambar terbaru ketika sudah keluar parkir,
kemudian hasilnya akan dikirim dengan encode base64 ke database.
4.4 Data Hasil Pengujian
4.4.1 Pengujian Training Dataset
Hasil pengujian skenario pertama yaitu pembuatan training dataset. Proses training
memakan waktu 12 jam dengan step yang diatur sebanyak 50.000 dengan rata-rata
0,2 detik/step.
Gambar 4. 1 Proses Training
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 4. 2 Grafik Proses Training
Berdasarkan gambar 4.2 menunjukkan menggunakan 1 batch yang dipakai untuk
proses training. Terlihat grafik dari tensorboard yang dihasilkan dalam
menjalankan proses training sebanyak 50.000 step dengan NumNegatives
menghasilkan nilai 14 sampai 34 dan NumPositives menghasilkan nilai 5 sampai
11.
4.4.2 Pengujian Deteksi Objek Berdasarkan Resolusi
Pengujian dilakukan dengan mengatur resolusi pada kamera webcam yaitu resolusi
1280x720 dan resolusi 640x480. Pengujian dilakukan sebanyak 4 kali dengan mobil
yang mengisi slot parkir berdasarkan resolusi yang diberikan. Untuk sudut pada
saat pengambilan gambar, dilakukan pada kemiringan kamera berada di 45 derajat
dan kondisi diluar ruangan. Berikut gambar 4.3 merupakan hasil deteksi objek yang
di dapat terhadap 4 slot mobil dengan resolusi pada webcam 1280x720.
Gambar 4. 3 Hasil yang terdeteksi
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 4.4 menunjukkan hasil deteksi terhadap 3 slot mobil dengan resolusi
1280x720.
Gambar 4. 4 Hasil yang Terdeteksi
Gambar 4.5 menunjukkan hasil deteksi terhadap 2 slot mobil dengan resolusi
1280x720.
Gambar 4. 5 Hasil yang Terdeteksi
Gambar 4.6 menunjukkan hasil deteksi terhadap 1 slot mobil dengan resolusi
1280x720.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 4. 6 Hasil yang Terdeteksi
Pengujian selanjutnya dilakukan dengan mengatur resolusi kamera 640x480
dengan kemiringan yang sama yaitu 45 derajat. Berikut gambar 4.7 dan 4.8 yang
merupakan hasil deteksi terhadap ke 4 slot mobil dengan resolusi 640x480.
Gambar 4. 7 Hasil yang Terdeteksi
Gambar 4. 8 Hasil yang Terdeteksi
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 4.9 menunjukkan hasil deteksi terhadap 3 slot mobil dengan resolusi
640x480.
Gambar 4. 9 Hasil yang Terdeteksi
Gambar 4.10 menunjukkan hasil deteksi terhadap 2 slot mobil dengan resolusi
640x480.
Gambar 4. 10 Hasil yang Terdeteksi
Gambar 4.11 menunjukkan Hasil deteksi terhadap 1 slot mobil dengan resolusi
640x480.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 4. 11 Hasil yang Terdeteksi
4.4.3 Pengujian Deteksi Objek dengan Pencahayaan Kurang
Pengujian dilakukan dengan kondisi tempat parkir saat pencahayaan kurang atau
gelap. Pengujian dilakukan dengan satu kali pengujian. Pada gambar 4.12
merupakan gambar yang akan dilakukan pengujian.
Gambar 4. 12 Pengujian Pencahayaan Kurang
Setelah dilakukan pengujian dengan program deteksi objek, gambar yang keluar
atau dihasilkan oleh sistem seperti pada gambar 4.13, hasil yang terbaca tidak
sesuai dengan keadaan sebenarnya.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 4. 13 Hasil Pencahayaan Kurang
4.4.4 Pengujian Scan QR pada Setiap Slot
Pengujian dilakukan berapa lama waktu yang dibutuhkan dengan scan QR pada
setiap slot yaitu slot 1, slot 2, slot 3, dan slot 4 sampai dikirim ke database. Sistem
akan membaca terus menerus API pada database, ketika tidak ada user yang
melakukan scan akan muncul pesan “data tidak ditemukan”, gambar 4.14
merupakan proses sistem mengambil data pada database.
Gambar 4. 14 Mengambil Data
ketika ada user yang melakukan scan, sistem akan membaca pesan “update
berhasil” pada database untuk memproses capture dan program deteksi objek
seperti pada gambar 4.15.
Gambar 4. 15 Berhasil Mengirim Gambar
Hasil pengiriman gambar menggunakan base64 yang sudah dicapture dan diproses
dengan program deteksi objek ke database seperti pada gambar 4.16
Gambar 4. 16 Hasil Gambar di Database
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
4.4.5 Pengujian Ultrasonik pada Sistem
Pengujian dilakukan dengan melakukan percobaan keluar dari parkiran dengan
melewati sensor ultrasonik. Pengujian dilakukan 7 kali percobaan dengan beberapa
jarak tertentu dibawah 10cm, pada saat itu diuji apakah jarak yang sebenarnya
sesuai dengan jarak yang dibaca oleh sensor, lalu berapa lama waktu yang
dibutuhkan untuk proses capture sampai dikirim ke database. Gambar 4.17
merupakan proses capture karena trigger dari sensor ultrasonik membaca jarak
3.7cm dengan jarak yang sebenarnya adalah 4cm.
Gambar 4. 17 Trigger Ultrasonik
Lalu program deteksi objek akan otomatis diproses dan hasilnya akan dikirim
dengan encode base64 ke database sistem seperti pada gambar 4.18.
Gambar 4. 18 Berhasil dikirim
Gambar 4.19 merupakan data yang diterima di database.
Gambar 4. 19 Data Diterima Database
4.5 Analisis Data / Evaluasi
Setelah dilakukan pengujian, data hasil dari keseluruhan pengujian dianalisis sesuai
dengan lima skenario yang ada. Berikut hasil analisis data hasil pengujian.
4.5.1 Analisis Data Training
Training yang telah selesai dilakukan akan terlihat seperti gambar 4.20 dibawah
ini.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Gambar 4. 20 Training Selesai
Data yang telah selesai di training akan tersimpan sebagai model dengan beberapa
file disatu folder “inference graph”
Gambar 4. 21 Hasil Model yang Selesai Training
Satu file dari hasil training yang akan dipakai untuk menjalankan program deteksi
objek yaitu file inference_graph.pb, file tersebut berisi banyak karakter dan simbol
untuk mengenali objek berdasarkan dataset dan metode yang sudah ditraining.
Gambar 4. 22 Isi file Protobuf
4.5.2 Analisis Deteksi Objek Berdasarkan Resolusi
Keberhasilan pada pengujian ini dipengaruhi dengan jumlah dataset yang dimiliki
serta tergantung hasil resolusi yang di capture oleh webcam. Proses untuk
menghitung tingkat akurasi dari hasil deteksi objek citra mobil dengan
menggunakan metode SSD (Single Shot Detector) seberapa besar terjadinya
kesalahan atau berapa besar terjadinya kebenaran dalam proses deteksi objek
tersebut. Adapun cara menghitung tingkat akurasi adalah sebagai berikut:
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑘𝑒𝑎𝑘𝑢𝑟𝑎𝑡𝑎𝑛 𝑚𝑜𝑑𝑒𝑙)
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑠𝑎𝑚𝑝𝑙𝑒)
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
A. Pengujian Resolusi 1280x740
Tabel 2 Analisis Pengujian Resolusi 1280x720
No Gambar Deteksi oleh
model
Deteksi
manual
Keakuratan
model
1
4
4
100%
2
3
3
100%
3
2 2 100%
4
1 1 100%
Dari hasil pengujian pada tabel 2 dapat diketahui bahwa persentase rata-rata
keakuratan model dalam mendeteksi objek mobil dengan resolusi 1280x720.
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑘𝑒𝑎𝑘𝑢𝑟𝑎𝑡𝑎𝑛 𝑚𝑜𝑑𝑒𝑙)
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑠𝑎𝑚𝑝𝑙𝑒)=
400%
4 = 100%
B. Pengujian Resolusi 640x480
Tabel 3 Analisis Pengujian Resolusi 640x480
No Gambar Deteksi oleh
model
Deteksi
manual
Keakuratan
model
1
6
4
66,6%
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
2
3
4
75%
3
3 3 100%
4
2 2 100%
5
1 1 100%
Berdasarkan hasil pengujian pada tabel 3 dapat diketahui bahwa persentase rata-
rata keakuratan model dalam mendeteksi objek mobil dengan resolusi 640x480.
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑘𝑒𝑎𝑘𝑢𝑟𝑎𝑡𝑎𝑛 𝑚𝑜𝑑𝑒𝑙)
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑠𝑎𝑚𝑝𝑙𝑒)=
441,6%
5 = 88,3%
Hasil pengujian pada resolusi 1280x720 dan 640x480 dapat diketahui bahwa
resolusi 1280x720 lebih baik dengan akurasi 100%, pada pengujian dengan resolusi
640x480 terdapat kesaalahan positive false rate pada sample nomor 1 yaitu
kesalahan dalam mengenali hasil pengujian dimana hasilnya tidak menunjukkan
kondisi yang sebenarnya dan kesalahan negative false rate pada sample nomor 2
yaitu kesalahan mengenali objek dimana model tidak dapat mengenali kondisi yang
seharusnya dikenali. Kondisi ini juga dipengaruhi karena hasil capture dari webcam
kurang maksimal.
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
4.5.3 Analisis Deteksi Objek dengan Pencahayaan Kurang
Berdasarkan dari hasil pengujian dengan kondisi pencahayaan kurang pada lahan
parkir maka dapat ditarik kesimpulan bahwa faktor-faktor yang dapat
menyebabkan kegagalan dalam proses mendeteksi objek mobil adalah pencahayaan
yang buruk, cahaya pada hasil capture kamera akan sangat berpengaruh dalam
proses pendeteksian mobil terhadap dataset yang telah dibuat.
4.5.4 Analisis Scan QR pada Setiap Slot
Data hasil pengujian pada tabel dapat diketahui berapa lama waktu yang dibutuhkan
proses scan QR pada setiap slot untuk menjalankan capture gambar dan program
deteksi objek sampai dikirim ke database dengan encode base64.
Tabel 4 Analisis Pengujian Scan QR
Slot Waktu (detik) Keterangan
1 48 Berhasil
2 48 Berhasil
3 49 Berhasil
4 52 Berhasil
Berdasarkan hasil pengujian pada tabel 4. dapat diketahui bahwa persentase rata –
rata keberhasilan pengiriman gambar ke database.
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑏𝑒𝑟ℎ𝑎𝑠𝑖𝑙)
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑠𝑎𝑚𝑝𝑙𝑒)× 100% =
4
4× 100% = 100%
Hasil pengujian pada tabel 4 juga dapat diketahui bahwa persentase rata – rata
waktu yang dibutuhkan ketika proses scan QR kemudian menjalankan capture
gambar dan program deteksi objek sampai dikirim ke database.
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑡𝑜𝑡𝑎𝑙 𝑤𝑎𝑘𝑡𝑢)
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑠𝑎𝑚𝑝𝑙𝑒)=
197 𝑑𝑒𝑡𝑖𝑘
4 = 49,2 𝑑𝑒𝑡𝑖𝑘
Berdasarkan data pengujian yang sudah dihasilkan dapat dihitung waktu rata – rata
yang dibutuhkan ketika proses scan QR kemudian menjalankan capture gambar
dan program deteksi objek sampai dikirim ke database adalah 49,2 detik dengan
keberhasilan 100%. Faktor yang mempengaruhi waktu tersebut cukup lama adalah
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
karena model SSD (Single Shot Detector) menggunakan framework Tensorflow di
Raspberry Pi. Tensorflow memakan banyak data ketika dijalankan di Raspberry Pi
3 B+ sehingga RAM yang tersisa hanya 10% dari total RAM yang hanya 1GB.
4.5.5 Analisis pengujian ultrasonik pada Sistem
Data hasil pengujian pada tabel 5 dapat diketahui kesesuaian jarak yang dibaca oleh
sensor ultrasonik dengan jarak sebenarnya, berapa lama waktu yang dibutuhkan
ketika proses capture gambar dari trigger sensor ultrasonik sampai dikirim ke
database, serta tingkat keberhasilan dikirim ke database.
Tabel 5 Analisis Pengujian Ultrasonik
No Jarak
sebenarnya
Jarak yang
dibaca
sensor
Keakuratan
sensor
Waktu
(sampai
dikirim ke
database)
Keterangan
1 4 cm 3,7 cm 92,5% 41 detik BERHASIL
2 5 cm 4,7 cm 94% 41 detik BERHASIL
3 3 cm 3 cm 100% 38 detik GAGAL
4 6 cm 5,9 cm 98,3% 41 detik BERHASIL
5 7 cm 7 cm 100% 41 detik BERHASIL
6 10 cm 9,5 cm 95% 41 detik BERHASIL
7 8 cm 7,5 cm 93,75% 41 detik BERHASIL
Berdasarkan hasil pengujian pada tabel 4.5 dapat diketahui bahwa persentase rata-
rata keakuratan sensor untuk trigger menangkap gambar
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑘𝑒𝑎𝑘𝑢𝑟𝑎𝑡𝑎𝑛 𝑠𝑒𝑛𝑠𝑜𝑟)
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑠𝑎𝑚𝑝𝑙𝑒)=
673,55%
4= 96,22%
Hasil pengujian pada tabel 4.5 juga dapat diketahui bahwa persentase rata-rata
waktu yang dibutuhkan ketika trigger dari sensor ultrasonik kemudian menjalankan
capture gambar dan program deteksi objek sampai diterima oleh database.
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑡𝑜𝑡𝑎𝑙 𝑤𝑎𝑘𝑡𝑢)
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑠𝑎𝑚𝑝𝑙𝑒)=
257 𝑑𝑒𝑡𝑖𝑘
7 = 40,5 𝑑𝑒𝑡𝑖𝑘
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Tingkat rata – rata persentase keberhasilan dari hasil gambar yang dicapture dikirim
ke database dapat diketahui sebagai berikut
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑏𝑒𝑟ℎ𝑎𝑠𝑖𝑙)
∑(𝐽𝑢𝑚𝑙𝑎ℎ 𝑠𝑎𝑚𝑝𝑙𝑒)× 100% =
6
7× 100% = 85,7 %
Berdasarkan data pengujian yang sudah dihasilkan dapat dihitung rata-rata
keakuratan sensor sebesar 96,22%, waktu rata – rata yang dibutuhkan ketika proses
sensor ultrasonik membaca jarak kemudian menjalankan capture gambar dan
program deteksi objek sampai dikirim ke database adalah 40,5 detik dengan
keberhasilan 85,7%. Waktu yang dihasilkan lebih cepat dibandingkan dengan
ketika trigger capture dilakukan oleh scan QR dan keberhasilan pengiriman data
dipengaruhi oleh kestabilan koneksi pada sistem.
47
BAB V
PENUTUP
5.1 Kesimpulan
Berdasarkan hasil penelitian mengenai objek deteksi mobil menggunakan metode
model SSD (Single Shot Detector) untuk mengetahui ketersediaan slot parkir yang
terisi dapat diperoleh kesimpulan sebagai berikut:
1. Pengujian data training yang dilakukan dengan 50.000 step pada dataset yang
telah dibuat menghabiskan waktu 12 jam.
2. Slot yang terisi dapat terdeteksi dengan mendeteksi sebuah mobil jika mendapat
cahaya yang cukup.
3. Pengujian deteksi objek mobil dengan resolusi 1280x720 hasil gambar capture
dari webcam menghasilkan akurasi deteksi sebesar 100% dan resolusi 640x480
menghasilkan akurasi deteksi sebesar 88,3%.
4. Pengujian trigger capture webcam dari sensor ultrasonik kemudian menjalankan
program deteksi objek sampai diterima oleh database mendapat rata-rata waktu
40,5 detik dan keberhasilan 85,7%.
5. Pengujian trigger capture webcam dari scan QR code kemudian menjalankan
program deteksi objek sampai diterima oleh database mendapat rata-rata waktu
49,2 detik dan keberhasilan 100%.
5.2 Saran
Saran untuk pengembangan selanjutnya adalah sebagai berikut:
1. Menambahkan jumlah dataset dan ragam objek pada gambar untuk melatih model
dan mencapai akurasi yang tinggi.
2. Mengembangkan dan mengimplementasikan mode offline pada sistem parkir.
3. Menggunakan kamera yang lebih baik agar bisa mendeteksi dengan kondisi
cahaya yang kurang.
48
DAFTAR ISI
Ali Andre, J. (2016). Sistem Security Webcam Dengan Menggunakan Microsoft
Visual Basic (6.0). Rabit : Jurnal Teknologi Dan Sistem Informasi Univrab,
1(2), 46–58. https://doi.org/10.36341/rabit.v1i2.23
Arimbawa, I. W. A., Rahman, A. C., dan Jatmika, A. H. (2019). Implementasi
Internet of Things pada Sistem Informasi Pelacakan Kendaraan Bermotor
Menggunakan GPS Berbasis Web. Jurnal Teknologi Informasi, Komputer,
Dan Aplikasinya (JTIKA), 1(1), 121–130.
https://doi.org/10.29303/jtika.v1i1.10
Arsy, L., Nurhayati, O. D., dan Martono, K. T. (2016). Aplikasi Pengolahan Citra
Digital Meat Detection Dengan Metode Segmentasi K-Mean Clustering
Berbasis OpenCV Dan Eclipse. Jurnal Teknologi Dan Sistem Komputer, 4(2),
322. https://doi.org/10.14710/jtsiskom.4.2.2016.322-332
DEWI, S. R. (2018). Deep Learning Object Detection Pada Video. Deep Learning
Object Detection Pada Video Menggunakan Tensorflow Dan Convolutional
Neural Network.
https://dspace.uii.ac.id/bitstream/handle/123456789/7762/14611242_Syarifa
h Rosita Dewi_Statistika.pdf?sequence=1
Ding, X., dan Yang, R. (2019). Vehicle and Parking Space Detection Based on
Improved YOLO Network Model. Journal of Physics: Conference Series,
1325(1). https://doi.org/10.1088/1742-6596/1325/1/012084
Gunadhi, E., dan Nugraha, A. P. (2017). Penerapan Kriptografi Base64 Untuk
Keamanan URL (Uniform Resource Locator) Website Dari Serangan SQL
Injection. Jurnal Algoritma, 13(2), 391–398.
https://doi.org/10.33364/algoritma/v.13-2.391
Harismawan, A. F., Kharisma, A. P., dan Afirianto, T. (2018). Analisis
Perbandingan Performa Web Service Menggunakan Bahasa Pemrograman
Python , PHP , dan Perl pada Client Berbasis Android. Jurnal Pengembangan
Teknologi Informasi Dan Ilmu Komputer (J-PTIIK) Universitas Brawijaya,
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
2(January), 237–245.
Iswandy, E., Komputer, D. S. T. M. I., dan Padang, S. J. (2015). Sistem Penunjang
Keputusan Untuk Menentukan Dan Santunan Sosial Anak Nagari Dan
Penyaluran Bagi Mahasiswa Dan Pelajar Kurang Mampu. Jurnal TEKNOIF,
3(2). https://doi.org/2338-2724
Jalled, F., dan Voronkov, I. (2016). Object Detection using Image Processing. 1–6.
http://arxiv.org/abs/1611.07791
Maulana, R., Fitriyah, H., dan Prakasa, E. (2018). Implementasi Sistem Deteksi Slot
Parkir Mobil Menggunakan Metode Morfologi dan Background Subtraction.
Jurnal Pengembangan Teknologi Informasi Dan Ilmu Komputer (J-PTIIK)
Universitas Brawijaya, 2(5), 1954–1959.
Noperiyadi. (2015). Tata ulang lahan parkir pada jalan kalimantan kota lubuk
linggau. Jurnal Teknik Sipil Dan Lingkungan, 3(1).
Nurhayati, S., dan Ilmi, E. N. (2019). Sistem Aplikasi Pencarian Lokasi Parkir
Terdekat Menggunakan Location Based Service Berbasis Android.
Komputika : Jurnal Sistem Komputer, 6(2), 1–7.
https://doi.org/10.34010/komputika.v6i2.1677
Putra, A. R., dan Candradewi, I. (2017). Deteksi Ketersediaan Slot Parkir Berbasis
Pengolahan Citra Digital Menggunakan Metode Histogram of Oriented
Gradients dan Support Vector Machine 1. 7(1).
Sutjiadi, R., Pattiasina, T. J., Studi, P., Informatika, T., Studi, P., Informasi, S., dan
Korespondensi, P. (2020). Deteksi Objek Menggunakan Dashboard Camera
Untuk Sistem Peringatan Pencegah Kecelakaan Pada Mobil Object Detection
Using Dashboard Camera for Car Accident. 7(2), 427–434.
https://doi.org/10.25126/jtiik.202072520
Tanuwijaya, E., dan Fatichah, C. (2020). Penandaan Otomatis Tempat Parkir
Menggunakan YOLO Untuk Mendeteksi Ketersediaan Tempat Parkir Mobil
Pada Video CCTV. Briliant: Jurnal Riset Dan Konseptual, 5(1), 189.
https://doi.org/10.28926/briliant.v5i1.434
Jurusan Teknik Informatika dan Komputer – Politeknik Negeri Jakarta
Thohari, A. N. A., dan Adhitama, R. (2019). Real-Time Object Detection For
Wayang Punakawan Identification Using Deep Learning. Jurnal Infotel,
11(4), 127–132. https://doi.org/10.20895/infotel.v11i4.455
Wahida, N. (2018). Perencanaan kebutuhan ruang parkir di kawasan taman sari
kota banda aceh. 1(4), 11–21. https://doi.org/10.24815/jarsp.vlil.12450
Zein, A. (2018). Pendeteksian Kantuk Secara Real Time Menggunakan Pustaka
OpenCV dan DLIB Python. Sainstech, 28(2), 22–26.
51
L 1 - Daftar Riyawat Hidup Penulis
DAFTAR RIWAYAT HIDUP
Penulis bernama lengkap Prayoga Haditya Putra, lahir di
Bogor pada tanggal 16 Maret 1998. Penulis merupakan
anak ketiga dari tiga bersaudara dari pasangan Bapak
Sudaryono dan Ibu Ersipah. Penulis menyelesaikan
pendidikan Sekolah Dasar di SD Negeri Kencana 1 Bogor
pada tahun 2010, pendidikan Sekolah Menengah Pertama
di SMP Negeri 12 Kota Bogor pada tahun 2013, dan
pendidikan Sekolah Menengah Atas di SMA Negeri 8
Kota Bogor pada tahun 2016. Kemudian penulis
melanjutkan pendidikannya di Program Studi D4 Teknik Informatika dan
Komputer, Politeknik Negeri Jakarta. Sampai dengan penulisan skripsi ini, penulis
masih terdaftar sebagai mahasiswa D4 Politeknik Negeri Jakarta
52
L 2 Source Code
1. XML to CSV
2. Generate TFRecord
3. Training
4. Mengambil data scan QR
5. Deteksi Objek
6. Pengiriman gambar dengan encode base 64
7. Sensor Ultrasonik
57
L 3 Dokumentasi Pengujian
Dokumentasi
58
L3 - Lanjutan