风格迁移项目实战教程

版权声明:本文为博主原创文章,转载请附上链接出处。 https://blog.csdn.net/allen_li123/article/details/79244431

风格迁移项目实战教程

标签: 机器学习


先来看看对比图:
对比图

需要:

(配置环境应该是最麻烦的一步)

1.操作系统:ubuntu(没有安装的找百度安装吧,这里就不详细说明了)

2.其他需要:TensorFlow 0.11.0、Python 2.7.9、Pillow 3.4.2、scipy 0.18.1 和 numpy 1.11.2.
(在终端里面入以下代码)

conda create -n style-transfer python=3.5
activate style-transfer
pip install tensorflow
conda install scipy pillow

第一行创建一个新的环境,其中存储了格式迁移代码所需的程序包。第二行 (source activate style-transfer) 进入该环境,你应该会在提示符窗口的开头看到环境名称。接下来的两行负责安装 TensorFlow、Scipy 和 Pillow(一种图像处理库)。

3..安装Anaconda (文末有介绍)
参照这篇博客

2.风格迁移实现

  1. fast-style-transfer资源库中下载 Zip 归档文件并解压。你可以通过点击右侧的亮绿色按钮进行下载。
  2. 下载检查点文件(后面有附链接),将其放在 fast-style-transfer
    文件夹中。检查点文件是已经调谐参数的模型。使用此检查点文件后我们不需要再训练该模型,可以直接使用。
    将你要调整格式的图片放到 fast-style-transfer 文件夹。

  3. 进入你之前创建的 Conda 环境(如果不在里面的话)。

  4. 在终端里,转到 fast-style-transfer 文件夹并输入
    python evaluate.py --checkpoint ./rain-princess.ckpt --in-path <path_to_input_file> --out-path ./output_image.jpg

注意:你的检查点文件可能名称为rain_princess.ckpt,注意是下划线,而不是上面的连字符。

注意:替换为自己想训练图片的路径,而./output_image.jpg的意思是把生成图片放到当前文件夹中,而rain-princess.ckpt替换为自己想训练的检查点文件
注意:可能会提示No module named moviepy.video.io.VideoFIleclip,参照此处链接

备注

1.检查点链接

1.Rain Princesss作者:Leonid Afremov
2.La Muse作者:Pablo Picasso
3.Udnie作者:Francis Picabia
4.Scream作者:Edvard Munch
5.The Great Wave off Kanagawa作者:Hokusai
6.The Shipwreck of the Minotaur作者:J.M.W. Turner

2.关于Anaconda

1.Anaconda

Anaconda 能让你在数据科学的工作中轻松安装经常使用的程序包。你还将使用它创建虚拟环境,以便更轻松地处理多个项目。Anaconda 简化了工作流程,并且解决了多个包和 Python 版本之间遇到的大量问题。

Anaconda 实际上是一个软件发行版,它附带了 conda、Python 和 150 多个科学包及其依赖项。应用程序 conda 是包和环境管理器。Anaconda 的下载文件比较大(约 500 MB),因为它附带了 Python 中最常用的数据科学包。如果只需要某些包,或者需要节省带宽或存储空间,也可以使用 Miniconda 这个较小的发行版(仅包含 conda 和 Python)。但你仍可以使用 conda 来安装任何可用的包,它只是自身没有附带这些包而已。

conda 只能通过命令行来使用。因此,如果你觉得它很难用,可以参考面向 Windows 的命令提示符教程,或者学习面向 OSX/Linux 用户的 Linux 命令行基础知识课程。

你可能已经安装了 Python,并且想知道为何还需要 Anaconda。首先, Anaconda 附带了一大批常用数据科学包,因此你可以立即开始处理数据。其次,使用 conda 来管理包和环境能减少将来在处理数据过程中使用到的各种库与版本时遇到的问题。

管理包

包管理器用于在计算机上安装库和其他软件。你可能已经熟悉 pip,它是 Python 库的默认包管理器。conda 与 pip 相似,不同之处是可用的包以数据科学包为主,而 pip 适合一般用途。与此同时,conda 并非 像 pip 那样专门适用于 Python,它也可以安装非 Python 的包。它是支持 任何 软件的包管理器。也就是说,虽然并非所有的 Python 库都能通过 Anaconda 发行版和 conda 获得,但同时它也支持非 Python 库的获得。在使用 conda 的同时,你仍可以使用 pip 来安装包。

Conda 安装了预编译的包。例如,Anaconda 发行版附带了使用 MKL 库编译的 Numpy、Scipy 和 Scikit-learn,从而加快了各种数学运算的速度。这些包由发行版的贡献者维护,这意味着它们通常滞后于最新版本。但是,由于有人需要利用这些包来进行系统构建,因此它们往往更为稳定,而且也更便于你使用。

安装了 Anaconda 之后,管理包是相当简单的。要安装包,请在终端中键入 conda install package_name。例如,要安装 numpy,请键入 conda install numpy。

你还可以同时安装多个包。类似 conda install numpy scipy pandas 的命令会同时安装所有这些包。还可以通过添加版本号(例如 conda install numpy=1.10)来指定所需的包版本。

Conda 还会自动为你安装依赖项。例如,scipy 依赖于 numpy,因为它使用并需要 numpy。如果你只安装 scipy (conda install scipy),则 conda 还会安装 numpy(如果尚未安装的话)。

大多数命令都是很直观的。要卸载包,请使用 conda remove package_name。要更新包,请使用 conda update package_name。如果想更新环境中的所有包(这样做常常很有用),请使用 conda update –all。最后,要列出已安装的包,请使用前面提过的 conda list。

如果不知道要找的包的确切名称,可以尝试使用 conda search search_term 进行搜索。例如,我知道我想安装 Beautiful Soup,但我不清楚确切的包名称。因此,我尝试执行 conda search beautifulsoup。**

环境

除了管理包之外,conda 还是虚拟环境管理器。它类似于另外两个很流行的环境管理器,即 virtualenv 和 pyenv。

环境能让你分隔用于不同项目的包。你常常要使用依赖于某个库的不同版本的代码。例如,你的代码可能使用了 Numpy 中的新功能,或者使用了已删除的旧功能。实际上,不可能同时安装两个 Numpy 版本。你要做的应该是,为每个 Numpy 版本创建一个环境,然后项目的对应环境中工作。

在应对 Python 2 和 Python 3 时,此问题也会常常发生。你可能会使用在 Python 3 中不能运行的旧代码,以及在 Python 2 中不能运行的新代码。同时安装两个版本可能会造成许多混乱和错误,而创建独立的环境会好很多。

你也可以将环境中的包列表导出为文件,然后将该文件与代码包括在一起。这能让其他人轻松加载代码的所有依赖项。pip 提供了类似的功能,即 pip freeze > requirements.txt。

要创建环境,请在终端中使用 conda create -n env_name list of packages。在这里,-n env_name 设置环境的名称(-n 是指名称),而 list of packages 是要安装在环境中的包的列表。例如,要创建名为 my_env 的环境并在其中安装 numpy,请键入 conda create -n my_env numpy。

创建环境时,可以指定要安装在环境中的 Python 版本。这在你同时使用 Python 2.x 和 Python 3.x 中的代码时很有用。要创建具有特定 Python 版本的环境,请键入类似于 conda create -n py3 python=3 或 conda create -n py2 python=2 的命令。实际上,我在我的个人计算机上创建了这两个环境。我将它们用作与任何特定项目均无关的通用环境,以处理普通的工作(可轻松使用每个 Python 版本)。这些命令将分别安装 Python 3 和 Python 2 的最新版本。要安装特定版本(例如 Python 3.3),请使用 conda create -n py python=3.3。

进入环境

创建了环境后,在 OSX/Linux 上使用 source activate my_env 进入环境。在 Windows 上,请使用 activate my_env。

进入环境后,你会在终端提示符中看到环境名称,它类似于 (my_env) ~ $。环境中只安装了几个默认的包,以及你在创建它时安装的包。你可以使用 conda list 检查这一点。在环境中安装包的命令与前面一样:conda install package_name。不过,这次你安装的特定包仅在你进入环境后才可用。要离开环境,请键入 source deactivate(在 OSX/Linux 上)。在 Windows 上,请使用 deactivate。

NOTE:如果有其他问题,欢迎留言交流

猜你喜欢

转载自blog.csdn.net/allen_li123/article/details/79244431
今日推荐