EE 5806: Topics in Image Processing Final Examination
General Information:
• This is an online open-book examination taken in Canvas.
• Duration of the examination is 120 minutes (2 hours). An additional 15 minutes will be
given afterwards for you to upload your answers. As such, the total time for the
examination is 120+15=135 minutes.
• No material will be accepted beyond the end of the 135 minutes.
• No material will be accepted through email without a very strong justification.
Course outline
1. Introduction to Digital Imaging
(a) Image Sensing and Acquisition
• Describe the operational principles of CCD and CMOS sensors.
• List the major differences between CCD and CMOS image sensors.
• Know how colour images are captured by CCD and CMOS image sensors.
(b) Digital Imaging Fundamentals
• Know the definitions of the digital image (pixel, gray level) and the colour map.
• Know the following terms relating to digitalization
o Sampling
o Quantization
o Dynamicrange
o Spatialresolution
Pixelation
o Brightnessresolution
Brightness contouring
• Know the amount of storage required for an image.
• Know how nearest neighbor and bilinear interpolation work.
(c) Colour Fundamentals
• Know different colour models introduced and what they are good for. 2. Point Operations
• Define point operations.
(a) Common Point Operations
• Describe the following point operations:
o Linearpointoperation o Logarithmic
o Powerlaw
o Windowandlevel
• Know when these point operations are used.
(b) Histogram Processing
• Know how to derive the expression for output histogram given input histogram and point
operation in continuous gray-level domain.
• Know how to apply the expression.
(c) HistogramEqualization
• Histogram equalization for images with continuous or discrete gray levels. Expected to
know formula.
1
(d) Histogram Specification (Matching)
• Obtain point operations achieving histogram specification in continuous and discrete
domains.
3. Spatial Filtering
(a) Need to know how to perform convolution and correlation for 2D discrete images. Know the
difference between convolution kernel and computational molecule.
(b) Know how borders are handled in the correlation operation.
(c) Smoothing spatial filters (Remove noise)
• Boxcar filter, Gaussian filter (involves convolution)
• Order-statistic filters (do not involve convolution)
(d) Sharpening spatial filters (Feature enhancement)
• First derivative filters (e.g., Prewitt filter, Sobel filter – need to know how they are
defined). Need to know how to apply these filters in x and y directions and calculate
gradient magnitude.
• Second derivative filters (Laplacian).
(e) Use Laplacian for image enhancement. Need to know how one correlation operation can be used to compute . Which property of linear filtering is used?
4. Transform Domain Filtering
(a) Fourier Transform in 1D and 2D
• Know Fourier transform for continuous signals and discrete signal.
• Describe sampling theorem in terms of the Fourier transforms of pulse samples and
discrete samples.
• Know discrete Fourier transform
o Knowhowtoperformcircularconvolution
o Describewhywraparounderroroccurs.
o Knowhowtoperformlinearconvolutionviacircularconvolution.
(b) Frequency Domain Filtering
• Why do we filter in frequency domain instead of spatial domain?
• Know the effect of circular convolution in 2D filtering and how to mitigate the effect.
• Know ideal, Gaussian and Butterworth lowpass filters.
• Design lowpass filter using ideal, Gaussian and Butterworth filters.
• Know ideal, Gaussian, Butterworth bandpass and bandreject filters.
• Know how to construct a notch filters based on ideal, Gaussian and Butterworth filters.
5. Image Restoration and Reconstruction
(a) Know noise removal filters: Arithmetic mean filter, geometric mean filter, median filter,
alpha-trimmed mean filter, adaptive median filter
(b) Know three ways for estimating impulse response: by observation, experimentation and
modelling.
(c) Know inverse filtering
• What issue does it have?
• How to mitigate this issue?
(d) Know Wiener filtering
• What does it optimize?
• What issue does it have?
2
• How to mitigate this issue?
(e) Image Reconstruction from Projections
• Know Radon Transform
• Define “sinogram”. Why is this representation called sinogram?
• Describe backprojection. Describe mathematically why backprojection results in a blurred
image.
• Know the Fourier-slice theorem
• Define “filtered backprojection”. Describe the filter that should be used mathematically.
List the steps involved in filtered backprojection.
6. Geometric operations
(a) Linear transformation: expected to know formulae to relate coordinates in the input image
with those in the output image
• Translation
• Scaling about origin or an arbitrary point
• Rotation about origin or an arbitrary point
• Composite transformation. Order of operation does matter.
(b) For
transformation using Python built-in tool [i.e., need to be able to determine T passed to cv2.warpAffine(im, T, (width, height)) for the transformation described in (a).]
(c) Define forward mapping and backward mappings. Why are the advantages of using backward mapping? Need to be able to perform the backward mapping given the forward mapping [i.e., need to be able to express (i,j) in terms of (i’,j’).]
(d) Grey level interpolation
• Nearest neighbour • Bilinear
(e) Landmark registration: expected to know how the four transformation parameters, a, b, ti and tj, are derived.
7. Morphological Image Processing
(a) Binary morphological operations
• Know how to perform erosion and dilation.
• Know the applications of erosion and dilation.
• Know how to perform opening and closing.
• Know the geometric interpretations of opening and closing.
(b) Connected components and labelling
• Identify connected components based on the 4-connectedness and 8-connectedness
definitions.
• Understand the two-pass labelling algorithm.
(c) Morphological algorithms
• Hit-Or-Miss transform
• Boundary extraction
• Region filling
• Skeletonization (no need to know detailed algorithm)
all transformation described in (a), know how to define the affine matrix to implement the
3
(d) Grayscale Morphology
• Know how to perform erosion and dilation.
• Know how to perform opening and closing.
• Know the geometric interpretations of opening and closing.
• Know the following grayscale morphology algorithms: morphological smoothing,
morphological gradient, top-hat and bottom-hat transformations
8. Image segmentation (a) Edge detection
• Know how to get 1st and 2nd derivatives of an image using convolution/correlation.
• Know how to compute gradient vector, its magnitude and angle at each pixel.
• Know how to use the Laplacian of Gaussian (LoG) filter
• Know how to generate an edge map of an image by finding the zero-crossing in an LoG
filtered image.
• Know the three criteria for an optimal edge detected as defined by Canny.
• Know how to generate an edge map of an image using the Canny edge detector.
(b) Discrete dynamic contour (DDC)
• Know what is a deformable model for segmentation.
• Expected to be able to calculate the following items: , ̂ , ̂ , ̂ and ( ).
• Expected to know how internal force is computed to avoid collapsing of a closed contour to a point.
• Given an external force, expected to calculate the actual external force applied to DDC to avoid clustering of vertices.
4