3-bit quantization
000
analog 001
010
011
100
101
110
111
Sampling and Quantization
Black-high intensity
Gray scale: 0-255
244 255
Black-low intensity
Gaussian HPF:
TF:
𝐻𝐻 𝑢, 𝑣 = 1 − 𝑒 −𝐷
2 𝑢,𝑣 |2𝐷0 2
Soal
• Perhatikan titik spasial 3x3 yang rata-rata
empat tetangga terdekat dari suatu titik (x, y)
tetapi tidak termasuk titik itu sendiri dari rata-
rata. Temukan filter yang setara, H (u,v) pada
frekuensi domain.
Jawaban Soal
FT
• h(x,y) H(u,v)
konversi h(x,y) pada spatial domain ke H(u,v)
pada frekuensi domain.
IFT
• h(x,y) H(u,v)
IFT (Invers Fourier Transform).
Jawaban Soal
titik spasial 3x3
y-1 y y+1 Rata-rata spasial:
1
x+1 𝑔 𝑥, 𝑦 = �𝑓 𝑥 + 1 , 𝑦 + 𝑓 𝑥 − 1 , 𝑦 + 𝑓 𝑥, 𝑦 + 1
4
x + 𝑓(𝑥, 𝑦 − 1 ) �
x-1
1
𝐺 𝑢, 𝑣 = [𝐹 𝑥 + 1, 𝑦 + 𝐹 𝑥 − 1, 𝑦 + 𝐹 𝑥, 𝑦 + 1 + 𝐹(𝑥, 𝑦
4
𝐺 𝑢, 𝑣 = 𝐻 𝑢, 𝑣 × 𝐹 𝑢, 𝑣 − 1)]
=
1
𝐹 𝐾 = � 𝑓(𝑛)𝑒 −𝑗𝑗𝜋𝜋𝜋/𝑚 𝑒 +𝑗𝑗𝜋𝜋/𝑀 + 𝑒 −𝑗𝑗𝜋𝜋/𝑀 + 𝑒 +𝑗𝑗𝜋𝜋/𝑁 + 𝑒 −𝑗𝑗𝜋𝜋/𝑁 F(u,v)
4
1 +𝑗𝑗𝜋𝜋/𝑀
𝐻 𝑢, 𝑣 = 𝑒 + 𝑒 −𝑗𝑗𝜋𝜋/𝑀 + 𝑒 +𝑗𝑗𝜋𝜋/𝑁 + 𝑒 −𝑗𝑗𝜋𝜋/𝑁
4
Aliasing Distortion
• Teorema pengambilan sampel menjamin pemulihan dari gambar kontinu,
yang merupakan lowpass dan band terbatas pada frekuensi 𝐹𝑥𝑥 ⁄2 dan 𝐹𝑦𝑆 ⁄2
dari sampel yang diambil pada sampel 𝐹𝑥𝑥 dan 𝐹𝑦𝑆 per satuan jarak.
• Jika rate sampling dibawah rate Nyquist yaitu Fxs dan Fys, maka gambar
kontinu tidak dapat dipulihkan dengan tepat dari sampelnya dengan
memfilter dan gambar yang direkonstruksi mengalami distorsi yang dikenal
sebagai distorsi aliasing (aliasing distortion).
• Gambar 2.3a menunjukkan transformasi fourier dari gambar lowpass kontinu
dengan frekuensi cutoff 𝐹𝑥𝐶 dan 𝐹𝑦𝐶 dalam dua arah spasial.
• Gambar 2.3b menunjukkan transformasi fourier dari gambar sampel, dimana
frekuensi sampling sama dengan masing-masing dua kali frekuensi cutoff.
Aliasing Distortion
Ilustrasi domain Fourier dari distorsi
aliasing karena pengambilan sampel
gambar kontinu:
a. Transformasi Fourier dari gambar
lowpass kontinu.
b. Transformasi Fourier dari gambar
sampel dengan frekuensi sampling
yang persis sama dengan frekuensi
Nyquist masing-masing.
c. Transformasi Fourier dari gambar
sampel dengan undersampling
d. Transformasi Fourier dari gambar
Gambar 2.3
sampel untuk oversampling.
Aliasing Distortion
• Terlihat dari Gambar 2.3b bahwa tidak ada tumpang tindih dari
replika dan bahwa transformasi fourier dari gambar sampel identik
dengan gambar kontinu pada wilayah
−𝑓𝑥𝑥 , 𝑓𝑥𝑥 × −𝑓𝑦𝑦 , 𝑓𝑦𝑦 ,dan oleh karena itu dapat dipulihkan
dengan memfilter gambar sampel dengan filter lowpass yang ideal
dengan frekuensi cutoff sama dengan setengah frekuensi sampling.
• Ketika rate sampling kurang dari rate Nyquist, replika tumpang tindih
dan bagian dari transformasi fourier di wilayah yang ditentukan oleh
−𝑓𝑥𝑥 , 𝑓𝑥𝑥 × −𝑓𝑦𝑦 , 𝑓𝑦𝑦 tidak lagi sesuai dengan gambar
kontinu, dan oleh karena itu pemulihan tidak mungkin pada Gambar
2.3c.
Aliasing Distortion
• Dalam hal ini, frekuensi diatas 𝑓𝑥𝑥 /2 dan 𝑓𝑦𝑆 /2
sendiri sebagai frekuensi rendah dengan melipat
dan karenanya dinamakan distorsi aliasing.
• Frekuensi 𝑓𝑥𝑥 /2 dan 𝑓𝑥𝑥 /2 disebut fold over
frequencies. Ketika rate sampling lebih besar dari
rate Nyquist yang sesuai, replika tidak tumpang
tindih dan tidak ada distorsi aliasing pada Gambar
2.3d.
Contoh 2.1
• Perhatikan gambar grayscale, kurangi sampelnya
dengan faktor M, dan rekonstruksi gambar
ukuran penuh dari gambar downsampled.
Sekarang, prefilter gambar asli dengan filter
lowpass dan ulangi downsampling dan
rekonstruksi seperti sebelumnya.
Diskusikan efeknya, dan pilih nilai 4 untuk M.
Solusi 2.1
• Mari kita lihat gambar Barbara dengan ukuran 661x628 piksel. Gambar 2.4a
adalah gambar asli downsampled dengan 4 tanpa prefiltering.
• Gambar yang direkonstruksi ditunjukkan pada Gambar 2.4b. Gambar telah
dipangkas (crop) sehingga memiliki ukuran yang dapat dikelola.
• Kita dapat dengan jelas melihat distorsi aliasing pada kedua figur – pola pada
kain.
• Sekarang kita memfilter gambar asli dengan Gaussian LPF ukuran 7x7 dan
menurunkannya (downsampled) seperti sebelumnya.
• Gambar 2.4 c,d sesuai dengan gambar downsampled dan direkonstruksi
dengan prefiltering. Kita tidak melihat distorsi aliasing pada gambar
downsampled dan telah direkonstruksi ketika lowpass prefiltering diterapkan
sebelum downsampling.
• Namun, gambar yang direkonstruksi buram (blurry), yang disebabkan oleh
lowpass filtering.
Solusi 2.1
% Example2_1.m
% Resamples an original image to study the
% effects of undersampling
%
A = imread('barbara.tif');
[Height,Width,Depth] = size(A);
if Depth == 1
f = A;
else
f = A(:,:,1);
end
% downsample by a factor of M, no prefiltering
M = 4;
f1 = f(1:M:Height,1:M:Width);
figure,imshow(f1), title(['Downsampled by ' num2str(M) ':No prefiltering'])
f1 = imresize(f1,[Height,Width],'bicubic');%reconstruct to full size
figure,imshow(f1(60:275,302:585))
title('Reconstructed from downsampled image: No prefiltering')
%
% downsample by a factor of M, after prefiltering
% use a gaussian lowpass filter
f = imfilter(f,fspecial('gaussian',7,2.5),'symmetric','same');
f1 = f(1:M:Height,1:M:Width);
figure,imshow(f1), title(['Downsampled by ' num2str(M) ' after prefiltering'])
f1 = imresize(f1,[Height,Width],'bicubic');
figure,imshow(f1(60:275,302:585))
title('Reconstructed from downsampled image: with prefiltering')
Solusi 2.1
Nonideal Sampling
• Perangkat pengambilan sampel praktis menggunakan pulsa persegi
panjang dengan lebar terbatas. Artinya, fungsi sampling adalah array
pulsa persegi panjang daripada impuls. Oleh karena itu, fungsi
pengambilan sampel dapat ditulis sebagai:
• Dimana p(x,y) merupakan pulsa persegi panjang dengan batas
terbatas dan luas unit. Kemudian proses pengambilan sampel dengan
fungsi Dirac delta.
• Efek bersih dari pengambilan sampel dengan array pulsa lebar-
terbatas adalah setara dengan prefiltering gambar dengan lowpass
filter yang sesuai dengan pulsa p(x,y) diikuti oleh sampling ideal.
Nonideal Sampling
• Lowpass filter akan mengaburkan gambar. Ini
merupakan distorsi tambahan ke distorsi
aliasing yang kita bahas sebelumnya. Untuk
menggambarkan efek pengambilan sampel
nonideal terhadap gambar sampel, mari kita
lihat contoh 2.2.
Contoh 2.2
• Perhatikan gambar yang ditunjukkan pada Gambar 2.5a, dimana gambar adalah array persegi panjang
dengan ukuran 64 x 64 piksel.
• Sampel ini diambil dengan pulsa persegi panjang berukuran 32 x 32 piksel seperti yang ditunjukkan pada
Gambar 2.5b.
• Gambar sampel ditunjukkan pada Gambar 2.5c. Kita dapat dengan jelas melihat efek smear dari
pengambilan sampel dengan pulsa persegi panjang dengan lebar terbatas.
• Transformasi Fourier 2D dari gambar input, pulsa sampling, dan gambar sampel ditunjukkan masing-masing
dalam Gambar 2.5d-f.
• Karena efek smear setara dengan lowpass filtering, transformasi Fourier dari gambar sampel sedikit lebih
sempit daripada gambar input.
• Transformasi Fourier dari impuls ideal dan Transformasi Fourier dari gambar sampel yang sesuai ditunjukkan
masing-masing dalam Gambar 2.5 g,h.
• Berbeda dengan pengambilan sampel dengan pulsa dengan lebar terbatas, kita melihat bahwa Transformasi
Fourier dari gambar sampel idealnya sama dengan transformasi dari gambar input.
• Akhirnya, gambar yang direkonstruksi menggunakan lowpass filter ideal yang ditunjukkan pada Gambar 2.5i.
Ini identik dengan gambar sampel karena kita menggunakan pengambilan sampel dengan pulsa terbatas.
Nonideal Sampling
Gambar 2.5. Efek nonideal sampling: (a)
Gambar 64x64 BW, (b) Pengambilan sampel
persegi panjang berukuran 32 x 32 piksel, (c)
Gambar Sampel, (d) Transformasi Fourier 2D
dari (a), (e) Transformasi Fourier 2D dari (b), (f)
Transformasi Fourier 2D dari gambar sampel di
(b), (g) Transformasi Fourier 2D dari impuls yang
ideal, (h) Transformasi Fourier 2D dari (a)
sampel dengan impuls, dan (i) gambar dalam (c)
yang diperoleh dengan lowpass filter yang ideal.
Contoh 2.2
% Example2 2.m
% Example showing the effect of image sampling with a
% finite width pulse
% Two cases are possible: ’delta’ and ’pulse’
% delta corresponds to impulse sampling and pulse
% to sampling with finite width pulse.
% image array size is NxN pixels
% actual image area to be sampled is MxM
% TxT is the sampling pulse area
samplingType = 'pulse'; % ’delta’ or ’pulse’
N = 256; % array size is NxN
f = zeros(N,N); % image to be sampled
M = 32; % image pulse width
M1 = N/2 - M + 1; % image beginning point
M2 = N/2+M; % image end point
f(M1:M2,M1:M2) = 1; % test image has a value 1
%
Lanjutan code di slide berikutnya…!!!
Contoh 2.2
p = zeros(N,N); % sampling rectangular pulse
if strcmpi(samplingType,'delta')
p(128,128) = 1;
end
if strcmpi(samplingType,'pulse')
T = M/2; % sampling pulse width
T1 = N/2 - T + 1; % sampling pulse beginning point
T2 = N/2+T; % sampling pulse end point
p(T1:T2,T1:T2) = 1; % sampling pulse; width = 1/2 of image
end
fs = conv2(f,p,'same'); % convolution of image & pulse
figure,imshow(f,[]),title('Input Image')
figure,imshow(p,[]), title('Sampling Pulse')
figure,imshow(fs,[]),title('Sampled Image')
%
• Dimana [x] adalah bilangan bulat terdekat sama dengan atau lebih
besar dari x.
• Desain jumlah quantizer untuk menentukan interval keputusan dan
tingkat output yang sesuai dan aturan pemetaan.
• Karena ada banyak kemungkinan untuk mempartisi rentang input, kita
tertarik dengan quantizer optimal yang meminimalkan kriteria atau
fungsi biaya tertentu.
Lloyd–Max Quantizer
• Lloyd-Max Quantizer merupakan quantizer optimal dalam arti mean square
error (MSE).
• Ini bergantung pada Probability Density Function (PDF) dan jumlah level yang
diizinkan pada quantizer. Kita tunjukkan disini bahwa sampel analog input
adalah variabel acak yang dijelaskan pada PDF.
• Desain quantizer adalah sebagai berikut: Misalkan x menjadi variabel acak
skalar bernilai riil dengan pdf kontinu px(x). Desain MSE atau Lloyd-Max
Quantizer yang optimal berarti menentukan interval keputusan input {dk}
dan tingkat rekonstruksi yang sesuai {rk} untuk level L tertentu sehingga MSE
diminimalkan:
Uniform Quantizer
• Ketika PDF (Probability Density Function) dari sampel adalah
uniform, interval keputusan dan tingkat output dari Lloyd–
Max quantizer dapat dihitung secara analitis.
• Dalam hal ini, interval keputusan semuanya sama serta
interval level output dan quantizer disebut sebagai uniform
quantizer. Uniform PDF dari gambar input diberikan oleh:
Quantizer Performance
• Untuk uniform quantizer, kesalahan kuantisasi 𝑒 = 𝑥 − 𝑥� memiliki
∆ ∆
kisaran − 2 , 2 , dan juga terdistribusi secara seragam. Oleh karena
itu, MSE 𝜎𝑞2 untuk uniform quantizer dapat ditemukan dari:
• Dari Persamaan (2.43), kita menemukan bahwa setiap bit tambahan dalam
quantizer meningkatkan SNR sebesar 6 dB. Dinyatakan dengan cara lain,
Lloyd–Max Quantizer untuk sinyal dengan uniform PDF memberikan SNR 6
dB/bit kuantisasi.
Contoh 2.5
• Perhatikan gambar BW dengan 8 bits/pixel dan
requantize-nya menjadi B bits/pixel menggunakan
uniform quantizer. Tampilkan gambar asli dan
gambar requantized serta amati perbedaannya jika
ada.
Plot SNR dalam dB karena noise kuantisasi. Untuk
tujuan tampilan, anggap B menjadi 3 dan 5 bit.
Untuk memplot, variasi B dari 1 hingga 7 bits.
Quantizer Performance
Solusi Contoh 2.5
• Untuk uniform quantizer dengan B bit kuantisasi, ukuran langkah
kuantisasi ditemukan.
1. Dari daerah partisi yang ditemukan di langkah 2, temukan level output baru Rk+1
sebagai centroid partisi input.
2. Hitung distorsi rata-rata baru karena tingkat output baru. Jika perbedaan absolut
antara distorsi rata-rata sebelumnya dan saat ini relatif terhadap distorsi rata-rata
sebelumnya kurang dari 𝜀, berhenti. Batas keputusan input dihitung sebagai titik
tengah dari titik output. Jika tidak, atur k ke k+1 dan lanjutkan ke langkah 2.
Dithering
• Ketika gambar dikuantifikasi secara kasar, kita melihat efek contouring. Ini
terjadi apakah kita menggunakan uniform atau nonuniform quantizer.
• Salah satu cara untuk mengurangi contouring adalah dengan
menambahkan sedikit dither atau pseudo random noise ke gambar input
sebelum kuantisasi dan kemudian meng-quantize gambar.
• Dither mengganggu input dengan jumlah kecil sehingga piksel memiliki
nilai yang kurang lebih sama di lingkungan jatuh ke wilayah keputusan
yang berbeda dan karenanya, menentukan tingkat output yang sedikit
berbeda. Ini menghilangkan atau meminimalkan contouring.
Contoh 2.6
% Dithering.m
% Quantize an input image using a uniform quantizer
% with dithering to eliminate contouring effect
% Dither is a uniformly distributed pseudo random noise
% between [-8,8]
clear
close all
%
B = 4; % # bits of quantization
A = imread('barbara.tif');
%A = imread(’cameraman.tif’);
[Height,Width,Depth] = size(A);
if Depth == 1
f = double(A);
else
f = double(A(:,:,1));
end
Lanjutan code di slide berikutnya…!!!
Contoh 2.6
if Height>512 || Width > 512
figure,imshow(uint8(f(60:275,302:585)))
[Counts,Bins] = imhist(uint8(f(60:275,302:585)),256);
else
figure,imshow(uint8(f))
[Counts,Bins] = imhist(uint8(f),256);
end
title('Image quantized to 8 bits')
%
u = 16*(rand(Height,Width)-0.5); % dither or pseudo random noise
f1 = f + u; % noise added to input image
f2 = zeros(size(f));% quantized image without dithering
g = zeros(size(f)); % quantized image with dithering
g1 = zeros(size(f)); % quantized image with dithering with no subtraction
% after quantization
% Design a uniform quantizer with B bpp