The CREA algorithm builds on the activity classes found in the VANE algorithm, enhancing the existing activity classes and expanding the activity vocabulary with additional activity classes and containers.

Non wear

The non-wear detection algorithm is based on a measure of stillness.  There are two conditions where the accelerometer signal does not vary for long periods of time, non-wear or when the wearer does not move their leg.  The accelerometer is very sensitive to small leg movements but none-the-less it is not uncommon for mobility impaired individuals to be still for up to an hour during waking sitting or during sleep. This version of the non-wear algorithm determines non-wear firstly by identifying the longest blocks of non-varying accelerometer data and then tests adjacent blocks for similar characteristics to build containers of non-wear “activity”.

Settings (not user adjustable):

  • the minimum duration of non-wear is 60 minutes 

The non-wear containers are used in the validation algorithm.

Upright correction

For some seated postures, for example perching on a stool or leg positions during lying (e.g. in bed), the intermediate leg angles can cause fluctuations in posture as determined by the VANE algorithm between upright and sitting resulting in false upright detection during non-upright activities. This algorithm corrects for these conditions on a posture container by container basis.


This algorithm examines all non-upright events in the calendar day to identify the primary lying period each day.

For each day, all non-upright events longer than an hour are identified.  Each event is then expanded out to adjacent non-upright events (allowing for bathroom breaks / interruptions) resulting in a container of predominantly non-upright events.  These containers are then sorted by duration and the longest container flagged as the primary lying container.  In most cases this primary container will contain rolling of thigh.  In the case the primary container container rolling then the other containers identified and containing rolling will be classed as secondary lying containers.  If there is no rolling in the primary lying container then no secondary lying containers can be identified. 

Settings (not user adjustable):

  • the minimum event duration for consideration as lying (primary or secondary) is 60 minutes
  • accumulated upright time in the lying container of >15 minutes will end the container
  • a subsequent rolling event will reset the accumulated upright time counter
  • a sitting bout >15 minutes will end the container
  • where rolling is present in the container, the first and last non-upright events in the container must include rolling

When the primary lying period contains rolling of the thigh any additional sections of non-upright with rolling are marked as secondary lying.

When analysing the data, the use of secondary lying is context dependent. For example, secondary lying in the middle of the day may reflect someone lying down for a nap.  In the evening secondary lying may reflect couch lying (the lying visualisation feature in PALanalysis can give a qualitative view of how still wearer is during lying). Depending on the study, these sections may be of specific interest.
Another common case is where someone has a long lying period, then gets up in the night (for example not being able to sleep, or attending to family), then goes back to bed for another long lying period which will be most often classified as secondary lying.  Secondary lying periods can be joined to the primary lying container using the user-defined feature of the Time in Bed visualisation in PALanalysis.
For backwards compatibility, secondary lying is included in the sitting totals.  Primary lying is not included in “sitting” outputs.


The measurement of thigh inclination provides a robust method to separate cycling leg movements from stepping leg movements.  We class all repeated “cyclical” leg movements in an upright posture as Progressive Leg Movements (PLM). The flexed inclination of the thigh during cycling is used as the primary criteria to separate cycling PLM from stepping PLM. The VANE algorithm classifies cycling PLM as stepping, so for backwards compatibility cycling PLM is included in the total step count. 

Settings (not user adjustable):

  • the minimum duration of a cycling bout is 60 seconds
  • more than 50% of the PLM events must meet the criteria for cycling

Seated transport

It has been observed that wearable activity monitors may incorrectly classify periods of motorised transport as light or moderate intensity physical activity due to external accelerations generated by, for example, the vehicle’s engine and interactions with the road surface.  That is, dynamic accelerations not associated with human movement can result in misclassification of activity type. By using the inclination of the thigh to detect a seated posture we can correctly identify seated car travel as a sedentary behaviour regardless of any external accelerations present.  Taking this approach one step further we can use the presence of dynamic components in the acceleration signal from a seated subject to identify periods of motorised transport.

A detailed Illustration of 4 minutes of acceleration data showing the characteristic acceleration signals of quiet sitting, car travel, standing and stepping.
A chart of 24 hours of acceleration data. The top panel shows the raw triaxial acceleration signal recorded from the thigh across a 24 hour period (X axis in red, Y in green and Z in blue). The bottom panel shows the resulting acceleration magnitude accumulated at 15 second intervals. Using a combination of the inclination signal and the dynamic acceleration the data has been classified into time spent in the activities of lying, sitting, sitting in a car, standing and stepping (blue = lying, yellow = sedentary, pink = car travel, green = quiet standing, red = stepping)

Settings (not user adjustable):

  • minimum transport durations 5 minutes
  • only non-upright events (sitting) can be classed as transport
  • accelerations are assessed in 15 second epochs and where the median noise value across the whole event falls in a moderate noise range the sitting event is classed as transport
  • events are excluded from transport where there are excessive changes in thigh inclination

Algorithm versions

CREA 1.0

Description of released algorithm as above

Beta release (18th Dec 2018) in PALanalysis, PALbatch v8.10.6.33

Official release (20th Jun 2019) in PALanalysis v8.11.1.47, PALbatch v8.10.7.38

Last supported release version in PALanalysis v8.11.2.52 , PALbatch v8.10.9.44

CREA 1.1

Bug fix release, where some high intensity activity triggered classification errors.

Released (14th Oct 2019) in PALanalysis v8.11.2.53, PALbatch v8.10.9.45 

Last supported version in PALanalysis v8.11.4.61, PALbatch v8.10.9.46

CREA 1.2

Time in bed classification update.

Released (9th Oct 2020) in PALanalysis v8.11.5.62, PALbatch v8.10.11.54 

Last supported version in PALanalysis v8.11.5.64, PALbatch v8.10.12.57

CREA 1.3

Fixed number of sit to stand transitions from 2nd lying and seated transport from being misreported in exports.

Fixed cycling steps not being included in stepping summary statistics. Terminology updated to encompass steps and cycling steps as reciprocal leg movements.

Released (26th Aug 2021) in PALanalysis v8.11.6.70, PALbatch v8.10.12.60

Related Articles