欢迎访问黑料吃瓜网

10年专注吃瓜

吃瓜质量有保 售后7×24小时服务

24小时咨询热线:4006666666
您的位置:首页>>998吃瓜>>正文

998吃瓜

360数科OCR世界技能比赛冠军,商超小票文本行辨认怎么做到最佳?

发布时间:2025-05-20 点此:502次

机器之心报导

自然的360数科OCR国际技术竞赛冠军,商超小票文本行识别如何做到最佳?的图片

机器之心编辑部

在 OCR 辨认范畴最威望的会议之一 ICDAR(世界文档剖析与辨认会议)上,360 数科在 ICDAR2019- SROIE 榜单上斩获榜首。

榜单地址:https://rrc.cvc.uab.es/?ch=13&com=evaluation&task=2

作为核算机视觉范畴一个重要分支,OCR(Optical Character Recognition,光学字符辨认)技能首要包含三大方面,别离是文本检测、文本辨认和视觉信息抽取。文本检测是经过 OCR 算法定位图画中文字,一般经过四边或许矩形框表明文字的方位。文本辨认是经过辨认算法或许模型,将给定的文字片段图画中的文字经过字符串的办法转写出来。而视觉信息抽取则是将图画中人们界说的要害信息抽取出来,比方名字、性别、电话号码等。

360 数科期望经过共享在文本辨认和言语纠错方面的探究和总结,能对业界带来一些协助或启示。

1 SROIE2019 赛事介绍

在 ICDAR2019 Robust Reading Competitions 的 6 个赛道上 [1~6],SROIE2019 更重视商超小票文本行检测、辨认和信息抽取,这也是 OCR 范畴中现在的难点地点

ICDAR 竞赛因其极高技能难度和强壮实用性,一直是各大科研院校、科技公司的竞逐焦点,招引国内外许多部队参赛。

1.1 赛事介绍

SROIE2019 分为三个子使命:文本检测(要求在原图中给出文本区域的方位坐标)、文本辨认(在给定的文本区域裁剪图基础上,将其间的文字内容正确辨认出来)、视觉信息抽取(抽取辨认出的文本行中的要害信息,比方价格、日期等)。

本次竞赛,咱们专心于 SROIE 中的文本行辨认使命,其点评目标选用 F1 score 点评模型功能。F1 score 是召回率 Recall 和准确率 Precision 的谐和平均值,这三者的核算办法如公式 (1) (2) (3) 所示。

其间,TP、FP、FN 别离表明 True Positive、False Positive 以及 False Negative。TP、FP、FN 的界定是依据辨认出来的文本行与给出来的 GT 逐一单词比较,完全正确断定辨认正确。SROIR 文本辨认使命数据集包含 33626 张练习集和 19385 张测验集样张,其间练习集的标示格局是给出给定文本行图画及对应的文本,如下图 1 所示 [1]。

图 1:练习集数据样张。

1.2 赛事难点

该赛事首要有以下几方面的难点:

  • 文本行字体含糊不清。官方给出的竞赛数据集,均来自商超结算小票扫描图画,因为小票均为机打且寄存时刻过长,导致扫描出来的文本行存在较为严峻的磨损和缺失,字体笔画不完整等景象,这给 OCR 辨认算法带来很大应战。

  • 文本行图画呈现曲折。给出的文本行图画中呈现较大份额的曲折,如今干流文本行辨认算法对水平文本辨认较为稳健,曲折文本行辨认是 OCR 辨认业界难点。

  • 标示歧义。给出来的文本行在对应的文本图画中底子不存在、空格标示过错以及形近字标示过错,这给算法的泛化性带来了很大的冲击。

2 技能计划

算法、数据和算力是推进深度学习往前演进的三驾马车,本末节咱们别离就上述三大块进行具体介绍,以及针对 1.2 说到的赛事难点提出相应的处理计划。

针对 SROIE 中的文本行辨认,咱们首要选用 CRNN [7] 技能计划,并对 CRNN 中的 Encoder 和 Decoder 部分做了许多剖析和比较实验,得到了一个十分不错的 baseline 模型。

其次,针对本次文字含糊不清问题,咱们生成了近 5000W 的数据集并在该数据集上练习得到一个预练习模型,依据该预练习模型进行 finetune,模型大幅提高了 5.4%。终究针对文本行曲折问题,咱们提出了依据 tps+unet 自学习的预处理模块,模型进一步提高了 2.6%

