# 零基础mac安装并实现图像风格迁移
## 第1步:安装Anaconda
- 说明:使用paddlepaddle需要先安装python环境,这里我们选择python集成环境Anaconda工具包
- Anaconda是1个常用的python包管理程序
- 安装完Anaconda后,可以安装python环境,以及numpy等所需的工具包环境
- **下载Anaconda**:
- 下载地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D
-
- 选择适合您操作系统的版本
- 可在终端输入`uname -m`查询系统所用的指令集
- 下载法1:本地下载,再将安装包传到linux服务器上
- 下载法2:直接使用linux命令行下载
- ```shell
# 首先安装wget
sudo apt-get install wget # Ubuntu
sudo yum install wget # CentOS
```
- ```shell
# 然后使用wget从清华源上下载
# 如要下载Anaconda3-2021.05-Linux-x86_64.sh,则下载命令如下:
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.05-Linux-x86_64.sh
# 若您要下载其他版本,需要将最后1个/后的文件名改成您希望下载的版本
```
- 安装Anaconda:
- 在命令行输入`sh Anaconda3-2021.05-Linux-x86_64.sh`
- 若您下载的是其它版本,则将该命令的文件名替换为您下载的文件名
- 按照安装提示安装即可
- 查看许可时可输入q来退出
- **将conda加入环境变量**
- 加入环境变量是为了让系统能识别conda命令,若您在安装时已将conda加入环境变量path,则可跳过本步
- 在终端中打开`~/.bashrc`:
- ```shell
# 在终端中输入以下命令:
vim ~/.bashrc
```
- 在`~/.bashrc`中将conda添加为环境变量:
- ```shell
# 先按i进入编辑模式
# 在第一行输入:
export PATH="~/anaconda3/bin:$PATH"
# 若安装时自定义了安装位置,则将~/anaconda3/bin改为自定义的安装目录下的bin文件夹
```
- ```shell
# 修改后的~/.bash_profile文件应如下(其中xxx为用户名):
export PATH="~/opt/anaconda3/bin:$PATH"
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/Users/xxx/opt/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/Users/xxx/opt/anaconda3/etc/profile.d/conda.sh" ]; then
. "/Users/xxx/opt/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/Users/xxx/opt/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
```
- 修改完成后,先按`esc`键退出编辑模式,再输入`:wq!`并回车,以保存退出
- 验证是否能识别conda命令:
- 在终端中输入`source ~/.bash_profile`以更新环境变量
- 再在终端输入`conda info --envs`,若能显示当前有base环境,则conda已加入环境变量
## 第2步:创建conda环境
- 创建新的conda环境
- ```shell
# 在命令行输入以下命令,创建名为paddle_env的环境
# 此处为加速下载,使用清华源
conda create --name paddle_env python=3.8 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
```
- 该命令会创建1个名为paddle_env、python版本为3.8的可执行环境,根据网络状态,需要花费一段时间
- 之后命令行中会输出提示信息,输入y并回车继续安装
-
- 激活刚创建的conda环境,在命令行中输入以下命令:
- ```shell
# 激活paddle_env环境
conda activate paddle_env
```
- 以上anaconda环境和python环境安装完毕
## 第3步:安装程序所需要库
- 使用pip命令在刚激活的环境中安装paddle:
- ```shell
# 在命令行中输入以下命令:
# 默认安装CPU版本,安装paddle时建议使用百度源
pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
```
- 安装完paddle后,继续在paddle_env环境中安装paddlehub:
- ```shell
# 在命令行中输入以下命令:
pip install paddlehub -i https://mirror.baidu.com/pypi/simple
```
- paddlehub的介绍文档:https://github.com/PaddlePaddle/PaddleHub/blob/release/v2.1/README_ch.md
- 安装paddlehub时会自动安装其它依赖库,可能需要花费一段时间
## 第4步:安装paddlehub并下载模型
- 安装完paddlehub后,下载风格迁移模型:
- ```shell
# 在命令行中输入以下命令
hub install stylepro_artistic==1.0.1
```
- 模型的说明文档:[https://www.paddlepaddle.org.cn/hubsearch?filter=en_category&value=%7B%22scenes%22%3A%5B%22GANs%22%5D%7D](https://www.paddlepaddle.org.cn/hubsearch?filter=en_category&value={"scenes"%3A["GANs"]})
-
## 第5步:准备风格迁移数据和代码
### 准备风格迁移数据
- 在用户目录~下,创建工作目录`style_transfer`
- ```shell
# 在终端中输入以下命令:
cd ~ # 进入用户目录
mkdir style_transfer # 创建style_transfer文件夹
cd style_transfer # 进入style_transfer目录
```
- 分别放置待转换图片和风格图片:
- 将待转换图片放置到`~/style_transfer/pic.jpg`
-
- 将风格图片放置到`~/style_transfer/fangao.jpg`
-
### 代码
- 创建代码文件:
- ```shell
# 以下命令均在命令行执行
$ pwd # 查看当前目录是否为style_transfer,若不是则输入:cd ~/style_transfer
$ touch style_transfer.py # 创建空文件
$ vim style_transfer.py # 使用vim编辑器打开代码文件
# 先输入i进入编辑模式
# 将代码拷贝进vim编辑器中
# 按esc键退出编辑模式,再输入":wq"并回车,以保存并退出
```
- ```python
# 代码
import paddlehub as hub
import cv2
# 待转换图片的相对地址
picture = './pic.jpg'
# 风格图片的相对地址
style_image = './fangao.jpg'
# 创建风格转移网络并加载参数
stylepro_artistic = hub.Module(name="stylepro_artistic")
# 读入图片并开始风格转换
result = stylepro_artistic.style_transfer(
images=[{'content': cv2.imread(picture),
'styles': [cv2.imread(style_image)]}],
visualization=True
)
```
- 运行代码:
- 在命令行中,输入`python style_transfer.py`
- 程序执行时,会创建新文件夹`transfer_result`,并将转换后的文件保存到该目录下
- 输出的图片如下:
-
## 第6步:飞桨预训练模型探索之旅
- 恭喜你,到这里PaddleHub在windows环境下的安装和入门案例就全部完成了,快快开启你更多的深度学习模型探索之旅吧。[【更多模型探索,跳转飞桨官网】](https://www.paddlepaddle.org.cn/hublist)