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 940.7x over Ceres and 175.2x over DeepLM. Code: https://github.com/facebookresearch/DBA.
翻译:将任意大规模的集束调整问题扩展至多个设备上,需要数据和计算的分布式处理。由于计算和通信开销,先前工作中的中心化方法仅能解决中小规模问题。本文提出一种完全去中心化的方法,通过缓解计算和通信瓶颈来求解任意大规模的集束调整问题。我们通过重新表述重投影误差并推导出一种新颖的替代函数来实现这一点,该函数将不同设备的优化变量解耦。该函数使得利用主化最小化技术成为可能,并将集束调整简化为可并行求解的独立优化子问题。我们进一步应用Nesterov加速与自适应重启,在保持理论保证的同时改善收敛性。尽管采用受限的点对点通信,我们的方法在温和条件下仍具备收敛到一阶临界点的理论保证。在包含公开数据集的广泛基准测试中,我们的方法收敛速度远快于内存和通信负载相似的去中心化基线方法。与使用单设备的中心化基线方法相比,我们的去中心化方法在产生更精确解的同时,实现了显著的加速——比Ceres快940.7倍,比DeepLM快175.2倍。代码:https://github.com/facebookresearch/DBA。