marinebon / MarineSDMs

Marine Species Distribution Modeling (SDM) Quarto book
https://marinebon.github.io/MarineSDMs/
MIT License
2 stars 0 forks source link

Expand SDM app to Essential Ocean Variables (EOVs) + OBIS occurrences (filter SDMs to those within given distance of OBIS occurrcences) #1

Open bbest opened 1 month ago

bbest commented 1 month ago

Hi @MathewBiddle and @laurabrenskelle,

I'd like to riff off your excellent start with this issue on identifying taxonomic breaks for OBIS observations to contribute to Essential Ocean Variables (EOVs):

This exercise of identifying EOV taxonomic breaks for OBIS occurrences is similar to what I did for AquaMaps species distribution maps in:

You can see the Github repository at github.com/marinebon/gmbi ("gumby": global marine biodiversity indicators) and breakpoints (based on Tittensor et al, 2010) here:

At the time, this was based on a locally available PostgreSQL database not publicly available. I have since migrated the publicly available aquamapsdata R package storing AquaMaps in SQLite to a much faster DuckDB at github.com/marinebon/aquamapsduckdb.

What I would essentially like to propose is that we produce an app akin to:

Such that you can query based on EOVs to view the aggregated result by AoI (Area of Interest) with additional functionality:

  1. Map OBIS occurrences\ Aside: Is there an OBIS Maps API similar to GBIF Maps API in which we can easily add a interactive map layer to visualize points or hexagon summaries? imageimage

  2. Limit SDMs to those having OBIS occurrences relative to AoI\ Some are justifiably skeptical of species distribution maps (SDMs), so they may be interested in being able to limit SDMs to species also found to occur, through OBIS occurrences, relative to the Area of Interest (AoI), such as based within or some distance from the AOI.

    1. What is the reference point?\ What exactly should we calculate here, and what's the top score? Could it be adjusted regionally to number of species present on average, or ...?

    2. Should we modulate based on species traits (extinction risk, ...)? See my example of combining seabird species vulnerability to offshore wind (Willmott et al. 2013) with distribution maps (Winship et al. 2018) at shiny.marinesensitivity.org/vmap

    3. Can we show OBIS occurrences by data type? It would be especially useful to breakdown OBIS occurrences by data type, a la:

      • opportunistic, visual
      • scientific survey, visual
      • scientific survey, audio
      • passive audio, fixed array
      • eDNA
      • telemetry tag
      • others? For instance, here's an interesting Shiny app (by UCSB undergrads et al) showing different types of observations for marine mammals from CalCOFI surveys: eDNA detection (and effort), acoustic detection (and effort), visual sightings (and effort): sael-mna.shinyapps.io/calcofi_shinyapp image

      For each of these data types, we could conceivably have different levels of detectability to build an "integrated SDM" (Isaac et al. 2020), for instance using R package ibis.iSDM (Jung 2023) or spOccupancy (Doser et al 2022).

  3. Can we vet existing SDMs based on OBIS, and/or create new ones with Wallace? Can we run a quick evaluation script per SDM based on latest OBIS occurrences? Can we run Wallace Shiny app (Kass et al. 2018, 2023, 2024)on the latest to generate a new SDM (w/ marine predictors) and compare with existing?

  4. How do we communicate trends over time? SDMs are snapshots in time. We could use the environment at different time steps to predict, but ideally we use abundance measure from the likes of DiSMAP or FISHGLOB.

MathewBiddle commented 1 month ago

in response to 5, we've been thinking about how to group the MBON datasets in OBIS around collection method

We haven't figured out a consistent way of extracting that information from the OBIS API.

@laurabrenskelle started this dwc discussion: