In recent years there has been a remarkable trend in the miniaturization and reduction in the cost of electronic components as well as developments in the sensor technologies required to safely control UAVs. Furthermore, the technology is increasingly accessible to organizations and individuals with tight budgets. Improvements in central processing unit (CPU) and graphics processing unit (GPU) technology, paired with recent developments in image analysis and feature recognition through deep learning methods, is increasing the accuracy and efficiency of identifying objects, differentiating textures, and classifying the content of digital images. The greatest innovation in our proposed work is the leveraging of new machine-learning algorithms for feature recognition and classification. Merging these new and advanced hardware and software technologies provides an opportunity to develop a modular workflow that will enhance data collection to support Earth science studies over large areas.
We are currently developing a modular, advanced data analysis pipeline that classifies high resolution aerial images into land cover classes. Our open source tool will facilitate collecting training data, training deep learning models, and classifying high resolution aerial images. The tools will be flexible and allow the same training data to be used to train a wide variety of deep maching learning models(e.g., neural networks and convolutional neural networks.)
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.
To classify an image, Nenetic applies neural network algorithms to vectors or image chips created from user selected regions around a central pixel. Training data are collected using points that can be selected one at a time or as a stream. Extracting training data for each point is accomplished using a dialog that allows a user to select features that will be used for training and classification. Available feature selection options include; calculating average pixel values for multiple region sizes, selecting all pixels in a neighborhood around a training point, and calculating a series of RGB indices, such as NDVI and luminosity, for all pixels in a neighborhood with dimensions defined by the user.
If you have any questions or are interested in this project please contact Ned Horning (Director of Applied Biodiversity Informatics, Center for Biodiversity and Conservation ) and Peter Ersts (Software Developer, Center for Biodiversity and Conservation) .