1. ENEE631 Digital Image Processing (Spring'06). Digital Image and Video
Processing –. An Introduction. Spring '06 Instructor: K. J. Ray Liu. ECE
Department ...
Scope of ENEE631
Digital Image and Video Processing – An Introduction
z
First graduate course on image/video processing
z
Prerequisites: ENEE620 and 624, or by permission – Not assume you have much exposure on image processing at undergraduate level – Random processes and DSP are required background
z
Spring ’06 Instructor: K. J. Ray Liu
Emphasis on fundamental concepts – Provide theoretical foundations on multi-dimensional signal processing built upon pre-requisites – Coupled with assignments and projects for hands-on experience and reinforcement of the concepts
ECE Department, Univ. of Maryland, College Park
– Follow-up courses
ENEE631 Digital Image Processing (Spring'06)
image analysis, computer vision, pattern recognition multimedia communications and security
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [2]
z
Primary – A.K. Jain: Fundamentals of Digital Image Processing, Prentice-Hall, 1989. (blue cover) – R.C. Gonzalez and R.E. Woods: Digital Image Processing, Prentice Hall, 2001. (black cover) – Y. Wang, J. Ostermann, Y-Q. Zhang: Digital Video Processing and Communications, Prentice-Hall, 2001.
z
References – A.Bovik & J.Gibson: Handbook Of Image & Video Processing, Academic Press, 2000.
z
UMCP ENEE631 Slides (created by M.Wu © 2001)
Textbooks
Introduction to Image and Video Processing
Other references – Will be announced in lectures
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [3]
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [4]
1
Why Do We Process Images?
A video is worth 1000 sentences?
http://marsrovers.jpl.nasa.gov/gallery/press/opportunity/20040125a.html JPL Mars’ Panorama captured by the Opportunity
z
Rich info. from visual data
z
Examples of images around us natural photographic images; artistic and engineering drawings scientific images (satellite, medical, etc.)
z
UMCP ENEE631 Slides (created by M.Wu © 2001)
UMCP ENEE631 Slides (created by M.Wu © 2001)
A picture is worth 1000 words.
z
Enhancement and restoration – remove artifacts and scratches from an old photo/movie – improve contrast and correct blurred images
z
Transmission and storage – images from oversea via Internet, or from a remote planet
z
Information analysis and automated recognition – providing “human vision” to machines
z
Security and rights protection – encryption and watermarking
“Motion pictures” => video movie, TV program; family video; surveillance and highway/ferry camera ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [5]
ENEE631 Digital Image Processing (Spring'06)
z
List of Image and Video Processing Examples
“Exactness” – Perfect reproduction without degradation – Perfect duplication of processing result
z
Convenient & powerful computer-aided processing – Can perform rather sophisticated processing through hardware or software – Even kindergartners can do it!
z
Easy storage and transmission – 1 CD can store hundreds of family photos! – Paperless transmission of high quality photos through network within seconds
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [7]
UMCP ENEE631 Slides (created by M.Wu © 2001)
UMCP ENEE631 Slides (created by M.Wu © 2001)
Why Digital?
Lec1 – Introduction [6]
z
Compression
z
Manipulation and Restoration – Restoration of blurred and damaged images – Noise removal and reduction – Morphing
z
Applications – – – –
Visual mosaicing and virtual views Face detection Visible and invisible watermarking Error concealment and resilience in video transmission
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [8]
2
Compression
z
Color image of 600x800 pixels UMCP ENEE631 Slides (created by M.Wu © 2001)
UMCP ENEE631 Slides (created by M.Wu © 2001)
z
Denoising
– Without compression
600*800 * 24 bits/pixel = 11.52K bits = 1.44M bytes
– After JPEG compression (popularly used on web)
only 89K bytes compression ratio ~ 16:1
Movie – 720x480 per frame, 30 frames/sec, 24 bits/pixel – Raw video ~ 243M bits/sec – DVD ~ about 5M bits/sec – Compression ratio ~ 48:1
From X.Li http://www.ee.princeton.edu/~lixin/denoising.htm
“Library of Congress” by M.Wu (600x800)
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [9]
ENEE631 Digital Image Processing (Spring'06)
UMCP ENEE631 Slides (created by M.Wu © 2001)
Morphing
UMCP ENEE631 Slides (created by M.Wu © 2001)
Deblurring
Lec1 – Introduction [10]
http://www.mathworks.com/access/helpdesk/help/toolbox/images/deblurr7.shtml Princeton CS426 face morphing examples http://www.cs.princeton.edu/courses/archive/fall98/cs426/assignments/morph/morph_results.html
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [11]
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [12]
3
Visual Mosaicing
Face Detection UMCP ENEE631 Slides (created by M.Wu © 2001)
UMCP ENEE631 Slides (created by M.Wu © 2001)
– Stitch photos together without thread or scotch tape
Face detection in ’98 @ CMU CS, http://www.cs.cmu.edu/afs/cs/Web/People/har/faces.html
R.Radke – IEEE PRMI journal paper draft 5/01 ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [13]
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [14]
Invisible Watermark UMCP ENEE631 Slides (created by M.Wu © 2001)
UMCP ENEE631 Slides (created by M.Wu © 2001)
Visible Digital Watermarks
from IBM Watson web page “Vatican Digital Library”
ENEE631 Digital Image Processing (Spring'06)
– 1st & 30th Mpeg4.5Mbps frame of original, marked, and their luminance difference – human visual model for imperceptibility: protect smooth areas and sharp edges Lec1 – Introduction [15]
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [16]
4
Data Hiding for Annotating Binary Line Drawings
Error Concealment
original
UMCP ENEE631 Slides (created by M.Wu © 2001)
UMCP ENEE631 Slides (created by M.Wu © 2001)
(a) original lenna image
pixelpixel-wise difference
marked w/ “01/01/2000” 01/01/2000”
(b) corrupted lenna image
25% blocks in a checkerboard pattern are corrupted
(c) concealed lenna image
corrupted blocks are concealed via edge-directed interpolation
Examples were generated using the source codes provided by W.Zeng.
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [17]
ENEE631 Digital Image Processing (Spring'06)
Sampling and Quantization y
Grayscale image
x
– I(x,y) is the intensity of the image at the point (x,y) on the image plane.
I(x,y) takes non-negative values
250
assume the image is bounded by a rectangle [0,a]×[0,b]
200
I: [0, a] × [0, b] → [0, inf )
UMCP ENEE631 Slides (created by M.Wu © 2001)
– A grayscale image is a function I(x,y) of the two spatial coordinates of the image plane.
intensity
UMCP ENEE408G Slides (created by M.Wu & R.Liu © 2002)
What is An Image? z
150 100
50 I(x,y)
z
Color image – Can be represented by three functions, R(x,y) for red, G(x,y) for green, and B(x,y) for blue. ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [18]
0 100 80
y
60
50
rows
40 20 0
0
x
z
Computer handles “digital” data.
z
Sampling – Sample the value of the image at the nodes of a regular grid on the image plane. – A pixel (picture element) at (i, j) is the image intensity value at grid point indexed by the integer coordinate (i, j).
z
Quantization
255 (white)
– Is a process of transforming a real valued sampled image to one taking only a finite number of distinct values. – Each sampled value in a 256-level grayscale image is represented by 8 bits.
0 (black)
columns
Lec1 – Introduction [19]
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [20]
5
UMCP ENEE631 Slides (created by M.Wu © 2001)
Examples of Quantizaion
UMCP ENEE631 Slides (created by M.Wu © 2001)
Examples of Sampling
256x256
8 bits / pixel
64x64
4 bits / pixel 16x16
ENEE631 Digital Image Processing (Spring'06)
2 bits / pixel
Lec1 – Introduction [21]
ENEE631 Digital Image Processing (Spring'06)
Lec1 – Introduction [22]
6