Crowdsourcing pipeline and website for OpenSurfaces [SIG '13] and Intrinsic Images in the Wild [SIG '14]
C++ Python JavaScript CSS HTML CoffeeScript Other


OpenSurfaces is a large database of annotated surfaces created from real-world consumer photographs. Our annotation framework draws on crowdsourcing to segment surfaces from photos, and then annotate them with rich surface properties, including material, texture and contextual information.

Documentation is available at:


If you use our code, please cite our paper:

Sean Bell, Paul Upchurch, Noah Snavely, Kavita Bala
OpenSurfaces: A Richly Annotated Catalog of Surface Appearance
ACM Transactions on Graphics (SIGGRAPH 2013)

    author = "Sean Bell and Paul Upchurch and Noah Snavely and Kavita Bala",
    title = "Open{S}urfaces: A Richly Annotated Catalog of Surface Appearance",
    journal = "ACM Trans. on Graphics (SIGGRAPH)",
    volume = "32",
    number = "4",
    year = "2013",

and if you use the Intrinsic Images code, please also cite:

Sean Bell, Kavita Bala, Noah Snavely
Intrinsic Images in the Wild
ACM Transactions on Graphics (SIGGRAPH 2014)

    author = "Sean Bell and Kavita Bala and Noah Snavely",
    title = "Intrinsic Images in the Wild",
    journal = "ACM Trans. on Graphics (SIGGRAPH)",
    volume = "33",
    number = "4",
    year = "2014",

It's nice to see how many people are using our code; please "star" this project on GitHub and report any bugs using the issue tracker.


Ubuntu: If you are on Ubuntu 12.04 or later, you can run to install all components (will use ~15G disk space).

Other operating systems: I suggest installing VirtualBox and running Ubuntu 12.04 as a virtual machine. There's a lot of components and it would be difficult to port to other operating systems.

For other Linux distributions, you can probably get it to run by rewriting all of the install scripts in the scripts/install directory.