Web UI for browsing InSAR time series
Project description
Bowser
Install
mamba env create
conda activate bowser-env
pip install .
Note: if viewing files on S3, please install s5cmd:
mamba install s5cmd
Quickstart for dolphin
bowser setup-dolphinis preconfigured to make a JSON file pointing to the outputs insidework_directoryof dolphinbowser runstarts the web server onlocalhost:
$ bowser setup-dolphin work/
Reading raster metadata: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 2/2 [00:00<00:00, 236.13it/s]
Reading raster metadata: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 2/2 [00:00<00:00, 95.74it/s]
Reading raster metadata: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 2/2 [00:00<00:00, 266.77it/s]
Reading raster metadata: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 100.49it/s]
Reading raster metadata: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 94.88it/s]
$ bowser run
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO: Started parent process [99855]
...
Click on the http://127.0.0.1:8000 link to open the map.
Note for running over ssh: you will need to run an ssh command creating a tunnel from your local computer to wherever the bowser server is.
For example, if you machine is myserver, you would run in a local terminal
ssh -N -L 8000:localhost:8000 myserver
after starting the web server.
Quickstart for DISP-S1 NetCDFs
Until GDAL puts work into the NetCDF driver, reading remote HDF5/NetCDF files has very poor support. Additionally, there is no standard overview format as there is with GeoTIFFs, so titiler is very unhappy.
We can get around this to some degree by creating VRTs and making external overviews pointing at these VRTs.
- Download the NetCDFs (hopefully on some server which has fast access to the S3 bucket).
- Run
bowser prepare-disp-s1to create VRT files pointing in the.ncfiles, one per dataset we wish to browse. - Run
bowser setup-disp-s1to make a JSON file containing all the file metadata, so the browser knows where to look. bowser run
In detail:
- Download
I use
s5cmdfor faster copying, but theawsCLI tool works too:
mkdir my_disp_files; cd my_disp-files
s5cmd --numworkers 4 cp 's3://opera-bucket/OPERA_L3_DISP-S1_IW_F11115*/OPERA_L3_DISP-S1_IW_F11115*.nc' .
- Extract VRTS
bowser prepare-disp-s1 -o vrts *.nc
- Create
bowser_rasters.jsonmetadata
bowser setup-disp-s1 vrts
- Run
bowser run
If this is on a server instead of your laptop, you'll need (on your laptop)
ssh -N -L 8000:localhost:8000 myserver
for whatever port pops up after bowser run
CLI Usage
$ bowser --help
Usage: bowser [OPTIONS] COMMAND [ARGS]...
CLI for bowser.
Options:
--help Show this message and exit.
Commands:
addo Add compressed GDAL overviews to files.
run Run the web server.
set-data Specify what raster data to use.
setup-dolphin Set up output data configuration for a dolphin workflow.
To manually specify a raster/set of rasters, use the interactive bowser set-data
Developer Setup
npm is used to manage javascript dependencies.
npm install will install all dependencies.
After making HTML or CSS changes, run npm run build to build the project.
Currently the dist/ HTML and CSS files are checked in to git for easier deployment for non-javascript users.
License
Copyright 2024, by the California Institute of Technology. ALL RIGHTS RESERVED. United States Government Sponsorship acknowledged. Any commercial use must be negotiated with the Office of Technology Transfer at the California Institute of Technology.
This software may be subject to U.S. export control laws. By accepting this software, the user agrees to comply with all applicable U.S. export laws and regulations. User has the responsibility to obtain export licenses, or other export authority as may be required before exporting such information to foreign countries or providing access to foreign persons.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bowser_insar-0.2.0.tar.gz.
File metadata
- Download URL: bowser_insar-0.2.0.tar.gz
- Upload date:
- Size: 3.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7cdade8eeb74df7c4e4291766fe15ecb0ea4593e88f022302cea768255d3a873
|
|
| MD5 |
912278eb6472943c70e27e6597a1da9c
|
|
| BLAKE2b-256 |
b1f3e3d2ca5f380aa87f1895343484a604aa2b1bd2cb434f4bbd8ddd28a1e82d
|
Provenance
The following attestation bundles were made for bowser_insar-0.2.0.tar.gz:
Publisher:
cd.yml on opera-adt/bowser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bowser_insar-0.2.0.tar.gz -
Subject digest:
7cdade8eeb74df7c4e4291766fe15ecb0ea4593e88f022302cea768255d3a873 - Sigstore transparency entry: 331154566
- Sigstore integration time:
-
Permalink:
opera-adt/bowser@1d296d93b28a17632fb60655d063ffc5a77ff747 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/opera-adt
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cd.yml@1d296d93b28a17632fb60655d063ffc5a77ff747 -
Trigger Event:
release
-
Statement type:
File details
Details for the file bowser_insar-0.2.0-py3-none-any.whl.
File metadata
- Download URL: bowser_insar-0.2.0-py3-none-any.whl
- Upload date:
- Size: 214.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50bb3765d0663f7024476470fa08b17d628eb3228d84030b5856e97b460682e9
|
|
| MD5 |
4224c56b2806fcc92dfe473188f8a782
|
|
| BLAKE2b-256 |
0632b175102dc850cddfc3a15fa9b5c1f0a43f512972a062baa23775c797824b
|
Provenance
The following attestation bundles were made for bowser_insar-0.2.0-py3-none-any.whl:
Publisher:
cd.yml on opera-adt/bowser
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bowser_insar-0.2.0-py3-none-any.whl -
Subject digest:
50bb3765d0663f7024476470fa08b17d628eb3228d84030b5856e97b460682e9 - Sigstore transparency entry: 331154589
- Sigstore integration time:
-
Permalink:
opera-adt/bowser@1d296d93b28a17632fb60655d063ffc5a77ff747 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/opera-adt
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cd.yml@1d296d93b28a17632fb60655d063ffc5a77ff747 -
Trigger Event:
release
-
Statement type: