CN115495055A - 基于界面区域识别技术的rpa元素匹配方法及系统 - Google Patents
基于界面区域识别技术的rpa元素匹配方法及系统 Download PDFInfo
- Publication number
- CN115495055A CN115495055A CN202211366340.7A CN202211366340A CN115495055A CN 115495055 A CN115495055 A CN 115495055A CN 202211366340 A CN202211366340 A CN 202211366340A CN 115495055 A CN115495055 A CN 115495055A
- Authority
- CN
- China
- Prior art keywords
- interface
- area
- elements
- matching
- execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Image Analysis (AREA)
Abstract
本发明属于RPA元素匹配技术领域,具体涉及基于界面区域识别技术的RPA元素匹配方法及系统。方法包括:S1,使用训练过的元素检测模型检测出界面上的所有元素;S2,使用界面区域识别技术,将整个界面划分为若干个区域,并为每个区域赋予一个ID,并将各个区域内的元素都赋予相应的区域ID;S3,通过拾取界面内所有元素两两之间的特征相似度计算,判断拾取界面中是否存在重复元素;S4,使用界面区域识别技术,在执行界面划分区域,通过区域ID,在执行界面定位到拾取元素在执行界面所属的区域;S5,将定位到的区域输入训练过的元素检测模型,并检测出目标区域内的元素;S6,元素匹配。
Description
技术领域
本发明属于RPA元素匹配技术领域,具体涉及基于界面区域识别技术的RPA元素匹配方法及系统。
背景技术
RPA(机器人流程自动化,Robotic Process Automation)是一种当前快速发展的计算机软件自动化技术。元素拾取是RPA的重要组成功能,包括元素检测与识别。
RPA技术的核心是对计算机软件界面上的各类元素,例如按钮、文字、搜索框、输入框、可操作区域等,进行精确的定位(或叫拾取)和操作,进而完成流程执行所需的点击、跳转、输入、复制、粘贴等动作。传统拾取技术可以通过操作系统指令、网页结构分析、软件代码解析等方式实现拾取。而对于无法通过传统拾取技术拾取的软件,目前主流的方法是利用计算机视觉技术来识别。在这一过程中,涉及到大量对软件界面元素匹配的步骤,来将拾取元素和执行元素进行匹配,来达到定位和操作预设流程中所拾取的软件界面元素的目的。
基于计算机视觉技术的元素匹配方案通过对比拾取元素和执行元素的像素特征来完成匹配,一般的匹配的过程是首先使用元素检测模型检测整张执行界面元素,然后将流程编辑阶段预设的拾取元素特征和执行界面所有元素特征进行逐一对比。但这种单纯比较拾取元素和执行元素特征的方法仅适用于元素样式在界面中是唯一的情况(即非重复元素的匹配),当要对界面中的重复元素进行拾取和匹配时,匹配往往会失效。
对于界面重复元素的匹配精度低的问题,当前业内的主要解决方案为引入锚点元素来进行辅助匹配。在拾取重复元素时,为拾取元素选择锚点元素,这里所说的锚点元素一般是指页面中的唯一元素,不存在重复的情况,并记录锚点元素和拾取元素之间的相对位置关系。在匹配时,首先会在执行界面为拾取元素匹配到多个候选执行元素,然后再在执行界面为锚点元素进行匹配,来确定所拾取的锚点元素在执行界面的位置,最后将拾取界面和执行界面的锚点元素和候选执行元素之间的位置关系进行比较,来最终确定所拾取的目标元素在执行界面的位置。
对于普通非重复元素匹配,传统匹配方法是在整个执行界面区域内寻找与拾取元素相匹配的执行元素,由于需要先在整个界面中检测元素,导致元素检测耗时较长,且对内存的占用较大;然后需要将整个界面中的所有元素逐一与拾取元素进行匹配,导致匹配耗时较长;从而使得整个执行流程效率不高。对于重复元素匹配,目前基于锚点的RPA元素匹配方案主要有手动选取锚点和自动选取锚点两种方式。手动选取锚点的方式由于整个拾取过程需要人为判断、选取锚点元素,提高了用户的认知成本和操作复杂度;自动选取锚点的方案中,整个软件界面的所有元素都可能被选做锚点,会导致所选取的锚点元素不够合理;且两种现有的基于锚点的元素拾取匹配方案,在执行阶段需要对拾取元素及其对应的锚点元素在整个执行界面甚至是全屏幕中进行匹配,无疑是增加了匹配耗时。具体来说:
1.手动选取锚点方案的局限性
对于手动锚点选取方式来说,由于锚点本身就是一个相对抽象和专业的概念,因此手动选取无疑是增加了用户的学习和理解成本,并且在用户进行元素拾取时,既要拾取目标元素又要拾取锚点元素,还需要判断是否需要为当前元素选取锚点,以及哪些元素适合作为锚点等等,使得整个拾取操作变得繁琐复杂。
2.自动选取锚点方案的局限性
对于当前的自动锚点的拾取方案来说,相比较于手动选取锚点,其拾取操作变得简单许多,仅需拾取想要操作的元素,系统会自动判断拾取元素是否需要选取锚点并自动为其选取锚点。但是其锚点的自动选取是可以在整个软件界面内查找的,很容易找到不合适的锚点元素,比如在企业微信聊天界面,当自动锚点方案选取了聊天框内的聊天内容元素作为锚点元素时,由于聊天框的内容是经常变化的,就很有可能导致在执行阶段包含了拾取阶段聊天内容文字信息的锚点由于聊天框内容的变化而匹配失败,从而导致拾取元素匹配失败,难以保证准确度。
3.锚点辅助匹配方案的耗时增加问题
在当前的锚点辅助匹配方案中,无论是手动锚点选取方案还是自动锚点选取方案,在拾取的时候都需要保存拾取元素及为拾取元素选取锚点元素。在匹配阶段,要在整个执行界面中匹配拾取元素和锚点元素,而匹配的一般过程是将待匹配元素和执行界面所有元素进行特征(传统视觉或深度学习技术提取的特征)相似度比较,因此当界面内元素比较多的时候,锚点元素匹配所带来的耗时的增加也是非常可观的。
因此,设计一种能够提升非重复元素匹配效率,优化重复元素自动锚点拾取的合理性,提升锚点辅助的重复元素匹配效率和准确度的基于界面区域识别技术的RPA元素匹配方法及系统,就显得十分重要。
例如,申请号为CN202011126599.5的中国专利文献描述的结合RPA与AI的软件界面元素的匹配方法及装置。软件界面元素的匹配方法,包括通过采用OCR技术提取当前软件界面中的界面元素;将目标元素的特征信息与所述当前软件界面中的界面元素进行匹配,得到所述目标元素在当前软件界面上的分布信息;根据所述分布信息,执行对所述目标元素的访问操作。虽然可以提升机器人流程自动化过程中对软件界面上的界面元素的匹配准确度,实现方式简单,效果稳定可靠,但是其缺点在于,上述方案采用的是基于手动锚点元素匹配的技术方式,而基于手动选取锚点方案存在增加了用户的学习和理解成本以及使得整个拾取操作变得繁琐复杂的问题。
发明内容
本发明是为了克服现有技术中,现有基于锚点的RPA元素匹配方案存在提高了用户的认知成本和操作复杂度以及导致所选取的锚点元素不够合理,增加了匹配耗时的问题,提供了一种能够提升非重复元素匹配效率,优化重复元素自动锚点拾取的合理性,提升锚点辅助的重复元素匹配效率和准确度的基于界面区域识别技术的RPA元素匹配方法及系统。
为了达到上述发明目的,本发明采用以下技术方案:
基于界面区域识别技术的RPA元素匹配方法,包括如下步骤;
拾取阶段:
S1,元素检测:使用训练过的元素检测模型检测出界面上的所有元素;
S2,界面区域识别:使用界面区域识别技术,将整个界面划分为若干个区域,并为每个区域赋予一个ID,并将各个区域内的元素都赋予相应的区域ID;
S3,元素拾取:通过拾取界面内所有元素两两之间的特征相似度计算,判断拾取界面中是否存在重复元素;
执行阶段:
S4,界面区域定位:使用界面区域识别技术,在执行界面划分区域,通过区域ID,在执行界面定位到拾取元素在执行界面所属的区域;
S5,区域元素检测:将定位到的区域输入训练过的元素检测模型,并检测出目标区域内的元素;
S6,元素匹配:若拾取元素是非重复元素,则将拾取元素和执行界面目标区域内的元素进行匹配;若拾取元素是重复元素,将拾取元素及拾取元素的锚点与检测出的目标区域内的元素进行相应匹配。
作为优选,步骤S1中,所述元素检测模型采用YOLO-v5目标检测模型。
作为优选,步骤S2包括如下步骤:
S21,使用计算机视觉技术,对整个界面中的直线进行识别,并提取界面中的连通区域,同时对所有的连通区域进行过滤;
S22,将面积占比达到设定阈值的连通区域作为一个界面区域,并记录每一个界面区域的面积占比大小顺序以及宽高比大小顺序,将上述两个属性作为一个界面区域的唯一标识;
S23,给所有元素添加各自所属界面区域的唯一标识信息,用于表示元素在拾取界面所属的区域。
作为优选,步骤S3包括如下步骤:
S31,对整个拾取界面上的所有元素进行两两之间的特征相似度计算,判断各个元素是否为重复元素;
S32,若不存在重复元素,则直接完成界面元素的获取,并根据用户操作对目标元素进行拾取;若存在重复元素,则为重复元素自动分配锚点;
S33,若存在一个元素被多个重复元素选做锚点,则将锚点分配给离所述锚点距离最近的重复元素,最后根据用户操作对目标元素进行拾取。
作为优选,步骤S4包括如下步骤:
S41,使用界面区域识别技术对执行界面进行区域划分,并赋予每个区域面积占比大小顺序和宽高比大小顺序属性;
S42,将每个区域面积占比大小顺序和宽高比大小顺序属性,逐一和拾取元素中保存的拾取元素所属区域对应的占比大小顺序和宽高比大小顺序进行比较;
其中,比较时面积占比大小顺序优先,当两个区域的面积占比大小顺序一样时,再比较宽高比大小顺序。
作为优选,步骤S6包括如下步骤:
S61,采用基于传统计算机视觉和基于深度学习的特征匹配方法,将拾取元素和执行界面目标区域内检测到的所有元素进行特征比对;
S62,若没有一个元素和拾取元素的特征相似度超过设定的阈值,则说明执行界面没有元素能够和拾取元素进行匹配,返回空的匹配结果;若仅有一个元素和拾取元素的特征相似度超过设定的阈值,则说明拾取元素在执行界面存在唯一匹配,直接返回匹配结果;
S63,若存在多个执行界面的元素和拾取元素的特征相似度超过设定的阈值,则将所述元素作为候选匹配元素保存,并进行拾取元素锚点的匹配;若执行界面没有元素与拾取元素锚点的特征相似度达到设定的阈值,则说明执行界面目标区域没有能与拾取元素锚点进行匹配的元素,则放弃所有候选匹配元素,返回空的匹配结果;
S64,若在执行界面目标区域有一个元素与拾取元素锚点的特征相似度大于设定的阈值,则建立所述锚点和所有候选匹配元素的位置关系,并与拾取元素及拾取元素锚点的位置关系进行比对,返回位置关系最为相近的结果作为最终匹配结果;
其中,所述建立的位置关系包括但不限于两个元素的相对距离和相对角度。
本发明还提供了基于界面区域识别技术的RPA元素匹配系统,包括:
元素检测模块,用于使用训练过的元素检测模型检测出界面上的所有元素;
界面区域识别模块,用于使用界面区域识别技术,将整个界面划分为若干个区域,并为每个区域赋予一个ID,并将各个区域内的元素都赋予相应的区域ID;
元素拾取模块,用于通过拾取界面内所有元素两两之间的特征相似度计算,判断拾取界面中是否存在重复元素;
界面区域定位模块,用于使用界面区域识别技术,在执行界面划分区域,通过区域ID,在执行界面定位到拾取元素在执行界面所属的区域;
区域元素检测,用于将定位到的区域输入训练过的元素检测模型,并检测出目标区域内的元素;
元素匹配模块,用于若拾取元素是非重复元素,则将拾取元素和执行界面目标区域内的元素进行匹配;若拾取元素是重复元素,将拾取元素及拾取元素的锚点与检测出的目标区域内的元素进行相应匹配。
本发明与现有技术相比,有益效果是:(1)本发明结合RPA使用场景界面特点,将基于传统计算机视觉的直线检测技术应用在元素匹配阶段,提升了非重复元素匹配效率,优化了重复元素自动锚点拾取的合理性,提升了锚点辅助的重复元素匹配效率和准确度,大大提升了RPA软件执行的准确度和效率,优化了用户体验;(2)本发明采用的自动分配锚点步骤中,由于采用了基于页面区域划分技术对页面进行了区域的划分,因此在自动分配锚点时,可以将为拾取元素所分配的锚点限制在拾取元素所属区域内,增强了自动锚点分配的合理性。
附图说明
图1为本发明中页面及元素布局的一种示意图;
图2为本发明中基于界面区域识别技术的RPA元素匹配方法的一种流程图;
图3为本发明中界面区域识别及区域索引定义的一种示意图;
图4为本发明中重复元素自动锚点选取的一种流程示意图;
图5为本发明中重复元素匹配的一种示意图;
图6为本发明实施例所提供的拾取界面区域识别及元素识别的一种示意图;
图7为本发明实施例所提供的执行界面区域识别及元素识别的一种示意图。
具体实施方式
为了更清楚地说明本发明实施例,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
实施例:
如图2所示的基于界面区域识别技术的RPA元素匹配方法,包括如下步骤;
拾取阶段:
S1,元素检测:首先将经过标注的界面元素样本划分为训练集和测试集,然后使用训练集样本,训练元素检测模型,使其在测试集上达到设定的精度指标。然后使用训练过的元素检测模型检测出界面上的所有元素;
其中,元素检测模型可采用YOLO-v5目标检测模型。
S2,界面区域识别:使用界面区域识别技术,将整个界面划分为若干个区域,并为每个区域赋予一个ID,并将各个区域内的元素都赋予相应的区域ID;
S3,元素拾取:将元素检测模型识别出的所有元素送入到元素特征提取模型中进行元素特征提取。其中,元素特征提取模型可以是基于传统计算机视觉技术的特征提取方法,也可以是基于深度学习技术的特征提取模型。每个元素所提取的特征是一个长度为N的特征向量(N是正整数),通过计算两两特征向量之间的相似度即可得到两两元素之间的特征相似度值,其中特征向量的相似度计算方法包括但不限于“余弦相似度”。通过拾取界面内所有元素两两之间的特征相似度计算 ,判断拾取界面中是否存在重复元素;
执行阶段:
S4,界面区域定位:使用界面区域识别技术,在执行界面划分区域,通过区域ID,在执行界面定位到拾取元素在执行界面所属的区域;
S5,区域元素检测:将定位到的区域输入训练过的元素检测模型,并检测出目标区域内的元素;
S6,元素匹配:若拾取元素是非重复元素,则将拾取元素和执行界面目标区域内的元素进行匹配;若拾取元素是重复元素,将拾取元素及拾取元素的锚点与检测出的目标区域内的元素进行相应匹配。
拾取阶段主要包括三个子阶段,元素检测、界面区域识别、元素拾取。具体的:
元素检测:元素检测子阶段所要完成的功能是使用训练好的元素检测模型识别出拾取界面中的所有元素,并将识别出的元素坐标等信息进行存储。
界面区域识别:在这一阶段,首先使用计算机视觉技术,对整个界面中的直线进行识别,然后提取界面中的连通区域,再对所有的连通区域进行过滤,只有面积达到一定占比的连通区域才算是一个界面区域;然后记录每一个界面区域的面积占比大小顺序,以及宽高比大小顺序,将这两个属性作为一个界面区域的唯一标识;最后给所有元素添加各自所属界面区域的唯一标识信息,来表示元素在拾取界面所属的区域,以便在执行界面进行区域的快速定位。如图3所示为界面区域识别及区域索引定义示意图,其中area_idn表示区域n的面积占比顺序,whr_idn表示区域n的宽高比大小顺序。
元素拾取:在这一阶段,首先要为整个界面上的所有元素两两之间计算相似度,来判断各个元素是否为重复元素,如果不存在重复元素,则直接完成界面元素的获取,然后根据用户操作对目标元素进行拾取。如果存在重复元素,则需要为重复元素自动分配锚点,在为某重复元素分配锚点时,在其所属区块内,选择与其距离最近的上、下、左、右、左上、左下、右上、右下8个方向的文字和图标元素(如果某个方向上不存在文字或图标元素,则忽略对这个方向锚点的初选)作为初选锚点,为了防止因不同重复元素的锚点相同而导致匹配错误,需要遵循锚点唯一原则。锚点唯一原则包含两个层面的含义:1.锚点本身不能是重复元素;2.同一元素不能同时被多个元素选做锚点。因此首先将初选锚点中本身属于重复元素的锚点删除,即所有的重复元素本身不能作为锚点。然后在为每一个重复元素自动选取了锚点之后,检查是否存在一个元素被多个重复元素选做锚点的情况,如果存在,则将此锚点进行最终分配,唯一分配给离其距离最近的重复元素。最后再根据用户操作对目标元素进行拾取。如图4所示为重复元素自动锚点选取流程示意图。
在元素拾取子阶段,首先通过特征相似度的计算,判断界面中是否存在重复元素,如果存在重复元素,则为重复元素自动分配锚点,由于为每个元素都赋予了区域ID,因此分配锚点时,可以限制为某重复元素所分配的锚点需与其处在同一个区域内,这样能够尽可能地确保锚点的分配是合理的,降低了锚点元素变化的可能性,从而能够提升匹配准确率;同时由于限制了和记录了区域ID,重复元素及其锚点的匹配仅需在同一区域内进行,极大地降低了整个匹配过程的耗时。以某软件场景为例,如图1所示为页面及元素布局示意图,存在重复元素001,002和003,在为001元素选取锚点时,之前的自动锚点选取方案不受区域限制就很有可能在选择图标元素004和文字元素011作为锚点,而文字元素011是属于聊天框区域的,选取它作为锚点元素是很危险的,因为随着聊天框内容的变化,执行时011元素很可能就找不到了或者不在原位置了,而在界面区域识别技术的能力加持下,能够将001元素的锚点限制在输入框区域内,如图中虚线连接所示,从而很好的避免上述问题的出现。
执行阶段主要包括三个子阶段,界面区域定位、区域元素检测、元素匹配,具体的:
界面区域定位:这一阶段所要完成的功能是在元素匹配时,根据拾取元素在拾取界面的界面区域唯一标识,在执行界面定位到相应的区域。具体做法是,首先使用界面区域识别技术对执行界面进行区域划分,并赋予每个区域面积占比大小顺序和宽高比大小顺序属性,然后逐一和拾取元素(待匹配的元素)中保存的拾取元素所属区域的这两个属性进行比较,比较时面积占比大小顺序优先,当两个区域的面积占比大小顺序一样时,再比较宽高比大小顺序。举例来说,拾取元素在拾取界面位于面积第2大、宽高比第3大的界面区域,在匹配时,首先在经过界面区域识别后的结果中,在执行界面找到面积第2大的区域,如果只有一个面积第2大的区域,则直接选择;如果存在多个区域面积大小并列第2,则选择其中宽高比第3大的界面区域。
区域元素检测:这一阶段所要完成的功能是在确定了拾取元素在执行界面所属区域之后,只需要将目标区域送入元素检测模型进行区域元素检测。由于目标区域仅是整个界面的一部分,因此相比较于传统的RPA元素匹配方案,由于输入元素检测模型的图像尺寸大幅减小,使得模型推理的计算量大幅降低,从而将会使元素检测部分的速度得到大幅度提升。
元素匹配:这一阶段所要完成的功能是拾取元素及其锚点元素的匹配。首先将拾取元素和执行界面目标区域元素检测到的所有元素进行特征比对(包含基于传统计算机视觉和基于深度学习的特征匹配方法),如果没有一个元素和拾取元素的特征相似度超过阈值,则说明执行界面没有元素能够和拾取元素进行匹配,返回空的匹配结果;如果仅有一个元素和拾取元素的特征相似度超过阈值,则说明拾取元素能够在执行界面唯一匹配,直接返回匹配结果;如果存在多个执行界面的元素和拾取元素特征相似度超过阈值,则将这些元素作为候选匹配元素保存,然后按照上述过程进行锚点元素的匹配,当执行界面没有元素能与其特征相似度达到阈值,说明执行界面目标区域没有能与拾取元素锚点进行匹配的元素,则放弃所有候选匹配元素,返回空的匹配结果;如果在执行界面目标区域有一个元素与拾取元素锚点的特征相似度大于阈值,则建立此锚点和所有候选匹配元素的位置关系(所建立的位置关系包括但不限于两元素的相对距离、相对角度等),然后与拾取元素及其锚点元素的位置关系进行比对,返回位置关系最为相近的结果作为最终匹配结果。基于锚点唯一原则,确保了在拾取和执行界面目标区域,锚点元素都是唯一的,因此最多匹配上一个锚点元素。举例来说,如图5所示,当在执行界面匹配拾取元素001时,在执行界面目标区域存在2个与拾取元素001特征匹配超过阈值的元素011、012,然后进行元素001锚点的匹配,匹配到执行界面目标区域元素013,然后分别建立[013, 011]和[013, 012]的相对位置关系,并与拾取元素及其锚点的相对位置关系[001, 003]进行比较,很显然无论从相对角度还是相对距离,[013, 011]跟[001, 003]都有着更为相近的匹配,因此最终匹配元素为011。
基于本实施例,本发明还提供了基于界面区域识别技术的RPA元素匹配系统,包括:
元素检测模块,用于使用训练过的元素检测模型检测出界面上的所有元素;
界面区域识别模块,用于使用界面区域识别技术,将整个界面划分为若干个区域,并为每个区域赋予一个ID,并将各个区域内的元素都赋予相应的区域ID;
元素拾取模块,用于通过拾取界面内所有元素两两之间的特征相似度计算,判断拾取界面中是否存在重复元素;
界面区域定位模块,用于使用界面区域识别技术,在执行界面划分区域,通过区域ID,在执行界面定位到拾取元素在执行界面所属的区域;
区域元素检测,用于将定位到的区域输入训练过的元素检测模型,并检测出目标区域内的元素;
元素匹配模块,用于若拾取元素是非重复元素,则将拾取元素和执行界面目标区域内的元素进行匹配;若拾取元素是重复元素,将拾取元素及拾取元素的锚点与检测出的目标区域内的元素进行相应匹配。
如图6和图7所示,为本发明通过一个实际使用案例展示本发明的实施方案及其部分有益效果:
1.拾取阶段:使用YOLO-v5目标检测模型检测出拾取界面的所有元素。然后使用界面区域识别技术对拾取界面进行区域检测,将拾取界面划分为A、B、C、D共计4个区域,然后根据面积和宽高比,为各个区域设置属性{A:[3,4], B:[4,1], C:[1,3], D:[2,2]},如图6所示;然后为拾取界面区域内的每个元素添加对应的区域属性。
2.然后计算拾取界面两两元素之间的相似度,发现元素001、002、003为重复元素,为这三个元素进行自动锚点选取。首先进行锚点初选,从图6中元素分配情况来看,元素011位于区域C,不能被001、002和003选做锚点,因此元素001的初选锚点元素为[004、005],元素002的初选锚点元素为[005, 006], 元素003的初选锚点元素为[006];然后根据锚点唯一原则进行筛选,元素005同时被001和002选为锚点,且离002距离更近,因此元素005最终归为002的锚点;元素006同时被002和003选为锚点,且离003距离更近,因此元素006最终归为003的锚点;因此最终锚点分配结果为{001:[004], 002:[005], 003:[006]}。
3.选择元素002进行拾取,并记录与其锚点005元素的相对位置关系L(002, 005),其中L(002, 005)所包含信息有元素005与元素002的中心点连线角度和距离,完成拾取流程。
4.执行阶段:首先进行区域定位,使用界面区域识别技术识别出执行界面的E、F、G、H共4个区域,然后根据面积和宽高比,为各个区域设置属性{E:[3,4], F:[4,1], G:[1,3], H:[2,2]},由于拾取元素002位于D区域,其面积占比大小顺序和宽高比顺序属性为[2,2],基于面积匹配优先原则,找到执行界面面积占比大小为2的H区域,且没有其他区域和H区域面积一样,因此无需进一步比较宽高比,定位到拾取元素002位于执行界面的H区域。
5.然后进行元素检测,由于已经定位到定位到拾取元素002位于执行界面的H区域,因此仅需将H区域截取下来送入元素检测模型,识别出H区域内的元素。执行界面区域识别及元素分布示意图如图7所示,可以看到区域G中也有元素,但是无需进行检测。
6.最后进行元素匹配。首先将在执行界面H区域检测出的所有元素逐一和拾取元素002进行相似度比较,发现执行界面H区域元素021、022、023均与拾取元素002相似度达到阈值。然后将拾取002的锚点元素005进行匹配,匹配到执行界面的025元素。然后将025分别与021、022、023构建相对位置关系L(025, 021)、L(025, 022)、L(025, 022),分别与相对位置关系L(005, 002)进行比较,发现L(025, 022)信息最为相近,因此最终为拾取元素002匹配上执行元素022,完成匹配。
本发明创造性地提出将RPA拾取执行界面进行区域识别,使得整个匹配阶段的流程可以仅在某一块区域内进行,降低了匹配阶段元素检测模型推理以及元素相似度计算的耗时,提升了元素匹配的效率。本发明中所提到的基于直线和连通域的界面区域识别技术只是一个示例,基于深度学习检测或实例分割方法的界面区域识别技术也包含在本专利的范畴内。
本发明创新性地提出将RPA拾取执行界面区域识别结果应用在重复元素锚点自动拾取上,使得自动拾取的锚点更加合理,从而大大提升了重复元素的匹配精度和匹配效率。
本发明提出了一种界面区域的排序和匹配策略,通过面积+宽高比的方式进行排序和匹配,能够实现高效的拾取和匹配阶段区域定位。
本发明提出了一种自动锚点分配方案,通过结合页面区域识别技术,实现了更加合理的锚点分配,从而实现了更加精准的元素匹配。。
以上所述仅是对本发明的优选实施例及原理进行了详细说明,对本领域的普通技术人员而言,依据本发明提供的思想,在具体实施方式上会有改变之处,而这些改变也应视为本发明的保护范围。
Claims (7)
1.基于界面区域识别技术的RPA元素匹配方法,其特征在于,包括如下步骤;
拾取阶段:
S1,元素检测:使用训练过的元素检测模型检测出界面上的所有元素;
S2,界面区域识别:使用界面区域识别技术,将整个界面划分为若干个区域,并为每个区域赋予一个ID,并将各个区域内的元素都赋予相应的区域ID;
S3,元素拾取:通过拾取界面内所有元素两两之间的特征相似度计算,判断拾取界面中是否存在重复元素;
执行阶段:
S4,界面区域定位:使用界面区域识别技术,在执行界面划分区域,通过区域ID,在执行界面定位到拾取元素在执行界面所属的区域;
S5,区域元素检测:将定位到的区域输入训练过的元素检测模型,并检测出目标区域内的元素;
S6,元素匹配:若拾取元素是非重复元素,则将拾取元素和执行界面目标区域内的元素进行匹配;若拾取元素是重复元素,将拾取元素及拾取元素的锚点与检测出的目标区域内的元素进行相应匹配。
2.根据权利要求1所述的基于界面区域识别技术的RPA元素匹配方法,其特征在于,步骤S1中,所述元素检测模型采用YOLO-v5目标检测模型。
3.根据权利要求1所述的基于界面区域识别技术的RPA元素匹配方法,其特征在于,步骤S2包括如下步骤:
S21,使用计算机视觉技术,对整个界面中的直线进行识别,并提取界面中的连通区域,同时对所有的连通区域进行过滤;
S22,将面积占比达到设定阈值的连通区域作为一个界面区域,并记录每一个界面区域的面积占比大小顺序以及宽高比大小顺序,将上述两个属性作为一个界面区域的唯一标识;
S23,给所有元素添加各自所属界面区域的唯一标识信息,用于表示元素在拾取界面所属的区域。
4.根据权利要求3所述的基于界面区域识别技术的RPA元素匹配方法,其特征在于,步骤S3包括如下步骤:
S31,对整个拾取界面上的所有元素进行两两之间的特征相似度计算,判断各个元素是否为重复元素;
S32,若不存在重复元素,则直接完成界面元素的获取,并根据用户操作对目标元素进行拾取;若存在重复元素,则为重复元素自动分配锚点;
S33,若存在一个元素被多个重复元素选做锚点,则将锚点分配给离所述锚点距离最近的重复元素,最后根据用户操作对目标元素进行拾取。
5.根据权利要求4所述的基于界面区域识别技术的RPA元素匹配方法,其特征在于,步骤S4包括如下步骤:
S41,使用界面区域识别技术对执行界面进行区域划分,并赋予每个区域面积占比大小顺序和宽高比大小顺序属性;
S42,将每个区域面积占比大小顺序和宽高比大小顺序属性,逐一和拾取元素中保存的拾取元素所属区域对应的占比大小顺序和宽高比大小顺序进行比较;
其中,比较时面积占比大小顺序优先,当两个区域的面积占比大小顺序一样时,再比较宽高比大小顺序。
6.根据权利要求5所述的基于界面区域识别技术的RPA元素匹配方法,其特征在于,步骤S6包括如下步骤:
S61,采用基于传统计算机视觉和基于深度学习的特征匹配方法,将拾取元素和执行界面目标区域内检测到的所有元素进行特征比对;
S62,若没有一个元素和拾取元素的特征相似度超过设定的阈值,则说明执行界面没有元素能够和拾取元素进行匹配,返回空的匹配结果;若仅有一个元素和拾取元素的特征相似度超过设定的阈值,则说明拾取元素在执行界面存在唯一匹配,直接返回匹配结果;
S63,若存在多个执行界面的元素和拾取元素的特征相似度超过设定的阈值,则将所述元素作为候选匹配元素保存,并进行拾取元素锚点的匹配;若执行界面没有元素与拾取元素锚点的特征相似度达到设定的阈值,则说明执行界面目标区域没有能与拾取元素锚点进行匹配的元素,则放弃所有候选匹配元素,返回空的匹配结果;
S64,若在执行界面目标区域有一个元素与拾取元素锚点的特征相似度大于设定的阈值,则建立所述锚点和所有候选匹配元素的位置关系,并与拾取元素及拾取元素锚点的位置关系进行比对,返回位置关系最为相近的结果作为最终匹配结果;
其中,所述建立的位置关系包括但不限于两个元素的相对距离和相对角度。
7.基于界面区域识别技术的RPA元素匹配系统,其特征在于,包括:
元素检测模块,用于使用训练过的元素检测模型检测出界面上的所有元素;
界面区域识别模块,用于使用界面区域识别技术,将整个界面划分为若干个区域,并为每个区域赋予一个ID,并将各个区域内的元素都赋予相应的区域ID;
元素拾取模块,用于通过拾取界面内所有元素两两之间的特征相似度计算,判断拾取界面中是否存在重复元素;
界面区域定位模块,用于使用界面区域识别技术,在执行界面划分区域,通过区域ID,在执行界面定位到拾取元素在执行界面所属的区域;
区域元素检测,用于将定位到的区域输入训练过的元素检测模型,并检测出目标区域内的元素;
元素匹配模块,用于若拾取元素是非重复元素,则将拾取元素和执行界面目标区域内的元素进行匹配;若拾取元素是重复元素,将拾取元素及拾取元素的锚点与检测出的目标区域内的元素进行相应匹配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211366340.7A CN115495055B (zh) | 2022-11-03 | 2022-11-03 | 基于界面区域识别技术的rpa元素匹配方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211366340.7A CN115495055B (zh) | 2022-11-03 | 2022-11-03 | 基于界面区域识别技术的rpa元素匹配方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115495055A true CN115495055A (zh) | 2022-12-20 |
CN115495055B CN115495055B (zh) | 2023-09-08 |
Family
ID=85115338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211366340.7A Active CN115495055B (zh) | 2022-11-03 | 2022-11-03 | 基于界面区域识别技术的rpa元素匹配方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115495055B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116051868A (zh) * | 2023-03-31 | 2023-05-02 | 山东大学 | 一种面向windows系统的界面元素识别方法 |
CN116168405A (zh) * | 2023-04-23 | 2023-05-26 | 杭州实在智能科技有限公司 | 通用型rpa复选框操作组件的构建方法及系统 |
CN116630990A (zh) * | 2023-07-21 | 2023-08-22 | 杭州实在智能科技有限公司 | Rpa流程元素路径智能修复方法及系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140085259A1 (en) * | 2012-09-25 | 2014-03-27 | Samsung Electronics Co., Ltd. | System for providing a user interface for use by portable and other devices |
JP2014081800A (ja) * | 2012-10-17 | 2014-05-08 | Konica Minolta Inc | 手書き入力装置及び機能制御プログラム |
CN106462341A (zh) * | 2014-06-12 | 2017-02-22 | 微软技术许可有限责任公司 | 用于笔和触敏计算设备交互的传感器相关 |
CN109947967A (zh) * | 2017-10-10 | 2019-06-28 | 腾讯科技(深圳)有限公司 | 图像识别方法、装置、存储介质和计算机设备 |
CN112052005A (zh) * | 2019-06-06 | 2020-12-08 | 阿里巴巴集团控股有限公司 | 界面处理方法、装置、设备及存储介质 |
CN112204509A (zh) * | 2018-06-01 | 2021-01-08 | 苹果公司 | 用于与触笔进行交互的电子设备的设备、方法和图形用户界面 |
CN112231034A (zh) * | 2019-12-23 | 2021-01-15 | 北京来也网络科技有限公司 | 结合rpa和ai的软件界面元素的识别方法与装置 |
US20210055808A1 (en) * | 2019-08-22 | 2021-02-25 | Wacom Co., Ltd. | Input apparatus |
CN113015956A (zh) * | 2019-10-14 | 2021-06-22 | 尤帕斯公司 | 用于机器人流程自动化的活动目标选择的系统和方法 |
CN113391871A (zh) * | 2021-08-17 | 2021-09-14 | 杭州实在智能科技有限公司 | 一种rpa元素智能融合拾取的方法与系统 |
CN114661400A (zh) * | 2019-07-19 | 2022-06-24 | 尤帕斯公司 | 基于多锚点的用户界面的提取、识别与机器学习 |
CN114902254A (zh) * | 2020-09-08 | 2022-08-12 | 尤帕斯公司 | 使用组合的串行和延迟并行执行统一目标技术、默认图形元素检测技术或两者的图形元素检测 |
-
2022
- 2022-11-03 CN CN202211366340.7A patent/CN115495055B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140085259A1 (en) * | 2012-09-25 | 2014-03-27 | Samsung Electronics Co., Ltd. | System for providing a user interface for use by portable and other devices |
JP2014081800A (ja) * | 2012-10-17 | 2014-05-08 | Konica Minolta Inc | 手書き入力装置及び機能制御プログラム |
CN106462341A (zh) * | 2014-06-12 | 2017-02-22 | 微软技术许可有限责任公司 | 用于笔和触敏计算设备交互的传感器相关 |
CN109947967A (zh) * | 2017-10-10 | 2019-06-28 | 腾讯科技(深圳)有限公司 | 图像识别方法、装置、存储介质和计算机设备 |
CN112204509A (zh) * | 2018-06-01 | 2021-01-08 | 苹果公司 | 用于与触笔进行交互的电子设备的设备、方法和图形用户界面 |
CN112052005A (zh) * | 2019-06-06 | 2020-12-08 | 阿里巴巴集团控股有限公司 | 界面处理方法、装置、设备及存储介质 |
CN114661400A (zh) * | 2019-07-19 | 2022-06-24 | 尤帕斯公司 | 基于多锚点的用户界面的提取、识别与机器学习 |
US20210055808A1 (en) * | 2019-08-22 | 2021-02-25 | Wacom Co., Ltd. | Input apparatus |
CN113015956A (zh) * | 2019-10-14 | 2021-06-22 | 尤帕斯公司 | 用于机器人流程自动化的活动目标选择的系统和方法 |
CN112231034A (zh) * | 2019-12-23 | 2021-01-15 | 北京来也网络科技有限公司 | 结合rpa和ai的软件界面元素的识别方法与装置 |
CN114902254A (zh) * | 2020-09-08 | 2022-08-12 | 尤帕斯公司 | 使用组合的串行和延迟并行执行统一目标技术、默认图形元素检测技术或两者的图形元素检测 |
CN113391871A (zh) * | 2021-08-17 | 2021-09-14 | 杭州实在智能科技有限公司 | 一种rpa元素智能融合拾取的方法与系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116051868A (zh) * | 2023-03-31 | 2023-05-02 | 山东大学 | 一种面向windows系统的界面元素识别方法 |
CN116051868B (zh) * | 2023-03-31 | 2023-06-13 | 山东大学 | 一种面向windows系统的界面元素识别方法 |
CN116168405A (zh) * | 2023-04-23 | 2023-05-26 | 杭州实在智能科技有限公司 | 通用型rpa复选框操作组件的构建方法及系统 |
CN116630990A (zh) * | 2023-07-21 | 2023-08-22 | 杭州实在智能科技有限公司 | Rpa流程元素路径智能修复方法及系统 |
CN116630990B (zh) * | 2023-07-21 | 2023-10-10 | 杭州实在智能科技有限公司 | Rpa流程元素路径智能修复方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115495055B (zh) | 2023-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115495055B (zh) | 基于界面区域识别技术的rpa元素匹配方法及系统 | |
CN109409398B (zh) | 图像处理装置、图像处理方法以及存储介质 | |
CN111160469B (zh) | 一种目标检测系统的主动学习方法 | |
CN106937114A (zh) | 用于对视频场景切换进行检测的方法和装置 | |
CN109359043B (zh) | 一种基于机器学习的移动游戏自动化测试方法 | |
CN110533654A (zh) | 零部件的异常检测方法及装置 | |
CN112381104A (zh) | 一种图像识别方法、装置、计算机设备及存储介质 | |
CN111028261B (zh) | 高精度半自动化图像数据标注方法、电子装置及存储介质 | |
CN110689535A (zh) | 一种工件识别方法、装置及电子设备和存储介质 | |
CN110032510B (zh) | 应用的测试方法及装置 | |
CN112580734A (zh) | 目标检测模型训练方法、系统、终端设备及存储介质 | |
CN110826571B (zh) | 一种用于图像快速识别及特征匹配的图像遍历算法 | |
CN110910414B (zh) | 图像轮廓生成方法、图像标注方法、电子装置及存储介质 | |
CN113310997A (zh) | Pcb板缺陷确认方法、装置、自动光学检测设备及储存介质 | |
CN110263608B (zh) | 基于图像特征空间变阈值度量的电子元器件自动识别方法 | |
Chen et al. | Salient object detection: Integrate salient features in the deep learning framework | |
CN117573006B (zh) | 用于rpa屏幕界面元素批量拾取的方法及系统 | |
CN109492702A (zh) | 基于排序度量函数的行人重识别方法、系统、装置 | |
CN111539390A (zh) | 一种基于Yolov3的小目标图像识别方法、设备和系统 | |
CN111160374A (zh) | 一种基于机器学习的颜色识别方法及系统、装置 | |
JP5104291B2 (ja) | 画像解析プログラム、画像解析装置、および画像解析方法 | |
CN113032547B (zh) | 基于人工智能的大数据处理方法、系统及云平台 | |
CN109978829A (zh) | 一种待检测对象的检测方法及其系统 | |
CN110363149B (zh) | 笔迹的处理方法和装置 | |
CN109493311B (zh) | 一种无规则缺陷图片模式识别与匹配方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |