Professional Documents
Culture Documents
L0 DigitalImage 01 Old
L0 DigitalImage 01 Old
Gabriel Brostow
GV12/3072 1
Image Processing.
GV12/3072 2
Image Processing.
Motivation and Goals
• Grounding in image processing techniques
GV12/3072 3
Image Processing.
Motivation and Goals
• Grounding in image processing techniques
GV12/3072 4
Image Processing.
Transmission interference
5
Compression artefacts
6
Spilling
7
Scratches, Sensor noise
8
Bad contrast
9
Resolution Super resolution?
10
Super resolution
11
Removing motion blur
Cropped subwindow
Original image
12
After motion blur removal
[Images from Amit Agrawal]
Removing motion blur
13
14
Removing motion blur
15
Syllabus
1. The digital image
2. Image segmentation
3. Image transformations (Simon Prince)
4. Morphological operations
5. Feature characterization
GV12/3072 16
Image Processing.
Features and Object
Recognition
GV12/3072 17
Image Processing.
Syllabus (GV12/3072)
6. Image Filtering
7. Edge detection
8. Corner detection
9. Color images
10.Template matching
GV12/3072 18
Image Processing.
Why Now?
•Medicine
•Automatic or assisted diagnosis
•Image-guided surgery
•Agriculture
•Film and television
•Surveillance and police work
•Military
•http://www.cs.ubc.ca/spider/lowe/vision.html
GV12/3072 19
Image Processing.
Course content
• Lots of material!
• Some mathematics
• Calculus
• Geometry and matrix algebra
• Probability and statistics
• Exam 80%
• Honor System
GV12/3072 21
Image Processing.
Lectures and notes
• Monday 09:00-10:00 (1.20)
• Monday 11:00-13:00 (Rockefeller 337 David Sacks)
• Lab sessions
– Mon 10-11 (1.05)
– Tue 14-15 (4.06)
– Wed 11-12 (1.05)
• Web page coming soon!
• subject: “join” to gv12-request@cs.ucl.ac.uk
GV12/3072 22
Image Processing.
GV12/3072 23
Image Processing.
Unassessed CW Assignment
• Matlab introduction
• Start matlab:
% matlab or
% /opt/matlab7/bin/matlab
• Download any simple image
GV12/3072 26
Image Processing.
Unassessed CW Assignment
• Display the image in Matlab:
>> imshow(I);
• Print the image data array:
>> I
• Print the size of the image array and create a
subimage:
>> size( I )
>> Isubwindow = I(72:92, 62:82);
>> imshow(Isubwindow);
GV12/3072 27
Image Processing.
Unassessed CW Assignment
• Start the Matlab help tool (Help menu).
• In the “Contents” pane to the left of the
window. Click on MATLAB.
• Go through the “Getting Started” section.
• Continue to the “Using MATLAB” section
when you have time.
GV12/3072 28
Image Processing.
GV12/3072 29
Image Processing.
The Digital Image
GV12/3072 30
Image Processing.
Outline
• What is an image?
• What is a pixel?
• How do we store them?
GV12/3072 31
Image Processing.
What is an image?
GV12/3072 32
Image Processing.
Image as 2D signal
ultrasound temperature
34
camera image CT
Image?
>> t=rand(256,256);
>> imshow(t)
GV12/3072 39
Image Processing.
What is a pix-el?
(0,0) x
f(x,y)
(x,y)
y
42
Not a little square!
• A Pixel Is Not A Little
Square, A Pixel Is Not A
Little Square, A Pixel Is
Not A Little Square! (And
a Voxel is Not a Little
Cube),
– Alvy Ray Smith,
MS Tech Memo 6, Jul 17, 1995
GV12/3072 43
Image Processing.
Not a little square!
GV12/3072 46
Image Processing.
Where do images come from?
• Digital cameras
• MRI scanners
• Computer graphics packages
• Body scanners
• Laser range finders
• Many more…
GV12/3072 47
Image Processing.
Where do images come from?
• Digital cameras
• MRI scanners
• Computer graphics packages
• Body scanners
• Laser range finders
• Many more…
GV12/3072 48
Image Processing.
The digital camera
• A Charge Coupled Device (CCD).
Sensor
array
Image array
ADC
Lens GV12/3072 49
Image Processing.
Capturing photons
GV12/3072 51
Image Processing.
The sensor array
• Can be < 1cm2.
• An array of photosites.
• Each photosite is a
bucket of electrical
charge.
• They contain charge
proportional to the
incident light intensity
during exposure.
GV12/3072 53
Image Processing.
Analog to Digital Conversion
• The ADC measures the
charge and digitizes the
result.
• Conversion happens line
by line.
• The charges in each
photosite move down
through the sensor array. ADC
RAM
GV12/3072 54
Image Processing.
ADC
RAM
GV12/3072 55
Image Processing.
Blooming
• The buckets have finite capacity
• Photosite saturation causes blooming
GV12/3072 56
Image Processing.
Dark Current
Yohkoh satellite, 9 years apart ..
GV12/3072 57
Image Processing.
Dark Current
• CCDs produce thermally-generated charge.
• They give non-zero output even in darkness.
• Partly, this is the dark current.
• Fluctuates randomly.
GV12/3072 58
Image Processing.
GV12/3072 59
Image Processing.
GV12/3072 62
Image Processing.
Sampling 1D
63
Sampling 2D
GV12/3072 65
Image Processing.
Nyquist Frequency
GV12/3072 66
Image Processing.
Sampling grids
67
Retina-like sensors
68
Quantization
• Real valued function will get digital values –
integer values
• Quantization is lossy!!
– After quantization, the original signal cannot be
reconstructed anymore
• This is in contrast to sampling, as a sampled but
not quantized signal can be reconstructed.
• Simple quantization uses equally spaced levels
with k intervals
k 2 b
69
Quantization
11
10
01
00
70
Quantization
11
10
01
00
71
Usual quantization intervals
• Grayvalue image
8 bit = 2^8 = 256 grayvalues
• Color image RGB (3 channels)
8 bit/channel = 2^24 = 16.7Mio colors
• 12bit or 16bit from some sensors
• Nonlinear, for example log-scale
72
Photo: Paulo Barcellos Jr.
GV12/3072 73
Image Processing.
Winding Down
GV12/3072 74
Image Processing.
Properties
• Image resolution
75
Image resolution
512x512
1024x1024 512x1024
76
Geometric resolution
256 128 64 32
16 8 4 2
GV12/3072 78
Image Processing.
Lossless vs. Lossy
• Name some formats?
GV12/3072 79
Image Processing.
Aliasing and SNR
• What is the disadvantage of low sampling
resolution?
GV12/3072 80
Image Processing.
Finish
Next week:
Image segmentation
GV12/3072 81
Image Processing.