Papers
Topics
Authors
Recent
Search
2000 character limit reached

DS-SAC: Deterministic Density Search Consensus

Updated 7 July 2026
  • The paper introduces DS-SAC, a deterministic framework for robust estimation that replaces random minimal sampling with a dense residual search strategy.
  • It employs a dual-residual approach using both distance metrics and signed residuals to partition data and refine model hypotheses via local and global exploration.
  • Empirical evaluations on homography, fundamental, and essential matrix estimation demonstrate improved AUC, reduced pose error, and faster runtimes compared to random sampling methods.

Searching arXiv for the specified DS-SAC and related papers to ground the article in current sources. Density Search Sample Consensus (DS-SAC) is a deterministic robust estimation framework for geometric model fitting in computer vision that avoids repeated random minimal sampling by searching dense residual regions (Thapa et al., 4 Jul 2026). Introduced for homography, fundamental matrix, and essential matrix estimation, DS-SAC adheres to the standard consensus-maximization objective but replaces stochastic hypothesis generation with a procedure that starts from an initial model estimated from the available points, performs local exploration via forward and backward search, and then recursively partitions the point set using signed residuals to support global exploration (Thapa et al., 4 Jul 2026). In the cited literature, the name is distinct from DSAC, the differentiable counterpart of RANSAC for camera localization (Brachmann et al., 2016), and from DGSAC, a density-guided multi-model fitting pipeline based on Kernel Residual Density (Tiwari et al., 2020).

1. Definition and problem formulation

DS-SAC is designed for robust geometric model estimation from point correspondences, where the goal is to recover a parameter vector θ\theta—such as a homography HH, a fundamental matrix FF, or an essential matrix EE—that explains as many input correspondences as possible despite outliers (Thapa et al., 4 Jul 2026). The method follows the consensus-maximization formulation

θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),

where τ\tau is the inlier threshold and the indicator counts inliers whose residual falls within τ\tau (Thapa et al., 4 Jul 2026).

Its primary score is inlier count. As a tie-breaker between hypotheses that yield the same inlier count, DS-SAC uses MSAC’s truncated residual score

$C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$

where d(,θ)d(\cdot,\theta) is the task-specific distance and TT is the inlier threshold (Thapa et al., 4 Jul 2026). Final model selection is therefore the lexicographic maximum of inlier count and MSAC score (Thapa et al., 4 Jul 2026).

A central distinction is that DS-SAC needs two residual-related quantities. It uses a distance HH0 for scoring, selecting inliers, and least-squares fitting, and a signed residual HH1 for splitting the set into two partitions during global exploration (Thapa et al., 4 Jul 2026). The sign of HH2 determines on which side of the partition each point lies. This suggests that DS-SAC is organized around a dual view of residuals: one metric for robust support measurement and one signed quantity for deterministic search-space decomposition.

2. Residual models for homography, fundamental matrix, and essential matrix

For homography estimation, DS-SAC considers homogeneous points HH3 and HH4 under the constraint

HH5

(Thapa et al., 4 Jul 2026). The method uses the reprojection error as distance,

HH6

while also noting the symmetric transfer error variant

HH7

(Thapa et al., 4 Jul 2026). For partitioning, DS-SAC uses a linearized algebraic signed residual derived from

HH8

namely

HH9

(Thapa et al., 4 Jul 2026).

For the fundamental matrix, DS-SAC uses the epipolar constraint

FF0

with FF1 of rank two (Thapa et al., 4 Jul 2026). The scoring distance is the Sampson distance,

FF2

and the signed residual is

FF3

(Thapa et al., 4 Jul 2026). The paper states that DS-SAC estimates FF4 with the normalized eight-point algorithm for percentile-point optimization and applies bundle refinement thereafter (Thapa et al., 4 Jul 2026).

For the essential matrix, the epipolar constraint is again

FF5

with FF6 of rank two and singular values FF7 (Thapa et al., 4 Jul 2026). DS-SAC uses

FF8

(Thapa et al., 4 Jul 2026). It uses the eight-point algorithm with rank enforcement for percentile-point updates and the five-point solver for inlier optimization, both on normalized points (Thapa et al., 4 Jul 2026). Pose recovery decomposes FF9 via SVD as EE0, generates four EE1 candidates using the canonical matrices EE2 and EE3, and selects the one with maximum points in front of both cameras by cheirality (Thapa et al., 4 Jul 2026).