经过以上技能计划的优化,咱们终究提交的成果中 Recall、Precision 和 F1 Score 别离到达了 97.68%97.79% 97.74%,这 3 个点评目标均排名榜首

此外,咱们还在言语纠错模型、loss 和练习战略的挑选进步行了一些计划的探究,给终究模型作用带来了必定的提高。

2.1 CRNN 模型简介

图 2:CRNN 架构图。

关于文本辨认模型,咱们参照 CRNN 将模型的主体分为了两个部分,别离为对图画数据进行特征编码的 Encoder (对应上图中的 CNN 层) 和对文本序列进行解码的 Decoder (对应上图中 Recurrent Layers 和 Transcription Layers)。

关于 Encoder,咱们实验了当时 OCR 技能中干流的 MobileNet [8]、EfficientNet [9]、ResNet [10] 等,终究挑选了在体现与参数量方面都超卓的 ResNet,并对不同层的 ResNet 进行了实验。

关于 Decoder,其可进一步分为对图画切片序列到文本序列进行转化的部分与对文本序列进行解码输出的部分。关于榜首部分,咱们实验了当时干流的序列模型,如 Transformer [11]、LSTM [12] 等。终究,咱们挑选了在体现与稳定性方面都更为超卓的 BiLSTM [13]。不同于一般的 LSTM,BiLSTM 能够捕捉序列双向的文本信息,该特性与本次竞赛数据所呈现出的赋有语义的特色相吻合。

关于 Decode 的第二部分,咱们实验了 CTC [14] 与受时下抢手 Transformer 等模型启示所推出的 Attention [15] 这两种办法。经过实验成果,咱们发现了 CTC 在长文本状况下的体现较为超卓,而 Attention 关于短文本的处理体现得更为优异。

温暖的360数科OCR国际技术竞赛冠军,商超小票文本行识别如何做到最佳?的视图

针对本次竞赛数据文本长度散布方差大的特色,咱们别离尝试了 CTC 与 Attention 两种模型

2.2 模型优化

2.2.1 数据预处理

本次竞赛的数据为文本行图画,其间每条数据的尺度都有所不同。为此,咱们对一切图画的尺度进行对齐以确保模型输入的一致性。经过对全体数据集的尺度散布进行剖析,咱们实验了不同的图画宽高以及 Resize 和 Padding 两种不同的对齐操作。终究选用 Padding 对齐办法,模型的 F1 score 提高 3.2%。

2.2.2 模型前置预处理模块

本次竞赛的图画数据具有含糊、比照度低一级特色。为此,咱们经过对图画进行增强以确保网络输入图画的明晰性。咱们挑选运用 U-Net [16] 网络以主动地学习出适应于全体模型的图画增强办法。经过与传统的图画明显化以及超分辨率网络等办法的比照实验,选用的 U-Net 能自适应的学习出合适网络学习的图画增强办法。

图 3:U-Net 示意图。

此外,本次竞赛的部分图画在文本行处呈现出了歪斜的特质。相较于水平文本,歪斜文本的辨认更具有应战性。

针对这一状况,咱们选用了针对歪斜文本进行处理的 TPS 网络 [17]。该网络能够猜测出 TPS 纠正所需的 K 个基准点,并依据基准点进行 TPS 改换生成采样网格,终究对采样网格进行双线性插值,到达纠正文本的意图。

图 4:TPS 示意图。

终究,输入图画数据在经过了 U-Net 自适应增强和 TPS 的纠正后,模型 F1 score 提高 2.6%

2.2.3 loss 挑选

针对文本辨认使命形近字很难辨认出来的问题,如 "0" 和 "O"。咱们采取了 Center Loss [18],该丢失函数可经过缩小各分类编码与其所属类别中心的间隔以更好地对类似的类别作出区别。运用 Center Loss 后,模型 F1 score 提高 0.6%。

2.2.4 优化器挑选

如上文所述,文本行辨认模型由多个部分组成,一起每个部分的学习使命从数据范畴 (图画 / 文本) 到数据格局 (单条 / 序列) 都有较大的不同。

为此,咱们选用了自适应优化器 Adadelta [19] 来处理。在模型运用 Adadelta 练习到收敛后,在冻结了图画处理的 Encoder 参数的状况下,运用收敛较快的 Adam [20] 对 Decoder 部分的参数进行进一步的练习。运用上述战略后模型 F1 score 提高 0.3%。

2.3 超大规模数据集预练习模型练习

