logo

手把手0基础Centos下安装与部署paddleOcr 教程

作者:宇宙中心我曹县2025.09.26 19:54浏览量:2

简介:零基础CentOS用户必看!本文详细讲解如何在CentOS系统下从零开始安装并部署PaddleOCR,涵盖环境准备、依赖安装、代码下载、模型配置到运行测试的全流程。

手把手0基础CentOS下安装与部署PaddleOCR教程

引言

PaddleOCR是百度开源的一款基于PaddlePaddle深度学习框架的OCR(光学字符识别)工具库,支持中英文、多语言识别以及版面分析等功能。对于需要在CentOS服务器上部署OCR服务的开发者或企业用户来说,掌握PaddleOCR的安装与部署是关键一步。本文将针对0基础用户,详细讲解如何在CentOS系统下完成PaddleOCR的安装与部署。

环境准备

1. 确认系统版本

首先,确保你的CentOS系统版本符合要求。PaddleOCR推荐使用CentOS 7或更高版本。可以通过以下命令查看系统版本:

  1. cat /etc/centos-release

2. 安装必要工具

在开始安装前,需要安装一些基础工具,如git、wget、unzip等:

  1. yum install -y git wget unzip

3. 安装Python环境

PaddleOCR支持Python 3.6及以上版本。推荐使用Anaconda或Miniconda来管理Python环境,以避免与系统自带的Python冲突。

安装Miniconda

  1. wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
  2. bash Miniconda3-latest-Linux-x86_64.sh

按照提示完成安装后,重新加载终端或运行source ~/.bashrc使环境变量生效。

创建并激活Python环境

  1. conda create -n paddle_env python=3.8
  2. conda activate paddle_env

安装PaddlePaddle

PaddleOCR依赖于PaddlePaddle深度学习框架。根据你的GPU情况选择安装CPU或GPU版本的PaddlePaddle。

CPU版本安装

  1. pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple

GPU版本安装(需有NVIDIA GPU及CUDA环境)

首先确认你的CUDA和cuDNN版本,然后访问PaddlePaddle官方安装指南选择对应的安装命令。例如,对于CUDA 10.2:

  1. pip install paddlepaddle-gpu==2.1.0.post102 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html

下载PaddleOCR

使用git克隆PaddleOCR仓库到本地:

  1. git clone https://github.com/PaddlePaddle/PaddleOCR.git
  2. cd PaddleOCR

安装依赖

进入PaddleOCR目录后,安装项目所需的Python依赖:

  1. pip install -r requirements.txt

下载预训练模型

PaddleOCR提供了多种预训练模型,包括文本检测、文本识别和版面分析模型。你可以根据需要下载相应的模型。

下载中文OCR模型

  1. cd PaddleOCR/ppocr/utils
  2. wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_det_infer.tar
  3. wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_rec_infer.tar
  4. wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_cls_infer.tar
  5. # 解压模型
  6. tar -xf ch_ppocr_mobile_v2.0_det_infer.tar
  7. tar -xf ch_ppocr_mobile_v2.0_rec_infer.tar
  8. tar -xf ch_ppocr_mobile_v2.0_cls_infer.tar

配置模型路径

PaddleOCR/configs目录下,找到对应的配置文件(如ch_ppocr_mobile_v2.0_det_infer.ymlch_ppocr_mobile_v2.0_rec_infer.yml),修改其中的Global.infer_img(输入图片路径,测试时可忽略)和Global.rec_model_dirGlobal.det_model_dirGlobal.cls_model_dir等参数,指向你下载的模型路径。

运行测试

文本检测与识别

使用以下命令进行文本检测与识别测试:

  1. python tools/infer_rec.py -c configs/rec/ch_ppocr_mobile_v2.0_rec_infer.yml -o Global.infer_img=./doc/imgs/11.jpg Global.rec_model_dir=./ppocr/utils/ch_ppocr_mobile_v2.0_rec_infer/ Global.det_model_dir=./ppocr/utils/ch_ppocr_mobile_v2.0_det_infer/ Global.use_gpu=False

版面分析(可选)

如果需要版面分析功能,可以下载对应的版面分析模型,并修改配置文件后运行:

  1. # 下载版面分析模型(示例)
  2. wget https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_cls_infer.tar
  3. tar -xf ch_ppocr_mobile_v2.0_cls_infer.tar
  4. # 运行版面分析
  5. python tools/infer_cls.py -c configs/cls/ch_ppocr_mobile_v2.0_cls_infer.yml -o Global.infer_img=./doc/imgs/11.jpg Global.cls_model_dir=./ppocr/utils/ch_ppocr_mobile_v2.0_cls_infer/ Global.use_gpu=False

部署为Web服务(可选)

为了将PaddleOCR部署为Web服务,可以使用Flask或FastAPI等框架。以下是一个简单的Flask示例:

安装Flask

  1. pip install flask

创建Flask应用

在PaddleOCR目录下创建app.py文件:

  1. from flask import Flask, request, jsonify
  2. from paddleocr import PaddleOCR
  3. app = Flask(__name__)
  4. ocr = PaddleOCR(use_angle_cls=True, lang="ch") # 初始化OCR,使用中文模型
  5. @app.route('/ocr', methods=['POST'])
  6. def ocr_api():
  7. if 'file' not in request.files:
  8. return jsonify({'error': 'No file uploaded'}), 400
  9. file = request.files['file']
  10. img_path = "./temp.jpg"
  11. file.save(img_path)
  12. result = ocr.ocr(img_path, cls=True)
  13. # 处理结果,转换为JSON友好格式
  14. result_json = []
  15. for line in result:
  16. if line:
  17. for item in line:
  18. if isinstance(item, list) and len(item) > 1:
  19. result_json.append({
  20. 'coordinates': item[0],
  21. 'text': item[1][0],
  22. 'confidence': item[1][1]
  23. })
  24. return jsonify(result_json)
  25. if __name__ == '__main__':
  26. app.run(host='0.0.0.0', port=5000)

运行Flask应用

  1. python app.py

现在,你可以通过POST请求向http://<你的服务器IP>:5000/ocr上传图片文件,获取OCR识别结果。

总结与优化建议

总结

本文详细讲解了如何在CentOS系统下从零开始安装并部署PaddleOCR,包括环境准备、依赖安装、代码下载、模型配置到运行测试的全流程。对于0基础用户来说,只要按照步骤操作,就能成功部署PaddleOCR服务。

优化建议

  1. 性能优化:对于生产环境,建议使用GPU版本的PaddlePaddle,并调整batch_size等参数以提高处理速度。
  2. 模型选择:根据实际需求选择合适的模型,如移动端轻量级模型或服务端高性能模型。
  3. 容器化部署:考虑使用Docker容器化部署PaddleOCR,便于管理和迁移。
  4. 安全加固:对于Web服务,应添加身份验证、输入验证等安全措施,防止恶意攻击。

通过以上步骤和建议,你可以在CentOS系统上高效、稳定地部署PaddleOCR服务,满足各种OCR应用场景的需求。

相关文章推荐

发表评论

活动