首页 / 专利库 / 软件 / 复合控件 / 界面图片的识别方法及装置

界面图片的识别方法及装置

阅读:891发布:2020-05-17

专利汇可以提供界面图片的识别方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种界面图片的识别方法及装置,涉及 电子 信息领域,该方法包括:获取待识别的界面图片;根据预设的对象识别规则,确定所述界面图片中包含的界面对象的对象 属性信息 ;根据所述界面图片中包含的界面对象的对象属性信息,识别所述界面图片中包含的界面对象;根据所述界面图片中包含的界面对象识别所述界面图片。该方式能够将存在关联关系的图片元素和文本元素作为一个整体性对象进行识别,使一个对象内部的图片识别结果以及文本识别结果高度关联,进而提升了界面图片的识别效率和准确性,避免了 现有技术 中无法对已经处于分离状态的图片识别结果以及文本识别结果进行无缝拼接的问题。,下面是界面图片的识别方法及装置专利的具体信息内容。

1.一种界面图片的识别方法,包括:
获取待识别的界面图片;
根据预设的对象识别规则,确定所述界面图片中包含的界面对象的对象属性信息
根据所述界面图片中包含的界面对象的对象属性信息,识别所述界面图片中包含的界面对象;
根据所述界面图片中包含的界面对象识别所述界面图片。
2.根据权利要求1所述的方法,其中,所述对象识别规则包括:根据预设的对象识别模型进行识别的规则;则所述方法执行之前,进一步包括:
获取样本图片以及与所述样本图片相对应的样本标注信息,根据预设的机器学习算法对所述样本图片以及与所述样本图片相对应的样本标注信息进行训练,以得到所述预设的对象识别模型。
3.根据权利要求2所述的方法,其中,所述样本标注信息包括:所述样本图片中包含的样本对象的对象属性信息;
其中,所述样本对象的对象属性信息和/或所述界面对象的对象属性信息包括以下中的至少一个:对象位置、对象尺寸、对象形状、对象名称、对象类型、以及对象结构;其中,所述界面对象包括:组件、和/或控件。
4.根据权利要求3所述的方法,其中,所述对象类型包括以下中的至少一个:按钮类型、输入框类型、文本类型以及复合类型;
所述对象结构包括:对象中包含的元素数量以及各个元素之间的关系;其中,所述各个元素之间的关系包括:父子关系、兄弟关系、和/或相对位置关系。
5.根据权利要求1-4任一所述的方法,其中,所述根据所述界面图片中包含的界面对象的对象属性信息,识别所述界面图片中包含的界面对象包括:
根据所述界面图片中包含的界面对象的对象属性信息,确定所述界面图片中包含的界面对象的数量;
分别针对所述界面图片中包含的每个界面对象,根据该界面对象的对象属性信息确定该界面对象在所述界面图片中的对象区域,根据所述对象区域对该界面对象进行识别。
6.根据权利要求1-5任一所述的方法,其中,所述界面图片为程序界面图片,则所述根据所述界面图片中包含的界面对象识别所述界面图片之后,进一步包括:
根据预设的对象代码库,确定所述界面图片中包含的界面对象的对象代码,并根据所述界面图片中包含的界面对象的对象代码创建所述与所述界面图片相对应的界面代码。
7.根据权利要求1-6任一所述的方法,其中,所述界面图片为餐品类界面图片,所述界面图片中包含的界面对象为餐品类对象。
8.一种界面图片的识别装置,包括:
获取模,适于获取待识别的界面图片;
属性确定模块,适于根据预设的对象识别规则,确定所述界面图片中包含的界面对象的对象属性信息;
对象识别模块,适于根据所述界面图片中包含的界面对象的对象属性信息,识别所述界面图片中包含的界面对象;
图片识别模块,适于根据所述界面图片中包含的界面对象识别所述界面图片。
9.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7中任一项所述的界面图片的识别方法对应的操作。
10.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-7中任一项所述的界面图片的识别方法对应的操作。

说明书全文

界面图片的识别方法及装置

技术领域

[0001] 本发明涉及电子信息领域,具体涉及一种界面图片的识别方法及装置。

背景技术

[0002] 目前,在许多应用场景中,都需要对应用界面、用户界面软件界面中包含的界面图片进行识别,以确定界面图片中包含的具体信息,进而实现针对该界面图片进行测试或编程等目的。
[0003] 在现有技术中,针对界面图片进行识别时,由于一张界面图片通常由多个界面元素组成(例如,包括文本元素、图片元素等各类元素),因此,大多采用如下方式实现:首先,识别界面图片中包含的各个元素;然后,针对识别出的各个元素进行组装,以得到完整的界面图片。
[0004] 但是,发明人在实现本发明的过程中,发现上述方式至少存在如下问题:当界面图片中同时包含图片元素以及文本元素时,上述方案将分别针对图片元素和文本元素进行识别,从而导致图片识别结果与文本识别结果相互割裂,从而处于分离状态。然而,当图片元素与文本元素之间存在关联关系时,则无法对已经处于分离状态的图片识别结果以及文本识别结果进行无缝拼接。

发明内容

[0005] 鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种界面图片的识别方法及装置。
[0006] 根据本发明的一个方面,提供了一种界面图片的识别方法,包括:
[0007] 获取待识别的界面图片;
[0008] 根据预设的对象识别规则,确定所述界面图片中包含的界面对象的对象属性信息
[0009] 根据所述界面图片中包含的界面对象的对象属性信息,识别所述界面图片中包含的界面对象;
[0010] 根据所述界面图片中包含的界面对象识别所述界面图片。
[0011] 可选地,所述对象识别规则包括:根据预设的对象识别模型进行识别的规则;则所述方法执行之前,进一步包括:
[0012] 获取样本图片以及与所述样本图片相对应的样本标注信息,根据预设的机器学习算法对所述样本图片以及与所述样本图片相对应的样本标注信息进行训练,以得到所述预设的对象识别模型。
[0013] 可选地,所述样本标注信息包括:所述样本图片中包含的样本对象的对象属性信息;
[0014] 其中,所述样本对象的对象属性信息和/或所述界面对象的对象属性信息包括以下中的至少一个:对象位置、对象尺寸、对象形状、对象名称、对象类型、以及对象结构;其中,所述界面对象包括:组件、和/或控件。
[0015] 可选地,所述对象类型包括以下中的至少一个:按钮类型、输入框类型、文本类型以及复合类型;
[0016] 所述对象结构包括:对象中包含的元素数量以及各个元素之间的关系;其中,所述各个元素之间的关系包括:父子关系、兄弟关系、和/或相对位置关系。
[0017] 可选地,所述根据所述界面图片中包含的界面对象的对象属性信息,识别所述界面图片中包含的界面对象包括:
[0018] 根据所述界面图片中包含的界面对象的对象属性信息,确定所述界面图片中包含的界面对象的数量;
[0019] 分别针对所述界面图片中包含的每个界面对象,根据该界面对象的对象属性信息确定该界面对象在所述界面图片中的对象区域,根据所述对象区域对该界面对象进行识别。
[0020] 可选地,所述界面图片为程序界面图片,则所述根据所述界面图片中包含的界面对象识别所述界面图片之后,进一步包括:
[0021] 根据预设的对象代码库,确定所述界面图片中包含的界面对象的对象代码,并根据所述界面图片中包含的界面对象的对象代码创建所述与所述界面图片相对应的界面代码。
[0022] 可选地,所述界面图片为餐品类界面图片,所述界面图片中包含的界面对象为餐品类对象。
[0023] 根据本发明的另一个方面,提供了一种界面图片的识别装置,包括:
[0024] 获取模,适于获取待识别的界面图片;
[0025] 属性确定模块,适于根据预设的对象识别规则,确定所述界面图片中包含的界面对象的对象属性信息;
[0026] 对象识别模块,适于根据所述界面图片中包含的界面对象的对象属性信息,识别所述界面图片中包含的界面对象;
[0027] 图片识别模块,适于根据所述界面图片中包含的界面对象识别所述界面图片。
[0028] 可选地,所述对象识别规则包括:根据预设的对象识别模型进行识别的规则;则所述属性确定模块进一步适于:
[0029] 获取样本图片以及与所述样本图片相对应的样本标注信息,根据预设的机器学习算法对所述样本图片以及与所述样本图片相对应的样本标注信息进行训练,以得到所述预设的对象识别模型。
[0030] 可选地,所述样本标注信息包括:所述样本图片中包含的样本对象的对象属性信息;
[0031] 其中,所述样本对象的对象属性信息和/或所述界面对象的对象属性信息包括以下中的至少一个:对象位置、对象尺寸、对象形状、对象名称、对象类型、以及对象结构;其中,所述界面对象包括:组件、和/或控件。
[0032] 可选地,所述对象类型包括以下中的至少一个:按钮类型、输入框类型、文本类型以及复合类型;
[0033] 所述对象结构包括:对象中包含的元素数量以及各个元素之间的关系;其中,所述各个元素之间的关系包括:父子关系、兄弟关系、和/或相对位置关系。
[0034] 可选地,所述对象识别模块具体适于:
[0035] 根据所述界面图片中包含的界面对象的对象属性信息,确定所述界面图片中包含的界面对象的数量;
[0036] 分别针对所述界面图片中包含的每个界面对象,根据该界面对象的对象属性信息确定该界面对象在所述界面图片中的对象区域,根据所述对象区域对该界面对象进行识别。
[0037] 可选地,所述界面图片为程序界面图片,则所述图片识别模块进一步适于:
[0038] 根据预设的对象代码库,确定所述界面图片中包含的界面对象的对象代码,并根据所述界面图片中包含的界面对象的对象代码创建所述与所述界面图片相对应的界面代码。
[0039] 可选地,所述界面图片为餐品类界面图片,所述界面图片中包含的界面对象为餐品类对象。
[0040] 依据本发明的再一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
[0041] 所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如上述的界面图片的识别方法对应的操作。
[0042] 依据本发明的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述的界面图片的识别方法对应的操作。
[0043] 在本发明提供的界面图片的识别方法及装置中,能够根据预设的对象识别规则确定界面图片中包含的界面对象的对象属性信息,并根据界面图片中包含的界面对象的对象属性信息识别该界面图片中包含的界面对象,进而根据该界面图片中包含的界面对象识别该界面图片。由此可见,在本发明提供的方式中,预先设置了对象识别规则,进而能够将界面图片中包含的界面对象作为一个整体进行识别。当图片元素和文本元素之间存在关联关系时,二者通常位于同一个界面对象内,因此,该方式能够将存在关联关系的图片元素和文本元素作为一个整体性对象进行识别,使一个对象内部的图片识别结果以及文本识别结果高度关联,进而提升了界面图片的识别效率和准确性,避免了现有技术中无法对已经处于分离状态的图片识别结果以及文本识别结果进行无缝拼接的问题。
[0044] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。附图说明
[0045] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0046] 图1示出了本发明实施例一提供的一种界面图片的识别方法的流程图
[0047] 图2示出了本发明实施例二提供的一种界面图片的识别方法的流程图;
[0048] 图3示出了本发明实施例三提供的一种界面图片的识别装置的结构图;
[0049] 图4示出了本发明实施例五提供的一种电子设备的结构示意图。

具体实施方式

[0050] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0051] 实施例一
[0052] 图1示出了本发明实施例一提供的一种界面图片的识别方法的流程图。如图1所示,该方法包括:
[0053] 步骤S110:获取待识别的界面图片。
[0054] 其中,待识别的界面图片可以是用户上传的图片,也可以是通过屏幕截图等方式获取的图片,本发明对待识别的界面图片的获取方式不做限定。另外,待识别的界面图片可以是应用界面图片、程序界面图片、或软件界面图片等各种形式的图片。
[0055] 步骤S120:根据预设的对象识别规则,确定该界面图片中包含的界面对象的对象属性信息。
[0056] 其中,预设的对象识别规则可以通过多种方式确定。例如,可以预先通过机器学习算法训练对象识别模型,并基于该对象识别模型确定对象识别规则。又如,还可以预先收集各个界面对象的对象属性信息,并根据收集结果创建对象库,以便根据该对象库进行对象识别。总之,本发明不限定对象识别规则的具体实现方式。根据对象识别规则即可确定界面图片中包含的各个界面对象及其对象属性信息。其中,对象属性信息用于描述界面对象的位置、外观、尺寸等基本信息,凡是能够对界面对象进行描述的信息均可作为对象属性信息。
[0057] 其中,本实施例中的界面对象主要是指:能够实现预设功能的一组封装后的组件、部件或控件。由此可见,凡是能够作为一个整体性对象共同用于实现一组预设功能的部件均可作为一个界面对象。本实施例中的界面对象既可以是开源的各类组件、部件或控件,也可以是由开发人员根据产品功能自定义的组件、部件或控件,本发明对界面对象的具体内涵不做限定。
[0058] 步骤S130:根据该界面图片中包含的界面对象的对象属性信息,识别该界面图片中包含的界面对象。
[0059] 其中,由于界面对象的对象属性信息描述了界面对象的位置、外观、尺寸等基本信息,因此,根据界面对象的对象属性信息能够快速确定界面图片中包含的界面对象的数量及位置区域,进而快速识别出界面图片中包含的各个界面对象。
[0060] 步骤S140:根据该界面图片中包含的界面对象识别该界面图片。
[0061] 在识别出界面图片中包含的界面对象的基础上,进一步识别该界面图片中包含的非对象区域(即除界面对象之外的其他区域),进而得到完整的界面图片识别结果。由于界面图片中包含的界面对象中的各个关联元素均已作为一个整体进行识别,因此,除界面对象之外的非对象区域的范围得以缩小,由此为界面图片的识别带来了便利。
[0062] 由此可见,在本发明提供的界面图片的识别方法中,能够根据预设的对象识别规则确定界面图片中包含的界面对象的对象属性信息,并根据界面图片中包含的界面对象的对象属性信息识别该界面图片中包含的界面对象,进而根据该界面图片中包含的界面对象识别该界面图片。由此可见,在本发明提供的方式中,预先设置了对象识别规则,进而能够将界面图片中包含的界面对象作为一个整体进行识别。当图片元素和文本元素之间存在关联关系时,二者通常位于同一个界面对象内,因此,该方式能够将存在关联关系的图片元素和文本元素作为一个整体性对象进行识别,使一个对象内部的图片识别结果以及文本识别结果高度关联,进而提升了界面图片的识别效率和准确性,避免了现有技术中无法对已经处于分离状态的图片识别结果以及文本识别结果进行无缝拼接的问题。
[0063] 图2示出了本发明实施例二提供的一种界面图片的识别方法的流程图。如图2所示,该方法包括:
[0064] 步骤S200:获取样本图片以及与样本图片相对应的样本标注信息。
[0065] 其中,样本图片的来源可以为多种,例如,可以是通过网络爬虫自动抓取的竞品图片,也可以是需要分析的软件程序的界面截图等,总之,本领域技术人员可根据实际应用场景确定样本图片的来源和获取方式。
[0066] 与样本图片相对应的样本标注信息用于标注样本图片中包含的各个样本对象,具体包括:样本图片中包含的样本对象的对象属性信息。其中,样本对象即为样本图片中包含的界面对象。在本实施例中,界面对象主要是指:通过对数据和/或方法进行封装而得到的能够实现预设功能的操作对象。例如,界面对象可以是能够实现预设功能的组件和/或控件。
[0067] 具体实施时,可以通过人工标注与机器标注相结合的方式来标注样本图片中包含的各个样本对象。例如,先通过机器标注的方式大致识别样本图片中包含的各个样本对象,然后,再通过人工标注的方式对机器标注不准确的对象进行更正。
[0068] 其中,样本对象的对象属性信息用于对样本对象所具有的可供识别的外观类特征进行描述,具体包括以下中的至少一个:用于准确定位该样本对象的对象位置、用于确定该样本对象的对象大小的对象尺寸、对象形状、对象名称、对象类型、以及对象结构。其中,对象类型的划分方式可以有多种,具体包括以下中的至少一个:按钮类型、输入框类型、文本类型以及复合类型。其中,复合类型的对象是指同时包括按钮类型、输入框类型、或文本类型中的至少两种类型的对象。其中,对象结构用于描述对象内部的元素组成,具体包括:对象中包含的元素数量、元素类型以及各个元素之间的关系;其中,各个元素之间的关系包括:父子关系、兄弟关系、和/或相对位置关系。例如,假设一个对象中包含三个元素,分别为位于顶部的图片元素,以及位于底部的文本元素和按钮元素,则通过三个元素的类型以及各个元素之间的相对位置关系描述该对象的结构。另外,当一个对象内部的多个元素之间呈树状结构分布时,根据各个元素处于树状结构中的根节点子节点来确定各个元素间的依赖关系为父子关系或兄弟关系,进而根据各个元素间的依赖关系标注该对象的属性特征。
[0069] 步骤S210:根据预设的机器学习算法对样本图片以及与样本图片相对应的样本标注信息进行训练,以得到预设的对象识别模型。
[0070] 由于样本图片相对应的样本标注信息中包含各个样本对象的对象属性信息,因此,可以根据样本图片以及各个样本对象的对象属性信息训练得到用于提取界面图片中的界面对象的对象属性信息的对象识别模型。具体的机器学习算法可以为卷积神经网络算法(简称CNN算法)等各类算法。
[0071] 具体实施时,可以将样本图片以及样本标注信息上传到用于实现机器学习的训练平台中,以便进行机器学习的训练,并根据训练结果生成对象识别模型。为了便于在后续步骤中调用该对象识别模型,本实施例在生成对象识别模型之后,进一步为该对象识别模型设置用于调用该模型的API接口,通过该API接口能够快速便捷地调用该对象识别模型,进而实现将待识别的界面图片输入对象识别模型,并获取对象识别模型针对该待识别的界面图片进行识别后得到的识别结果。
[0072] 步骤S220:获取待识别的界面图片。
[0073] 在本实施例中,获取待识别的界面图片时,可以根据用户上传的图片获取。例如,用户将待识别的界面截图上传到用于实施本方法的系统中即可。
[0074] 步骤S230:根据预设的对象识别模型,确定该界面图片中包含的界面对象的对象属性信息。
[0075] 由于该对象识别模型提供了用于调用的API接口,因此,直接调用该对象识别模型中提供的API接口即可将获取到的待识别的界面图片输入对象识别模型中。该对象识别模型用于针对该待识别的界面图片进行识别,以获取其中包含的界面对象的对象属性信息,并将获取到界面对象的对象属性信息返回至用于实施本方法的系统中。
[0076] 具体地,界面图片中包含的界面对象的对象属性信息与步骤S200中的样本对象的对象属性信息类似,直接参照步骤S200中的样本对象的对象属性信息的内涵及获取方式即可,此处不再赘述。
[0077] 步骤S240:根据该界面图片中包含的界面对象的对象属性信息,识别该界面图片中包含的界面对象。
[0078] 具体地,由于界面图片中包含的界面对象的对象属性信息对界面对象的外观类特征进行了准确描述,因此,基于该界面对象的对象属性信息能够快速而准确地识别该界面图片中包含的界面对象。具体实施时,可以根据界面图片中包含的界面对象的对象属性信息,确定界面图片中包含的界面对象的数量;分别针对界面图片中包含的每个界面对象,根据该界面对象的对象属性信息确定该界面对象在界面图片中的对象区域,根据该对象区域对该界面对象进行识别。
[0079] 例如,界面对象的对象位置、对象尺寸以及对象形状能够用于确定该界面对象位于界面图片中的对象区域(即大致范围),进而能够在该对象区域内针对该对象进行准确识别,以获取该对象的具体内容信息。另外,界面对象的对象类型以及对象结构能够为对象的识别提供便利。比如,根据对象类型能够快速确定该对象为按钮或输入框,进而根据分别对应于不同类型的界面对象的分类识别程序进行识别,该分类识别程序可预先通过训练方式得到,用于识别指定类型的对象,以便充分结合该类型对象的特点进行识别,以提升识别效率。又如,根据对象结构能够快速确定该对象中包含的各个元素的数量和元素类型,以及各个元素之间的依赖关系,进而基于各元素间的依赖关系快速识别出整个对象。
[0080] 具体识别时,需要基于界面对象的对象属性信息,识别出该界面对象的具体细节性特征。比如,对象识别模型无法分析界面对象的字体大小以及颜色等附加特征,因此,需要在本步骤中进一步识别出该界面对象中包含的文字的字体大小、颜色等附加特征。另外,对象识别模型分析界面对象的对象属性信息时,往往是基于绝对位置来确定界面对象的对象位置的(例如根据界面图片中设定的坐标原点来确定该图片中的各个界面对象相对于该坐标原点的绝对位置)。然而,在本步骤中进行识别时,往往需要连续针对多个界面对象进行识别,并且,为了便于根据识别得到的各个界面对象重新拼装出完整的界面图片,在本步骤的识别过程中,需要将对象识别模型确定出的绝对位置转化为相对位置(例如将上一个已经识别出的界面对象的位置作为基准位置,以该基准位置为参考,确定下一个待识别的界面对象的相对位置)。通过将绝对位置转换为相对位置有利于快速准确地根据识别到的各个界面对象还原整个界面图片。
[0081] 步骤S250:根据该界面图片中包含的界面对象识别该界面图片。
[0082] 在识别出界面图片中包含的界面对象的基础上,进一步识别该界面图片中包含的非对象区域(即除界面对象之外的其他区域),进而得到完整的界面图片识别结果。由于界面图片中包含的界面对象中的各个关联元素均已作为一个整体进行识别,因此,除界面对象之外的非对象区域的范围得以缩小,由此为界面图片的识别带来了便利。
[0083] 具体地,在本步骤中,需要对每个界面对象内部所包含的各个元素进行组合式识别,还需要根据多个界面对象之间的相对位置关系对界面图片中包含的多个界面对象进行组合识别,由此将各个界面对象以及各个界面对象内部的各个元素相互关联,进而得到完整的界面图片。
[0084] 综上可知,在本实施例中,预先设置了用于识别界面对象的对象识别模型,根据该模型能够快速准确地识别出界面图片中包含的各个界面对象的对象属性信息,进而基于各个界面对象的对象属性信息,以每个界面对象作为一个整体性的最小识别单元(而非以元素为最小识别单元),该最小识别单元内部的各个元素均作为一个整体性对象进行识别,从而能够直接得到该对象的完整识别信息,后续再基于该界面对象去识别整个界面图片时意义更加完整,识别结果更为准确。避免了现有方式中单独针对一个对象内部的各个元素进行识别,然后再根据识别出的各个元素拼装成原始的对象图片时所导致的元素间分离、意义不完整等缺陷
[0085] 举例而言,假设在一个界面对象的内部包含三个元素,采用现有方式时,需要分别将该界面对象的内部各个元素单独作为一个最小识别单元进行识别,因此,每个元素的识别操作均与其他两个元素的识别操作相互分离且彼此割裂,因此,其他两个元素的识别结果无法作为当前元素的识别依据,由此会导致有效信息缺乏,进而无法准确识别该界面对象。采用本方式后,将该界面对象作为一个整体性对象进行识别,其中包含的三个元素的识别操作均隶属于该界面对象的识别操作流程,因此,各个元素的识别结果均可作为其他元素的识别依据,通过结合各个元素的识别结果,能够使得最终识别出的界面对象更加准确,语义内容更丰富。
[0086] 为了便于理解,下面给出本发明的两个具体应用场景。
[0087] 场景一、
[0088] 在该场景中,界面图片为程序界面图片,相应地,在根据界面图片中包含的界面对象识别界面图片之后,进一步根据预设的对象代码库,确定界面图片中包含的界面对象的对象代码,并根据界面图片中包含的界面对象的对象代码创建与界面图片相对应的界面代码。具体地,预先创建一个对象代码库,用于存储各个界面对象所对应的用于实现该界面对象的功能的代码段,相应地,在根据界面图片中包含的界面对象识别界面图片之后,直接根据该对象代码库即可快速确定界面图片中包含的各个界面对象的对象代码,进而快速创建用于实现界面图片所对应的程序功能的界面代码。该方式尤其适用于各类小程序的开发过程,在传统方式中,需要根据小程序的界面截图编写大量的程序代码才能实现该小程序的界面功能。采用本发明中的方式之后,能够快速生成与界面图片相对应的界面代码,显著降低了界面程序的开发成本。
[0089] 场景二、
[0090] 在该场景中,界面图片为餐品类界面图片,且界面图片中包含的界面对象为餐品类对象。例如,为了创建一款用于实现点餐功能的应用,需要预先拍摄各类纸质菜单所对应的图片,然后,基于拍摄的图片中包含的各个餐品生成用于实现点餐功能的应用界面。例如,该应用界面中包含多个餐品类对象,每个餐品类对象由以下元素构成:用于展示餐品原貌的餐品图片元素、用于对餐品进行文字说明的餐品文本元素、以及用于对餐品执行点餐操作的点餐按钮元素。由此可见,通过将本实施例提供的基于整体性对象进行界面识别的方式应用于餐品领域,能够快速准确地识别餐品信息,有利于提升餐品识别效率。
[0091] 本发明中的方式还能够应用于各类场景中,本发明对具体应用场景不做限定。通过本发明中的方式,能够快速找到界面截图中的UI组件,能针对页面进行保真还原,尤其能在菜品识别方向上做出很高的还原度。与现有设计中基于OCR(Optical Character Recognition,光学字符识别)的图文界面把文字和图割裂开进而导致重新拼装很复杂的方式不同,本发明从组件维度进行识别,能很准确地识别到整块组件,并且能够进一步识别组件内部的具体构成元素。
[0092] 实施例三
[0093] 图3示出了本发明实施例三提供的一种界面图片的识别装置的结构示意图,该装置包括:
[0094] 获取模块31,适于获取待识别的界面图片;
[0095] 属性确定模块32,适于根据预设的对象识别规则,确定所述界面图片中包含的界面对象的对象属性信息;
[0096] 对象识别模块33,适于根据所述界面图片中包含的界面对象的对象属性信息,识别所述界面图片中包含的界面对象;
[0097] 图片识别模块34,适于根据所述界面图片中包含的界面对象识别所述界面图片。
[0098] 可选地,所述对象识别规则包括:根据预设的对象识别模型进行识别的规则;则所述属性确定模块32进一步适于:
[0099] 获取样本图片以及与所述样本图片相对应的样本标注信息,根据预设的机器学习算法对所述样本图片以及与所述样本图片相对应的样本标注信息进行训练,以得到所述预设的对象识别模型。
[0100] 可选地,所述样本标注信息包括:所述样本图片中包含的样本对象的对象属性信息;
[0101] 其中,所述样本对象的对象属性信息和/或所述界面对象的对象属性信息包括以下中的至少一个:对象位置、对象尺寸、对象形状、对象名称、对象类型、以及对象结构;其中,所述界面对象包括:组件、和/或控件。
[0102] 可选地,所述对象类型包括以下中的至少一个:按钮类型、输入框类型、文本类型以及复合类型;
[0103] 所述对象结构包括:对象中包含的元素数量以及各个元素之间的关系;其中,所述各个元素之间的关系包括:父子关系、兄弟关系、和/或相对位置关系。
[0104] 可选地,所述对象识别模块33具体适于:
[0105] 根据所述界面图片中包含的界面对象的对象属性信息,确定所述界面图片中包含的界面对象的数量;
[0106] 分别针对所述界面图片中包含的每个界面对象,根据该界面对象的对象属性信息确定该界面对象在所述界面图片中的对象区域,根据所述对象区域对该界面对象进行识别。
[0107] 可选地,所述界面图片为程序界面图片,则所述图片识别模块34进一步适于:
[0108] 根据预设的对象代码库,确定所述界面图片中包含的界面对象的对象代码,并根据所述界面图片中包含的界面对象的对象代码创建所述与所述界面图片相对应的界面代码。
[0109] 可选地,所述界面图片为餐品类界面图片,所述界面图片中包含的界面对象为餐品类对象。
[0110] 关于上述各个模块的具体结构和工作原理可参照方法实施例中相应部分的描述,此处不再赘述。
[0111] 实施例四
[0112] 本申请实施例四提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的界面图片的识别方法。可执行指令具体可以用于使得处理器执行上述方法实施例中对应的各个操作。
[0113] 实施例五
[0114] 图4示出了根据本发明实施例五的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
[0115] 如图4所示,该电子设备可以包括:处理器(processor)402、通信接口(Communications Interface)406、存储器(memory)404、以及通信总线408。
[0116] 其中:
[0117] 处理器402、通信接口406、以及存储器404通过通信总线408完成相互间的通信。
[0118] 通信接口406,用于与其它设备比如客户端或其它服务器等的网元通信。
[0119] 处理器402,用于执行程序410,具体可以执行上述界面图片的识别方法实施例中的相关步骤。
[0120] 具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
[0121] 处理器402可能是中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
[0122] 存储器404,用于存放程序410。存储器404可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
[0123] 程序510具体可以用于使得处理器502执行上述方法实施例中对应的各个操作。
[0124] 在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
[0125] 在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0126] 类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
[0127] 本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0128] 此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0129] 本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的基于语音输入信息的抽奖系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0130] 应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