Giter Club home page Giter Club logo

raia's Introduction

RAIA (repeat aerial imagery analysis)

Matlab code for visualization and phenology analysis of repeat aerial photography

This respository is designed for analysis of aerial imagery of deciduous trees. It can be readily used with my imagery of Harvard Forest, available here, although some changes to file naming conventions and local directory paths will be needed. There is functionality to link with my preprocessed version of the Harvard Forest species map, which is available here in the 'metadata' directory. This code is oriented toward analysis of individual trees, although similar principles can be used to analyze images on a regularly spaced grid (i.e. 10 m). My published work based on this code is referenced below. Please cite the data sets or references accordingly if you use it.

This code was written with Matlab R2017a and makes use of the mapping toolbox (and possibly other toolboxes). Example output files for the mask drawing and image processing have been created for stem tag 311519.

Explore the images, find trees to analyze

  • display_species_map: interactive plot of aerial image and tree stem locations, allowing identification of species and stem tag number
  • species_color_guide: plot of legend with species color codes

Draw masks on trees by stem tag numbers

May need to change image file name conventions, and path to images in these.

  • create_masks: for spring time images
  • create_masks_fall: fall

Auxiliary functions

  • display_all_images
  • display_images_fall

For redoing masks:

  • redo_masks_spring
  • redo_masks_fall

Use the masks to process the images and create time series data

Time series data of color indices; see below references for context.

  • create_tree_mask_time_series
  • plot_tree_mask_time_series

Analyze time series data

Estimate curve fit parameters and phenology dates for individual trees.

  • master_function

The rest of the functions are auxiliary for curve fit and date calculation. This workflow has been tested with the following configurations, which can be specified in master_function, to produce curve fits (i.e. running VI_curve) and get phenology dates (getPhenoDates):

To estimate spring and fall dates using GCC -

  • index_type = 'gcc';
  • model_name = 'greenDownSigmoid';
  • date_method = 'CCR';

or using RCC -

  • index_type = 'rcc';
  • model_name = 'smoothInterp';
  • date_method = 'spring_fall_red';
  • percentiles = [0.1 0.5 0.9];

Note that the percentiles here refer to spring; in fall the date of maximum RCC is reported as the phenology date. These analysis functions show graphs of the curve fit and phenology dates and were designed to show 30 total trees; please adjust the subplot grid as necessary.

References:

This is the most pertinent reference for this library of code, reporting on phenology analysis of individual trees:

These references use phenology analysis of aerial imagery on a square grid:

raia's People

Contributors

klostest avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.