Blog Archives

Kompresi Citra Digital Menggunakan Transformasi Wavelet


Dalam bidang pengolahan citra digital, terkadang kita menemukan kendala pada besarnya ukuran data yang dibutuhkan untuk merepresentasikan citra. Oleh karena itu dibutuhkan suatu teknik kompresi yang dapat mereduksi ukuran data pada citra. Tujuan dari kompresi citra di antaranya adalah untuk menghemat kapasitas penyimpanan data, mempercepat waktu transmisi data, dan mempercepat waktu komputasi saat pengolahan citra dilakukan. Kompresi citra bekerja dengan cara meminimalkan jumlah bit penyusun citra sehingga ukuran data menjadi lebih kecil.

Terdapat dua buah metode kompresi citra yaitu metode lossless dan metode lossy. Pada metode lossless memungkinkan data yang telah terkompresi dapat dikembalikan seperti semula. Sedangkan pada metode lossy tidak memungkinkan data yang telah terkompresi dapat dikembalikan seperti semula.

-read more->

Pengolahan Citra Digital Menggunakan Transformasi Wavelet


Perbedaan transformasi fourier dengan transformasi wavelet??

Pada bidang pengolahan sinyal digital, kita dapat menggunakan transformasi Fourier untuk memperoleh informasi berapa besar frekuensi dari sebuah sinyal, tetapi kita tidak dapat mengetahui informasi kapan frekuensi itu terjadi. Transformasi Fourier hanya cocok untuk sinyal stasioner (sinyal yang frekuensinya tidak berubah terhadap waktu). Untuk mengatasi hal tersebut maka kita dapat menggunakan transformasi Wavelet yang mampu merepresentasikan informasi waktu dan frekuensi suatu sinyal dengan baik.

Penerapan transformasi wavelet pada bidang pengolahan citra digital antara lain adalah untuk kompresi, filtering, dan analisis tekstur. Berikut ini merupakan contoh aplikasi pemrograman matlab untuk melakukan transformasi wavelet. Pemrograman meliputi proses transformasi terhadap citra grayscale ke dalam empat buah koefisien yaitu koefisien aproksimasi, koefisien detail vertikal, koefisien detail horizontal, dan koefisien detail diagonal.

1. Dekomposisi citra menggunakan wavelet haar level 1 (ukuran citra menjadi 1/2 kali ukuran semula)

clc; clear; close all;

% membaca citra grayscale
Img = imread('lena_gray_512.tif');

% dekomposisi wavelet haar level 1
[c,s] = wavedec2(Img,2,'haar');
[H1,V1,D1] = detcoef2('all',c,s,1);
A1 = appcoef2(c,s,'haar',1);
V1img = wcodemat(V1,255,'mat',1);
H1img = wcodemat(H1,255,'mat',1);
D1img = wcodemat(D1,255,'mat',1);
A1img = wcodemat(A1,255,'mat',1);

figure;
subplot(2,2,1);
imagesc(A1img);
colormap gray;
title('Approximation Coef. of Level 1');

subplot(2,2,2);
imagesc(H1img);
title('Horizontal detail Coef. of Level 1');

subplot(2,2,3);
imagesc(V1img);
title('Vertical detail Coef. of Level 1');

subplot(2,2,4);
imagesc(D1img);
title('Diagonal detail Coef. of Level 1');

-read more->

%d bloggers like this: