Bundler: Structure from Motion (SfM) for Unordered Image Collections

        Software written by Noah Snavely
        Download Bundler from the bundler_sfm repository on GitHub

| What is Bundler? | Downloading Bundler | Documentation | References | Links |

What is Bundler?

Bundler is a structure-from-motion (SfM) system for unordered image collections (for instance, images from the Internet) written in C and C++. An earlier version of this SfM system was used in the Photo Tourism project. For structure-from-motion datasets, please see the BigSFM page.

Bundler takes a set of images, image features, and image matches as input, and produces a 3D reconstruction of camera and (sparse) scene geometry as output. The system reconstructs the scene incrementally, a few images at a time, using a modified version of the Sparse Bundle Adjustment package of Lourakis and Argyros as the underlying optimization engine. Bundler has been successfully run on many Internet photo collections, as well as more structured collections.

The Bundler source distribution also contains potentially userful implementations of several computer vision algorithms, including:

  • F-matrix estimation
  • Calibrated 5-point relative pose
  • Triangulation of multiple rays

Bundler produces sparse point clouds. For denser points, Dr. Yasutaka Furukawa has written a beautiful software package called PMVS2 for running dense multi-view stereo. A typical pipeline is to run Bundler to get camera parameters, use the provided Bundle2PMVS program to convert the results into PMVS2 input, then run PMVS2. You might also be interested in Dr. Furukawa's CMVS view clustering software, which is a helpful preprocess to running PMVS2.

Downloading Bundler

The Bundler source code is now hosted at the bundler_sfm repository on GitHub.

Before we began hosting Bundler on GitHub, the latest released version of Bundler was 0.4. Bundler has beendistributed in both Linux/Windows binary and source formats. Both distributions contains a number of scripts and utility programs that simplify the reconstruction pipeline.


The Bundler User's Manual is available online here.
If you have additional questions, you might find the answers among the Frequently Asked Questions (FAQ).


If you use this software in your own projects, please cite the first reference below.

Noah Snavely, Steven M. Seitz, Richard Szeliski. Photo Tourism: Exploring image collections in 3D. ACM Transactions on Graphics (Proceedings of SIGGRAPH 2006), 2006.

Noah Snavely, Steven M. Seitz, Richard Szeliski. Modeling the World from Internet Photo Collections. International Journal of Computer Vision, 2007.


Pierre Moulon has created a cmake version of Bundler (allowing for compilation on Linux, Mac, and Windows) available on github here. Pierre also has a github repository for CMVS / PMVS.

Marc Downie has created a nice set of tools for running Bundler on Mac OS X called easyBundler

We are extending Bundler to city-scale photo collections. See our Rome in a Day project.

For more information on use of community photo collections in graphics and vision, visit the BigSFM project page.

Back to Noah Snavely's home page.