Instructor:
Prof. Dimitris Samaras
Fall 2025: Tue-Thu
5-6:20
The aims of
this course are to provide an understanding of the fundamentals of Computer
Vision and to give a glimpse in the state-of-the-art, at a moment when the
field is achieving "critical mass" and has significant commercial
applications. Apart from basic theory we will look at applications of
Computer Vision in Robotics, Graphics and Medicine. Topics in this course: Note:
contents may be up to change to reflect the fast evolution of the frontier of
computer vision. |
|
|
1.
Image
Formation o
Geometric and photometric basis
of imaging o
Camera geometry 2.
Image
processing o
Pixel-level operations o
Filtering 3.
Model Fitting o
Under- and over-fitting o
Robust fitting 4.
Machine
learning o
Basic concepts in machine
learning o
Deep learning: CNNs o
Deep learning: Transformers 5.
Visual
recognition o
Object recognition o
Object detection o
Semantic segmentation o
Vision Language Models (VLMs) |
6.
Feature
matching o
Local features o
Hough transform and RANSAC 7.
Motion o
Optical flow o
Object tracking 8.
Structure from
motion o
Two- and Multi-frame SfM o
SLAM 9.
Depth
estimation o
Epipolar geometry o
Stereo 3D reconstruction 10.
Augmented
reality o
Illumination o
Neural Rendering 11.
Deep
Generative Models o
Autoencoders o
Generative Adversarial Networks o
Diffusion Models |
|
This
course is intended for graduate students with interests in Visual Computing and
Machine Learning, such as Computer Vision, Computer Graphics, Visualization,
Biomedical Imaging, Robotics, Virtual Reality, Computational Geometry,
Optimization, Deep Learning, HCI. Prerequisites include Linear Algebra and
Calculus, and the ability to program. We will be programming in Python (OpenCV,
NumPy, SciKit).
There
will be four homeworks, three quizzes, a midterm and
a final. Homeworks will be 25%, quizzes 20% total, the midterm 25%, and
the final 30%. Weights are approximate and subject to change. You are expected
to do homeworks by yourselves. Even if you discuss
them with your classmates, you should turn in your own code and write-up.
Do not share your code! There will be 4 free late dates for the semester. After
that there will be 10% penalty per day.
You can do a project instead of the final exam. Projects
will be done in up-to 2 people teams, and will require a significant
programming and documentation effort. This will probably be much more work
than taking the final. Two people projects will be scaled accordingly.
Quiz 1: Sep 11th
2025 (tentative)
Quiz 2: Oct 2nd
2025 (tentative)
Quiz 3: Nov
13th 2025(tentative)
Midterm date: Oct 23rd 2025,
Final
date: Dec 11th 2025.
Projects due Dec 12th 2025.
You
can have one sheet of paper with notes in the exams.
Computer Vision: Algorithms and Applications
by Richard Szeliski (2nd ed. 2022) Main text, available online.
Foundations of Computer Vision by
Antonio Torralba, Phillip Isola, William Freeman, (2024), available online.
Also:
Computer Vision: A Modern Approach by David Forsyth and Jean Ponce (2012)
Deep Learning, Goodfellow and
Yoshua Bengio, Aaron Courville, 2016, MIT press.
Readings
from these books and notes for all topics will be posted on Brightspace.
Student
Accessibility Support Center Statement:
If
you have a physical, psychological, medical, or learning disability that may
impact your course work, please contact the Student Accessibility Support
Center, Stony Brook Union Suite 107, (631) 632-6748, or at sasc@stonybrook.edu. They
will determine with you what accommodations are necessary and appropriate. All
information and documentation is confidential.
Don't
cheat. Cheating on anything will be dealt with as academic misconduct and
handled accordingly. I will not spend a lot of time trying to decide if you
actually cheated. If I think cheating might have occurred, then evidence will
be forwarded to the University's Academic Judiciary and they will decide. If
cheating occurres, an F grade will be awarded.
Discussion of assignments is acceptable, but you must do your own work. Near
duplicate assignments will be considered cheating unless the assignment was
restrictive enough to justify such similarities in independent work. It is your
responsibility to protect your work and to ensure it is not turned in by anyone
else. No excuses! The University has a relevant policy:
Each
student must pursue his or her academic goals honestly and be personally
accountable for all submitted work. Representing another person's work as your
own is always wrong. Faculty is required to report any suspected instances of
academic dishonesty to the Academic Judiciary. Faculty in the Health Sciences
Center (School of Health Professions, Nursing, Social Welfare, Dental Medicine)
and School of Medicine are required to follow their school-specific procedures.
For more comprehensive information on academic integrity, including categories
of academic dishonesty please refer to the academic judiciary website at: http://www.stonybrook.edu/commcms/academic_integrity/index.html
Code-Assistance
Policy:
This
class seeks to set a foundation for you to be at the forefront of computer
vision in both research and industry practice. Code generating tools are a
reality for those working in research and industry software engineering.
However, assignments that are fully solved by querying such a tool do not aid
in learning and limit students to only solving problems that are already used.
The policy below is meant to balance the reality of code generating tools to be
used as an aid for support with the learning objectives of the course. Your
own, original work must constitute the central logic and structure of your
code.
Use
of code generating/completion tools (ChatGPT, GitHub CoPilot, etc…) is allowed if and only if:
1.
it is explicitly stated in the assignment description
2.
the tool is freely available to all students
3.
you comment your code to:
i. mark the code segment
("#BEGIN" and "#END") as well as
ii. reference the tool name, web address, and the prompt
used to get the code.
Critical
Incident Management:
Stony
Brook University expects students to respect the rights, privileges, and
property of other people. Faculty are required to report to the Office of
University Community Standards any disruptive behavior that interrupts their
ability to teach, compromises the safety of the learning environment, or
inhibits students' ability to learn. Faculty in the HSC Schools and the School
of Medicine are required to follow their school-specific procedures. Further
information about most academic matters can be found in the Undergraduate
Bulletin, the Undergraduate Class Schedule, and the Faculty-Employee Handbook.
·
Dimitris Samaras, Email: samaras@cs.stonybrook.edu
·
Office Hours: Tue., 3-4pm, Wed., 4-5 pm, or by appointment,
in room NCS 263
·
TAs: Ravindu Nagasinghe
(OH: Thursday 9-10 am), Md Shahrar Fatemi (OH: Monday
12:00pm-1:00pm), Drosos Drosakis
(OH: Friday 1:00pm – 2:00pm) in room Old CS 2126