蓝耘服务器部署ppocr-gpu项目

一、存在的问题。

conda install 总是访问失败。

二、云服务器选择 

三、安装Anaconda3

进入云服务器后删除minconda文件夹

官网: https://repo.anaconda.com/archive/

在里面找到自己系统的安装包,然后右击复制链接安装。

一定要选择Anaconda,因为很多依赖问题用Minconda容易报错。

wget https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh

进入到存放 Anaconda3-2024.10-1-Linux-x86_64.sh的文件下解压

bash Anaconda3-2024.10-1-Linux-x86_64.sh

创建和激活虚拟环境,建议用python3.8

conda create -n ppocr_gpu python=3.8 -y

conda activate ppocr_gpu

四、安装paddlepaddle-gpu

 官网PaddleOCR/doc/doc_ch/environment.md at release/2.7 · PaddlePaddle/PaddleOCRt

开始使用_飞桨-源于产业实践的开源深度学习平台

找到安装代码,paddlepaddle-gpu==2.5.2.post112 说明自己安装了相关cuda11.2的包

python3 -m pip install paddlepaddle-gpu==2.5.2.post112 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html 

安装ppadleocr包稳定版(推荐 2.8.0)

pip install paddleocr==2.8.0 

测试 paddlepaddle-gpu 有没有安装成功,看到PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now.就说明安装成功了。

import paddle

paddle.utils.run_check()

 

五、安装nvitop进行监控GPU情况

新开一个终端输入

pip install nvitop

启动nvitop工具

直接在终端输入nvitop就可以启动了

六:测试识别图片效果

 官网参考文档:PaddleOCR/ppstructure/docs/quickstart.md at release/2.7 · PaddlePaddle/PaddleOCR

测试图:

# 导入PaddleOCR主类(用于文字检测和识别)初始化OCR引擎,关键参数:

# use_angle_cls 是否启用图片旋转矫正

ocr = PaddleOCR(use_angle_cls=True, lang='ch')

img_path3 = r"/root/lanyun-tmp/png/测试0.png"

# 执行OCR识别:

# • cls=True 表示在识别时使用初始化时设置的方向分类器

# • 完整处理流程:文本检测 -> 方向分类 -> 文字识别

result = ocr.ocr(img_path3, cls=True)

# [

#     [ [[左上x,左上y], [右上x,右上y], [右下x,右下y], [左下x,左下y]], ("识别文字", 置信度) ],

#     [ ... ],  # 其他识别结果

# ]

print("************************************************")

print(result)

print("************************************************")

# text_list = [line[1][0] for line_group in result for line in line_group for line_group in result]

text_list = [line[1][0] for group in result for line in group]

print(text_list)

print("识别文本:\n", "\n".join(text_list))

新建一个png文件存储图片,和代码1.py,在1.py目录下运行 python 1.py

结果评测:

用时,识别 0.356s ,位置矫正 0.042s,文字识别0.093s,总计0.491s

使用的模型是

文本检测:ch_PP-OCRv4_det_infer

文本矫正:ch_ppocr_mobile_v2.0_cls_infer

文本识别:ch_PP-OCRv4_rec_infer

测试身份证(无框表格)图片:

效果:模糊的姓名,日等字没有识别到。输出的效果语义是断的。

时间:0.5s

七、PDF文件识别

先把PDF的每一页变成图片,再进行图片识别。

先安装PyMuPDF

pip install PyMuPDF==1.24.1

再新建2.py

from paddleocr import PaddleOCR

def get_image_info(img_path):

   

    ocr = PaddleOCR(use_angle_cls=True, lang='ch')

    # 读取图片文件

    result = ocr.ocr(img_path, cls=True)

    # 提取识别文本列表

    text_list = [line[1][0] for group in result for line in group]

    # print(text_list)

    # 按行输出文本列表的信息

    image_text = "\n".join(text_list)

    # print("识别文本:", image_text)

    print(image_text)

    return image_text


 

# # 本地的pdf路径 需要先下载PyMuPDF库,把PDF的每一页变成图片

img_path3 = r"/root/lanyun-tmp/png/中华人民共和国仲裁法.pdf"

print(get_image_info(img_path3))

# # print(type(get_image_info(img_path3)))

 结果分析:

用时3.67s

资源消耗情况:峰值。

 

结论,第一页的时间0.5s左右,后面的速度都很快,资源消耗不高。

八、结论

1.ppocr-gpu开源项目的文字识别能力对于长PDF(不含表格公式)的效果最好,因为PDF的首页用时最长,后面的页码识别速度快。但是涉及到的印章信息不能识别。

2.ppocr-gpu开源项目的文字识别对于身份证、营业执照(无框表格)、有框表格的识别效果不好,会打断语义输出、后期抽取文字信息较难处理。

3.ppocr使用的默认模型是

文本检测:ch_PP-OCRv4_det_infer

文本矫正:ch_ppocr_mobile_v2.0_cls_infer

文本识别:ch_PP-OCRv4_rec_infer

4.消耗的GPU资源不大,测试中监控最高4GB显存。

5.识别速度在这个服务器中0.5s左右。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AIGC_北苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值