BBM 413: Fundamentals of Image Processing
Fall 2016
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: Mondays at 11:00-11:50 (Room D8) and Thursday at 09:00-10:50 (Room D8)
Practicum: Mondays at 16:00-18:00 (Room D10)
Course Instructor
Erkut Erdem
Email: erkut@cs.hacettepe.edu.trWeb: http://web.cs.hacettepe.edu.tr/~erkut
Office Hour:Wednesday 15:00-16:00
Teaching Assistants
Levent Karacan
Email: karacan@cs.hacettepe.edu.tr
Web: http://web.cs.hacettepe.edu.tr/~karacanOffice 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/fall2016/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 | Oct 3 | Introduction | Slides: (pdf, 4pp) | Oct 6 | Introduction | S1 | Slides: (pdf, 4pp) Reading: D. Marr, Vision, The Philosophy and the Approach, 1982 |
2 | Oct 10 - Oct 13 | Image formation and the digital camera | S2.1-2.3.1 | PA1 out Slides: (pdf, 4pp) |
3 | Oct 17 - Oct 20 | 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: (m-file) |
4 | Oct 24 - Oct 27 | Point operations | S3.1, GW3.1-3.3 | PA1 due Slides: (pdf, 4pp) Lab material: (m-file) |
5 | Oct 31 - Nov 3 | Spatial filtering | S3.2-3.3 | PA2 out: (pdf) Slides: (pdf, 4pp) Lab material: (zip) |
6 | Nov 7 - Nov 10 | Frequency Domain Techniques | S3.4, GW4.1-4.10 | Slides: (pdf, 4pp) |
7 | Nov 14 - Nov 17 | Frequency Domain Techniques (cont'd.) | S3.4, GW4.1-4.10 | PA2 due Slides: (pdf, 4pp) |
8 | Nov 21 - Nov 24 | Midterm Exam | PA3 out: (pdf) | |
9 | Nov 28 - Dec 1 | Image pyramids and wavelets | S3.5, GW7.1-7.5 | 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 |
10 | Dec 5 - Dec 8 | Gradients, edges, contours | S4.2,4.3.1-4.3.2 | PA3 due, PA4 out: (pdf, code and data) Slides: (pdf, 4pp) Reading: D. Marr and E. Hildreth, Theory of Edge Detection, Proc. R. Soc. Lond. B, 1980 |
11 | Dec 12 - Dec 15 | Image segmentation | S5.1-S5.2 | Slides: (pdf, 4pp) Reading: E. Borenstein and S. Ullman, Class-Specific, Top-down Segmentation, ECCV 2002 |
12 | Dec 19 - Dec 22 | Image segmentation (cont'd) | S5.3-5.5 | PA4 due, PA5 out: (pdf) Slides: (pdf, 4pp) |
13 | Dec 26 - Dec 29 | Image smoothing - revisited | S3.2 | Slides: (pdf, 4pp) |
13 | Jan 2 - Jan 5 | 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, 2016 (23:59:59))
- Assignment 2 (Due: November 17, 2016 (23:59:59))
- Assignment 3 (Due: December 8, 2016 (23:59:59))
- Assignment 4 (Due: December 19, 2016 (23:59:59))
- Assignment 5 (Due: January 5, 2016 (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)