# Difference between revisions of "Gesture Signal Processing"

m (→Interpolation In Space) |
(→Interpolation) |
||

Line 1: | Line 1: | ||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

− | |||

== Filtering == | == Filtering == |

## Revision as of 18:26, 12 October 2008

## Filtering

While studying sensors, we discovered that often a particular sensor will measure the position **x**, velocity **v**, or acceleration **a** of an object. However, we might like to use a different variable to control the way we synthesize sound. Ideally, integration and differentiation can be applied to convert between variables.

Here is a simple approximation of an integrator. In this case, we integrate an acceleration measurement in order to obtain velocity. We see that with each time step, **v** is updated to be nearly the same as the previous **v**, but it is affected by the input **a**. This is an example of a low-pass filter because the filter passes mainly low frequencies.

v = 0.1*a + 0.9*v;

Next we show how to approximate a differentiator, so now **x** represents a measured position, and **v** represents velocity (although the result is scaled by a constant). The extra variable **r** is introduced to represent the previous position measurement. Hence, the estimated velocity is the difference between the current position and the previous position. This filter is an example of a high-pass filter because it passes mainly high frequencies.

v = x - r; r = x;

Filter design is an important part of the field of signal processing. For more details, see Julius Smith's book on simple filter design.

## Thresholding

Often we want to implement some sort of event detector. For instance, we may want to detect the event that the musician has struck an object such as a drum. If the musician is holding an accelerometer in his or her hand, we can detect the event by waiting for a large value or a large change in the accelerometer signal.

For more details on thresholding, see the **threshold** and **threshold~** objects' help patches in Pd.