CN112330383A - 用于基于可视元素的物品推荐的设备及方法 - Google Patents

用于基于可视元素的物品推荐的设备及方法 Download PDF

Info

Publication number
CN112330383A
CN112330383A CN202010629151.9A CN202010629151A CN112330383A CN 112330383 A CN112330383 A CN 112330383A CN 202010629151 A CN202010629151 A CN 202010629151A CN 112330383 A CN112330383 A CN 112330383A
Authority
CN
China
Prior art keywords
item
image
processor
fashion
compatibility
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
Application number
CN202010629151.9A
Other languages
English (en)
Inventor
宁广涵
张晓凡
赖瑞欣
张弛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Shangke Information Technology Co Ltd
JD com American Technologies Corp
Original Assignee
Beijing Jingdong Shangke Information Technology Co Ltd
JD com American Technologies Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Shangke Information Technology Co Ltd, JD com American Technologies Corp filed Critical Beijing Jingdong Shangke Information Technology Co Ltd
Publication of CN112330383A publication Critical patent/CN112330383A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/535Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20132Image cropping

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Library & Information Science (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Strategic Management (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Image Analysis (AREA)

Abstract

一种用于基于可视元素的物品推荐的方法、设备和非暂时性计算机可读介质。所述方法包括:通过一个或多个处理器根据物品的物品图像确定可视元素;通过一个或多个处理器至少基于可视元素的一部分生成物品的元素描述符;以及通过一个或多个处理器计算元素描述符与一个或多个其他物品的一个或多个其他元素描述符之间的相容性值。

Description

用于基于可视元素的物品推荐的设备及方法
交叉引用
在本公开的说明书中引述和讨论了一些参考文献,其可以包括专利、专利申请和各种出版物。对这些参考文献的引述和/或讨论仅被提供用于阐明本公开的描述,而不是承认任何这样的参考文献是本文描述的公开内容的“现有技术”。本说明书中引用和讨论的全部参考文献均以引用方式整体并入本文中,其程度如同每篇参考文献单独通过引用并入的程度相同。
技术领域
本公开总体上涉及计算机视觉领域,更具体地涉及用于基于可视元素的产品推荐的系统、设备及方法。
背景技术
出于总体呈现本公开的上下文的目的而提供本文的背景技术描述。既不明确地承认也不暗示地承认当前列名的发明人的在背景技术部分中描述的范围内的工作、以及在提交时可能不是作为现有技术的描述的各方面为本发明的现有技术。
随着电子商务的快速发展和在线购物的兴起,可视时尚分析已在计算机视觉中引起了浓厚兴趣。最近已经开发出许多方法来解决时尚相容性和时尚推荐方面的问题。用于学习时尚相容性的主流方法之一是经由度量学习来实现的,度量学习是通过选择共同购买的物品和套装数据集并且计算所选物品之间的距离来实现的。为了度量物品之间的相容性,McAuley等人[1]提出了一种学习由预先训练的卷积神经网络(CNN)提取的图像特征之间的关系的方法。通过使用孪生网络(Siamese network),这种用于相容性学习的特征提取技术得到了改进[2,3]。这些方法可以通过仅提供正样本和负样本对来学习复杂的关系。然而,它们不足以表示时尚物品之间的相容性。它们的策略将所有时尚物品映射到一个公共空间,其似乎没有足够的灵活性来评估任意一对物品之间的距离。
另一方面,另一种方法涉及通过将套装中的物品视为序列来学习相容性。这些研究的问题在于无法应用确定套装品味的时尚风格,因为这些研究仅关注局部成对关系。
存在第三种方法,其试图捕获潜在的时尚风格,将套装考虑为时尚物品的组合。时尚风格通常表示对套装进行组织的不同原理。为了实现高级的时尚推荐系统,这些方法不仅关注估计个人喜好,而且还关注解释时尚风格。Takagi等人[4]收集和学习被标注为典型时尚风格的快照图像。然而,一些套装具有模糊的风格并且无法进行分类。
因此,本领域存在未解决的需求,需要解决上述缺陷和不足。
发明内容
在一些方面中,本公开涉及用于针对时尚物品提供推荐的系统。在某些实施例中,系统中的嵌入空间不是通过CNN直接从物品图像导出的。相反,我们首先提取鲁棒的时尚元素,这些元素(在时尚物品之中)既具有代表性又具有多样性。物品的集合中的(套装内的)这些元素用于学习相容性。在某些实施例中,新颖的特性在于单个物品可以由各种可视元素组成,并且它们的组合可以形成不同的时尚风格。当与不同的物品结合时,目标物品在定义整体时尚风格以及整体相容性方面可以起不同作用。换言之,在本公开中,当目标物品用于与衣服的不同集合进行搭配时,会注意该目标物品中的不同的可视元素。
在一些方面中,本公开涉及用于基于可视元素的物品推荐的方法。该方法包括:通过一个或多个处理器根据物品的物品图像确定可视元素;通过一个或多个处理器至少基于可视元素的一部分生成物品的元素描述符;以及通过一个或多个处理器计算元素描述符与一个或多个其他物品的一个或多个其他元素描述符之间的相容性值。
在一些实施例中,该方法还包括:通过一个或多个处理器将相容性值与相容性阈值进行比较。
在一些实施例中,该方法还包括:通过一个或多个处理器响应于相容性值大于或等于相容性阈值,推荐一个或多个其他物品。
在一些实施例中,该方法还包括:通过一个或多个处理器响应于物品与一个或多个其他物品进行搭配,分析所确定的可视元素,以根据所确定的可视元素来确定特征元素,其中特征元素包括所确定的可视元素中的全部或一部分。
在一些实施例中,至少基于可视元素的一部分生成物品的元素描述符的步骤包括:通过一个或多个处理器基于特征元素生成元素描述符。
在一些实施例中,特征元素是通过具有注意力机制的两个卷积长期短期记忆(ConvLSTM)网络确定的。
在一些实施例中,在根据物品的物品图像确定可视元素的步骤之前,该方法还包括以下步骤:通过一个或多个处理器获取包括物品图像的原始图像;通过一个或多个处理器对原始图像执行人体解析以生成解析图像;以及通过一个或多个处理器基于原始图像和解析图像生成物品图像。
在一些实施例中,基于原始图像和解析图像生成物品图像的步骤包括以下步骤:通过一个或多个处理器对解析图像进行裁剪,以生成包括裁剪的物品区域和裁剪的非物品区域的裁剪的解析图像;通过一个或多个处理器从裁剪的解析图像中过滤掉裁剪的非物品区域,以生成人体解析掩模;以及通过一个或多个处理器将人体解析掩模与原始图像重叠,以生成物品图像。
在一些实施例中,在生成物品的元素描述符的步骤之前,该方法还包括:通过一个或多个处理器从可视元素中删减不满足以下条件中的任意条件的可视元素:与尺度不变特征变换(SIFT)/加速鲁棒特征(SURF)/最大稳定极值区域(MSER)关键点重叠;以及与可视标记(landmark)重叠。
在一些实施例中,执行人体解析的步骤包括以下步骤:通过一个或多个处理器执行关于数据集训练的人体解析算法,其中,人体解析算法是可视关键点和/或人类关键点辅助的人体解析算法。
在一些方面中,本公开涉及用于基于可视元素的物品推荐的系统。在某些实施例中,该系统包括计算设备。计算设备具有处理器和存储计算机可执行代码的存储设备。当计算机可执行代码在处理器处执行时,其被配置为执行上述方法。
在一些方面中,本公开涉及用于基于可视元素的物品推荐的设备。该设备包括:处理器;存储指令的存储器,所述指令在由处理器执行时使处理器执行以下操作:根据物品的物品图像确定可视元素;至少基于可视元素的一部分生成物品的元素描述符;以及,计算元素描述符与一个或多个其他物品的一个或多个其他元素描述符之间的相容性值。
在一些实施例中,所述指令在由处理器执行时还使该处理器执行以下操作:将相容性值与相容性阈值进行比较。
在一些实施例中,所述指令在由处理器执行时还使该处理器执行以下操作:响应于相容性值大于或等于相容性阈值,推荐一个或多个其他物品。
在一些实施例中,所述指令在由处理器执行时还使该处理器执行以下操作:响应于物品与一个或多个其他物品进行搭配,分析所确定的可视元素,以根据所确定的可视元素来确定特征元素,其中,特征元素包括所确定的可视元素的全部或一部分。
在一些实施例中,所述指令在由处理器执行时还使该处理器执行以下操作:基于特征元素生成元素描述符。
在一些实施例中,特征元素是通过具有注意力机制的两个卷积长期短期记忆(ConvLSTM)网络确定的。
在一些实施例中,所述指令在由处理器执行时还使该处理器执行以下操作:获取包括物品图像的原始图像;对原始图像执行人体解析以生成解析图像;以及基于原始图像和解析图像生成物品图像。
在一些实施例中,所述指令在由处理器执行时还使该处理器执行以下操作:对解析图像进行裁剪,以生成包括裁剪的物品区域和裁剪的非物品区域的裁剪的解析图像;从裁剪的解析图像中过滤掉裁剪的非物品区域,以生成人体解析掩模;以及将人体解析掩模与原始图像重叠,以生成物品图像。
在一些实施例中,所述指令在由处理器执行时还使处理器执行以下操作:从可视元素中删减不满足以下条件中的任意条件的可视元素:与尺度不变特征变换(SIFT)/加速鲁棒特征(SURF)/最大稳定极值区域(MSER)关键点重叠;以及与可视标记(landmark)重叠。
在一些方面中,本公开涉及包括如上所述的设备的系统。
在一些方面中,本公开涉及存储计算机可执行指令的非暂时性计算机可读介质,计算机可执行指令在由计算设备的处理器执行时使处理器执行上述方法。
根据结合附图及其说明的优选实施例的以下描述,本公开的这些和其他方面将变得显而易见,但是可以在不脱离本公开的新颖构思的精神和范围的情况下实现其变化和修改。
附图说明
附图示出了本公开的一个或多个实施例,并且连同书面描述作为对本公开的原理的解释。在任何可能的情况下,贯穿附图,相同的附图标记用于指代实施例的相同或类似的元件。
图1是示出了根据本公开的一些实施例的在其中可以实现本文描述的设备和/或方法的示例性系统的图。
图2A是示意性地示出了根据本公开的一些实施例的用于时尚推荐的计算设备的配置的示例的框图。
图2B是示意性地示出了根据本公开的一些实施例的物品图像生成模块的配置的示例的框图。
图2C是示意性地示出了根据本公开的一些实施例的可视元素确定模块的配置的示例的框图。
图2D是示意性地示出了根据本公开的一些实施例的相容性确定模块的配置的示例的框图。
图3A至图3D示例性地示出了根据本公开的一些实施例的用于根据原始图像生成物品图像的处理。
图4示例性地示出了根据本公开的一些实施例的由物品图像生成模块生成的若干物品图像。
图5示例性地示出了根据本公开的一些实施例的由时尚推荐应用根据物品/服装创建的若干推荐套装。
图6是示意性地示出了根据本公开的一些实施例的用于基于可视(或时尚)元素确定物品/服装之间的相容性的方法的流程图。
图7是示意性地示出了根据本公开的一些实施例的用于基于可视元素的时尚推荐的方法的流程图。
具体实施方式
在以下示例中更具体地描述了本公开,这些示例仅用于说明目的,因为其中的许多修改和变化对于本领域技术人员来说是显而易见的。现在将详细描述本公开的各实施例。参考附图,在所有附图中相同的附图标记表示相同的组件。除非上下文另有明确说明,否则如在本文的描述中和整个所附权利要求书中使用的“一”、“一个”和“所述”的含义包括复数引用。此外,除非上下文另外清楚地指示,否则如本文的描述中和整个所附权利要求中使用的“在……之中”的含义包括“在……之中”和“在……之上”。此外,为了方便读者,可以在说明书中使用标题或副标题,其不会影响本公开的范围。另外,在下文中更具体地定义本说明书中使用的一些术语。
本说明书中使用的术语一般具有其领域中的、本公开的上下文之中的、以及在每个术语所使用的特定上下文中的普通含义。在下文中或在说明书的其他地方讨论用于描述本公开的某些术语,以向实践者提供关于本公开的描述的附加的引导。应当理解,可以用不止一种方式来陈述同样的事物。因此,可以针对本文所讨论的术语中的任何一个或多个来使用备选语言和同义词,并且对术语是否在本文中被详细阐述或讨论也不施加任何特殊意义。提供了某些术语的同义词。一个或多个同义词的叙述并不排除其他同义词的使用。本说明书中任何地方对示例(包括本文中讨论的任何术语的示例)的使用仅是说明性的,并且绝不限制本公开或任何示例性术语的范围和含义。同样,本公开不限于本说明书中给定的各实施例。
除非另外定义,否则本文使用的所有术语(包括技术和科学术语)具有与本公开所属领域的普通技术人员通常所理解的相同的含义。还应理解,诸如在通用词典中定义的那些术语之类的术语应被解释为具有与它们在相关技术和本公开的上下文中的含义相一致的含义,而不被解释为理想或过于形式化的含义,除非本文如此明确地定义。
除非另外定义,否则在相同对象之前使用的“第一”、“第二”、“第三”等旨在区分这些不同的对象,但并不限制其任何顺序。
如本文所用,“大约”、“约”、“实质上”或“近似”通常应表示在给定值或范围的20%、优选10%、更优选5%之内。本文给出的数值量是近似的,这意味着如果没有明确说明,可以推断术语“大约”、“约”、“实质上”或“近似”。
如本文所使用的,“多个”意指两个或更多个。
如本文所使用的术语“包括”、“含有”、“具有”、“包含”、“涉及”等被理解为是开放式的,即,意味着“包括但不仅限于”。
如本文所使用的,短语“A、B和C中的至少一个”应该被解释为意指使用非排他逻辑或“OR”的逻辑(A或B或C)。应理解,可以以不同的顺序(或同时)执行方法中的一个或多个步骤而不改变本公开的原理。如本文中所使用的术语“和/或”包括相关列出项目中的一个或多个的任何和所有组合。
如本文所使用的,术语“模块”可以指代如下项、可以是如下项的一部分、或者可以包括如下项:专用集成电路(ASIC);电子电路;组合逻辑电路;现场可编程门阵列(FPGA);执行代码的处理器(共享、专用或组);提供所述功能的其他合适的硬件组件;或者上述项中的一些或全部的组合,例如以芯片上系统的形式。术语“模块”可以包括存储由处理器执行的代码的存储器(共享、专用或组)。
如本文所使用的术语“代码”可以包括软件、固件和/或微代码,并且可以指代程序、例程、函数、类和/或对象。如上所使用的,术语“共享”意味着可以使用单个(共享)处理器来执行来自多个模块的一些或全部代码。另外,来自多个模块的一些或全部代码可以由单个(共享)存储器存储。如上文使用的术语“组”意味着可以使用处理器的组来执行来自单个模块的一些或全部代码。另外,来自单个模块的一些或全部代码可以使用存储器的组存储。
本文使用的术语“接口”通常是指用于在组件之间执行数据通信的、位于组件之间的交互点处的通信工具或装置。通常,接口可以适用于硬件和软件这两个级别,并且可以是单向或双向接口。物理硬件接口的示例可以包括电连接器、总线、端口、电缆、端子、以及其他I/O设备或组件。例如,与接口进行通信的组件可以是计算机系统的多个组件或外围设备。
本公开涉及计算机系统。如附图中所示,计算机组件可以包括物理硬件组件(其被示为实线框)、以及虚拟软件组件(其被示为虚线框)。本领域普通技术人员将了解,除非另外指示,否则这些计算机组件可以以软件、固件或硬件组件、或其组合的形式实现,但不限于此。
本文描述的装置、系统及方法可以通过由一个或多个处理器执行的一个或多个计算机程序实现。计算机程序包括存储在非暂时性有形计算机可读介质上的处理器可执行指令。计算机程序还可以包括已存储的数据。非暂时性有形计算机可读介质的非限制性示例是非易失性存储器、磁存储装置和光存储装置。
在下文中,将参考示出本公开的一些实施例的附图,更完整地描述本公开。然而,本公开可以按多种不同形式来实现,并且不应当被解释为受到本文阐述的实施例的限制;相反,提供这些实施例是为了使本公开是全面和完整的,并且将本公开的范围完全传达给本领域技术人员。
此外,在具体实施例中,本文中所述的“物品”可以是“商品”。
图1是示出了根据本公开的一些实施例的在其中可以实现本文描述的设备和/或方法的示例性系统100的图。在一些实施例中,系统100可以包括用于时尚推荐的设备(或物品推荐设备)200、多个终端设备110、以及将物品推荐设备200与多个终端设备110中的一个或多个终端设备通信地连接的网络120。
在一些实施例中,物品推荐设备200可以确定要被推荐以用于与目标物品/服装(或感兴趣的物品/服装)进行搭配以与其一起形成推荐套装的一个或多个时尚物品(例如,服装、饰品等),以及输出推荐套装的信息,例如套装图像、套装中的各个推荐的时尚物品/服装的品牌、库存、价格和/或尺寸、以及购买信息等。在本文中,目标物品/服装可以指用户感兴趣的物品/服装。作为示例,目标物品/服装可以是用户在电子商务平台上添加到他/她的购物车中和/或在被加载到他/她的终端设备110等中的电子商务平台上购买的物品/服装。要注意,物品推荐设备200的具体形式不限于此。例如,物品推荐设备200本身可以是进行电子商务的应用,或者物品推荐设备200可以与其他电子商务应用协作以实现物品的推荐。物品推荐设备200可以经由任何技术(例如,有线或无线连接)连接到网络120。
在一些实施例中,终端设备110可以是由用户操作的终端。终端设备的形式不受特别限制,并且在一些实施例中,便携式设备(例如,智能电话、平板设备和膝上型计算机)或固定设备(例如,台式计算机)可以用作终端设备110。终端设备110可以经由任何技术(例如,有线或无线连接)连接到网络120。
在一些实施例中,网络120可以包括一个或多个任何类型的网络,包括公共陆地移动网络(PLMN)、电话网络(例如,公共交换电话网络(PSTN)和/或无线网络)、局域网(LAN)、城域网(MAN)、广域网(WAN)、互联网协议多媒体子系统(IMS)网络、专用网络、互联网、内联网和/或另一种类型的网络。
在本文中,作为系统100的操作示例,响应于用户在他/她的终端设备110中加载的电子商务平台上示出他/她对物品/服装(目标物品/服装)的兴趣(例如,在电子商务平台上将物品/服装添加到他/她的购物车和/或在电子商务平台上购买物品/服装等),物品推荐设备200可以确定要被推荐以用于与目标物品/服装进行搭配以与其一起形成推荐套装的一个或多个时尚物品,然后经由网络120向用户发送推荐套装的信息(例如,套装图像、套装中的各个推荐的时尚物品/服装的品牌、库存、价格和/或尺寸、以及购买信息等),以及将其显示在用户的终端设备110的显示单元(未示出)上。然而,本公开不限于此。
尽管图1示出了系统100的示例性设备和网络,但是在其他实施例中,系统100可以包括与图1中所示的设备和/或网络相比而言较少的、不同的、不同地布置的或附加的设备和/或网络。附加地或备选地,系统100的一个或多个设备可以执行被描述为由系统100的一个或多个其他设备执行的任务中的一个或多个任务。
在下文中,将参考图2A至图2D、图3A至图3D和图4详细描述根据本公开的一些实施例的用于基于可视(或时尚)元素的时尚推荐的设备的具体示例。
图2A是示意性地示出了根据本公开的一些实施例的用于基于可视(或时尚)元素的时尚推荐的计算设备200的配置的示例的框图。在一些实施例中,计算设备200可以是服务器计算机、集群、云计算机、通用计算机、移动设备、平板计算机或专用计算机,其可以从多个时尚物品(例如,服装、配饰等)的多个物品图像中的每个物品图像中提取定义时尚风格的时尚元素,并且确定多个时尚物品/服装的时尚元素之间的相容性,从而基于所确定的相容性实现对由多个物品中的一部分或全部形成的套装的时尚推荐。在一些实施例中,计算设备200可以与其他计算设备或服务进行通信,以从那些计算设备或服务获得物品的原始图像数据,基于所获得的原始数据来生成和维护(例如,更新)时尚推荐数据库,并且向这些计算设备或服务提供时尚推荐数据库。在一些实施例中,所述通信是经由网络执行的,该网络可以是有线或无线网络,并且可以具有各种形式,例如公共网络和专用网络。此外,应注意,术语“时尚元素”和术语“可视元素”在本文中可以互换使用,因为可以由计算设备(例如计算设备200)处理的时尚元素必须是可视的,并且可视元素在某种程度上是与时尚相关的。
如图2A所示,计算设备200可以包括但不限于处理器212和存储器214。此外,计算设备200还可以包括可选的存储设备216。在一些实施例中,计算设备200可以包括用于执行其对应任务的其他硬件组件和软件组件(未示出)。这些硬件和软件组件的示例可以包括但不限于:其他所需要的存储器、接口、总线、输入/输出(I/O)模块或设备、网络接口和/或外围设备等。
处理器212可以是被配置为控制计算设备200的操作的中央处理单元(CPU)。处理器212可以执行操作系统(OS)或计算设备200的其他应用。在一些实施例中,计算设备200可以具有多于一个的用作处理器的CPU(例如,两个CPU、四个CPU、八个CPU或任何合适数量的CPU)。存储器214可以是用于存储计算设备200的操作的数据和指令的易失性存储器(例如,随机存取存储器(RAM))。在一些实施例中,存储器214可以是易失性存储器阵列。在一些实施例中,计算设备200可以在多于一个存储器214上运行。此外,存储器214也可以是非易失性存储器,例如只读存储器(ROM)、可擦除可编程ROM(EPROM)、电EPROM(EEPROM)等。
存储设备216可以是用于存储OS(未示出)和计算设备200的其他应用的非易失性数据存储介质。存储设备216的示例可以包括非易失性存储器,例如,闪存、存储卡、USB驱动器、硬盘驱动器、软盘、光学驱动器、固态驱动器(SSD)或任何其他类型的数据存储设备。在一些实施例中,存储设备216可以是本地存储装置、远程存储装置或云存储装置。在一些实施例中,计算设备200可以具有多个存储设备116,其可以是相同的存储设备或不同类型的存储设备,并且计算设备200的应用可以被存储在计算设备200的一个或多个存储设备116中。在一些实施例中,计算设备200可以是云计算机,并且处理器212、存储器214和存储设备216是通过互联网按需提供的共享资源。在一些其他实施例中,计算设备200可以是通信地连接到大型机服务器的工作站,该大型机服务器存储用于操作计算设备200的所有数据和指令,并且在这种情况下,可以可选地省略存储设备216。
如图2A所示,存储设备216可以在其上存储时尚推荐应用218以及原始图像数据库290、物品图像数据库292、训练数据294和推荐数据库296中的至少一个。然而,它们中的一些或全部可以被存储在其他位置,并且本公开不限于此。当时尚推荐应用218被加载到存储器214中并且由处理器212执行时,其可以使处理器212基于来自物品图像数据库292和/或训练数据294的数据来提取形成候选套装的多个物品/服装中的每一个物品/服装的时尚元素,基于来自训练数据294的数据计算时尚元素的相容性值/得分,以及响应于高相容性值/得分,将与套装相关的信息存储在推荐数据库296中,以从推荐数据库296中检索一组或多组套装并且根据需要将其推荐给用户。在一些实施例中,用于提取时尚元素和计算相容性的算法或模块可以被预先训练,并且训练数据294在计算设备200中可能不是必需的。在一些实施例中,当一个、几个或一批新物品被添加到原始图像数据库290(或可选地,物品图像数据库292)时,可以评估包括至少一个新物品的候选套装,并且将(在候选套装之中的各物品之间)具有高相容性的候选套装存储到推荐数据库296。在某些实施例中,当客户购买一件物品时,从推荐数据库296中检索具有所购买的物品的套装,并将具有高相容性的套装作为推荐提供给客户。
在一些实施例中,时尚推荐应用218包括图像数据获取模块220、物品图像生成模块230、可视元素确定模块240、元素描述符生成模块250、相容性确定模块260和接口模块270等。在一些实施例中,时尚推荐应用218可以包括其操作所需的其他应用或模块。应注意,模块各自通过共同形成一个应用的计算机可执行代码或指令、或数据表或数据库实现。在一些实施例中,模块中的每个模块还可以包括子模块。在一些其他实施例中,模块中的一些模块可以被组合为一个单独的模块。在又一些其他实施例中,一些模块可以被实现为电路而不是可执行代码。在一些另外的实施例中,时尚推荐应用218的模块中的一些或所有模块可以位于远程计算设备处或分布在云中。
在一些实施例中,图像数据获取模块220在被加载到存储器214中并且由处理器212执行时,其可以使处理器212从原始图像数据库290或某个其他的模块或外部设备获取或接收原始图像数据。原始图像可以指初始图像,初始图像尚未被处理(或者至少没有以与下文描述的相同或相似的方式处理),并且是从原始图像数据库290获取或接收的。要注意的是,术语“原始图像”和“初始图像”在本公开中可以互换使用。
在一些实施例中,图像数据获取模块220可以以预定的时间间隔(例如每天或每周)或响应于由某个其他的模块或外部设备发出的指令,获取被存储在原始图像数据库290中的原始图像的一部分或全部。在另外的实施例中,图像数据获取模块220可以响应于将原始图像的集合添加到原始图像数据库290或响应于在将原始图像的集合添加到原始图像数据库290时由某个其他的模块或外部设备发出的指令,获取被存储在原始图像数据库290中的原始图像的集合的一部分或全部。
在一些实施例中,原始图像可以是例如人体模特儿或穿着目标物品/服装(例如大衣、衬衫、裙子、裤子等)的任何人/任何其他事物的图像。在本文中,目标物品/服装是指原始图像中描绘的多件物品/服装中的感兴趣的物品/服装。在另外的实施例中,原始图像可以仅仅是例如悬挂在衣架等上的目标物品/服装的图像。然而,本公开不限于此。在一些实施例中,物品是电子商务平台上的列表,每个时尚物品在电子商务平台上具有对应的记录或网页,并且图像数据获取模块220从它们各自的对应记录或网页检索物品图像。在一些实施例中,物品是来自商店、仓库、制造商或品牌的产品,并且图像数据获取模块220被配置为从产品的对应数据库检索或接收物品图像。对于对应数据库中的每件物品,记录可以包括诸如物品的库存单位(SKU)之类的标识号、以及物品的图像或物品穿着在模特儿上的图像。
图3A示例性地示出了根据本公开的一些实施例的由图像数据获取模块220获取的原始图像,其中,该原始图像描绘了穿着裙子、裤子和鞋子的女孩,例如,裙子可能是目标物品。通常,所获取的原始图像可以包括目标物品区域和非目标物品区域两者。非目标物品区域可以包含例如背景区域、脸部区域、头发区域、左臂区域、右臂区域、左腿区域、右腿区域、以及附加物品区域等,其中,附加物品不是目标物品,仅列举了几个非限制性示例。例如,在图3A所示的原始图像中,裙子区域可以是目标物品区域,而除了裙子区域之外的所有其他区域(例如,脸部区域、头发区域、裤子区域、鞋子区域等)可以属于非目标物品区域。在从原始图像数据库290获取原始图像之后,将在像素层面定位目标物品区域,以更好地感知并从物品中提取精确的时尚元素以用于时尚推荐,这将在下面详细描述。
图像数据获取模块220在被加载到存储器214中并且由处理器212执行时,其还可以使处理器212在获取原始图像之后,将原始图像发送到物品图像生成模块230。
在一些实施例中,物品图像生成模块230在被加载到存储器214中并且由处理器212执行时,其可以使处理器212基于所获取的原始图像来生成物品图像。在本文中,物品图像是指从原始图像中去除了非目标物品区域的图像。由于原始图像可能包含噪声(例如,非目标物品区域中包含的时尚元素,这会显著降低后续的时尚元素提取过程的精确性),因此物品图像生成模块230用于在像素层面定位目标物品并且从原始图像中去除非目标物品区域。如图2B所示,物品图像生成模块230可以包括人体解析模块232、裁剪模块234、过滤模块236和重叠模块238等,但是本公开不限于此。
在一些实施例中,人体解析模块232在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到所获取的原始图像时,对原始图像执行人体解析,以生成解析图像。如本文中所使用的,术语“人体解析”可以指将图像分割为属于身体部位或衣物物品或时尚标记的语义上一致的区域,使得图像中的每个像素被指派语义角色标注。简而言之,人体解析可以在类别级逐像素预测上进行。在一些实施例中,人体解析模块232可以采用由Gong等人[11]描述的技术,其通过引用整体并入本文中。在一些实施例中,人体解析模块232可以通过卷积神经网络(CNN)实现。作为示例,人体解析模块232可以通过DeepLab V3+实现,DeepLab V3+是由谷歌开发的语义图像分割模型。然而,本公开不限于此。
在一些实施例中,人体解析模块232可以基于人体关键点识别。在一些实施例中,可以关于人体数据集预训练人体关键点辅助的人体解析模块232。具体地,可以使用训练数据294中包括的训练数据的集合来预先训练人体关键点辅助的人体解析模块232,其中,可以利用训练数据的集合中的每幅图像的对应的人体特征对每幅图像进行标注。在一些实施例中,可以预先定义N(例如,N≤255)个与人有关的类别(例如,面部类别、头发类别、裙子类别、衬衫类别、裤子类别、鞋子类别等),每个类别可以具有在1到N的范围中的相应的类别值(例如,面部类别对应于类别值1、头发类别对应于类别值2、裙子类别对应于类别值3、…、以及鞋子类别对应于类别值N等)。此外,可以根据预定义的类别将训练数据的集合中的每幅图像分割为多个(例如,应小于或等于N的n个)与人有关的区域,并且每个与人有关的区域中的所有像素可以被指派等于相应的类别值的相同灰度值。换言之,与人有关的区域中的每一个都对应于相应的类别,并且具有指示相应类别的相应的灰度值(等于相应的类别值)。例如,训练数据的集合中的图像中的面部区域对应于面部类别,并且面部区域中的像素可以具有指示该区域属于面部类别的相同的灰度值1。对于另一示例,训练数据的集合中的图像中的裙子区域对应于裙子类别,并且裙子区域中的像素可以具有指示该区域属于裙子类别的相同的灰度值3。
在一些实施例中,人体解析模块232可以基于时尚关键点/时尚标记识别。在一些实施例中,可以关于时尚数据集预训练时尚关键点/时尚标记辅助的人体解析模块232。具体地,可以使用训练数据294中包括的训练数据的集合来预先训练时尚关键点/时尚标记辅助的人体解析模块232,其中,可以利用训练数据的集合中的每幅图像的对应的时尚特征来对每幅图像进行标注。在一些实施例中,可以预先定义M(例如,M≤255)个与时尚有关的类别(例如,领子类别(衣领类型)、袖口类别(衣袖类型)、蝴蝶结类别、饰带类别等),每个类别可以具有在1到M的范围中的相应的类别值(例如,领子类别对应于类别值1、袖口类别对应于类别值2、蝴蝶结类别对应于类别值3、…、以及饰带类别对应于类别值M等)。此外,可以根据预定义的类别将训练数据的集合中的每幅图像分割为多个(例如,应小于或等于M的m个)与时尚有关的区域,并且每个与时尚有关的区域中的所有像素可以被指派等于相应的类别值的相同灰度值。换言之,与时尚有关的区域中的每一个对应于相应的类别,并且具有指示相应的类别的相应的灰度值(等于相应的类别值)。例如,训练数据的集合中的图像中的领子区域对应于领子类别,并且领子区域中的像素可以具有指示该区域属于领子类别的相同的灰度值1。对于另一示例,训练数据的集合中的图像中的袖口区域对应于袖口类别,并且袖口区域中的像素可以具有指示该区域属于袖口类别的相同的灰度值2。
在利用标注数据训练人体解析模块232之后,可以将由图像数据获取模块220获取的原始图像馈送到人体解析模块232,以生成解析图像。解析图像可以具有与所获取的原始图像的尺寸相同的尺寸。然而,如上所述,在解析图像中的每个分割区域(例如,与人有关的区域和/或与时尚有关的区域)中的所有像素可以被指派等于相应的类别值的相同灰度值,以指示分割区域属于哪个类别。
图3B示例性地示出了根据本公开的一些实施例的由人体解析模块232根据图3A的原始图像生成的解析图像,其中,原始图像被分割为多个与人有关的区域(例如面部区域、头发区域、左臂区域、右臂区域、裙子区域、裤子区域、鞋子区域等),并且它们中的每一个中的像素被指派指示相应的类别的相同灰度值。
人体解析模块232在被加载到存储器214中并且由处理器212执行时,其还可以使处理器212在生成解析图像之后,将解析图像发送到裁剪模块234。
在一些实施例中,裁剪模块234在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到解析图像时,裁剪解析图像以生成包括裁剪的目标物品区域和裁剪的非目标物品区域在内的裁剪的解析图像。在一些实施例中,裁剪模块234可以基于由解析图像中的目标物品区域之内的像素的最大X坐标、最大Y坐标、最小X坐标和最小Y坐标定义的有界框来裁剪解析图像,以去除解析图像中的大部分非目标物品区域,并且生成包括裁剪的目标物品区域(以及可选地,裁剪的非目标物品区域)的裁剪的解析图像。然而,裁剪模块234的实施方式不限于此。裁剪模块234在被加载到存储器214中并且由处理器212执行时,其还可以使处理器212在裁剪解析图像之后,将裁剪的解析图像发送到过滤模块236。
在一些实施例中,过滤模块236在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到裁剪的解析图像时,从裁剪的解析图像中过滤掉裁剪的非目标物品区域,以生成人体解析掩模。在本文中,人体解析掩模是指这样的图像:其中仅目标物品区域中的像素被指派指示目标物品区域属于哪个类别的某个非零灰度值,而所有其他像素具有灰度值零。在一些实施例中,过滤模块236可以为裁剪的非目标物品区域中的所有像素重新指派灰度值零,以过滤掉与非目标物品区域有关的不想要的信息,并且生成仅包括目标物品区域的人体解析掩模。人体解析掩模操作用于在像素侧面上定位目标物品区域。然而,过滤模块236的实施方式不限于此。图3C示例性地示出了根据本公开的一些实施例的由过滤模块236生成的人体解析掩模,其中,目标物品区域(即,裙子区域)中的像素具有指示该区域属于裙子类别的相同的灰度值,而非目标物品区域(例如,左臂区域)(即除裙子区域以外的区域)中的所有像素具有灰度值零。过滤模块236在被加载到存储器214中并且由处理器212执行时,其还可以使处理器212在生成人体解析掩模之后,将人体解析掩模发送到重叠模块238。
在一些实施例中,重叠模块238在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到人体解析掩模时,将人体解析掩模与原始图像重叠以生成物品图像。在一些实施例中,重叠模块238可以基于这两个图像中的像素的坐标将原始图像中与人体解析掩模匹配的区域确定为原始图像中的目标物品区域,并且将灰度值零指派给原始图像中的其余区域(即,非目标物品区域)之中的所有像素,以生成仅包括感兴趣区域(ROI)(即,目标物品区域)的物品图像。以这种方式,原始图像中的诸如背景部分、面部部分之类的非目标物品区域被去除,仅留下目标物品区域,这可以减少噪声并且因此实现从目标物品中更精确地提取时尚元素,因为相似的时尚元素可以包含在非目标物品区域中(例如,背景墙纸中的相似的时尚元素)。然而,应注意,重叠模块238的实施方式不限于此。图3D示例性地示出了根据本公开的一些实施例的通过物品图像生成模块230根据图3A的原始图像生成的物品图像,其中,仅裙子区域(即,目标物品区域)被保留,而所有其他区域(例如,背景区域、面部区域、左臂区域、右臂区域等)都被去除。所生成的物品图像可以被存储在物品图像数据库292中。以相同的方式,可以生成一个或多个其他物品的一个或多幅物品图像,然后将其存储在物品图像数据库292中。图4示例性地示出了根据本公开的一些实施例的由物品图像生成模块230生成的若干物品图像。
在一些实施例中,重叠模块238在被加载到存储器214中并且由处理器212执行时,其还可以使处理器212在生成物品图像之后,将物品图像发送到可视元素确定模块240。在一些实施例中,过滤模块236和重叠模块238被组合为一个模块,并且被配置为执行将掩模与原始图像重叠的功能并且检索与掩模相对应的部分图像。在一些实施例中,由重叠模块238获得的部分图像还包括类别信息。
在一些实施例中,可视元素确定模块240在被加载到存储器214中并且由处理器212执行时,其可以使处理器212从物品的物品图像中提取一个或多个时尚(或可视)元素,并且基于所提取的时尚元素确定特征元素。已知单件物品/服装可以由时尚物品/服装内的既具有代表性又具有多样性的各种时尚元素组成,并且这些时尚元素的组合可以形成不同的时尚风格。当与不同的物品进行搭配时,目标物品在定义整体时尚风格以及整体相容性时可以起不同作用。换言之,当物品用于与不同套衣服进行搭配时,会注意目标物品中的不同时尚元素。基于此,本解决方案关注于时尚元素,并且在元素层面上学习物品之间的相容性,而不是在物品层面(将全部物品特征提取到嵌入空间中)上或在套装层面(给定物品的整体风格)上操作。具体地,为了学习物品/服装的集合之间的相容性以用于时尚推荐,可视元素确定模块240可以用于从物品/服装的集合的物品图像中的每一幅物品图像中提取定义各件物品/服装的时尚风格的时尚元素,并且基于所确定的时尚元素来确定定义物品/服装的集合的整体时尚风格和其间的整体相容性的特征元素,其细节将在下面描述。
如图2C所示,可视元素确定模块240可以包括时尚元素提取模块242、元素删减(pruning)模块244和元素分析器246等。然而,本公开不限于此。
在一些实施例中,时尚元素提取模块242在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到物品图像时,从物品的物品图像中提取时尚元素。在本文中,时尚元素是指定义物品/服装的时尚风格的元素。在一些实施例中,时尚元素提取模块242可以通过卷积神经网络(CNN)实现。作为示例,时尚元素提取模块242可以通过基于U-Net的CNN(例如,参见Ronneberger等人[12],其通过引用整体并入本文中)来实现。在某些实施例中,在元素提取模块242中使用了沙漏符号(hourglass)[13]。
在一些实施例中,可以关于数据集预训练时尚元素提取模块242。具体地,可以使用训练数据294中包括的训练数据的集合来预先训练时尚元素提取模块242,其中可以利用训练数据的集合中的每幅物品图像的对应的分割图来对每幅图像进行标注。在利用标注数据对时尚元素提取模块242进行训练之后,可以将物品图像馈送到时尚元素提取模块242,以从物品图像中提取时尚元素。在一些实施例中,时尚元素提取模块242可以从套装的潜在候选项φ={I1,I2,I3,...,Ii,...,IN}内的每一件物品Ii|i∈[1,N]的物品图像中提取所有可能的时尚元素
Figure BDA0002566214670000191
同时可选地计算所提取的时尚元素的置信度,其中,下标i是指第i件物品,N是指最大物品计数,
Figure BDA0002566214670000192
表示第i件物品内的第j个时尚元素。在本文中,时尚元素可以是向量空间中具有相同长度(或可选地,各种长度)的特征向量。在一个实施例中,时尚元素被表示为集合,该集合中的每个元素都是由像素组成的区域的一部分(通常是分割的结果)。在另一实施例中,时尚元素被表示为集合,该集合中的每个元素都是由关键点组成的子集(通常是标记检测的结果)。这两个实施例的区别在于:像素是连通的分量,分割的结果是连通的(8连通);而关键点/标记可以是离散的和不连通的,在这一点上,每个元素都是不同能力的子集。如下所述,那些时尚元素可以由描述符定义,其中,每个元素可以由具有相同长度的向量表示,并且向量是隐空间(latent space)中的特征向量。
时尚元素提取模块242在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在从物品的物品图像中提取时尚元素之后,向元素删减模块244发送所提取的时尚元素及其(可选的)置信度。在某些实施例中,受关注的ConvLSTM用于顺序地处理套装中的不同物品并且选择某些时尚元素。对于不同套装中的一件物品,所选择的时尚元素可以不同。在某些实施例中,物品的那些选择的时尚元素被进一步进行删减。
在一些实施例中,元素删减模块244在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到所提取的时尚元素及其(可选的)置信度时,从所提取的可视元素中删减不满足以下条件中的任意条件的可视元素:a)与尺度不变特征变换(SIFT)/加速鲁棒特征(SURF)/最大稳定极值区域(MSER)关键点重叠;以及b)与可视标记重叠,并且保留满足上述条件的可视元素。具体地,那些时尚元素形成集合,每个时尚元素是该集合的子集,并且元素删减模块244被配置为去除一些时尚元素,或换言之,去除一些子集。每个子集是区域或若干个关键点。在某些实施例中,元素删减模块244被配置为确定子集的关键点是否与通过SIFT/SURF在空间中检测到的关键点具有接近的欧几里得距离。如果确定欧几里得距离很小,则保留该子集;否则,如果子集的关键点没有距离接近的SIFT/SURF关键点,则去除该子集。在某些实施例中,元素删减模块244被配置为确定子集的区域与通过MSER获得的区域是否具有很大的联合交集(IOU)。如果确定IOU很大,则保留该子集;如果IOU很小,则去除该子集。
敬请注意,可视元素是指通过神经网络利用独特的时尚元素检测到的区域或区(具有密集的像素或离散的点)。时尚元素可以是广泛的特征,例如颜色、图案、纹理和物理特性。SIFT/SURF关键点是图片中具有旋转不变性和尺度不变性的关键点;这些关键点不是语义级别的关键,而是在较低级别上是鲁棒且可以被信任的。时尚标记是在语义级别上的某些固定点,例如在衣袖、领口、搭扣、肩膀等处的点,它们是时尚方面应被强调的点。在某些实施例中,可视元素由神经网络(UNet等)预测;使用SIFT/SURF算法通过在多个尺度的高斯金字塔中找到梯度稳定点来获得SIFT/SURF特征;MSER区域是通过MSER算法获得的,在二值化中可以使用不同的阈值,并且通常将最大稳定区域分类为某些类别。
元素删减模块244在被加载到存储器214中并且由处理器212执行时,其还可以使处理器212将保留的时尚元素及其(可选的)置信度发送到元素分析器246。
在一些实施例中,元素分析器246在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到保留的时尚元素及其(可选的)置信度时,分析保留的时尚元素,以根据提取的时尚元素确定特征元素。要注意的是,在物品/服装中哪些时尚元素更重要取决于与其搭配的其他物品/服装是什么。例如,图形T(graphic-T)可能是学校风格的便装,也可能是波西米亚风格的。如果与牛仔裤进行搭配,则此T恤的白色可能会在时尚元素中脱颖而出,并形成学校风格的便装;如果将其与波西米亚风格的裙子、靴子和珠宝进行搭配,则T恤图形中的波西米亚风格元素可能在定义套装风格和整体相容性方面变得更加重要。由于套装是一系列物品,因此为每件物品定义时尚元素都需要来自其他物品的时尚特征。元素分析器246用于分析物品的集合中的时尚元素,并且在将该物品的集合组合在一起以形成候选套装时,通过顺序地探索该物品的集合并且在空间上在该物品的集合中的每一个集合中探测,来根据时尚元素确定特征元素。在本文中,特征元素是指形成候选套装的物品的集合中的时尚元素中的一个或多个时尚元素,该一个或多个时尚元素在定义候选套装的套装风格和候选套装之间的整体相容性方面具有更重要的意义。
在一些实施例中,元素分析器246可以通过卷积神经网络(CNN)实现。作为示例,元素分析器246可以通过具有注意力机制的两个卷积长期短期记忆(ConvLSTM)网络(参见例如Shi等人[14],其通过引用整体并入本文中)来实现。
在一些实施例中,可以关于数据集预训练元素分析器246。具体地,可以使用训练数据294中包括的训练数据的集合来预先训练元素分析器246。在利用标注数据对元素分析器246进行训练之后,可以将保留的时尚元素顺序地馈送到元素分析器246,并且可以采用用于元素的权重计算的注意力机制来向具有更重要的意义的那些元素(或特征元素)给出重要性。在一些实施例中,可以基于由时尚元素提取模块242输出的置信度,向不同的时尚元素指派不同的权重。作为示例,具有高置信度的时尚元素被定义为具有高权重或被保留,而具有低置信度的时尚元素被定义为具有低权重或被丢弃。该实施方式可以显著节省计算工作量,但是严重依赖于其他模块,例如时尚元素提取模块242。在一些实施例中,注意力机制还可以通过CNN模型来实现,可以使用根据专家的意见和/或建议标注的训练数据预先训练该CNN模型。在元素的权重计算之后,可以丢弃具有相对较低的权重(例如,低于预定义的权重阈值)的元素,而具有相对较高的权重(例如,高于预定义的权重阈值)的元素可以被保留。保留的时尚元素是定义候选套装的套装风格和整体相容性的所谓的特征元素。因此,在形成候选套装的物品的集合的时尚元素之中确定特征元素。
元素分析器246在被加载到存储器214中并且由处理器212执行时,其还可以使处理器212在根据时尚元素确定特征元素之后,将特征元素发送到元素描述符生成模块250。
在一些实施例中,元素描述符生成模块250在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到所确定的特征元素时,基于特征元素来生成元素描述符。在一些实施例中,元素描述符生成模块250可以通过卷积神经网络(CNN)实现。CNN被配置为将特征区域转换为具有固定长度的特征向量。换言之,CNN从特征元素中提取特征。
在一些实施例中,可以关于数据集预训练元素描述符生成模块250。具体地,可以使用训练数据294中包括的训练数据的集合来预先训练元素描述符生成模块250。在利用训练数据对元素描述符生成模块250进行训练之后,可以将特征元素馈送到元素描述符生成模块250,以基于特征元素生成物品的元素描述符。物品的元素描述符可以是物品的广泛的特征表示,并且实质上包含物品的所有描述信息,包括关于其各特征元素的信息。候选套装中的不同物品的元素描述符可以是具有相同长度(例如,512、1024或2048)的特征向量。元素描述符生成模块250在被加载到存储器214中并且由处理器212执行时,其还可以使处理器212在生成元素描述符之后,将元素描述符发送到相容性确定模块260。
在一些实施例中,相容性确定模块260在被加载到存储器214中并且由处理器212执行时,其可以使处理器212计算针对形成候选套装的物品/服装的集合的元素描述符之间的相容性值/得分,并且将相容性值/得分与相容性阈值进行比较。在本文中,元素描述符之间的相容性值/得分可以表示候选套装中的物品/服装之间的整体相容性。它可以显式地示出:元素与其他元素相容的程度;或者,物品/服装(由元素的集合表示)与其他物品/服装(也由元素的集合表示)相容的程度。因此,相容性确定模块260用于确定候选套装中的物品是否彼此相容,或者候选套装的相容性值/得分是否高到足以使其可以作为推荐套装。如图2D所示,相容性确定模块260可以包括相容性得分计算模块262和相容性得分比较模块264等。然而,本公开不限于此。
在一些实施例中,相容性得分计算模块262在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到元素描述符之后,计算针对形成候选套装的物品的集合的元素描述符之间的相容性值/得分。在一些实施例中,相容性得分计算模块262可以通过卷积神经网络(CNN)实现。作为示例,相容性得分计算模块262可以由图注意力网络(GAT)实现,GAT是对图结构的数据进行操作的神经网络架构(参见例如Velickovic等人[15],其通过引用整体并入本文中)。
在一些实施例中,可以关于数据集预训练相容性得分计算模块262。具体地,可以使用训练数据294中包括的训练数据的集合来预先训练相容性得分计算模块262。在利用训练数据对相容性得分计算模块262进行训练之后,可以将元素描述符馈送到相容性得分计算模块262作为图中的节点,以计算形成候选套装的物品的集合的元素描述符之间的相容性得分。元素描述符之间的相容性得分越高,元素描述符或物品的集合的相容性越好。在一些实施例中,将物品的集合的元素描述符之间的相容性得分归一化为0至1,其中,0指示元素描述符在向量空间中很远,并且元素描述符或物品之间根本不存在相容性,而1指示元素描述符在向量空间中很接近,并且在元素描述符或物品之间具有实质上完美的相容性。在一个示例中,物品的集合的元素描述符之间的相容性得分为0.9,这指示元素描述符之间的相容性高或元素描述符在向量空间中的距离很接近。
相容性得分计算模块262在被加载到存储器214中并且由处理器212执行时,其还可以使处理器212在计算形成候选套装的物品的集合的元素描述符之间的相容性得分之后,将该相容性得分发送到相容性得分比较模块264。
在一些实施例中,相容性得分比较模块264在被加载到存储器214中并且由处理器212执行时,其可以使处理器212在接收到形成候选套装的物品的集合的元素描述符之间的相容性得分时,将相容性得分与相容性阈值进行比较。在一些实施例中,可以根据时尚专家的意见和/或建议预先定义相容性阈值。在一些实施例中,可以定义相容性阈值,使得所有候选套装的相容性得分中仅某些百分比(例如,5%、10%、15%、20%等)可以超过相容性阈值。在一些实施例中,在将元素描述符之间的相容性得分归一化为0至1的情况下,可以将相容性阈值设置为在0.8至1.0的范围中、或者在0.85之上、或者在0.9或0.95之上。在一些实施例中,阈值被设置为约为0.8、或约为0.85、或约为0.9或0.95。
如果候选套装的相容性得分大于或等于相容性阈值,则确定候选套装可以作为推荐套装。然后,将形成套装的物品的所有物品图像组合在一起以生成套装图像,并且将该套装图像与套装内的所有物品的相关信息一起发送到推荐数据库296并存储在其中,从而可以从推荐数据库296中检索它们并且根据需要推荐给用户。然而,如果候选套装的相容性得分小于相容性阈值,则在一些实施例中,可以确定候选套装不可以作为推荐套装,并且将不执行发送。
在一些实施例中,接口模块270在被加载到存储器214中并且由处理器212执行时,其可以使处理器212提供交互式界面,以向用户呈现推荐结果,从用户接收输入和/或从对设备200进行管理的管理员接收指令。在一些实施例中,接口模块270可以在用户的终端设备(例如,图1的终端设备110)的显示单元(未示出)上提供诸如图形用户界面(GUI)之类的界面,使得用户可以经由界面与设备200进行交互。在一些实施例中,接口模块270可以根据需要经由用户的终端设备上的界面向用户呈现一个或多个推荐的套装。在一些实施例中,接口模块270可以向对设备200进行管理的管理员提供诸如图形用户界面(GUI)之类的界面,使得管理员可以在处理期间与应用进行交互。作为示例,经由由接口模块270提供的界面,管理员可以发出指令,以更新原始图像数据库290、训练数据库294和/或推荐数据库296,输入或更新相容性得分阈值等。然而,本公开不限于此。
在一些实施例中,原始图像数据库290可以存储物品/服装的原始图像及其描述信息,例如相应物品/服装的品牌、库存、价格和尺寸等。原始图像数据库290可以以预定的时间间隔(例如,每周或每月)或响应于来自对设备200进行管理的管理员的指令而被更新。
在一些实施例中,物品图像数据库292可以存储由物品图像生成模块230生成的物品图像。
在一些实施例中,训练数据库294可以包括用于训练计算设备200中的各种模块的数据。训练数据294中的每个数据的集合可以对应于特定模块,并且利用对应的特征进行标注。例如,数据的集合可以利用对应的分割图进行标注,并且该数据的集合可以用于训练时尚元素提取模块242。
在一些实施例中,推荐数据库296可以存储由相容性确定模块260生成的套装图像以及套装中的所有物品的相关信息。
尽管图2A至图2D示出了计算设备200的装置和模块,但是在其他实施例中,计算设备200可以包括与图2A至图2D中所示的装置和/或模块相比较少的、不同的、不同地布置的或附加的装置和/或模块。附加地或备选地,计算设备200的一个或多个装置和/或模块可以执行被描述为由计算设备200的一个或多个其他装置和/或模块执行的任务中的一个或多个任务。
图5示例性地示出了根据本公开的一些实施例的由所提出的时尚推荐应用218根据物品/服装创建的若干推荐套装。在一些实施例中,推荐套装可以被显示在图1所示的终端设备110的显示单元(未示出)上。推荐套装的显示形式没有被特别限制。例如,可以执行目标物品的显示(以下称为“目标物品显示”)50和推荐物品的显示(以下称为“推荐物品显示”)52,如图5所示。如图5所示,可以执行关于能够与目标物品适当地配套的多个推荐物品的推荐物品显示52,然而,也可以执行关于能够与目标物品适当地配套的单个推荐物品的推荐物品显示52。如图5所示,可以显示与目标物品相关联的多个推荐套装,或者可以显示与目标物品相关联的单个推荐套装。可以在终端设备110的控制单元(未示出)的控制下执行在终端设备110的显示单元上显示推荐套装。用户可以通过参考所显示的推荐套装来选择期望浏览或购买的推荐套装中的一件或多件物品。
在下文中,将参考图6详细描述根据本公开的一些实施例的用于确定物品/服装之间的相容性的方法。将省略与用于时尚推荐的上述设备的描述相同的描述。
图6是示意性地示出了根据本公开的一些实施例的用于基于可视(或时尚)元素确定物品/服装之间的相容性的方法的流程图。在一些实施例中,该方法可以通过图2A所示的计算设备200实现。在一些实施例中,图6所示的方法可以对应于时尚推荐应用218的功能的一部分或全部。应特别注意,除非在本公开中另外说明,否则该方法的步骤可以以不同的顺序布置,因此不限于如附图所示的顺序。用于确定物品/服装之间的相容性的方法可以包括以下步骤。
在步骤601处,可视元素确定模块240根据物品的物品图像确定定义物品的时尚风格的可视元素。物品图像是去除背景和非目标物品区域的物品(即,目标物品)的图像。该步骤可以通过基于U-Net的CNN来实现。
在步骤602处,元素描述符生成模块260至少基于可视元素的一部分生成物品的元素描述符。物品的元素描述符可以是物品的广泛的特征表示,并且实质上包含物品的所有描述信息,包括各可视元素的描述信息。尽管未在图6中示出,但是当物品与一个或多个其他物品进行搭配以形成候选套装时,可以基于物品的可视元素来确定定义候选套装的整体时尚风格和整体相容性的特征元素,在这种情况下,物品的元素描述符是基于特征元素(可视元素的一部分)生成的。在另一种情况下,可以基于所有可视元素生成物品的元素描述符。
在步骤603处,相容性确定模块260可以计算元素描述符和与该物品一起形成候选套装的一个或多个其他物品的一个或多个其他元素描述符之间的相容性值。相容性得分是物品/服装之间的相容性的量度。元素描述符之间的相容性得分越高,则元素描述符或物品的相容性越好。通过上述步骤601至603,可以基于可视元素来确定物品/服装之间的相容性。
在下文中,将参考图7更详细地描述根据本公开的一些实施例的用于时尚推荐的方法。
图7是示意性地示出了根据本公开的一些实施例的用于基于可视(或时尚)元素的时尚推荐的方法的流程图。在一些实施例中,该方法可以通过图2A所示的计算设备200实现。在一些实施例中,图7所示的方法可以对应于时尚推荐应用218的功能的一部分或全部。应特别注意,除非在本公开中另外说明,否则该方法的步骤可以以不同的顺序布置,因此不限于如附图所示的顺序。用于基于可视(或时尚)元素的时尚推荐的方法可以包括以下步骤。
在步骤701处,图像数据获取模块220可以从原始图像数据库290获取或接收物品/服装的原始图像。在一些实施例中,物品的原始图像可以包括目标物品区域和非目标物品区域两者。在获取原始图像之后,图像数据获取模块220将原始图像发送到人体解析模块232。
在步骤702处,人体解析模块232在接收到所获取的原始图像时,可以对原始图像执行人体解析,以生成解析图像。具体地,人体解析模块232可以操作用于将原始图像分割为属于身体部位或衣物物品或时尚标记的语义上一致的区域,使得图像中的每个像素被指派语义角色标注。在一些实施例中,人体解析模块232可以基于人体关键点识别,和/或基于时尚关键点/时尚标记识别。解析图像具有与所获取的原始图像的尺寸相同的尺寸,然而,解析图像内的每个分割区域中的所有像素均被指派指示分割区域所属的类别的相同的灰度值。以这种方式,可以在像素侧面定位包括目标物品区域的各分割区域。在一些实施例中,该步骤可以通过DeepLab V3+来实现。在生成解析图像之后,人体解析模块232将解析图像发送到裁剪模块234。
在步骤703处,裁剪模块234在接收到解析图像时,可以对解析图像进行剪裁,以生成包括裁剪的目标物品区域和裁剪的非目标物品区域在内的裁剪的解析图像。在一些实施例中,裁剪模块234可以基于由解析图像中的目标物品区域内的像素的最大X坐标、最大Y坐标、最小X坐标和最小Y坐标定义的有界框来裁剪解析图像。因此,从解析图像中去除大部分非目标物品区域。在对解析图像进行剪裁之后,裁剪模块234将裁剪的解析图像发送到过滤模块236。在一些实施例中,每个原始物品图像都具有标注(例如,物品的名称),并且标注可以用于确定图像中的目标物品。
在步骤704处,过滤模块236在接收到裁剪的解析图像时,从裁剪的解析图像中过滤掉裁剪的非目标物品区域,以生成人体解析掩模。由于裁剪的解析图像仍然包括裁剪的非目标物品区域,因此过滤模块236可以用于将灰度值零重新指派给裁剪的非目标物品区域中的所有像素,以将其去除并且生成人体解析掩模。人体解析掩模仅包括目标物品区域,因此可以在像素侧面上对其进行定位。在生成人体解析掩模之后,过滤模块236将人体解析掩模发送到重叠模块238。
在步骤705处,重叠模块238在接收到人体解析掩模时,将人体解析掩模与原始图像重叠,以生成物品图像。物品图像是去除非目标物品区域(包括背景)的物品(即,目标物品)的图像。在一些实施例中,所生成的物品图像可以被存储在物品图像数据库292中。通过以上步骤702至705,从原始图像中去除了不期望的信息,因此生成了物品图像,这可以帮助减少噪声并且能够更准确地提取时尚元素以用于时尚相容性学习。在生成物品图像之后,重叠模块238将物品图像发送到时尚元素提取模块240。
在步骤706处,时尚元素提取模块242在接收到形成候选套装的物品/服装的集合的物品图像之后,从物品图像中的每一幅物品图像中提取定义相应物品/服装的时尚风格的时尚元素。在一些实施例中,该步骤可以通过基于U-Net的CNN来实现。在一些实施例中,时尚元素可以是向量空间中的具有各种长度的特征向量并且具有相应的置信度。在确定了相应物品图像的时尚元素之后,时尚元素提取模块242将所提取的时尚元素及其置信度(可选的)发送到元素删减模块244。
在步骤707处,元素删减模块244在接收到所提取的时尚元素及其置信度(可选的)时,从所提取的可视元素中删减掉不满足以下条件中的任意条件的可视元素:a)与SIFT/SURF/MSER关键点重叠;以及b)与可视标记重叠,并且保留满足上述条件的可视元素。在对所提取的时尚元素执行了删减并且生成保留的时尚元素之后,元素删减模块244将保留的时尚元素及其置信度(可选的)发送到元素分析器246。
在步骤708处,元素分析器246在接收到保留的时尚元素及其置信度(可选的)时,分析保留的时尚元素,以基于保留的时尚元素确定特征元素。如上所述,当物品/服装与不同的物品/服装进行搭配以形成套装时,物品/服装中的不同时尚元素在定义整体时尚风格以及整体相容性方面可以起不同的作用。因此,元素分析器246用于根据形成候选套装的物品的集合的保留的时尚元素来确定在定义套装的整体时尚风格和整体相容性方面具有更重要的意义的特征元素。该步骤可以通过具有注意力机制的两个ConvLSTM网络实现。在根据保留的时尚元素确定特征元素之后,元素分析器246将特征元素发送到元素描述符生成模块250。
在步骤709处,元素描述符生成模块250在接收到所确定的特征元素时,基于特征元素生成相应物品/服装的元素描述符。物品的元素描述符可以是物品的广泛的特征表示,并且实质上包含物品的所有描述信息,包括各可视元素的描述信息。在生成元素描述符之后,元素描述符生成模块250将元素描述符发送到相容性得分计算模块262。
在步骤710处,相容性得分计算模块262在接收到元素描述符之后,计算形成候选套装的物品的集合的元素描述符之间的相容性值/得分。相容性得分是物品/服装之间的相容性的量度。元素描述符之间的相容性得分越高,则元素描述符或物品的相容性越好。在计算形成候选套装的物品的集合的元素描述符之间的相容性得分之后,相容性得分计算模块262将相容性得分发送到相容性得分比较模块264。在一些实施例中,使用图注意力网络来生成相容性得分。当相容性得分大于阈值时,套装中的物品被视为是相容的;否则,套装中的物品被视为是不相容的。在一些实施例中,时尚专业人员可以提供黑名单(不相容的一对物品/服装)和白名单(相容的一对物品/服装)。当套装中的一对物品被列入在黑名单中时,无需提取时尚元素,并且该套装被视为物品的不良组合,因此不会向客户推荐该套装。
在步骤711处,相容性得分比较模块264在接收到形成候选套装的物品的集合的元素描述符之间的相容性得分时,将相容性得分与相容性阈值进行比较。如果候选套装的相容性得分大于或等于相容性阈值,则确定候选套装可以作为推荐套装,并且处理进行到步骤712。如果候选套装的相容性得分小于相容性阈值,则确定候选套装不可以作为推荐套装,并且处理终止。
在步骤712处,响应于确定候选套装的相容性得分大于或等于相容性阈值,相容性得分比较模块264确定候选套装可以作为推荐套装,并且利用推荐的套装更新推荐数据库296。具体地,将形成套装的物品的所有物品图像组合在一起以生成套装图像,并且将套装图像与套装内的所有物品的相关信息一起发送到推荐数据库296并存储在其中,从而可以从推荐数据库296中检索它们并且根据需要经由用户的终端设备110呈献给用户。
总之,本公开的一些实施例提供了基于可视元素的灵活且鲁棒的物品推荐方案,其被配置为从候选套装内的物品/服装中提取时尚元素,并且基于所提取的时尚元素来学习它们之间的整体相容性。此外,提供了界面,以向用户呈现创建的全部服装以及物品信息,从用户接收输入,和/或从对设备200进行管理的管理员接收指令以执行应用。
应当注意,基于可视元素的时尚推荐系统在其子模块(例如,人体解析模块232和时尚元素提取模块242)方面可以是通用的,它们是可替换的并且可以被升级。此外,该系统还可以被第三方平台用作API服务,以用于时尚相容性学习和时尚推荐。
在本公开的一个示例中,套装由专业人员提供或自动生成,并且该套装包括多件物品。每件物品都有原始图像和该物品的标识或名称。对原始图像执行人体解析,从而将原始图像中的与该物品相对应的一部分确定为物品图像。然后,物品图像用于提取时尚特征。物品中的每一件物品都有其相应的时尚特征,并且时尚特征用于度量物品之间的相容性。在一些实施例中,一件物品的不同时尚特征可以与不同的时尚风格相对应。物品的时尚特征之一可以是对于度量包括该物品的一个套装中的相容性很重要,而同一件物品的另一时尚特征可以是对于度量包括该物品的另一套装中的相容性很重要。在一些实施例中,时尚风格是从时尚特征导出的隐藏特性,并且形成使用时尚特征而不是整件物品进行相容性评估的基础。
在本公开的一些实施例中,该方法和设备可以用在电子商务平台中,其中,当客户回顾或购买一件物品时,该平台提供包括该物品的套装的推荐。在本公开的一些实施例中,该方法和设备可以用在实体商店中,其中,当客户试穿或购买一件物品时,该实体商店例如使用商店中的大屏幕显示设备来提供包括该物品的套装的推荐。
与相关技术相比,本公开具有以下优点等:(1)本公开基于物品的时尚元素而不是物品来提供推荐,因此该推荐更加精确。(2)第一物品与第二物品之间的相容性可以主要基于其时尚元素之一,而第一物品与第三物品之间的相容性可以主要基于其时尚元素中的另一时尚元素。因此,本公开在确定不同物品之间的相容性时提供更大的灵活性。(3)在时尚元素提取中考虑了隐特征,这为物品之间的相容性提供更精确的预测。(4)使用时尚关键点来指导人体解析,这提高了物品分割和相容性预测的精确性。
仅出于说明和描述的目的呈现了本公开的示例性实施例的前述描述,并且所述前述描述不旨在穷举或将本公开限制在所公开的准确形式。在上述教导的启示下可能有许多修改和变形。
选择和描述实施例是为了说明本公开的原理及其实际应用,以使得本领域其他技术人员能够利用本公开和各实施例以及适合于预期的特定用途的各种修改。在不脱离本公开的精神和范围的情况下,备选实施例对于本公开所属领域的技术人员将变得显而易见。因此,本公开的范围由所附权利要求限定,而不是由前述描述和本文描述的示例性实施例限定。
参考文献
1.MCAULEY,et al.,Image-based recommendations on styles andsubstitutes,arXiv:1506.04757v1,June 15,2015.
2.TAUTKUTE,et al.,DeepStyle:Multimodal Search Engine for Fashion andInterior Design,arXiv:1801.03002v2,Feb 20,2019.
3.VEIT,et al.,Learning fashion clothing style with heterogeneousdyadic co-occurrences,arXiv:1509.07473v1,September 24,2015.
4.TAKAGI,et al.,What makes a style:experimental analysis of fashionprediction,Computer Vision Workshop(ICCVW),2017 IEEE International Conferenceon.Computer Vision Workshops,2017.
5.HSIAO,et al.,Learning the latent“look”:Unsupervised discovery of astyle-coherent embedding from fashion images,arXiv:1707.03376v2,August 3,2017.
6.WANG,et al.,Attentive fashion grammar network for fashion landmarkdetection and clothing category classification,Proceedings of the IEEEConference on Computer Vision and Pattern Recognition,2018.
7.NAKAMURA,et al.,Outfit Generation and Style Extraction viaBidirectional LSTM and Autoencoder,arXiv:1807.03133v3,October 23,2018.
8.VASILEVA,et al.,Learning Type-Aware Embeddings for FashionCompatibility,arXiv:1803.09196v2,July 27,2018.
9.HAN,et al.,Automatic spatially-aware fashion concept discovery,arXiv:1708.01311v1,August 3,2017.
10.HSIAO,et al.,Creating capsule wardrobes from fashion images,arXiv:1712.02662v2,April 14,2018.
11.GONG,et al.,Instance-level Human Parsing via Part GroupingNetwork,European Conference on Computer Vision(ECCV Oral),2018.
12.RONNEBERGER,et al.,U-Net:Convolutional Networks for BiomedicalImage Segmentation,arXiv:1505.04597v1,May 18,2015.
13.NEWELL,et al.,Stacked hourglass networks for human poseestimation,arXiv:1603.06937v2,July 26,2016.
14.SHI,et al.,Convolutional LSTM Network:a machine learning approachfor precipitation nowcasting,arXiv:1506.04214v2,September 19,2015.
15.VELICKOVIC,et al,Graph attention networks,arXiv:1710.10903v3,February 4,2018。

