Skip to content

uw-echospace/engine_echo_data_viz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

engine_echo_data_viz

Xinyuan Lin

I contributed the interactive map-based echogram visualization system in the mapapp/ folder. This includes both frontend and backend components to support real-time rendering of ocean acoustic data.

Key contributions:

  • Developed a basemap viewer with selectable layers (standard, terrain, ocean)
  • Enabled users to click on map trajectory points, select time ranges, and generate echograms dynamically
  • Implemented trajectory highlighting based on user-selected time ranges
  • Built the backend Flask API (app.py) and frontend logic (app.js) for dynamic echogram generation with custom Sv range and channel selection
  • Set up benchmarking and multi-resolution resampling via downsample.py to support:
    • Low-resolution track data for lightweight map rendering
    • High-resolution echogram slices rendered on demand

The high-resolution and low-resolution datasets were processed using downsample.py, downsample_highdensity.py and integrated into the mapapp/ folder for use by the map interface and echogram renderer.

How to Run the Map App Locally

To run the echogram map application on your local machine:

  1. Download the high-resolution dataset merged_60s.nc (approx. 314MB) from the following link:
    Download from Google Drive

  2. Place the file in the following directory: mapapp/merged_60s.nc

  3. In your terminal, navigate to the mapapp/ folder and start the Flask server:

cd mapapp
python run.py

Sasha Lai

Developed an interactive prototype for echogram-based region selection and export using Jupyter notebooks, located in the region-browser/ directory. This tool supports both manual polygon annotation and the matching of pre-existing region labels to NOAA acoustic datasets.

Key contributions:

  • Real-time polygon drawing and editing on echograms using PolyDraw and PolyEdit tools with HoloViews/Panel integration

  • Interactive loading of region label files and matching with corresponding MVBS datasets on S3

  • Matching algorithm to link labeled regions with their source .zarr files based on ping_time range overlap

  • Export functionality for newly drawn region polygons with timestamped CSV output

  • Real-time histogram visualizations and statistical summaries of Sv (volume backscattering strength) values within user-selected regions

Siyu Meng

I mainly contributed to the echshader package by fixing existing bugs, improving code robustness, and adding new features.

Key contributions:

  • Resolve pandas version conflict: I update DataFrame processing to align with pandas API changes. Therefore, echoshader can support pandas versions greater than 2.0.

  • Check the input dataset: Add input validation to ensure that users provide the correct type of dataset.

  • Generate 3D curtain by plotly: Upgrade the curtain plot method in the echoshader package. This was previously drawn using pyvista, which was relatively crude and could only be used for simple observation. I upgraded it using plotly, and the image is more intuitive and you can see the specific coordinate information. In addition, the rendering time was reduced by around 50%.

Ethan Takahashi

I contributed to the frontend code and the option to display multiple sources of data simultaneously in the `multi-track folder. ** Key Contributions**

  • Utilized maplibre-gl to display geospatial context for ship data.
  • Modified display to allow multiple data sources to be displayed simultaneously.
  • Add toggleable and individually controllable buttons for each specific data source.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •