Implementasi Algoritma Kompresi Shannon Fano pada Citra Digital

dokumen-dokumen yang mirip
BAB 1 PENDAHULUAN. 1.1 Latar Belakang

PENERAPAN METODE HUFFMAN DALAM PEMAMPATAN CITRA DIGITAL

Perbandingan Algoritma Kompresi Terhadap Objek Citra Menggunakan JAVA

BAB 2 LANDASAN TEORI. dari sudut pandang matematis, citra merupakan fungsi kontinyu dari intensitas cahaya

BAB I PENDAHULUAN. Saat ini perkembangan teknologi berkembang sangat cepat. Penyimpanan

Pertemuan 2 Representasi Citra

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB II TEORI DASAR PENGOLAHAN CITRA DIGITAL. foto, bersifat analog berupa sinyal sinyal video seperti gambar pada monitor

BAB 2 TINJAUAN PUSTAKA

IMPLEMENTASI METODE SPEED UP FEATURES DALAM MENDETEKSI WAJAH

BAB 2 LANDASAN TEORI

BAB III METODOLOGI PENELITIAN. Penelitian ini dilakukan di Jurusan Ilmu Komputer Fakultas Matematika dan

BAB II TEORI DASAR PENGOLAHAN CITRA DIGITAL

BAB 2 LANDASAN TEORI

Penerapan Pohon Biner Huffman Pada Kompresi Citra

IMPLEMENTASI TEKNIK STEGANOGRAFI LEAST SIGNIFICANT BIT (LSB) DAN KOMPRESI UNTUK PENGAMANAN DATA PENGIRIMAN SURAT ELEKTRONIK

Suatu proses untuk mengubah sebuah citra menjadi citra baru sesuai dengan kebutuhan melalui berbagai cara.

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB II LANDASAN TEORI

IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA SHANNON- FANO UNTUK KOMPRESI FILE TEXT

