Sketch Me That Shoe
- 摘要
- 3 细粒度实例级SBIR数据集
- 3.1 数据收集
- 3.2 数据标注
- 4. 方法
- 4.1 概览
- 4.2 三元组损失
- 4.3 异构网络 VS 孪生网络
- 4.4 阶段预训练和微调
- 4.5 数据增强
- 结论
发布时间(2016 cvpr)
标题:给我画一下那只鞋
摘要
数量:两种类别的数据集 1432 sketch-photo 对
32000细粒度三元组排序注释
三元组排序损失
3 细粒度实例级SBIR数据集
两个数据集:鞋子和椅子
1432 张sketch-photo素描和照片 = 716 pairs = 鞋子419 + 椅子297
3.1 数据收集
收集photo
鞋子:从UT-Zap50K[31]中选取了419张具有代表性的图像,涵盖了靴子、高跟鞋、芭蕾舞鞋、正式鞋和非正式鞋等不同类型的鞋子。椅子:搜索了宜家、亚马逊和淘宝三个网上购物网站,选择了不同类型和风格的椅子产品图片。最终选出的297张图片具有代表性,涵盖了办公椅、沙发、儿童椅、课桌椅等不同种类的椅子。
收集sketch
第二步是使用收集到的图像生成相应的草图。我们招募了22名志愿者来绘制这些图像。我们在平板电脑上向志愿者展示了一张鞋子/椅子的图片,时间为15秒,然后展示一张空白画布,让志愿者用手指在平板上画出他/她刚刚看到的物体。
没有志愿者接受过任何艺术培训,因此代表了可能使用已开发的SBIR系统的一般人群。因此,收集到的草图并不完美(见图2),使得后续使用这些草图的SBIR具有挑战性。
3.2 数据标注
1.属性标注
鞋子:21个属性
椅子:15个属性
对于1432张照片进行标注 ground-truth attribute vectors
2.为每个草图生成候选图片
每个草图:选择了10个最相似的候选图像(属性向量+模型特征向量结合进行查询,利用欧式距离进行检索)
3.三元组注释
每个sketch有45个三元组:716*45 约等于 32000 个三元组
每个三元组:sketch + 两张图片,任务是选择哪张图片更相似
4. 方法
4.1 概览
triplet ranking loss:正例与sketch的欧式距离大于负例与sketch的欧式距离
4.2 三元组损失
三元素损失是0-1损失的凸优化近似。
0-1损失:只有0,1这两种离散的损失值
三元组损失:损失最小是0,最大同时随着样本之间距离变化而变化。类似于0-1损失
同时凸优化:局部最优解就是全局最优解(三元组也就是存在唯一的全局最优解0)
4.3 异构网络 VS 孪生网络
文本-图像:应该使用异构网络
图像-图像:应该使用孪生网络
sketch-图像:如果使用异构网络,由于数据量太少,容易过拟合
本文对于sketch和图像使用孪生网络
4.4 阶段预训练和微调
四个阶段
1.训练 better sketch-a-net:预训练
数据:ImageNet-1K的边缘图用于训练
模型:TU-Berlin数据训练的 Sketch-a-Net架构用来训练
2.训练 better sketch-a-net:微调
数据:利用TU-Berlin的250类草图数据进行微调
3.训练 sketch-photo 排序:预训练
因为训练数据有限,从另外两个数据集选取187类,8976张草图,19026张照片
构建三元组
1)正例:前20%图片作为正例
2)负例:随机其他类别(3份);其他类别硬负例(1份);同类硬负例(1份)
4.训练 sketch-photo 排序:微调
在自己的数据集上进行类别内细粒度的微调
4.5 数据增强
两种数据增强方式
笔画去除
1)轮廓更重要,画的次序更靠前
2)笔画越长越重要
去除概率越小
笔画变形
最小二乘算法用于笔画变形
1)长度越短
2)曲率越小
变形概率越大
总结
3个笔画去除 + 9个笔画变形,一共可以获得12倍的数据
结论
我们引入了细粒度实例级SBIR的新任务。这个任务比研究得很好的类别级SBIR任务更具挑战性,但对于商业SBIR采用也更有用。本文引入了两个具有密集注释的新数据集,以激发这一方向的研究。实现跨草图/图像间隙的细粒度检索需要一个使用三重注释学习的深度网络,这个框架显然具有广泛的数据和注释需求。我们演示了如何避开这些要求,以便在这个新的具有挑战性的任务中获得良好的性能。在这个过程中,我们探索了关于用有限数据训练深度网络的各种见解。