一种RPA机器人智能元素定位拾取方法及系统与流程

文档序号:23340255发布日期:2020-12-18 16:35阅读:1283来源:国知局
一种RPA机器人智能元素定位拾取方法及系统与流程

本发明涉及页面元素定位技术领域,特别涉及一种rpa机器人智能元素定位拾取方法及系统。



背景技术:

伴随我国人口红利的逐渐消失,国家经济进入“新稳态”,众多企业将降低人力成本,提高人员效率作为核心发展诉求,利用智能化、自动化技术赋能改造现有的企业经营、管理和办公模式,将简单工作交由机器来做,成为新的趋势,并将给经济社会的发展带来新的动能。rpa(机器人流程自动化)技术是一种流程自动化技术,通过rpa软件提供的流程编辑器,可以设计和配置出能够自动执行的业务操作流程,并封装成“软件机器人”或“虚拟机器人”的形态,部署到生产环境和业务系统上执行,模拟人在计算机上的一系列操作,例如鼠标移动、鼠标点击、键盘输入、打开网页、获取页面信息、创建文件、输入文件内容、保存文件、删除文件等等,基于上述原子化的操作,实现跨系统的数据集成、汇总和分析,从而替代企业中普遍存在的大量简单、繁琐、重复的工作,并且能够在不进行大规模系统改造的情况下,解决不同部门、不同系统间的数据隔离和业务隔离现象,进一步提高流程处理效率、提高业务操作准确性、降低流程处理成本,最终满足企业的降本增效和业务转型的诉求。

现有的传统rpa技术是通过对界面布局和代码的解析,来实现和业务系统的交互,例如通过一些桌面应用自动化工具提供的api(applicationprogramminginterface,应用程序接口)接口实现操作系统中的鼠标键盘各类操作;通过解析浏览器页面的css(cascadingstylesheets,层叠演示表)结构和javascript(一种开发网页页面的脚本语言)代码等实现浏览器页面元素,如按钮、输入框、文本行等的定位和操作;通过分析办公软件的源代码实现软件界面中元素的定位和操作。这种技术对操作对象的可见性和开放性有较高的要求,需要能通过接口或源码获取操作对象的位置和属性信息,从而执行相应操作。

但在一些应用场景下会存在问题,例如对于远程桌面、虚拟系统、部分客户自己开发的办公软件等操作对象而言,所能获取的往往只是一张页面图片,并不能通过api接口或源码解析的方式进行定位和操作。这种情况下需要利用ai(artificialintelligence,人工智能)领域的计算机视觉技术,进行操作元素的匹配、定位和操作。举例来说,远程桌面上的一个「提交」按钮,由于无法通过传统解析的方式进行定位,因而需要利用目标检测或图像比对的方式先定位到该按钮在整张页面图片中的位置,再配合鼠标的移动和点击操作完成「提交」动作。当前,在处理远程桌面等对象的元素定位方面,领域内的通用方法分为目标检测和模板匹配两种方式。

目标检测:把页面中的各个元素视为图片中的目标物体,利用机器学习或深度学习中的目标检测算法进行处理,得到一个定位元素的矩形检测框,从而获得待操作元素的位置。该方法的不足之处,在于深度学习方法需要有大量带有检测框标注的样例图片才能有较高的定位准确率。对于网页或常见的办公软件来说,尚可通过合成的方式自动构造大量样本数据;然而对一些客户自己开发的或比较少见的业务软件,由于带有标注的样本数据获取困难,且深度学习模型之前没有学习过类似样例,元素检测和定位的效果并不理想。

模板匹配:把页面中的各个元素视为一个图片模板,在整张页面图片中进行搜索和比对,并最终定位到匹配程度最高的位置,这里的匹配指的是图片模板和整张页面图片的部分区域的匹配。但这种方案存在的问题:一是传统的、单一的基于图片像素值或「特征点」的匹配方式,匹配的效果并不理想;二是随着应用场景的扩展,需要匹配的页面元素即模板的数量会越来越多,如果不采用合理的检索结构,会造成模板查询和匹配的速度慢,影响使用。

由此,上述现有的rpa机器人元素定位拾取方式和相关技术存在以下缺点:

1、远程桌面、虚拟系统等场景下元素无法定位

传统rpa技术定位拾取的元素对象主要包括以下三类:系统应用程序、浏览器页面和客户端软件;系统应用程序中的元素一般通过桌面应用自动化工具提供的api进行定位,如基于mfc(microsoftfoundationclasses,微软基础类库)框架开发的程序可使用这种方案抓取句柄并执行各类操作;浏览器页面一般通过css解析的方式进行元素定位;客户端软件则借助软件开发语言(如java)提供的各类插件进行元素定位;无论是上述哪种方式,在面对远程桌面、虚拟系统等场景时,均将失效,原因在于这类场景中,展示给rpa软件的仅仅是一张图片,无法获取其api接口或原始代码,因此只能借助计算机视觉技术来进行处理。

2、基于目标检测的元素定位需要大量带标注样本数据

为获得更高的目标检测精度,现有技术基本采用深度神经网络的方式,而使用深度学习的前提之一则是需要大量带有标注的样本数据提供训练,标注的格式一般是将页面图片上的各个元素,如按钮、文本框、功能图标以矩形框的形式标出,这种带标注的数据本身需要大量的图片素材和人力标注成本,对于浏览器页面或常见办公软件尚且可通过自动合成的方式构造;然而一些商用软件或客户自己开发的系统并无法提供大量的图片素材,因此目标检测的效果在这类场景下会大打折扣;另外,在页面样式和元素形态随浏览器、软件版本发生变更的情况下,基于深度学习方案的重新标注和训练时间会相对较长。

3、传统的模板匹配技术匹配效果不稳定

模板匹配是一种更稳定、更可行和更可控的元素定位方案;传统的模板匹配技术将待匹配元素作为模板图片,在整张页面图片上进行从左至右、从上至下的窗口滑动,并和整张页面图片上每一块和模板图片尺寸相同的区域进行比对,最终找到比对成功的子图及其位置,即为待定位元素的位置,比对方式包括逐像素点比对和特征点比对两种,①逐点比对的方式在页面图片发生分辨率变化、色度偏差等情况下,匹配效果将大受影响,实际场景也常常发生分辨率不一致的情况,例如模板图片对应的是一种浏览器分辨率,而实际执行匹配时因浏览器窗口的放大、缩小或自适应调整,分辨率发生了变化,则很容易出现模板图片对应的目标元素,在页面图片上尺寸发生改变,根据实验证明,页面图片的分辨率发生20%的变化的情况下,匹配结果已完全失准;②特征点比对的方式是对图片应用特征转换算法进行转换,而后提取特征描述因子进行比对;与前者相比能更有效的应对图片分辨率改变、旋转、尺度变化等情况;但采用单一的特征点比对方法,在发生图标、元素样式的轻微改变的情况下仍可能存在匹配失败的现象。

4、模板图片数量的增长影响模板查询和匹配速度

应用模板匹配方案时,需要为每一类应用程序预先制作一套元素模板库,库中包括各类元素、图标的截图图片;实际操作时,首先需要加载整张页面图片和对应的元素模板库,其次进行页面解析,在页面图片上定位各个元素或图标的位置,最后由流程编辑的用户选择需要拾取和操作哪个元素,之所以采用页面预先解析的方案,而不是在每次需要操作元素时直接截图并进行匹配,主要目的有两个:一是减少用户的截图操作,以提升用户体验,并规避因用户截图不准而导致的定位失准现象;二是当同一个页面存在多个一模一样的元素(如在软件中经常会出现多个一模一样的文本输入框)时,每次截图的方式只能提供元素的形态信息,而不包含元素和其他元素的相对位置信息,因此不能保证可以定位到真正想要操作的那个元素。

然而,随着rpa机器人应用场景的扩展,要操作的应用程序越多,模板库的数量也越多。如果没有合理的检索架构,那么在页面解析和匹配时就需要遍历各个模板库,这势必造成匹配效果不准,以及匹配速度过慢;举例来说,现在需要对一个chrome浏览器风格的网页图片进行元素拾取,如果不用chrome风格的模板库,而使用了ie(internetexplorer)浏览器风格的模板库,那么由于二者在图标样式上的不同,将会造成页面解析和元素定位过程中,大量与风格挂钩的元素或图标无法定位,用户则无法进行下一步的拾取和操作;为此,需要构建一个高效的模板库检索引擎,以提升模板库的检索速度和精度,进而提升元素定位的速度和精度,从调研结果看,现有rpa领域内的技术均未考虑到这一点。



技术实现要素:

