• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI 2.1 Tinjauan Pustaka - RIZKY JALU PUTRA SAFIAN BAB II

N/A
N/A
Protected

Academic year: 2019

Membagikan "BAB II LANDASAN TEORI 2.1 Tinjauan Pustaka - RIZKY JALU PUTRA SAFIAN BAB II"

Copied!
28
0
0

Teks penuh

(1)

2.1 Tinjauan Pustaka

Terdapat beberapa penelitian dengan tema yang terkait pada Skripsi ini yaitu penelitian yang dilakukan oleh Daigavane(2010) yang berjudul “Real Time Vehicle Detection and Counting Method for Unsupervised Traffic Video on

Highways ” tentang penghitung dan klasifikasi kendaraan menggunakan metode median untuk proses filtering, penelitian yang dilakukan oleh Daigavane menggunakan input video secara real time,namun belum bisa input video secara offline.

Penelitian selanjutnya dilakukan oleh Haryanto(2015) yang berjudul “Klasifikasi Jenis Kendaraan Bergerak Berbasis Geometric Invariant Moment ”.

Dalam penelitian Zamroji Hariyanto ini menggunakan Geometric Invariant Moment dari objek citra kendaraan untuk mengklasifikasikan dan menghitung kendaraan dengan tingkat keberhasilan rata-rata pada waktu pagi hari adalah 90,45% dan siang hari 94,27% namun menggunakan bahasa C# di dalam perangkat lunak yang di bangun.

Selanjutnya penelitian yang dilakukan oleh Uddin(2016) yang berjudul “Moving Object Detection Based on Background Subtraction & Frame

(2)

2.2Intelligent Transportation System

Saat sistem transportasi di seluruh dunia mulai dirasa meningkatkan peluang tingkat ekonomi dan sosial, hal tersebut juga menimbulkan berbagai masalah seperti kemacetan, keamanan, dan kerusakan lingkungan. Intelligent Transportation System (ITS) adalah aplikasi dari teknologi informasi dan komunikasi dalam sistem transportasi. Intelligent Transportation System (ITS) digunakan untuk meningkatkan mobilitas, mengurangi angka kecelakaan dan kematian, serta melestarikan lingkungan.Sasaran dari Intelligent Transportation System (ITS) ini sendiri meliputi:

1. Memantau lalu lintas dan kondisi lingkungan di jalan

2. Memaksimalkan keamanan operasional dan efisiensi dari jaringan

3. Meminimalisir dampak negatif yang disebabkan dari kemacetan yang sering terjadi maupun kemacetan yang tidak sering terjadi akibat insiden tertentu

4. Menyediakan pengguna jalan informasi yang dibutuhkan untuk membantu pengambilan keputusan di perjalanan dan meringankan beban mental dan stress ketika berkendara.

(3)

a. Maintaining road serviceability and safety, b. Traffic control

c. Travel aid and user information d. Demand management

e. Network monitoring.

2.3Computer Vision

Computer vision adalah sebuah disiplin ilmu yang mempelajari bagaimana

merekonstruksi, mengintrepretasikan, dan memahami sebuah tampilan 3 dimensi dari tampilan 2 dimensinya dalam hal sifat dari struktur tampilan tersebut. Computer Vision berkaitan dengan pemodelan dan meniru penglihatan manusia

dengan menggunakan perangkat lunak dan perangkat keras pada komputer. Computer Vision menggabungkan ilmu pengetahuan dalam bidang ilmu

komputer, teknik elektro, matematika, fisiologi, biologi, dan ilmu kognitif. Diperlukan ilmu dari semua bidang tersebut untuk memahami dan menyimulasikan pengoperasian penglihatan manusia.

(4)

2.3.1 Proses penangkapan citra atau gambar (image acquisition)

Image Acquisition pada manusia dimulai dari mata, kemudian informasi visual diterjemahkan ke dalam suatu format yang kemudian dapat dimanipulasi oleh otak. Seperti halnya proses tersebut, Computer Vision membutuhkan sebuah mata untuk menangkap sebuah sinyal visual.

Kamera akan menerjemahkan sebuah scene atau image. Keluaran dari kamera berupa sinyal analog, dimana frekuensi dan amplitudonya merepretasikan detail ketajaman (brightness) pada scene (frekuensi berhubungan dengan jumlah sinyal dalam satu detik, sedangkan amplitudo berkaitan dengan tingginya sinyal listrik yang dihasilkan).

