Home

Awesome

Boundary Enhancement Semantic Segmentation for Building Extraction from Remote Sensed Image

Introduction

This repository includes implementations for binary semantic segmentation, especially for building extraction in satellite images.Link pdf
Furthermore, the boundary enhanced methods (BE module) are also contained in /net/zoo/.

HED_unit BE_module Tail_part

Requirements

Python >= 3.7.0

Pytorch > =1.9.0

skimage >= 0.18.2

cuda >= 10.1

Data prep

Urban3D Dataset example

|-- Test
|   `-- Urban3D_Test
|       |-- RGB
|       `-- masks
`-- Train
    `-- Urban3D_Train
        |-- RGB
        `-- masks

Train

Inference

Evaluation

Implemented model and dataset

Model

Dataset

File tree

|-- data
|   |-- Test
|   `-- Train
|-- nets
|   |-- __init__.py
|   |-- _torch_losses.py
|   |-- assembly_block.py
|   |-- callbacks.py
|   |-- datagen.py
|   |-- infer.py
|   |-- losses.py
|   |-- model_io.py
|   |-- optimizers.py
|   |-- torch_callbacks.py
|   |-- train.py
|   |-- transform.py
|   |-- weights
|   `-- zoo
|-- notebooks
|   |-- __init__.py
|   |-- data_prep.ipynb
|   `-- get_mask_eval.ipynb
|-- result
|   |-- infer
|   |-- infer_masks
|   `-- models_weight
|-- src
|   |-- __init__.py
|   |-- inference.py
|   `-- train.py
|-- utils
|   |-- __init__.py
|   |-- config.py
|   |-- core.py
|   |-- data.py
|   |-- io.py
|   `-- log.py
`-- yml
    |-- infer.yml
    `-- train.yml

Contribution

This codes are modified and simplified version of Solaris for my own research.