Source-linked AI summary

Does Dynamic-Point Filtering Help When Texture Is Scarce? A Controlled Study of ORB-SLAM2 Front-Ends in Synthetic Indoor Scenes

Zekui Xue

arXiv:2610.10564v1cs.ROcs.CV

TL;DR

Prior work motivates concern that dynamic-point filtering may leave too few static features in low-texture scenes, but texture and dynamics had not been varied together under controlled conditions. This study tests that interaction with synthetic ORB-SLAM2 sequences, finding that filtering’s benefits did not decline monotonically with texture and that completeness fell at the lowest texture level.

  • Problem

    Prior evaluations of dynamic-point filtering did not vary texture under controlled conditions, despite concerns that filtering can leave too few static features in low-texture scenes.

    Source: §I · p. 1
  • Method

    The study factorially varies texture and dynamics across synthetic sequences and compares ORB-SLAM2 with no filter, FLOW, and GEOM using trajectory, completeness, feature-survival, and per-keypoint measures.

    Source: §I · pp. 1–2
  • Results

    Filtering mattered more than texture while ORB-SLAM2 could initialize, but its benefit did not decline monotonically; at the lowest texture, completeness fell, and GEOM discarded more static keypoints than FLOW.

    Source: §VI · p. 7, §V · p. 7
  • Takeaways & Limitations

    In this study, texture alone did not predict filtering benefit, and tracking completeness remained a distinct concern at the lowest texture level.

    Source: A. Main grid: texture × dynamics · p. 5, §V · p. 7

    The results come from two scenes, and the hypothesis tests are descriptive evidence rather than general effect sizes because cell medians over ten runs are unstable.

    Source: §V · p. 7

Abstract

from arXiv · show

Dynamic-point filters are routinely added to feature-based visual SLAM, and several recent systems argue that removing dynamic features can leave too few static features in low-texture regions. So far, these systems have been evaluated only on texture-rich benchmark sequences. We present a controlled study that isolates this interaction. We render synthetic indoor sequences in which surface texture (four levels, quantified by FAST-corner density and image-gradient entropy) and scene dynamics (three levels) are varied factorially along identical camera trajectories, with stereo, RGB-D, ground-truth poses and dynamic masks. On this grid we compare ORB-SLAM2 without filtering, with an optical-flow and epipolar-residual filter (FLOW), and with a multi-view depth-consistency filter (GEOM), and report trajectory error, tracking completeness and surviving static features over five runs. Because the masks give per-keypoint ground truth, we also measure each filter's dynamic-point precision and recall and its static-feature false-removal rate, so that mechanistic explanations can be tested directly. We do not propose a new filter. On 720 runs over 24 sequences, filtering helped mainly in the most dynamic cells; the benefit did not decline monotonically with texture, but at the lowest level filtering reduced tracking completeness, and ORB-SLAM2 never initialised in static L3 scenes. Contrary to our hypothesis, GEOM discarded more static keypoints than FLOW (median FRR 6.8% vs. 1.5% for RGB-D, 19.6% vs. 1.5% for stereo); its RGB-D advantage tracked dynamic-point recall and vanished in stereo mode. Data and code are available at https://github.com/felixxxue/texture-dynamics-slam.

I. INTRODUCTION

Feature-based visual SLAM assumes keypoints lie on static structure, but filtering can remove needed pose constraints when texture is scarce. This study addresses the lack of controlled evidence by varying texture and dynamics factorially on identical trajectories.

I. INTRODUCTION

  • Dynamic-point removal can leave too few static constraints in low-texture scenes, but prior evaluations did not vary texture under controlled conditions.Several systems add feature-scarcity compensation, yet their evaluations use TUM RGB-D, Bonn, or real robot runs.Source: §I · p. 1
  • Prior feature-scarcity-aware systems compensate with line features, feature-richness reliability scores, or density-driven thresholds, but use existing benchmark or robot evaluations.These approaches motivate the question rather than being new mechanisms proposed here.Source: §I · p. 1, §II · p. 2
  • The study isolates the interaction by holding geometry, camera trajectories, and agent motion fixed while factorially varying texture and moving-agent count.It compares unfiltered ORB-SLAM2 with flow-based and geometry-based filters in stereo and RGB-D modes.Source: §I · p. 1

