• Tidak ada hasil yang ditemukan

Peningkatan Kualitas Video Hasil Rekaman Closed Circuit Television (CCTV) Menggunakan Median Filter Chapter III V

N/A
N/A
Protected

Academic year: 2017

Membagikan "Peningkatan Kualitas Video Hasil Rekaman Closed Circuit Television (CCTV) Menggunakan Median Filter Chapter III V"

Copied!
44
0
0

Teks penuh

(1)

BAB 3

ANALISIS DAN PERANCANGAN

Bab ini membahas tentang implementasi metode median filter dalam proses peningkatan kualitas video hasil rekaman CCTV (Closed Circuit Television). Bab ini juga membahas tentang data yang digunakan, proses pemisahan video menjadi citra-citra,pre-processing, dan menyatukan citra-citra menjadi video.

3.1. Arsitektur Umum

Rancangan sistem yang diajukan pada penelitian ini dapat dilihat pada Gambar 3.1. Gambar 3.1 menunjukkan arsitektur umum dari metode median filter untuk peningkatan kualitas video yang terdiri dari beberapa langkah. Langkah-langkah yang dimaksud adalah sebagai berikut: pengumpulan file video hasil rekaman cctv sebagai data input; melakukan pre-processing terhadap video dimana video dipisah menjadi citra-citra; pembacaan nilai piksel pada setiap citra. Filtering menggunakan median

(2)
(3)

Data yang digunakan dalam penelitian ini adalah video lalulintas(traffic) hasil rekamanClosed Circuit Television (CCTV). Data yang digunakan berjumlah 4 video dengan format MPEG-4 (*.mp4) dan dalam bentuk grayscale. Spesifikasi file video dapat dilihat pada Tabel 3.1.

Tabel 3.1. Spesifikasifilevideo yang digunakan dalam penelitian

No Nama Video Durasi(detik) Ukuran(Byte) Sumber

1. Traffic_1.mp4 4 12,594,715 Universitas Karlsruhe 2. Lalulintas.mp4 82 5,300,704 Area Traffic Control System

(ATCS) Dinas Perhubungan Wilayah Medan 3 Lalulintas_2.mp4 61 7,127,738 Area Traffic Control System

(ATCS) Dinas Perhubungan Wilayah Medan 4 Lalulintas_3.mp4 111 4,397,129 Area Traffic Control System

(ATCS) Dinas Perhubungan Wilayah Medan

3.3.Pre-Processing

(4)

Start

Input video file

change video to image

get video path

set image output location

set image name

Convert video to image using FFMPEG

(5)

foldervideotelah dipisahkan menjadi 121 citra sesuai denganframe ratevideo yang dapat dilihat pada Gambar 3.3. (b). Citra yang dihasilkan memiliki format penamaan menggunakan angka yaitu 1.jpg, 2.jpg, 3.jpg, hingga citra akhir 121.jpg.

3.4. Median Filter

Setelah video dipisahkan menjadi citra-citra yang berdiri sendiri, tahap selanjutnya yang dilakukan adalah menghilangkan derau(noise) pada setiap citra. Proses ini dapat dilakukan dengan metode medianfilter. Filteringmenggunakan median filter dimulai dengan melakukan pembacaan nilai piksel citra. Setelah piksel citra didapatkan, maka akan dilakukan penambahan nilai piksel di sekeliling citra. Tahap selanjutnya adalah mengatur ukuran matriks filter(mask) menjadi 3x3. Kemudian nilai piksel akan diurutkan secara ascending pada setiap matriks filter(mask). Setelah proses pengurutan nilai piksel dilakukan, maka nilai median pada setiap matriks filter(mask) dapat dihitung. Nilai median hasil penghitungan ini yang akan digunakan untuk menggantikan nilai piksel asli citra.

.

3.4.1. Membaca Nilai Piksel Citra

Pembacaan nilai piksel citra dilakukan pada class GetPixel. Proses pembacaan diawali dengan mendapatkan ukuran tinggi citra menggunakan getHeight() dan lebar citra menggunakan getWidth(). Kemudian, nilai RGB (Red,Green,Blue) citra akan diperoleh menggunakan function getRGB() sesuai dengan ukuran tinggi dan lebar citra. Nilai RGB ini akan dikonversi menjadi grayscale dengan operasi

bitwisepadafunctiongetRGBArray(). Setelah nilai piksel dalam bentukgrayscale

didapatkan, nilai ini akan dimasukkan ke dalam matriks citra dengan function

(6)

Start

Input image file get pixel image

for (every file)

get height and width image for i<height and j<width get RGB image

convert RGB to grayscale get matrix of pixel image end of getting pixel image

Output yang didapatkan pada proses pembacaan nilai piksel ini berupa array

matriks citra dengan ukuran tinggi × lebar yang disimpan dalam variabel matrixImage[][]. Pseudocode pembacaan nilai citra dapat dilihat pada Gambar 3.4.

Gambar 3.4.Pseudocodepembacaan nilai piksel

(7)

0 1 2 3 4

172 180 179 172 170 178 182 177 170 171 183 184 175 169 174 170 175 173 169 173 176 182 178 169 168

y Height

(8)

Start

get matrixImage

add pixel arround image for (every file)

get height image get width image

for i<height+2 and j<width+2 add pixel on top

add pixel on bottom add pixel on left add pixel on right copy pixel at center

end of add pixel arround image

Proses ini dimulai dengan mendapatkan nilai matriks piksel citra menggunakan GetMatrix() pada class GetPixel. Setelah matriks citra didapatkan, maka matriks baru akan dibuat berdasarkan matriks asli citra dengan ukuran lebih besar 1 piksel di setiap sisinya. Kemudian, nilai piksel pada bagian atas matriks akan ditambahkan dengan melakukan penyalinan(copy) terhadap piksel asli citra di bagian atas. Hal yang sama akan dilakukan pada bagian bawah, kiri, dan kanan matriks. Proses ini dilakukan oleh function getNewMatrix3x3() dan akan menghasilkan matriks baru yang akan disimpan pada variabel newMatrix3x3[][]. Pseudocode penambahan piksel di sekeliling citra dapat dilihat pada Gambar 3.7.

Gambar 3.7.Pseudocodepenambahan piksel di sekeliling citra

(9)

172 180 179 172 170 178 182 177 170 171 183 184 175 169 174 170 175 173 169 173 176 182 178 169 168

(a) (b)

Gambar 3.8. (a) Nilai Piksel sebelum ditambahkan piksel di sekelilingnya; (b) Nilai piksel sesudah ditambahkan piksel di sekelililngnya

Pada Gambar 3.8. (a) merupakan nilai piksel awal sebelum dilakukan penambahan di sekelilingnya, sedangkan Gambar 3.8. (b) merupakan hasil piksel citra setelah dilakukan penambahan di sekelilingnya. Piksel yang ditandai dengan warna biru merupakan piksel awal citra sebelum dilakukan penambahan, sedangkan piksel yang ditandai dengan warna merah merupakan piksel hasil penyalinan dari piksel awal. Penambahan piksel di sekeliling citra menyebabkan ukuran piksel awal citra yaitu 5 × 5 berubah menjadi 7 × 7.

3.4.3.Mengatur ukuran filter matriks(mask) menjadi 3×3

Pengaturan ukuran filter matriks (mask) dilakukan agar proses filtering dapat dilaksanakan pada setiap piksel sesuai dengan ukuran mask nya. Pada tahap ini, penentuan piksel pusat akan dilakukan. Piksel pusat adalah piksel yang di-filter, sedangkan piksel di sekelilingnya akan direpresentasikan dengan arah mata angin. Piksel pusat akan berganti setiap proses median filter selesai dilakukan pada suatu

mask hingga keseluruhan piksel pada citra berhasil di-filter. Pseudocode pengaturan 172 172 180 179 172 170 170

(10)

Start

