Skip to content

Replace KF in robot localizer with EKF - #3954

Open
StarrryNight wants to merge 16 commits into
samuel/refactor_robot_localizerfrom
samuel/use_ekf_push
Open

StarrryNight wants to merge 16 commits into
samuel/refactor_robot_localizerfrom
samuel/use_ekf_push

Conversation

@StarrryNight

@StarrryNight StarrryNight commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Description

Replaces linear kalman filter of robot localizer with an Extended kalman filter

Testing Done

Tested on sim by hooking up er force simulator with an instance of robot localizer. The robot localizer takes in vision packets generated and synthesize noisy IMU and motor data as filter update inputs.

Results are testing by running sim under identical situations except for robot localizer:
enable realism, CI mode, and record stats for 1 minute
image

Videos of XY tracking:

Resolved Issues

Length Justification and Key Files to Review

Before:

Position estimation is okay, sometimes drifts a bit when turning
Screencast from 2026-09-14 21-58-47.webm

Velocity estimation is horrible and noisy. Notable delay of estimation from ground truth.
Screencast from 2026-09-14 21-58-20.webm

After

Position estimation is notably better during turning
Screencast from 2026-09-14 21-56-53.webm

Big improvement in velocity tracking. The control input fixed the latency from vision.
Screencast from 2026-09-14 21-54-19.webm

Review Checklist

It is the reviewers responsibility to also make sure every item here has been covered

  • Function & Class comments: All function definitions (usually in the .h file) should have a javadoc style comment at the start of them. For examples, see the functions defined in thunderbots/software/geom. Similarly, all classes should have an associated Javadoc comment explaining the purpose of the class.
  • Remove all commented out code
  • Remove extra print statements: for example, those just used for testing
  • Resolve all TODO's: All TODO (or similar) statements should either be completed or associated with a github issue

@StarrryNight
StarrryNight added this pull request to stack #3955 September 15, 2026 03:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants