Print

发布时间: 2019-02-16
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.180361
2019 | Volume 24 | Number 2




    图像处理和编码    




  <<上一篇 




  下一篇>> 





结合深度多标签解析的哈希服装检索
expand article info 原尉峰1,2, 郭佳明1,2, 苏卓1,2, 罗笑南3, 周凡1,2
1. 中山大学数据科学与计算机学院, 广州 510006;
2. 中山大学国家数字家庭工程技术研究中心, 广州 510006;
3. 桂林电子科技大学计算机与信息安全学院, 桂林 541004

摘要

目的 服装检索对于在线服装的推广和销售有着重要的作用。而目前的服装检索算法无法准确地检索出非文本描述的服装。特别是对于跨场景的多标签服装图片,服装检索算法的准确率还有待提升。本文针对跨场景多标签服装图片的差异性较大以及卷积神经网络输出特征维度过高的问题,提出了深度多标签解析和哈希的服装检索算法。方法 该方法首先在FCN(fully convolutional network)的基础上加入条件随机场,对FCN的结果进行后处理,搭建了FCN粗分割加CRFs(conditional random fields)精分割的端到端的网络结构,实现了像素级别的语义识别。其次,针对跨场景服装检索的特点,我们调整了CCP(Clothing Co-Parsing)数据集,并构建了Consumer-to-Shop数据集。针对检索过程中容易出现的语义漂移现象,使用多任务学习网络分别训练了衣物分类模型和衣物相似度模型。结果 我们首先在Consumer-to-Shop数据集上进行了服装解析的对比实验,实验结果表明在添加了CRFs作为后处理之后,服装解析的效果有了明显提升。然后与3种主流检索算法进行了对比,结果显示,本文方法在使用哈希特征的条件下,也可以取得较好的检索效果。在top-5正确率上比WTBI(where to buy it)高出1.31%,比DARN(dual attribute-aware ranking network)高出0.21%。结论 针对服装检索的跨场景效果差、检索效率低的问题,本文提出了一种基于像素级别语义分割和哈希编码的快速多目标服装检索方法。与其他检索方法相比,本文在多目标、多标签服装检索场景有一定的优势,并且在保持了一定检索效果的前提下,有效地降低了存储空间,提高了检索效率。

关键词

服装检索; 全卷积网络; 哈希映射; 多标签解析; 多任务学习

Clothing retrieval by deep multi-label parsing and Hashing
expand article info Yuan Weifeng1,2, Guo Jiaming1,2, Su Zhuo1,2, Luo Xiaonan3, Zhou Fan1,2
1. School of Data and Computer Science, Sun Yat-sen University, Guangzhou 510006, China;
2. National Engineering Research Center of Digital Life, Sun Yat-sen University, Guangzhou 510006, China;
3. School of Computer Science and Information Security, Guilin University of Electronic Technology, Guilin 541004, China
Supported by: National Natural Science Foundation of China (61502541, 61872394)

Abstract

Objective Clothing retrieval is a technology that combines clothing inspection, clothing classification, and feature learning, which plays an important role in clothing promotion and sales. Current clothing retrieval algorithms are mainly based on deep neural network. These algorithms initially learn the high-dimensional features of a clothing image through the network and compare the high-dimensional features between different images to determine clothing similarity. These clothing retrieval algorithms usually possess a semantic gap problem. They cannot connect the clothing features with semantic information, such as color, texture, and style, which results in their insufficient interpretability. Therefore, these algorithms cannot adapt another domain and usually fail in retrieving several clothing with new styles. The accuracy of clothing retrieval algorithm should be improved, especially for cross-domain multilabel clothing image. This study proposes a new cloth retrieval pipeline with deep multilabel parsing and hashing to increase the cross-domain clothing retrieval accuracy and reduce the high-dimensional output features of the deep neural network. Method On the basis of the semantic expression of street shot photos, we introduce and improve a fully convolutional network (FCN) structure to parse clothing in pixel level. To overcome the fragment label and noise problem, we employ conditional random fields (CRFs) to the FCN as a post process. In addition, a new image retrieval algorithm based on multi-task learning and Hashing is proposed to solve the semantic gap problem and dimension disaster in clothing retrieval. On the basis of extracted image features, a Hashing algorithm is used to map the high-dimensional feature vectors to low-dimensional Hamming space while maintaining their similarities. Hence, the dimension disaster problem in the clothing retrieval algorithm can be solved, and a real-time performance can be achieved. Moreover, we reorganize the Consumer-to-Shop database based on cross-scene clothing retrieval. The database is organized in accordance with shops and consumers' photos to ensure that the clothes under the same ID are similar. We also propose a clothing classification model and integrate this model on a traditional clothing similarity model to overcome the semantic drift problem. In summary, the proposed clothing retrieval model can be divided into two parts. The first part is a semantic segmentation network for street shot photos, which is used to identify the specific clothing target in the image. The second part is a Hashing model based on the multi-task network, which can map the high-dimensional network features to the low-latitude hash space. Result We modify the Clothing Co-Parsing dataset and establish the Consumer-to-Shop dataset. We conduct a clothing parsing experiment for the modified dataset. We find that the FCN might drop the detailed features of an image. The segmentation results show blurred edges and color blocking effect after several up-sampling operations. To overcome these limitations, CRFs are used in the method for subsequent correction. The experimental results show that many areas are recognized as correct labels, and fine color blocks are replaced by smooth segmentation results after the addition of CRFs as post-processing, which are easily recognized by human intuition. Then, we compare our method with three mainstream retrieval algorithms, and the results show that our method can achieve top-level accuracy with the usage of hash features. The top-5 accuracy is 1.31% higher than that of WTBI and 0.21% higher than that of DARN. Conclusion We propose a deep multilabel parsing and hashing retrieval network to increase the efficiency and accuracy of clothing retrieval algorithm. For the clothing parsing task, the modified FCN-CRFs model shows the best subjective visual effects among other methods and achieves a superior time performance. For the clothing retrieval task, an approximate nearest neighbor search technique is employed and a hashing algorithm is used to simplify high-dimensional features. At the same time, the clothing classification and clothing similarity models are trained by using a multi-task learning network to solve the semantic drift phenomena during retrieval. In comparison with other clothing retrieval methods, our method shows several advantages in multi-label clothing retrieval scenarios. Our method achieves the highest score in top-10 accuracy, effectively reduces storage space, and improves retrieval efficiency.

