Perangkat Lunak Peghitungan Jumlah Kendaraan Menggunkan Kamera (Studi Kasus Dinas Perhubungan Cikampek)

(1)

TUGAS AKHIR

Diajukan untuk Memenuhi Tugas Mata Kuliah Skripsi

Program Strata Satu Jurusan Teknik Informatika Fakultas Teknik dan Ilmu Komputer

Universitas Komputer Indonesia

REKHA ARIZAL PRIATNA

10106372

PROGRAM STRATA I

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

BANDUNG


(2)

i

( Studi Kasus Dinas Perhubungan Cikampek)

Oleh:

Rekha Arizal Priatna 10106372

Kemacetan atau penumpukan kendaraan di jalur pantura masih kerap terjadi, terlebih bila memasuki musim mudik atau libur panjang kemacetan yang terjadi biasanya mencapai berkilo-kilo meter, dan hal itu merupakan permasalah yang sampai saat ini masih belum dapat terselesaikan oleh Dinas Perhubungan Cikampek. Hal tersebut terjadi karena keterlambatan petugas dalam mengalihkan kendaraan yang memasuki jalur pantura ke jalur alternatif dikarenakan cara perhitungan yang dilakukan oleh petugas dalam menghitung jumlah kendaraan yang melintas masih menggunakan cara manual.

Untuk itu sebuah aplikasi yang dapat melakukan penghitungan jumlah kendaraan yang melintas menggunakan kamera sangat diperlukan sebagai pengganti mata manusia. Aplikasi yang dibangun sendiri menggunakan metode NSSD sebagai metode pembanding dengan acuan nilai threshold yang telah dimasukan oleh user.


(3)

i

(Case Studies of Transport Department Cikampek)

By:

Rekha Arizal Priatna 10106372

Traffic jam on the Pantura road still occur frequently, especially when entering the season back home or long holidays that occur are often being reached miles and miles, and it is the problem so far is still not resolved by the Transport Department Cikampek. This happens because of delays in the diversion of vehicles of personnel that enter via alternative routes pantura, because the calculations are performed in the calculation of the number of vehicles that pass are still using manual way.

For that an application that can do the counting the number of passing vehicles using a camera is indispensable as a substitute for the human eye. Applications built himself using NSSD as a method of comparison with a reference threshold value that has been entered by the user.


(4)

iii

Alhamdulillahi Rabbil ‘alamiin, segala puji dan syukur penulis panjatkan kepada Allah SWT, karena dengan izin-Nya dan setitik ilmu pengetahuan yang dipinjamkan kepada mahluk-Nya, penulis dapat menyelesaikan laporan tugas akhir ini.

Laporan tugas akhir dengan judul “PERANGKAT LUNAK

PENGHITUNG JUMLAH KENDARAAN MENGGUNAKAN

KAMERA” ini disusun guna memenuhi salah satu mata kuliah tugas akhir pada semester delapan di jurusan Teknik Informatika Universitas Komputer Indonesia.

Penulis sangat menyadari kekurangan yang ada pada laporan ini. Kekurangan ini dikarenakan keterbatasan penulis dalam hal ilmu pengetahuan dan pemahaman penulisan laporan. Akan tetapi, penulis berusaha menyusun laporan ini sebaik yang penulis bisa dengan segenap kemampuan dan usaha yang penulis bisa.

Selama menulis laporan tugas akhir ini, penulis telah mendapatkan banyak sekali bimbingan dan bantuan dari berbagai pihak yang telah dengan segenap hati dan keikhlasan yang penuh membantu


(5)

dan membimbing penulis dalam menyelesaikan laporan ini. Dengan kesadaran hati, penulis ucapkan terima kasih kepada :

1. Apa dan Mama tercinta yang senantiasa memberikan do’a, motivasi, dukungan dan bantuannya, baik moril maupun materi kepada penulis sampai dengan saat ini.

2. Ibu Dian Dharmayanti, S.T. selaku dosen pembimbing laporan tugas akhir yang dengan segala kesabaran hatinya membimbing penulis dalam menulis laporan tugas akhir ini.

3. Bapak Adam M. Bachtiar, S.kom selaku reviewer laporan tugas akhir saya yang banyak memberi masukan kepada penulis dalam merevisi laporan tugas akhir ini.

4. Bapak Iskandar Ikbal, S.T. selaku dosen wali kelas IF-8 Angkatan 2006.

5. Seluruh Dosen Teknik Informatika yang telah memberikan banyak

ilmu, arahan dan masukkan selama masa perkuliahan berlangsung. 6. Terima kasih untuk pihak DIHUBKOMINFO Kab. Kerawang yang

telah mengizinkan penulis untuk melakukan penelitian tugas akhir di Dinas Perhubungan UPTD III Region Cikampek. Terutama kepada Bapak Drs. Nugraha yang memberikan kemudahan kepada saya dalam mengumpulkan data-data yang diperlukan penulis.

7. Zaefty Tirta Buana yang selalu merengek pengen nikah sehingga memicu semangat penulis untuk menyelesaikan tugas akhir akhir ini.


(6)

8. D’Sengklek Squad (Jessy, Dani, Regal, Adit, Jery, Rangga, Aris, Natha) kalian adalah sahabat-sahabat terbaikku..

9. Terima kasih kepada all team IF-8 2006 atas persahabatannya, kebersamaannya dalam banyak hal baik saat kuliah, belajar, maupun saat jalan-jalan bareng.

10. Terima kasih untuk creew MCK-45A (Manusia Cibeunying Kolot). 11. Ana mancung dan Ica jendol yang sudah rela menjadi hiburan

tengah malam bagi penulis.

12. Saudara- saudara dan adiku yang telah meberikan dukungan kepada

penulis hingga penulis menyelesaikan tugas akhir ini.

13. Mr. Rokay atas bantuan dan masukan dalam pembuatan tugas akhir ini.

14. Kepada semua pihak yang telah membantu penulis dalam pembuatan dan penyusunan tugas akhir ini.

Dan tak lupa pula penulis memohon maaf apabila dalam penulisan laporan ini, penulis telah menyinggung perasaan atau menyakiti hati kepada semua orang baik secara tidak sengaja maupun yang disengaja. Akhir kata, penulis berharap agar laporan ini dapat berguna bagi semua orang yang membutuhkan. Amien.

Bandung, Juli 2011


(7)

1

1.1 Latar Belakang

Kemacetan atau penumpukan kendaraan di jalur pantura masih kerap terjadi, terlebih bila memasuki musim mudik atau libur panjang kemacetan yang terjadi biasanya mencapai berkilo-kilo meter, dan hal itu merupakan permasalah yang sampai saat ini masih belum dapat terselesaikan oleh Dinas Perhubungan Cikampek. Salah satu penyebab terjadinya hal demikian adalah disebabkan karena tidak sesuainya daya tampung jalur pantura dengan jumlah kendaraan yang akan melewati jalur pantura serta cara yang yang digunakan pihak terkait dalam melakukan proses perhitungan kendaraan, dimana pihak yang terkait masih menggunakan cara yang manual dalam melakukan perhitungan jumlah kendaraan yang melintas. yaitu dengan menugaskan beberapa orang petugas di lapangan, untuk menghitung setiap kendaraan yang lewat kemudian para petugas penghitung dilapangan tersebut mengumpulkan data yang mereka peroleh untuk dihitung ulang dan dijumlahkan.

Jika cara yang dilakukan tetap seperti itu maka kemacetan atau penumpukan kendaraan akan terus terjadi. Proses pengolahan data secara manual akan memakan waktu yang cukup lama serta tidak menutup kemungkinan terjadi kesalahan dalam perhitungan. Padahal


(8)

Dinas Perhubungan kota Cikampek harus segera memberikan laporan data yang akurat kepada Dinas Perhubungan pusat mengenai jumlah kendaraan yang akan memasuki jalur pantura. Hal itu dikarenakan kota Cikampek merupakan gerbang utama menuju jalur pantura yang merupakan jalur penghubung antara Jakarta dengan Jawa Tengah dan Jawa Timur.

Normalized Sum Squared Differences (NSSD) adalah metode yang dipakai untuk menghitung setiap kendaraan, Normalized Sum

Squared Differences (NSSD) merupakan metode untuk

membandingkan dua buah gambar secara numerik. Cara kerjanya sendiri adalah menghitung jumlah piksel yang telah dikonversi ke angka biner. Untuk melakukan identifikasi dengan menggunakan metode NSSD, diperlukan background image untuk dibandingkan dengan frame yang akan dideteksi. Background image yang digunakan merupakan image jalan atau lajur dalam keadaan kosong atau tidak ada kendaraan pada lajur yang akan dideteksi. Detection window diset pada lajur yang akan dideteksi setelah dilakukan proses grayscale sebelumnya. Kemudian, semua nilai pixel yang terdapat dalam detection window dijumlahkan

Hal yang sama juga dilakukan pada setiap frame video. Posisi detection window pada frame dan pada background image harus sama karena pada posisi inilah yang akan dilakukan pembandingan. Untuk


(9)

proses penghitungannya sendiri adalah dengan menghitung selisih dari jumlah nilai pixel pada background dan pada frame. Hasil penghitungannya dikuadratan untuk menghindari nilai negatif yang mungkin muncul dari perhitungan selisih. Untuk mengetahui jumlah kendaraan yang melintas, setiap hasil NSSD yang diperoleh pada tiap frame akan dihitung rata-ratanya. Hasil perhitungan rata-rata terbesar pada setiap frame tersebut akan mewakili keberadaan sebuah kendaraan.

Berdasarkan uraian di atas, maka dibutuhkan suatu aplikasi perangkat lunak yang dapat melakukan penghitungan jumlah kendaraan yang melintasi suatu jalan secara cepat dan akurat menggunakan kamera sebagai pengganti fungsi manusia sebagai pengawas. Oleh karena itu, judul yang dirasa tepat untuk tugas akhir (skripsi) ini adalah PERANGKAT LUNAK PENGHITUNG JUMLAH KENDARAAN

MENGGUNAKAN KAMERA (STUDY KASUS DINAS

PERHUBUNGAN CIKAMPEK).

1.2 Rumusan Masalah

Berdasarkan latar belakang pemilihan judul, maka yang menjadi permasalahan adalah bagaimana membangun perangkat lunak yang dapat melakukan penghitungan jumlah kendaraan yang melintasi suatu jalan secara cepat dan akurat menggunakan kamera sebagai pengganti fungsi manusia sebagai pengawas.


(10)

1.3 Maksud dan Tujuan

Maksud dari penulisan dan penelitian ini adalah untuk membangun suatu perangkat lunak penghitung jumlah kendaraan menggunakan kamera di Dinas Perhubungan Kota Cikampek.

Adapun tujuan dari penelitian ini, yaitu :

