EE 6485 Computer Vision 計算機視覺
Fall 2017, Wed. 3:30pm to 6:20pm, Location DELTA台達216
Instructor: Min Sun
TAs: 簡廷安 tingan0206@gmail.com
楊皓鈞 chadyoungy@gmail. com
王尊玄 johnsonwang0810@gmail.com
石孟立 shihsml@gmail.com
林沅廷 brade31919@gmail.com
Course Description
Can computers understand the visual world as we could? This course treats vision as a process of inference from noisy and uncertain data and emphasizes probabilistic, statistical, data-driven approaches. Topics include image processing; segmentation, grouping, and boundary detection; recognition and detection; motion estimation and structure from motion. This class will also lead you to the discussion of applications applying state-of-the-art techbiques in recognition, detection, and video analysis.
The course will consist of four programming projects, one final project, and a few self-tutorial sessions (12 minutes for each team of 5 students). Please find information about projects and self-tutorial sessions in the syllabus.
Prerequisites
This course requires programming experience (mainly Python) as well as linear algebra, basic calculus, and basic probability. Previous knowledge of visual computing will be helpful.Textbook
Readings will be assigned in "Computer Vision: Algorithms and Applications" by Richard Szeliski. The book is available for free online or available for purchase.Resource
Awesome computer vision github linkAwesome deep learning github link
Grading
Your final grade will be made up from- 60% 5 programming projects
- 30% final projects (includes proposal, midtern report, project pitch, project presentation, and project report). 3 students maximum (Project Ideas)
- 10% self-tutorial + class participation
Important Links:
Contact Info and Office Hours:
You can contact the professor with any of the following:- Min Sun: sunmin@ee.nthu.edu.tw
- Min Sun, 台達管962, 電話 035731058, 時間:Mon. 4:30pm-5:30pm
- 簡廷安和王尊玄, 資電711, 時間:Tue. 3:30pm-4:30pm
Tentative Syllabus
lecture | Class Dates | Topic | Slides | Reading | Extra Info (e.g., Homework/Exam) |
---|---|---|---|---|---|
1 | W, Sept. 13 | Introduction to computer vision and cameras & optics | pdf,pdf2 | Szeliski 1, 2.1 (especially 2.1.5) | |
git and github | homework 0 out | ||||
2 | W, Sept. 20 | Light and color & Image filtering & Python Tutorial | pdf,pdf2 | Szeliski 2.2, 2.3, and 3.2 | homework 0 due |
3 | W, Sept. 27 | Thinking in uency | Szeliski 3.4 | homework 1 (hybrid image) out | |
Image pyramids and applications & | pdf pdf | Szeliski 3.5.2 and 8.1.1 | |||
4 | W, Oct. 4 | No Class (Mid-Autumn Festival) | |||
5 | W, Oct. 11 | Continue & Edge detection | Szeliski 4.2 | ||
Interest points, corners, and local image features | pdf pdf2 | Szeliski 4.2 | |||
6 | W, Oct. 18 | Feature matching and hough transform | Szeliski 4.3 | homework 1 due | |
Model fitting and RANSAC & self-tutorial | pdf2 | Szeliski 4.3 | homework 2 (image stitching) out
| ||
7 | W, Oct. 25 | Cancelled due to ICCV | |||
Model fitting and RANSAC & self-tutorial | pdf2 | Szeliski 4.3 | |||
8 | W, Nov. 1 | Panorama Stitching | Szeliski 9 | ||
Stereo and Structure from Motion | pdf pdf2 | Szeliski 7 | |||
9 | W, Nov. 8 | SfM & cere-solver & self-tutorial | see above | Szeliski 4.1.4 and 8.4 | homework 2 due & project proposal due |
Feature Tracking and Optical Flow | Szeliski 4.1.4 and 8.4 | homework 3 (scene recognition) out | |||
10 | W, Nov. 15 | No Class (Sports Day) | |||
11 | W, Nov. 22 | Machine learning intro and clustering | |||
Machine learning: classification | pdf pdf2 | ||||
12 | W, Nov. 29 | Recognition overview, bag of features | Szeliski 14 | homework 3 due | |
large-scale instance recognition & self-tutorial | Szeliski 14.3.2 | homework 4 (face detection) out | |||
13 | W, Dec. 6 | Detection with sliding windows: Viola Jones and Dalal Triggs | pdf pdf2 | Szeliski 14.1 | |
Mixture of Gaussians and advanced feature encoding |
| ||||
14 | W, Dec. 13 | Modern Object Detection: DPM &self-tutorial | homework 4 due | ||
Modern Object Detection: Selective Search | homework 5 (deep classification) out | ||||
15 | W, Dec. 20 | Deep Learning: introduction | pdf pdf | ||
Deep Learning: CNN | midterm project report due | ||||
16 | W, Dec. 27 | Deep Learning: recent work | pdf1 pdf2 | homework 5 due | |
Deep Learning: object detector | |||||
17 | W, Jan. 3 | Project presentation: 10 teams | |||
18 | W, Jan. 10 | Project presentation: 5 teams | |||
Th, Jan. 11 | final project report due |
Project Proposal Format:
- max 4 pages;- 3 sections:
- title and authors
- sec 1. intro: problem you want to solve and why
- sec 2. technical part: how do you propose to solve it?
- sec 3. milestones (dates and sub-goals)
- references
Project Progress (mid-term) Report Format:
- max 4 pages;- 3 sections:
- title and authors
- sec 1. intro: problem you want to solve and why
- sec 2. technical part: how do you propose to solve it?
- sec 3. milestones achieved so far
- sec 4. remaining milestones (dates and sub-goals)
- references
Project Final Report Format:
- Max 10 pages;- Title and authors
- Abstract: short summary of the project with main results
- 6 sections:
- Sec 1. Introduction: introduce the problem you want to solve, expain why it is important to solve it; and indicate the method you used to solve it. add a concept figure showing the overall idea behind the method you are presenting.
- Sec 2.1. Review of previous work (i.e. previous methods that have explored a similar problem)
- Sec 2.2. Say why your method is better than previous work; and/or summarize the key main contributions of your work;
- Sec 3.1: Technical part: Summary of the technical solution
- Sec 3.2: Technical part: Details of the technical solution; you may want to decompose this section into several subsections; add figures to help your explanation.
- Sec 4: Experiments: present here experimental results of the method you have implemented with plots, graphs, images and visualizations.
- Sec 5: Conclusions: what's the take home message?
- Sec 6: References
You can look at one of the recent instructor publications (such as this) as an example.
Project Report Evaluation:
- Your project report will be evaluated based on the quality of the writing, the clarity of your technical explanation and, overall, how well you get your message across. If you follow the structure above, you'll have good chances to do a good job. :)Project Source Code:
There is no need to attach a print out of the source codes to the manuscript. Final source codes of your working program need to be shared with TA and the instructor on github (open or private repos are fine); this file is due on the project submission deadline date.Project Presentation in Class:
- The presentation must be at most 15 minutes long. Please see below for detailed presentation guidelines,Presentation format:
Your slides should consist of a title slide, followed by slides that discuss the following aspects of your project:- Problem Motivation/Description
- Technical Approach
- Some Results