Digital Image Processing Problem Set 5 for ECE 6258 at Georgia Tech, Assignments of Digital Signal Processing

Problem set 5 for the digital image processing course (ece 6258) at the georgia institute of technology, issued in fall 2003. The problem set includes instructions for implementing a discrete cosine transform (dct) of block size 8 Ɨ 8 and its inverse, quantizing dct coefficients using a uniform quantizer, determining the entropy of dct coefficients, and producing a graph showing the rate-distortion function.

Typology: Assignments

Pre 2010

Uploaded on 08/05/2009

koofers-user-c7u
koofers-user-c7u šŸ‡ŗšŸ‡ø

5

(1)

10 documents

1 / 2

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
GEORGIA INSTITUTE OF TECHNOLOGY
School of Electrical and Computer Engineering
ECE 6258
Digital Image Processing
Fall 2003
Problem Set #5
Issued: Monday, October 20, 2003
Due (live): Wednesday, October 29, 2003
Due (video): Wednesday, November 10, 2003
Problem 5.1 (Blockwise DCT) The DCT-II is a separable unitary transform, so that
theDCTofanimageblockofsizeMƗMis X=ATxA, where xis the MƗM
image block and Ais the MƗMtransform matrix containing elements
aik =αicos (2k+1)iĻ€
2Mī˜‚for i, k =0,1,...,M āˆ’1
with
α0=1
M
αi=2
Māˆ€i>0.
Implement a DCT of block size 8 Ɨ8 and its inverse. Print out the values of the
matrix A. Since we do not care about fast algorithms here, you can simply use matrix
multiplications in Matlab.
Problem 5.2 (Uniform Quantizer) Implement quantization of the coefficients by a uni-
form (mid-tread) quantizer with for an arbitrary step size Q. Use the same step-size
for all coefficients. Using the boats image on the class website (ā€˜boats.gif’), measure
the mean-squared quantization error for Q=2
0,21,22,23,24, ..., 27.
Problem 5.3 (Entropy of the DCT coefficients) To estimate the bit-rate required to
encode the coefficients, we will assume that each coefficient is coded at a bit-rate
equal to its entropy, but that each of the 64 DCT coefficients has a different en-
tropy (fractions are OK). Thus we need to determine the entropy for coefficient (0,0),
the entropy for coefficient (1,0), etc. These entropies will vary with the amount
of quantization that is applied to the DCTs. The average number of bits/pixel
is then equal to 1/64*sum(entropy of each coefficient). Determine the bit-rate for
Q=2
0,21,22,23,24, ..., 29, using block DCTs from the images boats,mandrill,and
peppers, which are available on the web site. (It is OK to use the Matlab function
dct2 instead of your function in Problem 5.1 to speed up the program.)
Problem 5.4 (Rate-distortion Function) The PSNR will be used to measure the qual-
ity of the reconstructed images. It is defined for 8-bit images as follows:
PSNR =10log
10 ī˜„2552
dī˜…[dB]
pf2

Partial preview of the text

Download Digital Image Processing Problem Set 5 for ECE 6258 at Georgia Tech and more Assignments Digital Signal Processing in PDF only on Docsity!

GEORGIA INSTITUTE OF TECHNOLOGY

School of Electrical and Computer Engineering

ECE 6258 Digital Image Processing Fall 2003

Problem Set #

Issued: Monday, October 20, 2003 Due (live): Wednesday, October 29, 2003 Due (video): Wednesday, November 10, 2003

Problem 5.1 (Blockwise DCT) The DCT-II is a separable unitary transform, so that the DCT of an image block of size M Ɨ M is X = AT^ xA, where x is the M Ɨ M image block and A is the M Ɨ M transform matrix containing elements

aik = αi cos

( (2k + 1)iπ 2 M

) for i, k = 0, 1 ,... , M āˆ’ 1

with

α 0 =

√ 1 M αi =

√ 2 M

āˆ€i > 0.

Implement a DCT of block size 8 Ɨ 8 and its inverse. Print out the values of the matrix A. Since we do not care about fast algorithms here, you can simply use matrix multiplications in Matlab.

Problem 5.2 (Uniform Quantizer) Implement quantization of the coefficients by a uni- form (mid-tread) quantizer with for an arbitrary step size Q. Use the same step-size for all coefficients. Using the boats image on the class website (ā€˜boats.gif’), measure the mean-squared quantization error for Q = 2^0 , 21 , 22 , 23 , 24 , ..., 27.

Problem 5.3 (Entropy of the DCT coefficients) To estimate the bit-rate required to encode the coefficients, we will assume that each coefficient is coded at a bit-rate equal to its entropy, but that each of the 64 DCT coefficients has a different en- tropy (fractions are OK). Thus we need to determine the entropy for coefficient (0,0), the entropy for coefficient (1,0), etc. These entropies will vary with the amount of quantization that is applied to the DCTs. The average number of bits/pixel is then equal to 1/64*sum(entropy of each coefficient). Determine the bit-rate for Q = 2^0 , 21 , 22 , 23 , 24 , ..., 29 , using block DCTs from the images boats, mandrill, and peppers, which are available on the web site. (It is OK to use the Matlab function dct2 instead of your function in Problem 5.1 to speed up the program.)

Problem 5.4 (Rate-distortion Function) The PSNR will be used to measure the qual- ity of the reconstructed images. It is defined for 8-bit images as follows:

P SN R = 10 log 10

( 2552 d

) [dB]

The average distortion, d is the mean-squared error between the original and recon- structed images. Using the same quantizers and the same images that you used in the previous problem, produce a graph showing distortion as a function of bit-rate. This graph should show the PSNR we should expect as a function of bit-rate. (Hint: Since the DCT is unitary, you can use Parseval’s relation to compute the distortion directly from the DCT coefficients.)