Distributed sparse bundle adjustment algorithm based on three-dimensional point partition and asynchronous communication

  • Xiao-long ShenEmail author
  • Yong Dou
  • Steven Mills
  • David M Eyers
  • Huan Feng
  • Zhiyi Huang


Sparse bundle adjustment (SBA) is a key but time- and memory-consuming step in three-dimensional (3D) reconstruction. In this paper, we propose a 3D point-based distributed SBA algorithm (DSBA) to improve the speed and scalability of SBA. The algorithm uses an asynchronously distributed sparse bundle adjustment (A-DSBA) to overlap data communication with equation computation. Compared with the synchronous DSBA mechanism (SDSBA), A-DSBA reduces the running time by 46%. The experimental results on several 3D reconstruction datasets reveal that our distributed algorithm running on eight nodes is up to five times faster than that of the stand-alone parallel SBA. Furthermore, the speedup of the proposed algorithm (running on eight nodes with 48 cores) is up to 41 times that of the serial SBA (running on a single node).

Key words

Sparse bundle adjustment Parallel Distributed sparse bundle adjustment Three-dimensional reconstruction Asynchronous 

CLC number

TP312 TP217.4 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Agarwal S, Furukawa Y, Snavely N, et al., 2011. Building Rome in a day. Commun ACM, 54(10):105–112. CrossRefGoogle Scholar
  2. Choudhary S, Gupta S, Narayanan P, 2010. Practical time bundle adjustment for 3D reconstruction on the GPU. In: Kutulakos KN (Ed.), Trends and Topics in Computer Vision. Springer–Verlag Berlin Heidelberg. Google Scholar
  3. Eriksson A, Bastian J, Chin T, et al., 2016. A consensusbased framework for distributed bundle adjustment. IEEE Conf on Computer Vision and Pattern Recognition, p.1754–1762. Google Scholar
  4. Frahm J, Fite–Georgel P, Gallup D, et al., 2010. Building Rome on a cloudless day. Proc 11th European Conf on Computer Vision, p.368–381. Google Scholar
  5. Hänsch R, Drude I, Hellwich O, 2016. Modern methods of bundle adjustment on the GPU. ISPRS Ann Photogr Remote Sens Spatial Inform Sci, III–(3):43–50. Google Scholar
  6. Hartley R, Zisserman A, 2000. Multiple View Geometry in Computer Vision. Cambridge University Press, Cambridge, p.1865–1872.zbMATHGoogle Scholar
  7. Heinecke A, Vaidyanathan K, Smelyanskiy M, et al., 2013. Design and implementation of the linpack benchmark for single and multi–node systems based on IntelR Xeon Phi coprocessor. Proc 27th Int Symp on Parallel and Distributed Processing, p.126–137. Google Scholar
  8. Husbands P, Yelick K, 2007. Multi–threading and onesided communication in parallel LU factorization. ACM/IEEE Conf on Supercomputing, Article 31. Google Scholar
  9. Jo G, Nah J, Lee J, et al., 2015. Accelerating LINPACK with MPI–OpenCL on clusters of multi–GPU nodes. IEEE Trans Parall Distrib Syst, 26(7):1814–1825. CrossRefGoogle Scholar
  10. Li X, Wu C, Zach C, et al., 2008. Modeling and recognition of landmark image collections using iconic scene graphs. Proc 10th European Conf on Computer Vision, p.427–440. Google Scholar
  11. Liu X, Gao W, Hu Z, 2012. Hybrid parallel bundle adjustment for 3D scene reconstruction with massive points. Comput Sci Technol, 27(6):1269–1280. CrossRefzbMATHGoogle Scholar
  12. Lourakis M, Argyros A, 2009. SBA: a software package for generic sparse bundle adjustment. ACM Trans Math Soft, 36(1), Article 2. Google Scholar
  13. Ni K, Steedly D, Dellaert F, 2007. Out–of–core bundle adjustment for large–scale 3D reconstruction. Proc 11th Int Conf on Computer Vision, p.1–8. Google Scholar
  14. Ramamurthy K, Lin C, Aravkin A, et al., 2017. Distributed bundle adjustment. IEEE Int Conf on Computer Vision Workshop, p.2146–2154. CrossRefGoogle Scholar
  15. Snavely N, Seitz S, Szeliski R, 2006. Photo tourism: exploring photo collections in 3D. ACM Trans Graph, 25(3):835–846. CrossRefGoogle Scholar
  16. Snavely N, Seitz S, Szeliski R, 2008. Skeletal graphs for efficient structure from motion. IEEE Conf on Computer Vision and Pattern Recognition, p.1–8. Google Scholar
  17. Triggs B, McLauchlan P, Hartley R, et al., 1999. Bundle adjustment—modern synthesis. Int Workshop on Vision Algorithms: Theory and Practice, p.298–372. Google Scholar
  18. Wu C, Agarwal S, Curless B, et al., 2011. Multicore bundle adjustment. IEEE Conf on Computer Vision and Pattern Recognition, p.3057–3064. Google Scholar
  19. Zheng E, Wu C, 2015. Structure from motion using structureless resection. IEEE Int Conf on Computer Vision, p.2075–2083. Google Scholar

Copyright information

© Zhejiang University and Springer-Verlag GmbH Germany, part of Springer Nature 2018

Authors and Affiliations

  1. 1.College of ComputerNational University of Defense TechnologyChangshaChina
  2. 2.Science and Technology on Parallel and Distributed LaboratoryNational University of Defense TechnologyChangshaChina
  3. 3.Department of Computer ScienceUniversity of OtagoDunedinNew Zealand
  4. 4.Department of Computer ScienceTsinghua UniversityBeijingChina

Personalised recommendations