CS229 Homework 1
Due Wednesday, Sept 13 in class.
- Explain how you would construct a one-dimensional B-Spline curve
to approximate a large number of data points. Assume you have m data
points, equally spaced in time (e.g. the z position of the root of the
body in a motion capture data sequence). You would like to fit that
data as well as possible using a B-Spline having n control points,
where n << m.
- Modify your solution to create a repeating cycle. If you attach a
second copy of your curve at the end of the original, the join should
be C2 continuous.
- (Bonus) Once a B-Spline curve has been created, a user may want to
directly modify that curve by altering its value at a specific time.
(This is a typical step in interactive motion editing.) Four B-Spline
control points will need to be modified to create a new curve that
interpolates the given data point. Compute changes to those four
control points that achieve the goal and explain why your solution is
a good one. (Hint: you may find the Lee, Wolberg, and Shin paper to
be helpful, but your derivation should contain much more detail than
theirs.)
Nancy Pollard