识别色号方法、装置、计算机设备及存储介质与流程

文档序号:18011062发布日期:2019-06-26 00:04阅读:349来源:国知局
识别色号方法、装置、计算机设备及存储介质与流程

本发明涉及图像识别技术领域,尤其涉及一种识别色号方法、装置、计算机设备及存储介质。



背景技术:

随着美妆业的飞速发展,越来越多的美妆产品层出不穷,各种不同彩妆的色号或质地的彩妆产品越来越受到广大女性的追捧。目前,在客户看到电视剧或电影中女主角的口红颜色、眼影颜色或者眉毛颜色非常漂亮,但客户只能将该片段截图,并根据该截图询问导购或者网上提问,这种方式仅能人工根据肉眼观察结果进行判断以识别色号的方式,效果不佳且得出的结果不够准确,从而导致会出现买错产品的情况,不利于业务推广。



技术实现要素:

本发明实施例提供一种识别色号方法、装置、计算机设备及存储介质,以解决目前通过人工观察识别色号的方式,识别效率低且识别结果不够准确的问题。

一种识别色号方法,包括:

获取智能识别请求,所述智能识别请求包括原始识别图像;

对所述原始识别图像进行人脸检测,获取待识别人脸图像;

采用人脸定位模型对所述待识别人脸图像进行定位,获取人脸预定部位的目标识别图像,所述目标识别图像包括n组标准点;

采用预设提取规则对所述n组标准点进行像素点提取,获取原始像素点;

采用预设转换规则对所述原始像素点和所述目标识别图像进行处理,获取目标rgb值;

基于所述目标rgb值和预先创建好的色号数据库,获取目标色号。

一种识别色号装置,包括:

原始识别图像获取模块,用于获取智能识别请求,所述智能识别请求包括原始识别图像;

待识别人脸图像获取模块,用于对所述原始识别图像进行人脸检测,获取待识别人脸图像;

目标识别图像获取模块,用于采用人脸定位模型对所述待识别人脸图像进行定位,获取人脸预定部位的目标识别图像,所述目标识别图像包括n组标准点;

原始像素点获取模块,用于采用预设提取规则对所述n组标准点进行像素点提取,获取原始像素点;

目标rgb值获取模块,用于采用预设转换规则对所述原始像素点和所述目标识别图像进行处理,获取目标rgb值;

目标色号获取模块,用于基于所述目标rgb值和预先创建好的色号数据库,获取目标色号。

一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述识别色号方法的步骤。

一种非易失性存储介质,所述非易失性存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述识别色号方法的步骤。

上述识别色号方法、装置、计算机设备及存储介质中,先获取智能识别请求,以便对智能识别请求中的原始识别图像进行人脸检测,获取待识别人脸图像,排除无人脸的干扰。再采用人脸定位模型对待识别人脸图像进行定位,以获取仅包含人脸预定部位的目标识别图像。由于人脸预定部位的不同位置的显色度不同,故采用预设提取规则对目标识别图像中的n组标准点进行像素点提取,获取显色度较好的原始像素点。然后,采用预设转换规则对原始像素点和目标识别图像进行处理,获取目标rgb值,以较好的反映目标识别图像的所对应的颜色。最后,基于目标rgb值和预先创建好的色号数据库,获取目标色号,以实现智能识别目标识别图像中人脸预定部位的目标色号,提高目标色号的识别准确率和效率。

附图说明

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

图1是本发明一实施例中识别色号方法的一应用环境示意图;

图2是本发明一实施例中识别色号方法的一示例图;

图3是本发明一实施例中识别色号方法的一流程图;

图4是图3中步骤s50的一具体流程图;

图5是图3中步骤s60的一具体流程图;

图6是本发明一实施例中识别色号方法的一流程图;

图7是本发明一实施例中识别色号方法的一流程图;

图8是本发明一实施例中识别色号装置的一示意图;

