首页> 中国专利> 一种基于Faster-RCNN对BI图标题检测的方法

一种基于Faster-RCNN对BI图标题检测的方法

摘要

本发明涉及计算机视觉与人工智能技术领域,特别是一种基于Faster‑RCNN对BI图标题检测的方法。所述方法步骤包括:a)BI图数据收集、标注规则定制与数据标注;b)数据预处理方面,数据增强方式的选取;c)框架选择与模型训练;d)推理端数据测试。本发明旨在输入一个BI图的前提下,不去文字全局检测,准确匹配BI图中的各级标题。职能识图融入文字检测和识别以大幅降低错误发生概率。

著录项

  • 公开/公告号CN113807463A

    专利类型发明专利

  • 公开/公告日2021-12-17

    原文格式PDF

  • 申请/专利权人 中电万维信息技术有限责任公司;

    申请/专利号CN202111146554.9

  • 发明设计人 郝德浩;朱西华;雷坤东;孙力泽;

    申请日2021-09-28

  • 分类号G06K9/62(20060101);G06K9/32(20060101);G06F16/951(20190101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构62202 兰州嘉诺知识产权代理事务所(普通合伙);

  • 代理人吴迪

  • 地址 730000 甘肃省兰州市城关区张苏滩553号(电信第二枢纽B区4-7层)

  • 入库时间 2023-06-19 13:45:04

说明书

技术领域

本发明涉及计算机视觉与人工智能技术领域,特别是一种基于Faster-RCNN对BI图标题检测的方法。

背景技术

目标检测在过去的十几年中大致经历了两个历史时期:传统的目标检测和基于深度学习的目标检测。传统的目标检测算法大多是基于手工特征构建的。由于当时缺乏有效的图像表示,人们别无选择,只能设计复杂的特征表示,以及各种加速技术来用尽有限的计算资源。随着手工特征的性能趋于饱和,目标检测在2010年之后达到了一个饱和、稳定的水平。基于深度学习的目标检测的发展要追溯到2012年卷积神经网络的重生。由于深度卷积网络能够学习图像的鲁棒性和高层次特征表示,一个自然的问题是能否将其应用到目标检测中。R.Girshick等人在2014年率先打破僵局,提出了RCNN用于目标检测,从那时起,目标检测开始以前前所未有的速度发展。

在深度学习时代,目标检测可以分为两类:One-Stage Detection和Two-StageDetection,在学术界和工业界普遍认为,前者速度快精度较差,而后者精度高速度较慢。

随着互联网的发展,在大数据时代的背景下,数据可视化需求日益徒增,为加快可视化应用的开发,以及对数据分析的完美支撑,各大互联网公司相继开发了自己的大数据可视化平台,如:PowerBI、DataBI、QuickBI等。相比于传统图标和与数据仪表盘,如今的数据可视化致力于更生动、友好的形式,即时呈现隐藏在瞬息万变且庞杂数据背后的业务分析。无论在政务、环保、医疗、电力还是交通领域,通过交互式实时数据可视化应用来帮助业务人员快速利用分析展示数据,越来越成为大数据解决方案中的一环。

通用的文字检测模型都是基于图片全局文字信息进行检测,例如开源的工具:chineseocr、chineseocr-lite、PaddleOCR等,使用此方法可能会有以下缺陷:(1)可视化大屏图中的文字信息存在于图中的任何位置,其中,图表组件中的文字信息是需要根据数据源相应生成的,不需要人为去检测识别,另一方面,这部分信息在全局文字的占比很大,手动删除会影响配置BI图效率,进而影响用户体验;(2)可视化大屏图通常会有一些形状大小类似文字的图标,在通用检测模型中可能会被框出,影响文字识别结果。通用的文字检测模型由于训练数据的影响,训练的结果并不能适用当前Easy-BI数据综合开发工具的需求。

发明内容

本发明基于Easy-BI工具在配置效率上的需求,借鉴通用文字检测模型在全局文字上的识别,设计出一种对局部标题文字信息的检测模型,旨在方便在AI识图的时候方便用户配置标题信息。

一种基于Faster-RCNN对BI图标题检测的方法,包括如下步骤:

A、训练数据收集与标注

利用爬虫在相关网站收集BI图集,进行训练集和验证集划分,按训练集与验证集的比重为8:1配比,将目标数据分为三类,分为一级标题、二级标题和三级标题;一级标题为BI图的主标题,二级标题为BI图的分支标题,三级标题为BI图对应图表或文字的小标题;

B、改进Faster-RCNN算法模型

采用Two-Stage Detection模型中的Faster-RCNN作为Baseline,具体网络结构与改进如下:

B1、Backbone网络模型

Backbone采用ResNet-50,ResNet称为深度残差网络,50为网络层数;

B2、FPN结构

在目标检测领域中,使用FPN将Backbone模型最后一层特征图谱进行采样,并于每一个金字塔阶级的特征图进行合并,得到新的表征能力更强的不同金字塔层次的特征图谱,然后将ROI按照尺寸分别映射到特征图上,再将每个特征图谱上进行类别和位置预测;

B3、DCN可变性卷积

可变形卷积通过在卷积层中插入偏移值来增强网络的特征提取能力

B4、ROIAlign层

Faster-RCNN在检测过程中添加ROIPooling层,进行后续的分类和包围框的回归操作,每一个候选区域保持浮点数边界不做量化;将候选区域分割成k*k个单元,每个单元的边界也不做量化;在每个单元中计算固定四个坐标位置,用双线内插法计算出这四个位置的值,然后最大池化操作;

B5、OHEM算法

对全图标题检测时,会遇到图片其他文字信息的干扰,且这些文字信息很可能成为网络中的难例负样本,加入OHEM算法让模型更容易的去发现标题文字和其他文字的区别;

C、模型训练

使用MMDetection框架搭建,并在GPU显卡上进行单卡训练;使用Albumentations第三方库操作,进行随机亮度对比度RandomBrightnessContrast、颜色抖动RGBShift、色调饱和度增强HueSaturationValue、随机通道交换ChannelShuffle、锐化IAASharpen、灰度转换ToGray等操作;

使用Anchor将高宽比从原来的0.5、1、2,改为0.1、0.3、0.5、1;在Anchor编码阶段,Anchor与目标框的IOU值大于0.5的设置为正样本;学习率采用Warm up,初始学习率设置为0.001;由于单卡训练,Batch Size太大会造成显存不足,因此Batch Size设置为2;Epoch设置为15;

D、训练实验结果

超参数定义完成后,对网络模型进行训练,根据每一次迭代绘制loss曲线与准确率,目标检测领域选用评价指标为mAP,根据mAP指标,选取测试集图片进行测试,优化BI图标题。

本发明充分利用深度学习、大数据相关技术,通过可视化拖拽式快速构建可视化应用,极大提升了数据可视化应用研发效率,为大数据的快速高效应用提供了有力保证。数据可视化应用平台开发完成之际,需要经过开发人员多次配置展示屏图,发现标题文字组件的拖拽和输入会大幅增加配置时间,繁琐的文字输入也会使错误率增加,通过AI识图中融入文字检测和识别以大幅降低错误发生概率。

附图说明

图1为FPN网络模型结构示意图;

图2为普通卷积与可变形卷积对比示意图;

图3为ROIAlign层具体操作示意图;

图4为loss曲线分析准确率示意图。

具体实施方式

一种基于Faster-RCNN对BI图标题检测的方法,包括如下步骤:

A、训练数据收集与标注

利用爬虫在相关网站收集BI图集,进行训练集和验证集划分,按训练集与验证集的比重为8:1配比,将目标数据分为三类,分为一级标题、二级标题和三级标题;一级标题为BI图的主标题,二级标题为BI图的分支标题,三级标题为BI图对应图表或文字的小标题;

B、改进Faster-RCNN算法模型

采用Two-Stage Detection模型中的Faster-RCNN作为Baseline,具体网络结构与改进如下:

B1、Backbone网络模型

Backbone采用ResNet-50,ResNet称为深度残差网络,50为网络层数;

B2、FPN结构

在目标检测领域中,使用FPN将Backbone模型最后一层特征图谱进行采样,并于每一个金字塔阶级的特征图进行合并,得到新的表征能力更强的不同金字塔层次的特征图谱,然后将ROI按照尺寸分别映射到特征图上,再将每个特征图谱上进行类别和位置预测;

B3、DCN可变性卷积

可变形卷积通过在卷积层中插入偏移值来增强网络的特征提取能力

B4、ROIAlign层

Faster-RCNN在检测过程中添加ROIPooling层,进行后续的分类和包围框的回归操作,每一个候选区域保持浮点数边界不做量化;将候选区域分割成k*k个单元,每个单元的边界也不做量化;在每个单元中计算固定四个坐标位置,用双线内插法计算出这四个位置的值,然后最大池化操作;

B5、OHEM算法

对全图标题检测时,会遇到图片其他文字信息的干扰,且这些文字信息很可能成为网络中的难例负样本,加入OHEM算法让模型更容易的去发现标题文字和其他文字的区别;

C、模型训练

使用MMDetection框架搭建,并在GPU显卡上进行单卡训练;使用Albumentations第三方库操作,进行随机亮度对比度RandomBrightnessContrast、颜色抖动RGBShift、色调饱和度增强HueSaturationValue、随机通道交换ChannelShuffle、锐化IAASharpen、灰度转换ToGray等操作;

使用Anchor将高宽比从原来的0.5、1、2,改为0.1、0.3、0.5、1;在Anchor编码阶段,Anchor与目标框的IOU值大于0.5的设置为正样本;学习率采用Warm up,初始学习率设置为0.001;由于单卡训练,Batch Size太大会造成显存不足,因此Batch Size设置为2;Epoch设置为15;

D、训练实验结果

超参数定义完成后,对网络模型进行训练,根据每一次迭代绘制loss曲线与准确率,目标检测领域选用评价指标为mAP,根据mAP指标,选取测试集图片进行测试,优化BI图标题。

一、基于Eazy-Bi项目需求,提出对BI图的对标题分级检测的方案。

二、提出改进的Faster-RCNN网络提升对高宽比过大的目标检测性能,融合FPN结构、DCN可变形卷积、ROIAlign层、OHEM算法等。

名词解释

One-Stage Detection:单阶段目标检测网络,表现为精度较高、速度快,代表算法有YOLO、SSD等。

Two-Stage Detection:两阶段目标检测网络,表现为速度较快、精度高,代表有Faster-RCNN等。

Baseline:基准网络,一般指论文用的网络原型。

Backbone:检测模型中的骨干网络,主要是分类网络去掉其全连接层,用于检测模型的特征提取。

Resnet50:Resnet指为防止神经网络变深而导致梯度消失问题所提出的残差网络,50代表网络层数。

FPN:融合不同尺度特征图的一种结构,主要目的强化浅层特征图的语义信息。

ROI:感兴趣区域,特指图像矩阵中某一区域。

DCN:可变形卷积,能够增加卷积核的感受野。

ROIPooling:对多个ROI进行池化操作,保证它们的宽高一致。

ROIAlign:ROIPooling改进版本,使用双线插值法消除ROIPooling两次量化带来的精度上的损失。

OHEM:平衡正负样本的一种方法,采样时选取难例进行训练。

MMDetection:python目标检测框架。

Anchor:候选框或者先验框。

BatchSize:批量大小,每次梯度下降观测的样本数。

Epoch:训练代数,当模型对所有训练集迭代完一轮为1个Epoch。

RPN:Faster-RCNN算法的第一阶段,主要用作前景目标的提取。

RCNN:Faster-RCNN算法的第二阶段,最要作用为根据前景目标得到最后输出结果。

IOU:交并比,框相交的部分比框相并的部分。

mAP:目标检测的评价指标,mAP

为实现上述需求目的,本发明采取的技术方案为采用Faster-RCNN两阶段目标检测算法作为基准模型,通过标注的数据作为训练集对网络进行训练调参,给出具体实施例具体说明本发明技术方案,包括以下几个步骤:

训练数据收集与标注

本实施例选取BI图数据欠缺案例,案例中初始提供BI图在40张左右,为尽可能满足所需检测图片的分布,利用爬虫在相关网站收集约2000多张BI图,由于特征相较复杂场景下简单,为了缩短开发周期,经过滤和最初提供图片组成964张训练数据。在训练集、验证集划分方面,使用留出法,训练集与验证机的比重为8:1,其中,随机抽取868张作为训练集,剩下的96张作为验证集和测试集。经标注,将目标分为三类,分别是一级标题、二级标题和三级标题,具体而言,一级标题为BI图的主标题,二级标题为BI图中的分支标题,三级标题为BI图对应图表或文字的小标题。训练数据标签可视化后期标题附图,可以将不同标题使用不同颜色标记,如深蓝色框对应一级标题、米黄色框对应二级标题、浅绿色框对应三级标题。

改进的Faster-RCNN算法模型

根据现实业务需求,需要精准匹配标题文字信息,因此本人采用Two-StageDetection模型中的Faster-RCNN作为Baseline,在此模型基础上进行改进,具体网络结构与改进如下:

Backbone网络模型

Backbone采用ResNet-50,ResNet称为深度残差网络,50为网络层数。

表1 ResNet模型在ImageNet分类数据集上的表现

FPN结构

在目标检测领域中,FPN将Backbone模型最后一层特征图谱进行上采样,并于每一个金字塔阶级的特征图进行加法合并操作,得到新的表征能力更强的不同金字塔层次的特征图谱,然后将ROI按照尺寸分别映射到特征图上,再在每个特征图谱上进行类别和位置预测。可以直观的感受到,这种多尺度的特征图谱在面对不同尺寸的物体时,具有更好的鲁棒性,尤其是在面对小型物体时。同时,这种特征金字塔结构是一种通用的特征提取结构。

表2 FPN结构在COCO数据集上的表现

此项目类别框相对通用目标检测而言较小,因此添加FPN结构增强对小目标的语义特征,改善对小目标的检测效果。

DCN可变性卷积

DCN称为可变形卷积,顾名思义就是卷积的位置是可形变的。它的出发点是解决在图像任务中目标的尺寸,形状变化不一。可变形卷积的实现是通过在卷积层中插入偏移值来增强网络的特征提取能力。偏移值的作用是是网络在提取特征时更多的把注意力聚焦到和训练目标有关的位置上,可以更好的覆盖不同尺寸和形状的目标,并且偏移值也是在监督信息的指导下进行学习的,因此不用像数据增强一样需要大量先验知识才可以获得更好的效果,如表1所示,可视化结果如图2所示。

表7.3 可变形卷积在VOC2012数据集上的表现

此项目的标题框宽高比相较常规目标检测而言有些极端,因此添加可变形卷积来适应不同形状的目标,具体而言在Backbone的最后三层添加可变形卷积。

ROIAlign层

传统的Faster-RCNN在检测的第二阶段会添加ROIPooling层,ROIPooling层的作用是根据预选框的位置坐标在特征图中将相应区域池化为固定尺寸的特征图,以便进行后续的分类和包围框的回归操作[1]。由于候选框的位置通常是由模型回归得到的,一般来讲是浮点数,而池化后的特征图要求尺存固定。故ROIPooling则以操作存在两次量化的过程,如图2所示,更具体的ROIAlign层做了如下操作。

l 遍历每一个候选区域,保持浮点数边界不做量化。

l 将候选区域分割成k*k个单元,每个单元的边界也不做量化。

l 在每个单元中计算固定四个坐标位置,用双线内插法计算出这四个位置的值,然后最大池化操作

事实上,经过上述两次量化,此时的候选框已经和最开始回归出来的位置有一定的偏差,这个偏差会影响检测的精度,这与本项目对精度高的要求显然不符。ROIAlign层的替换可以有效改进ROIPooling层两次量化带来的影响,其取消量化操作,使用双线性内插的方法获得坐标为浮点数的像素点上的图像数值,从而将整个特征聚集过程转化为一个连续的操作。

(1)OHEM算法

OHEM算法采用了一种难例样本挖掘的策略,可以理解为错题集,常规的,你不能把所有的错题都放到错题集中,正确的做法是挑出那些最容易错的题。

本项目中我们对全图标题检测时,会遇到图片其他文字信息的干扰,且这些文字信息很可能成为网络中的难例负样本,因此,加入OHEM算法可以让模型更容易的去发现标题文字和其他文字的区别,从而快速实现迭代。

实验结果及分析

(1)模型训练

本发明使用MMDetection框架搭建,并在型号NVIDIA Tesla P100的GPU进行单卡训练。

数据增强方面,使用Albumentations第三方库操作,使用了RandomBrightnessContrast(随机亮度对比度)、RGBShift(颜色抖动)、HueSaturationValue(色调饱和度增强)、ChannelShuffle(随机通道交换)、IAASharpen(锐化)、ToGray(灰度图转换)等。由于位置信息对于本次任务很重要,因此没有进行裁剪、平移、旋转等操作。

超参数方面,由于标题信息的高宽比相较通用检测模型较小,Anchor的高宽比从原来的0.5、1、2,改为0.1、0.3、0.5、1;在Anchor编码阶段,Anchor与目标框的IOU值大于0.5的设置为正样本;学习率采用Warm up策略,初始学习率设置为0.001;由于单卡训练,BatchSize太大会造成显存不足,因此Batch Size设置为2;Epoch设置为15。

(2)实验结果

超参数定义完成后,对网络模型进行训练。根据每一次迭代绘制loss曲线与准确率,如图4所示,(a)为RPN层前后背景分类损失,(b)为RPN层框回归损失,(c)为模型第二阶段RCNN层分类损失,(d)为模型第二阶段RCNN层框回归损失,(e)为模型总体损失,(f)为成功率。

目标检测领域最常用的评价指标为mAP,该指标同时考虑了算法模型的准确率和召回率,经过每一轮迭代,在验证集mAP指标的结果如下表所示。

表4模型迭代每个Epoch对应mAP值变化情况

根据mAP指标,选取第13代模型在96张测试集图片进行测试,可视化结果表4所示。

(3)实验分析

第一阶段RPN层的loss稳步下降,在第40个迭代后趋于平滑;第二阶段RCNN层的loss前期先增加,后期稳步下降,总体在第50个迭代后趋于平滑,可以解释为,前期由于RPN层训练不稳定,传入RCNN层的候选框被负样本所主导,造成loss增加,后期随着两阶段模型训练趋于稳定,RCNN层loss逐步下降。

根据表4可以看出,模型在第9代训练后趋于稳定,在第12、13代训练时,模型达到最优,由于本发明对模型精度要求较高,此时优先考虑mAP

根据附图可视化测试集结果可以看出,模型输出结果已经达到上线水平,但还有诸多不足之处。图4中(a)、(b)结果表现完美;图4中(c)中一些二级标题、三级标题误检,可以通过可以通过提高候选框得分去除;图4中(d)中检测框未能完全覆盖带有“、”号的标题,这是由于训练数据缺少此类样本导致。

根据以上分析,该模型在在复杂BI图的标题检测已经达到上线水平,但迫于数据量欠缺,某些问题依旧存在,后期需要采集大量数据,不断训练优化。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号