(5)

Bilangan biner ini kemudian disimpan di dalam memori dan akan menjadi data raw yang akan diproses.

2.3.2 Proses pengolahan citra (image processing)

Pada proses ini Computer Vision akan melibatkan sejumlah manipulasi utama (initial manipulation) dari data binary yang dihasilkan pada proses image acquisition. Image Processing membantu peningkatan dan perbaikan kualitas image, sehingga dapat dianalisa dan diolah lebih jauh secara efisien. Image processing akan meningkatkan perbandingan sinyal terhadap noise, rumus dari signal to ratio ditunjukkan pada persamaan 2.1.

Signal to noise ratio = 𝑆

𝑁 ……….....(1.1)

Keterangan :

Signal to noise ratio = Daya derau(dB)

S = Kekuatan sinyal

N = Kekuatan derau(noise)

(6)

2.3.3 Analisa data citra (Image Analysis)

Pada tahap ini, scene akan dieksplorasi ke dalam bentuk karakteristik utama dari objek melalui suatu proses investigasi. Sebuah program komputer akan mulai melihat melalui bilangan biner yang merepresentasikan informasi visual untuk mengidentifikasikan fitur-fitur spesifik dan karakteristiknya. Pada proses yang lebih khusus lagi, program image analysis digunakan untuk mencari tepian batas-batas objek dalam

image. Sebuah tepian (edge) terbentuk antara objek dan latar belakangnya

atau antara dua objek yang spesifik. Tepi ini akan terdeteksi sebagai akibat dari perbedaan level brightness pada sisi yang berbeda dengan salah satu batasnya.

2.3.4 Proses pemahaman data citra (Image Understanding)

(7)

2.4Definisi Citra Digital

Dalam buku Digital Image Processing yang ditulis oleh Rafael C. Gonzalez dan Richard E. Woods, menjelaskan bahwa citra digital merupakan fungsi dua dimensi yang dapat dinyatakan dengan fungsi f(x,y), dimana x dan y merupakan titik koordinat spasial. Sedangkan amplitudo dari fungsi f pada sembarang koordinat (x,y) merupakan nilai intensitas cahaya, yang merupakan representasi dari warna cahaya yang ada pada citra analog. Citra digital adalah suatu citra dimana (x,y) dan nilai intensitas dari f terbatas (discrete quantities), dan telah dilakukan proses digitalisasi spasial dan digitalisisi kuantitas.

Citra digital merupakan representatif dari citra yang diambil oleh mesin dengan bentuk pendekatan berdasarkan sampling dan kuantisasi. Sampling menyatakan besarnya kotak-kotak yang disusun dalam baris dan kolom atau dengan kata lain sampling pada citra menyatakan besar kecilnya ukuran piksel (titik) pada citra, dan kuantisasi menyatakan besarnya nilai tingkat kecerahan yang dinyatakan dalam nilai tingkat keabuan (grayscale) sesuai dengan jumlah bit biner yang digunakan oleh mesin atau dengan kata lain kuantisasi pada citra menyatakan jumlah warna yang ada pada citra .

(8)

Proses sampling citra analog ke citra digital ditampilkan pada Gambar 2.1.

Gambar 2.1 Proses sampling citra dari citra analog ke citra digital. (sumber: “Invariant Image Recognition by Zernike Moments” )

Piksel mempunyai dua parameter, yaitu koordinat dan intensitas atau warna. Nilai yang terdapat pada koordinat (x,y) adalah f(x,y), yaitu besar intensitas atau warna dari piksel di titik itu. Oleh sebab itu, sebuah citra digital dapat ditulis dalam bentuk matriks di atas.

(9)

titik tersebut. Pada proses digitalisasi (sampling dan kuantitas) diperoleh besar baris M dan kolom N hingga citra membentuk matriks M x N dan jumlah tingkat keabuan piksel G. Jenis-jenis citra digital:

1. Citra Biner (Monokrom)

Banyaknya warna hanya dua, yaitu hitam dan putih. Dibutuhkan 1 bit di memori untuk menyimpan kedua warna ini.

2. Citra Grayscale