图9是本发明一实施例中计算机设备的一示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供的识别色号方法可应用一种识别色号系统中,用于智能识别人脸预定部位的目标色号,该目标色号可为包括但不限于眼影色号、眉毛色号或口红色号,无需人工干预,提高目标色号的识别效率和准确率。需说明,本实施例中以识别口红色号作为示例进行说明。该识别色号方法可应用在如图1的应用环境中,其中,计算机设备通过网络与服务器进行通信。计算机设备可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器可以用独立的服务器来实现。

在一实施例中,如图3所示,提供一种识别色号方法,以该方法应用在图1中的服务器为例进行说明,包括如下步骤:

s10:获取智能识别请求,智能识别请求包括原始识别图像。

其中,智能识别请求是用于触发服务器识别用户上传的原始识别图像中人脸预定部位的色号的请求。人脸预定部位是预先指定的识别色号的人脸部位。该人脸预定部位包括但不限于左眼、右眼、左眉毛、右眉毛、鼻子以及嘴巴等。具体地,在系统中会提供一图像采集模块,用户可通过图像采集模块采取拍摄上传或者本地上传的方式上传原始识别图像到服务器,以使服务器获取原始识别图像。为确保原始识别图像为有效图像,因此本案中,在采集到原始识别图像后,还可对原始识别图像进行模糊检查,若原始识别图像过于模糊,则提示重新拍摄,直至获得较清晰的原始识别图像。

具体地,对原始识别图像进行模糊检查的过程如下:先对用户上传的原始识别图像进行灰度化,以便采用3x3的拉普拉斯算子(可理解为3x3的矩阵)进行卷积处理,以便采用std2()函数计算卷积后原始识别图像的标准差,再对标准差进行平方,获取原始识别图像的方差,以便将原始识别图像的方差与预设阈值进行判断,该预设阈值是预先设定好的用于判定原始识别图像的方差的阈值。若原始识别图像的方差大于或等于预设阈值,则说明该原始识别图像的清晰度已经达到预设阈值,无需重新拍摄。std2()函数是用于计算卷积后原始识别图像的标准差的函数。若原始识别图像对应的方差小于预设阈值,则说明该原始识别图像的清晰度未达到预设阈值,需提示重新拍摄,直至获得较清晰的原始识别图像,提高后续图像颜色的清晰度,进而使得最终获取口红色号的准确率更高。

s20:对原始识别图像进行人脸检测,获取待识别人脸图像。

其中,待识别人脸图像是将原始识别图像输入到预先配置好的人脸检测接口进行识别所得到的人脸图片。本案中,人脸检测接口可采用cascadecnn网络对标注好人脸位置的图片进行训练实现。

其中,cascadecnn(人脸检测)是对经典的violajones方法的深度卷积网络实现,是一种检测速度较快的人脸检测方法。violajones是一种人脸检测框架。本实施例中,采用cascadecnn方法对标注好人脸位置的图片进行训练,以获取人脸检测接口,基于该人脸检测接口进行人脸检测,可提高其检测效率。具体地,采用基于cascadecnn方法训练好的人脸检测接口对原始识别图像进行人脸检测,检测原始识别图像中的人脸位置,进而提取其中的人脸图片即为待识别人脸图像,若没有检测到人脸则提示用户需重新拍摄。

s30:采用人脸定位模型对待识别人脸图像进行定位,获取人脸预定部位的目标识别图像,目标识别图像包括n组标准点。

