CnOCR是一款OCR工具包,包含20多个预训练模型,安装起来也非常简单。
1. 基本硬件环境
- CPU:N年前的 Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz, 32G内存
- GPU:N年前的 NVIDIA GeForce GTX 1080 Ti,11G显存
2. 基本软件环境
- 操作系统:Ubuntu20.04 LTS,是为了跟老旧的硬件相匹配,专门降级到20.04的,更高版本存在各种软件兼容性问题,等有钱了全部换新!!!
- CUDA:cuda_12.0.0_525.60.13_linux.run,虽然能支持到12.2甚至12.4,保险起见还是选择了12.0
- Cudnn:libcudnn8_8.8.0.121-1+cuda12.0_amd64.deb,对应CUDA版本
- NCCL:libnccl2_2.19.3-1+cuda12.0_amd64.deb对应CUDA版本,多显卡需要
- miniconda:Miniconda3-py312_24.9.2-0-Linux-x86_64.sh
3. 创建虚拟环境
conda create -n cnocr python=3.10
conda activate cnocr
4. 安装cnocr的gpu版本
pip install cnocr[ort-gpu] -i https://mirrors.aliyun.com/pypi/simple
它会安装pytorch、cuda等依赖,相当简单
5. 安装cnocr服务
pip install cnocr[serve] onnxruntime-gpu==1.20 -i https://mirrors.aliyun.com/pypi/simple
注意:因为要使用GPU,所以onnxruntime-gpu版本需要跟CUDA、Cudnn版本对应,默认安装的最新版本不一定适合,可能会执行报错。
(cnocr) zoon@zoon-TZ77XE3:~$ cnocr serve -p 8501 Traceback (most recent call last): File "/home/neo/miniconda3/envs/cnocr/bin/cnocr", line 5, in <module> from cnocr.cli import cli File "/home/neo/miniconda3/envs/cnocr/lib/python3.10/site-packages/cnocr/__init__.py", line 20, in <module> from cnstd.consts import AVAILABLE_MODELS as DET_AVAILABLE_MODELS File "/home/neo/miniconda3/envs/cnocr/lib/python3.10/site-packages/cnstd/__init__.py", line 21, in <module> from .ppocr import PPDetector File "/home/neo/miniconda3/envs/cnocr/lib/python3.10/site-packages/cnstd/ppocr/__init__.py", line 23, in <module> from .rapid_detector import RapidDetector File "/home/neo/miniconda3/envs/cnocr/lib/python3.10/site-packages/cnstd/ppocr/rapid_dete