[目标检测] OCR: 文字检测、文字识别、text spotter

news2024/11/29 8:49:45

概述

OCR技术存在两个步骤:文字检测和文字识别,而end-to-end完成这两个步骤的方法就是text spotter。

文字检测数据集摘要

daaset语言体量特色
MTWI中英文20k源于网络图像,主要由合成图像,产品描述,网络广告(淘宝)
MSRA-TD500中英文
SynthText800k img + 8000k text合成数据
CTW1500中文32k野外场景
ICDAR 2015
ICDAR 2019-ReCTS中文标识牌上的文字(店铺名等)
ICDAR2019-ArT中英文组合Total-Text+SCUT-CTW1500+Baidu Curved Scene Text
ICDAR2019-LSVT中英文30k full annotation + 40k weakly annotationLarge-scale Street View Text with Partial Labeling,
ICDAR2017-DeTextText Extraction from Biomedical Literature Figures, 生物医学文献图形中的文本提取
ICDAR 2011 (Born-Digital Images)、ICDAR 2017英文
CurvedSynText150k英文
Total-Text英文+少量中文1.5k各种形状的文本,包括水平的,多取向的和弯曲的
Lecture Video DB
IMGURhandwriting
KAIST
ILST印度语言三种印度语言(Devanagari 、 Telugu 和Malayalam)的场景文本识别数据集
VinText
BID巴西身份证件数据集
RCTW12k+手机野外拍摄,包括街景、海报、菜单、室内场景以及手机应用的截图
HierText (Google)英文自然图像或者文献

OCR方法

前沿text spotter方法

  • PSENet、PAN、PAN++(PAMI 2021)
  • DeepSolo (CVPR2023)

方法框架

  • mmocr: 集成方法并不是最新的(2022年以前的),其中预训练方法只支持英文,文字检测方法还可以检测出中文,文字识别无法识别中文,text spotter尚未介入到统一的接口中。

Github high star

  • tesseract(57.7k star):大概率是文字识别模型,C/C++,提供command line tool。
  • PaddleOCR(38.1k star): 80+ language support。提供轻量化、提供在线demo(后面有测试),provide data annotation and synthesis tools, support training and deployment among server, mobile, embedded and IoT devices。
  • EasyOCR(21.8k star): pytorch based,文字检测基于CRAFT,识别基于LSTM+Transformer。Ready-to-use OCR with 80+ supported languages and all popular writing scripts including Latin, Chinese, Arabic, Devanagari, Cyrillic and etc.提供 在线DEMO。
  • tesseract.js (33.2k star): pure Javascript OCR for more than 100 Languages。
  • UniOCR (20.6k star): 提供一个界面。
  • OCRmyPDF (11.8k star): 解析pdf图片,基于tesseract。

PaddleOCR(PP-OCRv4)测试图如下

(1)弧形分布文字检测和识别都不准
PPOCRv4
(2) 放大了也识别不出来,应该和training data相关

Reference

  • https://mmocr.readthedocs.io/en/dev-1.x/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1586664.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AcWing-直方图中最大的矩形

131. 直方图中最大的矩形 - AcWing题库 所需知识:单调栈 思路:要求最大矩形,所以需要使矩形的高与长的乘积最大即可,依次从左到右将每一列当作中心列,向两边扩散,直到两边的高都小于该列的高,…

Prj文件的几种制作方式

0.序: 多数平面坐标的设计成果,不论是CAD文件,还是BIM模型,还是投影单独存储的tif影像,还是国土部门申请的平面坐标的文本文件,要想和底图叠加,都需要通过正确的投影匹配起来。 多数软件都提供…

解决源 “MySQL 8.0 Community Server“ 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确。

源 “MySQL 8.0 Community Server” 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确。 失败的软件包是:mysql-community-server-8.0.31-1.el7.x86_64 GPG 密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql…

8. 托盘图标与菜单

内容概要: 托盘图标的设置与事件 右键菜单的相关操作 窗口组件: 1.组件的属性 组件属性:位置 组件属性:可视 2.组件的事件 窗口_托盘事件-带有参数的事件的使用方法 3.组件的方法 置托盘图标 菜单的操作 1.创建菜单 …

模型训练----apex库报错IndexError: tuple index out of range

问题描述 在训练模型的过程中遇到了apex库的报错IndexError: tuple index out of range导致无法训练。在github查询后找到了解决方法 问题解决 需要修改/apex-master/apex/amp/utils.py这个文件的代码 从93行开始修改 if x in cache:cached_x cache[x]next_functions_ava…

nvm更新node版本

