掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本公开涉及图像处理技术领域,尤其涉及一种筛选方法、装置、计算机设备及计算机可读存储介质。

背景技术

随着互联网的发展,各大电子商务平台为用户提供了品种齐全的物品,例如食品、服装、生活用品等。用户在电子商务平台上浏览物品时,可以根据自身需求在电子商务平台上筛选自己需要的产品,并根据筛选结果进行购买。因此,用户在各大电子商务平台上进行购物时,如何从海量物品中筛选出目标物品就显得尤为重要。

随着图像处理技术的发展,目前,用户可以通过将图片上传至电商平台的方式进行物品筛选。然而,由于通过上传图片筛选物品过程中通常是通过上传图片中的物品类别进行物品筛选,无法达到很精准的匹配效果,导致物品筛选效率低下,用户使用体验差。

发明内容

有鉴于此,本公开实施例提供了一种筛选方法、装置、计算机设备及计算机可读存储介质,以解决现有技术中根据图片筛选物品难以达到很精准的匹配效果,导致物品筛选效率低的问题。

本公开实施例的第一方面,提供了一种筛选方法,包括:

基于获取的参考图片,获取与参考图片相关联的候选图片;

对参考图片进行图像识别,以获取参考图片中每个像素点的像素信息,像素信息至少包括像素值和像素点位置;

基于参考图片中每个像素点的像素信息,确定参考图片的颜色信息,颜色信息至少包括参考图片的颜色类别和每种颜色占比;

根据颜色类别和每种颜色的颜色占比,确定每种颜色对应的色块的排列方式,排列方式至少包括色块的排列顺序;

基于排列方式对每种颜色对应的色块进行排列,生成参考图片的颜色色块;

基于颜色色块,获取选定的目标色块;

基于目标色块对候选图片进行筛选,获取目标图片。

本公开实施例的第二方面,提供了一种筛选装置,包括:

候选图片获取模块,被配置为基于获取的参考图片,获取与参考图片相关联的候选图片;

像素信息获取模块,被配置为对参考图片进行图像识别,以获取参考图片中每个像素点的像素信息,像素信息至少包括像素值和像素点位置;

颜色信息确定模块,被配置为基于参考图片中每个像素点的像素信息,确定参考图片的颜色信息,颜色信息至少包括参考图片的颜色类别和每种颜色占比;

色块排列确定模块,被配置为根据颜色类别和每种颜色的颜色占比,确定每种颜色对应的色块的排列方式,排列方式至少包括色块的排列顺序;

色块生成模块,被配置为基于排列方式对每种颜色对应的色块进行排列,生成参考图片的颜色色块;

目标色块获取模块,被配置为基于颜色色块,获取选定的目标色块;

目标图片获取模块,被配置为基于目标色块对候选图片进行筛选,获取目标图片。

本公开实施例的第三方面,提供了一种计算机设备,包括存储器、处理器以及存储在存储器中并且可以在处理器上运行的计算机程序,该处理器执行计算机程序时实现上述方法的步骤。

本公开实施例的第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。

本公开实施例与现有技术相比存在的有益效果至少包括:本公开实施例通过提取参考图片的颜色信息,生成参考图片的颜色色块,并根据用户从颜色色块中选定的目标色块对与参考图片相关联的候选图片进行筛选,获得目标图片,从而实现对物品的筛选。一方面,本公开实施例由于在物品筛选过程中充分考虑了颜色对于物品筛选的重要作用,通过对参考图片中的颜色信息进行提取,并基于颜色信息对获取的候选图片进行进一步筛选,极大提高了图片搜索匹配精度,提高了筛选效率,有助于用户更快获得目标图片,从而搜索到目标物品,改善用户体验;另一方面,本公开实施例在生成参考图片的颜色色块时,考虑参考图片中所包含的颜色类别以及各颜色的占比,根据颜色类别来生成颜色色块,并根据颜色占比对色块进行排序,确保用户能够直观了解参考图片中所包含的颜色种类分布情况,便于后续选择相应的色块进行物品筛选。

附图说明

