PaddleOCR有文本檢測(detection)和文本識別(recognition)兩個階段,其中文本檢測算法選用DB,文本識別算法選用CRNN,並在檢測和識別模塊之間添加文本方向分類器,以應對不同方向的文本識別。
當前最新版本爲PP-OCRv3,可調節參數含義參考PaddleOCR/readme_ch.md at release/2.6 · PaddlePaddle/PaddleOCR (github.com) (在網頁靠後位置)。
測試了下,速度和準確率很棒,見下圖:
百度開源了飛槳系列產品,如下圖。本篇研究下PaddleOCR。PaddleDetection類似YOLO用於定位,以後需要再研究。
本片主要羅列適合於Windows系統的下載項和注意點,具體編譯參考官網教程(已經寫的很具體,不再重複了)
官網編譯教程:https://paddleinference.paddlepaddle.org.cn/user_guides/download_lib.html#windows
1、下載C++預測庫
根據名稱裏的版本,下載對應的依賴庫。
cuda11.6 下載地址 https://developer.nvidia.cn/cuda-toolkit-archive
cudnn8.4 下載地址 https://developer.nvidia.cn/rdp/cudnn-archive
TensorRT8.4.15 下載地址 https://developer.nvidia.com/nvidia-tensorrt-8x-download
PaddleOCR源碼 下載地址 PaddlePaddle/PaddleOCR at dygraph (github.com) 注意是dygraph分支
OpenCV(我下載的最新版4.7.0) 下載地址 Releases - OpenCV
2、以上就下載齊全了,下面解壓與安裝
CUDA會自動安裝在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA
其他的都解壓到自建的文件夾中(爲了方便找到我放一起了,而且不要帶版本號的文件夾,直接剪切裏面的到自定義的文件夾裏),如下圖
3、編譯出sln
路徑與勾選已用紅框標出:
4、預測
下載模型 PaddlePaddle/PaddleOCR at dygraph (github.com)
解壓後依然放到自定義文件夾下
cmd執行exe進行預測
CHCP 65001
.\build\Release\ppocr.exe system --det_model_dir=C:\Paddle\model\ch_PP-OCRv3_det_infer --rec_model_dir=C:\Paddle\model\ch_PP-OCRv3_rec_infer --image_dir=C:\Paddle\PaddleOCR-dygraph\doc\imgs\11.jpg