  In this paper, we tackle the accurate and consistent Structure from Motion
(SfM) problem, in particular camera registration, far exceeding the memory of a
single computer in parallel. Different from the previous methods which
drastically simplify the parameters of SfM and sacrifice the accuracy of the
final reconstruction, we try to preserve the connectivities among cameras by
proposing a camera clustering algorithm to divide a large SfM problem into
smaller sub-problems in terms of camera clusters with overlapping. We then
exploit a hybrid formulation that applies the relative poses from local
incremental SfM into a global motion averaging framework and produce accurate
and consistent global camera poses. Our scalable formulation in terms of camera
clusters is highly applicable to the whole SfM pipeline including track
generation, local SfM, 3D point triangulation and bundle adjustment. We are
even able to reconstruct the camera poses of a city-scale data-set containing
more than one million high-resolution images with superior accuracy and
robustness evaluated on benchmark, Internet, and sequential data-sets.
