Meminimalkan K ebutuhan M emori dalam Merepresentasikan C itra D igital

Post on 29-Jan-2016

32 views 0 download

description

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 - PowerPoint PPT Presentation

Transcript of Meminimalkan K ebutuhan M emori dalam Merepresentasikan C itra D igital

Meminimalkan Kebutuhan Memori dalam Merepresentasikan Citra

Digital

KOMPRESI CITRA

MANFAAT KOMPRESI CITRA

Waktu pengiriman data lebih singkat• Pengiriman gambar dari fax• Video conferencing• Download dari internet

Membutuhkan ruang memori yang lebih sedikit

TEKNIK KOMPRESI CITRA

• Run Length Encoding (RLE)• Entropy Encoding (Huffman, Aritmatik)• Adaptive Dictionary Based (LZW)Lossless

Compression

• Color Reduction• Chroma Subsampling• Transform Coding (Transformasi

Fourier, Wavelet)Lossy

Compression

KRITERIA KOMPRESI CITRA

Waktu Kompresi dan Dekompresi

Kebutuhan Memori

Kualitas Pemampatan (Fidelity)

Format Keluaran

ALGORITMA HUFFMAN

1. Urutkan nilai-nilai grayscale berdasarkan frekuensi kemunculannya

2. Gabung dua pohon yang mempunyai frekuensi kemunculan terkecil dan urutkan kembali

3. Ulangi langkah (2) sampai tersisa satu pohon biner4. Beri label pohon biner tersebut dengan cara sisi kiri pohon

diberi label 0 dan sisi kanan pohon diberi label 15. 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 :

K nk P(k) = nk/n

0 2500 0,25

1 1000 0,1

2 600 0,06

3 100 0,01

4 4000 0,4

5 400 0,04

6 500 0,05

7 900 0,09

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 1

3 ,5 : 0,05 6 : 0,05 2 : 0,06 7 : 0,09 1 : 0,1 0 : 0,25 4 : 0,4

Langkah 2

3 ,5,6 : 0,12 : 0,06 7 : 0,09 1 : 0,1 0 : 0,25 4 : 0,4

Langkah 3.1

3 : 0,01 5 : 0,04

3 ,5 : 0,05 6 : 0,05

3 : 0,01 5 : 0,04

3 ,5,6 : 0,1

2 : 0,06 7 : 0,09

1 : 0,1 0 : 0,25 4 : 0,4

3 ,5 : 0,05 6 : 0,05

3 : 0,01 5 : 0,04

2,7 : 0,15

3 ,5,6 : 0,1 1 : 0,1

3 ,5 : 0,05 6 : 0,05

3 : 0,01 5 : 0,04

3 ,5,6,1 : 0,2

2 : 0,06 7 : 0,09

2,7 : 0,15 0 : 0,25 4 : 0,4

Langkah 3.2

Langkah 3.3

3 ,5,6 : 0,1 1 : 0,1

3 ,5 : 0,05 6 : 0,05

3 : 0,01 5 : 0,04

3 ,5,6,1 : 0,2

2 : 0,06 7 : 0,09

2,7 : 0,15

Langkah 3.4

0 : 0,25 4 : 0,42,7,3 ,5,6,1 : 0,35

3 ,5,6 : 0,1 1 : 0,1

3 ,5 : 0,05 6 : 0,05

3 : 0,01 5 : 0,04

3 ,5,6,1 : 0,2

2 : 0,06 7 : 0,09

2,7 : 0,15

Langkah 3.5

0 : 0,25

4 : 0,4

2,7,3 ,5,6,1 : 0,35

0,2,7,3 ,5,6,1 : 0,6

3 ,5,6 : 0,1 1 : 0,1

3 ,5 : 0,05 6 : 0,05

3 : 0,01 5 : 0,04

3 ,5,6,1 : 0,2

2 : 0,06 7 : 0,09

2,7 : 0,15

Langkah 3.6

0 : 0,25

4 : 0,4

2,7,3 ,5,6,1 : 0,35

0,2,7,3 ,5,6,1 : 0,6

