environment.md 12.8 KB
Newer Older
Leif's avatar
Leif committed
1
# 运行环境准备
LDOUBLEV's avatar
LDOUBLEV committed
2

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

LDOUBLEV's avatar
LDOUBLEV committed
5
6
7
8
9
10
推荐环境:
- PaddlePaddle >= 2.0.0 (2.1.2)
- python3.7
- CUDA10.1 / CUDA10.2
- CUDNN 7.6

11
如果对于Python环境熟悉的用户可以直接跳到第2步安装PaddlePaddle。
Leif's avatar
Leif committed
12

Leif's avatar
Leif committed
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)
LDOUBLEV's avatar
LDOUBLEV committed
18
* [3. 安装PaddleOCR依赖](#3)
Leif's avatar
Leif committed
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
Leif's avatar
Leif committed
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

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

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

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

Leif's avatar
Leif committed
46
#### 1.1.2 打开终端并创建conda环境
Leif's avatar
Leif committed
47
48
49

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

Leif's avatar
Leif committed
50
  <img src="../install/windows/anaconda_prompt.png" alt="anaconda download" width="300" align="center"/>
Leif's avatar
Leif committed
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并回车继续安装

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

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

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

Leif's avatar
Leif committed
76
    <img src="../install/windows/conda_list_env.png" alt="create environment" width="600" align="center"/>
77
78
79



Leif's avatar
Leif committed
80
81
82

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

Leif's avatar
Leif committed
83
<a name="1.2"></a>
Leif's avatar
Leif committed
84

Leif's avatar
Leif committed
85
### 1.2 Mac
Leif's avatar
Leif committed
86

Leif's avatar
Leif committed
87
#### 1.2.1 安装Anaconda
Leif's avatar
Leif committed
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
94

Leif's avatar
Leif committed
95
  <img src="../install/mac/anaconda_start.png" alt="anaconda download" width="800" align="center"/>
96

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

Leif's avatar
Leif committed
102
#### 1.2.2 打开终端并创建conda环境
Leif's avatar
Leif committed
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
LDOUBLEV's avatar
LDOUBLEV committed
134
            eval "$__conda_setup"
Leif's avatar
Leif committed
135
    else
LDOUBLEV's avatar
LDOUBLEV committed
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
Leif's avatar
Leif committed
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并回车继续安装

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

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

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

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

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

Leif's avatar
Leif committed
180
<a name="1.3"></a>
Leif's avatar
Leif committed
181

Leif's avatar
Leif committed
182
### 1.3 Linux
Leif's avatar
Leif committed
183

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

Leif's avatar
Leif committed
186
#### 1.3.1 Anaconda环境配置
Leif's avatar
Leif committed
187
188
189
190

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

Leif's avatar
Leif committed
192
193
194
- **下载Anaconda**

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

    - 选择适合您操作系统的版本
Leif's avatar
Leif committed
198
    - 可在终端输入`uname -m`查询系统所用的指令集
199

Leif's avatar
Leif committed
200
- 下载法1:本地下载,再将安装包传到linux服务器上
201

Leif's avatar
Leif committed
202
- 下载法2:直接使用linux命令行下载
203

Leif's avatar
Leif committed
204
  ```shell
Leif's avatar
Leif committed
205
    # 首先安装wget
Leif's avatar
Leif committed
206
  sudo apt-get install wget  # Ubuntu
Leif's avatar
Leif committed
207
    sudo yum install wget  # CentOS
Leif's avatar
Leif committed
208
  ```
209

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

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

- 安装Anaconda:

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

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

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

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

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

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

  ```shell
Leif's avatar
Leif committed
288
289
  # 激活paddle_env环境
  conda activate paddle_env
Leif's avatar
Leif committed
290
  ```
291

Leif's avatar
Leif committed
292

Leif's avatar
Leif committed
293
294
295
296
以上anaconda环境和python环境安装完毕

#### 1.3.2 Docker环境配置

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

Leif's avatar
Leif committed
299
```bash
Leif's avatar
Leif committed
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
```
LDOUBLEV's avatar
LDOUBLEV committed
314
315
316
317
318
319
320
321
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.
>>>
```
Leif's avatar
Leif committed
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340

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

## 2. 安装PaddlePaddle

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

```bash
python3 -m pip install paddlepaddle-gpu -i https://mirror.baidu.com/pypi/simple
```

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

```bash
python3 -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
```

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

LDOUBLEV's avatar
LDOUBLEV committed
341
342
343
344
345
346
347
348
<a name="3"></a>
## 3. 安装PaddleOCR依赖

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

如果因为网络问题无法pull成功,也可选择使用码云上的托管:
Leif's avatar
Leif committed
349

LDOUBLEV's avatar
LDOUBLEV committed
350
git clone https://gitee.com/paddlepaddle/PaddleOCR
Leif's avatar
Leif committed
351

LDOUBLEV's avatar
LDOUBLEV committed
352
353
注:码云托管代码可能无法实时同步本github项目更新,存在3~5天延时,请优先使用推荐方式。
```
Leif's avatar
Leif committed
354

LDOUBLEV's avatar
LDOUBLEV committed
355
356
357
358
359
360
361
安装PaddleOCR 依赖
```
cd PaddleOCR
pip3 install -r requirements.txt
# docker 中使用pip3.7 代替pip3
# pip3.7 install -r requirements.txt
```
Leif's avatar
Leif committed
362

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