BBM 413 - Fundamentals of Image Processing (Fall 2014)

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


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: Levent Karacan

karacan-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 25 Introduction S1 Slides: (pdf, 4pp)
Reading: D. Marr, Vision, The Philosophy and the Approach, 1982
2 Oct 2 Image formation and the digital camera S2.1-2.3.1 PA1 out: (pdf, code, images)
Slides: (pdf, 4pp)
Lab material: (zip)
3 Oct 9 Color perception and color spaces S2.3.2 Slides: (pdf, 4pp)
Reading: Beau Lotto's TED Talk: Optical illusions show how we see
Lab material: (txt)
4 Oct 16 Point operations S3.1, GW3.1-3.3 PA1 due, PA2 out: (pdf)
Slides: (pdf, 4pp)
5 Oct 23 Spatial filtering S3.2-3.3 Slides: (pdf, 4pp)
Lab material: (txt)
6 Oct 30 Frequency Domain Techniques S3.4, GW4.1-4.10 PA2 due, PA3 out: (pdf)
Slides: (pdf, 4pp)
7 Nov 6 Frequency Domain Techniques (cont'd.) S3.4, GW4.1-4.10 Slides: (pdf, 4pp)
8 Nov 13 Image pyramids and wavelets S3.5, GW7.1-7.5 PA3 due
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
9 Nov 20 Midterm exam PA4 out: (pdf, code-blending, code-moire, images)
10 Nov 27 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
11 Dec 4 Image segmentation S5.1-S5.2 PA4 due
Slides: (pdf, 4pp)
Reading: E. Borenstein and S. Ullman, Class-Specific, Top-down Segmentation, ECCV 2002
12 Dec 11 Image segmentation (cont'd) S5.3-5.5 PA5 out: (pdf
Slides: (pdf, 4pp)
13 Dec 18 Image smoothing - revisited S3.2 Slides: (pdf, 4pp)
14 Dec 25 Advanced Topics PA5 due

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/fall2014/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.

© 2014 Hacettepe University