Key words

clothes retrieval; FCN; Hashing; multi-label parsing; multi-task learning

0 引言

服装检索是一门综合了服装检测、服装分类以及特征学习的技术[1]。服装检索技术的发展主要经历了两个阶段:早期基于文字的传统图像检索和通过深度学习基于图像内容的服装检索[2],这两种服装检索方法适用于不同的应用场景。首先,早期用户主要通过输入关键字来描述图像,本质上是通过文字来搜索。该方式比较适用于易于描述的服装,例如一些知名服装品牌。然而在现实场景当中,很多服装难以用文字进行表达,此时则需要通过“以图搜图”的方式,进行服装检索,即基于图像内容的服装检索。基于图像内容的服装检索一般流程是先学习图像的底层特征[3],然后在相应的特征空间中比较查询图像和数据库中图像的相似性,按照相似性从大到小来排序,最后返回最终的检索结果[4]。但是服装图像不同于其他风景图像,服装本身的属性比较复杂,存在颜色、纹理、款式等众多特征[5],近年来的研究工作主要围绕怎样准确地提取这些服装图像的底层特征来进行。基于语义的图像检索[6]是由基于图像内容的服装检索发展而来,该方法主要是通过提取图像的语义特征来实现检索。该技术很好地解决了基于图像内容的服装检索所面临的语义鸿沟的难题。

本文主要关注跨场景[6]的服装检索,即提供真实世界的衣服照片,算法能够在网上商店找到与这张图像中的服装目标区域(如上衣、下衣、鞋子等)相似的服装商品。该问题面临3个巨大的挑战:1)街拍图像和网店中的服装图像存在巨大差异[7];2)如何识别一幅图像中的特定部分,识别生成多个标签[8];3)一般的神经网络[9]虽然能很好地表示图像的特征,但是输出的特征向量的维度很高,不仅存储空间大,而且检索速度慢,所以这些特征向量不适合作为检索的依据。本文针对以上3个问题,提出深度多标签解析和哈希的服装检索方法,如图 1所示,首先利用FCN-CRFs (fully convolutional network-conditional random fields)像素级别的语义识别技术,将服装主体从整幅图像中分离出来。然后,采用深度哈希方法,在保持特征之间相似性的同时,对得到的高维度特征进行哈希映射,把之前学习到的高维度特征映射到低维度空间,同时,针对检索过程中容易出现的语义漂移现象,分别使用多任务学习网络训练了衣物分类模型和衣物相似度模型。本文的主要贡献包括:

图 1 结合深度多标签解析的哈希服装检索方法流程图
Fig. 1 The flowchart of clothing retrieval method by deep multi-label parsing and Hashing

1) 针对服装数据集设计并实现了FCN网络[9],搭建了FCN粗分割加CRFs[10-11]精分割的端到端的网络结构,实现了像素级别的语义识别。

2) 针对检索过程中容易出现的语义漂移现象[12],加入了服装属性信息[13],并使用多任务学习网络[14]训练了衣物相似度模型。

3) 针对跨场景服装检索的特点,构建了新的数据库:Consumer-to-Shop数据集,该数据集是在Clothing Co-Parsing(CCP)[7]数据集的基础之上,按照Shop和Consumer组织,保证相同标签的衣物是相似的。

1 相关工作

在计算机视觉领域,基于图像的服装研究主要包括服装建模和服装识别两方面,在建模和识别的基础上,Yamaguchi等人[5]第1次提出了服装解析,随后,一些学者根据不同的输入,提出了新的服装解析方法。这些技术为以后的服装检索和服装推荐等应用打下了坚实的基础。其中在服装检索方面,Street-to-Shop[5]第1次系统地描述了服装检索系统。

早期比较传统的服装特征提取主要是通过人工设计的特征算子[15-16],主要包括全局特征和局部特征两大类,其中全局特征又包括颜色、形状和纹理等。随着深度学习的发展,出现了大量基于学习的服装图像研究。

