FashionAI全球挑战赛—服饰关键点定位

比赛官网地址:https://tianchi.aliyun.com/competition/introduction.htm?spm=5176.100150.711.5.5f902784pJIfNg&raceId=231648

成绩

在初赛时使用的Hourglass网络,在初赛第二轮的时候机器的水泵烧了。。到复赛快结束才修好。。所以复赛基本没有做改进。

网络结构参考我之前写的文章《Stacked Hourglass Networks

一开始尝试的是对每个style训练一个模型,得分8.X%,效果并不是很好,后面尝试了全部style一起训练,在loss上稍作修改,对于keypoint不存在的通道,不传递loss——即乘以一个calculable。

pred = net(inputs, landmark_len, nStack=nstack)
outputs = tf.get_collection('heatmaps')

c_loss = tf.reduce_mean(tf.stack([tf.nn.l2_loss(calculable*(heatmap - o)) for o in outputs]))

data augment使用了随机缩放,旋转和翻转,另外生成heatmap的时候发现不归一到[0-1](即不除以255),效果更好,虽然训练loss在几十W上下波动。

预测时也使用了data augment,即每张图在[0.8, 0.9, 1.0, 1.1, 1.2]的尺度,和[-5, 0, 5]的旋转角度下预测,将得到的heatmap叠加,取最大值。

训练的时候遇到一个很玄学的问题,lr取太小会导致nan(小于1e-5)。 所以我一开始用1e-3来训练。

具体代码见GitHub

18.7.5更新Fashion AI大赛答辩会

猜你喜欢

转载自blog.csdn.net/yeahDeDiQiZhang/article/details/80621258