简介
deeplabv3+是现今性能最好的语义分割模型之一,本文介绍如何在window环境下安装并运行deeplabv3+。
本文将详细介绍deeplabv3+的环境配置,训练自己的数据,参数调试等内容。
Update:
- 2018-8-22 环境搭建,数据集预处理,训练自己的数据
Todo:
- ✔环境介绍 Anaconda,使用gitbash运行 .sh 文件
- deeplabv3+简介
- ✔代码下载,本地测试
- ✔处理自己的数据集
- 内部的一些微调,及各项参数的用处
- 结果
1、环境介绍
本地工作站实验环境:
系统:windows 7
GPU:Geforce TITAN X × 2
CUDA:9.0 + CUDNN7.5
Tendorflow:1.9.0-gpu (使用1.8.0及以上版本,亲测1.4.0缺少函数,会报错)
上述环境安装的具体步骤可参考:win7+anaconda3+cuda9.0+CuDNN7+tensorflow-gpu+pycharm配置
1.1 如何使用 Git Bash 运行.sh脚本
由于deeplab官方github仓库clone下来的代码中使用了shell脚本进行自动化训练、评估、格式化等操作,然而这些脚本应当是在linux系统下运行的。由于我的机器Ubuntu14.04系统的环境配置不好,无奈只能想方法在Windows上运行。为了能在windows系统上运行shell脚本,这里强烈推荐Git Bash。它是Git(没错,就是那个代码管理系统)软件的一个子程序,感觉比windows自带的cmd和powershell要好用!
可以直接从Git 官网下载,然后正常安装,完毕后在任何文件夹的空白处鼠标右键,点击 Git Bash Here 选项,就可以在当前右键的路径下打开一个 Git Bash 控制台,长这个样子
以一个名 shell_script.sh
为例,在脚本所在文件夹下打开 Git Bash,然后键入 ./shell_script.sh
就可以运行了。
虽然deeplab中的
.sh
脚本能够在Git Bash中运行,但是一些语句无效的,需要做其他修改,下面会提到。
在运行之前,我还遇到了一个小问题,就是工作站原本就有python环境,如果不修改默认 python
路径,容易发生 import
问题(纯净环境配置后是否有这样的问题未知,总之添加一下环境变量就好了),安装Anacoda后需要将默认的 python
路径改成Anaconda的 python
路径。在用户变量中的 PATH
变量中添加 C:\ProgramData\Anaconda3\Scripts
和 C:\ProgramData\Anaconda\Library\bin
两个路径,此处只是举例,具体路径请按照真实的安装路径添加!!
环境变量设置具体可参考 win10+python3下Anaconda的安装及环境变量配置
1.2 Windows环境安装 tf-model
先给出 tf-model
的Github地址:Tensorflow Models Github官方仓库
deeplab
的源码就在 research
文件夹中。
在 deeplab/g3doc/installation.md
中提到,安装deeplab需要将 research/slim
路径加入 PYTHONPATH
中去,官方给出的方法是在每次运行之前都执行,但仅在linux系统中起作用
export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim
在cmd和powershell中会报错,亲测虽然Git Bash中不报错但仍然无效(这里我也不懂原理)。
windows 系统下的解决方案为:在py脚本中动态添加地址
将 deeplab
文件夹下的 train.py
、 eval.py
, vis.py
, export_model.py
这四个脚本的开头加语句,没错四个文件都要加(必须加在 import deeplab
语句之前)。
import sys
sys.path.append(r'D:\Code\tf-models\research')
sys.path.append(r'D:\Code\tf-models\research\slim') # 以上两处的路径请按照真实的路径添加
1.3 本地测试
环境配置完成之后,在 deeplab