基于深度学习的方法主要有:Yamaguchi等人[17]在检索服装款式的同时,综合了全局解析、近邻域解析和传输解析来协助服装解析,得到最终解析结果,该方法在考虑人体姿态的同时,利用预先训练的服装全局模型和局部模型来训练网络。该网络能够准确地解析出服装,但相比于Yang等人[16]的方法,过程相当繁琐。Cychnerski等人[18]使用深度神经网络来学习衣物特征,在衣物类型、属性分类上获得了不错的准确率。Lin等人[19]通过在目标数据集上微调预训练好的模型来获得类哈希的服装特征表示。

为了解决跨场景的问题,Chen等人[13]提出了一个双分支的网络DDAN(deep domain adaptation network),通过分配两个分支到两个不同的场景,然后通过两个跨场景连接层来解决跨场景特征学习的问题。在DDAN的基础上,Huang等人[20]进行了改进,提出了DARN(dual attribute-aware ranking network)。最近,Liu等人[21]提出一个DeepFashion网络,主要目的是学习得到更具区分性的特征,因此提出了一个联合预测衣服的关键点和属性的网络。该网络使用了4种损失函数,分别为:1)关键点可见性损失;2)服装类别损失;3)关键点定位损失;4)衡量服装相似性的三元组损失。另外,为了提高方法的效果,该工作还提出了一个包含80万幅服装图像的衣服数据库。该数据库包含作者精心组织的50个细粒度类别和1 000个服装属性,并且还手动提供了每件衣服的关键点和跨场景衣服之间的匹配关系。总体来说,加入了手动标注的局部特征,提高了特征的表达能力,但是需要大量的人工标注,而且扩展性也极差。

以上基于深度学习的方法最终输出的都是图像级别的特征[22-23],也就是针对一幅输入图像输出一个特征向量表示。而对于复杂背景下特定位置的服装识别表现极差。而且服装图像的很多细节信息也无法通过图像级别的特征表示出来。因此,希望能学习到图像的像素级别的语义特征[24],也就是语义级别的图像分割(semantic segmentation)[25],例如使用全卷积网络[9]

2 多标签解析与哈希检索模型

本文针对街拍服装数据的特点,引用并且改进了FCN网络的网络结构,提出了一种新的FCN网络结构,最终实现了像素级别的语义识别。后期根据FCN粗分割结果的不足,在其基础上加入条件随机场,实现了FCN粗分割加CRFs精分割的端到端的网络结构。另外,为了解决服装检索中出现的语义鸿沟和维数灾难等问题,提出了一种基于多任务学习和哈希[26]的图像检索算法。在提取的图像特征基础上,利用哈希算法[27],将高维度的特征向量在保持相似性的同时,映射到低维度的汉明空间。这样做就可以解决图像检索问题中出现的维数灾难等问题,提高检索的实时性[28]。并且,针对跨场景服装检索的特点,根据CCP[7]数据集重新组织了Consumer-to-Shop数据库。该数据库按照Shop和Consumer组织,保证了相同的ID下的衣物是相似的。在上述工作的基础上,针对检索过程中容易出现的语义漂移现象,分别使用多任务学习网络训练了衣物分类模型和衣物相似度模型。

本文的服装检索模型可以分成两个部分:第1部分是对服装图像进行像素级别的语义识别网络,用来识别图像中特定部位的衣物目标;第2部分是基于多任务网络的哈希算法模型,在保持相似性的同时,利用哈希算法将高维度的特征映射到低纬度的空间去。接下来将依次介绍每个部分网络的组成。

2.1 特征提取

本文提出一种基于全卷积网络和条件随机场的多目标服装检索方法,来解决复杂背景下多目标服装检索的问题。首先,该网络可以接受任意尺寸的服装图像作为输入,网络的输出是该图像的特征表示。然后输入查询的服装图像,通过本节设计的全卷积网络,得到目标图像的特征表示。为了适应服装数据集的特点,提高网络的鲁棒性,对数据库中图像进行多尺度比例变换,然后作为网络的输入,网络最终得到一幅图像的多个特征。

该方法利用全卷积网络对服装图像特征表示并且用于目标检索,全卷积网络net1如图 2所示,网络结构分为两个部分:1)5层卷积层和池化层实现特征提取,为了使得提取到的特征更加全局化和抽象化,在传统FCN网络结构的基础上,每层多加了一个卷积操作;2)采用了多层特征反卷积融合的方法,并将不同层的特征融合到一起进行最终的语义分割。采用这种多层模型融合的思想,可以保持更好的特征稳定性。最后,对反卷积产生的结果进行切分和相加得到最终的反卷积结果。

图 2 全卷积网络net1结构
Fig. 2 The network structure of the net1(FCN)

相比于传统的基于CNN的图像分割的方法,基于FCN的方法有两大明显的优点:一是不受输入图像大小的限制,网络可以接受任意大小的输入;二是全卷积网络避免了使用像素块带来的重复存储和计算卷积的问题。同时这种方法的缺点也比较明显:一是得到的结果还是不够精细,上采样导致对图像中细节不够敏感,最后输出的结果比较模糊;二是缺乏空间一致性,在进行像素级别分类的时候,当前的方法忽略了在通常的基于像素分类的分割方法中使用的空间规整步骤,并没有充分考虑像素与像素之间的关系,为了克服这两个缺点,使用CRFs进行后续的精细校正,也就是FCN-CRFs模型。

