AccelerometerInternalCalibratorBuilder

Builds an accelerometer calibrator to be used internally by other calibrators.

Constructors

Link copied to clipboard
constructor(measurements: List<StandardDeviationBodyKinematics>, robustPreliminarySubsetSize: Int, minimumRequiredMeasurements: Int, robustMethod: RobustEstimatorMethod? = null, robustConfidence: Double = StaticIntervalAccelerometerCalibrator.ROBUST_DEFAULT_CONFIDENCE, robustMaxIterations: Int = StaticIntervalAccelerometerCalibrator.ROBUST_DEFAULT_MAX_ITERATIONS, robustThreshold: Double? = null, robustThresholdFactor: Double = StaticIntervalAccelerometerCalibrator.DEFAULT_ROBUST_THRESHOLD_FACTOR, robustStopThresholdFactor: Double = StaticIntervalAccelerometerCalibrator.DEFAULT_ROBUST_STOP_THRESHOLD_FACTOR, location: Location? = null, gravityNorm: Double? = null, isGroundTruthInitialBias: Boolean = false, isCommonAxisUsed: Boolean = false, initialBiasX: Double? = null, initialBiasY: Double? = null, initialBiasZ: Double? = null, initialSx: Double = 0.0, initialSy: Double = 0.0, initialSz: Double = 0.0, initialMxy: Double = 0.0, initialMxz: Double = 0.0, initialMyx: Double = 0.0, initialMyz: Double = 0.0, initialMzx: Double = 0.0, initialMzy: Double = 0.0, baseNoiseLevel: Double? = null, qualityScoreMapper: QualityScoreMapper<StandardDeviationBodyKinematics> = DefaultAccelerometerQualityScoreMapper())

Constructor.

Properties

Link copied to clipboard

accelerometer measurement base noise level that has been detected during initialization expressed in meters per squared second (m/s^2).

Link copied to clipboard

Contains gravity norm (either obtained by the gravity sensor, or determined by current location using WGS84 Earth model). Expressed in meters per squared second (m/s^2).

Link copied to clipboard

x-coordinate of accelerometer bias used as an initial guess and expressed in meters per squared second (m/s^2).

Link copied to clipboard

y-coordinate of accelerometer bias used as an initial guess and expressed in meters per squared second (m/s^2).

Link copied to clipboard

z-coordinate of accelerometer bias used as an initial guess and expressed in meters per squared second (m/s^2).

Link copied to clipboard

initial x-y cross coupling error for accelerometer calibration.

Link copied to clipboard

initial x-z cross coupling error for accelerometer calibration.

Link copied to clipboard

initial y-x cross coupling error for accelerometer calibration.

Link copied to clipboard

initial y-z cross coupling error for accelerometer calibration.

Link copied to clipboard

initial z-x cross coupling error for accelerometer calibration.

Link copied to clipboard

initial z-y cross coupling error for accelerometer calibration.

Link copied to clipboard

initial x scaling factor for accelerometer calibration.

Link copied to clipboard

initial y scaling factor for accelerometer calibration.

Link copied to clipboard

initial z scaling factor for accelerometer calibration.

Link copied to clipboard

Indicates or specifies whether z-axis is assumed to be common for magnetometer and gyroscope.

Link copied to clipboard

Indicates whether accelerometer initial bias is considered a ground-truth known bias.

Link copied to clipboard

Location of device when running calibration.

Link copied to clipboard
var measurements: List<StandardDeviationBodyKinematics>

List of accelerometer measurements.

Link copied to clipboard

Minimum number of required measurements to start accelerometer calibration.

Link copied to clipboard
var qualityScoreMapper: QualityScoreMapper<StandardDeviationBodyKinematics>

mapper to convert collected accelerometer measurements into quality scores, based on the amount of standard deviation (the larger the variability, the worse the score will be).

Link copied to clipboard

Confidence of estimated accelerometer calibration result expressed as a value between 0.0 and 1.0. By default 99% of confidence is used, which indicates that with a probability of 99% estimation will be accurate because chosen sub-samples will be inliers (in other terms, outliers will be correctly discarded). This property is only taken into account if a not-null robustMethod is specified.

Link copied to clipboard

Maximum number of iterations to attempt to find a robust accelerometer calibration solution. By default this is 5000. This property is only taken into account if a not-null robustMethod is specified.

Link copied to clipboard
var robustMethod: RobustEstimatorMethod?

Indicates robust method used to solve accelerometer calibration.

Link copied to clipboard

Size of preliminary subsets picked while finding a robust accelerometer calibration solution. This properly is only taken into account if a not-null robustMethod is specified.

Link copied to clipboard

Additional factor to be taken into account for robust methods based on LMedS or PROMedS, where factor is not directly related to LMSE, but to a smaller value. This only applies to accelerometer calibration.

Link copied to clipboard

Threshold to be used to determine whether a measurement is considered an outlier by robust accelerometer calibration algorithms or not. Threshold varies depending on chosen robustMethod. By default, if null is provided, the estimated baseNoiseLevel will be used to determine a suitable threshold. Otherwise, if a value is provided, such value will be used instead. This properly is only taken into account if a not-null robustMethod is specified.

Link copied to clipboard

Factor to be used respect estimated accelerometer base noise level to consider a measurement an outlier when using robust calibration methods. By default this is 3.0 times baseNoiseLevel, which considering the noise level as the standard deviation of a Gaussian distribution, should account for 99% of the cases. Any measurement having an error greater than that in the estimated solution, will be considered an outlier and be discarded.

Functions

Link copied to clipboard
fun build(): AccelerometerNonLinearCalibrator

Builds an internal accelerometer calibrator based on all provided parameters.