BBM 413: Fundamentals of Image Processing
Fall 2017
Draughtsman Drawing a Lute, Albrecht Drer, 1525
Course Information
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.
Time and Location
Lectures: Tuesdays at 09:00-11:50 (Room D8)
Practicum: Thursdays at 15:00-17:00 (Room D10)
Course Instructor
Erkut Erdem
Email: erkut@cs.hacettepe.edu.trWeb: http://web.cs.hacettepe.edu.tr/~erkut
Office Hour:Tuesday 14:00-15:00
Teaching Assistants
Aysun Kocak
Email: aysunkocak@cs.hacettepe.edu.tr
Web: https://vision.cs.hacettepe.edu.tr/people-detail.php?id=10Office Hour: To be announced..
Efsun Sefa Sezer
Email: efsunsezer@cs.hacettepe.edu.tr
Office Hour: To be announced..
Communication
The course webpage will be updated regularly throughout the semester with lecture notes, programming and reading assignments and important deadlines. All other course related communications will be carried out through Piazza. Please enroll it by following the link https://piazza.com/hacettepe.edu.tr/fall2017/bbm413.
Pre-requisites
Basic probability, linear algebra and calculus. Good programming skills.
Course Requirements and Grading
Grading for BBM 413 will be based on
- a set of written assignments (5%),
- pop-up quizzes (9%),
- a course project (done in pairs) (16%),
- a midterm exam (30%), and
- a final exam (40%).
- five programming assignments (done individually).
Policies
All work on assignments must be done individually 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.
Reference Books
(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
Schedule
Week | Date | Topic | From the book | Notes |
---|---|---|---|---|
1 | Sep 26 | Introduction | S1 | Slides: (pdf, 4pp) Reading: D. Marr, Vision, The Philosophy and the Approach, 1982 Lab material: (zip) |
2 | Oct 3 | Image formation and color | S2.1-2.3.1, S2.3.2 | Slides: (pdf, 4pp) Reading: Beau Lotto's TED Talk: Optical illusions show how we seeLab material: (zip-file) |
3 | Oct 10 | Point operations | S3.1, GW3.1-3.3 | PA1 out: (github repository) Slides: (pdf, 4pp) Lab material: (zip-file) |
4 | Oct 17 | Spatial filtering | S3.2-3.3 | Slides: (pdf, 4pp) |
5 | Oct 24 | Frequency Domain Techniques | S3.4, GW4.1-4.10 | PA1 due, PA2 out: (github repository) Slides: (pdf, 4pp) Lab material: (zip-file) |
6 | Oct 31 | Frequency Domain Techniques (cont'd.) | S3.4, GW4.1-4.10 | Slides: (pdf, 4pp) |
7 | Nov 7 | Image pyramids and wavelets | S3.5, GW7.1-7.5 | PA2 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 Lab material: (zip) |
8 | Nov 14 | Midterm Exam | PA3 out: (github repository) | |
9 | Nov 21 | 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 |
10 | Nov 28 | Image segmentation | S5.1-S5.2 | PA3 due, PA4 out: (github repository) Slides: (pdf, 4pp) Reading: E. Borenstein and S. Ullman, Class-Specific, Top-down Segmentation, ECCV 2002 |
11 | Dec 5 | Image segmentation (cont'd) | S5.3-5.5 | Slides: (pdf, 4pp) |
12 | Dec 12 | Image smoothing - revisited | S3.2 | PA4 due, PA5 out: (zip) Slides: (pdf, 4pp) |
13 | Dec 19 | Advanced topics (Visual Saliency) | Slides: (pdf, 4pp) | |
14 | Dec 26 | Advanced topics | PA5 due |
Course Project
The students taking the course are required to complete a project. The students can work individually or in pairs to apply their newly acquired skills towards developing a photo editing tool with a selection of filters they devise.
For a detailed description of the course project and the related schedule, see this page. In preparing your progress and final project reports, you should use the provided LaTeX template and submit them electronically in PDF format.
Assignments
- Assignment 1 (Due: October 27, 2017 (23:59:59))
- Assignment 2 (Due: November 10, 2017 (23:59:59))
- Assignment 3 (Due: December 1, 2017 (23:59:59))
- Assignment 4 (Due: December 15, 2017 (23:59:59))
- Assignment 5 (Due: December 29, 2017 (23:59:59))
Resources
Related Conferences
- IEEE International Conference on Computer Vision (ICCV)
- European Conference on Computer Vision (ECCV)
- IEEE Conference on Computer Vision and Pattern Recognition (CVPR)
- IEEE Winter Conference on Applications of Computer Vision (WACV)
- British Machine Vision Conference (BMVC)
- Advances in Neural Information Processing Systems (NIPS)
- IEEE International Conference on Pattern Recognition (ICPR)
- IEEE International Conference on Image Processing (ICIP)
Related Journals
- IEEE Transactions on Image Processing (IEEE TIP)
- IEEE Transactions on Pattern Analysis and Machine Intelligence (IEEE TPAMI)
- ACM Transactions on Graphics (ACM TOG)
- International Journal of Computer Vision (IJCV)
- Computer Vision and Image Understanding (CVIU)
- Image and Vision Computing (IMAVIS)
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
Linear Algebra
- A Geometric Review of Linear Algebra, by Eero Simoncelli
- An Introduction to Linear Algebra in Parallel Distributed Processing, by M.I. Jordan
Resources for scientific writing and talks
- Notes on writing, by Fredo Durand
- How to write a great research paper, by Simon Peyton Jones (video)
- Small Guide To Giving Presentations, by Markus Püschel
- Giving an effective presentation: Using Powerpoint and structuring a scientific talk, by Susan McConnell (video)
- Writing papers and giving talks, by Bill Freeman (notes)