teaser
Computational imaging blends hardware and software design to overcome the limits of traditional imaging systems. Computational imaging is the foundation for many scientific and medical imaging systems, including magnetic resonance imaging (MRI), computed tomography (CT), light-field imaging, and phase microscopy, and has enabled exciting breakthroughs, such as capturing the first image of a black hole. This course will provide you with a mathematical and algorithmic framework to develop and analyze computational imaging systems, express imaging forward models, and solve imaging inverse problems.

Spring 2026
Instructor: Prof. Kristina Monakhova
Lectures: TR, 8:40-9:55am, Upson Hall 216
Lab sections: CIS 122, R 11:40AM - 12:55PM or R 1:25PM - 2:40PM

Contact: Ed (for most questions) or instructor email (for sensitive/discreet inquiries only, make sure to use [CS4660] in title)
TAs: Shamus Li and Haley Lee
Course staff office hours: W 10-11am
Instructor office hours: R 10-11am, Gates 442B

Course overview: Computational imaging is the holistic design of imaging systems together with algorithms, blending ideas from computer vision, optics, imaging, and machine learning to overcome the limits of traditional cameras and imaging systems. Computational imaging enabled the capture of the first image of the black hole, the imaging of invisible objects, and is used in most smart-phone cameras for HDR imaging and super-resolution. This course will provide the mathematical and algorithmic foundations necessary to build, develop, and characterize computational imaging systems. We will learn how to express imaging systems (e.g. microscopy, MRI, tomography) as linear systems, and use tools from linear algebra and optimization to analyze, design, and improve these systems. In addition, we will mathematically model different aspects of imaging systems, such as noise, aberrations, and blur. Students will learn how to formulate and solve imaging inverse problems using both classical and modern machine-learning-based approaches. The class includes a weekly lab component with real camera hardware where you will get to try out concepts from the class both in hardware and software on a course-provided mirrorless camera. Finally, the class will culminate in a final project where you will get to try out ideas from the class on exciting real-world imaging problems, such as recovering an image of the black hole using the event horizon telescope, compressive MRI imaging, or Fourier ptychography microscopy.

This class is targeted at upper-level undergraduate students in computer science, and other related majors interested in learning more about imaging systems. You should take this class if you:

ER

By the end of the course, you will:

This course is useful for students interested in careers in AI for science, robotics, biomedical engineering, microscopy, astronomy, remote sensing, and computer vision.

Prerequisites: MATH 2210 or MATH 2310 or MATH 2940 or equivalent linear algebra course and CS 2110 or equivalent programming experience. Familiarity with programming in Python.

Course logistics: The companion Canvas page serves as a hub for access to Ed (the course forum), and Gradescope. If you are enrolled in the course you should automatically have access to the site. All reading, slides, and assignments will be posted on the schedule below. Please bookmark this page.


Schedule