本次竞赛中咱们除了运用官方给出的 33626 张练习集之外,还经过对各种字体、各个语料类别 (数字 / 称号 / 句子) 以及各个图片风格 (磨损 / 歪斜 / 划线) 的模仿,生成了数据集 5000 万张,运用 20 张 V100 显卡进行散布式练习。依据该预练习模型进行 finetune,模型 F1 score 得到了大幅提高 (5.4%),这也是本次竞赛咱们取得冠军的要害。

2.4 言语纠错模型

首要,咱们交融练习 attention 模型和 ctc 模型。关于置信度较低的成果,咱们以为辨认过错的可能性较大,需求运用言语模型对其纠错。经过 2.5 的 badcase 剖析,咱们能够看出,除了空格辨认过错外,还有约 56% 的其它过错。因而,咱们额定练习了一个不含有空格的 attention 辨认模型,并运用该模型的辨认成果替换原有交融模型置信度较低的辨认成果,尽可能防止空格对辨认的搅扰。

然后,咱们对 soft-masked bert [21] 进行了拓宽,在 Bi-GRU [22] 过错检测网络中除了猜测每个字符为错别字的概率外,还额定增加了该字符后需求增加字符的概率。若猜测为过错,咱们会依据概率将该字符的 embedding 与 < mask > 的 embedding 进行线性组合。若猜测为增加,则会在该字符后直接增加 < mask > 的 embedding。在 bert 纠错网络中,咱们增加了 < null > 标签用于标识需求删去的字符。

终究,咱们依据 badcase 的剖析生成了 100 万的练习数据,运用上述战略后,F1 score 提高了 0.7%。

图 5:soft-masked bert 示意图。

2.5 badcase 剖析

经过选用 2.1~2.4 的战略,咱们的模型已经有了很大的提高。经过对验证集上的 badcase 剖析,发现首要有如下几种:空格辨认过错、等长样本辨认过错和不等长样本辨认过错。各过错占比状况如下图 6,其间空格辨认过错占比到达了 44%,其他两种过错别离是等长和不等长过错。以下对上述景象别离介绍并给出咱们的处理计划。

图 6:badcase 散布图。

榜首,空格辨认过错即模型没有将空格辨认正确或许咱们空格辨认成其他字符,如下图。针对该景象咱们人为地为语料赋予了许多空格。一起,为了处理空格间隔的主观性,咱们在往语猜中刺进空格时运用了不定长的空格以让模型学会对空格间隔的把控。

此外,咱们计算了模型猜测空格过错成果中空格前后的字符散布,并依据该散布操控空格在语猜中刺进的方位。

图 7:空格辨认示例。

经典的360数科OCR国际技术竞赛冠军,商超小票文本行识别如何做到最佳?的照片

第二,等长过错即模型辨认出来的成果与 GT 等长,可是存在部分字符辨认过错景象,占比达总辨认过错的 33%,这类过错首要仍是会集在形近字很难正确辨认景象,如下图。GT 为 “1 Small Cone”,咱们的模型辨以为 “1 Small C0ne”。

为了处理这类成对的字符猜测过错,咱们计算了字符调会集常见的难区别字符对以及咱们的模型所猜测过错的字符对。经过成对的办法,咱们将一条语猜中的部分字符替换为其难分字符对中的字符,如 "a0c" 与 "aOc",并将替换前与替换后的语料都参加咱们的数据会集。

经过成对地参加难区别字符语料,咱们的模型猜测成果大幅减少了字符分错的状况。此外,咱们发现因为本次数据的文本行在裁剪时左右留白较少,这导致模型猜测成果简单在最初与结束处犯错。为此,咱们在选取替换字符时会加大最初与结束方位的权重。

图 8:等长辨认过错。

第三,不等长过错即模型辨认出来的成果与 GT 不等长。这里边首要会集在标示过错、文本行过长和样本极不均衡导致。

针对文本行过长问题,咱们对部分语料选取少数字符进行人为的重复并输入到模型练习,以此让模型取得必定的去重才能。

针对类别不均衡问题,咱们在生成语料抽取字符时,对低频字符赋予了更大的权重,高低频字符的呈现比率提高到了 10:1,更符合实际环境下的语料状况。

3 总结与展望

核算机视觉在金融范畴的使用首要包含人脸辨认、活体检测、OCR、AI 数字人和图画篡改等。经过本次应战赛在某种程度上验证了咱们 OCR 算法的有效性,以及对咱们现有算法进行查漏补缺。

