cover_image

ShopeeVideo 多语言 OCR 系统设计与实现

视频算法团队 Shopee技术团队
2022年11月10日 10:00

点击关注公众号👆,探索更多Shopee技术实践

目录

1. OCR 背景介绍
2. 难点与挑战
3. ShopeeVideo OCR 技术介绍
   3.1 文本检测技术
   3.2 文本识别技术
   3.3 视频版面分析
   3.4 OCR 多语言数据生成技术
4. ShopeeVideo OCR 技术成果
5. 总结与展望

1. OCR 背景介绍

OCR 技术,即 Optical Character Recognition(光学字符识别),用于提取视频或图像中的文字。在 Shopee 的多市场电商和视频业务中,OCR 有着广泛的应用价值。

图片
图1 OCR 任务的定义

例如,在短视频的推荐、搜索、供给和内容审核、视频字幕提取、广告 logo 识别、封面版面分析、IP 版权识别等方面都用到了 OCR 的能力;在电商图像视频理解中,也包含商品信息提取、订单识别、卡证识别、票据识别、店铺识别、文档内容提取等应用。

图 2 是 ShopeeVideo OCR 已经落地的一些典型应用场景。

图片
图2 ShopeeVideo OCR 应用场景示例

Shopee 的业务场景主要分布在东南亚多个市场,用户使用语言也非常多元化。ShopeeVideo OCR 团队基于行业前沿的深度学习技术,联合开发团队打造了一套完整的多语言文字识别系统,将图片和视频上的文字内容智能识别为可编辑的文本。

目前,该系统在图像文本检测和识别、视频文本理解、版面分析、文本合成、轻量级模型部署上都有了深厚的积累,经历了多次算法迭代,识别精度不断提升,取得了业界领先的识别水准。

同时,团队在 OCR 领域最权威的国际赛事 ICDAR 榜单上,刷新了多项竞赛任务的最高纪录(数据统计截至 2022 年 11 月)。

本文主要介绍 ShopeeVideo 场景下的 OCR 技术设计与实现。

2. 难点与挑战

难点一:跨地区业务差异大,如何同一算法支持多种语言识别?

不同语系之间文字的形态和字符类别数差异很大,ShopeeVideo 业务场景中常见的语言有印尼语、菲律宾语、英语、越南语、泰语、中文(简繁体)等,按照语系可划分为三种类型,分别以拉丁文/泰文/中文为代表。

图片
图3 多语言业务示例

三种不同语言类型之间字符的构成、形态和排版方式不尽相同,对模型的识别能力提出了很高的要求。

难点二:多语种标注数据有限/缺失,如何扩充训练数据?

相对于常见的中英文识别任务,多语种的标注数据非常稀缺,标注和数据校验成本很高且周期长。业界几乎没有这样大规模可用的文字检测识别公开数据集可以拿来直接使用,而要训练一个效果好的 OCR 模型,通常需要百万甚至千万级的样本。

难点三:视频内容复杂多样,如何筛选重要信息?

相比于常见的图片 OCR 版面分析,视频在图片空间维度之外多了时间的维度。如何对不同时序帧之间的结果进行去重融合,跟踪随时间移动变化的文本并过滤视频主题无关的背景文字是一项具有挑战性的任务。

3. ShopeeVideo OCR 技术架构

针对上述难点和挑战,ShopeeVideo OCR 团队打造了一套完整的多语言文字识别系统。下图是我们的整体框架设计。

图片
图4 OCR 整体框架设计

完整的 OCR 系统包含多语言数据获取与合成、文本检测、语种判定、文本识别、版面分析、服务端和移动端部署,以及业务逻辑等模块。下面将分别介绍其中核心的技术模块。

3.1 文本检测技术

文本检测主要用于检测图片中的文字区域,返回文本行的位置坐标。当前业界主流的文本检测算法按采用的基础深度学习技术可以分为自底向上(RRPN、SegLink、TextBoxes++ 等)和自顶向下(DBNet、EAST、DRRG 等)。

图片
图5 文本检测算法框架