针对现有技术存在的不足,本发明的目的在于提供一种rpa机器人智能元素定位拾取方法及系统,采用模板匹配、ocr和图像检索相结合的技术准确、高效、稳定地解析页面图片中的各类元素,进而实现元素的定位和拾取,以提供更高效的页面元素定位功能。

首先,采用模板匹配、ocr和图像检索相结合的计算机视觉技术,解决rpa应用场景中,远程桌面、虚拟系统等元素无法定位和操作的问题,提出的新方案能够更加准确和稳定地定位和拾取图片上元素的位置和内容;

第二,采用了基于模板匹配的元素定位方案,相比于深度学习目标检测技术,不需要大量的标注样本,且更加稳定和可控;

第三,融合像素点特征、角点特征和深度神经网络的卷积特征,使得模板匹配的效果更准确和稳定,同时ocr技术也能进一步辅助带文字信息的元素进行定位;

最后,采用图像检索技术构建模板库检索引擎,能够精准判断要处理的页面图片属于哪种应用程序,从而解决多场景下模板库增长导致的检索和匹配速度慢的问题。

对应系统的整体框架示意图参照图3所示,从图中可以看到,rpa应用所要操作的页面图片信息主要包括文字和非文字(图标、按钮等组件)两种,文字信息的位置和内容的定位拾取,采用文字检测+文字识别的深度学习ocr方案;非文字信息则采用图像检索+模板匹配的两阶段级联方案:首先采集各类应用程序的页面图片录入数据库,并利用深度卷积神经网络提取特征,构造页面图片特征向量库;随后执行图像检索时输入的一张页面图片经过同样的深度卷积神经网络计算,生成一个特征向量,在向量库中检索并关联到特定应用程序的模板库;在模板匹配过程中,模板库内各元素模板和页面图片进行一一匹配,可以解析出当前页面的所有非文字信息,以供流程编辑者选择要定位和操作的元素;模板匹配过程结合像素点特征、特征点特征和深度网络计算的特征图特征。

针对现有技术存在的不足,本发明申请具体通过以下内容进行解决。

1、针对rpa机器人在远程桌面、虚拟系统等场景下,元素无法定位拾取的问题,采用模板匹配、ocr和图像检索相结合的计算机视觉技术加以解决。模板匹配用于定位图标、按钮等非文字信息,ocr技术用于定位文字信息,图像检索则用于加速元素定位的过程。其中由于文本信息中文字字符特有的线条特征,以及字符之间在特征点,如角点特征上的高度相似性;适用于图标定位的模板匹配技术在此并不适用。为此本发明采用深度学习ocr技术,解析文字区域的文本位置和内容,该技术由文字检测和文字识别两个模块串联而成,文字检测用于定位图片中文本行的具体位置,并以矩形框等表示;而后从整张页面图片中裁剪出文本行子图送入文字识别模块,获取文本内容。文本位置和内容可以进一步辅助元素的定位和分类。

2、针对基于深度学习目标检测的元素定位技术需要大量标注样本的问题,本发明采用计算机视觉技术中的模板匹配方案,以更可控和更稳定地进行元素定位,每类应用程序只需要一次性的制作相应的图标模板库即可,而不需要准备大量标注好的页面数据;同时针对一些新增的或不常见的应用软件,可以快速实现准确的元素定位和拾取,而不会发生模型效果衰减的问题。

3、针对传统模板匹配技术中匹配效果不稳定的问题,采用融合像素点特征+角点特征+深度神经网络特征图特征的方案,使得元素模板图片和页面图片的比对更精确和更鲁棒。具体来说,由于rpa机器人面对的页面图片布局复杂,且分辨率时有变化,只依赖传统的模板匹配技术效果很难尽如人意;因此,本发明提出了在模板匹配方案中融合传统的像素点特征、基于角点的特征点特征以及经过深度神经网络提取的特征图特征的特征抽取方式,用于计算匹配相似度;计算深度特征图特征过程中,页面图片和模板图片均需要经过神经网络中卷积层的计算,提取卷积层特征图,并结合前两种特征,以实现更鲁棒的匹配。

4、针对模板图片的数量增长导致的模板查询和元素定位速度过慢的问题,本发明采用图像检索技术构建模板库检索引擎,用以加速模板库的检索,缩小需要匹配的元素模板的范围,进而加速元素定位过程。随着rpa场景的扩展,需要操作的应用程序越来越多,传统的模板匹配方案会面临性能问题。为此本发明引入了「场景」的概念,一个场景代表一个应用程序,并以此作为模板库检索的粒度。之所以采用检索而非分类的方式确定每次解析的页面图片的类型,是因为分类算法是有监督的机器学习范畴,往往需要大量的训练样本,并且当新增场景时,需要重新训练模型。而在实际应用时,rpa机器人遇到的应用程序数目是不可预知的,所以本发明通过图像检索技术来处理,可以解决需要大量样本的问题,也可解决新增场景时的冷启动问题。当一张页面图片进入检索引擎并匹配到相似的应用程序后,模板库也相应确定。由于每个场景对应的模板库相比所有模板来说规模较小,因此匹配速度会大大提高。

本发明的上述技术目的是通过以下技术方案得以实现的:

一种rpa机器人智能元素定位拾取方法,应用使用到图像检索模块、光学字符识别模块和模板匹配模块,具体包括以下操作步骤:

图像检索模块首先应用深度神经网络预训练一个页面分类模型,将各种不同的页面分类为指定的场景,同时图像检索模块底层图片库中保存了大量各类场景的页面图片和计算好的特征向量索引;

页面图片输入图像检索模块,利用预训练好的神经网络的部分层作为特征提取器,输出经过深度神经网络计算得到的深度特征向量,深度特征向量进入向量搜索引擎,在图片库中找到与输入页面图片最相似的一张图片,并获得该图片对应的场景,进一步获取对应的图标模板库,即场景对应模板库;

光学字符识别模块先进行文字检测,获取文本区域位置,然后根据文本区域位置在原图中裁剪得到文本块小图,送入文字识别网络,获取该文本块小图上的文本内容,最终返回结果为文本区域位置和对应的文本内容;

将待解析的页面图片和图像检索模块输出的场景对应模板库作为模板匹配模块两个输入,完成页面图片和场景对应模板库中模板图片的特征提取,在模板图片的特征提取中融合了深度特征和角点特征,在页面图片中选择和模板图片特征相匹配的若干候选区域,并结合像素点特征做最终定位,确定最终的匹配区域;

在完成模板匹配后,确定该模板图标在页面图片中的位置并进行保存,并判断是否完成整个场景对应模板库中图片的遍历,若为否则继续获取场景对应模板库中下一个模板图标执行匹配,否则输出页面图片解析结果,最终结合光学字符识别模块的输出结果,将页面文字信息和页面图标信息统一在页面图片中定位得到,并用于rpa编辑过程中的拾取和后续的实际执行。

进一步优选为,图像检索模块的深度特征向量提取具体为:将页面图片输入深度卷积神经网络的部分层进行计算,得到以向量形式表示的特征后进行降维,并通过加权全局求和得到图像的表示向量,其中权重体现了不同位置特征的重要性。

进一步优选为,光学字符识别模块包括文字检测和文字识别两个主要子模块,文字检测子模块应用深度神经网络模型进行页面中文字信息的定位,输出结果是包含文字信息的一个矩形或多边形检测框,该检测框紧密贴着某段文字信息的边缘,并与其他区域的文字信息区分开;文字检测子模型同时需要从页面图片中将检测框内的小图片裁剪出作为文字识别子模型的输入,文字识别子模型以包含文字信息的检测框小图片作为输入,经过深度神经网络计算,得到检测框内具体的文字内容,最终整个光学字符识别模块的输出结果包括文字信息所在位置、文字内容两个部分。

进一步优选为,文字识别子模型采用业内通用的卷积神经网络作为文字信息特征提取器,利用循环神经网络捕捉字符与字符之间的关联关系,并利用联接时序分类技术解码得到最终的文本行内容。

进一步优选为,模板匹配模块首先从场景对应模板库中获取1个模板图片,先计算模板图片的深度特征和角点特征,并采用拼接或求和的方式进行融合实现模板图片的特征提取,通过该模板图片的特征在页面图片中找到若干候选区域,即在页面图片中选择和模板图片特征相匹配的若干候选区域,并结合像素点特征做最终定位,确定最终的匹配区域。

本发明申请的另外一个目的是提供一种rpa机器人智能元素定位拾取系统,应用使用到图像检索模块、光学字符识别模块和模板匹配模块,具体如下:

图像检索模块,包含图片特征转换和向量搜索引擎两个子模块,图片特征转换子模块中应用深度神经网络实现从图片特征到向量特征的转换;向量搜索引擎子模块用于页面图片特征向量的检索和匹配,获得页面图片对应的场景,进一步获取对应的图标模板库,即场景对应模板库;

