Digital Image Processing Spring 2007 Sankalp Kallakuri
[email protected] Books refererenced – Digital Image Processing by Gonzalez and Woods Fundamentals of Digital Image Processing by A K Jain Digital Picture Processing By Rosenfeld and Kak
Syllabus • • • • • • • •
Fundamentals Image Enhancement [spatial] Image Enhancement [frequency] Sampling and Quantization Image Restoration Color Image Processing Image Compression Image Reconstruction
Syllabus • Grading: Assignments - 40% Homework Mid Term Final
- 10% - 20% - 30%
• Assignments: Matlab and C/C++
IP 101 • • • • •
Colour images Grey level images File formats JPG BMP TIFF 2D representations Examples of Fields that use IP X-Rays, UV Imaging, IR Imaging, Satellite Images, Astronomy, License plates, Water Marking, Microwaves, MRI, sonograms, TEMs
Image Processing System network Image Displays
Processors
Hard Copy
IP software
Specialized IP Hardware
Image Sensors
Problem domain From Gonzalez and Woods
Mass storage
Human Eye
Vision Details • • • • • •
Lens Iris Pupil Cornea Retina Rods / Cones [distribution number use] Blind spot Photopic[bright]/ Scotopic[dim] Brightness adaptation Weber Ratio Ic I
Examples of Brightness perception
Figures from Gonzalez and Woods
Light and EM Spectrum
• • • •
Wavelength = C/ frequency Energy = h * frequency Reflected light Radiance is total amount of energy that flows from the light source • Luminance is the perceived from light source • Sensor design
Image Sensing and Acquisition • Single , Line and Array • Array Strips • Linear , circular
Bayer and RGB Filter type CCDS From wikipedia
Projection • Perspective
• Orthographic
Image Model • • • • • •
f(x,y) 0 < f(x,y) < f(x,y)=i(x,y)r(x,y) i - illuminance r- reflectance 0 < i(x,y) < 0 < r(x,y) < 1
Sampling and Quantization • • • •
In 1 dimension In 2 dimension Effects of quantisation Colour levels and bit requirements
Signals
sampling
Quantization levels
Sampled & Quantized signal
Continuous phenomenon
Two orthogonal sine waves added to each other
Continuos Image
Sampled and Quantised in 1 Dimension
Quantized and sampled
Effects are contour lines
Sampled and Quantised
Contour lines appear on both X and Y dimensions
Bit Requirements • L=2K • b= M x N x K • Example: 100 distinct colors needed to capture a phenomenon. How many bits would be needed to store an image of dimensions 49x10? 3430
Resolution • Easier to change number of Pixels rather than number of grey levels. • Optimal number to use is until there is no discernible difference by increasing the number. • Isopreference Curves : curves on the N k plane • More detail fewer grey levels. • The higher grey levels will mean better contrast perception.
Aliasing
fl
-Fs
0
0
fr
Fs
Zooming and Interpolation • • • •
Simple zoom would leave blank spaces in the grid. Nearest neighbor interpolation. Repetition of pixels [integer zoom] Bilinear Interpolation v(x,y)=ax+by+cxy+d
• Shrinking done by removal of columns and rows. • In case of non integer shrink factor the grid Is zoomed out. Interpolation is performed and then rows and columns are stripped out. • Smoothing is useful before shrinking.
Relationships between Pixels • • • • • • •
Neighborhood N4(p) N8(p) ND(p) 4 adjacency ,8 adjacency and m adjacency Digital path Connected Components Connected Set [region] Border Edge [may be local ]
Distance Measures • For Pixels p,q and z with coordinates (x,y) (s,t) and (v,w) • D(p,q) > 0 (D(p,q)=0 iff p=q) • D(p,q) = D(q,p) • D(p,z) < D(p,q) + D(q,z) • City block distance D4(p,q) = |x-s| + |y-t| • Chessboard Distance D8(p,q)=max(|x-s| + |y-t|)
Home Work & Assignment
• Label all images
• Scripts should be commented. • A read me file should be attached. • Assignments shall be incremental. • So try and complete them by the deadlines.
Homework -1 • Learn how to read and write an image in matlab. • Learn basic syntax in Matlab. • Create a 256x256 2D array. Populate every row with a sine wave which rides on a DC level of 128 with PeakPeak amplitude 220 , which has exactly two cycles fit in a row. • display this array as an image. • Create a 256x256 2D array. Populate every column with a sine wave which rides on a DC level of 10, with PeakPeak amplitude 20, which has exactly 4 cycles fit in a column. • Add the two arrays • Display the sum array as an image