CN109919164B - 用户界面对象的识别方法及装置 - Google Patents
用户界面对象的识别方法及装置 Download PDFInfo
- Publication number
- CN109919164B CN109919164B CN201910134144.9A CN201910134144A CN109919164B CN 109919164 B CN109919164 B CN 109919164B CN 201910134144 A CN201910134144 A CN 201910134144A CN 109919164 B CN109919164 B CN 109919164B
- Authority
- CN
- China
- Prior art keywords
- image
- target
- area
- corresponding point
- point
- 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
Landscapes
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种用户界面对象的识别方法及装置。其中,该方法包括:获取用户界面UI对象与场景图像的匹配对应点对集合,其中,匹配对应点对集合用于记录匹配对应点对,匹配对应点对包括UI对象上的UI特征点和场景图像上与UI特征点匹配对应的图像特征点;根据匹配对应点对的数量在场景图像上识别第一区域,其中,第一区域为在场景图像上与UI对象对应的候选区域;在第一区域满足目标区域条件的情况下,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域,其中,目标区域为识别出的在场景图像上与UI对象对应的区域。本发明解决了对用户界面UI对象的识别效率较低的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种用户界面对象的识别方法及装置。
背景技术
目前的图像匹配技术主要包括模板匹配和特征匹配两种,模板匹配是在场景图中平行移动UI对象图,找到与UI对象图尺寸、方向、像素相似的区域,特征匹配是通过提取图像中的特征点,对特征点进行匹配,然后进行映射,定位匹配的区域。以上两种方法都不能直接应用于应用程序(比如游戏)的自动化识别,应用程序中场景的复杂性和多样性是UI对象识别效率低的直接原因。
现有的基于模板匹配的方法,受尺度、光照、形变影响,局限性大,在应用程序自动化识别中适应性差。特征匹配方法难以解决特征点较少的图像匹配问题,同时误匹配率高。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种用户界面对象的识别方法及装置,以至少解决对用户界面UI对象的识别效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种用户界面对象的识别方法,包括:获取用户界面UI对象与场景图像的对应点对集合,其中,所述对应点对集合用于记录对应点对,所述对应点对包括所述UI对象上的UI特征点和所述场景图像上与所述UI特征点对应的图像特征点;根据所述对应点对的数量在所述场景图像上识别第一区域,其中,所述第一区域为在场景图像上与所述UI对象对应的候选区域;在所述第一区域满足目标区域条件的情况下,根据所述第一区域和所述UI对象的尺寸缩放比例对所述第一区域进行校准,得到目标区域,其中,所述目标区域为识别出的在所述场景图像上与所述UI对象对应的区域。
根据本发明实施例的另一方面,还提供了一种用户界面对象的识别装置,包括:获取模块,用于获取用户界面UI对象与场景图像的对应点对集合,其中,所述对应点对集合用于记录对应点对,所述对应点对包括所述UI对象上的UI特征点和所述场景图像上与所述UI特征点对应的图像特征点;识别模块,用于根据所述对应点对的数量在所述场景图像上识别第一区域,其中,所述第一区域为在场景图像上与所述UI对象对应的候选区域;校准模块,用于在所述第一区域满足目标区域条件的情况下,根据所述第一区域和所述UI对象的尺寸缩放比例对所述第一区域进行校准,得到目标区域,其中,所述目标区域为识别出的在所述场景图像上与所述UI对象对应的区域。
可选地,所述识别模块包括:第一识别单元,用于在所述对应点对的数量大于或者等于第一数量的情况下,根据所述图像特征点在所述场景图像上的位置识别所述第一区域;和/或,第二识别单元,用于在所述对应点对的数量小于第一数量的情况下,根据从所述UI对象上提取出的UI特征点的数量在所述场景图像上识别所述第一区域。
可选地,所述第一识别单元包括:第一确定子单元,用于在所述图像特征点中确定第一图像特征点和第二图像特征点;第二确定子单元,用于在所述场景图像上确定所述第一图像特征点与第二图像特征点之间连线的中点;第三确定子单元,用于根据所述第一图像特征点和所述第二图像特征点在所述场景图像上的位置确定所述第一区域相对于所述UI对象的缩放比例,并根据所述缩放比例和所述UI对象的尺寸确定目标尺寸;扩展子单元,用于以所述中点为中心在所述场景图像上扩展出所述目标尺寸的区域作为所述第一区域。
可选地,所述第三确定子单元用于:在所述第一图像特征点与所述第二图像特征点之间的连线与所述场景图像的边缘平行的情况下,确定所述第一区域相对于所述UI对象的缩放比例为1,并确定所述目标尺寸为所述UI对象的尺寸;和/或,在所述第一图像特征点与所述第二图像特征点之间的连线与所述场景图像的边缘不平行的情况下,将第一距离与第二距离的比值确定为所述缩放比例,并确定所述目标尺寸为所述UI对象的尺寸与所述缩放比例的乘积,其中,所述第一距离为所述第一图像特征点与所述第二图像特征点之间的距离,所述第二距离为所述第一图像特征点对应的UI特征点与所述第二图像特征点对应的UI特征点之间的距离。
可选地,在所述第一数量为2的情况下,所述第一确定子单元用于:在所述对应点对的数量为2的情况下,将所述图像特征点中的一个图像特征点确定为所述第一图像特征点,并将所述图像特征点中的另一个图像特征点确定为所述第二图像特征点;在所述对应点对的数量为3的情况下,将所述图像特征点中的任意一个图像特征点确定为所述第一图像特征点,并将所述图像特征点中的另外两个图像特征点之间连线的中点确定为所述第二图像特征点;在所述对应点对的数量大于3的情况下,将所述图像特征点中距离最远的两个图像特征点确定为所述第一图像特征点和所述第二图像特征点。
可选地,所述第二识别单元包括:第四确定子单元,用于在从所述UI对象上提取出的UI特征点的数量大于或者等于第二数量的情况下,确定所述场景图像上不具有所述第一区域;和/或,匹配子单元,用于在从所述UI对象上提取出的UI特征点的数量小于第二数量的情况下,以所述UI对象为匹配模板在所述场景图像上匹配所述第一区域。
可选地,所述校准模块包括:第一确定单元,用于将所述第一区域的长与所述UI对象的长之间的比值确定为第一尺寸缩放比例,并将所述第一区域的宽与所述UI对象的宽之间的比值确定为第二尺寸缩放比例;第二确定单元,用于确定所述第一尺寸缩放比例与所述第二尺寸缩放比例的差值;处理单元,用于在所述差值大于或者等于目标差值的情况下,根据所述第一尺寸缩放比例与所述第二尺寸缩放比例中较大的目标尺寸缩放比例对所述第一区域进行缩放,得到所述目标区域;和/或,在所述差值小于目标差值的情况下,将所述第一区域确定为所述目标区域。
可选地,所述处理单元包括:第一缩放子单元,用于在所述第一尺寸缩放比例与所述第二尺寸缩放比例中较大的目标尺寸缩放比例大于1的情况下,按照所述目标尺寸缩放比例对所述第一区域进行缩放,得到所述目标区域;和/或,第二缩放子单元,用于在所述第一尺寸缩放比例与所述第二尺寸缩放比例中较大的目标尺寸缩放比例小于或者等于1的情况下,将所述第一区域的尺寸缩放到与所述UI对象的尺寸相同,得到所述目标区域。
可选地,所述装置还包括:第一确定模块,用于在所述第一区域的尺寸满足目标尺寸条件,且所述第一区域的颜色信息与所述UI对象的颜色信息之间的相似度高于目标相似度的情况下,确定所述第一区域满足所述目标区域条件。
可选地,所述获取模块包括:提取单元,用于按图像特征提取方式从所述UI对象上提取UI特征点得到UI特征点集合,并按所述图像特征提取方式从所述场景图像上提取图像特征点得到图像特征点集合;匹配单元,用于对所述UI特征点集合和所述图像特征点集合进行匹配,得到候选对应点对;记录单元,用于将所述候选对应点对中满足目标匹配条件的对应点对记录到所述对应点对集合中。
可选地,所述记录单元包括:第五确定子单元,用于确定所述候选对应点对中每个对应点对的斜率;第六确定子单元,用于将所述每个对应点对中所述斜率与目标斜率的差值小于目标斜率差的对应点对确定为满足所述目标匹配条件的对应点对;记录子单元,用于将所述满足目标匹配条件的对应点对记录到所述对应点对集合中。
可选地,所述装置还包括:第二确定模块,用于在所述候选对应点对中存在目标图像特征点对应了多个UI特征点的情况下,将所述多个UI特征点中与所述目标图像特征点的相似度最高的UI特征点确定为所述目标图像特征点所对应的目标UI特征点;删除模块,用于删除所述候选对应点对中除目标对应点对外包括所述目标图像特征点的对应点对,其中,所述目标对应点对包括所述目标图像特征点和所述目标UI特征点。
根据本发明实施例的另一方面,还提供了一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。
根据本发明实施例的另一方面,还提供了一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行上述任一项中所述的方法。
在本发明实施例中,采用获取用户界面UI对象与场景图像的对应点对集合,其中,对应点对集合用于记录对应点对,对应点对包括UI对象上的UI特征点和场景图像上与UI特征点对应的图像特征点;根据对应点对的数量在场景图像上识别第一区域,其中,第一区域为在场景图像上与UI对象对应的候选区域;在第一区域满足目标区域条件的情况下,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域,其中,目标区域为识别出的在场景图像上与UI对象对应的区域的方式,获取到UI对象与场景图像的对应点对集合后,根据对应点对集合中对应点对的数量以不同的方式在场景图像上识别出UI对象的候选区域,再根据第一区域和UI对象的尺寸缩放比例校准第一区域,从而得到场景图像上与UI对象对应的目标区域,提高了识别的准确率和适应性,从而实现了提高对用户界面UI对象的识别效率的技术效果,进而解决了对用户界面UI对象的识别效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的用户界面对象的识别方法的示意图;
图2是根据本发明实施例的一种可选的用户界面对象的识别方法的应用环境示意图;
图3是根据本发明可选的实施方式的一种可选的用户界面对象的识别方法的示意图;
图4是根据本发明可选的实施方式的另一种可选的用户界面对象的识别方法的示意图;
图5是根据本发明可选的实施方式的另一种可选的用户界面对象的识别方法的示意图;
图6是根据本发明可选的实施方式的另一种可选的用户界面对象的识别方法的示意图;
图7是根据本发明实施例的一种可选的用户界面对象的识别装置的示意图;
图8是根据本发明实施例的一种可选的用户界面对象的识别方法的应用场景示意图一;
图9是根据本发明实施例的一种可选的用户界面对象的识别方法的应用场景示意图二;以及
图10是根据本发明实施例的一种可选的电子装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在应用程序的开发过程中,可能会需要对应用程序的性能进行识别,在识别过程中为了确定应用程序中的场景能够被正确地显示,可以对场景进行识别,识别的方式可以是将场景中具有标志性特点的内容作为待匹配的用户界面(User Interface,简称为UI)对象,如果在截取的场景图像上识别出该UI对象,则认为该场景图像展示的是该UI对象所对应的场景。从而完成应用程序的自动化识别。
比如:在一个应用场景中,以游戏测试为例,在自动化探索测试框架(用于进行游戏自动化测试的平台)中,预先录制游戏,标定游戏场景以及识别场景的UI对象,在测试过程中,截取当前手机上显示的场景图像,可以但不限于通过以下方式判断场景中包括哪些UI对象:
获取UI对象与场景图像的对应点对集合,根据对应点对的数量在场景图像上识别第一区域,其中,第一区域为在场景图像上与UI对象对应的候选区域,在第一区域满足目标区域条件的情况下,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域。从而确定场景图像中包括该UI对象,并识别出该UI对象在本场景图像上的目标区域。识别出当前场景图像属于哪个游戏场景,执行相应的操作,跳转到下一场景,实现游戏的自动化识别。
根据本发明实施例的一个方面,提供了一种用户界面对象的识别方法,如图1所示,该方法包括:
S102,获取用户界面UI对象与场景图像的对应点对集合,其中,对应点对集合用于记录对应点对,对应点对包括UI对象上的UI特征点和场景图像上与UI特征点对应的图像特征点;
S104,根据对应点对的数量在场景图像上识别第一区域,其中,第一区域为在场景图像上与UI对象对应的候选区域;
S106,在第一区域满足目标区域条件的情况下,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域,其中,目标区域为识别出的在场景图像上与UI对象对应的区域。
可选地,在本实施例中,上述用户界面对象的识别方法可以应用于如图2所示的终端202所构成的硬件环境中。如图2所示,终端202获取用户界面UI对象与场景图像的对应点对集合,其中,对应点对集合用于记录对应点对,对应点对包括UI对象上的UI特征点和场景图像上与UI特征点对应的图像特征点;根据对应点对的数量在场景图像上识别第一区域,其中,第一区域为在场景图像上与UI对象对应的候选区域;在第一区域满足目标区域条件的情况下,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域,其中,目标区域为识别出的在场景图像上与UI对象对应的区域。
可选地,在本实施例中,上述用户界面对象的识别方法可以但不限于应用于在应用程序的场景图像中识别UI对象的场景中。其中,上述应用程序可以但不限于为各种类型的应用,例如,在线教育应用、即时通讯应用、社区空间应用、游戏应用、购物应用、浏览器应用、金融应用、多媒体应用、直播应用等。具体的,可以但不限于应用于在上述游戏应用的场景图像中识别UI对象的场景中,或还可以但不限于应用于在上述多媒体应用的场景图像中识别UI对象的场景中,以提高UI对象的识别效率。上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,场景图像可以但不限于是在应用程序的客户端或者网页的显示界面上截取的画面。以游戏应用为例,在游戏中可能设置了多种不同的场景,比如:登录场景,游戏模式的选择场景,游戏战斗场景,设置场景,消息场景,个人资料场景等等。在游戏的识别过程中,可以通过对在游戏的显示画面上截取的场景图像上的UI对象进行识别来确定截取的场景图像所属于的游戏场景,从而进行相应的操作。
又例如:以视频应用为例,在应用中可能设置了多种不同的场景,比如:登录场景,菜单场景,视频搜索场景,视频播放场景,设置场景,消息场景,个人资料场景等等。在视频应用的测试过程中,可以通过对在应用的显示画面上截取的场景图像上的UI对象进行识别来确定截取的场景图像所属于的应用场景,从而进行相应的操作。
可选地,在本实施例中,UI对象可以但不限于是应用场景中截取的特殊的、有代表性的对象,可以用于识别当前场景。不同应用场景所对应的UI对象可以不同,UI对象可以但不限于是根据应用场景的特点配置的或者是通过算法自动分析的得到的。
比如:以游戏应用为例,在上述游戏场景中,登录场景对应的UI对象可以但不限于包括登录按钮、选择服务器的显示框等等,游戏模式的选择场景对应的UI对象可以但不限于包括游戏模式的名称(比如:对战模式、排位赛等等),游戏战斗场景对应的UI对象可以但不限于包括技能图标、游戏地图等等,设置场景对应的UI对象可以但不限于包括设置名称(例如:基础设置、操作设置、界面设置)等等,消息场景对应的UI对象可以但不限于包括消息分类的名称(好友邮件、系统邮件、消息中心、礼物中心等等),个人资料场景等等。
可选地,在本实施例中,UI对象与场景图像的对应点对集合中的对应点对可以但不限于是通过特征点的提取和匹配过程得到的,对应点对集合用于记录对应点对,对应点对集合中可以有对应点对,也可以没有对应点对。也就是说,对应点对集合中对应点对的数量可以但不限于是大于或者等于0的整数。
可选地,在本实施例中,对于某一个UI对象来说,在场景图像上识别该UI对象的结果可以但不限于包括:在场景图像上识别到该UI对象或者在场景图像上未识别到该UI对象。对于在场景图像上识别到该UI对象的识别结果,可以认为该场景图像属于该UI对象所对应的场景,(比如:在一张场景图像上识别出游戏的登录按钮,则可以确定该场景图像为登录场景的图像)。可以根据识别出的第一区域是否满足目标区域条件来确定是否识别出UI对象,对于识别出的UI对象,还可以通过对第一区域的校准进一步确定UI对象在该场景图像上的更加精确的位置。
可选地,在本实施例中,目标区域条件可以但不限于包括:存在第一区域,或者,第一区域的尺寸满足尺寸条件(比如:第一区域的尺寸大于目标值,或者,第一区域的尺寸落入目标尺寸范围等等)。
在一个可选的实施方式中,如图3所示,以对游戏场景中的登录场景所对应的登录按钮进行识别为例,在游戏中截取到场景图像A,获取登录按钮与场景图像A的对应点对集合,该集合中记录了4组对应点对:UI特征点A与图像特征点1,UI特征点B与图像特征点2,UI特征点C与图像特征点3,UI特征点D与图像特征点4,对应点对集合中的对应点对的数量为4,则以对应点对的数量为4时所对应的识别方式在场景图像A上识别第一区域,在第一区域存在的情况下,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域。
可见,通过上述步骤,获取到UI对象与场景图像的对应点对集合后,根据对应点对集合中对应点对的数量以不同的识别方式在场景图像上识别出UI对象的候选区域,再根据第一区域和UI对象的尺寸缩放比例校准第一区域,从而得到场景图像上与UI对象匹配的目标区域,提高了识别的准确率和适应性,从而实现了提高对用户界面UI对象的识别效率的技术效果,进而解决了对用户界面UI对象的识别效率较低的技术问题。
作为一种可选的方案,根据对应点对的数量在场景图像上识别第一区域包括:
S1,在对应点对的数量大于或者等于第一数量的情况下,根据图像特征点在场景图像上的位置识别第一区域;和/或,
S2,在对应点对的数量小于第一数量的情况下,根据从UI对象上提取出的UI特征点的数量在场景图像上识别第一区域。
可选地,在本实施例中,如果对应点对集合中对应点对的数量较多(比如数量大于或者等于第一数量表示数量较多),则可以认为场景图像上出现UI对象的概率是较大的,场景图像上具有的对应点对中的图像特征点也足够的丰富,能够根据这些图像特征点的位置来确定UI对象的候选位置。但如果对应点对集合中对应点对的数量较少,场景图像上的对应点对中的图像特征点不够丰富,那么根据图像特征点确定候选区域可能会影响识别的准确性。如果对应点对集合中没有对应点对,那么如果据此确定没有识别出UI对象有可能造成错误识别,即场景图像上存在UI对象但未能识别出来。对于对应点对集合中对应点对的数量较少或者没有对应点对的情况,可以根据从UI对象上提取出的全部UI特征点来识别UI对象的候选区域。从而避免UI对象的错误识别,提高识别的准确率。
可选地,在本实施例中,第一数量可以但不限于是根据实际需求设定的,或者,也可以是由根据历史数据训练的模型计算得到的。
作为一种可选的方案,根据图像特征点在场景图像上的位置识别第一区域包括:
S1,在图像特征点中确定第一图像特征点和第二图像特征点;
S2,在场景图像上确定第一图像特征点与第二图像特征点之间连线的中点;
S3,根据第一图像特征点和第二图像特征点在场景图像上的位置确定第一区域相对于UI对象的缩放比例,并根据缩放比例和UI对象的尺寸确定目标尺寸;
S4,以中点为中心在场景图像上扩展出目标尺寸的区域作为第一区域。
可选地,在本实施例中,为了根据对应点对中的图像特征点对UI对象在场景图像上的位置进行定位,可以首先确定出两个用于定位的定位点,即第一图像特征点和第二图像特征点,再根据第一图像特征点和第二图像特征点在场景图像上的位置确定第一区域的尺寸,并以第一图像特征点和第二图像特征点的中点为中心根据第一区域的尺寸扩展出第一区域作为UI对象在场景图像上的候选区域。
例如:如图4所示,在图像特征点中确定第一图像特征点为点1,第二图像特征点为点2,在场景图像上确定点1与点2之间连线的中点为点M,根据点1和点2在场景图像上的位置确定第一区域相对于UI对象的缩放比例为0.9,即第一区域的尺寸是UI对象尺寸的0.9倍,并根据缩放比例和UI对象的尺寸(40像素×40像素)确定目标尺寸为(36像素×36像素),以点M为中心在场景图像上扩展出尺寸为36像素×36像素的区域作为第一区域。
作为一种可选的方案,根据第一图像特征点和第二图像特征点在场景图像上的位置确定第一区域相对于UI对象的缩放比例,并根据缩放比例和UI对象的尺寸确定目标尺寸包括:
S1,在第一图像特征点与第二图像特征点之间的连线与场景图像的边缘平行的情况下,确定第一区域相对于UI对象的缩放比例为1,并确定目标尺寸为UI对象的尺寸;和/或,
S2,在第一图像特征点与第二图像特征点之间的连线与场景图像的边缘不平行的情况下,将第一距离与第二距离的比值确定为缩放比例,并确定目标尺寸为UI对象的尺寸与缩放比例的乘积,其中,第一距离为第一图像特征点与第二图像特征点之间的距离,第二距离为第一图像特征点对应的UI特征点与第二图像特征点对应的UI特征点之间的距离。
可选地,在本实施例中,可以但不限于根据第一图像特征点与第二图像特征点之间的连线与场景图像的边缘是否平行,来确定对应的计算目标尺寸的方式。
作为一种可选的方案,在第一数量为2的情况下,在图像特征点中确定第一图像特征点和第二图像特征点包括:
S1,在对应点对的数量为2的情况下,将图像特征点中的一个图像特征点确定为第一图像特征点,并将图像特征点中的另一个图像特征点确定为第二图像特征点;
S2,在对应点对的数量为3的情况下,将图像特征点中的任意一个图像特征点确定为第一图像特征点,并将图像特征点中的另外两个图像特征点之间连线的中点确定为第二图像特征点;
S3,在对应点对的数量大于3的情况下,将图像特征点中距离最远的两个图像特征点确定为第一图像特征点和第二图像特征点。
可选地,在本实施例中,可以但不限于根据对应点对的数量来确定如何获取第一图像特征点和第二图像特征点,如果对应点对集合中只有两组对应点对,则直接将这两组对应点对中的两个图像特征点分别确定为第一图像特征点和第二图像特征点。如果对应点对集合中有三组对应点对,则将这三组对应点对中任意一组中的图像特征点确定为第一图像特征点,将其他两个图像特征点的中点确定为第二图像特征点。如果对应点对集合中有多于三组的对应点对,则将这些对应点对中距离最远的两个图像特征点确定为第一图像特征点和第二图像特征点。
例如:如果对应点对数目为2,将这两个图像特征点的作为第一图像特征点p1(x1,y1)和第二图像特征点p2(x2,y2)。如果对应点对数目为3,选择其中1个点作为p1(x1,y1),计算剩余2个点的中点作为p2(x2,y2)。如果对应点对数目大于3,用于定位的两个点p1(x1,y1)和p2(x2,y2)的计算方法可以为:p1(x1,y1)=p1(xmin,ymin),p2(x2,y2)=p2(xmax,ymax)。
作为一种可选的方案,根据从UI对象上提取出的UI特征点的数量在场景图像上识别第一区域包括:
S1,在从UI对象上提取出的UI特征点的数量大于或者等于第二数量的情况下,确定场景图像上不具有第一区域;和/或,
S2,在从UI对象上提取出的UI特征点的数量小于第二数量的情况下,以UI对象为匹配模板在场景图像上匹配第一区域。
可选地,在本实施例中,如果从UI对象上提取出的UI特征点的数量大于或者等于第二数量,则可以确定UI图像上可能已经提取了足够多个UI特征点,但场景图像上并没有足够多个能够与其对应的图像特征点,即场景图像上不具备与UI对象匹配的条件,也就是说,场景图像上不具有UI对象。
可选地,在本实施例中,如果从UI对象上提取出的UI特征点的数量大于或者等于第二数量,则有可能没有匹配到足够多的对应点对的原因并不是场景图像上并不具有UI对象,而可能是没有能够提取出能够用于对场景对象进行定位的特征点。此种情况下,可以采用模板匹配的方式从场景图像上识别出UI对象。
例如:对应点对数目为0或1。这种对应点对极少的情况下,判断UI对象中提取的UI特征点数目,如果UI特征点数大于某目标数量(可以是预先设定的数量,也可以是通过训练自动识别的数量),说明UI对象有足够的UI特征点,但是未匹配足够的图像特征点,则判断该场景图像中不具有UI对象,避免不具有UI对象的场景图像的错误识别。反之,如果UI对象中UI特征点数小于上述目标数量,为了避免特征点少导致的漏识别情况出现,可以对这种少数情况采用多尺度的模板匹配进行识别。
作为一种可选的方案,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域包括:
S1,将第一区域的长与UI对象的长之间的比值确定为第一尺寸缩放比例,并将第一区域的宽与UI对象的宽之间的比值确定为第二尺寸缩放比例;
S2,确定第一尺寸缩放比例与第二尺寸缩放比例的差值;
S3,在差值大于或者等于目标差值的情况下,根据第一尺寸缩放比例与第二尺寸缩放比例中较大的目标尺寸缩放比例对第一区域进行缩放,得到目标区域;和/或,在差值小于目标差值的情况下,将第一区域确定为目标区域。
可选地,在本实施例中,第一尺寸缩放比例是第一区域与UI对象之间长度的比值,第二尺寸缩放比例是第一区域与UI对象之间宽度的比值。根据二者之间的差距来确定如何对第一区域进行缩放,可以在二者相差较大(可以用两个尺寸缩放比例之间的差值大于或者等于目标差值来表示二者差距较大)时,可以按照两个尺寸缩放比例中较大的一个对第一区域进行缩放。在二者相差较小(可以用两个尺寸缩放比例之间的差值小于目标差值来表示二者差距较小)时,可以不对第一区域进行缩放,直接将第一区域确定为目标区域。
例如:分别计算匹配区域(即第一区域)相对于UI对象长和宽的尺度缩放比例,如果长和宽的缩放比例相差超过0.3,则长和宽均以较大的缩放比例进行缩放。
作为一种可选的方案,根据第一尺寸缩放比例与第二尺寸缩放比例中较大的目标尺寸缩放比例对第一区域进行缩放,得到目标区域包括:
S1,在第一尺寸缩放比例与第二尺寸缩放比例中较大的目标尺寸缩放比例大于1的情况下,按照目标尺寸缩放比例对第一区域进行缩放,得到目标区域;和/或,
S2,在第一尺寸缩放比例与第二尺寸缩放比例中较大的目标尺寸缩放比例小于或者等于1的情况下,将第一区域的尺寸缩放到与UI对象的尺寸相同,得到目标区域。
可选地,在本实施例中,在根据第一尺寸缩放比例与第二尺寸缩放比例中较大的目标尺寸缩放比例对第一区域进行缩放时,如果该目标尺寸缩放比例超过了1,则按照该目标尺寸缩放比例进行缩放。如果目标尺寸缩放比例没有达到1,则按照缩放比例为1来进行缩放,即将第一区域的尺寸缩放到与UI对象的尺寸相同。
可选地,在本实施例中,上述第一区域的缩放过程能够使得UI对象的识别过程适应于不同分辨率的场景图像。
作为一种可选的方案,在根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域之前,还包括:
S1,在第一区域的尺寸满足目标尺寸条件,且第一区域的颜色信息与UI对象的颜色信息之间的相似度高于目标相似度的情况下,确定第一区域满足目标区域条件。
可选地,在本实施例中,目标尺寸条件可以但不限于包括第一区域的长度、宽度需满足的尺寸条件,第一区域的尺寸比例需满足的尺寸条件等等。例如:合理的UI对象匹配区域大小应满足长和宽均不小于5个像素值,太小的区域包含的有效特征过少,往往不作为标识场景的UI对象。上述UI对象的识别过程能够适应不同分辨率产生的UI对象尺度变化,但是合理的长宽尺寸缩放比例范围可以控制在0.4-2之间,超出这个范围即为错误匹配。
可选地,在本实施例中,在校准第一区域之前,还可以通过颜色信息的验证来确定第一区域的可用性,例如:对第一区域与UI对象之间的颜色相似度进行判断,将匹配的第一区域和UI对象分为左右两个区域,分别计算其在rgb色彩空间上三个通道的均值差(mr_l,mg_l,mb_l,mr_r,mg_r,mb_r),并计算第一区域和UI对象在hsv色彩空间上v通道上亮度的均值差mv,满足颜色相似度判断的条件为所有均值均相近,即mimnr_(l,mg_l,mb_l,mr_r,mg_r,mb_r,mv)<T,T=35。颜色相似度的判断很好的识别了错误匹配,部分匹配和游戏场景中经常出现的带有蒙板的UI对象,如图5所示,待识别的UI对象为游戏微信登录的入口,特征匹配到的第一区域由于弹窗出现,带有蒙板,即当前并非可操作对象,如果不进行判断,会导致游戏场景识别错误,相应的登录操作失败。
作为一种可选的方案,获取UI对象与场景图像的对应点对集合包括:
S1,按图像特征提取方式从UI对象上提取UI特征点得到UI特征点集合,并按图像特征提取方式从场景图像上提取图像特征点得到图像特征点集合;
S2,对UI特征点集合和图像特征点集合进行匹配,得到候选对应点对;
S3,将候选对应点对中满足目标匹配条件的对应点对记录到对应点对集合中。
可选地,在本实施例中,图像特征提取方式包括但不限于:尺度不便特征变换(Scale-Invariant Feature Transform,简称为SIFT)方式,加速稳健特征(Speeded UpRobust Features,简称为SURF)方式,ORB(Oriented FAST and Rotated BRIEF)方式,角点检测(Harris)方式等等
可选地,在本实施例中,在提取特征的过程中,可以对图像进行尺度放大,可以达到增加特征点数的效果。
可选地,在本实施例中,对UI特征点集合和图像特征点集合进行匹配的过程可以但不限于为分别确定UI特征点集合中的点和图像特征点集合中的点之间的相似度,将该相似度高于相似度阈值的点对确定为候选对应点对。
作为一种可选的方案,将候选对应点对中满足目标匹配条件的对应点对记录到对应点对集合中包括:
S1,确定候选对应点对中每个对应点对的斜率;
S2,将每个对应点对中斜率与目标斜率的差值小于目标斜率差的对应点对确定为满足目标匹配条件的对应点对;
S3,将满足目标匹配条件的对应点对记录到对应点对集合中。
可选地,在本实施例中,可以根据斜率一致的原则去除误对应点对,UI对象上的点在UI对象的区域范围内,那么,在场景图像上能够与这些点匹配的图像点就应该集中在某区域范围内,如果有匹配的图像点距离其他的大部分图像点都较远,则可以认为这样的图像点是无匹配的,其应该不在场景图像中具有UI对象的区域中,可以将这样的点剔除掉,这种距离的远近可以使用候选对应点对的斜率之间的差距来表示,斜率相差较小则表示距离较近,斜率相差较大则表示距离较远。
例如:根据斜率一致的原则去除误对应点对,如过滤掉UI对象与场景图像之间的错误点对,可以计算所有对应点对的斜率ki,求出所有斜率的中位数km,正确对应点对的斜率阈值T=km,则过滤掉错误匹配的特征点对的条件为:|ki-T|>0.1。过滤后的特征点很好的避免了错误对应点对导致的错误识别,同时减少点对数目后,减少了计算量。如图6所示,过滤后的特征点对的匹配效果较好,可以看出斜率一致性保证了无错误匹配的点对。
可选地,在本实施例中,对应点对过滤过程中,采用计算斜率,设置斜率阈值的方法过滤不满足的点对,斜率阈值的设定可以采用计算斜率中位数的方法,也可以采用聚类,统计等方法。
作为一种可选的方案,在确定候选对应点对中每个对应点对的斜率之前,还包括:
S1,在候选对应点对中存在目标图像特征点对应了多个UI特征点的情况下,将多个UI特征点中与目标图像特征点的相似度最高的UI特征点确定为目标图像特征点所对应的目标UI特征点;
S2,删除候选对应点对中除目标对应点对外包括目标图像特征点的对应点对,其中,目标对应点对包括目标图像特征点和目标UI特征点。
可选地,在本实施例中,在UI特征点与图像特征点进行匹配的过程中,可能会出现一个图像特征点对应了多个UI特征点的情况,在这种情况下可以将这些UI特征点中与该图像特征点之间相似度最高的点作为该图像特征点对应的目标UI特征点。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
根据本发明实施例的另一个方面,还提供了一种用于实施上述用户界面对象的识别方法的用户界面对象的识别装置,如图7所示,该装置包括:
获取模块72,用于获取用户界面UI对象与场景图像的对应点对集合,其中,对应点对集合用于记录对应点对,对应点对包括UI对象上的UI特征点和场景图像上与UI特征点对应的图像特征点;
识别模块74,用于根据对应点对的数量在场景图像上识别第一区域,其中,第一区域为在场景图像上与UI对象对应的候选区域;
校准模块76,用于在第一区域满足目标区域条件的情况下,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域,其中,目标区域为识别出的在场景图像上与UI对象对应的区域。
作为一种可选的方案,识别模块包括:第一识别单元,用于在对应点对的数量大于或者等于第一数量的情况下,根据图像特征点在场景图像上的位置识别第一区域;和/或,第二识别单元,用于在对应点对的数量小于第一数量的情况下,根据从UI对象上提取出的UI特征点的数量在场景图像上识别第一区域。
作为一种可选的方案,第一识别单元包括:第一确定子单元,用于在图像特征点中确定第一图像特征点和第二图像特征点;第二确定子单元,用于在场景图像上确定第一图像特征点与第二图像特征点之间连线的中点;第三确定子单元,用于根据第一图像特征点和第二图像特征点在场景图像上的位置确定第一区域相对于UI对象的缩放比例,并根据缩放比例和UI对象的尺寸确定目标尺寸;扩展子单元,用于以中点为中心在场景图像上扩展出目标尺寸的区域作为第一区域。
作为一种可选的方案,第三确定子单元用于:在第一图像特征点与第二图像特征点之间的连线与场景图像的边缘平行的情况下,确定第一区域相对于UI对象的缩放比例为1,并确定目标尺寸为UI对象的尺寸;和/或,在第一图像特征点与第二图像特征点之间的连线与场景图像的边缘不平行的情况下,将第一距离与第二距离的比值确定为缩放比例,并确定目标尺寸为UI对象的尺寸与缩放比例的乘积,其中,第一距离为第一图像特征点与第二图像特征点之间的距离,第二距离为第一图像特征点对应的UI特征点与第二图像特征点对应的UI特征点之间的距离。
作为一种可选的方案,在第一数量为2的情况下,第一确定子单元用于:在对应点对的数量为2的情况下,将图像特征点中的一个图像特征点确定为第一图像特征点,并将图像特征点中的另一个图像特征点确定为第二图像特征点;在对应点对的数量为3的情况下,将图像特征点中的任意一个图像特征点确定为第一图像特征点,并将图像特征点中的另外两个图像特征点之间连线的中点确定为第二图像特征点;在对应点对的数量大于3的情况下,将图像特征点中距离最远的两个图像特征点确定为第一图像特征点和第二图像特征点。
作为一种可选的方案,第二识别单元包括:第四确定子单元,用于在从UI对象上提取出的UI特征点的数量大于或者等于第二数量的情况下,确定场景图像上不具有第一区域;和/或,匹配子单元,用于在从UI对象上提取出的UI特征点的数量小于第二数量的情况下,以UI对象为匹配模板在场景图像上匹配第一区域。
作为一种可选的方案,校准模块包括:第一确定单元,用于将第一区域的长与UI对象的长之间的比值确定为第一尺寸缩放比例,并将第一区域的宽与UI对象的宽之间的比值确定为第二尺寸缩放比例;第二确定单元,用于确定第一尺寸缩放比例与第二尺寸缩放比例的差值;处理单元,用于在差值大于或者等于目标差值的情况下,根据第一尺寸缩放比例与第二尺寸缩放比例中较大的目标尺寸缩放比例对第一区域进行缩放,得到目标区域;和/或,在差值小于目标差值的情况下,将第一区域确定为目标区域。
作为一种可选的方案,处理单元包括:第一缩放子单元,用于在第一尺寸缩放比例与第二尺寸缩放比例中较大的目标尺寸缩放比例大于1的情况下,按照目标尺寸缩放比例对第一区域进行缩放,得到目标区域;和/或,第二缩放子单元,用于在第一尺寸缩放比例与第二尺寸缩放比例中较大的目标尺寸缩放比例小于或者等于1的情况下,将第一区域的尺寸缩放到与UI对象的尺寸相同,得到目标区域。
作为一种可选的方案,上述装置还包括:第一确定模块,用于在第一区域的尺寸满足目标尺寸条件,且第一区域的颜色信息与UI对象的颜色信息之间的相似度高于目标相似度的情况下,确定第一区域满足目标区域条件。
作为一种可选的方案,获取模块包括:提取单元,用于按图像特征提取方式从UI对象上提取UI特征点得到UI特征点集合,并按图像特征提取方式从场景图像上提取图像特征点得到图像特征点集合;匹配单元,用于对UI特征点集合和图像特征点集合进行匹配,得到候选对应点对;记录单元,用于将候选对应点对中满足目标匹配条件的对应点对记录到对应点对集合中。
作为一种可选的方案,记录单元包括:第五确定子单元,用于确定候选对应点对中每个对应点对的斜率;第六确定子单元,用于将每个对应点对中斜率与目标斜率的差值小于目标斜率差的对应点对确定为满足目标匹配条件的对应点对;记录子单元,用于将满足目标匹配条件的对应点对记录到对应点对集合中。
作为一种可选的方案,上述装置还包括:第二确定模块,用于在候选对应点对中存在目标图像特征点对应了多个UI特征点的情况下,将多个UI特征点中与目标图像特征点的相似度最高的UI特征点确定为目标图像特征点所对应的目标UI特征点;删除模块,用于删除候选对应点对中除目标对应点对外包括目标图像特征点的对应点对,其中,目标对应点对包括目标图像特征点和目标UI特征点。
本发明实施例的应用环境可以但不限于参照上述实施例中的应用环境,本实施例中对此不再赘述。本发明实施例提供了用于实施上述实时通信的连接方法的一种可选的具体应用示例。
作为一种可选的实施例,上述用户界面对象的识别方法可以但不限于应用于如图8所示的识别游戏场景图像中的UI对象的场景中。在本场景中,提出了一种优化的基于图像特征匹配的UI对象的识别方法,通过快速判断图像特征点的数目,决定是否可采用特征匹配的方法进行识别。识别过程中,对匹配的特征点进行过滤,去除重复点和误匹配点,提高识别准确率。在场景图像上定位UI对象的过程中,根据对应点对数目采用不同的方法,根据点的分布和位置直接计算场景中UI对象的位置,解决特征点不足,无法计算单应性矩阵的问题。在初步定位出候选区域后,对识别的UI对象的候选区域进行合理性判断,包括UI对象相似性的判断,区域越界判断和校准,区域大小、尺寸的判断,从而提升识别准确率。通过上述识别UI对象的过程可以很好的适应不同分辨率、尺度和光照的场景图像,解决了特征点少造成的UI对象识别效率低的问题,并提出了判断和校准机制,提高识别准确率。
在本实施例中,以游戏场景中识别游戏UI对象为例,提出了一种优化的基于图像特征匹配的游戏UI对象识别方法,如图8所示,该流程包括如下步骤:
步骤1,图像特征点提取。本步骤中,提取特征点选择了SIFT特征,因为在游戏场景下,受识别UI对象大小的影响,一些图像难以提取足够的特征点,与SURF特征等相比,SIFT的优点在于可以提取更多的关键点。
步骤2,特征点匹配和过滤。对对应点对进行筛选过滤,包括以下两点:
1、不允许场景图像中的同一个图像特征点匹配到UI对象中的多个UI特征点。如果出现这种情况,将多个UI特征点中与该图像特征点相似度最高的点作为目标UI特征点。
2、根据斜率一致的原则去除误匹配点对,计算所有对应点对的斜率ki,求出所有斜率的中位数,正确匹配点对的斜率阈值,则过滤错误匹配的特征点对的条件为:。过滤后的特征点很好的避免了错误匹配点对导致的错误识别,同时减少点对数目后,减少了计算量。
步骤3,定位UI对象。
常用的定位UI对象方法采用单应性映射方法,即当匹配图像在满足4个对应点对的最低要求后,对对应点对进行单应性映射操作,OpenCV中通过findHomograpy方法寻找单单应性矩阵,然后perspectiveTransform方法进行透视变换得到相应的映射面,用4个角点定位区域。
在本步骤中,计算场景图像和UI对象的对应点对数目,不同点对数采用不同的方法,根据点的分布和位置直接计算场景中UI对象位置,主要解决单应性映射定位方法存在的以下问题:
对应点对数目少于4个,无法进行单应性映射操作,导致对象未识别。映射区域畸形,不能确保得到和UI对象图相同的矩形区域。映射点经过空间的透射变换,可能会出现在场景图像区域外的情况,无法得到正确的对象区域,导致错误识别。
本步骤中采用的定位UI对象的方法如下:
首先,计算过滤后的场景图像和UI对象对应点对的数目。再根据对应点对直接计算场景图像中UI对象的位置,可分为以下情况:
情况1,对应点对数目为0或1。这种特征点极少的情况下,判断UI对象中提取的UI特征点的数目,如果UI特征点数大于目标数值,说明UI对象有足够的特征点,但是未匹配足够的图像特征点,则判断该场景图像中不包含UI对象,避免不包含UI对象的场景图的错误识别。反之,如果UI对象中提取的UI特征点数小于目标数值,为了避免特征点少导致的漏识别,可以对这种少数情况采用多尺度的模板匹配进行UI识别。
情况2,对应点对数目为2。判断两个图像特征点p1和p2的位置关系,即点和是否平行于图像边缘,如果存在或,则计算两个点的中点,以为中心扩展和UI对象同样大小的区域,即为场景图像中匹配的UI对象的候选区域。如果且,则先根据匹配的2个点对计算UI对象和场景图中匹配区域的尺度缩放比例,再以为中心扩展对应尺度的UI对象区域,以此定位UI对象。定位的过程中,如果出现越界的情况,将对应坐标校准到场景图像的边缘。
情况3,对应点对数目为3。选择其中1个点作为p1(x1,y1),计算剩余2个点的中点作为p2(x2,y2),然后按照上面对应点对数目为2的情况进行UI对象的定位。
情况4,对应点对数目大于3。用于定位的两个点和的计算方法可以为:p1(x1,y1)=p1(xmin,ymin),p2(x2,y2)=p2(xmax,ymax),然后按照对应点对数目为2的情况进行UI对象的定位。
本步骤中UI对象的定位过程,可以处理对应点对少的情况,又减少了单应性矩阵和透视变换复杂的计算,简单快速。
步骤4,UI对象区域判断和校准。在日常生活场景中,基于特征匹配和模板匹配的方法识别UI对象,定位的区域一般是正确的,但是复杂多样的游戏,识别错误率较高,本步骤中提出的对象区域判断和校准过程有效降低了错误率,可以包括以下方式:
方式1,对象区域大小的判断。合理的UI对象匹配区域大小应满足长和宽均不小于一定数量的像素值(比如:4个,5个,6个等等),太小的区域包含的有效特征少,往往不作为标识场景的UI对象。
方式2,对象区域尺寸比例的判断。本实施例识别UI对象可适应不同分辨率产生的UI对象尺度变化,但是合理的长宽尺寸缩放比例范围控制在一个预定的尺寸范围内(比如:1-3之间,0.4-2之间等等),超出这个范围即为错误匹配。
方式3,对象区域相似度判断。将匹配的对象候选区域和UI对象分为左右两个区域,分别计算其在rgb色彩空间上三个通道的均值差,同时计算对象候选区域和UI对象在hsv色彩空间上v通道上亮度的均值差,满足对象区域相似度判断的条件为所有均值均相近,即,。相似度的判断很好的识别了错误匹配,部分匹配和游戏场景中经常出现的带有蒙板的UI对象,特征匹配到的对象区域由于弹窗出现,带有蒙板,即当前并非可操作对象,如果不进行判断,会导致游戏场景识别错误,相应的操作失败等问题的出现。
方式4,对象区域校准,不同的分辨率在游戏UI对象识别的过程中,可能会导致长和宽的尺度缩放比例不同,使定位的区域比例不合理,本步骤对这种情况进行了对象区域校准,如图9所示。校准方法为分别计算匹配的候选区域相对于UI对象长和宽的尺度缩放比例,如果长和宽的缩放比例相差超过0.3,则长和宽均以较大的缩放比例进行缩放,如果该缩放比例小于1,则按缩放比例为1进行校准。
通过上述步骤,在游戏UI对象的识别过程中,可以较好的适应不同分辨率,提高识别的准确率,降低未识别率,其中简单有效的UI对象定位方法减少了计算量,对象区域判断和校准有效降低了现有方法匹配的错误率。
可选地,在本实施例中,在UI对象的定位过程中,根据对应点对直接计算场景中UI对象位置,划分为4种情况,也可以通过对应点对数目,划分为其他几种情况,用于定位的两个点对不限于本实施例中的选择方法。
可选地,在本实施例中,对象区域判断过程中可以根据需求设置其他的大小、尺寸比例条件,相似度判断过程中可以不对图像进行划分区域或者划分更细的区域进行判断,色彩空间也可以选择其他的代替,例如HSL等。
根据本发明实施例的又一个方面,还提供了一种用于实施上述用户界面对象的识别方法的电子装置,如图10所示,该电子装置包括:一个或多个(图中仅示出一个)处理器1002、存储器1004、传感器1006、编码器1008以及传输装置1010,该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取用户界面UI对象与场景图像的对应点对集合,其中,对应点对集合用于记录对应点对,对应点对包括UI对象上的UI特征点和场景图像上与UI特征点对应的图像特征点;
S2,根据对应点对的数量在场景图像上识别第一区域,其中,第一区域为在场景图像上与UI对象对应的候选区域;
S3,在第一区域满足目标区域条件的情况下,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域,其中,目标区域为识别出的在场景图像上与UI对象对应的区域。
可选地,本领域普通技术人员可以理解,图10所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图10其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图10中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图10所示不同的配置。
其中,存储器1002可用于存储软件程序以及模块,如本发明实施例中的用户界面对象的识别方法和装置对应的程序指令/模块,处理器1004通过运行存储在存储器1002内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的目标组件的控制方法。存储器1002可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1002可进一步包括相对于处理器1004远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置1010用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1010包括一个网络适配器(NetworkInterface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1010为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器1002用于存储应用程序。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取用户界面UI对象与场景图像的对应点对集合,其中,对应点对集合用于记录对应点对,对应点对包括UI对象上的UI特征点和场景图像上与UI特征点对应的图像特征点;
S2,根据对应点对的数量在场景图像上识别第一区域,其中,第一区域为在场景图像上与UI对象对应的候选区域;
S3,在第一区域满足目标区域条件的情况下,根据第一区域和UI对象的尺寸缩放比例对第一区域进行校准,得到目标区域,其中,目标区域为识别出的在场景图像上与UI对象对应的区域。
可选地,存储介质还被设置为存储用于执行上述实施例中的方法中所包括的步骤的计算机程序,本实施例中对此不再赘述。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (13)
1.一种用户界面对象的识别方法,其特征在于,包括:
获取用户界面UI对象与场景图像的对应点对集合,其中,所述对应点对集合用于记录对应点对,所述对应点对包括所述UI对象上的UI特征点和所述场景图像上与所述UI特征点对应的图像特征点,包括:按图像特征提取方式从所述UI对象上提取UI特征点得到UI特征点集合,并按所述图像特征提取方式从所述场景图像上提取图像特征点得到图像特征点集合;对所述UI特征点集合和所述图像特征点集合进行匹配,得到候选对应点对;将所述候选对应点对中满足目标匹配条件的对应点对记录到所述对应点对集合中,包括:确定所述候选对应点对中每个对应点对的斜率;将所述每个对应点对中所述斜率与目标斜率的差值小于目标斜率差的对应点对确定为满足所述目标匹配条件的对应点对;将所述满足目标匹配条件的对应点对记录到所述对应点对集合中;
根据所述对应点对的数量在所述场景图像上识别第一区域,其中,所述第一区域为在场景图像上与所述UI对象对应的候选区域;
在所述第一区域满足目标区域条件的情况下,根据所述第一区域和所述UI对象的尺寸缩放比例对所述第一区域进行校准,得到目标区域,其中,所述目标区域为识别出的在所述场景图像上与所述UI对象对应的区域。
2.根据权利要求1所述的方法,其特征在于,根据所述对应点对的数量在所述场景图像上识别所述第一区域包括:
在所述对应点对的数量大于或者等于第一数量的情况下,根据所述图像特征点在所述场景图像上的位置识别所述第一区域;和/或,
在所述对应点对的数量小于第一数量的情况下,根据从所述UI对象上提取出的UI特征点的数量在所述场景图像上识别所述第一区域。
3.根据权利要求2所述的方法,其特征在于,根据所述图像特征点在所述场景图像上的位置识别所述第一区域包括:
在所述图像特征点中确定第一图像特征点和第二图像特征点;
在所述场景图像上确定所述第一图像特征点与第二图像特征点之间连线的中点;
根据所述第一图像特征点和所述第二图像特征点在所述场景图像上的位置确定所述第一区域相对于所述UI对象的缩放比例,并根据所述缩放比例和所述UI对象的尺寸确定目标尺寸;
以所述中点为中心在所述场景图像上扩展出所述目标尺寸的区域作为所述第一区域。
4.根据权利要求3所述的方法,其特征在于,根据所述第一图像特征点和所述第二图像特征点在所述场景图像上的位置确定所述第一区域相对于所述UI对象的缩放比例,并根据所述缩放比例和所述UI对象的尺寸确定目标尺寸包括:
在所述第一图像特征点与所述第二图像特征点之间的连线与所述场景图像的边缘平行的情况下,确定所述第一区域相对于所述UI对象的缩放比例为1,并确定所述目标尺寸为所述UI对象的尺寸;和/或,
在所述第一图像特征点与所述第二图像特征点之间的连线与所述场景图像的边缘不平行的情况下,将第一距离与第二距离的比值确定为所述缩放比例,并确定所述目标尺寸为所述UI对象的尺寸与所述缩放比例的乘积,其中,所述第一距离为所述第一图像特征点与所述第二图像特征点之间的距离,所述第二距离为所述第一图像特征点对应的UI特征点与所述第二图像特征点对应的UI特征点之间的距离。
5.根据权利要求3所述的方法,其特征在于,在所述第一数量为2的情况下,在所述图像特征点中确定第一图像特征点和第二图像特征点包括:
在所述对应点对的数量为2的情况下,将所述图像特征点中的一个图像特征点确定为所述第一图像特征点,并将所述图像特征点中的另一个图像特征点确定为所述第二图像特征点;
在所述对应点对的数量为3的情况下,将所述图像特征点中的任意一个图像特征点确定为所述第一图像特征点,并将所述图像特征点中的另外两个图像特征点之间连线的中点确定为所述第二图像特征点;
在所述对应点对的数量大于3的情况下,将所述图像特征点中距离最远的两个图像特征点确定为所述第一图像特征点和所述第二图像特征点。
6.根据权利要求2所述的方法,其特征在于,根据从所述UI对象上提取出的UI特征点的数量在所述场景图像上识别所述第一区域包括:
在从所述UI对象上提取出的UI特征点的数量大于或者等于第二数量的情况下,确定所述场景图像上不具有所述第一区域;和/或,
在从所述UI对象上提取出的UI特征点的数量小于第二数量的情况下,以所述UI对象为匹配模板在所述场景图像上匹配所述第一区域。
7.根据权利要求1所述的方法,其特征在于,根据所述第一区域和所述UI对象的尺寸缩放比例对所述第一区域进行校准,得到所述目标区域包括:
将所述第一区域的长与所述UI对象的长之间的比值确定为第一尺寸缩放比例,并将所述第一区域的宽与所述UI对象的宽之间的比值确定为第二尺寸缩放比例;
确定所述第一尺寸缩放比例与所述第二尺寸缩放比例的差值;
在所述差值大于或者等于目标差值的情况下,根据所述第一尺寸缩放比例与所述第二尺寸缩放比例中较大的目标尺寸缩放比例对所述第一区域进行缩放,得到所述目标区域;和/或,在所述差值小于目标差值的情况下,将所述第一区域确定为所述目标区域。
8.根据权利要求7所述的方法,其特征在于,根据所述第一尺寸缩放比例与所述第二尺寸缩放比例中较大的目标尺寸缩放比例对所述第一区域进行缩放,得到所述目标区域包括:
在所述第一尺寸缩放比例与所述第二尺寸缩放比例中较大的目标尺寸缩放比例大于1的情况下,按照所述目标尺寸缩放比例对所述第一区域进行缩放,得到所述目标区域;和/或,
在所述第一尺寸缩放比例与所述第二尺寸缩放比例中较大的目标尺寸缩放比例小于或者等于1的情况下,将所述第一区域的尺寸缩放到与所述UI对象的尺寸相同,得到所述目标区域。
9.根据权利要求1所述的方法,其特征在于,在根据所述第一区域和所述UI对象的尺寸缩放比例对所述第一区域进行校准,得到所述目标区域之前,所述方法还包括:
在所述第一区域的尺寸满足目标尺寸条件,且所述第一区域的颜色信息与所述UI对象的颜色信息之间的相似度高于目标相似度的情况下,确定所述第一区域满足所述目标区域条件。
10.根据权利要求1所述的方法,其特征在于,在确定所述候选对应点对中每个对应点对的斜率之前,所述方法还包括:
在所述候选对应点对中存在目标图像特征点对应了多个UI特征点的情况下,将所述多个UI特征点中与所述目标图像特征点的相似度最高的UI特征点确定为所述目标图像特征点所对应的目标UI特征点;
删除所述候选对应点对中除目标对应点对外包括所述目标图像特征点的对应点对,其中,所述目标对应点对包括所述目标图像特征点和所述目标UI特征点。
11.一种用户界面对象的识别装置,其特征在于,包括:
获取模块,用于获取用户界面UI对象与场景图像的对应点对集合,其中,所述对应点对集合用于记录对应点对,所述对应点对包括所述UI对象上的UI特征点和所述场景图像上与所述UI特征点对应的图像特征点;
所述获取模块包括:提取单元,用于按图像特征提取方式从所述UI对象上提取UI特征点得到UI特征点集合,并按所述图像特征提取方式从所述场景图像上提取图像特征点得到图像特征点集合;匹配单元,用于对所述UI特征点集合和所述图像特征点集合进行匹配,得到候选对应点对;记录单元,用于将所述候选对应点对中满足目标匹配条件的对应点对记录到所述对应点对集合中;
所述记录单元包括:第五确定子单元,用于确定所述候选对应点对中每个对应点对的斜率;第六确定子单元,用于将所述每个对应点对中所述斜率与目标斜率的差值小于目标斜率差的对应点对确定为满足所述目标匹配条件的对应点对;记录子单元,用于将所述满足目标匹配条件的对应点对记录到所述对应点对集合中;
识别模块,用于根据所述对应点对的数量在所述场景图像上识别第一区域,其中,所述第一区域为在场景图像上与所述UI对象对应的候选区域;
校准模块,用于在所述第一区域满足目标区域条件的情况下,根据所述第一区域和所述UI对象的尺寸缩放比例对所述第一区域进行校准,得到目标区域,其中,所述目标区域为识别出的在所述场景图像上与所述UI对象对应的区域。
12.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至10任一项中所述的方法。
13.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至10任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910134144.9A CN109919164B (zh) | 2019-02-22 | 2019-02-22 | 用户界面对象的识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910134144.9A CN109919164B (zh) | 2019-02-22 | 2019-02-22 | 用户界面对象的识别方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109919164A CN109919164A (zh) | 2019-06-21 |
CN109919164B true CN109919164B (zh) | 2021-01-05 |
Family
ID=66962122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910134144.9A Active CN109919164B (zh) | 2019-02-22 | 2019-02-22 | 用户界面对象的识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109919164B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110751013B (zh) * | 2019-08-19 | 2024-08-20 | 腾讯科技(深圳)有限公司 | 场景识别方法、装置和计算机可读存储介质 |
CN111079730B (zh) * | 2019-11-20 | 2023-12-22 | 北京云聚智慧科技有限公司 | 一种在界面图中确定样图所在区域的方法和电子设备 |
KR20220055969A (ko) | 2020-10-27 | 2022-05-04 | 삼성에스디에스 주식회사 | 비표준 사용자 인터페이스 객체 식별 시스템 및 방법 |
GB2632642A (en) * | 2023-08-09 | 2025-02-19 | Sony Interactive Entertainment Inc | Image based program state analysis system and method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105528602A (zh) * | 2015-10-30 | 2016-04-27 | 小米科技有限责任公司 | 区域识别方法及装置 |
EP3161599A1 (en) * | 2014-06-24 | 2017-05-03 | Google, Inc. | Computerized systems and methods for rendering a user interface element |
CN107274442A (zh) * | 2017-07-04 | 2017-10-20 | 北京云测信息技术有限公司 | 一种图像识别方法和装置 |
CN109271228A (zh) * | 2018-09-28 | 2019-01-25 | 珠海市君天电子科技有限公司 | 应用的界面功能识别方法、装置及电子设备 |
-
2019
- 2019-02-22 CN CN201910134144.9A patent/CN109919164B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3161599A1 (en) * | 2014-06-24 | 2017-05-03 | Google, Inc. | Computerized systems and methods for rendering a user interface element |
CN105528602A (zh) * | 2015-10-30 | 2016-04-27 | 小米科技有限责任公司 | 区域识别方法及装置 |
CN107274442A (zh) * | 2017-07-04 | 2017-10-20 | 北京云测信息技术有限公司 | 一种图像识别方法和装置 |
CN109271228A (zh) * | 2018-09-28 | 2019-01-25 | 珠海市君天电子科技有限公司 | 应用的界面功能识别方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109919164A (zh) | 2019-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11830230B2 (en) | Living body detection method based on facial recognition, and electronic device and storage medium | |
US11151723B2 (en) | Image segmentation method, apparatus, and fully convolutional network system | |
CN109919164B (zh) | 用户界面对象的识别方法及装置 | |
CN110705405B (zh) | 目标标注的方法及装置 | |
CN106254933B (zh) | 字幕提取方法及装置 | |
CN111124888B (zh) | 录制脚本的生成方法和装置及电子装置 | |
CN113011403B (zh) | 手势识别方法、系统、介质及设备 | |
CN109409377B (zh) | 图像中文字的检测方法及装置 | |
CN108335307A (zh) | 基于暗原色的自适应烟叶图片分割方法及系统 | |
CN109948420B (zh) | 人脸比对方法、装置及终端设备 | |
CN109116129B (zh) | 终端检测方法、检测设备、系统及存储介质 | |
CN110675425B (zh) | 一种视频边框识别方法、装置、设备及介质 | |
CN112529004A (zh) | 智能图像识别方法、装置、计算机设备及存储介质 | |
CN112348778A (zh) | 一种物体识别方法、装置、终端设备及存储介质 | |
CN108960280B (zh) | 一种图片相似度检测方法及系统 | |
CN111553302B (zh) | 关键帧选取方法、装置、设备及计算机可读存储介质 | |
CN110866473B (zh) | 目标对象的跟踪检测方法及装置、存储介质、电子装置 | |
CN109213515B (zh) | 多平台下埋点归一方法及装置和电子设备 | |
CN111080665A (zh) | 图像边框识别方法、装置、设备和计算机存储介质 | |
CN111738310B (zh) | 物料分类方法、装置、电子设备和存储介质 | |
CN118858292A (zh) | 一种主板检测方法及装置、设备、存储介质 | |
CN116993654B (zh) | 摄像头模组缺陷检测方法、装置、设备、存储介质及产品 | |
CN113449545A (zh) | 数据处理方法、装置、存储介质和处理器 | |
CN116543249A (zh) | 模型训练方法、质量评估方法、装置以及电子设备 | |
CN107967447B (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 |