II. RELATED WORK

  • The study isolates semantics-free versions of DS-SLAM’s optical-flow and epipolar principle and DynaSLAM’s multi-view geometry principle, rather than evaluating their complete systems.Source: §I · p. 1, §II · p. 2
  • Low-texture evaluations typically treat texture categorically, while challenge comparisons report texture and dynamics separately rather than crossing them.Source: §II · p. 2
  • Among the synthetic benchmarks surveyed, none varies texture and dynamics factorially along the same camera trajectory.Source: §II · p. 2

III. STUDY DESIGN

The study uses public ORB-SLAM2 in stereo and RGB-D modes as its tracking backbone. A filter removes flagged keypoints before they can contribute to tracking or map creation.

A. Backbone

  • The experiments use public ORB-SLAM2 in stereo and RGB-D modes with 1,000 ORB features per frame and otherwise default parameters.The implementation retains the default tracking, local-mapping, and loop-closing threads.Source: A. Backbone · p. 2
  • The filter excludes flagged keypoints from pose prediction, local-map tracking, and map-point creation without changing the extractor or back-end.Source: A. Backbone · p. 3
  • Keypoint decisions are logged with ground-truth labels for evaluation; the schematic’s dashed elements do not influence the tracker.Source: A. Backbone · p. 3, Figure 1 · p. 3

B. Dynamic-point filters

FLOW identifies dynamic keypoints using optical flow and an epipolar-residual test; GEOM uses depth consistency across overlapping keyframes. Both filters remove keypoints, with GEOM’s depth handling differing between RGB-D and stereo.

B. Dynamic-point filters

  • FLOW tracks keypoints backward with Lucas–Kanade, estimates a RANSAC fundamental matrix, and flags point-wise epipolar residuals above 1 px; frames with fewer than 15 pairs are unfiltered.The reported variant uses no region dilation, and the fundamental matrix is estimated from the same keypoints it tests.Source: B. Dynamic-point filters · p. 3
  • GEOM projects valid-depth points from five overlapping keyframes into the current frame and seeds dynamics when measured depth is more than 0.30 m closer than projected depth.It skips points with viewing-ray angles above 30°; RGB-D grows seeds into a depth mask, while stereo flags nearby keypoints.Source: B. Dynamic-point filters · p. 3
  • GEOM’s seed handling depends on depth availability: RGB-D grows regions using depth continuity, while stereo uses keypoint depths and a 15 px neighborhood.Source: B. Dynamic-point filters · p. 3
  • Filter parameters were fixed before the grid run after checks on one texture-rich sequence, and none changed after experiments began.A 30 px growth limit reduced static-keypoint removal to 5% in the reported RGB-D check.Source: B. Dynamic-point filters · p. 3

C. Controlled data generation

The controlled dataset varies surface texture and moving-agent count while replaying identical camera trajectories. Synthetic imagery, stereo and RGB-D inputs, poses, and dynamic masks support comparisons across the resulting conditions.

C. Controlled data generation

  • Two furnished indoor scenes are rendered with a simple CPU ray caster, and each scene reuses one scripted camera trajectory across conditions.The renderer uses fixed lighting, no shadows or global illumination, and identical noise realizations across conditions.Source: C. Controlled data generation · p. 3
  • Four texture levels blend static-surface albedo toward each material’s mean, with geometry, lighting, and agent appearance unchanged.Levels are characterized by mean FAST-corner count and mean gradient-magnitude entropy computed on static pixels.Source: C. Controlled data generation · p. 4
  • Dynamics comprise zero, one, or three scripted human-sized agents, with the same paths retained across texture levels.The study reports dynamic-pixel ratio because agent count alone does not determine image coverage.Source: C. Controlled data generation · p. 4
  • Each of the 24 sequences provides rectified stereo, registered RGB-D, ground-truth camera poses, and per-pixel dynamic masks.Source: C. Controlled data generation · p. 4

D. Metrics

The metrics assess trajectory accuracy, tracking robustness, and filter decisions against per-keypoint ground truth.

D. Metrics

  • ATE aligns estimated and ground-truth poses with an SE(3) transform that minimizes translational residual, without scale adjustment.RPE is computed over pose pairs one metre apart along the trajectory.Source: D. Metrics · p. 4
  • Tracking completeness is the fraction of frames with an output pose; runs below 0.8 completeness or without initialization count as failures.Failures are reported beside ATE, whose median excludes those runs.Source: D. Metrics · p. 4
  • FRR is the fraction of truly static keypoints discarded, measured alongside filter precision and recall using per-keypoint ground-truth labels.Ground-truth labels are unavailable in real benchmarks such as TUM RGB-D.Source: D. Metrics · p. 4