为了更清楚地说明本公开实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1是本公开实施例的一种应用场景的场景示意图;

图2是本公开实施例提供的筛选方法的流程图;

图3是本公开实施例提供的筛选方法中基于颜色信息生成所述参考图片的颜色色块的再一种流程图;

图4是本公开实施例提供的筛选方法中基于颜色色块获取选定的目标色块的流程图;

图5是本公开实施例提供的筛选方法中基于目标色块对候选图片进行筛选,获取目标图片的流程图;

图6是本公开实施例提供的筛选装置的框图;

图7是本公开实施例提供的计算机设备的示意图。

图8是本公开实施例提供的一种展示界面的示意图;

图9是本公开实施例提供的一种筛选界面的示意图;

图10是本公开实施例提供的一种筛选界面中进行裁剪的示意图;

图11是本公开实施例提供的另一种筛选界面的示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本公开实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本公开。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本公开的描述。

下面将结合附图详细说明根据本公开实施例的一种筛选方法和装置。

图1是本公开实施例的一种应用场景的场景示意图。该应用场景可以包括终端设备101、102和103、服务器104以及网络105。

终端设备101、102和103可以是硬件,也可以是软件。当终端设备101、102和103为硬件时,其可以是具有显示屏且支持与服务器104通信的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等。当终端设备101、102和103为软件时,其可以安装在如上的电子设备中。终端设备101、102和103可以实现为多个软件或软件模块,也可以实现为单个软件或软件模块,本公开实施例对此不作限制。进一步地,终端设备101、102和103上可以安装有各种应用,例如数据处理应用、即时通信工具、社交平台软件、搜索类应用、购物类应用等。

服务器104可以是提供各种服务的服务器,例如,对与其建立通信连接的终端设备发送的请求进行接收的后台服务器,该后台服务器可以对终端设备发送的请求进行接收和分析等处理,并生成处理结果。服务器104可以是一台服务器,也可以是由若干台服务器组成的服务器集群,或者还可以是一个云计算服务中心,本公开实施例对此不作限制。

需要说明的是,服务器104可以是硬件,也可以是软件。当服务器104为硬件时,其可以是为终端设备101、102和103提供各种服务的各种电子设备。当服务器104为软件时,其可以是为终端设备101、102和103提供各种服务的多个软件或软件模块,也可以是为终端设备1、2和3提供各种服务的单个软件或软件模块,本公开实施例对此不作限制。

网络105可以是采用同轴电缆、双绞线和光纤连接的有线网络,也可以是无需布线就能实现各种通信设备互联的无线网络,例如,蓝牙(Bluetooth)、近场通信(Near FieldCommunication,NFC)、红外(Infrared)等,本公开实施例对此不作限制。

用户可以通过终端设备101、102和103经由网络105与服务器104建立通信连接,以接收或发送信息等。具体地,用户可以通过终端设备101、102和103获取用户提供的参考图片,在终端设备101、102和103或服务器104中提取参考图片的颜色信息,并基于颜色信息生成参考图片的颜色色块,通过终端设备101、102和103接收用户选定的目标色块,在服务器104中基于目标色块对候选图片进行筛选,获取目标图片,在终端设备101、102和103显示所获取的目标图片。

需要说明的是,终端设备101、102和103、服务器104以及网络105的具体类型、数量和组合可以根据应用场景的实际需求进行调整,本公开实施例对此不作限制。

图2是本公开实施例提供的一种筛选方法的流程图。图2提供的筛选方法可以由图1的终端设备或服务器执行。如图2所示,该筛选方法包括:

S201,基于获取的参考图片,获取与参考图片相关联的候选图片。

在本实施例中,用户可以通过终端设备登录电商平台,终端设备可以是移动设备,例如智能手机或平板电脑等,也可以是电脑等,此处不做限制。在登录电商平台时,可以是通过网页端登录,也可以是通过应用程序(APP)登录。请参阅图8(a),用户通过终端设备登录电商平台后,电商平台的展示界面进行物品展示,展示界面还设置有搜索框,用户可以通过搜索框输入需要搜索的物品的关键词,以通过文字的方式进行搜索。同时展示界面的搜索框内还设置有相机按钮,用户可以通过点击该相机按钮,实现参考图片的上传。当然,通过参考图片的方式来获取相关联的图片时,展示界面也可以仅设置相机按钮、而不设置搜索框,从而用户仅可以通过点击相机按钮的方式来上传参考图片

用户点击展示界面的相机按钮后,展示界面跳转至图片获取页面,请参阅图8(b),图片获取页面包括拍照识别区域以及图片上传区域,两区域的排列方式可以根据需要进行设置,例如可以是拍照识别区域位于页面上方,图片上传区域位于页面下方;也可以是拍照识别区域位于页面下方,图片上传区域位于页面上方;还可以是拍照识别区域位于页面左侧,图片上传区域位于页面右侧等。当然,图片获取页面还可以设置返回按钮,当用户不需要通过图片来进行物品筛选时,可以通过点击返回按钮来返回展示界面。在图片获取页面,当用户需要通过拍照来上传参考图片时,需要调用终端设备的相机进行拍照,拍照获得的图片可以直接上传,也可以通过裁剪等方式编辑后再上传,上传的图片即为参考图片。当用户需要上传本地图片时,需要调用终端设备的相册,从相册中选择图片直接上传,也可以对选择的图片进行裁剪等方式编辑后再上传,上传的图片即为参考图片。

在获得上传的参考图片后,通过对参考图片进行图片识别,可以获得与其关联度较高的候选图片。应当理解的是,在通过上传的参考图片获取与其相关联的候选图片时,其可以通过任意现有的通过图片获取相似物品的图片的方式来获得,此处不做限制。例如,通过对参考图片进行图像识别,可以获取图片的特征信息,通过特征信息可以在电商平台的服务器中搜索相关联的图片,选中的图片即为候选图片,并依据搜索获得的图片与参考图片的相似度进行排序,相似度越高,则对应的候选图片排列越靠前,在展示界面显示的位置就越靠前,以方便用户进行浏览。

S202,对参考图片进行图像识别,以获取参考图片中每个像素点的像素信息,像素信息至少包括像素值和像素点位置。

参考图片中包含若干像素点,每一个像素点都对应包含其像素信息,例如像素值、像素点的位置等。其中,像素值可以是该像素点的RGB值,RGB值的RGB分量范围为0~255,根据RGB值可以确定该像素点属于何种颜色。像素点位置可以确定该像素点在参考图像中的位置,便于对像素点所属颜色进行定位。因此,在获取了参考图片后对参考图片进行图像识别,以读取其包含的每个像素点的像素信息。

S203,基于参考图片中每个像素点的像素信息,确定参考图片的颜色信息,颜色信息至少包括参考图片的颜色类别和每种颜色占比。

颜色信息是图片的重要特征之一,其能够反映图片中物品的颜色特征,因此,对于图片的颜色信息的提取对于图片的筛选具有非常重要的作用,能够进一步提高图片筛选的效率和准确性。

根据不同的颜色划分方式可以获得不同的颜色类别,颜色划分的标准越细,则对于颜色区分也就越精确,对应获得的颜色类别也就越丰富。例如,通常将颜色划分为红色、橙色、黄色、绿色、青色、蓝色、紫色,而红色又可以进一步划分为大红、桃红、鲜红、嫣红、朱红等,其他颜色也可以进一步进行细分。当获取到每个像素点的像素值后,则可以根据其像素值所属的区间,确定每个像素点所属的颜色。当确定完所有像素点的颜色后,则可以获得参考图片所包含的颜色,从而确定其包含的颜色类别。

本实施例中考虑到具体应用场景,对于彩色图片,默认状态下颜色划分为红色、橙色、黄色、绿色、青色、蓝色、紫色,以及黑色和白色,每一种颜色对应预设的RGB值区间。在高级选项中,可以对颜色进行进一步细分。对于灰度图片,根据灰度进行区间划分,从而可以获得更精确的颜色划分。

在一张图片中,各种颜色的占比通常具有较大的差别。例如对于印有红色玫瑰的白色T恤,其白色和红色所占的比重较大,而作为枝干的绿色所占比重则相对较小。为了更加全面反映参考图片中颜色分布情况,不仅要获取参考图片包含何种颜色,还要确定每种颜色占所有颜色的占比。其中,颜色占比可以通过如下方式进行获取:在对参考图片进行识别时,获取参考图像中每个像素点的像素值以及像素位置,基于像素值可以确定该像素点所属的颜色,基于像素位置可以确定该颜色在参考图像中的位置。由于参考图像事由若干像素点组成,在获得了每个像素点对应的颜色以及位置,则可以统计每种颜色的像素点分布位置及数量,从而可以通过每种颜色的像素点的数量占比来确定每种颜色占比。

S204,根据颜色类别和每种颜色的颜色占比,确定每种颜色对应的色块的排列方式,排列方式至少包括色块的排列顺序。

在获取了颜色类别后,则根据参考图片中所包含的颜色,生成对应的颜色色块,颜色色块以条状形式在筛选界面的颜色色块显示区域进行显示。例如,参考图片的颜色类别包括红色、橙色、黄色、绿色、青色、蓝色、紫色时,则对应生成红色色块、橙色色块、黄色色块、绿色色块、青色色块、蓝色色块、紫色色块,各色块按照各颜色的颜色占比进行排列,例如当红色、橙色、黄色、绿色、青色、蓝色、紫色的颜色占比分别为:20%、40%、30%、3%、2%、1%、4%,则各色块的排列顺序为:橙色、黄色、红色、紫色、绿色、青色、蓝色,且各色块按照上述顺序从左向右依次排列。当然颜色色块也可以按照其他顺序排列,此处不做限制。再如,参考图片的颜色类别包括黑色和白色,对应生成黑色色块、多个灰度不同的灰色色块和白色色块,各色块按照灰度逐渐加深进行排列。

S205,基于排列方式对每种颜色对应的色块进行排列,生成参考图片的颜色色块。

请参阅图9,本实施例中,在获取了上传的参考图片以后进入筛选界面,筛选界面包括参考图片显示区域、颜色色块显示区域以及候选图片显示区域。其中,颜色色块显示区域的颜色色块基于参考图片的颜色信息生成,其可以是条状,也可以是饼状,还可以是其他形状,此处不做限制。以下以颜色色块为条状为例进行说明。颜色色块中所包含的色块数量与参考图片中颜色数量相一致,其形每个色块的形状可以是方形,且每个色块显示的颜色与其所表征的参考图片中的颜色相一致,简洁、直观,方便用户辨认。当然,色块也可以是采用统一颜色,通过分别显示红色、绿色、蓝色等字样来表示其所表征的参考图片中的颜色。

S206,基于颜色色块,获取选定的目标色块。

当用户上传的参考图片包含多种颜色时,对应的生成的颜色色块也包括多种色块。在进行图片筛选时,可以通过其中的部分颜色作为目标色块来对候选图片进行筛选。可以理解的是,目标色块可以是一个色块,也可以是多个色块。用户在筛选界面可以针对所需要的颜色进行选择,通过选定颜色色块显示区域中的至少一个色块作为目标色块,选定的方式可以通过手指操作屏幕选定,也可以是通过手写笔等操作屏幕选定,还可以是通过其他外设(例如键盘、鼠标等)进行选定,此处不做限制。

S207,基于目标色块对候选图片进行筛选,获取目标图片。

在筛选界面的默认状态,候选图片显示区域所显示的候选图片是基于参考图片上传后所获得的候选图片与参考图片的相似度来进行排列的。当用户不选择色块时,其显示方式不发生变化。当用户选定了目标色块后,基于目标色块对候选图片中的对应颜色进行匹配,并按照匹配程度对候选图片进行筛选,以获取满足匹配度的候选图片,此时候选图片的排列顺序可以发生变化,也可以不发生变化。例如,可以根据匹配长度,将匹配程度高的候选图片往前排,而将匹配程度低的候选图片往后排,此时用户可以通过候选图片的排列顺序直观获得筛选结果,更方便地从经过筛选和重新排列的候选图片中获得目标图片,从而筛选得到目标物品。可以理解的是,目标图片可以是一张,也可以是多张;可以是筛选后得到的部分图片,也可以是筛选后得到的全部图片,此处不做限制。

根据本公开图2对应的实施例提供的技术方案,本公开实施例提供的筛选方法可以应用于移动端或者网页端,通过提取参考图片的颜色信息,生成参考图片的颜色色块,并根据用户从颜色色块中选定的目标色块对与参考图片相关联的候选图片进行筛选,获得目标图片,从而实现对物品的筛选。本公开实施例由于在筛选过程中充分考虑了颜色对于物品筛选的重要作用,通过对参考图片中的颜色信息进行提取,并基于颜色信息对获取的候选图片进行进一步筛选,极大提高了图片搜索匹配精度,提高了筛选效率,有助于用户更快获得目标图片,从而搜索到目标物品,改善用户体验。本实施例在生成参考图片的颜色色块时,考虑参考图片中所包含的颜色类别以及各颜色的占比,根据颜色类别来生成颜色色块,并根据颜色占比对色块进行排序,确保用户能够直观了解参考图片中所包含的颜色种类分布情况,便于后续选择相应的色块进行物品筛选。

在一些实施例中,排列方式除了包括色块的排列顺序,还包括每种颜色对应的色块的显示面积占比。在获取了颜色类别后,则根据参考图片中所包含的颜色,生成对应的颜色色块,颜色色块在筛选界面的颜色色块显示区域进行显示。其中,各色块按照颜色占比进行排列,且各色块的显示面积与色块的颜色占比正相关,即色块的颜色占比越大,则色块的显示面积越大。当颜色色块以条状形式进行排列显示时,色块的宽度一致,长度与颜色占比正相关,此处的正相关可以是成正比,也可以是不成正比,只要颜色占比越大的色块其长度相对越长即可。

在获取用户上传的参考图片后,进入筛选界面,筛选界面通过上述方式生成默认显示界面。当用户想要重新上传参考图片时,可以点击筛选界面上的拍照按钮重新进入图片获取页面,以重新上传参考图片。拍照按钮优选设置于参考图片显示区域,方便用户操作。当用户想要针对参考图片中某一部分的颜色进行识别以及筛选时,可以点击筛选界面上的裁剪按钮,以生成图片裁剪指令,从而对参考图片进行裁剪。裁剪按钮优选设置于参考图片显示区域,方便用户操作。请参阅图3,具体地,步骤S205的基于所述排列方式对每种颜色对应的色块进行排列,生成所述参考图片的颜色色块后,还可以包括如下步骤:

S301:基于获取的图片裁剪指令,生成裁剪选择框。

请参阅图10,当用户点击筛选界面上的裁剪按钮后,生成图片裁剪指令,基于该图片裁剪指令,在参考图片显示区域生成裁剪选择框,该裁剪框的尺寸可以放大、缩小,也可以移动(如图10(a)和10(b)所示),以方便用户进行裁剪区域的选择。

S302:对裁剪选择框选定的裁剪区域进行图像识别,以获取裁剪区域中每个像素点的像素信息。

在进行裁剪区域的选择时,用户可以通过手指对裁剪选择框进行放大、缩小或者移动,也可以通过外设(鼠标或者键盘等)对裁剪选择框进行放大、缩小或者移动。在用户操作裁剪选择框的过程中,颜色色块显示区域的各色块以及候选图片显示区域的候选图片不发生变化。

当用户选定裁剪区域后,裁剪区域对应的参考图片的区域确定,此时针对该裁剪区域的图片进行图像识别,获取该裁剪区域中每个像素点的像素信息,像素信息可以仅包括像素值,也可以同时包括像素值和像素点位置。

S303:基于裁剪区域中每个像素点的像素信息,确定裁剪区域的颜色信息,颜色信息至少包括裁剪区域的颜色类别。在一些实施例中,颜色信息可以仅包括裁剪区域的颜色类别,还可以同时包括裁剪区域的颜色类别和每种颜色占比。

S304:基于颜色信息,更新颜色色块。

在获取了裁剪区域的颜色信息后,根据新的颜色信息对颜色色块显示区域的颜色色块进行同步更新,以使得用户能够直观了解该裁剪区域的颜色类别以及各颜色占比情况。

当然,在一些实施例中,随着颜色数量的变化,颜色色块的显示形式也可以对应发生变化。例如,当参考图片的参考区域是整张参考图片时,其包含的颜色种类相对较多,从而颜色色块的数量较多,占用的颜色色块显示区域的面积较大,从而颜色色块的整体长度较长;当参考图片的参考区域是裁剪区域时,裁剪区域包含的颜色种类减少,此时颜色色块的数量减少,若保持颜色色块的尺寸不变,此时颜色色块的整体长度将会缩短。再如,当参考图片的参考区域从整张参考图片变为裁剪区域时,颜色种类以及各颜色占比均可能发生变化,颜色色块根据新获得的颜色信息生成颜色色块时,各色块的类型、各色块的位置、各色块的长度均对应发生变化。又如,当参考图片中某种颜色的区域占比很小时,生成的颜色色块中该色块的显示面积对应也较小,导致用户对该区域的颜色不能察觉,当裁剪区域仅选中该区域时,则可以对该区域的颜色进行识别,根据该区域的颜色信息生成的颜色色块对颜色色块显示区域进行更新,从而方便用户了解该特定区域的颜色信息。

本实施例通过对参考图片进行裁剪,可以获取参考图片的裁剪区域的颜色信息,并根据该颜色信息对颜色色块进行实时更新,确保用户能够直观了解参考图片的裁剪区域中所包含的颜色种类分布情况以及颜色占比情况,便于后续选择相应的色块进行物品筛选。

请参阅图4,在一些实施例中,步骤S206的基于颜色色块,获取选定的目标色块步骤,具体包括如下步骤:

S401:基于参考图片的颜色数量,确定选中颜色色块中目标色块的交互方式。

进一步地,在对参考图片的颜色信息进行提取时,获得颜色信息包括颜色类别,而基于该颜色类别,可以获知颜色数量。可以理解的是,颜色色块显示区域有限,随着颜色数量的增多,色块的数量增多,每个色块对应的显示面积会相应减小,因此通过直接点击的方式进行操作时精度不高,因此需要根据颜色数量的多少,对应确定不同的交互方式,以方便用户针对性选取目标色块。

在确定交互方式时,首先判断参考图片的颜色数量是否低于预设阈值,预设阈值可以根据需要进行设置,例如可以为5个、7个或者9个等,此处不做限制。针对移动终端的显示界面,预设阈值可选为7个。

若颜色数量低于预设阈值,此时意味着颜色色块显示区域的空间足够用户通过点击的方式来选中目标色块,因此交互方式为点击颜色色块中的任一色块,即当用户点击任一色块时,该色块被选中,为了让用户能够直观识别选中的色块,当用户选中某一色块时,该色块即进行悬浮放大显示。请参阅图9,例如,对于颜色数量为5个的情形,5个色块沿长度方向排列于颜色色块显示区域,当用户点击位于最左侧的色块时,最左侧的色块悬浮放大显示(如图9(a)所示);当用户点击中间色块时,中间色块悬浮放大显示(如图9(b)所示);当用户点击最右侧的色块时,最右侧的色块悬浮放大显示(如图9(c)所示)。

若颜色数量等于或高于预设阈值,此时意味着颜色色块显示区域的空间中显示有过多颜色色块,用户通过直接点击的方式难以确保精准度,因此交互方式为沿颜色色块滑动至任一色块并点击该色块。例如用户可以通过手指沿颜色色块的方向进行滑动,在滑动的过程中手指指向的当前色块进行悬浮放大显示,以确保用户能够识别当前手指所按压的区域;当用户的手指移动至任一色块时停止滑动,并点击该色块,该色块被选中且保持悬浮放大显示。请参阅图11,例如,对于颜色数量为8个的情形,8个色块沿长度方向排列于颜色色块显示区域,当用户沿颜色色块向右侧滑动时,不影响当前选中的色块,且向右侧可滑动至最右侧的色块为止(如图11(a)所示);当用户沿颜色色块向左侧滑动时,不影响当前选中的色块,且向左侧可滑动至最右侧的色块为止(如图11(b)所示);当点击某一色块后,该色块即处于被选中的状态。

