Announcements:

• Welcome to CS131!• Schedule information may change during the quarter; please visit the Syllabus page regularly to stay up to date.

• Lecture time has changed to 1:30-2:50pm on Tuesdays and Thursdays at McCullough 115 due to the high volume of student enrollment.

Course Instructor:

Office: Room 246, Gates Building

Office hours: By Appointment

Office: Room 243, Gates Building

Office hours: Monday, 10:15-11:30am, Gates 243

Class forum on Piazza (please ask all questions here if possible): piazza.com/stanford/fall2015/cs131

Course Team Email (for privacy-sensitive questions): cs131-fall1516-staff@lists.stanford.edu

Course Assistants:

Office: Room 247, Gates Building

Office hours: Monday, 2:00-4:00pm, Gates 260

Office hours: Thursday, 9-11am, Gates 260

For questions outside office hours, please use the class forum:

piazza.com/stanford/fall2015/cs131

Class Time and Location:

Lectures: Tuesdays and Thursdays at 1:30pm to 2:50pm at McCullough 115

We may have a few sessions at irregular times; see the Syllabus.

Course Description:

What do the following technologies have in common: robots that can navigate space and perform duties, search engines that can index billions of images and videos, algorithms that can diagnose medical images for diseases, or smart cars that can see and drive safely? Lying in the heart of these modern AI applications are computer vision technologies that can perceive, understand and reconstruct the complex visual world. Computer Vision is one of the fastest growing and most exciting AI disciplines in today’s academia and industry. This course is designed to open the doors for students who are interested in learning about the fundamental principles and important applications of computer vision. During the 10-week course, we will introduce a number of fundamental concepts in computer vision. We will expose students to a number of real-world applications that are important to our daily lives. More importantly, we will guide students through a series of well designed projects such that they will get to implement a few interesting and cutting-edge computer vision algorithms.

Grading Policies:

Homework: 80%

• Assignment 0: 8%

• Assignment 1a (theoretical): 12%

• Assignment 1b (programming and writeup): 12%

• Assignment 2a (theoretical): 12%

• Assignment 2b (programming and writeup): 12%

• Assignment 3a (theoretical): 12%

• Assignment 3b (programming and writeup): 12%

Final exam: 20%

Turning in assignments

You must use our template for your writeup. This is to provide practice for writing technical papers. All problem sets and programming assignments must be turned in to: GradeScope. Make an account and sign up for the class using the code: MKKRYM Additionally, all code must be zipped up with the name "yourSUNetID_PA1_code.zip" and submitted to cs131.submissions@gmail.com

No paper submission is required for PSs or PAs.

Using Late Days:

• You have

**5**free late days total

• You can use up to 3 late days per assignment. (Homework will not be accepted more than 3 days late.)

• If you have used all of your late days, there is a 25% penalty for each day late

• Explicitly mark the number of late days you use on an assignment if you are using late days. For example, if you turn it in by 5pm the next day, write "1 late day." If it's 5:01 pm the next day, write "2 late days." It is an honor code violation to write down the wrong time. (If you turn in late and don't write the number of days, we'll round up to 3.)

Prerequisites

**
**

**We
hope that you are familiar with:**

• College-level calculus (e.g. MATH 19 or 41) - You’ll need
to be able to take a
derivative, and maximize a function by finding where the derivative=0.

• Linear algebra (e.g. MATH 51) - We will use matrix
transpose, inverse, and
other operations to do algebra with matrix expressions. We’ll use
transformation matrices to rotate/transform points, and we’ll use
Singular Value Decomposition. (These topics are important for the
homeworks, but if you are a quick learner you should be able to learn
them during the class if you haven’t yet. We will have review sessions
and provide review materials.)

• Basic
probability and statistics (e.g. CS 109 or other stats course) - You
should understand conditional probability, mean, and variance.

• We
also require a decent amount of programming skills, such as entry-level
Matlab, and the ability to work in the Linux environment. If you are
unsure about your background, we encourage you to try out Problem Set
0, which is a “normalizing” problem set for the class. PS0 will help
you gauge if CS131 is the right level for you.