__init__.py
CrazyFly/python/estimation/__init__.py
"""
Estimation Module for Quadrotor Control System
=============================================
This module provides comprehensive state estimation capabilities for quadrotor
control systems, including multiple estimation algorithms and sensor fusion.
Key Components:
- RecursiveEstimatorBase: Abstract base class for all estimators
- ExtendedKalmanFilter: EKF implementation for nonlinear systems
- UnscentedKalmanFilter: UKF implementation for better nonlinear handling
- ParticleFilter: Particle filter for non-Gaussian noise scenarios
- SensorFusionManager: Multi-sensor fusion and coordination
- RecursiveEstimatorFactory: Factory for creating estimators
The estimation module provides the foundation for accurate state estimation
required by advanced control algorithms like MPC and L1 adaptive control.
Author: [Your Name]
Date: [Current Date]
License: MIT
"""
from .recursive_estimator import (
RecursiveEstimatorBase,
ExtendedKalmanFilter,
UnscentedKalmanFilter,
RecursiveEstimatorFactory,
EstimatorConfig,
EstimatorType,
SensorMeasurement,
StateEstimate,
SensorType
)
from .particle_filter import (
ParticleFilter,
ParticleFilterConfig,
Particle,
ResamplingStrategy
)
from .sensor_fusion_manager import (
SensorFusionManager,
SensorFusionConfig,
SensorInfo,
SensorStatus,
FusionStrategy
)
__all__ = [
# Base classes
'RecursiveEstimatorBase',
'EstimatorConfig',
'EstimatorType',
'SensorMeasurement',
'StateEstimate',
'SensorType',
# Estimators
'ExtendedKalmanFilter',
'UnscentedKalmanFilter',
'ParticleFilter',
'RecursiveEstimatorFactory',
# Particle Filter
'ParticleFilterConfig',
'Particle',
'ResamplingStrategy',
# Sensor Fusion
'SensorFusionManager',
'SensorFusionConfig',
'SensorInfo',
'SensorStatus',
'FusionStrategy'
]
__version__ = "1.0.0"
__author__ = "[Your Name]"
__email__ = "[your.email@example.com]"
Related articles
real_time_controller.cpp
real_time_controller.cpp — cpp source code from the CrazyFly learning materials (CrazyFly/cpp/high_freq_control/real_time_controller.cpp).
Read article →four_layer_pid.m
four_layer_pid.m — objectivec source code from the CrazyFly learning materials (CrazyFly/matlab/analysis/four_layer_pid.m).
Read article →hybrid_controller.m
hybrid_controller.m — objectivec source code from the CrazyFly learning materials (CrazyFly/matlab/analysis/hybrid_controller.m).
Read article →l1_adaptive_model.m
l1_adaptive_model.m — objectivec source code from the CrazyFly learning materials (CrazyFly/matlab/analysis/l1_adaptive_model.m).
Read article →parameter_optimizer.m
parameter_optimizer.m — objectivec source code from the CrazyFly learning materials (CrazyFly/matlab/analysis/parameter_optimizer.m).
Read article →performance_analyzer.m
performance_analyzer.m — objectivec source code from the CrazyFly learning materials (CrazyFly/matlab/analysis/performance_analyzer.m).
Read article →