Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jrudolph/vesuvius-gui
Rust GUI for browsing vesuvius project data
https://github.com/jrudolph/vesuvius-gui
Last synced: 25 days ago
JSON representation
Rust GUI for browsing vesuvius project data
- Host: GitHub
- URL: https://github.com/jrudolph/vesuvius-gui
- Owner: jrudolph
- License: mpl-2.0
- Created: 2023-11-06T17:03:41.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-09-18T08:17:37.000Z (about 2 months ago)
- Last Synced: 2024-09-18T10:56:29.757Z (about 2 months ago)
- Language: Rust
- Size: 433 KB
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Vesuvius Volume Browser
A simple browser built with Rust and [egui](https://github.com/emilk/egui) to browse volume data from the [Vesuvius Challenge](https://scrollprize.org/data) data set.
![demo](media/v26-zoomed-out-segment.jpg)
It does not require to download any data upfront.
All the published volumes published so far are supported:
- Scroll 1
- Scroll 2
- Scroll 0332
- Scroll 1667
- Fragments 1 - 4 (from the Kaggle competition)
- Fragment PHerc0051Cr04Fr08
- Fragment PHerc1667Cr01Fr03Known surface segments are shown in the catalog and can be rendered on a 4th pane.
## Features
- Access to the full volume data set, data is converted to a more efficient format by a background server
- A catalog of known surface segments will allow on-the-fly downloading of surfaces meshes and live rendering
- Rendering options for volumes:
- thresholding
- bit depth reduction
- showing different bit planes
- Rendering options for surfaces:
- trilinear interpolation
- show surface outline on the volume panes
- show xyz outline on the surface pane
- synchronized panning and zooming between the panes## Installation
Grab a binary from [the latest release](https://github.com/jrudolph/vesuvius-gui/releases).
## Usage
Install required X11 libraries:
- Ubuntu: `apt install -y libgl1 libxrandr2 libxi6 libxcursor1`
- MacOSX: Should work out of the box
- Windows: Should work out of the box### Simple browsing:
```
./vesuvius-gui
```When run without any arguments, the app will download the volume data from the tiles server and cache them in a local directory (below the OS-specific cache directory).
### Specifying a data directory:
Run the app with `./vesuvius-gui `.
If you pass a path to a ppm file, the app will use that to calculate a surface volume on the fly from the data in the ppm file. This is currently limited to Scroll 1 automatically.
Alternatively, you can provide a path to a directory containing volume grid files of the format `cell_yxz_`. In that case, the app will
only show local data without attempting to download from the blocks server.To run directly from sources run `cargo run --release -- `.
Proper argument parsing is planned for the next release.
## Data License
Accessing the data on https://vesuvius.virtual-void.net/ or through this app requires you to fill out the official
form and agree to the terms of the data license. See https://scrollprize.org/data.## License
Code released under the MPL 2.0. See [LICENSE](LICENSE) for the full license text.