手把手0基础Centos下安装与部署paddleOcr教程
2025.09.19 14:16浏览量:0简介:本文为0基础开发者提供CentOS系统下PaddleOCR的完整安装部署指南,涵盖环境准备、依赖安装、源码编译、模型下载及API调用全流程,附详细错误排查方案。
引言
PaddleOCR作为一款开源的OCR工具库,凭借其高精度、多语言支持和易用性,在工业界和学术界得到了广泛应用。对于0基础的开发者而言,在CentOS系统下完成PaddleOCR的安装与部署可能会遇到诸多挑战。本文将详细介绍如何在CentOS环境下,从零开始安装并部署PaddleOCR,帮助读者快速上手。
环境准备
系统要求
CentOS 7或更高版本是推荐的操作系统。确保系统已更新至最新版本,以避免兼容性问题。可以通过以下命令更新系统:
sudo yum update -y
安装必要软件
安装Git
Git是获取PaddleOCR源码的必要工具。使用以下命令安装:
sudo yum install git -y
安装Python及pip
PaddleOCR需要Python 3.6或更高版本。CentOS默认可能未安装Python 3,需手动安装:
# 安装EPEL仓库(如果尚未安装)
sudo yum install epel-release -y
# 安装Python 3
sudo yum install python3 -y
# 验证Python版本
python3 --version
# 安装pip
sudo yum install python3-pip -y
安装CMake
PaddleOCR的编译过程需要CMake。通过以下命令安装:
sudo yum install cmake -y
安装PaddlePaddle
PaddleOCR依赖于PaddlePaddle深度学习框架。根据硬件配置选择合适的安装方式:
CPU版本安装
若服务器无GPU,安装CPU版本的PaddlePaddle:
python3 -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
GPU版本安装(可选)
如有NVIDIA GPU,且已安装CUDA和cuDNN,可安装GPU版本以获得更好性能:
# 根据CUDA版本选择命令,以下为示例(CUDA 10.1)
python3 -m pip install paddlepaddle-gpu==2.0.0.post101 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html
验证安装:
import paddle
paddle.utils.run_check()
安装PaddleOCR
获取源码
使用Git克隆PaddleOCR仓库:
git clone https://github.com/PaddlePaddle/PaddleOCR.git
cd PaddleOCR
安装依赖
进入项目目录后,安装所需Python依赖:
pip3 install -r requirements.txt
部署PaddleOCR
下载预训练模型
PaddleOCR提供了多种预训练模型,可根据需求下载:
# 进入模型下载目录
cd PaddleOCR/ppocr/utils/
# 下载中文OCR模型(示例)
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_det_infer.tar
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_cls_infer.tar
wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_rec_infer.tar
# 解压模型
tar xf ch_ppocr_mobile_v2.0_det_infer.tar
tar xf ch_ppocr_mobile_v2.0_cls_infer.tar
tar xf ch_ppocr_mobile_v2.0_rec_infer.tar
配置模型路径
修改PaddleOCR/ppocr/utils/ppocr_keys_v1.txt
(如有)和推理配置文件,指向正确的模型路径。通常无需修改,默认路径已设置。
运行推理
命令行推理
使用以下命令进行图片OCR识别:
python3 tools/infer_rec.py -c configs/rec/rec_chinese_lite_train_v2.0.yml -o Global.pretrained_model=./output/rec_chinese_lite_v2.0/best_accuracy Global.infer_img=doc/imgs_words/ch/word_1.jpg
或使用完整流程(检测+方向分类+识别):
python3 tools/infer_det.py -c configs/det/det_mv3_db.yml -o Global.pretrained_model=./output/det_db/best_accuracy Global.infer_img=doc/imgs/11.jpg
python3 tools/infer_cls.py -c configs/cls/cls_mv3.yml -o Global.pretrained_model=./output/cls/best_accuracy Global.infer_img=doc/imgs/11.jpg
python3 tools/infer_rec.py -c configs/rec/rec_chinese_lite_train_v2.0.yml -o Global.pretrained_model=./output/rec_chinese_lite_v2.0/best_accuracy Global.infer_img=doc/imgs/11.jpg
使用Python API
更灵活的方式是使用Python API:
from paddleocr import PaddleOCR
# 初始化OCR,指定模型路径(可选)
ocr = PaddleOCR(det_model_dir='./ch_ppocr_mobile_v2.0_det_infer',
cls_model_dir='./ch_ppocr_mobile_v2.0_cls_infer',
rec_model_dir='./ch_ppocr_mobile_v2.0_rec_infer',
use_angle_cls=True, lang='ch')
# 图片路径
img_path = './doc/imgs/11.jpg'
# 执行OCR
result = ocr.ocr(img_path, cls=True)
# 打印结果
for line in result:
print(line)
常见问题解决
依赖冲突
若遇到依赖冲突,尝试创建虚拟环境:
python3 -m venv paddle_env
source paddle_env/bin/activate
pip install -r requirements.txt
模型下载慢
使用国内镜像源加速下载,或手动下载后上传至服务器。
CUDA版本不匹配
确保安装的PaddlePaddle-GPU版本与CUDA版本对应,参考官方文档选择正确版本。
性能优化建议
- 使用GPU:如有GPU,务必安装GPU版本的PaddlePaddle,性能提升显著。
- 模型选择:根据需求选择合适的模型(如移动端轻量级模型或服务器端高精度模型)。
- 批量处理:对多张图片进行批量处理,减少IO开销。
- 多线程:利用Python的多线程或多进程加速推理。
总结
通过本文的指导,0基础的开发者也能在CentOS系统下成功安装并部署PaddleOCR。从环境准备、依赖安装到模型下载与推理,每一步都提供了详细的命令和说明。遇到问题时,可参考常见问题解决部分,或查阅PaddleOCR的官方文档和社区论坛。希望本文能为读者的OCR项目开发提供有力支持。
发表评论
登录后可评论,请前往 登录 或 注册