Skip to content

erikwijmans/WashU-Research

Repository files navigation

Exploiting 2D Floorplan for Building-scale Panorama RGBD Alignment

This is the git repo with the code for our CVPR17 Paper. Visit the project site for more information and the data.

Usage

  1. Get the dependencies:

    As of right now, I am using some c++17 features, which can be compiled by clang++-4.0 or g++-7.0 (which should be available soon)

  2. Download the latest release from the releases tab: https://github.com/erikwijmans/WashU-Research/releases

  3. Building

    git submodule update --init --recursive
    mkdir build
    cd build
    cmake ..
    make
    
  4. Running pipLine.sh shows a suggest way to run the 4 programs in order to replicate our results. It will also create the folder structure expected:

    ├── binaryFiles
    ├── cloudNormals
    ├── densityMaps
    │   ├── R0
    │   ├── R1
    │   ├── R2
    │   ├── R3
    │   ├── rotations
    │   └── zeros
    ├── doors
    │   ├── floorplan
    │   └── pointcloud
    ├── panoramas
    │   ├── data
    │   └── images
    ├── placementOptions
    │   ├── V1
    │   └── V2
    ├── PTXFiles
    └── voxelGrids
        ├── metaData
        ├── R0
        ├── R1
        ├── R2
        └── R3
    

    Before running pipeLine.sh, this is what the programs expect to be present:

    ├── PTXFiles
    │   ├── PTX_1
    │   ├── ....
    ├── scale.txt
    ├── doorSymbol.png
    └── floorPlan.png
    

    Where scale.txt simply contains the number of pixels on the floor per unit distance of the scans. The doorSymbol.png is simply a doorSymbol from the floorplan. floorPlan.png is the ground truth floorplan. PTXFiles is a folder containing with all the scans in the PTX format. pipeLine.sh should then be run as such:

    ./pipeLine.sh /path/to/PTXFiles/.. /path/to/build