2.2 FCN-CRFs模型

为了解决FCN运用到图像语义分割的时候面临的问题,在2.1节的基础上,对其语义分割结果进行修正:一方面,减少感受野和下采样比例; 另一方面,在FCN分割的基础上加入条件随机场进行精细化分割。

具体来说,对于一幅图像,构建图$\boldsymbol{G}$=($\boldsymbol{V}$, $\boldsymbol{E}$),图中每个顶点对应一个像素点的标签,即$\boldsymbol{V}$={${X_1}$, ${X_2}$, …, ${X_i}$, …, ${X_N}$},其中$N$代表图像像素个数。每一条边则表示两个像素点之间的联系,即$\mathit{\boldsymbol{E}} = \{ {e_{i, j}}|i \in \left\{ {1, \ldots, N} \right\}, j \in \left\{ {1, \ldots, N} \right\}\} $,其中${e_{i, j}}$为像素点$i$$j$间的权重,两点间关联性越大则权重越大。记全局观测变量为$\boldsymbol{I}$(街拍图像)。其中,$i$表示第$i$个像素点,${X_i}$是该像素点具有的类别标签。这样以每个像素点作为节点,两个像素之间的关系作为图的边,即构成了一个条件随机场

$ P\left( {\mathit{\boldsymbol{X}}|\mathit{\boldsymbol{I}}} \right) = \frac{1}{{Z\left( \mathit{\boldsymbol{I}} \right)}}\exp \left( { - E\left( {\mathit{\boldsymbol{X}}|\mathit{\boldsymbol{I}}} \right)} \right) $ (1)

式中,${E\left({\mathit{\boldsymbol{X}}|\mathit{\boldsymbol{I}}} \right)}$是能量函数,${Z\left(\mathit{\boldsymbol{I}} \right)}$是归一化项。$\boldsymbol{I}$是全局观测变量,为了简便,可省略全局观测$\boldsymbol{I}$,所以目标函数可以表示为

$ E\left( \mathit{\boldsymbol{X}} \right) = \sum\limits_i {{\mathit{\Psi }_u}({X_i})} + \sum\limits_{i < j} {{\mathit{\Psi }_p}\left( {{X_i},{X_j}} \right)} $ (2)

式中,目标函数的第1项为一元势函数,该项主要用于衡量一个像素点属于特定类别标签的概率。具体来说,一元势函数表示像素点属于某一类别标签的概率。在本节中,这一项来自于2.1节FCN网络的输出。

式(2)目标函数的第2项为二元势函数,用于衡量两个事件同时发生的概率$p$(${X_i}$, ${X_j}$),即如果两个像素点的颜色值相似,那么这两个像素点属于同一个类别的概率比较大;反之,这两个像素点属于不同类别的概率比较大,因此分割的结果应该从这两个像素点之间裂开。通过这个能量项,便可以弥补FCN分割的不足,可以让分割结果尽可能从图像边缘处裂开。计算公式为

$ \begin{array}{c} {\mathit{\Psi }_p}({X_i},{X_j}){\rm{ }} = \\ u({X_i},{X_j})\sum\limits_{m = 1}^M {({\omega ^{(m)}}k_{\rm{G}}^{(m)}({\mathit{\boldsymbol{f}}_i},{\mathit{\boldsymbol{f}}_j}))} \end{array} $ (3)

式中,$u$(${X_i}$, ${X_j}$)表示两个像素之间的兼容性度量参数,需要根据样本学习出具体值,其本质上是两个像素之间的相互影响力因子。高斯核${k_{\rm{G}}^{(m)}}$主要用于度量像素点$i$和像素点$j$的特征向量之间的相似度,而${{\omega ^{(m)}}}$则是每个高斯核的权重。用每个像素点的像素值和坐标作为5维向量($x$, $y$, $R$, $G$, $B$)来表示特征向量${{\mathit{\boldsymbol{f}}_i}}$。本节通过最小化能量函数,期望图片尽量在边缘处分割,同时也期望能保证相似像素之间的平滑性和连续性。

2.3 多任务哈希网络

一般的哈希模型[28]都是基于单任务学习的,但是由于服装图像不同于其他一般图像,服装属性种类繁多,比如相同一件衣服,分别有圆领V领、有袖无袖等款式,也就是说单任务模型学习出来的特征相似的两件衣服,可能是两个完全不同的款式。根据实验分析,本节采用多任务哈希模型,除了对两个服装图像的特征进行相似性预测(衣物相似度模型),还基于图像属性,对类别信息进行预测(衣物分类模型)。这样就可以保证不会出现语义漂移现象。网络结构如图 1所示,使用的损失函数为

$ \begin{array}{c} L = \sum\limits_{i = 1}^N {(\frac{1}{2}(1 - {y_i})} {\left\| {|{\mathit{\boldsymbol{H}}_{i,1}} - {\mathit{\boldsymbol{H}}_{i,2}}} \right\|^2} + \\ \frac{1}{2}{y_i}\max(m - {\left\| {|{\mathit{\boldsymbol{H}}_{i,1}} - {\mathit{\boldsymbol{H}}_{i,2}}} \right\|^2},0) + \\ \alpha ({\rm{ }}{\left\| {|{\mathit{\boldsymbol{H}}_{i,1}}| - 1} \right\|_1} + {\left\| {|{\mathit{\boldsymbol{H}}_{i,2}}| - 1} \right\|_1})) \end{array} $ (4)

式中,${\mathit{\boldsymbol{H}}_i}$表示第$i$组样例的哈希特征,一组样例包含两幅图像,它们的哈希特征即为${{\mathit{\boldsymbol{H}}_{i, 1}}}$${{\mathit{\boldsymbol{H}}_{i, 2}}}$${y_i}$则表示这一组图像是否相似,相似为1,否则为0。该损失函数的目标就是将$\mathit{\boldsymbol{ \boldsymbol{\varOmega} }}$映射成一个$k$位的二值表达式:$F:\mathit{\boldsymbol{ \boldsymbol{\varOmega} }} \to {\left\{ { - 1, 1} \right\}^k}$。保证相似的图像由相似的二值表示,不同的图片由不同的二值表示。其中$\mathit{\boldsymbol{ \boldsymbol{\varOmega} }}$为高维度特征空间。例如:${\mathit{\boldsymbol{I}}_1}, {\mathit{\boldsymbol{I}}_2} \in \mathit{\boldsymbol{ \boldsymbol{\varOmega} }}$${\mathit{\boldsymbol{H}}_1}, {\mathit{\boldsymbol{H}}_2} \in {\left\{ { - 1, 1} \right\}^k}$。损失函数中加了一项正则项对输出结果进行惩罚,确保输出值分布在一个连续的(-1, 1)区间中。而不是传统的阈值函数sgn ($\boldsymbol{H}$)或sigmoid函数。这将有效改善在训练中梯度消失的现象。

2.4 训练网络

训练时使用了传统的FCN模型作为网络的初始化参数,新模型是在此模型的基础上微调(fine-tuning)的结果。对数据集按照8:2的比例进行随机切分,并结合整理的标签信息,制作成为lmdb格式的数据集。首先使用衣物相似度模型进行服装检索,并在每10次迭代之后就对网络进行测试。随后,引入服装属性值进行约束,属性值指衣物的长度、风格等。引入17个属性作为17个次要的分类任务,形成衣物分类模型,并与衣物相似度模型一起,形成了多任务学习问题。把解决这个问题的网络命名为catt_net。该网络次要任务的损失函数的权重为$\partial $=0.05(采用0.05的原因是总共17个子任务,而子任务的损失函数值之和不宜超过主任务),即

$ L = {L_{{\rm{category}}}} + \partial \sum\limits_i^A {{L_i}} $ (5)

式中,${L_{{\rm{category}}}}$表示衣物相似度模型的损失,${L_i}$表示分类任务损失,$A$表示属性的数量,此处为17。采用学习率(LR)为1E-6,动量为0.9,训练的batch_size取64,总共进行10 000次迭代,每过500代进行测试。

3 实验过程和结果

本节详细地介绍本文实验数据的获取、具体参数的确定以及模型的训练方式。最后定量地分析本文提出的方法和其他代表性检索方法。

3.1 数据集

主要参考Yang等人[16]提出的CCP数据集,原数据集只有1 004张图片具有像素级的标注,训练样本偏少,但是标签偏多,共有59种服饰,经过合并(如shirt和blouse等统称为上衣类)和调整(太少的样本记为背景,如watch),最后定为13类,其中不属于服饰但是也较为重要的类别有3个,分别是null(背景)、hair(头发)和skin(皮肤)。为了适应多任务哈希模型,可对上述数据集进行调整:记录每张街拍图片中衣物的边界框,通过对其裁切,组成Consumer-to-Shop数据库。该数据库按照Shop和Consumer组织,保证相同的标签ID下的衣物是相似的。故在组织图像对和标签时,ID相同则标签为0,ID不同且类别不同则标签为1。

3.2 实验结果与分析

网络结构采用FCN网络训练。网络结构分别采用net1和net2。相比于net1,net2的改变是在每一层max-pooling层之后加入dropout层。这里尝试用dropout带来的模型集成思想,使得提取的特征更加稳定。量化结果如表 1表 2所示。

表 1 net1在不同学习率下的变化
Table 1 The performances of net1 under different learning rates

下载CSV
/%
LR 总体准确率 平均准确率 平均IU
1E-5 80.011 14.028 9.488
1E-6 93.191 59.697 49.954
1E-7 90.317 47.886 40.065
1E-8 88.299 45.292 37.696
1E-9 87.041 40.628 33.300
注:加粗字体为最优结果, IU为Intersection over Union。

表 2 net2在不同学习率下的变化
Table 2 The performances of net2 under different learning rates

下载CSV
/%
LR 总体准确率 平均准确率 平均IU
1E-5 80.176 14.099 9.641
1E-6 92.693 57.871 46.838
1E-7 90.096 51.792 39.627
1E-8 87.358 46.145 35.225
1E-9 86.978 41.082 31.524
注:加粗字体为最优结果,IU为Intersection over Union。

