前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于Tensorflow 1.15的DeepLabV3+_框架的配置和CityScapesScript测试集的语义分割实现

基于Tensorflow 1.15的DeepLabV3+_框架的配置和CityScapesScript测试集的语义分割实现

原创
作者头像
Tia
修改2021-06-24 10:11:14
6860
修改2021-06-24 10:11:14
举报
文章被收录于专栏:Chiptune

一、硬件环境:

Ubuntu 20.04 LTS Operation System

NVIDIA TiTan XP GPU

二、软件环境:

GPU Driver:NVIDIA-Linux-x86_64-460.80.run

CUDA: Cuda 10.0

CUDNN: Cudnn 7.4.1 for Cuda 10.0

Anaconda:Anaconda3-2021.05-Linux-x86_64.sh

Pycharm

Pigcha

三、Tensorflow-gpu 1.15环境的配置:

其中,Tensorflow,CUDA,CUDNN均选择自己需要的版本来下载。

Reference:

驱动的安装:https://www.cnblogs.com/shyern/p/10606315.html#_label3

CUDA的安装:

https://developer.nvidia.com/cuda-toolkit-archive

CUDNN的安装:

https://developer.nvidia.com/zh-cn/cudnn

* 使用Firefox Web Browser 在密码验证时有问题,可以通过 Wechat Scan QR Code登录。

Tensorflow的安装:https://www.bilibili.com/video/BV1UE411N7gS

Tensorflow-CUDA-CUDNN版本对照表:

https://www.tensorflow.org/install/source Tips:

1.请先装驱动,尽量安装较高版本的驱动才能运行对应的CUDA。(向下兼容)

2.如果装完驱动之后返回图形界面时黑屏,请重装系统,之后使用nvidia-smi确认驱动是否安装成功。若未成功,请重新选择驱动版本进行安装。

3.DeepLabV3+框架只能在GPU工作情况下运行,因为有部分代码要求GPU参与工作,除非自行修改代码。

4.请在Linux环境下进行环境的配置,Win环境下会产生各种ERROR,无法下手。

5.Manjaro上的开源驱动,用不了。

6.若是在Anaconda下面创建的环境,可以通过指定CUDA版本进行CUDA的安装,但是没有对应版本的CUDNN库,可以将下载的CUDNN解压,直接替换Anaconda-pkg里CUDNN的内容,CUDA可以正常工作。

7.Pip推荐豆瓣源:https://pypi.douban.com/simple/

8.Anaconda推荐BFSU源:https://https://mirrors.bfsu.edu.cn/help/anaconda/

l检测代码:

import tensorflow as tf

a = tf.test.is_built_with_cuda() # 判断CUDA是否可以用

b = tf.test.is_gpu_available(

cuda_only=False,

min_cuda_compute_capability=None

) # 判断GPU是否可以用

print(a)

print(b)

四、DeepLabV3+_框架的配置与CityScapesScript测试集的语义分割:

Reference:

https://blog.csdn.net/malvas/article/details/88896283

Tips:

1.DeepLab是个工程项目,要把model_test.py, train.py,eval.py, vis.py同deeplab一并拉到自己新建的工程文件夹下运行。(自己新建的工程文件DeepLab_Test里面有【deeplab,model_test.py, train.py,eval.py, vis.py】)

2.Reference 里面没有的文件夹自己要新建。

3.CityScapesScript测试集下载需要.edu后缀的邮箱。

4.缺少的库,如:pillow, tf_slim, quaternion按照返回讯息进行下载即可。

5.Git clone境内对应Gitee地址:

// CityScapesScript标注集

git clone https://gitee.com/chanmanseui/cityscapesScripts.git

// DeepLab源码

git clone https://gitee.com/chanmanseui/models.git

6.Reference里面train,eval,vis指令错误的地方和更改后的指令:

# train.py

python train.py \

--logtostderr \

--training_number_of_steps=1000 \

#ERROR OCCURED

--train_split="train_fine" \

--model_variant="xception_65" \

--atrous_rates=6 \

--atrous_rates=12 \

--atrous_rates=18 \

--output_stride=16 \

--decoder_output_stride=4 \

--train_crop_size="769,769"\

--train_batch_size=2 \

--dataset="cityscapes" \

--tf_initial_checkpoint='/home/administractor/PycharmProjects/DeepLab_Test/deeplab/backbone/deeplabv3_cityscapes_train/model.ckpt' \

--train_logdir='/home/administractor/PycharmProjects/DeepLab_Test/deeplab/exp/train_on_train_set/train' \

--dataset_dir='/home/administractor/data/cityscapesScripts/tfrecord'

# eval.py

python eval.py \

--logtostderr \

--eval_split="val_fine" \

--model_variant="xception_65" \

--atrous_rates=6 \

--atrous_rates=12 \

--atrous_rates=18 \

--output_stride=16 \

--decoder_output_stride=4 \

--eval_crop_size="1025,2049" \

--dataset="cityscapes" \

--checkpoint_dir='/home/administractor/PycharmProjects/DeepLab_Test/deeplab/exp/train_on_train_set/train' \

--eval_logdir='/home/administractor/PycharmProjects/DeepLab_Test/deeplab/exp/train_on_train_set/eval' \

--dataset_dir='/home/administractor/data/cityscapesScripts/tfrecord'

# vis.py

python vis.py \

--logtostderr \

--vis_split="val_fine" \

--model_variant="xception_65" \

--atrous_rates=6 \

--atrous_rates=12 \

--atrous_rates=18 \

--output_stride=16 \

--decoder_output_stride=4 \

--vis_crop_size="1025,2049" \

--dataset="cityscapes" \

--colormap_type="cityscapes" \

--checkpoint_dir='//home/administractor/PycharmProjects/DeepLab_Test/deeplab/exp/train_on_train_set/train' \

--vis_logdir='/home/administractor/PycharmProjects/DeepLab_Test/deeplab/exp/train_on_train_set/vis' \

--dataset_dir='/home/administractor/data/cityscapesScripts/tfrecord'

* 最终结果:

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
GPU 云服务器
GPU 云服务器(Cloud GPU Service,GPU)是提供 GPU 算力的弹性计算服务,具有超强的并行计算能力,作为 IaaS 层的尖兵利器,服务于生成式AI,自动驾驶,深度学习训练、科学计算、图形图像处理、视频编解码等场景。腾讯云随时提供触手可得的算力,有效缓解您的计算压力,提升业务效率与竞争力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档