VCAIL Logo
VCAIL
Computational Imaging and Optics

COMP 590

Computational Imaging

Spring 2026

COMP 590

Course Description

This course provides a comprehensive introduction to computational imaging systems and their applications across consumer electronics, scientific imaging, HCI, medical imaging, microscopy, and remote sensing. Students will explore the intersection of optics, signal processing, and machine learning in modern imaging systems.

The course covers digital photography, advanced image processing techniques, convolutional neural networks for imaging applications, denoising, deconvolution, single pixel imaging, inverse problems, wave optics, and end-to-end optimization of optics and image processing pipelines. Emphasis is placed on applied image processing and solving inverse problems using classic algorithms, formal optimization, and modern AI techniques.

Learning Objectives

By the end of this course, students will be able to:

  • Understand and implement computational imaging algorithms from research papers
  • Design and optimize end-to-end imaging systems
  • Apply machine learning techniques to imaging problems
  • Solve inverse problems using modern optimization techniques

Instructor

Praneeth Chakravarthula
Assistant Professor
Department of Computer Science
Email: cpk@cs.unc.edu

Course Logistics

Meeting Times

Lectures: Tuesdays & Thursdays 2:00-3:15pm
Location: Sitterson Hall 014
Office Hours: Wednesdays 1:00-2:00pm (Sitterson 205)

Course Communication

Course Site: Canvas
Discussions: Ed Discussion
Announcements: Posted on Canvas

Course Materials

Textbooks & References

  • Primary: Szeliski, “Computer Vision: Algorithms and Applications” (2nd Ed.)
  • Reference: Gonzalez & Woods, “Digital Image Processing” (4th Ed.)
  • Reference: Selected research papers (provided on Canvas)

Software & Tools

All programming assignments will use:

  • Python 3.8+ with NumPy, SciPy, OpenCV
  • PyTorch for deep learning components
  • Jupyter Notebooks for assignments

Coursework

Grade Distribution

40%
Assignments
15%
Midterm
30%
Final Project
15%
Participation

Programming Assignments (40%)

Four programming assignments will require implementing computational imaging algorithms from research papers. Each assignment includes theoretical analysis and practical implementation.

Late Policy

10% penalty per day late. No assignments accepted more than 3 days late. Each student has one 48-hour grace period for the semester.

Final Project (30%)

Students will work in teams of 2-3 to implement and extend a recent computational imaging paper. Projects include proposal, implementation, analysis, and presentation components.

Schedule & Topics

WeekDateTopicAssignment
1Jan 14Course Introduction & Image Formation-
2Jan 21Digital Photography & ISP PipelineA1 Out
3Jan 28Image Enhancement & Denoising-
4Feb 4Inverse Problems & DeconvolutionA1 Due, A2 Out
5Feb 11CNNs for Imaging Applications-
6Feb 18Wave Optics & Computational CamerasA2 Due

* Schedule subject to change. Updated schedule will be posted on Canvas.

Additional Information

Prerequisites

  • Required: COMP 410 (Data Structures), MATH 347 (Linear Algebra)
  • Recommended: COMP 572 (Machine Learning), programming experience in Python
  • Mathematical Background: Multivariable calculus, basic probability theory

Academic Integrity

All work must be your own. Collaboration on assignments is encouraged at the conceptual level, but all code and writeups must be individually completed. Use of AI tools must be disclosed and is subject to course-specific policies outlined in the syllabus.

Related Courses

  • • COMP 575: Computer Vision
  • • COMP 770: Computer Graphics
  • • COMP 572: Machine Learning