1. Memberikan data jumlah kendaraan yang melintas, agar dapat menentukan perencanaan lalu lintas atau jalur alternatif.

2. Memberikan informasi kepada badan penyedia layanan jalan mengenai kondisi kepadatan arus lalulintas.

1.4 Batasan Masalah

Agar pokok masalah tidak terlalu meluas, maka permasalahan dibatasi sesuai dengan uraian latar belakang dan rumusan masalah diatas. Adapun batasan masalah yang digunakan penelitian ini adalah sebagai berikut

1. Data yang digunakan di ambil dari penelitian yang dilakukan pada siang hari (kondisi cahaya terang).

2. Data yang digunakan dalam sistem adalah data kendaraan berupa image.


(11)

3. Kendaraan yang diteliti adalah kendaraan roda empat atau lebih (Mobil).

4. Metode yang digunakan untuk melakukan penghitungan adalah metode Normalized Sum Squared Defferences (NSSD).

5. Kamera hanya digunakan pada satu lajur kendaraan pada suatu jalur.

6. Bahasa yang digunakan untuk membangun perangkat lunak pada tugas akhir ini adalah C# .

7. DBMS yang digunakan dalam pembangunan perangkat lunak ini adalah Microsoft Office Access 2007.

8. Target user dari pembangunan perangkat lunak pada tugas akhir ini adalah pegawai Dinas Perhubungan Kota Cikampek bagian lapangan.

1.5 Metodologi Penelitian

Metode penelitian adalah suatu teknik atau cara untuk mencari, memperoleh, mengumpulkan dan mencatat data, baik berupa data primer maupun data sekunder yang dapat digunakan untuk keperluan menyusun tugas akhir dan kemudian menganalisa faktor-faktor yang berhubungan dengan pokok-pokok permasalahan sehingga akan didapat suatu kebenaran atas data yang diperoleh.


(12)

Metodologi yang digunakan dalam penelitian ini adalah metode analisis dekriptif. Metode deskriptif yaitu suatu metode untuk membuat gambaran (deskripsi) mengenai fakta-fakta dan informasi dalam situasi atau kejadian di masa sekarang secara sistimatis, aktual dan akurat. Tahapan-tahapan pembangunan perangkat lunak yang digunakan dalam metode penelitian ini adalah sebagai berikut :

a. Tahap pengumpulan data

Tahap pengumpulan data dapat diperoleh secara langsung dari objek penelitian. Cara-cara yang mendukung untuk mendapatkan data primer adalah sebagai berikut :

1. Studi pustaka / literatur

Studi ini dilakukan dengan cara mempelajari, meneliti dan menelaah berbagai literatur-literatur dari perpustakaan yang bersumber dari buku-buku, teks, jurnal ilmiah, situs-situs di internet, dan bacaan-bacaan yang ada kaitannya dengan topik penelitian, selain dari itu juga untuk melakukan penelusuran pustaka dan sumber-sumber penting mengenai segala sesuatu yang dibutuhkan dalam membangun perangkat lunak.


(13)

2. Studi lapangan

Studi ini dilakukan dengan cara mengunjungi tempat yang akan diteliti serta pengumpulan data dilakukan secara langsung. Hal ini meliputi :

a. Observasi

Melakukan pengamatan langsung ke lapangan untuk mengumpulkan informasi dan data yang dibutuhkan untuk membangun perangkat lunak.

b. Kuesioner

Melakukan pengumpulan data yang dilakukan dengan cara memberi seperangkat pertanyaan atau pernyataan tertulis kepada pegawai instansi terkait mengenai perangkat lunak yang akan dibangun.

b. Pembangunan perangkat lunak Menggunakan metode waterfall 1. Communication: tahap ini merupakan kegiatan pengumpulan

data dari sumber informasi (tempat penelitian) sebagai pendukung pembangunan sistem serta menentukan ke arah mana aplikasi ini akan dibangun.

2. Planning: menganalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh aplikasi yang akan dibangun. Tahap ini


(14)

harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang lengkap.

3. Modeling: perancangan antarmuka dari hasil analisis kebutuhan yang telah selesai dikumpulkan secara lengkap. 4. Contruction: hasil perancangan sistem diterjemahkan ke

dalam kode-kode dengan menggunakan bahasa pemrograman yang sudah ditentukan. Aplikasi yang dibangun langsung diuji baik secara unit.

5. Deployment: menyebarkan aplikasi yang telah di bangun kepada pihak pemesan.

Gambar 1.1 Metode Waterfall [Pressman, Roger, S. Software Enginering]

1.6 Sistematika Penulisan

Agar pembahasan lebih sistematika, maka tulisan ini dibuat dalam lima bab, yaitu :


(15)

Bab 1. Pendahuluan

Pada bab ini menerangkan secara umum latar belakang masalah, rumusan masalah, maksud dan tujuan penelitian, batasan masalah, metodologi penelitian serta sistematika penulisan.

Bab 2. Tinjauan Pustaka

Pada bab ini menerangkan secara garis besar pengertian pokok dari teori-teori yang mendasari pemecahan masalah yang dihadapi seperti pengertian pengolahan citra, pengenalan pola, metode yang digunakan, perangkat keras pendukung dan lainnya.

Bab 3. Analisis dan Perancangan

Pada bab ini menerangkan penganalisaan masalah dengan maksud untuk menganalisis prosedur yang sedang berjalan, analisis data dari hasil penelitian, analisis non-fungsional, perancangan data antarmuka, prosedural, menu, flowchart, dan analisis basis data.

Bab 4. Implementasi dan Pengujian

Pada Bab ini berisi hasil implementasi dari hasil analisis dan perancangan yang telah dibuat, disertai juga dengan hasil pengujian dari aplikasi yang dibangun, sehingga diketahui


(16)

apakah sistem yang dibangun telah memenuhi syarat atau belum.

Bab 5. Kesimpulan dan Saran

Pada bab ini akan berisikan kesimpulan-kesimpulan dari Laporan Tugas Akhir, dan terdapat pula saran yang diberikan agar dapat digunakan dimasa mendatang untuk perbaikan aplikasi menjadi lebih baik.


(17)

11

2.1 Perangkat Lunak

2.1.1 Pengertian Perangkat Lunak

Perangkat Lunak adalah sekumpulan data elektronik yang disimpan dan diatur oleh komputer, data elektronik yang disimpan oleh komputer itu dapat berupa program atau instruksi yang akan menjalankan suatu perintah. melalui software atau perangkat lunak inilah suatu komputer dapat menjalankan suatu perintah. Perangkat lunak berdasarkan distribusinya dibedakan menjadi beberapa macam, yaitu Perangkat lunak berbayar dan Perangkat lunak gratis ( Freeware, free software, shareware ). [7]

2.1.2 Perkembangan Perangkat Lunak

Perkembangan perangkat lunak telah tumbuh dengan sangat pesat sejak beredarnya komputer personal dipasaran. Dengan semakin murahnya harga komputer, semakin banyak pula orang yang memilikinya dan pemakai komputer membutuhkan bermacam-macam perangkat lunak untuk lebih mendayagunakan komputernya. Secara kebetulan, banyak perusahaan-perusahaan perangkat lunak yang menanggapi permintaan ini, telah ribuan macam perangkat lunak yang


(18)

tersedia dilapangan, terutama perangkat lunak paket (Package Software) yaitu program jadi untuk aplikasi tertentu. [7]

2.2 Komputer Vision

Komputer vision adalah sebuah disiplin ilmu yang mempelajari proses menyusun deskripsi tentang objek yang terkandung pada suatu gambar atau mengenali objek yang ada pada gambar. Komputer vision berusaha menterjamahkan citra menjadi deskripsi atau suatu informasi yang mempresentasikan suatu citra tersebut. [3]

Disisi lain orang-orang juga mengembangkan bagaimana suatu mesin pintar dapat memahami dan mengerti semua keadaan seperti telah dipaparkan di atas, bahkan juga dapat berkomunikasi dengan semuanya. Inilah konsep yang mendasari komputer vision.

2.2.1 Elemen-Elemen Komputer Vision

Gambar 2.1 di bawah ini adalah struktur yang mendasari elemen-elemen suatu mesin vision.


(19)

Scane

Image

Symbol Description Image Device

Machine Vision

Application Feedback

Light Source

Gambar 2.1 Struktur Komputer Vision

a. Light sources, merupakan sumber cahaya yang digunakan sebagai sumber untuk aplikasi seperti layar laser, sistem robotika dan sebagainya.

b. Scence, merupakan kumpulan objek.

c. Image Device, merupakan alat yang digunakan untuk mengubah gambar menjadi suatu yang dimengerti oleh mesin.

d. Image, merupakan gambar dari suatu objek yang merupakan representasi dari keadaan sesungguhnya.


(20)

e. Machine vision, merupakan mesin yang menginterpretasikan gambar yang berkenaan dengan ciri-ciri pola maupun objek yang dapat ditelusuri oleh sistem.

f. Symbolic description, merupakan sistem yang dapat digunakan untuk menganalogikan struktur kerja sistem ke simbol-simbol tertentu yang dapat mimengerti oleh sistem.

g. Aplication feedback, merupakan suatu keadaan yang dapat memberikan respon untuk menerima gambar dari suatu sistem penglihatan.

Dari paparan di atas ada dua elemen yang mendasari suatu sistem vision, yaitu Image Processing, dan Pattern Classification.[3]

2.3 Image Processing

Pengolahan citra atau Image Processing adalah bidang tersendiri yang sudah cukup berkembang sejak orang mengerti bahwa komputer tidak hanya dapat menangani data teks, tetapi juga citra. Teknik pengolahan citra biasanya digunakan untuk melakukan transformasi dari suatu citra kepada citra lain, sementara tugas perbaikan citra untu mendapatkan suatu informasi dari citra tersebut merupakan tugas manusia melalui penyususanan algoritmanya. [4]


(21)

Input Image Image Processing Output Image

Gambar 2.2 Fase Image Processing

2.3.1 Pengertian Citra Digital

Secara umum, pengolahan citra digital menunjuk pada pemrosesan gambar dua dimensi menggunakan komputer. Dalam konteks yang lebih luas, pengolahan citra digital mengacu pada pemrosesan setiap data dua dimensi. Citra digital merupakan sebuah larik (array) yang berisi nilai-nilai real maupun komplek yang direpresentasikan dengan deretan bit tertentu. [1]

Umumnya citra dibentuk dari persegi empat yang teratur sehingga jarak horizontal dan vertikal antara piksel satu dengan yang lain adalah sama pada seluruh bagian citra. Indeks X bergerak ke kanan dan indeks Y bergerak ke bawah. Untuk menunjukkan koordinat (m-1,n-1) digunakan posisi kanan bawah dalam citra berukuran m x n piksel. Hal ini berlawanan untuk arah vertikal dan horizontal yang berlaku pada sistem grafik dalam matematika. Gambar 2.3 menunjukkan sistem penggambaran koordinat pada suatu citra digital.


