DOC PREVIEW
UT Arlington EE 5355 - Avik_Pal_project8

This preview shows page 1-2 out of 5 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 5 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 5 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 5 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

AVIK PAL 1001113861 Project5b EE 5355 Project #5b 2D-DCT Mirroring See the paper “An efficient scheme for compressed domain image mirroring” ( File : 2D-DCT Mirroring ). This paper describes that by appropriately manipulating 2D-DCT coefficients of an image block followed by the 2D-Inverse DCT, mirroring (horizontal , vertical) and rotation by 90 deg, 180 deg and 270 deg of the image block in spatial domain can be implemented. This is illustrated in Fig.1 for the Lena image. Implement these operations and reproduce Fig.1 which is based on (8x8) 2D-DCT. Repeat this process using (16x16) 2D-DCT. (a) (c) (d) (b) (e) Fig. 1. Mirroring or rotation of portion of Lean image in the 2D-DCT domain: (a) horizontal mirroring, (b) vertical mirroring, (c) rotation by 90o, (d) rotation by 180o and (e) rotation by 270o.. Programming; clc clear all; close all; X=double (imread('lena512.bmp')); X_IN=dct2(X);AVIK PAL 1001113861 Project5b % creating 8 X 8 block % I1=mat2cell(X_IN,8*ones(1,64),8*ones(1,64)); DCT=dctmtx(8); %return the identity matrix% M=eye(8); M(2,:)=(-1)*M(2,:); M(4,:)=(-1)*M(4,:); M(6,:)=(-1)*M(6,:); M(8,:)=(-1)*M(8,:); X_Org=cell(64); X_Ver=cell(64); X_Hor=cell(64); X_Rot90=cell(64); X_Rot180=cell(64); X_Rot270=cell(64); for i=1:64 for j=1:64 R=cell2mat(I1(i,j)); X_Org(i,j)=mat2cell((DCT*(R)*DCT'),8,8); X_Hor(i,j)=mat2cell(R*M,8,8); X_Ver(i,j)=mat2cell(M*R,8,8); X_Rot180(i,j)=mat2cell(M*R*M,8,8); end end subplot(2,3,1); imshow(uint8(X)); title('Original Image'); subplot(2,3,2); imshow(uint8(idct2(cell2mat(X_Hor)))); title('Horizontal Mirror Image'); subplot(2,3,3); imshow(uint8(idct2(cell2mat(X_Ver)))); title('Vertical Mirror Image'); subplot(2,3,4); imshow(uint8(idct2(cell2mat(X_Ver)))'); title(' After 90 degree rotation'); subplot(2,3,5); imshow(uint8(idct2(cell2mat(X_Rot180)))); title('After 180 degree rotation'); subplot(2,3,6); imshow(uint8(idct2(cell2mat(X_Hor))')); title('After 270 degree rotation'); % considering 16 X 16 block matrix% X1=mat2cell(X_IN,16*ones(1,32),16*ones(1,32)); DCT=dctmtx(16); M=eye(16); M(2,:)=(-1)*M(2,:); M(4,:)=(-1)*M(4,:);AVIK PAL 1001113861 Project5b M(6,:)=(-1)*M(6,:); M(8,:)=(-1)*M(8,:); M(10,:)=(-1)*M(10,:); M(12,:)=(-1)*M(12,:); M(14,:)=(-1)*M(14,:); M(16,:)=(-1)*M(16,:); X_Org=cell(32); X_Ver=cell(32); X_Hor=cell(32); X_Rot90=cell(32); X_Rot180=cell(32); X_Rot270=cell(32); for i=1:32 for j=1:32 R=cell2mat(X1(i,j)); X_Org(i,j)=mat2cell((DCT*(R)*DCT'),16,16); X_Hor(i,j)=mat2cell(R*M,16,16); X_Ver(i,j)=mat2cell(M*R,16,16); X_Rot180(i,j)=mat2cell(M*R*M,16,16); end end figure; subplot(2,3,1); imshow(uint8(X)); title('Original Image '); subplot(2,3,2); imshow(uint8(idct2(cell2mat(X_Hor)))); title('Horizontal Mirror Image'); subplot(2,3,3); imshow(uint8(idct2(cell2mat(X_Ver)))); title('Vertical Mirror image'); subplot(2,3,4); imshow(uint8(idct2(cell2mat(X_Ver)))'); title('90 degree rotation image'); subplot(2,3,5); imshow(uint8(idct2(cell2mat(X_Rot180)))); title('180 degree rotation Image'); subplot(2,3,6); imshow(uint8(idct2(cell2mat(X_Hor))')); title('270 degree rotation Image'); Visualization: 8*8 2D DCT:AVIK PAL 1001113861 Project5b (16x16) 2D-DCT. Observation: In this project I use 2D-Inverse DCT on 2D-DCT coefficients of an image block followed by the mirroring the image by 90 ,180 270 degree.in second figure I use 16*16 2D DCT. The value of DCT matrix is given here.It is observed that that matrix is 16*16 marrix.AVIK PAL 1001113861 Project5b Conclusion: We know that DCT (Discrete Cosine transformation) is a much better transform, Than other transformation in case of image compression ratios. Generally Image Compression System consists of three blocks. 1.transform (usually DCT on 8x8 blocks) 2.quantizer 3. lossless (entropy) coder The advantages of using this transformation are: 1,It eliminates all correlation 2. It works on frequency domain. 3.the transform does not save any bits ordoes not introduce any distortion So we generally prefer DCT transformation n Image compression, and this project is perfect example of


View Full Document
Download Avik_Pal_project8
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Avik_Pal_project8 and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Avik_Pal_project8 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?