This is the first iteration of this class, topics and dates are tentative and subject to change.
Date Topic Reading/references Slides Lab
1/20 Introduction
  • Heckel, chapter 1
  • Video: Imaging the invisible
  • Video: Computational Imaging in Signal Processing
  • 1/22 How humans and machines measure light Read through this interactive demo, parts: Recording Light 0 - Python setup + images as code
    1/27 From pinholes to lenses Read through this interactive demo, parts: Glass, Waves
    1/29 Digital photography Read through this interactive demo, parts: Manipulating Rays, Aberrations 1 - Pinhole cameras and Lenses
    2/3 On-camera processing
    2/5 Imaging as a linear system 2 - RAW image processing
    2/10 Linear shift-invariant systems and convolutions
    2/12 Fourier transforms 3 - Fun with Fourier Transforms
    2/17 February Break (no lecture)
    2/19 Fourier transforms 4 - Custom Bokeh
    2/24 Noise
    2/26 Review 5 - Characterizing Noise
    3/3 In-class Prelim
    3/5 DiffuserCam - how to build and model a lensless camera 6 - Build your own lensless camera
    3/10 Guest lecture
    3/12 Intro to Inverse problems 7 - Wiener filters and deconvolution
    3/17 Solving inverse problems with convex optimization
    3/19 Compressive sensing 8 - FISTA for lensless imaging
    3/24 Compressive sensing
    3/26 Priors and machine learning 9 - HDR imaging
    3/31 Spring Break (no lecture)
    4/2 Spring Break (no lecture)
    4/7 Microscopes and Telescopes
    4/9 Phase Imaging - seeing the invisible Final project proposal due!
    10 - Using machine learning to solve inverse problems
    4/14 Light field imaging
    4/16 Coded aperture imaging final projects
    4/21 Diffusion models for inverse problems
    4/23 Advanced topics final projects
    4/28 Advanced topics
    4/30 Advanced topics final projects
    5/5 Project poster session
    TBD Final Exam (during finals week)

    Syllabus


    Evaluation

    We will adhere to Cornell's official grading system when assigning grades.
    Your final grade will be made up of:

    Labs: 25%
    Exams: 50%, with best of 40-60 or 60-40 prelim-to-finals split
    Final Project: 15%
    Participation: 10%
    Labs

    Each week, there will be an interactive lab section where you will get to experiment with real imaging hardware and software. Attendance during discussion/lab sections is mandatory. Each lab has an accompanying assignment which will include several activities that must be completed on imaging hardware and checked off with TAs as well as several take-home questions. These assignments will include theoretical components to give you the chance to assess your understanding of lecture materials as well as hands-on programming components for you to implement imaging algorithms in software and hardware. Lab assignments provide preparation for the exams. Labs will be completed in groups of two students.

    Deliverables: You will submit a write-up answering in-lab and at-home questions associated with each lab assignment. This write-up will be submitted via Gradescope and will be due before the start of the following lab section each week. You may work together with your lab partner and submit a single lab write-up.

    Grading: Lab assignments will be graded for completion, with possible grades including: complete (100%), partially complete (50%), or incomplete (0%). Once solutions are released, a self-assessment must be submitted with each assignment. In the self-assessment, you will identify any errors that you made and provide an explanation of how you would correct your error (e.g. numerical mistake, misconception, etc.). This is a good chance to assess your own progress in the class's learning objectives and prepare for the exams. Self-assessments are due within 7 days after solutions are posted.

    No late submissions: We believe timely feedback and self-assessment are crucial for the learning process. As such, we will aim to release lab solutions immediately after the due date. This ensures prompt feedback on your lab assignments, and enables you to complete the lab self-assessment while the assignment is still fresh in your mind to check your understanding of the course concepts. Due to this, we cannot accept late submissions. If you run out of time, you are welcome to submit a partially-complete assignment on the due date, then complete the self-assessment to correct and finish any remaining problems.

    Lowest lab dropped: We know that life happens and unexpected things can come up. Since we do not accept late submissions, we will drop your lowest grade on one of the labs to provide leniency in case you need to miss a lab section during the semester for any reason.
    Final Project

    At the end of the semester, there will be a hands-on final project. Students can choose between several pre-defined final projects or propose their own idea to explore. The final project will give you the chance to delve further into a real imaging problem. Final projects will be completed individually or in groups of two. Final projects will be evaluated based on a poster session and final project write-up. More information about the final project guidelines will be available after the first prelim.

    Exams

    There will be two exams for this class (to be completed individually), an in-class prelim and a final exam during finals week. Exams will evaluate the learning objectives for the class and will be based on material from the lectures, assigned readings, and lab materials. The best way to prepare for the exams is to attend lectures, participate in class activities, attend lab sections, complete all labs, and do any additional assigned readings. Exams will be closed-book with no access to electronic devices or the internet. Between the prelim and final exams, we will weigh the higher of your scores as 60%, and the lower score as 40%. We know that exams can be stressful, so we will provide a higher weighting on whichever exam you perform better on in your final grade calculation.

    • Prelim: In class, Tuesday March 3rd
    • Final: TBD, during finals week
    Participation

    You are expected to regularly attend class and lab section, do any pre-class reading assignments, and actively participate in classroom discussions. We will incorporate active learning activities during class to discuss, probe further, and facilitate learning. You are expected to be engaged and actively participate during these activities. Participation will be evaluated based on class and lab attendance, as well as active participation during class activities and discussions. You can miss up to 3 lectures and 1 lab section without penalty.

    Textbooks and References


    While there is not a textbook for the class, we will include some reading and references from several different textbooks and sources. All expected reading sections and chapters will be listed on the weekly schedule. These textbooks include:

    References

    Background in linear algebra, probability, and calculus, as well as some mathematical maturity is assumed for this course. If you feel you need a refresher, or would like to learn more about these topics, the following resources may be useful.

    Similar courses at other universities:



    Course expectations and policies


    Questions? Please post questions on Ed discussion, where your fellow students, TAs, and the course instructors can answer any questions related to course materials and logistics. In addition, office hours are a great way to meet course staff, ask questions, and clarify anything from lectures or labs. Please do not email course staff with questions, and instead use Ed discussion. We will check Ed discussion each week and aim to respond to questions within two business days. We may not respond on weekends, outside of business hours, or on holidays.

    Feedback: This is the first time this class is being offered at Cornell. Your feedback, both positive and negative, is crucial in helping us improve and perfect the class both this time around, and for future iterations of this class. We have an anonymous feedback form that you can use to provide any feedback on lectures, labs, and anything else throughout the semester. In addition, the mid-semester and end of semester surveys are a great way to share your feedback on the class with us.

    Inclusiveness: Everyone—the instructors, TAs, and students—must be respectful of everyone else in this class. All communication, in class and online, will be held to a high standard for inclusiveness: it may never target individuals or groups for harassment, and it may not exclude specific groups.

    Collaboration policy: We encourage students to work in group of two on labs. You may submit your own write-up, or submit a single write-up as a group of two. If you work together on a lab, please include the names of your teammates in your writeup. You may not paste any homework or lab questions into LLMs (See GenAI policy). You must not supply code or write-ups from this course with students in future instances of this course, or make any material available online. Any online repositories for this class must be kept private.

    Academic integrity: Each student in this course is expected to abide by the Cornell University Code of Academic Integrity. Any work submitted by a student in this course for academic credit will be the student's own work. This course abides by Cornell's Academic Integrity policy. Note: This course is participating in Accepting Responsibility (AR), which is a pilot supplement to the Cornell Code of Academic Integrity (AI). For details about the AR process and how it works with the AI Code, see the AR website.

    Use of generative AI tools:
    ER
    GenAI may be used to search, explore and review, and practice course concepts. No other uses, unless otherwise specified.

    Electronic device policy: Use of electronic devices such as laptops and tablets will not be permitted during class (with the exception of specific in-class activities and for note-taking purposes).

    Recording/Sharing in the classroom Each person in this class is expected to respect the principles of academic freedom for instructors and classmates and will maintain the privacy of the classroom environment. This commitment to building respect and trust in the classroom means members of this class will not: record, photograph, or share online any interactions that involve classmates or any member of the teaching team. Students will also respect the intellectual property rights of the instructor, and will not share or otherwise make accessible any course materials to anyone not enrolled in the course, without the instructor’s written permission.

    Mental health resources: Your mental health and wellbeing are important to me. If you or a friend are struggling emotionally or feeling stressed, fatigued, or burned out, there are campus resources available to you: here. Help is also available any time day or night through Cornell’s 24/7 phone consultation (607-255-5155). You can also reach out to your college student services office, or Cornell Health for support.

    Students with Disabilities: Your access in this course is important to me. Please contact Student Disability Services (SDS) sds.cornell.edu to register and request an accommodation letter as early as possible. More information can be found here. If you have, or think you might have, a disability, please contact Student Disability Services for a confidential discussion: sds_cu@cornell.edu or visit sds.cornell.edu to learn more.