(22)

Gambar 2.3 Koordinat Pada Citra Digital

Untuk menunjukkan tingkat intensitas cahaya suatu piksel, seringkali digunakan bilangan bulat dengan lebar selang antara 0-255, dimana 0 untuk warna hitam dan 255 untuk warna putih. Sistem visual manusia dapat membedakan ratusan ribu warna tetapi hanya dapat membedakan 100 shade keabuan. [8]

2.3.2 Teknik – Teknik Pengolahan Citra

Secara umum teknik pengolahan citra dibagi menjadi 3 tingkat pengolahan, yaitu sebagai berikut :

1. Low-Level Processing 2. Mid-Level Processing 3. High-Level Processing

Dari ketiga tingkat pengolahan citra diatas tersebut, dapat dinyatakan suatu gambaran mengenai teknik – teknik pengolahan citra digital dan macam – macamnya antara lain sebagai berikut :


(23)

1. Image Enhancement, berupa proses perbaiakan citra dengan meningkatkan kualitas citra baik kontras maupun kecerahan. 2. Image Restoration, proses memperbaiki model citra,

biasanya berhubungan dengan bentuk citra yang sesuai. 3. Color Image Processing, suatu proses yang melibatkan citra

berwarna, baik berupa image enhancement, image restoration atau yang lainnya.

4. Wavelet dan Multiresolution Processing, merupakam suatu proses yang menyatakan citra dalam beberapa resolusi. 5. Image Compression, merupakan proses yang digunakan

untuk mengubah ukuran data pada citra.

6. Morpholohical Processing, proses untuk mendapatkan nformasi yang menyatakan deskripsi dari suatu bentuk pada citra.

7. Segmentataion, proses untuk membedakan atau memisahkan objek – objek yang ada dalam suatu citra, seperti memisahkan objek dengan latar belakangnya.

8. Object Recognition, suatu proses yang dialakukan untuk mengenali objek – objek apa saja yang ada dalam suatu citra.


(24)

2.3.3 Jenis – Jenis Citra 2.3.3.1Citra Biner

Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai piksel yaitu hitam dan putih. Citra biner disebut juga citra B & W (Black and White) atau citra monokrom. Hanya dibutuhkan 1 bit untuk mewakili nilai setiap piksel dari citra biner. [1]

Gambar 2.4 Contoh Citra Biner

2.3.3.2 Citra Warna RGB (Red, Green, Blue)

Dalam pengolahan citra, warna dipresentasikan dalam range nilai H000000 sampai 0x00ffffff. Warna hitam adalah 0x00000000 dan warna putih adalah Hffffff. Definisi nilai warna di atas adalah sebagai berikut. variabel H menyatakan angka dibelakangnya adalah hexadecimal. [8]


(25)

X X

X X

X X

H

Nilai B

Nilai G

Nilai R

Gambar 2.5 Definisi nilai warna pada citra

Dengan demikian range warna yang digunakan adalah (2 8) (2 8) (2 8 ) = 2 24 (atau yang dikenal dengan istilah True Colour pada Windows). Nilai warna yang digunakan di atas merupakan gabungan warna cahaya merah, hijau dan biru seperti yang terlihat pada Gambar 2-6.

Gambar 2.6 Komposisi Warna RGB

Dengan demikian, untuk menentukan suatu warna yang bukan warna dasar digunakan gabungan skala kecerahan dari setiap warnanya.


(26)

2.3.3.3 Citra Grayscale

Citra grayscale merupakan citra digital yang hanya memiliki satu nilai kanal pada setiap pikselnya, dengan kata lain nilai bagian RED = GREEN = BLUE. Nilai tersebut digunakan untuk menunjukan tingkat intensitas. Warna yang dimiliki adalah warna dari hitam, keabuan, dan putih. Tingkatan keabuan disini merupakan warna abu dengan berbagai tingkatan dari hitam hingga mendekati putih. [1]

Model warna ini menyimpan informasi warna sebesar 8 bit. Jadi warna yang bisa ditampilkan pada mode warna grayscale berjumlah sampai 256. Skala perhitungan numeriknya bisa dengan pendekatan nilai brightness yang berskala 0 sampai 255 seperti pada Gambar 2-7.

Gambar 2.7 Komposisi Warna Grayscale

Greyscaling adalah teknik yang digunakan untuk mengubah citra berwana menjadi bentuk grayscale. Pengubahan dari citra berwarna ke bentuk grayscale dapat dilakukan dengan melakukan beberapa pesamaan sebagai berikut :

a. Mengubah sistem YUV (system warna NTSC), yaitu dengan cara mengambil komponen Y (iluminasi). Komponen Y


(27)

sendiri dapat diperoleh dari sistem warna RGB dengan konversi :

GRAY=Y=0.299*R+0.587*G+0.114*B

….……(2.

1)

b. Dengan merata – rata setiap komponen warna pada RGB memiliki persamaan sebaga beriut :

……(2.2)

c. Menggunaan nilai masimal dari komponen RGB meiliki persamaan sebagai berikut :

Gray=MAX{RGB} ….(2.3)

Cara yang sering digunakan dalam pemrosesan warna RGB adalah cara a dan b. berikut adalah tabel hasil konversi dari image RGB ke image Grayscle :


(28)

Tabel 2.1 hasil konversi RGB ke Grayscale

Source Image RGB (Data Type)

Resultan Image (Data Type)

8 bit per channel

Grayscale :1, 8, 16 bit per cpixel

16 bit per channel

Grayscale :1, 8, 16 bit per cpixel

32 bit per channel

Grayscale :1, 8, 16 bit per cpixel

Contoh dari Hasil dari proses grayscaling ditunjukkan pada Gambar 2.8 dibawah ini :

(a) (b)

Gambar 2.8 Citra Grayscale (a) dan Citra RGB (b)

2.3.4 Teknik Pengambilan Citra

Ada beberapa teknik pengambilan citra digital yang bisa dilakukan, antara lain dengan menggunakan kamera digital (webcam)


(29)

atau menggunakan scanner, atau barcode scanner. Hasil dari citra dengan menggunakan teknik kamera atau scanner berupa citra raster atau citra dengan model matriks. Teknik pengambilan citra selain membuthkan peralatan input, membutuhkan juga suatu card yang disebut frame grabber yang berupa rangkaian untuk mengolah citra secara hardware.

Selain itu pengambilan citra juga bisa dilakukan dengan menggunakan teknik grafika komputer, yaitu dengan membentuk citra komputer sesuai dengan teknik pengambilan citra. Hasil dari citra dengan menggunakan teknik grafika komputer ini bisa berupa citra raster atau bisa berupa vektor. [8]

2.3.5 Filtering

Filtering adalah suatu proses dimana diambil sebagian sinyal dari frekwensi tertentu, dan membuang sinyal pada frekwensi yang lain. Filtering pada citra juga menggunakan prinsip yang sama, yaitu mengambil fungsi citra pada frekwensi-frekwensi tertentu dan membuang fungsi citra pada frekwensi-frekwensi tertentu. [8]

Berdasarkan sifat transformasi fourier dari suatu citra dan format koordinat frekwensi seperti gambar berikut ini:


(30)

Gambar 2.9 Format Koordinat frekwensi Pada Citra

2.3.5.1 Teknik-Teknik Filtering

1. Low Pass Filter.

low pass filter adalah proses filter yang mengambil citra dengan gradiasi intensitas yang halus dan perbedaan intensitas yang tinggi akan dikurangi atau dibuang. Hal ini banyak digunakan untuk reduksi noise dan proses blur. [8]

Ciri-ciri dari fungsi low-pass filter adalah sebagai berikut:

j i H i, j = 1 …..(2.4)

2. High Pass Filter.

High pass filter adalah proses filter yang mengambil citra dengan gradiasi intensitas yang tinggi dan perbedaan intensitas yang rendah akan dikurangi atau dibuang. Hal ini banyak digunakan untuk


(31)

menentukan garis tepi (edge) atau sketsa dari citra. Ciri-ciri dari fungsi High-pass filter adalah sebagai berikut:

j i H i, j = 0 …(2.5)

3. Band Stop Filter

Bila ingin mempertahankan gradiasi dan bentuk, dengan tetap mengurangi banyaknya bidang frekwensi (bandwidth) dan membuang sinyal yang tidak perlu maka frekwensi rendah dan frekwensi tinggi dipertahankan, sedangkan frekwensi tengahan dibuang atau dinamakan dengan Band Stop Filter.

2.4 Segmentasi Citra

Segmenatsi citra merupakan teknik untuk membagi suatu citra menjadi beberapa daerah (region) dimana setiap daerah memiliki kemiripan atribut.

2.4.1 Thresholding

Thresholding adalah suatu proses dalam pengolahan citra yang berfungsi untuk memisahkan foreground dan background dari suatu image. Proses tresholding dilakukan dengan cara melihat perbedaan intensitas warna dari suatu image. Input dari proses tresholding adalah grayscale image atau color image sedangkan output dari proses


(32)

tresholding adalah binary image dimana piksel hitam untuk mewakili background dan piksel putih mewakili foreground, atau sebaliknya.

Tresholding digunakan untuk mengatur jumlah derajat keabuan yang ada pada suatu citra. Dengan menggunakan tresholding maka derajat keabuan dapat diubah seseuai keinginan. Tresholding dapat juga digunakan untuk mengubah intensitas piksel menjadi salah satu dari dua nilai, a1 atau a2. Hasil dari proses thresholding ditentukan oleh suatu parameter yang disebut nilai threshold. [1]

Proses thresholding menggunakan fungsi sebagai berikut :

…(2.6)

Keterangan :

f(x,y) = Nilai intensitas yang lama

g(x,y) = Nilai intensitas yang baru

T = Nilai Threshold

Jika a1=0 dan a2=1, maka proses thresholding mengubah citra greyscale menjadi citra biner.


(33)

2.5 Metode Normalized Sum-Squared Differences (NSSD)

Metode Normalized Sum-Squared Differences (NSSD) merupakan bentuk khusus dari Sum-Squared Differences (SSD). Metode Normalized Sum-Squared Differences (NSSD) didefinisikan sebagai perbedaan nilai intensitas yang dikuadratkan antara frame saat itu dengan frame background dalam suatu daerah yang ditentukan (Windows Detections), yang kemudian di normalisasi [9,10].

