Skip to main content

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-dolphin is preconfigured to make a JSON file pointing to the outputs inside work_directory of dolphin
  • bowser run starts the web server on localhost:
$ 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.

  1. Download the NetCDFs (hopefully on some server which has fast access to the S3 bucket).
  2. Run bowser prepare-disp-s1 to create VRT files pointing in the .nc files, one per dataset we wish to browse.
  3. Run bowser setup-disp-s1 to make a JSON file containing all the file metadata, so the browser knows where to look.
  4. bowser run

In detail:

  1. Download I use s5cmd for faster copying, but the aws CLI 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' .
  1. Extract VRTS
bowser prepare-disp-s1 -o vrts *.nc
  1. Create bowser_rasters.json metadata
bowser setup-disp-s1 vrts
  1. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bowser_insar-0.3.0.tar.gz (3.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bowser_insar-0.3.0-py3-none-any.whl (217.6 kB view details)

Uploaded Python 3

File details

Details for the file bowser_insar-0.3.0.tar.gz.

File metadata

  • Download URL: bowser_insar-0.3.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

Hashes for bowser_insar-0.3.0.tar.gz
Algorithm Hash digest
SHA256 c210216eee8693f6026859eec9b1d4778e82fe66c054a9f21642b788e83b761d
MD5 0fe0f0ee226d4b8afc137824fa11d6c8
BLAKE2b-256 61e60f8fb23e05d3dc78ce28b3dfe3e9e835ba2ca90b6e9cf8dce26021ee3fe4

See more details on using hashes here.

Provenance

The following attestation bundles were made for bowser_insar-0.3.0.tar.gz:

Publisher: cd.yml on opera-adt/bowser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bowser_insar-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: bowser_insar-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 217.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for bowser_insar-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 64c3facaa65ca428f09be64b8194d1381343932d0295dce13f3241dabceaddf1
MD5 c10ea316adca4fd90a2c20683245dc81
BLAKE2b-256 4eb58d9e3203e1061327faec9638709a87ad019776b2f05fcd9ed9eacceac694

See more details on using hashes here.

Provenance

The following attestation bundles were made for bowser_insar-0.3.0-py3-none-any.whl:

Publisher: cd.yml on opera-adt/bowser

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page