CN113657444A - 一种界面元素识别方法及系统 - Google Patents
一种界面元素识别方法及系统 Download PDFInfo
- Publication number
- CN113657444A CN113657444A CN202110787288.1A CN202110787288A CN113657444A CN 113657444 A CN113657444 A CN 113657444A CN 202110787288 A CN202110787288 A CN 202110787288A CN 113657444 A CN113657444 A CN 113657444A
- Authority
- CN
- China
- Prior art keywords
- interface
- detection model
- training
- target detection
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了界面元素识别方法及系统,该方法包括以下步骤:获取待识别界面的图像数据;通过视觉模型获取图像数据中的控件预测目标,视觉模型的获取方法为:在深度迁移学习过程中,对谷歌目标检测模型进行第一改进,并通过样本数据集训练第一改进后的谷歌目标检测模型,得到视觉模型;基于预设阈值对控件预测目标进行筛选,得到识别界面中的控件坐标。本发明至少具有以下有益效果:提高了界面识别元素的识别速度,且识别目标成功率和精度高,能有效防止漏检。
Description
技术领域
本发明涉及人工智能的技术领域,特别涉及一种界面元素识别方法及系统。
背景技术
为了保证软件产品的质量,软件产品在发布之前都会进行大量的测试工作。在现有技术中,测试人员可以借助自动化测试工具或其它手段,对界面进行测试,以实现节约人力和降低时间成本。界面自动化测试最为重要的一件事情就是得到要界面可操作的元素,比如:可编辑文本框、下拉框,按钮等。完整快速地识别出页面元素是界面控件自动化测试的关键。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种界面元素识别方法,能够完整快速地识别出界面元素。
本发明还提出一种具有上述界面元素识别方法的界面元素识别系统。
本发明还提出一种具有上述界面元素识别方法的计算机可读存储介质。
根据本发明的第一方面实施例的界面元素识别方法,包括以下步骤:获取待识别界面的图像数据;通过视觉模型获取所述图像数据中的控件预测目标,所述视觉模型的获取方法为:在深度迁移学习过程中,对谷歌目标检测模型进行第一改进,并通过样本数据集训练第一改进后的所述谷歌目标检测模型,得到所述视觉模型;基于预设阈值对所述控件预测目标进行筛选,得到所述识别界面中的控件坐标。
根据本发明实施例的界面元素识别方法,至少具有如下有益效果:通过在谷歌目标检测模型上进行改进,通过训练使其能够识别界面元素,得到视觉模型,通过该视觉模型进行控件预测、筛选,得到控件坐标,提高了界面识别元素的识别速度,且识别目标成功率和精度高,能有效防止漏检。
根据本发明的一些实施例,所述在深度迁移学习过程中,对谷歌目标检测模型进行第一改进的方法包括:将所述谷歌目标检测模型的一个卷积核替换为两个卷积核,并将所激活函数替换换成线性修正激活函数RELU。
根据本发明的一些实施例,所述将所述谷歌目标检测模型的一个卷积核替换为两个卷积核包括:两个卷积核均为3×3,池化层的大小为2×2。
根据本发明的一些实施例,所述通过样本数据集训练第一改进后的所述谷歌目标检测模型,得到所述视觉模型的方法包括:遍历所述样本数据集的样本图像,通过八邻域算法提取边界,通过改变所述样本图像的亮度、分辨率、旋转度、扭曲和位移,拓展所述样本数据集。
根据本发明的一些实施例,所述在深度迁移学习过程中,对谷歌目标检测模型进行第一改进的方法还包括:拓展全连接层的规模,在训练过程中随机性移除训练网络的激活值,并通过多个神经网络组合,基于随机森林的方法,投票表决每一个图像对象的分类结果。
根据本发明的一些实施例,还包括:在深度迁移学习的过程中,根据学习速率,在原参数区间的范围内选取第一区间作为迭代训练的参数区间。
根据本发明的第二方面实施例的界面元素识别系统,包括:训练模块,用于在深度迁移学习过程中,对谷歌目标检测模型进行第一改进,并通过样本数据集训练第一改进后的所述谷歌目标检测模型,得到所述视觉模型;识别模块,用于通过视觉模型获取待识别界面的图像数据中的控件预测目标;筛选模块,用于基于预设阈值对所述控件预测目标进行筛选,得到所述识别界面中的控件坐标。
根据本发明实施例的界面元素识别系统,至少具有如下有益效果:通过在谷歌目标检测模型上进行改进,通过训练使其能够识别界面元素,得到视觉模型,通过该视觉模型进行控件预测、筛选,得到控件坐标,提高了界面识别元素的识别速度,且识别目标成功率和精度高,能有效防止漏检。
根据本发明的第三方面实施例的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据本发明的第一方面实施例的方法。
根据本发明实施例的计算机可读存储介质,至少具有与本发明的第一方面实施例的方法同样的有益效果。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例的方法的流程示意图;
图2为本发明实施例的总体步骤流程示意图;
图3为本发明实施例的系统的模块示意框图。
附图标记:
训练模块100、识别模块200、筛选模块300。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个及两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。在本发明的描述中,步骤标号仅是为了描述的方便或者引述的方便所作出的标识,各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
参照图1,本发明的实施例的方法包括:获取待识别界面的图像数据;通过视觉模型获取图像数据中的控件预测目标,视觉模型的获取方法为:在深度迁移学习过程中,对谷歌目标检测模型进行第一改进,并通过样本数据集训练第一改进后的谷歌目标检测模型,得到视觉模型;基于预设阈值对控件预测目标进行筛选,得到识别界面中的控件坐标。
本发明的实施例,通过在谷歌目标检测模型上进行改进,通过训练使其能够识别界面元素,得到视觉模型,通过该视觉模型进行控件预测、筛选,得到控件坐标,解决部分计算机程序页面元素无法通过UI&xpath等方式获取的情况,以及解决需要通过opencv的方式进行图像对比获取单个控件的低效率问题,提高了界面识别元素的识别速度,且识别目标成功率和精度高,能有效防止漏检。
本发明的实施例,主要通过TensorFlow(神经网络算法),基于谷歌目标检测模型(rfcn_resnet101_coco)进行迁移学习和模型训练,通过图片的形式获取整个图片中可操作类的所有元素。下面将参照图2,以RPA(Robotic Process Automation,机器人流程自动化)为例子,详述界面元素识别的总体流程。
S100,收集收集网络素材图片,并对网络素材图片进行人工标记,标记出具体可操作类型的计算机程序页面元素,从而生成标准样本;
S200,在谷歌目标检测模型(rfcn_resnet101_coco)的基础上进行算法优化,应用标准样本进行迁移学习。
在对在谷歌目标检测模型(rfcn_resnet101_coco)的基础上进行算法优化(相当于第一改进)包括:神经网络应用2个3x3的卷积核,池化层使用2x2的大小,替换谷歌目标检测模型中原有的5x5的卷积核。使用这样的替换能够在相同感知野的条件下,提升网络的深度。把替换后的卷积层插入在卷积混合层和全连接层之间,并将激活函数替换成线性修正激活函数RELU,这样在一定程度上提升了神经网络的效果,而且降低了参数量(5*5*1*通道数>3*3*2*通道数)。
除了原始标准样本集,还针对原始样本集进行了拓展。通过将样本数据的训练图像由一个像素代替,利用八邻域算法关联其上下左右的像素,也就是将其周围的八个像素的RGB的数据统计运算提取边界,然后再改变亮度,改变分辨率,图片旋转,扭曲,位移等,可以将20000张样本集拓展到100000张,增强5倍的数据量,减少过拟合。
拓展全连接层的规模,使用1000的隐藏神经元,并将迭代期的数量减少到40个,还使用了弃权技术和组合网络。弃权技术即在训练过程中随机性移除训练网络的激活值,这样可以使让模型对单独的依据丢失更为强劲。在本发明的实施例中,组合网络即为创建了5个神经网络组合,使用随机森林的方法,进行投票表决每一个图像对象分类。显然,在本发明的另一些实施例中,神经网络的组合数量也可以是其它数值。
在应用样本集进行训练之前,对神经网络进行初始化,预设一个参数区间,然后根据学习速率,在原有的区间内先出表现较好的小区间,在循环训练过程中,不断地循环迭代这一操作,直到取得最好的学习速度。本实施例中,得到学习速度为0.0003%时,已能够达到如下效果:
(1)对于大分辨率和大屏幕的界面,相应的识别时间也不会因而显著延长,识别目标成功率也不会降低;
(2)对页面界面很小的情况,降低了目标对象识别时界面元素被漏掉的概率;
(3)提高了元素识别位置的精确度,防止因准确度不够导致获取目标对象的数据不正确的问题。
训练完成后即可生成视觉模型。
S300,搭载视觉服务器,将已训练完成的视觉模型部署至服务器,并对外提供开放接口。
S400,RPA系统将待测图片推送至视觉服务器;视觉服务器对待测图片进行检测、获取到控件预测目标,并对控件预测目标进行筛选,得到预测概率大于预设阈值的控件预测目标,并获取相应的坐标值,返回给RPA系统。RPA系统可以根据这些返回的控件预测目标的类型及坐标值,对界面进行自动化测试。
本发明实施例的系统,参照图3,包括:训练模块100,用于在深度迁移学习过程中,对谷歌目标检测模型进行第一改进,并通过样本数据集训练第一改进后的谷歌目标检测模型,得到视觉模型;识别模块200,用于通过视觉模型获取待识别界面的图像数据中的控件预测目标;筛选模块300,用于基于预设阈值对控件预测目标进行筛选,得到识别界面中的控件坐标。
本发明的实施例,通过在谷歌目标检测模型上进行改进,通过训练使其能够识别界面元素,得到视觉模型,通过该视觉模型进行控件预测、筛选,得到控件坐标,解决部分计算机程序页面元素无法通过UI&xpath等方式获取的情况,以及解决需要通过opencv的方式进行图像对比获取单个控件的低效率问题,提高了界面识别元素的识别速度,且识别目标成功率和精度高,能有效防止漏检。
尽管本文描述了具体实施方案,但是本领域中的普通技术人员将认识到,许多其它修改或另选的实施方案同样处于本公开的范围内。例如,结合特定设备或组件描述的功能和/或处理能力中的任一项可以由任何其它设备或部件来执行。另外,虽然已根据本公开的实施方案描述了各种例示性具体实施和架构,但是本领域中的普通技术人员将认识到,对本文所述的例示性具体实施和架构的许多其它修改也处于本公开的范围内。
上文参考根据示例性实施方案所述的系统、方法、系统和/或计算机程序产品的框图和流程图描述了本公开的某些方面。应当理解,框图和流程图中的一个或多个块以及框图和流程图中的块的组合可分别通过执行计算机可执行程序指令来实现。同样,根据一些实施方案,框图和流程图中的一些块可能无需按示出的顺序执行,或者可以无需全部执行。另外,超出框图和流程图中的块所示的那些部件和/或操作以外的附加部件和/或操作可存在于某些实施方案中。
因此,框图和流程图中的块支持用于执行指定功能的装置的组合、用于执行指定功能的元件或步骤的组合以及用于执行指定功能的程序指令装置。还应当理解,框图和流程图中的每个块以及框图和流程图中的块的组合可以由执行特定功能、元件或步骤的专用硬件计算机系统或者专用硬件和计算机指令的组合来实现。
本文所述的程序模块、应用程序等可包括一个或多个软件组件,包括例如软件对象、方法、数据结构等。每个此类软件组件可包括计算机可执行指令,所述计算机可执行指令响应于执行而使本文所述的功能的至少一部分(例如,本文所述的例示性方法的一种或多种操作)被执行。
软件组件可以用各种编程语言中的任一种来编码。一种例示性编程语言可以为低级编程语言,诸如与特定硬件体系结构和/或操作系统平台相关联的汇编语言。包括汇编语言指令的软件组件可能需要在由硬件架构和/或平台执行之前由汇编程序转换为可执行的机器代码。另一种示例性编程语言可以为更高级的编程语言,其可以跨多种架构移植。包括更高级编程语言的软件组件在执行之前可能需要由解释器或编译器转换为中间表示。编程语言的其它示例包括但不限于宏语言、外壳或命令语言、作业控制语言、脚本语言、数据库查询或搜索语言、或报告编写语言。在一个或多个示例性实施方案中,包含上述编程语言示例中的一者的指令的软件组件可直接由操作系统或其它软件组件执行,而无需首先转换成另一种形式。
软件组件可存储为文件或其它数据存储构造。具有相似类型或相关功能的软件组件可一起存储在诸如特定的目录、文件夹或库中。软件组件可为静态的(例如,预设的或固定的)或动态的(例如,在执行时创建或修改的)。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
Claims (8)
1.一种界面元素识别方法,其特征在于,包括以下步骤:
获取待识别界面的图像数据;
通过视觉模型获取所述图像数据中的控件预测目标,所述视觉模型的获取方法为:在深度迁移学习过程中,对谷歌目标检测模型进行第一改进,并通过样本数据集训练第一改进后的所述谷歌目标检测模型,得到所述视觉模型;
基于预设阈值对所述控件预测目标进行筛选,得到所述识别界面中的控件坐标。
2.根据权利要求1所述的界面元素识别方法,其特征在于,所述在深度迁移学习过程中,对谷歌目标检测模型进行第一改进的方法包括:
将所述谷歌目标检测模型的一个卷积核替换为两个卷积核,并将所激活函数替换换成线性修正激活函数RELU。
3.根据权利要求1所述的界面元素识别方法,其特征在于,所述将所述谷歌目标检测模型的一个卷积核替换为两个卷积核包括:两个卷积核均为3×3,池化层的大小为2×2。
4.根据权利要求1所述的界面元素识别方法,其特征在于,所述通过样本数据集训练第一改进后的所述谷歌目标检测模型,得到所述视觉模型的方法包括:
遍历所述样本数据集的样本图像,通过八邻域算法提取边界,通过改变所述样本图像的亮度、分辨率、旋转度、扭曲和位移,拓展所述样本数据集。
5.根据权利要求1所述的界面元素识别方法,其特征在于,所述在深度迁移学习过程中,对谷歌目标检测模型进行第一改进的方法还包括:
拓展全连接层的规模,在训练过程中随机性移除训练网络的激活值,并通过多个神经网络组合,基于随机森林的方法,投票表决每一个图像对象的分类结果。
6.根据权利要求1所述的界面元素识别方法,其特征在于,还包括:
在深度迁移学习的过程中,根据学习速率,在原参数区间的范围内选取第一区间作为迭代训练的参数区间。
7.一种界面元素识别系统,使用权利要求1至6中任一项的方法,其特征在于,包括:
训练模块,用于在深度迁移学习过程中,对谷歌目标检测模型进行第一改进,并通过样本数据集训练第一改进后的所述谷歌目标检测模型,得到所述视觉模型;
识别模块,用于通过视觉模型获取待识别界面的图像数据中的控件预测目标;
筛选模块,用于基于预设阈值对所述控件预测目标进行筛选,得到所述识别界面中的控件坐标。
8.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至6中任一项的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110787288.1A CN113657444A (zh) | 2021-07-13 | 2021-07-13 | 一种界面元素识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110787288.1A CN113657444A (zh) | 2021-07-13 | 2021-07-13 | 一种界面元素识别方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113657444A true CN113657444A (zh) | 2021-11-16 |
Family
ID=78489335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110787288.1A Pending CN113657444A (zh) | 2021-07-13 | 2021-07-13 | 一种界面元素识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113657444A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117743719A (zh) * | 2023-12-22 | 2024-03-22 | 北京京航计算通讯研究所 | 一种页面元素的识别方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109815156A (zh) * | 2019-02-28 | 2019-05-28 | 北京百度网讯科技有限公司 | 页面中视觉元素的展示测试方法、装置、设备和存储介质 |
CN111930622A (zh) * | 2020-08-10 | 2020-11-13 | 中国工商银行股份有限公司 | 基于深度学习的界面控件测试方法及系统 |
-
2021
- 2021-07-13 CN CN202110787288.1A patent/CN113657444A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109815156A (zh) * | 2019-02-28 | 2019-05-28 | 北京百度网讯科技有限公司 | 页面中视觉元素的展示测试方法、装置、设备和存储介质 |
CN111930622A (zh) * | 2020-08-10 | 2020-11-13 | 中国工商银行股份有限公司 | 基于深度学习的界面控件测试方法及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117743719A (zh) * | 2023-12-22 | 2024-03-22 | 北京京航计算通讯研究所 | 一种页面元素的识别方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102220174B1 (ko) | 머신러닝 학습 데이터 증강장치 및 증강방법 | |
US8379994B2 (en) | Digital image analysis utilizing multiple human labels | |
CN111626284A (zh) | 一种手写字体去除的方法、装置、电子设备和存储介质 | |
CN112906794A (zh) | 一种目标检测方法、装置、存储介质及终端 | |
CN113642576B (zh) | 一种目标检测及语义分割任务中训练图像集合的生成方法及装置 | |
CN111292377B (zh) | 目标检测方法、装置、计算机设备和存储介质 | |
CN110599453A (zh) | 一种基于图像融合的面板缺陷检测方法、装置及设备终端 | |
CN111652266A (zh) | 用户界面组件的识别方法、装置、电子设备和存储介质 | |
CN113435458A (zh) | 基于机器学习的岩石薄片图像分割方法、装置及介质 | |
CN112381092A (zh) | 跟踪方法、装置及计算机可读存储介质 | |
CN113657444A (zh) | 一种界面元素识别方法及系统 | |
CN113468905B (zh) | 图形码识别方法、装置、计算机设备和存储介质 | |
CN112633428A (zh) | 笔画骨架信息提取方法、装置、电子设备及存储介质 | |
CN114612702A (zh) | 基于深度学习的图像数据标注系统及其方法 | |
CN116167910B (zh) | 文本编辑方法、装置、计算机设备及计算机可读存储介质 | |
CN112416301A (zh) | 深度学习模型开发方法及装置、计算机可读存储介质 | |
CN111881996A (zh) | 目标检测方法、计算机设备和存储介质 | |
CN116661786A (zh) | 一种设计页面生成方法及装置 | |
CN111539390A (zh) | 一种基于Yolov3的小目标图像识别方法、设备和系统 | |
KR102256409B1 (ko) | 학습 데이터 세트를 생성하는 방법 및 학습 데이터 세트를 생성하기 위한 컴퓨터 장치 | |
CN113537229A (zh) | 票据图像生成方法、装置、计算机设备和存储介质 | |
CN113592807A (zh) | 一种训练方法、图像质量确定方法及装置、电子设备 | |
CN114547356B (zh) | 模板图像存储方法、装置、设备及存储介质 | |
CN115393846B (zh) | 一种血细胞识别方法、装置、设备及可读存储介质 | |
CN111368847B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20211116 |