Biomedical Engineering Reference
In-Depth Information
review your algorithm design and modify them to match the system and expectations
from the user as best as possible. If an initial state is needed, do not just provide all
zeros, actually research what it should be and define this for the model. Often this is
done by running the model repeatedly and finding the optimal starting point for the
experiment. Even for the linear classifier, one set of training data may be too obscure
and must be removed for optimal recognition accuracy.
Uncertainty with the Users . Perhaps the most difficult variables to predict is what
users not used to the system may try to do. For example, they may change their mind
and switch the gesture they are trying to performmidway. In the case of theKinect, say
you have a heuristic solution that waits for the height of the user's head to pass a pre-
defined point to consider it a jump and the first user is much taller than expected, so
much so that their natural skeleton representation is over this point. These situations
must be considered for an accurate system. Often times a pilot study, which is a small
sampling of the potential users, can be used to find the types of actions and variations
in users you can expect. From there, the project needs to be modified to address these
issues. For example, maybe training the linear classifier to recognize an incomplete
gesture and throw it out or to normalize all skeletal representations from the Kinect.
Any device or system is going to have to address these issues, however by planning
ahead, they will be minimized and can cause less heartache to you as you perform
your work. For more example of reducing error and uncertainty from a recognizer,
check out other research and tutorials on the matter [ 11 ]. Now that we have gone
through the process of understanding the data, choosing algorithms and planning for
errors and uncertainty, we conclude with the final step to the problem: translating
the results from the algorithms into actual solutions for full body locomotion.
16.3.4 Applying All the Data Toward a Solution
It may seem you are done once the algorithms are working correctly, however there
is a final step in applying the results from the algorithm into a real world solution, and
sometimes making use of the context of the situation to achieve even better results.
For example, a HiddenMarkovModel supplies a list of probabilities to the chances of
being in a hidden state which you may have chosen to be possible gestures. A simple
setup may just take the highest probable gesture and react to it, but a better system
would check to make sure the probabilities of all gestures aren't very low so choose
to do nothing (this would be an example of the user being in an unknown or idle
state). Another examplewould be accelerometer readings showing the user is actually
moving rather than just walking in place, which would determine how important the
data coming from the Kalman Filter may be. Those were just a couple of examples,
and are very specialized to the interface that you are designing, discussed in the next
section, but should be considered to get the best from the system as possible.
After you've taken the steps to understand the data from the controller, and
designed the proper algorithms and system models to receive the best results, it
 
Search WWH ::




Custom Search