其中,人脸定位模型可根据待识别人脸图像定位到人脸特征点对应的坐标。人脸预定部位是预先指定的识别色号的人脸部位。该人脸预定部位包括但不限于左眼、右眼、左眉毛、右眉毛、鼻子以及嘴巴等。本实施例中,以嘴巴作为人脸预定部位为例进行说明。该人脸特征点包括左眼、右眼、左眉毛、右眉毛、鼻子以及嘴巴等人脸部位对应的轮廓点。目标识别图像是指仅包含嘴部区域的识别图像。该目标识别图像包括n组标准点,标准点是指目标识别图像中嘴部区域的轮廓点,即图2中所标注的58-71。本实施例中,目标识别图像(如图2的示例图所示)包括14个嘴部轮廓点(即图中的58-71),在这14个嘴部轮廓点中,在同一直线上的两个点即为一组标准点,例如图2中,嘴部区域的外部轮廓点为58-65(图2中的58和62为左嘴角对应的标准点和右嘴角对应的标准点),内部轮廓点为两个嘴角对应的标准点以及66-71,n组标准点即为59和66、60和67、61和68、63和69、64和70和65和71。具体地,将待识别人脸图像输入到人脸定位模型进行识别,特征点检测模型会得出每一人脸特征点的坐标位置。人脸定位模型可采用dcnn网络对预先按照数字标号标注好人脸特征点位置的图片(例如嘴巴采用数字58-71(共14个点)标注、左眼采用数字1-14标注,仅做举例说明,在此不做限定)进行训练实现。dcnn(深度卷积神经网络)是一种深度卷积神经网络。

s40:采用预设提取规则对n组标准点进行像素点提取,获取原始像素点。

其中,预设提取规则是预先设定好的用于从n组标准点钟选取显色度较好的像素点的规则。具体地,由于嘴部中间区域的显色度相比嘴角区域和嘴部边缘区域的显色度效果更好,因此,本实施例中按照如下预设提取规则对n组标准点进行像素点标准点提取,即选取59和66、60和67、61和68、63和69、64和70以及65和71这6组标准点所连直线的中间点作为原始像素点。例如,以59和66这一组标准点为例,由于目标识别图像中的每一像素点对应一像素坐标,故59和66这一组标准点所连直线的中间点即得到原始像素点对应的像素坐标为其中,(x1,y1)为59这一标准点对应的像素坐标;(x2,y2)为66这一标准点对应的像素坐标。本实施例中,由于提取的6个原始像素点,是分布在目标识别图像的中间区域即嘴部中间区域,相对于嘴角区域和嘴部边缘区域的显色度更佳,且是上下左右区域的6个原始像素点,具有一定的代表性,提高获取目标色号的准确率。

s50:采用预设转换规则对原始像素点和目标识别图像进行处理,获取目标rgb值。

其中,预设转换规则是预先设置的用于对原始像素点和目标识别图像进行转换处理以得到目标rgb值的规则。目标rgb值是根据原始像素点对应的rgb值按照预设转换规则进行处理所得到的用于识别色号的rgb值。具体地,由于步骤s40提取到的6个具有代表性的原始像素点所对应的rgb值不同,因此需将这6个原始像素点的rgb值按照预设转换规则进行处理,以获取目标rgb值。可理解地,目标rgb值可较好的从整体上反映目标识别图像的所对应的颜色。

s60:基于目标rgb值和预先创建好的色号数据库,获取目标色号。

其中,目标色号是指识别到的与目标识别图像相对应的色号,如口红色号或眉毛色号。本实施例中,以目标色号为口红色号为例进行说明。色号数据库预先根据已有的彩妆产品的色号(如口红色号或眉笔色号)按照不同品牌或者不同色系进行创建的数据库。本实施例中以彩妆色号为口红色号作为示例进行说明。具体地,若以不同品牌进行创建,则该色号数据库中包括至少一个品牌信息表,每一品牌信息表中均包括口红试色图片、对应的待匹配rgb值和对应的口红信息。口红试色图片是从各公开试色应用程序中获取的。待匹配rgb是指采用步骤s30-s50对口红试色图片进行处理所得到的rgb值。口红信息包括但不限于品牌信息、颜色名称、口红色号、口红价格、口红质地和口红气味等信息。

