Geometric Data Processing Group

6.838: Shape Analysis (Spring 2017)


Introduces mathematical, algorithmic, and statistical tools needed to analyze geometric data, with applications to computer graphics, computer vision, medical imaging, machine learning, architecture, and other fields. Potential topics include: applied introduction to differential geometry; discrete notions of curvature; PDE on geometric domains via the finite element method (FEM) and discrete exterior calculus (DEC); computational spectral geometry; correspondence and mapping; metric geometry; level set methods; descriptors; shape collections; and vector field design. (EECS departmental listing, catalog listing)


Time: Tuesday/Thursday, 1pm-2:30pm
Location: 32-124


Instructor: Justin Solomon, office hours Wednesdays 1pm-3pm (32-D460)
TA: Abhishek Bajpayee, office hours Thursday 3pm-5pm (1-225)


  • There will be four homework assignments, worth 40% of your grade as well as a course project worth 50%; you must complete all parts of the project to pass the course. The remaining 10% will be devoted to nanoquizzes every other Thursday; the lowest nanoquiz score will be dropped. There will be no final exam.
  • Our goal is to present this exciting set of highly-technical tools in an approachable and intuitive fashion. But the course is in its first year, so feedback is needed to calibrate. For this reason, ±5% can be rewarded for course participation, through engagement in lecture, discussion in office hours, and/or contribution to discussion online.
  • Assignments must be submitted by 8pm on the listed due date. You will be permitted a total of three late days over the course of the quarter, measured in periods of 24 hours. Beyond this, late assignments will lose 25% credit per day (additively).
  • Students are encouraged to ask questions and discuss the lecture content on Piazza (sign up here).
  • Collaboration on homework is permitted, but final writeups/implementations must be individual students' work. The final project can be completed in groups.




The following is a highly tentative lecture schedule for 6.838. It will be updated dynamically as the course proceeds. The list of topics is ambitious and likely to be shortened; if there are topics you feel strongly should be included/emphasized/added, feel free to contact Justin with this information.

Links to slides, Youtube videos of lectures, and homeworks will be posted on this spreadsheet as the course proceeds.