一种UI界面元素编号方法、系统、装置及存储介质制造方法及图纸

技术编号:37167211 阅读:21 留言:0更新日期:2023-04-20 22:40
本发明专利技术公开了一种UI界面元素编号方法、系统、装置及存储介质,属于RPA技术领域,方法包括:获取包含UI界面的图片;识别出图片中的所有元素;识别出图片中的水平切分线和垂直切分线,根据水平切分线和垂直切分线对图片进行多级切分,每次切分后对切分得到的每个新区域赋予层级编号,切分完成后将区域对应的所有层级编号按照切分的先后顺序合并起来获得区域编号;为区域内的每个元素赋予区域内部编号,将元素所在区域的区域编号加上元素的区域内部编号得到元素的全局编号;通过将元素的全局编号设置为包括了由切分线定义的绝对位置和区域内的相对位置,不易受其他元素和屏幕缩放比等因素的影响,具备较好的稳定性,方便实际应用。用。用。

【技术实现步骤摘要】
一种UI界面元素编号方法、系统、装置及存储介质


[0001]本专利技术涉及一种UI界面元素编号方法、系统、装置及存储介质,属于RPA


技术介绍

[0002]在编写RPA(Robotic Process Automation)流程时,需要定位UI(User Interface)用户界面上的元素,比如“搜索”或者“提交”按钮,实现RPA流程的设计。在执行阶段,RPA机器人会自动找到对应的元素并执行流程,实现自动化执行流程的目的。一般的元素定位方法是采用Windows系统上的UIA、网页的xpath(XML Path Language)等通用元素标识方法来定位UI元素,但是对于JAVA应用、远程桌面应用或者自定义图形界面应用,这些方法将不再有效,需要使用CV(computer vision)计算机视觉识别技术,尤其是深度学习技术,来识别和定位元素。CV识别时先把整个应用保存为一张图片,再识别图片上的图标、文字块、按钮、编辑框这些元素。获得这些元素的位置和内容之后,存入RPA流程作为这些元素的标识。若RPA机器人需要找到它们,或者比较两个元素是否相同,可以直接使用元素的位置和内容进行定位或者比较,但是位置信息难以记忆也不直观,无法直接使用。实际业务需要一种比较简单、易于理解的UI界面元素编号方法,来对元素进行定位,而且这种编号方法不应该随着屏幕大小、分辨率、缩放比的变化而变化,要保证编号方法的稳定性和准确性。

技术实现思路

