vii. pemampatan citra

19
PEMAMPATAN CITRA TUJUAN: meminimalkan kebutuhan memori utk merepresentasikan citra digital. Semakin besar ukuran citra semakin besar memori yang dibutuhkan. Kebanyakan citra mengandung duplikasi data yg dpt berarti: 1. besar kemungkinan suatu pixel dgn pixel tetangganya memiliki intensitas yg sama, shg penyimpanan setiap pixel memboroskan tempat. 2. Citra byk mengandung bagian yg sama, shg tdk perlu dikodekan berulang Ada 2 proses utama dlm pemampatan citra: 1. Pemampatan citra (image compression) contoh citra blm dimampatkan dlm format bitmap dan yg sudah dimampatkan disimpan dlm format JPG dan GIF

Upload: khaerul-azmi

Post on 23-Jun-2015

934 views

Category:

Education


4 download

TRANSCRIPT

Page 1: Vii. pemampatan citra

PEMAMPATAN CITRA

TUJUAN: meminimalkan kebutuhan memori utk merepresentasikan citra digital.

Semakin besar ukuran citra semakin besar memori yang dibutuhkan.

Kebanyakan citra mengandung duplikasi data yg dpt berarti: 1. besar kemungkinan suatu pixel dgn pixel tetangganya memiliki intensitas yg sama, shg penyimpanan setiap pixel memboroskan tempat.2. Citra byk mengandung bagian yg sama, shg tdk perlu dikodekan berulang

Ada 2 proses utama dlm pemampatan citra:1. Pemampatan citra (image compression)

contoh citra blm dimampatkan dlm format bitmap dan yg sudah dimampatkan disimpan dlm format JPG dan GIF

2. Penirmampatan citra (image decompression) Mengembalikan citra yg termampatkan menjd data bitmap

Page 2: Vii. pemampatan citra

Aplikasi Pemampatan Citra

1. Data transmission, wkt pengiriman data lebih cepat.contoh: pengiriman gbr lwt fax, videoconferencing, download gbr dr internet

2. Data storing, butuh memori lebih kecilContoh: aplikasi basis data gambar, video storage sprti VCD dll.

Kriteria pemampatan citra:1. Wkt compression dan decompression sebaiknya cepat2. Kebutuhan memori

Memori yg dibutuhkan utk merepresentasikan citra sehrusnya berkurang secara berarti.Pd bbrp metode ukuran memori hasil pemampatan bergtung pd citra itu sendiri.Citra dgn elemen duplikasi yg byk, misal langit cerah tanpa awan, lantai keramik,umumny dpt dimampatkan dgn memori lebih sedikit dibanding citra yg mengandung objek, misal pemdangan alam.

3. KualitasInformasi yg hilang akibat pemampatan seminimal mgkiagar kualitas ttp diperthankankualitas citra bersifat subyektif dan relatif, tergantung penilaian seseorg.ukuran kualitas hasil pemampatan citra menjadi ukuran kuantitatif mggnakan PSNR, mngukur perbedaan citra semula dgn hasil pemampatan

Page 3: Vii. pemampatan citra

b: nilai sinyal terbesar (u htam putih, b=255)Rms: akar pangkat dua dr selisih antara citra semula dgn citra hasil pemampatan

f :nilai fixel semulaf´: nilai fixel stlh pemampatan

dB

Sbrp besar PSNR yg bagus?Tdk bisa dinyatakan secara eksplisit, trgtng citra yg dimampatkan, namun bisa diketahui Jk dilakukan pengujian dgn mencoba berbgi kombinasi parameter pemampatan yg digunakan.Jk nilai PSNR semakin besar, berarti parameter pemampatan yg digunakan sdh menuju nilai baik.Parameter pemampatan citra tergtg metode yg digunakan.

4. Format keluaran Format citra hasil pemampatan sebaiknya cocok u pengiriman dan penyimpanan data. Pembacaan citra bergtg pd bagaimana citra tsb direpresentasikan atau disimpan.

Page 4: Vii. pemampatan citra

Jenis Pemampatan Citra:Ada 4 pendekatan:a. Pendekatan statistik, yg didasarkan pd frek kemunculan derajat keabuan pixel pd

Seluruh bagian gambar, contoh metode Huffman Codingb. Pendekatan ruang, didasarkan pd hub spasial antara pixel2 dlm suatu kelompok yg

memiliki derajat keabuan yg sama di dlm suatu daerah di dlm gambar, contoh metode Run-Length Encoding

c. Pendekatan kuantisasi, pemampatan citra dilakukan dgn mengurangi jumlah derajat keabuan yg tersedia, contoh metode pemampatan kuantisasi

d. Pend fraktal, didsarkan pd kenyataan bhw kemiripan bagian2 dlm citra dpt dieksploitasidgn suatu matriks transformasi, contoh metode Fractal Image Compression

Metode Pemampatan Huffman