现在 OCR 在 360 数科内部落地的事务场景首要包含学历认证、执业证书认证、收据辨认、行驶证辨认、驾驶证辨认和营业执照等,还针对上述事务场景开发了配套的图画反诈骗辨认算法。展望未来,核算机视觉团队将继续跟进业界最新动态以坚持技能的先进性,来更好的服务公司事务团队。

4 引证

[1] Huang Z, Chen K, He J, et al. Icdar2019 competition on scanned receipt ocr and information extraction [C]//2019 International Conference on Document Analysis and Recognition (ICDAR). IEEE, 2019: 1516-1520.

[2] Y. Sun, J. Liu, W. Liu, J. Han, E. Ding, “Chinese Street View Text: Large-scale Chinese Text Reading with Partially Supervised Learning”, in Proc. of ICCV 2019.

[3] Ali Furkan Biten, Ruben Tito, Andres Mafla, Lluis Gomez, Maral Rusiol, Ernest Valveny, C.V. Jawahar, Dimosthenis Karatzas, "Scene Text Visual Question Answering", ICCV 2019.

[4] C. Chng, Y. Liu, Y. Sun, et al, “ICDAR 2019 Robust Reading Challenge on Arbitrary-Shaped Text-RRC-ArT”, in Proc. of ICDAR 2019.

[5] Zhang R, Zhou Y, Jiang Q, et al. Icdar 2019 robust reading challenge on reading chinese text on signboard [C]//2019 international conference on document analysis and recognition (ICDAR). IEEE, 2019: 1577-1581.

[6] Nayef N, Patel Y, Busta M, et al. ICDAR2019 robust reading challenge on multi-lingual scene text detection and recognition—RRC-MLT-2019 [C]//2019 International conference on document analysis and recognition (ICDAR). IEEE, 2019: 1582-1587.

[7] Shi, Baoguang, Xiang Bai, and Cong Yao. "An end-to-end trainable neural network for image-based sequence recognition and its application to scene text recognition." IEEE transactions on pattern analysis and machine intelligence 39.11 (2016): 2298-2304.

[8] Howard A G, Zhu M, Chen B, et al. Mobilenets: Efficient convolutional neural networks for mobile vision applications [J]. arXiv preprint arXiv:1704.04861, 2017.

[9] Tan M, Le Q. Efficientnet: Rethinking model scaling for convolutional neural networks [C]//International conference on machine learning. PMLR, 2019: 6105-6114.

[10] He, Kaiming, et al. "Deep residual learning for image recognition." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.

[11] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need [J]. Advances in neural information processing systems, 2017, 30.

[12] Graves A. Long short-term memory [J]. Supervised sequence labelling with recurrent neural networks, 2012: 37-45.

[13] Zhang, Shu, et al. "Bidirectional long short-term memory networks for relation classification." Proceedings of the 29th Pacific Asia conference on language, information and computation. 2015.

[14] Graves A. Connectionist temporal classification [M]//Supervised sequence labelling with recurrent neural networks. Springer, Berlin, Heidelberg, 2012: 61-93.

[15] Sun, Chao, et al. "A convolutional recurrent neural network with attention framework for speech separation in monaural recordings." Scientific Reports 11.1 (2021): 1-14.

[16] Ronneberger, Olaf, Philipp Fischer, and Thomas Brox. "U-net: Convolutional networks for biomedical image segmentation." International Conference on Medical image computing and computer-assisted intervention. Springer, Cham, 2015.

[17] Shi, Baoguang, et al. "Robust scene text recognition with automatic rectification." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.

[18] Wen, Yandong, et al. "A discriminative feature learning approach for deep face recognition." European conference on computer vision. Springer, Cham, 2016.

[19] Zeiler, Matthew D. "Adadelta: an adaptive learning rate method." arXiv preprint arXiv:1212.5701 (2012).

[20] Kingma D P, Ba J. Adam: A method for stochastic optimization [J]. arXiv preprint arXiv:1412.6980, 2014.

[21] Zhang S, Huang H, Liu J, et al. Spelling error correction with soft-masked BERT [J]. arXiv preprint arXiv:2005.07421, 2020.

[22] Wang Q, Xu C, Zhou Y, et al. An attention-based Bi-GRU-CapsNet model for hypernymy detection between compound entities [C]//2018 IEEE International Conference on Bioinformatics and Biomedicine (BIBM). IEEE, 2018: 1031-1035

告发/反应

相关推荐

在线客服
服务热线

24小时咨询热线:

4006666666

微信咨询
7788吃瓜网
返回顶部