Introduction to Microprocesso programming and interfacing.pptx
Introductions and fundamentals
1. Digital Image Processing
Lecture 1: Introduction
Prof. Charlene Tsai
tsaic@cs.ccu.edu.tw
http://www.cs.ccu.edu.tw/~tsaic/teaching/spring2007_dip/main.html
2. Why digital image processing?
Image is better than any other information
form for human being to perceive.
Humans are primarily visual creatures –
above 90% of the information about the world
(a picture is better than a thousand words)
However, vision is not intuitive for machines
projection of 3D world to 2D images => loss of
information
interpretation of dynamic scenes, such as a
moving camera and moving objects
3. What is digital image processing?
Image understanding, image analysis, and
computer vision aim to imitate the process of
human vision electronically
Image acquisition
Preprocessing
Segmentation
Representation and description
Recognition and interpretation
4. 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.
5. 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.
6. Low level image processing
Origin (Ox,Oy)
Spacing (Sy)
Spacing (Sx)
Pixel Value
Pixel Region
3x3 neighborhood
15. 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.
16. High level image understanding
What are the high-level components?
What tasks can be achieved?
Landmarks
(bifurcation/cross
over)
Traces
(vessel centerlines)
22. Application: Surveillance
Courtesy of Simon Baker: http://www.ri.cmu.edu/projects/project_526.html
Car Tracking Project
from CMU: Tracking
cars in the surrounding
road scene and then
generating a "bird's
eye view" of the road.
24. What are the difficulties?
Poor understanding of the human vision
system
Do you see a young or an old lady?
25. 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.
26. What are the difficulties?
The interpretation is based heavily on prior
knowledge.
27. Just some fun visual perception games
Can you count the dots?
28. More …
Do you see squares?
More at http://scientificpsychic.com/graphics/index.html
29. Example: Detection of ozone layer
hole
Over the Antarctic, normal value around 300 DU
30. 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%
31. Class Format – Efficiency of Learning
This leads to in-class discussion and quizzes.
50-minute lecture
Remaining for group discussion & in-class
quiz
32. 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)
33. 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
tend to be too expensive
Prescribed:
Rafael C. Gonzalez, Richard E. Woods: Digital Image
Processing. Prentice Hall; 2nd edition, 2002
Other references (used in 2005):
Alasdair McAndrew: Introduction to Digital Image
Processing with Matlab, 2004.
34. Programming Tools
Matlab with Image Processing Toolbox for
homework exercises
MATLAB Tutorial:
http://www.mathworks.com/products/matlab/matlab_tutorial.html
MATLAB documentation:
http://www.mathworks.com/access/helpdesk/help/techdoc/matlab
.shtml
User-contributed MATLAB IP functions:
http://www.mathworks.com/matlabcentral/fileexchange/loadCateg
ory.do?objectType=category&objectId=26
35. More on Matlab
University of Colorado Matlab Tutorials:
A decent collection of Matlab tutorials, including
one 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
36. 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.
37. In-class quiz
Goal: to enhance learning
Open-book/open-notes format
Group effort of 2~3 people to encourage
discussion and peer learning