当前位置:首页 期刊杂志

基于分割的自然场景下文本检测方法与应用*

时间:2024-05-22

陈小顺,王良君

(江苏大学 计算机科学与通信工程学院,江苏 镇江212013)

0 引言

视觉图像是人们获取外界信息的主要来源,文本则是对事物的一种凝练描述,人通过眼睛捕获文本获取信息,机器设备的眼睛则是冰冷的摄像头。 如何让机器设备从拍照获取的图像中准确检测识别文本信息逐渐为各界学者关注。

现代文本检测方法多为基于深度学习的方法,主要分为基于候选框和基于像素分割的两种形式。本文选择基于像素分割的深度学习模型作为文本检测识别的主要研究方向,能够同时满足对自然场景文本的精确检测,又能保证后续设备功能(如语义分析等功能)的拓展。

1 基于像素分割的文本检测方法

1.1 PixelLink 算法原理

PixelLink[1]算法训练FCN[2]预测两种分类:文本与非文本像素、像素间连接关系。 数据集中的文本框内像素整体作为文本像素,其他为非文本像素。与九宫格类似,每个像素的周围有8 个相邻的像素,对应有8 种连接关系。 文本与非文本像素之间的值为负,文本与文本像素之间的值为正,非文本像素之间的值为零。 将值为正的像素与相邻8 个像素之间的连接关系连通成一片分区,每个连通区则代表分割出的文本区。 最后通过OpenCV中的minAreaRect 方法直接得到文本区的最小外接矩形边界框。

1.2 文本检测网络模型设计

改进后网络模型如图1 所示,通过Mask map 连接。在原有VGG16[3]网络模型每个池化层后增加图2 中SE Block[4]以获取每个特征通道的权重,提升有用特征并抑制低效特征通道。

图1 Mask map 生成

图2 SE Block

与FCN 中方法相似,从Conv3、Conv4、Conv5、Fc7 层进行上采样UpSampled 与融合⊕,使用双线性插值作为上采样方法,使用加和操作作为融合方法,得到预测特征图Mask map,过程如图1 所示。 除Pool5 步长为1,其余池化层步长都为2。其中Fc7 与Conv5 大小一致,可不经过上采样直接相加。

模型中1×1 的卷积核共两种,其中2 个1×1 的卷积核用于文本和非文本像素预测,16 个1×1 的卷积核用于像素连接关系预测。

图2 为插入PixelLink 方法中的SE Block,输入特征图与计算后输出尺度不变。

坐标点可以看做是序列问题[5],对Mask map 图中生成的矩形框区域进行边界框预测,每次预测一对坐标点,直至矩形框边界。 有隐性约束条件,例如第4 个点必须在第2 个点的右边,后续对特征图Mask map 进行基于RNN 的自适应文本框预测,采用长短期记忆LSTM[6]模型处理队列顺序问题,最终完成对文本的精确定位。图3 为文本框预测部分模型结构。

图3 文本框生成

1.3 文本检测网络模型训练

1.3.1 公开数据集重新标定

自然场景中的文本多用旋转矩形框和四边形框定位,坐标通常以顺时针方向标注。 本文将坐标点按照上下一对形式从左到右的顺序排列,通过此方法将公开数据集的坐标数据进行重新编排。

1.3.2 损失函数定义

改进后算法总体损失函数定义如下:

其中, 文本与非文本分类任务上的损失函数Lpixel和像素连接关系任务的损失函数Llink与原像素连接PixelLink 算法保持一致;边界点回归任务损失函数Lreg、停止/继续标签分类任务损失函数Lcls为框点对预测中的损失函数;λ1、λ2、λ3、λ4分 别 为 文 本 与 非 文 本 分 类 任 务、像 素 连接关系任务、边界点回归任务、停止/继续标签分类任务的权重参数,因像素连接关系预测任务、边界点回归任务、停止/继续标签分类任务都是在第一个文本像素任务基础上进行计算的,所以像素分类任务比这3 种任务更重要,本实施例中λ1=2,λ2、λ3、λ4默认设置为1。

1.3.3 训练方法与实验环境

与Pixellink 方法相似,使用xavier 参数[7]初始化方法,无需使用ImageNet 数据集[8]预训练。 算法在服务器中用两张TeslaP4 显卡进行训练,使用Anaconda+PyCharm管理,环境及依赖:tensorflow-gpu==1.14,ujson,threadpool,opencv,matplotlib,Pillow,Cython,setproctitle,shapely,Python3.6。 初始100 次迭代中保持学习速率为10-3,后续迭代中保持10-2不变,在ICDAR2015 数据集上整体迭代约30 000 次后再将模型训练结果作为预训练值,在其他数据集上进行训练。 其中batch_size 设定为4,处理器为Intel Xeon Sliver(2.1 GHz),机器内存为40 GB。 每次迭代需要0.8 s 左右,总训练过程约为15 h。

2 实验结果与分析

2.1 公开数据集测试

本文主要评价方法为IOU 算法,表1 中R 为召回率,P 为精准率,F 为综合评价,* 表示算法是基于分割的检测方法,其他为基于候选框的检测方法。 测试结果表明本文所改进的方法在各个数据集上均超过原有方法。在对曲向文本的识别方法中领先,并且在水平文本和倾斜文本检测中能够接近基于候选框检测方法的检测精度。

2.2 自建数据集测试

为测试文本检测方法在实际生活应用中的检测效果,使用OV5648USB 摄像头模块累计拍摄300 张不同场景下图像作为测试图像,原图分辨率大小为:2 592×1 944。如图4 所示,为突出显示检测结果,截取主要定位部分,图像中的中文部分以中文词语作为一条文本行,英文以短语作为一条文本行。 共计2 506 条文本,其中1 964 条中文文本(包含数字),542 条英文文本。

表1 公开数据集测试结果

图4 自建数据集检测结果

深色框为改进前方法的定位结果,浅色框为改进后的方法定位结果,右图为对应的像素分割后的检测结果。 从特征图中可以看出,本文方法对长条形的英文检测敏感,能够有效检测出长条形的英文,对曲向的英文有着不错的识别能力。 在对图像进行检时,平均每张检测速度为0.89 s,即FPS=1.12,R=72.9,P=70.0,F=71.4。

3 结论

本文提出改进的文本检测方法在数据集表现上均超过原有方法,接近当前领先的算法精度,能够提高已有文本识别系统对自然场景下曲向文本与模糊文本的识别精度。 后续结合自然语言处理和语义分割任务,又可以将所识别的文本内容、文本背景内容组合生成关于一张图片中文本的具体描述内容,使得使用者获取更多的文本信息。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!