All Projects → adokter → bioRad

adokter / bioRad

Licence: other
R package for analysis and visualisation of biological signals in weather radar data

Programming Languages

r
7636 projects

Projects that are alternatives of or similar to bioRad

nexradaws
This python package is designed to provide query and download capabilities to the NEXRAD archive available on Amazon Web Services (AWS). https://aws.amazon.com/public-datasets/nexrad/
Stars: ✭ 32 (+33.33%)
Mutual labels:  radar, nexrad
go-nexrad
NEXRAD Data Processing with Go
Stars: ✭ 19 (-20.83%)
Mutual labels:  radar, nexrad
pydov
Python package to retrieve data from Databank Ondergrond Vlaanderen (DOV)
Stars: ✭ 29 (+20.83%)
Mutual labels:  lifewatch, oscibio
React Native Radar
React Native module for Radar, the leading geofencing and location tracking platform
Stars: ✭ 104 (+333.33%)
Mutual labels:  radar
S1tbx
The Sentinel-1 Toolbox
Stars: ✭ 138 (+475%)
Mutual labels:  radar
Openradar Mirror
A mirror of radars pulled from http://openradar.me/.
Stars: ✭ 238 (+891.67%)
Mutual labels:  radar
Luatelemetry
FrSky SmartPort(S.Port), D-series, F.Port and TBS Crossfire telemetry on all Taranis and Horus transmitters
Stars: ✭ 206 (+758.33%)
Mutual labels:  radar
Pyrat
General purpose Synthetic Aperture Radar (SAR) postprocessing software package
Stars: ✭ 99 (+312.5%)
Mutual labels:  radar
Android Radarview
🎯雷达图,类似支付宝芝麻分解读,王者荣耀对战资料图。
Stars: ✭ 182 (+658.33%)
Mutual labels:  radar
Marine Api
Java Marine API - NMEA 0183 library for Java
Stars: ✭ 174 (+625%)
Mutual labels:  radar
radar-sdk-android
Android SDK for Radar, the leading geofencing and location tracking platform
Stars: ✭ 57 (+137.5%)
Mutual labels:  radar
Fusion Ukf
An unscented Kalman Filter implementation for fusing lidar and radar sensor measurements.
Stars: ✭ 162 (+575%)
Mutual labels:  radar
Wradlib
weather radar data processing - python package
Stars: ✭ 143 (+495.83%)
Mutual labels:  radar
OpenMaterial
3D model exchange format with physical material properties for virtual development, test and validation of automated driving.
Stars: ✭ 23 (-4.17%)
Mutual labels:  radar
Ti mmwave rospkg
TI mmWave radar ROS driver (with sensor fusion and hybrid)
Stars: ✭ 108 (+350%)
Mutual labels:  radar
PUBG-Radar-setup
Easy setup script for PUBG Radar
Stars: ✭ 51 (+112.5%)
Mutual labels:  radar
Ws4kp
WeatherStar 4000+
Stars: ✭ 100 (+316.67%)
Mutual labels:  radar
Mstar deeplearning project
Radar target classification, detection and recognition using deeplearning methods on MSTAR dataset
Stars: ✭ 163 (+579.17%)
Mutual labels:  radar
rain-geojson-sg
Straight-forward API server to convert rain area radar images (Singapore) to GeoJSON
Stars: ✭ 15 (-37.5%)
Mutual labels:  radar
cordova-plugin-radar
Cordova plugin for Radar, the leading geofencing and location tracking platform
Stars: ✭ 14 (-41.67%)
Mutual labels:  radar

bioRad

CRAN status R-CMD-check codecov DOI

bioRad provides standardized methods for extracting and reporting biological signals from weather radars. It includes functionality to inspect low-level radar data, process these data into meaningful biological information on animal speeds and directions at different altitudes in the atmosphere, visualize these biological extractions, and calculate further summary statistics.

To get started, see:

More vignettes:

  • Range correction: estimate spatial images of vertically integrated density corrected for range effects.

Documentation for the latest development version can be found here.

Installation

Install system libraries

For OS X and Linux the GNU Scientific Library (GSL), PROJ and HDF5 libraries need to be installed as system libraries prior to installation, which are required by dependency package vol2birdR:

System Command
OS X (using Homebrew) brew install hdf5 proj gsl
Debian-based systems (including Ubuntu) sudo apt-get install libhdf5-dev libproj-dev gsl-bin libgsl-dev
Systems supporting yum and RPMs sudo yum install hdf5-devel proj-devel gsl gsl-devel
Additional required system libraries on Linux (Ubuntu)

The following system libraries are required before installing bioRad on Linux systems. In terminal, install these with:

sudo apt install libcurl4-openssl-dev
sudo apt install libssl-dev
sudo apt install libgdal-dev

Install bioRad

You can install the released version of bioRad from CRAN with:

install.packages("bioRad")

Alternatively, you can install the latest development version from GitHub with:

# install.packages("devtools")
devtools::install_github("adokter/bioRad")

Then load the package with:

library(bioRad)
#> Welcome to bioRad version 0.7.0.9532
#> using vol2birdR version 0.1.1.9919 (MistNet installed)

(optional) Enable MistNet

To enable MistNet, the following vol2birdR commands should be executed:

vol2birdR::install_mistnet()
vol2birdR::install_mistnet_model()

Read the vol2birdR documentation for more details.

Usage

Radar data example

bioRad can read weather radar data (= polar volumes) in the ODIM format and formats supported by the RSL library, such as NEXRAD data. NEXRAD data (US) are available as open data and on AWS.

Here we read an example polar volume data file with read_pvolfile(), extract the scan/sweep at elevation angle 3 with get_scan(), project the data to a plan position indicator with project_as_ppi() and plot the radial velocity of detected targets with plot():

library(tidyverse) # To pipe %>% the steps below
system.file("extdata", "volume.h5", package = "bioRad") %>%
  read_pvolfile() %>%
  get_scan(3) %>%
  project_as_ppi() %>%
  plot(param = "VRADH") # VRADH = radial velocity in m/s

Radial velocities towards the radar are negative, while radial velocities away from the radar are positive, so in this plot there is movement from the top right to the bottom left.

Vertical profile data example

Weather radar data can be processed into vertical profiles of biological targets using calculate_vp(). This type of data is available as open data for over 100 European weather radars.

Once vertical profile data are loaded into bioRad, these can be bound into time series using bind_into_vpts(). Here we read an example time series, project it on a regular time grid with regularize_vpts() and plot it with plot():

example_vpts %>%
  regularize_vpts() %>%
  plot()
#> projecting on 300 seconds interval grid...

The gray bars in the plot indicate gaps in the data.

The altitudes in the profile can be integrated with integrate_profile() resulting in a dataframe with rows for datetimes and columns for quantities. Here we plot the quantity migration traffic rate (column mtr) with plot():

my_vpi <- integrate_profile(example_vpts)

plot(my_vpi, quantity = "mtr") # mtr = migration traffic rate

To know the total number of birds passing over the radar during the full time series, we use the last value of the cumulative migration traffic (column mt):

my_vpi %>%
  pull(mt) %>% # Extract column mt as a vector
  last()
#> [1] 129491.5

For more exercises, see this tutorial.

Meta

  • We welcome contributions including bug reports.
  • License: MIT
  • Get citation information for bioRad in R doing citation("bioRad").
  • Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].