[0003]本专利技术的目的在于提供一种UI界面元素编号方法、系统、装置及存储介质,解决现有技术中元素编号的易用性、稳定性和准确性差的问题。
[0004]为实现以上目的,本专利技术是采用下述技术方案实现的:
[0005]第一方面,本专利技术提供了一种UI界面元素编号方法,包括:
[0006]获取包含UI界面的图片;
[0007]识别出图片中的所有元素;
[0008]识别出图片中的水平切分线和垂直切分线,根据水平切分线和垂直切分线对图片进行多级切分,每次切分后对切分得到的每个新区域赋予层级编号,切分完成后将区域对应的所有层级编号按照切分的先后顺序合并起来获得区域编号;
[0009]为区域内的每个元素赋予区域内部编号,将元素所在区域的区域编号加上元素的区域内部编号得到元素的全局编号。
[0010]结合第一方面,进一步的,所述图片包括显示器内容的完整截屏、显示器某个区域的截屏、显示器某个应用窗口的截屏。
[0011]结合第一方面,进一步的,还包括以下步骤:
[0012]获取待定位元素的全局编号;
[0013]获取定位图片,识别图片中所有元素并生成每个元素的全局编号;
[0014]将待定位元素的全局编号和图片中所有元素的全局编号一一进行比对,编号一致的元素即为需要定位的元素,根据图片中相应元素的位置实现从图片中定位元素的目标。
[0015]结合第一方面,进一步的,所述图片中的所有元素包括图标、文本块、按钮、编辑框;
[0016]所述图标通过基于深度学习的物体识别模型来识别和定位;
[0017]所述文字块通过光学字符识别来识别和定位;
[0018]所述按钮、编辑框综合使用图标和文字块的识别结果和边缘检测来识别和定位。
[0019]结合第一方面,进一步的,当图片中的元素存在重叠现象时,对重叠的元素按照预设规则进行选择,保证每个像素只属于一个元素。
[0020]结合第一方面,进一步的,对图片进行切分的方法包括:
[0021]通过边缘检测算法识别图片中的水平切分线和垂直切分线,水平切分线的长度至少占据所在区域宽度的90%且不低于100像素,垂直切分线的长度至少占据所在区域宽度的90%且不低于80像素;
[0022]切分区域时,先水平切分,获得多个子区域,为每个子区域分配一个层级编号,再对每个子区域垂直切分并编号,然后进一步对每个新的区域进行水平切分和垂直切分直至满足预设的切分结束条件;
[0023]若某次切分时未找到水平切分线或者垂直切分线,也视为一次切分,所有内容作为同一个区域;
[0024]每个最终区域的编号为这个区域的所有上一层级编号连接起来,区域编号中第n位总是对应第n层级子区域。
[0025]结合第一方面,进一步的,对图片进行切分的结束条件为:切分得到的每个区域的面积满足预设要求或者切分层级达到预先设置的层数。
[0026]第二方面,本专利技术还提供了一种UI界面元素编号系统,包括:
[0027]数据获取模块:用于获取包含UI界面的图片;
[0028]元素识别模块:用于识别出图片中的所有元素;
[0029]区域编号生成模块:用于识别出图片中的水平切分线和垂直切分线,根据水平切分线和垂直切分线对图片进行多级切分,每次切分后对切分得到的每个新区域赋予层级编号,切分完成后将区域对应的所有层级编号按照切分的先后顺序合并起来获得区域编号;
[0030]全局编号生成模块:用于为区域内的每个元素赋予区域内部编号,将元素所在区域的区域编号加上元素的区域内部编号得到元素的全局编号。
[0031]第三方面,本专利技术还提供了一种UI界面元素编号装置,包括处理器和存储介质;
[0032]所述存储介质用于存储指令;
[0033]所述处理器用于根据所述指令进行操作以执行根据第一方面任一项所述方法的步骤。
[0034]第四方面,本专利技术还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面任一项所述方法的步骤。
[0035]与现有技术相比,本专利技术所达到的有益效果是:
[0036]本专利技术提供的一种UI界面元素编号方法、系统、装置及存储介质,通过对图片的多级切分得到多层级的区域,对每个区域赋予区域编号,然后在各区域内对区域内所有元素赋予区域内部编号,元素的区域编号加上区域内部编号即为元素的全局编号;该全局编号具有唯一性,方便记忆,提高易用性,并且是相对于图片中明显线条的相对位置,该编号不
易受屏幕缩放比和其他元素的干扰,具有较好的稳定性,从而提高其准确性;在定位元素时,将待定位元素的全局编号和图片中所有元素的全局编号一一进行比对,只要匹配成功就能正确定位相应元素,使用上也非常方便,具备较高的价值。
附图说明
[0037]图1是本专利技术实施例提供的一种UI界面元素编号方法的流程图;
[0038]图2是本专利技术实施例提供的原始应用的图片;
[0039]图3是本专利技术实施例提供的使用基于CRNN模型的OCR算法对文本的识别结果;
[0040]图4是本专利技术实施例提供的用基于yolov5模型的UI元素检测模型对图片、图标的识别结果;
[0041]图5是本专利技术实施例提供的线条检测的示意图;
[0042]图6是本专利技术实施例提供的区域分割的展示图;
[0043]图7是本专利技术实施例提供的全局编号的展示图。
具体实施方式
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种UI界面元素编号方法,其特征在于,包括:获取包含UI界面的图片;识别出图片中的所有元素;识别出图片中的水平切分线和垂直切分线,根据水平切分线和垂直切分线对图片进行多级切分,每次切分后对切分得到的每个新区域赋予层级编号,切分完成后将区域对应的所有层级编号按照切分的先后顺序合并起来获得区域编号;为区域内的每个元素赋予区域内部编号,将元素所在区域的区域编号加上元素的区域内部编号得到元素的全局编号。2.根据权利要求1所述的一种UI界面元素编号方法,其特征在于,所述图片包括显示器内容的完整截屏、显示器某个区域的截屏、显示器某个应用窗口的截屏。3.根据权利要求1所述的一种UI界面元素编号方法,其特征在于,还包括以下步骤:获取待定位元素的全局编号;获取定位图片,识别图片中所有元素并生成每个元素的全局编号;将待定位元素的全局编号和图片中所有元素的全局编号一一进行比对,编号一致的元素即为需要定位的元素,根据图片中相应元素的位置实现从图片中定位元素的目标。4.根据权利要求1所述的一种UI界面元素编号方法,其特征在于,所述图片中的所有元素包括图标、文本块、按钮、编辑框;所述图标通过基于深度学习的物体识别模型来识别和定位;所述文字块通过光学字符识别来识别和定位;所述按钮、编辑框综合使用图标和文字块的识别结果和边缘检测来识别和定位。5.根据权利要求1所述的一种UI界面元素编号方法,其特征在于,当图片中的元素存在重叠现象时,对重叠的元素按照预设规则进行选择,保证每个像素只属于一个元素。6.根据权利要求1所述的一种UI界面元素编号方法,其特征在于,对图片进行切分的方法包括:通过边缘检测算法识别图片中的水平切分线和垂直切分线,水平切分...

【专利技术属性】
技术研发人员:吴鑫唐琦松林平靳志业谢涛
申请(专利权)人:上海艺赛旗软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1