Coder Social home page Coder Social logo

sentinel_traj_nn's Introduction

Main Project for Road extraction with Sentinel & Trajectory with Deep Learning

  • Link to TRUBA VPN connection setup and major SLURM functions are here.
  • Link to runtime scripts definitions and options here.
  • Use .env_template to configure input/output paths.
  • Truba python environment installation instructions are here
  • Data

sentinel_traj_nn's People

Contributors

nagellette avatar

Stargazers

 avatar  avatar  avatar Deniz Turan avatar

Watchers

 avatar

sentinel_traj_nn's Issues

Resolve label saving issues

Some of the labels are shown correctly but some are completely empty although they are not in raw label tif file.

Test run SRCNN+MSI on Truba

Apply test runs on Truba to determine the relation between batch size, patch size, epoch size, GPU count, CPU count and model depth.

  • Run models
  • Evaluate results
  • Create speed up efficiency graphs (? - metioned in the TIK on June)

Create Istanbul trajectory dataset

  • Archive local dataset to portable disc storage
  • Review Montreal data to use the same resolution options
  • Run trajectory rasterization scripts for IBB data.

Improve output analysis jupyter notebook

  • Check if the model is completed
  • Get the model type
  • Read model parameters from model config and print
  • Read input files from model input config and print
  • Get the model size as all/trainable parameters
  • Print model structure
  • Analyze metric outputs
  • Add option for trajectory output visualisation
  • Analyze runtime log data

Implement late SRCNN-Unet

Current SRCNN-UNET model has SRCNN structure right after input layers. Move the SRCNN structure between last convolution layer (current output) and new output layers. Keep current output layers as a new layer (keep everything as is), add SRCNN structure.

before:

        output_layer = Conv2D(2, (1, 1), padding="same", activation="sigmoid")(up_conv1)

        self.model = tf.keras.Model(inputs=input_layers, outputs=output_layer)

after:

        transition_layer = Conv2D(2, (1, 1), padding="same", activation="sigmoid")(up_conv1)

        srcnn = Conv2D(64, (9, 9), activation='relu', padding="same")(temp_input_layer)
        srcnn = Conv2D(32, (1, 1), activation='relu', padding="same")(srcnn)
        output = Conv2D(1, (5, 5), activation='relu', padding="same")(srcnn)

        self.model = tf.keras.Model(inputs=input_layers, outputs=output_layer)

Improve MTL datasets

  • Create nearest neighborhood based images
  • Create label data with "DEFLATE" compression (similar to Istanbul data)

Out of range error in ist. data generation

Getting following error:

ERROR 5: /home/nagellette/Desktop/final_data/ist_data/T35TPF_20191109T090201_B02_10m_clipped.tif, band 1: Access window out of range in RasterIO().  Requested
(58495,31975) of size 362x362 on raster of 35687x31533.

Also getting following error, most probably because the above one create empty image. Check and test this one two after resolving above one:

TypeError: ufunc 'isnan' not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ''safe''

Save prediction examples before normalization and correct output file name

  • Current implementation is showing preprocessed (normalized) pixel values. This causes false colors when rendered in matplotlib.
  • File name of the bands are confusing. Current code names the files from 0 to n with using "B" index for sentinel images. Implement to get original index from band name like "B2", "B8" etc.

Add additional metrics

Current accuracy metrics looks suspicious. Add following as the additional metrics to be saved in callback:

Upgrade Tensorflow version on local+TRUBA

  • Test TRUBA support for latest version of the Tensorflow
  • Upgrade TRUBA runtime environment to new Tensorflow version if previous test successful.
  • Upgrade local coding environment to latest version of Tensorflow.

Implement Additional Semantic Segmentation Models

Add input file size verifier

Current input file size read from "label" file dimensions and rest of the code uses this. This causes issues when input files having different sizes accidentally. Add a verifier function to check, compare and report the equality of raster dimensions.

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.