光学字符识别模块,包含文字检测和文字识别两个主要子模块,文字检测子模块应用深度神经网络模型进行页面中文字信息的定位,文字检测子模型同时需要从页面图片中将检测框内的小图片裁剪出作为文字识别子模型的输入,文字识别子模型以包含文字信息的检测框小图片作为输入,经过深度神经网络计算,得到检测框内具体的文字内容,最终整个光学字符识别模块的输出结果包括文字信息所在位置、文字内容两个部分;

模板匹配模块,将待解析的页面图片和图像检索模块输出的场景对应模板库作为模板匹配模块两个输入,完成页面图片和场景对应模板库中模板图片的特征提取,在页面图片中选择和模板图片特征相匹配的若干候选区域,并结合像素点特征做最终定位,确定最终的匹配区域。

进一步优选为,图片特征转换子模块应用预训练的卷积神经网络进行图片特征提取,将页面图片输入深度卷积神经网络的部分层进行计算,得到以向量形式表示的特征后进行降维,并通过加权全局求和得到图像的表示向量,其中权重体现了不同位置特征的重要性;向量搜索引擎子模块应用度量学习的方法实现,具体的向量相似性度量采用如欧式距离进行计算,之后对两个向量的距离进行排序得到检索结果,因为如果是欧式距离的话一般距离越小表示越匹配。

进一步优选为,文字检测子模块采用基于分割模式的目标检测深度学习技术,将文字区域的图像纹理特征和其他区域进行区分,并训练学习能够表示文字信息区域的掩膜区域,最后将各个小的掩膜区域合并得到整块的文本信息位置;文字识别子模型采用业内通用的卷积神经网络作为文字信息特征提取器,利用循环神经网络捕捉字符与字符之间的关联关系,并利用联接时序分类技术解码得到最终的文本行内容。

综上所述,本发明对比于现有技术的有益效果为:

本发明独创性地将图像检索、ocr和模板匹配技术与rpa元素定位拾取进行结合。首先对于远程桌面等传统rpa技术无法定位、拾取元素的场景,采用场景图像检索+模板匹配的两阶段方案进行解析,辅助ocr技术能够准确定位并拾取元素。其次考虑到传统模板匹配易受页面大小、分辨率的影响,具有自身局限性,因而采用基于深度学习方法,将图片经过深度神经网络编码后得到的特征图结合角点特征一同进行模板匹配,增强泛化能力,提高匹配精度;

同时,借助ocr通用小模型的文字检测和文字识别技术,快速定位页面文本信息位置和内容,进一步辅助元素的定位和拾取。最后针对大量模板图片一一匹配时带来的耗时问题,引入了场景图像检索技术,通过对待解析页面图片的检索可以得到对应的所属的场景类别,进而确定对应的模板图标库,可以大幅缩小模板库的范围,减少模板匹配即页面解析的时间。通过本发明技术方案,可以实现rpa在全场景下的高效、准确、鲁棒的元素定位和拾取。

附图说明

图1为实施例中图像模板匹配技术的参考示意图;

图2为实施例中图像检索技术的检索框架示意图;

图3为发明内容中系统整体框架示意图;

图4为实施例中系统功能架构图;

图5为实施例中模板匹配模块的具体执行流程图;

图6为实施例中场景图片的示意图;

图7为实施例中具体实施流程图。

具体实施方式

下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。说明书中的“实施例”或“实施方式”既可表示一个实施例或一种实施方式,也可表示一些实施例或一些实施方式的情况。

本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。

根据本发明的实施方式,提出了一种rpa机器人智能元素定位拾取方法及系统。

需要说明的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。

下面对本发明中相关的现有技术和所涉及的技术术语进行简单描述,以便相关人员更好地理解本方案。

1、rpa及其元素拾取技术

rpa是一种利用“数字员工”代替人进行业务操作的一种方式及其相关的技术。本质上rpa是通过软件自动化技术,模拟人实现计算机上系统、软件、网页和文档等对象的无人化操作,获取业务信息、执行业务动作,最终实现流程自动化处理、人力成本节约和处理效率提升。

从描述可知,rpa的核心技术之一就是进行操作元素的定位拾取,举例来说,当需要模拟人进行按钮点击动作,前提就是定位到按钮元素的位置。传统的元素定位技术一般通过api接口或页面源码解析的方式来做,往往要求页面底层结构是「可见」的,也就是可以获取其操作接口或者代码信息,然而在远程桌面、虚拟系统等场景中,这种假设一般不成立。

为此领域内一般采用基于目标检测和基于模板匹配的两种计算机视觉方式解决;前者采用深度神经网络的方式对页面各类元素进行检测和定位,优势在于是一种端到端的元素定位方法,无需事先指定和制作待匹配元素的模板图片,而问题同样明显,需要大量带有标注的样本数据提供模型学习。实际场景中,对于一些采用原生框架自己开发的软件系统来说,无法满足深度学习所需的大量样本,此时模型未学习过类似样本,定位准确率很难满足实际需求。

2、图像模板匹配技术

图像模板匹配是另一种解决远程桌面等场景下元素定位问题的方法;相比基于目标检测的方法更鲁棒、更可控。该方法基本思想是在整张图片上搜索和查找元素图像所在位置。如参照图1所示,需要定位的元素为蓝色提交按钮,现有模板匹配技术是这样处理的:以蓝色按钮图像为模板,在整张页面从左至右,从上至下滑动,并在页面图片中切出和模板图片相同尺寸的子图,进行逐个像素点比较运算,结果存储到上述滑动操作所形成的滑动窗口位置矩阵中,最后求出矩阵极值,即相似度最高的子图所在位置,如图1红色方框所示。

逐个像素点匹配的方式,要求模板图片和整张页面图片的分辨率保持相对一致,且色差不能偏离太大,否则容易失配。另一种基于特征点的方式则相对更鲁棒,处理方式上一般将模板图片和切出的子图通过特征变换算法转换为局部特征描述子,再进行相似度计算,因此在分辨率变化、亮度变化和轻微色差情况下匹配效果更好,但仍存在一定概率的匹配错误的现象。

3、ocr(opticalcharacterrecognition,光学字符识别)技术

ocr是一种通过计算机视觉技术将电子文档上的字符进行提取和转化为计算机可读的文本数据的技术。这里的电子文档可以是通过扫描仪得到的纸质文档的影印件,也可以是通过高拍仪、相机、手机等拍摄得到的纸质文档的拍摄件,还可以是通过页面截屏的方式得到的系统页面、浏览器页面等的截屏图片。常见的ocr应用包括身份证识别、名片识别、银行卡识别、发票识别、火车票识别及各类文档识别和转写等。ocr技术在本发明中主要用于识别页面截图中各类元素带有的字符信息,以辅助元素的定位和操作。例如图1中蓝色提交按钮中带有的字符信息,可以通过ocr技术进行定位和识别,进而辅助定位到整个按钮图像的位置。

4、图像检索技术

本发明中所指的图像检索指基于内容的图像检索,也就是所谓的“以图搜图”,基本的检索框架如图2所示。检索图片库中的原始图片集经过特征提取后形成特征向量库;待查询图片经过相同的特征提取方法转换为向量形式的特征;检索引擎模块采用向量搜索和匹配的方式在特征向量库中找到最相似的向量并对应到原始图片,最后将相似度最高的若干张图片返回并展示。基于内容的图像检索一般基于图像的颜色、纹理、布局等进行相似度判断,更高层的语义特征如图片中的物体类别、数量等则需借助深度学习的方法进行训练和学习。本发明涉及的图像检索结合颜色、纹理等浅层特征和物体类别、数量等深层特征。

一种rpa机器人智能元素定位拾取系统,包括三个主要模块:图像检索模块、光学字符识别(ocr)模块和模板匹配模块,具体架构图参照图4。

图像检索模块:包括图片特征转换和向量搜索引擎两个子模块。

图片特征转换子模块中应用深度神经网络实现从图片特征到向量特征的转换,具体流程为首先应用深度神经网络训练一个页面分类模型,将各种不同的页面分类为指定的场景,如图4所示是浏览器a的搜索页面,则对应的场景标签为“浏览器a”;之后利用预训练好的神经网络的部分层作为特征提取器,其输入是如图显示的页面图片,输出为经过神经网络计算得到的深度特征向量;与此同时检索模块底层图片库中保存了大量各类场景的页面图片,以及事先计算好的特征向量索引;

向量搜索引擎子模块用于图片特征向量的检索和匹配,上一步转换得到的页面图片特征向量进入向量搜索引擎,在图片库中找到和当前页面最相似的一张图片,并获得该图片对应的场景,如图4所示该页面图片检索到的场景为“浏览器a”,则可以进一步获取“浏览器a”对应的图标模板库,该模板库中存储了该浏览器应用特有的各类图标、按钮、文本框等小图片,可以作为下一步模板匹配模块的输入。

