rapidocr_paddle[gpu]:GPU端推理库来了

简介

rapidocr_paddle系列包是基于PaddlePaddle框架作为推理引擎的,支持CPU和GPU上推理。值得说明的是,这个包和PaddleOCR相比,代码基本都是一样的,只不过这个库将里面核心推理代码抽了出来,更加精简而已。

推荐GPU上用这个,CPU端还是以rapidocr_onnxruntimerapidocr_openvino为主。毕竟PaddlePaddle的CPU端还是比较重的。

封装这个包的原因是为了弥补GPU端推理的空缺。因为面对成千上万的图像需要提取文字时,CPU端上推理速度还是较慢,不能满足需求。

安装

  1. 根据自己需求,先安装 PaddlePaddle 框架(CPU/GPU),并验证,参见: 官方教程,注意验证是否安装成功:

    import paddle
    
    print(paddle.utils.run_check())
    # 如果出现PaddlePaddle is installed successfully!,说明您已成功安装。
    
  2. 安装rapidocr_paddle

    pip install rapidocr_paddle
    

使用

CPU 端推理

前提是安装了 CPU 版的 PaddlePaddle

import cv2

from rapidocr_paddle import RapidOCR

engine = RapidOCR()
image_path = "tests/test_files/ch_en_num.jpg"
result, elapse_list = engine(image_path)

print(result)
print(elapse_list)

GPU 端推理

前提是安装了 GPU 版的 PaddlePaddle,注意在实例化RapidOCR类时,需要通过参数显式指定使用 GPU。

import cv2

from rapidocr_paddle import RapidOCR

# 注意这里的参数
engine = RapidOCR(det_use_cuda=True, cls_use_cuda=True, rec_use_cuda=True)

image_path = "tests/test_files/ch_en_num.jpg"
result, elapse_list = engine(image_path)

其他使用详情,同rapidocor_onnxruntime系列,参见: link

推理速度比较

相关测评代码,参见AI Studio,Fork 可直接运行查看。

经过初步粗略估计,同一张图像,推理 10 次,耗时情况见下表:

推理库 平均耗时(s/img) 备注
rapidocr_onnxruntime 1.6505
rapidocr_paddle[GPU] 0.0508 V100 16G

原文链接:https://rapidai.github.io/RapidOCRDocs/docs/install_usage/rapidocr_paddle/

posted @ 2023-10-22 22:51  Danno  阅读(63)  评论(0编辑  收藏  举报