Git Product home page Git Product logo

reors's Introduction

REORS

A collection of scripts to work with raster remotely sensed data. Currently in early stages of development, the scripts in the "master" branch should function, any work in progress is generally isolated in its own branch/fork.

Further notes will be made in the wiki.

##Required libraries

REORS requires the "raster" package for all functions.

##Instalation To install the package, copy the following text into the R console:

install.packages(c("devtools", "raster"))
library("devtools")
install_github("JosephMcGrath/REORS")
library("REORS")

The devtools package may suggest that RTools needs to be installed for packages to be built - this does not seem to impede workings here.

To update the package:

library("devtools")
install_github("JosephMcGrath/REORS")
library("REORS")

##General notes All functions in the R folder should at least run from start to finish, any missing functionality should be clearly marked.

The style code has been written in is fairly comment-heavy, somewhat unwieldy but means each function can be self-contained.

Where possible the functions here work in a "memory-friendly" manner - i.e. they only load in as much of the data as needed at a time.

In general, the aim is for functions to be generalised, though some are for specific sensors - e.g. to process Landsat data.

reors's People

Contributors

josephmcgrath avatar

Stargazers

Xiang Zheng avatar Keith Moore avatar  avatar

Watchers

 avatar

reors's Issues

Iterative writing with KMeans and CMeans

Currently these functions write results in each iteration. It may be better for the disk - and possibly quicker (depending on how much time is saved per-iteration) to only write the file after it's converged.

The main downside of this is that, if the function converges early, it will need to re-calculate membership values as they won't be in memory. Under other situations, write on the last iteration.

This might solve a writing error that sometimes occurs after many (>100) iterations.

Multi-layer focal functions

Re-work all functions that use the focal function to use getValuesFocal - I think this may also allow several inputs and outputs, not sure about the comparative speeds - will have to test.

Would also open the door to classification algorithms with a focal element.

CMat

The confusion matrix (CMat) function currently has a number of accuracy meassures that aren't fully implimented. Need to re-read and impliment the correct formulas.

KMeans using matrix addition ect. rather than apply.

As several functions have been sped up by using algebra on the matrices as a whole rather than an apply() function, this might be applied to the KMeans function - especially useful as it can run for so many iterations.

PCA function.

The PCA function is currently untested, need to find a reliable method to process it. Also a method to reduce data volumes, float is way too inefficient.

Handling shapefiles

Currently the way shapefiles are handled is unsatisfactory e.g. SpectralProfiler. As shapefiles are intended as the main method for passing around areas of interest ect, this needs fixing. Also one of the current areas I'm looking into is object-based image analysis, shapefiles are an important area to get to grips with before that.

Generalise band maths function

Modify BandRatio to accept a function as input?

Though would make it closer to a wrapper of calc than it currently is.

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.