for i<height and j<width set center pixel

set other pixel corresponding to point of compass

end of set Mask3x3

Gambar 3.9.Pseudocodepengaturan ukuran matriksfiltercitra

Proses pengaturan filter matriks dilakukan pada class FilterMask3x3, dimana piksel pusat akan disimpan ke dalam variabel a, dan piksel di sekelilingnya masing-masing akan disimpan ke dalam variabel aBaratLaut, aUtara, aTimurLaut, aBarat, aTimur, aBaratDaya, aSelatan, dan aTenggara. Kemudian, variabel-variabel ini akan disimpan ke dalam array

Mask3x3[][]. Proses pengaturan ukuran matriks filter dapat dilihat pada Gambar 3.10.

172 172 180 179 172 170 170

172 172 180 179 172 170 170 178 178 182 177 170 171 171 183 183 184 175 169 174 174 170 170 175 173 169 173 173 176 176 182 178 169 168 168 176 176 182 178 169 168 168

Barat laut Utara Timur laut Barat Center Timur Barat daya Selatan Tenggara

172 172 180

172 172 180

(11)
(12)
(13)

Start

sorting array get Mask3x3

create SortedArr3x3 for i<3 and j<3

set SortedArr3x3[x] = Mask3x3[i][j] sort SortedArr3x3 with bucket sort

end of sorting array

Gambar 3.12.Pseudocodeproses pengurutan nilai piksel

Setelah diurutkan, nilai median akan didapatkan pada array ke-4 SortedArr3x3[]. Nilai ini akan disimpan pada variabel Median3x3[]. Pada Gambar 3.13. dapat dilihat ilustrasi pengurutan suatu mask berukuran 3 × 3 dengan menghasilkan nilai median = 178.

Gambar 3.13. Proses pengurutan nilai piksel

(14)

Pada Gambar 3.13. nilai filter matriks diurutkan secara ascending dari nilai terkecil ke nilai terbesar. Nilai median merupakan array ke 4 dari hasil pengurutan filtermatriks yang ditandai dengan abu-abu pada gambar dengan nilai 178.

3.4.5. Mengganti nilai piksel dengan nilai median

Tahap ini merupakan tahap terakhir dari median filter. Pada tahap ini, penggantian nilai piksel citra dengan nilai median yang telah didapatkan pada tahap sebelumnya akan dilakukan. Proses ini dilakukan dengan menggunakan function setRGB(). Karena nilai RGB piksel yang didapatkan dalam bentuk grayscale, maka nilai Red, Green, dan Blueakan memiliki nilai yang sama.

Gambar 3.14.Masksebelum di-filter

Pada Gambar 3.14. dapat dilihat bahwa piksel pusat adalah 172. Nilai-nilai piksel yang ada pada mask akan diurutkan untuk mendapatkan nilai median. Proses pengurutan pada mask menghasilkan array {172,172,172,172,178,178,180,180,182} dimanaarray ke-4 merupakan nilai median yaitu = 178. Nilai ini akan menggantikan piksel pusat yang bernilai 172.

Gambar 3.15.Masksetelah di-filter

(15)

Start

change pixel value

get Median3x3

for i<height and j<width

setRGB value = median value

set image output location

create new image

end of change pixel value

piksel pusat

172

. Proses ini akan dilakukan sesuai dengan transisi nilai piksel pusat hingga filtering dilakukan pada keseluruhan piksel citra. Setelah filtering dilakukan terhadap seluruh piksel, maka citra baru akan dibangun berdasarkan nilai piksel baru yang didapatkan dari hasil proses filtering. Citra hasil filter ini akan disimpan pada

folder ImageAfter. Pseudocode pengantian nilai piksel citra dapat dilihat pada Gambar 3.16.

Gambar 3.16.Pseudocodepenggantian nilai piksel

(16)

Sebelum

(17)

Start

change image to video

get image before filtering path get image after filtering path count image before

count image after

set video output location set video name

if count image before = count image after Convert image to video using FFMPEG end of changing image to video

