Difference between revisions of "Step detection"

From University of Washington - Ubicomp Research Page
Jump to: navigation, search
(CVS tags)
(Algorithm)
Line 10: Line 10:
  
 
== Algorithm ==
 
== Algorithm ==
 +
<ol>
 +
<li>Take the magnitude of the 3d accelerometer vector.
 +
<li>Smooth the magnitude.
 +
<li>Take the derivative of the smoothed magnitude.
 +
<li>Look for peaks in the smoothed magnitude between ascending zero-crossings of the derivative.
 +
</ol>
  
 
== Mills ==
 
== Mills ==

Revision as of 00:14, 2 May 2008

Running

To run the executable these are the two arguments used so far:

Suggested to give full path for both

-xml (the xml file with the instantiation of the Mills)

-uwarin (the uwar file to used for computation)

<bash>./inference -xml path/xml_file.xml -uwarin path/log_file***.uwar </bash>

Algorithm

  1. Take the magnitude of the 3d accelerometer vector.
  2. Smooth the magnitude.
  3. Take the derivative of the smoothed magnitude.
  4. Look for peaks in the smoothed magnitude between ascending zero-crossings of the derivative.

Mills

There are many mills under the source directory The algorithm is using the following Mills in the order given:


MeanStdDevMill(outputs a smoothed magnitude)

LtiFilterMill (outputs derivative of the smoothed magnitude)

ZeroCrossingMill (outputs the zero-crossings of the smoothed magnitude using the derivative of it)

AccelIntervalsMill (outputs areas between zero-crossings)

WinThresholdMill (makes absolute thresholding and relative thresholding, given a window length )

WinMax (outputs the minimun and maximum for every window)

Source

CVS checkout / export

To check out the latest code: <bash>cvs -d user@bicycle.cs.washington.edu:/projects/ubicomp/uwar/CVS checkout msp_peak_detection</bash>

CVS tags

We're trying to keep our branch of msp reasonably in-sync with Intel Research Seattle's. That means we periodically merge in updates from the sourceforge repository maintained by Intel.

  • msp_peak_detection
  • msp_2008_02_05
  • pre-merge-1
  • merge-1
  • merge-2
  • pre-merge-3
  • merge-3

Building

msp_peak_detection is built the same way as other msp branches. <bash>cd msp_peak_detection/src ./configure # unless you're cross-compiling make cd inference make</bash> If you are cross-compiling, you'll first need to set the environment variable CROSS_COMPILE to the path to your cross-compiler and cross-binutils.

Old Matlab code