3. Deterministic density search algorithm

The algorithmic framework eliminates random minimal sampling and instead combines local density search with recursive partitioning (Thapa et al., 4 Jul 2026). In a current partition EE4, initially all points, the method first estimates

EE5

by least squares over the partition (Thapa et al., 4 Jul 2026). For homography this uses DLT; for the fundamental matrix, normalized eight-point; and for the essential matrix, normalized eight-point with rank enforcement, all with data normalization for stability (Thapa et al., 4 Jul 2026).

The forward search performs local inward exploration. Starting at EE6, it progressively shrinks the percentile EE7 by EE8 until EE9 (Thapa et al., 4 Jul 2026). At each percentile, it computes distances, selects the θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),0 smallest-residual points, re-estimates the model by least squares on that set, and scores the result using inlier count and MSAC score (Thapa et al., 4 Jul 2026). It then performs inlier optimization by reselecting inliers under threshold θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),1, enlarging the set to the top θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),2 closest points if necessary, and accepting a refined model if the score improves (Thapa et al., 4 Jul 2026). The best local model and the percentile at which it occurs are tracked as θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),3 and θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),4 (Thapa et al., 4 Jul 2026).

Backward search provides local outward exploration. It initializes the current model with θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),5, then increases the percentile from θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),6 to θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),7, for example θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),8, in steps of θ=argmaxθi=1n1(ri(θ)τ),\theta^*=\arg\max_{\theta}\sum_{i=1}^{n}\mathbb{1}(|r_i(\theta)|\le \tau),9 (Thapa et al., 4 Jul 2026). The same percentile-points optimization and inlier optimization steps are repeated to search for wider support around the dense residual core discovered in forward search (Thapa et al., 4 Jul 2026). The paper characterizes this as balancing precision and recall: forward search shrinks support to a dense residual core, improving precision, while backward search expands around that core to recover additional inliers, improving recall (Thapa et al., 4 Jul 2026).

Global exploration is implemented by recursive signed-residual partitioning. Using τ\tau0, DS-SAC divides the partition into

τ\tau1

and recurses on each valid child partition whose relative size satisfies τ\tau2 (Thapa et al., 4 Jul 2026). A global best model τ\tau3 is updated whenever a local best model improves the global score (Thapa et al., 4 Jul 2026). The implementation also includes boundary handling: if the best split would place the partition boundary outside the current search space, the method re-scans forward without inlier optimization and picks the smallest-kernel model whose boundary lies within τ\tau4, falling back to τ\tau5 if necessary (Thapa et al., 4 Jul 2026).

Post-tuning starts from τ\tau6 and progressively tightens thresholds using a schedule τ\tau7 with τ\tau8 (Thapa et al., 4 Jul 2026). For each threshold, the method forms inliers, re-fits the model, and accepts the update only if the score improves (Thapa et al., 4 Jul 2026). This sharpening step is described as improving geometry without sacrificing consensus (Thapa et al., 4 Jul 2026).

4. Complexity, parameters, and implementation characteristics

The paper analyzes the recursion as a binary tree over partitions and states that DS-SAC has polynomial complexity with respect to the number of points (Thapa et al., 4 Jul 2026). In the worst case of highly imbalanced splits, the tree height is approximately τ\tau9, and with τ\tau0 the total iteration count is bounded by

τ\tau1

which for τ\tau2 yields τ\tau3, giving τ\tau4 complexity (Thapa et al., 4 Jul 2026). In the balanced case, the height is approximately τ\tau5, and the total iteration count is bounded by

τ\tau6

hence τ\tau7 (Thapa et al., 4 Jul 2026).

Per-iteration cost is dominated by distance evaluation, selecting the τ\tau8 smallest distances, and least-squares re-fitting (Thapa et al., 4 Jul 2026). Distance evaluation is τ\tau9; selecting the smallest distances is $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$0 with sorting or $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$1 with selection; and DLT or eight-point re-fitting is $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$2 for linear systems, while five-point inlier optimization incurs polynomial root finding and bundle updates add small constant factors in practice (Thapa et al., 4 Jul 2026). The paper notes that precomputation of linear terms reduces repeated work (Thapa et al., 4 Jul 2026).