PEMAMPATAN CITRA (IMA

COLOR SPACE. Achmad Basuki Politeknik Elektronika Negeri Surabaya

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Studi Digital Watermarking Citra Bitmap dalam Mode Warna Hue Saturation Lightness

TUGAS AKHIR IMPLEMENTASI ALGORITMA METODE HUFFMAN PADA KOMPRESI CITRA

KOMPRESI CITRA. Pertemuan 12 Mata Pengolahan Citra

Bekerja dengan Warna

BAB 2 TINJAUAN PUSTAKA


BAB 2 TINJAUAN PUSTAKA

PERBANDINGAN ALGORITMA HUFFMAN DENGAN ALGORITMA SHANNON-FANO

Implementasi Metode Run Length Encoding (RLE) untuk Kompresi Citra

Pengolahan Citra Berwarna

BAB II LANDASAN TEORI

Kode Huffman dan Penggunaannya dalam Kompresi SMS

BAB II LANDASAN TEORI

BAB II Tinjauan Pustaka

Penerapan Algoritma Huffman dalam Kompresi Gambar Digital

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Citra Digital. Petrus Paryono Erick Kurniawan Esther Wibowo

Pengolahan citra. Materi 3

BAB 2 LANDASAN TEORI. 2.1 Pengenalan Citra

BAB 2 LANDASAN TEORI

Kata kunci: pohon biner, metode Huffman, metode Kanonik Huffman, encoding, decoding.

IMPLEMENTASI ALGORITMA RUN LENGTH ENCODING UNTUK PERANCANGANAPLIKASI KOMPRESI DAN DEKOMPRESI FILE CITRA

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

Model Citra (bag. 2)

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

Implementasi Metode HUFFMAN Sebagai Teknik Kompresi Citra

Pemanfaatan Himpunan Dalam Seleksi Citra Digital

Gambar 2.1 Contoh citra biner

BAB 3 ANALISA DAN PERANCANGAN

Teknik Kompresi Citra Menggunakan Metode Huffman

TEKNIK KOMPRESI LOSSLESS TEXT

LANDASAN TEORI. 2.1 Citra Digital Pengertian Citra Digital

NASKAH PUBLIKASI KOMPRESI CITRA DENGAN METODE ARITHMETIC CODING DALAM KAWASAN ENTROPY CODING

PEMAMPATAN TATA TEKS BERBAHASA INDONESIA DENGAN METODE HUFFMAN MENGGUNAKAN PANJANG SIMBOL BERVARIASI

BAB 2 LANDASAN TEORI

Konstruksi Kode dengan Redundansi Minimum Menggunakan Huffman Coding dan Range Coding

BAB II LANDASAN TEORI

KONSEP. Tujuan Kompresi:

KOMPRESI CITRA DIGITAL MENGGUNAKAN METODE STATISTICAL CODING

Kompresi. Definisi Kompresi

BAB 2 TINJAUAN PUSTAKA

Sesi 2: Image Formation. Achmad Basuki PENS-ITS 2006

METODE REGION BASED QUADTREE UNTUK REPRESENTASI CITRA BERWARNA

KOMPRESI CITRA BERWARNA MENGGUNAKAN METODE POHON BINER HUFFMAN. Sarifuddin Madenda, Hayet L. dan I. Bayu *

BAB 1 PENDAHULUAN Latar Belakang

Penerapan Pengkodean Huffman dalam Pemampatan Data

BAB 2 TINJAUAN TEORETIS

KOMPRESI DATA DAN TEKS. By : Nurul Adhayanti

APLIKASI PENGAMANAN DATA TEKS PADA CITRA BITMAP DENGAN MENERAPKAN METODE LEAST SIGNIFICANT BIT (LSB)

IV. RANCANG BANGUN SISTEM. Perangkat lunak bantu yang dibuat adalah perangkat lunak yang digunakan untuk

BAB 2 LANDASAN TEORI

Grafik Komputer dan Pengolahan Citra. Pengolahan Citra : Representasi Citra. Universitas Gunadarma Pengolahan Citra : Representasi Citra 1/16

BAB 2 LANDASAN TEORI

Muhammad Zidny Naf an, M.Kom. Gasal 2015/2016

BAB II TINJAUAN PUSTAKA

APLIKASI KOMPRESI TEKS SMS PADA MOBILE DEVICE BERBASIS ANDROID DENGAN MENGGUNAKAN ALGORITMA HUFFMAN KANONIK

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

1.1 Intensitas. 1.2 Luminansi. 1.3 Lightness. 1.4 Hue. 1.5 Saturasi

BAB I PENDAHULUAN. dalam storage lebih sedikit. Dalam hal ini dirasakan sangat penting. untuk mengurangi penggunaan memori.

MKB3383 -TEKNIK PENGOLAHAN CITRA. Kompresi Citra. Muhammad Zidny Naf an, M.Kom. Genap, 2016/2017

PERANCANGAN APLIKASI KOMPRESI CITRA DENGAN METODE RUN LENGTH ENCODING UNTUK KEAMANAN FILE CITRA MENGGUNAKAN CAESAR CHIPER

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

... BAB 2 LANDASAN TEORI. 2.1 Citra

Teknik Kompresi Citra Digital untuk Penyimpanan File menggunakan Format Data XML

BAB II TINJAUAN PUSTAKA

Pengertian Data datum

BAB III LANDASAN TEORI

DATA COMPRESSION CODING USING STATIC AND DYNAMIC METHOD OF SHANNON-FANO ALGORITHM

IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA ARIHTMETIC CODING DAN SHANNON-FANO PADA KOMPRESI CITRA BMP

N, 1 q N-1. A mn cos 2M , 2N. cos. 0 p M-1, 0 q N-1 Dengan: 1 M, p=0 2 M, 1 p M-1. 1 N, q=0 2. α p =

Analisa Hasil Perbandingan Metode Low-Pass Filter Dengan Median Filter Untuk Optimalisasi Kualitas Citra Digital

Transkripsi:

Implementasi Algoritma Kompresi Shannon Fano pada Citra Digital Muhammad Khoiruddin Harahap Politeknik Ganesha Medan choir.harahap@yahoo.com Abstrak Algoritma kompresi Shannon-Fano merupakan salah satu algoritma kompresi yang terkenal dan berguna dalam menghemat ruang penyimpanan data. Algoritma kompresi Shannon-Fano mendeteksi berapa kali kemunculan karakter pada setiap percobaanya, kemudian dilakukan pengkodean terhadap frekuensi kemunculan karakter dalam bilangan biner (binary code). Algorimat kompresi Shannon-Fano dapat dilakukan pada teks dan juga pada citra digital. Pada penelitian kali ini, penulis menerapkan metode Shanon-Fano pada citra digital. Citra digital diubah kedalam bilangan decimal yang berkisar antara 0-255, kemudian nilai setiap pixel citra yang sama mulai diseleksi dan dihitung berapa kali frekuensi kemunculan setiap nilai pixel yang sama dalam sebuah citra. Dari total frekuensi kemunculan setiap pixel citra, maka dilakukanlah pembagian nilai frekuensi menjadi dua bagian agar seimbang bagian pertama dan kedua, dan bagian pertama diberi nilai biner 0, sedangkan bagian kedua diberi nilai 1, dan hal ini terus berlangsung sampai tidak ada lagi bagian frekuensi yang tidak seimbang nilainya. Dari sini diperolehlah berapa bit (binary digit) hasil kompresi yang terbentuk, sehingga rasio kompresi bisa dihitung dari nilai total frekuensi dikali dengan bit dari binary code yang terbentuk, dan dibagi total frekuensi sebelum kompresi. Pada percobaan kompresi terhadap sebuah citra 3x3 diperolehlah rasio kompresi sebesar 22%. Kata Kunci Kompresi, Shanon-Fano, Citra I. PENDAHULUAN Kompresi atau pemampatan data digunakan untuk memperkecil ukuran dari sebuah berkas atau file. Pemampatan data berguna untuk menghemat ruang penyimpanan data. Beberapa hal yang bermanfaat dalam kompresi antara lain : a) File berukuran besar seperti Citra yang merupakan RAW data biasanya berukuran besar seperti file.bmp b) Dengan berkurangnya ukuran citra di atas maka secara otomatis akan menghemat ruang penyimpanan data 252

