CN111242187B - 一种图像相似度处理方法、装置、介质和电子设备 - Google Patents
一种图像相似度处理方法、装置、介质和电子设备 Download PDFInfo
- Publication number
- CN111242187B CN111242187B CN202010006702.6A CN202010006702A CN111242187B CN 111242187 B CN111242187 B CN 111242187B CN 202010006702 A CN202010006702 A CN 202010006702A CN 111242187 B CN111242187 B CN 111242187B
- Authority
- CN
- China
- Prior art keywords
- similarity
- graph
- effect
- elements
- resource file
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种图像相似度处理方法、装置、介质和电子设备,其中,所述处理方法包括:根据软件运行界面图的控件结构树确定用矩阵表示的每个元素的边界,并基于每个元素的边界汇集成对应的元素边界集合;根据用于界面显示的资源文件确定效果图的对应显示元素,以及确定不能在资源文件中匹配的效果图的元素集合;获取关联集合的各个相似度值,并根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到软件运行界面图和效果图间的相似度值。本发明通过引入计算相似度的关联集合,获取关联集合,并根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到二者之间的相似度值,该相似度值更加准确。
Description
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种图像相似度处理方法、装置、介质和电子设备。
背景技术
目前,计算软件运行时的页面和效果图之间的差异,通常会转化为比较软件运行截图和效果图之间的匹配程度,即:两张图片的匹配程度。常用的匹配方法有如下三种,具体如下所述:
第一类方法:基于强度的图像配准方法:
以整幅图像的灰度信息为依据,建立待配准图像和基准参考图像之间的相似性度量。利用某种搜索算法,寻找出使得相似度量达到最优值的变换模型参数,称之为直接配准法。其它类似方法有:平均绝对差算法、绝对误差和算法、误差平方和算法、平均误差平方和算法、归一化积相关算法等,在此不再赘述。
第二类方法:基于特征的图像配准方法:
第一子类方法:基于特征点的匹配:
目前,所选取的特征点是相对于其领域表现出来具有某种奇异性的像素点。特征点往往容易被提取到,但是特征点所包含的信息相对较少,只能反映出其在图像中的位置坐标信息,因此,在两幅图像中寻找匹配的特征点是关键所在。
第二子类方法:基于特征区域的匹配:
在图像中寻找某些明显的区域信息作为特征区域,然而,在实际应用中寻找到特征区域后,采用最多的还是区域的形心点,所以,这类算法要求特征区域提取的精度非常高。
第三子类方法:基于特征边缘的匹配:
图像中最明显的特征就是边缘,而边缘特征是最好提取的特征之一。因此,给予边缘的匹配方法,其鲁棒性较强,适用范围很广,但这类方法对特征边缘的提取要求很高,并且要求边缘信息全部用数学语言予以表述也较为困难。
第三类方法:基于域变换的图像配准方法:
采用相位相关(傅里叶-梅林变换)、沃尔什变换、小波变换。通常是利用傅里叶变换为基础,进行频域内的配准。傅里叶变换能够应用于具有平移、旋转、缩放的图像配准方案中,具体因为:
原因1:对于两幅具有平移量的图像经过傅里叶变换后,它们的相位关系是不同的,因为,在时域内平移量直接决定在傅里叶变换域内的相位关系;
原因2:对于两幅具有旋转量的图像,在傅里叶变换域内的旋转量保持不变;
原因3:对于两幅具有尺度缩放的图像,先进行坐标系转换,变换到对数坐标系当中,图像的缩放可以转换成图像平移进行处理。
然而,上述在比较两张图片相似性的常用方法,存在以下问题:
1.基于强度的图像配准:
1.1基于像素点比较的计算方法,是将目标图像与原图像的所有像素点逐个进行像素比较,得到目标图像与原图像的相似度。这种逐个进行像素比较的相似度计算方法会有比较大的局限性。若目标图像是经过简单的旋转或缩放等处理后得到的图像,利用上述的相似度计算方法所得到的相似度值可能会存在很大的误差。此外,其实现简单,抗干扰性能较弱,准确率较差。
1.2而基于统计图像的基本特征的计算方法,是通过提取原图像与目标图像的基本特征。比如,灰度统计特征(灰度直方图)和图像纹理特征(对灰度共生矩阵统计的能量、熵,惯性矩,局部平稳性等),然后将得到的原图像与目标图像的基本特征值进行比较,得到图像间的相似度。这种计算图像相似度的方法,是基于统计的特征,反映出来的是图像的全局性,不能很好的反映出图像的局部特征,所以计算结果同样可能存在较大的误差。
2.基于特征的图像配准:基于图像特征的匹配方法,通过模式识别得到的内容划分只是基于已有特征进行极大似然的一种估计,兼顾局部性和全局性。但是,只是一种寻找最优解的方法,对特征的提取不能保证完全准确,这也会导致后面的计算过程存在偏差。
3.基于域变换的图像配准:类似于基于强度的图像配准,将强度特征由时域变为频域进行匹配。同样的,抗干扰能力较差,但是,可以很好的适应图像平移、旋转、缩放等操作,可以用于局部特征的配准。
发明内容
本发明的目的在于提供一种图像相似度处理方法、装置、介质和电子设备,能够解决上述提到的至少一个技术问题。具体方案如下:
根据本发明的具体实施方式,第一方面,本发明提供一种图像相似度处理方法,包括:
根据软件运行界面图的控件结构树确定用矩阵表示的每个元素的边界,并基于每个元素的边界汇集成对应的元素边界集合;
根据用于界面显示的资源文件确定效果图的对应显示元素,以及确定不能在所述资源文件中匹配的所述效果图的元素集合;
获取关联集合的各个相似度值,并根据所述关联集合的各个相似度值计算所述软件运行界面图和所述效果图的相似度,得到所述软件运行界面图和所述效果图间的相似度值。
根据本发明的具体实施方式,第二方面,本发明提供一种图像相似度处理装置,包括:
边界集合汇集单元,用于根据软件运行界面图的控件结构树确定用矩阵表示的每个元素的边界,并基于每个元素的边界汇集成对应的元素边界集合;
集合确定单元,用于根据用于界面显示的资源文件确定效果图的对应显示元素,以及确定不能在所述资源文件中匹配的所述效果图的元素集合;
获取单元,用于获取关联集合的各个相似度值;
计算单元,用于并根据所述获取单元获取的所述关联集合的各个相似度值计算所述软件运行界面图和所述效果图的相似度,得到所述软件运行界面图和所述效果图间的相似度值。
根据本发明的具体实施方式,第三方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上任一项所述的图像相似度处理方法。
根据本发明的具体实施方式,第四方面,本发明提供一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上任一项所述的图像相似度处理方法。
本发明实施例的上述方案与现有技术相比,至少具有以下有益效果:本发明实施例通过提供一种图像相似度处理方法、装置、介质和电子设备,通过引入计算相似度的关联集合,获取关联集合,并根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到二者之间的相似度值,该相似度值更加准确。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了根据本发明实施例的图像相似度处理方法的方法流程图;
图2示出了根据本发明实施例的具体应用场景中确定元素相对位置的示意图;
图3示出了根据本发明实施例的具体应用场景中确定元素相对位置的另一示意图;
图4示出了根据本发明实施例的具体应用场景中确定元素相对位置的又一示意图;
图5示出了根据本发明的实施例的图像相似度处理装置的装置结构示意图;
图6示出了根据本发明的实施例的电子设备连接结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述……,但这些……不应限于这些术语。这些术语仅用来将……区分开。例如,在不脱离本发明实施例范围的情况下,第一……也可以被称为第二……,类似地,第二……也可以被称为第一……。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者装置中还存在另外的相同要素。
下面结合附图详细说明本发明的可选实施例。
实施例1
本发明实施例通过提供一种图像相似度处理方法,通过引入计算相似度的关联集合,获取关联集合,并根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到二者之间的相似度值,该相似度值更加准确。
针对本发明实施例涉及到的相关定义做如下说明:
1.视图:view,对运行时界面,视图就是屏幕区域,对效果图,视图就是图片总的区域。
2.元素:meta,对所有元素,位于视图区域内显示才有效。
说明:集合中的元素表示为:RECT(left,top,right,bottom)。
坐标系表示为,左上角点为:(0,0),右下角为:(wview,hview),面积为:aview=wview×hview。
{元素权重计算}
1.距离视图中心点偏移量,越接近中心点则权重越高;
2.元素所占视图中的大小,所占面积越大则权重越高;
计算权重函数公式为如下公式(1):
其中,其中元素的中心点坐标为(x,y),视图中心点坐标为(xc,yc);元素的面积为ameta,视图区域总面积为aview,宽为wview,高为hview。
计算出的元素权重越高,则对整体相似度影响越大。
{向量相似度计算}
使用余弦相似度计算公式为如下公式(2):
针对本发明实施例涉及到的相关元素集合的生成过程做如下说明:
1.根据集合SRC_VIEW(从软件运行时界面上获取)得到资源集合RES(通过在软件内植入代码方式获得,同一资源若使用时自定义了额外的效果,则认为是不同的资源),SRC_VIEW中的每个元素均可以找到RES中的元素对应(由控件到资源的映射),可以多对1,RES中每个元素也都能在SRC_VIEW找到对应的元素,可以是1对多;
2.通过RES找到(通过简单图像匹配方法,如使用基于强度的图像配准方法)效果图中的元素集合DST,可以是1对多关系;
3.效果图中还有一部分元素,不能和RES中元素对应,对这部分元素按照简单边界进行切分,若多个元素重叠则按照一个,然后放入集合DST_EXT中,也就是效果图中存在但是在运行时界面上不存在的那部分元素,即运行时界面缺失的内容(期望存在但是实际没有显示);
4.令:SRC=SRC_VIEW∩DST,则集合SRC表示能在效果图上找到也能在运行时界面上找到的那部分元素,这部分是符合预期的;
5.令:SRC_EXT=SRC_VIEW-DST,则集合表示SRC_EXT表示能在软件运行界面上找到,但是不能在效果图上找到的那部分元素,也就是多出来的内容(不期望存在的);
6.在把SRC和DST存在重复映射的元素重新整理一一映射再放回源集合;
7.此时,SRC和DST元素是一一对应的;(SRC中的每个元素对应RES中的一个元素,RES中的每个元素对应DST中的每一个元素)。
针对本发明实施例涉及到的找到集合DUP_SRCi和DUP_DSTi中元素对应关系的方法做如下说明:
执行该步骤会直接影响到集合SRC、DST、SRC_EXT和DST_EXT中的元素。
对RESi,得到集合DUP_SRCi和DUP_DSTi,它们的长度可以不一致,最小为1,该过程为:
1.若SRC或DST有多个(大于1)元素可以映射到RESi,则将RESi对应SRC中的元素取出存入并DUP_SRCi,RESi对应DST中的元素取出并存入DUP_DSTi;
2.DUP_SRCi和DUP_DSTi中元素的个数至少有一个大于1。
为简化后续的说明,我们令集合满足如下条件:
DI_SRC=DUP_SRCi,DI_DST=DUP_DSTi。
首先,从集合DI_DST中取一个元素DST_I,去集合DI_SRC中找到一个和DST_I最相似的元素SRC_I,标记这两个元素为对应关系。
具体做法是,对DI_SRC中的每一个元素,计算其和DST_I的相似度,记相似度最高的元素为SRC_I,将DST_I放入集合DST,将SRC_I放入集合SRC,同时,将元素从源集合中移除,其中,两个元素相似度计算如下:
已知元素表示为:RECT(left,top,right,bottom),定义元素信息的特征向量为如下表达式(1):
含义为:元素的宽高分别占总的视图宽高的百分比,以及元素的中心点位置分别占视图总宽高的百分比。这样做的目的是:希望找到一个尽可能和目标大小接近且位置接近的元素。
2.利用余弦相似度求两个元素之间的相似度。
对每一组集合DI_SRC、DI_DST,如果,其中任何一个集合取为空之后,则将其中剩下的元素放到对应的集合SRC_EXT或DST_EXT中。
对集合RES中的每个元素都执行上述的步骤,所有都执行完毕后,集合RES可以删除,以后步骤中不会再用到。
如图1所示,根据本公开实施例的具体实施方式,第一方面,本公开实施例提供一种图像相似度处理方法,具体包括如下方法步骤:
S102:根据软件运行界面图的控件结构树确定用矩阵表示的每个元素的边界,并基于每个元素的边界汇集成对应的元素边界集合。
S104:根据用于界面显示的资源文件确定效果图的对应显示元素,以及确定不能在资源文件中匹配的效果图的元素集合。
可选的,在执行S104根据用于界面显示的资源文件确定效果图的对应显示元素之前,所述方法还包括以下步骤:
确定用于界面显示的资源文件。
可选的,确定用于界面显示的资源文件包括以下步骤:
若图形为由文本生成的第一图形时,截取第一图形对应的各个元素的各个显示图像作为资源,并构成资源文件;或者,
若图形为由代码生成的第二图形时,截取第二图形对应的各个元素的各个显示图像作为资源,并构成资源文件。
S106:获取关联集合的各个相似度值,并根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到软件运行界面图和效果图间的相似度值。
可选的,在执行S106根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到对应的相似度值之前,所述方法还包括以下步骤:
读取关联集合;其中,关联集合至少包括以下一项:效果图和软件运行界面图的公共元素集合、效果图的对应显示元素集合、由在效果图中存在的元素、且在软件运行界面图中不存在的元素组成的第一互斥元素集合、由在软件运行界面图中存在的元素、且在效果图中不存在的元素组成的第二互斥元素集合。
可选的,执行S106根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到软件运行界面图和效果图间的相似度值包括以下步骤:
计算效果图和软件运行界面图的公共元素集合和效果图的对应显示元素集合的相似度,得到对应的第一相似度数值。
针对计算集合SRC和DST的相似度做如下说明:
{相似度衡量维度}
1.元素相对位置;
2.元素大小;
3.元素位置分布。
如下分别针对上述做具体描述:
1.元素相对位置:Spos
同时也包含了对元素之间相对大小的判断;
图2、图3和图4分别示出了根据本发明实施例的具体应用场景中确定元素相对位置的不同示意图。
定义函数POS(R1,R2)为计算元素R2相对于元素R1的位置关系,结果使用一个Byte表示(从高位到低位依次编号为1-8),每一位为1则表示R2的矩形框占用的R1的指定编号区域(如图1),为0表示未占用。
对图2,POS(HOUSE,TREE)=01101000;
对图3,POS(TREE,HOUSE)=00010000;
分别对集合SRC和DST中的元素两两求POS得到如下数列L_SRC={POS(SRCi,SRCj)|i=1...n}
和L_DST={POS(DSTi,DSTj)|i=1...n}。
定义函数DIFF(POSi,POSj)功能是取POSi和POSj对应bit位置值不相同的个数,例如:DIFF(00110011,00110000)=2,可以看出该函数结果是离散的,取值为0-8。
同时,对该函数结果定义其相似度如下表所示:用函数表示为CONF(2)=0.5、CONF(7)=0…
DIEF | 相似度%(置信率) |
0 | 100 |
1 | 75 |
2 | 50 |
3\4 | 25 |
5\6\7\8 | 0 |
总的元素相对位置的相似度计算公式为如下公式(3):
2.元素大小:Ssize
对集合SRC和DST中的每个元素,其面积形成向量,其向量表达式为如下表达式(2):
其中,aSRC(view)表示SRC集合所在视图的面积,同样的,可以得到向量ADST。
使用预余弦相似度公式计算两个集合的面积相似度,计算公式为如下公式(4):
Ssize=S(ASRC,ADST))。
因为对应位置元素是相同的资源文件一一对应过来的,其比例可以保证是一致的,所以,无需对宽高再进行单独比较了。
3.元素位置分布:Sdist
将集合SRC和DST视图横向纵向各分为m和n等份,对集合中的每一个元素,计算其x和y分别位于第p、q等份内,记作:M(SRCi)=(p,q),其中p∈[1,m]且q∈[1,n]。
对集合M(SRC)统计其坐标x的分布得到向量MXSRC,其中MXSRC[i]表示集合M(SRC)中横坐标x=i元素的加权总个数,没有则为0,该向量的长度是m,具体计算公式为如下计算公式(5):
其中,函数WI定义的表达式为如下表达式(3):
类似的,可以得到坐标y的分布得到向量MYSRC,以及向量MXDST和MYDST。最后计算元素位置分布相似度的公式为如下公式(6):
Sdist=S(MXSRC,MXDST)×S(MYSRC,MYDST)。
4.集合SRC和DST的相似度:Scomm
计算Scomm的公式为如下公式(7):
Scomm=Spos×Ssize×Sdist。
计算第一互斥元素集合和第二互斥元素集合的相似度,得到对应的第二相似度数值。
针对本发明实施例涉及的计算集合SRC_EXT和DST_EXT的相似度做如下说明:
定义函数SW(SET)为求集合SET中的所有元素的权重,计算公式为如下公式(8):
则集合SRC_EXT和DST_EXT的相似度定义为如下表达式(4):
根据第一相似度数值和第二相似度数值,得到软件运行界面图和效果图间的相似度值。
在某一具体应用场景中,计算软件运行界面图和效果图间的相似度值的公式为如下公式(9):
可选的,在计算效果图和软件运行界面图的公共元素集合和效果图的对应显示元素集合的相似度之前,所述方法还包括以下步骤:
根据资源文件,确定公共元素集合中的每个元素和效果图的对应显示元素集合中的每个元素的一一映射关系。
可选的,根据资源文件,确定公共元素集合中的每个元素和效果图的对应显示元素集合中的每个元素的一一映射关系包括以下步骤:
根据资源文件,确定公共元素集合中的每个元素对应的资源文件中的各个元素;以及
根据资源文件中的各个元素确定对应的效果图的对应显示元素集合中的各个元素。
本发明具体应用场景下的一个实例的图像相似度处理方法的步骤如下所述:
步骤1:获取软件运行时界面的控件结构树,并确定出每个元素的边界(矩形表示),SRC_VIEW。
步骤2:找出界面显示用到的资源文件(安装包中或本地磁盘)RES,与SRC_VIEW可以是一对多关系,对于文本或者由代码生成的图形,截取当前元素的显示图像作为资源。
步骤3:根据RES找出效果图中的对应显示元素DST,RES中的元素可以与DST中是一对多的关系,即有同样的资源被使用多次(在不同的位置,或不同的大小)。
步骤4:效果图中不能在RES中被匹配的元素集合记为DST_EXT,同时令:
1.SRC=SRC_VIEW∩DST;
2.SRC_EXT=SRC_VIEW-DST。
步骤5:对RES_i在集合SRC或DST存在多于1个对应元素的,将其对应的在两个集合中元素都取出并分别存入集合DUP_SRC_i和DUP_DST_i,这两个集合为一一对应关系(非集合中的元素一一对应)。
步骤6:找到集合DUP_SRC_i和DUP_DST_i的元素的一一对应关系,将有对应关系元素的分别存入SRC和DST,无对应关系的分别存入集合SRC_EXT和DST_EXT中。
步骤7:根据RES中的元素对SRC和DST的每个元素确定一一映射关系。
步骤8:计算集合SRC和DST的相似度。
在此步骤中,计算集合SRC和DST的相似度为:计算效果图和软件运行界面图的公共元素集合和效果图的对应显示元素集合的相似度。
步骤9:计算集合SRC_EXT和DST_EXT的相似度。
在此步骤中,计算集合SRC_EXT和DST_EXT的相似度为:计算第一互斥元素集合和第二互斥元素集合的相似度,其中,第一互斥元素集合为:由在效果图中存在的元素、且在软件运行界面图中不存在的元素组成的元素集合、第二互斥元素集合为:由在软件运行界面图中存在的元素、且在效果图中不存在的元素组成的元素集合。
步骤10:计算整体相似度。在此步骤中,整体相似度为:软件运行界面图和效果图间的相似度。
在上述图像相似度处理方法中,一旦确定了两个元素为映射关系,则后续不会再对其内容进行比较,后续操作简化为对元素边界大小的计算。
本公开实施例提供的图像相似度处理方法具有如下有益效果:
1.可以自动化比较多分辨率、多宽高比的实际设备运行结果和效果图之间的差异;
2.应用在网页相关应用程序对运行效果符合预期程度的判断,可以检测兼容性的问题。如在安卓端,可以比较在开发者自己实现的网页视图中,实际显示网页的效果、系统默认、以及第三方浏览器上显示效果之间的差异程度,来检测自定义网页视图是否存在界面渲染等方面的弊端。
本公开实施例通过提供一种图像相似度处理方法,通过引入计算相似度的关联集合,获取关联集合,并根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到二者之间的相似度值,该相似度值更加准确。
实施例2
本公开实施例承接实施例1,用于实现如实施例1所述的方法步骤,基于相同的名称含义的解释与实施例1相同,具有与实施例1相同的技术效果,此处不再赘述。结合附图5所示,根据本公开的具体实施方式,第二方面,本公开实施例提供一种图像相似度处理装置,包括边界集合汇集单元502、集合确定单元504、获取单元506和计算单元508等,具体如下:
边界集合汇集单元502,用于根据软件运行界面图的控件结构树确定用矩阵表示的每个元素的边界,并基于每个元素的边界汇集成对应的元素边界集合;
集合确定单元504,用于根据用于界面显示的资源文件确定效果图的对应显示元素,以及确定不能在资源文件中匹配的效果图的元素集合;
获取单元506,用于获取关联集合的各个相似度值;
计算单元508,用于并根据获取单元506获取的关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到软件运行界面图和效果图间的相似度值。
可选的,所述装置还包括:
读取单元(在图5中未示出),用于在计算单元508根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到对应的相似度值之前,读取关联集合;
其中,读取单元读取的关联集合至少包括以下一项:
效果图和软件运行界面图的公共元素集合、效果图的对应显示元素集合、由在效果图中存在的元素、且在软件运行界面图中不存在的元素组成的第一互斥元素集合、由在软件运行界面图中存在的元素、且在效果图中不存在的元素组成的第二互斥元素集合。
可选的,计算单元508具体用于:
计算效果图和软件运行界面图的公共元素集合和效果图的对应显示元素集合的相似度,得到对应的第一相似度数值;
计算第一互斥元素集合和第二互斥元素集合的相似度,得到对应的第二相似度数值;
根据第一相似度数值和第二相似度数值,得到软件运行界面图和效果图间的相似度值。
可选的,所述装置还包括:
映射关系确定单元(在图5中未示出),用于在计算单元508计算效果图和软件运行界面图的公共元素集合和效果图的对应显示元素集合的相似度之前,根据资源文件,确定公共元素集合中的每个元素和效果图的对应显示元素集合中的每个元素的一一映射关系。
可选的,映射关系确定单元具体用于:
根据资源文件,确定公共元素集合中的每个元素对应的资源文件中的各个元素;以及
根据资源文件中的各个元素确定对应的效果图的对应显示元素集合中的各个元素。
可选的,所述装置还包括:
资源文件确定单元(在图5中未示出),用于在集合确定单元504根据用于界面显示的资源文件确定效果图的对应显示元素之前,确定用于界面显示的资源文件。
可选的,资源文件确定单元具体用于:
若图形为由文本生成的第一图形时,截取第一图形对应的各个元素的各个显示图像作为资源,并构成资源文件;或者,
若图形为由代码生成的第二图形时,截取第二图形对应的各个元素的各个显示图像作为资源,并构成资源文件。
本公开实施例通过提供一种图像相似度处理装置,通过引入计算相似度的关联集合,获取单元获取关联集合,并根据关联集合的各个相似度值,计算单元计算软件运行界面图和效果图的相似度,得到二者之间的相似度值,计算单元计算得到的相似度值更加准确。
实施例3
如图6所示,本实施例提供一种电子设备,该设备用于图像相似度的图像相似度处理方法,所述电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:通过引入计算相似度的关联集合,获取关联集合,并根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到二者之间的相似度值,该相似度值更加准确。
实施例4
本公开实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的图像相似度处理方法。
实施例5
下面参考图6,其示出了适于用来实现本公开实施例的电子设备的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:通过引入计算相似度的关联集合,获取关联集合,并根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到二者之间的相似度值,该相似度值更加准确。
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
通过引入计算相似度的关联集合,获取关联集合,并根据关联集合的各个相似度值计算软件运行界面图和效果图的相似度,得到二者之间的相似度值,该相似度值更加准确。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
Claims (10)
1.一种图像相似度处理方法,其特征在于,包括:
根据软件运行界面图的控件结构树确定用矩阵表示的每个元素的边界,并基于每个元素的边界汇集成对应的元素边界集合;
根据用于软件运行界面显示的资源文件确定效果图的对应显示元素,以及确定不能在所述资源文件中匹配的所述效果图的元素集合,所述资源文件为通过截取所述软件运行界面图中的图形对应的元素的图像作为资源得到;
获取关联集合的各个相似度值,并根据所述关联集合的各个相似度值计算所述软件运行界面图和所述效果图的相似度,得到所述软件运行界面图和所述效果图间的相似度值;
其中,所述关联集合至少包括以下一项:所述效果图和所述软件运行界面图的公共元素集合、所述效果图的对应显示元素集合、由在所述效果图中存在的元素且在所述软件运行界面图中不存在的元素组成的第一互斥元素集合、由在所述软件运行界面图中存在的元素且在所述效果图中不存在的元素组成的第二互斥元素集合;所述相似度值为基于所述公共元素集合与所述效果图的对应显示元素集合之间的相似度以及所述第一互斥元素集合与所述第二互斥元素集合之间的相似度确定。
2.根据权利要求1所述的方法,其特征在于,在所述根据所述关联集合的各个相似度值计算所述软件运行界面图和所述效果图的相似度,得到对应的相似度值之前,所述方法还包括:
读取所述关联集合。
3.根据权利要求2所述的方法,其特征在于,所述根据所述关联集合的各个相似度值计算所述软件运行界面图和所述效果图的相似度,得到所述软件运行界面图和所述效果图间的相似度值包括:
计算所述效果图和所述软件运行界面图的所述公共元素集合和所述效果图的对应显示元素集合的相似度,得到对应的第一相似度数值;
计算所述第一互斥元素集合和所述第二互斥元素集合的相似度,得到对应的第二相似度数值;
根据所述第一相似度数值和所述第二相似度数值,得到所述软件运行界面图和所述效果图间的相似度值。
4.根据权利要求3所述的方法,其特征在于,在所述计算所述效果图和所述软件运行界面图的所述公共元素集合和所述效果图的对应显示元素集合的相似度之前,所述方法还包括:
根据所述资源文件,确定所述公共元素集合中的每个元素和所述效果图的对应显示元素集合中的每个元素的一一映射关系。
5.根据权利要求4所述的方法,其特征在于,所述根据所述资源文件,确定所述公共元素集合中的每个元素和所述效果图的对应显示元素集合中的每个元素的一一映射关系包括:
根据所述资源文件,确定所述公共元素集合中的每个元素对应的所述资源文件中的各个元素;以及
根据所述资源文件中的各个元素确定对应的所述效果图的对应显示元素集合中的各个元素。
6.根据权利要求1所述的方法,其特征在于,在所述根据用于界面显示的资源文件确定效果图的对应显示元素之前,所述方法还包括:
确定所述用于界面显示的所述资源文件。
7.根据权利要求6所述的方法,其特征在于,所述确定所述用于界面显示的所述资源文件包括:
若图形为由文本生成的第一图形时,截取所述第一图形对应的各个元素的各个显示图像作为资源,并构成所述资源文件;或者,
若图形为由代码生成的第二图形时,截取所述第二图形对应的各个元素的各个显示图像作为资源,并构成所述资源文件。
8.一种图像相似度处理装置,其特征在于,包括:
边界集合汇集单元,用于根据软件运行界面图的控件结构树确定用矩阵表示的每个元素的边界,并基于每个元素的边界汇集成对应的元素边界集合;
集合确定单元,用于根据用于软件运行界面显示的资源文件确定效果图的对应显示元素,以及确定不能在所述资源文件中匹配的所述效果图的元素集合,所述资源文件为通过截取所述软件运行界面图中的图形对应的元素的图像作为资源得到;
获取单元,用于获取关联集合的各个相似度值;
计算单元,用于并根据所述获取单元获取的所述关联集合的各个相似度值计算所述软件运行界面图和所述效果图的相似度,得到所述软件运行界面图和所述效果图间的相似度值;
其中,所述关联集合至少包括以下一项:所述效果图和所述软件运行界面图的公共元素集合、所述效果图的对应显示元素集合、由在所述效果图中存在的元素且在所述软件运行界面图中不存在的元素组成的第一互斥元素集合、由在所述软件运行界面图中存在的元素且在所述效果图中不存在的元素组成的第二互斥元素集合;所述相似度值为基于所述公共元素集合与所述效果图的对应显示元素集合之间的相似度以及所述第一互斥元素集合与所述第二互斥元素集合之间的相似度确定。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至7中任一项所述的方法。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010006702.6A CN111242187B (zh) | 2020-01-03 | 2020-01-03 | 一种图像相似度处理方法、装置、介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010006702.6A CN111242187B (zh) | 2020-01-03 | 2020-01-03 | 一种图像相似度处理方法、装置、介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111242187A CN111242187A (zh) | 2020-06-05 |
CN111242187B true CN111242187B (zh) | 2023-07-07 |
Family
ID=70872443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010006702.6A Active CN111242187B (zh) | 2020-01-03 | 2020-01-03 | 一种图像相似度处理方法、装置、介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111242187B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111914876A (zh) * | 2020-06-10 | 2020-11-10 | 华南理工大学 | 一种用户间相似性距离测度方法、系统、装置和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109408384A (zh) * | 2018-10-16 | 2019-03-01 | 网易(杭州)网络有限公司 | 软件应用的测试方法、装置、处理器及电子装置 |
CN110413529A (zh) * | 2019-07-31 | 2019-11-05 | 中国工商银行股份有限公司 | 应用于电子设备的测试方法、装置、计算设备以及介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9135151B2 (en) * | 2013-09-18 | 2015-09-15 | Yahoo! Inc. | Automatic verification by comparing user interface images |
US9934129B1 (en) * | 2017-03-17 | 2018-04-03 | Google Llc | Determining application test results using screenshot metadata |
CN108984399A (zh) * | 2018-06-29 | 2018-12-11 | 上海连尚网络科技有限公司 | 检测界面差异的方法、电子设备和计算机可读介质 |
CN109783360A (zh) * | 2018-12-14 | 2019-05-21 | 深圳壹账通智能科技有限公司 | 操作系统对比测试方法与装置、电子设备、存储介质 |
CN109815156A (zh) * | 2019-02-28 | 2019-05-28 | 北京百度网讯科技有限公司 | 页面中视觉元素的展示测试方法、装置、设备和存储介质 |
CN110503682B (zh) * | 2019-08-08 | 2021-05-07 | 深圳市优讯通信息技术有限公司 | 矩形控件识别方法、装置、终端及存储介质 |
-
2020
- 2020-01-03 CN CN202010006702.6A patent/CN111242187B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109408384A (zh) * | 2018-10-16 | 2019-03-01 | 网易(杭州)网络有限公司 | 软件应用的测试方法、装置、处理器及电子装置 |
CN110413529A (zh) * | 2019-07-31 | 2019-11-05 | 中国工商银行股份有限公司 | 应用于电子设备的测试方法、装置、计算设备以及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111242187A (zh) | 2020-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10846870B2 (en) | Joint training technique for depth map generation | |
CN110197147B (zh) | 遥感影像的建筑物实例提取方法、装置、存储介质及设备 | |
CN108734185B (zh) | 图像校验方法和装置 | |
US8396303B2 (en) | Method, apparatus and computer program product for providing pattern detection with unknown noise levels | |
CN111309618B (zh) | 页面元素定位方法、页面测试方法及相关装置 | |
CN113920538B (zh) | 目标检测方法、装置、设备、存储介质及计算机程序产品 | |
CN114511661A (zh) | 图像渲染方法、装置、电子设备及存储介质 | |
CN113222921A (zh) | 一种图像处理方法及系统 | |
Zhang et al. | Multiple-scale salient-region detection of SAR image based on Gamma distribution and local intensity variation | |
CN111242187B (zh) | 一种图像相似度处理方法、装置、介质和电子设备 | |
CN113516697B (zh) | 图像配准的方法、装置、电子设备及计算机可读存储介质 | |
CN114586059A (zh) | 图像的配准方法、终端以及计算机存储介质 | |
CN113793370A (zh) | 三维点云配准方法、装置、电子设备及可读介质 | |
CN110264430B (zh) | 视频美化方法、装置及电子设备 | |
CN110321858B (zh) | 视频相似度确定方法、装置、电子设备及存储介质 | |
CN110827194A (zh) | 图像处理的方法、装置及计算机存储介质 | |
US20210049786A1 (en) | Method and device of processing image, and computer readable storage medium | |
Climer et al. | Local lines: A linear time line detector | |
CN115345895A (zh) | 用于视觉检测的图像分割方法、装置、计算机设备及介质 | |
CN113033640B (zh) | 模板匹配方法、装置、设备及计算机可读存储介质 | |
CN115205202A (zh) | 视频检测方法、装置、设备及存储介质 | |
CN111124862B (zh) | 智能设备性能测试方法、装置及智能设备 | |
CN115100536A (zh) | 建筑物识别方法、装置、电子设备和计算机可读介质 | |
CN112861940A (zh) | 双目视差估计方法、模型训练方法以及相关设备 | |
CN113128604A (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 |