City2BA
City2BA: Tools for creating synthetic bundle adjustment problems - Published in JOSS (2023)
Science Score: 93.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 1 DOI reference(s) in JOSS metadata -
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Repository
Tools for generating synthetic bundle adjustment datasets
Basic Info
- Host: GitHub
- Owner: tkonolige
- License: bsd-2-clause
- Language: Rust
- Default Branch: master
- Size: 138 KB
Statistics
- Stars: 19
- Watchers: 4
- Forks: 0
- Open Issues: 0
- Releases: 1
Topics
Metadata Files
Readme.md
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 SnavelyCameras, the coordinate system is -z forward, y up.
```bash
Generate a problem from a 3D model
city2ba generate test_scene.obj problem.bal --cameras 100 --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:
bash
EMBREE_DIR=/path/to/embree/lib cargo install city2ba
Make sure to point EMBREE_DIR to the lib directory inside of the directory
where you installed embree.
To build the latest version run:
bash
git clone https://github.com/tkonolige/city2ba.git
cd city2ba
EMBREE_DIR=/path/to/embree/lib cargo install --path .
Make sure to point EMBREE_DIR to the lib directory inside of the directory
where you installed embree.
The city2ba binary is installed into $HOME/.cargo/bin. In order to run the
binary you will need to add this directory to your PATH (you can do this with
export PATH="$HOME/.cargo/bin:$PATH", you may want to add this to your
.bashrc or equivalent).
A simple scene is provided in test_scene.obj for you to experiment with. You can download it from https://github.com/tkonolige/city2ba/raw/master/test_scene.obj.
Development
Build City2BA locally with:
bash
git clone https://github.com/tkonolige/city2ba.git
cd city2ba
cargo build --release # release mode is recommended for performance
Run tests with:
bash
cargo test
Executables can be run with:
bash
cargo --release ARGS GO HERE
Contributing and Support
Please use the GitHub issue tracker to report issues, ask questions, and submit patches.
Owner
- Name: Tristan Konolige
- Login: tkonolige
- Kind: user
- Company: OctoML
- Repositories: 17
- Profile: https://github.com/tkonolige
JOSS Publication
City2BA: Tools for creating synthetic bundle adjustment problems
Tags
rust bundle adjustment structure from motionCodeMeta (codemeta.json)
{
"@context": "https://raw.githubusercontent.com/codemeta/codemeta/master/codemeta.jsonld",
"@type": "Code",
"author": [
{
"@id": "http://orcid.org/0000-0002-5052-6479",
"@type": "Person",
"email": "tristan.konolige@colorado.edu",
"name": "Tristan Konolige",
"affiliation": "University of Colorado Boulder"
}
],
"identifier": "",
"codeRepository": "https://github.com/tkonolige/city2ba",
"datePublished": "2020-02-28",
"dateModified": "2020-02-28",
"dateCreated": "2020-02-28",
"description": "Tools for generating synthetic bundle adjustment datasets",
"keywords": "bundle adjustment, structure from motion, 3D reconstruction",
"license": "BSD-2-Clause",
"title": "city2ba",
"version": "v1.1.0"
}
GitHub Events
Total
- Watch event: 1
Last Year
- Watch event: 1
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Tristan Konolige | t****e@g****m | 82 |
| Arfon Smith | a****n | 1 |
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 4
- Total pull requests: 1
- Average time to close issues: 3 days
- Average time to close pull requests: about 7 hours
- Total issue authors: 3
- Total pull request authors: 1
- Average comments per issue: 2.0
- Average comments per pull request: 1.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- geoeo (2)
- NikolausDemmel (1)
- forallsunday (1)
Pull Request Authors
- arfon (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- cargo 3,060 total
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 2
- Total maintainers: 1
crates.io: city2ba
A tool for generating synthetic bundle adjustment problems
- Homepage: https://github.com/tkonolige/city2ba
- Documentation: https://docs.rs/city2ba/
- License: BSD-2-Clause
-
Latest release: 1.1.0
published almost 6 years ago
Rankings
Maintainers (1)
Dependencies
- 136 dependencies
- assert_cmd 0.12 development
- predicates 1 development
- tempfile 3 development
- byteorder 1
- cgmath 0.17
- disjoint-sets 0.4
- embree-rs 0.3
- geo 0.4
- indicatif 0.14
- itertools 0.8
- line_intersection 0.4
- nalgebra 0.17
- nom 5
- ply-rs 0.1
- poisson 0.10
- rand 0.6
- rayon 1
- rstar 0.7
- structopt 0.3
- tobj 0.1.12
- actions-rs/cargo v1 composite
- actions-rs/toolchain v1 composite
- actions/checkout v2 composite
- ubuntu latest build