c) Pemampatan data citra mampu menghemat bandwith dan tentunya akan mempermudah proses transmisi data d) Pengiriman data menjadi lebih cepat seiring dengan ukuran data yang bertambah kecil. Metode yang dibahas pada paper ini adalah pemampatan data dengan menggunakan metode Shannon Fano. Yaitu dua orang ilmuwan Claude Elwood Shannon (Bells Lab) dan Robert Fano (MIT) pada tahun 1949. Metode Shannon Fano ini melakukan pengkodean terhadap frekwensi kemunculan karakter dalam kode binary. II. LANDASAN TEORI a) Citra Citra merupakan representasi dari sebuah objek. Citra merupakan keluaran data dengan sifat analog, sinyal video seperti yang ditampilkan oleh Televisi atau monitor komputer, LCD, Camera dan lain lainnya. Hasil keluaran tersebut disimpan dalam media penyimpanan seperti hardisk atau pita magnetic [6]. b) Citra Gambar Citra berupa gambar direpresentasi dengan warna dengan berbagai dimensi. Ada yang berupa dua dimensi ataupun 3 dimensi. Representasi warna memiliki profile yang beragam antara lain : 1. Profil warna RGB (Red, Green, Blue) direpresentasikan dengan 3 warna Merah, Hijau dan Biru dengan rentang warna dari 0 255. Warna RGB biasa digunakan untuk tampilan layar monitor, LCD, camera, handphone dan lain lain 3. Profil warna CMYK memiliki kombinasi warna Cyan, Magenta, Yellow dan Black dengan rentang warna dari 0 100. 4. Profil warna yang lainnya masih banyak seperti YcBcr, HSV (Hue - Saturation Value) atau disebut juga dengan HSL (Hue, Saturation, Lumination) dan lain sebagainya [3]. Gambar 2. Profil warna HSV Sumber : www.processing.org Sebuah Citra gambar ditampilkan dalam bentuk matrik dua dimensi dapat dilihat pada ilustrasi citra 3 x 3 berikut ini : Height Gambar 3. Ilustrasi Citra Width Berdasarkan gambar di atas, P adalah sebuah piksel dengan atribut koordinat x,y dan warna sesuai dengan Profil warna yang digunakan sesuai penjelasan sebelumnya. c) Algoritma Shannon - Fano Gambar 1. Profil warna RGB Sumber : www.processing.org 2. Profil warna Grayscale. Grayscale atau disebut juga dengan Derajat Keabuan memiliki rentang warna dari 0 255 dengan tingkat warna kehitaman. Pada Tahun 1949, Claude Elwood Shannon dan Robert Fano memperkenalkan teknik kompresi dengan mempertukarkan karakter dengan bilangan binary berdasarkan jumlah frekwensi kemunculan karakter tersebut. Algoritmanya dapat kita lihat sebagai berikut : 253

