本文主要是介绍ubuntu 18.04下搭建FCN Demo测试环境(Tensorflow),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这几天一直在倒腾FCN Demo的测试环境,现记录一下,以防自己忘记,也希望我的搭建经历能够帮助到其他童鞋。
1、首先我使用的Tensorflow框架,使用的是国外一个大神在GitHub上上传的一个Demo,GitHub地址是:FCN.tensorflow。
2、在下载到Demo后(自己根据GitHub说明,下载了测试数据),我直接将Demo放在Windows下的TensorFlow环境测试,但是测试不通过,会出现“ValueError: Cannot feed value of shape (0,) for Tensor 'input_image:0', which has shape '(?, 200, 200, 3)' ”报错,我猜测是Windows下的路径出现了问题,暂时还没有解决这个问题。由于时间赶就没有继续查找这个问题。
ps:当整个工程在Ubuntu下能跑通的话,直接将其整个工程拷贝至Windows7环境是能运行起来的。
3、为了防止出现其他奇怪的问题,因此我选择使用Ubuntu环境来测试Demo。在这里我使用的是虚拟机(公司电脑没有显卡,就不用双系统了)。
4、在ubuntu 18.04下搭建Tensorflow环境:
需要说明的是,搭建虚拟机的时候内存建议大于12G,硬盘大于60G,有两次就是虚拟机内存和硬盘空间不足导致Demo训练的时候挂掉了。
根据官方文档Installing TensorFlow on Ubuntu,在Ubuntu下安装Tensorflow有多种个方式,分别是:Use pip in a virtual environment (recommended)、Use pip in your system environment、Configure a Docker container、Use pip in Anaconda、Install TensorFlow from source。在这里我选择官方推荐的方式Use pip in a virtual environment。在这里我搭建Python3的环境,Python2.7环境只是命令的不同,步骤并无不同。
A、确认ubuntu下Python和pip3的版本:
$ python3 -V
$ pip3 -V
如果提示pip3没有安装,则需要安装,并更新至最新版(官方文档注明,pip最低版本为8.1,否则可能会出错)。
$ sudo apt-get update
$ sudo apt-get install python3-pip
$ pip3 install --upgrade pip # upgrade pip
B、创建并激活Virtualenv虚拟环境
$ sudo apt-get install python3-pip python3-dev python-virtualenv #install these packages
$ mkdir ~/tensorflow
$ cd ~/tensorflow
$ virtualenv --system-site-packages -p python3 venv3
$ source ~/tensorflow/venv3/bin/activate # bash, sh, ksh, or zsh
(venv3) $ pip3 install --upgrade pip # Within the active virtual environment, upgrade pip
C、在虚拟环境中安装TensorFlow并测试安装是否成功
(venv3) $ pip3 install tensorflow # install tensorflow
(venv3) $ python -c "import tensorflow as tf; print(tf.__version__)" # test
此命令会直接安装最新版本的tensorflow,如果需要安装制定版本的,则需要指定版本号如“pip3 install tensorflow==1.7”
D、卸载TensorFlow
如果需要卸载tensorflow,则直接反激活并删除文件夹即可
(venv3) $ deactivate # stop the virtualenv
(venv3) $ rm -r ~/tensorflow/venv
5、Tensorflow环境搭建完成以后还需要安装一些依赖库:
(venv3) $ pip3 install matplotlib
(venv3) $ pip3 install mkl
(venv3) $ pip3 install numpy
(venv3) $ pip3 install pillow
(venv3) $ pip3 install scipy
6、测试FCN Demo
将下载的FCN工程存放至用户目录,在用户目录下新建两个文件夹:Model_zoo/和Data_zoo/MIT_SceneParsing/(FCN.py文件中19&21行代码指定),将imagenet-vgg-verydeep-19.mat文件放置在Model_zoo/下,ADEChallengeData2016.zip压缩包解压在Data_zoo/MIT_SceneParsing/。数据配置完成。直接在在激活的TensorFlow环境下运行FCN.py即可开始训练了。
(venv3) $ python FCN.py
注:创建文件夹并将数据放置在文件夹下需要在Ubuntu下操作,若在Windows环境下创建文件夹并移动解压数据会出现ValueError: Cannot feed value of shape (0,) for Tensor 'input_image:0', which has shape '(?, 200, 200, 3)'报错。
在这里贴一张正机器在训练的图片
本文内容只是关于如何搭建测试FCN Demo,对于代码本身的讲解和FCN网络的理解可以参考链接4和5
最后我把整个Demo工程和源数据下载打包上传到百度云,有需要的童鞋可以直接下载
链接:https://pan.baidu.com/s/1uJFWwEydA_ilgT9INMHnXg 密码:zjq7
参考链接:
1、shekkizh/FCN.tensorflow
2、开源|如何利用Tensorflow实现语义分割全卷积网络(附源码)
3、Tensoflow学习记录13--用深度学习来做图像分割Fully Convolutional Networks for Semantic Segmentation (FCNs)
4、FCN.tensorflow(1):FCN.py
5、Fully Convolutional Networks for Semantic Segmentation
6、windows7 + python3.6 + TensorFlow实现FCN
7、在 Ubuntu 上安装 TensorFlow(官方指导文档)
这篇关于ubuntu 18.04下搭建FCN Demo测试环境(Tensorflow)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!