nama file. Sebagai contoh data input adalah traffic.mp4 maka output yang dihasilkan adalah traffic_median.mp4.Pseudocodeperangkaian video dapat dilihat pada Gambar 3.18.

Gambar 3.18.Pseudocodeperangkaian video

3.6. Perancangan Sistem

Pada perancangan sistem akan dilakukan

3.6.1. Perancangan menu sistem

Strukturmenudalam sistem ditunjukkan pada gambar 3.19.

(18)

3.6.2. Perancangan antarmuka

Perancangan antarmuka merupakan gambaran umum tentang tampilan yang terdapat pada sistem.

1. Rancangan Tampilan Awal

Pada tampilan awal aplikasi, terdapat gambar kamera CCTV pada bagian kiri dan nama sistem pada bagian kanan. Dibawah bagian nama sistem terdapat tombol "Start" untuk memulai sistem. Rancangan tampilan awal ditunjukkan pada Gambar 3.20.

Gambar 3.20. Rancangan tampilan awal aplikasi

Keterangan :

a. Tombol "Start" memungkinkanuseruntuk masuk ke halaman utama aplikasi.

d f

Logo

Gambar

Nama Sistem Title

Start

(19)

Pada tampilan utama aplikasi, terdapat beberapa menu yang memberikan fasilitas seperti pemilihan video yang akan digunakan sebagai input,filtering pada video yang dipilih, dan memainkan video sebelum atau sesudah dilakukan filter. Rancangan tampilan utama ditunjukkan pada Gambar 3.21.

Gambar 3.21. Rancangan tampilan utama aplikasi

Keterangan :

a. Logo Java menunjukkan bahwa aplikasi dibangun menggunakan bahasa Java. b. Titlemenunjukkan judul dari aplikasi yang dibangun.

Logo

File Filter Play Video

video sebelum filter video sesudah filter Title

a b c

d e f

(20)

c. Tombol navigasi yang digunakan sesuai dengan fungsinya yaitu, minimize untuk memperkecil tampilan jendela aplikasi, maximize untuk menampilkan tampilan

fullscreen, dancloseuntuk menutup tampilan jendela aplikasi.

d. Menu File,menuini berisi 2submenu, yaituOpenyang digunakan untuk memilih

file video yang akan di-filter, dan Close yang digunakan untuk menutup jendela aplikasi.

e. Menu Filter, menu ini berisi 2 submenu, yaitu Median filter yang digunakan untuk menjalankan filter median dan Sharpening yang digunakan untuk melakukan penajaman terhadap video yang dipilih.

f. Menu Play video, menu ini berisi 2 submenu, yaitu Video sebelum yang digunakan untuk memainkan video yang dipilih sebelum filter dilakukan dan Video sesudah yang digunakan untuk memainkan video sesudah filter dilakukan terhadap video.

g. Bagian ini akan menampilkan video sebelumfilter jikasubmenu Video sebelum dipilih padaMenu Playvideo.

(21)

BAB 4

IMPLEMENTASI DAN PENGUJIAN

Bab ini membahas hasil yang didapatkan dari implementasi metode Median Filter

untuk melakukan peningkatan kualitas video hasil rekaman Closed Circuit Television(CCTV) dan pengujian sistem sesuai dengan analisis perancangan yang telah dibahas pada Bab 3.

4.1. Implementasi Sistem

Pada tahap ini, Metode Median Filter akan diimplementasikan ke dalam sistem menggunakan bahasa pemrograman Java sesuai dengan perancangan yang telah dilakukan.

4.1.1. Spesifikasi perangkat keras dan perangkat keras yang digunakan

Spesifikasi perangkat keras dan perangkat lunak yang digunakan untuk membangun sistem adalah sebagai berikut :

1. Prosesor Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz 2.30GHz. 2. Kapasitasharddisk600GB.

3. Memori 6.00GB RAM.

4. Sistem operasi yang digunakan adalahMicrosoft Windows 7 Ultimate.

(22)
(23)

