Level: Undergraduate · Duration: 13 weeks, one session per week · Lecturer: Dr. Alexander (Sasha) Apartsin
Course text: Building Vision AI: From Pixels to Generative Models (open access) · ebook at Amazon
All necessary background material, including a refresher on machine learning fundamentals and the PyTorch library, is introduced during the course. Students are expected to be proficient in Python programming and comfortable with basic linear algebra, calculus, and probability. Prior exposure to machine learning is helpful but not required.
Students who complete the course will acquire a broad, in-depth understanding of computer vision, from classical image processing to modern deep learning. By the end of the course, students will be able to:
The course runs for 13 weeks with one session per week. The first ten sessions are lectures on the week's topic, taught with a code-first approach through hands-on examples using contemporary libraries and tools. The final three sessions are supervised lab time for the integration project. Assessment is by the project alone; there are no in-class presentation sessions.
The course is assessed by a single final integration project that brings the whole course together. Working in teams, students build a robustness study: they select a public dataset with ground truth, benchmark classical and deep vision methods across several tasks, degrade the images with realistic distortions, and measure how much image restoration and model fine-tuning recover the lost performance. The project is specified in detail in the Project Requirements for Vision Course guide and graded against the Project Assessment Criteria for Vision Course. For worked examples from a previous cohort, see the Vision Course Finals. The deliverable is a GitHub repository containing the code, datasets or download scripts, experiment outputs, and a documented README report.
The grade is the final integration project, assessed across four dimensions (see the assessment criteria).
| Component | Weight |
|---|---|
| Study design & method selection (dataset, tasks, distortions) | 20% |
| Measurement rigor & analysis (baselines, per-class and per-SNR results) | 40% |
| Recovery (image enhancement & model fine-tuning) | 20% |
| Documentation & visualization (repository and README report) | 20% |
Below is an approximate weekly schedule outlining the subjects that will be covered. The actual order or content may vary depending on the class background, recent advancements in the field, or the specific focus of the integration project. Chapter numbers refer to the course text [1]; each entry links to the corresponding chapter. The final weeks are supervised lab time for the project.
| Week | Theme and readings |
|---|---|
| 1 | Introduction & Machine-Learning Refresher Typical vision tasks, course and project structure and requirements, and a refresher on machine-learning concepts, optimization, and generalization. |
| 2 | Image Formation The human visual system, image sensors, color fundamentals, pinhole cameras and lenses, and sampling and quantization. Textbook [1]: Ch. 1, Digital Image Fundamentals (sensors, color, sampling & quantization). |
| 3 | Image Manipulation & Geometric Transforms Imaging libraries, basic image manipulation, resampling, and geometric transformations and warping. |
| 4 | Image Filtering & the Frequency Domain Spatial filtering and convolution, the Discrete Fourier Transform, convolution and filtering in the frequency domain, and image enhancement. |
| 5 | Enhancement, Edges & Morphology Histogram processing and thresholding, noise smoothing, image pyramids, image derivatives and edge detection, and binary and grey-scale morphology. |
| 6 | Segmentation & Features Classical segmentation and grouping, image features and descriptors, and supervised and unsupervised recognition pipelines. |
| 7 | Camera Geometry, Stereo & Motion Image registration, camera parameters and calibration, two-view geometry and stereo, optical flow, and object tracking. |
| 8 | 3D Vision & Neural Scene Representations Structure from motion, visual SLAM, point clouds, structured light, pose estimation, 2D and 3D Gaussian Splatting, and Neural Radiance Fields. |
| 9 | Deep Vision Foundations & CNNs Deep-learning concepts and PyTorch, MLP and CNN classifiers, CNN visualizations and manipulations, CNN architectures, and training recipes. |
| 10 | Deep Detection & Segmentation Region-proposal networks, advanced object detection, semantic and instance segmentation, and end-to-end detection applications. |
| 11 | Project Lab: Baseline & Measurement |
| 12 | Project Lab: Distortion & Restoration |
| 13 | Project Lab: Fine-Tuning & Write-Up |
The use of AI tools for generating project code and figures is highly encouraged, provided that two essential requirements are met: the project must demonstrate novelty by addressing a new and valuable task, and the team must maintain full ownership and responsibility for all submitted code and materials.
Discussion across teams is encouraged; the code, experiments, and writing submitted by each team must be its own. All results reported in the repository and report must be backed by runnable artifacts in the team's repository.
[1] A. Apartsin and Y. Aperstein, Building Vision AI: From Pixels to Generative Models, 2nd ed., 2026. Open access online at https://visionbook.icsgen-ai.org; also available as an ebook at Amazon: https://www.amazon.com/dp/B0H5BT8Y75. Part I (Image Processing, Chapters 0 to 8) and Part II (Classical Computer Vision, Chapters 9 to 17) are the primary text for the course; Part III (Deep Learning for Vision, Chapters 18 to 29) supports the deep-vision material.
[2] R. Szeliski, Computer Vision: Algorithms and Applications, 2nd ed. Springer, 2022. Open access at szeliski.org/Book.
[3] R. C. Gonzalez and R. E. Woods, Digital Image Processing, 4th ed. Pearson, 2018.
[4] D. A. Forsyth and J. Ponce, Computer Vision: A Modern Approach, 2nd ed. Pearson, 2012.