Banyaknya warna tergantung pada jumlah bit yang disediakan di memori untuk menampung kebutuhan warna ini. Semakin besar jumlah bit warna yang disediakan di memori, semakin halus gradasi warna yang terbentuk. 3. Citra Warna (True Color)

(10)

2.5 Pengolahan Citra Digital (DigitalImage Processing )

Pengolahan citra atau disebut juga image processing merupakan suatu bentuk pengolahan atau pemrosesan sinyal dengan masukan berupa gambar (image) dan ditransformasikan menjadi gambar lain sebagai keluarannya dengan menggunakan teknik-teknik tertentu.

Pengolahan citra digital adalah suatu disiplin ilmu yang mempelajari hal-hal yang berkaitan dengan perbaikan kualitas gambar (peningkatan kontras, transformasi warna, restorasi citra), transformasi gambar (rotasi, translasi, skala, transformasi geometrik), melakukan pemilihan citra ciri (featur images) yang optimal untuk tujuan analisis, melakukan proses penarilkan informasi atau deskripsi objek atau pengenalan objek yang terkandung pada citra, melakukan kompresi atau reduksi data untuk tujuan penyimpanan data, transmisi data, dan waktu proses data. Input dari pengolahan citra adalah citra, sedangkan Output-nya adalah citra hasil pengolahan (Sutoyo, 2009). Adapun tujuan dari pengolahan citra digital diantaranya adalah sebagai berikut :

(11)

2. Melakukan proses penarikan informasi atau deskripsi objek atau pengenalan objek yang terkandung dalam citra.

3. Melakukan kompresi atau reduksi data untuk tujuan penyimpanan data, transmisi data, dan waktu proses data.

2.6 Threshold

Threshold adalah metode menetapkan suatu nilai, kemudian hanya mengambil nilai di atasnya saja atau dibawahnya saja, sedangkan nilai selainnya diabaikan (Bradski dan Kaehler, 2008). Hasil dari threshold adalah citra yang tampak nyata perbedaan intensitasnya, biasanya hitam dan putih. Metode ini biasanya digunakan untuk segmentasi atau pemisahan suatu objek dengan selainnya. Untuk melakukan penghitungan pixel putih pada masing-masing region, maka data citra ditransformasi ke dalam citra biner dengan memanfaatkan threshold. Thresholdi adalah proses mengubah suatu citra berwarna atau

(12)

melebihi batas yang ditentukan akan dibuat menjadi 1 atau putih dan jika dibawah batas yang ditentukan maka akan dibuat menjadi 0 atau hitam.Berdasarkan nilai ambang (threshold) T dapat ditunjukkan seperti pada persamaan 2.2.

