Previous | Next --- Slide 52 of 70
Back to Lecture Thumbnails
CMUScottie

From here on, It is not easy to follow...

enzyme

So here's my interpretation of how the Bernstein basis works:

  • You have some parameter s, which can be thought of as the current time.
  • You have a bunch of control points p_k, which have weights associated with them. These weights can change over time, i.e. they depend on the current value of s. You can think of these control points as planets in space, with gravitational pulls that fluctuate over time.
  • Each vector B_{n,k} in the Bernstein basis represents a polynomial function that gives you the weight for a single point, based on the current time.
  • The curve is the weighted sum of the control points at every value of s. It can be thought of as the path that an asteroid would trace out as it gets pulled towards planets based on their (changing) gravity. The planets are basically playing tug-of-war on the asteroid.

Is this the right idea?

marshmallow

I was also confused by the Bernstein basis...

ahhuang

Why does this look like a binomial distribution?

graphicstar11

How come the Bernstein basis is represented as a binomial distribution? How does this relate to linear interpolation in the previous slide?

0x484884

I think one reason that it looks like a binomial distribution is that if you use the binomial theorem, you see that the sum of all the Bernstein basis vectors is (x + (1-x))^2 = 1 so that the curve is always some weighted average of the control points.

keenan

Perhaps the first thing to say is:

  • A very common way to describe vectors in $\mathbb{R}^n$ is using a basis. For instance, you might write a vector $x$ as $x = 2e_1 + 5e_2 - 4e_3$ where $e_1,e_2,e_3$ are basis vectors.
  • Likewise, a very common way to describe functions on a computer is using a basis of functions. For instance, when we were just describing linear functions we wrote them as $f(s) = a\phi_1(s) + b\phi_2(s)$, where $\phi_1(s) = 1-s$ and $\phi_2(s) = s$ (see earlier slides).

On this slide, we're moving beyond linear basis functions, and asking, "what other basis functions can we combine to get interesting functions?"

The specific formula for the Bernstein bases is not super important.

Sure, it involves some funky coefficients and so forth, but that's not the important part. The important part is simply that each basis function gives you control over some part of the interval. For instance, putting a large coefficient in front of $B_0^3$ will make the function large near $s=0$ and so forth.

As @0x484884, it's also nice that these basis functions are a "partition of unity," i.e., they sum to 1 at each point. For instance, when $n=3$ (cubic basis functions), you get

$$(1 - t)^3 + 3 (1 - t)^2 t + 3 (1 - t) t^2 + t^3 = 1.$$

Note by the way that the functions $\phi_1$ and $\phi_2$ (the linear basis functions) are just the Bernstein bases of degree 1!

Glad to answer more questions if things are still confusing.