Python OCR 文字识别使用模型:读光-文字识别-行识别模型-中英-通用领域

介绍

什么是OCR?

OCR是"Optical Character Recognition"的缩写,中文意为"光学字符识别"。它是一种技术,可以识别和转换打印在纸张或图像上的文字和字符为机器可处理的格式,如计算机文本文件。通过使用OCR技术,可以快速地将纸质文档数字化,从而使文本可以被编辑、搜索和分析。这项技术广泛应用于各种场合,如图书馆和档案馆的文献数字化、 pdf 文件的文本搜索、以及扫描文档中的条形码和二维码等。

阿里云文字识别OCR(读光OCR)

阿里云文字识别OCR(读光OCR),是一款由阿里巴巴达摩院打造的OCR产品,用于识别图片、文档、卡证等文件所包含的文字信息。

行识别模型

行识别模型是一种用于识别文本行中的字符内容的算法模型。它在光学字符识别(OCR)领域中扮演着重要的角色,专注于将文本行中的字符转换成可识别的文本。

行识别模型可以应用于各种应用场景,如自动化文档处理、车牌识别、手写体识别等,为实现自动化文本识别提供了重要的基础,有助于提高工作效率和准确性。

我们这里使用的是 "阿里云文字识别OCR(读光OCR)" 的模型放到本地来进行识别测试。

前置条件

1、准备电脑环境(我当前用的是 4060 显卡)

2、安装环境(conda、python)

3、下载模型(通过下方链接地址下载模型)

bash 复制代码
https://www.modelscope.cn/models/iic/cv_convnextTiny_ocr-recognition-general_damo/summary

克隆下来后。

python 复制代码
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks

ocr_recognition = pipeline(Tasks.ocr_recognition, model='damo/cv_convnextTiny_ocr-recognition-general_damo')
img_url = 'cropped_image_1.png'
result = ocr_recognition(img_url)
print(result)
  1. from modelscope.pipelines import pipeline:从 ModelScope 库中的 pipelines 模块导入 pipeline 函数。这个函数用于创建一个模型管道,可以用来执行各种任务,如文本分类、命名实体识别、OCR 等。

  2. from modelscope.utils.constant import Tasks:从 ModelScope 库中的 utils.constant 模块导入 Tasks 常量。这个常量包含了 ModelScope 支持的不同任务类型,包括 OCR。

  3. ocr_recognition = pipeline(Tasks.ocr_recognition, model='damo/cv_convnextTiny_ocr-recognition-general_damo'):调用 pipeline 函数创建一个 OCR 识别任务的管道。Tasks.ocr_recognition 指定了这是一个 OCR 识别任务,而 'damo/cv_convnextTiny_ocr-recognition-general_damo' 则指定了使用的模型名称或者模型路径。

  4. img_url = 'cropped_image_1.png':定义一个变量 img_url,用来存储待识别的图像文件的路径或者 URL。

  5. result = ocr_recognition(img_url):调用 ocr_recognition 管道,传入待识别的图像路径,并将识别结果保存在 result 变量中。

  6. print(result):打印 OCR 识别的结果。

需要识别的图片:

运行结果:

相关推荐
AI人工智能+24 分钟前
一种融合AI与OCR的施工许可证识别技术,提升工程监管效率,实现自动化、精准化处理。
人工智能·自动化·ocr·施工许可证识别
Hy行者勇哥1 小时前
Python 与 VS Code 结合操作指南
开发语言·python
大力水手(Popeye)1 小时前
Pytorch——tensor
人工智能·pytorch·python
飞翔的佩奇5 小时前
【完整源码+数据集+部署教程】表盘指针检测系统源码和数据集:改进yolo11-CA-HSFPN
python·yolo·计算机视觉·数据集·yolo11·表盘指针检测
larance6 小时前
SQLAlchemy 的异步操作来批量保存对象列表
数据库·python
搏博6 小时前
基于Python3.10.6与jieba库的中文分词模型接口在Windows Server 2022上的实现与部署教程
windows·python·自然语言处理·flask·中文分词
麦兜*7 小时前
Swift + Xcode 开发环境搭建终极指南
开发语言·ios·swiftui·xcode·swift·苹果vision pro·swift5.6.3
lxmyzzs7 小时前
pyqt5无法显示opencv绘制文本和掩码信息
python·qt·opencv
萧鼎8 小时前
Python pyzmq 库详解:从入门到高性能分布式通信
开发语言·分布式·python
艾伦~耶格尔9 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试