readme.md 3.0 KB
Newer Older
L
LDOUBLEV 已提交
1

L
LDOUBLEV 已提交
2
# Jetson部署PaddleOCR模型
L
LDOUBLEV 已提交
3

L
LDOUBLEV 已提交
4
本节介绍PaddleOCR在Jetson NX、TX2、nano、AGX等系列硬件的部署。
L
LDOUBLEV 已提交
5 6 7 8


## 1. 环境准备

L
LDOUBLEV 已提交
9
需要准备一台Jetson开发板,如果需要TensorRT预测,需准备好TensorRT环境,建议使用7.1.3版本的TensorRT;
L
LDOUBLEV 已提交
10

L
LDOUBLEV 已提交
11
1. Jetson安装PaddlePaddle
L
LDOUBLEV 已提交
12

L
LDOUBLEV 已提交
13
PaddlePaddle下载[链接](https://www.paddlepaddle.org.cn/inference/user_guides/download_lib.html#python)
L
LDOUBLEV 已提交
14 15 16 17
请选择适合的您Jetpack版本、cuda版本、trt版本的安装包。

安装命令:
```shell
L
LDOUBLEV 已提交
18 19
# 安装paddle,以paddlepaddle_gpu-2.3.0rc0-cp36-cp36m-linux_aarch64.whl 为例
pip3 install -U paddlepaddle_gpu-2.3.0rc0-cp36-cp36m-linux_aarch64.whl
L
LDOUBLEV 已提交
20 21 22 23 24 25 26 27 28 29
```


2. 下载PaddleOCR代码并安装依赖

首先 clone PaddleOCR 代码:
```
git clone https://github.com/PaddlePaddle/PaddleOCR
```

L
LDOUBLEV 已提交
30
然后,安装依赖:
L
LDOUBLEV 已提交
31 32 33 34 35
```
cd PaddleOCR
pip3 install -r requirements.txt
```

L
LDOUBLEV 已提交
36
*注:jetson硬件CPU较差,依赖安装较慢,请耐心等待*
L
LDOUBLEV 已提交
37 38 39 40


## 2. 执行预测

L
LDOUBLEV 已提交
41
[文档](https://github.com/PaddlePaddle/PaddleOCR/blob/dygraph/doc/doc_ch/ppocr_introduction.md#6-%E6%A8%A1%E5%9E%8B%E5%BA%93) 模型库中获取PPOCR模型,下面以PP-OCRv3模型为例,介绍在PPOCR模型在jetson上的使用方式:
L
LDOUBLEV 已提交
42 43 44 45 46 47 48 49 50 51 52 53

下载并解压PP-OCRv3模型
```
wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_infer.tar
wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_rec_infer.tar
tar xf ch_PP-OCRv3_det_infer.tar
tar xf ch_PP-OCRv3_rec_infer.tar
```

执行文本检测预测:
```
cd PaddleOCR
L
LDOUBLEV 已提交
54
python3 tools/infer/predict_det.py --det_model_dir=./inference/ch_PP-OCRv2_det_infer/  --image_dir=./doc/imgs/french_0.jpg  --use_gpu=True
L
LDOUBLEV 已提交
55 56
```

L
LDOUBLEV 已提交
57 58 59 60
执行命令后在终端会打印出预测的信息,并在 `./inference_results/` 下保存可视化结果。
![](./images/det_res_french_0.jpg)


L
LDOUBLEV 已提交
61 62
执行文本识别预测:
```
L
LDOUBLEV 已提交
63 64 65 66 67 68
python3 tools/infer/predict_det.py --rec_model_dir=./inference/ch_PP-OCRv2_rec_infer/  --image_dir=./doc/imgs_words/en/word_2.png  --use_gpu=True --rec_image_shape="3,48,320"
```

执行命令后在终端会打印出预测的信息,输出如下:
```
[2022/04/28 15:41:45] root INFO: Predicts of ./doc/imgs_words/en/word_2.png:('yourself', 0.98084533)
L
LDOUBLEV 已提交
69 70 71 72 73
```

执行文本检测+文本识别串联预测:

```
L
LDOUBLEV 已提交
74
python3 tools/infer/predict_system.py --det_model_dir=./inference/ch_PP-OCRv2_det_infer/ --rec_model_dir=./inference/ch_PP-OCRv2_rec_infer/ --image_dir=./doc/imgs/ --use_gpu=True --rec_image_shape="3,48,320"
L
LDOUBLEV 已提交
75 76
```

L
LDOUBLEV 已提交
77 78 79
执行命令后在终端会打印出预测的信息,并在 `./inference_results/` 下保存可视化结果。
![](./images/00057937.jpg)

L
LDOUBLEV 已提交
80 81
开启TRT预测只需要在以上命令基础上设置`--use_tensorrt=True`即可:
```
L
LDOUBLEV 已提交
82
python3 tools/infer/predict_system.py --det_model_dir=./inference/ch_PP-OCRv2_det_infer/ --rec_model_dir=./inference/ch_PP-OCRv2_rec_infer/ --image_dir=./doc/imgs/00057937.jpg --use_gpu=True --use_tensorrt=True --rec_image_shape="3,48,320"
L
LDOUBLEV 已提交
83 84
```

L
LDOUBLEV 已提交
85
更多ppocr模型预测请参考[文档](../../doc/doc_ch/models_list.md)