光学字符识别(ocr)模块:包括文字检测和文字识别两个主要子模块。

文字检测子模块应用深度神经网络模型进行页面中文字信息的定位,如图4所示,文字检测子模型的输出结果是包含文字信息的一个矩形或多边形检测框,该检测框紧密贴着某段文字信息的边缘,并可以和其他区域的文字信息区分开;另外文字检测子模型需要从页面图片中将检测框内的小图片裁剪出作为文字识别子模型的输入;

文字识别子模型以包含文字信息的检测框小图片作为输入,经过深度神经网络计算,得到检测框内具体的文字内容,最终整个光学字符识别(ocr)模块的输出结果包括文字信息所在位置、文字内容两个部分。

模板匹配模块:该模块的两个输入分别是待解析的页面图片、图像检索模块输出的场景对应模板库,模块的具体执行流程图如图5所示。

结合图5所示的流程图与本发明图4所示的系统功能架构图可见,模板匹配模块首先从模板库中获取1个模板图片,同时完成页面图片和模板图片的特征提取,在特征提取过程中本发明融合了深度特征和角点特征,在页面图片中选择和模板图片特征相匹配的若干候选区域,并结合像素点特征做最终定位;在完成模板匹配后,系统确定该模板图标在页面图片中的位置并进行保存,判断是否完成整个模板库中图片的遍历,若为否则继续获取模板库中下一个模板图标执行匹配,否则输出页面图片解析结果,结果如系统架构图所示展现了各个可操作元素如前进、刷新、后退等在页面图片中的位置。

最终,结合ocr模块的输出,可以将页面文字信息和页面图标信息统一在页面定位得到,并用于rpa编辑过程中的拾取和后续的实际执行。

各个模块应用到的技术方案具体描述如下:

1、图像检索相关技术

给定一张待解析的页面图像,图像检索旨在从图片库中找到包含相同场景的图像;图片特征转换应用预训练的卷积神经网络进行图片特征提取,具体来说将图片输入深度卷积神经网络的部分层进行计算,得到以向量形式表示的特征后进行降维,并通过加权全局求和得到图像的表示向量,其中权重体现了不同位置特征的重要性,可以附加空间方向权重和通道方向权重两种形式;向量搜索引擎应用度量学习的方法实现,具体的向量相似性度量可以采用如欧式距离进行计算,之后对两个向量的距离进行排序得到检索结果。

2、光学字符识别技术

光学字符识别包括文字检测和文字识别两个模块。

文字检测:主要目标是将图片中的文字区域位置检测出来,以便进行下一阶段的文字识别;本发明的文字检测采用基于分割模式的目标检测深度学习技术,将文字区域的图像纹理特征和其他区域进行区分,并训练学习能够表示文字信息区域的掩膜区域,最后将各个小的掩膜区域合并得到整块的文本信息位置;另外为减少检测耗时,本发明还将深度神经网络的骨干网络(backbone)替换为更小型的网络,减少了模型推理时间。

文字识别:文字识别是指给定包含文字信息的图片,通过计算机视觉技术识别出图片中的文字内容;传统的文字识别技术是基于图像处理的方法将一个个字符单独切分出来后进行识别,本发明采用的是基于深度学习的文字识别方法,具体来说采用业内通用的卷积神经网络作为文字信息特征提取器,利用循环神经网络捕捉字符与字符之间的关联关系,并利用联接时序分类技术(connectionisttemporalclassification,ctc)解码得到最终的文本行内容,同样为减少识别耗时,本发明使用了更小型的深度神经骨干网络,减少模型推理时间。

3、模板匹配相关技术

模板匹配(templatematching)是一种最原始、最基本的模式识别方法,也是图像处理中最基本、最常用的匹配方法;模板是一张给出特定目标的小图片,对应本发明来说即为图片、按钮、搜索框等图片,模板匹配技术就是研究在一张大图像中寻找该特定目标具体位置的过程。传统的模板匹配原理非常简单:遍历大图中每一个可能的位置,比较各处与模板是否相似,当相似度足够高时,就认为找到了我们所需要的目标,匹配相似度的一种计算方式如公式所示:

