This repository contains the files for running the Patchify GUI.

Overview

Repository Name >> Train-Test-Validation-Dataset-Generation

App Name >> Patchify

Description >> This app is designed for crop images and creating small patches of a large image e.g. Satellite/Aerial Images, which will then be used for training and testing Deep Learning models specifically semantic segmentation models.

Functionalities: Patchify is capable of:

  • Crop the large image into small patches based on the user-defined patch window-size and patch stride/step independently in two x and y directions.
  • Augmenting the cropped dataset to expand the size of the training dataset and make the model to improve the model performance with better generalizing for unseen samples.
  • Dividing the created dataset into different Train, Test, and Validation dataset with user defined percentages.

A picture of Patchify App is shown below:

Parameters:

  • Input Image: is the input large image need to be cropped into small patches. It can be whether raster or its label image. (The produced results will in the same format as the input image)

  • Export Folder: is the directory for saving the generated cropped patches.

  • Window Size: is the size of the cropping window which is equal to the size of the generated small patches. (X is the patch/cropped images' length in X direction and Y is their length in Y direction.)

  • Stride: is the step size of the moving window for generating the patches. It can move in different step sizes in X and Y directions.

  • Output name: is the constant part of the generated patches' name.

  • Training Percentage: is the percentage of Total generated patches goes into Training Dataset.

  • Testing Percentage: is the percentage of Total generated patches goes into Testing Dataset.

  • Validation Percentage: is the percentage of Total generated patches goes into Validation Dataset.

  • Original Image: is the original version of the cropped patch at the location of moving/sliding window.

  • Rotate 90 Degrees: is the version of original image rotated 90 degrees clockwise.

  • Rotate 180 Degrees: is the version of original image rotated 180 degrees clockwise.

  • Rotate 270 Degrees: is the version of original image rotated 270 degrees clockwise.

  • Flip Vertically: is the version of original image flipped vertically.

  • Flip Horizontally: is the version of original image flipped horizontally.

  • Flip Verticall and Horizontally: is the version of original image flipped both vertically and horizontally .

  • Start Patching: starts the patching operations based on the selected parameters.

  • Cancel: is the button for stopping the patching operations and/or closing the Patchify App.

  • Augmentation section has two buttoms. All button selects all the augmentation methods. In case a different format should be checked manually, the Custom Selection can be selected.

Important Notes:

  • if none of the Train, Testing, Validation percentages is filled, Then the Results will only produce Total cropped patches and the dataset spliting section won't run.
  • Make sure you have selected an image, the destination folder for storing and the generated patch name before pressing "Start Patchify" button.

Implementation:

patchify.py is the only file you need to run. But before make sure you have installed all the required python libraries including opencv, PyQt5. Be sure to use the latest version of pip along with python 3.7

Owner
Salar Ghaffarian
Remote Sensing and GIScientist - MSc in Geomatics Engineering - I am specialist in using Deep learning, Computer vision, and machine learning methods.
Salar Ghaffarian
Interactive web apps created using geemap and streamlit

geemap-apps Introduction This repo demostrates how to build a multi-page Earth Engine App using streamlit and geemap. You can deploy the app on variou

Qiusheng Wu 27 Dec 23, 2022
This repository contains the code for designing risk bounded motion plans for car-like robot using Carla Simulator.

Nonlinear Risk Bounded Robot Motion Planning This code simulates the bicycle dynamics of car by steering it on the road by avoiding another static car

8 Sep 03, 2022
TabNet for fastai

TabNet for fastai This is an adaptation of TabNet (Attention-based network for tabular data) for fastai (=2.0) library. The original paper https://ar

Mikhail Grankin 116 Oct 21, 2022
FCN (Fully Convolutional Network) is deep fully convolutional neural network architecture for semantic pixel-wise segmentation

FCN_via_Keras FCN FCN (Fully Convolutional Network) is deep fully convolutional neural network architecture for semantic pixel-wise segmentation. This

Kento Watanabe 48 Aug 30, 2022
An essential implementation of BYOL in PyTorch + PyTorch Lightning

Essential BYOL A simple and complete implementation of Bootstrap your own latent: A new approach to self-supervised Learning in PyTorch + PyTorch Ligh

Enrico Fini 48 Sep 27, 2022
Deep Learning for humans

Keras: Deep Learning for Python Under Construction In the near future, this repository will be used once again for developing the Keras codebase. For

Keras 57k Jan 09, 2023
Predicting Auction Sale Price using the kaggle bulldozer auction sales data: Modeling with Ensembles vs Neural Network

Predicting Auction Sale Price using the kaggle bulldozer auction sales data: Modeling with Ensembles vs Neural Network The performances of tree ensemb

Mustapha Unubi Momoh 2 Sep 13, 2022
Real time Human Detection Counting

In this python project, we are going to build the Human Detection and Counting System through Webcam or you can give your own video or images. This is a deep learning project on computer vision, whic

Mir Nawaz Ahmad 2 Jun 17, 2022
My implementation of transformers related papers for computer vision in pytorch

vision_transformers This is my personnal repo to implement new transofrmers based and other computer vision DL models I am currenlty working without a

samsja 1 Nov 10, 2021
SmoothGrad implementation in PyTorch

SmoothGrad implementation in PyTorch PyTorch implementation of SmoothGrad: removing noise by adding noise. Vanilla Gradients SmoothGrad Guided backpro

SSKH 143 Jan 05, 2023
A program that can analyze videos according to the weights you select

MaskMonitor A program that can analyze videos according to the weights you select 下載 訓練完的 weight檔案 執行 MaskDetection.py 內部可更改 輸入來源(鏡頭, 影片, 圖片) 以及輸出條件(人

Patrick_star 1 Nov 07, 2021
Rasterize with the least efforts for researchers.

utils3d Rasterize and do image-based 3D transforms with the least efforts for researchers. Based on numpy and OpenGL. It could be helpful when you wan

Ruicheng Wang 8 Dec 15, 2022
PyTorch reimplementation of Diffusion Models

PyTorch pretrained Diffusion Models A PyTorch reimplementation of Denoising Diffusion Probabilistic Models with checkpoints converted from the author'

Patrick Esser 265 Jan 01, 2023
Pytorch reimplementation of PSM-Net: "Pyramid Stereo Matching Network"

This is a Pytorch Lightning version PSMNet which is based on JiaRenChang/PSMNet. use python main.py to start training. PSM-Net Pytorch reimplementatio

XIAOTIAN LIU 1 Nov 25, 2021
QICK: Quantum Instrumentation Control Kit

QICK: Quantum Instrumentation Control Kit The QICK is a kit of firmware and software to use the Xilinx RFSoC to control quantum systems. It consists o

81 Dec 15, 2022
PyTorch implementation of "Contrast to Divide: self-supervised pre-training for learning with noisy labels"

Contrast to Divide: self-supervised pre-training for learning with noisy labels This is an official implementation of "Contrast to Divide: self-superv

55 Nov 23, 2022
Adaptive, interpretable wavelets across domains (NeurIPS 2021)

Adaptive wavelets Wavelets which adapt given data (and optionally a pre-trained model). This yields models which are faster, more compressible, and mo

Yu Group 50 Dec 16, 2022
Pytorch implementation of Supporting Clustering with Contrastive Learning, NAACL 2021

Supporting Clustering with Contrastive Learning SCCL (NAACL 2021) Dejiao Zhang, Feng Nan, Xiaokai Wei, Shangwen Li, Henghui Zhu, Kathleen McKeown, Ram

231 Jan 05, 2023
A FAIR dataset of TCV experimental results for validating edge/divertor turbulence models.

TCV-X21 validation for divertor turbulence simulations Quick links Intro Welcome to TCV-X21. We're glad you've found us! This repository is designed t

0 Dec 18, 2021
PyTorch code for: Learning to Generate Grounded Visual Captions without Localization Supervision

Learning to Generate Grounded Visual Captions without Localization Supervision This is the PyTorch implementation of our paper: Learning to Generate G

Chih-Yao Ma 41 Nov 17, 2022