S402:获取针对颜色色块的操作信息。

当需要进行物品筛选时,用户针对颜色色块进行操作。应当理解的是,根据显示的载体不同,用户操作的方式也不相同。以移动设备为例进行说明,用户针对移动终端的显示屏幕可以进行点击、滑动等操作,从而生成相应的操作信息。

S403:基于操作信息和交互方式,确定目标色块。

在确定了交互方式、获取了操作信息后,需要将操作信息与交互方式进行匹配,以确认用户的操作是否正确。

对于颜色数量低于预设阈值的情况,有效的交互方式是用户点击任一色块,如果用户的操作为点击颜色色块中的一个色块,则两者匹配,确定用户点击的色块为目标色块;如果用户的操作为点击屏幕的其他区域,此时两者不匹配,则确认用户未选择任意色块;如果用户的操作为沿颜色色块滑动,此时两者不匹配,则确认用户未选择任意色块。

对于颜色数量等于或高于预设阈值的情况,有效的交互方式是沿颜色色块滑动至任一色块并点击该色块,如果用户的操作为沿颜色色块滑动并点击其中一色块,则两者匹配,确定用户点击的色块为目标色块;如果用户的操作为在其他区域滑动或点击,此时两者不匹配,则确认用户未选择任意色块。

本实施例基于颜色数量对交互方式进行了区分,在颜色数量较少时通过点击的方式来确定目标色块,在颜色数量较多时通过滑动加点击的方式来确定目标色块,有助于提供用户操作的精准度,目标色块的选择更加方便快捷。

请参阅图5,在一些实施例中,步骤S207的基于目标色块对候选图片进行筛选,获取目标图片步骤,可以包括如下步骤:

S501:基于目标色块,获取包含目标色块对应颜色的候选图片。

在确定了目标色块以后,即根据目标色块对应的颜色对候选图片进行筛选,过滤掉不包含目标色块的颜色的候选图片,而仅保留包含该颜色的候选图片。

S502:基于选中的候选图片中包含目标色块对应颜色的占比,对选中的候选图片进行排序并显示,以获取目标图片。

可以理解的是,在通过颜色对候选图片进行筛选时,更多是希望获得包含更多该颜色的候选图片,因此目标色块的选取通常是选择颜色占比更大的色块,所获得的也需要是该颜色占比更大的候选图片。本实施例进一步根据候选图片中包含目标色块对应颜色的占比对选中的候选图片进行排序,颜色占比越大的候选图片排列位置越靠前,颜色占比越小的候选图片排列位置越靠后,并按照顺序进行显示。

在一些实施例中,目标色块的数量可以为两个及以上,当目标色块的数量为至少两个时,对选中的候选图片进行排序并显示的过程可以为:基于各目标色块,获取选中的候选图片中各目标色块对应颜色的占比;基于选中的候选图片中各目标色块对应颜色的占比与参考图片中各目标色块对应的颜色占比,确定选中的候选图片与参考图片的颜色相似度,候选图片的颜色占比与选定的各目标色块的颜色占比差别越小,则颜色相似度越高,反之则越低;基于颜色相似度,对选中的候选图片进行排序,颜色相似度越高的候选图片排列位置越靠前,颜色相似度越低的候选图片排列位置越靠靠后,并按照顺序进行显示,以获取目标图片。

本实施例通过多种颜色结合来对候选图片进行筛选,能够更快速、准确地找到目标图片,从而从海量的候选物品中获得目标物品。

在一些实施例中,无论目标色块的数量为一个或多个,通过目标色块对候选图片进行筛选后,仅保留包含目标色块的颜色的候选图片,过滤不包含或者不同时包含目标色块的颜色的候选图片,且基于参考图片上传后进行图片识别时的相似度对候选图片进行排序,即不改变候选图片原来的相对排序,并按照顺序进行显示,以获取目标图片。

