文本检测算法新思路:基于区域重组的文本检测

article/2025/9/10 18:31:12
摘要:文本检测是文本读取识别的第一步,对后续的文本识别有着重大的影响。本文主要介绍基于区域重组的文本检测算法。

本文分享自华为云社区《技术综述十三:弯曲文本检测算法(一)》,作者: 我想静静 。

背景介绍

文本检测是文本读取识别的第一步,对后续的文本识别有着重大的影响。一般场景下,可以通过对通用目标检测算法进行配置修改,来实现对文本行的检测定位。然而在弯曲文字场景,通用目标检测算法无法实现对文字边框的精准表述。因此,近年来很多学术论文都提出了新颖的解决场景文字检测的算法,主要包括两种思路:1. 基于区域重组的文本检测;2. 基于像素分割的文本检测。本文主要介绍基于区域重组的文本检测算法。

PixelLink

PixelLink主要是针对相邻文本难以分离这个问题而提出的。该方法主要是预测文本/非文本区域,以及每个像素和它的上、下、左、右、左上、右上、左下、右下的像素之间的连接关系。在推理阶段,被预测为文本的像素和与该像素具有连接关系的像素被连接在一起。最后每个连接组件的最小外接矩形作为文本边框。

图1. PinxelLink 算法框架

由于使用了基于连通域的方法进行文本像素汇聚,导致该方法对噪声比较敏感,在推理阶段容易生成一些面积较小的false positives。作者通过去除掉短边小于10个像素或者面积小于300个像素的检测结果来缓解这个问题。

TextSnake

TextSnake 主要是针对使用四边形框不能有效地检测任意形状文本而提出的。该方法使用一系列重叠的圆盘来表示文本区域,每个圆盘有特定的圆心、半径、方向。如图1所示,通过预测文本区域、文本中心线(实际上是中心区域)、文本中心线上每个点对应的半径以及角度来重建文本轮廓。后处理阶段需要从预测的文本中心区域获得多个中心点作为圆盘的圆心,然后根据圆心对应的半径画圆,最后将所有圆的轮廓包围起来得到最终的文本边界框。

图2. TextSnake 文本表征方法

图3. 中心点机制

获得圆盘中心点的步骤如图3所示,首先在预测的文本中心区域随机取一个点,然后根据预测的方向做该点的切线和法线,法线和文本中心区域的两端的交点的中点(图(a)的红点)即是该处的中心点(作为圆盘的圆心)。中心点沿着两个相反的方向前进一定的步长,得到两个新的点,而后根据这两个新的点再寻找对应的中点。以此类推,直到进行到文本中心区域的两端。

该方法能有效地检测任意形状、方向的文本,但是后处理比较复杂且耗时。

CRAFT

CRAFT主要是针对基于字符级的文本检测方法对于曲形文本检测存在限制的问题而提出的,但同样适用于弯曲文本检测。该论文的思路是通过回归字符和字符间的亲和力来检测任意形状文本,这里的亲和力是用于表示相邻的字符是否属于同一个文本实例。此外,由于很多数据集没有提供字符级标注,本文提出一个弱监督算法来从字级标注中生成字符级标注。

图4. CRAFT网络架构

如图4所示,字符区域和相邻字符亲和力都是通过一个通道进行回归得到。

图5. CRAFT 字符区域的ground-truth生成方法

用于训练模型的字符区域得分和亲和力得分的ground truth生成过程如图5所示。对于字符区域得分,首先生成一个2D高斯图,然后计算该高斯图变换到对应的字符框的透视变换矩阵,最后使用这个矩阵将2D高斯图变换到相应的字符区域。对于亲和力得分的ground-truth的生成也是使用相同的方法,前提只需要获得亲和力框。获得亲和力框的过程如下:1. 每个字符框连接对角线将字符框划分为4个三角形,取上下方的三角形的中心作为亲和力框的顶点。2.相邻两个字符框得到的2个上三角形和下三角形的中心作为四边形的顶点构成了一个亲和力边框。