E. Protocol and statistics

The protocol repeats each configuration to account for ORB-SLAM2’s run-to-run nondeterminism and summarizes filter effects with paired statistical comparisons.

E. Protocol and statistics

  • Each configuration was run five times, yielding 720 runs, with medians reported over runs and scenes.Filter effect is defined as median ATE with the filter minus median ATE without filtering; negative values indicate benefit.Source: E. Protocol and statistics · p. 4
  • Within-cell run distributions use a two-sided Wilcoxon rank-sum test, while paired cell-median comparisons use a Wilcoxon signed-rank test with Holm-corrected p-values.Texture trends are summarized by Spearman rank correlation between filter benefit and median feature count.Source: E. Protocol and statistics · p. 4

IV. EXPERIMENTS

The experiments test whether filtering benefits vary with texture, whether GEOM’s static-feature false-removal rate is lower than FLOW’s, and whether sensor mode changes their interaction.

IV. EXPERIMENTS

  • H1 predicts that filtering’s accuracy benefit decreases as texture decreases and may become negative at the lowest texture level.The proposed explanation is that filtering removes a larger share of scarce static keypoints.Source: §IV · p. 5
  • H2 predicts lower static-feature false-removal rates for GEOM than FLOW, with the gap widening as texture decreases.It attributes the predicted difference to noisier flow estimates from fewer, less well-distributed static correspondences, rather than recall.Source: §IV · p. 5
  • H3 predicts a smaller low-texture GEOM advantage over FLOW in stereo than RGB-D because stereo depth availability degrades with texture.The prediction contrasts texture-dependent stereo depth with texture-independent RGB-D depth.Source: §IV · p. 5

A. Main grid: texture × dynamics

Filtering benefits were concentrated in highly dynamic settings, but the texture-related hypotheses were not borne out for accuracy and were only partly borne out for robustness. At the lowest texture level, filtering could reduce tracking completeness, while static L3 scenes never initialized.

A. Main grid: texture × dynamics

  • At L0, three moving agents raised median ATE to 55 cm in both sensor modes, while filtering’s D0 cost was at most 1.5 cm wherever initialization succeeded.The three agents occupied 10.5% of pixels; the tracker partly followed them.Source: A. Main grid: texture × dynamics · p. 5
  • At L0/D2, GEOM in RGB-D reduced ATE by 52 cm, the only cell significant after Holm correction (pHolm = 0.017).Other cell differences are descriptive given bimodal outcomes and ten runs per cell.Source: A. Main grid: texture × dynamics · p. 5
  • Filtering benefit did not decline monotonically with texture: no tested correlation was significant, and GEOM’s RGB-D benefit was largest at L1–L2.The largest reported benefit was −58 cm at L2/D1.Source: A. Main grid: texture × dynamics · p. 5
  • At L3, GEOM reduced median tracking completeness by 0.39 in RGB-D and 0.36 in stereo, while FLOW left completeness nearly unchanged but did not improve ATE.ORB-SLAM2 never initialized in the 60 static L3/D0 runs; at L3/D1–D2, textured agents enabled initialization.Source: A. Main grid: texture × dynamics · p. 5

B. Mechanism: what the filters remove

GEOM removed more static keypoints than FLOW, while accuracy patterns depended on sensor mode. GEOM’s advantage over FLOW grew as texture decreased in RGB-D but was absent or negative in stereo.

B. Mechanism: what the filters remove

  • GEOM’s static false-removal rate exceeded FLOW’s in 86% of RGB-D and 95% of stereo cells, with medians of 6.8% vs. 1.5% and 19.6% vs. 1.5%, respectively.FLOW’s D2 false-removal rate rose from 2.6% at L0 to 15.8% at L3, narrowing and then reversing its false-removal-rate advantage.Source: B. Mechanism: what the filters remove · p. 5, Table IV · p. 6
  • In RGB-D, ΔATEf correlated with dynamic-point recall (ρ = −0.49, p = 0.016), not FRR; in stereo, it correlated with FRR (ρ = 0.40, p = 0.046), not recall.GEOM found 56–59% of dynamic keypoints at L0–L1 in RGB-D, compared with FLOW’s 15–20%.Source: B. Mechanism: what the filters remove · p. 6