The reported default parameters are $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$3, $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$4, and $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$5 (Thapa et al., 4 Jul 2026). Thresholds are derived from chi-square statistics with expected noise $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$6: for epipolar geometry, $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$7, and for homography, $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$8 (Thapa et al., 4 Jul 2026). Minimal solver sizes are four points for homography, eight points for the fundamental matrix, and five points for essential-matrix inlier optimization together with eight points for percentile optimization (Thapa et al., 4 Jul 2026). A plausible implication is that DS-SAC is parameterized to behave more like a deterministic search schedule than like an iteration-budgeted sampler.

The paper also reports that practical runtimes are competitive due to a few hundred iterations on average, approximately 465–490 across tasks (Thapa et al., 4 Jul 2026). This is presented as one reason the polynomial search remains practical.

5. Empirical evaluation and comparative performance

The evaluation covers ScanNet1500, PhotoTourism (IMC’20 validation), LaMAR CAB, 7Scenes, ETH3D (13 training scenes), and KITTI VO, totaling 39,592 image pairs spanning indoor, outdoor, driving, and AR scenarios (Thapa et al., 4 Jul 2026). Features and matches are produced by SuperPoint and LightGlue (Thapa et al., 4 Jul 2026). Hartley normalization is used for homography and fundamental matrix estimation, while for the essential matrix the pipeline uses camera normalization followed by Hartley normalization for the eight-point step (Thapa et al., 4 Jul 2026).