弱监督字符生成算法生成字符伪标签的过程: 1. 使用在合成数据集训练好的模型预测剪裁下来的文本区域的字符区域得分;2. 使用分水岭算法得到每个字符区域;3. 将坐标变换到原图得到实际的字符边框坐标。

图6. CRAFT 弱监督学习过程

后处理:在推理阶段,预测出字符和亲和力图之后,置信度大于指定阈值的字符区域和亲和力区域都被置为1。然后标记每个连通区域。最后,对于四边形文本,使用最小外界矩形作为边框。

图7. 弯曲文本边框重组过程。

对于曲形文本,获得文本轮廓的过程如图7所示:第一步是沿着字符的方向找到每个字符区域的局部最长线;每条线的中心连接起来的线为中心线;每条局部最长线旋转到与中心线垂直;两端的线移动到文本区域的两端;将所有端点连接得到曲形文本边框。

本文主要介绍了基于区域重组的文本检测算法,下篇文章将继续介绍基于像素分割的文本检测算法,敬请关注。

Reference

[1]. Deng D, Liu H, Li X, et al. Pixellink: Detecting scene text via instance segmentation[C] //Proceedings of the AAAI Conference on Artificial Intelligence. 2018, 32(1).

[2]. Long S, Ruan J, Zhang W, et al. Textsnake: A flexible representation for detecting text of arbitrary shapes[C]//Proceedings of the European conference on computer vision (ECCV). 2018: 20-36.

