Digital Image Processing
Lecture 1: Introduction
Prof. Charlene Tsai
[email protected]http://www.cs.ccu.edu.tw/~tsaic/teaching/spring2007_dip/main.html
Why digital image processing?
Image is better than any other information for
m for human being to perceive.
Humans are primarily visual creatures – abov
e 90% of the information about the world (a pi
cture is better than a thousand words)
However, vision is not intuitive for machines
projection of 3D world to 2D images => loss of inf
ormation
interpretation of dynamic scenes, such as a movin
g camera and moving objects
What is digital image processing?
Image understanding, image analysis, and co
mputer vision aim to imitate the process of hu
man vision electronically
Image acquisition
Preprocessing
Segmentation
Representation and description
Recognition and interpretation
General procedures
Goal: to obtain similar effect provided by
biological systems
Two-level approaches
Low level image processing. Very little knowledge
about the content or semantics of images
High level image understanding. Imitating human
cognition and ability to infer information contained
in the image.
Low level image processing
Very little knowledge about the content of the
images.
Data are the original images, represented as
matrices of intensity values, i.e. sampling of a
continuous field using a discrete grid.
Focus of this course.
Low level image processing
3x3 neighborhood
Origin (Ox,Oy)
Pixel Value
Pixel Region
Spacing (Sy)
Spacing (Sx)
Low level image processing
Image compression
Noise reduction
Edge extraction
Contrast enhancement
Segmentation
Thresholding
Morphology
Image restoration
Low level image processing
Image compression
Noise reduction
Edge extraction
Contrast enhancement
Segmentation
Thresholding
Morphology
Image restoration
Low level image processing
Image compression
Noise reduction
Edge extraction
Contrast enhancement
Segmentation
Thresholding
Morphology
Image restoration
Low level image processing
Image compression
Noise reduction
Edge extraction
Contrast enhancement
Segmentation
Thresholding
Morphology
Image restoration
Low level image processing
Image compression
Noise reduction
Edge extraction
Contrast enhancement
Segmentation
Thresholding
Morphology
Image restoration
Low level image processing
Image compression
Noise reduction
Edge extraction
Contrast enhancement
Segmentation
Thresholding
Morphology
Image restoration
Low level image processing
Image compression
Noise reduction
Edge extraction
Contrast enhancement
Segmentation
Thresholding
Morphology
Image restoration Dilation
Erosion
Low level image processing
Image compression
Noise reduction
Edge extraction
Contrast enhancement
Segmentation
Thresholding
Morphology
Image restoration
High level image understanding
To imitate human cognition according to the
information contained in the image.
Data represent knowledge about the image
content, and are often in symbolic form.
Data representation is specific to the high-
level goal.
High level image understanding
What are the high-level components?
What tasks can be achieved?
Landmarks
Traces (bifurcation/cross
(vessel centerlines) over)
Applications
Medicine
Defense
Meteorology
Environmental science
Manufacture
Surveillance
Crime investigation
Applications: Medicine
CT PET PET/CT
(computed (Positron Emission
Tomography) Tomography
Applications: Meteorology
Applications: Environmental Science
Applications: Manufacture
Application: Surveillance
Car Tracking Project
from CMU: Tracking
cars in the surrounding
road scene and then
generating a "bird's
eye view" of the road.
Courtesy of Simon Baker: http://www.ri.cmu.edu/projects/project_526.html
Applications: Crime Investigation
Fingerprint enhancement
What are the difficulties?
Poor understanding of the human vision
system
Do you see a young or an old lady?
What are the difficulties?
Human vision system tends to group related
regions together, not odd mixture of the two
alternatives.
Attending to different regions or contours
initiate a change of perception
This illustrates once more that vision is an
active process that attempts to make sense
of incoming information.
What are the difficulties?
The interpretation is based heavily on prior
knowledge.
Just some fun visual perception
games
Can you count the dots?
More …
Do you see squares?
More at http://scientificpsychic.com/graphics/index.html
Example: Detection of ozone layer
hole
Over the Antarctic, normal value around 300 DU
Class Format – Efficiency of Learning
What we read 10%
What we hear 20%
What we see 30%
What we hear + see 50%
What we say ourselves 70%
What we do ourselves 90%
Class Format – Efficiency of Learning
This leads to in-class discussion and quizzes.
50-minute lecture
Remaining for group discussion & in-class
quiz
Course requirements
In-class quizzes 10%
4 Homework assignments 25%
Final project 25%
Midterm exam 20%
Final exam 20%
Peer learning is encouraged
BUT, NO PLAGIARISM!!!
(20% deduction if caught)
Textbooks
Problems in picking a good textbook:
Hard to find a textbook of the right level --- too easy or too
hard.
Hard to find a textbook of the right price --- good books ten
d to be too expensive
Prescribed:
Rafael C. Gonzalez, Richard E. Woods: Digital Image Proc
essing. Prentice Hall; 2nd edition, 2002
Other references (used in 2005):
Alasdair McAndrew: Introduction to Digital Image Processin
g with Matlab, 2004.
Programming Tools
Matlab with Image Processing Toolbox for ho
mework exercises
MATLAB Tutorial: http://www.mathworks.com/products/matl
ab/matlab_tutorial.html
MATLAB documentation:
http://www.mathworks.com/access/helpdesk/help/techdoc/matlab
.shtml
User-contributed MATLAB IP functions: http://www.m
athworks.com/matlabcentral/fileexchange/loadCategory.do?objec
tType=category&objectId=26
More on Matlab
University of Colorado Matlab Tutorials:
A decent collection of Matlab tutorials, including o
ne focusing on image processing
http://amath.colorado.edu/computing/Matlab/tutorials.html
http://amath.colorado.edu/courses/4720/2000Spr/Labs/Workshee
ts/Matlab_tutorial/matlabimpr.html
Term project
Group project of 2~3 people
I decide the format of the term project
You decide your own topic that interests you
So, starting thinking about it!!!
You may implement your project with any
programming language of your preference.
In-class quiz
Goal: to enhance learning
Open-book/open-notes format
Group effort of 2~3 people to encourage
discussion and peer learning
Looking ahead: lecture2
Image types
File format
Matlab programming.