2 stable releases
1.1.0 | Feb 28, 2020 |
---|---|
1.0.0 | Feb 25, 2020 |
#83 in Data formats
95KB
2K
SLoC
City2BA
A collection of tools for generating synthetic bundle adjustment datasets.
Datasets can either be generated programatically via the library or using the included executables. When using SnavelyCamera
s, the coordinate system is -z forward, y up.
# Generate a problem from a 3D model
city2ba generate model.obj problem.bal --num-cameras 100 --num-points 200
# Add noise to the problem
city2ba noise problem.bal problem_noised.bal --drift-strength 0.001 --rotation-std 0.0001
# Generate a problem using a city block grid
city2ba synthetic problem.bal --blocks 4
# Convert a problem to a format for visualization
city2ba ply problem.bal problem.ply
Installation
First install embree (available at https://github.com/embree/embree). Then install cargo to build the code and dependencies (https://rustup.rs is the easiest way to get cargo).
To install the latest stable version run:
cargo install city2ba
To build the latest version run:
git clone https://github.com/tkonolige/city2ba.git
cd city2ba
cargo install --path .
Development
Build City2BA locally with:
git clone https://github.com/tkonolige/city2ba.git
cd city2ba
cargo build --release # release mode is recommended for performance
Run tests with:
cargo test
Executables can be run with:
cargo --release ARGS GO HERE
Dependencies
~13–23MB
~338K SLoC