为实现算法效果和效率的平衡,我们设计了基于实例分割的全卷积网络 FCN(Fully Connected Convolution)的多语种文字检测方法。

算法整体上采用自底向上的文字检测思想,在主干网络部分选用经典的 ResNet-50 来提取图像的深度特征,上采样模块则基于特征金字塔 FPN 设计了融合多尺度文字特征的网络结构。

在文本表征预测模块,我们以业界常用的 DBNet¹ 算法为基础对图像中的像素是/非文本区域和二值阈值进行学习。同时,算法增加了对文字区域像素 EDT(Euclidean Distance Transform) 距离场和像素方向场的学习任务分支,让网络学习更加丰富和鲁棒的文字特征。

此外,由于不同语言字符在结构形态上差异很大,为让模型更加关注到字符结构的细节特征和语义关系信息,我们在网络中引入了文本语义监督的字符识别任务分支,增加了一个基于注意力机制的文字序列识别网络,使整个算法变成一个端到端训练的模型,进一步提升模型的检测效果。

图片
图6 检测算法改进实验效果

3.2 文本识别技术

文本识别是对输入图片中的文字进行识别并将其转换为可编辑文本的过程。

当前业界主流的文本识别算法主要包含两个部分:1)基于 CNN + RNN 的编码部分;2)基于 CTC(Connectionist Temporal Classification)或 Attention 的解码部分。

而随着 Transformer 在计算机视觉领域的大放异彩,近年来也出现了基于 Transformer 的文本识别算法。

Parseq² 是一种基于 Transformer 的文本识别算法,其通过 PLM(Permutation Language Modeling)使得模型学习到一组自回归语言模型,并通过在解码端对视觉信息以及语义信息进行融合从而大幅提升了算法效果。

为了进一步优化算法效果以及适配业务场景,我们在其基础上做出了以下改进:

  • 重写数据加载 Pipeline,从而可以控制 Batch 内不同来源数据(如真实数据和合成数据,又或者各不同语系的数据)的比例,提升了模型训练及数据准备的灵活性;
  • 将编码端的 ViT 替换为 Hybrid Architecture 结构,通过在 Patch Embeding 前引入若干个 CNN 层,提升了 ViT 的特征提取能力;
  • 编码端使用了一种自适应的二维位置编码策略,通过对水平、竖直方向上的两个缩放因子进行学习,从而能够还原输入图像的原始尺寸比例,进而大幅提升了模型对不规则文本甚至是多行文本中字符间长距离依赖的学习能力。
图片
图7 文本识别算法框架

3.3 视频版面分析

不同于常规场景的视频 OCR,电商场景下的视频 OCR 需要突出主题文本区域的版面分析结果。

为了给视频推荐、检索提供更准确的特征信息,如图 8 所示,我们根据文本位置、内容、图像清晰度等维度对文本类型进行了分类,对主题文本和非主题文本进行区分;对筛选出来的主题文本,根据位置、内容信息,进行视频帧之间轨迹跟踪,确保多帧之间文本的一致性;并且根据各检测框中心点间的距离以及各检测框高度对段落内的文本进行合并,为语义解析提供更精准的文本输入结果。

下图右侧是视频版面分析处理后的效果。

图片
图8 视频版面分析效果示例

3.4 OCR 多语言数据生成技术

3.4.1 多语言整图生成方法

对基于深度学习的技术而言,训练数据的数量很大程度上影响了技术效果。

Shopee 的业务图片覆盖了英语、菲律宾语、马来西亚语、泰语、越南语、中文(简繁体)等多种不同语言,几乎没有这样大规模可用的文字检测识别公开数据集可以拿来直接使用。

由于大量带标注训练数据的标注成本高、周期长,难以及时快速地响应新语种的需求,易扩展且速度快的数据机器生成便成为首选。

图片
图9 整图多语言数据生成算法

针对检测模型训练所需的整图多语言训练样本,我们开发了一套基于多通道文本图像渲染的数据合成方法,可以在 2-3 天时间内从零生成百万级别的新语种训练样本。

算法的整体框架如图 9 所示。当有新的语种相关需求来临时,我们只需要收集新语种语料即可快速批量地生成整图数据,迅速训练出精度较高的新文字检测模型。

