Ubuntu下全卷积神经网络(FCN)框架的配置和基本使用

Ubuntu下FCN的配置和基本使用

因为要尝试用全卷积神经网络(FCN)做文字的检测和分割,又重拾起FCN框架;相比半年前使用FCN,github上已经有现成的FCN调用接口了(赞一个),用起来会省心一些。

  • 配置Caffe
  • 配置FCN
  • 编译FCN
  • FCN基本使用:训练和预测

配置Caffe

  • 目前的FCN是基于Caffe-master的;只需要在Caffe里添加一些python调用脚本就可以使用了。
  • 关于Caffe的配置,可以看这里。
  • Caffe配置好以后,可以复制一份用于FCN(命名为FCN),另一份作为Caffe-master的备份

以上是Caffe的配置

配置FCN

  • 下载FCN源码
    • 方式1:用谷歌/baidu 搜“caffe github”,找到shelhamer的页面,下载zip 包,自行解压
    • 方式2:在终端运行 git clone --recursive https://github.com/shelhamer/fcn.berkeleyvision.org,直接clone到本地
  • 将下载好的fcn源码放到FCN根目录下
  • 更改Makefile.config
    • WITH_PYTHON_LAYER := 1
  • 安装fcn依赖库
    • 下载的fcn代码中,有的文件(eg. surgery.py)的路径,需要自己添加到环境变量中
      – home目录下运行vim .bashrc
      – PYTHONPATH路径添加 export PYTHONPATH=/home/archer/FCN/fcn:$PYTHONPATH
      – .bashrc中完整的python路径应该是这样的:export PYTHONPATH=/home/archer/FCN/python:/home/archer/FCN/fcn:$PYTHONPATH
    • 另外引用到的一些库则需要自己安装,请根据提示安装(这个时候用anaconda就比较方便了,anaconda找不到的库,就用pip)

以上是FCN的配置

编译FCN

这个就和Caffe编译一样了。
matlab和python也要重新编译一遍。

以上是FCN的编译

FCN基本使用:训练和预测

  • 前期准备
    – 在FCN根目录下新建一个文件夹(比如TD)
    – 在下载的fcn文件夹中随便找一个文件夹(比如voc-fcn8s),将其中的sovle.py,solve.prototxt以及train.prototxt等全部拷贝到TD文件夹
    – 修改solve.py中关于caffemodel和prototxt文件等等的路径
    – 修改train和test的prototxt中python_param下的其中一项参数为 layer: "VOCSegDataLayer" (貌似下载的fcn中只有这个类型的py文件)

  • 训练

    • FCN根目录下直接使用命令:
      python TD/solve.py
  • 预测
    • 目前我是在网上找的别人写好的脚本
    • 能做到基本的预测了,可以在此基础上实现自己想要的效果

以上就把FCN基本配好了。

可能自己实际操作中还会遇到一些问题;别急躁,只要以上几步都完成了,那么你已经成功一大半了,遇到问题请耐心在网上搜索(推荐用google),你遇到的问题,别人应该都有讨论到,会得到解决的,加油!

你可能感兴趣的:(ubuntu,FCN,全卷积神经网络,安装-使用)