Geographic Prior Generation

This repo is the folder for Geographic Prior Code.

The geographic prior was initially described in a our CVPR 2015 paper. This tool could help render out semantic labels and depth map with a given obj file generated from OpenStreetMap.


If you find it useful in your research, please consider citing:

  title={Holistic 3d scene understanding from a single geo-tagged image},
  author={Wang, Shenlong and Fidler, Sanja and Urtasun, Raquel},
  booktitle = {Computer Vision and Pattern Recognition},
  year = {2015}

Code directory

Check out the readme for each subfolder

  • renderer
  • tinyobjloader


Tools we might need later for dataset visualization



  • Install dependencies through apt-get
  • Modify TINYOBJLOADER_HOME and NVIDIA_LIB in Makefile
  • Run make all


  • Install dependencies through brew
  • Modify TINYOBJLOADER_HOME and NVIDIA_LIB in Makefile.mac
  • Copy Makefile.mac to replace the original makefile
  • Run make all



  • Please run ./OSMrender [SeqID] for test. For example: ./OSMrender 1
  • Before running please make sure you can create the following output folder structure:

    • GEOPRIORROOT/output
    • ----/depth
    • --------/0000
    • --------/0001
    • ....
    • ----/label
    • ----/normal

Input/Output Structure:

  • GEOPRIORROOT/renderer/data The input data. You can download examples from here: data
  • GEOPRIORROOT/renderer/output The output data.
  • Semantic label is encoded with standard palette that we used for KITTI semantic images.
  • Depth is encoded as (R65535+G255+B)/65535.