下图是我们通过算法生成的一些示例图片。

图片
图10 通过算法生成的图片示例

3.4.2 多语言词条生成方法

一个效果好的文本识别模型训练通常需要百万甚至千万量级的标注数据,而不同语种的真实标注数据的获取十分耗时且成本巨大,因此,高效且逼真的数据合成算法尤为重要。

我们在 TextRenderer 的基础上做出了一系列改进,最终的数据合成算法支持任意语言的水平及竖直词条数据的生成。

同时还支持透视变换、扭曲变换、随机 Crop、随机 Padding、随机 Dropout、模糊、锐化、噪声、光照增强等 15 种数据增强。并且可以控制不同字体颜色以及背景模式在所生成数据中的比例。

此外,我们还完成了离线语料爬取、识别字典自动生成、离线语料随机采样及均衡采样等脚本,支持在短时间内完成识别模型在任一新语系上的能力扩展。

图片
图11 多语言词条合成算法流程及效果示例

3.4.3 基于生成模型的多语言数据生成方法

在实际的业务场景中,由于文字风格、字体复杂多变,传统的数据合成方法往往效果有限,且无法合成某些特定样式的数据。

针对此问题,我们使用了模型风格迁移的算法来进行解决,只需少量目标场景特定风格的源域图像便可批量生成大规模相似场景相似风格的文字图像。

图片
图12 风格迁移类方法算法效果

我们采用了基于 StyleText³ 的文字风格迁移算法,并在实验分析后针对性地加入了一系列的改进优化:

  • 增加一个文字前景区域学习的文字膨胀掩码,让网络更加关注字符周边区域的学习,进而提升图像文字笔画细节处的生成效果;
  • 加入谱范数正则化,并用 Instance Normalization 替换 Batch Normalization,从而解决模型鉴别器损失无法正常下降的问题;
  • 在背景擦除模块中引入了 ASPP(Atrous Spatial Pyramid Pooling)来扩大网络的全局和局部信息的感知能力,提升了背景的特征提取及修复能力。

改进后的算法部分生成效果如下图所示。

图片
图13 数据生成算法改进实验效果
图片
图14 改进后的 StyleText 生成效果示例

4. ShopeeVideo OCR 技术成果

除了在 ShopeeVideo 上的业务落地,团队所积累的 OCR 算法模块经过多次算法迭代,识别精度不断提升,在 OCR 领域最权威的国际赛事 ICDAR 榜上也刷新了多项竞赛任务的最高纪录。

4.1 业界对比

为验证团队与国内外业界 OCR 技术水平,我们在拉丁文、泰文、中文三个语种的 3k 业务数据集上与多款业内公开的多语种 OCR 技术进行了对比。相比行业竞品,ShopeeVideo OCR 在识别准确率上有明显的优势。

图片
图15 行业竞品对比条形图
图片
图16 行业竞品效果对比图

4.2 国际文档分析与识别会议 ICDAR

ShopeeVideo OCR 团队近期一举刷新国际文档分析与识别会议 6 项竞赛的 13 个任务第一,覆盖了数十种语言和多个难度极高的场景,是对团队 OCR 技术的一次全方位检验。

国际文档分析与识别会议 ICDAR(International Conference on Document Analysis and Recognition)自 1991 年开始,至今已经举办了十六届。2003 年起,大会开始设立技术竞赛,ICDAR 竞赛因其极高技术难度和强大实用性,一直是各大科研院校、科技公司的竞逐焦点。

IC-15

IC-15(随拍街景文字识别)是一个由 Google 眼镜拍摄的街景图片组成的数据集,共包含 1500 张图像,侧重于真实的拍摄场景图像的文本检测和识别任务。

在以往以文本内容为重点的图像文字识别任务中,文字通常是使用固定的相机聚焦捕捉拍摄,大部分文字是水平的英文文本并且文字通常在图像中居中位置。

而在此任务中,拍摄者没有采取任何特定的行为来使文字出现或改善其在帧中的定位/质量。因此,对算法处理多角度、透视畸变、模糊、低分辨率、强烈曝光等挑战的能力要求极高。