Menggunakan prinsip nilai atau derajat keabuan yg sering muncul dikodekan dgn jml bitLebih sedikit dan yg frek kemunculannya sedikit dikodekan dgn jlh bit yg lebih panjang.

Algoritma metode Huffman:1. Urutkan secara ascending nilai2 keabuan berdasarkan frek kemunculan atau peluangKemunculan, Pk yaitu frek kemunculan nk dibagi dgn jlh pixel dlm citra (n). Setiap nilai keabuan dinyatakan sebagai pohon bersimpul tunggal. Setiap simpul ditandai dgn frek kemunculan nilai keabuan tsb.

Page 5: Vii. pemampatan citra

2. Gabung 2 buah pohon yg mempyai frek kemunculan paling kecil pd sebuah akar. Akar Akar mempyai frek yg merupakan jlh dr frek 2 buah pohon penyusunnya3. Ulangi langkah 2 sampai tersisa hy satu pohon biner.4. Beri label setiap sisi pohon biner. Sisi kiri dilabeli dgn 0 dan sisi kanan dilabeli 1.5. Telusuri pohon biner dr akar ke daun. Barisan label2 sisi dr akar ke daun menyatakan

kode Huffman u derajat keabuan yg bersesuain.

Contoh:

Misal citra berukuran 32 x 32 dgn 8 derjat keabuan (k)

k nk p(k)=nk/n0 190 0,191 120 0,122 275 0,273 165 0,164 45 0,045 100 0,106 50 0,057 79 0,08

Page 6: Vii. pemampatan citra

Tahapan pembentukan pohon Huffman

4:0.04 6:0.05 1:0.125:0.107:0.08 3:0.16 0:0.19 2:0.27

7:0.08 46:0.09

6:0.054:0.04

1:0.125:0.10 3:0.16 0:0.19 2:0.27

1.

2.

3.

46:0.09

6:0.054:0.04

746:0.17

7:0.08

1:0.125:0.10 3:0.16 0:0.19 2:0.27

Page 7: Vii. pemampatan citra

4.

46:0.09

6:0.054:0.04

746:0.17

7:0.08

3:0.16 0:0.19 2:0.2751:0.22

5:0.10 1:0.12

Page 8: Vii. pemampatan citra

5. 0:0.1951:0.22

5:0.10 1:0.12

2:0.273746:0.33

3:0.16

46:0.09

6:0.054:0.04

746:0.17

7:0.08

Page 9: Vii. pemampatan citra

6. 2:0.273746:0.33

3:0.16

46:0.09

6:0.054:0.04

746:0.17

7:0.08

051:0.41

0:0.19 51:0.22

5:0.10 1:0.12

Page 10: Vii. pemampatan citra

7.051:0.41

0:0.19 51:0.22

5:0.10 1:0.12

2:0.273746:0.33

3:0.16

46:0.09

6:0.054:0.04

746:0.17

7:0.08

23746:0.60

Page 11: Vii. pemampatan citra

8. 05123746:1

051:0.41

0:0.19 51:0.22

5:0.10 1:0.12

2:0.27 3746:0.33

3:0.16

46:0.09

6:0.054:0.04

746:0.17

7:0.08

23746:0.60

0 1

0 1

01

0 1

0 1

0 1

0 1

0 = 00 5 = 0101 = 011 6 = 111112 = 10 7 = 11103 = 1104 = 11110

Page 12: Vii. pemampatan citra

0 = 00 4 = 11110 1 = 011 5 = 0102 = 10 6 = 111113 = 110 7 = 1110

Dr pohon Huffman diperoleh kode untuk setiap derajat keabuan sbb:

Ukuran citra sebelum pemampatan (1 derajat keabuan = 3 bit) yaitu 1024 x 3 bit = 3072 bit.Sedang ukuran citra setelah pemampatan:

(190*2)+(120*3)+(275*2)+(165*3)+(45*5)+(100*3)+(50*5)+(79*4)= 2879 bit

Jd kebutuhan memori telah dikurangi dr 3072 bit menjadi 2879 bit, ini tidak byk menghemat, Tetapi jika menggunakan derajat keabuan 256 penghematan memori dpt lebih besar.

Nisbah pemampatan = (100%-(2879/3072)x100%)=6%

k nk p(k)=nk/n0 190 0,191 120 0,122 275 0,273 165 0,164 45 0,045 100 0,106 50 0,057 79 0,08

Page 13: Vii. pemampatan citra

Metode Pemampatan Run-Length Encoding (RLE)

Cocok digunakan utk memampatkan citra yg memiliki klpök2 pixel berderajat keabuan sama.Cara: membuat pasangan nilai (p,q) utk setiap baris pixel p: derajat keabuan q: jumlah pixel berurutan dgn derajat keabuan tsb (run length)

Contoh: citra ukuran 10 x 8 pixel dgn 8 derjat keabuan berikut: 1 1 1 1 1 1 1 1 2 2 2 1 1 1 1 1 2 2 2 2 1 1 1 1 1 1 1 1 1 1 2 2 3 3 1 1 1 1 7 7 3 3 3 1 1 1 1 1 1 1 6 6 6 6 6 6 6 6 6 6 4 4 4 4 5 5 5 5 4 4 0 0 0 0 0 0 0 7 7 7