若以不同色系进行创建,则该色号数据库中包括至少一个色系信息表,该色系信息表包括色系名称(例如,红色、橘色和粉色等)、与色系名称对应的口红信息、与色系名称对应的待匹配rgb值、与色系名称对应的rgb值范围。具体地,服务器先获取不同品牌对应的口红试色图片(即包含嘴部区域的试色图片),并按照步骤s30-s50的操作获取口红试色图片对应的待匹配rgb值,将该口红试色图片对应的口红信息和待匹配rgb值关联存储在数据中,以完成色号数据库的创建。

具体地,将目标rgb值与色号数据库中的待匹配rgb值进行匹配,以获取匹配度较高的待匹配rgb值对应的口红色号即为目标色号,以实现识别色号的目的,无需依赖人工客服进行肉眼识别,提高口红色号识别的准确率且提高获取口红色号的效率。

本实施例中,先获取智能识别请求,以便对智能识别请求中的原始识别图像进行人脸检测,获取待识别人脸图像,排除无人脸的干扰。再采用人脸定位模型对待识别人脸图像进行定位,以获取仅包含人脸预定部位也即嘴部区域的目标识别图像。由于嘴部中间部位的显色度相比嘴角部位效果更好,故采用预设提取规则对目标识别图像中的n组标准点进行像素点提取,获取显色度较好的原始像素点。然后,采用预设转换规则对原始像素点和目标识别图像进行处理,获取目标rgb值,以较好的反映目标识别图像的所对应的颜色。最后,基于目标rgb值和预先创建好的色号数据库,获取目标色号,以实现智能识别目标人物的口红色号,无需用户亲自去专柜询问,节省时间,且有效解决人工根据肉眼进行判断导致识别准确率较低的问题,提高目标色号的识别准确率。

在一实施例中,如图4所示,步骤s50中,即采用预设转换规则对原始像素点和目标识别图像进行处理,获取目标rgb值,具体包括如下步骤:

s51:采用图像处理函数对原始像素点和目标识别图像进行处理,获取与原始像素点对应的原始rgb值。

具体地,将原始像素点和目标识别图像输入到opencv提供的图片处理函数(如:cvget2d)中,即可获取原始像素点对应的原始rgb值。opencv是一个基于bsd许可(开源)发行的跨平台计算机视觉库,可以运行在linux、windows、android和macos操作系统上,具有轻量级且高效的优点,提供了python、ruby、matlab等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

s52:对原始rgb值进行取均值处理,获取目标rgb值。

具体地,由于步骤s40提取到的6个具有代表性的原始像素点所对应的rgb值不同,因此需将这6个原始像素点对应的原始rgb值进行取均值处理,即将这6个原始rgb值对应的按照分量值r、分量值g和分量b分别相加除以6即可得到目标rgb值,例如这6个原始rgb值分别为(100,122,132)、(103,120,130)、(99,118,133)、(101,122,131)、(102,118,130)和(101,120,135),将这6个原始rgb值中按照分量值r相加除以6即按照分量值g相加除以6即按照分量值b相加除以6即则目标rgb值即为(101,120,131)。

在一实施例中,色号数据库包括至少一个待匹配rgb值和对应的原始色号,如图5所示,步骤s60中,即基于目标rgb值和预先创建好的色号数据库,获取目标色号,具体包括如下步骤:

s61:采用颜色相似度算法对目标rgb值和每一待匹配rgb值进行处理,获取第一颜色相似度。

其中,第一颜色相似度是指采用颜色相似度算法对目标rgb值和色号数据库中存储的待匹配rgb值进行计算所获取到的颜色相似度。具体地,通过采用颜色相似度算法对目标rgb值和色号数据库中存储的每一待匹配rgb值进行计算,获取至少一个颜色相似度。本案中,颜色相似度算法包括但不限于采用余弦相似度进行计算。

