GENEActiv.calibrate {GENEAread} | R Documentation |
GENEActiv.calibrate
Description
Function starts by identifying ten second windows of non-movement. Next, the average acceleration per axis per window is used to estimate calibration error (offset and scaling) per axis. The function provides recommended correction factors to address the calibration error and a summary of the callibration procedure.
Usage
GENEActiv.calibrate(
binfile,
use.temp = TRUE,
spherecrit = 0.3,
minloadcrit = 72,
printsummary = TRUE,
chunksize = c(),
windowsizes = c(5, 900, 3600)
)
Arguments
binfile |
A filename of a file to process. |
use.temp |
use temperature sensor data for calibration |
spherecrit |
The minimum required acceleration value (in g) on both sides of 0 g for each axis. Used to judge whether the sphere is sufficiently populated |
minloadcrit |
The minimum number of hours the code needs to read for the autocalibration procedure to be effective (only sensitive to multitudes of 12 hrs, other values will be ceiled). After loading these hours only extra data is loaded if calibration error has not been reduced to under 0.01 g |
printsummary |
if TRUE will print a summary when done |
chunksize |
number between 0.2 and 1 to specificy the size of chunks to be loaded as a fraction of a 12 hour period, e.g. 0.5 equals 6 hour chunks. The default is 1 (12 hrs). For machines with less than 4Gb of RAM memory a value below 1 is recommended. |
windowsizes |
Three values to indicate the lengths of the windows as in c(window1,window2,window3): window1 is the short epoch length in seconds and by default 5 this is the time window over which acceleration and angle metrics are calculated, window2 is the long epoch length in seconds for which non-wear and signal clipping are defined, default 900. However, window3 is the window length of data used for non-wear detection and by default 3600 seconds. So, when window3 is larger than window2 we use overlapping windows, while if window2 equals window3 non-wear periods are assessed by non-overlapping windows. |
Details
The outputs from the function are as follows
scale scaling correction values, e.g. c(1,1,1)
offset offset correction values, e.g. c(0,0,0)
tempoffset correction values related to temperature, e.g. c(0,0,0)
cal.error.start absolute difference between Euclidean norm during all non-movement windows and 1 g before autocalibration
cal.error.end absolute difference between Euclidean norm during all non-movement windows and 1 g after autocalibration
spheredata average, standard deviation, Euclidean norm and temperature (if available) for all ten second non-movement windows as used for the autocalibration procedure
npoints number of 10 second no-movement windows used to populate the sphere
nhoursused number of hours of measurement data scanned to find the ten second time windows with no movement
meantempcal mean temperature corresponding to the data as used for autocalibration.
Author(s)
Vincent T van Hees <vincentvanhees@gmail.com> Zhou Fang Charles Sweetland <charles@Sweetland-solutions.co.uk>
References
van Hees VT, Fang Z, Langford J, Assah F, Mohammad A, da Silva IC, Trenell MI, White T, Wareham NJ, Brage S. Auto-calibration of accelerometer data for free-living physical activity assessment using local gravity and temperature: an evaluation on four continents. J Appl Physiol (1985). 2014 Aug 7