Class RobustRangingAndRssiRadioSourceEstimator3D<S extends RadioSource>
java.lang.Object
com.irurueta.navigation.indoor.radiosource.RobustRadioSourceEstimator<com.irurueta.geometry.Point3D,RangingAndRssiReadingLocated<S,com.irurueta.geometry.Point3D>,RobustRangingAndRssiRadioSourceEstimatorListener<S,com.irurueta.geometry.Point3D>>
com.irurueta.navigation.indoor.radiosource.RobustRangingAndRssiRadioSourceEstimator<S,com.irurueta.geometry.Point3D>
com.irurueta.navigation.indoor.radiosource.RobustRangingAndRssiRadioSourceEstimator3D<S>
- Type Parameters:
S- aRadioSourcetype.
- Direct Known Subclasses:
LMedSRobustRangingAndRssiRadioSourceEstimator3D,MSACRobustRangingAndRssiRadioSourceEstimator3D,PROMedSRobustRangingAndRssiRadioSourceEstimator3D,PROSACRobustRangingAndRssiRadioSourceEstimator3D,RANSACRobustRangingAndRssiRadioSourceEstimator3D
public abstract class RobustRangingAndRssiRadioSourceEstimator3D<S extends RadioSource>
extends RobustRangingAndRssiRadioSourceEstimator<S,com.irurueta.geometry.Point3D>
This is an abstract class to robustly estimate 3D position, transmitted power and path-loss
exponent of a radio source (e.g. Wi-Fi access point or bluetooth beacon), by discarding
outliers and assuming that the ranging data is available to obtain position with
greater accuracy and that the radio source emits isotropically following the
expression below:
Pr = Pt*Gt*Gr*lambda^2 / (4*pi*d)^2,
where Pr is the received power (expressed in mW),
Gt is the Gain of the transmission antenna
Gr is the Gain of the receiver antenna
d is the distance between emitter and receiver
and lambda is the wavelength and is equal to: lambda = c / f,
where c is the speed of light
and f is the carrier frequency of the radio signal.
Because usually information about the antenna of the radio source cannot be
retrieved (because many measurements are made on unknown devices where
physical access is not possible), this implementation will estimate the
equivalent transmitted power as: Pte = Pt * Gt * Gr.
If Readings contain RSSI standard deviations, those values will be used,
otherwise it will be assumed an RSSI standard deviation of 1 dB.
Although RobustRssiRadioSourceEstimator can estimate the same parameters of a radio source, when ranging measures are available along with RSSI measurements, implementations of this class should be preferred instead as they can provide greater accuracy.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.irurueta.navigation.indoor.radiosource.RobustRangingAndRssiRadioSourceEstimator
RobustRangingAndRssiRadioSourceEstimator.Solution<P extends com.irurueta.geometry.Point<?>> -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final RangingAndRssiRadioSourceEstimator3D<S> Radio source estimator used internally.private final List<RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> Subset of readings used by inner estimator.Fields inherited from class com.irurueta.navigation.indoor.radiosource.RobustRangingAndRssiRadioSourceEstimator
DEFAULT_USE_READING_POSITION_COVARIANCES, estimatedPathLossExponent, estimatedPathLossExponentVariance, estimatedTransmittedPowerdBm, estimatedTransmittedPowerVariance, initialPathLossExponent, initialPosition, initialTransmittedPowerdBm, pathLossEstimationEnabled, transmittedPowerEstimationEnabled, useReadingPositionCovariancesFields inherited from class com.irurueta.navigation.indoor.radiosource.RobustRadioSourceEstimator
confidence, covariance, DEFAULT_CONFIDENCE, DEFAULT_KEEP_COVARIANCE, DEFAULT_MAX_ITERATIONS, DEFAULT_PROGRESS_DELTA, DEFAULT_REFINE_RESULT, DEFAULT_ROBUST_METHOD, estimatedPosition, estimatedPositionCovariance, inliersData, keepCovariance, listener, locked, MAX_CONFIDENCE, MAX_PROGRESS_DELTA, maxIterations, MIN_CONFIDENCE, MIN_ITERATIONS, MIN_PROGRESS_DELTA, preliminarySubsetSize, progressDelta, readings, refineResult -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedConstructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(com.irurueta.geometry.Point3D initialPosition) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(Double initialTransmittedPowerdBm) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm) Constructor.protectedRobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidattemptRefine(RobustRangingAndRssiRadioSourceEstimator.Solution<com.irurueta.geometry.Point3D> result) Attempts to refine estimated position and transmitted power contained in provided solution if refinement is requested.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create()Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener) Creates a robust 3D position radio source estimator using default method.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm, RobustRangingAndRssiRadioSourceEstimatorListener<S, com.irurueta.geometry.Point3D> listener, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.static <S extends RadioSource>
RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.RadioSourceWithPowerAndLocated<com.irurueta.geometry.Point3D> Gets estimated located radio source with estimated transmitted power.intGets minimum required number of readings to estimate power, position and path-loss exponent.intGets number of dimensions of position points.booleanIndicates whether an homogeneous linear solver is used to estimate an initial position for the internal ranging radio source estimator.voidsetHomogeneousRangingLinearSolverUsed(boolean useHomogeneousLinearSolver) Specifies whether an homogeneous linear solver is used to estimate an initial position for the internal ranging radio source estimator.protected voidsolvePreliminarySolutions(int[] samplesIndices, List<RobustRangingAndRssiRadioSourceEstimator.Solution<com.irurueta.geometry.Point3D>> solutions) Solves preliminary solution for a subset of samples.Methods inherited from class com.irurueta.navigation.indoor.radiosource.RobustRangingAndRssiRadioSourceEstimator
getEstimatedPathLossExponent, getEstimatedPathLossExponentVariance, getEstimatedTransmittedPower, getEstimatedTransmittedPowerdBm, getEstimatedTransmittedPowerVariance, getInitialPathLossExponent, getInitialPosition, getInitialTransmittedPower, getInitialTransmittedPowerdBm, getMethod, getUseReadingPositionCovariance, isPathLossEstimationEnabled, isReady, isTransmittedPowerEstimationEnabled, residual, setInitialPathLossExponent, setInitialPosition, setInitialTransmittedPower, setInitialTransmittedPowerdBm, setPathLossEstimationEnabled, setTransmittedPowerEstimationEnabled, setUseReadingPositionCovariancesMethods inherited from class com.irurueta.navigation.indoor.radiosource.RobustRadioSourceEstimator
areValidReadings, estimate, getConfidence, getCovariance, getEstimatedPosition, getEstimatedPositionCovariance, getInliersData, getListener, getMaxIterations, getPreliminarySubsetSize, getProgressDelta, getQualityScores, getReadings, internalSetReadings, isCovarianceKept, isLocked, isResultRefined, setConfidence, setCovarianceKept, setListener, setMaxIterations, setPreliminarySubsetSize, setProgressDelta, setQualityScores, setReadings, setResultRefined
-
Field Details
-
innerEstimator
Radio source estimator used internally. -
innerReadings
private final List<RangingAndRssiReadingLocated<S extends RadioSource,com.irurueta.geometry.Point3D>> innerReadingsSubset of readings used by inner estimator.
-
-
Constructor Details
-
RobustRangingAndRssiRadioSourceEstimator3D
protected RobustRangingAndRssiRadioSourceEstimator3D()Constructor. -
RobustRangingAndRssiRadioSourceEstimator3D
protected RobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings) Constructor. Sets signal readings belonging to the same radio source.- Parameters:
readings- signal readings belonging to the same radio source.- Throws:
IllegalArgumentException- if readings are not valid.
-
RobustRangingAndRssiRadioSourceEstimator3D
protected RobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition) Constructor. Sets signal readings belonging to the same radio source.- Parameters:
readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.- Throws:
IllegalArgumentException- if readings are not valid.
-
RobustRangingAndRssiRadioSourceEstimator3D
protected RobustRangingAndRssiRadioSourceEstimator3D(com.irurueta.geometry.Point3D initialPosition) Constructor.- Parameters:
initialPosition- initial position to start the estimation of radio source position.
-
RobustRangingAndRssiRadioSourceEstimator3D
Constructor.- Parameters:
initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's)
-
RobustRangingAndRssiRadioSourceEstimator3D
protected RobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm) Constructor. Sets signal readings belonging to the same radio source.- Parameters:
readings- Wi-Fi signal readings belonging to the same radio source.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's)- Throws:
IllegalArgumentException- if readings are not valid.
-
RobustRangingAndRssiRadioSourceEstimator3D
protected RobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Constructor. Sets signal readings belonging to the same radio source.- Parameters:
readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Throws:
IllegalArgumentException- if readings are not valid.
-
RobustRangingAndRssiRadioSourceEstimator3D
protected RobustRangingAndRssiRadioSourceEstimator3D(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Constructor.- Parameters:
initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).
-
RobustRangingAndRssiRadioSourceEstimator3D
protected RobustRangingAndRssiRadioSourceEstimator3D(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Constructor. Sets signal readings belonging to the same radio source.- Parameters:
readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.- Throws:
IllegalArgumentException- if readings are not valid.
-
RobustRangingAndRssiRadioSourceEstimator3D
protected RobustRangingAndRssiRadioSourceEstimator3D(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Constructor.- Parameters:
initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.
-
-
Method Details
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
initialPosition- initial position to start the estimation of radio source position.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).method- robust estimator method.- Returns:
- a new robust 3D radio source power and position estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.initialPosition- initial position to start the estimation of radio source position.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.initialTransmittedPowerdBm- initial transmitted power to start the estimation of access point transmitted power (expressed in dBm's).method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, com.irurueta.numerical.robust.RobustEstimatorMethod method) Creates a robust 3D position radio source estimator.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.method- robust estimator method.- Returns:
- a new robust 3D position radio source estimator.
-
create
Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
initialPosition- initial position to start the estimation of radio source position.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.initialPosition- initial position to start the estimation of radio source position.- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Returns:
- a new robust 3D position radio source estimator.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, List<? extends RangingAndRssiReadingLocated<S, com.irurueta.geometry.Point3D>> readings, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.readings- signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.- Returns:
- a new robust 3D position radio source estimator.
- Throws:
IllegalArgumentException- if readings are not valid.
-
create
public static <S extends RadioSource> RobustRangingAndRssiRadioSourceEstimator3D<S> create(double[] qualityScores, com.irurueta.geometry.Point3D initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Creates a robust 3D position radio source estimator using default method.- Type Parameters:
S- aRadioSourcetype.- Parameters:
qualityScores- quality scores corresponding to each provided sample. The larger the score value the better the quality of the sample.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.- Returns:
- a new robust 3D position radio source estimator.
-
isHomogeneousRangingLinearSolverUsed
public boolean isHomogeneousRangingLinearSolverUsed()Indicates whether an homogeneous linear solver is used to estimate an initial position for the internal ranging radio source estimator.- Specified by:
isHomogeneousRangingLinearSolverUsedin classRobustRangingAndRssiRadioSourceEstimator<S extends RadioSource,com.irurueta.geometry.Point3D> - Returns:
- true if homogeneous linear solver is used, false if an inhomogeneous linear one is used instead.
-
setHomogeneousRangingLinearSolverUsed
public void setHomogeneousRangingLinearSolverUsed(boolean useHomogeneousLinearSolver) throws com.irurueta.navigation.LockedException Specifies whether an homogeneous linear solver is used to estimate an initial position for the internal ranging radio source estimator.- Specified by:
setHomogeneousRangingLinearSolverUsedin classRobustRangingAndRssiRadioSourceEstimator<S extends RadioSource,com.irurueta.geometry.Point3D> - Parameters:
useHomogeneousLinearSolver- true if homogeneous linear solver is used, false if an inhomogeneous linear one is used instead.- Throws:
com.irurueta.navigation.LockedException- if estimator is locked.
-
getMinReadings
public int getMinReadings()Gets minimum required number of readings to estimate power, position and path-loss exponent. This value depends on the number of parameters to be estimated, but for position only, this is 3 readings.- Specified by:
getMinReadingsin classRobustRadioSourceEstimator<com.irurueta.geometry.Point3D,RangingAndRssiReadingLocated<S extends RadioSource, com.irurueta.geometry.Point3D>, RobustRangingAndRssiRadioSourceEstimatorListener<S extends RadioSource, com.irurueta.geometry.Point3D>> - Returns:
- minimum required number of readings.
-
getNumberOfDimensions
public int getNumberOfDimensions()Gets number of dimensions of position points.- Specified by:
getNumberOfDimensionsin classRobustRadioSourceEstimator<com.irurueta.geometry.Point3D,RangingAndRssiReadingLocated<S extends RadioSource, com.irurueta.geometry.Point3D>, RobustRangingAndRssiRadioSourceEstimatorListener<S extends RadioSource, com.irurueta.geometry.Point3D>> - Returns:
- always returns 2 dimensions.
-
getEstimatedRadioSource
Gets estimated located radio source with estimated transmitted power.- Specified by:
getEstimatedRadioSourcein classRobustRadioSourceEstimator<com.irurueta.geometry.Point3D,RangingAndRssiReadingLocated<S extends RadioSource, com.irurueta.geometry.Point3D>, RobustRangingAndRssiRadioSourceEstimatorListener<S extends RadioSource, com.irurueta.geometry.Point3D>> - Returns:
- estimated located radio source with estimated transmitted power or null.
-
solvePreliminarySolutions
protected void solvePreliminarySolutions(int[] samplesIndices, List<RobustRangingAndRssiRadioSourceEstimator.Solution<com.irurueta.geometry.Point3D>> solutions) Solves preliminary solution for a subset of samples.- Specified by:
solvePreliminarySolutionsin classRobustRangingAndRssiRadioSourceEstimator<S extends RadioSource,com.irurueta.geometry.Point3D> - Parameters:
samplesIndices- indices of subset samples.solutions- instance where solution will be stored.
-