Untuk melakukan identifikasi dengan menggunakan metode Metode Normalized Sum-Squared Differences (NSSD), diperlukan background image untuk dibandingkan dengan frame yang akan dideteksi. Background image yang digunakan merupakan image lajur dalam keadaan kosong atau tidak ada kendaraan yang lewat pada lajur yang akan dideteksi. Windows Detections atau ROI (Region of Interest) diset pada lajur yang akan dideteksi setelah dilakukan proses grayscale sebelumnya. Kemudian, semua nilai piksel yang terdapat dalam Windows Detections dijumlahkan.

Hal yang sama juga dilakukan pada setiap frame video. Maksud dari frame video adalah sekumpulan image yang ditampilkan secara berurutan sehingga membentuk suatu gambar bergerak. Sehingga proses grayscale, setting Windows Detections, dan menjumlahkan nilai piksel dilakukan pada masing-masing frame. Posisi detection window


(34)

pada frame dan pada background image harus sama karena pada posisi inilah yang akan dilakukan pembandingan.

Dengan adanya Windows Detections memudahkan proses perhitungan jumlah nilai piksel yang dilakukan oleh komputer. Bilamana tidak menggunakan Windows Detections, komputer akan melakukan perhitungan pada frame secara keseluruhan. Sedangkan dengan Windows Detections, komputer cukup menghitung pada Windows Detections saja. Setelah mendapatkan jumlah nilai piksel dari background image dan frame, nilai-nilai tersebut dicari selisihnya dengan cara dikurangkan (subtract). Selisih dari jumlah nilai background image dan frame dikuadratkan untuk menghindari nilai negatif. Nilai negatif terjadi bilamana warna dari obyek pada frame lebih gelap daripada background image. Sebab warna gelap memiliki nilai pixel yang kecil.

Metode NSSD dapat dirumuskan dalam persamaan berikut :

…(2.9)

Keterangan:

IC(i) = intensitas frame pada piksel(i)


(35)

Q = detection window/ROI (Region of Interest)

N = jumlah pikselpada area Q

Perhitungan NSSD dilakukan pada setiap frame video yang ditampilkan, sehingga jumlah data yang didapat sesuai dengan jumlah frame yang ditampilkan.

2.5.1 Windows Detections (ROI)

Windows Detections (ROI) memungkinkan dilakukannya pengkodean secara berbeda pada area tertentu dari citra digital, sehingga mempunyai kualitas yang lebih baik dari area sekitarnya (background). Fitur ini menjadi sangat penting, bila terdapat bagian tertentu dari citra digital yang dirasakan lebih penting dari bagian yang lainnya.[9,10]

Prinsip utama pada pengkodean Windows Detections (ROI) ini adalah dengan menggeser bitplane dari koefisien yang dipilih sebagai Windows Detections (ROI), sehingga menempati posisi yang lebih tinggi daripada bitplane sekitarnya (background). Karena menggunakan metode Maxshift, pergeserannya dilakukan sampai batas maksimal, sehingga seluruh bitplane dari koefisien Windows Detections (ROI) berada di atas bitplane dari area sekitarnya. Hal ini menyebabkan, pengkodean pada Windows Detections (ROI) akan


(36)

menghasilkan area dengan kualitas maksimal dibandingkan area sekitarnya.

Gambar 2-10 Windows Detection (ROI)

Untuk melakukan Windows Detections (ROI), perlu diidentifikasi koefisien-koefisien yang termasuk dalam Windows Detections (ROI). Hal tersebut dimaksudkan untuk menghasilkan sebuah Windows Detections (ROI) mask, yang merupakan indikator dari koefisien yang termasuk Windows Detections (ROI) atau bukan. Umumnya yang digunakan sebagai penanda merupakan sebuah angka biner, yang dimiliki oleh piksel-piksel yang termasuk area Windows Detections (ROI).

2.6 Pemodelan Data

Pemodelan sistem memainkan peranan yang penting dalam pengembangan sistem. Pemodelan data kadang-kadang disebut pemodelan database karena model data kadang-kadang


(37)

diimplementasikan sebagai sebuah database. Pemodelan data dapat digambarkan dengan ERD (entity Relationship Diagram).

2.6.1 Entity Relationship Diagram (ERD)

Entity Relationship Diagram (ERD) merupakan suatu diagram yang digunakan untuk menghubungkan antar elemen (relational Condition), dimana pada tahap selanjutnya dapat diimplementasikan kedalam bentuk tabel relasi.

Entity Relationship Diagram (ERD) menggunakan sejumlah notasi dan simbol untuk menggambarkan struktur dan hubungan antar data, pada dasarnya ada 3 macam simbol yang digunakan, yaitu :

1. Entity

Adalah suatu objek yang dapat diidentifikasi dalam lingkungan pemakai dan sesuatu yang penting bagi pemakai dalam konteks sistem yang akan dibuat.

2. Atribut

Elemen dari sebuah entity yang berfungsi mendeskripsikan karakter entity.


(38)

Sebagaimana halnya entity maka dalam hubungan pun harus dibedakan antara hubungan atau bentuk hubungan antara entity dengan isi dari hubungan itu sendiri.

Beberapa macam hubungan antar relasi, antara lain :

1. Satu Ke Satu (One to One)

Bentuk relasi antara satu entitas dengan jumlah satu ke entitas dengan jumlah yang sama.

2. Satu Ke Banyak (One to Many)

Bentuk relasi dari entitas dengan jumlah satu ke entitas lain yang berjumlah lebih dari satu (Entitas dengan banyak alternatif tujuan).

3. Banyak ke Banyak (Many to Many)

Bentuk relasi yang mendeskripsikan permasalahan yang komplek yaitu hubungan antara entitas yang berjumlah lebih dari satu dengan entitas dengan jumlah yang sama.


(39)

2.6.2 Flow Map

Bagan alir atau flow map adalah bagan yang menunjukan alir didalam program atau prosedur sistem secara logika. Bagan alir digunakan terutama untuk alat bantu komunikasi dan dokumentasi.

Bagan alir dokumen atau sering disebut juga Flow Map merupakan bagan alir yang menunjukan arus dari aliran formulir termasuk tembusan-tembusannya.

Berikut adalah keterangan dari simbol-simbol yang biasa digunakan dalam pembuatan bagan alir atau Flow map :

1. Arah Aliran Dokumen

Menunjukan Arah aliran dokumen antar bagian yang terkait dalam suatu sistem. Dapat dari sistem ke luar sistem, dari luar sistem ke sistem lain dan bagian luar lain.

2. Dokumen

Menunjukan dokumen input, output pada proses manual dan proses komputer.


(40)

3. Penyimpanan sementara

Menunjukan media penyimpanan sementara dari data informasi file pada proses manual. Dokumen dapat disimpan dalam lemari arsip.

4. Penyimpanan (Database)

Menunjukan media penyimpanan dari data informasi file. Dokumen dapat disimpan dalam database.

2.6.3 Diagram Konteks

Diagram konteks merupakan level tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem. Yang digambarkan dengan lingkaran tunggal yang mewakili seluruh sistem. Sistem dibatasi oleh boundary (dapat digambarkan dengan garis putus). Dalam diagram konteks hanya ada satu proses.

2.6.4 Data Flow Diagram (DFD)

Data Flow Diagram atau Diagram Alir Data merupakan diagram alir yang dipresentasikan menggunakan lambang – lambang tertentu. Penulisan suatu program akan menjadi lebih mudah dalam pelaksanaan dengan adanya diagram alir data. Keuntungan menggunakan Data Flow Diagram (DFD) adalah supaya mempermudah pemakai (User) yang kurang menguasai bidang


(41)

komputer untuk lebih mengerti sistem yang akan dikembangkan atau dikerjakan.

DFD menggunakan simbol-simbol untuk menerangkannya, yaitu:

1. External Entity (Kesatuan Luar)

External entity (Kesatuan luar ) merupakan kesatuan (entity) di lingkungan luar sistem yang dapat berupa orang, organisasi atau sistem lainnya yang berada dilingkungan luar sistem yang akan memberikan (input) atau menerima (output) dari sistem. Yang disimbolkan dengan kotak.

2. Data flow (Arus Data)

Data flow (Arus data) mengalir diantara Process (Proses), simpanan data (data store), dan kesatuan luar (external entity). Arus data ini menunjukkan arus dari data yang dapat berupa masukan untuk sistem atau hasil dari proses sistem. Yang disimbolkan dengan anak panah.

3. Process (Proses)

Process (Proses) adalah kegiatan atau kerja yang dilakukan oleh orang, mesin, atau komputer, untuk Physical Data flow Diagram (PDFD). Atau merupakan suatu proses yang hanya menunjukkan proses


(42)

dari komputer, untuk Logical Data Flow Diagram (LDFD). Yang disimbolkan dengan lingkaran atau dengan simbol empat persegi panjang tegak dengan sudut-sudutnya yang tumpul.

4. Data Storage (Penyimpanan Data)

Simpan data (data store) merupakan tempat penyimpanan data. yang disimbolkan dengan sepasang garis horizontal yang tanpa tutup diujungnya.

2.6.5 Kamus Data (Data Dictionary)

kamus data merupakan sebuah daftar yang terorganisasi dari elemen data yang berhubungan dengan sistem, dengan definisi yang teliti sehingga pemakai dan analisis sistem akan memiliki pemahaman yang umum mengenai input, output, komponen penyimpanan serta kalkulasi intermediate.[14]

Pendefinisian data tersebut dilakukan dengan menggunakan notasi yang umum digunakan dalam menganalisa sistem yaitu dengan menggunakan sejumlah simbol. Kamus data biasanya dipelihara secara otomatis oleh sistem manajemen database.


(43)

Cara mendefinisikan kamus data yaitu :

1. Menggambarkan arti aliran data atau penyimpanan yang ditunjuk dalam DFD.

2. Menggabungkan komponen dari kumpulan data yang mengalir

yaitu kumpulan komponen yang mungkin bisa dipecah lagi menjadi data elementer.

3. Menggambarkan data yang tersimpan.

4. Menentukan nilai dibagian elementer dari informasi yang relevan di DFD dan data storenya

2.7 Basis Data

2.7.1 Pengertian Basis Data

Basis Data adalah kumpulan terorganisasi dari data-data yang berhubungan sedemikian rupa sehingga mudah disimpan, dimanipulasi, serta dipanggil kembali oleh pengguna. [14]

Keuntungan Sistem basis Data:

1. Kecepatan dan Kumudahan (Speed) 2. Efisiensi Ruang Penyimpanan (Space) 3. Keakuratan (Accuracy)

4. Ketersediaan (Availability) 5. Kelengkapan (Completeness) 6. Keamanan (Security)


(44)

7. Kebersamaan (Sharability)

Komponen utama Basis Data (Database) antara lain :

1. Perangkat Keras (Hardware)

Yaitu Sebuah Komputer yang sudah berbentuk PC.

2. Sistem Operasi (Software)

