SlideShare a Scribd company logo
1 of 33
Download to read offline
TPCT’s
College of Engineering, Osmanabad
Laboratory Manual
Digital Image Processing
For
Final Year Students
Manual Prepared by
Prof. S. G.Shinde
Author COE, Osmanabad
TPCT’s
College of Engineering
Solapur Road, Osmanabad
Department of Electronics &Telecommunication
Vision of the Department:
To be recognized by the society at large as an excellent department offering
quality higher education in the Electronics & Telecommunication Engineering
field with research focus catering to the needs of the public ind being in tune
with the advancing technological revolution.
Mission of the Department:
To achieve the vision the department will
 Establish a unique learning environment to enable the student’s
face the challenges of the Electronics & Telecommunication
Engineering field.
 Promote the establishment of centers of excellence in
technology areas to nurture the spirit of innovation and
creativity among the faculty & students.
 Provide ethical & value based education by promoting activities
addressing the needs of the society.
 Enable the students to develop skill to solve complete
technological problems of current times and also to provide a
framework for promoting collaborative and multidisciplinary
activities.
College of Engineering , OSMANABAD
Technical Document
This technical document is a series of Laboratory manuals of Electronics and
Telecommunication Department and is a certified document of College of Engineering,
Osmanabad. The care has been taken to make the document error-free. But still if any error
is found. Kindly bring it to the notice of subject teacher and HOD.
Recommended by,
HOD
Approved by,
Principal
Copies:
1. Departmental Library
2. Laboratory
3. HOD
4. Principal
FORWORD
It is my great pleasure to present this laboratory manual for Final year engineering
Students for the subject of Digital Image Processing keeping in view the vast coverage
required for visualization of concepts of Digital Image Processing.
As a student, many of you may be wondering with some of the questions in your
mind regarding the subject and exactly what has been tried is to answer through this
manual.
Faculty members are also advised that covering these aspects in initial stage itself, will
greatly relived them in future as much of the load will be taken care by the enthusiasm
energies of the students once they are conceptually clear.
H.O.D.
LABORATORY MANUAL CONTENTS
This manual is intended for the Final year students of engineering branches in the subject of
Digital Image Processing.. This manual typically contains practical/Lab Sessions related
Digital Image Processing covering various aspects related to the subject to enhance
understanding.
Students are advised to thoroughly go through this manual rather than only topics
mentioned in the syllabus as practical aspects are the key to understanding and conceptual
visualization of theoretical aspects covered in the books.
Prof.S.G.Shinde.
SUBJECT INDEX
1. Do’s and Don’ts in the laboratory
2. Pre-lab (Introduction to MATLAB)
3. Lab Experiments:
1. To study the Image Processing concept.
2. To obtain histogram equalization image.
3. To Implement smoothing or averaging filter in spatial domain.
4. Program for opening and closing of the image.
5. To fill the region of interest for the image.
6. Program for edge detection algorithm.
7. Program of sharpen image using gradient mask.
8. Program for morphological operation: erosion and dilation
9. Program for DCT/IDCT computation.
4. Quiz on the subject
5. Conduction of Viva-Voce Examinations
6. Evaluation and Marking System
DOs and DON’ Ts in Laboratory:
1. Do not handle any equipment before reading the instructions/Instruction manuals
2. Read carefully the power ratings of the equipment before it is switched on whether ratings
230 V/50Hz or 115V/60 Hz. For Indian equipments, the power ratings are normally 230 V/50Hz.
If you have equipment with 115/60 Hz ratings, do not insert power plug, as our normal supply is
230 V/50 Hz, which will damage the equipment.
3. Observe type of sockets of equipment power to avoid mechanical damage
4. Do not forcefully place connectors to avoid the damage
5. Strictly observe the instructions given by the teacher/Lab Instructor
Instruction for Laboratory Teachers:
1. Submission related to whatever lab work has been completed should be done during the
next lab session.
2. The promptness of submission should be encouraged by way of marking and evaluation
patterns that will benefit the sincere students.
Pre-Lab
Introduction to MATLAB
Questions:
1] What do you mean by MATLAB?
2] Describe all MATLAB windows in detail.(command window, Graphics window ,
Editor window, Workspace, command history, current directory)
3] Describe all basic MATLAB command with example.
EXPERIMENT NO. 1
EXPERIMENT TITLE: Image Processing concept
AIM: To study the Image Processing concept.
OBJECTIVE: To study the Image Processing concept.
TOOLS REQUIRED: MATLAB
THEORY: Digital images play an important role both in daily life applications as well as in the
areas of research technology. The digital image processing refers to the manipulation of an
image by means of processor. The different elements of an image processing system include
image acquisition, image storage, image processing and display
An image is two dimensional function that represent a message of sum characteristics such as
brightness or color of viewed scene in the first mat lab program the command used from mat
lab is imcomplement
PROGRAM:
% Program to study the image processing concept
I=imread('pout.tif');
J=imcomplement(I);
figure,imshow(I)
figure,imshow(J)
K=imadjust(I,[0;0.4],[0.5;1])
figure,imshow(K)
Result:
Original Image
Complement Image
Conclusion: Thus we have studied the how to obtain complement image from the original
image.
EXPERIMENT NO. 2
EXPERIMENT TITLE: Histogram equalization image
AIM: To obtain histogram equalization image.
OBJECTIVE: To obtain histogram equalization image.
TOOLS REQUIRED: MATLAB
THEORY: Histogram equalization is a method in image processing of contrast adjustment
using the image's histogram. Histogram equalization often produces unrealistic effects in
photographs; however it is very useful for scientific images like thermal or x-ray images,
often the same class of images to which one would apply false color. Also histogram
equalization can produce undesirable effects when applied to images with low color depth.
For example, if applied to 8-bit image displayed with 8 bit gray scale it will further
reduce color depth (number of unique shades of gray) of the image. Histogram equalization
will work the best when applied to images with much higher depth than palette size,
like continuous data or 16-bit gray-scale images.
PROGRAM:
% Program to obtain histogram equalization concept
I=imread('trees.tif');
J=imcomplement(I);
imhist(J,100);
imshow(I);
title('original');
figure,imshow(J);
title('complement');
I=histeq(I);
figure,imhist(I,64);
title('equilized');
figure,imhist(J,64);
title('histogram');
n=numel(I);
p=imhist(I)/n;
figure,plot(p);
title('normalized');
K=imadjust(I,[0;1],[0.4;1],0.5);
figure,imshow(K);
title('adjusted image');
T=maketform('affine',[.3 0 0;.5 1 0;0 1 1]);
tformfwd([0,0],T);
I2=imtransform(I,T);
figure,imshow(I2);
title('forward image');
Result:
Original Histogram
Equalized Histogram
Conclusion: Thus we have obtained the Equalized Histogram from the original Histogram.
EXPERIMENT NO. 3
EXPERIMENT TITLE: Averaging filter in spatial domain
AIM: To Implement smoothing or averaging filter in spatial domain.
OBJECTIVE: To Implement smoothing or averaging filter in spatial domain.
TOOLS REQUIRED: MATLAB
THEORY: Filtering is a technique for modifying or enhancing an image. ... Mask
or filters will be defined. The general process of convolution and correlation will be
introduced via an example. Also smoothing linear filters such as box and weighted average
filters will be introduced.
In statistic and image processing, to smooth a data set is to create an
approximating function that attempts to capture important patterns in the data, while
leaving out noise or other fine-scale structures/rapid phenomena. In smoothing, the data
points of a signal are modified so individual points (presumably because of noise) are
reduced, and points that are lower than the adjacent points are increased leading to a
smoother signal. Smoothing may be used in two important ways that can aid in data
analysis by being able to extract more information from the data as long as the assumption
of smoothing is reasonable by being able to provide analyses that are both flexible and
robust. different algorithms are used in smoothing.
PROGRAM:
% Program for implementation of smoothing or averaging filter in spatial domain
I=imread('trees.tif');
subplot(2,2,1);
imshow(J);
title('original image');
f=ones(3,3)/9;
h=imfilter(I,f,'circular');
subplot(2,2,2);
imshow(h);
title('averaged image');
Result:
Conclusion: Thus we have performed the smoothing or averaging filter operation on the
Original image and we get filtered image.
EXPERIMENT NO. 4
EXPERIMENT TITLE: Opening and Closing of the image
AIM: Program for opening and closing of the image.
OBJECTIVE: Program for opening and closing of the image.
TOOLS REQUIRED: MATLAB
THEORY: In mathematical morphology, opening is the dilation of the erosion of
a set by a structuring elements B:
Together with closing, the opening serves in computer vision and image processing as a
basic workhorse of morphological noise removal. Opening removes small objects from the
foreground (usually taken as the bright pixels) of an image, placing them in the
background, while closing removes small holes in the foreground, changing small islands of
background into foreground. These techniques can also be used to find specific shapes in
an image. Opening can be used to find things into which a specific structuring element can
fit (edges, corners, ...).
In mathematical morphology, the closing of a set (binary image) A by a structuring
element B is the erosion of the dilation of that set. In image processing, closing is, together
with opening, the basic workhorse of morphological image removal. Opening removes
small objects, while closing removes small holes.
PROGRAM:
f=imread('coins.png');
se=strel('square',20);
fo=imopen(f,se);
figure,imshow(f)
title('input image');
figure,imshow(fo)
title('opening of input image');
fc=imclose(f,se);
figure,imshow(fc)
title('opening of input image');
foc=imclose(fo,se);
figure,imshow(foc)
title('closing of opened input image');
Result:
Conclusion: Thus we have obtained the opened image and closed image from the original
Image.
Practice Work:
EXPERIMENT NO. 5
EXPERIMENT TITLE: Region of Interest for the image
AIM: To fill the region of interest for the image.
OBJECTIVE: To fill the region of interest for the image
TOOLS REQUIRED: MATLAB
THEORY: A region of interest (often abbreviated ROI), are samples within a data set
identified for a particular purpose. The concept of a ROI is commonly used in many
application areas. For example, in medical imaging, the boundaries of a tumor may be
defined on an image or in a volume, for the purpose of measuring its size. The endo cardial
border may be defined on an image, perhaps during different phases of the cardiac cycle,
for example, end-systole and end-diastole, for the purpose of assessing cardiac function.
In geographical information systems(GIS), a ROI can be taken literally as a polygonal
selection from a 2D map. In computer vision and optical character recognition, the ROI
defines the borders of an object under consideration. In many applications, symbolic
(textual) labels are added to a ROI, to describe its content in a compact manner. Within a
ROI may lie individual points of interest (POIs).
PROGRAM:
% Program for ROI
clc;
close all;
load trees
I=ind2gray(X,map);
imshow(I)
title('original image');
I2=roifill;
imshow(I2)
title('OUTPUT IMAGE');
Result:
Original Image
Output image
Conclusion: Thus we have filled the interested region in the original image.
Practice Work:
EXPERIMENT NO. 6
EXPERIMENT TITLE: Edge detection algorithm
AIM: Program for edge detection algorithm.
OBJECTIVE: Program for edge detection algorithm
TOOLS REQUIRED: MATLAB
THEORY: The Canny edge detector is an edge detection operator that uses a multi-
stage algorithm to detect a wide range of edges in images. It was developed by John F.
Canny in 1986. Canny also produced a computational theory of edge detection explaining
why the technique works.
The Process of Canny edge detection algorithm can be broken down to 5 different steps:
1. Apply Gaussian filter to smooth the image in order to remove the noise
2. Find the intensity gradients of the image
3. Apply non-maximum suppression to get rid of spurious response to edge detection
4. Apply double threshold to determine potential edges
5. Track edges by hypothesis: Finalize the detection of edges by suppressing all the
other edges that are weak and not connected to strong edges.
PROGRAM:
%Program for edge detection algorithm
I=imread('coins.png');
figure,imshow(I)
title ('figure 1 original image');
h=ones(5,5)/25;
b=imfilter(I,h);
figure,imshow(b)
title ('figure 2 filtered image');
c=edge(b,'sobel');
figure,imshow(c)
title ('figure 3 edge detected output by sobel operator');
d=edge(b,'prewitt');
figure,imshow(d)
title ('figure 4 edge detected output by prewitt operator');
e=edge(b,'robert');
figure,imshow(e)
title ('figure 5 edge detected output by robert operator');
f=edge(b,'canny');
figure,imshow(f)
title ('figure 6 edge detected output by canny operator');
Result:
Edge detected image Edge detected image
Conclusion: Thus we have detected the edges in the original image.
EXPERIMENT NO. 7
EXPERIMENT TITLE: Sharpen image using gradient mask
AIM: Program of sharpen image using gradient mask.
OBJECTIVE: Program of sharpen image using gradient mask.
TOOLS REQUIRED: MATLAB
THEORY: An image gradient is a directional change in the intensity or color in an image.
The gradient of the image is one of the fundamental building blocks in image processing.
For example the Canny edge detector uses image gradient for edge detection.
Mathematically, the gradient of a two-variable function (here the image intensity function)
at each image point is a 2D vector with the components given by the derivatives in the
horizontal and vertical directions. At each image point, the gradient vector points in the
direction of largest possible intensity increase, and the length of the gradient vector
corresponds to the rate of change in that direction.
PROGRAM:
% Program of sharpen image using gradient mask
I=imread('coins.png');
subplot(2,2,1);
imshow(I)
title('Original Image');
h=fspecial('sobel');
f=imfilter(I,h,'replicate');
subplot(2,2,2);
imshow(F)
title('filtered image by sobel mask');
s=I+F;
subplot(2,2,4);
imshow(s)
title('Final o/p Image');
Result:
Original Image
Conclusion: Thus we have perform the sharpening operation using gradient mask on the
Original image.
Practice Work:
Practice Work:
EXPERIMENT NO. 8
EXPERIMENT TITLE: Erosion and Dilation
AIM: Program for morphological operation: erosion and dilation.
OBJECTIVE: Program for morphological operation: erosion and dilation.
TOOLS REQUIRED: MATLAB
THEORY: Erosion (usually represented by ⊖
) is one of two fundamental operations (the
other being dilation) in morphological image processing from which all other
morphological operations are based. It was originally defined for binary images, later being
extended to grayscale images, and subsequently to complete lattices.
With A and B as two sets in Z2 (2D integer space), the dilation of A and B is defined as
A(+)B={Z|(B ̂)Z∩A ≠ ɸ}
In the above example, A is the image while B is called a structuring element.
In the equation,(B ̂)Z simply means taking the reflections of B about its origin and shifting it
by Z. Hence dilation of A with
B is a set of all displacements, Z, such that (B ̂)Z and A overlap by at least one element.
Flipping of B about the origin and then moving it past image A is analogous to the
convolution process. In practice flipping of B is not done always.
Dilation adds pixels to the boundaries of object in an image. The number of pixels added
depends on the size and shape of the structuring element. Based on this definition, dilation
can be defined as
A(+)B={{Z|(B ̂)Z∩A} ϵ A}
PROGRAM:
% Program for morphological operations: Erosions& Dilation
f=imread('coins.png');
B=[0 1 1;1 1 1;0 1 0];
f1=imdilate(f,B);
se=strel('disk',10);
f2=imerode(f,se);
figure,imshow(f)
title('input image');
figure,imshow(f1)
title('delated image');
figure,imshow(f2)
title('eroded image');
Result:
Erroded Image
Dilated Image
Conclusion: Thus we have obtained the eroded and dilated image for the original image
Practice Work:
EXPERIMENT NO. 9
EXPERIMENT TITLE: DCT/IDCT computation
AIM: Program for DCT/IDCT computation.
OBJECTIVE: Program for DCT/IDCT computation.
TOOLS REQUIRED: MATLAB
THEORY: A discrete cosine transform (DCT) expresses a finite sequence of data points in
terms of a sum of cosine functions oscillating at different frequencies. DCTs are important
to numerous applications in science and engineering, from lossy
compression of audio (e.g. MP3) and images (e.g. JPEG) (where small high-frequency
components can be discarded), to spectral methods for the numerical solution of partial
differential equations. The use of cosine rather than sine functions is critical for
compression, since it turns out (as described below) that fewer cosine functions are needed
to approximate a typical signal, whereas for differential equations the cosines express a
particular choice of boundary conditions.
In particular, a DCT is a Fourier-related transform similar to the discrete Fourier
transform (DFT), but using only real numbers. The DCTs are generally related to Fourier
Series coefficients of a periodically and symmetrically extended sequence whereas DFTs
are related to Fourier Series coefficients of a periodically extended sequence. DCTs are
equivalent to DFTs of roughly twice the length, operating on real data with even symmetry
(since the Fourier transform of a real and even function is real and even), whereas in some
variants the input and/or output data are shifted by half a sample. There are eight standard
DCT variants, of which four are common.
Like for the DFT, the normalization factor in front of these transform definitions is merely a
convention and differs between treatments. For example, some authors multiply the
transforms by so that the inverse does not require any additional multiplicative factor.
Combined with appropriate factors of √(2/N), this can be used to make the transform
matrix orthogonal.
PROGRAM:
clc;
clear all;
close all;
m=input('Enter the basis matrix
dimension: ');
% Request user input
n=m;
alpha2=ones(1,n)*sqrt(2/n);
alpha2(1)=sqrt(1/n);
alpha1=ones(1,m)*sqrt(2/m);
alpha(1)=sqrt(1/m); % square root.
for u=0:m-1
for v=0:n-1
for x=0:m-1
for y=0:n-1
a{u+1,v+1}(x+1,y+1)=alpha1(u+1)*alpha2(v+1)*...
cos((2*x+1)*u*pi/(2*n))*cos((2*y+1)*v*pi/(2*n));
end
end
end
end
mag=a;
figure(3) % Create figure graphics object
k=1;
% Code to plot the basis
for i=1:m
for j=1:n
subplot(m,n,k)
imshow(mag{i,j},256)
k=k+1;
end
end
Enter the basis matrix dimension: 5
Result:
% Create axes in tiled positions
% Display image
Conclusion: Thus we have obtained the DCT/IDCT for the image.
4. Quiz on the Subject
1. Define image .
2. What is mean by enhancement
3. What are the different transforms used in image processing.
4. Define gradient mask.
5. What is mean by segmentation
6. Define erosion of the image.
7. What are the different types of morphological operations used in the image
processing
5. Conduction of VIVA-VOCE Examinations:
Teacher should conduct oral exams of the students with full preparation. Normally the
objective questions with guess are to be avoided. To make it meaningful, the questions should
be such that depth of the student in the subject is tested. Oral Exams are to be conducted in co-
cordial situation. Teachers taking oral exams should not have ill thoughts about each other &
courtesies should be offered to each other in case of opinion, which should be critically
suppressed in front of the students.
6.Evaluation and marking system:
Basic honesty in the evaluation and marking system is essential and in the process impartial
nature of the evaluator is required in the exam system. It is a primary responsibility of the
teacher to see that right students who really put their effort & intelligence are correctly
awarded.
The marking pattern should be justifiable to the students without any ambiguity and teacher
should see that students are faced with just circumstance.
BE-DIP-Lab-Manual.pdf
BE-DIP-Lab-Manual.pdf

More Related Content

Similar to BE-DIP-Lab-Manual.pdf

Circuit design presentation
Circuit design presentationCircuit design presentation
Circuit design presentation
Debopriyo Roy
 
MEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational ExperimentsMEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational Experiments
GIScRG
 

Similar to BE-DIP-Lab-Manual.pdf (20)

Face Detection And Tracking
Face Detection And TrackingFace Detection And Tracking
Face Detection And Tracking
 
IRJET - Deep Learning Approach to Inpainting and Outpainting System
IRJET -  	  Deep Learning Approach to Inpainting and Outpainting SystemIRJET -  	  Deep Learning Approach to Inpainting and Outpainting System
IRJET - Deep Learning Approach to Inpainting and Outpainting System
 
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learning
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learningIEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learning
IEEE 2014 MATLAB IMAGE PROCESSING PROJECTS Scale adaptive dictionary learning
 
Circuit design presentation
Circuit design presentationCircuit design presentation
Circuit design presentation
 
Analysis of student sentiment during video class with multi-layer deep learni...
Analysis of student sentiment during video class with multi-layer deep learni...Analysis of student sentiment during video class with multi-layer deep learni...
Analysis of student sentiment during video class with multi-layer deep learni...
 
Optimization Problems Solved by Different Platforms Say Optimum Tool Box (Mat...
Optimization Problems Solved by Different Platforms Say Optimum Tool Box (Mat...Optimization Problems Solved by Different Platforms Say Optimum Tool Box (Mat...
Optimization Problems Solved by Different Platforms Say Optimum Tool Box (Mat...
 
IRJET- Automated Student’s Attendance Management using Convolutional Neural N...
IRJET- Automated Student’s Attendance Management using Convolutional Neural N...IRJET- Automated Student’s Attendance Management using Convolutional Neural N...
IRJET- Automated Student’s Attendance Management using Convolutional Neural N...
 
IRJET- Survey on Face Recognition using Biometrics
IRJET-  	  Survey on Face Recognition using BiometricsIRJET-  	  Survey on Face Recognition using Biometrics
IRJET- Survey on Face Recognition using Biometrics
 
MATLAB for Researcher Course - ATIT Academy
MATLAB for Researcher  Course - ATIT AcademyMATLAB for Researcher  Course - ATIT Academy
MATLAB for Researcher Course - ATIT Academy
 
Object Oriented Programming Lab Manual
Object Oriented Programming Lab Manual Object Oriented Programming Lab Manual
Object Oriented Programming Lab Manual
 
Handwritten_Equation_Project_PDF.pdf handwritten equation
Handwritten_Equation_Project_PDF.pdf handwritten equationHandwritten_Equation_Project_PDF.pdf handwritten equation
Handwritten_Equation_Project_PDF.pdf handwritten equation
 
Ip vi sem-vsj final
Ip vi sem-vsj finalIp vi sem-vsj final
Ip vi sem-vsj final
 
Ijetcas14 447
Ijetcas14 447Ijetcas14 447
Ijetcas14 447
 
MEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational ExperimentsMEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational Experiments
 
Conv xg
Conv xgConv xg
Conv xg
 
Real-Time Face Tracking with GPU Acceleration
Real-Time Face Tracking with GPU AccelerationReal-Time Face Tracking with GPU Acceleration
Real-Time Face Tracking with GPU Acceleration
 
CUDA Accelerated Face Recognition
CUDA Accelerated Face RecognitionCUDA Accelerated Face Recognition
CUDA Accelerated Face Recognition
 
Robotic hand prototype as a didactic model.
Robotic hand prototype as a didactic model.Robotic hand prototype as a didactic model.
Robotic hand prototype as a didactic model.
 
IPT.pdf
IPT.pdfIPT.pdf
IPT.pdf
 
IRJET- American Sign Language Classification
IRJET- American Sign Language ClassificationIRJET- American Sign Language Classification
IRJET- American Sign Language Classification
 

More from NetraBahadurKatuwal (6)

wmo-td_1182_en.pdf
wmo-td_1182_en.pdfwmo-td_1182_en.pdf
wmo-td_1182_en.pdf
 
DIP_Manual.pdf
DIP_Manual.pdfDIP_Manual.pdf
DIP_Manual.pdf
 
IJAEBv12n3b.pdf
IJAEBv12n3b.pdfIJAEBv12n3b.pdf
IJAEBv12n3b.pdf
 
MatLab-ImageProcessing.pdf
MatLab-ImageProcessing.pdfMatLab-ImageProcessing.pdf
MatLab-ImageProcessing.pdf
 
Report39.pdf
Report39.pdfReport39.pdf
Report39.pdf
 
SDGs_Booklet_Web_En.pdf
SDGs_Booklet_Web_En.pdfSDGs_Booklet_Web_En.pdf
SDGs_Booklet_Web_En.pdf
 

Recently uploaded

AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
ankushspencer015
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
rknatarajan
 

Recently uploaded (20)

High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
 

BE-DIP-Lab-Manual.pdf

  • 1. TPCT’s College of Engineering, Osmanabad Laboratory Manual Digital Image Processing For Final Year Students Manual Prepared by Prof. S. G.Shinde Author COE, Osmanabad
  • 2. TPCT’s College of Engineering Solapur Road, Osmanabad Department of Electronics &Telecommunication Vision of the Department: To be recognized by the society at large as an excellent department offering quality higher education in the Electronics & Telecommunication Engineering field with research focus catering to the needs of the public ind being in tune with the advancing technological revolution. Mission of the Department: To achieve the vision the department will  Establish a unique learning environment to enable the student’s face the challenges of the Electronics & Telecommunication Engineering field.  Promote the establishment of centers of excellence in technology areas to nurture the spirit of innovation and creativity among the faculty & students.  Provide ethical & value based education by promoting activities addressing the needs of the society.
  • 3.  Enable the students to develop skill to solve complete technological problems of current times and also to provide a framework for promoting collaborative and multidisciplinary activities.
  • 4. College of Engineering , OSMANABAD Technical Document This technical document is a series of Laboratory manuals of Electronics and Telecommunication Department and is a certified document of College of Engineering, Osmanabad. The care has been taken to make the document error-free. But still if any error is found. Kindly bring it to the notice of subject teacher and HOD. Recommended by, HOD Approved by, Principal Copies: 1. Departmental Library 2. Laboratory 3. HOD 4. Principal
  • 5. FORWORD It is my great pleasure to present this laboratory manual for Final year engineering Students for the subject of Digital Image Processing keeping in view the vast coverage required for visualization of concepts of Digital Image Processing. As a student, many of you may be wondering with some of the questions in your mind regarding the subject and exactly what has been tried is to answer through this manual. Faculty members are also advised that covering these aspects in initial stage itself, will greatly relived them in future as much of the load will be taken care by the enthusiasm energies of the students once they are conceptually clear. H.O.D.
  • 6. LABORATORY MANUAL CONTENTS This manual is intended for the Final year students of engineering branches in the subject of Digital Image Processing.. This manual typically contains practical/Lab Sessions related Digital Image Processing covering various aspects related to the subject to enhance understanding. Students are advised to thoroughly go through this manual rather than only topics mentioned in the syllabus as practical aspects are the key to understanding and conceptual visualization of theoretical aspects covered in the books. Prof.S.G.Shinde.
  • 7. SUBJECT INDEX 1. Do’s and Don’ts in the laboratory 2. Pre-lab (Introduction to MATLAB) 3. Lab Experiments: 1. To study the Image Processing concept. 2. To obtain histogram equalization image. 3. To Implement smoothing or averaging filter in spatial domain. 4. Program for opening and closing of the image. 5. To fill the region of interest for the image. 6. Program for edge detection algorithm. 7. Program of sharpen image using gradient mask. 8. Program for morphological operation: erosion and dilation 9. Program for DCT/IDCT computation. 4. Quiz on the subject 5. Conduction of Viva-Voce Examinations 6. Evaluation and Marking System
  • 8. DOs and DON’ Ts in Laboratory: 1. Do not handle any equipment before reading the instructions/Instruction manuals 2. Read carefully the power ratings of the equipment before it is switched on whether ratings 230 V/50Hz or 115V/60 Hz. For Indian equipments, the power ratings are normally 230 V/50Hz. If you have equipment with 115/60 Hz ratings, do not insert power plug, as our normal supply is 230 V/50 Hz, which will damage the equipment. 3. Observe type of sockets of equipment power to avoid mechanical damage 4. Do not forcefully place connectors to avoid the damage 5. Strictly observe the instructions given by the teacher/Lab Instructor Instruction for Laboratory Teachers: 1. Submission related to whatever lab work has been completed should be done during the next lab session. 2. The promptness of submission should be encouraged by way of marking and evaluation patterns that will benefit the sincere students.
  • 9. Pre-Lab Introduction to MATLAB Questions: 1] What do you mean by MATLAB? 2] Describe all MATLAB windows in detail.(command window, Graphics window , Editor window, Workspace, command history, current directory) 3] Describe all basic MATLAB command with example.
  • 10. EXPERIMENT NO. 1 EXPERIMENT TITLE: Image Processing concept AIM: To study the Image Processing concept. OBJECTIVE: To study the Image Processing concept. TOOLS REQUIRED: MATLAB THEORY: Digital images play an important role both in daily life applications as well as in the areas of research technology. The digital image processing refers to the manipulation of an image by means of processor. The different elements of an image processing system include image acquisition, image storage, image processing and display An image is two dimensional function that represent a message of sum characteristics such as brightness or color of viewed scene in the first mat lab program the command used from mat lab is imcomplement PROGRAM: % Program to study the image processing concept I=imread('pout.tif'); J=imcomplement(I); figure,imshow(I) figure,imshow(J) K=imadjust(I,[0;0.4],[0.5;1]) figure,imshow(K) Result:
  • 11. Original Image Complement Image Conclusion: Thus we have studied the how to obtain complement image from the original image.
  • 12. EXPERIMENT NO. 2 EXPERIMENT TITLE: Histogram equalization image AIM: To obtain histogram equalization image. OBJECTIVE: To obtain histogram equalization image. TOOLS REQUIRED: MATLAB THEORY: Histogram equalization is a method in image processing of contrast adjustment using the image's histogram. Histogram equalization often produces unrealistic effects in photographs; however it is very useful for scientific images like thermal or x-ray images, often the same class of images to which one would apply false color. Also histogram equalization can produce undesirable effects when applied to images with low color depth. For example, if applied to 8-bit image displayed with 8 bit gray scale it will further reduce color depth (number of unique shades of gray) of the image. Histogram equalization will work the best when applied to images with much higher depth than palette size, like continuous data or 16-bit gray-scale images. PROGRAM: % Program to obtain histogram equalization concept I=imread('trees.tif'); J=imcomplement(I); imhist(J,100); imshow(I); title('original'); figure,imshow(J); title('complement'); I=histeq(I); figure,imhist(I,64); title('equilized'); figure,imhist(J,64); title('histogram'); n=numel(I); p=imhist(I)/n; figure,plot(p); title('normalized'); K=imadjust(I,[0;1],[0.4;1],0.5); figure,imshow(K); title('adjusted image'); T=maketform('affine',[.3 0 0;.5 1 0;0 1 1]); tformfwd([0,0],T); I2=imtransform(I,T); figure,imshow(I2); title('forward image');
  • 13. Result: Original Histogram Equalized Histogram Conclusion: Thus we have obtained the Equalized Histogram from the original Histogram.
  • 14. EXPERIMENT NO. 3 EXPERIMENT TITLE: Averaging filter in spatial domain AIM: To Implement smoothing or averaging filter in spatial domain. OBJECTIVE: To Implement smoothing or averaging filter in spatial domain. TOOLS REQUIRED: MATLAB THEORY: Filtering is a technique for modifying or enhancing an image. ... Mask or filters will be defined. The general process of convolution and correlation will be introduced via an example. Also smoothing linear filters such as box and weighted average filters will be introduced. In statistic and image processing, to smooth a data set is to create an approximating function that attempts to capture important patterns in the data, while leaving out noise or other fine-scale structures/rapid phenomena. In smoothing, the data points of a signal are modified so individual points (presumably because of noise) are reduced, and points that are lower than the adjacent points are increased leading to a smoother signal. Smoothing may be used in two important ways that can aid in data analysis by being able to extract more information from the data as long as the assumption of smoothing is reasonable by being able to provide analyses that are both flexible and robust. different algorithms are used in smoothing. PROGRAM: % Program for implementation of smoothing or averaging filter in spatial domain I=imread('trees.tif'); subplot(2,2,1); imshow(J); title('original image'); f=ones(3,3)/9; h=imfilter(I,f,'circular'); subplot(2,2,2); imshow(h); title('averaged image');
  • 15. Result: Conclusion: Thus we have performed the smoothing or averaging filter operation on the Original image and we get filtered image.
  • 16. EXPERIMENT NO. 4 EXPERIMENT TITLE: Opening and Closing of the image AIM: Program for opening and closing of the image. OBJECTIVE: Program for opening and closing of the image. TOOLS REQUIRED: MATLAB THEORY: In mathematical morphology, opening is the dilation of the erosion of a set by a structuring elements B: Together with closing, the opening serves in computer vision and image processing as a basic workhorse of morphological noise removal. Opening removes small objects from the foreground (usually taken as the bright pixels) of an image, placing them in the background, while closing removes small holes in the foreground, changing small islands of background into foreground. These techniques can also be used to find specific shapes in an image. Opening can be used to find things into which a specific structuring element can fit (edges, corners, ...). In mathematical morphology, the closing of a set (binary image) A by a structuring element B is the erosion of the dilation of that set. In image processing, closing is, together with opening, the basic workhorse of morphological image removal. Opening removes small objects, while closing removes small holes. PROGRAM: f=imread('coins.png'); se=strel('square',20); fo=imopen(f,se); figure,imshow(f) title('input image'); figure,imshow(fo) title('opening of input image'); fc=imclose(f,se); figure,imshow(fc) title('opening of input image'); foc=imclose(fo,se); figure,imshow(foc) title('closing of opened input image');
  • 17. Result: Conclusion: Thus we have obtained the opened image and closed image from the original Image. Practice Work:
  • 18. EXPERIMENT NO. 5 EXPERIMENT TITLE: Region of Interest for the image AIM: To fill the region of interest for the image. OBJECTIVE: To fill the region of interest for the image TOOLS REQUIRED: MATLAB THEORY: A region of interest (often abbreviated ROI), are samples within a data set identified for a particular purpose. The concept of a ROI is commonly used in many application areas. For example, in medical imaging, the boundaries of a tumor may be defined on an image or in a volume, for the purpose of measuring its size. The endo cardial border may be defined on an image, perhaps during different phases of the cardiac cycle, for example, end-systole and end-diastole, for the purpose of assessing cardiac function. In geographical information systems(GIS), a ROI can be taken literally as a polygonal selection from a 2D map. In computer vision and optical character recognition, the ROI defines the borders of an object under consideration. In many applications, symbolic (textual) labels are added to a ROI, to describe its content in a compact manner. Within a ROI may lie individual points of interest (POIs). PROGRAM: % Program for ROI clc; close all; load trees I=ind2gray(X,map); imshow(I) title('original image'); I2=roifill; imshow(I2) title('OUTPUT IMAGE');
  • 20. Output image Conclusion: Thus we have filled the interested region in the original image. Practice Work:
  • 21. EXPERIMENT NO. 6 EXPERIMENT TITLE: Edge detection algorithm AIM: Program for edge detection algorithm. OBJECTIVE: Program for edge detection algorithm TOOLS REQUIRED: MATLAB THEORY: The Canny edge detector is an edge detection operator that uses a multi- stage algorithm to detect a wide range of edges in images. It was developed by John F. Canny in 1986. Canny also produced a computational theory of edge detection explaining why the technique works. The Process of Canny edge detection algorithm can be broken down to 5 different steps: 1. Apply Gaussian filter to smooth the image in order to remove the noise 2. Find the intensity gradients of the image 3. Apply non-maximum suppression to get rid of spurious response to edge detection 4. Apply double threshold to determine potential edges 5. Track edges by hypothesis: Finalize the detection of edges by suppressing all the other edges that are weak and not connected to strong edges. PROGRAM: %Program for edge detection algorithm I=imread('coins.png'); figure,imshow(I) title ('figure 1 original image'); h=ones(5,5)/25; b=imfilter(I,h); figure,imshow(b) title ('figure 2 filtered image'); c=edge(b,'sobel'); figure,imshow(c) title ('figure 3 edge detected output by sobel operator'); d=edge(b,'prewitt'); figure,imshow(d) title ('figure 4 edge detected output by prewitt operator'); e=edge(b,'robert'); figure,imshow(e) title ('figure 5 edge detected output by robert operator'); f=edge(b,'canny'); figure,imshow(f)
  • 22. title ('figure 6 edge detected output by canny operator'); Result: Edge detected image Edge detected image Conclusion: Thus we have detected the edges in the original image.
  • 23. EXPERIMENT NO. 7 EXPERIMENT TITLE: Sharpen image using gradient mask AIM: Program of sharpen image using gradient mask. OBJECTIVE: Program of sharpen image using gradient mask. TOOLS REQUIRED: MATLAB THEORY: An image gradient is a directional change in the intensity or color in an image. The gradient of the image is one of the fundamental building blocks in image processing. For example the Canny edge detector uses image gradient for edge detection. Mathematically, the gradient of a two-variable function (here the image intensity function) at each image point is a 2D vector with the components given by the derivatives in the horizontal and vertical directions. At each image point, the gradient vector points in the direction of largest possible intensity increase, and the length of the gradient vector corresponds to the rate of change in that direction. PROGRAM: % Program of sharpen image using gradient mask I=imread('coins.png'); subplot(2,2,1); imshow(I) title('Original Image'); h=fspecial('sobel'); f=imfilter(I,h,'replicate'); subplot(2,2,2); imshow(F) title('filtered image by sobel mask'); s=I+F; subplot(2,2,4); imshow(s) title('Final o/p Image');
  • 24. Result: Original Image Conclusion: Thus we have perform the sharpening operation using gradient mask on the Original image. Practice Work: Practice Work:
  • 25. EXPERIMENT NO. 8 EXPERIMENT TITLE: Erosion and Dilation AIM: Program for morphological operation: erosion and dilation. OBJECTIVE: Program for morphological operation: erosion and dilation. TOOLS REQUIRED: MATLAB THEORY: Erosion (usually represented by ⊖ ) is one of two fundamental operations (the other being dilation) in morphological image processing from which all other morphological operations are based. It was originally defined for binary images, later being extended to grayscale images, and subsequently to complete lattices. With A and B as two sets in Z2 (2D integer space), the dilation of A and B is defined as A(+)B={Z|(B ̂)Z∩A ≠ ɸ} In the above example, A is the image while B is called a structuring element. In the equation,(B ̂)Z simply means taking the reflections of B about its origin and shifting it by Z. Hence dilation of A with B is a set of all displacements, Z, such that (B ̂)Z and A overlap by at least one element. Flipping of B about the origin and then moving it past image A is analogous to the convolution process. In practice flipping of B is not done always. Dilation adds pixels to the boundaries of object in an image. The number of pixels added depends on the size and shape of the structuring element. Based on this definition, dilation can be defined as A(+)B={{Z|(B ̂)Z∩A} ϵ A} PROGRAM: % Program for morphological operations: Erosions& Dilation f=imread('coins.png'); B=[0 1 1;1 1 1;0 1 0]; f1=imdilate(f,B); se=strel('disk',10); f2=imerode(f,se); figure,imshow(f) title('input image'); figure,imshow(f1)
  • 27. Dilated Image Conclusion: Thus we have obtained the eroded and dilated image for the original image Practice Work:
  • 28. EXPERIMENT NO. 9 EXPERIMENT TITLE: DCT/IDCT computation AIM: Program for DCT/IDCT computation. OBJECTIVE: Program for DCT/IDCT computation. TOOLS REQUIRED: MATLAB THEORY: A discrete cosine transform (DCT) expresses a finite sequence of data points in terms of a sum of cosine functions oscillating at different frequencies. DCTs are important to numerous applications in science and engineering, from lossy compression of audio (e.g. MP3) and images (e.g. JPEG) (where small high-frequency components can be discarded), to spectral methods for the numerical solution of partial differential equations. The use of cosine rather than sine functions is critical for compression, since it turns out (as described below) that fewer cosine functions are needed to approximate a typical signal, whereas for differential equations the cosines express a particular choice of boundary conditions. In particular, a DCT is a Fourier-related transform similar to the discrete Fourier transform (DFT), but using only real numbers. The DCTs are generally related to Fourier Series coefficients of a periodically and symmetrically extended sequence whereas DFTs are related to Fourier Series coefficients of a periodically extended sequence. DCTs are equivalent to DFTs of roughly twice the length, operating on real data with even symmetry (since the Fourier transform of a real and even function is real and even), whereas in some variants the input and/or output data are shifted by half a sample. There are eight standard DCT variants, of which four are common. Like for the DFT, the normalization factor in front of these transform definitions is merely a convention and differs between treatments. For example, some authors multiply the transforms by so that the inverse does not require any additional multiplicative factor. Combined with appropriate factors of √(2/N), this can be used to make the transform matrix orthogonal. PROGRAM: clc; clear all; close all; m=input('Enter the basis matrix dimension: '); % Request user input n=m; alpha2=ones(1,n)*sqrt(2/n); alpha2(1)=sqrt(1/n); alpha1=ones(1,m)*sqrt(2/m); alpha(1)=sqrt(1/m); % square root. for u=0:m-1
  • 29. for v=0:n-1 for x=0:m-1 for y=0:n-1 a{u+1,v+1}(x+1,y+1)=alpha1(u+1)*alpha2(v+1)*... cos((2*x+1)*u*pi/(2*n))*cos((2*y+1)*v*pi/(2*n)); end end end end mag=a; figure(3) % Create figure graphics object k=1; % Code to plot the basis for i=1:m for j=1:n subplot(m,n,k) imshow(mag{i,j},256) k=k+1; end end Enter the basis matrix dimension: 5 Result: % Create axes in tiled positions % Display image
  • 30. Conclusion: Thus we have obtained the DCT/IDCT for the image.
  • 31. 4. Quiz on the Subject 1. Define image . 2. What is mean by enhancement 3. What are the different transforms used in image processing. 4. Define gradient mask. 5. What is mean by segmentation 6. Define erosion of the image. 7. What are the different types of morphological operations used in the image processing 5. Conduction of VIVA-VOCE Examinations: Teacher should conduct oral exams of the students with full preparation. Normally the objective questions with guess are to be avoided. To make it meaningful, the questions should be such that depth of the student in the subject is tested. Oral Exams are to be conducted in co- cordial situation. Teachers taking oral exams should not have ill thoughts about each other & courtesies should be offered to each other in case of opinion, which should be critically suppressed in front of the students. 6.Evaluation and marking system: Basic honesty in the evaluation and marking system is essential and in the process impartial nature of the evaluator is required in the exam system. It is a primary responsibility of the teacher to see that right students who really put their effort & intelligence are correctly awarded. The marking pattern should be justifiable to the students without any ambiguity and teacher should see that students are faced with just circumstance.