Code Monkey home page Code Monkey logo

deeplabv3-tensorflow's Introduction

基于Deeplab-v3对遥感图像的语义分割

QQ:1363090802

数据集:

CCF卫星影像的AI分类与识别提供的数据集初赛复赛训练集,一共五张卫星遥感影像

dataset
├── origin //5张遥感图片,有标签
├── test   //3张遥感图片,无标签,在这个任务中没有用到
└── train  //为空,通过`python preprocess.py`随机采样生成
    ├── images       
    └── labels

其中我们使用前四张用来做训练,最后一张用来做测试

dependency

cuda==8.0
cudnn==6
python==3.5
pip install opencv-python==3.4.2.17
pip install tensorflow-gpu==1.13.1
pip install sklearn pip install pandas

主要策略:

  • 将原始的遥感图像裁成大小为(256x256)的图片块,裁剪的方法为随机采样,并进行数据扩增
  • 搭建Deeplab-v3模型,使用预训练的 resnet-v2-50 迁移学习
  • 完整的训练测试程序,使用 tensorboard 监控模型训练
  • 多尺度拼接预测,提升模型
  • 后处理优化,比如消除预测图片拼接痕迹
  • 使用更好的骨干网络,如 Xception

最终结果:

评价方法为 mean-IoU,在数据集极少的情况下,测试集评价结果得到了 77.3 的分数

方法 mean-IoU accuracy
baseline(deeplabv3) 71.2 -
resnet-v2-50 pretrain 77.1 -
旋转四次预测取平均 77.6 85.5

如何训练

将百度云中的数据集文件夹dataset下载并存放到项目主目录下
python proprecess.py 时间稍长,需要等待
python train.py 时间稍长,可以更改args.test_display 多久查看一次测试结果

如何可视化训练过程

cd 到主目录下
tensorboard --logdir=./

测试结果:

模型预测step = 10000 模型预测step = 50000
测试图片缩略图 测试图片标签上色图

tensorboard

deeplabv3-tensorflow's People

Contributors

zhangkai-byte avatar anxiangsir avatar ximimiao avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.