Yaitu suatu bahasa pemrograman untuk melayani perintah – perintah user.

3. Data

Yaitu data yang bersifat terpadu dan berbagi.

4. Aplikasi

Yaitu pengolahan perangkat lunak atau sistem informasi yang bersifat opsional.

5. Pemakai (User)

Yaitu orang yang memakai atau menggunakan basis data.

Pengguna sistem basis data dapat melakukan berbagai operasi, antara lain :


(45)

2. Mengosongkan berkas;

3. Menyisipkan data ke suatu berkas;

4. Mengambil data yang terdapat pada suatu berkas;

5. Mengubah data pada suatu berkas;

6. Menghapus data pada suatu berkas;

7. Menyajikan suatu informasi yang diambil dari sejumlah berkas.

2.7.2 Sistem Pengelola Basis Data (Database Management System)

Kebanyakan dari database tergantung pada Database Management Sistem (DBMS) untuk mengelola data yang tersimpan dalam sistem database dan menyiapkan data agar tersedia bagi pengguna yang ingin mengakses informasi tertentu. Sebuah Database Management Sistem (DBMS) terdiri atas satu perangkat server dan client yang komprehensif (meliputi banyak hal) yang mendukung berbagai macam tugas-tugas administratif dan yang berhubungan dengan data. Beberapa perangkat Database Management Sistem (DBMS) menyediakan beberapa tipe perangkat client, yang mengijinkan user untuk berinteraksi secara langsung dengan data yang tersimpan dalam database. Database Management Sistem (DBMS)


(46)

dapat menjadi alternatif penggunaan secara khusus untuk aplikasi, semisal penyimpanan data dalam file dan menulis kode aplikasi yang spesifik untuk pengaturannya.[14]

Penggunaan Database Management Sistem (DBMS) untuk suatu aplikasi tergantung pada kemampuan dan dukungan Database Management Sistem (DBMS) yang beroperasi secara efisien. Sehingga agar bisa menggunakan Database Management Sistem (DBMS)dengan baik, perlu diketahui cara kerja dari Database Management Sistem (DBMS) tersebut. Pendekatan yang dilakukan untuk menggunakan Database Management Sistem (DBMS) secara baik meliputi : implementasi Database Management Sistem (DBMS) dan arsitektur secara mendetail untuk dapat memahami desain dari suatu basis data

2.7.3 Bahasa Basis Data

Database Management Sistem (DBMS) merupakan perantara bagi pemakai dengan basis data dalam disk. Cara berkomunikasi atau berinteraksi antara pemakai dengan basis data tersebut diatur dalam suatu bahasa khusus yang ditetapkan oleh perusahaan pembuat Database Management Sistem (DBMS). Bahasa tersebut dapat kita sebut sebagai bahasa basis data yang terdiri atas sejumlah perintah yang diformulasikan oleh user dan diproses oleh Database Management Sistem (DBMS) untuk melakukan suatu aksi atau pekerjaan tertentu.[14]


(47)

Bahasa yang digunakan dalam Basis Data yaitu :

1. DDL (Data Definition Language )

Merupakan bahasa definisi data yang digunakan untuk membuat dan memanage objek database seperti database, tabel dan view.

2. DML (Data Manipulation Language)

Merupakan bahasa manipulasi data yang digunakan untuk memanipulasi data pada objek database seperti tabel.

3. DCL (Data Control Language)

Merupakan bahasa yang digunakan untuk mengendalikan pengaksesan data.

2.8 Perangkat Lunak Pembangun 2.8.1 C#

C# adalah bahasa pemrograman baru yang diciptakan Microsoft yang digunakan oleh banyak developer .NET untuk mengembangkan applikas dengan platform .NET. kelebihan dari bahasa pemrogeaman ini adalah sebagai berikut :


(48)

1. Sederhana

C# bersifat sederhana, karena bahasa ini didasarkan kepada bahasa C dan C++. Jika anda familiar dengan C dan C++ atau bahkan Java, anda akan menemukan aspek-aspek yang begitu familiar, seperti statements, expression, operators, dan beberapa fungsi yang diadopsi langsung dari C dan C++, tetapi dengan berbagai perbaikan yang membuat bahasanya menjadi lebih sederhana.[16]

2. Object Oriented Language

C# memenuhi syarat-syarat sebagai sebuah bahasa pemrograman yang bersifat Object Oriented, yaitu encapsulation, inheritance dan polymorphism.

3. Powerfull dan Fleksibel

C# bisa digunakan untuk membuat berbagai macam aplikasi, seperti aplikasi pengolah kata, grapik, spreadsheets, atau bahkan membuat kompiler untuk sebuah bahasa permrograman.

4. Efisien

C# tidak memiliki terlalu banyak keyword, sehingga dapat mengurangi kerumitan.


(49)

5. Modular

Kode C# ditulis dengan pembagian masing Class-Class (classes) yang terdiri dari beberapa routines yang disebut sebagai member methods. Class-Class dan metode-metode ini dapat digunakan kembali oleh program atau aplikasi lain. Hanya dengan memberikan informasi yang dibutuhkan oleh Class dan metode yang dimaksud, maka kita akan dapat membuat suata kode yang dapat digunakan oleh satu atau beberapa aplikasi dan program (reusable code).

2.8.2 Microsoft Access

Microsoft Access merupakan anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan Microsoft PowerPoint. Aplikasi ini menggunakan mesin basis data Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang intuitif sehingga memudahkan pengguna.

Microsoft Access dapat menggunakan data yang disimpan di dalam format Microsoft Access, Microsoft Jet Database Engine, Microsoft SQL Server, Oracle Database, atau semua kontainer basis data yang mendukung standar ODBC. Para pengguna atau programmer yang mahir dapat menggunakannya untuk mengembangkan perangkat lunak aplikasi yang kompleks, sementara para programer yang kurang mahir dapat menggunakannya untuk mengembangkan perangkat lunak


(50)

aplikasi yang sederhana. Microsoft Access juga mendukung teknik-teknik pemrograman berorientasi objek, tetapi tidak dapat digolongkan ke dalam perangkat bantu pemrograman berorientasi objek.

2.9 Perangkat Keras Pendukung 2.9.1 Kamera (Webcam)

Kamera digital digunakan sebagai sarana masukan untuk memberikan data objek gambar ke komputer. Sebuah kamera digital dapat menjangkau hingga resolusi yang cukup. Biasanya resolusi yang mendukung mencapai 320x460 sampai 768x1024 piksel. [11]

Kemampuan suatu kamera untuk mengambil banyak gambar utuh (frame) dalam satu detiknya menjadi penting. Untuk menghasilkan video yang memiliki pergerakan yang lancar, suatu kamera setidaknya harus memiliki kemampuan mengambil gambar utuh sebanyak 30 frame setiap detiknya. Semakin banyak gambar utuh yang diambil setiap detiknya makin mulus gambar yang dihasilkan.

Ada dua jenis kamera yang bisa digunakan, pertama adalah tipe Web Cam yang dihubungkan melalui USB. Untuk tipe ini, citra yang dihasilkan kurang bagus. Tipe kedua adalah tipe VCR (Video Camera Recorder) atau kamera video digital yang dihubungkan melalui port fireware. Untuk jenis kedua, citra yang dihasilkan baik, dengan resolusi tinggi.


(51)

Gambar 2-11 Webcam

2.9.2 Definisi Real Time

Suatu sistem dikatakan real time jika dia tidak hanya mengutamakan ketepatan pelaksanaan instruksi atau tugas, tapi juga interval waktu tugas tersebut dilakukan. Dengan kata lain, sistem real time adalah sistem yang menggunakan deadline, yaitu pekerjaan harus selesai jangka waktu tertentu. Sementara itu, sistem yang tidak real time adalah sistem dimana tidak ada deadline, walaupun tentunya respons yang cepat atau performa yang tinggi tetap diharapkan. [12]

Sistem real time banyak digunakan dalam bermacam-macam aplikasi. Sistem real time tersebut ditanam didalam alat khusus seperti dikamera, mp3 players, serta di pesawat dan mobil. Sistem real time bisa dijumpai pada tugas-tugas yang mission critical, misal sistem untuk sistem pengendali reaktor nuklir atau sistem pengendali rem


(52)

mobil. Juga sering dijumpai pada peralatan medis, peralatan pabrik, peralatan untuk riset ilmiah, dan sebagainya.

Ada dua model sistem real time, yaitu hard real time dan soft real time.

1. Hard real time mewajibkan proses selesai dalam kurun waktu tertentu. Jika tidak, maka gagal. Misalnya adalah alat pacu jantung. Sistem harus bisa memacu detak jantung jika detak jantung sudah terdeteksi lemah.

2. Soft real time menerapkan adanya prioritas dalam pelaksanaan tugas dan toleransi waktu. Misalnya adalah transmisi video. Gambar bisa sampai dalam keadaan terpatah-patah, tetapi itu bisa ditolerir karena informasi yang disampaikan masih bisa dimengerti.

Sistem Hard real time menjamin bahwa proses waktu nyata dapat diselesaikan dalam batas waktu yang telah ditentukan. Contoh : sistem safety-critical. Beberapa sistem waktu nyata diidentifikasi sebagai sistem safety-critical, dalam skenario ini sistem waktu nyata harus merespon kejadian dalam batas waktu yang telah ditentukan maka akan terjadi bencana. Sistem manajemen penerbangan merupakan sebuah contoh sebuah sistem waktu nyata sebagai sistem safety-critical.


(53)

Sistem Soft real time menyediakan prioritas untuk mendahulukan proses yang menggunakan waktu nyata dari pada proses yang tidak menggunakan waktu nyata.


(54)

48 3.1 Analisis Sistem

Analisis sistem dapat didefinisikan sebagai penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya untuk mengidentifikasikan masalah-masalah, dan hambatan-hambatan sehingga dapat diusulkan kebutuhan-kebutuhan untuk perbaikannya. Melakukan analisis terhadap sistem yang sedang berjalan bertujuan sebagai dasar perancangan atau perbaikan sistem yang lama. Dan dari hasil analisis tersebut dapat diketahui kelemahan dan kekurangan sistem yang lama dan dapat dirancang atau diperbaiki menjadi sebuah sistem yang lebih efektif dan efisien.

3.1.1 Analisis Masalah

Berdasarkan data yang diperoleh dari hasil penelitian dan observasi langsung terhadap pihak Dinas Perhubungan Kota Cikampek, didapati beberapa masalah yang masih dihadapi Dinas Perhubungan Kota Cikampek dalam melakukan pengumpulan data jumlah kendaraan yang melintas, yaitu :


(55)

1. Cara penghitungan jumlah kendaraan yang melintas masih menggunakan cara yang manual yaitu dengan menugaskan beberapa orang petugas di lapangan, untuk menghitung setiap kendaraan yang lewat.

