首页/新闻资讯/正文详情

easyocr:基于Pytorch的光学字符识别神器

发布时间:2026/9/25 16:53:20 来源:云帆数科 栏目:资讯中心
easyocr:基于Pytorch的光学字符识别神器
文章目录安装并下载模型试用类和方法安装并下载模型easyocr是基于PyTorch的光学字符识别(Optical Character Recongnition, OCR)工具开箱即用支持从自然场景图像到密集文档的文本提取。在确认安装Pytorch之后用pip安装即可。pip install easyocr -i https://pypi.tuna.tsinghua.edu.cn/simpleeasyocr在使用时需要从github下载模型考虑到github经常抽风这里推荐离线下载下载完成后可将.pth文件放进C:\Users\用户名\.EasyOCR\model\路径下。共有两类文件一个是检测模型地址为https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/craft_mlt_25k.zip https://github.com/JaidedAI/EasyOCR/releases/download/v1.6.0/pretrained_ic15_res18.zip https://github.com/JaidedAI/EasyOCR/releases/download/v1.6.0/pretrained_ic15_res50.zip另一类是语言模型语言列表为EasyOCR Model Hub。试用下面以下面这张刚截的图片为例运行结果如下importeasyocr patheasyocr.png# 图片路径readereasyocr.Reader([ch_sim,en])resultreader.readtext(path)forresinresult:print(f{res[2]:.2}:{res[1]}) 0.86: import easyocr 1.0: path 0.45: easyocr. Png 0.77: 图片路径 0.75: peader 0.3: easyocr .Reader ( [ ch_sim 0.8: pesult 0.69: reader.readtext (path ) 其中readtext方法的返回值是结果列表其中每一项都是一个三元组依次是文本框的坐标识别结果以及置信度。类和方法【Reader】是easyocr的核心类【readtext】为Reader的核心方法。二者签名如下classReader(lang_list,gpuTrue,model_storage_directoryNone,user_network_directoryNone,detect_networkcraft,recog_networkstandard,download_enabledTrue,detectorTrue,recognizerTrue,verboseTrue,quantizeTrue,cudnn_benchmarkFalse):defreadtext(image,decodergreedy,beamWidth5,batch_size1,workers0,allowlistNone,blocklistNone,detail1,rotation_infoNone,paragraphFalse,min_size20,contrast_ths0.1,adjust_contrast0.5,filter_ths0.003,text_threshold0.7,low_text0.4,link_threshold0.4,canvas_size2560,mag_ratio1.,slope_ths0.1,ycenter_ths0.5,height_ths0.5,width_ths0.5,y_ths0.5,x_ths1.0,add_margin0.1,threshold0.2,bbox_min_score0.2,bbox_min_size3,max_candidates0,output_formatstandard)参数非常多除了刚刚已经用到的lang_list和image之外还有几个参数相对比较重要其中Reader类的参数gpu设为True时启用GPU。否则用CPU。model_storage_directory**模型路径**。自定义预训练权重.pth文件的存放目录。设为None时使用系统默认路径如~/.EasyOCR/modelreadtext的参数。allowlist白名单。强制模型仅输出该字符串中包含的字符。例如识别车牌时设为0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZblocklist黑名单。强制模型忽略该字符串中包含的字符。detail输出详细度。1返回[边界框坐标, 识别文本, 置信度]设为0则仅返回纯文本字符串列表。其他参数含义如下参数含义备注user_network_directory自定义网络路径用于加载用户自行训练的网络结构定义文件。detect_network检测算法指定文本检测网络默认为craft也可选其他支持的轻量级变体 [[2]]。recog_network识别算法指定文本识别网络。可选standard或generation2g2 版本通常推理更快 [[2]]。download_enabled自动下载模型缺失时是否允许联网下载。离线部署必须设为False。detector启用检测若设为False则跳过检测阶段假定输入图像已是裁剪好的单行文本直接执行识别。recognizer启用识别若设为False则仅执行文本框检测不进行文字识别。verbose日志输出是否在控制台打印模型加载和运行的详细信息。quantize模型量化是否对模型进行 INT8 量化可减少内存占用并提升 CPU 推理速度但可能轻微损失精度。cudnn_benchmarkcuDNN 优化若输入图像尺寸固定设为True可让 cuDNN 自动寻找最优卷积算法提升 GPU 速度。参数含义备注decoder解码策略默认为贪心解码greedy。可选束搜索beamsearch精度更高但更慢beamWidth束搜索宽度仅在beamsearch解码时生效控制搜索树的分支数量。batch_size批处理大小大于 1 可显著提升 GPU 识别速度但会线性增加显存消耗workers数据加载线程PyTorch DataLoader 使用的线程数0 表示使用主线程。paragraph段落合并是否根据空间位置将相邻的检测框合并为完整的段落文本检测阶段Detection超参数注通常无需修改仅在特定场景如极小文本、低对比度图像识别失败时微调。text_threshold(0.7): 文本像素的置信度阈值高于此值判定为文本。low_text(0.4): 文本区域的下限阈值用于连接相邻的弱文本像素。link_threshold(0.4): 连接相邻字符区域形成完整文本行的阈值。canvas_size(2560): 检测网络输入图像的最大边长。超大图像会被等比缩放至此尺寸。mag_ratio(1.0): 图像放大比例。处理极小文本时可设为1.5或更高。min_size(20): 忽略面积或边长小于此像素值的检测框用于过滤噪点。contrast_ths(0.1): 判定图像为“低对比度”的阈值。adjust_contrast(0.5): 当图像对比度低于contrast_ths时自动增强到的目标对比度。filter_ths(0.003): 基于字符高度的后处理过滤阈值剔除异常比例的检测框。bbox_min_score(0.2): 检测框的最低置信度得分低于此值的框被丢弃。bbox_min_size(3): 检测框允许的最小像素尺寸。max_candidates(0): 检测阶段保留的最大候选框数量0表示无限制。识别与几何后处理超参数rotation_info(None): 列表如[90, 180, 270]。指定模型尝试旋转图像的角度用于处理多方向或倒置文本。add_margin(0.1): 在裁剪检测框周围额外添加的边距比例10%以保留更多字符边缘上下文。slope_ths,ycenter_ths,height_ths,width_ths,y_ths,x_ths: 均为浮点数。仅在paragraphTrue时生效用于计算两个文本框在斜率、中心点距离、宽高比上的几何相似度以决定是否合并为同一段落。output_format(standard): 输出数据格式可选standard或dict返回结构化字典。

