SlideShare a Scribd company logo
1 of 12
Download to read offline
1. Metode Shannon-Fano


Suatu metode yag dikenal pertama kali mampu melakukan pengkodean terhadap simbol secara


efektif adalah metode Shannon-Fano. Metode ini dikembangkan secara bersamaan oleh Claude


Shanon dari Bell Labs dan RM Fano dari MIT. Metode in tergantung pada probabilitas dari setiap


simbol yang hadir pada suatu data (pesan). Berdasarkan probabilitas tersebut kemudian dibentuk


daftar kode untuk setiap simbol dengan ketentuan sebagai berikut.


a. Setiap simbol berbeda memiliki kode berbeda.


b. Simbol dengan probabilitas kehadiran yang lebih rendah memiliki kode jumlah bit yang lebih


panjang dan simbol dengan probabilitas yang lebih tinggi memilik jumlah bit yang lebih pendek.


c. Meskipun memiliki panjang kode yang berbeda, smbol tetap dapat didekode secara unik.
Berikut adalah langkah-langkah algoritma Shannon-Fano :

a.Buatalah daftar peluang atau frekuensi kehadiran setiap symbol dari data (pesan) yang akan

dikodekan.

b. Urutkanlah daftar tersebut menurut frekuensi kehadiran symbol secara menurun (dari simbol yang

frekuensi kemunculannya paling banyak sampai simbol dengan frekuensi kemunculan paling sedikit.

c. Bagilah daftar tersebut menjadi dua bagian dengan pembagian didasari pada jumlah total frekuensi

suatu bagian (disebut bagian atas) sedekat mungkin dengan jumlah total frekuensi dengan bagian

yang lain (disebut dibagian bawah).

d. Daftar bagian atas dinyatakan dengan digit 0 dan bagian bawah dinyatakan dengan digit 1. Hal

tersebut berarti kode untuk simbol-simbol pada bagian atas akan dimulai dengan 0 dan kode untuk

simbol-simbol pada bagian bawah akan dimulai dengan 1.

e. Lakukanlah proses secara rekursif langkah 3 dan 4 pada bagian atas dan bawah. Bagilah menjadi

kelompok-kelompok dan tambahkan bit-bit pada kode sampai setiap symbol mempunyai kode yang

bersesuaian pada pohon tersebut.
Berikut contoh pengkodeaan Shannon-Fano, pesan yang akan dikodekan adalah :
BCEEDDBBAAAABEEEDDDCCCAAACCDAAAAABBAAA
Berikut daftar frekuensi kemunculan symbol pada pesan yang telah diurutkn secara menurun
berdasarkan frekuensi kemunculan.




Daftar diatas kemudian dibagi menjadi 2 didasari pada total frekuensi bagian atas sedekat
mungkin dengan total frekuensi bagian bawah. Pembagian tersebut menghasilkan simbol A dan B
menjadi bagian atas dengan total 22. Sedangkan C, D, dan E menjadi bagian bawah dengan total
17, sehingga simbol A dan B akan dimulai dengan kode 0, sedangkan C, D, dan E dimulai dengan
kode 1.
2. Algoritma Huffman

Metode Huffman adalah metode pengkodean yang telah banyak diterapkan untuk

aplikasi kompresi citra. Seperti metode Shannon-Fano, metode Huffman juga

membentuk pohon atas dasar probabilitas setiap symbol, namun teknik pembentukan

pohonnya berbeda.

3. Algoritma Huffman Adaptif

Algoritma Huffman Adaptif dirancang khusus agar proses pengkodean dapat dilakukan

pada data realtime. Pada data realtime, frekuensi (probabilitas) setiap simbol tidak

dapat ditentukan sekali waktu. Probabilitas setiap simbol harus dihitung secara dinamis

(adaptif).
4. Algoritma Zero Compression

Zero Compression merupakan salah satu teknik kompresi yang diterapkan pada sekumpulan data

sering terjadi perulangan data bernilai nol yang berurutan. Algoritma ini dapat digambarkan

sebagai berikut.

                                   00000245200007891

Jika terhadap data tersebut dilakukan pengkodean dengan teknik Zero Compression maka di dapat

kode sebagai berikut.

                                   052452047891

Yang berarti :

Nilai 0 diulang 5 kali, nilai berikutnya ialah 2, 4, 5, 2 tanpa dikompresi, nilai 0 diulang 4 kali, nilai

berikutnya ialah 7, 8, 9, 1 tanpa dikompresi. Agar teknik ini dapat diterapkan dengan efektif maka

sebelumnya perlu untuk mengetahui variasi nilai pada kumpulan data tersebut. Bila nilai nol yang

berurutan sering muncul.
5. Kompresi Citra Menggunakan Metode RLE

RLE (Run Length Encoding) adalah kompresi yang umum digunakan untuk data grafis (citra).

Kompresi citra dengan menggunakan RLE didasarkan pada pengamatan bahwa suatu pixel dalam

suatu citra akan memiliki nilai akan cenderung sama dengan nilai pixel tetangganya. Bila suatu

citra biner dimulai dengan 20 pixel putih, kemudian diikuti dengan 3 pixel hitam kemudian diikuti

lagi dengan 65 pixel putih maka hanya nilai 20, 3, dan 65 yang akan menjadi output untuk

mewakili nilai dari masing-masing pixel inputnya.

6. Difference Coding

Prinsip kerja Difference coding adalah dengan mengurangi nilai pixel dengan nilai pixel

sebelumnya. Untuk pixel pada posisi (indeks) ke-0 tetap dipertahankan.

Sebagai contoh diberikan suatu citra 1 dimensi berikut.

           40 40 40 40 40 43 43 100 102 102 102…

Hasil dari proses Difference coding adalah :

40 0 0 0 0 3 0 57 2 0 0 0
7. Arithmetic Coding

Prinsip Arithmetic coding diperkenalkan pertama kali oleh Peter Elias sekitar tahun 1960-an.

Seperti halnya dengan metode Huffman, teknik Aritmatika juga membuat code word untuk setiap

simbol. Hanya saja, bia pada metode Huffman kode setiap symbol berupa suatu bilangan integer

unik. Pada metode aritmatika kode simbol berupa suatu interval bilangan pecahan.



8. LZW

Metode LZW diperkenalkan oleh Terry Welch pada tahun 1984. LZW merupakan singkatan dari

ketiga penemu dari metode tersebut, yaitu Abraham Lempel, Jacob Ziv, dan Terry Welch. Sebelum

metode LZW Lempel dan Ziv telah erlebih dulu memperkenalkan suatu metode pada tahun 1977

dan 1978, yang berturut-turut disebut metode LZ77dan LZ78. Kedua metode ini menjadi dasar

muncunya metode LZW.
Metode LZW telah digunakan pada sistem operasi UNIX dan LINUX, dan juga pada


aplikasi compress, uncompress, gzip, dang unzip. LZW menjadi teknik untuk kompresi


data dalam computer pengolah kata. Algoritma kompresi citra dalam format file GIF.


9. Kompresi Citra Berbasis Transformasi


Kompresi berbasis transformasi citra merupakan kompresi yang bersifat lossy. Bagian


ini menjelaskan model umum kompresi citra berbasis transformasi.
Proses citra berbasis transformasi terdiri dari :

- Proses Kompresi

Tahap pertama proses kompresi diawali dengan proses pembagian citra berukuran N x N menjadi

beberapa subimage berukuran n x n, sehinggaa diperoleh (N/n)2 larik subimage dengan masing-

masing berukuran n x n.

Tahap kedua adalah melakukan transformasi pada setiap subimage. Berbagai metode transformasi

citra dapat diterapkan di sini, seperti transformasi Fourier, Cosinus, Walsh, Hadamard dan lain

sebagainya. Hasil dari tahap ini tentu koefisien-koenfisien hasil proses transformasi.

Tahap ketiga adalah kuantisasi. Proses kuantisasi akan menghilangkan koefisien-koenfisien yang

mengandung informasi tidak signifikan. Koefisien-koenfisien ini tidak memiliki pengaruh yang

besar pada hasil citra rekonstruksi.

Tahap terakhir adalah proses pengkodean (coding). Berbagai metode coding dapat diterapkan di

sini, seperti Huffman, Shannon, RLE, dan lain sebagainya.
- Proses Dekompresi
Tahap pertama proses dekompresi adalah proses decoding terhadap citra terkompresi. Proses
decoding tergantung pada metode yang dipilih saat proses coding. Setelah decoding, dilanjutkan
dengan proses transformasi balik (invers transformation) untuk menghasilkan subimage. Tahap
terakhir kemudian menggabung seluruh subimage sehingga diperoleh citra hasil yang bersifat
lossy.
10. Kompresi Citra dengan Transformasi Wavelet
Kompresi berbasis gelombang singkat (Wavelet) didasari pada prinsip bahwa koefisien-koefisien
hasil proses transformasi wavelet yang melakukan dekorelasi pixel dan citra, dapat dikodekan
lebih efisien dibandingkan dengan citra aslinya. Informasi visual yang penting dapat dimampatkan
ke dalam sejumlaj kecil koefisien (koefisien aproksimasi) dan koefisien sisanya (koenfisien detil,
horizontal, dan vertical) dikuantisasi atau dijadikan 0, tanpa menyebabkan distorsi terlalu banyak
pada citra.
11. Kompresi dengan Metode Fraktal
Kompresi dengan metode fraktal dilakukan atas dasar self-similarity local pada citra.
Metode Kompresi Citra

More Related Content

Similar to Metode Kompresi Citra

Image Compression - Citra Digital
Image Compression - Citra DigitalImage Compression - Citra Digital
Image Compression - Citra Digitalahmad haidaroh
 
Sistem pengkodean data
Sistem pengkodean dataSistem pengkodean data
Sistem pengkodean dataguestca3fd33
 
Buku speech processing_subp_pengkodean-sinyal-wicara-b
Buku speech processing_subp_pengkodean-sinyal-wicara-bBuku speech processing_subp_pengkodean-sinyal-wicara-b
Buku speech processing_subp_pengkodean-sinyal-wicara-btribudi20
 
Modul 6 kompresi data dan teks
Modul 6 kompresi data dan teksModul 6 kompresi data dan teks
Modul 6 kompresi data dan teksEkky Patria
 
Teknik Komunikasi Data Digital
Teknik Komunikasi Data DigitalTeknik Komunikasi Data Digital
Teknik Komunikasi Data Digitalguest995d750
 
Skripsi Implementasi Hash Kriptografik
Skripsi Implementasi Hash KriptografikSkripsi Implementasi Hash Kriptografik
Skripsi Implementasi Hash KriptografikArie Purwanto
 
Makalah Pengkodean Data
Makalah Pengkodean DataMakalah Pengkodean Data
Makalah Pengkodean Dataguest044324a2
 
Penggunaan linkedlist
Penggunaan linkedlistPenggunaan linkedlist
Penggunaan linkedlistFajar Baskoro
 
Teknik multiplex
Teknik multiplexTeknik multiplex
Teknik multiplexkolodit
 
Sistem Bilangan (modul 1)
Sistem Bilangan (modul 1)Sistem Bilangan (modul 1)
Sistem Bilangan (modul 1)Raflyzon Lie
 
KOMPRESI DATA DAN TEKS.pdf
KOMPRESI DATA DAN TEKS.pdfKOMPRESI DATA DAN TEKS.pdf
KOMPRESI DATA DAN TEKS.pdfDestinySlicer
 
about Pulse Code Modulation
about Pulse Code Modulationabout Pulse Code Modulation
about Pulse Code ModulationS N M P Simamora
 
Dasar Telekomunikasi - Slide week 12 - pengantar komunikasi data
Dasar Telekomunikasi - Slide week 12 - pengantar komunikasi dataDasar Telekomunikasi - Slide week 12 - pengantar komunikasi data
Dasar Telekomunikasi - Slide week 12 - pengantar komunikasi dataBeny Nugraha
 
Aplikasi teori bilangan dalam baercode
Aplikasi teori bilangan dalam baercodeAplikasi teori bilangan dalam baercode
Aplikasi teori bilangan dalam baercodefitrianisadewi
 
Perbandingan beberapa algoritma hash kriptografik dalam bahasa java
Perbandingan beberapa algoritma hash kriptografik dalam bahasa javaPerbandingan beberapa algoritma hash kriptografik dalam bahasa java
Perbandingan beberapa algoritma hash kriptografik dalam bahasa javaTerminal Purba
 

Similar to Metode Kompresi Citra (20)

Komunikasi Data Dasar
Komunikasi Data DasarKomunikasi Data Dasar
Komunikasi Data Dasar
 
Image Compression - Citra Digital
Image Compression - Citra DigitalImage Compression - Citra Digital
Image Compression - Citra Digital
 
Sistem pengkodean data
Sistem pengkodean dataSistem pengkodean data
Sistem pengkodean data
 
Sistem pemancar
Sistem pemancarSistem pemancar
Sistem pemancar
 
2 out of 5 code
2 out of 5 code2 out of 5 code
2 out of 5 code
 
Buku speech processing_subp_pengkodean-sinyal-wicara-b
Buku speech processing_subp_pengkodean-sinyal-wicara-bBuku speech processing_subp_pengkodean-sinyal-wicara-b
Buku speech processing_subp_pengkodean-sinyal-wicara-b
 
Tugas dsm kelompok11
Tugas dsm kelompok11Tugas dsm kelompok11
Tugas dsm kelompok11
 
Modul 6 kompresi data dan teks
Modul 6 kompresi data dan teksModul 6 kompresi data dan teks
Modul 6 kompresi data dan teks
 
Teknik Komunikasi Data Digital
Teknik Komunikasi Data DigitalTeknik Komunikasi Data Digital
Teknik Komunikasi Data Digital
 
Skripsi Implementasi Hash Kriptografik
Skripsi Implementasi Hash KriptografikSkripsi Implementasi Hash Kriptografik
Skripsi Implementasi Hash Kriptografik
 
Makalah Pengkodean Data
Makalah Pengkodean DataMakalah Pengkodean Data
Makalah Pengkodean Data
 
Penggunaan linkedlist
Penggunaan linkedlistPenggunaan linkedlist
Penggunaan linkedlist
 
Teknik multiplex
Teknik multiplexTeknik multiplex
Teknik multiplex
 
Sistem Bilangan (modul 1)
Sistem Bilangan (modul 1)Sistem Bilangan (modul 1)
Sistem Bilangan (modul 1)
 
KOMPRESI DATA DAN TEKS.pdf
KOMPRESI DATA DAN TEKS.pdfKOMPRESI DATA DAN TEKS.pdf
KOMPRESI DATA DAN TEKS.pdf
 
about Pulse Code Modulation
about Pulse Code Modulationabout Pulse Code Modulation
about Pulse Code Modulation
 
Laporan
LaporanLaporan
Laporan
 
Dasar Telekomunikasi - Slide week 12 - pengantar komunikasi data
Dasar Telekomunikasi - Slide week 12 - pengantar komunikasi dataDasar Telekomunikasi - Slide week 12 - pengantar komunikasi data
Dasar Telekomunikasi - Slide week 12 - pengantar komunikasi data
 
Aplikasi teori bilangan dalam baercode
Aplikasi teori bilangan dalam baercodeAplikasi teori bilangan dalam baercode
Aplikasi teori bilangan dalam baercode
 
Perbandingan beberapa algoritma hash kriptografik dalam bahasa java
Perbandingan beberapa algoritma hash kriptografik dalam bahasa javaPerbandingan beberapa algoritma hash kriptografik dalam bahasa java
Perbandingan beberapa algoritma hash kriptografik dalam bahasa java
 

More from Febriyani Syafri

Rpl 014 - perancangan dengan pemakaian ulang
Rpl   014 - perancangan dengan pemakaian ulangRpl   014 - perancangan dengan pemakaian ulang
Rpl 014 - perancangan dengan pemakaian ulangFebriyani Syafri
 
Rpl 013 - perancangan perangkat lunak real time
Rpl   013 - perancangan perangkat lunak real timeRpl   013 - perancangan perangkat lunak real time
Rpl 013 - perancangan perangkat lunak real timeFebriyani Syafri
 
Rpl 012 - perancangan berorientasi objek
Rpl   012 - perancangan berorientasi objekRpl   012 - perancangan berorientasi objek
Rpl 012 - perancangan berorientasi objekFebriyani Syafri
 
Rpl 011 - arsitektur sistem terdistribusi
Rpl   011 - arsitektur sistem terdistribusiRpl   011 - arsitektur sistem terdistribusi
Rpl 011 - arsitektur sistem terdistribusiFebriyani Syafri
 
Rpl 010 - perancangan arsitektural
Rpl   010 - perancangan arsitekturalRpl   010 - perancangan arsitektural
Rpl 010 - perancangan arsitekturalFebriyani Syafri
 
Rpl 09 - spesifikasi formal
Rpl   09 - spesifikasi  formalRpl   09 - spesifikasi  formal
Rpl 09 - spesifikasi formalFebriyani Syafri
 
Rpl 07 - pembuatan prototipe perangkat lunak
Rpl   07 - pembuatan prototipe perangkat lunakRpl   07 - pembuatan prototipe perangkat lunak
Rpl 07 - pembuatan prototipe perangkat lunakFebriyani Syafri
 
Rpl 06 - proses rekayasa persyaratan
Rpl   06 - proses rekayasa persyaratanRpl   06 - proses rekayasa persyaratan
Rpl 06 - proses rekayasa persyaratanFebriyani Syafri
 
Sister 01 - pengenalan sister
Sister   01 - pengenalan sisterSister   01 - pengenalan sister
Sister 01 - pengenalan sisterFebriyani Syafri
 
Sister 02 - model dan permasalahan sister
Sister   02 - model dan permasalahan sisterSister   02 - model dan permasalahan sister
Sister 02 - model dan permasalahan sisterFebriyani Syafri
 
Sister 03 - komunikasi data
Sister   03 - komunikasi dataSister   03 - komunikasi data
Sister 03 - komunikasi dataFebriyani Syafri
 
Sister 04 - remote procedure call (rpc)
Sister   04 - remote procedure call (rpc)Sister   04 - remote procedure call (rpc)
Sister 04 - remote procedure call (rpc)Febriyani Syafri
 
Sister 07 - os client server
Sister   07 - os client serverSister   07 - os client server
Sister 07 - os client serverFebriyani Syafri
 
Sister 09 - jenis os client server
Sister   09 - jenis os client serverSister   09 - jenis os client server
Sister 09 - jenis os client serverFebriyani Syafri
 

More from Febriyani Syafri (20)

Rpl 016 - uas
Rpl   016 - uasRpl   016 - uas
Rpl 016 - uas
 
Rpl 015 - interface user
Rpl   015 - interface userRpl   015 - interface user
Rpl 015 - interface user
 
Rpl 014 - perancangan dengan pemakaian ulang
Rpl   014 - perancangan dengan pemakaian ulangRpl   014 - perancangan dengan pemakaian ulang
Rpl 014 - perancangan dengan pemakaian ulang
 
Rpl 013 - perancangan perangkat lunak real time
Rpl   013 - perancangan perangkat lunak real timeRpl   013 - perancangan perangkat lunak real time
Rpl 013 - perancangan perangkat lunak real time
 
Rpl 012 - perancangan berorientasi objek
Rpl   012 - perancangan berorientasi objekRpl   012 - perancangan berorientasi objek
Rpl 012 - perancangan berorientasi objek
 
Rpl 011 - arsitektur sistem terdistribusi
Rpl   011 - arsitektur sistem terdistribusiRpl   011 - arsitektur sistem terdistribusi
Rpl 011 - arsitektur sistem terdistribusi
 
Rpl 010 - perancangan arsitektural
Rpl   010 - perancangan arsitekturalRpl   010 - perancangan arsitektural
Rpl 010 - perancangan arsitektural
 
Rpl 09 - spesifikasi formal
Rpl   09 - spesifikasi  formalRpl   09 - spesifikasi  formal
Rpl 09 - spesifikasi formal
 
Rpl 08 - uts
Rpl   08 - utsRpl   08 - uts
Rpl 08 - uts
 
Rpl 07 - pembuatan prototipe perangkat lunak
Rpl   07 - pembuatan prototipe perangkat lunakRpl   07 - pembuatan prototipe perangkat lunak
Rpl 07 - pembuatan prototipe perangkat lunak
 
Rpl 06 - proses rekayasa persyaratan
Rpl   06 - proses rekayasa persyaratanRpl   06 - proses rekayasa persyaratan
Rpl 06 - proses rekayasa persyaratan
 
Sister 01 - pengenalan sister
Sister   01 - pengenalan sisterSister   01 - pengenalan sister
Sister 01 - pengenalan sister
 
Sister 02 - model dan permasalahan sister
Sister   02 - model dan permasalahan sisterSister   02 - model dan permasalahan sister
Sister 02 - model dan permasalahan sister
 
Sister 03 - komunikasi data
Sister   03 - komunikasi dataSister   03 - komunikasi data
Sister 03 - komunikasi data
 
Sister 04 - remote procedure call (rpc)
Sister   04 - remote procedure call (rpc)Sister   04 - remote procedure call (rpc)
Sister 04 - remote procedure call (rpc)
 
Sister 05 - proses
Sister   05 - prosesSister   05 - proses
Sister 05 - proses
 
Sister 06 - client server
Sister   06 - client serverSister   06 - client server
Sister 06 - client server
 
Sister 07 - os client server
Sister   07 - os client serverSister   07 - os client server
Sister 07 - os client server
 
Sister 09 - jenis os client server
Sister   09 - jenis os client serverSister   09 - jenis os client server
Sister 09 - jenis os client server
 
Sister 010 - file service
Sister   010 - file serviceSister   010 - file service
Sister 010 - file service
 

Metode Kompresi Citra

  • 1.
  • 2. 1. Metode Shannon-Fano Suatu metode yag dikenal pertama kali mampu melakukan pengkodean terhadap simbol secara efektif adalah metode Shannon-Fano. Metode ini dikembangkan secara bersamaan oleh Claude Shanon dari Bell Labs dan RM Fano dari MIT. Metode in tergantung pada probabilitas dari setiap simbol yang hadir pada suatu data (pesan). Berdasarkan probabilitas tersebut kemudian dibentuk daftar kode untuk setiap simbol dengan ketentuan sebagai berikut. a. Setiap simbol berbeda memiliki kode berbeda. b. Simbol dengan probabilitas kehadiran yang lebih rendah memiliki kode jumlah bit yang lebih panjang dan simbol dengan probabilitas yang lebih tinggi memilik jumlah bit yang lebih pendek. c. Meskipun memiliki panjang kode yang berbeda, smbol tetap dapat didekode secara unik.
  • 3. Berikut adalah langkah-langkah algoritma Shannon-Fano : a.Buatalah daftar peluang atau frekuensi kehadiran setiap symbol dari data (pesan) yang akan dikodekan. b. Urutkanlah daftar tersebut menurut frekuensi kehadiran symbol secara menurun (dari simbol yang frekuensi kemunculannya paling banyak sampai simbol dengan frekuensi kemunculan paling sedikit. c. Bagilah daftar tersebut menjadi dua bagian dengan pembagian didasari pada jumlah total frekuensi suatu bagian (disebut bagian atas) sedekat mungkin dengan jumlah total frekuensi dengan bagian yang lain (disebut dibagian bawah). d. Daftar bagian atas dinyatakan dengan digit 0 dan bagian bawah dinyatakan dengan digit 1. Hal tersebut berarti kode untuk simbol-simbol pada bagian atas akan dimulai dengan 0 dan kode untuk simbol-simbol pada bagian bawah akan dimulai dengan 1. e. Lakukanlah proses secara rekursif langkah 3 dan 4 pada bagian atas dan bawah. Bagilah menjadi kelompok-kelompok dan tambahkan bit-bit pada kode sampai setiap symbol mempunyai kode yang bersesuaian pada pohon tersebut.
  • 4. Berikut contoh pengkodeaan Shannon-Fano, pesan yang akan dikodekan adalah : BCEEDDBBAAAABEEEDDDCCCAAACCDAAAAABBAAA Berikut daftar frekuensi kemunculan symbol pada pesan yang telah diurutkn secara menurun berdasarkan frekuensi kemunculan. Daftar diatas kemudian dibagi menjadi 2 didasari pada total frekuensi bagian atas sedekat mungkin dengan total frekuensi bagian bawah. Pembagian tersebut menghasilkan simbol A dan B menjadi bagian atas dengan total 22. Sedangkan C, D, dan E menjadi bagian bawah dengan total 17, sehingga simbol A dan B akan dimulai dengan kode 0, sedangkan C, D, dan E dimulai dengan kode 1.
  • 5. 2. Algoritma Huffman Metode Huffman adalah metode pengkodean yang telah banyak diterapkan untuk aplikasi kompresi citra. Seperti metode Shannon-Fano, metode Huffman juga membentuk pohon atas dasar probabilitas setiap symbol, namun teknik pembentukan pohonnya berbeda. 3. Algoritma Huffman Adaptif Algoritma Huffman Adaptif dirancang khusus agar proses pengkodean dapat dilakukan pada data realtime. Pada data realtime, frekuensi (probabilitas) setiap simbol tidak dapat ditentukan sekali waktu. Probabilitas setiap simbol harus dihitung secara dinamis (adaptif).
  • 6. 4. Algoritma Zero Compression Zero Compression merupakan salah satu teknik kompresi yang diterapkan pada sekumpulan data sering terjadi perulangan data bernilai nol yang berurutan. Algoritma ini dapat digambarkan sebagai berikut. 00000245200007891 Jika terhadap data tersebut dilakukan pengkodean dengan teknik Zero Compression maka di dapat kode sebagai berikut. 052452047891 Yang berarti : Nilai 0 diulang 5 kali, nilai berikutnya ialah 2, 4, 5, 2 tanpa dikompresi, nilai 0 diulang 4 kali, nilai berikutnya ialah 7, 8, 9, 1 tanpa dikompresi. Agar teknik ini dapat diterapkan dengan efektif maka sebelumnya perlu untuk mengetahui variasi nilai pada kumpulan data tersebut. Bila nilai nol yang berurutan sering muncul.
  • 7. 5. Kompresi Citra Menggunakan Metode RLE RLE (Run Length Encoding) adalah kompresi yang umum digunakan untuk data grafis (citra). Kompresi citra dengan menggunakan RLE didasarkan pada pengamatan bahwa suatu pixel dalam suatu citra akan memiliki nilai akan cenderung sama dengan nilai pixel tetangganya. Bila suatu citra biner dimulai dengan 20 pixel putih, kemudian diikuti dengan 3 pixel hitam kemudian diikuti lagi dengan 65 pixel putih maka hanya nilai 20, 3, dan 65 yang akan menjadi output untuk mewakili nilai dari masing-masing pixel inputnya. 6. Difference Coding Prinsip kerja Difference coding adalah dengan mengurangi nilai pixel dengan nilai pixel sebelumnya. Untuk pixel pada posisi (indeks) ke-0 tetap dipertahankan. Sebagai contoh diberikan suatu citra 1 dimensi berikut. 40 40 40 40 40 43 43 100 102 102 102… Hasil dari proses Difference coding adalah : 40 0 0 0 0 3 0 57 2 0 0 0
  • 8. 7. Arithmetic Coding Prinsip Arithmetic coding diperkenalkan pertama kali oleh Peter Elias sekitar tahun 1960-an. Seperti halnya dengan metode Huffman, teknik Aritmatika juga membuat code word untuk setiap simbol. Hanya saja, bia pada metode Huffman kode setiap symbol berupa suatu bilangan integer unik. Pada metode aritmatika kode simbol berupa suatu interval bilangan pecahan. 8. LZW Metode LZW diperkenalkan oleh Terry Welch pada tahun 1984. LZW merupakan singkatan dari ketiga penemu dari metode tersebut, yaitu Abraham Lempel, Jacob Ziv, dan Terry Welch. Sebelum metode LZW Lempel dan Ziv telah erlebih dulu memperkenalkan suatu metode pada tahun 1977 dan 1978, yang berturut-turut disebut metode LZ77dan LZ78. Kedua metode ini menjadi dasar muncunya metode LZW.
  • 9. Metode LZW telah digunakan pada sistem operasi UNIX dan LINUX, dan juga pada aplikasi compress, uncompress, gzip, dang unzip. LZW menjadi teknik untuk kompresi data dalam computer pengolah kata. Algoritma kompresi citra dalam format file GIF. 9. Kompresi Citra Berbasis Transformasi Kompresi berbasis transformasi citra merupakan kompresi yang bersifat lossy. Bagian ini menjelaskan model umum kompresi citra berbasis transformasi.
  • 10. Proses citra berbasis transformasi terdiri dari : - Proses Kompresi Tahap pertama proses kompresi diawali dengan proses pembagian citra berukuran N x N menjadi beberapa subimage berukuran n x n, sehinggaa diperoleh (N/n)2 larik subimage dengan masing- masing berukuran n x n. Tahap kedua adalah melakukan transformasi pada setiap subimage. Berbagai metode transformasi citra dapat diterapkan di sini, seperti transformasi Fourier, Cosinus, Walsh, Hadamard dan lain sebagainya. Hasil dari tahap ini tentu koefisien-koenfisien hasil proses transformasi. Tahap ketiga adalah kuantisasi. Proses kuantisasi akan menghilangkan koefisien-koenfisien yang mengandung informasi tidak signifikan. Koefisien-koenfisien ini tidak memiliki pengaruh yang besar pada hasil citra rekonstruksi. Tahap terakhir adalah proses pengkodean (coding). Berbagai metode coding dapat diterapkan di sini, seperti Huffman, Shannon, RLE, dan lain sebagainya.
  • 11. - Proses Dekompresi Tahap pertama proses dekompresi adalah proses decoding terhadap citra terkompresi. Proses decoding tergantung pada metode yang dipilih saat proses coding. Setelah decoding, dilanjutkan dengan proses transformasi balik (invers transformation) untuk menghasilkan subimage. Tahap terakhir kemudian menggabung seluruh subimage sehingga diperoleh citra hasil yang bersifat lossy. 10. Kompresi Citra dengan Transformasi Wavelet Kompresi berbasis gelombang singkat (Wavelet) didasari pada prinsip bahwa koefisien-koefisien hasil proses transformasi wavelet yang melakukan dekorelasi pixel dan citra, dapat dikodekan lebih efisien dibandingkan dengan citra aslinya. Informasi visual yang penting dapat dimampatkan ke dalam sejumlaj kecil koefisien (koefisien aproksimasi) dan koefisien sisanya (koenfisien detil, horizontal, dan vertical) dikuantisasi atau dijadikan 0, tanpa menyebabkan distorsi terlalu banyak pada citra. 11. Kompresi dengan Metode Fraktal Kompresi dengan metode fraktal dilakukan atas dasar self-similarity local pada citra.