PaddleOCR文字识别C#部署-1版本后续升级,本次采用PaddleOCR release/2.5版本,支持GPU、CPU 推理;
Cuda | cuDNN | TensorRT | Paddle Inference | OpenCV | Visual Studio | PaddleOCR |
---|---|---|---|---|---|---|
11.2 | 8.2 | 8.0.1.6 | v2.3 | 3.4.6以上 | VS 2019 | 2.5(推理库对应) |
11.0 | 8.0 | 7.2.1.6 | v2.3、 v2.1.1、v2.2.2、v2.0.1 | 3.4.6以上 | VS 2019 | 2.0 以上(推理库对应) |
10.2 | 7.6.5 | 7.0.0.11 | v2.3、 v2.1.1、v2.2.2、 v2.0.1 | 3.4.6以上 | VS 2019 | 2.0 以上(推理库对应) |
10.1 | 7.6.5 | 6.0.1.5 | v2.3、 v2.1.1、v2.2.2、 v2.0.1 | 3.4.6以上 | VS 2019 | 2.0 以上(推理库对应) |
10.1 | 7.6.5 | no | v2.3、 v2.0.1 | 3.4.6以上 | VS 2019 | 2.0 以上(推理库对应) |
10.0 | 7 | 6 | v2.0.1 | 3.4.6以上 | VS 2019 | 2.0 以上(推理库对应) |
9.0 | 7 | no | v2.0.1 | 3.4.6以上 | VS 2019 | 2.0 以上(推理库对应) |
9.0 | 7 | no | v2.0.1 | 3.4.6以上 | VS 2019 | 2.0 以上(推理库对应) |
PaddlePaddle/PaddleOCR Release/2.5拉取到本地,切换版本分支。
git clone https://github.com/PaddlePaddle/PaddleOCR.git
git branch -a # 查询所有分支
git checkout release/2.5 # 切换分支 release/2.5
cpu版本,仅需考虑OPENCV_DIR、OpenCV_DIR、PADDLE_LIB三个参数
D:/PaddlePaddle/opencv4.5.2/build
D:/PaddlePaddle/opencv4.5.2/build
D:/PaddlePaddle/paddle_inference_2.3_cpu
GPU版本,在cpu版本的基础上,还需填写以下变量 CUDA_LIB、CUDNN_LIB、TENSORRT_DIR、WITH_GPU、WITH_TENSORRT(注意版本对应,参考 版本对应表 )
CUDA_LIB: CUDA地址,如 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib\x64
CUDNN_LIB: 和CUDA_LIB一致
TENSORRT_DIR:TRT下载后解压缩的位置,如 D:\TensorRT-8.0.1.6
WITH_GPU: 打钩
WITH_TENSORRT:打勾
点击Generate
按钮即可生成Visual Studio 项目的sln文件。
在开始生成解决方案之前,执行下面步骤:在这里插入图片描述
Debug
改为Release
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\VS\include
。点击生成->生成解决方案
,即可在build/Release/
文件夹下看见ppocr.exe
文件。
运行之前,将下面文件拷贝到build/Release/
文件夹下
paddle_inference/paddle/lib/paddle_inference.dll
opencv/build/x64/vc15/bin/opencv_world452.dll
paddle_inference/third_party/install/openblas/lib/openblas.dll
# 切换终端编码为utf8
CHCP 65001
# 执行预测
ppocr.exe system --det_model_dir=D:\PaddlePaddle\inference\ch_PP-OCRv2_det_infer --rec_model_dir=D:\PaddlePaddle\inference\ch_PP-OCRv2_rec_infer --image_dir=D:\PaddlePaddle\PaddleOCR\doc\imgs\11.jpg --use_gpu=true
c#
调用 dll
默认开启GPU、mkldnn