INSTALL.md 3.4 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
# Installation

---
## Table of Contents

- [Introduction](#introduction)
- [PaddlePaddle](#paddlepaddle)
- [Other Dependencies](#other-dependencies)
- [PaddleDetection](#paddle-detection)
- [Datasets](#datasets)


## Introduction

This document covers how to install PaddleDetection, its dependencies
Q
qingqing01 已提交
16
(including PaddlePaddle), together with COCO and Pascal VOC dataset.
17 18 19 20 21 22

For general information about PaddleDetection, please see [README.md](../README.md).


## PaddlePaddle

J
jerrywgz 已提交
23
Running PaddleDetection requires PaddlePaddle Fluid v.1.5 and later. please follow the instructions in [installation document](http://www.paddlepaddle.org.cn/).
24 25 26 27 28

Please make sure your PaddlePaddle installation was successful and the version
of your PaddlePaddle is not lower than required. Verify with the following commands.

```
K
Kaipeng Deng 已提交
29 30 31
# To check PaddlePaddle installation in your Python interpreter
>>> import paddle.fluid as fluid 
>>> fluid.install_check.run_check()
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48

# To check PaddlePaddle version
python -c "import paddle; print(paddle.__version__)"
```

### Requirements:

- Python2 or Python3
- CUDA >= 8.0
- cuDNN >= 5.0
- nccl >= 2.1.2


## Other Dependencies

[COCO-API](https://github.com/cocodataset/cocoapi):

K
Kaipeng Deng 已提交
49
COCO-API is needed for running. Installation is as follows:
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71

    git clone https://github.com/cocodataset/cocoapi.git
    cd cocoapi/PythonAPI
    # if cython is not installed
    pip install Cython
    # Install into global site-packages
    make install
    # Alternatively, if you do not have permissions or prefer
    # not to install the COCO API into global site-packages
    python setup.py install --user


## PaddleDetection

**Clone Paddle models repository:**

You can clone Paddle models and change working directory to PaddleDetection
with the following commands:

```
cd <path/to/clone/models>
git clone https://github.com/PaddlePaddle/models
Q
qingqing01 已提交
72
cd models/PaddleCV/PaddleDetection
73 74 75 76
```

**Install Python dependencies:**

Q
qingqing01 已提交
77
Required python packages are specified in [requirements.txt](../requirements.txt), and can be installed with:
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92

```
pip install -r requirements.txt
```

**Make sure the tests pass:**

```
export PYTHONPATH=`pwd`:$PYTHONPATH
python ppdet/modeling/tests/test_architectures.py
```


## Datasets

Q
qingqing01 已提交
93
PaddleDetection includes support for [COCO](http://cocodataset.org) and [Pascal VOC](http://host.robots.ox.ac.uk/pascal/VOC/) by default, please follow these instructions to set up the dataset.
94 95 96

**Create symlinks for local datasets:**

Q
qingqing01 已提交
97
Default dataset path in config files is `dataset/coco` and `dataset/voc`, if the
98 99 100 101
datasets are already available on disk, you can simply create symlinks to
their directories:

```
Q
qingqing01 已提交
102 103
ln -sf <path/to/coco> <path/to/paddle_detection>/dataset/coco
ln -sf <path/to/voc> <path/to/paddle_detection>/dataset/voc
104 105 106 107 108 109
```

**Download datasets manually:**

On the other hand, to download the datasets, run the following commands:

Q
qingqing01 已提交
110
- COCO
111 112 113 114 115 116

```
cd dataset/coco
./download.sh
```

Q
qingqing01 已提交
117
- Pascal VOC
118 119 120 121 122 123 124 125 126

```
cd dataset/voc
./download.sh
```

**Download datasets automatically:**

If a training session is started but the dataset is not setup properly (e.g,
Q
qingqing01 已提交
127 128
not found in `dataset/coco` or `dataset/voc`), PaddleDetection can automatically
download them from [COCO-2017](http://images.cocodataset.org) and
129 130 131 132 133 134
[VOC2012](http://host.robots.ox.ac.uk/pascal/VOC), the decompressed datasets
will be cached in `~/.cache/paddle/dataset/` and can be discovered automatically
subsequently.


**NOTE:** For further informations on the datasets, please see [DATA.md](DATA.md)