1、nvm安装和管理多个 Node.js 版本:NVM 允许用户在计算机上同时安装多个不同版本的 Node.js。这使得开发人员可以轻松地在不同的项目中使用不同的 Node.js 版本,而无需手动安装或卸载。 2、nvm切换 Node.js 版本:通过 NVM,用户可…

软考122-上午题-【软件工程】-需求分析

一、软件需求 在进行需求获取之前,首先要明确需要获取什么,也就是需求包含哪些内容。 软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。通常,这些需求包括功能需求、性能需求、用户或人的因素、环境需求、界面需…

深入探索力扣第12题:整数转罗马数字的算法之旅

作者介绍:10年大厂数据\经营分析经验,现任大厂数据部门负责人。 会一些的技术:数据分析、算法、SQL、大数据相关、python 欢迎加入社区:码上找工作http://t.csdnimg.cn/Q59WX作者专栏每日更新: LeetCode解锁1000题: 打…

国家统计局行政区划获取及入库ES实践

我们先看下最终效果: 1. ES索引新建 PUT administrative_division {"mappings": {"properties": {"province": {"type": "keyword"},"province_code": {"type": "keyword"},&q…

Factory Method 工厂方法

意图 定义一个用户创建对象的接口,让子类决定实例化哪一个类,Factory Method使一个类的实例化延迟到其子类 结构 其中 Product定义工厂方法做创建的对象的接口。ConcreteProduct实现Product接口Creator声明工厂方法,该方法返回一个Product…

海外软文通稿代发 - 大舍传媒

引言 在当今高度信息化的时代,企业和个人品牌形象的塑造与传播变得越来越重要。为了在国际舞台上获得更大的竞争优势,许多企业和品牌纷纷将视线投向了国外市场。而在这个过程中,专业的软文通稿代发服务成为了他们的得力助手。本文将向您介绍…

milvus各组件的结构体分析

milvus各组件的结构体分析 各组件启动,需要构建各组件的结构体,一共8个。 runComponent(ctx, localMsg, wg, components.NewRootCoord, metrics.RegisterRootCoord) runComponent(ctx, localMsg, wg, components.NewProxy, metrics.RegisterProxy) run…

HTTPS证书是什么?申请方法是什么?

HTTPS证书是互联网上由权威证书颁发机构(CA)签发的数字文件,用于证明网站的身份,并通过其中包含的公钥为网站启用HTTPS加密连接,确保用户与网站间的通信数据安全且不可被第三方窃取或篡改。 怎么申请? 一&…

什么是云原生

什么是云原生 云原生的定义 aws: 云原生是在云计算环境中构建、部署和管理现代应用程序的软件方法。现代公司希望构建高度可伸缩、灵活和有弹性的应用程序,以便能够快速更新以满足客户需求。为此,他们使用了支持云基础设施上应用程序开发的现…

【低成本-点云采集】使用XRFoundation实现点云采集

使用XR Foundation 现基于XR Foundation的接口实现渲染和采集 关键类 ARPointCloudManager 介绍 ARPointCloudManager:ARTrackedObjects的管理器。使用XRDepthSubsystem来识别和跟踪物理环境中的深度数据。 属性 NameDescriptiongameObjectNameThe name to b…

接口自动化入门: Requests请求头设置详解!

在进行接口自动化测试时,设置请求头是非常重要的一步。请求头可以包含各种信息,例如身份验证、内容类型、接受语言等。在实际的测试中,我们使用Python的Requests库来发送HTTP请求,并设置请求头来模拟不同的场景和需求。 下面将通…

【炒股Zero To Hero】MACD金叉死叉到底是否有效,加上这个指标回报率增加197倍

移动平均收敛散度(MACD - Moving Average Convergence Divergence)是一种趋势跟踪动量指标,显示了证券价格的两个移动平均之间的关系。它用于识别趋势的方向和强度,属于技术分析中振荡器的一类。 MACD如何衡量股票及其趋势 有两…

一天300收入打底,​一个适合任何人的创业项目!

共享旅游卡项目,一天300收入打底,一个适合任何人的创业项目! 只要你不懒,生活总过得不会太差。只要你不贪,就算不能大富大贵,至少不会负债累累。 人性最难戒掉的两个字:一个是懒,另…

五、书架开发--1.书架标题组件交互、获取书架数据

添加书架页面,做路由配置 首先添加书架页面,到views中的store中添加一个StoreShelf表示书架 然后到路由中进行注册 然后书城首页的返回键我们是想要点击返回的话就跳转到书架页面,所以如下this.$router.push(/store/shelf) 做书架标题组件 …

python|pandas的loc

159就是一行。 ac就是那两行