LWN for UAVRSI

October 21, 2021 Ā· View on GitHub

Light-Weight Semantic Segmentation Network for UAV Remote Sensing Images

Briefly

  • This repo introduces a light-weight semantic segmentation network for UAV Remote Sensing Images

  • The network only requires 9M parameters

  • The experiments on the ISPRS Vaihingen dataset, UAVid dataset and UDD6 dataset had verify the effectiveness of it.

Environment

Runtime environment

  • Ubuntu 16.04
  • PyTorch 1.6.0
  • CUDA10.1+
  • Nvidia GTX2080Ti

Models

  • All the models involved in models/

  • Under the condition of the image size is 512x512, the performances of our models on the Vaihingen dataset are as follows:

    ModelmF1mIoUOAParams(M)
    LWN86.7977.1188.279
    LWN-A87.6278.3888.8515

    UAVid:

    ModelmIoUOAParams(M)
    LWN67.8287.139
    LWN-A69.0287.6615

    UDD:

    ModelmF1mIoUOAParams(M)
    LWN86.1976.7888.759
    LWN-A86.7977.1988.9315

​

Training

  • It is recommended to make a new dir named data and save or link the dataset under it.

  • Images and labels are recommended to crop to 512*512

  • Then prepare the data as follows:

  • data/uavid
    |-- train
    |   |-- image
    |   |   |-- seq1_000000.png
    |   |   |-- ...
    |   |-- label
    |   |   |-- seq1_000000.png
    |   |   |-- ...
    |-- val
    |   |-- image
    |   |   |-- seq16_000000.png
    |   |   |-- ...
    |   |-- label
    |   |   |-- seq16_000000.png
    |   |   |-- ...
    
  • Then set the parameters for training phase, such as dataset, model_type , data_root and learning rateon config.ini.

  • python main.py