SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2505.04788 · CVPR · 2025

Convex Relaxation for Robust Vanishing Point Estimation in Manhattan World

Yi Zhou, Peidong Liu, Bangyan Liao, Haoang Li, Zhenjun Zhao, Yingping Zeng

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 8 functions out of this paper's own repositories and ran 7 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
wu-cvgl/GlobustVP — 7 of 8
FunctionStatusWhere it lives
_angle_mask Ran wu-cvgl/GlobustVP/globustvp/solver/core.py
code served (permissive licence) · get_code("b24291e6ccc6ee58")
axang2rotm Ran wu-cvgl/GlobustVP/globustvp/solver/core.py
code served (permissive licence) · get_code("a706ddb884330838")
check_eig Ran wu-cvgl/GlobustVP/globustvp/solver/core.py
code served (permissive licence) · get_code("d19c01e06b847df1")
find_peak_intervals Ran wu-cvgl/GlobustVP/globustvp/solver/core.py
code served (permissive licence) · get_code("93d104a4436b2939")
generate_bin Ran wu-cvgl/GlobustVP/globustvp/solver/core.py
code served (permissive licence) · get_code("64b9d7566e32ff62")
recover_vp Ran wu-cvgl/GlobustVP/globustvp/solver/core.py
code served (permissive licence) · get_code("3515e1d103c201d6")
solve_sdp Ran wu-cvgl/GlobustVP/globustvp/solver/core.py
code served (permissive licence) · get_code("92e8a9b485cf8825")
globustvp Not yet run wu-cvgl/GlobustVP/globustvp/solver/core.py
code served (permissive licence) · get_code("0986fb2294673172")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Determining the vanishing points (VPs) in a Manhattan world, as a fundamental task in many 3D vision applications, consists of jointly inferring the line-VP association and locating each VP. Existing methods are, however, either sub-optimal solvers or pursuing global optimality at a significant cost of computing time. In contrast to prior works, we introduce convex relaxation techniques to solve this task for the first time. Specifically, we employ a "soft" association scheme, realized via a truncated multi-selection error, that allows for joint estimation of VPs' locations and line-VP associations. This approach leads to a primal problem that can be reformulated into a quadratically constrained quadratic programming (QCQP) problem, which is then relaxed into a convex semidefinite programming (SDP) problem. To solve this SDP problem efficiently, we present a globally optimal outlier-robust iterative solver (called Glo-bustVP), which independently searches for one VP and its associated lines in each iteration, treating other lines as outliers. After each independent update of all VPs, the mutual orthogonality between the three VPs in a Manhattan world is reinforced via local refinement. Extensive experiments on both synthetic and real-world data demonstrate that GlobustVP achieves a favorable balance between efficiency, robustness, and global optimality compared to previous works. The code is publicly available at github.com/wu-cvgl/GlobustVP.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2505.04788")
get_code_for_paper("2505.04788")
have("2505.04788")

Connect an agent — have() is free.