2. Pemborosan waktu dalam pembuatan laporan dikarenakan penghitungan jumlah kendaraan dengan menggunakan cara manual akan memakan waktu yang cukup lama dalam pembuatan laporan. 3. Kemungkinan terjadinya kesalahan perhitungan jumlah kendaraan

cukup tinggi.

4. Keterlambatan petugas dalam mengalihkan kendaraan ke jalur alternatif.

3.1.2 Analisis Prosedur Yang Sedang Berjalan

Dari hasil observasi dan wawancara yang telah dilakukan kepada pihak Dinas Pehubungan Kota Cikampek didapati sistem penghitungan jumlah kendaraan yang dilakukan oleh pihak Dinas Perhubungan Kota Cikampek masih menggunakan cara manual yaitu :

1. Pihak Dinas Perhubungan menugaskan beberapa orang petugas di lapangan ( pos penelitian )

2. Petugas tersebut mencatat dan menghitung setiap jumlah kendaraan yang melintas pada jalan tersebut.


(56)

3. Kemudian dilakukan proses penjumlahan dengan perolehan data dari petugas yang lain.

4. Hasil penjumlahan tadi di rekap ulang sebagai data pegangan petugas.

5. Data hasil penjumlahan dan perakapan tadi dilaporkan ke kantor untuk dimasukan ke dalam buku besar.

3.1.3 Solusi Yang Ditawarkan

Untuk mengurangi permasalahan-permasalahan yang ada di Dinas Perhubungan Kota Cikampek, maka ditawarkan sebuah solusi yaitu dengan Membangun suatu perangkat lunak yang dapat melakukan penghitungan jumlah kendaraan dengan menggunakan kamera sebagai pengganti fungsi mata manusia sebagai pengawas.

Adapun keuntungan dari solusi yang ditawarkan oleh penulis adalah sebagai berikut:

1. Aplikasi perangkat lunak yang akan dibangun tersebut diharapkan dapat mengatasi masalah penghitungan jumlah kendaraan yang masih dilakukan dengan cara manual.

2. Dinas Perhubungan Kota Cikampek dapat mengantisipasi terjadinya


(57)

3. Dinas Perhubungan Kota Cikampek dapat mengambil keputusan dalam pengalihan jalur kendaraan ke jalur alternatif tanpa menunggu terjadinya penumpukan kendaraan terlebih dahulu.

4. Memberikan kemudahan kepada pegawai Dinas Perhubungan Kota

Cikampek dalam melakukan penghitungan jumlah kendaraan.

3.1.4 Analisis Metode Untuk Penyelesaian Masalah

Tahapan analisis masalah metode untuk penyelesaian masalah adalah tahapan yang digunakan untuk mengetahui proses-proses yang digunakan dalam metode yang penulis gunakan dalam pembangunan aplikasi.

Metode utama yang digunakan dalam pembangunan perangkat lunak ini adalah metode Normalized Sum Squared Differences (NSSD), metode ini digunakan sebagai penghitung jumlah kendaraan yang melintas. Sebelum melakukan proses penghitungan terlebih dahulu dilakukan proses pengolahan citra terhadap data video yang menjadi bahan inputan untuk perangkat lunak ini. Adapun tahapan dari metode Normalized Sum Squared Differences (NSSD) sendiri adalah sebagai berikut:

1. Capture Kamera


(58)

3. Grayscaling 4. Filtering 5. Tresholding

6. Penghitungan kendaraan

3.1.4.1 Proses Capture Kamera

Proses capture ini merupakan proses yang sangat penting, karena melalui proses inilah data input akan didapatkan untuk dilakukan proses penghitungan. Pada system realtime proses peng-capture-an sendiri akan terus dilakukan walaupun jalan dalam keadaan kosong. Kecepatan kamera untuk proses peng-capture-an yang digunkan adalah 25fps. Adapun posisi untuk penempatan kamera yang digunakan dalam penelitian ini adalah berada di tepi sisi ruas jalan dengan ketinggian yang telah di tentukan dan kemiringan sekitar 75 derajat, untuk lebih jelasnya dapat dilihat dari gambar berikut :


(59)

Kamera

Kamera

Gambar 3.3.1 Posisi Penempatan Kamera

3.1.4.2 Proses Setting Detection Window

Setelah proses capture kamera proses selanjutnya adalah proses setting Detection Window (ROI), Detection Window (ROI) adalah daerah persegi panjang pada gambar untuk memproses gambar lebih lanjut.


(60)

Dalam pembuatan detection window (ROI) memiliki 2 tahapan proses yang harus dilakukan untuk dapat menggambarkan posisi detection window (ROI) yang akan digunakan pada frame dan background. Adapun tahapan dari proses pembuatan detection window (ROI) adalah sebagai berikut :

1. Menentukan titik-titik sudut

Menentukan titik sudut adalah proses awal yang akan digunakan untuk pembuatan Detection window (ROI) itu sendiri. Cara untuk menentukan koordinat titik pikselnya sendiri adalah dengan mengambil posisi nilai default yang disediakan oleh tools developer yang digunakan yang kemudian di geser untuk mencari posisi yang pas.

Contoh penetuan titik adalah sebagai berikut :


(61)

2. Membuat gambar persegi panjang

Setelah melakukan proses menetukan titik, proses selanjutnya dalam pembuatan detection window (ROI) adalah proses pembutan gambar persegi panjang dengan dua titik yang telah ditentukan tersebut.

Contoh pembuatan persegi panjang dapat dilihat pada gambar berikut :

Gambar 3.3.4 Membuat Gambar Persegi Panjang Untuk Pembuatan

Detection Window (ROI)

3. Penghitungan jumlah piksel dalam Detection Window (ROI)

Sebenarnya proses ini tidak termasuk dalam proses pembuatan detection window (ROI), akan tetapi karena dalam penggunaan rumus perhitungan Normalized Sum Squared Differences (NSSD) perlu diketahui jumlah piksel yang ada dalam luasan detection window (ROI) maka diperlukan proses ini.


(62)

Dalam penelitian ini hanya terdapat satu detection window yang menjadi daerah pembanding untuk dilakukan proses penghitungan perbedaan jumlah piksel, luasan dari detection window disesuaikan dengan luasan image yang tercapture oleh kamera.

Gambar 3.3.6 Contoh Penggunaan Detection Window (ROI) Pada Penelitian

Selain membuat detection window (ROI) pada background, detection window (ROI) juga digunakan pada tiap frame video. Posisi

Gambar 3.3.5 Jumlah Piksel Dalam Detection Window


(63)

detection window (ROI) pada background dan frame haruslah sama karena di posisi inilah akan dilakukan proses penghitungan Normalized Sum Squared Differences (NSSD).

Gambar 3.3.7 Contoh Penempatan Detection Window (ROI) Pada Frame

3.1.4.3 Grayscaling

Proses selanjutnya setelah proses setting detection window adalah proses Grayscaling, proses Grayscaling ialah mengubah citra berwarna menjadi citra abu-abu guna mempermudah proses perhitungan


(64)

Gambar 3.3.8 BackgroundImage Dalam RGB

Contoh image background yang telah di grayscale adalah sebagai berikut:

Gambar 3.3.9 Background ImageGrayscale


(65)

Gambar 3.3.10 FrameImage Dalam RGB

Contoh image frame yang telah di grayscale adalah sebagai berikut:

Gambar 3.3.11 Frame imageGrayscale

3.1.4.4 Perhitungan NSSD

Setelah melakukan proses setting detection window dan mengubah citra menjadi citra gray, langkah selanjutnya menghitung nilai NSSD yang terdapat pada setiap frame yang telah di grayscale. Perhitungan


(66)

Normalized Sum Squared Differences (NSSD) sendiri dilakukan di dalam detection window (ROI). Dalam perhitungan Normalized Sum Squared Differences (NSSD) dibutuhkan nilai intensitas piksel dari detection window (ROI) pada background dan detection window (ROI) pada frame. Intensitas piksel merupakan nilai derajat keabuan dari tiap piksel yang berada dalam detection window (ROI).

Rumus yang digunakan dalam perhitungan Normalized Sum Squared Differences (NSSD) adalah persamaan 2.9.

0.4 0.2 0.2 0.3

0.2

0.4 0.1 0.3 0.1

0.2 0.1

0.1

0.1

0.1 0.2 0.2

gambar 3.3.12 Nilai Intensitas Piksel Pada ROI

Background

gambar 3.3.13 Intensitas Piksel Pada ROI Background

0.7 0.9 0.8 1.0

0.8

0.6 1.0

0.6 0.7

0.4 0.5

0.1

0.8

0.2 0.5 0.2

gambar 3.3.15 Intensitas Piksel pada ROI Frame gambar 3.3.14 Nilai Intensitas Piksel Pada ROI


(67)

Setelah didapatkan nilai intensitas pada frame dan background yang masih berbentuk matriks baris X kolom, kemudian nilai intensitas pada frame dan background dikonversi kedalam bentuk matriks deret. Sehingga hasil dari nilai di atas akan nampak seperti berikut:

0.7 0.9 0.8 1.0 0.6 0.7 0.8 1.0 0.4 0.5 0.6 0.8 0.1 0.2 0.2 0.5

Gambar 3.16 Nilai Intensitas frame dalam matriks deret

0.4 0.2 0.2 0.3 0.3 0.1 0.2 0.1 0.2 0.1 0.4 0.1 0.1 0.2 0.1 0.2

Gambar 3.17 Nilai Intensitas background dalam matriks deret

Setelah nilai intensitas piksel pada background dan frame dirubah kedalam bentuk matriks deret, kemudian langkah selanjutnya adalah mengurangkan nilai intesitas piksel yang ada pada frame dengan nilai intensitas piksel yang ada pada background.

Untuk lebih jelasnya dapat dilihat pada contoh analisis dibawah ini:

NSSD = (0.7-0.4)2 + (0.9-0.2)2 + (0.8-0.2)2 + …. + (0.2-0.1)2 + (0.5-0.2)2 16

= 3.88 16 = 0.2425


(68)

Hasil dari perhitungan Normalized Sum Squared Differences (NSSD) sendiri digunakan untuk menunjukan ada atau tidaknya kendaraan yang lewat. Jika nilai Normalized Sum Squared Differences (NSSD) lebih besar dari nilai threshold yang telah ditentukan maka itu menunjukan keberadaan sebuah kendaraan namun jika nilai Normalized Sum Squared Differences (NSSD) lebih kecil dari nilai threshold yang telah ditentukan maka itu menunjukan tidak ada kendaraan yang melintas.

Algoritma dari Metode Normalized Sum Squared Differences (NSSD) adalah sebagai berikut:

1. Capture Background

2. Input detection window pada background 3. Capture frame