𝑓(𝑥, 𝑦) = {1 , 𝑓0, 𝑓(𝑥, 𝑦) ≤ 𝑇(𝑥, 𝑦) > 𝑇 ...(2.2)

Operasi pengambangan mentransformasikan citra hitam-putih ke citra biner. Dengan kata lain, nilai intensitas pixel semula dipetakan ke dua nilai saja yaitu hitam danputih.

2.7 OpenCV

(13)

Pada awalnya OpenCV ditulis dengan menggunakan bahasa C namun sekarang secara menyeluruh sudah menggunakan antarmuka bahasa C++ dan seluruh pengembangannya terdapat dalam format bahasa C++. Contoh aplikasi dari OpenCV yaitu interaksi manusia dengan komputer: identifikasi, segmentasi, pengenalan objek, pengenalan wajah, pengenalan gerakan, penelusuran gerakan, gerakan diri, dan pemahaman gerakan, struktur dari gerakan, kalibrasi stereo dan beberapa kamera serta komputasi mendalam, dan robotik.

Fitur-fitur yang terdapat pada OpenCV antara lain:

1. Manipulasi data image (alokasi, rilis, duplikasi, pengaturan, konversi) 2. Image dan I/O video (masukan berbasis file dan kamera, keluaran

image/video file),

3. Manipulasi matriks dan vektor serta aljabar linear (produk, solusi, eigenvalues, SVD)

4. Beragam struktur data dinamis (daftar, baris, grafik)

(14)

7. Kalibrasi kamera (menemukan dan menelusuri pola kalibrasi, dasar estimasi matriks, estimasi homografi, korespondensi stereo)

8. Analisis gerakan (otical flow,segmentasi gerakan, penelusuran) 9. Pengenalan objek (metode eigen, HMM)

10.Dasar Graphical User Interface atau GUI (menampilkan image/video, penanganan mouse dan keyboard, scroll-bars)

11.Pelabelan image (garis,poligon,gambar teks)

Modul-modul terdapat pada OpenCV antara lain :

1. Cv-fungsi utama opencv 2. Cvaux-fungsi penolong opencv

3. Cxcore-pendukung struktur data dan aljabar linear 4. Highui-fungsi Graphical User Interface (GUI)

2.8 Background Subtraction

(15)

atau kendaraan dengan cara pembedaan latar belakang (background) dan manusia atau kendaraan (foreground) yang bergerak.

Jika kondisi yang akan diamati oleh background subtraction hanya berupa latar belakang dan objek bergerak yang akan diamati, hal tersebut sangat mudah. Namun, ketika terdapat objek lain yang juga berpindah dari titik satu ke titik yang lain misalnya bayangan dari objek tersebut hal ini akan diproses juga sebagai foreground atau masuk ke dalam objek yang diklasifikasikan. Background

Subtraction pada OpenCV memiliki tiga algoritme yang sering diimplementasikan, diantaranya:

1. Background Subtractor MOG

Algoritme ini menggunakan metode Gaussian Mixture berdasarkan pemisahan latar belakang objek dan objek yang akan diproses. Algoritme ini pertama kali diperkenalkan lewat sebuah paper berjudul “Animproved adaptive background mixture model for real-time tracking with shadow detection” oleh P. Kadew TraKupong dan R. Bowden ditahun 2001.

Metode yang digunakan adalah memodelkan setiap pixel background oleh campuran distribusi K Gaussian. Dengan nilai K berkisar

(16)

dua indikator yaitu indikator terlalu sedikit bergerak atau bahkan tidak bergerak sama sekali dengan indikator yang selalu bergerak.

2. Background Subtractor MOG 2

Sama seperti halnya Background Subtractor MOG, Background Subtractor MOG 2 juga berdasarkan pemisahan latar belakang objek dan objek yang akan diproses. Algoritme ini diambil dari dua paper yaitu “Improved adaptive Gaussian mixture model for background Subtraction” di tahun 2004 dan “Efficient adaptive density estimation per image pixel

for the task of background subtractor” di tahun 2006, Kedua paper itu ditulis Z. Zivkovic. Salah satu hal atau fitur yang penting disini adalah bagaimana setiap warna pixel memiliki nilai distribusi Gaussian, berbeda dengan Background Subtractor MOG yang memilih nilai distribusi berdasarkan nilai k. Hal tersebut membuat Background Subtractor MOG 2 lebih adaptif pada kondisi perubahan pencahayaan atau iluminasi.

3. Background Subtractor GMG

(17)

Matsukawa, Ken Goldberg pada paper mereka yang berjudul “Visual Tracking of human visitors Under variable-light conditions for a

responsive audio art installation” pada tahun 2012.

Algoritme ini memungkinkan segmentasi foreground yang akan mengidentifikasi foreground pada kondisi yang lebih kompleks atau lebih sulit membedakan latar belakang dan foreground-nya melalui inferensi Bayesian. Estimasi dapat adaptif juga, pengamatan atau pendeteksian yang baru akan lebih observatif dibanding pengamatan atau pendeteksian yang sebelumnya. Selain hal tersebut, Background Subtractor GMG juga dapat menghilangkan noise atau gangguan seperti bayangan dari objek yang bergerak.

2.9 Gaussian smoothing

Gaussian smoothing atau biasa juga disebut Gaussian blur adalah hasil dari pengaburan sebuah citra dengan menggunakan fungsi Gaussian. Secara matematis, mengaplikasikan sebuah Gaussian smoothing ke sebuah citra samasaja dengan menyelimuti citra dengan sebuah fungsi Gaussian. Aplikasi tersebut akan mengurangi komponen citra yang mempunyai frekuensi tinggi karena Gaussian smoothing merupakan filter low pass. Persamaan dari fungsi Gaussian dalam satu

(18)

𝐺 (𝑥) = √2𝜋𝜎1 2𝑒(− 2𝜎2𝑥2) ...(2.2) sedangkan pada dua dimensi yaitu

𝐺 (𝑥) = 2𝜋𝜎12𝑒(− (𝑥2 + 𝑦2)2𝜎2 ) ......(2.3)

X adalah jarak dari asal sumbu horizontal, y adalah jarak dari asal sumbu vertikal, dan adalah deviasi standar dari distribusi Gaussian. Ketika diaplikasikan dalam dua dimensi, persamaan ini menghasilkan kontur permukaan berupa lingkaran konsentris dengan distribusi Gaussian dari titik pusat. Nilai dari distribusi ini digunakan untuk membangun sebuah matriks konvolusi yang diterapkan pada citra asli. Nilai baru setiap pixel diset pada nilai rata-rata dari daerah sekitarnya. Nilai pixel asli menerima nilai yang paling tinggi sedangkan pixel di sekitarnya menerima nilai yang lebih kecil di mana semakin dekat dengan pixel asli maka nilainya akan semakin mendekati. Hal inilah yang mengakibatkan timbulnya sebuah blur yang menjaga batas-batas dan edge yang baik.

Contoh, Misalkan citra f(x,y) yang berukuran 5x5 dan sebuah kernel atau mask yang berukuran 3x3 masing-masing adalah sebagai berikut:

𝑓(𝑥, 𝑦) =

(19)

Operasi konvolusi antara citra f(x,y) dengan kernel g(x,y), yaitu f(x,y) * g(x,y) dapat diilustrasikan sebagai berikut:

1. Tempatkan kernel pada sudut kiri atas, kemudian hitung nilai piksel pada posisi (0,0) dari kernel.

Hasil konvolusi = 3. Nilai ini dihitung dengan cara berikut:

(0x4) + (-1x4) + (0x3) + (-1x6) + (4x6) + (-1x5) + (0x5) + (-1x6) + (0x6) = 3

(20)

3.

Geser kernel satu piksel ke kanan, kemudian hitung nilai piksel pada posisi

(21)

Contoh implementasi matriks kernel Gaussian Blur 5x5 yang memilki efek seperti pada Gambar 2.2.

Gambar 2.2 Hasil Citra Kernel Gaussian Blur 5x5

(22)

2.10 Convex Hull

Sebelum definisi convex hull dijelaskan maka diperlu dijelaskan terlebih dahulu definisi convex polygon. Convex polygon adalah sebuah polygon yang tidak memiliki bagian yang cekung (concave). Pada Gambar 2.4 tanda panah menunjuk pada bagian yang cekung dari sebuah polygon. (W. Z Chen, 2011)

Gambar 2.4 Bukan convex polygon

Dalam matematika, terdapat definisi yang tegas mengenai convex polygon.Misalkan bahwa dapat dipilih dua titik yang mana saja dari sebuah

(23)

tersebut bukan convex polygon.Contoh convex polygon, semua garis yang terhubung dari dua titik tidak akan pernah melebihi batas polygon terlihat pada Gambar 2.5(b). (W. Z Chen, 2011)

Gambar 2.5 (a) Bukan convex polygon (b) Convex Polygon

(24)

Gambar 2.6 Contoh convex hull

Diketahui bahwa satu himpunan S dalam sebuah bidang atau dalam sebuah ruang adalah convex polygon (atau himpunan convex) jika dan hanya jika titik X dan Y ada di dalam S, garis XY harus berada di dalam S. Titik potong dari kumpulan manasaja dari himpunan convex adalah convex juga, sebagaimana yang ditunjukkan pada Gambar 2.5. Untuk sembarang himpunan W, convex hull dari W adalah titik potong dari semua himpunan convex yang berisi W. Batas dari convex hull adalah sebuah polygon dengan semua titik puncak dalam W. (W. Z Chen,

2011)

(25)

2.11 Blob Detection

Analisis blob ini menggunakan metode connected component, dimana di setiap kumpulan piksel yang tingkat keabuannya bernilai satu, dikategorikan sebagai satu objek. Setiap objek yang terdeteksi akan diberi label untuk mempermudah pengolahan. Dari analisis blob tersebut akan diperoleh informasi tentang centroid, luas area, tinggi, dan lebar sebuah objek dari bentuk rectangle . Dengan (𝑥̅, 𝑦̅) adalah centroid dari objek blob.Centroid dari objek blob (𝑥̅, 𝑦̅) dengan ukuran MxN dapat diperoleh menggunakan persamaan (2.4).

𝑥̅ = ∑𝑀𝑥=1∑𝑁𝑦=1𝑥 𝑏(𝑥,𝑦)

Pada Gambar 2.8 dapat dilihat representasi citra ukuran 10x10 piksel dan citra dengan nilai piksel 1 yang merupakan representasi dari objek (foreground)

(26)

Gambar 2.9 Blob yang terdeteksi

2.12 Microsoft Visual Studio 2015

Microsoft Microsoft Visual Studio 2015 merupakan aplikasi yang digunakan dalam melakukan development algoritme yang akan digunakan. Pemilihan aplikasi ini karena bahasa pemograman yang akan dipakai adalah VB.NET.Microsoft Visual Studio termasuk perangkat lunak yang relatif umum

(27)

source, dan harganya relatif cukup mahal. Microsoft menyediakan versi trial dari

aplikasi ini untuk digunakan selama 90 hari.

Pemrogramman pada Microsoft Visual Studio memberikan banyak bantuan bagi penggunanya dalam membuat program serta kode-kode yang digunakan untuk menyusun struktur suatu aplikasi,termasuk kode callback yang digunakan pada GUI (Graphical User Interface). VB-File merupakan editor text, latar dasar yang digunakan untuk meletakan fungsi-fungsi callback sebagai pengendali GUI (Graphical User Interface). Callback merupakan bagian-bagian kode data yang dibuat pada VB-File, setiap callback akan diimplementasikan sebagai sebuah subfungsi dalam VB-File. Kemampuan GUI Microsoft Visual Studio tergantung pada fungsi yang dibuat pada VB-File.

(28)

dapat terdiri dari beberapa komponen user interface yang saling berinteraksi, sehingga membentuk sebuah program aplikasi.

Microsoft Visual Studio mengimplementasikan GUI sebagai sebuah figure yang terdapat fasilitas uicontrol (control user interface) untuk memrogram masing-masing objek. Contoh tampilan dari Microsoft Microsoft Visual Studio dapat dilihat pada Gambar 2.10.

Gambar 2.10 Tampilan Microsoft Microsoft Visual Studio 2015

Gambar

Gambar 2.1 Proses sampling citra dari citra analog ke citra digital.
Gambar 2.2 Hasil Citra Kernel Gaussian Blur 5x5
Gambar 2.4 Bukan convex polygon
Gambar 2.5 (a) Bukan convex polygon (b) Convex Polygon
+5

Referensi

Dokumen terkait

Data spasial merupakan data yang memuat tentang lokasi suatu objek dalam peta berdasarkan posisi geografis objek tersebut dalam bumi dengan menggunakan sistem koordinat..

� Semua tiket yang diuangkan akan dikenakan biaya cancellation for refund dari basic fare dengan ketentuan sebagai berikut :.. o Kondisi Low

Dari data perbedaan biaya riil dengan tarif INA-CBG’s pada pasien JKN kelas perawatan 1 dapat diketahui bahwa rata-rata biaya riil pada semua tingkat

Pada penelitian ini, hasil uji statistik menggunakan uji Mann Whitney untuk melihat perbedaan pengetahuan siswa tentang buah dan sayur pada kelompok media video

Namun perbaikan perekonomian terus dilakukan oleh pemerintah juga koperasi intako yang menaungi mayoritas dari pengusaha industri tas dan koper (Intako)

Tujuan yang ingin dicapai dari kegiatan bermain ini adalah anak dapat berkembang dalam 6 aspek perkembangan, yaitu :.. Mencintai dan merawat ciptaan Tuhan

Untuk mendapat masukan akhir dalam penyempurnaan draft KEPMEN tersebut, Forum Reklamasi Hutan Pada Lahan Bekas Tambang (Forum RHLBT) akan mengadakan workshop dengan semua

Delapan artikel mengulas tentang Penangkapan Udang Galah ( Macrobrachium rosenbergii ) menggunakan Rawai Udang di Sungai Siak bagian hilir, Provinsi Riau., Studi pengamatan Plankton