ContactFlowFilter

Whole-Body Multi-Contact Sensing without Tactile Skin

Physical AI
  • Contact perception
  • Generative state estimation

Proprioception-based contact estimation that senses where a human touches the robot, tracks simultaneous contacts, and works while the arm is moving.

IEEE T-RO · 2026

Whole-Body Multi-Contact Sensing without Tactile Skin

Contact Estimation as a Distribution

ContactFlowFilter estimates how many contacts are active, where they occur, and the forces they exert using joint torque sensors and a force/torque sensor at the robot base. These measurements do not always identify a unique contact configuration. A useful estimator must retain multiple plausible explanations while following sliding contacts and detecting when contacts appear or disappear.

Ambiguous contact configurations, temporal changes, and contact addition or removal
The three challenges: multiple possible solutions, temporal dependence, and discrete contact events.

Combining Flow Matching and Particle Filtering

The estimator combines the temporal prediction of a particle filter with samples generated by a flow matching model. The learned proposal can place particles in plausible regions that ordinary resampling has missed. The particle filter then weighs those proposals against the previous estimate, retaining a recursive representation of the contact state.

Flow matching and temporal particle-filter proposals merged into a recursive contact estimate
Dual sampling combines the particle filter's temporal context with the generative model's multimodal proposals.

What Makes the Estimator Work

  • Sensor representation. A transformer processes link poses and virtual wrenches. Paired contact-point samples encode both single- and dual-contact states.
  • Few-step generation. Flow matching produces useful proposals with two integration steps and runs asynchronously from the main estimator.
  • Surface-aware prediction. Precomputed geodesic distances support particle motion along the robot surface.
  • Contact-event detection. Generative proposals and quadratic-program residuals jointly decide when to add or remove a particle set.
Link pose and virtual-wrench observation tokens for the transformer
Observations combine geometry and force information across robot links.
Particle motion sampled using a geodesic distance lookup table
Geodesic lookup tables make surface-based particle updates efficient.

Real-World Evaluation

A model trained in simulation was transferred directly to a Franka Emika Panda. The evaluation covered 200 trials across 20 robot configurations, with a force/torque sensor and OptiTrack markers providing ground truth. The table reports mean localization M-RMSE from Experiment D; smaller values are better.

Real-world localization M-RMSE, in cm (Table V).
Method Single contact Dual contact
ContactFlowFilter 0.36 0.88
CPF 1.36 5.49
MCP-EP 0.77 2.44
Dual-particle proposal only 0.51 1.04

In a separate 2,000-trial simulation study of contact addition and removal, the particle-set management fault rate was 0.75%, compared with 16.50% for the baseline at matched execution time. These event-detection results are separate from the real-world localization errors above.

Adding and removing contacts.
Tracking sliding contacts over time.
Contact estimation while the robot moves.

Related projects: Contact Diffusion Model and MCP-EP.

Representative Publications

Mixture of Flow Matching and Particle Filter for Proprioception-Based Online Contact Estimation

Seo Wook Han and Min Jun Kim

IEEE Transactions on Robotics, 2026

Figures, demonstrations, and research details: author's project page.

Explore more in Physical AI