Python OCR 文字检测使用模型:读光-文字检测-DBNet行检测模型-中英-通用领域

介绍

什么是OCR?

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

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

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

行检测模型

行检测模型(Row Detection Model)是一种用于识别图像中垂直方向上排列的文本行的算法模型。在光学字符识别(OCR)领域,行检测是预处理阶段的一个重要步骤,它旨在从图像中提取出文本行,以便后续可以对每一行进行字符分割和字符识别。

行检测模型通常需要处理以下几个问题:

文本行定位、文本行分割、文本行校正、噪声消除。

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

前置条件

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

2、安装环境(conda、python)

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

bash 复制代码
https://www.modelscope.cn/models/iic/cv_resnet18_ocr-detection-db-line-level_damo/summary


克隆下来后。

python 复制代码
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
ocr_detection = pipeline(Tasks.ocr_detection, model='damo/cv_resnet18_ocr-detection-db-line-level_damo')
result = ocr_detection('input_image.png')
print(result)
  1. from modelscope.pipelines import pipeline
    这行代码从modelscope.pipelines模块导入了pipeline函数。pipeline函数是ModelScope提供的一个高级API,它可以用来组合和运行预训练模型,实现各种机器学习任务,如OCR检测。
  2. from modelscope.utils.constant import Tasks
    这行代码从modelscope.utils.constant模块导入了Tasks常量。Tasks是一个预定义的常量,它包含了ModelScope支持的各种任务类型,例如图像分类、文本分类、机器翻译等。通过导入Tasks,可以方便地访问这些任务类型。
  3. ocr_detection = pipeline(Tasks.ocr_detection, model='damo/cv_resnet18_ocr-detection-db-line-level_damo')
    这行代码创建了一个OCR检测的管道。pipeline函数接收两个参数:任务类型和模型名称。在这里,任务类型是Tasks.ocr_detection,表示执行OCR检测任务;模型名称是'damo/cv_resnet18_ocr-detection-db-line-level_damo',这是一个特定的OCR检测模型,由阿里巴巴的达摩院提供。
  4. result = ocr_detection('input_image.png')
    这行代码通过之前创建的OCR检测管道处理一个名为'input_image.png'的图片文件。处理的结果存储在result变量中,这个变量通常包含检测到的文本信息和其他相关数据。
  5. print(result)
    这行代码打印出result变量的内容。这通常用于调试和验证OCR检测的结果。输出会显示图片中检测到的文本行,以及可能的额外信息,如文本行的位置、置信度等。

运行结果:

常见问题。

缺少包:



相关推荐
tang777897 小时前
爬虫如何绕过绕过“5秒盾”Cloudflare:从浏览器指纹模拟到Rust求解之不完全指南
开发语言·爬虫·rust·cloudflare
Yuer20257 小时前
什么是 Rust 语境下的“量化算子”——一个工程对象的最小定义
开发语言·后端·rust·edca os·可控ai
深蓝电商API7 小时前
Scrapy爬虫限速与并发控制最佳实践
爬虫·python·scrapy
Derrick__17 小时前
淘宝MD5爬虫
爬虫·python
hqwest7 小时前
码上通QT实战26--系统设置01-系统设置布局
开发语言·qt·qss·qt基础控件·qt布局控件·qt表格控件
薛定谔的猫19827 小时前
llama-index Embedding 落地到 RAG 系统
开发语言·人工智能·python·llama-index
jghhh018 小时前
传递对准MATLAB仿真程序
开发语言·matlab
nimadan129 小时前
**手机小说扫榜工具2025推荐,精准追踪榜单动态与题材风向
python·智能手机
编程武士9 小时前
Python 各版本主要变化速览
开发语言·python
hqwest9 小时前
码上通QT实战29--系统设置04-用户操作管理
开发语言·qt·模态窗体·addbindvalue·bindvalue