CS/BIOEN 6640 Fall 2014

Introduction to Image Processing:  Syllabus F 2014 Class

Instructor: Guido Gerig (home)


Goal and Objectives:

This is an introductory course in processing grey-scale and color images --- taught at the graduate level. This course will cover both mathematical fundamentals and implementation. It will introduce students to the basic principles of processing digital signals and how those principles apply to images. These fundamentals will include sampling theory, transforms, and filtering. The course will also cover a series of basic image-processing problems including enhancement, reconstruction, segmentation, feature detection, and compression. Assignments will include several projects with software implementations and analysis of real data.

General Information:

Lecture:        M,W 1.25 - 2.45 WEB 1230
Instructor:    Guido Gerig (gerig at sci.utah.edu)
                        Office WEB 4893, office hours Mon/Wed 3-5pm
TA:                 Avantika Vardhan (avantika.vardhan at gmail.com)
                        Padmashree Shrinivasa Shetty Teeka (u0880562 at utah.edu)
                        Office hours: Mon 3-5pm, Wed 11 to 1pm, Office: WEB 2626 2nd floor

"CANVAS":     This course will use the UofU canvas system for download/upload of slides and homework assignments. All registered students have access to this course and uploaded resources.   


Textbook: Digital Image Processing, 3rd Edition , Rafael C. Gonzalez and Richard E. Woods, Prentice Hall, ISBN 013168728X, click here for more .
Students are encouraged to buy the book using their favorite purchasing method. The book is available as hardcover, as paper-back, as electronic-only version and there are used books available online. The first two chapters will be made available to have sufficient time for ordering.

The class will make use of MATLAB for assignments, s
tudents can also make use of C++ for projects but will have to be fully self-supporting w.r.t. programming). The TA's will organize a MATLAB introduction with interactive demonstrations as part of this course, see pdf and code materials further below.

MATLAB is installed on Computers in the COE 
CADE lab and is also installed on the computers of the Knowledge Commons at the Marriott Library on Campus. Remote login and operation is possible via the CADE lab and also at Knowledge Commons (info link), but can be very slow due to transfer of interactive windows.
Would students want to purchase their own copy, MATLABfor students costs $50, (or $99 including 10 toolboxes) and can be purchased directly from MathWorks. (We do not use toolboxes but MATLAB in general may be useful for many other courses and student projects). 

Overview of Course Lectures:

Detailed Schedule with Downloads:

Slides, Documents
Organization&Introduction (pdf)
Introduction DIP Brian Mac Namee (pdf, weblink)
Digital Image Processing: Preface (pdf)
Digital Image Processing: TOC (pdf)
Ch01 Introduction (pdf)
to read Ch01
Intro to Probability and Images: Images, Points, Functions
Fundamentals Ch1-2
Grey levels, probability, histograms
Ch02 Digital Image Fundamentals (pdf)
Ch03a Grey Levels, Probabilities, Histogram
to read Ch02
MATLAB Introduction: Friday 8/29 3-5pm
Special Session by TA's
Location: Evans Conference Room, WEB 3780, Warnock Engineering Building, 3rd floor.

Labor Day

Ch3: Grey levels, probability, histograms
Ch03a Grey Levels, Probabilities, Histogram DIP CH 3: pdf)
Review of Probabilities (pdf)
to read Ch03a and review probabilities
Histogram Analysis, and Mapping
Ch3: Gray levels, probability, histograms Histogram Processing