4,0,2,7,3 ,5,6,1 : 1

3 ,5,6 : 0,1 1 : 0,1

3 ,5 : 0,05 6 : 0,05

3 : 0,01 5 : 0,04

3 ,5,6,1 : 0,2

2 : 0,06 7 : 0,09

2,7 : 0,15

Langkah 4

0 : 0,25

4 : 0,4

2,7,3 ,5,6,1 : 0,35

0,2,7,3 ,5,6,1 : 0,6

4,0,2,7,3 ,5,6,1 : 1

0 1

0 1

0 1

0 1 0 1

0 1

0 1

3 ,5,6 : 0,1 1 : 0,1

3 ,5 : 0,05 6 : 0,05

3 : 0,01 5 : 0,04

3 ,5,6,1 : 0,2

2 : 0,06 7 : 0,09

2,7 : 0,15

Langkah 5

0 : 0,25

4 : 0,4

2,7,3 ,5,6,1 : 0,35

0,2,7,3 ,5,6,1 : 0,6

4,0,2,7,3 ,5,6,1 : 1

0 1

0 1

0 1

0 1 0 1

0 1

0 1

Penelusuran dari akar ke daun :4 = 0

1 = 1111

0 = 10

6 = 11101

2 = 1100

5 = 111001

7 = 11013 = 111000

HASIL KOMPRESIK nk Kode Huffman0 2500 10 (2 bit)

1 1000 1111 (4 bit)

2 600 1100 (4 bit)

3 100 111000 (6 bit)

4 4000 0 (1 bit)

5 400 111001 (6 bit)

6 500 11101 (5 bit)

7 900 1101 (4 bit)

• 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 sama1. Seluruh citra dinyatakan sebagai sebuah baris run2. Menghitung run-length untuk setiap derajat keabuan

yang berurutan

CONTOH2 2 7 7 7 7 2 2 2 2

3 3 3 3 7 7 7 7 1 1

5 5 5 5 1 1 6 6 6 6

2 2 2 2 0 0 0 0 2 2

4 4 4 4 1 1 5 5 5 5

0 0 0 3 3 3 3 3 6 6

6 6 0 0 7 7 7 2 2 2

6 6 6 6 6 6 6 6 6 6

6 6 6 3 3 0 0 5 5 5

1 1 7 7 7 4 4 2 2 2

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 3Total = 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 dimampatkan1. Buat histogram citra semula2. Buat n kelompok sehingga setiap kelompok berjumlah

kira-kira P/n3. Ganti keabuan piksel dengan keabuan kelompok yang

baru

CONTOH• Citra 4 bit berukuran 10x10 piksel akan dimampatkan menjadi

citra 2 bit berukuran 10x10 piksel

0 0 1 1 1 3 4 4 4 3

2 2 1 3 3 3 4 0 0 3

2 0 0 0 4 5 0 0 5 3

1 5 6 0 6 6 6 6 5 5

1 1 6 0 0 0 7 7 5 5

5 3 1 3 3 0 3 3 3 5

5 8 1 1 8 0 8 7 7 5

5 8 8 5 5 8 8 2 2 7

5 3 8 5 5 2 2 2 7 7

3 3 3 5 5 8 9 9 7 2

LANGKAH 1

K nk

0 15

1 10

2 9

3 17

4 5

5 19

6 6

7 8

8 9

9 2

LANGKAH 2

K nk nbaru kbaru

0 1525 0

1 10

2 926 1

3 17

4 524 2

5 19

6 6

25 37 8

8 9

9 2

LANGKAH 30 0 0 0 0 1 2 2 2 1

1 1 0 1 1 1 2 0 0 1

1 0 0 0 2 2 0 0 2 1

0 2 3 0 3 3 3 3 2 2

0 0 3 0 0 0 3 3 2 2

2 1 0 1 1 0 1 1 1 2

2 3 0 0 3 0 3 3 3 2

2 3 3 2 2 3 3 1 1 3

2 1 3 2 2 1 1 1 3 3

1 1 1 2 2 3 3 3 3 1

• 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%