C++中如何调用PaddleOCR的API接口

   2024-09-30 8170
核心提示:PaddleOCR 是一个基于 PaddlePaddle 的开源 OCR(光学字符识别)工具首先,确保已经安装了 PaddlePaddle。可以使用以下命令进行

PaddleOCR 是一个基于 PaddlePaddle 的开源 OCR(光学字符识别)工具

首先,确保已经安装了 PaddlePaddle。可以使用以下命令进行安装:
pip install paddlepaddle
克隆 PaddleOCR 仓库:
git clone https://github.com/PaddlePaddle/PaddleOCR.git
安装 PaddleOCR 的依赖项:
cd PaddleOCRpip install -r requirements.txt
下载 PaddleOCR 的预训练模型:
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_det_train.tartar -xf ch_ppocr_mobile_v2.0_det_train.tarwget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_rec_train.tartar -xf ch_ppocr_mobile_v2.0_rec_train.tarwget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_cls_train.tartar -xf ch_ppocr_mobile_v2.0_cls_train.tar
在 C++ 代码中调用 PaddleOCR API。以下是一个简单的示例:
#include<iostream>#include <opencv2/opencv.hpp>#include "PaddleOCR/ocr.h"int main() {    // 初始化 OCR 引擎    std::string det_model_dir = "ch_ppocr_mobile_v2.0_det_train";    std::string rec_model_dir = "ch_ppocr_mobile_v2.0_rec_train";    std::string cls_model_dir = "ch_ppocr_mobile_v2.0_cls_train";    bool use_gpu = false;    int gpu_id = 0;    int gpu_mem = 4000;    int cpu_threads = 10;    bool enable_mkldnn = true;    bool use_tensorrt = false;    bool use_fp16 = false;    paddleocr::OCR ocr(det_model_dir, rec_model_dir, cls_model_dir, use_gpu, gpu_id, gpu_mem, cpu_threads, enable_mkldnn, use_tensorrt, use_fp16);    // 读取图像    cv::Mat img = cv::imread("test.jpg");    // 执行 OCR    std::vector<paddleocr::OCRResult> results = ocr.Run(img);    // 输出结果    for (const auto& result : results) {        std::cout << "Text: "<< result.text<< std::endl;        std::cout << "Score: "<< result.score<< std::endl;        std::cout << "Rect: ("<< result.rect[0] << ", "<< result.rect[1] << ", "<< result.rect[2] << ", "<< result.rect[3] << ")"<< std::endl;    }    return 0;}

注意:这个示例需要 OpenCV 和 PaddleOCR 的头文件。请确保已经正确配置了这些依赖项。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号