220 likes | 415 Views
KOMPRESI CITRA. Meminimalkan K ebutuhan M emori dalam Merepresentasikan C itra D igital. MANFAAT KOMPRESI CITRA. TEKNIK KOMPRESI CITRA. KRITERIA KOMPRESI CITRA. ALGORITMA HUFFMAN. Urutkan nilai-nilai grayscale berdasarkan frekuensi kemunculannya
E N D
KOMPRESI CITRA Meminimalkan Kebutuhan Memori dalam Merepresentasikan Citra Digital
ALGORITMA HUFFMAN • Urutkan nilai-nilai grayscale berdasarkan frekuensi kemunculannya • Gabung dua pohon yang mempunyai frekuensi kemunculan terkecil dan urutkan kembali • Ulangi langkah (2) sampai tersisa satu pohon biner • Beri label pohon biner tersebut dengan cara sisi kiri pohon diberi label 0 dan sisi kanan pohon diberi label 1 • Telusuri pohon biner dari akar ke daun. Barisan label-label sisi dari akar ke daun adalah kode huffman
CONTOH • Lakukan kompresi pada citra berukuran 100x100 piksel dengan kedalaman 3 bit yang memiliki probabilitas sebagai berikut :
Langkah 1 3 : 0,01 5 : 0,04 6 : 0,05 2 : 0,06 7 : 0,09 1 : 0,1 0 : 0,25 4 : 0,4 Langkah 2 3 ,5 : 0,05 6 : 0,05 2 : 0,06 7 : 0,09 1 : 0,1 0 : 0,25 4 : 0,4 3 : 0,01 5 : 0,04 Langkah 3.1 2 : 0,06 7 : 0,09 3 ,5,6 : 0,1 1 : 0,1 0 : 0,25 4 : 0,4 3 ,5 : 0,05 6 : 0,05 3 : 0,01 5 : 0,04
Langkah 3.2 3 ,5,6 : 0,1 1 : 0,1 2,7 : 0,15 0 : 0,25 4 : 0,4 3 ,5 : 0,05 6 : 0,05 2 : 0,06 7 : 0,09 3 : 0,01 5 : 0,04 Langkah 3.3 2,7 : 0,15 3 ,5,6,1 : 0,2 0 : 0,25 4 : 0,4 2 : 0,06 7 : 0,09 3 ,5,6 : 0,1 1 : 0,1 3 ,5 : 0,05 6 : 0,05 3 : 0,01 5 : 0,04
Langkah 3.4 0 : 0,25 2,7,3 ,5,6,1 : 0,35 4 : 0,4 2,7 : 0,15 3 ,5,6,1 : 0,2 2 : 0,06 7 : 0,09 3 ,5,6 : 0,1 1 : 0,1 3 ,5 : 0,05 6 : 0,05 3 : 0,01 5 : 0,04
Langkah 3.5 4 : 0,4 0,2,7,3 ,5,6,1 : 0,6 0 : 0,25 2,7,3 ,5,6,1 : 0,35 2,7 : 0,15 3 ,5,6,1 : 0,2 2 : 0,06 7 : 0,09 3 ,5,6 : 0,1 1 : 0,1 3 ,5 : 0,05 6 : 0,05 3 : 0,01 5 : 0,04
Langkah 3.6 4,0,2,7,3 ,5,6,1 : 1 4 : 0,4 0,2,7,3 ,5,6,1 : 0,6 0 : 0,25 2,7,3 ,5,6,1 : 0,35 2,7 : 0,15 3 ,5,6,1 : 0,2 2 : 0,06 7 : 0,09 3 ,5,6 : 0,1 1 : 0,1 3 ,5 : 0,05 6 : 0,05 3 : 0,01 5 : 0,04
Langkah 4 4,0,2,7,3 ,5,6,1 : 1 0 1 4 : 0,4 0,2,7,3 ,5,6,1 : 0,6 0 1 0 : 0,25 2,7,3 ,5,6,1 : 0,35 0 1 2,7 : 0,15 3 ,5,6,1 : 0,2 0 1 0 1 2 : 0,06 7 : 0,09 3 ,5,6 : 0,1 1 : 0,1 0 1 3 ,5 : 0,05 6 : 0,05 0 1 3 : 0,01 5 : 0,04
Langkah 5 4,0,2,7,3 ,5,6,1 : 1 Penelusuran dari akar ke daun : 4 = 0 0 1 0 = 10 2 = 1100 4 : 0,4 0,2,7,3 ,5,6,1 : 0,6 7 = 1101 3 = 111000 0 1 5 = 111001 6 = 11101 0 : 0,25 2,7,3 ,5,6,1 : 0,35 1 = 1111 0 1 2,7 : 0,15 3 ,5,6,1 : 0,2 0 1 0 1 2 : 0,06 7 : 0,09 3 ,5,6 : 0,1 1 : 0,1 0 1 3 ,5 : 0,05 6 : 0,05 0 1 3 : 0,01 5 : 0,04
HASIL KOMPRESI • Ukuran citra sebelum kompresi • (kedalaman 3 bit = 8 warna) • = 100 x 100 x 3 bit • = 30.000 bit • Ukuran citra setelah kompresi • = 2500 x 2 + 1000 x 4 + 600 x 4 + • 100 x 6 + 4000 x 1 + 400 x 6 + • 500 x 5 + 900 x 4 • = 24.500 bit • Rasio kompresi • = 100% - 24.500/30.000 x 100% • = 18,3%
ALGORITMA RUN LENGTH ENCODING (RLE) • Cocok digunakan untuk memampatkan citra yang memiliki kelompok-kelompok piksel berderajat keabuan yang sama • Seluruh citra dinyatakan sebagai sebuah baris run • Menghitung run-length untuk setiap derajat keabuan yang berurutan
CONTOH Hasil Kompresi (2,2) (7,4) (2,4) (3,4) (7,4)(1,2) (5,4) (1,2) (6,4) (2,4) (0,4) (2,2) (4,4) (1,2) (5,4) (0,3) (3,5) (6,2) (6,2) (0,2) (7,3) (2,3) (6,10) (6,3) (3,2) (0,2) (5,3) (1,2) (7,3) (4,2) (2,3)
HASIL PENGKODEAN • Pengkodean : 2 2 7 4 2 4 3 4 7 4 1 2 5 4 1 2 6 4 2 4 0 4 2 2 4 4 1 2 5 4 0 3 3 5 6 2 6 2 0 2 7 3 2 3 6 10 6 3 3 2 0 2 5 3 1 2 7 3 4 2 2 3 Total = 59 piksel • Ukuran citra sebelum dikompres = 10 x 10 x 3 bit = 300 bit • Ukuran citra setelah dikompres = 59 x 3 bit = 177 bit • Rasio kompresi = 100% - 177/300 x 100% = 41%
METODE KUANTISASI • Mengurangi derajat keabuan sehingga jumlah bit yang dibutuhkan untuk merepresentasikan citra berkurang • Misal P adalah jumlah piksel citra sebelum dimampatkan • Buat histogram citra semula • Buat n kelompok sehingga setiap kelompok berjumlah kira-kira P/n • Ganti keabuan piksel dengan keabuan kelompok yang baru
CONTOH • Citra 4 bit berukuran 10x10 piksel akan dimampatkan menjadi citra 2 bit berukuran 10x10 piksel
LANGKAH 3 • Ukuran citra sebelum kompresi • = 10 x 10 x 4 bit • = 400 bit • Ukuran citra setelah kompresi • = 10 x 10 x 2 • = 200 bit • Rasio kompresi • = 100% - 200/400 x 100% • = 50%