以服务于中国广大创业者为己任,立志于做最好的创业网站。

标签云创业博客联系我们

导航菜单

短视频的概念和特点,短视频的优缺点英语

  

  随着人工智能的日益普及,图像识别的细分逐渐引起人们的关注。在很多公司的业务中,有很多需要识别的图片。为了帮助企业识别和构造这些图片和文档,业界进行了一系列的实践和探索,最终确定了一些可行的方法。在实践中,我们可能会遇到一系列的问题和困难。在本次直播分享中,我们将结合当前的业务需求,谈谈爱奇艺在探索中遇到的痛点和难点,以及识别技术的一些细节。   

  

  InfoQ:您好,非常开心有机会采访您,您方便简单介绍下过去几年 OCR 技术的整体发展吗?大致可以从哪几个维度来看?   

  

  Harlon   

  

  随着互联网的发展和智能设备的普及,图像和视频的制作速度大大加快,图像和文本中包含的丰富语义信息也在人机交互中发挥着重要作用。   

  

  光学字符识别技术越来越受到人们的关注。随着深度学习的发展,OCR技术已经从传统的图像处理和机器学习转变为深度学习,主要包括以下两个步骤:   

  

  首先,文本检测,用于检测文本在图像中的位置,通常用矩形或四边形来表示。与常规的物体检测不同,文本行具有长短不一、长宽比大、方向性强的特点,也容易受到复杂背景的影响。   

  

  二是字符识别,输入的是文本检测得到的文本行图像,输出的是图像对应的文本信息。传统的文本识别方法可以分为两个步骤:字符分割和单字符识别。目前,大多数文本识别算法都是基于序列到序列的网络,其中分割和识别可以同时进行,具有大大减少数据标注量的优点。此外,由于分割和识别算法是同时训练的,算法的性能也得到了很大的提高。我们可以从以下几个方面来看。   

  

  光学字符识别技术的发展;   

  

  第一部分是文本检测。借鉴对象检测技术的发展,文本检测技术也从检测单行和规则文本发展到检测任意方向的文本。典型的算法包括:CTPN、EAST、PMTD、DB。   

  

  等等。文本检测方法主要分为两类:基于检测框架的文本检测和基于掩码的文本检测。基于检测框架的文本检测的思想是使用几个Anchor生成大量的候选文本框,然后经过NMS。   

  

  得到最终结果;基于掩码的文本检测,其思想是通过分割网络在像素级进行语义分割,然后通过后处理得到文本框。由于后处理的复杂性,这一步将直接影响基于。   

  

  掩码文本检测算法的性能。   

  

  其次,字符识别主要有两种方法:一种是CRNN基于CTC另一个是基于注意力机制的编码器-   

  

  解码器方面,两种方法的过程非常相似,主要包括四个过程:图像预处理、特征提取、序列建模和字符预测。   

  

  具体来说,CRNN采用CNN加RNN结构提取基本特征,损失函数采用CTC损失和CTC。   

  

  首先应用在语音识别中,它可以解决序列预测的问题,而不需要对输入数据进行分割,也就是说,它可以输入一串语音信号,直接输出与语音信号对应的文本CTC,而不需要进行分割。   

  

  最大的特点是输入和输出都是一个序列。移植到OCR领域后,基于CTC的CRNN算法也取得了不错的效果。至于注意机制模型,主要是编码器-   

  

  结构,单词识别算法解决的核心问题是将图像特征与长度不匹配的文本序列进行匹配。编解码的结构非常适合解决这个问题,增加了注意。   

  

  该模块后,可以自动找到待预测的文本区域,将注意力集中在图像中待识别的字符上,显著提高了模型的准确性。   

  

  然后是端到端的OCR。上述文本检测和文本识别都是串行过程,即,在文本检测之后执行文本识别。与这两个步骤分开执行的模式不同,端到端光学字符识别。   

  

  它结合文本检测和文本识别进行训练,共享特征提取网络,然后在训练阶段输入训练图像和相应的文本框信息和文本内容。损失函数被定义为文本检测和文本识别误差的加权和。这样,希望可以达到联合优化的目的。预测阶段相当于少了一个特征提取操作,预测阶段的资源成本会更少。从实际效果来看,由于检测和识别两个任务的特点不同,整个端到端算法的训练收敛会比较困难。   

  

  最后是基于光学字符识别的信息提取技术,传统的光学字符识别。   

  

  技术只解决了从图像中提取字符的需求,但是在票据识别这样的场景中,除了识别字符之外,还需要识别字符之间的关系,判断哪些字符属于预打印内容,哪些字符属于填充内容。只有掌握了人物之间的对应关系,后续的业务才能顺利进行。   

  

  光学字符识别的信息提取技术极大地促进了光学字符识别的商业应用,近年来有很多研究。   

  

  InfoQ:您方便聊聊目前 OCR 技术在工业界的主流应用有哪些?技术层面还存在哪些瓶颈?   

  

  Ha   

rlon
:OCR 在工业界一直有很多应用场景,最著名的例子就是 LeCun 为美国邮政系统设计的支票号码识别算法,这个数据集后面演化成了

  

MINIST 公开数据集,可以说这是所有深度学习人员接触到的最早示例,基本上所有框架都会拿该数据集作为最初的学习。

  

早期,由于算法性能受限,OCR

  

主要是应用在特定场景下的文字识别,比如车牌识别、扫描文档识别以及银行卡卡号识别。整体来说场景是可控的,输入的图像质量相对来说也比较好。随着硬件条件的提升以及算法的发展,现在的

  

OCR 技术越来越多被应用于像网络图片文字识别、自然场景文字识别等通用领域。

  

现在,OCR

  

技术在业界有了很多应用,包括在线视频、在线教育以及智能交通分析等多个领域,只不过应用点可能并不相同,在线教育最核心的应用点是拍照搜题,拍照搜题的核心是需要

  

OCR 识别用户算法的题目;对于在线视频,因为影视剧的视频较多,需要识别视频里面的文字信息,提供给业务做应用。现在的 OCR

  

技术主要是根据具体任务设计的专用算法,对不同语种或者不同类型的文字识别效果差异很大,所以提升 OCR

  

技术的通用能力以及泛化能力是一个需要探索的问题。另外,像小样本或者无监督条件下的 OCR 算法现在的研究也比较少。最后,利用 NLP 以及单字符标注信息提升

  

OCR 算法的整体性能也是一个没有完全解决的问题。

  

InfoQ:过去一年,OCR 领域也出现了不少开源项目,对开发者选型而言,您认为可以从哪几个层面考虑?

  

Harlon :事实上,深度学习本身就有很多框架可以选择,比如 PyTorch、Tensorflow 还有最近开源的 Paddle OCR。在

  

OCR 领域,同样有很多开源项目可以选择。对开发者而言,需要从自身需求出发进行选型,如果是科研目的,那么 PyTorch、Tensorflow

  

更加适合,二者提供了众多基础模块,还有很多项目及实践经验可以参考,便于大家复现论文,实践新的思路;如果是其他目的,我觉得可以考虑 Paddle OCR

  

框架,因为其提供了一整套 OCR 工具库,比如仿真数据生成、模型训练、测试以及模型调优等,包括最近又开源了一些 OCR

  

标注工具,提供了部署服务相关的接口,Paddle OCR

  

提供了很多经典算法的开源模型,工程人员可以快速实验各种模型,并用自己的数据微调模型,非常利于模型快速选型。

  

另外,我觉得 Paddle OCR 框架还有两个比较好的地方:一是该项目由百度开源,对中国的开发人员来说,直接用中文沟通更加便利;二是 Paddle OCR

  

有专门的人员负责更新文档和代码,用微信群进行沟通,我觉得对于专业的 OCR 人员来说,这是一个不错的选择。

  

最后,不同的 OCR 模型有不同的特点,就选型而言,开发者需要明确分析自己的任务特点,只有搞清楚业务特点,才能找到最合适的算法。

  

InfoQ:Paddle OCR 也是一个非常轻量级的框架,实现这样一个框架的难度大概是什么?

  

Harlon

  

