Skip to content

Avalon-S/Undergraduate-Graduation-Project

Repository files navigation

Undergraduate-Graduation-Project

Welcome to my homepage

介绍

基于非局部注意力机制的深度学习高分遥感语义分割方法研究
本项目是本人的本科毕业设计,详细介绍可以查看本页面的pdf文件

动机:

  1. 遥感图像中不同事物尺度差异较大,需要进行多尺度的特征提取
  2. CNN在全局信息上建模能力不足,可以结合Transformer架构进行加强
  3. 在类Unet的图像分割网络模型中,编码器和解码器之间的信息传递比较朴素,可以使用注意力机制来进行特征增强
  4. 添加注意力机制不一定可以保证提升模型性能,如何控制? model
Fig. 1. 模型整体架构

Residual%20Attention%20Block

Fig. 2. 残差加权注意力模块

visualization_1

Fig. 3. 小图推理可视化

visualization_2

Fig. 4. 大图推理可视化

数据预处理

此处可以参考mmsegmentation的处理方法

数据集文件夹组织结构

├── dataset
│   ├── potsdam
│   │   ├── train
│   │   │   ├──images_512
│   │   │   ├──masks_512
│   │   ├── test
│   │   │   ├──images_512
│   │   │   ├──masks_512
│   ├── vaihingen (the same with postdam)

训练

Potsdam:

python Undergraduate-Graduation-Project/train_supervision.py -c Undergraduate-Graduation-Project/config/potsdam/unetformer.py

Vaihingen:

python Undergraduate-Graduation-Project/train_supervision.py -c Undergraduate-Graduation-Project/config/vaihingen/unetformer.py

测试

Potsdam:

python Undergraduate-Graduation-Project/potsdam_test.py -c Undergraduate-Graduation-Project/config/potsdam/unetformer.py -o fig_results/potsdam/sk --rgb -t 'lr'

Vaihingen:

python Undergraduate-Graduation-Project/vaihingen_test.py -c Undergraduate-Graduation-Project/config/vaihingen/unetformer.py -o fig_results/vaihingen/sk --rgb -t 'lr'

大图可视化

Potsdam:

python Undergraduate-Graduation-Project/inference_huge_image.py -i test_images/Potsdam -c Undergraduate-Graduation-Project/config/potsdam/unetformer.py -o fig_results/potsdam/SK_huge -t 'lr' -ph 512 -pw 512 -b 2 -d "pv"

Vaihingen:

python Undergraduate-Graduation-Project/inference_huge_image.py -i test_images/Vaihingen -c Undergraduate-Graduation-Project/config/vaihingen/unetformer.py -o fig_results/vaihingen/SK_huge -t 'lr' -ph 512 -pw 512 -b 2 -d "pv"

感谢

本项目参考了Wang的GeoSeg项目,此处向他表示真心的感谢。

Releases

No releases published

Packages

No packages published