to read Ch03a
Histogram Equalization
Ch3: Histogram Processing
DIP book Chapter 3.3
handritten notes G. Gerig (pdf)
  • Quizz in class (10' beginning of lecture)
  • Project 1 out, due Wed Sept 24 midnight (pdf)
  • Images for Project1 (zip file)
Filtering with Neighborhoods: Linear Filtering
Slides Spatial Filtering (“spatial_filtering_GG.pdf”)

Guest Lecture James Fishbaugh


Filtering with Neighborhoods ctd.: Nonlinear Filtering
Guest Lecture James Fishbaugh, ctd.
Java demos: Joy of Convolution (JHU) / Joy of Convolution Discrete (JHU)
Class Notes Correlation/Convolusion David Jacobs, U-Maryland, CMSC426(pdf)
Ch 3.5 Median Filters / Ch 5.3 Mean/Median/Max_Min Filters

Filtering with Neighborhoods ctd.: Nonlinear Filtering
Canny Optimal Edge and Line Detector
Nonlinear Methods for Filtering: Nonlocal Averaging, slides spatial_filtering_GG.pdf” last part

Noise reduction: Handwritten comments by G. Gerig
Nonlocal nonlinear averaging: UINTA method by Suyash P. Awate:
itk filter http://www.itk.org/Doxygen42/html/group__ITKDenoising.html
new method for speedup: ftp://ftp.math.ucla.edu/pub/camreport/cam08-01.pdf

Canny ctd: Extension to 2-D, edge and line detection, Roberts, Prewitt, Sobel Edge operators
Slides I: Canny-Gerig-Slides.pdf

Slides II:: Edge Detection 1-D & 2-D

Textbook  Ch 3.6
Project 1 due 09/24  11.59pm

Project 2 out 09/24 (pdf)
(template matching updated 09/29)

Images Project 2
(zip file)
Canny ctd: Extension to 2-D, edge and line detection, Roberts, Prewitt, Sobel Edge operators
see above
see above

Edge detection via 1st and 2nd derivative, wrapping up
see Slides I and II edge detection above
Ch03 section 3.6

Fourier Transforms and Filtering
Slides Fourier I
handwritten notes G. Gerig Fourier I


Fourier Transforms and Filtering ctd.
Slides Fourier II
handwritten notes II, G. Gerig Fourier II

Project 2 due 10/08 11.59pm
Fall Break 10/13 to 10//17

Fourier Transforms and Filtering ctd.
Slides see above

Midterm Exam on 10/22
See description (pdf) for topics and structure of exam.
See also solutions to Quiz1 and Quiz2 on canvas, under Assignments -> Quizzes

Geometric Transformations and Warping: RBFs

Geometric Transformations ctd.:
- Trafo via sets of landmarks & via image match
- Warping with Radial Basis Functions (RBFs)
- Image Mosaicing/Stitching

Project 3 out, due 11-12-12 (pdf)

Checkerboard image

Matlab solution to overconstrained equation system (pdf).

Mosaicing, Image Panoramas

Grouping of pixels to structures: Hough Transform

Book DiP Ch10.27, pages 733-738

Excellent Java Demo I: originally developed by ETH Zurich
Excellent Java Demo II: Iocchi, University of Roma

Demo Radon Transform as used in Tomography Reconstruction: EPFL

Hough Transform ctd.,
Generalized Hough Transform

Paper Generalized Hough Transform D. Ballard 1981, Ballard-GHT-1981.pdf

Book DiP Ch10.27, pages 733-738

Generalized Hough Transform
see slides above

Project 3 due

Project 4 out, due 11/26  (pdf)
Test images: edges-lines,

Deformable model segmentation (Snakes) ctd.

Final Project  Themes (pdf)
No Class

Final Project  Themes (pdf)
Deformable model segmentation (Snakes)
Notes on curve arc-length parametrization: Materials/Curve-parametrization-notes.pdf
Final Project  Themes (pdf)
Mathematical morphology (binary)

  • Slides Gerig Motivation: pdf
  • Additional slides EECE Vanderbilt, R.A. Peters:
    • Lecture_17 Binary Morphology: pdf or ppt
    • Lecture_18 Gray scale Morphology: pdf or ppt
  • Additional short texts by Prof. Bryan Morse, BYU:
Book DiP Ch09

Excellent Java Demo (EPFL): http://bigwww.epfl.ch/demo/jmorpho/start.php

Project 4 due
Mathematical morphology (graylevel)
see materials above
Book DiP Ch09
Final Project  Themes (pdf)
Color Image Processing
  • Slides used in class: (link)
Book DiP Ch6
  • see also Brian Mac Namee (course website: http://www.comp.dit/ie/bmacnamee) (link)
  • see slides Svetlana Lazebnik (link)

Last Class: Representation and Descriptuion
  • Boundary descriptors and derived measures
    Regional descriptors and derived measures
Book DiP Ch11

Final Project Due (date of final exam for this class, link)

Final Project due 12-16-12
Slides, Documents

Other Information:

College of Engineering CADE lab infrastructure.

University of Utah and Computer Science Honor Code

Students are expected to work on their own, as instructed by the Professor. Students may discuss projects with other individuals either in the class or outside the class, but they may not receive code or results electronically from any source that is not documented in their report. Students must write their own code, conduct their own experiments, write their own reports, and take their own tests. Any use of sources (for projects or tests) that are not specifically given to the student by the Professor or TA, must be discussed with the Professor or TA or documented in the report. Any student who is found to be violating this policy will be given a failing grade for the course and will be reported to the authorities as described in the University's Student Code.
Accommodations Policy
The University of Utah seeks to provide equal access to its programs, services and activities for people with disabilities. If you will need accommodations in the class, reasonable prior notice needs to be given to the Center for Disability Services, 162 Olpin Union Building, 581-5020 (V/TDD). CDS will work with you and the instructor to make arrangements for accommodations. All written information in this course can be made available in alternative format with prior notification to the Center for Disability Services.

Homework assignments are due at 11:59pm on the given due date. Written assignments should be in
pdf format, while coding assignments should be in the form of a report and additionally be source files. Coding can be done in MATLAB (using only the base package, no toolkits) or C++. The report should clearly identify code developed by the student and eventual pieces of code obtained by external sources.


Weighted contribution of projects and exams to final grade:

* Exceptions may apply for excused absences documented by officials (e.g. medical problems), requiring additional advanced notice.


Matlab Introduction Imaging, special course lecture: