Anaconda 部署 TensorFlow 及试运行 style-transfer

从本文开始,是我在 Udacity 上学习 Deep Learning 的学习笔记和心得,本次记录的是在 Windows 10 64位系统通过 Anaconda 搭建简单的 Deep Learning 平台并且运行 TensorFlow.

需要的程序及安装方法

Anaconda 是开源的 Python 和 R 语言的工作环境包,属于那种安装后可以有专门的 GUI 负责管理整个开发环境,因此可以在后期开发中节省大量时间,不需要再去担心什么依赖问题等。

请在 Anaconda 官网下载最新的64位的安装包,注意 Python 版本大于3.5

下载后请直接安装,并且注意将 Anaconda 添加到系统变量(默认添加,安装时注意看一下就行)

TensorFlow 是 Google Brain 团队开发的开源机器学习库,在大量志愿者的帮助下,现在 TensorFlow 已经在语音识别,计算机视觉等方面有着大量的轮子可供使用。同时,TensorFlow 开启了对 CUDA 的支持,可以节省大量机器学习的时间。PS, 本文目前只会讲 CPU only 版本的安装方式, GPU enabled 版本有机会再写。

目前在 Windows 环境下相对较简单的安装方式就是通过 Anaconda, 将要安装过程是:

  • 在 Anaconda 中新建一个 Tensorflow 环境,可以通过 Anaconda 安装时附带的 Anaconda Navigator 直接鼠标点点点新建,注意 Python 版本请选择3.5 (或者更旧的2.7),而不是最新的3.6。当然你也可以通过 Terminal 进行新建,只需要在 Terminal 中键入运行下面一行代码就可以了:
#下面的 tensorflow 可以替换成自己想要的名字
conda create -n tensorflow python=3.5 

  • 根据屏幕提示安装完成后进入 Tensorflow 输入下列代码激活 Tensorflow 虚拟空间,本步骤也能直接通过 Anaconda Navigator 进入:
#下面是在 Terminal 中激活虚拟环境的代码
activate tensorflow
#下面是不再使用 Tensorflow 而进行关闭的代码
source deactivate style-transfer
  •  正式安装 TensorFlow, 如果想要完成后面的 demo, 请一并安装 Scipy :
#利用 conda 命令安装 tensorflow 的语句
conda install -c conda-forge tensorflow
#利用 conda 命令安装 scipy 的语句
conda install scipy pillow

 逐行运行上述代码就会安装成功,屏幕显示如下:

 运行首个 Tensorflow 实例

我们将 fast-style-transfer 作为我们要运行的demo,fast-style-transfer 就是前段时间很火的一件将自己的照片变成世界名画风格的背后核心。

当然比较牛逼的事,这个神经网络的成果是可以的处理视频的,效果就像上面 gif 动图一样,如果有梯子可以直接点击图片查看完整的演示视频。

那么要怎么做才能把自己的照片通过 fast-style-transfer 转换的有逼格的油画风格呢?

  • 首先,去 fast-style-transfer 的官方 Github 页面下载整个项目的 zip 压缩包,并解压到一个地方。
  • 点击这里下载 Rain Princess 风格的 ckpt 训练档,当然你也可以翻墙到这里下载别的风格训练档。这些风格训练档是大牛们利用 fast-style-transfer 对相应的名画已经做好了训练,我们可以直接使用,就无需再花费大量时间训练一遍了。下载的 ckpt 需要放在 fast-style-transfer 的根目录下面。
  • 把你想装逼的照片扔到 fast-style-transfer 根目录里面。
  • 进入我们上文提到的 Tensorflow 虚拟环境。
  • 在 Terminal 里面导航(就是 cd 命令什么的)到 fast-style-transfer 根目录,键入以下命令开始装逼:
#请将下面的<path_to_into_file>整体改成你的图片名字,如 abc.jpg,如果你是使用其他 ckpt 文件,将 rain-princess.cpkt 也一并修改了。
python evaluate.py --checkpoint ./rain-princess.ckpt --in-path <path_to_input_file> --out-path ./output_image.jpg

这里有完成运行的示例:

Before

Rain Princess

After
reference