Classes
BsPairIds
BsPairIds(bs1: ForwardRef('int'), bs2: ForwardRef('int'))
A type representing the ids of a pair of base stations
Ancestors (in MRO)
- builtins.tuple
Instance variables
bs1: int
Alias for field number 0
bs2: int
Alias for field number 1
BsPairPoses
BsPairPoses(bs1: ForwardRef('Pose'), bs2: ForwardRef('Pose'))
A type representing the poses of a pair of base stations
Ancestors (in MRO)
- builtins.tuple
Instance variables
bs1: cflib.localization.lighthouse_types.Pose
Alias for field number 0
bs2: cflib.localization.lighthouse_types.Pose
Alias for field number 1
LighthouseInitialEstimator
LighthouseInitialEstimator()
Make initial estimates of base station and CF poses using IPPE (analytical solution). The estimates are not good enough to use for flight but is a starting point for further calculations.
Class variables
OUTLIER_DETECTION_ERROR
Static methods
def estimate(matched_samples: list[LhCfPoseSample], sensor_positions: ArrayFloat) ‑> tuple[cflib.localization.lighthouse_types.LhBsCfPoses, list[cflib.localization.lighthouse_types.LhCfPoseSample]]
Make a rough estimate of the poses of all base stations and CF poses found in the samples.
The pose of the Crazyflie in the first sample is used as a reference and will define the global reference frame.
Parameters
Name | Description |
---|---|
matched_samples | A list of samples with lighthouse angles. |
sensor_positions | An array with the sensor positions on the lighthouse deck (3D, CF ref frame):return: an estimate of base station and Crazyflie poses, as well as a cleaned version of matched_samples where outliers are removed. |