4. Nilai intensitas piksel pada detection window frame dikurangi nilai intensitas piksel pada detection window background.

5. Nilai hasil intensitas piksel frame yang telah dikurangi nilai intensitas background akan di ambil nilai rata-ratanya setiap 15 frame.

6. Jika nilai rata-rata yang diperoleh melebihi dari nilai treshold maka itu nilai tersebut mewakili keberadaan sebuah kendaraan. Jika nilai


(69)

rata-rata yang didapat kurang dari nilai treshold maka kembali ke proses capture frame.

3.1.4.5 Filtering

Setelah mendapatkan nilai NSSD dari setiap frame maka untuk mengurangi nilai yang mencolok di perlukan proses Filtering. Proses filtering adalah proses untuk mengurangi perbedaan nilai data yang mencolok. Teknik filtering yang digunakan dalam metode Normalized Sum Squared Differences (NSSD) adalah teknik low Pass Filter (persamaan). Low Pass Filter menggunakan cara merata-rata setiap data Normalized Sum Squared Differences (NSSD) yang diperoleh.

Dalam kasus ini proses filtering diterapkan terhadap setiap 15 data hasil perhitungan Normalized Sum Squared Differences (NSSD).

Contoh proses filtering terhadap 15 data hasil perhitungan Normalized Sum Squared Differences (NSSD) :

Filtering = NSSD1+NSSD2+NSSD3+NSSD4+…+NSSD15 15

= 67.16+70.42+68.02+84+24+……..+74.20 15

= 1721.56 15 = 1652.31


(70)

Setelah dilakukan proses untuk ke-15 data nilai NSSD, maka didapati nilai NSSD rata untuk ke-15 frame adalah 1652.31. nilai rata-rata yang telah didapat tersebut akan dibandingkan dengan nilai threshold untuk mengetahui apakah dalam 15 frame tersebut ada kendaraan atau tidak.

3.1.4.6 Threshold

Tahpan selanjutnya setelah proses filtering adalah prosses membandingkan nilai nssd yang telah di filtering dengan nilai treshold. Nilai threshold sendiri telah ditentukan berdasarkan data perhitungan nilai Normalized Sum Squared Differences (NSSD) terendah. Dalam threshold dibutuhkan sebuah nilai variabel bantu yaitu Nilai Base. Nilai base sendiri akan mencegah perhitungan ganda terhadap satu kendaraan jika ada kendaraan yang masuk dalam beberapa frame.

Proses threshold sendir terjadi didalam system, cara kerja dari proses threshold sendiri adalah dengan cara melihat perbedaan intensitas warna dari suatu image. Input dari proses tresholding adalah grayscale image atau color image sedangkan output dari proses tresholding adalah binary image dimana piksel hitam untuk mewakili background dan piksel putih mewakili foreground.


(71)

Ilustrasi dari proses threshold yang ada pada metode ini dapat dilihat dari gambar berikut:

3.1.4.7 Proses Penghitungan Kendaraan

Proses ini merupakan terusan setelah proses treshold, di dlam proses ini Jumlah kendaraan akan bertambah jika satu kendaraan itu telah melewati detection window untuk dihitung nilai NSSD dan nilai rata-rata NSSD-nya (proses filtering) lebih besar dari Nilai Treshold dan nilai base masih 0.

3.1.5 Analisis Kebutuhan Non Fungsional

Analisis kebutuhan non fungsional merupakan analisis yang dibutuhkan untuk menentukan spesifikasi kebutuhan sistem. Spesifikasi ini juga meliputi elemen atau komponen-komponen apa saja yang dibutuhkan

Input image 0....255

byte

Proses Threshold

>80…<250 byte

Output Kendaraan bertambah


(72)

untuk sistem yang akan dibangun sampai dengan sistem tersebut dapat di implementasikan.

Analisis kebutuhan ini juga menentukan spesifikasi masukan yang diperlukan sistem, keluaran yang akan dihasilkan dan proses yang dibutuhkan untuk mengolah masukan sehingga menghasilkan suatu keluaran yang diinginkan.

3.1.5.1 Analisis Pengguna

Analisis pengguna dilakukan untuk mengetahui siapa yang akan menggunakan aplikasi perangkat lunak penghitungan jumlah kendaraan dengan menggunakan kamera.

Berdasarkan penelitian yang telah dilakuan, pelaku sistem manual di Dinas Perhubungan Kota Cikampek di tujukan pada tabel 3.1 .


(73)

Tabel 3.3-1 Pelaku sistem manual

Pengguna Tugas Keterangan

Kabag Lapangan DisHub Cikampek

Memeriksa laporan hasil laporan penghitungan jumlah kendaraan.

Penanggung jawab

operasional lapangan Dinas Perhubungan Kota Cikampek dan memeriksa seluruh laporan.

Pegawai DisHub Div Lapangan

Menghitung, mencatat dan membuat laporan dari hasil pengamatan jumlah kendaraan di lapangan

Melakukan penghitungan dan pencatatan serta membuat laporan.

Sementara untuk penerapan system yang baru hanya ada satu pengguna saja yaitu pegawai dishub divisi lapangan yang bertindak sebagai user peragkat lunak penghitung jumlah kendaraan menggunakan kamera. Sementara Kabag sendiri hanya bertugas menerima laporan hasil perhitungan yang telah dilakukan oleh pegawai dishub divisi lapangan.


(74)

Tabel 3.3-2 Pelaku Sistem Yang Baru

Pengguna Tugas Keterangan

Pegawai DisHub Divisi Lapangan

Mengawasi dan mengoperasikan sistem perangkat lunak penghitung jumlah kendaraan

Bertindak sebagai pegawai dinas perhubungan divisi lapangan yang bertugas untuk mengoperasikan perangkat lunak penghitung jumlah kendaraan menggunakan kamera.

3.1.5.2 Analisis Kebutuhan Perangkat Keras

Perangkat keras untuk implementasi program perangkat lunak sangatlah mendukung agar menghasilkan suatu informasi yang sesuai dengan yang diharapkan.

Berdasarkan hasil observasi dan penelitian langsung terhadap pihak Dinas Perhubungan Kota Cikampek, didapati perangkat keras yang digunakan untuk menghitung jumlah kendaraan yang melintas adalah alat penghitung manual.

Adapun perangkat keras yang dibutuhkan untuk mendukung penerapan perangkat lunak ini adalah sebagai berikut :


(75)

1. Kamera

a. Handycam Sony DCR-TRV 250E. b. Kamera Digital Casio

c. Webcam Logitech 5MP d. Kabel

2. Komputer

a. Mikroprosessor : Intel Pentium IV 4.0 GHz

b. Memori : 1 GB DDR2

c. Media penyimpanan : Harddisk 160 GB d. Kartu Grafik (VGA) : 256 MB

e. Monitor : 14 inch

3.1.5.3 Analisis Kebutuhan Perangkat Lunak

Kebutuhan perangkat lunak merupakan faktor yang harus dipenuhi untuk merancang sebuah perangkat lunak sehingga sesuai dengan maksud dan tujuan perangkat lunak tersebut dibuat.

Berdasarkan hasil observasi dan penelitian langsung terhadap pihak Dinas Perhubungan Kota Cikampek, didapati tidak ada perangkat lunak yang digunakan untuk menghitung jumlah kendaraan yang melintas.


(76)

Untuk penerapan perangkat lunak yang akan dibangun diusulkan ada beberapa perangkat lunak pendukung sebagai berikut :

1. Sistem Operasi

Sistem Operasi yang digunakan adalah Windows XP SP2. Dipilih karena sistem operasi ini pegawai dinas perhubungan divisi lapangan friendly dengan aplikasi apapun,

2. Database Management Sistem

Database yang digunakan untuk menyimpan data-data dalam penelitian dan pembangunan perangkat lunak ini adalah Microsoft Office Access.

3. C#

Merupakan tools development yang digunakan dalam proses coding perangkat lunak penghitung jumlah kendaraan menggunakan kamera ini.

4. AForge


(77)

3.1.5.4 Analisis Library

Library merupakan tools tambahan yang ditanam didalam sistem. Penggunaan library sendiri bertujuan untuk mempermudah dalam pembangunan suatu sistem kerana di dalam librari biasanya sudah di sediakan fungsi fungsi tertentu.

Adapun library yang digunakan dalam pembangunan aplikasi ini adalah:

Tabel 3-3 Analisis Library

Nama Proses Library Yang Digunakan Keterangan

Membaca Driver

Kamera Tiger Video

Membaca driver kamera yang akan digunakan untuk melakukan perekaman.

Grayscaling

Aforge Library tambahan yang

berfungsi untuk

melakukan pengolahan citra di dalam setiap frame, termasuk proses grayscaling.

Aforge.imaging

Filtering

Aforge Library tambahan yang

berfungsi untuk

melakukan pengolahan citra di dalam setiap frame, termasuk proses Aforge.imaging


(78)

filtering.

Nama Proses Library Yang Digunakan Keterangan

Tresholding Aforge

Library tambahan yang berfungsi untuk

melakukan proses tresholding. Aforge.math

3.1.5.5Batasan Sistem

Batasan sistem ditujukan untuk mebatasi permasalahan yang dapat ditangani oleh aplikasi yang telah buat.

Adapun batasan system dari aplikasi perangkat lunak penghitung jumlah kendaraan menggunakan kamera ini antara lain:

1. Satu kamera digunakan hanya untuk mengamati satu lajur. 2. Terjadi delay dari kamera ke aplikasi sekitar 2-3 detik. 3. Kondisi cahaya mempengaruhi hasil perhitungan.

3.1.6 Analisis Basis Data

ERD (Entity Relationship Diagram)

Untuk memodelkan data dan menggambarkan hubungan antara data yang ada, digunakan alat bantu yaitu diagram E-R. Usulan untuk


(79)

perancangan diagram E-R yaitu dapat membedakan dengan atribut lainnya sehingga tabel tersebut dapat dijadikan referensi untuk tabel lainnya. Adapun diagram E-R tentang proses akses informasi ini di tujukan pada gambar: treshold Jenis_treshold nama_treshold Nilai_ratarata Jenis_treshold no_ratarata ratarata Jumlah_kendaraan no jumlah waktu Jenis_treshold Memiliki Memiliki melakukan 1 1 1 1 N frame Kode_frame Nama_frame N N perhitungan nssd Kode_frame kode_frame Jenis_treshold 1 N Kode_treshold melakukan Memiliki 1 Kode_frame

Gambar 3.3.19 Entity Relationship Diagram Perangkat Lunak Penghitung


(80)

Adapun keterangan gambar diatas adalah sebagai berikut :

Tabel 3.3.4 Keterangan ERD Perangkat Lunak Penghitung Jumlah

Kendaraan Menggunakan Kamera

