python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python图片与pdf识别文本

Python中图片与pdf识别文本的方法总结(OCR)

作者:幸福清风

在Python编程语言中,我们可以利用各种库来实现OCR功能,以便从PDF文档中的图片部分提取文本信息,这篇文章主要介绍了Python中图片与pdf识别文本的相关资料,需要的朋友可以参考下

1、PaddleOCR:

基于百度飞桨框架开发,模型丰富,支持多语言识别,包括中文、英文等。性能强大,适合复杂场景的文字识别

安装 PaddleOCR 库:

pip install paddleocr

示例代码

from paddleocr import PaddleOCR, draw_ocr
from PIL import Image

# 初始化 PaddleOCR
# 参数解释:
# `lang`:指定语言模型,如 'en'(英文)、'ch'(中文)等。
# `use_angle_cls`:是否启用文字方向分类器。
ocr = PaddleOCR(use_angle_cls=True, lang='en')  # 也可以设置为 'ch' 用于中文[^28^]

# 指定图片路径
img_path = 'example.jpg'  # 替换为你的图片路径

# 执行 OCR 识别
result = ocr.ocr(img_path, cls=True)  # `cls=True` 表示启用方向分类器

# 打印识别结果
for line in result:
    print(line)

# 可选:绘制识别结果并保存
if result:
    image = Image.open(img_path).convert('RGB')
    boxes = [line[0] for line in result]  # 提取文字框
    txts = [line[1][0] for line in result]  # 提取文字内容
    scores = [line[1][1] for line in result]  # 提取置信度

    # 绘制结果
    im_show = draw_ocr(image, boxes, txts, scores, font_path='path/to/PaddleOCR/doc/fonts/simfang.ttf')
    im_show = Image.fromarray(im_show)
    im_show.save('result.jpg')  # 保存绘制后的图片[^28^]

2、RapidOCR

首先,确保安装了 RapidOCR 的 ONNXRuntime 版本,这是一个轻量级且高效的推理引擎:

pip install rapidocr_onnxruntime

示例代码:识别数字和字母

以下代码展示了如何使用 RapidOCR 识别图片中的数字和字母,并仅打印识别结果:

from rapidocr_onnxruntime import RapidOCR

# 初始化 OCR 引擎
ocr = RapidOCR()

# 指定图片路径
img_path = 'example.jpg'  # 替换为你的图片路径

# 执行识别
result, _ = ocr(img_path)

# 提取并打印识别结果(仅数字和字母)
if result:
    for line in result:
        text = line[1]  # 提取文字内容
        # 筛选只包含数字和字母的文本
        if text.isalnum():
            print(text)
else:
    print("未识别到文字")

注意事项

3、EasyOCR

4、Pytesseract

5、DocTR

6、PyOCR

选择建议:

注意:根据你的具体需求(如语言支持、应用场景、性能要求等),可以选择最适合的 OCR 库。

总结

到此这篇关于Python中图片与pdf识别文本的文章就介绍到这了,更多相关Python图片与pdf识别文本内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文