Git Product home page Git Product logo

deepgeo's People

Contributors

evandroct avatar menimato avatar rvmaretto avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

deepgeo's Issues

Implement features to profile the networks

In the current version, there is a clear bottleneck in the CPU integration of the network weights. Implement profiling options to analyse the execution in each device (CPUs and GPUs)

Fix parallelism in Data Augmentation

Data augmentation operations are not working on multiple GPUs, and rotation operations are not even running on GPUs, only on one CPU. Fix it.

Verify results of EVI

Synthetic band generated by the computeEVI function seems to be wrong. Verify results and formula.

Create top folder "deepleeo" inside "src"

Inside the src folder, create a new folder "deepleeo", that will be the top folder of the package. Verify structure. The main init.py must be inside this folder?

After this, include the code coverage in the Travis script:

nosetests --with-coverage --cover-erase --cover-package=deepleeo --cover-html

Implement validation method in ModelBuilder

This method should make prediction in some chips and compute some metrics like f1-score, IoU, overall accuracy, precision, recall, confusion matrix, etc.

This method should either save these results in a folder ./validation inside the training model directory.

Implement preprocessor class

The class would be responsible for allowing the user to extract some synthetic data or indexes (NDVI, EVI, etc) in a synthetic band to compose the dataset. The API must provide some predefined functions, like the NDVI and EVI, but allow the user to pass a customized function as parameter. Thus, the system must be able to compute a synthetic band based on this (or these) functions (It must allow to produce more than just one band).

This class must either be able to remove classes that the user is not interested, croping either the base raster.

Implement DatasetGenerator class

This class must be able to generate chips for a list of images and shapefiles using the chipGenerator with a given strategy and produce a single dataset.

Normalize images in the preprocessor class

To make the DNN performance better, the data must be normalized, usually between -1 and 1, with the mean centered in 0. Verify this information in the literature, and implement this normalization.

Review method geofunctions.load_image

Method geofunctions.load_image is really necessary?
Is it necessary to convert the data to float32?
Is it necessary to mask it?

Review this method and refactor it if necessary.

Search for APIs for Data Augmentation

Keras seems to have some Data Augmentation functionalities. Verfify if there are another packages with this functionalities. It is better to use them insetead of implement it. Verify if TensorFlow provides some of these functionalities.

Implement a method to get a band from a numpy array

Implement a method or a class to, given a numpy array, retrieve a raster band, or even a class that will encapsulate the numpy array. It would make it easier to the user to deal with the raster. The class can have either the path to the input raster as a parameter.

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.