[3]. Baek Y, Lee B, Han D, et al. Character region awareness for text detection[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2019: 9365-9374.

点击关注,第一时间了解华为云新鲜技术~


http://chatgpt.dhexx.cn/article/wMbvXUIQ.shtml

相关文章

OCR文本检测模型—CTPN

文章目录 一、CTPN简介二、CTPN检测流程三、小结 一、CTPN简介 一个简单的文字识别流程如下: Step 1. 通过手机、摄像机、扫描仪等设备采集含有待识别字符的图像,作为输入; Step 2. 对图像进行尺寸缩放、明暗调整、去噪等预处理操作&#…

OpenCV实战——文本检测

OpenCV实战——文本检测 tesseract的安装代码实践将图片中的内容识别打印,并绘制边框单词(word)检测只进行数字识别 tesseract的安装 首先说一下下官网的地址:下载地址 大家根据自己的操作系统(是32位还是64位&#…

【文本检测与识别白皮书-3.1】第一节:常用的文本检测与识别方法

点击领取AI产品100元体验金:https://www.textin.com/coupon_redemption/index.htmlhttps://www.textin.com/coupon_redemption/index.html # 3.常用的文本检测与识别方法 ## 3.1文本检测方法 随着深度学习的快速发展,图像分类、目标检测、语义分割以及实…

paddleocr文本检测模型的训练

1、环境的安装和开源项目的下载 首先我个人建议,玩深度学习的话,不管是工作还是学习,最起码要配一个有GPU的电脑。我个人有着血淋淋的教训,我本人是电气工程的一名学生,本科期间一点深度学习和机器学习的基础都没有&am…

文本检测实战:使用OpenCV实现文本检测(EAST 文本检测器)

在本教程中,您将学习如何使用 OpenCV 使用 EAST 文本检测器检测图像中的文本。 EAST 文本检测器要求我们在我们的系统上运行 OpenCV 3.4.2 或 OpenCV 4 。 论文原文:https://arxiv.org/abs/1704.03155 代码地址:https://github.com/argman/…

脏话文本检测方案

目录 1. 场景2. 方案3. 数据增强4. 代码 1. 场景 在问答系统中用户问题可能存在违规情况,包含涉政、色情、辱骂文字的文本视为违规文本。本文提出一种违规文本检测方案, 本方案仅限于判断文本是否包含违规内容,属于文本分类问题。 2. 方案 方…

OCR文本检测模型:FCENet论文阅读笔记

文章目录 前言摘要(Abstract)1. 介绍(Introduction)2. 相关工作(Related Work)3. 方法(Approach)3.1 傅里叶轮廓嵌入(Fourier Contour Embedding)3.2 FCENet 4.实验(Experiments)总结 前言 最近…

文本检测数据集标注

工具链接:Curve-Text-Detector/data at master Yuliang-Liu/Curve-Text-Detector GitHub 目录 前言 一、工具介绍 1.标注格式 2.工具使用 二、标注步骤 1.数据准备 2.数据标注 3.数据集label可视化 总结 前言 本次介绍的标注方式和标注工具均为2017年华南…

AI实战:2019、2020最新的中文文本检测检测模型

2019、2020最新的中文文本检测检测模型 1、DBNet(Real-time Scene Text Detection with Differentiable Binarization) 论文地址:https://arxiv.org/pdf/1911.08947.pdf 作者:华中科技大学 Minghui Liao 1∗ , Zhaoyi Wan 2∗ ,…

人工智能学习--文本检测初探

一、相关概念和综述: 转自知乎热心网友 燕小花女士的内容,供学习使用,若侵权则删。貌似写于2018年12月,之后这几年的流行方法更新,自行搜索sci顶刊和会议论文。 https://zhuanlan.zhihu.com/p/52335619 文本检测的难…

文本检测综述(2017 ~ 2021)

文本检测综述 文本检测传统方法文本检测深度方法目标检测文本检测1.【ECCV2016】CTPN(Detecting Text in Natural Image with Connectionist Text Proposal Network)2. 【CVPR2017】SegLink(Detecting Oriented Text in Natural Images by li…

文本检测算法----TextFuseNet(IJCAI-PRICAI-20)

多种文本检测算法性能对比及算法介绍 (https://blog.csdn.net/qq_39707285/article/details/108754444) TextFuseNet: Scene Text Detection with Richer Fused Features 前言1. 算法简介2. 算法详解2.1 网络结构2.2 Multi-level Feature Representation2.3 Multi-path Fusion …

Exploring the Capacity of Sequential-free Box Discretization Network for Omnidirectional Scene Text

Paper : https://arxiv.org/abs/1912.09629v1 Code : https://tinyurl.com/sbdnet SBD首先将四边形边框离散为几个关键边缘,其中包含所有可能的水平和垂直位置。为了解码准确的顶点位置,提出了一种简单而有效的匹配程序来重构四边形边界框。 基本思想是…

文本检测模型综述

之前做车牌检测使用文本检测模型,如east、ctpn和textboxes,但是效果不是很好,需要针对车牌专门训练。后面就采用ssd和yolo进行车牌的检测,但是车牌有时是旋转的,使用ssd和yolo模型无法对车牌的四个点进行精确定位&…

OCR系列——文本检测任务

1. 简介 文本检测任务是找出图像或视频中的文字位置。不同于目标检测任务,目标检测不仅要解决定位问题,还要解决目标分类问题。 目标检测和文本检测同属于“定位”问题。但是文本检测无需对目标分类,并且文本形状复杂多样。 当前所说的文本…

文本检测(Text Detection)简要综述

文章目录 检测(Detection)在计算机视觉中的位置检测任务经典数据集评价指标发展历史什么叫Anchor检测架构RPNFPN(特征金字塔网络) 几个文本检测的较新方法FOTS(【2018CVPR】Fast Oriented Text Spotting with a Unified Network)TextSnake(【2018ECCV】 TextSnake: A Flexible …

思维导图——线性代数知识点总结

线性代数知识点总结 期末,总结了线性代数的相关知识点。

线性代数知识点总结,基础概念和计算整理(手写版)

线性代数中一定必须要掌握的基础概念和计算的整理,简单易懂,适合入门和复习。

线性代数基础知识点回顾与总结(一):行列式与矩阵

线性代数基础知识点回顾与总结(一):行列式与矩阵 介绍 骨骼图 1.行列式 排列: 1,2,,n组成的有序数组称为n阶排列。 逆序:大数排在小数前。自然排列为偶排列。 n阶行列式的值等于不同行的n…