No Nama Video Durasi(detik) Ukuran(Byte)

1. Traffic_1.mp4 4 12,594,715

2. Lalulintas.mp4 82 5,300,704

(24)
(25)
(26)
(27)
(28)

= , ( )

172 180 179 172 170 178 182 177 170 171 183 184 175 169 174 170 175 173 169 173 176 182 178 169 168

(29)

( )

, = (171-172)2+(179-180)2+(178-179)2+(171-172)2+(170-170)2+

(177-178)2+(181-182)2+(176-177)2+(170-170)2+(172-171)2+ (182-183)2+(183-184)2+(175-175)2+(168-169)2+(174-174)2+ (182-183)2+(183-184)2+(175-175)2+(168-169)2+(174-174)2+ (167-170)2+(174-175)2+(172-173)2+(168-169)2+(173-173)2+ (177-176)2+(182-182)2+(178-178)2+(170-169)2+(167-168)2

( )

, = (-1)2+(-1)2+(-1)2+(-1)2+(0)2+(-1)2+(-1)2+(-1)2+(0)2+(1)2+

(-1)2+(-1)2+(0)2+(-1)2+(0)2+(-1)2+(-1)2+(0)2+(-1)2+(0)2+ (-3)2+(-1)2+(-1)2+(-1)2+(0)2+(1)2+(0)2+(0)2+(1)2+(-1)2

( )

, = 1+1+1+1+0+1+1+1+0+1+1+1+0+1+0+1+1+0+1+0+

9+1+1+1+0+1+0+0+1+1

( )

, = 29

= 1 ( )

,

Dengan diperolehnya nilai , ( ) = 29 maka RMSE dapat dihitung dengan melakukan subtitusi nilai , ( ) = 29 ke dalam rumus :

(30)

= 1 (29) = 1

= 20 log 236.7615563

Setelah nilai RMSE didapatkan sebesar1.077032961, maka nilai PSNR dapat dihitung seperti berikut :

= 20 log ( 255 )

Dengan demikian, nilai PSNR didapatkan sebesar 47.48622372 B. Perhitungan PSNR dilakukan pada keseluruhan citra hasil filtering yang membentuk video sesuai dengan ukuran piksel citra. Nilai PSNR video didapatkan dengan menghitung nilai rata-rata PSNR dari seluruh citra.

4.3.1. Perhitungan PSNR video Traffic_1.mp4

(31)

=17.747558328863363 dB

= 15.060757957545949 + 14.485466857832254 + + 17.93329420533070451 121

Traffic_1.mp4

No Nama citra Nilai PSNR(dB)

1 1.jpg 15.060757957545949

Dengan nilai PSNR rata-rata video adalah :

=

(32)

0

(33)
(34)
(35)

acak pada piksel citra. Setelah prosesfilteringdilakukan, bintik-bintik putih dan hitam pada citra berhasil dihilangkan. Citra yang dihasilkan setelah proses filtering dapat dilihat pada Gambar (b).

4.3.2. Perhitungan PSNR video Lalulintas.mp4

PSNR video dapat diperoleh dengan menghitung rata-rata PSNR pada setiap citra pembentuk video Lalulintas.mp4. Citra pembentuk video Lalulintas.mp4 berjumlah 2460 citra. Video Lalulintas.mp4 memiliki frame rate 30fps.Tabel 4.3 menunjukkan hasil perhitungan PSNRframepertama video Lalulintas.mp4.

Tabel 4.3. Hasil perhitungan PSNR citra pembentuk video Lalulintas.mp4

No Nama Citra Nilai PSNR(dB) 1 1.jpg 21.96376863

(36)

=25.14669394106944dB

= 21.96376863+21.0080159+ +26.21380861 30

(37)
(38)
(39)

PSNR video dapat diperoleh dengan menghitung rata-rata PSNR pada setiap citra pembentuk video Lalulintas_2.mp4. Citra pembentuk video Lalulintas_2.mp4 berjumlah 1832 citra. Video Lalulintas_2.mp4 memiliki frame rate 30 fps. Tabel 4.4 menunjukkan hasil perhitungan PSNRframepertama video Lalulintas.mp4.

