Ekumen-OS / Ekumen-OS/beluga

Add naive sensor fusion support

Open
#508 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
C++
Stars
325
Forks
36
Avg merge
5d 19h
Merged PRs (30d)
2

Description

### Feature description

In general, the more information you have, the better your estimate will be. Alas, our bootstrap particle filter (BPF) workhorse can only reweight particles with one sensor model. We need mechanisms to aggregate multiple measurements, to perform sensor fusion. There are many such mechanisms depending on how you model your estimation problem, but I think we can cover quite some ground just assuming conditional independency and _multiplying_ 👀 sensor model likelihoods.

### Implementation considerations

Unclear as to whether this should a sensor model aggregate or a new `reweight` action 🤔. I'm slightly inclined towards the latter.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named. Start by locating the bootstrap particle filter's current single-sensor reweighting path and the sensor-model interface, then compare whether aggregation belongs in the sensor model or a new reweight action. Done means multiple measurements can be combined by multiplying their likelihoods under the conditional-independence assumption, with the chosen API covered by relevant tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
robotics
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.