BBM 413 - Fundamentals of Image Processing (Fall 2015)

Lectures: Thursday 09:00-11:45 @D8
Practicum (BBM415): Friday 09:30-12:00 @D10


Salvador Dali’s Study for the Dream Sequence in Spellbound (1945)

Instructor: Erkut Erdem

erkut-at-cs-hacettepe.edu.tr
114
+90 312 297 7500, 149

TA: Aysun Kocak

aysunkocak-at-cs-hacettepe.edu.tr
Computer Vision Lab
+90 312 297 7500, 152

Course Description

The subject matter of this advanced undergraduate course is about the fundamentals of image processing. The course is structured around key topics in image processing, including image formation, point operations and histogram processing, spatial filtering techniques, frequency domain approaches, image smoothing, edge detection and image segmentation. The main aim of this course is to provide an introduction to students who wish to specialize in interrelated disciplines like image processing, computer vision and computational photography. The students are expected to develop a foundational understanding and knowledge of concepts that underly image processing and related fields. The students will also be expected to gain hand-on experience via a set of programming assignments supplied in the complementary BBM 415 Image Processing Practicum. Hence, the students are strongly advised to register both BBM 413 and BBM 415 classes.

Prerequisites

Good math (calculus, linear algebra, statistics) and programming skills. Students are not expected to have any prior knowledge of image processing techniques.

Textbooks

  • (S) Computer Vision: Algorithms and Applications, Richard Szeliski, Springer, 2010 (draft available online).
  • (GW) Digital Image Processing, R. C. Gonzalez, R. E. Woods, 3rd Edition, Prentice Hall, 2008

Grading

  • 12% Written Assignments
  • 16% Quizzes
  • 32% Midterm Exam
  • 40% Final Exam

Schedule (Tentative)

Week Date Topic From the book Notes
1 Sep 17 Introduction S1 Slides: (pdf, 4pp)
Reading: D. Marr, Vision, The Philosophy and the Approach, 1982
2 Sep 24 No class (Religious Holiday)
3 Oct 1 Image formation and the digital camera S2.1-2.3.1 Slides: (pdf, 4pp)
Lab material: (pdf)
4 Oct 8 Color perception and color spaces S2.3.2 PA1 out (pdf, code, images)
Slides: (pdf, 4pp)
Reading: Beau Lotto's TED Talk: Optical illusions show how we see
Lab material: (pdf)
5 Oct 15 Point operations S3.1, GW3.1-3.3 Slides: (pdf, 4pp)
Lab material: (zip)
6 Oct 22 Spatial filtering S3.2-3.3 PA1 due, PA2 out: (pdf)
Slides: (pdf, 4pp)
Lab material: (zip)
7 Oct 29 No class (Republic Day)
8 Nov 5 Frequency Domain Techniques S3.4, GW4.1-4.10 PA2 due
Slides: (pdf, 4pp)
9 Nov 12 Frequency Domain Techniques (cont'd.) S3.4, GW4.1-4.10 PA3 out: (pdf)
Slides: (pdf, 4pp)
Lab material: (zip)
10 Nov 19 Midterm Exam
11 Nov 26 Image pyramids and wavelets S3.5, GW7.1-7.5 PA3 due, PA4 out: (pdf, code and data)
Slides: (pdf, 4pp)
Reading: A. Oliva, A. Torralba, P.G. Schyns, Hybrid Images, ACM Transactions on Graphics, ACM SIGGRAPH, 25-3, 527-530, 2006
Applications: Eulerian Video Magnification, Phase-Based Video Motion Processing
12 Dec 3 Gradients, edges, contours S4.2,4.3.1-4.3.2 Slides: (pdf, 4pp)
Reading: D. Marr and E. Hildreth, Theory of Edge Detection, Proc. R. Soc. Lond. B, 1980
13 Dec 10 Image segmentation S5.1-S5.2 PA4 due, PA5 out: (pdf)
Slides: (pdf, 4pp)
Reading: E. Borenstein and S. Ullman, Class-Specific, Top-down Segmentation, ECCV 2002
14 Dec 17 Image segmentation (cont'd) S5.3-5.5 Slides: (pdf, 4pp)
15 Dec 24 Image smoothing - revisited S3.2 PA5 due
Slides: (pdf, 4pp)

Additional Resources:

  • MATLAB Resources:
    • Introduction to MATLAB, by Danilo Šćepanović
    • MATLAB Tutorial, by Stefan Roth
    • MATLAB Primer, by MathWorks
    • Code Vectorization Guide, by MathWorks
    • Writing Fast MATLAB code, by Pascal Getreuer
    • MATLAB array manipulation tips and tricks, by Peter J. Acklam

  • Linear Algebra:
    • A Geometric Review of Linear Algebra, by Eero Simoncelli
    • An Introduction to Linear Algebra in Parallel Distributed Processing, by M.I. Jordan

Communication:

The course webpage will be updated regularly throughout the semester with lecture notes, programming and reading assignments and important deadlines. All other communications will be carried out through Piazza. Please enroll it by following the link https://piazza.com/hacettepe.edu.tr/fall2015/bbm413

Policies:

All work on assignments must be done individually or a group of two unless stated otherwise. You are encouraged to discuss with your classmates about the given assignments, but these discussions should be carried out in an abstract way. That is, discussions related to a particular solution to a specific problem (either in actual code or in the pseudocode) will not be tolerated.
In short, turning in someone else’s work, in whole or in part, as your own will be considered as a violation of academic integrity. Please note that the former condition also holds for the material found on the web as everything on the web has been written by someone else.

© 2015 Hacettepe University