为了进一步直观地展示结果,图 3展示了在学习率为1E-6的情况下的样例可视化结果。可以看到FCN存在明显缺点,即对图像中的细节不够敏感。主要原因是每个卷积层使用的卷积核的感受野比较大,经过了多次上采样操作后,会导致分割结果出现边缘模糊和色块效应。另外,由于对最后的分割结果没有进行平滑处理,容易出现细小的杂散区域。为了克服这两个缺点,本文方法中使用了CRFs进行后续校正,也就是FCN-CRFs模型,即在net1结构后加上CRFs层。量化结果如表 3所示。

图 3 模型可视化结果示意图
Fig. 3 Visualization results of net1, net2 and FCN-CRFs((a)original images; (b) annotations; (c) net1;(d) net2;(e) FCN-CRFs)

表 3 FCN-CRFs模型在不同学习率下的变化
Table 3 FCN-CRFs' performances in different learning rates

下载CSV
/%
LR 总体准确率 平均准确率 平均IU
1E-6 92.232 60.197 49.954
1E-7 93.022 61.804 47.486
1E-8 92.960 61.282 47.227
注:加粗字体为最优结果,IU为Intersection over Union。

首先使用衣物相似度模型进行服装检索,即单纯使用分割出的物件图像以及商店图像作为输入训练网络,并在每10次迭代之后就对网络进行测试。最后,该网络测试的精确度和损失函数变化曲线如图 4所示,最终达到90%的准确率。

图 4 预训练网络的精确度和损失函数变化曲线
Fig. 4 Pre-training network accuracy and loss function curves

但是曲线出现明显的震荡现象,体现了过拟合之后网络缺乏鲁棒性。为了克服此缺点,引入属性值进行约束,属性值指衣物的长度、风格等,共有18类303种。通过分析,其中第6类属性包含如日韩、学院等风格的标签并非单标签学习问题(一个衣物可以同时是日韩风格和学院风格),因此把这个属性排除在外。其他17类属性的取值都是单一的。另外一个关于属性需要特殊处理的细节在于,某些类别的衣物可能不具备某些属性(如上衣不具备裤长类属性),因此对于每个属性取值,需要留一个空属性值。经过上述两点考虑之后,就可以将17个属性作为17个次要的分类任务,与类别分类一起,形成了多任务学习问题。训练和测试过程的损失函数值如图 5所示。

图 5 网络catt_net的损失函数变化曲线
Fig. 5 The loss function of catt_net

测试阶段的类别和属性正确率如图 6所示,其中属性的准确率上升缓慢,部分属性(如细节)的预测非常困难。在catt1_net基础上,考虑另外一个改进catt2_net。该网络采取相同的训练参数,得到训练和测试的损失函数值如图 7所示。因为某些属性只有特定的衣物类别才拥有,预测类别和fc7的特征可以一起作为属性值预测的输入,进一步改进网络结构。从而在反向传播时加强对类别的监督。

图 6 测试阶段类别和属性准确率
Fig. 6 Accuracy rate of test stage
图 7 网络catt2_net损失函数变化曲线
Fig. 7 Loss function of catt2_net

在原始数据的文件夹命名上可以看到,上衣、下衣和全身可以进一步细分为多种衣物类别,如连衣裙、牛仔裤等。虽然仔细查看这些数据,可以看到其中不乏噪声的存在,但是大部分还是可以利用的。因此可以将其作为分类的一个子任务,同时在预测属性的时候,也应该考虑这种精细化标签。网络和上面采取相同的训练参数,得到训练和测试过程的损失函数值如图 8图 9所示。本文的哈希网络catt_net、catt2_net和catt3_net的具体性能比较如表 4所示,由此可见,catt3_net略胜一筹。

图 8 网络catt3_net损失函数变化曲线
Fig. 8 Loss function of catt3_net
图 9 网络catt3_net测试阶段类别和属性准确率
Fig. 9 Test category and attribute accuracy of catt3_net

表 4 本文使用的Hashing网络的测试准确率比较
Table 4 The performance of our Hashing network

下载CSV
/%
属性 catt_net catt2_net catt3_net
总类别 80.548 81.45 81.946
衣长 43.104 43.17 43.362
裤型 44.468 44.588 45.154
细节 19.322 19.508 20.16
衣门襟 82.07 82.07 82.602
裤长 76.822 76.854 78.28
风格 41.644 41.714 42.484
材质 72.97 72.988 73.578
腰型 39.802 39.802 39.84
元素 37.362 37.348 37.132
图案 89.72 89.72 89.798
裙长 65.274 65.274 65.428
袖型 57.022 56.972 57.582
袖长 49.724 49.928 50.536
版型 64.468 64.416 64.008
领型 90.792 90.792 90.828
裙型 63.034 63.476 65.436
厚薄 67.33 67.02 67.39
精细属性 - - 49.118
注:加粗字体为最优结果,“-”表示未检测出结果。

最后,本文对比了一些代表性工作的实验结果,如表 5所示。注意到,DeepFashion[21]采用了衣服的landmark,即标志点的训练和局部特征作为检索,所以效果更好,本文只采用了粗糙的全局特征,受到拍照姿势、光照等的影响仍然严重。但是相比于DeepFashion之前的其他基准方法,本文的模型还是可用的。

表 5 检索top-$n$准确率对比
Table 5 Retrieval comparison on top-$n$ accuracy

下载CSV
/%
方法 top-1 top-5 top-10 top-20 top-50 top-100
hashnet_binary 2.72 5.13 6.57 6.47 11.56 14.76
simnet_binary 2.92 5.59 7.69 7.59 16.31 21.88
DeepFashion 7.7 5 12.10 15.04 18.05 22.30 -
WTBI 3.23 4.26 4.93 6.30 8.93 -
DARN 3.94 5.38 7.63 11.10 15.02 -
注:加粗字体为最优结果,斜体为次优结果,加下划线为第三优结果,“-”表示未检测出结果。

4 结论

本文主要针对基于街拍的多标签服装检索方法进行深入的研究,通过分析和总结近年来提出的图像分割方法和哈希方法,提出了一种基于像素级别语义分割和哈希编码的快速多目标服装检索方法。通过和其他经典方法对比,本文在多目标、多标签服装检索场景有一定的优势,top-10的准确率最高,而且有效地降低了存储空间,提高了检索效率。具体来说:首先,在FCN的基础上加入条件随机场,对分割结果进行后处理,实现了FCN粗分割加CRFs精分割的端到端的网络结构。在实验效果上,本文方法在主观视觉效果上相较于其他方法来说具有较好的效果,另外在时间性能上,本文方法都优于所比对的方法。为了解决检索时间长、存储空间大的问题,引入了近似最近邻搜索技术,使用哈希算法对高维度的特征进行降维。同时,针对检索过程中容易出现的语义漂移现象,分别使用多任务学习网络训练了衣物分类模型和衣物相似度模型。

在本文的工作中,提出的深度多标签解析与哈希的服装检索方法还有很多地方值得深入研究,包括:1)本文方法对于鞋帽、皮包、首饰等小型服装配件,不能很好地完成检索功能;2)当前的分割数据集以及本文制作的Consumer-to-Shop数据集在数据量上较少,深度学习的算法在此数据集上的潜力还不能完全发挥出来。

因此,如何提升小物件的解析和检索正确率,以及扩增数据集,是下一步研究的重点。

