# 15-463, 15-663, 15-862 Computational photography, Fall 2026

https://imaging.cs.cmu.edu/15-463/final_project.html

[Skip to main content](https://imaging.cs.cmu.edu/15-463/final_project.html#main) [![Carnegie Mellon computational imaging](https://imaging.cs.cmu.edu/shared/imaging.svg)](https://imaging.cs.cmu.edu/) # [15-463, 15-663, 15-862 Computational photography](https://imaging.cs.cmu.edu/15-463/index.html)
Carnegie Mellon University, Fall 2026
# Final project: Build your own 3D camera!
## Key deadlines
  * [November 19: Project ideas due on Slack (optional, but highly encouraged).](https://imaging.cs.cmu.edu/15-463/final_project.html#ideas)
  * [November 20: Project proposal PDF due on Gradescope.](https://imaging.cs.cmu.edu/15-463/final_project.html#proposal)
  * [December 14: Project report PDF and video due on Gradescope.](https://imaging.cs.cmu.edu/15-463/final_project.html#final)


## Key logistics
**Teams:** Final projects must be done individually, teams are not allowed.
**Imaging hardware:** Final projects can (and are encouraged to) make use of imaging hardware beyond the course camera (cameras, projectors, lights, depth sensors, light field cameras, special lenses, and so on). If you already have access to such equipment, then great! If not, the teaching staff will likely be able to provide it, but you should talk to us in advance.
## Project ideas
Each student will send via direct message on Slack up to three ideas for a final project. The description of each idea should be short, about one paragraph. The teaching staff will follow up on the messages, with feedback on each idea (whether it is of the right scope for a final project, whether it is too ambitious given the project timeline, and so on).
**Type and scope of final projects:** _The final project must be about implementing a computational photography method that uses hardware and computation to produce some form of 3D output (for example, depth or shape)._ This description is intentionally open-ended. Your project could be about creating new algorithms and hardware, or about re-implementing and thoroughly evaluating a published research paper. It could be using simple or advanced imaging equipment in some unconventional way. It could be proposing a modification to an existing computational photography system (software, hardware, or both) that you believe could result in some significant improvement. Especially in a field such as computational photography, the possibilities are very diverse and numerous. However, the final project should involve using some sort of imaging hardware to capture your own measurements, implementing some sort of algorithm to process those measurements, and producing some sort of 3D output as a final deliverable.
**Coming up with project ideas:** Imagining something exciting and new to do as a project is _hard_. Below are a few pointers that can help you come up with exciting and important ideas. You should also take advantage of office hours between now and the due dates for your ideas and proposal, to discuss potential final project topics with the teaching staff.
  * Most lectures (often near their end) include teasers of advanced subjects that relate to the lecture's overall theme. These subjects are not discussed in detail, but the references at the end of the lecture provide pointers to related literature. You can follow up on those pointers.
  * If the overall theme of some lecture strongly appealed to you, you can do a literature search to find more recent papers in that area, and peruse those for ideas. Good starting points for your literature search are the related sections in the Szeliski textbook (listed at the end of lecture slides as references), as those almost always discuss key recent advances and papers. [Google Scholar](https://scholar.google.com/) is also your friend, especially the option to show citations of a paper, which you can use to search through recent research on topics and papers we discuss in class lectures.
  * You can look at final projects from [previous offerings of this course](https://imaging.cs.cmu.edu/15-463/index.html#previous) (also available on [YouTube](https://www.youtube.com/@cmu-computational-imaging)).
  * You can binge-watch videos on the [ICCP YouTube channel](https://www.youtube.com/@iccp-conference), to find talks and related papers and research topics that strongly appeal to you.
  * You can check out the topics on the [ICCP Summer School](https://iccp2026.iccp-conference.org/#school), which are designed to make cutting-edge imaging research accessible as course-level projects.


Below are some pointers to specific topics that the teaching staff find intriguing and suitable for a final project for this course (most of them make some use of hardware and can be turned into some form of 3D imaging).
  * **Projectors:** [direct–indirect separation](http://www.cs.columbia.edu/CAVE/projects/separation/), [dual photography](http://graphics.stanford.edu/papers/dual_photography/), [structured light](http://www.cs.cmu.edu/~ILIM/projects/IL/lightscan/lightscanindex.html) [3D scanning](http://mesh.brown.edu/byo3d/), [optical computing](http://www.cs.cmu.edu/~motoole2/opticalcomputing.html), [optical gradient descent](https://www.dgp.toronto.edu/autotuningsl/).
  * **Speckle:** [seeing through stuff](https://www.nature.com/nphoton/journal/v8/n10/full/nphoton.2014.189.html), [motion tracking](http://wisionlab.cs.wisc.edu/project/colux/), [tampering detection](http://groups.csail.mit.edu/graphics/speckle/).
  * **Polarization:** [depth sensing](https://link.springer.com/article/10.1007/s11263-017-1025-7), [dehazing](https://ieeexplore.ieee.org/document/990493).
  * **Lightfields:** [unstructured lightfields](http://people.csail.mit.edu/abedavis/ULF/), [pinhole lightfield camera](http://www.tgeorgiev.net/FrequencyDomain_ECCV2008.pdf), [build your own plenoptic camera](http://graphics.stanford.edu/papers/lfcamera/), [motion estimation](https://wisionlab.cs.wisc.edu/project/lfsceneflow/), [shape estimation](https://cseweb.ucsd.edu/~ravir/normals_PAMI.pdf), [reconstructing transparent objects](https://www.cs.ubc.ca/labs/imager/tr/2011/RefractiveShapeFromLightFieldDistortion/), [schlieren photography](http://www.cs.ubc.ca/labs/imager/tr/2011/LFBOS/).
  * **Apertures and defocus:** [coded aperture](http://groups.csail.mit.edu/graphics/CodedAperture/), [confocal stereo](https://people.csail.mit.edu/hasinoff/confocal/), [extended depth of field](http://www.cs.columbia.edu/CAVE/projects/flexible_dof/), [focal flow](https://vision.seas.harvard.edu/focalflow/), [depth from focus on your phone](https://openaccess.thecvf.com/content_cvpr_2015/html/Suwajanakorn_Depth_From_Focus_2015_CVPR_paper.html), [depth from defocus in the wild](https://openaccess.thecvf.com/content_cvpr_2017/html/Tang_Depth_From_Defocus_CVPR_2017_paper.html).
  * **Cheap lenses:** [imaging with cheap lenses](http://www.cs.ubc.ca/labs/imager/tr/2013/SimpleLensImaging/), [depth from cheap lenses](http://www.cs.toronto.edu/~hxtang/projects/abr_ambiguity/index.html).
  * **Mirrors:** [refractive and specular triangulation](https://link.springer.com/article/10.1007/s11263-007-0049-9), [shape from specular flow](https://ieeexplore.ieee.org/document/5459164).
  * **Stereo and dual pixels:** [edge-aware stereo](http://arxiv.org/abs/1511.03296), [depth from dual pixels](https://github.com/abhijithpunnappurath/dual-pixel-defocus-disparity), [synthetic defocus on stereo](https://openaccess.thecvf.com/content_ICCV_2019/html/Garg_Learning_Single_Camera_Depth_Estimation_Using_Dual-Pixels_ICCV_2019_paper.html) and [monocular mobile phones](https://dl.acm.org/doi/10.1145/3197517.3201329).
  * **Shading:** [exemplar-based shape and material](http://grail.cs.washington.edu/projects/sam/), [shape, illumination, and reflectance from shading](https://ieeexplore.ieee.org/abstract/document/6975182), [near-light photometric stereo](https://ieeexplore.ieee.org/abstract/document/8368465).
  * **Lensless cameras:** [diffuser cam](https://waller-lab.github.io/DiffuserCam/), [depth from lensless cameras](https://ieeexplore.ieee.org/abstract/document/9064909/).
  * **Hyperspectral cameras:** [DIY hyperspectral imaging](https://www.cv-foundation.org/openaccess/content_cvpr_2016/html/Oh_Do_It_Yourself_CVPR_2016_paper.html).
  * **Imaging around corners:** [corner camera](https://people.csail.mit.edu/klbouman/cornercameras.html), [computational periscopy](https://www.nature.com/articles/s41586-018-0868-6), [accidental pinholes](http://people.csail.mit.edu/torralba/research/accidentalcameras/).
  * **Time-of-flight:** [transient imaging](https://dl.acm.org/doi/10.1145/2816795.2818103), [practical codes for 3D imaging](https://openaccess.thecvf.com/content_CVPR_2019/html/Gutierrez-Barragan_Practical_Coding_Function_Design_for_Time-Of-Flight_Imaging_CVPR_2019_paper.html).
  * **SPADs:** [low-budget 3D lidar](https://dl.acm.org/doi/10.1145/3450626.3459824).
  * **Interferometry:** [DIY white-light interferometry](https://cmu-ci-lab.github.io/summer-school/) (see [paper](https://vision.seas.harvard.edu/transient/) and [slides](https://www.dropbox.com/scl/fi/3t37tom5bep3rm0na99yk/interferometry_iccp2026.pptx?rlkey=1aqbb4k4lfkqmqprj6gdhemvx&dl=0)).
  * **Lego optics:** [Lego lightfield camera](http://lightfield.stanford.edu/lfs.html), [Lego optomechanics](https://opg.optica.org/ao/abstract.cfm?uri=ao-37-16-3408).


## Project proposal
The written project proposal should be a PDF of size between 1–2 pages, to be submitted on Gradescope. It should have at least the following sections and content:
  * **Title.** Provide the title of your project.
  * **Summary.** Summarize your project in no more than 2–3 sentences. Describe what you plan to do and what will be learned.
  * **Background.** Describe in 1–2 paragraphs why this project is hard, useful, and/or interesting.
  * **Resources.** Describe the resources (cameras and other imaging hardware, starter code, dataset, any special computing resources, etc.) you will use. If you are building off of an existing codebase, or an existing hardware setup, please explicitly say so. If there are any books or papers that you are using as references, please provide the citations. Make sure to explain what data (images, videos, etc.) you will use to evaluate your results. If you are doing a hardware project, explicitly mention so and list what equipment you will need. Please also explain whether you already have access to these resources, or whether you would like teaching staff to provide them to you.
  * **Goals and deliverables.** Describe the deliverables or goals of your project. Make sure to separate your goals into what you _plan to achieve_ (that is, the minimum set of goals you believe must be reached for the project to be successful), as well as what you _hope to achieve_ (additional goals you would like to see happen if the project goes really well).
  * **Schedule.** Provide a tentative schedule for your project. List what you plan to get done each week from now until the project due date.
  * **Format.** Your proposal should be written using LaTeX following [this research note template](https://www.overleaf.com/read/khhmvrwhkkvh#fbedbb) (you can copy it into your own project).


## Final deliverables: project report, video, and 3D output
There are three final deliverables for your project: A project report, and a project presentation video. Both should be submitted on Gradescope.
**Project report:** Your final report should be a PDF of length approximately ten pages, plus any additional pages for references. Your report should be written using LaTeX following [this research note template](https://www.overleaf.com/read/khhmvrwhkkvh#fbedbb) (you can copy it into your own project).
**Project presentation video:** You video should have a duration of 5 minutes and should be a recording of yourself presenting your final project. Creating the video will require preparing a set of presentation slides and a narration script. Think of the video as a recording of a presentation you would give about your project to an audience comprising your instructors and classmates. You can use the [ICCP 2023 video instructions](https://iccp2023.iccp-conference.org/presentation-instructions/#video_instructions) for technical information on how to prepare your video (e.g., formatting, file extension, recording software). Obviously, the ICCP time limits do not apply to you.
**3D output:** Both your report and your video must _clearly_ show the 3D output you produced with your final project. Depending on what you implement, this output could be a depth map, integrated surface, scanned object, etc.
## Special Thanks
Some of this write-up is inspired from Kayvon Fatahalian's [final project instructions](http://graphics.cs.cmu.edu/courses/15769/fall2016/article/5) for [15-769: Visual Computing Systems](http://graphics.cs.cmu.edu/courses/15769/fall2016/home).
[Back to main page.](https://imaging.cs.cmu.edu/15-463/index.html)
