CN117874320A - 一种智能镜、服装搭配方法及装置 - Google Patents
一种智能镜、服装搭配方法及装置 Download PDFInfo
- Publication number
- CN117874320A CN117874320A CN202211209595.2A CN202211209595A CN117874320A CN 117874320 A CN117874320 A CN 117874320A CN 202211209595 A CN202211209595 A CN 202211209595A CN 117874320 A CN117874320 A CN 117874320A
- Authority
- CN
- China
- Prior art keywords
- clothing
- user
- image
- garment
- information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 40
- 239000013598 vector Substances 0.000 claims abstract description 81
- 238000012545 processing Methods 0.000 claims description 44
- 239000011159 matrix material Substances 0.000 claims description 19
- 230000009466 transformation Effects 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 14
- 238000001514 detection method Methods 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 238000013527 convolutional neural network Methods 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 8
- 230000013011 mating Effects 0.000 claims 1
- 230000037237 body shape Effects 0.000 abstract description 21
- 230000008901 benefit Effects 0.000 abstract description 6
- 238000004891 communication Methods 0.000 description 37
- 238000010586 diagram Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 18
- 238000003860 storage Methods 0.000 description 18
- 210000001624 hip Anatomy 0.000 description 17
- 238000004590 computer program Methods 0.000 description 14
- 238000012986 modification Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 210000002414 leg Anatomy 0.000 description 5
- 238000005457 optimization Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 240000002853 Nelumbo nucifera Species 0.000 description 3
- 235000006508 Nelumbo nucifera Nutrition 0.000 description 3
- 235000006510 Nelumbo pentapetala Nutrition 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 210000001217 buttock Anatomy 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 210000001015 abdomen Anatomy 0.000 description 2
- 230000003187 abdominal effect Effects 0.000 description 2
- 210000000038 chest Anatomy 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 235000019525 fullness Nutrition 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 208000027906 leg weakness Diseases 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 235000019627 satiety Nutrition 0.000 description 1
- 230000036186 satiety Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000000689 upper leg Anatomy 0.000 description 1
- 230000003313 weakening effect Effects 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本申请提供了一种智能镜、服装搭配方法及装置。通过获取待搭配用户对应的用户图像和多张服装图像;然后根据用户图像和多张服装图像,确定待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息;然后根据待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配。由此,本申请将用户的体型信息、服装的特征向量和服装的款式信息结合在一起去综合考虑针对待搭配用户与服装的搭配,实现针对待搭配用户的个性化的穿搭推荐,有效凸显用户身材优势,隐藏身材劣势,切实为用户推荐适合用户身材特点的穿搭。同时还能够根据用户喜好,筛选出用户喜欢版型的服装,再为用户做穿搭推荐。
Description
技术领域
本申请涉及智能家居设备技术领域,尤其涉及一种智能镜、服装搭配方法及装置。
背景技术
随着人们生活水平的提高,人们对衣服的要求也越来越高,在面对各式各样的衣服时,人们的选择性变大,从而无法对各式各样的衣服进行有效的搭配。
目前穿搭推荐更多的是站在服装图片特征的角度,去考虑服装的组合搭配或者不搭配,站在天气、用户购物记录为用户推荐符合用户喜好的服装。随着深度学习、卷积神经网络的不断发展,在视觉领域的应用也愈加成熟。但是目前针对服装商品的特征表达还集中在视觉特征向量的提取。该类特征向量属于全局图像特征向量,对于表达服装类别更敏感,具有相同服装类别的特征向量是相同的,但是同一服装类别的服装也各不相同,因此现有的服装搭配方法不能对用户进行精准推荐,满足用户的需求。因此,目前亟需一种智能的服装搭配方法,为用户提供精准的、适合用户的服装搭配。
发明内容
本申请示例性的实施方式中提供了一种智能镜、服装搭配方法及装置,用以为用户提供精准的、适合用户的服装搭配。
第一方面,本申请示例性的实施方式中提供了一种智能镜,所述智能镜包括:
摄像头,用于获取待搭配用户对应的用户图像和多张服装图像;
触摸显示屏,用于显示图像;
处理器,被配置为:
根据所述待搭配用户对应的用户图像,利用人体关键点检测算法获取所述待搭配用户的多个人体关键点,并基于所述多个人体关键点和所述待搭配用户的身体参数,确定所述待搭配用户的体型信息;
确定所述多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息;
根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
在一些示例性的实施方式中,所述处理器被配置为:
针对所述多张服装图像中的每一张服装图像,分别执行以下操作:
根据已训练的卷积神经网络,确定所述服装图像中服装对应的多个不同尺寸的特征向量;
基于所述服装对应的多个不同尺寸的特征向量,确定所述服装的多个服装关键点;
基于所述多个服装关键点和预设的映射关系,确定所述服装的款式信息;所述预设的映射关系表征服装的款式信息与服装关键点之间的对应关系。
在一些示例性的实施方式中,所述处理器被配置为:
分别基于所述每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;
基于所述每一张服装图像对应的服装的目标特征信息,和所述体型信息,确定各个服装之间的搭配概率;
基于所述各个服装之间的搭配概率,为所述待搭配用户进行服装搭配。
在一些示例性的实施方式中,所述处理器被配置为:
将所述体型信息和所述每一张服装图像对应的服装的目标特征信息,输入已训练的图网络;
基于所述图网络进行编码处理,得到编码后的目标特征信息集合;所述目标特征信息集合包括所述每一张服装图像对应的服装的编码后的目标特征信息;
对所述编码后的目标特征信息集合进行解码处理,得到所述各个服装之间的搭配概率。
在一些示例性的实施方式中,所述处理器被配置为:
基于所述每一张服装图像对应的服装的目标特征信息,和所述图网络中初始化的连接矩阵,确定所述各个服装之间的权重值;
基于所述各个服装之间的权重值、所述体型信息和所述每一张服装图像对应的服装的目标特征信息,确定第一层网络层输出的目标特征信息集合;
基于所述各个服装之间的权重值、所述每一张服装图像对应的服装的目标特征信息,和上一层网络层输出的目标特征信息集合,确定当前层网络层的目标特征信息集合,直至确定最后一层网络层输出的目标特征信息集合,并将所述最后一层网络层输出的目标特征信息集合,作为所述编码后的目标特征信息集合。
在一些示例性的实施方式中,所述处理器被配置为:
基于所述编码后的目标特征信息集合中所述每一张服装图像对应的服装的编码后的目标特征信息之间的差异,进行线性变换处理,得到线性变换后的目标特征信息;
利用激活函数对所述线性变换后的目标特征信息进行处理,得到所述多张服装图像对应的服装之间的搭配概率。
在一些示例性的实施方式中,所述处理器被配置为:
若获取到针对所述待搭配用户的服装搭配规则,则根据所述服装搭配规则、所述体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
在一些示例性的实施方式中,所述处理器被配置为:
基于所述每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;
基于所述服装搭配规则、所述体型信息和所述每一张服装图像对应的服装的目标特征信息,进行编码处理,得到编码后的目标特征信息集合;所述目标特征信息集合中包括所述每一张服装图像对应的服装的编码后的目标特征信息;
对所述编码后的目标特征信息集合进行解码处理,得到各个服装之间的搭配概率;
基于所述各个服装之间的搭配概率,为所述待搭配用户进行服装搭配。
第二方面,本申请示例性的实施方式中提供了一种服装搭配方法,所述方法包括:
获取待搭配用户对应的用户图像和多张服装图像;所述待搭配用户对应的用户图像为对所述待搭配用户拍摄得到的;
根据所述待搭配用户对应的用户图像,利用人体关键点检测算法获取所述待搭配用户的多个人体关键点,并基于所述多个人体关键点和所述待搭配用户的身体参数,确定所述待搭配用户的体型信息;
确定所述多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息;
根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
在一些示例性的实施方式中,所述确定所述多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息,包括:
针对所述多张服装图像中的每一张服装图像,分别执行以下操作:
根据已训练的卷积神经网络,确定所述服装图像中服装对应的多个不同尺寸的特征向量;
基于所述服装对应的多个不同尺寸的特征向量,确定所述服装的多个服装关键点;
基于所述多个服装关键点和预设的映射关系,确定所述服装的款式信息;所述预设的映射关系表征服装的款式信息与服装关键点之间的对应关系。
在一些示例性的实施方式中,所述根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配,包括:
分别基于所述每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;
基于所述每一张服装图像对应的服装的目标特征信息,和所述体型信息,确定各个服装之间的搭配概率;
基于所述各个服装之间的搭配概率,为所述待搭配用户进行服装搭配。
在一些示例性的实施方式中,所述基于所述每一张服装图像对应的服装的目标特征信息,和所述体型信息,确定各个服装之间的搭配概率,包括:
将所述体型信息和所述每一张服装图像对应的服装的目标特征信息,输入已训练的图网络;
基于所述图网络进行编码处理,得到编码后的目标特征信息集合;所述目标特征信息集合包括所述每一张服装图像对应的服装的编码后的目标特征信息;
对所述编码后的目标特征信息集合进行解码处理,得到所述各个服装之间的搭配概率。
在一些示例性的实施方式中,所述图网络包括至少两层网络层;所述基于所述图网络进行编码处理,得到编码后的目标特征信息集合,包括:
基于所述每一张服装图像对应的服装的目标特征信息,和所述图网络中初始化的连接矩阵,确定所述各个服装之间的权重值;
基于所述各个服装之间的权重值、所述体型信息和所述每一张服装图像对应的服装的目标特征信息,确定第一层网络层输出的目标特征信息集合;
基于所述各个服装之间的权重值、所述每一张服装图像对应的服装的目标特征信息,和上一层网络层输出的目标特征信息集合,确定当前层网络层的目标特征信息集合,直至确定最后一层网络层输出的目标特征信息集合,并将所述最后一层网络层输出的目标特征信息集合,作为所述编码后的目标特征信息集合。
在一些示例性的实施方式中,所述对所述编码后的目标特征信息集合进行解码处理,得到所述各个服装之间的搭配概率,包括:
基于所述编码后的目标特征信息集合中所述每一张服装图像对应的服装的编码后的目标特征信息之间的差异,进行线性变换处理,得到线性变换后的目标特征信息;
利用激活函数对所述线性变换后的目标特征信息进行处理,得到所述多张服装图像对应的服装之间的搭配概率。
在一些示例性的实施方式中,所述根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配,包括:
若获取到针对所述待搭配用户的服装搭配规则,则根据所述服装搭配规则、所述体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
在一些示例性的实施方式中,所述根据所述待搭配用户的服装搭配规则、所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配,包括:
基于所述每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;
基于所述服装搭配规则、所述体型信息和所述每一张服装图像对应的服装的目标特征信息,进行编码处理,得到编码后的目标特征信息集合;所述目标特征信息集合中包括所述每一张服装图像对应的服装的编码后的目标特征信息;
对所述编码后的目标特征信息集合进行解码处理,得到各个服装之间的搭配概率;
基于所述各个服装之间的搭配概率,为所述待搭配用户进行服装搭配。
第三方面,本申请实施例提供一种服装搭配装置,所述装置包括:
获取模块,用于获取待搭配用户对应的用户图像和多张服装图像;所述待搭配用户对应的用户图像为对所述待搭配用户拍摄得到的;
体型确定模块,用于根据所述待搭配用户对应的用户图像,利用人体关键点检测算法获取所述待搭配用户的多个人体关键点,并基于所述多个人体关键点和所述待搭配用户的身体参数,确定所述待搭配用户的体型信息;
服装确定模块,用于确定所述多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息;
搭配模块,用于根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
第四方面,本申请提供了一种处理器,包括处理单元、通信接口、存储单元和通信总线,其中,处理单元,通信接口,存储单元通过通信总线完成相互间的通信;
存储单元,用于存放计算机程序;
处理单元,用于执行存储单元上所存放的程序时,实现如上述第二方面中任一项所述的服装搭配方法。
第五方面,本申请提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备执行时,使得所述电子设备能够执行如上述第二方面中任一项所述的服装搭配方法。
第六方面,本申请提供一种计算机程序产品,包括计算机程序:所述计算机程序被处理器执行时实现如上述第二方面中任一项所述的服装搭配方法。
本申请的实施例提供的技术方案至少带来以下有益效果:
本申请实施例通过获取待搭配用户对应的用户图像和多张服装图像;然后根据用户图像和多张服装图像,确定待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息;然后根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。由此,本申请将用户的体型信息、服装的特征向量和服装的款式信息结合在一起去综合考虑针对待搭配用户与服装的搭配,实现针对待搭配用户的个性化的穿搭推荐,有效凸显用户身材优势,隐藏身材劣势,切实为用户推荐适合用户身材特点的穿搭。同时还能够根据用户喜好,筛选出用户喜欢版型的服装,再为用户做穿搭推荐。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一些实施例提供的一种智能镜的硬件配置框图;
图2为本申请一些实施例提供的一种智能镜的软件配置框图;
图3为本申请一些实施例提供的一种智能镜的结构示意图;
图4为本申请一些实施例提供的一种显示待搭配用户的镜像示意图;
图5为本申请一些实施例提供的一种服装搭配方法的流程示意图;
图6为本申请一些实施例提供的一种人体关键点的示意图;
图7为本申请一些实施例提供的一种体型与服装款式的对应关系示意图;
图8为本申请一些实施例提供的确定服装的款式信息的流程示意图;
图9为本申请一些实施例提供的确定服装关键点的网络示意图;
图10为本申请一些实施例提供的服装关键点与款式信息的映射关系示意图;
图11为本申请一些实施例提供的一种确定服装之间的搭配概率的流程示意图;
图12为本申请一些实施例提供的一种编码方法的流程示意图;
图13为本申请一些实施例提供的另一种服装搭配方法的流程示意图;
图14为本申请一些实施例提供的一种服装搭配方法的节点示意图;
图15为本申请一些实施例提供的一种服装搭配方法的节点示意图;
图16为本申请一些实施例提供的一种服装搭配的矩阵示意图;
图17为本申请一些实施例提供的一种编码方法的示意图;
图18为本申请一些实施例提供的一种编码方法的示意图;
图19为本申请一些实施例提供的一种服装搭配装置的示意图;
图20为本申请一些实施例提供的一种处理器的示意图。
具体实施方式
为使本申请的目的和实施方式更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施方式进行清楚、完整地描述,显然,描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
术语“模块”是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述示例性的讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释原理以及实际的应用,从而使得本领域技术人员更好的使用实施方式以及适于具体使用考虑的各种不同的变形的实施方式。
图1示例性的示出了本申请实施例提供的一种智能镜的硬件配置框图。如图1所示,智能镜100包括处理器110、检测器120、通信接口130、触摸显示屏140、用户输入/输出接口150、存储器160、供电电源170。
处理器110包括CPU处理器111、RAM112、ROM113、图形处理器114、通信接口115以及通信总线。其中,RAM112和ROM113以及CPU处理器111、图形处理器114、通信接口115通过通信总线相连接;通信接口115可以包括第一接口115-1到第n接口115-n。这些接口也可以是经由网络被连接到外部设备的网络接口。
ROM113,用于存储各种系统启动的指令。如在收到开机信号时,智能镜100电源开始启动,CPU处理器111运行ROM中系统启动指令,将存储在存储器160的操作系统拷贝至RAM112中,以使开始运行启动操作系统。当操作系统启动完成后,CPU处理器111再将存储器160中各种应用程序拷贝至RAM112中,然后,开始运行启动各种应用程序。
图形处理器114,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象。以及包括渲染器,产生基于运算器得到的各种对象,进行渲染的结果显示在触摸显示屏140上。
CPU处理器111,用于执行存储在存储器160中操作系统和应用程序指令。以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示各种图形内容。
在一些示例性实施例中,CPU处理器111,可以包括多个处理器。多个处理器可包括一个主处理器以及多个或一个子处理器。主处理器,用于在预加电模式中执行智能镜100的一些操作,和/或在正常模式下显示图像的操作。多个或一个子处理器,用于在待机模式等状态下一种操作。
检测器120,是智能镜100用于采集外部环境或与外部交互的信号。检测器120包括图像采集器121,如相机、摄像头等,可以用于采集外部环境场景,以及用于采集用户的属性或用户的服装图像。
在其他一些示例性实施例中,检测器120,还可以包括声音采集器122,如麦克风,可以用于接收用户的声音,包括用户控制智能镜100的控制指令的语音信号,或采集环境声音,用于识别环境场景类型。
在其他一些示例性实施例中,检测器120,还可以包括天气采集器123,如气温检测仪,用于采集当前的天气温度,或者采集当前的季节等天气气候属性数据。
通信接口130,用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信接口130可以是Wifi模块131,蓝牙模块132,有线以太网模块133,USB134等其他网络通信协议模块或近场通信协议模块。
智能镜100可以通过通信接口130与外部控制设备或内容提供设备之间建立控制信号和数据信号发送和接收。
触摸显示屏140,包括用于呈现图像的触摸显示屏组件,以及驱动图像显示的驱动组件。显示图像内容,可以来自处理器110处理的图像内容,或者,可显示来自网络通信协议接收来自网络服务器端发送的各种图像内容,以及响应于用户的触摸操作所产生的各种图像内容。
此外,触摸显示屏140,显示智能镜100中产生且用于控制智能镜100的用户操控UI界面。
用户输入/输出接口150,其中,用户输入接口用于接收用户的输入信号,然后,将接收用户的输入信号发送给处理器110,包括语音设备((图中未示出,比如麦克风)等其他输入接口中至少一者。比如用户可以通过语音、触摸等动作实现用户指令输入功能,输入接口通过将接收的模拟信号转换为数字信号,以及数字信号转换为相应指令信号,发送至处理器110。用户输出接口通过将用户输入接口接收的用户指令输出至处理器110,或者,输出由处理器110处理的图像。这里,用户输出接口可以包括LED接口和输出图像的触摸显示屏140等。例如,用户输出接口接收处理器110处理后的输出信号,并将输出信号在触摸显示屏140上显示为图像形式。
示例的,用户通过触摸显示屏或语音设备输入用户命令,用户输入接口则根据用户的输入,触摸显示屏140则通过处理器110响应用户的输入。
在一些实施例中,用户可以在触摸显示屏140上显示的图形用户界面(GUI)输入用户命令,则用户输入接口通过图形用户界面(GUI)接收用户输入命令。
处理器110,通过存储在存储器160上中各种软件控制程序,来控制智能镜100的工作和响应用户的操作。
存储器160,用于存储驱动和控制智能镜100的各种运行程序、数据和应用。存储器160,可以存储用户输入的各类控制信号指令。包括存储用于驱动智能镜100的各种软件模块。如:存储器160中存储的各种软件模块,包括:基础模块、检测模块、显示控制模块、通信模块等。
其中,基础模块用于智能镜100中各个硬件之间信号通信、并向上层模块发送处理和控制信号的底层软件模块;检测模块用于从各种检测器或用户输入接口中收集各种信息,并进行数模转换以及分析管理的管理模块;显示控制模块用于控制触摸显示屏140进行显示图像内容的模块,可以用于播放多媒体图像内容和UI界面等信息。通信模块,用于与外部设备之间进行控制和数据通信的模块。
同时,存储器160还可用于存储接收外部数据和用户数据、各种用户界面中的图像以及视觉效果图等。
另外,存储器160,具体用于存储驱动智能镜100中处理器110的运行程序,以及存储智能镜100内置各种应用程序,以及用户从外部设备下载的各种应用程序、以及与应用相关各种图形用户界面,以及与图形用户界面相关的各种对象,用户数据信息,以及各种支持应用的内部数据。存储器160还用于存储OS内核、中间件和应用等系统软件,以及存储触摸显示屏140、通信接口130、检测器120输入/输出接口等驱动程序和相关数据,或存储其他用户数据。
供电电源170,用于为智能镜100中的各元件提供启动及运行的电力支持。形式可以为电池及相关控制电路。在用户的操作下,将外部电源输入的电力为智能镜100提供电源供电支持。供电电源170可以包括安装智能镜100内部的内置电源电路,也可以是安装在智能镜100外部电源,在智能镜100中提供外接电源的电源接口。
图2示例性的示出了本申请实施例提供的一种智能镜的软件配置框图。如图2所示,可以包括操作系统161、界面布局管理器162、事件传输系统163、应用程序164。
操作系统161,包括用于处理各种基础系统服务和用于实施硬件相关任务的执行操作软件,充当应用程序和硬件组件之间完成的数据处理的媒介,比如安卓操作系统。一些实施例中,部分操作系统内核可以包含一系列软件,用以管理智能镜100的硬件资源,并为其他程序或软件代码提供服务。
其他一些实施例中,部分操作系统内核可包含一个或多个设备驱动器,设备驱动器可以是操作系统中的一组软件代码,帮助操作或控制智能镜关联的设备或硬件。驱动器可以包含操作视频、音频和/或其他多媒体组件的代码。示例的,包括触摸显示屏、摄像头、Flash和WiFi。
其中,可访问性模块1611,用于访问或修改应用程序,以实现应用程序的可访问性和对其显示内容的可操作性。
通信模块1612,用于经由相关通信接口和通信网络与其他外设的连接。
用户界面模块1613,用于提供显示用户界面的对象,以供各应用程序可访问,可实现用户的可操作性。比如智能镜的前端交互界面。
控制应用程序1614,用于可控制进程管理,包括运行时间应用程序等。
事件传输系统163,可在操作系统161内或应用程序164中实现,以一些实施例中,一方面在操作系统161内实现,同时在应用程序164中实现,用于监听各种用户输入的事件,并根据各种事件指代响应各类事件或子事件的识别结果,而实施一组或多组预定义的操作的处理程序。
其中,事件监听模块1631,用于监听用户输入接口输入事件或子事件;事件识别模块1632,用于对各种用户输入接口输入各类事件的定义,识别出各种事件或子事件,且将其传输给处理器110用以执行其相应一组或多组的处理程序。比如处理器110根据智能镜100中存储的逻辑程序和核心算法对相应的事件或子事件进行处理,并将处理后的结果呈现在触摸显示屏140上。
其中,事件或子事件,是指智能镜100中一个或多个检测器检测的输入。比如用户语音输入的各种子事件或在触摸显示屏上输入的各种子事件。
界面布局管理器162,直接或间接接收来自于事件传输系统163监听到各用户输入的事件或子事件,用于更新用户界面的布局,包括但不限于界面中各控件或子控件的位置,以及容器的大小或位置、层级等与界面布局相关各种执行操作。
图3为本申请提供的智能镜的结构示意图,包括:触摸显示屏140,处理器110,以及摄像头33,其中:
触摸显示屏140,用于显示图像;
摄像头33,用于获取待搭配用户对应的用户图像和多张服装图像并发送至处理器110;
处理器110,用于执行:
根据待搭配用户对应的用户图像,利用人体关键点检测算法获取待搭配用户的多个人体关键点,并基于多个人体关键点和待搭配用户的身体参数,确定待搭配用户的体型信息;确定多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息;根据待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配。
本申请中,处理器110与摄像头33连接,图1示出了摄像头33在触摸显示屏140的左侧,同样的,也可以将摄像头33设置在触摸显示屏140的右侧。需要说明的是,为了降低成本,本申请中的摄像头33可采用可见光成像传感器RGB摄像机。
处理器110可以是微处理器MCU,用于根据摄像头33采集到的图像进行服装搭配,处理器110可以设置在触摸显示屏140的背部。
本申请中的处理器110可以控制触摸显示屏140的显示内容。当处理器110控制触摸显示屏140显示镜像时,可以如图4所示仅显示待搭配用户的镜像,也可以显示待搭配用户的镜像和搭配好的服装的镜像。
本申请的一些实施例提供的智能镜中,处理器110可被配置为:根据待搭配用户对应的用户图像,利用人体关键点检测算法获取待搭配用户的多个人体关键点,并基于多个人体关键点和待搭配用户的身体参数,确定待搭配用户的体型信息;确定多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息;根据待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配。
可选地,处理器110还被配置为:针对多张服装图像中的每一张服装图像,分别执行以下操作:根据已训练的卷积神经网络,确定服装图像中服装对应的多个不同尺寸的特征向量;基于服装对应的多个不同尺寸的特征向量,确定服装的多个服装关键点;基于多个服装关键点和预设的映射关系,确定服装的款式信息;预设的映射关系表征服装的款式信息与服装关键点之间的对应关系。
可选地,处理器110还被配置为:分别基于每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;基于每一张服装图像对应的服装的目标特征信息,和体型信息,确定各个服装之间的搭配概率;基于各个服装之间的搭配概率,为待搭配用户进行服装搭配。
可选地,处理器110还被配置为:将体型信息和每一张服装图像对应的服装的目标特征信息,输入已训练的图网络;基于图网络进行编码处理,得到编码后的目标特征信息集合;目标特征信息集合包括每一张服装图像对应的服装的编码后的目标特征信息;对编码后的目标特征信息集合进行解码处理,得到各个服装之间的搭配概率。
可选地,处理器110还被配置为:基于每一张服装图像对应的服装的目标特征信息,和图网络中初始化的连接矩阵,确定各个服装之间的权重值;基于各个服装之间的权重值、体型信息和每一张服装图像对应的服装的目标特征信息,确定第一层网络层输出的目标特征信息集合;基于各个服装之间的权重值、每一张服装图像对应的服装的目标特征信息,和上一层网络层输出的目标特征信息集合,确定当前层网络层的目标特征信息集合,直至确定最后一层网络层输出的目标特征信息集合,并将最后一层网络层输出的目标特征信息集合,作为编码后的目标特征信息集合。
可选地,处理器110还被配置为:基于编码后的目标特征信息集合中每一张服装图像对应的服装的编码后的目标特征信息之间的差异,进行线性变换处理,得到线性变换后的目标特征信息;利用激活函数对线性变换后的目标特征信息进行处理,得到多张服装图像对应的服装之间的搭配概率。
可选地,处理器110还被配置为:若获取到针对待搭配用户的服装搭配规则,则根据服装搭配规则、体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配。
可选地,处理器110还被配置为:基于每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;基于服装搭配规则、体型信息和每一张服装图像对应的服装的目标特征信息,进行编码处理,得到编码后的目标特征信息集合;目标特征信息集合中包括每一张服装图像对应的服装的编码后的目标特征信息;对编码后的目标特征信息集合进行解码处理,得到各个服装之间的搭配概率;基于各个服装之间的搭配概率,为待搭配用户进行服装搭配。
图5示例性的示出了一种服装搭配方法的流程示意图。该流程可由智能镜100执行。如图5所示,该方法包括以下步骤:
在步骤501中,获取待搭配用户对应的用户图像和多张服装图像。
其中,待搭配用户对应的用户图像为对待搭配用户拍摄得到的。其中,待搭配用户对应的用户图像包括但不限于智能镜中的RGB摄像头采集得到的待搭配用户的正面图像、侧面图像、背面图像等。
在步骤502中,根据待搭配用户对应的用户图像,利用人体关键点检测算法获取待搭配用户的多个人体关键点,并基于多个人体关键点和待搭配用户的身体参数,确定待搭配用户的体型信息。
示例性的,如图6所示,可以根据待搭配用户对应的用户图像,利用人体关键点检测算法获取到如图6所示的多个人体关键点,然后基于这些人体关键点和待搭配用户的身高、体重等身体参数,确定待搭配用户的用户体型信息。
其中,在本申请实施例中,男性的体型信息包括倒三角、倒梯形、矩形、椭圆形、正三角形等身材,女性的体型信息包括X型、A型、T型、H型、O型等身材。
其中,在本申请实施例中,用户的体型信息适合的衣服款式可以预先设置,如图7所示:
对于男性的倒三角体型:倒三角属于男性的黄金比例身材,拥有这样体型的男性上身肌肉发达且下身体型修长。在选择衣服搭配时应尽量避免头重脚轻,利用宽松的直筒裤或阔腿裤等元素修饰身体中下部以提高视觉上的面积感,同时上身穿着简约,可以让肩膀和胸部在视觉上收窄,提升整体穿搭的平衡感。
对于男性的倒梯形体型:对于服装的穿着搭配基本上没有太多的限制和要求,简简单单、随性的搭配就可以穿的非常的好看。可以尝试选择修身裁剪的裤装,搭配一些科技产品,提升整体的摩登感。
对于男性的矩形体型:矩形身材是男性最常见的体型,肩宽、腰围、臀围几乎一致。在着装搭配上可以利用亮色或细节拓宽肩部、胸部线条走向,加宽上半身肩膀的比例,搭配窄腿裤或工装裤让身体线条逐渐向下聚拢,使下半身看起来相对较窄,在视觉上呈现倒梯形体型的效果。
对于男性的椭圆体型:椭圆型身材的男性一般是微胖的。在选择衣服搭配时,要选择肩部较宽的衣服,从而来为肩部增加宽度和轮廓感,而胸部以下的腹部位置,则建议选择能够营造线条感的一些衣服,来减弱腹部凸起的饱满感。裤子选择上可以选择小脚裤或者高腰裤来修长腿部,从而弱化腹部的饱满感,增高的同时还能够显瘦。
对于男性的正三角体型:正三角形体型的男性在穿搭时就需要注意隐藏小肚子,上身尽量选择稍微宽松一点的衣服,然后增加肩部的挺括度和宽度。下身可以选择直筒裤。不要尝试紧身或者修身和衣服,会把小肚腩这个缺点无限的放大。
对于女性的X型体型:X型身材是女生的完美身材,线条优美,凹凸有致。在选择穿搭上可以大胆尝试,顺应身材曲线,凸显腰身,大部分衣服都能很好的驾驭,只要上下装搭配协调就能很好看。
对于女性的A型体型:A型身材的女生往往肩窄、腰细但臀宽,大腿丰满。在穿搭时要注意将焦点往上半身转移,突出令人羡慕的小细腰。可以穿着高腰库、小脚裤或A型裙强调腰身线条以平衡下半身比例。同时通过宽松的裤装或裙装修饰腿部缺点。
对于女性的T型体型:T型身材肩部较宽,给人整体感觉较壮。在穿搭上应将视觉焦点向下半身转移。采用上深下浅,上窄下宽,上简下繁的搭配规则。可以选择一些无袖衫来修饰肩部过宽的缺点,尽量选择领口比较大,例如V领、U领的款式,在视觉上收缩上半身比例,平衡全身整体搭配。
对于女性的H型体型:H型身材胸部、腰部、臀部差别不大,身材没有明显的曲线变化。在穿搭上一定要注意突出上下身的对比,视觉上修饰身体曲线。上身穿着泡泡袖、灯笼袖、荷叶边等可以扩充肩部的衣服,将身体曲线向X型靠拢。下身搭配收腰的喇叭裤、阔腿裤或A字裙,扩大臀部和胯的同时修饰腰线。
对于女性的O型体型:O型身材的女生胸、腰、臀部线条比较圆润,看上去体型比较宽厚。可以尝试用腰带来提高腰线,塑造一个人造的腰线,视觉上改变身材比例。可以露出较纤细的脖子,胳膊和小腿,选择硬朗有垂感的面料,拉长纵向比例,弱化圆润的身材。
其中,图7所示的体型与对应的衣服款式的搭配规则只是一个示例,也可以根据其他的搭配方式对不同体型的用户进行服装搭配,本申请实施例对此不做限制。
在步骤503中,确定多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息。
在本申请实施例中,确定多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息,可以针对多张服装图像中的每一张服装图像,分别执行如图8所示的步骤:
在步骤801中,根据已训练的卷积神经网络,确定服装图像中服装对应的多个不同尺寸的特征向量。
在本申请实施例中,在训练卷积神经网络时采用wing loss(机翼损失函数)替换L2_loss(平均损失函数),当error(误差)大的时候,相当于使用L1_loss(平均绝对值损失函数)进行惩罚,损失梯度量级为1,优化步长(optimal step sizes)则为x,误差越大,优化的次数越多,加快收敛速度。当error较小时,使用lnx进行惩罚,梯度量级为1/x,优化步长为x2,使得小误差时,有大的梯度,同时采用小的步长进行优化,防止错过最优解。使用wingloss,结合了L1损失函数的优点,在误差大时能加快收敛速度,在误差小时能小步快走,能够更好的拟合到最优解,非常适用于服装关键点检测这种需要精确定位小目标关键点的任务。其中,wing loss的公式(1)如下:
其中,w=10,∈=2。
在步骤802中,基于服装对应的多个不同尺寸的特征向量,确定服装的多个服装关键点。
在本申请实施例中,考虑到服装特征点定位任务需要综合考虑服装整体和局部特征以更好的完成关键点定位,因此如图9所示,使用图9下面的特征金字塔网络(FPN)将卷积神经网络提取到的多个不同大小的特征图,即多个特征向量进行融合,然后使用图9上面所示的流程对特征金字塔网络(FPN)输出的融合后得到的特征向量进行多次下采样,最后就可以得到服装的多个服装关键点。
在步骤803中,基于多个服装关键点和预设的映射关系,确定服装的款式信息。
其中,预设的映射关系表征服装的款式信息与服装关键点之间的对应关系。
示例性的,如图10所示,为本申请实施例参照deepfashion2数据集(综合的服装数据集)为不同款式的展开服装分别标注不同数量和位置的服装关键点,即预设的映射关系。可以根据服装关键点的坐标和通过服装关键点进行定位选出来的局部图片,就可以分析出服装的款式信息。其中服装的款式信息包括:领型(衬衫领、荷叶领、V领、圆领、立领、高领、连帽、翻领等)、袖型(衬衫袖、荷叶袖、常规袖、灯笼袖等)、裙型(A字裙、包臀裙、百褶裙、直筒裙)、裤型(高腰、低腰、小脚裤、喇叭裤、直筒裤、常规裤、工装裤)、衣型(收腰(修身)、直筒(宽松)、收口、垫肩、上窄下宽、上宽下窄等)等。也可以根据其他的服装规则对服装的款式信息进行分类,本申请对此不做限制。
由此,可以识别出用户的体型信息、服装的特征向量以及服装的款式信息,以便于更好地为不同用户搭配更适合身材的个性化服装。
在步骤504中,根据待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配。
在本申请实施例中,根据待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配,可以执行为:
分别基于每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;基于每一张服装图像对应的服装的目标特征信息,和体型信息,确定各个服装之间的搭配概率;基于各个服装之间的搭配概率,为待搭配用户进行服装搭配。
具体实施时,基于每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息,可以表示为:
假设一件服装的特征向量可以表示为X1∈RF,结合服装关键点获取到的服装的款式信息可以表示为V1∈RF,则该服装的目标特征信息可以表示为XV1∈RF。同理若有N个服装,则N个服装都可以用XVi表示服装的目标特征信息,N个服装的目标特征信息集合可以表示为XV∈RN×F。其中服装的目标特征信息是服装的特征向量和服装的款式信息进行叠加之后得到的。
在本申请实施例中,基于每一张服装图像对应的服装的目标特征信息,和体型信息,确定各个服装之间的搭配概率,可以执行为如图11所示的步骤:
在步骤1101中,将体型信息和每一张服装图像对应的服装的目标特征信息,输入已训练的图网络。
在步骤1102中,基于图网络进行编码处理,得到编码后的目标特征信息集合;目标特征信息集合包括每一张服装图像对应的服装的编码后的目标特征信息。
具体的,在本申请实施例中,该图网络包括至少两层网络层;基于图网络进行编码处理,得到编码后的目标特征信息集合,可以执行为如图12所示的步骤:
在步骤1201中,基于每一张服装图像对应的服装的目标特征信息,和图网络中初始化的连接矩阵,确定各个服装之间的权重值。
具体实施时,通过初始化一个可学习的连接矩阵U,用于学习两两服装之间的权重关系,再通过softmax函数计算各个服装之间的权重值,具体可以表示为公式(2):
αi,j∝(XVi TUXVj)=softmax(XVi TUXVj) (2)
其中,XV表示服装的目标特征信息。
同时为了增加最终结果的非线性,可以使用LeakyReLU函数,因此最终各个服装之间的权重值,可以表示为公式(3):
αi,j=softmax(LeakyReLU(XVTUXV)) (3)
在步骤1202中,基于各个服装之间的权重值、体型信息和每一张服装图像对应的服装的目标特征信息,确定第一层网络层输出的目标特征信息集合。
在步骤1203中,基于各个服装之间的权重值、每一张服装图像对应的服装的目标特征信息,和上一层网络层输出的目标特征信息集合,确定当前层网络层的目标特征信息集合,直至确定最后一层网络层输出的目标特征信息集合,并将最后一层网络层输出的目标特征信息集合,作为编码后的目标特征信息集合。
具体实施时,将待搭配用户的体型信息作为图网络的全局输入,在第一层网络层中和各个服装的目标特征信息一起进行叠加,得到初始化的目标特征信息集合H0,然后使用初始化的目标特征信息集合H0、各个服装之间的权重值,确定第一层网络层输出的目标特征信息集合。
然后根据各个服装之间的权重值、每一张服装图像对应的服装的目标特征信息,和上一层网络层输出的目标特征信息集合,确定当前层网络层的目标特征信息集合,直至确定最后一层网络层输出的目标特征信息集合,并将最后一层网络层输出的目标特征信息集合,作为编码后的目标特征信息集合。
其中,当前层网络层编码后的目标特征信息集合的计算公式(4)为:
Hl+1=ReLU(∑j∈NiαijHlWl) (4)
其中,Hl+1表示当前层网络层编码后的目标特征信息集合;Hl表示上一层网络层输出的目标特征信息集合;Wl表示上一层网络层输出的参数常量,该参数常量是在图网络中不断学习得到的;αij表示各个服装之间的权重值;ReLU是一个线性激活函数。
在步骤1103中,对编码后的目标特征信息集合进行解码处理,得到各个服装之间的搭配概率。
具体的,在本申请实施例中对编码后的目标特征信息集合进行解码处理,得到各个服装之间的搭配概率,可以执行为:
基于编码后的目标特征信息集合中每一张服装图像对应的服装的编码后的目标特征信息之间的差异,进行线性变换处理,得到线性变换后的目标特征信息;利用激活函数对线性变换后的目标特征信息进行处理,得到多张服装图像对应的服装之间的搭配概率。
具体实施时,通过最后一层网络层输出的目标特征信息集合进行各个服装之间的搭配概率计算,最后将计算出来的搭配概率的常量映射为(0,1)之间的概率值。最后一层网络层输出的是由编码器编码而成的每一张服装图像对应的服装的编码后的目标特征信息h,则每两个服装之间的搭配概率可以表示为公式(5):
p=σ(|hi-hj|w+b) (5)
其中,σ是sigmoid(激活)函数,p是两个服装之间的搭配概率;|hi-hj|表示两个服装编码后的目标特征信息之间的差异,w+b表示进行线性变换处理。将常量映射到(0,1)的概率值。
由此,本申请将用户的体型信息、服装的特征向量和服装的款式信息结合在一起去综合考虑针对待搭配用户与服装的搭配,实现针对待搭配用户的个性化的穿搭推荐,有效凸显用户身材优势,隐藏身材劣势,切实为用户推荐适合用户身材特点的穿搭。
在本申请实施例中,根据待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配,可以执行为:若获取到针对待搭配用户的服装搭配规则,则根据服装搭配规则、体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配。
在本申请实施例中,根据待搭配用户的服装搭配规则、待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配,可以执行为如图13所示的步骤:
在步骤1301中,基于每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;
在步骤1302中,基于服装搭配规则、体型信息和每一张服装图像对应的服装的目标特征信息,进行编码处理,得到编码后的目标特征信息集合;目标特征信息集合中包括每一张服装图像对应的服装的编码后的目标特征信息;
在步骤1303中,对编码后的目标特征信息集合进行解码处理,得到各个服装之间的搭配概率;
在步骤1304中,基于各个服装之间的搭配概率,为待搭配用户进行服装搭配。
具体实施时,如图14所示,每个圆圈表示一个节点,将每个单件的服装看作相互独立的节点,通过预测节点之间边界存在的概率以此来判断服装之间是否搭配。若获取到待搭配用户的服装搭配规则,即用户的搭配喜好,则将用户喜好的穿搭指向的两个节点之间的边界直接进行连接,然后在此基础上再去判断两件服装是否搭配。
如图14所示,输入已知节点x1和x2,以及根据用户的确定的两个节点的已知搭配,再判断x1和x2是否搭配时,就会结合用户的喜好,生成新的特征向量z1和z2,z1和z2包含了用户的搭配喜好、服装的特征向量、服装的款式信息。
节点x1的特征向量可以表示为X1∈RF,节点x1的款式信息可以表示为V1∈RF,则节点x1的目标特征信息可以表示为XV1∈RF。同理若有N个节点,则N个节点都可以用XVi表示节点的目标特征信息,N个节点的目标特征信息集合可以表示为XV∈RN×F。其中节点的目标特征信息是节点的特征向量和节点的款式信息进行叠加之后得到的。节点与节点直接是否连接可以用邻接矩阵A∈RN×N进行表示,Aij=1表示服装i和服装j之间搭配,Aij=0表示服装i和服装j之间不搭配,邻接矩阵A的初始值用于存储用户的搭配喜好。图网络使编码器fenc在考虑表示用户的搭配喜好的邻接矩阵A的同时,结合服装的目标特征信息XV和用户的体型信息,生成编码后的目标特征信息集合H,其中H=fenc(T,XV,A)。再通过解码器fdec预测新的邻接矩阵A=fdec(H),其中新的邻接矩阵中的概率值用于判断服装之间是否搭配。例如,通过编码得到节点x1和x2对应的h1和h2,然后进行解码得到节点x1和x2之间的搭配概率score。
示例性的,如图15所示,为一个图网络结构和其对应的邻接矩阵A。其中,邻接矩阵A中的1表示服装之间搭配,0表示服装之间不搭配,例如第一行中表示服装0与其本身搭配,与服装1和服装2都搭配。然后如图16所示,将邻接矩阵A的每行元素进行求和,得到对角元素,形成一个度量矩阵D,同时给各个服装之间设置一个固定的权重值,形成一个如图16右图所示的新的矩阵。此时每一层图网络层的H可以表示为公式(6):
但是在不考虑度量矩阵D的情况下,可以简化为公式(7):
Hl+1=ReLU(AHlWl) (7)
以图15所示的0节点为例,可以用图17表示每一层网络层的编码后的目标特征信息集合H,表示与0节点相连的节点的特征向0节点传递,并最终聚合到0节点处。即将0节点的周围邻居0,1,2节点的信息传递给了0节点。此时传递周围节点特征按照等比例传递,即对0,1,2节点都采用系数1进行加权传递。而度量矩阵D,则是在特征传递时给予不同的传递系数。如图18所示,其中,传递的系数可以设置为d越大,传递的信息量越小,例如节点0向0节点传递的系数为/>节点1向0节点传递的系数为/>节点2向0节点传递的系数为/>其中节点2向节点0传递的信息量最小。
其中,也可以将待搭配用户的服装搭配规则和待搭配用户的体型信息作为图网络的全局输入,在第一层网络层中和各个服装的目标特征信息一起进行叠加,得到初始化的目标特征信息集合H0,然后使用公式(3)、(4)和公式(5)计算各个服装之间的搭配概率。
由此,可以将用户的体型信息、服装的特征向量、服装的款式信息和用户喜好,结合在一起去综合考虑针对待搭配用户与服装的搭配,筛选出用户喜欢版型的服装,再为用户做穿搭推荐。
基于前文,本申请实施例通过获取待搭配用户对应的用户图像和多张服装图像;然后根据用户图像和多张服装图像,确定待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息;然后根据待搭配用户的体型信息、每一张服装图像对应的服装的特征向量和款式信息,为待搭配用户进行服装搭配。由此,本申请将用户的体型信息、服装的特征向量和服装的款式信息结合在一起去综合考虑针对待搭配用户与服装的搭配,实现针对待搭配用户的个性化的穿搭推荐,有效凸显用户身材优势,隐藏身材劣势,切实为用户推荐适合用户身材特点的穿搭。同时还能够根据用户喜好,筛选出用户喜欢版型的服装,再为用户做穿搭推荐。
根据相同的发明构思,本申请实施例提供了一种服装搭配装置。如图19所示,为本申请实施例提供的一种服装搭配装置的示意图,该装置包括:
获取模块1901,用于获取待搭配用户对应的用户图像和多张服装图像;所述待搭配用户对应的用户图像为对所述待搭配用户拍摄得到的;
体型确定模块1902,用于根据所述待搭配用户对应的用户图像,利用人体关键点检测算法获取所述待搭配用户的多个人体关键点,并基于所述多个人体关键点和所述待搭配用户的身体参数,确定所述待搭配用户的体型信息;
服装确定模块1903,用于确定所述多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息;
搭配模块1904,用于根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
在一些示例性的实施方式中,所述服装确定模块1903还用于:
针对所述多张服装图像中的每一张服装图像,分别执行以下操作:
根据已训练的卷积神经网络,确定所述服装图像中服装对应的多个不同尺寸的特征向量;
基于所述服装对应的多个不同尺寸的特征向量,确定所述服装的多个服装关键点;
基于所述多个服装关键点和预设的映射关系,确定所述服装的款式信息;所述预设的映射关系表征服装的款式信息与服装关键点之间的对应关系。
在一些示例性的实施方式中,所述搭配模块1904,具体用于:
分别基于所述每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;
基于所述每一张服装图像对应的服装的目标特征信息,和所述体型信息,确定各个服装之间的搭配概率;
基于所述各个服装之间的搭配概率,为所述待搭配用户进行服装搭配。
在一些示例性的实施方式中,所述搭配模块1904,具体用于:
将所述体型信息和所述每一张服装图像对应的服装的目标特征信息,输入已训练的图网络;
基于所述图网络进行编码处理,得到编码后的目标特征信息集合;所述目标特征信息集合包括所述每一张服装图像对应的服装的编码后的目标特征信息;
对所述编码后的目标特征信息集合进行解码处理,得到所述各个服装之间的搭配概率。
在一些示例性的实施方式中,所述图网络包括至少两层网络层;所述搭配模块1904,具体用于:
基于所述每一张服装图像对应的服装的目标特征信息,和所述图网络中初始化的连接矩阵,确定所述各个服装之间的权重值;
基于所述各个服装之间的权重值、所述体型信息和所述每一张服装图像对应的服装的目标特征信息,确定第一层网络层输出的目标特征信息集合;
基于所述各个服装之间的权重值、所述每一张服装图像对应的服装的目标特征信息,和上一层网络层输出的目标特征信息集合,确定当前层网络层的目标特征信息集合,直至确定最后一层网络层输出的目标特征信息集合,并将所述最后一层网络层输出的目标特征信息集合,作为所述编码后的目标特征信息集合。
在一些示例性的实施方式中,所述搭配模块1904,具体用于:
基于所述编码后的目标特征信息集合中所述每一张服装图像对应的服装的编码后的目标特征信息之间的差异,进行线性变换处理,得到线性变换后的目标特征信息;
利用激活函数对所述线性变换后的目标特征信息进行处理,得到所述多张服装图像对应的服装之间的搭配概率。
在一些示例性的实施方式中,所述搭配模块1904,还用于:
若获取到针对所述待搭配用户的服装搭配规则,则根据所述服装搭配规则、所述体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
在一些示例性的实施方式中,所述搭配模块1904,具体用于:
基于所述每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;
基于所述服装搭配规则、所述体型信息和所述每一张服装图像对应的服装的目标特征信息,进行编码处理,得到编码后的目标特征信息集合;所述目标特征信息集合中包括所述每一张服装图像对应的服装的编码后的目标特征信息;
对所述编码后的目标特征信息集合进行解码处理,得到各个服装之间的搭配概率;
基于所述各个服装之间的搭配概率,为所述待搭配用户进行服装搭配。
根据相同的发明构思,本申请实施例还提供了一种处理器,如图20所示,包括:处理单元2001、通信接口2002、存储单元2003和通信总线2004,其中,处理单元2001、通信接口2002、存储单元2003通过通信总线2004完成相互间的通信;
所述存储单元2003中存储有计算机程序,当所述程序被所述处理单元2001执行时,使得所述处理单元2001执行以上任一服装搭配方法。
上述处理器提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口2002用于上述电子设备与其他设备之间的通信。
存储单元可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储单元还可以是至少一个位于远离前述处理单元的存储装置。
上述处理单元可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
在本申请实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器,上述指令可由处理器执行以完成上述服装搭配方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在本申请实施例中,还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如本申请提供的服装搭配方法的任一方法。
由于本申请实施例中的通信终端和计算机存储介质可以应用于上述处理方法,因此,其所能获得的技术效果也可参考上述方法实施例,本申请的实施例在此不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种智能镜,其特征在于,所述智能镜包括:
摄像头,用于获取待搭配用户对应的用户图像和多张服装图像;
触摸显示屏,用于显示图像;
处理器,被配置为:
根据所述待搭配用户对应的用户图像,利用人体关键点检测算法获取所述待搭配用户的多个人体关键点,并基于所述多个人体关键点和所述待搭配用户的身体参数,确定所述待搭配用户的体型信息;
确定所述多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息;
根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
2.根据权利要求1所述的智能镜,其特征在于,所述处理器被配置为:
针对所述多张服装图像中的每一张服装图像,分别执行以下操作:
根据已训练的卷积神经网络,确定所述服装图像中服装对应的多个不同尺寸的特征向量;
基于所述服装对应的多个不同尺寸的特征向量,确定所述服装的多个服装关键点;
基于所述多个服装关键点和预设的映射关系,确定所述服装的款式信息;所述预设的映射关系表征服装的款式信息与服装关键点之间的对应关系。
3.根据权利要求1所述的智能镜,其特征在于,所述处理器被配置为:
分别基于所述每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;
基于所述每一张服装图像对应的服装的目标特征信息,和所述体型信息,确定各个服装之间的搭配概率;
基于所述各个服装之间的搭配概率,为所述待搭配用户进行服装搭配。
4.根据权利要求3所述的智能镜,其特征在于,所述处理器被配置为:
将所述体型信息和所述每一张服装图像对应的服装的目标特征信息,输入已训练的图网络;
基于所述图网络进行编码处理,得到编码后的目标特征信息集合;所述目标特征信息集合包括所述每一张服装图像对应的服装的编码后的目标特征信息;
对所述编码后的目标特征信息集合进行解码处理,得到所述各个服装之间的搭配概率。
5.根据权利要求4所述的智能镜,其特征在于,所述处理器被配置为:
基于所述每一张服装图像对应的服装的目标特征信息,和所述图网络中初始化的连接矩阵,确定所述各个服装之间的权重值;
基于所述各个服装之间的权重值、所述体型信息和所述每一张服装图像对应的服装的目标特征信息,确定第一层网络层输出的目标特征信息集合;
基于所述各个服装之间的权重值、所述每一张服装图像对应的服装的目标特征信息,和上一层网络层输出的目标特征信息集合,确定当前层网络层的目标特征信息集合,直至确定最后一层网络层输出的目标特征信息集合,并将所述最后一层网络层输出的目标特征信息集合,作为所述编码后的目标特征信息集合。
6.根据权利要求4所述的智能镜,其特征在于,所述处理器被配置为:
基于所述编码后的目标特征信息集合中所述每一张服装图像对应的服装的编码后的目标特征信息之间的差异,进行线性变换处理,得到线性变换后的目标特征信息;
利用激活函数对所述线性变换后的目标特征信息进行处理,得到所述多张服装图像对应的服装之间的搭配概率。
7.根据权利要求1~6任一项所述的智能镜,其特征在于,所述处理器被配置为:
若获取到针对所述待搭配用户的服装搭配规则,则根据所述服装搭配规则、所述体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
8.根据权利要求7所述的智能镜,其特征在于,所述处理器被配置为:
基于所述每一张服装图像对应的服装的特征向量和款式信息,确定相应服装的目标特征信息;
基于所述服装搭配规则、所述体型信息和所述每一张服装图像对应的服装的目标特征信息,进行编码处理,得到编码后的目标特征信息集合;所述目标特征信息集合中包括所述每一张服装图像对应的服装的编码后的目标特征信息;
对所述编码后的目标特征信息集合进行解码处理,得到各个服装之间的搭配概率;
基于所述各个服装之间的搭配概率,为所述待搭配用户进行服装搭配。
9.一种服装搭配方法,其特征在于,所述方法包括:
获取待搭配用户对应的用户图像和多张服装图像;所述待搭配用户对应的用户图像为对所述待搭配用户拍摄得到的;
根据所述待搭配用户对应的用户图像,利用人体关键点检测算法获取所述待搭配用户的多个人体关键点,并基于所述多个人体关键点和所述待搭配用户的身体参数,确定所述待搭配用户的体型信息;
确定所述多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息;
根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
10.一种服装搭配装置,其特征在于,所述装置包括:
获取模块,用于获取待搭配用户对应的用户图像和多张服装图像;所述待搭配用户对应的用户图像为对所述待搭配用户拍摄得到的;
体型确定模块,用于根据所述待搭配用户对应的用户图像,利用人体关键点检测算法获取所述待搭配用户的多个人体关键点,并基于所述多个人体关键点和所述待搭配用户的身体参数,确定所述待搭配用户的体型信息;
服装确定模块,用于确定所述多张服装图像中,每一张服装图像对应的服装的特征向量和款式信息;
搭配模块,用于根据所述待搭配用户的体型信息、所述每一张服装图像对应的服装的特征向量和款式信息,为所述待搭配用户进行服装搭配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211209595.2A CN117874320A (zh) | 2022-09-30 | 2022-09-30 | 一种智能镜、服装搭配方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211209595.2A CN117874320A (zh) | 2022-09-30 | 2022-09-30 | 一种智能镜、服装搭配方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117874320A true CN117874320A (zh) | 2024-04-12 |
Family
ID=90581652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211209595.2A Pending CN117874320A (zh) | 2022-09-30 | 2022-09-30 | 一种智能镜、服装搭配方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117874320A (zh) |
-
2022
- 2022-09-30 CN CN202211209595.2A patent/CN117874320A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11915352B2 (en) | Processing user selectable product images and facilitating visualization-assisted virtual dressing | |
US10964078B2 (en) | System, device, and method of virtual dressing utilizing image processing, machine learning, and computer vision | |
US11227008B2 (en) | Method, system, and device of virtual dressing utilizing image processing, machine learning, and computer vision | |
US10991067B2 (en) | Virtual presentations without transformation-induced distortion of shape-sensitive areas | |
CN110021061B (zh) | 搭配模型构建方法、服饰推荐方法、装置、介质及终端 | |
US10019779B2 (en) | Browsing interface for item counterparts having different scales and lengths | |
JP6490430B2 (ja) | 画像処理装置、画像処理システム、画像処理方法、及びプログラム | |
CN111767817B (zh) | 一种服饰搭配方法、装置、电子设备及存储介质 | |
US20220258049A1 (en) | System and method for real-time calibration of virtual apparel using stateful neural network inferences and interactive body measurements | |
CN108804546B (zh) | 一种服饰搭配推荐方法及终端 | |
WO2020203656A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2016054450A (ja) | 画像処理装置、画像処理システム、画像処理方法及びプログラム | |
US20160071321A1 (en) | Image processing device, image processing system and storage medium | |
US20170262991A1 (en) | Browsing interface for item counterparts having different scales and lengths | |
US20200250892A1 (en) | Generation of Improved Clothing Models | |
US20170154472A1 (en) | System and method for determining custom sizes by visual annotation | |
CN117874320A (zh) | 一种智能镜、服装搭配方法及装置 | |
WO2022081745A1 (en) | Real-time rendering of 3d wearable articles on human bodies for camera-supported computing devices | |
CN113487619A (zh) | 一种数据处理方法、装置、设备及介质 | |
KR20210130420A (ko) | 스마트 삼차원 의류 피팅 시스템 및 이를 이용한 의류 피팅 서비스 제공 방법 | |
CN117745990B (zh) | 一种虚拟试衣方法、装置和存储介质 | |
CN114125271B (zh) | 图像处理方法、装置及电子设备 | |
US20230164297A1 (en) | Method and system for virtual fitting based on video meeting program | |
CN117408766A (zh) | 服饰穿搭推荐方法、电视机、介质及设备 | |
CN113837835B (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 |