Interface KnownBiasAndFrameGyroscopeCalibrator<T extends FrameBodyKinematics,L extends KnownBiasAndFrameGyroscopeCalibratorListener<?>>

Type Parameters:
T - a FrameBodyKinematics containing measures used by the calibrator.
L - a listener type.
All Superinterfaces:
GyroscopeCalibrator, KnownBiasGyroscopeCalibrator
All Known Implementing Classes:
KnownBiasAndFrameGyroscopeLinearLeastSquaresCalibrator, KnownBiasAndFrameGyroscopeNonLinearLeastSquaresCalibrator

public interface KnownBiasAndFrameGyroscopeCalibrator<T extends FrameBodyKinematics,L extends KnownBiasAndFrameGyroscopeCalibratorListener<?>> extends KnownBiasGyroscopeCalibrator, GyroscopeCalibrator
Interface defining gyroscope calibrators.
  • Method Details

    • getMeasurements

      Collection<T> getMeasurements()
      Gets a collection of body kinematics measurements taken at different frames (positions, orientations and velocities). If a single device IMU needs to be calibrated, typically all measurements are taken at the same position, with zero velocity and multiple orientations. However, if we just want to calibrate a given IMU model (e.g. obtain an average and less precise calibration for the IMU of a given phone model), we could take measurements collected throughout the planet at multiple positions while the phone remains static (e.g. while charging), hence each measurement position will change, velocity will remain zero and orientation will be typically constant at horizontal orientation while the phone remains on a flat surface.
      Returns:
      a collection of body kinematics measurements taken at different frames (positions, orientations and velocities).
    • setMeasurements

      void setMeasurements(Collection<? extends T> measurements) throws com.irurueta.navigation.LockedException
      Sets a collection of body kinematics measurements taken at different frames (positions, orientations and velocities). If a single device IMU needs to be calibrated, typically all measurements are taken at the same position, with zero velocity and multiple orientations. However, if we just want to calibrate the a given IMU model (e.g. obtain an average and less precise calibration for the IMU of a given phone model), we could take measurements collected throughout the planet at multiple positions while the phone remains static (e.g. while charging), hence each measurement position will change, velocity will remain zero and orientation will be typically constant at horizontal orientation while the phone remains on a flat surface.
      Parameters:
      measurements - collection of body kinematics measurements taken at different frames (positions, orientations and velocities).
      Throws:
      com.irurueta.navigation.LockedException - if calibrator is currently running.
    • getListener

      L getListener()
      Gets listener to handle events raised by this calibrator.
      Returns:
      listener to handle events raised by this calibrator.
    • setListener

      void setListener(L listener) throws com.irurueta.navigation.LockedException
      Sets listener to handle events raised by this calibrator.
      Parameters:
      listener - listener to handle events raised by this calibrator.
      Throws:
      com.irurueta.navigation.LockedException - if calibrator is currently running.