Relative pose error is defined as $C_{\mathrm{MSAC}(\theta)=\sum_{i=1}^{n}\max\left(1-\frac{d^2(x_i,\theta)}{T^2},\,0\right),$9, where d(,θ)d(\cdot,\theta)0 is the rotation angle difference and d(,θ)d(\cdot,\theta)1 is the angle between translation directions (Thapa et al., 4 Jul 2026). The reported metrics are AUC at d(,θ)d(\cdot,\theta)2, d(,θ)d(\cdot,\theta)3, and d(,θ)d(\cdot,\theta)4, median d(,θ)d(\cdot,\theta)5, average inliers, and runtime (Thapa et al., 4 Jul 2026). AUC is defined as the area under the recall-versus-threshold curve,

d(,θ)d(\cdot,\theta)6

All baselines are evaluated with a fixed budget of 1000 iterations, whereas DS-SAC reports its average iterations (Thapa et al., 4 Jul 2026).

Task DS-SAC summary Comparison stated in the paper
Homography AUC@5°=26.74, AUC@10°=40.90, AUC@20°=56.38, median d(,θ)d(\cdot,\theta)7=3.87°, inliers=55.68, time=0.007 s Improves significantly in AUC and median d(,θ)d(\cdot,\theta)8, and is fastest
Fundamental matrix AUC@5°=44.38, AUC@10°=57.29, AUC@20°=68.68, median d(,θ)d(\cdot,\theta)9=2.06°, inliers=283.29, time=0.008 s Improves AUC and median TT0 while being faster than GC-RANSAC
Essential matrix AUC@5°=51.29, AUC@10°=63.87, AUC@20°=74.35, median TT1=1.72°, inliers=275.46, time=0.015 s Highest AUC at all thresholds and much lower runtime; GC-RANSAC has slightly lower median TT2

For homography, the best baselines reported are LO-RANSAC with AUC@10°=34.89 and GC-RANSAC with AUC@20°=50.35, while DS-SAC reaches 40.90 and 56.38, respectively, with median TT3 and runtime 0.007 s (Thapa et al., 4 Jul 2026). For the fundamental matrix, GC-RANSAC is reported as the strongest baseline with AUC@10°=55.42, AUC@20°=66.38, median TT4, and time 0.032 s, compared with DS-SAC’s 57.29, 68.68, 2.06°, and 0.008 s (Thapa et al., 4 Jul 2026). For the essential matrix, DS-SAC achieves the highest AUC at all thresholds and much lower runtime, while GC-RANSAC attains a slightly lower median pose error of 1.39° compared with DS-SAC’s 1.72° (Thapa et al., 4 Jul 2026).

Sensitivity studies report that smaller TT5 and smaller TT6 allow finer search and slightly higher AUC but increase iterations, while iterations decrease nearly linearly with increasing TT7 and also drop with larger TT8 (Thapa et al., 4 Jul 2026). Ablations show that removing backward search improves speed, for example to 0.005 s for the fundamental matrix, with marginal AUC drop, but essential matrix estimation loses more accuracy without backward search (Thapa et al., 4 Jul 2026). Without post-tuning, AUC and median TT9 are slightly worse for the fundamental and essential matrix, while homography is largely unchanged (Thapa et al., 4 Jul 2026).

6. Relation to RANSAC, DSAC, and DGSAC

DS-SAC is presented as an alternative to stochastic robust estimators such as RANSAC, LO-RANSAC, MAGSAC, and GC-RANSAC (Thapa et al., 4 Jul 2026). Those methods repeatedly draw random minimal samples and rely on the probability of obtaining all-inlier samples, which deteriorates with higher outlier ratios and larger minimal sample sizes (Thapa et al., 4 Jul 2026). By contrast, DS-SAC is deterministic: it uses no random sampling, no iteration budget linked to outlier ratio, systematic local refinement via percentile-based residual selection and inlier optimization, and global coverage via recursive signed-residual partitioning (Thapa et al., 4 Jul 2026). The paper characterizes deterministic progression as reducing variance across runs (Thapa et al., 4 Jul 2026).

This deterministic DS-SAC should be distinguished from DSAC, introduced as “Differentiable SAmple Consensus,” a differentiable counterpart of RANSAC for deep learning pipelines (Brachmann et al., 2016). DSAC replaces deterministic hypothesis selection with a probabilistic selection over hypotheses using a softmax over scores, allowing optimization of expected task loss through REINFORCE-style gradients (Brachmann et al., 2016). The similarity in acronym can create confusion, but the underlying mechanisms are different: DS-SAC searches dense residual regions deterministically, whereas DSAC preserves a single-hypothesis selection paradigm while making it differentiable for end-to-end camera localization (Brachmann et al., 2016).

DS-SAC also differs from DGSAC, “Density Guided Sampling and Consensus,” which addresses robust multiple-model fitting using Kernel Residual Density, guided sampling, explanation scores, and model selection algorithms (Tiwari et al., 2020). DGSAC remains sampling-based, though guided and automatically stopped, whereas DS-SAC explicitly avoids repeated random minimal sampling and instead performs deterministic density search plus recursive signed-residual partitioning (Tiwari et al., 2020, Thapa et al., 4 Jul 2026). This suggests that the three similarly named methods occupy different methodological niches: differentiable robust selection in deep pipelines, density-guided multi-model fitting, and deterministic single-model consensus search.

7. Limitations, failure cases, and scope

The reported limitations of DS-SAC center on threshold sensitivity, partition quality, and geometric degeneracy (Thapa et al., 4 Jul 2026). Although MSAC tie-breaking mitigates threshold dependence, too-small HH00 lowers recall and too-large HH01 admits many outliers and hurts precision (Thapa et al., 4 Jul 2026). The signed-residual partitioning can also fail to isolate dense inlier modes when residual signs are largely random due to noise or severe mismatches, though the method mitigates this by choosing HH02 after local optimization and by checking partition-boundary validity (Thapa et al., 4 Jul 2026).

For essential matrix estimation, the paper explicitly notes that GC-RANSAC achieved slightly lower median pose error, while DS-SAC optimized AUC and runtime (Thapa et al., 4 Jul 2026). It further states that incorporating spatial coherence could further improve DS-SAC’s median (Thapa et al., 4 Jul 2026). In highly degenerate geometries or when inlier support is very sparse, DS-SAC relies on residual density, and if no dense mode exists, both DS-SAC and RANSAC variants are challenged (Thapa et al., 4 Jul 2026).

The method’s scope is broad within single-model robust geometric estimation. The experiments cover homography, fundamental matrix, and essential matrix estimation on six large datasets (Thapa et al., 4 Jul 2026). The core ingredients—distance-based scoring, signed-residual partitioning, percentile-point optimization, inlier optimization, and recursive search—indicate a general-purpose deterministic alternative to stochastic consensus-based methods for problems where an appropriate signed residual can be defined (Thapa et al., 4 Jul 2026). A plausible implication is that the method’s applicability depends less on a specific minimal solver than on whether the residual structure admits stable density search and meaningful sign-based partitioning.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (3)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Density Search Sample Consensus (DS-SAC).