No Entitas Atribut Primary Key

1 Frame

Kode_frame, nama_frame,

Kode_frame

2 Perhitungan

Kode_frame,

jenis_treshold, nssd, -

3 Treshold

Kode_treshold, jenis_treshold

Kode_treshold

4 Rata-rata

No_ratarata, ratarata, jenis_treshold

No_ratarata

5 Jumlah_kendaraan

No, jumlah, waktu, jenis_treshold

No

3.1.7 Anlasis Kebutuhan Fungsional 3.1.7.1 Diagram konteks

Analisis fungsional dilakukan untuk menghasilkan spesifikasi kebutuhan fungsional. Spesifikasi kebutuhan fungsional adalah spesifikasi


(81)

yang rinci tentang hal-hal yang akan dilakukan pada saat implementasi sistem.

1. Diagram Konteks

2. DFD (Data Flow Diagram) 3. Spesifikasi Proses

4. Kamus Data

Sistem mempunyai keterkaitan dengan jumlah entitas, baik itu keterkaitan dengan entitas luar sistem maupun keterkaitan dengan entitas dalam sistem. Hubungan antara entitas dengan sistem digambarkan dengan diagram konteks.

Gambar diagram konteks pada sistem perangkat lunak penghitung jumlah kendaraan menggunakan kamera dapat dilihat pada gambar berikut:


(82)

Penghitung Jumlah Kendaraan Pegawai divisi

lapangan Kamera

data_kamera,

data_nilai_treshold Data_video_realtime

Hasil_perhitungan_kendaraan, Laporan_jumlah_kendaraan

Info_mulai_perekaman, Info_Stop_perekaman

Gambar 3.3.20 Diagram Konteks Perangkat Lunak Penghitung Jumlah

Kendaraan Menggunakan Kamera

Keterangan gambar :

Pegawai divisi lapangan : Entitas luar yang menggunakan sistem aplikasi perangkat lunak penghitung jumlah kendaraan menggunakan kamera.


(83)

3.1.7.2 Data Flow Diagram (DFD)

Data Flow Diagram (DFD) adalah sebuah teknik yang menggambarkan aliran data dan transformasi yang digunakan sebagai perjalanan data dari masukan menuju keluaran. Data Flow Diagram DFD dibuat jika pada Diagram Konteks masih terdapat proses yang mesti dijelaskan lebih rinci.

3.1.7.2.1 DFD Level 1 Penghitung Jumlah Kendaraan

Pada level ini, proses tunggal dari diagram konteks di pecah menjadi enam proses yang lebih terperinci, yaitu proses pilih data proses atur kamera, proses Setting Kamera, proses image processing, proses Setting Detection Windows, proses perhitungan NSSD, proses Perhitungan Jumlah Kendaraan dan proses Laporan. Pada level ini terdapat 5 penyimpanan data yaitu table frame, table perhitungan, table ratarata, table roi, dan table kendaraan untuk menyimpan data jumlah kendaraan yang melintas.

Adapun DFD level 1 dari aplikasi perangkat lunak penghitung jumlah kendaraan menggunakan kamera dapat dilahat pada gambar :


(84)

Pegawai divisi lapangan 1 Aktifkan Kamera 3 Image processing 2 Pilih Nilai treshold 4 Perhitungan NSSD 5 Perhitungan jumlah kendaraan Kamera 6 Laporan jumlah kendaraan Frame Perhitungan treshold Kendaraan

Info mulai perekaman, Info stop perekaman

Data video realtime data Kamera

data Nilai treshold

Hasil perhitungan kendaraan Hasil image processing Jenis treshold Data frame nilai treshold Laporan jumlah kendaraan Data Perhitungan NSSD Data NSSD Hasil perhitungan kendaraan

Data perhitungan kendaraan

Ratarta Data Perhitungan NSSD Data Nilai Ratarata 7 Back-up database 8 Restore database

Data perhitungan kendaraan Data NSSD

Data Nilai Ratarata Jenis treshold

Data frame Info Back-up

Data perhitungan kendaraan Data NSSD

Data Nilai Ratarata Jenis treshold Data frame

Info restore Data back-up

Data restore

Gambar 3.3.21 DFD level 1 Perangkat Lunak Penghitung Jumlah


(85)

3.1.7.2.2 DFD Level 2 proses 2

DFD level 2 adalah turunan level dari DFD level 1, dimana masih terdapat proses yang harus di turunkan lagi agar lebih terperinci. pada proses setting di DFD Level 1 proses 2 terdapat dua proses, untuk itu di DFD level 2 ini akan dijelaskan secara lebih terperinci dari proses tersebut. Rincian proses dan penjelasan DFD level 2 sebagai berikut:

1.1 Mulai Hitung

1.2 Reset Hitung Pegawai divisi

lapangan Kamera

data kamera

data kamera

info Mulai perekaman

info Stop perekaman

Gambar 3.3.22 DFD Level 2 Proses 2 Perangkat Lunak Penghitung Jumlah

Kendaraan Menggunakan Kamera

3.1.8 Spesifikasi Proses

Sepsifikasi proses digunakan untuk mendeskripsikan proses yang terjadi pada level yang paling dasar dalam DFD. Model ini berfungsi


(1)

Dalam kasus ini penulis mengambil lima sample untuk setiap jawaban dari pertanyaan yang ada pada kuesioner. Adapun jawaban dari hasil kuesioner yang dimaksud adalah sebagai berikut:

1. Apakah aplikasi ini membantu anda dalam melakukan pengamatan jumlah kendaraan yang melintas?

No Keterangan Responden Persentase (%)

1 Ya 2 40

2 Cukup membantu 2 40

3 Biasa Saja 1 20

4 Tidak 0 0

Berdasarkan hasil persentase diatas maka dapat disimpulkan bahwa sebanyak 2 orang atau 40 % mengatakan keberadaan aplikasi ini cukup membantu tugas mereka dalam melakukan pengamatan.

2. Apakah aplikasi ini dapat memberikan informasi menganai kepadatan arus lalu lintas?

No Keterangan Responden Persentase (%)

1 Ya 4 80

3 Biasa Saja 1 20

4 Tidak 0 0

Berdasarkan hasil persentase diatas maka dapat disimpulkan bahwa sebanyak 4 orang atau 80 % mengatakan keberadaan aplikasi ini cukup membantu tugas mereka dalam melakukan pengamatan.


(2)

3. Apakah aplikasi ini dapat membantu anda dalam melakukan perencanaan lalu lintas (pengalihan ke jalur alternatif)?

No Keterangan Responden Persentase (%)

1 Ya 3 60

3 Biasa Saja 2 40

4 Tidak 0 0

Berdasarkan hasil persentase diatas maka dapat disimpulkan bahwa sebanyak 3 orang atau 60 % mengatakan keberadaan aplikasi ini cukup membantu tugas mereka dalam melakukan pengamatan.

4. Apakah tampilan dari aplikasi ini menarik?

No Keterangan Responden Persentase (%)

1 Sangat Menarik 2 40

2 Cukup Menarik 3 60

3 Biasa Saja 0 0

4 Tidak Menarik 0 0

Berdasarkan hasil persentase diatas maka dapat disimpulkan bahwa sebanyak 3 orang atau 60 % mengatakan tampilan aplikasi ini cukup menarik.

5. Apakah anda mengalami kesulitan dalam penggunaan aplikasi ini?

No Keterangan Responden Persentase (%)

1 Ya 1 20


(3)

3 Biasa Saja 1 20

4 Tidak 2 40

Berdasarkan hasil persentase diatas maka dapat disimpulkan bahwa sebanyak 2 orang atau 40 % mengatakan tidak mengalami kesulitan dalam penggunaan aplikasi ini.

4.2.4 Kesimpulan Hasil Pengujian Beta

Dari pengujian beta yang telah dilakukan yaitu dengan pengujian perhitungan pilihan kategori jawaban dari kuesioner yang telah dibagikan dapat disimpulkan bahwa aplikasi yang dibuat telah sesuai dengan tujuan dari pembuatan aplikasi ini.

Kemampuan aplikasi ini dalam melakukan perhitungan kendaraan yang melintaspun terbilang cukup baik dengan tingkat keberhasilan hamper 80%, hal itu berdasarkan dari pengujian-pengujian yang telah penulis lakukan.


(4)

119

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Secara keseluruhan sistem bekerja cukup baik, hal ini dapat dibuktikan dengan tingkat keberhasilan lebih dari 80% pada penghitungan jumlah kendaraan dengan berbagai variasi kondisi.

Adapun kesimpulan lain dari pengujian sistem perangkat lunak penghitung jumlah kendaraan menggunakan kamera ini antara lain:

1. Sistem dapat memberikan informasi kepadatan arus lalu lintas sesuai dengan yang diharapkan dari tujuan penulisan.

2. Intensitas cahaya sangat berpengaruh pada hasil perhitungan.

3. Perubahan cuaca yang mendadak sangat mempengaruhi tingkat keberhasilan sistem.

4. Penempatan posisi kamera turut mempengaruhi tingkat keberhasilan perhitungan oleh sistem.

5. Kecepatan kendaraan yang terlalu tinggi terkadang mempengaruhi hasil perhitungan.

6. Tingkat hasil perhitungan terendah didapat saat kondisi noise tinggi.

7. Jenis kamera yang digunakan akan turut mempengaruhi keberhasilan penghtingan yang dilakukan oleh sistem.


(5)

120

5.2 Saran

Terlepas dari kelebihan-kelebihan, sebuah perangkat lunak pastilah memiliki kekurangan-kekurangan yang sifatnya masih dapat dikembangkan lagi di kemudian hari. Adapun saran-saran dalam pengembangan perangkat lunak penghitung jumlah kendaraan menggunakan kamera adalah sebagai berikut:

1. Penggunaan kamera untuk melakukan pengamatan. 2. Pengenalan objek yang melintas.

3. Untuk pengembangan perangkat lunak ini bisa dijadikan berabsi web agar lebih mudah di akses.

4. Pembanding untuk melakukan tidak hanya mengandalkan warna.

5. Optimasi threshold.

6. Untuk Pengembangan perangkat lunak ini ditambahkan pengaturan cahaya agar bisa digunakan di malam hari.


(6)

NIM : 10106372 TEMPAT LAHIR : KARAWANG TANGGAL LAHIR : 26 JUNI 1989

AGAMA : ISLAM

CONTACT : 08132-22-474-25

[email protected]

RIWAYAT PENDIDIKAN :

SDN CIKAMPEK BARAT III ( 1994 – 2000 ) SLTPN I CIKAMPEK ( 2000 – 2003 )

SMU PGRI CIKAMPEK ( 2003 – 2006 )

UNIVERSITAS KOMPUTER INDONESIA (2006 – 2011)