CS 491/591-006 (CS 422/522)
Digital Image Processing

Spring 2026

COURSE INFORMATION

Instructor Prof. Zhu Wang
Email zhuwang [at] unm [dot] edu
Website cs.unm.edu/~zhuwang
Time Tue / Thu, 12:30 pm – 1:45 pm
Location MECH-208
Office Hours Tue / Thu, 2:00 – 3:00 pm, FEC 3130

COURSE DESCRIPTION

This course introduces the foundations and techniques for 2D and 3D imaging. From classical Fourier analysis to modern deep-learning models, we explore a broad spectrum of image-based technologies, including segmentation, recognition, volumetric capture, depth estimation, clustering, convolutional neural networks, and generative models.

By the end of the semester, students will be equipped with fundamental knowledge and hands-on experience to pursue research or industry careers across computer vision, AI, human-computer interaction, robotics, and medical imaging.

Note: This course can be counted toward CS 422/522 Digital Image Processing for the corresponding undergraduate and graduate program requirements.


PREREQUISITES

This course requires students to have working knowledge of linear algebra and calculus, and prior programming experience. Assignments must be implemented in Python. Students should also be familiar with basic usage of PyTorch (PyTorch Tutorials) and NumPy (NumPy Tutorials) by the 4th week of the semester. MATLAB is acceptable for early assignments, but not for the entire course. If you are already familiar with JavaScript, Java, C++, or a similar high-level language, you should be able to handle Python quickly and complete the course successfully.


TEXTBOOKS/RECOMMENDED READING (OPTIONAL)

  • Digital Image Processing, 4th Edition. Gonzalez & Woods, 2017
  • Computer Vision: Algorithms and Applications, 2nd Edition. Szeliski, 2022
  • Foundations of Computer Vision. Torralba, Isola & Freeman, 2024

WEEKLY TOPIC BREAKDOWN (TENTATIVE)

  1. Introduction, overview, history, ethics
  2. Image formation (cameras, pixels, sampling, color, 2D/3D transformations)
  3. Classic filtering
  4. Fourier analysis & lab session 1
  5. Eigen-based image representation (PCA & LDA)
  6. Morphological operations
  7. Detection and recognition
  8. Segmentation & lab session 2
  9. Classification
  10. Depth estimation, stereo vision
  11. Simultaneous Localization and Mapping (SLAM)
  12. Convolutional neural networks (CNNs)
  13. Transformers & lab session 3
  14. Generative models (GANs, diffusion models)
  15. Final project presentation

GRADING

Grade Breakdown

Component Weight
Homework Assignments (projects) 60%
Midterm Exam 15%
Final Project 25%


Incomplete and Late Submission

  • Incomplete or no submission will receive zero point.
  • Late submissions lose 1 pt per day.

Undergraduate (ST 491 / CS 422) vs. Graduate (ST 591 / CS 522)

Both sections cover the same content. However, students in the undergraduate sections (ST 491 / CS 422) will either be graded under a less stringent grading scale; or have fewer or less advanced project assignments compared to the graduate sections.


ACADEMIC INTEGRITY

  • Academic dishonesty may result in failing the assignment or the course. All academic dishonesty activities will be reported to the department.

  • It is allowed to use AI for learning purposes. But all students must fully understand their code! There will be a random check after each submission, where they may be asked questions about the part of the code they write (with comments removed). Submitting AI-generated code, copying from others without proper disclosure, or improper use of online resources will be considered as academic dishonesty.