Open Source Software and Scripts
CBC-developed scripts and software for remote sensing.
maskRangeR is an R package that post-processes species distribution models (SDMs) for estimating a species’ current range. Among other functionalities, it spatiotemporally matches in-situ observations of a species’ occurrence to remote sensing products to derive accurate metrics important to species’ tolerances, and uses them to refine species distribution model predictions and estimate the species’ current range, e.g. accounting for land cover change.
Publication:
Merow, C., P. J. Galante, J. M. Kass, M. Aiello-Lammens, C. Babich Morrow, B. E. Gerstner, V. Grisales-Betancur, A. Moore, E. A. Noguera-Urbano, G. E. Pinilla- Buitrago, J. Velasquez-Tibatá, R. P. Anderson, M. E. Blair. 2022. Operationalizing expert knowledge in species' range estimates using diverse data types. Frontiers of Biogeography 14.2: e53589. https://escholarship.org/uc/item/3m7719vv.
Maxent software for modeling species niches and distributions applies a machine-learning technique called maximum entropy modeling. From a set of environmental (e.g., climatic) grids and georeferenced occurrence localities, the model expresses a probability distribution where each grid cell has a predicted suitability of conditions for the species.
Publications:
Phillips, S. J., R. P. Anderson, M. Dudík, R. E. Schapire, and M. E. Blair. 2017. Opening the black box: an open-source release of Maxent. Ecography, 40:887-893.
Phillips, S. J. R. P. Anderson, and R. E. Schapire. 2006. Maximum entropy modeling of species geographic distributions. Ecological Modelling, 190:231-259.
Phillips, S. J. and M. Dudík. 2008. Modeling of species distributions with Maxent: new extensions and a comprehensive evaluation. Ecography 31:161-175.
The Event Visualization Tool (eVis) has been developed to easily view geocoded photos associated by attributes to features in the QGIS mapping environment. eVis has been developed in an adaptable way to allow for maximum usage.
The Perpendicular Distance Calculator is a platform-independent Java application that implements a powerful suite of spherical functions for processing observations made during standard line transect surveys. Line transect sampling a commonly used distance sampling method that can be used for estimating the density and/or abundance of biological populations
This tool is no longer being actively developed or supported.
The Geographic Distance Matrix Generator is a platform-independent Java application that implements a powerful suite of spherical functions to compute all pair wise distances from a simple list of geographic coordinates.
In the fields of phylogeography and landscape genetics, biologists attempt to detect patterns in the distribution of genetic variation across different spatial scales. The most commonly known process is isolation by distance (IBD), under which genetic similarity decreases with geographic distance. Barriers to migration of organisms can hinder gene flow, thus increasing genetic distance, even if populations are not far apart.
With the increasing availability of mobile GPS technology, every scientist can obtain latitude-longitude coordinates for target organisms, which can later be used in regression analyses in conjunction with genetic distances, or matrix associations with permutations for statistical testing, as well as multiple matrix correlations when testing for more complex biogeographic and ecological scenarios (Mantel and partial Mantel tests, respectively).The Geographic Distance Matrix Generator can be used to easily generate distance matrices needed for these types of analyses.
This tool is no longer being actively developed or supported.
Random Forest R scripts and guides is a collection of scripts written in the R programming language and guides that explain how the scripts work. R scripts and guides are maintained in a GitHub repository organized by application inside the “Downloads” directory. Currently, there are three applications: pixel-by-pixel classification, segmentation classification, and percent cover (continuous field) mapping. To download an R script (.R file extension) or guide (.pdf file extension) right-click on the link so you can save it on your computer. These R scripts have been integrated into the Rstoolbox package for R which is available on the CRAN.
changeRangeR is an R package that translates information from species’ current ranges into meaningful conservation metrics in repeatable and transparent ways, including IUCN's area of occupancy (AOO) and extent of occurrence (EOO), proportion protected, threatened, or associated with different landcover types, community metrics like species richness, endemism, or phylogenetic endemism for regions of interest, and finally, given past or future model projections or geospatial data for masking, changes in these metrics over time.
Publication:
Galante, P.J., Chang, S., Paz, A., Aiello-Lammens, M., Gerstner, B.E., Johnson, B.A., Kass, J.M., Merow, C., Noguera-Urbano, E.A., Pinilla-Buitrago, G.E., and M.E. Blair. (In Press). changeRangeR: an R package for reproducible biodiversity change metrics from species distribution estimates. Conservation Science & Practice. (Online Early) DOI 10.1111/csp2.12863
Wallace is a modular, R-based platform for reproducible modeling of species niches and distributions. The application guides users through a complete analysis, from the acquisition of data to visualizing model predictions on an interactive map, thus bundling complex workflows into a single, streamlined interface.
Publication:
Kass JM, Vilela B, Aiello‐Lammens ME, Muscarella R, Merow C, Anderson RP. (2018). Wallace: A flexible platform for reproducible modeling of species niches and distributions built for community expansion. Methods in Ecology and Evolution. 9:1151–1156. https://doi.org/10.1111/2041-210X.12945
BBoxEE is a open-source tool for annotating bounding boxes and exporting data for training object detectors. BBoxEE was specifically developed for use with camera trap data but it is not limited to annotating camera trap data and can be used for any bounding box annotation task.
A feature that sets BBoxEE appart is the ability to load an existing model and automate the generation of new bounding boxes.
Several use cases have been created to illustrate potential implementations of BBoxEE.
The Image Level Label to Bounding Box (IL2BB) pipeline automates the generation of labeled bounding boxes by leveraging an organization’s previous labeling efforts and Microsoft AI for Earth’s MegaDetector. The output of this pipeline are batches of images with annotation files that can be opened, reviewed, and modified with the Bounding Box Editor and Exporter (BBoxEE) to prepare training data for object detectors.
The IL2BB pipeline is especially useful for organizations that are hesitant or not permitted to use or store data on online services.
The Neural Network Image Classifier (Nenetic) is an open source tool written in Python to label image pixels with discrete classes to create products such as land cover maps. The user interface is designed to facilitate a workflow that involves selecting training data locations, extracting training data using original image pixel data and computed features, building models, and classifying images. The current version works with 3-band images such as those acquired from typical digital cameras.
Nenetic was designed for testing different neural network designs and experimenting with model parameters. It is an excellent teaching tool to learn how different neural network designs can be used to classify remotely sensed images, especially those with ultra-high spatial resolution.
**Two Images side by side
NeneticImage.png
Caption: Original Image
NeneticImageClassified
Caption: Classified Image
Publication:
Horning, N., Fleishman, E., Ersts, P.J., Fogarty, F.A. and Wohlfeil Zillig, M. (2020), Mapping of land cover with open‐source software and ultra‐high‐resolution imagery acquired with unmanned aerial vehicles. Remote Sens Ecol Conserv. doi:10.1002/rse2.144
DotDotGoose is a free, open source tool to assist with manually counting objects in images. DotDotGoose was purpose-built since most conservation researchers and practitioners working on counting objects in images were using popular software which are not ideally suited for many conservation applications.
The DotDotGoose interface makes it easy to create and edit classes of objects to be counted and you can pan and zoom to accurately place points to label individual objects. Information about objects can be stored in custom fields and this metadata can be exported for use in spreadsheet or statistics software.
Point data collected with DotDotGoose will be very valuable validation data for any future efforts with computer-assisted counting.