其中,t(x’,y’)表示模板图片在(x’,y’)处坐标的像素值,可以是红绿蓝三色(rgb)值或者灰度值,i(x+x’,y+y’)表示页面图片在以(x,y)作为子图左上顶点的情况下,和模板图片相同大小的区域的像素值,这里采用的是差值平方和作为相似度度量。当然,因为上述传统的模板匹配只能在大图像上平移移动,偌大图像中的匹配目标发生了变化则会失效。因此本发明在传统模板匹配之前引入深度特征和角点特征,提高模板匹配的泛化性。具体来说先计算模板图片的深度特征和角点特征,并采用拼接或求和的方式进行融合,通过该特征在大图片中找到若干候选区域,而后利用传统的模板匹配进一步确定最终的匹配区域,本质上是一个两阶段的特征比对和模板匹配、定位的过程。

以如下rpa机器人通过远程桌面的方式登录某邮箱流程为例,该邮箱登录页面参照图6所示,具体的实施流程图参照图7所示。

本发明的具体落地实施流程如下,:

1、在系统的准备阶段需要构建场景图片库和索引,场景图片库中保存各类应用程序的各种场景图片,同时对图片库中每张场景图片进行特征提取,用提取的特征构建图像检索所需的索引,图6的某邮箱登录网页即为一种场景图像;

2、构建场景对应的模板图片库,每种场景对应指定的图标模板;

3、在rpa的流程录制阶段,首先输入需要解析的页面图片,以图6为例则是某邮箱的登录页面,需要对其中包含的各类图标、按钮等非文字信息和文字信息进行解析,因此对该页面图片进行特征提取,并和场景图片特征索引进行相似度计算,以找到最相似的场景图片;

4、如果相似度最高图片的相似度也低于事先确定的阈值,则说明检索失败,找不到对应的场景;否则检索成功,可以获取该场景对应的模板图标库;

5、根据上一步获取的模板图标库执行模板匹配流程,如上述的模板匹配流程所示,在匹配过程中应用到的特征融合了深度特征和角点特征,并找到在页面图片中的具体位置,以图6为例,可以找到「登录」按钮所在的位置以便后续的拾取;

6、同步对页面图片执行ocr识别流程,先进行文字检测,获取文本区域位置,然后根据文本区域位置在原图中裁剪得到文本块小图,送入文字识别网络,获取该小图上的文本内容,最终返回结果为文本区域位置和对应的内容,例如图6中通过ocr可以定位到「忘记密码」所在的位置和具体文本内容,进而辅助页面中元素的定位和拾取;

7、综合模板匹配得到的非文字解析结果和ocr得到的文字解析结果,并展现在原图上,参照图4的系统架构图,以图6为例,可以将「账号」、「密码」等非文字性的输入框和「忘记密码」、「注册免费邮箱」等文字性元素的位置都定位到;

8、rpa流程编辑过程中即可根据页面解析的结果定位和拾取所需要的元素;

9、在rpa流程实际执行阶段,根据流程编辑的结果可以执行相应的元素操作,例如该邮箱登录流程示例,可以定位和拾取到账号输入框、密码输入框、登录按钮等元素控件,在执行时即可自动获取控件位置,执行账号信息自动录入、密码自动填充,自动点击登录按钮,从而完成rpa机器人自动化的登入邮箱的操作。

本发明独创性的采用一种图像检索+模板匹配的两级架构,结合图像检索技术、ocr识别技术和模板匹配技术来解决远程桌面等场景下元素无法定位和拾取的问题。

本发明的技术关键点和保护点如下:

1.创新性的结合图像检索+模板匹配+ocr技术解决传统rpa技术对远程桌面、虚拟桌面等场景无法进行元素定位拾取的问题,本发明的整体技术架构为独创;

2.元素定位过程中采用模板匹配技术,并在匹配过程中独创性地融合深度神经网络特征、角点特征和像素点特征,以提高模板匹配的泛化能力和准确率;

3.采用ocr技术辅助定位和拾取页面元素,在ocr技术中针对性地进行了深度神经骨干网络的小型化和模型优化,提升了文字检测和文字识别模型的推理执行速度,该项技术在本领域据调研为首次应用;

针对大量的模板进行一一匹配时带来的耗时问题,创新性地引入了场景图像检索技术,通过该技术,可以检索出当前页面图片对应的场景,进而可以确定和场景一一对应的模板库,大幅度缩小模板范围,减少模板匹配时间,提高匹配效率。

以上所述仅是本发明的示范性实施方式,而非用于限制本发明的保护范围,本发明的保护范围由所附的权利要求确定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1