image processing using matlab practicals

Upload: rb229

Post on 19-Oct-2015

255 views

Category:

Documents


1 download

DESCRIPTION

helpful for image processing

TRANSCRIPT

  • PROGRAM 1 : TO CONVERT RGB IMAGE TO GRAY.

    >> x=imread('1.jpg'); % read image 1.jpg and store as x >> a=rgb2gray(x); % converts x into gray from RGB and store in a >> imshow(a),title('hand') % shows a , and title is hand

    PROGRAM 2 : TO STUDY GRAYSLICE.

    Grayslice : Convert grayscale image to indexed image using multilevel thresholding Syntax X = grayslice(I, n) Description X = grayslice(I, n) thresholds the intensity image I returning an indexed image in X. grayslice uses the threshold values:

    rgb2gray : Convert RGB image or colormap to grayscale Syntax I = rgb2gray(RGB) newmap = rgb2gray(map) Description I = rgb2gray(RGB) converts the truecolor image RGB to the grayscale intensity image I. rgb2gray converts RGB images to grayscale by eliminating the hue and saturation information while retaining the luminance.

  • X = grayslice(I, v) thresholds the intensity image I using the values of v, where v is a vector of values between 0 and 1, returning an indexed image in X

    >> x=imread('1.jpg');

    >> a=rgb2gray(x); %converts image x to gray and stored in variable a

    >>figure,imshow(grayslice(a,128),gray(128)),title('grayslice 128') %shows image with grayslice 128 with

    . 128 gray levels and title grayslice 128

    >>figure,imshow(grayslice(a,64),gray(64)),title('grayslice 64')

    >>figure,imshow(grayslice(a,32),gray(32)),title('grayslice 32')

    >>figure,imshow(grayslice(a,16),gray(16)),title('grayslice 16')

    >>figure,imshow(grayslice(a,8),gray(8)),title('grayslice 8')

    PROGRAM 3 : TO IMPLEMENT GRAYSLICE WITHOUT GRAY() COMMAND.

    Without using gray() command {The dynamic range of gray level is constant}

  • >> x=imread('1.jpg');

    >> a=rgb2gray(x);

    >> figure,imshow(grayslice(a,128)),title('grayslice 128')

    >> figure,imshow(grayslice(a,64)),title('grayslice 64')

    >> figure,imshow(grayslice(a,32)),title('grayslice 32')

    >> figure,imshow(grayslice(a,16)),title('grayslice 16')

    >> figure,imshow(grayslice(a,8)),title('grayslice 8')

    PROGRAM 4:

    TO CALCULATE THE COMPRESSION RATIO OF 8 BIT GRAY SCALE IMAGE:

    Imfinfo : Information about graphics file Syntax info = imfinfo(filename) Description info = imfinfo(filename) attempts to infer the format of the file from its contents.

  • >>k=imfinfo(1.jpg) % shows the information of image

    Imwrite : Write image to graphics file Quality : Decides the quality of file

    >> x=imread('1.jpg');

    >> imwrite(x,('1-1.jpg'),'Quality',80); % writes file named 1-1.jpg with quality 80 percent of image

    1.jpg

    >> imwrite(x,('1-2.jpg'),'Quality',20); % writes file named 1-2.jpg with quality 20 percent of image

    1.jpg

    A. 80% Quality B. 20% Quality

  • IB : Image bits CB : Compression bits CR : Compression ratio

    % From the above results we can see that as the quality decreases , the compression ratio increases

    PROGRAM 5 :

    TO FIND FOURIER TRANSFORM OF AN IMAGE, STUDY THE SHIFTING QUADRANTS AND CALCULATE

    MAGNITUDE AND PHASE OF AN IMAGE.

    fft2 : 2-D discrete Fourier transform Syntax Y = fft2(X) Description Y = fft2(X) returns the two-dimensional discrete Fourier transform (DFT) of X, computed with a fast Fourier transform (FFT) algorithm. The result Y is the same size as X. Fftshift : Shift zero-frequency component to center of spectrum Syntax Y = fftshift(X)

  • Description Y = fftshift(X) rearranges the outputs of fft, fft2, and fftn by moving the zero-frequency component to the center of the array. It is useful for visualizing a Fourier transform with the zero-frequency component in the middle of the spectrum

    >>x=imread('1.jpg');

    >> y=fft2(x); % calculates fft in 2d array and stores in variable y

    >>z=fftshift (y); % shifts the Quadrants of Image y and stores in variable z

    >> imshow(y),title ('Fourier Image '),figure, imshow(z), title (Shifted Quadrants)

    >>x=imread(1.jpg);

    >>y=fft2(x);

    >>mag=abs(y) % it gives the magnitude of image y

    >>ph=Angle(y) % it gives phase angle of image y

    Magnitude plot

    Phase Plot

  • PROGRAM : 6

    TO ROTATE THE IMAGE

    imrotate : Rotate image Syntax B = imrotate(A,angle) Description B = imrotate(A,angle) rotates image A by angle degrees in a counterclockwise direction around its center point. To rotate the image clockwise, specify a negative value for angle. imrotate makes the output image B large enough to contain the entire rotated image. imrotate uses nearest neighbor interpolation, setting the values of pixels in B that are outside the rotated image to 0 (zero)

    >> x=imread('1.jpg');

    >> s=imrotate(x,45); % Rotates image x by 45 degree clockwise

    >>s1=imrotate(x,90); % Rotates image x by 90 degree clockwise

    >>s2=imrotate(x,120); % Rotates image x by 120 degree clockwise

    >>figure ,imshow(s),title('45'),figure ,imshow(s1),title('90'),figure ,imshow(s2),title('120')

    45 90 120

    Program : 6a

    To study effect of rotation in complex image.

    >> x=imread('1.jpg');

    >> y=rgb2gray(x);

    >> y1=fft2(y);

    >> y2=fftshift(y1);

    >> s=imrotate(y,45);

    >> s1=fft2(s);

    >> s2=fftshift(s1);

    >> imshow(y2), figure , imshow(s2)

  • Original FFt image Rotated FFt Image