上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。

下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。

图6是本公开实施例提供的一种筛选装置的示意图。如图9所示,该筛选装置包括:

候选图片获取模块601,被配置为基于获取的参考图片,获取与参考图片相关联的候选图片;

像素信息获取模块602,被配置为对参考图片进行图像识别,以获取参考图片中每个像素点的像素信息,像素信息至少包括像素值和像素点位置;

颜色信息确定模块603,被配置为基于参考图片中每个像素点的像素信息,确定参考图片的颜色信息,颜色信息至少包括参考图片的颜色类别和每种颜色占比;

色块排列确定模块604,被配置为根据颜色类别和每种颜色的颜色占比,确定每种颜色对应的色块的排列方式,排列方式至少包括色块的排列顺序;

色块生成模块605,被配置为基于排列方式对每种颜色对应的色块进行排列,生成参考图片的颜色色块;

目标色块获取模块606,被配置为基于颜色色块,获取选定的目标色块;

目标图片获取模块607,被配置为基于目标色块对所述候选图片进行筛选,获取目标图片。

根据本公开实施例提供的技术方案,通过提取参考图片的颜色信息,生成参考图片的颜色色块,并根据用户从颜色色块中选定的目标色块对与参考图片相关联的候选图片进行筛选,获得目标图片,从而实现对物品的筛选。本公开实施例由于在筛选过程中充分考虑了颜色对于物品筛选的重要作用,通过对参考图片中的颜色信息进行提取,并基于颜色信息对获取的候选图片进行进一步的筛选,极大提高了图片搜索匹配精度,提高了筛选效率,有助于用户更快获得目标图片,从而搜索到目标物品,改善用户体验。

在一些实施例中,目标色块获取模块603,被配置为:

基于参考图片的颜色数量,确定选中颜色色块中目标色块的交互方式;

获取针对颜色色块的操作信息;

基于操作信息和交互方式,确定目标色块。

在一些实施例中,目标图片获取模块604,被配置为:

基于目标色块,获取包含目标色块对应颜色的候选图片;

基于选中的候选图片中包含目标色块对应颜色的占比,对选中的候选图片进行排序并显示,以获取目标图片。

图7是本公开实施例提供的计算机设备7的示意图。如图7所示,该实施例的计算机设备7包括:处理器701、存储器702以及存储在该存储器702中并且可以在处理器701上运行的计算机程序703。处理器701执行计算机程序703时实现上述各个方法实施例中的步骤。或者,处理器701执行计算机程序703时实现上述各装置实施例中各模块/单元的功能。

示例性地,计算机程序703可以被分割成一个或多个模块/单元,一个或多个模块/单元被存储在存储器702中,并由处理器701执行,以完成本公开。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序703在计算机设备7中的执行过程。

计算机设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算机设备。计算机设备7可以包括但不仅限于处理器701和存储器702。本领域技术人员可以理解,图7仅仅是计算机设备7的示例,并不构成对计算机设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如,计算机设备还可以包括输入输出设备、网络接入设备、总线等。

处理器701可以是中央处理单元(Central Processing Unit,CPU),也可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器702可以是计算机设备7的内部存储单元,例如,计算机设备7的硬盘或内存。存储器702也可以是计算机设备7的外部存储设备,例如,计算机设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器702还可以既包括计算机设备7的内部存储单元也包括外部存储设备。存储器702用于存储计算机程序以及计算机设备所需的其它程序和数据。存储器702还可以用于暂时地存储已经输出或者将要输出的数据。

本公开实施例还提出了一种可读存储介质,该可读存储介质存储有执行指令,存储的执行指令被电子设备的处理器执行时,能够使该电子设备执行本公开任一实施例中提供的方法,并具体用于执行上述步骤所述的方法。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。

在本公开所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本公开实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可以存储在计算机可读存储介质中,该计算机程序在被处理器执行时,可以实现上述各个方法实施例的步骤。计算机程序可以包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如,在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围,均应包含在本公开的保护范围之内。

技术分类

06120113821508