line.gif (5927 bytes)

CS348a


Breaking News:

There will be no physical lectures in CS348a for the week of March 9-13, due to coronavirus concerns. Videos of the lectures, along with the slides, will be posted on the Schedule page.

----------------------------------------------

As happened before with audio, images, and video, we see now an explosion of 3D content becoming available on the Web, derived from lightweight scanners (like the Microsoft Kinect, Google Tango, or Intel RealSense cameras) or 3D modeling software that everyone can use (like Trimble 3D Sketch Up). On the sensing side as well, a true 3D understanding of the world is crucial to current efforts in autonomous driving or robotics. Furthermore, AR/VR applications accentuate a continuing need for quality 3D content, while the blossoming area of 3D printing promises to make the process of creating physical artifacts out of such models widely available.

This course is an upper level undergraduate /graduate-level introduction to the mathematical methods used in modeling and processing geometric shapes for use in CAD/CAM, computer graphics (gaming / special effects), 3D computer vision, and in many other areas of science, engineering, and commerce. Topics to be covered include material on both designed shapes (classical CAGD), shapes acquired through sensors (geometry processing), as well as novel latent shape representations for generative models based on machine-learning approaches.

  • Homogeneous Coordinates and Geometric Transformations
  • Quaternions and their Use in Modeling 3D Rotations and Rigid Motions
  • Parametric and Implicit Representations for Curves
  • Algebraic Classification of the Parametric Polynomial Curves of Low Degree
  • Polar Forms and the de Calsteljau Subdivision Algorithm
  • The Bézier Representation and the Bernstein Basis
  • Splines and Continuity Constraints
  • B-Splines and the de Boor Algorithm
  • Rational Curves
  • Parametric Polynomial Surfaces and NURBS
  • Subdivision Curves and Surfaces
  • Triangle Meshes for Surface Representation and Reconstruction
  • The Quad-Edge Data Structure for Manifold Subdivision
  • Scan Alignment and Shape Matching
  • Surface Reconstruction from Scattered Points
  • Machine Learning Approaches to Shape Analysis
  • Mesh Simplification, Smoothing and Fairing
  • Mesh Remeshing and Parametrization
  • Generative Models Based on Learned Shape Representations and Applications

The course requires background in linear algebra and elementary discrete algorithms.

Students taking the course for credit will be expected to:

  • be present and actively participate in class
  • do a number of paper-and-pencil homeworks
  • take the class midterm
  • do a programming assignment or project

These pages are maintained by Leonidas Guibas guibas@cs.stanford.edu.
Last update March 8, 2020.