Scaling to arbitrarily large bundle adjustment problems requires data and compute to be distributed across multiple devices. Centralized methods in prior works are only able to solve small or medium size problems due to overhead in computation and communication. In this paper, we present a fully decentralized method that alleviates computation and communication bottlenecks to solve arbitrarily large bundle adjustment problems. We achieve this by reformulating the reprojection error and deriving a novel surrogate function that decouples optimization variables from different devices. This function makes it possible to use majorization minimization techniques and reduces bundle adjustment to independent optimization subproblems that can be solved in parallel. We further apply Nesterov's acceleration and adaptive restart to improve convergence while maintaining its theoretical guarantees. Despite limited peer-to-peer communication, our method has provable convergence to first-order critical points under mild conditions. On extensive benchmarks with public datasets, our method converges much faster than decentralized baselines with similar memory usage and communication load. Compared to centralized baselines using a single device, our method, while being decentralized, yields more accurate solutions with significant speedups of up to 953.7x over Ceres and 174.6x over DeepLM. Code: https://joeaortiz.github.io/daba.
翻译:将集束调整问题扩展到任意大规模需要将数据和计算分布到多个设备上。由于计算与通信开销,先前工作中的集中式方法仅能解决中小规模问题。本文提出一种全分布式方法,通过消除计算与通信瓶颈,解决任意大规模集束调整问题。我们通过重新定义重投影误差并推导新型替代函数来实现这一点,该函数将不同设备的优化变量解耦。该函数使利用最小化极大化技术成为可能,并将集束调整简化为可并行求解的独立优化子问题。我们进一步应用Nesterov加速与自适应重启技术,在保持理论收敛保证的同时提升收敛速度。尽管采用有限的点对点通信,我们的方法在温和条件下可证明收敛至一阶临界点。在公开数据集的广泛基准测试中,我们的方法在内存占用与通信负载相当的情况下,收敛速度远快于分布式基线方法。与使用单设备的集中式基线方法相比,我们的分布式方法在获得更精确解的同时,相对于Ceres和DeepLM分别实现了高达953.7倍和174.6倍的显著加速。代码地址:https://joeaortiz.github.io/daba。