其中,余弦相似度,又称为余弦相似性,是通过计算两个向量的夹角余弦值来评估他们的相似度。可理解,颜色相似度的值越小,说明个体间相似度越小,颜色相似度的值越大说明个体差异越大。余弦相似度的计算公式为p1=sqrt(r1*r1+g1*g1+b1*b1);p2=sqrt(r2*r2+g2*g2+b2*b2);cos(a)=(r1*r2+g1*g2+b1*b2)/(p1*p2);其中,(r1,g1,b1)表示目标rgb值;(r2,g2,b2)表示待匹配rgb值,cos(a)表示颜色相似度。

具体地,将目标rgb值和色号数据库中存储的待匹配rgb值进行计算可有两种方式,若色号数据库是按照不同品牌进行创建,则将目标rgb值和待匹配rgb值进行一一计算,这种计算方式效率较低但准确率较高。若色号数据库是按照不同色系进行创建,则将目标rgb值中的rgb三个分量与每一不同色系对应的rgb值范围(包括分量r对应的数值范围、分量g对应的数值范围以及分量b对应的数值范围)进行对比,若目标rgb值中的rgb三个分量满足某一色系对应的rgb值范围,即同时满足分量r对应的数值范围、分量g对应的数值范围以及分量b对应的数值范围,则将该色系作为目标rgb值对应的目标色系,并采用颜色相似度算法对目标rgb值和与上述满足rgb数值范围色系对应的待匹配rgb值进行计算,这种计算方式的效率较高但准确率相对较低。其中,不同色系对应的rgb值范围是开发人员预先根据公开的色系数据确定的rgb值范围。

s62:选取第一颜色相似度排在前n位的待匹配rgb值作为第一rgb值,将第一rgb值对应的原始色号作为候选色号。

s63:从候选色号中选取一个作为目标色号。

其中,第一rgb值是指第一颜色相似度排在前n位的待匹配rgb值。具体地,选取第一颜色相似度排在前n位的待匹配rgb值作为第一rgb值,需说明,不同的第一rgb值对应不同的颜色(即口红色号)。可理解地,由于可能会存在同一个颜色提取的rgb值相同的情况,比如迪奥999,滋润款,金属款和夹心款。服务器会将相同rgb值的口红信息全部推荐给用户,以便用户选择,本实施例中可根据需要自行调整n值,在此不做限定。

具体地,服务器根据获取到的第一rgb值,查询色号数据库中预存储的与第一rgb值相对应的口红信息,该口红信息包括但不限于品牌信息、颜色名称、口红色号、口红价格、口红质地和口红气味等信息。通过查询色号数据库中预先存储的与第一rgb值对应的口红信息,以获取与第一rgb值相对应的口红色号作为候选色号,并按照第一颜色相似度从高到低的方式推荐给用户,同时会将口红信息中的口红价格、口红质地和口红气味等信息全部推荐给用户,以避免出现识别到同一颜色的口红,而用户不知如何选取的情况,通过将口红价格、口红质地和口红气味等信息推荐给用户,以辅助用户根据上述信息进行从候选色号中选取一个,以使服务器获取目标色号。

进一步地,还可在交互界面配置一购买链接,在获取到目标色号后,可生成提示信息,用于提示用户是否进入相应的购买链接购买该款口红,若用户选择“是”,则服务器通过购买链接进入交易平台,基于获取的目标色号和对应的口红信息进行查询,以获取交易平台中与目标色号相对应的商铺信息展示给用户,以便用户直接通过交易平台进行交易,方便使用,提高业务转化率。

本实施例中,服务器先采用颜色相似度算法对目标rgb值和每一待匹配rgb值进行处理,获取第一颜色相似度,以便选取第一颜色相似度排在前n位的待匹配rgb值作为第一rgb值,将第一rgb值对应的原始色号作为候选色号,以供用户选择。最后,从候选色号中选取一个作为目标色号,以实现智能识别彩妆产品(如口红或眉笔)的色号,无需人工询问,提高目标色号的获取效率。

在一实施例中,如图6所示,步骤s60之后,该识别色号方法还包括如下步骤:

s711:获取试色请求,试色请求包括用户图像。

其中,试色请求是用于触发服务器基于目标色号对用户图像中人脸预定部位进行上色的请求。具体地,系统还会提供一彩妆产品试色模块,以供用户根据上述目标色号进行试色体验。用户可在彩妆产品试色模块提供的图像采集区域采用包括但不限于照片拍摄或本地上传的方式上传用户图像,以使服务器获取试色请求。可理解地,该图像采集区域是指试色模块中的图像采集区域,而

s712:对用户图像进行人脸检测,获取试色人脸图像。

其中,用户图像是指采用人脸检测接口对用户图像进行检测,以获取包含人脸的图像。具体地,对用户图像进行人脸检测,获取试色人脸图像的步骤与步骤10一致,为避免重复,在此不再赘述。

s713:采用人脸定位模型对试色人脸图像进行定位,获取待试色区域,待试色区域对应至少一个待处理rgb值。

其中,待试色区域是指根据人脸定位模型对试色人脸图像进行特征点定位所获取的人脸预定部位对应的区域。本实施例中,以待试色区域为嘴部区域为例进行说明。该待试色区域包括至少一个像素点,每一像素点对应一待处理rgb值。具体地,采用预先训练好的人脸定位模型对试色人脸图像进行特征点定位,获取待试色区域与步骤s20一致,为避免重复,在此不再赘述。

s714:分别对至少一个待处理rgb值和目标色号对应的第一rgb值进行归一化处理,获取每一待处理rgb值对应的归一化rgb值和第一rgb值对应的第二rgb值。

具体地,由于rgb中各分量的取值范围为0-255,不容易计算,因此可先将待处理rgb值和目标色号对应的第一rgb值进行归一化处理,以方便计算。例如,当前像素值为144,155,128,则对其进行归一化处理转换为0-1之间的实数,即144/255,155/255,128/255。

s715:将归一化rgb值对应的归一化分量值和第二rgb值对应的第二分量值进行相乘运算,获取目标试色图像。

其中,目标试色图像是服务器根据目标色号对待试色区域上色后的嘴部区域图像。具体地,根据待试色区域的位置,也即上述嘴部轮廓区域图像中的像素点,确定待试色区域,采用目标色号对应的rgb值对待试色区域进行着色,以获取目标试色图像。最后,归一化rgb值对应的归一化分量值(即r、g和b)与目标色号对应的rgb值(即r、g和b)按照分量值r、分量值g和分量b这三个维度相乘即可进行试色,获取目标试色图像,以便用户可根据目标试色图像直观地看到试色效果,无需根据获取的目标色号到专柜试色即可预览效果。

本实施例中,先获取试色请求,以便对试色请求中的用户图像进行人脸检测,获取试色人脸图像,以排除无人脸图像的干扰。接着,采用人脸定位模型对试色人脸图像进行定位,获取仅包含用户嘴部区域的待试色区域。然后,分别对至少一个待处理rgb值和目标色号对应的第一rgb值进行归一化处理,获取每一待处理rgb值对应的归一化rgb值和第一rgb值对应的第二rgb值,以方便计算。最后,将归一化rgb值对应的归一化分量值和第二rgb值对应的第二分量值进行相乘运算,获取目标试色图像,以便用户可根据目标试色图像直观地看到试色效果,无需根据获取的目标色号到专柜试色即可预览效果。

在一实施例中,如图7所示,步骤s71之后,该识别色号方法还包括如下步骤:

s721:基于试色请求,生成肤色搭配提示信息。

s722:基于肤色搭配提示信息,获取肤色搭配请求,肤色搭配请求包括面部肤色。

其中,肤色搭配提示信息是用于提示用户是否需要进行肤色搭配建议的提示信息。肤色搭配请求是用于触发服务器基于用户面部肤色和目标色号进行分析获取肤色搭配建议的请求。具体地,在获取试色请求后,会提示用户是否需要获取肤色搭配建议,若需要可点击“是”,此时,服务器会弹出一选项列表,该选项列表包括偏白、偏黄以及偏黑等皮肤标签。用户根据选项列表选择所属面部肤色,以使服务器获取肤色搭配请求。