团队刷新了在 IC-15 全部 3 个任务的第一,且大幅领先第二名。

图片
图17 IC15 检测任务
图片
图18 IC15 识别任务
图片
图19 IC15 端到端任务(Strong lexicon)

MLT-19

MLT-19(多语言自然场景文字识别)竞赛由多国学者提供 2 万张自然场景图片,共包含 7 大类语言(又分为 10 个小类别)。

多语言文字识别可广泛应用于拍照翻译、文档识别、交通信息识别等。数据覆盖了跨语种识别、拍照角度多变、低对比度、复杂背景、复杂排版等众多技术难点。

团队刷新了多语种检测和端到端识别的 2 项任务第一,且成绩大幅度领先其他团队。

图片
图20 IC19-MLT 检测
图片
图21 IC19-MLT 端到端任务

ArT-19

ArT-19(任意形状文字识别)竞赛包含约 1 万张带任意形状不规则文字的自然场景图片,数据覆盖了不规则形状、透视畸变、低分辨率、艺术字、复杂排版等诸多技术难点。

ArT-19 竞赛涵盖文本检测、识别、端到端文字识别任务。团队刷新了任意形状文本检测,文本行识别和端到端识别的全部 3 项任务第一,且成绩大幅度领先其他团队。

图片
图22 IC19-ArT 检测任务
图片
图23 IC19-ArT 识别任务
图片
图24 IC19-ArT 端到端任务

ReCTS-19

ReCTS-19(中文招牌文字识别)竞赛包含 2.5 万张业务图片。该场景文字识别可广泛用于商家推荐、商家信息自动识别等领域,覆盖了透视畸变、复杂排版、模糊文字、艺术字等众多技术难点。

比赛涵盖了端到端文字识别、单字符识别、文本行识别、文本行检测等任务。团队刷新了检测和端到端识别的 2 项任务第一,且成绩大幅度领先国内外其他团队。

图片
图25 IC19-ReCTS 检测任务
图片
图26 IC19-ReCTS 端到端任务

IC13、COCO-Text、MLT-17

同时,我们也在 IC13、COCO-Text 和 MLT-17 的部分任务上进行了测试,取得了 IC13 和 COCO-Text 识别任务、MLT-17 检测任务第一的成绩。

图片
图27 COCO-Text 识别任务
图片
图28 IC13 识别任务
图片
图29 MLT-17 检测任务

5. 总结与展望

OCR 技术作为视频/图像和文本之间的桥梁,是多媒体内容理解的关键步骤。我们会持续打磨 OCR 技术,实现更通用的视频文本和图像文本提取算法,为业务提供更快速更准确的更结构化的结果。

同时,我们也会基于业务需求,将 OCR 扩展到更多垂类,覆盖更多场景,更好地为业务服务。后续我们将继续推出移动端 OCR 等更多新的技术突破和业务实践。

Reference

  1. Liao M, Wan Z, Yao C, et al. Real-time scene text detection with differentiable binarization[C]//Proceedings of the AAAI conference on artificial intelligence. 2020, 34(07): 11474-11481.
  2. Bautista D, Atienza R. Scene Text Recognition with Permuted Autoregressive Sequence Models[J]. arXiv preprint arXiv:2207.06966, 2022.
  3. Wu L, Zhang C, Liu J, et al. Editing text in the wild[C]//Proceedings of the 27th ACM international conference on multimedia. 2019: 1500-1508.

本文作者

Eric、Ronnie、Alex,算法工程师,来自 ShopeeVideo Intelligence 团队。

团队介绍

Video Intelligence 团队负责搭建 Shopee 的内容生态,将 AI 与数据结合,通过技术创新,实现搜索推荐、多媒体分析以及大数据处理等技术的端到端融合。我们打造了直播、短视频、信息流、买家秀等多元内容形态,为消费者提供更加生动、个性的购物体验与自我展示的平台。

图片
图片
图片
图片

图片

继续滑动看下一个
Shopee技术团队
向上滑动看下一个