{"id":"d9394d5a-81d5-4809-8875-30bf0f5dac51","arxiv_id":"2502.06337","paper_version":1,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":4.0,"correctness_risk":"high","formal_verification":"none","parameter_count":4,"one_line_summary":"The paper presents AORESP, an axis-angle decoupled rotation estimator that uses stereographic projection and 2D Hough voting, claiming 0.07 seconds and 0.01 degrees on 10^6 points with 90% outliers.","lead":"A fast rotation estimation method is proposed that decouples the rotation axis and angle, then uses stereographic projection and spatial voting to find robust estimates from point correspondences with many outliers. The authors claim sub-0.1-second, 0.01-degree performance on million-point inputs with 90% outliers, which would be a major practical advance for real-time 3D registration.","discovery_kind":"new_application","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Antipodal sign ambiguity is unresolved: r and -r receive identical axis votes and identical angle votes, so the algorithm as written cannot distinguish a rotation from its inverse.","rationale":"The reader's weakest_assumption identifies exactly the load-bearing concern: the unsigned axis voting plus the arccos angle computation leave the antipodal ambiguity unresolved. I find this concern justified and central. Equation (4), the absolute value in Eq. (5), the bijectivity of stereographic projection, and the arccos formula in §IV-B are all invariant under r→-r, so the algorithm as written cannot tell a rotation from its inverse. The claimed 0.07 s / 0.01° result therefore depends on an undocumented sign-selection mechanism. I also considered the missing discretization parameters, the O(NJ) cost versus the strict runtime claim, and the close relation to reference [1], but none is as decisive or as directly tied to the central correctness claim. Because the flaw is plausibly fixable with a residual-based sign check, and the reader already issued CONDITIONAL, my read does not move the verdict.","tokens_in":11501,"tokens_out":12096,"duration_ms":122064,"concrete_test":"Implement Algorithm 1 exactly as written, fixing only the line-8 typo so α2 multiplies sin θ_j, and add no sign-selection post-processing. Generate N=10^4 clean synthetic correspondences from a known rotation with θ=30° and run the voting with a fine grid and J large enough to resolve both r and -r as accumulation maxima. Repeat for 100 random rotations and record the rotation error from Eq. 12. If no hidden sign handling exists, roughly half the trials should show ~180° error. Then add a minimal residual check evaluating Rodrigues(r,θ) versus Rodrigues(-r,θ) on the original pairs; if that restores ~0° error in all trials, the paper must document and experimentally validate this step.","verdict_should_be":"UNCHANGED","load_bearing_attack":"The load-bearing weakness is the r/-r sign ambiguity. The method decouples R into axis r∈S^2 and angle θ∈[0,π] (§III-A), but every computation after decoupling is invariant under r→-r. The axis constraint is r^T(x_i-y_i)=0 (Eq. 4), and the voting objective Eq. 5 uses |r^T(x_i-y_i)|; hence both antipodal axes satisfy the constraint identically for every inlier. Stereographic projection is a bijection away from the pole, so both r and -r appear as distinct common intersections of the projected inlier circles. Section IV-B computes angle_i = arccos(β_i·γ_i/(‖β_i‖‖γ_i‖)). For -r both β_i and γ_i change sign, so the dot product and the voted angle are unchanged. Therefore R(r,θ) and R(-r,θ)=R(r,-θ) receive exactly the same votes, and Algorithm 1 has no step that chooses between them. For a generic rotation with θ not 0 or π, choosing -r outputs the inverse rotation, producing an error near 180°, incompatible with the claimed 0.01°. The reported experiments therefore imply an undocumented disambiguation step (for example, a residual check), or the headline result cannot be reproduced. This is a genuine mathematical degeneracy of the proposed decoupling, not merely a missing implementation detail.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper presents a rotation estimation method (AORESP) that decouples the rotation into axis and angle. It derives a geometric constraint r^T(x-y)=0, maps the resulting circles on the unit sphere to a 2D plane via stereographic projection, and uses spatial voting in a 2D accumulator to find the rotation axis. The angle is then recovered by histogram voting of per-correspondence angles computed with Rodrigues' formula. The authors claim state-of-the-art accuracy and speed, including solving 10^6-point problems with 90% outliers in 0.07 s with 0.01° error, and also claim simultaneous estimation of multiple rotations. Experiments are reported on synthetic data, 3DMatch, KITTI, and a custom multi-rotation setup.","tokens_in":11780,"tokens_out":3748,"duration_ms":35914,"significance":"If the algorithmic description were complete and the reported numbers reproducible, the method would be a significant practical advance: the per-correspondence geometric constraint and the stereographic projection are standard tools, but the proposed voting formulation is an interesting way to turn 3D rotation search into two lower-dimensional voting problems. The claimed speed and robustness at 90% outlier rates, together with the extension to multiple rotations, would exceed the reported performance of the compared baselines. However, the paper as written omits several load-bearing implementation details, and one mathematical degeneracy—the r/-r sign ambiguity—is not addressed. These issues currently prevent the central claims from being verified or reproduced.","major_comments":[{"comment":"The algorithm does not resolve the antipodal sign ambiguity between r and -r. The axis voting objective in Eq. (5) uses |r^T(x_i-y_i)|, which is invariant under r→-r, and stereographic projection maps both antipodal points to distinct but equally valid intersections. In the angle step, line 15 computes angle_i = arccos(β_i·γ_i/(||β_i||||γ_i||)); replacing r by -r flips both β_i and γ_i, leaving the dot product and the voted angle unchanged. Therefore R(r,θ) and R(-r,θ)=R(r,-θ) receive exactly the same votes for θ∈[0,π], and Algorithm 1 has no step that chooses between them. For a generic rotation with θ not equal to 0 or π, outputting the -r branch yields the inverse rotation, which would produce an error near 180° rather than the reported 0.01°. The authors must either describe the disambiguation step explicitly (for example, a residual check) or change the angle search to a signed angle over a 2π range.","section":"Algorithm 1, line 8"},{"comment":"The sampling formula reads Points3d = α1 cos θj + α2 cos θj, which is a one-dimensional curve, not a circle. This must be α1 cos θj + α2 sin θj for the points to trace a circle on the sphere. As written, the stereographic projection step would not produce the circle intersections the method relies on, and the axis voting would be degenerate. This appears to be a typographical error, but it is a load-bearing one because the entire axis-finding stage depends on sampling circles correctly.","section":"Algorithm 1, line 8"},{"comment":"Several critical parameters are never specified or analyzed: the resolution of the 2D accumulator, the number of angle samples J for θ, the bin width of the rotation-angle histogram, and the noise tolerance ε in Eq. (5). The reported 0.01° accuracy and 0.07 s runtime cannot be reproduced without these values, and there is no sensitivity study in Section V. This is not a minor omission because the voting method's robustness and efficiency both depend directly on these discretizations, and the claimed superiority over baselines may change with different settings.","section":"Sections IV-A, IV-B, and V"}],"minor_comments":[{"comment":"The text has a grammatical error: 'the intersection an plane in S^2' should be 'the intersection of a plane with S^2'. Also, the displayed equation for the projected circle appears incomplete; the right-hand side should probably be (A^2+B^2)/(C+D)^2 + (C-D)/(C+D) with appropriate parentheses.","section":"Section IV, Eq. (10)"},{"comment":"The normalization of z_i is inconsistent: Section III-A defines z = (x-y)/||x-y||, while Algorithm 1 sets z_i = y_i - x_i and only then asserts a_i^2+b_i^2+c_i^2=1. The sign and normalization used in the actual voting step should be stated explicitly.","section":"Section III-A and Algorithm 1, line 4"},{"comment":"The comparison with TEASER++ and GORE is only described in prose ('memory issues' and 'running time exceeds 12 hours'); no data or plots are shown for these baselines, which makes the head-to-head comparison incomplete.","section":"Section V-A-1"},{"comment":"The multi-rotation extension is described only conceptually. The paper does not explain how peaks are selected in the 2D accumulator, how many peaks are assumed, or how the per-peak angle histograms are computed. Without these details, the multi-model experiment in Section V-B cannot be reproduced.","section":"Section IV-D"}],"recommendation":"major_revision","confidential_remarks":"The paper's core idea is plausible and the geometric derivation is sound, but the manuscript as written is not reproducible: the r/-r sign ambiguity is a real degeneracy, the circle-sampling formula in Algorithm 1 contains a typo that would break the method, and the discretization parameters are unstated. These are fixable within the scope of the paper, so I recommend major revision rather than rejection. The authors should also consider whether the reported real-world results on 3DMatch/KITTI are consistent with using ground-truth translation while comparing to methods that estimate the full pose; a clarification of the evaluation protocol would strengthen the claims."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"The core geometric decoupling is sound: r^T(x-y)=0 is correct, and stereographic projection turning the circle-intersection search into 2D voting is a sensible efficiency move. The multi-model extension via peak picking is a nice byproduct, and the experiments on 3DMatch and KITTI cover reasonable baselines. If the reported numbers hold, the method is genuinely fast.\n\nBut the sign ambiguity is a load-bearing flaw, and the stress-test note gets it right. Every step in the pipeline is invariant under r -> -r. The axis constraint uses |r^T(x_i-y_i)|, the projected circles are the same for both antipodal axes, and the angle vote is arccos of a dot product that is unchanged when both vectors flip sign. So (r, theta) and (-r, theta) receive identical votes, and since R(-r, theta) = R(r, -theta), a generic rotation and its inverse are indistinguishable. The reported 0.01-degree error therefore implies the authors have an undocumented disambiguation step, or the headline numbers are not reproducible from the described algorithm. This is not a minor implementation detail; it is a degeneracy in the method as written.\n\nThe write-up has other problems. Algorithm 1 line 8 has an obvious typo: both terms use cos(theta_j) instead of one being sin, making the pseudocode unexecutable. The paper also omits the accumulator resolution, angle bin width, projection pole choice, and how multiple peaks are selected for multi-model fitting. No code is released, so the experimental claims cannot be checked.\n\nThat said, the underlying idea is plausible and the fix is likely simple: after estimating R, check a few residuals and invert if needed. The paper is not ready in its current form, but it deserves a serious referee if the authors can supply the missing sign resolution, correct the pseudocode, and release code. I would engage with it cautiously rather than dismiss it.","headline":"The stereographic voting idea is clean and the speed numbers are striking, but the paper never resolves the r/-r sign ambiguity, so the algorithm as written cannot distinguish a rotation from its inverse.","tokens_in":570,"tokens_out":685,"would_cite":false,"duration_ms":40868,"reading_group":"maybe","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"Rotation estimation reduces to 2D voting via stereographic projection, with 0.07-second 90%-outlier solutions at 0.01-degree error.","keywords":["rotation estimation","stereographic projection","outlier robustness","spatial voting","point cloud registration","multi-model fitting","rotation axis and angle","maximum consensus"],"falsifier":"Take a single synthetic problem with a known rotation R and $10^{6}$ correspondences at 90% outliers, run the algorithm, and compare the recovered rotation to both R and $R^{{-1}}$; if the method returns the inverse on a nontrivial fraction of trials, the unstated r-versus-r ambiguity is real and the 0.01-degree accuracy claim depends on an auxiliary tie-breaking rule rather than the described pipeline. A cleaner check is to replace the ground-truth rotation by $R^{{-1}}$ and verify the output flips accordingly.","tokens_in":11302,"feed_emoji":"🎯","tokens_out":8959,"duration_ms":73171,"temperature":0.7,"pith_summary":"The paper tries to make outlier-robust rotation estimation fast enough for large real-world inputs by splitting the problem in two. It shows geometrically that every correspondence between source and target points confines the rotation axis to a circle on the unit sphere, so the correct axis is the point where the most circles intersect. Stereographic projection maps those circles to circles in the plane, reducing the axis search to a 2D spatial vote; the angle is then found by a separate one-dimensional histogram vote, and Rodrigues' formula assembles the rotation. The same voting landscape yields multiple rotations at once by reading several peaks. With GPU acceleration, the authors report solving problems with $10^{6}$ correspondences and 90% outliers in about 0.07 seconds with an angular error of 0.01 degrees.","feed_headline":"Stereographic projection solves 90%-outlier rotations in 0.07 seconds","feed_subtitle":"Projecting rotation constraints to a plane turns hard 3D search into a fast 2D vote, beating RANSAC and ARCS.","key_machinery":"The central object is the stereographic projection from the unit sphere minus a projection point onto the plane, a conformal map that sends circles on the sphere to circles (or lines) in the plane. It does the work of converting the 3D search for a common intersection of great circles into a planar maximum-intersection problem. The second piece of machinery is a discretized 2D accumulator that counts, for each cell, how many projected constraint circles pass through it; the highest-count cell is back-projected to $S^{2}$ to give the rotation axis. A companion 1D accumulator votes on the angle recovered from each correspondence, and reading the 2D accumulator at multiple local maxima turns single-model estimation into multi-model estimation.","core_discovery":"The central discovery is that the axis part of rotation search—usually a 3-degree-of-freedom search over SO(3)—can be decoupled and flattened. For each inlier correspondence the rotation constraint implies r^T(x_i - y_i) = 0, meaning the axis r lies on a great circle on the unit sphere. Because stereographic projection is circle-preserving, the family of these constraint circles becomes a family of circles in the plane, and the axis that satisfies the most correspondences is the point where the most projected circles cross. A discretized 2D accumulator finds that point; back-projection gives the axis, a one-dimensional histogram over per-correspondence angles gives the rotation angle, and Rodrigues' formula reconstructs R. The same accumulator, interpreted at multiple local maxima, provides multiple rotations simultaneously.","pith_inferences":["The paper leaves the antipodal ambiguity between axes r and -r implicit: every constraint r^T(x_i - y_i) = 0 and the arccos-based angle vote are unchanged by flipping the axis, yet the two choices give inverse rotations. A reader should treat the sign convention as an unverified detail and test whether the method occasionally returns R^{-1}.","The multi-rotation experiments assume the number of rotations is known or visible as peaks; an immediate extension is automatic peak detection and model-order selection from the same 2D accumulator, which the paper does not develop.","Because the geometric reduction only needs constraints that define circles on a sphere, the same stereographic-voting pipeline could plausibly extend to other consensus problems with circle-valued constraints, such as 1D subspace estimation or homography search; this is an extrapolation, not a claim of the paper.","The reported 0.07-second runtime is for GPU; a useful stress test would be an ablation of grid resolution and projection point to see how error and runtime trade off, since the current experiments fix those choices."],"forward_implications":["If the claim holds, rotation estimation with millions of correspondences and heavy mismatch rates becomes a sub-second operation, making it practical for online autonomous driving and large-scale 3D registration.","The axis-angle decoupling plus voting removes the need for a good initialization, a limitation of ICP-style refinement, and avoids the exponential traversal of branch-and-bound rotation search.","Because the voting happens in a fixed 2D grid, the algorithm's cost scales roughly linearly with the number of correspondences, and the same accumulator can be reused to find multiple rotations without running a separate consensus loop per model.","On the standard indoor and outdoor benchmarks used in the paper, the method reports lower rotation error than the compared baselines at much lower runtime, suggesting the speed does not come at the cost of accuracy."],"supporting_citations":[{"why":"It supplies the prior idea of using stereographic projections in rotation search, which the paper adapts to axis-only constraints.","marker":"[1]"},{"why":"It provides the ARCS+O and ARCS+OR baselines and the decoupled rotation-and-correspondence formulation the paper compares against and extends.","marker":"[10]"},{"why":"It supplies the definition and circle-preserving property of stereographic projection that the method relies on.","marker":"[11]"},{"why":"It provides the RANSAC baseline used in synthetic and real-world comparisons.","marker":"[21]"},{"why":"It gives the forward and inverse stereographic projection formulas used in the algorithm.","marker":"[34]"},{"why":"It serves as a robust point-cloud-registration baseline that the paper compares against and notes has memory issues on large inputs.","marker":"[35]"},{"why":"It provides the indoor 3DMatch benchmark dataset used for real-world rotation-error evaluation.","marker":"[44]"},{"why":"It provides the outdoor KITTI dataset used for real-world evaluation in autonomous driving scenarios.","marker":"[45]"}],"fun_headline_variants":["2D stereographic vote solves 1M-point rotation with 90% outliers","Stereographic projection: 0.07s for 90% outlier rotations","Plane projection turns 3D rotation search into a 2D vote","Axis from 2D circle intersections, angle from 1D histogram","Stereographic projection: fast rotation estimation despite 90% outliers"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The method's success hinges on the rotation axis being recoverable as the unique densest point of intersection of the projected constraint circles; that requires an unstated rule for choosing between r and -r, because both axes satisfy every pairwise constraint and produce the same unsigned angle, yet correspond to different rotations.","fun_headline_variants_meta":{"raw":{"variants":["2D stereographic vote solves 1M-point rotation with 90% outliers","Stereographic projection: 0.07s for 90% outlier rotations","Plane projection turns 3D rotation search into a 2D vote","Axis from 2D circle intersections, angle from 1D histogram","Stereographic projection: fast rotation estimation despite 90% outliers"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.001236,"raw_usage":{"total_tokens":5062,"prompt_tokens":918,"completion_tokens":4144,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":534,"completion_tokens_details":{"reasoning_tokens":4044}},"tokens_in":534,"tokens_out":4144,"duration_ms":30971,"temperature":1.0,"reasoning_tokens":4044,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-08T15:47:16.816918+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Take a single synthetic problem with a known rotation R and $10^{6}$ correspondences at 90% outliers, run the algorithm, and compare the recovered rotation to both R and $R^{{-1}}$; if the method returns the inverse on a nontrivial fraction of trials, the unstated r-versus-r ambiguity is real and the 0.01-degree accuracy claim depends on an auxiliary tie-breaking rule rather than the described pipeline. A cleaner check is to replace the ground-truth rotation by $R^{{-1}}$ and verify the output flips accordingly.","supporting_citations":[{"cited_title":"Fast rotation search with stereographic projections for 3d registration,","cited_arxiv_id":null,"evidence_quote":"It supplies the prior idea of using stereographic projections in rotation search, which the paper adapts to axis-only constraints."},{"cited_title":"Arcs: Accurate rotation and correspondence search,","cited_arxiv_id":null,"evidence_quote":"It provides the ARCS+O and ARCS+OR baselines and the decoupled rotation-and-correspondence formulation the paper compares against and extends."},{"cited_title":"M ¨obius transformations and stereographic projection,","cited_arxiv_id":null,"evidence_quote":"It supplies the definition and circle-preserving property of stereographic projection that the method relies on."},{"cited_title":null,"cited_arxiv_id":null,"evidence_quote":"It gives the forward and inverse stereographic projection formulas used in the algorithm."},{"cited_title":"Teaser: Fast and certifiable point cloud registration,","cited_arxiv_id":null,"evidence_quote":"It serves as a robust point-cloud-registration baseline that the paper compares against and notes has memory issues on large inputs."}],"review_version":1}