TUGAS AKHIR
IMPLEMENTASI TEKNIK KOMPRESI VIDEO DENGAN ALGORITMA DISCRETE COSINE TRANSFORM
PADA PERANGKAT BERGERAK
Diajukan untuk memenuhi salah satu persyaratan dalam menyelesaikan pendidikan sarjana (S-1) pada Departemen Teknik Elektro
O L E H
FEBRI AULIA NUGROHO 070402034
DEPARTEMEN TEKNIK ELEKTRO FAKULTAS TEKNIK
UNIVERSITAS SUMATERA UTARA MEDAN
ABSTRAK
Efisiensi penggunaan bandwidth dan memory menjadi satu fokus utama yang harus diperhatikan dalam setiap pemanfaatan teknologi terutama teknologi telekomunikasi. Salah satu alternatif yang dapat di implementasikan adalah memperkecil ukuran data yang ditansfer lewat suatu jaringan. Khusus untuk jenis data video, salah satu algoritma yang memliki performa yang baik adalah jenis algoritma Discrete Cosine Transform. Penulisan dan penelitian pada tugas akhir ini adalah untuk mengimplementasikan algoritma Discrete Cosine Transform pada perangkat bergerak berbasis android.
Pada Tugas Akhir ini dibuat sebuah aplikasi kompresi video dengan menggunakan algoritma Discrete Cosine Transform yang diharapkan akan menjadikan ukuran data video tersebut sekecil mungkin pada saat di-upload dan disimpan di memori pada device baik notebook atau mobile phone. Dari pengujian yang telah dilakukan, dapat dibuktikan bahwa kompresi data video dengan ukuran 93 kB akan menghasilkan rasio kompresi sebesar 64 % dengan menggunakan level kuantisasi 50 dan dengan level kuantisasi 10 akan dihasilkan rasio kompresi sebesar 96,9 %. Nilai PSNR yang didapatkan untuk hasil dekompresi dengan level kuantisasi 50 adalah 34,117 dB.
KATA PENGANTAR
Alhamdulillah wa syukurillah, segala puji dan syukur penulis panjatkan kehadirat Allah SWT atas rahmat dan karunia-Nya,yang telah memudahkan segala kesulitan, melapangkan segala kesempitan, menenangkan kegundahan, meredakan kegalauan, serta memberi petunjuk atas segala kebuntuan dalam proses pembuatan Tugas Akhir ini. Tak ada habisnya jika penulis mengingat seluruh cinta dan kebaikan yang diberikan Allah SWT sehingga penulis mampu menyelesaikan Tugas Akhir ini.
Tugas Akhir yang berjudul “Implementasi Teknik Kompresi Video Dengan Algoritma Discrete Cosine Transform Pada Perangkat Bergerak” ini, berisi tentang kompresi data menggunakan algoritma Discrete Cosine Transform. Tugas Akhir ini dibuat untuk memenuhi syarat kesarjanaan di Departemen Teknik Elektro, Fakultas Teknik, Universitas Sumatera Utara.
Tugas Akhir ini penulis persembahkan kepada yang teristimewa,yaitu Ibunda Ety Mulyati dan Ayahanda Ibnu Sri Hutomo, serta adik tercinta Muhammad Arief Wicaksono, yang merupakan bagian dari hidup penulis yang senantiasa mendukung dan mendoakan penulis dalam mengayunkan langkah-langkah kehidupan. Ayunda Al – Qadr Hayati yang selalu mendukung dan menjadi motivasi bagi penulis untuk melakukan yang terbaik.
Selama penulisan Tugas Akhir ini hingga menyelesaikannya, penulis banyak mendapat bantuan dan dukungan serta masukan dalam penulisan Tugas Akhir dari banyak pihak.
Pada kesempatan ini penulis mengucapkan terima kasih yang sebesar-besarnya kepada:
1. Bapak Ir. Surya Tarmizi Kasim, M.Si dan Bapak Rahmad Fauzi, ST, MT, selaku Ketua dan Sekretaris Departemen Teknik Elektro, Fakultas Teknik, Universitas Sumatera Utara.
2. Bapak Rahmad Fauzi, ST, MT sebagai Dosen Pembimbing penulis yang telah dengan sabar membimbing penulis dan sangat banyak mengarahkan dan memotivasi penulis dalam penulisan Tugas Akhir ini.
3. Bapak Fahmi ST, M.Sc sebagai Dosen Wali penulis, yang selalu memberikan dukungan sebagai wali penulis serta memotivasi penulis agar menjadi lebih baik.
4. Seluruh Staf Pengajar Teknik Elektro khususnya Teknik Telekomunikasi yaitu Bapak Maksum Pinem,ST,MT, Bapak Ali Hanafiah Rambe,ST,MT, Bapak Ir. M. Zulfin,MT dan Bapak Ir. Arman Sani, MT yang banyak memberikan inspirasi, pelajaran moril dan spiritual serta masukan dan dorongan bagi penulis untuk selalu menjadi lebih baik.
5. Seluruh karyawan di Departemen Teknik Elektro, Fakultas Teknik Universitas Sumatera Utara.
6. Seluruh rekan – rekan 2007 yang telah banyak mendukung dan selalu dapat menjadi teman-teman terbaik bagi penulis. Karena kita keluarga. 7. Pihak-pihak yang tidak dapat penulis sebutkan satu-persatu
Penulis menyadari bahwa Tugas Akhir ini jauh dari sempurna. Oleh karena itu, saran dan kritik dengan tujuan menyempurnakan dan mengembangkan kajian dalam bidang ini sangat penulis harapkan.
Akhir kata penulis berharap agar Tugas Akhir ini dapat bermanfaat bagi pembaca dan penulis.
Medan, 8 Juni 2011
Penulis,
Febri Aulia Nugroho
DAFTAR ISI
ABSTRAK ... i
KATA PENGANTAR ... ii
DAFTAR ISI ... v
DAFTAR GAMBAR ... ix
DAFTAR TABEL ... xii
BAB I PENDAHULUAN 1.1 Latar Belakang………. 1 1.2 Rumusan Masalah ……… 3 1.3 Tujuan Penilitian……….. 3 1.4 Batasan Masalah……….. 4 1.5 Metodologi Penulisan……….. 4 1.6 Sistematika Penulisan……….. 5
BAB II TEORI DASAR PENGOLAHAN CITRA DIGITAL 2.1 Pendahuluan……… 8
2.2 Citra Analog……… 8
2.3 Citra Digital………. 9
2.3.2 Citra Gray……..……… 13 2.3.3 Citra Biner…….……… 15 2.4 Digitalisasi Citra...………... 16 2.4.1 Sampling….……….. 17 2.4.2 Kuantisasi………. 19 2.5 Kompresi Data……… 21
2.5.1 Teknik Kompresi Data……… 24
2.5.2 Manfaat ………. 25 2.5.3 Kriteria Kompresi……….. 25 2.5.4 Rasio Kompresi..……… 27 2.6 Run-Length Encoding……… 28 2.7 Algoritma Huffman……… 32 2.8 Metode Kompresi………. 37
2.8.1 Metode Stasis (Static Method)……… 38
2.8.2 Metode Kamus (Dictionary Method)……….. 38
BAB III KOMPRESI DATA MENGGUNAKAN DISCRETE COSINE TRANSFORM 3.1 Discrete Cosine Transform……… 39
3.2 Discrete Cosine Transform Satu Dimensi (1-D DCT)………. 41
3.3 Discrete Cosine Transform Dua Dimensi (2-D DCT)………. 45
3.4 Kompresi Gambar ………. 47
3.5 Kompresi Video……… 61
BAB IV IMPLEMENTASI DAN APLIKASI TEKNIK KOMPRESI DISCRETE COSINE TRANSFORM PADA PERANGKAT BERGERAK 4.1 Pendahuluan……….. 63
4.2 Android………. 64
4.3 Anatomi Android ………. 64
4.4 Spesifikasi Perangkat Lunak………. 65
4.5 Use Case Diagram………. 67
4.6 Diagram Alir……… 68
4.7 Diagram Kelas……….. 72
4.8 Penulisan Kode Program (Coding)……… 73
4.8.1 Pembuatan Tampilan Antar Muka (Interface)………. 74
4.8.2 Pembuatan Kelas Utama DCTforCompress………. 74
4.8.3 Pembuatan Kelas Compress ……… 74
4.8.5 Pembuatan Kelas DownloadFile………. 75
4.8.6 Pembuatan Kelas Upload……… 75
4.8.7 Pembuatan Kelas Uploader………. 76
4.8.8 Pembuatan DiscreteCosineTransform……… 76
4.8.9 Pembuatan Manifest Aplikasi……….. 76
4.9 Pengujian ……….. 77
BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan………. 90
5.2 Saran……… 91
DAFTAR PUSTAKA……… 92
DAFTAR GAMBAR
1. Gambar 2.1 Citra Digital……….. 11
2. Gambar 2.2 (a) Citra Digital……… 12
3. Gambar 2.2 (b) Matriks dari Gambar 2.3 (a)……….. 12
4. Gambar 2.3 Citra Warna………. 13
5. Gambar 2.4 Color Dialog untuk Melihat Rentang Warna………….. 14
6. Gambar 2.5 Perubahan Citra Digital Original ke Citra Grayscale….. 14
7. Gambar 2.6 Citra Biner……… 15
8. Gambar 2.7 (a) Citra Analog……….. 18
Gambar 2.7(b) Citra Analog Disampling Menjadi 14 Baris dan 12 Kolom ………. 18
Gambar 2.7(c) Citra Digital Hasil Sampling Berukuran 14 x 12 Piksel ……… 18
9. Gambar 2.8 Matriks Berisikan Intensitas……… 20
10. Gambar 2.9 Matriks Nilai Asimetris……… 21
11. Gambar 2.10 Proses Kompresi Data Secara Umum……… 22
11. Gambar 2.11 Proses Kompresi Data Secara Lossless dan Lossy…… 24
14. Gambar 2.14 Matriks citra grayscale 3 bit berukuran 10x10 piksel… 30
15. Gambar 2.15 Pohon Huffman dari kata “biaaabuatnnnbkis”... 34
16. Gambar 2.16 Contoh Citra……… 35
17. Gambar 2.17 Pohon Huffman dari citra pada Gambar 2.16……… 36
18. Gambar 3.1 Grafik Fungsi Basis 1-D DCT... 44
19. Gambar 3.2 Grafik Fungsi Basik 2-D DCT……….. 46
19. Gambar 3.3 Komponen dari Sistem Transmisi Data Gambar atau Video 47 20. Gambar 3.4 (a) Data Citra Original……….. 48
Gambar 3.4(b) Data Citra yang Telah Dikompakkan Menjadi Beberapa Blok………... 48
21. Gambar 3.5 Matriks Original……… 48
22. Gambar 3.6 Basis Data Sebelum Dikompresi……….. 49
23. Gambar 3.7 Matriks M……….. 49
24. Gambar 3.8 Matriks T………... 55
25. Gambar 3.9 Matriks Tt……….. 55
26. Gambar 3.10 Matriks D……… 56
27. Gambar 3.11 Basis Data yang Telah Berisi Koefisien DCT………… 56
28. Gambar 3.12 Matriks Q50………. 57
30. Gambar 3.14 Basis Data yang Telah Terkuantisasi dengan Level
Kuantisasi 50………. 58
31. Gambar 3.15 Metode Zig Zag Scanning……….. 59
32. Gambar 3.16 Matriks N……… 60
33. Gambar 3.17 (a) Basis Data Original……… 60
Gambar 3.17 (b) Basis Data Hasil Rekonstruksi………. 60
34. Gambar 3.18 Proses Kompresi Video……….. 62
23. Gambar 4.1 Anatomi Android………. 65
24. Gambar 4.2 Diagram Use Case……… 67
25. Gambar 4.3 Diagram Alir Koefisien DCT……….. 68
26. Gambar 4.4 Diagram Alir Matriks Transform……….. 69
27. Gambar 4.5 Diagram Alir Matriks Transform……….. 71
28. Gambar 4.6 Diagram Kelas Sistem……….. 72
29. Gambar 4.7 Diagram Rancangan Sistem………. 73
30. Gambar 4.8 Proses Pemunculan dan Eksekusi Aplikasi yang Berhasil 77 31. Gambar 4.9 Proses Loading Emulator Android Versi 2.2………... 78
32. Gambar 4.10 Halaman Utama emulator Android 2.2………... 78
34. Gambar 4.12 Tampilan Awal………... 80
35. Gambar 4.13 Tampilan Menu dan Klik Compress……… 80
36. Gambar 4.14 Proses Kompresi yang Terjadi pada Perangkat Lunak dapat dilihat pada Debug………... 81
37. Gambar 4.15 Matriks hasil kompresi yang Ditampilkan………….. 82
38. Gambar 4.16 File Hasil Kompresi yang Terletak pada sdcard Device dan Ukuran Datanya……….. 82
39. Gambar 4.17 Proses Upload Data Hasil Kompresi………. 83
40. Gambar 4.18 Directory Local Server Pada Perangkat Yang Diuji Coba Dengan Menggunakan Wamp Server Pada Localhost……… 83
41. Gambar 4.19 File telah berhasil di-upload………... 84
42. Gambar 4.20 Properties Data Sebelum Dikompres………... 84
43. Gambar 4.21 Properties Data Setelah Dikompres……….. 85
44. Gambar 4.22 Properties Data Hasil Kompresi dengan Menggunakan Level Kuantisasi 10………. 86
45. Gambar 4.23 Frame Video Digital……….. 88
46. Gambar 4.24 Frame Video Setelah pemrosesan Melalui Sistem…… 88
47. Gambar 4.25 Perbedaan Grafik Frame Video Original dengan Frame Video Setelah Melalui Pemrosesan……….. 89
DAFTAR TABEL
1. Tabel 2.1 Frekuensi Simbol……….. 33
2. Tabel 2.2 Hasil Proses Pengkodean Huffman……….. 35
3. Tabel 2.3 Frekuensi Objek Gambar 2.14……….. 36
4. Tabel 2.4 Frekuensi Objek Kode Huffman……… 37