56 lines
1.9 KiB
Python
56 lines
1.9 KiB
Python
"""视觉跟踪控制包(visual_track_control Python 版)。
|
||
|
||
对应 C++ 参考实现 reference-c++/visual_track_control/。本包与 target_tracker
|
||
包互不依赖(TrackState 为字段对齐的独立值类型,胶水层负责转换)。
|
||
|
||
分层:
|
||
纯算法构件 rate_limiter / staleness_checker / line_of_sight /
|
||
frame_transform / pid_controller
|
||
配置 config(TrackingConfig + load_from_json)
|
||
主控律 tracking_control_law(TrackingControlLaw)
|
||
指令输出 command_sender(抽象 Protocol)+ mavsdk_gateway(MAVSDK offboard)
|
||
"""
|
||
|
||
from .command_sender import CommandSender
|
||
from .config import (AccelLimitConfig, CameraGroupConfig, ControlGroupConfig,
|
||
DistanceGroupConfig, HeadingGroupConfig, HeadingMode,
|
||
NoDistanceAction, TrackingConfig, VerticalGroupConfig,
|
||
load_from_json)
|
||
from .frame_transform import rotate_body_to_ned
|
||
from .line_of_sight import PixelToAngle
|
||
from .mavsdk_gateway import MavsdkCommandGateway
|
||
from .pid_controller import PidController, PidParams
|
||
from .rate_limiter import SlewRateLimiter, clamp
|
||
from .staleness_checker import is_stale
|
||
from .tracking_control_law import TrackingControlLaw
|
||
from .types import (ControlMode, ControlOutput, ControlSnapshot, DegradedReason,
|
||
TrackState)
|
||
|
||
__all__ = [
|
||
"CommandSender",
|
||
"MavsdkCommandGateway",
|
||
"TrackingControlLaw",
|
||
"TrackingConfig",
|
||
"load_from_json",
|
||
"HeadingMode",
|
||
"NoDistanceAction",
|
||
"ControlGroupConfig",
|
||
"CameraGroupConfig",
|
||
"HeadingGroupConfig",
|
||
"VerticalGroupConfig",
|
||
"DistanceGroupConfig",
|
||
"AccelLimitConfig",
|
||
"ControlMode",
|
||
"DegradedReason",
|
||
"TrackState",
|
||
"ControlSnapshot",
|
||
"ControlOutput",
|
||
"PidController",
|
||
"PidParams",
|
||
"SlewRateLimiter",
|
||
"clamp",
|
||
"is_stale",
|
||
"PixelToAngle",
|
||
"rotate_body_to_ned",
|
||
]
|