:从算法角度来说,如果要实现一个轻量级的框架有很多手段,比如选择一些轻量化的模型,另外可能针对模型里面的具体层调小参数或者进行量化,这样或许可以很轻易的得到一个轻量化的模型,但是怎么让轻量化的模型达到比较好的效果是一条比较漫长的道路。

  

InfoQ:您方便介绍下爱奇艺内部主要有哪些场景应用到了 OCR 技术?用来解决哪些问题?

  

Harlon :OCR

  

技术在爱奇艺内部得到了非常广泛的应用,对爱奇艺来说,影视剧是核心资产,但视频属于非结构化数据,不利于应用,如何更好地利用视频?为此,我们上线了智能台词分析功能,该功能以

  

OCR 为基础,可以实时提取影视剧、综艺等节目中的台词信息。

  

智能台词分析用于提取影视剧视频中的台词信息。同时,会利用 NLP

  

算法处理识别出来的台词,将用户可能感兴趣的信息提取出来作为标签数据,这些标签数据可以和其他视频信息构成视频的原始数据,然后提供给搜索或者推荐业务使用。

  

与此同时,我们还在扩大台词智能分析的业务范围,比如提供曲目板识别,广告权益识别、片尾检测等功能。另外一个应用场景就是视频文本

  

OCR,主要用于识别视频中出现的英文、数字、繁体中文、简体中文等文本,算法可以很好的适配复杂背景,精准识别视频画面中出现的关键文字,为视频分析提供更多数据。

  

除了上述两大应用外,我们还有一些专用 OCR,用于识别身份证、银行卡以及新闻标题等,这些 OCR

  

构成了我们的基本算法,被广泛应用于各个业务,既能提高员工效率,也可以改善用户体验。

  

InfoQ:您方便聊聊爱奇艺是什么时候开始打造 OCR 技术体系的?到现在经过了哪些阶段,有哪些重要的时间节点?每个阶段主要用于解决哪些问题?

  

Harlon :事实上,OCR 算法一直是爱奇艺算法体系中的重要一环,主要经历了三个发展阶段:第一个阶段是基础阶段,主要完善 OCR

  

算法对基础业务的支持,比如图文分析、智能台词分析、新闻拆条等,这个阶段我们开发了多种 OCR 基础算法,提高编辑人员的效率。重要的时间点是 2017

  

年,这一年,我们结合爱奇艺自身影视剧库存量较大的特点推出了业内第一个台词搜剧功能,实现的主要功能是用户可输入感兴趣的台词信息搜索对应的视频点位,该功能的推出极大丰富了用户体验,同时让视频搜索更加便捷。

  

第二个阶段是发展阶段,主要优化算法速度。随着 OCR 业务的发展,我们整个后台需要处理的视频和图像数据量成倍增长,OCR

  

算法开始出现瓶颈,主要体现在随着数据量的增加,硬件资源消耗巨大,这个阶段基于成本等各方考量,我们使用了多种方法优化算法性能,包括替换轻量化网络、采用新的模型等,让算法运行速度更快,资源消耗量更少;工程层面,我们同样做了很多优化,包括优化算法的处理流程,合并冗余步骤,加入更多进程......通过一系列优化,智能台词分析的性能大大提升,40

  

分钟的影视剧视频只需要 5 分钟就可以完成台词识别,这个速度还是比较可观的,同时大大降低了对硬件的依赖程度。

  

最后一个阶段是优化阶段,我们从各方面优化算法的性能指标,并且扩大应用范围。横向来看,我们扩大业务的支持范围,挖掘更多业务的使用点,比如将智能台词分析服务从仅识别影视剧扩展到识别综艺节目等。从实践来看,这个阶段为业务方带来了更多便利。

  

纵向来看,随着场景的扩大以及业务的增长,算法需要更强的泛化能力,因为业务增长以后,算法看到的数据类型越来越多样,如果泛化性能不强,有可能就会出现很多 Bad

  

Case。因此,我们后续开发了很多辅助算法,包括语种分类算法、竖向文字识别算法等,通过此丰富了整个 OCR

  

算法矩阵,并将相关算法集成到了爱奇艺的奇观中,可以解决用户不同层次获取信息的需求,欢迎大家体验。

  

InfoQ:在这个过程中,爱奇艺主要用到了哪些算法和模型?效果如何?

  

Harlon :我们会根据不同的应用场景使用不同的算法和模型,然后对模型结构进行优化和改进,文字检测算法包括 CTPN、EAST、PMTD

  

等,CTPN 的特点是只能检测水平文字,而且对长文本和短文本都有很好的检测效果,不容易发生长文本丢失的现象,特别适合于影视剧的台词检测,但是 CTPN

  

对单个台词的检测效果不太稳定,可能会存在漏检的情况。

  

PMTD 其实是一个基于 Mask RCNN 的文本检测方法,可以预测整个文本的 Mask,通过 Mask

  

推测包含文本的四边形区域,这样就可以兼容横向、纵向、倾斜文本的检测,适用范围较广,但是对密集倾斜文本会发生文本区域检测混乱的情况。

  

DB 是去年推出的算法,基于分割检测,它在论文中提出了一个叫做 DB

  

的模块,也就是可微分模块,通过该模块替代分割的后处理部分,而且可以设定自适应阈值来提升网络性能,因为其把繁琐的后处理直接用 DB

  

模块来替代,相当于网络直接可以运行,DB 算法在水平以及倾斜文本检测上都可以达到很好的性能。

  

接下来介绍文字识别部分,现在主流的方法都是基于序列到序列的,比如 CRNN,或者基于注意力机制的编码器-

  

解码器网络,相比传统的单字符识别算法,这两种方法都是以文本行为单位进行训练,最大的特点就是不需要单字符的标注信息,可以大大提升标注效率,而且将字符识别与字符分割同时放在一个网络中训练,大大提升了算法性能。对于粘连情况比较严重的文本行,效果是非常好的。从实践来看,以上两种文本识别方法的效果是相当的,注意力机制模型的特点就是对英文、数字以及长文本的识别效果较好,CRNN

  

解码很快且对中文识别效果较好。

  

InfoQ:我们都知道,识别率是衡量 OCR 识别是否精准的重要条件,你们是如何提升识别率的?其中的难点是什么?目前的准确率是多少?

  

Harlon :首先介绍下 OCR 算法的整体评价指标:文字检测算法使用的评价指标类似于物体检测,根据 IOU

  

来判断检测框和标注框的重复程度得到召回率和准确率;文字识别算法使用的评价指标是整行识别率,也就是识别的文本串跟标注文本串完全一样才认为是正确的。

  

在算法研发的过程中,我们发现图像中的文本样式、字体、文本方向、语种、背景复杂多样,这些都给 OCR

  

技术带来了很大挑战。此外,不同场景的文本特点不同,如果为每个业务单独开发一套算法,重复的工作量也非常大。基于此,我们构建了 OCR

  

解决方案,根据不同的业务特点进行微调,我们也配套开发了 OCR 技术模块,比如文本仿真模块,训练、测试模块以及数据清洗模块。

  

针对不同的业务场景,我们会选择合适的算法。以智能台词分析为例,我们选择的是对中文识别效果较好的 CRNN

  

模型。在影视剧特别是综艺节目中,经常会出现不常见的字体及文字特效,比如《青春有你》、《热血新说唱》等节目会使用活泼且有个性的字体,我们开发了文本仿真引擎用以模拟各种文本的特效,包括台词常见的阴影、描边、发光体等效果,以及收集了

  

150

  

多种常用字体,用来生成各种样式的仿真台词,最终生成了千万级别的仿真数据用于强化模型的泛化能力。在下一阶段的训练中,我们又加入了一定量真实数据一起训练,这样得到的模型更加适用真实场景。最后,我们针对特殊情形做了很多优化,比如在双语电影的台词识别方面,由于英文台词的字符数量比中文台词多很多,如果强行使用一个识别模型的话,整个模型解码时对英文识别会出现预测长度偏小进而导致字符丢失的现象,针对这种情况,我们单独开发了语种检测算法,用于区分中文台词和英文台词,以及单独的英文识别算法,这样就可以保证整个台词识别算法的效果。

  

通过上述一系列优化,我们的台词智能分析服务在中文台词、英文台词上都得到了较优水平。同时,我们会根据算法的特点进行一些针对性优化,比如上述提到的 PMTD

  

算法,对比较密集的倾斜文本行检测效果不太好,通过实验发现这是由于生成的训练数据不准确导致的,因为倾斜的文本行虽然标注的时候是一个倾斜的四边形,但是最后训练的时候会转换成矩形,导致面积扩大,如果倾斜行文本行过密,矩形区域里面就会包含另外一个文本行,这样的训练效果是非常不好的,在这种情况下,我们通过限制倾斜文本行的长度以及对过长的倾斜文本行进行分段解决了这个问题,最后达到了比较好的效果。

  

InfoQ:接下来,爱奇艺还将做哪些事情提高 OCR 技术的整体效果?

  

Harlon

  

:未来的规划主要包括几个方面:一是视频中的文本识别和跟踪,爱奇艺本身有大量的视频数据,这些数据具有数据量大、时序性强的特点,如何在保证算法实时性的同时利用这些特点优化

  

OCR 算法的性能是值得关注的。

  

二是结合 NLP 技术优化整个 OCR 算法的性能。图像中的大部分文字都有很强的语义信息,如何结合 NLP 优化 OCR 算法对易错样本的识别效果。

  

三是 OCR 算法移植到手机端。随着爱奇艺业务的增长,整个 OCR 算法需要处理的数据量越来越大,如果将 OCR

  

算法移植到手机端,能缓解整个后台服务的压力,同时可以为用户带来更好的体验。

  

QA 部分

  

1\. 端到端的 OCR 框架有哪些注意事项?有什么可以参考的吗?

  

答:端到端的 OCR

  

框架,可以同时完成文字检测和文字识别,需要注意:文字检测和文字识别属于两个问题,训练过程中,需要保证共享的特征同时适用于两个算法才行,但是同时训练这两个任务,会导致

  

loss 震荡,整个网络不收敛,因此一般的步骤是先训练一个任务,稳定以后再把另一个任务加进去;参考:FOTS。

  

2.对于添加了水印或印章的图片,是否有比较好的识别方式?

  

答:如果水印比较好去除,建议先去除水印,否则,可以生成一些带水印或印章的仿真样本,用于模型训练,能加强模型对这种图片的识别效果;

  

3.east 文本监测的优缺点有哪些?

  

答:优点:速度较快、支持任意方向文本检测;缺点:相比最新的一些方法,性能有差距,对倾斜文字的检测效果不太好;

  

4.方便分享下模糊文本的识别吗?

  

答:造成模糊样本的原因有很多,比如本身的拍照环境较差导致样本模糊等,可以用算法生成一部分模糊样本,将其与清晰样本结合起来进行训练。需要注意的是模糊样本的模糊程度,如果过于模糊可能文本信息已经没有了,此时用来进行训练可能就是脏数据了,这种情况是需要避免的。另外,模糊样本和清晰样本的比例需要掌握好,如果模糊样本过多会影响模型对清晰样本的识别效果。

  

5.从 0 到 1 搭建 OCR 有哪些坑可以绕开?

  

答:1)字符集:确定任务需要的字符集,生成仿真样本时,查看字体是否包含所有需要的字符集,生成仿真样本后,对样本进行抽查;根据任务判断字符集中是否需要加入空格这个字符;2)标注数据:根据任务需要确定标注规则,比如:基于单词的检测方法,需要将空格两侧的单词分开标注;整行文字检测方法,可以将包含空格的整行文字一起标注;3)优化方法:多尝试优化方法,选择对当前任务最优的方法;4)标注样本数量:检测算法对样本的需求量较低,识别算法由于字符数较多,需要更多的样本;

  

嘉宾介绍:

  

Harlon,爱奇艺智能平台部助理研究员,来自爱奇艺智能平台部 AI 服务组,从事 OCR 算法、视频内容分析、智能审核等研发工作。