s723:基于面部肤色,查询肤色对照表,获取与面部肤色对应的推荐色号。

其中,肤色对照表包括与每一皮肤标签(偏白、偏黄以及偏黑等)相对应的推荐色号和对应的推荐色号rgb值。具体地,服务器基于用户面部肤色查询肤色对照表,获取与用户面部肤色对应的推荐色号rgb值。例如若用户面部肤色为偏白,则查询肤色对照表,获取与皮肤标签为偏白字段对应的推荐色号和对应的推荐色号rgb值,如珊瑚色(255,127,80)、粉红色(255,192,203)以及砖红色(178,34,34)等。

s724:采用颜色相似度算法对推荐色号对应的推荐色号rgb值和目标色号对应的第一rgb值进行处理,获取第二颜色相似度。

其中,第二颜色相似度是采用颜色相似度算法对推荐色号rgb值和目标色号对应的第一rgb值进行计算所获取的颜色相似度。具体地,通过采用颜色相似度算法对推荐色号rgb值和目标色号对应的第一rgb值进行计算,获取至少一个第二颜色相似度。本实施例中,颜色相似度算法包括但不限于采用余弦相似度进行计算,该计算过程如步骤s61一致,为避免重复,在此不再赘述。

s725:基于第二颜色相似度,获取肤色搭配建议。

其中,肤色搭配建议包括第一类型肤色搭配建议和第二类型肤色建议。第一类型肤色建议是指彩妆产品(如口红或眉笔)的目标色号与用户面部肤色友好的肤色搭配建议。第二类型肤色建议是指彩妆产品(如口红或眉笔)的目标色号完全不适合用户面部肤色的肤色搭配建议。具体地,若获取到的x个第二颜色相似度中有至少m个达到搭配阈值即m/x的比值大于搭配阈值,则默认该目标色号与用户面部肤色友好,与推荐色号属于同一色系,获取第一类型肤色搭配建议。搭配阈值是指用反映面部肤色与目标色号之间的亲和度阈值。例如,若获取的3个第二颜色相似度中有1个达到搭配阈值,则默认该目标色号与用户面部肤色友好,则获取用户的面部肤色与该目标色号适合且合适度为(m/x*100%)的肤色搭配建议。若获取的x个第二颜色相似度均未达到搭配阈值,则获取第二类型肤色建议即该目标色号完全不适合用户面部肤色的建议,并给用户推荐与目标色号同属一个品牌的其他适合用户面部肤色的推荐色号。

本实施例中,基于用户选择的面部肤色,查询肤色对照表,获取与面部肤色对应的推荐色号,以便采用颜色相似度算法对推荐色号对应的推荐色号rgb值和目标色号对应的第一rgb值进行处理,获取第二颜色相似度,根据第二颜色相似度,获取肤色搭配建议,以便用户能够根据肤色搭配建议预估用户的肤色是否与目标色号友好,辅助用户判断是否需要够买与目标色号相同颜色的彩妆产品(如口红或眉笔)。

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

在一实施例中,提供一种识别色号装置,该识别色号装置与上述实施例中识别色号方法一一对应。如图8所示,该识别色号装置包括原始识别图像获取模块10、待识别人脸图像获取模块20、目标识别图像获取模块30、原始像素点获取模块40、目标rgb值获取模块50和目标色号获取模块。各功能模块详细说明如下:

原始识别图像获取模块10,用于获取智能识别请求,智能识别请求包括原始识别图像。

待识别人脸图像获取模块20,用于对原始识别图像进行人脸检测,获取待识别人脸图像。

目标识别图像获取模块30,用于采用人脸定位模型对待识别人脸图像进行定位,获取人脸预定部位的目标识别图像,目标识别图像包括n组标准点。