Claims (20)

1.一种用于基于可视元素的物品推荐的方法,所述方法包括:
通过一个或多个处理器根据物品的物品图像确定可视元素;
通过所述一个或多个处理器至少基于所述可视元素的一部分生成所述物品的元素描述符;以及
通过所述一个或多个处理器计算所述元素描述符与一个或多个其他物品的一个或多个其他元素描述符之间的相容性值。
2.根据权利要求1所述的方法,还包括:
通过所述一个或多个处理器将所述相容性值与相容性阈值进行比较。
3.根据权利要求2所述的方法,还包括:
通过所述一个或多个处理器响应于所述相容性值大于或等于所述相容性阈值,推荐所述一个或多个其他物品。
4.根据权利要求1所述的方法,还包括:
通过所述一个或多个处理器响应于所述物品与所述一个或多个其他物品进行搭配,分析所确定的可视元素,以根据所确定的可视元素来确定特征元素,
其中,所述特征元素包括所确定的可视元素的全部或一部分。
5.根据权利要求4所述的方法,其中,至少基于所述可视元素的一部分生成所述物品的元素描述符的步骤包括:
通过所述一个或多个处理器基于所述特征元素生成所述元素描述符。
6.根据权利要求4所述的方法,其中,所述特征元素是通过具有注意力机制的两个卷积长期短期记忆ConvLSTM网络确定的。
7.根据权利要求1所述的方法,其中,在根据物品的物品图像确定可视元素的步骤之前,所述方法还包括以下步骤:
通过所述一个或多个处理器获取包括所述物品图像的原始图像;
通过所述一个或多个处理器对所述原始图像执行人体解析以生成解析图像;以及
通过所述一个或多个处理器基于所述原始图像和所述解析图像生成所述物品图像。
8.根据权利要求7所述的方法,其中,基于所述原始图像和所述解析图像生成所述物品图像的步骤包括以下步骤:
通过所述一个或多个处理器对所述解析图像进行裁剪,以生成包括裁剪的物品区域和裁剪的非物品区域的裁剪的解析图像;
通过所述一个或多个处理器从所述裁剪的解析图像中过滤掉所述裁剪的非物品区域,以生成人体解析掩模;以及
通过所述一个或多个处理器将所述人体解析掩模与所述原始图像重叠,以生成所述物品图像。
9.根据权利要求7所述的方法,其中,执行人体解析的步骤包括以下步骤:
通过所述一个或多个处理器执行关于数据集训练的人体解析算法,
其中,所述人体解析算法是可视关键点和/或人体关键点辅助的人体解析算法。
10.根据权利要求1所述的方法,其中,在生成所述物品的所述元素描述符的步骤之前,所述方法还包括:
通过所述一个或多个处理器从所述可视元素中删减不满足以下条件中的任意条件的可视元素:
a)与尺度不变特征变换SIFT/加速鲁棒特征SURF/最大稳定极值区域MSER关键点重叠;以及
b)与可视标记重叠。
11.一种用于基于可视元素的物品推荐的设备,所述设备包括:
处理器;
存储指令的存储器,所述指令在由所述处理器执行时使所述处理器执行以下操作:
根据物品的物品图像确定可视元素;
至少基于所述可视元素的一部分生成所述物品的元素描述符;以及
计算所述元素描述符与一个或多个其他物品的一个或多个其他元素描述符之间的相容性值。
12.根据权利要求11所述的设备,其中,所述指令在由所述处理器执行时还使所述处理器执行以下操作:
将所述相容性值与相容性阈值进行比较。
13.根据权利要求12所述的设备,其中,所述指令在由所述处理器执行时还使所述处理器执行以下操作:
响应于所述相容性值大于或等于所述相容性阈值,推荐所述一个或多个其他物品。
14.根据权利要求11所述的设备,其中,所述指令在由所述处理器执行时还使所述处理器执行以下操作:
响应于所述物品与所述一个或多个其他物品进行搭配,分析所确定的可视元素,以根据所确定的可视元素来确定特征元素,
其中,所述特征元素包括所确定的可视元素的全部或一部分。
15.根据权利要求14所述的设备,其中,所述指令在由所述处理器执行时还使所述处理器执行以下操作:
基于所述特征元素生成所述元素描述符。
16.根据权利要求14所述的设备,其中,所述特征元素是通过具有注意力机制的两个卷积长期短期记忆ConvLSTM网络确定的。
17.根据权利要求11所述的设备,其中,所述指令在由所述处理器执行时还使所述处理器执行以下操作:
获取包括所述物品图像的原始图像;
对所述原始图像执行人体解析以生成解析图像;以及
基于所述原始图像和所述解析图像生成所述物品图像。
18.根据权利要求17所述的设备,其中,所述指令在由所述处理器执行时还使所述处理器执行以下操作:
对所述解析图像进行裁剪,以生成包括裁剪的物品区域和裁剪的非物品区域的裁剪的解析图像;
从所述裁剪的解析图像中过滤掉所述裁剪的非物品区域,以生成人体解析掩模;以及
将所述人体解析掩模与所述原始图像重叠,以生成所述物品图像。
19.根据权利要求11所述的设备,其中,所述指令在由所述处理器执行时还使所述处理器执行以下操作:
从所述可视元素中删减不满足以下条件中的任意条件的可视元素:
a)与尺度不变特征变换SIFT/加速鲁棒特征SURF/最大稳定极值区域MSER关键点重叠;以及
b)与可视标记重叠。
20.一种存储计算机可执行指令的非暂时性计算机可读介质,所述计算机可执行指令在由计算设备的处理器执行时使所述处理器执行以下操作:
根据物品的物品图像确定可视元素;
至少基于所述可视元素的一部分生成所述物品的元素描述符;以及
计算所述元素描述符与一个或多个其他物品的一个或多个其他元素描述符之间的相容性值。
CN202010629151.9A 2019-08-04 2020-07-02 用于基于可视元素的物品推荐的设备及方法 Pending CN112330383A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/531,102 US11475500B2 (en) 2019-08-04 2019-08-04 Device and method for item recommendation based on visual elements
US16/531,102 2019-08-04

