Home

Awesome

MFVNet

This repo contains the supported code and models to reproduce the results of MFVNet: a deep adaptive fusion network with multiple field-of-views for remote sensing image semantic segmentation.

<!-- ![](figures/mfvnet.jpg) --> <figure> <text-align: center;> <img src="./mfvnet.jpg" alt="mfvnet" title="" width=800" height="320" /> </figcaption> </figure>

Updates

03/17/2023 Models on the Potsdam dataset are released.

03/16/2023 Initial commits.

Results and Models for MFV

Potsdam

MethodImp. sur.CarTreeLow veg.BuildingCluttermIoUFWIoUmF1model
MFVNet85.282.276.074.991.439.274.881.584.3github/google/baidu

Results and Models for SSM

Potsdam

ScaleMethodImp. sur.CarTreeLow veg.BuildingCluttermIoUFWIoUmF1model
low (512)UNet82.282.973.972.188.631.771.978.681.9-
low (512)HRNet83.081.372.772.590.036.272.679.282.7-
low (512)PSPNet84.080.574.773.490.536.973.380.283.2github/baidu
middle (768)UNet82.381.572.671.288.633.171.678.381.8-
middle (768)HRNet81.481.068.669.688.635.170.777.581.0-
middle (768)PSPNet83.679.473.673.090.137.172.879.782.9github/baidu
high (1024)UNet80.980.571.569.588.331.470.477.280.9github/baidu
high (1024)HRNet80.479.767.667.888.528.368.775.979.5-
high (1024)PSPNet79.672.468.168.188.230.167.775.679.1-

Usage

Installation (for cuda10)

conda create -n mfvnet python=3.7
conda activate mfvnet
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=10.2 -c pytorch
conda install rasterio tqdm tensorboardX yacs matplotlib
cd PATH_TO_YOUR_WORKING_DIRECTORY
git clone https://github.com/weichenrs/MFVNet

Installation (for cuda11)

conda create -n mfvnet python=3.7
conda activate mfvnet
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=11.0 -c pytorch
conda install rasterio tqdm tensorboardX yacs matplotlib
cd PATH_TO_YOUR_WORKING_DIRECTORY
git clone https://github.com/weichenrs/MFVNet

Downloading data

We upload the processed data of Potsdam dataset, which can be downloaded via google or baidu.

cd PATH_TO_YOUR_WORKING_DIRECTORY
cd MFVNet
mkdir data
unzip potsdam.zip

You can also download the source data from the offical website of Potsdam, GID, and WFV.

Notes:

MFV Training and testing

cd PATH_TO_YOUR_WORKING_DIRECTORY
cd MFVNet
mkdir ssm_models
# you need move the SSM models (your trained models or our pre-trained models) to the ssm_models folder. 
cd ../mfv
sh retrain_mfv.sh

SSM Training and testing (search your own best models on each scale)

cd PATH_TO_YOUR_WORKING_DIRECTORY
cd MFVNet
cd ssm
sh train_ssm.sh

Citing MFVNet

@article{mfvnet,
  author = {Li Yansheng,Chen Wei,Huang Xin,Gao Zhi,Li Siwei,He Tao,Yongjun Zhang},
  title = {MFVNet: a deep adaptive fusion network with multiple field-of-views for remote sensing image semantic segmentation},
  journal = {SCIENCE CHINA Information Sciences},
  year = {2023},
  url = {https://doi.org/10.1007/s11432-022-3599-y}
}

Acknowledgement

pytorch-deeplab-xception