Tabel 4.4. Hasil perhitungan PSNR citra pembentuk video Lalulintas_2.mp4

No Nama Citra Nilai PSNR (dB) 1 350.jpg 24.18772982

(40)

=24.100702207629578dB

= 24.18772982+24.16976581+ +24.14731662 30

(41)
(42)
(43)

BAB 5

KESIMPULAN DAN SARAN

Bab ini membahas tentang kesimpulan dari metode yang diajukan untuk meningkatkan kualitas video pada bagian 5.1. serta pada bagian 5.2. akan dibahas saran-saran untuk pengembangan penelitian selanjutnya.

5.1. Kesimpulan

Kesimpulan yang dapat diambil berdasarkan pengajuan sistem peningkatan kualitas video menggunakanMedian Filteradalah sebagai berikut:

1. Penggunaan metodeMedian Filterdapat menghilangkan noisepada video hasil rekaman CCTV dengan nilai Peak Signal to Noise Ratio (PSNR) sebesar 17.747558328863363dB pada video Traffic_1.mp4 dengan penambahan noise

sebesar 1% pada video dan 26.41741101 dB pada video Lalulintas.mp4 tanpa penambahannoise.

2. Penambahan tingkat noise pada video akan mengurangi jumlah Peak Signal to Noise Ratio (PSNR) yang dihasilkan. Semakin besar tingkat noise yang ditambahkan, maka nilai Peak Signal to Noise Ratio (PSNR) yang dihasilkan akan berkurang semakin besar.

3. Pada saat proses perangkaian video menggunakan FFMPEG membutuhkan

(44)

5.2. Saran

Saran penulis untuk penelitian selanjutnya adalah :

1. Percepat waktu pemrosesan (run-time) aplikasi sehingga waktu yang digunakan untuk melakukanfilteringvideo lebih singkat.

2. Bandingkan metode Median Filterdengan metode filtering lain pada penelitian yang sama untuk mendapatkan nilai Peak Signal to Noise Ratio (PSNR) yang lebih baik.

3. Pengembangan aplikasimobile untuk menerapkan metode Median Filterdalam melakukanfilteringvideo.

Gambar

Tabel 3.1. Spesifikasi file video yang digunakan dalam penelitian
Gambar 3.4. Pseudocode pembacaan nilai piksel
Gambar 3.7. Pseudocode penambahan piksel di sekeliling citra
Gambar 3.8. (a) Nilai Piksel sebelum ditambahkan piksel di sekelilingnya;
+7

Referensi

Dokumen terkait

Dalam sistem informasi eksekutif ini menghasilkan suatu sistem yang memberikan kemudahan dalam penyediaan informasi yang dibutuhkan oleh pihak eksekutif dengan output berupa

tilāwah al - Qur’an di LPTQ Kecamatan Kalidawir Kabupaten Tulungagung telah.. mempunyai manajemen kurikulum berjenjang yang terprogram dengan

Komik sebagai media pembelajaran merupakan alat yang berfungsi untuk menyampaikan.

[r]

Semakin tinggi level suatu bahasa pemrograman semakin dekat pula ia dengan bahasa manusia, artinya dengan sedikit perintah komputer sudah bisa menyelesaikan

Prosedur penelitian secara umum merujuk Nurwantoro et al., (2012 a ) yaitu preparasi larutan jus serai dibuat dengan cara perbandingan 1:2 (berat serai : volume.. aquades), serai

Dengan Teknologi Komputer yang ada saat ini,agak sulit untuk dapat membayangkan bagaimana komputer masa depan.Dengan teknologi yang ada saat ini saja kita seakan sudah

GEMES melihat situasi bahwa permainan gamelan dapat diterima para anak muda dengan cara menyesuaikan permainan gamelan dengan zaman sekarang.Anak Muda di Yogyakarta yang