In the above graph are some sine-wave
noises with different height and frequency. The sine-wave signals are good
in the sense that the frequency band can be easily controlled. So we can
add noises with different frequency to the motion. I used the low-band
filtered mocap data for biped. The high frequency signals corresponding
to the noises already in the motion are filtered before the noises are
added. Here is an example of walking man after low-band filtering: walking-smooth.mov.
The comparison between the original signal and the signal after filtering
is shown in walking-smooth.jpg.
After we add low-frequency noises in the motion, the walking man is a little
more realistic. The width of steps are not always the same, the ranges
of the hand movement vary from one walking cycle to another. The result
is shown in walking-low.mov
and walking-low.jpg
(the changes made in this motion are all the joints except hip position).
If we add middle-frequency noises, the motion varies more between different
walking cycles. Example: walking-middle.mov,
walking-middle.jpg.
If we add high-frequency sine-wave signals, the character seems to be nervous.
Example: walking-high.mov,
walking-high.jpg.
The changes made in the later two motions are shouders, head, hands, chest,
etc, no legs and feet. A bad effect of sine-wave noises comes from the
coherence of sine-wave signals. In some examples, the character seems to
be on a string. That is because the sine-wave is too regular and our eyes
can catch the coherence effectively. In the following part, we use random
noises.
White noise is noise with autocorrelation
function zero everywhere but at 0, and is also called Johnson noise. It
has a frequency spectrum. The Fourier transform of white noise is
a straight line. The noise produced by a resistor is white noise. White
noise is a random noise commonly found in nature, so there are little coherence
inside white noises. But the only control over this type of noise available
is the change in magnitude of the signal and band limiting. In order to
show the effect of white noises, we use a mocap data (running-smooth.mov)
after low-band filtering to eliminate the high-frequency noises already
in the motion. Without noise, it is a really bad motion. After we add low-frequency
white noises to all the joints except the hip position, the motion is more
natural. The result is shown in running-low.mov
and
running-low.jpg.
Another use of zero-mean white
noises is in the animation of some random motion, such as randomly generated
bubbles, the motion caused by electronic shock, the motion of people in
earthquake, a old man's shaking hands, etc. Random motion is hard to achieve
using keyframe animation and motion capture. But using noises we can get
perfect results. The random noise is also useful for animation of the similiar
movement of many objects, such as the animation of handreds of millions
of people running. We can first generate the basic movement for one person
using traditional keyframe animation, then add random noises to make the
group motion more realistic. Here is an example of a man shocked by the
electric: shock.mov.
Another example is an old man with shaking hands: old-man.mov,
old-man.jpg.
The changes are only in the motion of arms and hands. You can compare
this with the motion of a young man (young-man.mov).