Total pixel = 80 nilai

Page 14: Vii. pemampatan citra

Pasangan nilai utk setiap baris run(1, 8)(2, 3),(1,5)(2, 4), (1, 4)(1, 6), (2, 2)(3, 2), (1, 4), (7, 2)(3, 3), (1, 5)(1, 2), (6, 6)(6, 4), (4, 4)(5, 4), (4, 2), (0, 0)(0, 5), (7, 3)

Semuanya ada 21 pasang nilai atau 21 x 2 = 42 nilai.Ukuran citra sebelum pemampatan (1 derajat keabuan = 3 bit) yaitu80 x 3 = 240 bit. Sedang ukuran Citra setelah pemampatan (derajat Keabuan = 3 bit, run length ==4 bit) yaitu (21 x 3) + (21 x 4) = 147 bit.

Nisbah pemampatan = (100%-(126/240)x100%)=38,75% yg artinya 38,75 % dr citra semula telah dimampatkan

Page 15: Vii. pemampatan citra

Versi lain metode RLE : menyatakan seluruh baris citra menjadi sebuah baris run, laluMenghitung run-length utk setiap derajat keabuan yg berurutan. Contoh:

1 2 2 2 2 3 3 3 4 43 4 4 1 16 6 6 6 6

Barisan nilai derajat keabuan: 1 2 2 2 2 3 3 3 4 4 3 4 4 1 1 6 6 6 6 6Semuanya ada 20 nilai.

Pasangan nilai dari run yg dihasilkan dgn metode RLE:(1, 1) (2, 4) (3, 3) (4, 2) (3, 1) (4, 2) (1, 1) (6, 5)Hasil pengkodean:1 1 2 4 3 3 4 2 3 1 4 2 1 1 6 5 semuanya ada 16 nilai jd hemat 4 buah nilai.

Metode RLE dpt dikombinasikan dgn metode Huffman utk mengkodekan nilai-nilai hasil pemampatan RLE utk meningkatkan nisbah pemampatan, mula-mula Dilakukan pemampatan RLE, lalu hasilnya dimampatkan dengan metode Huffman.

Page 16: Vii. pemampatan citra

Metode Pemampatan Kuantisasi (Quantizing Compression)

Metode ini mengurangi jlh keabuan, misal 256 menjd 16 yg mengurangi jumlah bit yg dibutuhkan utk representasi citra.

Misalkan m adalah jlh pixel di dlm citra semula, akan dimampatkan mjd n derajat keabuan, algoritma sbb:1. Buat histogram citra semula

identifikasi n buah klp di dlm histogram sedemikian shg tiap klp mempunyai kira-kira m/n buah pixel

3. Nyatakan tip klp dgn derajat keabuan 0 sampai n-1. Tiap pixel di dlm klp dikodekan kembali dgn nilai derajat keabuan yg baru.

Contoh: Citra dgn ukuran 5 x 8 pixel: 2 9 9 1 1 8 9 4 3 3 8 7 7 6 6 1 8 0 1 9 2 5 5 8 2 0 2 1 1 2 4 1 5 4 1 6 2 6 7 8

Yg akan dimampatkan menjadi citra dgn 4derajat keabuan (0 sampai 3), shg tiap derajat keabuan direpresentasikan dn 2 bit

Page 17: Vii. pemampatan citra

Histogram citra semula:0 **1 ********2 ******3 **4 ***5 ***6 ****7 ***8 *****9 ****

Ada 40 pixel, dikelompokkan menjd 4 klp derajat keabuan. Tiap klp ada sbyk rata2 40/4 = 10 pixel per klp:

Page 18: Vii. pemampatan citra

0 ** 1 ********

2 ****** 3 ** 4 ***

5 *** 6 **** 7 ***

8 ***** 9 ****

10

11

10

9

0

1

2

3

Citra sebelum dimampatkan: Citra setelah dimampatkan: 2 9 9 1 1 8 9 4 1 3 3 0 0 3 3 1 3 3 8 7 7 6 6 1 1 1 3 2 2 2 2 0 8 0 1 9 2 5 5 8 3 0 0 3 1 2 2 3 2 0 2 1 1 2 4 1 1 0 1 0 0 1 1 0 5 4 1 6 2 6 7 8 2 1 0 2 1 2 2 3

Page 19: Vii. pemampatan citra

Ukuran citra sebelum pemampatan (1 derajat keabuan = 4 bit): 40 x 4 bit = 160 bitUkuran citra setelah pemampatan (1 derajat keabuan = 2 bit): 40 x 2 bit = 80 bit

Nisbah pemampatan = (100%-80/160X100%) = 50%

Kelemahan: banyak informasi yg hilang, tetapi kehilangan informasi dpt diminimalkandgn menjamin setiap klp mempunyai jumlah pixel yg hampir sama