1. Membuat daftar karakter / simbol dari semua karakter atau simbol yang akan dilakukan kompresi. 2. Mengurutkan simbol tersebut berdasarkan frekwensi kemunculan. Karakter yang memiliki frekwensi kemunculan yang tinggi ditempatkan di sebelah kiri dan yang frekwensi kemunculannya rendah ditempatkan pada posisi sebelah kanan. 3. Membagi daftar menjadi dua bagian dengan total frekwensi bagian kiri dan kanan yang saling mendekati satu sama lain. 4. Membuat Tree dengan kondisi bagian sebelah kiri dengan angka binary 0 dan sebelah kanan dengan angka binary 1 5. Mengulangi bagian 3 dan 4 secara rekursif sehingga semua mencapai posisi Leaf dalam diagram tersebut [2]. Untuk lebih mudah dalam memahami algoritma tersebut di atas, dapat dilihat pada contoh berikut ini. Text : SEMINAR NASIONAL TEKNOLOGI INFORMATIKA Simbol yang muncul pada text tersebut adalah : SEMINAR [spasi] OLTEKGF 1. Menentukan frekwensi kemunculan dari karakter tersebut di atas SIMBOL FREKWENSI S 2 E 2 M 2 I 5 N 5 A 5 R 2 SPACE 3 O 4 L 2 T 2 K 2 G 1 F 1 Total Frekwensi 38 Gambar 4. Tabel Frekwensi simbol 2. Membagi dua dengan total frekwensi kemunculannya yang mendekati antara kiri dan kanan. Untuk contoh berikut ini dibedakan dengan atas dan bawah. Sebagai Pembeda antara kiri dan kanan, berikut ini contoh dilakukan dengan memberikan warna yang berbeda seperti berikut ini. ODE S 2 0 E 2 0 M 2 0 I 5 0 N 5 0 A 5 0 R 2 1 SPACE 3 1 O 4 1 L 2 1 T 2 1 K 2 1 G 1 1 F 1 1 Gambar 5. Membagi kode binari 3. Proses dilakukan secara rekursif sampai semua bagian habis menjadi daun. S 2 0 0 E 2 0 0 M 2 0 0 254

I 5 0 0 N 5 0 1 A 5 0 1 R 2 1 0 Space 3 1 0 O 4 1 0 L 2 1 1 T 2 1 1 K 2 1 1 G 1 1 1 F 1 1 1 Gambar 6. Membagi kode binary S 2 0 0 0 E 2 0 0 0 M 2 0 0 0 I 5 0 0 1 R 2 1 0 0 Space 3 1 0 0 O 4 1 0 1 L 2 1 1 0 T 2 1 1 0 K 2 1 1 1 G 1 1 1 1 F 1 1 1 1 R 2 1 0 0 0 Space 3 1 0 0 0 L 2 1 1 0 0 T 2 1 1 0 0 K 2 1 1 1 1 G 1 1 1 1 1 F 1 1 1 1 1 Gambar 8. rekursif proses membagi kode binary S 2 0 0 0 0 0 E 2 0 0 0 0 1 R 2 1 0 0 0 0 Space 3 1 0 0 0 1 L 2 1 1 0 0 0 T 2 1 1 0 0 1 K 2 1 1 1 1 0 G 1 1 1 1 1 1 F 1 1 1 1 1 1 Gambar 7. rekursif proses membagi kode binary S 2 0 0 0 0 E 2 0 0 0 0 Gambar 9. rekursif proses membagi kode binary S 2 0 0 0 0 0 E 2 0 0 0 0 1 255

R 2 1 0 0 0 0 Space 3 1 0 0 0 1 L 2 1 1 0 0 0 T 2 1 1 0 0 1 K 2 1 1 1 1 0 G 1 1 1 1 1 1 F 1 1 1 1 1 1 Gambar 10. rekursif proses membagi kode binary S F BINARY S 2 0 0 0 0 0 E 2 0 0 0 0 1 R 2 1 0 0 0 0 Spc 3 1 0 0 0 1 L 2 1 1 0 0 0 T 2 1 1 0 0 1 K 2 1 1 1 1 0 G 1 1 1 1 1 1 0 F 1 1 1 1 1 1 1 Gambar 11. rekursif proses membagi kode binary S F BINARY bit S 2 0 0 0 0 0 5 E 2 0 0 0 0 1 5 4 4 3 3 R 2 1 0 0 0 0 5 Spc 3 1 0 0 0 1 5 3 L 2 1 1 0 0 0 5 T 2 1 1 0 0 1 5 K 2 1 1 1 1 0 4 G 1 1 1 1 1 1 0 5 F 1 1 1 1 1 1 1 5 Gambar 12. menentukan jumlah bit S F BINARY bit F x bit S 2 0 0 0 0 0 5 10 E 2 0 0 0 0 1 5 10 4 8 4 20 3 15 3 15 R 2 1 0 0 0 0 5 10 Sp 3 1 0 0 0 1 5 15 3 12 L 2 1 1 0 0 0 5 10 T 2 1 1 0 0 1 5 10 K 2 1 1 1 1 0 4 8 G 1 1 1 1 1 1 0 5 5 F 1 1 1 1 1 1 1 5 5 Total F x bit 153 Gambar 13. perkalian frekwensi dengan bit Total Frekwensi = 38 Total F x bit = 153 Ratio Kompresi = (100% - 38/153 x 100) = 75% [1] 256

