Skip to content

This is a PyTorch-based project for drone image segmentation. The goal of this project is to segment objects and regions of interest within aerial images captured by drones. Image segmentation is a crucial task in computer vision and has various applications, including agriculture, urban planning, and environmental monitoring.

License

Notifications You must be signed in to change notification settings

AmzadHossainrafis/DroneImage-segmentation

Repository files navigation

Alt text

This project still undrer development and will be updated soon. demo train is vailable in the notebook/trail.ipynb file.

        if you have any question please contact me at email or linkedin

Drone Image Segmentation Project

live demo avilable here

Project Overview

This is a PyTorch-based project for drone image segmentation. The goal of this project is to segment objects and regions of interest within aerial images captured by drones. Image segmentation is a crucial task in computer vision and has various applications, including agriculture, urban planning, and environmental monitoring.

Data description

This dataset is avilable in kaggle here. The dataset contains 1100 images of size 1500x1500 pixels. Each image has a corresponding label image of the same size. The label image contains 22 classe. The following figure shows an example of an image and its corresponding label image.

Alt text

Pre requirments

How to install

  1. Clone the repository

    $ git clone <clone link >
    
    
  2. Create a virtual environment and activate it using this command

       $ conda create -n <env_name> python=<Python virsion>
  3. Install the required packages note: if your using Gpu please remove torch==1.11.0+cpu and -f https://download.pytorch.org/whl/torch_stable.html from the requirements.txt file . But if you want to deploy model please dont change the requirements.txt file.

        $ pip install -r requirements.txt

Configurations modification

The configurations are stored in the file config.py. You can modify the configurations as you want.

  1. Change all the paths in the config.py file to your own paths.
  2. Change the batch size, number of epochs, and learning rate in the config.py file according to your machine specifications.

Model Architecture

The model architecture is based on the U-Net architecture. The model is implemented in the model.py file. The model architecture is shown in the following figure.

How to train

Please confirm all the configurations in the config.py file before training.

  1. Run the following command to train the model
    $ cd src\DronVid\pipeline/
    $ python train_pipeline.py

Results

Alt text Alt text

Test and Train matrics score and loss

Alt text

Deployment

the deployment is done in heruko and the live demo is avilable here

to deploy your onw model please follow the following steps 1. create a account in heruko 2. collect the api key from heruko 3. create new env secrate in github and add the api key in the env secrate 4. open .github\workflows\main.yml file and change the app name and add your heruko email

Alt text

About

This is a PyTorch-based project for drone image segmentation. The goal of this project is to segment objects and regions of interest within aerial images captured by drones. Image segmentation is a crucial task in computer vision and has various applications, including agriculture, urban planning, and environmental monitoring.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published