相关推荐

为什么 4 卡生成快了近 5 倍?MiniMax-H3-Comfy-NPU 多 NPU 并行 1/2/4 卡配置全解
为什么 4 卡生成快了近 5 倍?MiniMax-H3-Comfy-NPU 多 NPU 并行 1/2/4 卡配置全解

为什么 4 卡生成快了近 5 倍?MiniMax-H3-Comfy-NPU 多 NPU 并行 1/2/4 卡配置全解 【免费下载链接】MiniMax-H3-Comfy-NPU 项目地址: https://ai.gitcode.com/Ascend-SACT/MiniMax-H3-Comfy-NPU MiniMax-H3-Comfy-NPU 是一个让 MiniMax-H3 视频音频联合生成… · 2026/9/25 16:53:14

用 Dify 打造数据可视化图表:从数据接入到图表输出的完整配置指南
用 Dify 打造数据可视化图表:从数据接入到图表输出的完整配置指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 16:52:49

基于SpringBoot的个人健康与运动习惯追踪系统设计与实现
基于SpringBoot的个人健康与运动习惯追踪系统设计与实现

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 1. 项目背景与意义 随着生活节奏的加快和工作压力的增大,久坐、缺乏运动、作息不规律等不良生活习惯日益普遍,亚健康状态成为现代人面临的突出问… · 2026/9/25 16:52:43

Win10安装IE11全攻略:离线安装、Edge IE模式与报错排查
Win10安装IE11全攻略:离线安装、Edge IE模式与报错排查

2024年了,还在认真研究 Win10 装 IE11 的人,十个里有八个是被老系统逼的,剩下两个是被领导、财务或客户逼的。我这两年做企业IT维护,每个月都要碰见几台必须跑IE的电脑——银行U盾登录、旧OA审批、老版本ERP、监控平台&#xff0c… · 2026/9/25 17:32:06

5000元预算DIY装机:高性价比配置单与避坑指南
5000元预算DIY装机:高性价比配置单与避坑指南

5000块钱装一台电脑,现在到底能配到什么水平?这个问题我这两年被人问了不下上百回——有大学生想赶在开学前配一台能带去宿舍的台式机,有刚工作的年轻人想换台既能打游戏又能干活的主机,还有替孩子过来打听行情的家长。我的回答一… · 2026/9/25 17:32:00

BlockNote 表格混合列宽的 Markdown 导出:从 columnWidths 到 GFM 快照的完整链路解析
BlockNote 表格混合列宽的 Markdown 导出:从 columnWidths 到 GFM 快照的完整链路解析

前端富文本UI组件AI 应用 【免费下载链接】BlockNote A React Rich Text Editor thats block-based (Notion style) and extensible. Built on top of Prosemirror and Tiptap. 项目地址: https://gitcode.com/gh_mirrors/bl/BlockNote 点击查看 免费下载 本文以 B… · 2026/9/25 17:31:42

EasyWeChat 6.x 微信开发疑难解答全攻略:从环境配置到平台接入的排坑指南
EasyWeChat 6.x 微信开发疑难解答全攻略:从环境配置到平台接入的排坑指南

后端即时通讯 【免费下载链接】easywechat 📦 一个 PHP 微信 SDK 项目地址: https://gitcode.com/gh_mirrors/ea/easywechat 点击查看 免费下载 在微信公众平台、小程序与支付接口的对接过程中,开发者常会遇到证书校验失败、授权目录未注册、… · 2026/9/25 17:31:42

RubricRL实战:用结构化评分表替代标量奖励的大模型强化学习方案
RubricRL实战:用结构化评分表替代标量奖励的大模型强化学习方案

1. 为什么我要折腾 RubricRL 这件事大语言模型做强化学习,这两年最主流的路线基本被 RLHF 和后来的 DPO、GRPO 这些方法占满了。但真上手做过的人都知道,RLHF 那套奖励模型(Reward Model)的训练成本高得离谱,而且奖励模… · 2026/9/25 17:31:36

ONNX Runtime端侧部署三要素:打包、量化与线程治理
ONNX Runtime端侧部署三要素:打包、量化与线程治理

1. 项目概述:为什么端侧推理不能只靠“跑通就行”ONNX Runtime 打包、量化与推理线程治理——这九个字不是技术堆砌,而是端侧模型落地的三道生死关。我带团队做过17个终端AI项目,从智能摄像头固件到车载语音助手,再到工业手持终端… · 2026/9/25 17:31:30

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码