← Back to projects

BREW

Bayesian Recursive Estimation Workspace

Role
Lead developer
Language
C++ (template-heavy) with MATLAB bindings
Status
Active
C++ MATLAB Multi-Object Tracking RFS Bayesian Estimation

Overview

BREW is a C++ library for model-generalized multi-object tracking. Its core goal is to decouple the filter from the object model so that new motion models, extent representations, and measurement likelihoods can be swapped in without rewriting the estimation pipeline.

At its core the framework operates over a multi-object density $\pi(X)$ where $X \subset \R^{n}$ is a random finite set of object states, and admits a generic measurement update $$ \pi_{k|k}(X) \propto \ell(Z_k \mid X)\, \pi_{k|k-1}(X), $$ leaving the likelihood $\ell(\cdot)$ and the state space free to be specialized per object model.

Motivation

Reference multi-object tracking codebases often bake a specific motion or extent model deep into the filter. That makes prototyping new representations (orientation-augmented GGIW, trajectory-level states, surrogate-modeled dynamics) slow and error-prone. BREW addresses this by treating the object model as a template parameter.

Technical Approach

Outcomes

Related Work