原始像素点获取模块40,用于采用预设提取规则对n组标准点进行像素点提取,获取原始像素点。

目标rgb值获取模块50,用于采用预设转换规则对原始像素点和目标识别图像进行处理,获取目标rgb值。

目标色号获取模块60,用于基于目标rgb值和预先创建好的色号数据库,获取目标色号。

具体地,目标rgb值获取模块50包括原始rgb值获取单元51和目标rgb值获取单元52。

原始rgb值获取单元51,用于采用图像处理函数对原始像素点和目标识别图像进行处理,获取与原始像素点对应的原始rgb值。

目标rgb值获取单元52,用于对原始rgb值进行取均值处理,获取目标rgb值。

具体地,色号数据库包括至少一个待匹配rgb值和对应的原始色号,目标色号获取模块60包括第一颜色相似度获取单元61、候选色号获取单元62和目标色号获取单元63。

第一颜色相似度获取单元61,用于采用颜色相似度算法对目标rgb值和每一待匹配rgb值进行处理,获取第一颜色相似度。

候选色号获取单元62,用于选取第一颜色相似度排在前n位的待匹配rgb值作为第一rgb值,将第一rgb值对应的原始色号作为候选色号。

目标色号获取单元63,用于从候选色号中选取一个作为目标色号。

具体地,该识别色号装置还包括试色请求获取单元、试色人脸图像获取单元、待处理rgb值获取单元、归一化处理单元和目标试色图像获取单元。

试色请求获取单元,用于获取试色请求,试色请求包括用户图像。

试色人脸图像获取单元,用于对用户图像进行人脸检测,获取试色人脸图像。

待处理rgb值获取单元,用于采用人脸定位模型对试色人脸图像进行定位,获取待试色区域,待试色区域对应至少一个待处理rgb值。

归一化处理单元,用于分别对至少一个待处理rgb值和目标色号对应的第一rgb值进行归一化处理,获取每一待处理rgb值对应的目标分量值和与第一rgb值对应的试色rgb值。

目标试色图像获取单元,用于将目标分量值和试色rgb值对应的试色分量值进行相乘运算,获取目标试色图像。

具体地,该识别色号装置还包括肤色搭配提示信息获取单元、肤色搭配请求获取单元、推荐色号获取单元、第二颜色相似度获取单元和肤色搭配建议获取单元。

肤色搭配提示信息获取单元,用于基于试色请求,生成肤色搭配提示信息。

肤色搭配请求获取单元,用于基于肤色搭配提示信息,获取肤色搭配请求,肤色搭配请求包括面部肤色。

推荐色号获取单元,用于基于面部肤色,查询肤色对照表,获取与面部肤色对应的推荐色号。

第二颜色相似度获取单元,用于采用颜色相似度算法对推荐色号对应的推荐色号rgb值和目标色号对应的第一rgb值进行处理,获取第二颜色相似度。

肤色搭配建议获取单元,用于基于第二颜色相似度,获取肤色搭配建议。

关于识别色号装置的具体限定可以参见上文中对于识别色号方法的限定,在此不再赘述。上述识别色号装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储执行识别色号方法过程中生成或获取的数据,如目标色号。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种识别色号方法。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中的识别色号方法的步骤,例如图3所示的步骤s10-s60,或者图4至图7中所示的步骤。或者,处理器执行计算机程序时实现识别色号装置这一实施例中的各模块/单元的功能,例如图8所示的各模块/单元的功能,为避免重复,这里不再赘述。

在一实施例中,提供一非易失性存储介质,该非易失性存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中用户帐号解锁方法的步骤,例如图3所示的步骤s10-s60,或者图4至图7中所示的步骤,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现上述识别色号装置这一实施例中的各模块/单元的功能,例如图8所示的各模块/单元的功能,为避免重复,这里不再赘述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。

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

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1