参考文献

  • [1] Liu S, Liu L Q, Yan S C. Fashion analysis:current techniques and future directions[J]. IEEE MultiMedia, 2014, 21(2): 72–79. [DOI:10.1109/MMUL.2014.25]
  • [2] Chen H, Xu Z J, Liu Z Q, et al. Composite templates for cloth modeling and sketching[C]//Proceedings of 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. New York, NY, USA: IEEE, 2006: 943-950.[DOI:10.1109/CVPR.2006.81]
  • [3] Yang M, Yu K. Real-time clothing recognition in surveillance videos[C]//Proceedings of 20111 8th IEEE International Conference on Image Processing. Brussels, Belgium: IEEE, 2011: 2937-2940.[DOI:10.1109/ICIP.2011.6116276]
  • [4] Li Z M, Li Y T, Liu Y J, et al. Clothing retrieval combining hierarchical over-segmentation and cross-domain dictionary learning[J]. Journal of Image and Graphics, 2017, 22(3): 358–365. [李宗明, 李妍特, 刘玉杰, 等. 结合层次分割和跨域字典学习的服装检索[J]. 中国图象图形学报, 2017, 22(3): 358–365. ] [DOI:10.11834/jig.20170310]
  • [5] Yamaguchi K, Kiapour M H, Ortiz L E, et al. Parsing clothing in fashion photographs[C]//Proceedings of 2012 IEEE Conference on Computer Vision and Pattern Recognition. Providence, RI, USA: IEEE, 2012: 3570-3577.[DOI:10.1109/CVPR.2012.6248101]
  • [6] Liu S, Song Z, Liu G C, et al. Street-to-shop: Cross-scenario clothing retrieval via parts alignment and auxiliary set[C]//Proceedings of 2012 IEEE Conference on Computer Vision and Pattern Recognition. Providence, RI, USA: IEEE, 2012: 3330-3337.[DOI:10.1109/CVPR.2012.6248071]
  • [7] Liang X D, Lin L, Yang W, et al. Clothes co-parsing via joint image segmentation and labeling with application to clothing retrieval[J]. IEEE Transactions on Multimedia, 2016, 18(6): 1175–1186. [DOI:10.1109/TMM.2016.2542983]
  • [8] Long J, Shelhamer E, Darrell T. Fully convolutional networks for semantic segmentation[C]//Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston, MA, USA: IEEE, 2015: 3431-3440.[DOI:10.1109/CVPR.2015.7298965]
  • [9] Chen F, Lv S H, Li J, et al. Multi-label image retrieval by hashing with object proposal[J]. Journal of Image and Graphics, 2017, 22(2): 232–240. [陈飞, 吕绍和, 李军, 等. 目标提取与哈希机制的多标签图像检索[J]. 中国图象图形学报, 2017, 22(2): 232–240. ] [DOI:10.11834/jig.20170211]
  • [10] Xu L, Ren J S J, Liu C, et al. Deep convolutional neural network for image deconvolution[C]//Proceedings of the 27th International Conference on Neural Information Processing Systems. Montreal, Canada: MIT Press, 2014: 1790-1798.
  • [11] Zheng S, Jayasumana S, Romera-Paredes B, et al. Conditional random fields as recurrent neural networks[C]//Proceedings of 2015 IEEE International Conference on Computer Vision. Santiago, Chile: IEEE, 2015: 1529-1537.[DOI:10.1109/ICCV.2015.179]
  • [12] Chen L C, Papandreou G, Kokkinos I, et al. Deeplab:Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected CRFs[J]. IEEE transactions on Pattern Analysis and Machine Intelligence, 2018, 40(4): 834–848. [DOI:10.1109/TPAMI.2017.2699184]
  • [13] Chen Q, Huang J S, Feris R, et al. Deep domain adaptation for describing people based on fine-grained clothing attributes[C]//Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston, MA, USA: IEEE, 2015: 5315-5324.[DOI:10.1109/CVPR.2015.7299169]
  • [14] Zhang Z P, Luo P, Loy C C, et al. Facial landmark detection by deep multi-task learning[C]//Proceedings of 2014 European Conference on Computer Vision. Cham: Springer, 2014: 94-108.[DOI:10.1007/978-3-319-10599-4_7]
  • [15] Freire-Obregón D, Castrillón-Santana M, Ramón-Balmaseda E, et al. Automatic clothes segmentation for soft biometrics[C]//Proceedings of 2014 IEEE International Conference on Image Processing. Paris, France: IEEE, 2014: 4972-4976.[DOI:10.1109/ICIP.2014.7026007]
  • [16] Yang W, Luo P, Lin L. Clothing co-parsing by joint image segmentation and labeling[C]//Proceedings of 2014 IEEE Conference on Computer Vision and Pattern Recognition. Columbus, OH, USA: IEEE, 2014: 3182-3189.[DOI:10.1109/CVPR.2014.407]
  • [17] Yamaguchi K, Kiapour M H, Ortiz L E, et al. Retrieving similar styles to parse clothing[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(5): 1028–1040. [DOI:10.1109/TPAMI.2014.2353624]
  • [18] Cychnerski J, Brzeski A, Boguszewski A, et al. Clothes detection and classification using convolutional neural networks[C]//Proceedings of IEEE International Conference on Emerging Technologies and Factory Automation. IEEE, 2018: 1-8.[DOI:10.1109/ETFA.2017.8247638]
  • [19] Lin K, Yang H F, Liu K H, et al. Rapid clothing retrieval via deep learning of binary codes and hierarchical search[C]//Proceedings of the 5th ACM on International Conference on Multimedia Retrieval. Shanghai, China: ACM, 2015: 499-502.[DOI:10.1145/2671188.2749318]
  • [20] Huang J S, Feris R, Chen Q, et al. Cross-domain image retrieval with a dual attribute-aware ranking network[C]//Proceedings of 2015 IEEE International Conference on Computer Vision. Santiago, Chile: IEEE, 2015: 1062-1070.[DOI:10.1109/ICCV.2015.127]
  • [21] Liu Z W, Luo P, Qiu S, et al. Deepfashion: Powering robust clothes recognition and retrieval with rich annotations[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV: IEEE, 2016: 1096-1104.[DOI:10.1109/CVPR.2016.124]
  • [22] Krizhevsky A, Sutskever I, Hinton G E. Imagenet classification with deep convolutional neural networks[C]//Proceedings of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe, Nevada: Curran Associates Inc., 2012: 1097-1105.
  • [23] Xia R K, Pan Y, Lai H J, et al. Supervised hashing for image retrieval via image representation learning[C]//Proceedings of the Twenty-Eighth AAAI Conference on Artificial Intelligence.[S.l.]: AAAI, 2014.
  • [24] Kulis B, Grauman K. Kernelized locality-sensitive hashing for scalable image search[C]//Proceedings of 2009 IEEE 12th International Conference on Computer Vision. Kyoto, Japan: IEEE, 2009: 2130-2137.[DOI:10.1109/ICCV.2009.5459466]
  • [25] Lai H J, Yan P, Shu X B, et al. Instance-aware hashing for multi-label image retrieval[J]. IEEE Transactions on Image Processing, 2016, 25(6): 2469–2479. [DOI:10.1109/TIP.2016.2545300]
  • [26] Lin K, Yang H F, Hsiao J H, et al. Deep learning of binary hash codes for fast image retrieval[C]//Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition Workshops. Boston, MA, USA: IEEE, 2015: 27-35.[DOI:10.1109/CVPRW.2015.7301269]
  • [27] Liu H M, Wang R P, Shan S G, et al. Deep supervised hashing for fast image retrieval[C]//Proceedings of 2016 IEEE Conference on computer Vision and Pattern Recognition. Las Vegas, NV: IEEE, 2016: 2064-2072.[DOI:10.1109/CVPR.2016.227]
  • [28] Lai H J, Pan Y, Liu Y, et al. Simultaneous feature learning and hash coding with deep neural networks[C]//Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston, MA, USA: IEEE, 2015: 15040-3410.[DOI:10.1109/CVPR.2015.7298947]