CN114691614A - 应用程序搜索方法、设备及介质 - Google Patents
应用程序搜索方法、设备及介质 Download PDFInfo
- Publication number
- CN114691614A CN114691614A CN202011599809.2A CN202011599809A CN114691614A CN 114691614 A CN114691614 A CN 114691614A CN 202011599809 A CN202011599809 A CN 202011599809A CN 114691614 A CN114691614 A CN 114691614A
- Authority
- CN
- China
- Prior art keywords
- application program
- application
- searched
- elements
- confidence
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
- G06F16/152—File search processing using file content signatures, e.g. hash values
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Library & Information Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供了一种应用程序搜索方法、设备及介质,能够在不需要输入搜索关键词的情况下高效准确地搜索APP。该方法包括:获取待搜索应用程序的图像,该图像包括待搜索应用程序的图标;提取待搜索应用程序的图像的组成元素,组成元素包括该图标的图形元素和颜色元素;基于组成元素从应用程序索引库中搜索与待搜索应用程序对应的应用程序,其中,应用程序索引库包含多个应用程序的图像的组成元素。
Description
技术领域
本申请涉及图像处理技术领域,并且更具体地,涉及一种应用程序搜索方法、电子设备及计算机可读存储介质。
背景技术
随着智能手机的普及和移动互联网的日益成熟,大量的手机应用程序(application,APP)使我们日常生活更加便利,如地图类APP,购物类APP,美食评分类APP等。
现有的APP搜索方式主要是基于关键词搜索实现的,即用户输入搜索关键词,根据APP名称或标签按照相关度输出APP搜索结果列表。但是,在实际应用中存在用户无法进行文本搜索的场景,例如以下场景:(1)用户存在读写能力障碍无法输入搜索关键词;(2)用户在跨国旅行途中无法输入当地语言但是需要下载本地APP;(3)用户想要快速搜索APP认为手动输入搜索关键词不方便。因此,需要提供一种不需要输入搜索关键词的高效准确的APP搜索方法。
发明内容
本申请提供一种应用程序搜索方法、电子设备及计算机可读存储介质,能够在不需要输入搜索关键词的情况下高效准确地搜索APP。
第一方面,本申请实施例提供一种应用程序搜索方法,其特征在于,包括:获取待搜索应用程序的图像,所述图像包括所述待搜索应用程序的图标;提取所述待搜索应用程序的图像的组成元素,所述组成元素包括所述图标的图形元素和颜色元素;基于所述组成元素从应用程序索引库中搜索与所述待搜索应用程序对应的应用程序,其中,所述应用程序索引库包含多个应用程序的图像的所述组成元素。
根据本申请实施例中的技术方案,一方面,由于通过图像处理的方式搜索应用程序,不需要输入搜索关键词就能够高效地搜索应用程序;另一方面,由于结合待搜索应用程序的图像的多种组成元素进行搜索,从而能够提高应用程序搜索结果的准确性。
在一种可能的实现方式中,所述组成元素还包括文字元素,所述文字元素包括所述图标中的文字元素和/或所述图标下方的文字元素。
通过提取待搜索应用程序的图像的文字元素,结合文字元素搜索应用程序,能够进一步提高应用程序搜索结果的准确性。
在一种可能的实现方式中,所述基于所述组成元素从应用程序索引库中搜索与所述待搜索应用程序对应的应用程序,包括:确定所述待搜索应用程序的各个组成元素与所述应用程序索引库中各个应用程序的对应组成元素之间的元素相似度,所述元素相似度包括图形相似度、颜色相似度以及文本相似度中的一种或多种;基于所述元素相似度确定与所述待搜索应用程序对应的应用程序。
在一种可能的实现方式中,所述基于所述元素相似度确定与所述待搜索应用程序对应的应用程序,包括:基于所述元素相似度确定与所述待搜索应用程序对应的多个应用程序集合,所述应用程序集合中的各个应用程序为至少一个所述元素相似度大于预定阈值的应用程序;确定各个所述应用程序集合的并集,得到多个候选应用程序;基于所述元素相似度确定各个候选应用程序的程序置信度,所述程序置信度表示所述候选应用程序与所述待搜索应用程序相似的概率;基于所述程序置信度的大小确定与所述待搜索应用程序对应的应用程序。
在一种可能的实现方式中,所述应用程序索引库还包括:所述候选应用程序的对应元素的权重,所述基于所述元素相似度确定各个候选应用程序与所述待搜索应用程序之间的程序置信度,包括:确定所述待搜索应用程序的各个组成元素的权重与所述候选应用程序的对应元素的权重;基于所述待搜索应用程序的各个组成元素的权重、所述候选应用程序的对应元素的权重以及对应的所述元素相似度,确定所述候选应用程序的所述对应元素的元素置信度,所述元素置信度表示所述对应元素属于所述待搜索应用程序的元素的概率;基于所述元素置信度,确定各个候选应用程序的程序置信度。
通过在应用程序索引库中设置组成元素的权重,能够提高应用程序搜索的准确性,从而能够在应用程序产生设计变形时准确地识别该应用程序。
在一种可能的实现方式中,所述确定所述候选应用程序的所述对应元素的元素置信度,包括:将所述待搜索应用程序的所述组成元素的权重、所述候选应用程序的对应组成元素的权重以及对应的所述元素相似度输入到元素评分模型,所述元素评分模型为神经网络模型;通过所述元素评分模型,确定所述候选应用程序的所述对应元素的元素置信度。
在一种可能的实现方式中,所述基于所述元素置信度,确定各个候选应用程序的程序置信度,包括:对所述候选应用程序的各类组成元素下的各个组成元素的元素置信度进行加权求和运算,确定所述候选应用程序的类别元素置信度,所述类别元素置信度表示候选应用程序的一类组成元素均属于所述待搜索应用程序的概率;基于所述类别元素置信度,确定所述候选应用程序的程序置信度。
在一种可能的实现方式中,所述基于所述类别元素置信度,确定所述候选应用程序的类别元素置信度,包括:将各类组成元素的所述类别元素置信度输入到类别评分模型,所述类别评分模型为神经网络模型;通过所述类别评分模型,确定各个候选应用程序的程序置信度。
在一种可能的实现方式中,所述提取所述待搜索应用程序的图像的组成元素包括:通过语义分割模型提取所述待搜索应用程序的图像的图形元素;通过颜色量化模型提取所述待搜索应用程序的图像的颜色元素。
在一种可能的实现方式中,所述组成元素包括文字元素,所述提取所述待搜索应用程序的图像的组成元素还包括:通过字符识别模型提取所述待搜索应用程序的图像的文字元素。
在一种可能的实现方式中,所述应用程序索引库还包括:与所述应用程序的各类组成元素对应的元素特征索引以及元素特征。
第二方面,提供了一种电子设备,所述电子设备包括:图像获取单元,用于获取待搜索应用程序的图像,所述图像包括所述待搜索应用程序的图标;处理单元,用于提取所述待搜索应用程序的图像的组成元素,所述组成元素包括所述图标的图形元素和颜色元素;基于所述组成元素从应用程序索引库中搜索与所述待搜索应用程序对应的应用程序,其中,所述应用程序索引库包含多个应用程序的图像的所述组成元素。
在一种可能的实现方式中,所述组成元素还包括文字元素,所述文字元素包括所述图标中的文字元素和/或所述图标下方的文字元素。
在一种可能的实现方式中,所述处理单元用于:确定所述待搜索应用程序的各个组成元素与所述应用程序索引库中各个应用程序的对应组成元素之间的元素相似度,所述元素相似度包括图形相似度、颜色相似度以及文本相似度中的一种或多种;基于所述元素相似度确定与所述待搜索应用程序对应的应用程序。
在一种可能的实现方式中,所述处理单元用于包括:基于所述元素相似度确定与所述待搜索应用程序对应的多个应用程序集合,所述应用程序集合中的各个应用程序为至少一个所述元素相似度大于预定阈值的应用程序;确定各个所述应用程序集合的并集,得到多个候选应用程序;基于所述元素相似度确定各个候选应用程序的程序置信度,所述程序置信度表示所述候选应用程序与所述待搜索应用程序相似的概率;基于所述程序置信度的大小确定与所述待搜索应用程序对应的应用程序。
在一种可能的实现方式中,所述应用程序索引库还包括:所述候选应用程序的对应元素的权重,所述处理单元用于:确定所述待搜索应用程序的各个组成元素的权重与所述候选应用程序的对应元素的权重;基于所述待搜索应用程序的各个组成元素的权重、所述候选应用程序的对应元素的权重以及对应的所述元素相似度,确定所述候选应用程序的所述对应元素的元素置信度,所述元素置信度表示所述对应元素属于所述待搜索应用程序的元素的概率;基于所述元素置信度,确定各个候选应用程序的程序置信度。
在一种可能的实现方式中,所述处理单元用于:将所述待搜索应用程序的所述组成元素的权重、所述候选应用程序的对应组成元素的权重以及对应的所述元素相似度输入到元素评分模型,所述元素评分模型为神经网络模型;通过所述元素评分模型,确定所述候选应用程序的所述对应元素的元素置信度。
在一种可能的实现方式中,所述基于所述元素置信度,所述处理单元用于:对所述候选应用程序的各类组成元素下的各个组成元素的元素置信度进行加权求和运算,确定所述候选应用程序的类别元素置信度,所述类别元素置信度表示候选应用程序的一类组成元素均属于所述待搜索应用程序的概率;基于所述类别元素置信度,确定所述候选应用程序的程序置信度。
在一种可能的实现方式中,所述处理单元用于:将各类组成元素的所述类别元素置信度输入到类别评分模型,所述类别评分模型为神经网络模型;通过所述类别评分模型,确定各个候选应用程序的程序置信度。
在一种可能的实现方式中,所述处理单元用于:通过语义分割模型提取所述待搜索应用程序的图像的图形元素;通过颜色量化模型提取所述待搜索应用程序的图像的颜色元素。
在一种可能的实现方式中,所述组成元素包括文字元素,所述处理单元用于:通过字符识别模型提取所述待搜索应用程序的图像的文字元素。
在一种可能的实现方式中,所述应用程序索引库还包括:与所述应用程序的各类组成元素对应的元素特征索引以及元素特征。
第三方面,本申请实施例还提供一种计算机可读存储介质,用于存储计算机程序,所述计算机程序包括用于实现上述第一方面或其任意可能的实现方式中的方法的指令。
第四方面,本申请实施例还提供一种计算机程序产品,所述计算机程序产品中包含指令,当所述指令在计算机上运行时,使得计算机实现上述第一方面或其任意可能的实现方式中的方法。
附图说明
图1是本申请实施例提供的电子设备100的结构示意图;
图2是本申请实施例提供的电子设备的软件结构框图;
图3是本申请的一些实施例提供的应用程序搜索方法的流程示意图;
图4是本申请的一些实施例提供的包含应用程序的图标的显示界面的示意图;
图5是本申请的另一些实施例提供的应用程序搜索方法的流程示意图;
图6是本申请的一些实施例提供的包含应用程序的图标的图像的示意图;
图7是本申请的一些实施例提供的对图6进行剪裁处理的图像的示意图;
图8是本申请的一些实施例提供的图7中的应用程序的图像的图形元素的示意图;
图9是本申请的一些实施例提供的检测图7中的应用程序的图像中的文字元素的示意图;
图10是本申请的一些实施例提供的图7中的应用程序的图像的颜色元素的示意图;
图11是本申请的一些实施例提供的候选应用程序的图像的示意图;
图12是本申请的一些实施例提供的初始BP神经网络模型结构的示意图;
图13是本申请的一些实施例提供的应用程序索引库的示意图;
图14是本申请的一些实施例提供的电子设备的示意图。
具体实施方式
在介绍本申请的方法实施例之前,先对本申请实施例中涉及到的技术做如下说明:
组成元素:表示应用程序的图像中包含的元素,包括图形元素、文字元素以及颜色元素。
元素相似度:表示应用程序的图像的组成元素之间相似的程度,例如图形元素的相似度可以用两个图形元素的特征向量的夹角的余弦值表示。
元素置信度:表示应用程序索引库中应用程序的组成元素属于待搜索应用程序的元素的概率。
类别元素置信度:表示候选应用程序的一类组成元素均属于待搜索应用程序的元素的概率。
程序置信度:表示候选应用程序与待搜索应用程序相似的概率。
组成元素的权重:表示该组成元素在应用程序的图标中的重要程度,例如元素权重可以为该元素在应用程序的图像中所占的比例,例如,图形元素的权重可以为该图形元素所占的面积与应用程序的图标的面积的比值,文字元素的权重可以为该文字元素所占的面积与应用程序的图标的面积的比值,颜色元素的权重可以为该颜色元素所占的面积与应用程序的图标的面积的比值。
在一种技术方案中,确定APP图标对应的特征向量,在特征向量数据库中搜索与该特征向量对应的应用程序信息。然而,在APP的图标比较复杂的情况下,这种技术方案识别的准确率较低,难以满足应用需求。
基于上述内容,本申请实施例提供一种应用程序搜索方法,该方法可以应用于具有图像处理装置的电子设备,例如智能手机、平板电脑、可穿戴电子设备等。通过该应用程序搜索方法,该电子设备能够在不需要输入搜索关键词的情况下,在较复杂场景下准确地搜索APP。
下面将结合附图对本申请实施例的实施方式进行详细描述。
首先,先介绍具备具有图像处理装置的电子设备、用于这样的电子设备的用户界面、和用于使用这样的电子设备的实施例。在一些实施例中,电子设备可以是还包含其它功能诸如个人数字助理和/或音乐播放器功能的便携式电子设备,诸如手机、平板电脑、具备无线通讯功能的可穿戴电子设备(如智能手表)等。便携式电子设备的示例性实施例包括但不限于搭载其它操作系统的便携式电子设备。上述便携式电子设备也可以是其它便携式电子设备,诸如膝上型计算机(Laptop)等。还应当理解的是,在其他一些实施例中,上述电子设备也可以不是便携式电子设备,而是台式计算机。
示例性的,图1示出了电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的部件,也可以集成在一个或多个处理器中。在一些实施例中,电子设备101也可以包括一个或多个处理器110。其中,控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。在其他一些实施例中,处理器110中还可以设置存储器,用于存储指令和数据。示例性地,处理器110中的存储器可以为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。这样就避免了重复存取,减少了处理器110的等待时间,因而提高了电子设备101处理数据或执行指令的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路间(inter-integrated circuit,I2C)接口,集成电路间音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,SIM卡接口,和/或USB接口等。其中,USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备101充电,也可以用于电子设备101与外围设备之间传输数据。该USB接口130也可以用于连接耳机,通过耳机播放音频。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
可选地,无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件,其中,一个通信处理模块可以对应于一个网络接口,该网络接口可以设置在不同的业务功能模式,设置在不同模式下的网络接口可以建立与该模式对应的网络连接。。
例如:通过P2P功能模式下的网络接口可以建立支持P2P功能的网络连接,通过STA功能模式下的网络接口可以建立支持STA功能的网络连接,通过AP模式下的网络接口可以建立支持AP功能的网络连接。
无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dotlightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或多个显示屏194。
在本申请的一些实施例中,当显示面板采用OLED、AMOLED、FLED等材料时,上述图1中的显示屏194可以被弯折。这里,上述显示屏194可以被弯折是指显示屏可以在任意部位被弯折到任意角度,并可以在该角度保持,例如,显示屏194可以从中部左右对折。也可以从中部上下对折。本申请中,将可以被弯折的显示屏称为可折叠显示屏。其中,该触摸显示屏可以是一块屏幕,也可以是多块屏幕拼凑在一起组合成的显示屏,在此不做限定。
电子设备100的显示屏194可以是一种柔性屏,目前,柔性屏以其独特的特性和巨大的潜力而备受关注。柔性屏相对于传统屏幕而言,具有柔韧性强和可弯曲的特点,可以给用户提供基于可弯折特性的新交互方式,可以满足用户对于电子设备的更多需求。对于配置有可折叠显示屏的电子设备而言,电子设备上的可折叠显示屏可以随时在折叠形态下的小屏和展开形态下大屏之间切换。因此,用户在配置有可折叠显示屏的电子设备上使用分屏功能,也越来越频繁。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或多个摄像头193。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递业务功能,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储一个或多个计算机程序,该一个或多个计算机程序包括指令。处理器110可以通过运行存储在内部存储器121的上述指令,从而使得电子设备101执行本申请一些实施例中所提供的灭屏显示的方法,以及各种应用以及数据处理等。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统;该存储程序区还可以存储一个或多个应用(比如图库、联系人等)等。存储数据区可存储电子设备101使用过程中所创建的数据(比如照片,联系人等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储部件,闪存部件,通用闪存存储器(universal flash storage,UFS)等。在一些实施例中,处理器110可以通过运行存储在内部存储器121的指令,和/或存储在设置于处理器110中的存储器的指令,来使得电子设备101执行本申请实施例中所提供的灭屏显示的方法,以及其他应用及数据处理。电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
其中,压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,X,Y和Z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
图2是本申请实施例的电子设备100的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
图3是本申请的一些实施例提供的应用程序搜索方法的流程示意图。该方法可以应用于图1所示的电子设备100,该方法可以包括步骤S310至步骤S330,下面结合附图对该方法进行详细的说明。
在步骤S310中,获取待搜索应用程序的图像,该图像包括待搜索应用程序的图标。
在示例实施例中,待搜索应用程序的图像可以包括待搜索应用程序的图标部分以及应用程序的图标下方的文字部分,可以通过电子设备100的摄像头193获取待搜索应用程序的图像。举例而言,假设用户A希望在手机A上安装用户B的手机B上的一个应用程序,例如,图4中的APP1,那么用户A可以通过手机A的摄像头获取该应用程序APP1的图像,该应用程序APP1的图像可以包括该应用程序APP1的图标部分以及应用程序APP1的图标下方的文字部分APP1。
在步骤S320中,提取待搜索应用程序的图像的组成元素,组成元素包括图形元素和颜色元素。
在示例实施例中,通过语义分割模型提取待搜索应用程序的图标的图形元素。具体而言,可以通过图像语义分割模型DeepLabV2提取待搜索应用程序的图标中的图形元素,也可以利用深度可分离卷积模型提取待搜索应用程序的图标中的图形元素,图形元素可以包括待搜索应用程序的图形元素特征向量,例如图形元素的轮廓信息的特征向量以及高层语义特征向量。需要说明的是,也可以通过其他适当的模型来提取待搜索应用程序的图标中的图形元素,本申请实施例对此不进行特殊限定。
进一步地,可以通过颜色量化模型提取待搜索应用程序的图标的颜色元素。举例而言,可以通过颜色量化模型八叉树量化方法,提取待搜索应用程序的图标中的主要颜色,例如,图标的背景颜色以及图标中的图形或文字的颜色等。需要说明的是,虽然以颜色量化模型进行说明,但是本领域技术人员应该理解的是,也可以通过其他适当的方式提取待搜索应用程序的图标的颜色元素,例如可以通过OPENCV提取图标的颜色直方图,这同样在本申请实施例的保护范围内。
在步骤S330中,基于组成元素从应用程序索引库中搜索与待搜索应用程序对应的应用程序,其中,应用程序索引库中包含多个应用程序的图像的组成元素。
在示例实施例中,确定待搜索应用程序的各个组成元素的特征向量与应用程序索引库中各个应用程序的对应组成元素的特征向量之间的元素相似度,根据待搜索应用程序的各个组成元素与各个应用程序的对应组成元素之间的元素相似度,确定与待搜索应用程序对应的目标应用程序。具体而言,可以确定待搜索应用程序的图形元素的特征向量与应用程序索引库中的各个应用程序的图形元素的特征向量之间的图形相似度;确定所述待搜索应用程序的颜色元素的特征向量与所述应用程序索引库中的各个应用程序的颜色元素的特征向量之间的颜色相似度;基于图形相似度以及颜色相似度确定与待搜索应用程序对应的图标。
进一步地,在示例实施例中,组成元素还包括文字元素,文字元素包括待搜索应用程序的图标中的文字元素和/或图标下方的文字元素。因此,可以确定所述待搜索应用程序的文本元素的特征向量与所述应用程序索引库中的各个应用程序的文本元素的特征向量之间的文本相似度。
根据图3的示例实施例中的技术方案,提取待搜索应用程序的图像的组成元素,组成元素包括图形元素和颜色元素,基于组成元素从应用程序索引库中搜索与待搜索应用程序对应的目标应用程序,一方面,由于通过图像处理的方式搜索应用程序,不需要输入搜索关键词就能够高效地搜索应用程序;另一方面,由于结合待搜索应用程序的图像的多种组成元素进行搜索,从而能够提高应用程序搜索结果的准确性。
图5是本申请的另一些实施例提供的应用程序搜索方法的流程示意图。该应用程序搜索方法可以应用于图1的电子设备100,下面结合附图对该应用程序搜索方法进行详细的说明。
参照图5所示,在步骤S510中,获取包含待搜索应用程序的图标的图像。
在示例实施例中,通过电子设备100的摄像头获取包含待搜索应用程序的图标的图像。参照图6所示,该图形中包含3个应用程序的图标,其中,APP1为待搜索应用程序。
在步骤S520中,检测待搜索应用程序的图标,进行剪裁处理。
在示例实施例中,利用目标检测模型检测待搜索应用程序的图标,例如,利用基于候选区域的目标检测模型对待搜索应用程序的图标进行检测处理,得到待搜索应用程序的图像。
举例而言,参照图6所示,利用基于候选区域的目标检测模型检测APP图标及图标下方文字所在的区域,输出检测结果列表[“box1”:“[14,1000,142,175]”,“box2”:“[360,1250,137,171]”,“box3”:“[554,1007,136,178]”]。选取左侧第一个待搜索APP图标并剪裁,得到图7所示的待搜索APP图像。
需要说明的是,目标检测模型可以为R-CNN模型,也可以为其他适当的目标检测模型例如YOLO模型或SSD模型,本申请实施例对此不进行特殊限定。
在步骤S530中,提取应用程序的图像的组成元素,组成元素包括:图形元素、文本元素以及颜色元素。步骤S530包括步骤S532、步骤S534以及步骤S536,下面对步骤S530进行详细的说明。
在步骤S532中,检测待搜索应用程序的图标中的图形元素,提取图形元素的特征向量。
在示例实施例中,通过语义分割模型提取待搜索应用程序的图标的图形元素。具体而言,可以通过图像语义分割模型DeepLabV2提取待搜索应用程序的图标中的图形元素,也可以利用深度可分离卷积模型提取待搜索应用程序的图标中的图形元素,图形元素可以包括待搜索应用程序的图形元素特征向量,例如图形元素的轮廓信息的特征向量以及高层语义特征向量。需要说明的是,也可以通过其他适当的模型来提取待搜索应用程序的图标中的图形元素,本申请实施例对此不进行特殊限定。
举例而言,参照图7所示,通过语义分割模型提取待搜索APP图标的图形元素轮廓即图8a和图8b,生成图形元素轮廓的图像特征向量,并将生成的图像特征向量压缩为512维。
在步骤S534中,检测待搜索应用程序的图标中的文本元素。
在示例实施例中,利用OCR识别待搜索应用程序的图标中的文本元素和/或图标下方的文本元素,文本元素可以包括文字、字母和数字中的一种或多种。
举例而言,可以通过OCR识别技术识别待搜索APP的图标中以及图标下方的文本元素,参照图9所示,通过OCR识别技术从待搜索APP图标中提取到下述文本元素:[{"word":"618","bbox":[62,1018,46,21]},{"word":"XXX","bbox":[44,1097,82,22]}],从待搜索APP图标下提取到APP名称[{"word":"APP1","bbox":[35,1135,101,30]}]。
在步骤S536中,检测待搜索应用程序的图标中的颜色元素。
在示例实施例中,通过颜色量化模型提取待搜索应用程序的图标的颜色元素。举例而言,可以通过颜色量化模型八叉树量化方法,提取待搜索应用程序的图标中的主要颜色,例如,图标的背景颜色以及图标中的图形或文字的颜色等。
举例而言,参照图10所示,通过八叉树量化方法提取待搜索应用程序的图标的颜色元素,提取颜色元素结果为:[[“rgb”:[220,51,69],“percent”:0.41],[“rgb”:[220,51,69],“percent”:0.14]],并转化到Lab颜色空间下[[“lab”:[49.512,64.633,31.214],“percent”:0.41],[“lab”:[97.876,-0.345,0.946],“percent”:0.14]]。
需要说明的是,虽然以颜色量化模型进行说明,但是本领域技术人员应该理解的是,也可以通过其他适当的方式提取待搜索应用程序的图标的颜色元素,例如可以通过OPENCV提取图标的颜色直方图,这同样在本申请实施例的保护范围内。
接下来,在步骤S540中,根据待搜索应用程序的图像的组成元素从应用程序索引库中搜索对应的应用程序。步骤S540包括步骤S542、步骤S544以及步骤S546,下面对步骤S540进行详细的说明。
在步骤S542中,从应用程序索引库中搜索与待搜索应用程序的图形元素之间的图形相似度大于预定阈值的应用程序。
在示例实施例中,可以确定待搜索应用程序的图形元素的特征向量与应用程序索引库中的应用程序的图形元素的特征向量之间的图形相似度,确定图形相似度大于预定阈值的应用程序。
举例而言,设待搜索应用程序的图形元素的特征向量为A,应用程序索引库中的应用程序的图形元素的特征向量为B,则A与B的相似度可以用余弦相似性衡量,图形相似度可以用下式(1)表示:
其中,Ai和Bi分别表示向量A和向量B的各个分量。
采用上述(1)确定A与B之间的图像相似度,得到图形相似度大于预定阈值的应用程序。例如,根据图8a中的图形元素搜索到79562个APP,根据图8b中的图形元素搜索到13个APP。
在步骤S544中,从应用程序索引库中搜索与待搜索应用程序的文本元素之间的文本相似度大于预定阈值的应用程序。
在示例实施例中,可以确定待搜索应用程序的文本元素的字符串与应用程序索引库中的应用程序的文本元素的字符串之间的文本相似度,确定文本相似度大于预定阈值的应用程序。
举例而言,设待搜索应用程序的名称或图标中提取的文本元素为a,应用程序索引库中的应用程序的文本元素记为b,则a与b的文本相似度可以用Levenshtein距离衡量,例如可以表示为leva,b(|a|,b|)。其中,|a|,|b|表示a,b两个字符串的长度。文本相似度leva,b(|a|,|b|)符合下式(2)的约束条件。
采用上式(2)确定a与b之间的文本相似度,确定文本相似度大于预定阈值的应用程序。例如,根据文本元素“618”搜索到35895个APP,根据文本元素“XXX”搜索到8个APP,根据APP名称“APP1”搜到22个APP。
在步骤S546中,从应用程序索引库中搜索与待搜索应用程序的颜色元素之间的颜色相似度大于预定阈值的应用程序。
在示例实施例中,可以确定待搜索应用程序的颜色元素与应用程序索引库中的应用程序的颜色元素之间的颜色相似度,确定颜色相似度大于预定阈值的应用程序。
接下来,在步骤S550中,对步骤S540中搜索各个组成元素对应的搜索结果进行排序。
在示例实施例中,按照元素相似度从大到小的顺序对搜索结果进行排序,从排序结果中选取预定数量的应用程序,形成多个应用程序集合,对多个应用程序集合取并集,生成候选应用程序集。
举例而言,对每个组成元素的搜索结果依据元素相似度的大小进行排序,取前80%的应用程序后得到多个应用程序集合,取多个应用程序集合的并集,得到候选应用程序集2127138个APP。
进一步地,在示例实施例中,可以对候选应用程序集中的候选应用程序的各个组成元素的元素相似度进行加权运算,得到候选应用程序与待搜索应用程序之间的程序相似度,根据程序相似度对候选应用程序进行排序。
在步骤S560中,输出APP搜索结果。
在示例实施例中,在得到候选应用程序集中的各个候选应用程序的排序结果之后,在电子设备100的用户界面上输出APP搜索结果。例如,在电子设备100的应用商店的界面上输出候选应用程序集中前10%的APP。
根据图5的示例实施例中的技术方案,一方面,由于通过图像处理的方式搜索应用程序,不需要输入搜索关键词就能够高效地搜索应用程序;另一方面,由于结合待搜索应用程序的图像的多种组成元素进行搜索,从而能够提高应用程序搜索结果的准确性。
进一步地,在示例实施例中,基于元素相似度确定各个候选应用程序的程序置信度,程序置信度表示候选应用程序与待搜索应用程序相似的概率;基于程序置信度的大小确定与待搜索应用程序对应的应用程序。具体而言,应用程序索引库还包括:候选应用程序的对应元素的权重,基于元素相似度确定各个候选应用程序与待搜索应用程序之间的程序置信度,包括:确定待搜索应用程序的各个组成元素的权重与候选应用程序的对应元素的权重;基于待搜索应用程序的各个组成元素的权重、候选应用程序的对应元素的权重以及对应的元素相似度,确定候选应用程序的对应元素的元素置信度,元素置信度表示对应元素属于待搜索应用程序的元素的概率;基于元素置信度,确定各个候选应用程序的程序置信度。
举例而言,设q表示待搜索应用程序,c表示候选应用程序列表中的一个应用程序,Iq表示待搜索应用程序的图标中组成元素i的权重,Ic表示候选应用程序的图标中组成元素i的权重,S表示q图标中组成元素i与c图标中组成元素i的相似度,则候选应用程序图标中的组成元素i的元素置信度可以通过元素评分BP神经网络模型计算得到,元素置信度fi具体可通过下式(4)表示:
fi(Iq,Ic,S) (4)
元素评分BP神经网络模型构建:参照图12所示,构建初始BP神经网络模型,将Iq、Ic、S三个参数输入至初始BP神经网络模型中的输入层,将候选应用程序的组成元素i是否属于待搜索应用程序的元素作为该BP神经网络模型的输出,例如可以将候选应用程序的组成元素i是否属于待搜索应用程序的元素结果进行独热编码后作为该BP神经网络模型的输出。此外,可以通过应用程序索引库中的应用程序对初始BP神经网络模型进行训练,得到训练后的BP神经网络模型,作为实际应用中的元素评分BP神经网络模型。
进一步地,设a表示图形元素、b表示文本元素、c表示颜色元素,则候选应用程序的程序置信度可以通过类别评分BP神经网络模型得到,程序置信度G可以通过下式(5)表示:
G(Ha,Hb,Hc) (5)
其中,H表示各个组成元素的置信度,H可以用下式(6)表示:
其中,w为经验值,I可以通过下式(7)确定:
类别评分BP神经网络模型的构建方法:如图12所示,将图形元素类、文本元素类以及颜色元素类的置信度输入至初始BP神经网络模型中的输入层,并将候选应用程序是否为待搜索应用程序进行独热编码后作为初始BP神经网络模型的输出。此外,可以根据应用程序索引库中的应用程序对初始BP神经网络模型进行训练,得到训练后的BP神经网络模型,作为实际使用中的类别评分神经网络模型。
举例而言,针对如图11所示的候选APP,通过元素评分BP神经网络模型计算得到下述结果:图形元素a的置信度为0.004,图形元素b的置信度为0.784;文本元素“618”的置信度为0.000,文本元素“HUAWEI”的置信度为0.689,APP名称“XXX”的置信度为“0.301”;颜色元素a的置信度为0.002,颜色元素b的置信度为0.776。
进一步地,可以计算得到该候选APP的类别元素置信度,具体而言,图形类元素置信度为0.784,文本类元素置信度为0.689,颜色类元素置信度为0.012。
进一步地,通过类别评分BP神经网络模型计算得到候选APP的程序置信度为0.988。
接下来,根据候选APP集内每个候选APP的程序置信度的大小进行排序,并输出排序后的排序结果。
根据本申请示例实施例中的技术方案,一方面,通过在应用程序索引库中设置组成元素的权重,能够提高应用程序搜索的准确性,从而能够在APP产生设计变形时准确地识别该APP;另一方面,采用神经网络模型确定候选APP的程序置信度,能够进一步高效准确地进行应用程序搜索。
图13是本申请的一些实施例提供的应用程序索引库的示意图。
在示例实施例中,可以预先构建应用程序索引库。参照图13所示,应用程序索引库中的每个应用程序对应图形元素类、文本元素类、颜色元素类三类组成元素,每类组成元素包括元素特征索引、元素特征(图形特征向量、文本字符串、颜色值)和权重。其中,权重表示该元素在应用程序的图标中的重要程度,例如权重可以为该元素在应用程序的图像中所占的比例,例如图形元素的权重可以为该图形元素所占的面积与应用程序的图标的面积的比值,文字元素的权重可以为该文字元素所占的面积与应用程序的图标的面积的比值,颜色元素的权重可以为该颜色元素所占的面积与应用程序的图标的面积的比值。此外,在一些示例实施例中,元素权重也可以为其他适当的值,例如元素权重可以为该元素在应用程序的界面、海报、广告等公开视觉资料中出现的频率,这同样在本申请的保护范围内。
通过在应用程序索引库中设置组成元素的权重,能够提高应用程序搜索的准确性,从而能够在APP产生设计变形时准确地识别该APP。
图14是本申请的一些实施例提供的电子设备的示意图。
参照图14所示,所述电子设备1400包括:图像获取单元1410,用于获取待搜索应用程序的图像,所述图像包括所述待搜索应用程序的图标;处理单元1420,用于提取所述待搜索应用程序的图像的组成元素,所述组成元素包括所述图标的图形元素和颜色元素;基于所述组成元素从应用程序索引库中搜索与所述待搜索应用程序对应的应用程序,其中,所述应用程序索引库包含多个应用程序的图像的所述组成元素。
根据本申请实施例中的技术方案,一方面,由于通过图像处理的方式搜索应用程序,不需要输入搜索关键词就能够高效地搜索应用程序;另一方面,由于结合待搜索应用程序的图像的多种组成元素进行搜索,从而能够提高应用程序搜索结果的准确性。
在一种可能的实现方式中,所述组成元素还包括文字元素,所述文字元素包括所述图标中的文字元素和/或所述图标下方的文字元素。
在一种可能的实现方式中,所述处理单元1420用于:确定所述待搜索应用程序的各个组成元素与所述应用程序索引库中各个应用程序的对应组成元素之间的元素相似度,所述元素相似度包括图形相似度、颜色相似度以及文本相似度中的一种或多种;基于所述元素相似度确定与所述待搜索应用程序对应的应用程序。
在一种可能的实现方式中,所述处理单元1420用于包括:基于所述元素相似度确定与所述待搜索应用程序对应的多个应用程序集合,所述应用程序集合中的各个应用程序为至少一个所述元素相似度大于预定阈值的应用程序;确定各个所述应用程序集合的并集,得到多个候选应用程序;基于所述元素相似度确定各个候选应用程序的程序置信度,所述程序置信度表示所述候选应用程序与所述待搜索应用程序相似的概率;基于所述程序置信度的大小确定与所述待搜索应用程序对应的应用程序。
在一种可能的实现方式中,所述应用程序索引库还包括:所述候选应用程序的对应元素的权重,所述处理单元1420用于:确定所述待搜索应用程序的各个组成元素的权重与所述候选应用程序的对应元素的权重;基于所述待搜索应用程序的各个组成元素的权重、所述候选应用程序的对应元素的权重以及对应的所述元素相似度,确定所述候选应用程序的所述对应元素的元素置信度,所述元素置信度表示所述对应元素属于所述待搜索应用程序的元素的概率;基于所述元素置信度,确定各个候选应用程序的程序置信度。
在一种可能的实现方式中,所述处理单元1420用于:将所述待搜索应用程序的所述组成元素的权重、所述候选应用程序的对应组成元素的权重以及对应的所述元素相似度输入到元素评分模型,所述元素评分模型为神经网络模型;通过所述元素评分模型,确定所述候选应用程序的所述对应元素的元素置信度。
在一种可能的实现方式中,所述基于所述元素置信度,所述处理单元1420用于:对所述候选应用程序的各类组成元素下的各个组成元素的元素置信度进行加权求和运算,确定所述候选应用程序的类别元素置信度,所述类别元素置信度表示候选应用程序的一类组成元素均属于所述待搜索应用程序的概率;基于所述类别元素置信度,确定所述候选应用程序的程序置信度。
在一种可能的实现方式中,所述处理单元1420用于:将各类组成元素的所述类别元素置信度输入到类别评分模型,所述类别评分模型为神经网络模型;通过所述类别评分模型,确定各个候选应用程序的程序置信度。
在一种可能的实现方式中,所述处理单元1420用于:通过语义分割模型提取所述待搜索应用程序的图像的图形元素;通过颜色量化模型提取所述待搜索应用程序的图像的颜色元素。
在一种可能的实现方式中,所述组成元素包括文字元素,所述处理单元1420用于:通过字符识别模型提取所述待搜索应用程序的图像的文字元素。
在一种可能的实现方式中,所述应用程序索引库还包括:与所述应用程序的各类组成元素对应的元素特征索引以及元素特征。
本实施例提供的电子设备1400,用于执行上述应用程序搜索方法,因此可以达到与上述实现方法相同的效果。
可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的应用程序搜索方法。
本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的应用程序搜索方法。
另外,本申请的实施例还提供一种设备,该设备具体可以是芯片,组件或模块,该设备可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的应用程序搜索方法。
其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (25)
1.一种应用程序搜索方法,其特征在于,包括:
获取待搜索应用程序的图像,所述图像包括所述待搜索应用程序的图标;
提取所述待搜索应用程序的图像的组成元素,所述组成元素包括所述图标的图形元素和颜色元素;
基于所述组成元素从应用程序索引库中搜索与所述待搜索应用程序对应的应用程序,其中,所述应用程序索引库包含多个应用程序的图像的所述组成元素。
2.根据权利要求1所述的方法,其特征在于,所述组成元素还包括文字元素,所述文字元素包括所述图标中的文字元素和/或所述图标下方的文字元素。
3.根据权利要求2所述的方法,其特征在于,所述基于所述组成元素从应用程序索引库中搜索与所述待搜索应用程序对应的应用程序,包括:
确定所述待搜索应用程序的各个组成元素与所述应用程序索引库中各个应用程序的对应组成元素之间的元素相似度,所述元素相似度包括图形相似度、颜色相似度以及文本相似度中的一种或多种;
基于所述元素相似度确定与所述待搜索应用程序对应的应用程序。
4.根据权利要求3所述的方法,其特征在于,所述基于所述元素相似度确定与所述待搜索应用程序对应的应用程序,包括:
基于所述元素相似度确定与所述待搜索应用程序对应的多个应用程序集合,所述应用程序集合中的各个应用程序为至少一个所述元素相似度大于预定阈值的应用程序;
确定各个所述应用程序集合的并集,得到多个候选应用程序;
基于所述元素相似度确定各个候选应用程序的程序置信度,所述程序置信度表示所述候选应用程序与所述待搜索应用程序相似的概率;
基于所述程序置信度的大小确定与所述待搜索应用程序对应的应用程序。
5.根据权利要求4所述的方法,其特征在于,所述应用程序索引库还包括:所述候选应用程序的对应元素的权重,所述基于所述元素相似度确定各个候选应用程序与所述待搜索应用程序之间的程序置信度,包括:
确定所述待搜索应用程序的各个组成元素的权重与所述候选应用程序的对应元素的权重;
基于所述待搜索应用程序的各个组成元素的权重、所述候选应用程序的对应元素的权重以及对应的所述元素相似度,确定所述候选应用程序的所述对应元素的元素置信度,所述元素置信度表示所述对应元素属于所述待搜索应用程序的元素的概率;
基于所述元素置信度,确定各个候选应用程序的程序置信度。
6.根据权利要求5所述的方法,其特征在于,所述确定所述候选应用程序的所述对应元素的元素置信度,包括:
将所述待搜索应用程序的所述组成元素的权重、所述候选应用程序的对应组成元素的权重以及对应的所述元素相似度输入到元素评分模型,所述元素评分模型为神经网络模型;
通过所述元素评分模型,确定所述候选应用程序的所述对应元素的元素置信度。
7.根据权利要求5所述的方法,其特征在于,所述基于所述元素置信度,确定各个候选应用程序的程序置信度,包括:
对所述候选应用程序的各类组成元素下的各个组成元素的元素置信度进行加权求和运算,确定所述候选应用程序的类别元素置信度,所述类别元素置信度表示候选应用程序的一类组成元素均属于所述待搜索应用程序的概率;
基于所述类别元素置信度,确定所述候选应用程序的程序置信度。
8.根据权利要求7所述的方法,其特征在于,所述基于所述类别元素置信度,确定所述候选应用程序的类别元素置信度,包括:
将各类组成元素的所述类别元素置信度输入到类别评分模型,所述类别评分模型为神经网络模型;
通过所述类别评分模型,确定各个候选应用程序的程序置信度。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述提取所述待搜索应用程序的图像的组成元素包括:
通过语义分割模型提取所述待搜索应用程序的图像的图形元素;
通过颜色量化模型提取所述待搜索应用程序的图像的颜色元素。
10.根据权利要求9所述的方法,其特征在于,所述组成元素包括文字元素,所述提取所述待搜索应用程序的图像的组成元素还包括:
通过字符识别模型提取所述待搜索应用程序的图像的文字元素。
11.根据权利要求9所述的方法,其特征在于,所述应用程序索引库还包括:与所述应用程序的各类组成元素对应的元素特征索引以及元素特征。
12.一种电子设备,其特征在于,所述电子设备包括:
图像获取单元,用于获取待搜索应用程序的图像,所述图像包括所述待搜索应用程序的图标;
处理单元,用于提取所述待搜索应用程序的图像的组成元素,所述组成元素包括所述图标的图形元素和颜色元素;基于所述组成元素从应用程序索引库中搜索与所述待搜索应用程序对应的应用程序,其中,所述应用程序索引库包含多个应用程序的图像的所述组成元素。
13.根据权利要求12所述的设备,其特征在于,所述组成元素还包括文字元素,所述文字元素包括所述图标中的文字元素和/或所述图标下方的文字元素。
14.根据权利要求13所述的设备,其特征在于,所述处理单元用于:
确定所述待搜索应用程序的各个组成元素与所述应用程序索引库中各个应用程序的对应组成元素之间的元素相似度,所述元素相似度包括图形相似度、颜色相似度以及文本相似度中的一种或多种;
基于所述元素相似度确定与所述待搜索应用程序对应的应用程序。
15.根据权利要求14所述的设备,其特征在于,所述处理单元用于包括:
基于所述元素相似度确定与所述待搜索应用程序对应的多个应用程序集合,所述应用程序集合中的各个应用程序为至少一个所述元素相似度大于预定阈值的应用程序;
确定各个所述应用程序集合的并集,得到多个候选应用程序;
基于所述元素相似度确定各个候选应用程序的程序置信度,所述程序置信度表示所述候选应用程序与所述待搜索应用程序相似的概率;
基于所述程序置信度的大小确定与所述待搜索应用程序对应的应用程序。
16.根据权利要求15所述的设备,其特征在于,所述应用程序索引库还包括:所述候选应用程序的对应元素的权重,所述处理单元用于:
确定所述待搜索应用程序的各个组成元素的权重与所述候选应用程序的对应元素的权重;
基于所述待搜索应用程序的各个组成元素的权重、所述候选应用程序的对应元素的权重以及对应的所述元素相似度,确定所述候选应用程序的所述对应元素的元素置信度,所述元素置信度表示所述对应元素属于所述待搜索应用程序的元素的概率;
基于所述元素置信度,确定各个候选应用程序的程序置信度。
17.根据权利要求16所述的设备,其特征在于,所述处理单元用于:
将所述待搜索应用程序的所述组成元素的权重、所述候选应用程序的对应组成元素的权重以及对应的所述元素相似度输入到元素评分模型,所述元素评分模型为神经网络模型;
通过所述元素评分模型,确定所述候选应用程序的所述对应元素的元素置信度。
18.根据权利要求16所述的设备,其特征在于,所述基于所述元素置信度,所述处理单元用于:
对所述候选应用程序的各类组成元素下的各个组成元素的元素置信度进行加权求和运算,确定所述候选应用程序的类别元素置信度,所述类别元素置信度表示候选应用程序的一类组成元素均属于所述待搜索应用程序的概率;
基于所述类别元素置信度,确定所述候选应用程序的程序置信度。
19.根据权利要求18所述的设备,其特征在于,所述处理单元用于:
将各类组成元素的所述类别元素置信度输入到类别评分模型,所述类别评分模型为神经网络模型;
通过所述类别评分模型,确定各个候选应用程序的程序置信度。
20.根据权利要求12至19中任一项所述的设备,其特征在于,所述处理单元用于:
通过语义分割模型提取所述待搜索应用程序的图像的图形元素;
通过颜色量化模型提取所述待搜索应用程序的图像的颜色元素。
21.根据权利要求20所述的设备,其特征在于,所述组成元素包括文字元素,所述处理单元用于:
通过字符识别模型提取所述待搜索应用程序的图像的文字元素。
22.根据权利要求20所述的设备,其特征在于,所述应用程序索引库还包括:与所述应用程序的各类组成元素对应的元素特征索引以及元素特征。
23.一种芯片装置,包括:通信接口和处理器,所述通信接口和所述处理器之间通过内部连接通路互相通信,所述处理器用于实现上述权利要求1至11中任一项所述的方法。
24.一种计算机可读存储介质,用于存储计算机程序,其特征在于,所述计算机程序包括用于实现上述权利要求1至11中任一项所述的方法的指令。
25.一种计算机程序产品,所述计算机程序产品中包含指令,其特征在于,当所述指令在计算机上运行时,使得计算机实现上述权利要求1至11中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011599809.2A CN114691614A (zh) | 2020-12-29 | 2020-12-29 | 应用程序搜索方法、设备及介质 |
PCT/CN2021/136807 WO2022143083A1 (zh) | 2020-12-29 | 2021-12-09 | 应用程序搜索方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011599809.2A CN114691614A (zh) | 2020-12-29 | 2020-12-29 | 应用程序搜索方法、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114691614A true CN114691614A (zh) | 2022-07-01 |
Family
ID=82131537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011599809.2A Pending CN114691614A (zh) | 2020-12-29 | 2020-12-29 | 应用程序搜索方法、设备及介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114691614A (zh) |
WO (1) | WO2022143083A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5528121B2 (ja) * | 2010-01-05 | 2014-06-25 | キヤノン株式会社 | 画像処理装置、画像処理方法、及びプログラム |
CN104657081B (zh) * | 2015-03-19 | 2018-04-27 | 上海创功通讯技术有限公司 | 移动终端及其图片的处理方法 |
CN105224201A (zh) * | 2015-09-28 | 2016-01-06 | 深圳市金立通信设备有限公司 | 一种界面显示的方法及终端 |
CN107967482A (zh) * | 2017-10-24 | 2018-04-27 | 广东中科南海岸车联网技术有限公司 | 图标识别方法及装置 |
CN108062370B (zh) * | 2017-12-11 | 2020-11-03 | 维沃移动通信有限公司 | 一种应用程序搜索方法及移动终端 |
-
2020
- 2020-12-29 CN CN202011599809.2A patent/CN114691614A/zh active Pending
-
2021
- 2021-12-09 WO PCT/CN2021/136807 patent/WO2022143083A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2022143083A1 (zh) | 2022-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109299315B (zh) | 多媒体资源分类方法、装置、计算机设备及存储介质 | |
CN111738122B (zh) | 图像处理的方法及相关装置 | |
CN111465918B (zh) | 在预览界面中显示业务信息的方法及电子设备 | |
CN110377204B (zh) | 一种生成用户头像的方法及电子设备 | |
CN111782879B (zh) | 模型训练方法及装置 | |
CN110471606B (zh) | 输入方法及电子设备 | |
CN111669462B (zh) | 一种显示图像的方法及相关装置 | |
CN112130714B (zh) | 可进行学习的关键词搜索方法和电子设备 | |
CN112269853B (zh) | 检索处理方法、装置及存储介质 | |
CN111400605A (zh) | 基于眼球追踪的推荐方法及装置 | |
CN111881315A (zh) | 图像信息输入方法、电子设备及计算机可读存储介质 | |
CN110830645B (zh) | 一种操作方法和电子设备及计算机存储介质 | |
CN111612723B (zh) | 图像修复方法及装置 | |
CN115115679A (zh) | 一种图像配准方法及相关设备 | |
CN113763931B (zh) | 波形特征提取方法、装置、计算机设备及存储介质 | |
CN111524528B (zh) | 防录音检测的语音唤醒方法及装置 | |
CN115437601A (zh) | 图像排序方法、电子设备、程序产品及介质 | |
CN113361376B (zh) | 获取视频封面的方法、装置、计算机设备及可读存储介质 | |
CN111597823B (zh) | 中心词提取方法、装置、设备及存储介质 | |
CN116861066A (zh) | 应用推荐方法和电子设备 | |
CN114691614A (zh) | 应用程序搜索方法、设备及介质 | |
CN114281937A (zh) | 嵌套实体识别模型的训练方法、嵌套实体识别方法及装置 | |
CN114359335A (zh) | 一种目标跟踪方法及电子设备 | |
CN112115912B (zh) | 图像识别方法、装置、计算机设备及存储介质 | |
EP4372518A1 (en) | System, song list generation method, and electronic device |
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 |