III. PEMBAHASAN SHANNON FANO TERHADAP CITRA Implementasi Shannon Fano pada citra dapat dilakukan dengan cara mengambil nilai nilai semua piksel dan membentuk simbol simbol. Pengambilan simbol secara sequential dilakukan tehadap semua nilai nilai warna yang terdapat pada piksel. Berikut ini contoh implementasi pada citra Grayscale ukuran resolusi 3 x 3 dpi [5]. 10 11 10 11 18 10 10 11 18 Gambar 3.1. Contoh pixel 3 x 3 mode grayscale Berikut ini langkah penyelesaian dalam pengolahan citra [4] : Langkah 1 : mengumpulkan simbol menjadi deretan angka sebagai berikut : langkah 2 : 10 11 10 11 18 10 10 11 18 Membentuk tabel dengan menghitung frekwensinya dari simbol dan nilai frekwensi kemunculannya. Langkah 3 : SIMBOL FREKWENSI 10 4 11 3 18 2 Gambar 3.2. Jumlah Frekwensi kemunculan menguraikan frekwensi kemunculan dalam binari code SIMBOL FREKWENSI CODE 10 4 0 11 3 0 18 2 1 Gambar 3.3. Membagi dan memberikan kode binari Langkah 4 : Melakukan proses rekursif langkah 3 ODE 10 4 0 0 11 3 0 1 18 2 1 Gambar : 3.4. Rekursif proses sebelumnya Langkah 5 : Melakukan menghitung nilai desimal dari code binari. Langkah 6 : Bit 10 4 0 0 2 11 3 0 1 2 18 2 1 1 Gambar 3.5. Menghitung jumlah bit S F Kode binari Bit F x B 10 4 0 0 2 8 11 3 0 1 2 6 18 2 1 1 2 Gambar 3.6. Perkalian Frekwensi dengan bit S F Kode binari Bit F x B 10 4 0 0 2 8 11 3 0 1 2 6 18 2 1 1 2 Total F x B 16 Gambar 3.7. Total Perkalian Frekwensi dengan bit Berdasarkan hitungan di atas, maka dapat ditentukan Total Frekwensi (jumlah byte sebelum kompresi) : 9 Byte Total F x B : 16 Bit Rasio = (100% 16 / 9 x 100%) = 22% Berdasarkan hitungan di atas, maka ratio kompresinya sebesar 22% 257

IV. KESIMPULAN DAN SARAN A. Kesimpulan Algoritma Shannon-Fano dapat digunakan pada teks dan citra digital yang berguna untuk memampatkan ukuran file teks maupun citra digital agar menghemat memori penyimpanan, B. Saran Pada penelitian selanjutnya, bisa dilakukan perbandingan rasio kompresi antara Shannon-Fano dan Huffman Code sehingga dapat dilihat algoritma kompresi mana yang lebih akurat dalam melakukan pemampatan file teks maupun citra. DAFTAR PUSTAKA [1] Sutardi, Implementasi dan Analisis Kinerja Algoritma Shannon-Fano untuk Kompresi File Text, Dinamika, Jurnal Ilmiah Teknik Mesin, 2014 [2] Christine Lamorahan, Benny Pinontoan, Nelson Nainggolan, Data Compression Using Shannon-Fano Algorithm jdc, 2014 [3] Muhammad Khoiruddin H, Analisa Human Skin Detection Menggunakan HSV, Salt and Pepper Noise Reduction, USU, 2016 [4] Rismawati, Satria Gunawan Zain Implementasi Kompresi Citra Menggunakan Algoritma Shannon-Fano, Prosiding Nasional ISBN : 978-602-9075-25-7 [5] Maria Roslin Apriani Neta, Perbandingan Algoritma Kompresi Terhadap Objek Citra Menggunakan JAVA, SEMANTIK 2013, 2013 [6] Kadir, Abdul. Teori Pengolahan Citra, Yogyakarta : 2012. 258