C. Stereo versus RGB-D

  • GEOM’s RGB-D advantage over FLOW grew at L0–L2 (3.7, 35, and 38 cm), but was absent or negative at every stereo texture level (−0.6, −12, and −14 cm).At L3, neither filter had enough successful runs for comparison.Source: C. Stereo versus RGB-D · p. 6
  • Valid stereo-depth keypoints rose from 50% at L0 to 71% at L3, while GEOM’s stereo deficit was associated with high static FRR; erroneous keyframe depths were proposed as a cause but not tested.Stereo depth requires matching keypoints along epipolar lines, unlike rendered RGB-D depth.Source: C. Stereo versus RGB-D · pp. 6–7

V. DISCUSSION AND LIMITATIONS

Filtering reduced tracking completeness at the lowest texture level, but its accuracy benefit did not decline monotonically with texture. The findings are bounded by the study’s synthetic rendering, two scenes, and ORB-SLAM2 front-end.

Findings

  • At the lowest texture level, filtering reduced completeness, but its accuracy benefit did not decline monotonically; ORB-SLAM2 also failed to initialise in static L3 scenes.GEOM removed four to thirteen times more static keypoints than FLOW and paid off only where higher recall mattered and RGB-D depth was dense and exact. At L2/D1, NONE had 70 cm ATE versus 1.5 cm at L0 in RGB-D.Source: §V · p. 7

Statistical strength

  • Only one of 48 cells was significant after Holm correction, and bimodal runs made cell medians unstable, limiting the tests to descriptive evidence on two scenes.None of the texture trends reached p < 0.01.Source: §V · p. 7

Synthetic-to-real gap

  • Rendered images simplify or omit sensor effects, so measured effect sizes may differ on real data; the authors emphasize the direction of effects.The renderer uses Lambertian surfaces, no shadows or global illumination, and exact z-buffer depth.Source: §V · p. 7

Single backbone and generic filters

  • Results cover ORB-SLAM2 and semantics-free versions of two filtering principles; transfer to semantic, structural, direct, or learned front-ends requires further experiments.The cited alternatives include semantic masks, line or planar features, direct alignment, and learned correspondences.Source: §V · p. 7

Few scenes

  • With two scenes and one trajectory each, scene differences cannot be separated from room size or furniture layout, and the main tables pool both scenes.Per-scene cell values are released with the results.Source: §V · p. 7

Texture metric

  • The texture metrics depend on FAST threshold and image resolution, ignore gradient placement, and miss repetitive texture; L3 is low-texture rather than texture-free.Shading edges remain at L3.Source: §V · p. 7

Dynamics

  • Dynamics are varied by agent count, while image coverage and agent speed are not independently varied; rigid, textured agents contribute a growing share of keypoints at low texture.This may confound texture with the agents’ relative salience.Source: §V · p. 7

Protocol

  • Filter parameters were fixed on one texture-rich sequence, and runs slower than real time gave ORB-SLAM2 threads more time per frame than a 30 Hz deployment.A held-out tuning scene would have been cleaner.Source: §V · p. 7

VI. CONCLUSION

The study separates texture from scene dynamics to test when dynamic-point filtering helps ORB-SLAM2 and why. Across two scenes and 720 runs, filtering’s accuracy benefit did not decline monotonically with texture, while completeness fell at the lowest texture level.

Conclusion

  • Across two scenes and 720 runs, filtering’s benefit did not decrease monotonically with texture, lowest-level filtering reduced completeness, and GEOM discarded more static keypoints than FLOW.GEOM’s RGB-D advantage came from higher recall and disappeared in stereo mode.Source: §VI · p. 7
  • The controlled study varies surface texture and scene dynamics along identical trajectories to measure when dynamic-point filtering helps a feature-based SLAM front-end and why.The study evaluates ORB-SLAM2 in two scenes.Source: §VI · p. 7

Data and code availability

  • The renderer, sequences, ORB-SLAM2 patch, evaluation scripts, logs, trajectories, and result tables are released for reuse.Sequences are regenerated deterministically; code is released under GPL-3.0 and results, logs, and figures under CC BY 4.0.Source: §VI · p. 7
Loading 2610.10564v1…