Course Overview and Instructor Introduction
Justin Solomon welcomes students to the 6838 course on shape analysis, emphasizing the interdisciplinary nature of the subject and the importance of strong coding skills and mathematical fluency in linear algebra and multivariable calculus. The course aims to explore geometric data analysis from both algorithmic and theoretical perspectives.
Prerequisites and Course Philosophy
- Strong programming skills in Julia, Python, or Matlab are essential.
- Mathematical background in linear algebra and multivariable calculus is required.
- Differential geometry is introduced as part of the course, not assumed as prior knowledge.
- Machine learning concepts will be integrated, especially in later parts.
- The course encourages interactive learning with challenging assignments and support from instructors.
What is Geometric Data Analysis?
- Analyzing geometric data: Algorithms for 3D shapes in computer vision, graphics, robotics, and autonomous driving.
- Geometric approaches to data analysis: Viewing high-dimensional data sets as geometric objects to apply machine learning techniques. The course bridges these two perspectives, applying mathematical ideas to both concrete and abstract geometric problems.
Theoretical Toolbox in Geometry
From Euclidean to Differential Geometry
- Euclidean geometry covers basic shapes like triangles and circles, focusing on proofs. For a deeper understanding of triangles, refer to the Syllabus Overview for Class 10 Mathematics: Triangle Properties and Similarity.
- Real-world data is often noisy, incomplete, and high-dimensional, requiring advanced geometry.
- Differential geometry applies calculus to study smooth manifolds, shapes that locally resemble Euclidean space but can be globally curved.
Key Concepts in Differential Geometry
- Manifolds: Spaces that locally look flat but can have complex global structure.
- Curvature: Gaussian and mean curvature measure how surfaces bend.
- Geodesic distances: Shortest paths constrained to surfaces, important for navigation and shape analysis.
- Vector fields and flows: Describe dynamics on surfaces, such as fluid flow.
- Spectral geometry: Studies shapes through vibration frequencies, linking physical intuition to mathematical properties.
Modern Extensions
- Riemannian geometry: Generalizes geometry by allowing local variations in distance and angle measurements, crucial for understanding curved spaces like the Earth.
- Geometric mechanics and Lie groups: Study constrained physical systems (e.g., pendulums) using geometric and algebraic structures.
- Metric geometry: Deals with spaces where only distances are known, useful for noisy or discrete data.
- Optimal transport: Lifts geometry to probability distributions, enabling analysis of uncertain or fuzzy data.
- Topology: Focuses on connectivity rather than distances, with applications in data analysis and vector fields.
Computational Toolbox
Challenges in Representing Shapes
- Shapes can be represented as triangle meshes, point clouds, graphs, or other structures.
- Discrete vs. smooth perspectives: Triangle meshes are piecewise flat but approximate smooth surfaces.
- Discrete differential geometry develops theories that preserve geometric structures on discrete domains.
Structure Preservation and Discretization
- Curvature on discrete curves can be defined via turning angles at vertices.
- The turning number theorem links integrated curvature to topological invariants.
- Trade-offs exist between convergence (approximating smooth theory) and structure preservation (exact discrete analogs).
- No single discrete Laplace operator satisfies all smooth properties, leading to diverse approaches.
Algorithms and Numerical Methods
- Numerical partial differential equations (PDEs) adapted for discrete domains.
- Large-scale optimization with complex constraints, e.g., surface parameterization and quadrangulation.
- Linear algebra and matrix factorization are foundational tools. For a comprehensive understanding of data structures that support these concepts, see the Introduction to Data Structures and Algorithms.
- Advanced algebraic structures like representation theory appear in modern applications.
Applications of Shape Analysis
- Computer graphics: Texture transfer, 3D modeling, and retrieval.
- Computer vision: 3D reconstruction, navigation, segmentation.
- Medical imaging: Detecting anomalies, analyzing organ shapes, and population studies.
- Manufacturing and fabrication: Defect detection, topology optimization, 3D printing (e.g., Invisalign retainers).
- Architecture: Designing and tiling complex curved surfaces with manufacturability constraints.
- Animation and simulation: Character pose spaces, inverse kinematics, physical simulations of fluids and cloth.
- Machine learning and statistics: Semi-supervised learning on graphs, curved PCA, embedding high-dimensional data.
Conclusion and Next Steps
The lecture concludes by emphasizing the exciting interdisciplinary opportunities in shape analysis and applied geometry. The next lecture will focus on mathematical preliminaries, including linear algebra and notation specific to geometric computations, preparing students for deeper engagement with the course material. For those interested in further exploring geometric concepts, consider reviewing the Understanding Curvilinear Coordinates: A Comprehensive Guide and the Understanding Rectangular and Polar Coordinates for Advanced Function Analysis.
Hello, everybody, and welcome to the first lecture of 6838. My name is Justin Solomon, and I'll
be your instructor for the semester in our course, which is covering topics in shape analysis. To give a tiny amount of background--
again, there's my email. You can also take a look at some of the research that my students are doing by taking a look at this website,
gdp.csail.mit.edu. Our TA this semester, David Palmer, is also a student in my research group,
so he's a very experienced member of the geometry processing research community. In today's video, I'm not going to cover administrative details
for our course-- how grading is going to be done and so on. But we'll do that separately in a Zoom call.
There's no reason to put that on YouTube. So for now, what I'm going to tell you about is essentially what we're
going to be covering for this semester in 6838. My goal here is to get you excited about our course and to give you some idea of the kind of material
that we'll be covering by the end of the semester. So just for a little bit of background. The prerequisites that we're going to need for this course
are pretty loose. I'm not going to check everybody's transcripts and make sure that they fit into 6838.
The main two things that we need here are pretty strong coding skill. Our assignments are probably going
to be put out in Julia, Python, or Matlab. Although your final project, I don't really care. You can do whatever programming language you prefer.
But the main skill that you're going to need in 6838 math fluency in linear algebra and multivariable calculus.
Now in this course, we're going to use a lot of ideas from differential geometry, but we're not going to require it as background.
In fact, I think one of the really fun ways to learn differential geometry is in these kinds of applied problems
that we're going to study. There are many different other areas that are not required but won't hurt as some background.
Many of you are students that took my computer graphics class last semester. That will give you some idea of the basic types of mathematics
that we do in 6838, as well as some of the applications that are really critical in this research field. Many students in our class come from the Math Department.
If you're taking differential geometry or numerical analysis, that's great. But again, it's not required.
And then finally, machine learning, especially in the last part of our course, is going to be relevant to motivate some
of the applications and also gives you a lot of opportunity to practice matrix calculus, computing lots of gradients of functions, and so on.
The basic philosophy here-- the graduate classes that we teach at MIT are faculty that are really excited about their research
field, and we want to introduce it to all of you. So David and I want you to take this course. Now what that means-- our assignments are
designed to be interesting. We're putting out new assignments this year, especially in our new online environment.
And some of them might be particularly challenging. And so my hope is that you won't get discouraged, but rather will reach out to your instructors for help,
right. We're trying to make this an interactive experience that covers lots of interesting material
in the applied geometry regime. So without further ado, let's get started and give you a bit of a summary of the high level
philosophies of the course and essentially some of the content that we're going to be covering. So we can think of this course as one
that is covering topics in geometric data analysis. Now, this is a purposefully vague phrase. And I think that you can read it in two different ways, which
is what I've drawn on this slide here. On the one hand, we can think of geometric data analysis as algorithms for analyzing geometric data.
Right, so oftentimes in computer science, we encounter shapes in many of the applications that we care about, right.
For example, in three-dimensional computer vision, computer graphics, autonomous driving, robotics-- all of these are different research fields where
basically we're trying to navigate, understand, and manipulate a three-dimensional world. On the other hand, we're also going
to study geometric approaches to data analysis. Right, it's data analysis using geometric techniques. So many techniques in high dimensional machine learning
can be understood as thinking of a data set or a probability distribution as some geometric object that's embedded in a high dimensional space.
And essentially, what we're going to find is that items one and two on our list here have a lot of commonalities.
So one of the really fun things that we can do in this course is derive a mathematical idea or geometric construction and then show you guys how it's relevant,
both to geometric data, like autonomous driving, robotics applications, as well as more abstract applications in high dimensional geometry.
And we're going to go back and forth between the two throughout 6838. So I thought for the rest of today's lecture, what
I would do is give you all a very, very high level picture of what the advanced geometry world looks like from my perspective as well as some
of the computational toolbox that we're going to be using in this course. So that's our basic outline here,
is to give you a sweeping and extremely biased, toward my perspective, overview of applied geometry. We'll start with some of the theoretical toolbox that
are available to us from our colleagues in the Math Department. We'll talk about some of the computational toolbox,
like the algorithms that we tend to use in this research field. Then we'll conclude with some of the application areas that are particularly exciting and useful
in this domain. Now, today's lecture is mostly a picture book. I'm just going to show you some really cool ideas and pictures
from geometry. And then starting in our next lecture, we're going to dive right into the mathematical content.
So today's lecture will be pretty approachable. The next one may scare you away. But I hope not.
I hope that everybody sticks with it. So let's get started here and talk about the theoretical toolbox in geometry.
Now probably most people that take 6838 already have taken a geometry course in their life-- probably in high school, maybe your first or second year.
And usually a high school geometry course covers what we would call Euclidean geometry. Right, in a Euclidean geometry course,
we're studying Euclid's elements. Right, Euclid was a pretty famous geometry researcher from a few millennia, century or something ago.
And Euclidean geometry is mostly an excuse to teach high school math students how to write proofs. And so the actual shapes that we see in Euclidean geometry
are pretty darn straightforward. Right, if you remember, you spent a lot of time worrying about drawing circles and straight lines,
line segments, and triangles. And that's basically it, right. And the beautiful and mildly terrifying thing
about Euclid's elements is that just with these basic shapes, like right triangles and circles, we already can really struggle and prove
really difficult non-trivial things about geometry using a nice, formal system of calculus. Or not even calculus really, just compass, straight edge,
and simple geometric constructions, and so on. But here's the thing. In computer science, we're not worried
about a composite or straight edge, we're worried about data that looks like this, right. So this is a point cloud that was collected, I believe,
using a lighter scanner. The three-dimensional scene. You can see that there's complicated structure.
There's noise. It's incomplete. And most importantly, from Euclid's perspective,
the shapes here are not triangles, right. There's all kinds of crazy things going on in this scene. And in fact, all of the pictures that we're drawing so far
are two and three dimensional. But the reality is that oftentimes, our geometry is totally abstract.
Here's the famous MNIST digit data set. Right, these are a bunch of handwritten digits on people's computer.
And these are some low dimensional subset of a very high dimensional space of possible images that you could draw on the computer.
And so the questions that we're going to be answering are, how do these basic ideas of Euclidean geometry apply to these much more high dimensional, noisy, incomplete,
challenging problems? Now if we trace forward a little bit in the history of mathematics, whereas we started
with Euclidean geometry and these basic elements, pretty soon mathematicians realized that that wasn't sufficient.
And so we started developing more and more complicated theories of geometry that could handle more and more complicated shapes.
So one of the big major developments in geometry moving forward from Euclidean geometry, jumping forward many centuries, I believe,
is the development of an area called differential geometry. Now differential geometry is all about how to apply tools from calculus to geometry problems.
And I believe historically, it actually appeared pretty shortly after the development of calculus. It was one of the major applications
in the mathematical domain. Incidentally, here on this slide, I'm showing you pictures from a really famous series
of, I guess, five textbooks in differential geometry by Spivak. This is a comprehensive introduction
to differential geometry. I certainly have never read all five of these books, but I encourage all of you guys to.
They're really beautiful textbooks, both mathematically, and actually the covers are really funny. They're from the '60s or '70s.
And they have this whole series of cartoons with the plot ending with the marriage, I believe, of [INAUDIBLE].
Anyway, it's a fun read. And in fact, when you read the introduction to these textbooks, Spivak talks about how
he set out to write the great American differential geometry text. And I think he succeeded here.
In any event, differential geometry is all about the study of a particular object called a smooth manifold.
And basically, a manifold is differential geometry's term for shape, right. So a manifold is an object, like what I am showing you
on this slide here. And it satisfies a few properties. Essentially, a manifold you can think
of as some space where, if I take a magnifying glass to that space, I get really, really close up to it, it looks like Euclidean space Rn.
Right, so, for example, if you look at this double torus on this slide here, the double torus is not Euclidean.
It's not flat. It's some weird curved object. But if I get really, really close to that double torus,
I can't see that. Right, if I'm just an ant crawling along the surface, to me, it just looks like this infinite space
of just vast flatness. And that's what a manifold is locally. But then globally, these little local flat areas
can be curved ever so slightly to form an interesting object like a surface, like what we see on the slide here. So in this course, we're going to define
what a smooth manifold is. We're mostly going to be worried about manifolds that are embedded in Euclidean space.
So here, the manifold that you see is sitting in three-dimensional space. It's a two-dimensional slice of 3D.
So here, n-- rather, k would equal 2, and n would equal 3. There are more abstract notions of manifold, where we get rid of the requirement
that it's sitting inside of some higher dimensional space. And we'll talk about that a little bit later on in this course when we talk about Riemannian geometry
and some of the applications in machine learning and manifold optimization. But essentially, this idea of a manifold
was extremely powerful, and it enabled differential geometers to develop a huge toolbox of different computations, measurements about surfaces, and so on, whose job was
to capture both locally and globally what a geometry of a surface should be. So here are some of the things that we
were able to derive in the theory of differential geometry. First of all, we can compute notions of curvature.
Now most of the shapes in Euclidean geometry are basically flat, right. They're either embedded in a plane,
they're straight lines, and so on. In differential geometry, we're now worried about curved objects, and we
want to come up with different measurements in bendiness for that curved object. Here, I'm showing you two, which are specifically
for two-dimensional surfaces embedded in three-- although I guess you can get rid of the embedded part.
And these are called Gaussian and mean curvature. And we're going to go into extreme detail in this course on how to derive Gauss and mean curvature,
how to manipulate them, and how to approximate them computationally, because they're extremely useful for understanding how people are modeling
3D surfaces on their computers. So, for example, people that are making 3D models of cars in the automobile industry
often use Gauss and mean curvature as ways to understand how smooth or nice the shape of a car is before you manufacture it.
Right, so these kinds of computations happen a lot in computer aided design. The differential geometry toolbox
also gives us some way to talk about distances other than just simple Euclidean distance. So in this course, we're going to talk a lot about an idea
called geodesic distances. So let's say that I'm an ant crawling along the surface of the bunny that we see here in 3D.
Then essentially, there's two notions of distance. Right, one of them allows you to cut through three-dimensional space.
So, for example, if I were to go from the ear of the bunny down to his back, I could just do that by cutting through the white space on my slide
and drawing a straight line. But if I'm an ant crawling along the surface of the bunny, I don't have that option.
Right, I have to crawl along the surface. So now, that it has to start on the ear, crawl down to his head, and then onto his back.
So that notion of distance, this distance along a curved space, is called geodetic distance. And it's a really critical construction,
both for 3D surfaces, as well as higher dimensional spaces-- any time your data essentially isn't embedded in some flat domain.
So we're going to talk about forward and inverse distance problems in this class. So a forward distance would be like,
given the 3D model of the bunny that you see on the slide here and two points, compute the distance from point A to point B constrained to move along the surface.
On the other hand, sometimes we have inverse problems where we're given a bunch of points and the distances between them, and our task
is to reconstruct the piece of geometry. This happens a lot in data visualization, where maybe I have a bunch of data points
where people tell me which ones are similar to one another, and now my task is to reconstruct an embedding of my data that represents those relationships
that I put on my computer. But differential geometry actually still tells us even more than just distances and curvature.
For example, one of the really powerful ideas in differential geometry involves flows and vector fields.
So on surfaces, we can put little hairs on a surface that are tangent to the surface at every point. So, for example, if I'm describing
the flow of a fluid along a surface, then maybe the velocity would be a vector field. Then part of the theory of differential geometry
actually tells us how to understand these vector fields and their dynamics. In fact, there are all kinds of intricate links between
the structure of vector fields-- for example, singular points that they circulate around-- and the geometry of the underlying domain.
So for example, the vector fields that are possible to draw on 3D space, like what you might see with fluid sloshing around
in a big bucket of water, are quite different from the vector fields that you might be able to observe on different two-dimensional surfaces.
For example, tracking wine as it drips down the side of a wine glass. So we're going to talk about some
of the big construction in vector field on surfaces both in the smooth case as well as how to discretize it on triangle mesh domains, which
is a really popular idea, especially in the computer graphics world. In fact, what we're going to see is
that we can even come up with structure preserving methods that can handle the theory of vector fields on a discrete domain, which is pretty exciting.
Another big idea from the differential geometry toolbox is the construction of partial differential equations and differential operators.
So there's this really cool idea in an area of mathematics in differential geometry-- this came even later than some of the ideas that I'm already showing you--
where essentially you can learn a lot about a shape by hitting it with a hammer. So if I take that bunny or this bus that you see on the slide
here and I give it a delicate tap-- not enough to break it, but just to hear the sound that it makes when I tap--
essentially what I observe is a bunch of different vibration frequencies. Right, we all know this intuitively.
If I knock on the table that's right in front of me, even if I'm looking away, I can probably tell that it's a piece of wood.
Maybe I know something about how thin or thick it is, and so on. This basic intuition led people in differential geometry to ask the question, how much can I learn about geometry
by doing physical calculation? And the really critical one here was an idea called spectral geometry, which is essentially saying,
what can I learn about a shape by observing its vibration patterns and vibration frequencies? In fact, there was an open mathematical problem
for a surprisingly long time given the solution of the problem, which is a kind of simple thing, which was,
can I come up with two isospectral shapes? Meaning, can I make two drumheads, where if I hit those two drumheads
and I don't get to look at the drum, I just get to hear the sound that it makes, can I make two drums that always sound the same
but have two different shapes? And for a long time, we didn't know the answer. Which is really surprising.
Right, I mean, if you think about it, vibration frequencies are somehow a one-dimensional signal, right.
It's just a list of hertz. But a shape is maybe a two, three dimensional object. Now the answer is, unfortunately, no.
Yes, no-- whatever. The answer is that there do exist isospectral shapes. But they're extremely rare.
They're hard to construct. And the idea of using differential operators-- essentially like the derivatives that
show up in the equations that govern the motion of vibration, heat diffusion, and so on, can tell you a ton about a piece of geometry.
So these are just a few of the really cool tools in the differential geometry toolbox. Notice, I haven't told you how to use them computationally.
But these are all of the really big ideas that have existed in mathematics for centuries, in some cases. Now the one that we're looking at here
turns out to be a lot more recent, but particularly important in the applied domain. So if we zoom forward another 100 years or so,
then we start reaching some of the even more modern theories of geometry. And we're going to touch on these in this course.
So for example, one of the big ideas in advanced geometry is something called Riemannian geometry. Now here's a bit of a philosophical question.
Take a look at the map that I'm showing you on this slide here. In some sense, this map has two different geometries associated to it, right.
Now probably, most people in 6838 would agree with me that the Earth is a sphere. Not going to hold that debate in this course.
But is the figure that I'm showing you on this slide here, is that a sphere? No, it's a rectangle.
Right, and so there's actually two pieces of geometry that are somehow interacting. Right, there's the map that I'm drawing on the screen,
and then there's the object that the map represents that we all understand, which is the 3D sphere-like object, which is the Earth.
So here is the question that Riemann asked. Now, here I've shown you two different line segments on this map of the world.
And the way that I did this is I was in PowerPoint, I made one of the red line segments, I copy-pasted it, and I just dropped it somewhere else.
Right, so one of them is in, what, Russia, Europe. The other one is connecting Central America and Africa here.
And the question is, are these two line segments identical? Now, one answer is yes. I mean, on the PowerPoint slide that I'm showing you,
these are identical. I copy-pasted to get from one to the other. But if we understand this picture
as a representation of some other piece of geometry, right, the 3D Earth, then the answer is no. So essentially what Riemann did, one
of his many big contributions to the mathematical world, is to divorce these two ideas. This map is giving us some notion of connectivity,
topology, and so on. But we can attach a different notion of distance to every point in the domain.
What do I mean by that? Well, if you look at Antarctica on this map, it stretched out quite a bit horizontally.
Whereas maybe Central America is actually stretched out a lot less. And so essentially the notion of computing angles and computing
distances depends on what point you're at in this map here. And that was the big idea of Riemannian geometry. In fact, what Riemann's viewpoint here was that
just by having some local notion of being able to compute angles and distances, you can do most of the differential geometry calculations that I already gave you.
So for example, let's say that I wanted to sense curvature. I wanted to know how bendy the Earth is. But I am some tiny ant that's walking
along the surface of the Earth. Now from my perspective, it's really hard to know whether or not the world is curved.
In fact, we know that for hundreds of years, people weren't so sure. And why is that?
Well, as we walk around in Boston, we don't really sense the curvature of the Earth. Right, we need some clever experiments
in order to do that. But what Riemann observed is that by doing certain differential measurements,
we can begin to sense things like curvature, and they only depend on local notions of computing angles the distances, and so on.
So for example, let's take a look at the three images that we see on the slide here. So these are prototypical examples
of a domain with zero Gauss curvature, or curvature tensor, if you want higher dimensional stuff. So that would be like a flat domain, positive curvature,
like a sphere, and negative curvature like a saddle. And let's say that I know I have a friend who's another ant. And now I'm going to take these two ants,
and they're going to hold hands with one another. Normally, if I'm teaching this in a classroom, maybe I would make a student uncomfortable
and ask them to come join me here. But if two ants held hands and they start walking forward, they can actually sense the curvature of the Earth that's
underneath them. Now they'd have to probably walk a long distance, because ants are pretty small.
But what's going to happen, as illustrated on this slide, is that even if the two ants are moving along geodesics, they're moving in straight lines,
just following their toes, they'll actually get closer together horizontally to one another if the Earth is positively curved.
They'll get farther apart if it's negatively curved. So what's Riemann's point here? Riemann's point is that even if the only thing I know how to do
is to sense the Earth as a two-dimensional object that I can walk along, I can still sense things like curvature.
I don't actually need 3D space at all to measure these sorts of things. And this is a really big idea, because it actually
allows us to generate all kinds of interesting abstract geometric spaces. And in fact, this shows up in a lot of applications as well.
So, for example, if you want to totally mind-blowing, really difficult to think about area of research, some people study how to put a geometric structure
on the space of geometries. Now this sounds like a really abstract problem, but it's not. So, for instance, if we take a look on the right-hand side
here, we have some animated character that's moving his arms up and down. We can think of each pose of this character
at some point in a very high dimensional space of all the possible poses for this character. And then the question is, which poses are nearby,
and how can I get from one to the other? Well, that sounds an awful lot like computing geodesic distances.
But in order to do that, we need to put a geometry on that space. Now, this was a successful idea in a lot of different areas,
both in computer animation, like what I'm showing you on the right-hand side. And actually one of the most popular applications
of this idea is in medical image analysis. So for example, let's say that I have a large population of people that I've put into an MRI
or some other scanner that senses the shape of their brain. I'm not an anatomy expert, so when
I give these kinds of examples, I'm probably going to get it wrong. And now what I want to do is understand
over a large population, what are the interesting variations that I see in a particular organ? So for example, maybe people's livers
tend to get taller and smaller, fatter, maybe there's some bump that tends to go in and out. One thing I can do is try to put a geometry
on the space of medical images, and that allows me to apply techniques like principal component analysis to do statistics on that collection of shapes
that I just accumulated. So this really abstract idea that dates all the way back to Riemann, if not earlier, actually
has really important practical perspective that we can apply in different domains, like medical imaging, computer animation.
Now to continue in our grab bag of interesting modern ideas from geometry that we're going to try and explore in this class, another big one that's
important in the physical simulation and computational engineering world is the idea of geometric mechanics.
Now geometric mechanics is closely linked in with Lie groups and other constructions. By the way, I'm going to tell you something right now,
and I need you to remember this for the rest of this course, or else this is the one way that I'm going to guarantee you lose points in 6838.
Which is that if you see this word, "Lie," this is somebody's name. This is a capital L. And it is pronounced
L-E-E. This is a Lie group. If I hear any of you guys in my office hours calling it a lie group, that's going to be a problem.
That's the classic mathematical mistake. All right. But in any event, the basic idea of geometric mechanics
and related disciplines is as follows. So essentially, take a look at the double pendulum that I'm showing you on the slide here.
So remember that a double pendulum is like two sticks that are hanging off of the ceiling, like what you see on the slide.
And essentially, one is allowed to pivot along the top, and the second one is allowed to pivot along the hinge that's attached to the first.
Now, in the figure on the left-hand side, it looks like this is essentially some configuration in two-dimensional space.
But the reality of the matter is that the sticks that are tied together cannot change length. And so in geometric mechanics, the question that we ask
is, should we really understand this as the two-dimensional plane with some pendulum swinging back and forth when I've added constraints to my system?
And in fact, there are other perspectives that are equally valuable. So, for example, on the right-hand side,
I show you the configuration space of this two-dimensional system, which is essentially the product of two circles, right.
The top piece of the pendulum can pivot about the point where it's attached to the ceiling. And the second one, theta 2 here,
can pivot about the first. Right, so there's basically two different angles between 0 and 360 degrees that govern the dynamics
of this physical system. So in geometric mechanics, rather than understanding the pendulum as swinging around in 2D space,
like what I'm showing you on this slide, maybe instead I view it as a path on a torus, like what I'm showing you on the right, which is basically the product
of the angles theta 1 and theta 2 measured around them. So you can take the equations of motion, right, like F equals ma, and we can
try to understand what those look like as dynamical systems on this torus object. And these frees up all kinds of really cool, interesting
geometric figures. And they have the added benefit that when I simulate this physical system, I'm
operating the natural space of parameters. I don't have to worry about the length of the pendulum accidentally getting too long or something,
which can happen if I don't discretize it this way. Now Lie groups are essentially groups in the algebraic sense with a geometric structure attached.
So for example, here, essentially there's two groups, both of which are circles, right, the circle being theta 1 and another circle being theta 2.
So this is simultaneously a manifold, like a circle. But it's also a group, like an angle with a plus sign operator.
And so the three of Lie groups essentially says that you can combine algebra and geometry and come up with all kinds of interesting ideas,
many of which interact with these geometric mechanic setups which tend to be discretized in terms of angles and rotations, translations-- things with group structure.
Now zooming back even further in the theory of geometry, maybe we no longer assume that we have calculus at our disposal.
There are a lot of spaces that have distances attached to them, but they're too noisy or singular to allow us to compute derivatives.
Or maybe they're composed of a bunch of discrete objects. In that case, we have to make do with a much weaker theory called metric geometry, which is essentially
all the geometry that we can do when the only objects we have access to are some space, like a set of points, and the distances between them.
Now, metric geometry is really critical for problems like embedding, where maybe I can sense these kinds of distance relationships,
but I want to put them into a space to visualize. There are also some algorithms out there that only operate on distances, and it's actually
enough to just have a metric structure. So for example, in a lot of retrieval problems-- like I have a big collection of weird objects,
and all I can do is measure which ones are similar and which ones are not. Then I can still try to solve problems
like retrieval, which says, given a query, give me other objects that are nearby. So for example, if I think of the set of web pages
on the internet as some geometric space, well maybe it's actually not unreasonable to measure some notion of distance or similarity
between two web pages. Then I can just use that distance metric structure, even if it's not Euclidean or even Riemannian, to solve problems,
like find me the closest 10 web pages to the one that I just read. So these kinds of ideas appear not only in applied geometry
but also in areas like natural language processing, where the kind of geometric structures we have are extremely weak and only approximate.
In this class, basically because it's close to my heart, we'll touch upon a theory called optimal transport. This is relevant especially to machine learning domain
and some in computer graphics. The theory of optimal transport, which happens to be central to my own research personally,
is all about how you take geometry on a space and lift it to a geometry on the space of probability measures. So what we're going to see in optimal transport
is that essentially, it allows us to do some of the geometric computations that we're going to derive in the first half of the class
even when our data is noisy or uncertain. Right, so in the noisy and uncertain case, maybe now we think of our shapes as probability distributions.
We can't sense them exactly. But we're going to see that we can still compute things like distances and even curvature,
just given that fuzzy notion. This is an emerging area of research in geometry and one that changes every single year.
And then finally, if we want to put the weakest possible structure on a geometric domain, maybe the only thing that we know
is what is connected to what. So that is something called topology. Right, so in general mathematics,
there's geometry, topology. Right, geometry means I can measure distances, bending, stretching, and so on.
Whereas in topology, all I know is connectivity. Now there's an entire research domain called computational topology, which essentially takes
different topological constructions and applies them to data that we see in the real world. Right, so this is sometimes called TDA or topological data
analysis. Now we may only touch upon topological constructions in this course, but we're going to see that they appear,
especially when we talk about vector fields, essentially as some global way to understand some space, whether it's a shape, a particular vector field, and so
on. And unlike our geometric constructions, topological measurements are going
to be ones that are very, very stable. Right, if I take my geometry and I just bend it and stretch it and don't do anything totally drastic like cutting it,
the topology of the domain remains the same. There are all kinds of beautiful open challenges in this domain as well.
For example, if I'm given a bunch of samples from some topological domain but I forgot the topology, can I come up with an algorithm that, with high probability
or reliably or whatever, can actually try to reconstruct or sense the topological structure underneath?
This gives rise to a lot of the ideas in TDA, persistent homology, and so on, which we may touch upon toward the end of this course,
depending on timing and where the student interest is. So essentially, in, it looks like about 33 minutes here, we have some very high level summary
of the theory of geometry. And hopefully I've managed to convince you guys that this isn't just like a mathematical exercise that's
intended to torture students in the Math Department. It's actually really important for the applied domain. And essentially our job in this course
is first to introduce these ideas. We're only going to do that intuitively. I'm not going to do a ton of theorems and proofs.
But then also to show how they can be translated into discretizations and algorithms. So that's the next step of our discussion for today is,
what computational toolbox do we have at our disposal to take these high level ideas from theoretical geometry and make them work in the applied domain?
Now in the applied world, there's so many different notions of what it means to be a shape. In computer graphics, we care about triangle meshes, triangle
soup, subdivision surfaces, CAD surfaces, splines, and so on. In other areas of computer science, maybe we have graphs or networks.
In autonomous driving robotics, oftentimes we have plane clouds, like just big piles of points sampled from some piece of geometry.
So in this course, we're going to talk about many different applications that have many different notions of what it means to be a shape.
So this term shape here is going to be extremely vague. It's essentially almost any object with some notion of proximity or distance
or curvature, bendiness, holonomy, and so on. And we're going to see that in many different domains. So to give you some sense of why this is so challenging
and why this is interesting from an applied perspective instead of just a footnote, let's take a look at this very simple surface on the slide here.
Now essentially what I'm trying to introduce to you all today is, why is it so hard to even interpret a piece of geometric data.
So here, we have an extremely simple example of a shape that I might store on a computer. Here we took a dolphin, and we're representing it
with a bunch of triangles. Those of who took my intro graphics class know that this is called a triangle mesh,
and it's going to be one of the basic objects that we'll study a lot in 6838. And here's the basic issue that we
have to contend with all the time in this course. When I look at this dolphin, I can interpret it two different ways.
Now if I'm being a nit-picky mathematician, when I look at this dolphin, what is this thing? Well, it's just a big pile of triangles.
But that actually already implies a bunch of information. In particular, well, triangles are flat. Right, so what is this object in the most basic sense
from a geometric perspective? Well, it's just a bunch of little flat domains that are glued together along these hinge edges
and meet also at vertices. On the other hand, if I step back 10 feet and I look at the same surface, what do I see?
Well, probably I'm thinking of this triangle mesh not as just a bunch of flat stuff glued together, but actually some approximation of a smooth surface
with curvature. And this plays out in a lot of different ways. Right, is this an approximation of a smooth object,
or is it a discrete object with lots of flat facets? And what does that imply about the way that we do geometry? So for example, one question that I might ask is,
can a triangle mesh, like this dolphin that I showed you on the previous slide, have curvature? Now initially, this seems like a goofy question.
I mean, of course, it can. When you look at the dolphin, it looks bent. What are you asking here?
But if we think about the dolphin as a triangle mesh, just a bunch of triangles linked together, the struggles are all flat, they don't have curvature.
So from that perspective, maybe we actually have a singular domain. We have a domain that is piecewise flat,
where the pieces meet together, and suddenly this infinite amount of curvature as the surface bends from one triangle to the next.
On the other hand, maybe I'm just thinking about curvature the wrong way. I should think of the dolphin surface
as an approximation of the smooth object. And maybe it does have curvature, at least approximately and in a finite way.
These are two different questions, and depending on who you ask in our domain, they might answer this question yes or no.
I think we'd all say yes, but then what we have in our head of what the word curvature means might be a little bit different.
So doing research or in this domain or participating in our course essentially requires you to be a jack of all trades.
And so when we look at a surface, we simultaneously have to split our brain into two different ways of thinking.
On the one hand, we're going to be thinking about smooth differential geometry and what that implies about the way that we analyze the surface, right.
When we step back 10 feet from this wiggly bar object that I'm showing on this slide, it looks like a smooth object. On the other hand, putting our foot back
into the Euclidean universe, this is also a discrete object. So composed of a bunch of different triangles that are all linked together.
And when we actually sit down and start writing algorithms that process these shapes, we're going to need to keep the discrete perspective in mind.
And so we're going to go back and forth between discrete a lot in this course. And in fact, oftentimes they get blurred together.
So one of my favorite research fields in geometry is in an area called discrete differential geometry. Now mathematicians that I talk to always think
of this name of a research discipline as somehow a contradiction in terms. Differential implies that we're working with smooth objects,
but then discrete seems to imply that we're working with things like triangle meshes. Discrete differential geometry-- the basic idea
here is that we should be able to have our cake and eat it, too. That when we look at triangle meshes,
like what I show you on this slide here, we're going to come up with a theory of differential geometry.
For example, how to define things like geodesic distance and curvature that work on a triangle domain and have many similar theorems to what we might encounter
in the smooth domain, but then the theorems actually hold with an equals sign. It's not an approximation that only holds as our triangles get
really, really small. So in order to do that, we have to really, really carefully define different notions that are
compatible with both discrete and smooth domains. So this modern approach essentially needs us to use two different terms
and be very careful with what we mean. There's discrete geometry. This would be like understanding a triangle
mesh as a big collection of triangles and doing a computation directly on the domain. And there's discretized geometry,
which would say our triangle mesh is not a geometric object in itself, it's just some approximation of a smooth domain
that we don't have access to. And both of these perspectives are really useful, but they're separated in the theory of discrete differential
geometry. In particular, DDD is a discrete theory paralleling the theory of differential geometry.
So we'll talk about that a lot in the first third of 6838. The basic idea here is to study an idea called structure preservation.
So this is a really interesting idea that arose in, I would say, the last 20 years or so. Which is the idea that maybe rather than just
approximating notions like curvature on a triangulator domain, I'm going to define a new notion of curvature on a triangulator domain that preserves properties
from the continuous one. So let's see what we mean. So in our next couple lectures, after we
do some math preliminaries, we're going to talk about curves-- just curves in the plane.
And one of the basic things that we might want to measure about a curve is its curvature. Now roughly, if I think of a curve as some function
gamma of t, then the curvature of my curve is gamma double prime of t. Now I have to be a little bit careful
when I define curvature, because if I hit on the gas when I drive along that curve, then the geometry doesn't really change.
It's just the way that I trace it out. So I have to make an additional assumption, which is that I'm traveling along my curve with constant speed.
If you're not familiar with these terms, that's OK. We're going to cover them in about two lectures. The curvature satisfies a really interesting property,
which is the turning number theorem-- what I'm showing you on the slide here. Now at a high level, what the turning number theorem says
is if I take the curvature of a curve and I integrate it along the entire curve, what I get is actually a topological invariant called the turning
number or the winding number. That's what I'm showing you on the top of the slide here. Essentially, the turning number of a curve
is the number of times that it loops over itself before it meets up again. So here's the theorem on the top.
And essentially, curvature is some second derivative quantity. We're going to go through this in a lot more detail
in a few lectures. But there's some interesting property of curvature, namely that when I integrate this local quantity
along the whole curve, I get some topological invariant, like the number of times the curve twists over itself. And maybe that's a structure that we'll
want to preserve when we discretize curvature. Now here's one way to discretize curvature, which is sort of intuitive.
And that's illustrated on the bottom part of our slide here, where essentially what we do is we say that a curvature of a curve when it's just
a bunch of line segments, like what I'm showing you on the bottom, it's concentrated at the vertices, and it's the turning angle of the vertex.
Right, so this is the idea that, well, if two vertices meet and they form one long line segment and the curvature is zero,
then as those vertices hinge, the curvature increases, like what I'm showing on this slide. Now you might remember a theorem from your high school geometry
class-- if you haven't, that's OK, again, we're going to review this later--
which was the exterior angle theorem. Which essentially says if I draw a polygon in the plane and I sum up all these exterior angles, what I get is 2pi.
And in fact, I can generalize it ever so slightly and get 2pi times the number of times that a polygon winds over itself if it's allowed to intersect.
Well, if I took a look at these two formulas, they look awfully similar. Right, the two blue boxes here are essentially
very similar properties. So one thing I might do is to find the curvature of a curve on the discrete domain here-- just a bunch of line segments--
some quantity that is sitting on the vertices and is the turning angle, like the angle between these two line segments, I guess, subtracted from 180 degrees.
And then there's actually a nice notion of structure preservation. Namely, I chose a notion of curvature of my discrete curve
that satisfies the same property that the turning angle theorem satisfies in the smooth case. Now what have I not done?
I have not shown you that this alpha measure or curvature on the bottom of the slide here has anything to do with that smooth measurement.
Namely, if I take my curve and I start refining it and refining it and refining it until it's a bunch of itty-bitty line segments,
that this measurement I'm showing you has anything to do with kappa on the top of the slide, and that second notion is something called convergence,
which is essentially, am I approximating some smooth quantity as I refine my discretization? So again, we have these two interplaying ideas.
There's convergence, which is how well am I capturing the smooth theory? And there's structure preservation, which is saying,
I want my smooth theory to hold exactly in the discrete domain. And there's a push/pull between these two considerations. In fact, one question that you might ask
is, can you have it all? Can you come up with a convergent theory of discrete differential geometry
that preserves a bunch of structures from the smooth case but operates on objects like triangle meshes or sequences of line segments or what have you?
Unfortunately, or excitingly, depending on your perspective, the answer is actually no. And this is super interesting and not obvious at all.
So here is a well-known paper in the geometry processing domain. It's called Discrete Laplace Operators-- No Free Lunch.
And essentially what they do is they go on a long list of all of the properties of the Laplace operator-- one object that we're going to study in this course
later on. Laplace operator has a lot of different properties you might know from math class, you might not.
I mean, they include something called a maximum principle. That it's elliptic or a positive definite and so on. You can make a long list of all the things
that the Laplace operator holds in the theory of smooth differential geometry. Then you can ask, can I make some construction,
in this case operating on a triangle mesh, that satisfies analogs of all the same properties? And the answer is actually no.
So here in this paper, it says, "Building on the smooth setting, we present a set of natural properties for discrete Laplace operators
for triangular surface meshes. We prove an important theoretical limitation-- discrete Laplacians cannot satisfy all natural properties.
Retroactively, this explains the diversity of existing discrete Laplace operators." Now that last little tag I think is what's
so cool about this domain. That if you're an engineer working with discrete geometry, even if you care about a bunch of smooth properties
of your domain that you only have approximate access to, you have to pick and choose which properties you need to measure well.
And you can't necessarily measure them all well. And what that means, for example, for curvature is that for every one measurement
we do in the smooth theory, there's a whole zoo of potential analogs in the discrete theory, and it's not clear which one is the correct analog.
It depends on your application. Which is super interesting. It essentially it gives us a lot of freedom
to pick and choose the properties we need for our discrete calculation, because we can't have them all.
Luckily, when we're doing this kind of modeling there's a huge toolbox of different algorithms, numerical measurements, approximations
that we can draw from. And so in this course, essentially by exploring these ideas, how we can do geometric measurements
on discrete or discretized domains, we're going to make use of all kinds of different sledgehammers, from numerical analysis,
computational geometry, and other disciplines. One of the big ones that's going to come into play a lot in this course is numerical partial differential equations.
PDE, Partial Differential Equations, is not a background prerequisite for this class. So we're going to introduce all of the notions
that you need as they come up during our discussion. And we're also going to talk about how we can make partial differential equations work
on a discrete domain. So we'll introduce the finite element theory as well as some other theories that are relevant, specifically
in the geometric case. Algorithms that are relevant to geometry are not just numerical PDE.
Another important one is large scale optimization. Large scale optimization is a super popular problem to study in regime of machine learning
but it also shows up all over the place in computer graphics and other domains that are operating mostly on geometric domains.
Now one of the really interesting things and one of the reasons that I hope some of our friends in optimization come join us for this course
is that the kinds of optimization problems that we tend to encounter in geometry are structured very differently from the kinds of ones that you encounter
in deep learning or some other discipline. Algorithms like stochastic gradient descent are no longer what's relevant to us,
because we really care about smooth structures and those last couple of bits of precision in our optimization problems.
And moreover, oftentimes, we have really complicated constraints. So on the slide here, I'm showing
you one prototypical example of a really yucky optimization problem that we encounter in geometry domain. This is something called surface parameterization.
So here, we have a 3D cow, and our job is to make that cow into a carpet. We're going to take that couch and smash it onto the plane.
Those of you who are familiar with computer graphics know that the reason we might do this is to have a texture map. So maybe I store an image with the texture on the cow.
And then I can wrap it around the surface using this parameterized object. Now if you think from an optimization perspective,
the problem becomes super interesting and challenging. Now why is that? Well, what are our variables here?
Our variables are the positions of every single vertex on this triangulated surface. Now even a simple triangulated surface
has thousands or millions of vertices that I have to contend with. Moreover, I have really challenging constraints,
because if any two triangles overlap in the plane, the entire parameterization is useless. Right, because then, those two triangles
have to be textured the same way in my texture map. So I have a quadratic number of constraints and a huge number of variables.
So these are very different problems than training a deep network, doing stochastic gradient descent, and so on.
In fact, some of our optimization problems are actually discrete. So if you're interested in computational fluid dynamics
or some of the engineering applications of our domain, then discrete optimization problems become really critical.
So this would include things like tiling a surface with elements that are squares or triangles. This is sometimes called quadrangulation.
And this is a problem where the variables are not just very large scale, but some of them are integer, like the grid that I'm going to use to cover this particular 3D
model. Incidentally, fun fact, this shape is called a fan disk. I think it's a part of a car, and I
have no idea what it does. But all of us in geometry use it all the time for testing our algorithms.
Other tools that we're going to use a lot include linear algebra. In fact, our next lecture in this course
is going to be basically a refresher on linear algebra and multivariable calculus, but written in a notation that we like in geometry domain.
Linear algebra shows up all over the place. We're going to see semidefinite matrices, matrix factorization, and so on showing up in mapping between surfaces,
solving the spectral geometry problems and all kinds of things in between. And, in fact, never mind linear algebra,
non-linear algebra also shows up. So for example, areas like representation theory are showing up in just some of the modern
and breaking applications of this domain. So here actually is some images from a paper from our TA David Palmer working in three-dimensional volumetric
problems. Remember I showed you that quad mesh a couple of slides ago. This is one called a hexahedral mesh, which
is a volumetric analog where I take a volume and I tile it with cube-like objects that are allowed to deform a little bit.
So it turns out the computations in this domain are working in a quotient in space of SO3. SO3 is the space of rotations.
But quotient it out by the symmetries of a cube. And this turns out to be a very complicated space and one that is something that just pops up in different applications.
In fact, some deep learning people have actually applied these kinds of things to making invariances in different deep networks.
OK, so all of this is just a big sort of internet search terms for you guys to look up later and get excited about in this course.
Obviously we're not communicating technical content, just some of the fun ideas that we'll touch upon in 6838.
And my goal here is not to scare you with all the different content we're going to cover, but rather to show you the opportunity
that we have to learn and get some intuition for many different fields that otherwise are quite abstract. So finally, I think today we should call out
some application areas of the things that we're going to be constructing in 6838. And one of the really fun things and the pleasures
of teaching this course is that we end up with students across many different departments at MIT. It's a challenge for me as an instructor
to simultaneously appeal to mathematicians, computer scientists, architects, structural engineers, and so on.
And it also just goes to show you all the different application areas of the machinery that we're developing in this course.
Some of the obvious applications are in the computer graphics domain. We can solve problems like texture transfer,
editing of 3D surfaces and modeling, 3D retrieval, finding and exploiting patterns to help make big virtual worlds, and so on.
All these are essentially some of the obvious applications of geometry in computer graphics domain. Nowadays, of course the domain that everybody wants
to get into is computer vision. And geometry is a really critical part of computer vision systems.
Right, so understanding three-dimensional shape shows up in 3D reconstruction, navigation, recognition, segmentation-- pretty much any problem
where the input is a piece of geometry. Right, I mean, there's a reason humans have two eyes, which is--
well, there are several reasons, but one of them is that it helps us to understand the shape of the objects around us, which
is some clue that shape is a really important cue when we're engineering computer vision systems. Another domain that manipulates mostly 3D shapes
is medical imaging. Everything from analyzing, trying to find anomalies, for example.
If I take a scan of your brain or of your teeth, can I detect tumors or cavities, respectively? Essentially, many of these different anomalies
show up as geometric features on your skin that you want to be able to detect, understand, compare, and so on.
In fact, there's some really fun problems. I've done some reading on how retainers work for your dental equipment.
This is one of the early triumphs of 3D printing. So the Invisalign retainer that they have in your teeth-- you can actually dig up the patent and read it,
which is kind of fun-- involves all kinds of fun geometry problems, where essentially you bite into a mold,
send that mold off to some company which takes a 3D scan of the mold, and then computes the geodesic between your teeth as they exist now
and your teeth as you'd like them to be once you're done with your orthodonture. So there's this whole sequence of shapes.
Each one of them is printed out as a piece of plastic, and that's the Invisalign retainer that you get in the mail or from your orthodontist.
So even in that world, shape analysis is really critical. Of course, manufacturing and fabrication or really central examples of areas
that care about this domain. Everything from detecting defects and scanning 3D objects to 3D modeling, topology, optimization,
and other domains that involve making objects before they're putting into devices for additive manufacturing and other tasks.
Architecture works with crazy shapes all the time. In fact, architectural geometry is one of the big applications of areas
like discrete differential geometry. But they also encounter really challenging constraints. I mean, at the end of the day, your building has to stand up.
Moreover, sometimes the constraints are quite geometric-looking in nature. So for example, maybe I want to tile a building with windows.
It turns out that windows-- my extremely coarse understanding is that, of course, the easiest to manufacture windows
are flat. The second easiest to manufacture windows are what we would call developable,
which would be like making them into a cylinder-- something that I can get by bending the glass but not stretching it. And then the most complicated ones
are curved domains, like spheres or saddles that actually have intrinsic curvature. And so manufacturability actually tells us
something about the geometry of the objects that we might want to make in our architectural application. Later on in this course, we'll talk
about collections of shapes. So rather than just having one, we're going to take a big collection of teddy bears,
like what I see on the slide here, and then tell you how they vary from one another and what properties they have in common.
Obviously, this shows up a lot in medical imaging. I take a big population of people and I want to know the progression
of a neurodegenerative disease. And related to this problem is correspondence. Given 2, 3D scans, can I figure out
which points on the first scan correspond to which points on the second? This is useful for tests like texture transfer in computer
graphics. I draw a zebra texture on a zebra. Now I want to put it on a horse, or something like that.
We can think about deformation transfer. So here we see one of my colleagues making a funny face. And that face is projected onto all kinds of different animated
characters. In fact, a lot of the ideas that we'll construct in this course are relevant to tasks like inverse kinematics, which
are used in movie studios to track actors as they move around with different markers on their faces and bodies, and then
projected onto animated characters that are following the motions of that actor. As we mentioned when we talked about geometric ideas
in physics, we can use some of the things that we're going to construct here to improve simulation. So here, I'm showing you some screenshots
from well-known papers in the intersection of geometry and physical simulation for things like viscous thread. So there's going to be honey coming out of some squeezer.
Apparently this is called a sewing machine, I think, for some reason that I don't totally understand. And then on the bottom, we see cloth simulations--
another big one. And of course, we can also use geometry to improve scientific visualization.
To try and capture structures, like orbitals of some atom or molecule in a nice abstract but still structure-preserving way.
People in medical imaging care about problems like segmentation. If I give you the whole brain, can I
identify the interesting segments that correspond to different functional And so on. And then finally, some applications are more abstract.
So for example, we'll see the constructions we do with the Laplace operator in spectral geometry immediately are applicable to machine learning tasks
like semi-supervised learning over a network. Now here, the geometry is much more abstract. It's just given by distances along a graph, along the graph
edges, but we'll actually see that the mathematics is nearly identical for tasks like this, and so on. And then finally, we can use geometry
to improve some of our tools for statistics. So we'll talk about embedding. We'll talk about some curved notions of principal component
analysis, and so on. So hopefully I've piqued your interest in the shape analysis domain.
I think this is one of the really fun, exciting, emerging research disciplines that we see in the computational applied universe.
And our goal in 6838 is to give you a good intuition for the kind of reasoning that shows up in this area so that you can take it
home and apply it to whatever problems you really care about. So with that, I think we'll conclude for the day. If you have any questions, if you're taking this class live,
I'm happy to stick around for our Zoom. And otherwise, you're always welcome to reach out. And beyond that, I look forward to seeing you
all in our next lecture, when we're going to dive into the mathematical details, specifically just introducing some
of the preliminary notions, reviewing linear algebra, and making sure that we all have the same notation before we start doing anything new.
In fact, I'm going to use notation that's specific to this research area, which you may not have seen before, just to get you used
to how we tend to write stuff down when we do geometric calculation. So with that, we'll see you next time.
To enroll in the 6838 course on shape analysis, you should have strong programming skills in Julia, Python, or Matlab, along with a solid mathematical background in linear algebra and multivariable calculus. While differential geometry will be introduced during the course, prior knowledge is not required.
Geometric data analysis involves analyzing geometric data through algorithms for 3D shapes, which are crucial in fields like computer vision, graphics, and robotics. This course bridges geometric approaches with machine learning techniques, allowing students to view high-dimensional datasets as geometric objects.
Key concepts in differential geometry include manifolds, curvature (Gaussian and mean), geodesic distances, vector fields, and spectral geometry. These concepts help in understanding complex shapes and their properties, which are essential for advanced geometric data analysis.
The course discusses various methods for representing shapes, such as triangle meshes and point clouds, and explores the differences between discrete and smooth perspectives. It also covers the development of discrete differential geometry theories that maintain geometric structures on discrete domains.
Applications of shape analysis covered in the course include computer graphics (like 3D modeling), computer vision (such as 3D reconstruction), medical imaging (detecting anomalies), and manufacturing (like topology optimization). These applications demonstrate the interdisciplinary nature of shape analysis.
In the next lecture, students will focus on mathematical preliminaries, including linear algebra and specific notation used in geometric computations. This foundational knowledge will prepare students for deeper engagement with the course material.
To deepen your understanding of geometric concepts, consider reviewing resources such as the 'Understanding Curvilinear Coordinates' guide and the 'Understanding Rectangular and Polar Coordinates for Advanced Function Analysis.' These materials will provide additional context and insights relevant to the course.
Heads up!
This summary and transcript were automatically generated using AI with the Free YouTube Transcript Summary Tool by LunaNotes.
Generate a summary for freeRelated summaries
Understanding Curvilinear Coordinates: A Comprehensive Guide
Dive into the world of curvilinear coordinates and their applications in engineering, physics, and mathematics.
Comprehensive Introduction to AI: History, Models, and Optimization Techniques
This lecture provides a detailed overview of Artificial Intelligence, covering its historical evolution, core paradigms like modeling, inference, and learning, and foundational optimization methods such as dynamic programming and gradient descent. It also discusses AI's societal impacts, challenges, and course logistics for Stanford's CS221.
Comprehensive Formula Revision: Linear Algebra & Calculus Explained
Dive into an extensive formula revision covering key concepts in Linear Algebra and Calculus. This session includes determinants, matrix operations, eigenvalues/vectors, and calculus fundamentals like limits, continuity, differentiation, integration, and vector calculus for exam preparation.
Understanding First-Order Ordinary Differential Equations: Geometric and Numerical Approaches
This lecture explores first-order ordinary differential equations (ODEs) focusing on geometric interpretations and numerical methods. Learn about direction fields, integral curves, isoclines, and the Existence and Uniqueness Theorem, with practical examples illustrating solution behaviors and limitations.
Understanding Introduction to Deep Learning: Foundations, Techniques, and Applications
Explore the exciting world of deep learning, its techniques, applications, and foundations covered in MIT's course.
Most viewed summaries
A Comprehensive Guide to Using Stable Diffusion Forge UI
Explore the Stable Diffusion Forge UI, customizable settings, models, and more to enhance your image generation experience.
Kolonyalismo at Imperyalismo: Ang Kasaysayan ng Pagsakop sa Pilipinas
Tuklasin ang kasaysayan ng kolonyalismo at imperyalismo sa Pilipinas sa pamamagitan ni Ferdinand Magellan.
Mastering Inpainting with Stable Diffusion: Fix Mistakes and Enhance Your Images
Learn to fix mistakes and enhance images with Stable Diffusion's inpainting features effectively.
Pamamaraan at Patakarang Kolonyal ng mga Espanyol sa Pilipinas
Tuklasin ang mga pamamaraan at patakaran ng mga Espanyol sa Pilipinas, at ang epekto nito sa mga Pilipino.
How to Install and Configure Forge: A New Stable Diffusion Web UI
Learn to install and configure the new Forge web UI for Stable Diffusion, with tips on models and settings.

