当前位置: 首页 > news >正文

【PaddleOCR】PaddlePaddle 3.0环境安装,及PaddleOCR3.0 快速入门使用

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN人工智能领域的优质创作者,提供AI相关的技术咨询、项目开发和个性化解决方案等服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:xf982831907

💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。

在这里插入图片描述

【PaddleOCR】PaddlePaddle 3.0环境安装,及PaddleOCR3.0 快速入门使用

    • 一、概述
    • 二、安装 PaddlePaddle
      • 2.1 CPU 环境安装
      • 2.2 GPU 环境安装
    • 三、安装 PaddleOCR
    • 四、命令行使用
    • 五、Python 脚本使用
    • 六、输出示例
    • 七、结语

一、概述

  PaddleOCR 是一款强大的开源 OCR(光学字符识别)工具包,具有高精度、多语言支持和良好的扩展性。本文将指导您如何快速安装和使用 PaddleOCR,包括环境准备和基本的文本识别操作。

二、安装 PaddlePaddle

  在开始使用 PaddleOCR 之前,您需要先安装 PaddlePaddle 框架。PaddlePaddle 是百度推出的深度学习平台,PaddleOCR 基于此框架构建。

2.1 CPU 环境安装

  如果您没有 NVIDIA GPU 或者不想使用 GPU 加速,可以安装 CPU 版本的 PaddlePaddle:

python -m pip install paddlepaddle==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cpu/

2.2 GPU 环境安装

  如果您有 NVIDIA GPU 并希望利用 GPU 加速,您需要根据您的 CUDA 版本安装相应的 PaddlePaddle GPU 版本。以下是安装 CUDA 11.8 版本的示例:

python -m pip install paddlepaddle-gpu==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/

三、安装 PaddleOCR

  在成功安装 PaddlePaddle 后,可以继续安装 PaddleOCR:

pip install paddleocr

四、命令行使用

  安装完成后,您可以通过命令行直接使用 PaddleOCR。以下是一个简单的命令行示例,用于执行文本检测和识别:

paddleocr ocr -i ./general_ocr_002.png --use_doc_orientation_classify False --use_doc_unwarping False --use_textline_orientation False

五、Python 脚本使用

  您也可以在 Python 脚本中导入 PaddleOCR 并使用其 API 进行更复杂的应用开发。

from paddleocr import PaddleOCR# 创建 PaddleOCR 对象
ocr = PaddleOCR(use_doc_orientation_classify=False, use_doc_unwarping=False, use_textline_orientation=False
)
# ocr = PaddleOCR(use_doc_orientation_classify=True, use_doc_unwarping=True) # 文本图像预处理+文本检测+方向分类+文本识别
# ocr = PaddleOCR(use_doc_orientation_classify=False, use_doc_unwarping=False) # 文本检测+文本行方向分类+文本识别
# ocr = PaddleOCR(
#     text_detection_model_name="PP-OCRv5_mobile_det",
#     text_recognition_model_name="PP-OCRv5_mobile_rec",
#     use_doc_orientation_classify=False,
#     use_doc_unwarping=False,
#     use_textline_orientation=False) # 更换 PP-OCRv5_mobile 模型
# 执行预测
result = ocr.predict("./general_ocr_002.png")# 输出结果
for res in result:res.print()res.save_to_img("output")res.save_to_json("output")

六、输出示例

  以下是 PaddleOCR 输出结果的示例,包含检测到的文本、位置信息和置信度等:

{'res': {'input_path': '/root/.paddlex/predict_input/general_ocr_002.png','page_index': None,'model_settings': {'use_doc_preprocessor': True,'use_textline_orientation': False},'doc_preprocessor_res': {'input_path': None,'page_index': None,'model_settings': {'use_doc_orientation_classify': False,'use_doc_unwarping': False},'angle': -1},'dt_polys': array([[[  3,  10], ...]], dtype=int16),'text_det_params': {'limit_side_len': 736,'limit_type': 'min','thresh': 0.3,'max_side_limit': 4000,'box_thresh': 0.6,'unclip_ratio': 1.5},'text_type': 'general','textline_orientation_angles': array([-1, ..., -1]),'text_rec_score_thresh': 0.0,'rec_texts': ['www.997700', 'Cm', '登机牌', 'BOARDING', 'PASS', ...],'rec_scores': array([0.67582953, ..., 0.97418666]),'rec_polys': array([[[  3,  10], ...]], dtype=int16),'rec_boxes': array([[  3, ...,  30], ..., [ 99, ..., 479]], dtype=int16)}
}

  PaddleOCR3.0预处理的图片展示如下:
在这里插入图片描述
  PaddleOCR3.0的检测结果如下:
在这里插入图片描述

七、结语

  通过以上步骤,您现在已经成功安装并开始使用 PaddleOCR 进行文本识别。PaddleOCR 提供了丰富的功能和灵活的配置选项,适用于各种文本识别场景。您可以根据实际需求进一步探索和定制 PaddleOCR 的功能。

相关文章:

  • MCP -1(待补充)
  • <4>_Linux进程概念
  • 同步日志系统深度解析【链式调用】【宏定义】【固定缓冲区】【线程局部存储】【RAII】
  • 数据结构与算法学习笔记(Acwing 提高课)----动态规划·单调队列优化DP
  • Neo4j无法建立到 localhost:7474 服务器的连接出现404错误
  • 鸿蒙5:组件监听和部分状态管理V2
  • 【YOLOv13保姆级教程#03】自建数据集训练与验证(Train Val)全流程 | 手把手教你构建数据集、标签格式转换与yaml配置
  • NV046NV060美光固态闪存NV061NV063
  • matplotlib 绘制水平柱状图
  • 使用deepseek制作“喝什么奶茶”随机抽签小网页
  • linux面试常考
  • SpringBoot3.x整合Knife4j接口文档
  • HarmonyOS应用开发实验操作步骤
  • Python 数据分析与可视化 Day 10 - 数据合并与连接
  • HashMap 和 ConcurrentHashMap的区别
  • Python 数据分析:numpy,抽提,整数数组索引。听故事学知识点怎么这么容易?
  • C++泛型编程2 - 类模板
  • 基于LQR控制器的六自由度四旋翼无人机模型simulink建模与仿真
  • 「Java案例」古代重量单位转换
  • 力扣 刷题(第七十一天)