environment.md 12.9 KB
Newer Older
qq_25193841's avatar
qq_25193841 已提交
1
# 运行环境准备
L
LDOUBLEV 已提交
2

G
grasswolfs 已提交
3 4
Windows和Mac用户推荐使用Anaconda搭建Python环境,Linux用户建议使用docker搭建PyThon环境。

L
LDOUBLEV 已提交
5 6 7 8 9 10
推荐环境:
- PaddlePaddle >= 2.0.0 (2.1.2)
- python3.7
- CUDA10.1 / CUDA10.2
- CUDNN 7.6

G
grasswolfs 已提交
11
如果对于Python环境熟悉的用户可以直接跳到第2步安装PaddlePaddle。
qq_25193841's avatar
qq_25193841 已提交
12

qq_25193841's avatar
qq_25193841 已提交
13 14 15 16 17
* [1. Python环境搭建](#1)
  + [1.1 Windows](#1.1)
  + [1.2 Mac](#1.2)
  + [1.3 Linux](#1.3)
* [2. 安装PaddlePaddle](#2)
L
LDOUBLEV 已提交
18
* [3. 安装PaddleOCR依赖](#3)
qq_25193841's avatar
qq_25193841 已提交
19 20 21 22 23 24 25 26 27 28

<a name="1"></a>

## 1. Python环境搭建

<a name="1.1"></a>

### 1.1 Windows

#### 1.1.1 安装Anaconda
qq_25193841's avatar
qq_25193841 已提交
29 30 31 32 33 34 35 36

- 说明:使用paddlepaddle需要先安装python环境,这里我们选择python集成环境Anaconda工具包
  - Anaconda是1个常用的python包管理程序
  - 安装完Anaconda后,可以安装python环境,以及numpy等所需的工具包环境。
- Anaconda下载:
  - 地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D
  - 大部分win10电脑均为64位操作系统,选择x86_64版本;若电脑为32位操作系统,则选择x86.exe

37
    <img src="../install/windows/Anaconda_download.png" alt="anaconda download" width="800" align="center"/>
qq_25193841's avatar
qq_25193841 已提交
38 39 40
  - 下载完成后,双击安装程序进入图形界面
  - 默认安装位置为C盘,建议将安装位置更改到D盘:

41
    <img src="../install/windows/anaconda_install_folder.png" alt="install config" width="500" align="center"/>
qq_25193841's avatar
qq_25193841 已提交
42 43
  - 勾选conda加入环境变量,忽略警告:

44
    <img src="../install/windows/anaconda_install_env.png" alt="add conda to path" width="500" align="center"/>
qq_25193841's avatar
qq_25193841 已提交
45

qq_25193841's avatar
qq_25193841 已提交
46
#### 1.1.2 打开终端并创建conda环境
qq_25193841's avatar
qq_25193841 已提交
47 48 49

- 打开Anaconda Prompt终端:左下角Windows Start Menu -> Anaconda3 -> Anaconda Prompt启动控制台

50
  <img src="../install/windows/anaconda_prompt.png" alt="anaconda download" width="300" align="center"/>
qq_25193841's avatar
qq_25193841 已提交
51 52 53 54 55 56 57 58 59 60 61 62 63 64


- 创建新的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并回车继续安装

65
  <img src="../install/windows/conda_new_env.png" alt="conda create" width="700" align="center"/>
qq_25193841's avatar
qq_25193841 已提交
66 67 68 69 70 71 72 73 74 75

- 激活刚创建的conda环境,在命令行中输入以下命令:

  ```shell
  # 激活paddle_env环境
  conda activate paddle_env
  # 查看当前python的位置
  where python
  ```

76
    <img src="../install/windows/conda_list_env.png" alt="create environment" width="600" align="center"/>
G
grasswolfs 已提交
77 78 79



qq_25193841's avatar
qq_25193841 已提交
80 81 82

以上anaconda环境和python环境安装完毕

qq_25193841's avatar
qq_25193841 已提交
83
<a name="1.2"></a>
qq_25193841's avatar
qq_25193841 已提交
84

qq_25193841's avatar
qq_25193841 已提交
85
### 1.2 Mac
qq_25193841's avatar
qq_25193841 已提交
86

qq_25193841's avatar
qq_25193841 已提交
87
#### 1.2.1 安装Anaconda
qq_25193841's avatar
qq_25193841 已提交
88 89 90 91 92 93

- 说明:使用paddlepaddle需要先安装python环境,这里我们选择python集成环境Anaconda工具包
  - Anaconda是1个常用的python包管理程序
  - 安装完Anaconda后,可以安装python环境,以及numpy等所需的工具包环境
- Anaconda下载:
  - 地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D
G
grasswolfs 已提交
94

95
  <img src="../install/mac/anaconda_start.png" alt="anaconda download" width="800" align="center"/>
G
grasswolfs 已提交
96

qq_25193841's avatar
qq_25193841 已提交
97 98 99 100 101
  - 选择最下方的`Anaconda3-2021.05-MacOSX-x86_64.pkg`下载
- 下载完成后,双击.pkg文件进入图形界面
  - 按默认设置即可,安装需要花费一段时间
- 建议安装vscode或pycharm等代码编辑器

qq_25193841's avatar
qq_25193841 已提交
102
#### 1.2.2 打开终端并创建conda环境
qq_25193841's avatar
qq_25193841 已提交
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133

- 打开终端

  - 同时按下command键和空格键,在聚焦搜索中输入"终端",双击进入终端

- **将conda加入环境变量**

  - 加入环境变量是为了让系统能识别conda命令

  - 输入以下命令,在终端中打开`~/.bash_profile`

     ```shell
     vim ~/.bash_profile
     ```

  -`~/.bash_profile`中将conda添加为环境变量:

     ```shell
     # 先按i进入编辑模式
     # 在第一行输入:
     export PATH="~/opt/anaconda3/bin:$PATH"
     # 若安装时自定义了安装位置,则将~/opt/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
L
LDOUBLEV 已提交
134
            eval "$__conda_setup"
qq_25193841's avatar
qq_25193841 已提交
135
    else
L
LDOUBLEV 已提交
136 137 138 139 140
            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
qq_25193841's avatar
qq_25193841 已提交
141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164
    fi
    unset __conda_setup
    # <<< conda initialize <<<
    ```

    - 修改完成后,先按`esc`键退出编辑模式,再输入`:wq!`并回车,以保存退出

  - 验证是否能识别conda命令:

    - 在终端中输入`source ~/.bash_profile`以更新环境变量
    - 再在终端输入`conda info --envs`,若能显示当前有base环境,则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并回车继续安装

165
    - <img src="../install/mac/conda_create.png" alt="conda_create" width="600" align="center"/>
qq_25193841's avatar
qq_25193841 已提交
166 167 168 169 170 171 172 173 174 175

- 激活刚创建的conda环境,在命令行中输入以下命令:

  ```shell
  # 激活paddle_env环境
  conda activate paddle_env
  # 查看当前python的位置
  where python
  ```

176
  <img src="../install/mac/conda_activate.png" alt="conda_actviate" width="600" align="center"/>
qq_25193841's avatar
qq_25193841 已提交
177 178 179

以上anaconda环境和python环境安装完毕

qq_25193841's avatar
qq_25193841 已提交
180
<a name="1.3"></a>
qq_25193841's avatar
qq_25193841 已提交
181

qq_25193841's avatar
qq_25193841 已提交
182
### 1.3 Linux
qq_25193841's avatar
qq_25193841 已提交
183

qq_25193841's avatar
qq_25193841 已提交
184
Linux用户可选择Anaconda或Docker两种方式运行。如果你熟悉Docker且需要训练PaddleOCR模型,推荐使用Docker环境,PaddleOCR的开发流程均在Docker环境下运行。如果你不熟悉Docker,也可以使用Anaconda来运行项目。
qq_25193841's avatar
qq_25193841 已提交
185

qq_25193841's avatar
qq_25193841 已提交
186
#### 1.3.1 Anaconda环境配置
qq_25193841's avatar
qq_25193841 已提交
187 188 189 190

- 说明:使用paddlepaddle需要先安装python环境,这里我们选择python集成环境Anaconda工具包
  - Anaconda是1个常用的python包管理程序
  - 安装完Anaconda后,可以安装python环境,以及numpy等所需的工具包环境
G
grasswolfs 已提交
191

qq_25193841's avatar
qq_25193841 已提交
192 193 194
- **下载Anaconda**

  - 下载地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D
195
    <img src="../install/linux/anaconda_download.png" akt="anaconda download" width="800" align="center"/>
qq_25193841's avatar
qq_25193841 已提交
196 197

    - 选择适合您操作系统的版本
198
    - 可在终端输入`uname -m`查询系统所用的指令集
G
grasswolfs 已提交
199

200
- 下载法1:本地下载,再将安装包传到linux服务器上
G
grasswolfs 已提交
201

202
- 下载法2:直接使用linux命令行下载
G
grasswolfs 已提交
203

204
  ```shell
qq_25193841's avatar
qq_25193841 已提交
205
    # 首先安装wget
206
  sudo apt-get install wget  # Ubuntu
qq_25193841's avatar
qq_25193841 已提交
207
    sudo yum install wget  # CentOS
208
  ```
G
grasswolfs 已提交
209

210
  ```shell
qq_25193841's avatar
qq_25193841 已提交
211
    # 然后使用wget从清华源上下载
212
  # 如要下载Anaconda3-2021.05-Linux-x86_64.sh,则下载命令如下:
qq_25193841's avatar
qq_25193841 已提交
213
    wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.05-Linux-x86_64.sh
G
grasswolfs 已提交
214

215
  # 若您要下载其他版本,需要将最后1个/后的文件名改成您希望下载的版本
qq_25193841's avatar
qq_25193841 已提交
216 217 218 219 220 221 222 223
    ```

- 安装Anaconda:

  - 在命令行输入`sh Anaconda3-2021.05-Linux-x86_64.sh`
    - 若您下载的是其它版本,则将该命令的文件名替换为您下载的文件名
  - 按照安装提示安装即可
    - 查看许可时可输入q来退出
G
grasswolfs 已提交
224

qq_25193841's avatar
qq_25193841 已提交
225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273
- **将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已加入环境变量

- 创建新的conda环境

   ```shell
qq_25193841's avatar
qq_25193841 已提交
274 275 276
   # 在命令行输入以下命令,创建名为paddle_env的环境
   # 此处为加速下载,使用清华源
   conda create --name paddle_env python=3.8 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
qq_25193841's avatar
qq_25193841 已提交
277 278 279 280 281 282
   ```

  - 该命令会创建1个名为paddle_env、python版本为3.8的可执行环境,根据网络状态,需要花费一段时间

  - 之后命令行中会输出提示信息,输入y并回车继续安装

283
    <img src="../install/linux/conda_create.png" alt="conda_create" width="500" align="center"/>
qq_25193841's avatar
qq_25193841 已提交
284 285 286 287

- 激活刚创建的conda环境,在命令行中输入以下命令:

  ```shell
qq_25193841's avatar
qq_25193841 已提交
288 289
  # 激活paddle_env环境
  conda activate paddle_env
qq_25193841's avatar
qq_25193841 已提交
290
  ```
G
grasswolfs 已提交
291

qq_25193841's avatar
qq_25193841 已提交
292

qq_25193841's avatar
qq_25193841 已提交
293 294 295 296
以上anaconda环境和python环境安装完毕

#### 1.3.2 Docker环境配置

G
grasswolfs 已提交
297
**注意:第一次使用这个镜像,会自动下载该镜像,请耐心等待。您也可以访问[DockerHub](https://hub.docker.com/r/paddlepaddle/paddle/tags/)获取与您机器适配的镜像。**
qq_25193841's avatar
qq_25193841 已提交
298

qq_25193841's avatar
qq_25193841 已提交
299
```bash
qq_25193841's avatar
qq_25193841 已提交
300 301 302 303 304 305 306 307 308 309 310 311 312 313
# 切换到工作目录下
cd /home/Projects
# 首次运行需创建一个docker容器,再次运行时不需要运行当前命令
# 创建一个名字为ppocr的docker容器,并将当前目录映射到容器的/paddle目录下

如果您希望在CPU环境下使用docker,使用docker而不是nvidia-docker创建docker
sudo docker run --name ppocr -v $PWD:/paddle --network=host -it paddlepaddle/paddle:latest-dev-cuda10.1-cudnn7-gcc82 /bin/bash

如果使用CUDA10,请运行以下命令创建容器,设置docker容器共享内存shm-size为64G,建议设置32G以上
sudo nvidia-docker run --name ppocr -v $PWD:/paddle --shm-size=64G --network=host -it paddlepaddle/paddle:latest-dev-cuda10.1-cudnn7-gcc82 /bin/bash

# ctrl+P+Q可退出docker 容器,重新进入docker 容器使用如下命令
sudo docker container exec -it ppocr /bin/bash
```
L
fix_doc  
LDOUBLEV 已提交
314

L
LDOUBLEV 已提交
315 316 317 318 319 320 321 322
docker 环境中默认的python3 版本为python3.5,PaddleOCR 建议使用Python3.7,在执行python命令时,可以使用python3.7而不是python3。如下,输入python3.7命令并回车,可以看到使用的是python3.7版本。
```
λ root@Linux /paddle  python3.7
Python 3.7.0 (default, Aug  2 2021, 05:30:22)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
```
qq_25193841's avatar
qq_25193841 已提交
323 324 325 326 327 328 329 330

<a name="2"></a>

## 2. 安装PaddlePaddle

- 如果您的机器安装的是CUDA9或CUDA10,请运行以下命令安装

```bash
L
fix_doc  
LDOUBLEV 已提交
331
# use python3.7 instead of python3 in docker
qq_25193841's avatar
qq_25193841 已提交
332 333 334 335 336 337
python3 -m pip install paddlepaddle-gpu -i https://mirror.baidu.com/pypi/simple
```

- 如果您的机器是CPU,请运行以下命令安装

```bash
L
fix_doc  
LDOUBLEV 已提交
338
# use python3.7 instead of python3 in docker
qq_25193841's avatar
qq_25193841 已提交
339 340 341 342 343
python3 -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
```

更多的版本需求,请参照[飞桨官网安装文档](https://www.paddlepaddle.org.cn/install/quick)中的说明进行操作。

L
LDOUBLEV 已提交
344 345 346 347 348 349 350 351
<a name="3"></a>
## 3. 安装PaddleOCR依赖

下载paddleOCR 代码
```
【推荐】git clone https://github.com/PaddlePaddle/PaddleOCR

如果因为网络问题无法pull成功,也可选择使用码云上的托管:
qq_25193841's avatar
qq_25193841 已提交
352

L
LDOUBLEV 已提交
353
git clone https://gitee.com/paddlepaddle/PaddleOCR
qq_25193841's avatar
qq_25193841 已提交
354

L
LDOUBLEV 已提交
355 356
注:码云托管代码可能无法实时同步本github项目更新,存在3~5天延时,请优先使用推荐方式。
```
qq_25193841's avatar
qq_25193841 已提交
357

L
LDOUBLEV 已提交
358 359 360 361 362 363 364
安装PaddleOCR 依赖
```
cd PaddleOCR
pip3 install -r requirements.txt
# docker 中使用pip3.7 代替pip3
# pip3.7 install -r requirements.txt
```
qq_25193841's avatar
qq_25193841 已提交
365

L
LDOUBLEV 已提交
366
注意,windows环境下,建议从[这里](https://www.lfd.uci.edu/~gohlke/pythonlibs/#shapely)下载shapely安装包完成安装, 直接通过pip安装的shapely库可能出现[winRrror 126] 找不到指定模块的问题。