论文地址:Numerical Coordinate Regression with Convolutional Neural Networks
代码地址:GitHub - anibali/dsntnn: PyTorch implementation of DSNT
一、论文总结
本文提供了一种从图像中直接学习到坐标的一种思路。现在主流的方法都是基于高斯核处理的heatmap作为监督,但这种方法学习到的heatmap,在后处理得到坐标的过程中,存在量化误差(比如4倍下采样的heatmap,量化误差的期望是2)。
本文提出一种新的处理方法,称为differentiable spatial to numerical transform(DSTN),通过DSNT处理(没添加额外参数),直接对坐标进行监督。DSNT是对heatmap进行处理的,思路如下图所示。最后的处理过程,就是将heatmap通过softmax,得到一个基于heatmap的概率分布,再通过这个概率分布,与预设好的X,Y(坐标轴)进行点乘,得到坐标的期望值。监督损失也是建立在这个期望值上的。

虽然文中的思想,主要是直接对坐标进行的回归,但实际上应用时,还是对heatmap做了约束的,而且权重还不算小。换个角度想,其实本文的实际操作,也可以认为,是对heatmap做了监督,然后添加了一个坐标的正则化因子。该正则化项的监督,可以有效减少heatmap转化成坐标的量化损失,与一些直接对heatmap做回归造成的损失误差与预期不符的问题。但是,这个heatmap项的损失也是精心挑选的,甚至不添加heatmap损失项,比不少heatmap损失计算方法的结果更好一些。
但是,对于那些在图像中不存在的关键点(比如半身),以及多人之类的问题,DSNT都不能直接进行解决。对于某些场景的应用,这是不可避免的问题。
二、创新点
目前的数值坐标回归任务存在于大量的实际需求中,例如人体关键点检测、人脸关键点检测、物体关键点检测和3d姿态,这些问题本质任务都可以归纳为数值坐标回归,故本文研究的是该类问题的一个通用解决办法,不针对具体任务,但为了方便对比,本文还是用人体姿态估计任务来说明。
具体来说
目前主流的关键点回归就两种做法:
(1) 采用全连接层直接回归坐标点,例如yolo-v1。该类做法的优点是输出即为坐标点,训练和前向速度可以很快,且是端到端的全微分训练;缺点是缺乏空间泛化能力,也就是说丢失了特征图上面的空间信息。
空间泛化是指模型训练期间在一个位置获得的知识在推理阶段推广到另一个位置的能力 ,举例来说,如果我在训练阶段有一个球一直在图片左上角,但是测试阶段球放在了右下角了,如果网络能够检测或者识别出来,那么就说该模型具备空间泛化能力。可以看出坐标点回归任务是非常需要这种能力的,因为我不可能每一个位置的图片都训练到。全卷积模型具备这种能力的原因是权重共享,然而对于全连接层,在2014年的Network in network论文指出fully connected layers are prone to overfitting, thus hampering the generalization ability o

本文介绍了一种名为DSNT的新型方法,通过卷积神经网络直接对坐标进行监督,避免了传统高斯热图方法的量化误差和空间泛化问题。文章详细阐述了DSNT的工作原理、创新点以及网络结构,包括归一化处理、坐标轴设计和Loss函数的选择。
最低0.47元/天 解锁文章
803

被折叠的 条评论
为什么被折叠?