Publications (1)

Publication Number Publication Date
CN112330383A true CN112330383A (zh) 2021-02-05

Family

ID=74260226

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010629151.9A Pending CN112330383A (zh) 2019-08-04 2020-07-02 用于基于可视元素的物品推荐的设备及方法

Country Status (2)

Country Link
US (1) US11475500B2 (zh)
CN (1) CN112330383A (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11475500B2 (en) * 2019-08-04 2022-10-18 Beijing Jingdong Shangke Information Technology Co., Ltd. Device and method for item recommendation based on visual elements
US11410449B2 (en) * 2019-10-17 2022-08-09 Inception Institute of Artificial Intelligence, Ltd. Human parsing techniques utilizing neural network architectures
US11715022B2 (en) * 2020-07-01 2023-08-01 International Business Machines Corporation Managing the selection and presentation sequence of visual elements
US11100552B1 (en) * 2020-08-04 2021-08-24 Stylitics, Inc. Automated stylist for curation of style-conforming outfits
CN112307242A (zh) * 2020-11-11 2021-02-02 百度在线网络技术(北京)有限公司 服饰搭配方法及装置、计算设备和介质
US20220188747A1 (en) * 2020-12-16 2022-06-16 International Business Machines Corporation Assortment planning computer algorithm

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8725595B1 (en) * 2004-06-09 2014-05-13 Amazon Technologies, Inc. Method and system for appraising a collection of products
US20150379168A1 (en) * 2014-06-27 2015-12-31 Amazon Technologies, Inc. Techniques for simulating kinesthetic interactions
WO2017203262A2 (en) * 2016-05-25 2017-11-30 Metail Limited Method and system for predicting garment attributes using deep learning
US10109051B1 (en) * 2016-06-29 2018-10-23 A9.Com, Inc. Item recommendation based on feature match
US10614342B1 (en) * 2017-12-11 2020-04-07 Amazon Technologies, Inc. Outfit recommendation using recurrent neural networks
US11188965B2 (en) * 2017-12-29 2021-11-30 Samsung Electronics Co., Ltd. Method and apparatus for recommending customer item based on visual information
US10747807B1 (en) * 2018-09-10 2020-08-18 Amazon Technologies, Inc. Feature-based search
US11475500B2 (en) * 2019-08-04 2022-10-18 Beijing Jingdong Shangke Information Technology Co., Ltd. Device and method for item recommendation based on visual elements

Also Published As

Publication number Publication date
US11475500B2 (en) 2022-10-18
US20210035187A1 (en) 2021-02-04

Similar Documents

Publication Publication Date Title
US10747826B2 (en) Interactive clothes searching in online stores
US11475500B2 (en) Device and method for item recommendation based on visual elements
US11232324B2 (en) Methods and apparatus for recommending collocating dress, electronic devices, and storage media
US9336459B2 (en) Interactive content generation
US11321769B2 (en) System and method for automatically generating three-dimensional virtual garment model using product description
US8898169B2 (en) Automated product attribute selection
TWI559242B (zh) 視覺化服飾檢索
CN108229559B (zh) 服饰检测方法、装置、电子设备、程序和介质
US20200342320A1 (en) Non-binary gender filter
Huang et al. Clothing landmark detection using deep networks with prior of key point associations
KR102580009B1 (ko) 의류 피팅 시스템 및 의류 피팅 시스템의 동작 방법
CN112905889A (zh) 服饰搜索方法及装置、电子设备和介质
CN111767420A (zh) 一种生成服饰搭配数据的方法和装置
Shimizu et al. Fashion intelligence system: An outfit interpretation utilizing images and rich abstract tags
US11972466B2 (en) Computer storage media, method, and system for exploring and recommending matching products across categories
JP2024045510A (ja) 情報処理装置、情報処理方法、およびプログラム
CN108764232B (zh) 标签位置获取方法及装置
US20210117987A1 (en) Fraud estimation system, fraud estimation method and program
Gustavsson et al. Cloth manipulation based on category classification and landmark detection
TWI728787B (zh) 商品樣式辨識與推薦系統
JP7457738B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
CN112667839A (zh) 数据的处理方法、检索方法、装置及设备
CN117057864A (zh) 用于服饰商品在线推荐的方法及计算设备
CN112270275A (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