environment_en.md 12.8 KB
Newer Older
Leif's avatar
Leif committed
1
2
# Environment Preparation

Leif's avatar
Leif committed
3
Windows and Mac users are recommended to use Anaconda to build a Python environment, and Linux users are recommended to use docker to build a Python environment. 
LDOUBLEV's avatar
LDOUBLEV committed
4

Leif's avatar
Leif committed
5
Recommended working environment:
Leif's avatar
Leif committed
6
- PaddlePaddle >= 2.1.2
fanruinet's avatar
fanruinet committed
7
8
9
- Python 3.7
- CUDA 10.1 / CUDA 10.2
- cuDNN 7.6
Leif's avatar
Leif committed
10

Leif's avatar
Leif committed
11
12
> If you already have a Python environment installed, you can skip to [PaddleOCR Quick Start](./quickstart_en.md).

Leif's avatar
Leif committed
13
14
15
16
* [1. Python Environment Setup](#1)
  + [1.1 Windows](#1.1)
  + [1.2 Mac](#1.2)
  + [1.3 Linux](#1.3)
LDOUBLEV's avatar
LDOUBLEV committed
17

Leif's avatar
Leif committed
18

Leif's avatar
Leif committed
19
20
21
22
23
24
25
26
27
28
<a name="1"></a>

## 1. Python Environment Setup

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

### 1.1 Windows

#### 1.1.1 Install Anaconda

fanruinet's avatar
fanruinet committed
29
- Note: To use PaddlePaddle you need to install python environment first, here we choose python integrated environment Anaconda toolkit
Leif's avatar
Leif committed
30
31
32
33
34
35
36
37
38
39

  - Anaconda is a common python package manager
  - After installing Anaconda, you can install the python environment, as well as numpy and other required toolkit environment.

- Anaconda download.

  - Address: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D

  - Most Win10 computers are 64-bit operating systems, choose x86_64 version; if the computer is a 32-bit operating system, choose x86.exe

Leif's avatar
Leif committed
40
    <img src="../install/windows/Anaconda_download.png" alt="anaconda download" width="800" align="center "/>
Leif's avatar
Leif committed
41
42
43
44
45
46
47

  - After the download is complete, double-click the installer to enter the graphical interface

  - The default installation location is C drive, it is recommended to change the installation location to D drive.

    <img src="../install/windows/anaconda_install_folder.png" alt="install config" width="500" align=" left"/>

fanruinet's avatar
fanruinet committed
48
  - Check Conda to add environment variables and ignore the warning that
Leif's avatar
Leif committed
49

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

Leif's avatar
Leif committed
52

fanruinet's avatar
fanruinet committed
53
#### 1.1.2 Opening the terminal and creating the Conda environment
Leif's avatar
Leif committed
54
55
56

- Open Anaconda Prompt terminal: bottom left Windows Start Menu -> Anaconda3 -> Anaconda Prompt start console

Leif's avatar
Leif committed
57
  <img src="../install/windows/anaconda_prompt.png" alt="anaconda download" width="300" align="center"/>
Leif's avatar
Leif committed
58
59


fanruinet's avatar
fanruinet committed
60
- Create a new Conda environment
Leif's avatar
Leif committed
61
62
63
64
65
66
67
68
69
70
71

  ```shell
  # Enter the following command at the command line to create an environment named paddle_env
  # Here to speed up the download, use the Tsinghua source
  conda create --name paddle_env python=3.8 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ # This is a one line command
  ```

  This command will create an executable environment named paddle_env with python version 3.8, which will take a while depending on the network status

  The command line will then output a prompt, type y and enter to continue the installation

Leif's avatar
Leif committed
72
  <img src="../install/windows/conda_new_env.png" alt="conda create" width="700" align="center"/>
Leif's avatar
Leif committed
73

fanruinet's avatar
fanruinet committed
74
- To activate the Conda environment you just created, enter the following command at the command line.
Leif's avatar
Leif committed
75
76
77
78
79
80
81

  ```shell
  # Activate the paddle_env environment
  conda activate paddle_env
  # View the current location of python
  where python
  ```
Leif's avatar
Leif committed
82

Leif's avatar
Leif committed
83
  <img src="../install/windows/conda_list_env.png" alt="create environment" width="600" align="center"/>
Leif's avatar
Leif committed
84
85
86
87
88
89
90
91
92
93
94

The above anaconda environment and python environment are installed



<a name="1.2"></a>

### 1.2 Mac

#### 1.2.1 Installing Anaconda

fanruinet's avatar
fanruinet committed
95
- Note: To use PaddlePaddle you need to install the python environment first, here we choose the python integrated environment Anaconda toolkit
Leif's avatar
Leif committed
96
97
98
99
100
101
102
103

  - Anaconda is a common python package manager
  - After installing Anaconda, you can install the python environment, as well as numpy and other required toolkit environment

- Anaconda download:.

  - Address: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D

Leif's avatar
Leif committed
104
  <img src="../install/mac/anaconda_start.png" alt="anaconda download" width="800" align="center"/>
Leif's avatar
Leif committed
105
106
107
108
109
110
111

  - Select `Anaconda3-2021.05-MacOSX-x86_64.pkg` at the bottom to download

- After downloading, double click on the .pkg file to enter the graphical interface

  - Just follow the default settings, it will take a while to install

fanruinet's avatar
fanruinet committed
112
- It is recommended to install a code editor such as VSCode or PyCharm
Leif's avatar
Leif committed
113

fanruinet's avatar
fanruinet committed
114
#### 1.2.2 Open a terminal and create a Conda environment
Leif's avatar
Leif committed
115
116
117
118
119

- Open the terminal

  - Press command and spacebar at the same time, type "terminal" in the focus search, double click to enter terminal

fanruinet's avatar
fanruinet committed
120
- **Add Conda to the environment variables**
Leif's avatar
Leif committed
121

fanruinet's avatar
fanruinet committed
122
  - Environment variables are added so that the system can recognize the Conda command
Leif's avatar
Leif committed
123
124
125
126
127
128
129

  - Open `~/.bash_profile` in the terminal by typing the following command.

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

fanruinet's avatar
fanruinet committed
130
  - Add Conda as an environment variable in `~/.bash_profile`.
Leif's avatar
Leif committed
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145

    ```shell
    # Press i first to enter edit mode
    # In the first line type.
    export PATH="~/opt/anaconda3/bin:$PATH"
    # If you customized the installation location during installation, change ~/opt/anaconda3/bin to the bin folder in the customized installation directory
    ```

    ```shell
    # The modified ~/.bash_profile file should look like this (where xxx is the username)
    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
Leif's avatar
Leif committed
146
            eval "$__conda_setup"
Leif's avatar
Leif committed
147
    else
Leif's avatar
Leif committed
148
149
150
151
152
            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
153
154
155
156
157
158
159
    fi
    unset __conda_setup
    # <<< conda initialize <<<
    ```

    - When you are done, press `esc` to exit edit mode, then type `:wq!` and enter to save and exit

fanruinet's avatar
fanruinet committed
160
  - Verify that the Conda command is recognized.
Leif's avatar
Leif committed
161
162

    - Enter `source ~/.bash_profile` in the terminal to update the environment variables
fanruinet's avatar
fanruinet committed
163
    - Enter `conda info --envs` in the terminal again, if it shows that there is a base environment, then Conda has been added to the environment variables
Leif's avatar
Leif committed
164

fanruinet's avatar
fanruinet committed
165
- Create a new Conda environment
Leif's avatar
Leif committed
166
167
168
169
170
171
172
173
174
175
176

  ```shell
  # Enter the following command at the command line to create an environment called paddle_env
  # Here to speed up the download, use Tsinghua source
  conda create --name paddle_env python=3.8 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  ```

  - This command will create an executable environment named paddle_env with python version 3.8, which will take a while depending on the network status

  - The command line will then output a prompt, type y and enter to continue the installation

Leif's avatar
Leif committed
177
    - <img src="../install/mac/conda_create.png" alt="conda_create" width="600" align="center"/>
Leif's avatar
Leif committed
178

fanruinet's avatar
fanruinet committed
179
- To activate the Conda environment you just created, enter the following command at the command line.
Leif's avatar
Leif committed
180
181
182
183
184
185
186
187

  ```shell
  # Activate the paddle_env environment
  conda activate paddle_env
  # View the current location of python
  where python
  ```

Leif's avatar
Leif committed
188
  <img src="../install/mac/conda_activate.png" alt="conda_actviate" width="600" align="center"/>
Leif's avatar
Leif committed
189
190
191
192
193
194
195
196
197
198
199
200
201

The above anaconda environment and python environment are installed

<a name="1.3"></a>



### 1.3 Linux

Linux users can choose to run either Anaconda or Docker. If you are familiar with Docker and need to train the PaddleOCR model, it is recommended to use the Docker environment, where the development process of PaddleOCR is run. If you are not familiar with Docker, you can also use Anaconda to run the project.

#### 1.3.1 Anaconda environment configuration

fanruinet's avatar
fanruinet committed
202
- Note: To use PaddlePaddle you need to install the python environment first, here we choose the python integrated environment Anaconda toolkit
Leif's avatar
Leif committed
203
204
205
206
207
208
209

  - Anaconda is a common python package manager
  - After installing Anaconda, you can install the python environment, as well as numpy and other required toolkit environment

- **Download Anaconda**.

  - Download at: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D
Leif's avatar
Leif committed
210

Leif's avatar
Leif committed
211

Leif's avatar
Leif committed
212
  <img src="../install/linux/anaconda_download.png" akt="anaconda download" width="800" align="center"/>
Leif's avatar
Leif committed
213

LDOUBLEV's avatar
LDOUBLEV committed
214

Leif's avatar
Leif committed
215
216
217
  - Select the appropriate version for your operating system
      - Type `uname -m` in the terminal to check the command set used by your system

fanruinet's avatar
fanruinet committed
218
  - Download method 1: Download locally, then transfer the installation package to the Linux server
Leif's avatar
Leif committed
219

fanruinet's avatar
fanruinet committed
220
  - Download method 2: Directly use Linux command line to download
Leif's avatar
Leif committed
221
222
223
224
225
226
227

    ```shell
    # First install wget
    sudo apt-get install wget # Ubuntu
    sudo yum install wget # CentOS
    ```
    ```bash
Leif's avatar
Leif committed
228
    # Then use wget to download from Tsinghua source
Leif's avatar
Leif committed
229
230
231
232
    # If you want to download Anaconda3-2021.05-Linux-x86_64.sh, the download command is as follows
    wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.05-Linux-x86_64.sh
    # If you want to download another version, you need to change the file name after the last 1 / to the version you want to download
    ```
Leif's avatar
Leif committed
233

Leif's avatar
Leif committed
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
274
275
276
277
278
279
280
- To install Anaconda.

  - Type `sh Anaconda3-2021.05-Linux-x86_64.sh` at the command line
    - If you downloaded a different version, replace the file name of the command with the name of the file you downloaded
  - Just follow the installation instructions
    - You can exit by typing q when viewing the license

- **Add conda to the environment variables**

  - If you have already added conda to the environment variable path during the installation, you can skip this step

  - Open `~/.bashrc` in a terminal.

    ```shell
    # Enter the following command in the terminal.
    vim ~/.bashrc
    ```

  - Add conda as an environment variable in `~/.bashrc`.

    ```shell
    # Press i first to enter edit mode # In the first line enter.
    export PATH="~/anaconda3/bin:$PATH"
    # If you customized the installation location during installation, change ~/anaconda3/bin to the bin folder in the customized installation directory
    ```

     ```shell
    # The modified ~/.bash_profile file should look like this (where xxx is the username)
    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 <<<
     ```

    - When you are done, press `esc` to exit edit mode, then type `:wq!` and enter to save and exit

fanruinet's avatar
fanruinet committed
281
  - Verify that the Conda command is recognized.
Leif's avatar
Leif committed
282
283

    - Enter `source ~/.bash_profile` in the terminal to update the environment variables
fanruinet's avatar
fanruinet committed
284
    - Enter `conda info --envs` in the terminal again, if it shows that there is a base environment, then Conda has been added to the environment variables
Leif's avatar
Leif committed
285

fanruinet's avatar
fanruinet committed
286
- Create a new Conda environment
Leif's avatar
Leif committed
287
288
289
290
291
292
293
294
295
296
297

  ```shell
  # Enter the following command at the command line to create an environment called paddle_env
  # Here to speed up the download, use Tsinghua source
  conda create --name paddle_env python=3.8 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  ```

  - This command will create an executable environment named paddle_env with python version 3.8, which will take a while depending on the network status

  - The command line will then output a prompt, type y and enter to continue the installation

Leif's avatar
Leif committed
298
    <img src="../install/linux/conda_create.png" alt="conda_create" width="500" align="center"/>
Leif's avatar
Leif committed
299

fanruinet's avatar
fanruinet committed
300
- To activate the Conda environment you just created, enter the following command at the command line.
Leif's avatar
Leif committed
301
302
303
304
305
306
307
308

  ```shell
  # Activate the paddle_env environment
  conda activate paddle_env
  ```

The above anaconda environment and python environment are installed

Leif's avatar
Leif committed
309

Leif's avatar
Leif committed
310
311
312
313
314
315
316
317
318
319
#### 1.3.2 Docker environment preparation

**The first time you use this docker image, it will be downloaded automatically. Please be patient.**

```bash
# Switch to the working directory
cd /home/Projects
# You need to create a docker container for the first run, and do not need to run the current command when you run it again
# Create a docker container named ppocr and map the current directory to the /paddle directory of the container

Leif's avatar
Leif committed
320
# If using CPU, use docker instead of nvidia-docker to create docker
Leif's avatar
Leif committed
321
sudo docker run --name ppocr -v $PWD:/paddle --network=host -it  registry.baidubce.com/paddlepaddle/paddle:2.1.3-gpu-cuda10.2-cudnn7  /bin/bash
LDOUBLEV's avatar
LDOUBLEV committed
322
323

# If using GPU, use nvidia-docker to create docker
LDOUBLEV's avatar
LDOUBLEV committed
324
325
# docker image registry.baidubce.com/paddlepaddle/paddle:2.1.3-gpu-cuda11.2-cudnn8 is recommended for CUDA11.2 + CUDNN8.
sudo nvidia-docker run --name ppocr -v $PWD:/paddle --shm-size=64G --network=host -it registry.baidubce.com/paddlepaddle/paddle:2.1.3-gpu-cuda10.2-cudnn7 /bin/bash
Leif's avatar
Leif committed
326
327
328
329
330
331
332

```
You can also visit [DockerHub](https://hub.docker.com/r/paddlepaddle/paddle/tags/) to get the image that fits your machine.

```
# ctrl+P+Q to exit docker, to re-enter docker using the following command:
sudo docker container exec -it ppocr /bin/bash
LDOUBLEV's avatar
LDOUBLEV committed
333
```