论文分析

论文提出了一种类似级联的神经网络结构。这一点上很遗憾,我在一个月之前也想到了这种模式。因为对于实时 Landmark 的跟踪,其实可以利用上一帧的预测结果来预测下一帧 Landmark 的位置。但现代大部分的 CNN 结构没办法办到。在与朋友的讨论中可以仿照RNN来建立时间线上的联系,解决在实时跟踪中的效率及时间稳定性。当时想动手设计并实现一个这样的网络,后来因为公司原因并没有动手,想法搁置。结果今天就看到 CVPR2017 上的这篇论文。看来以后有想法还是直接撸吧!


初窥网络架构

我自己原有的想法是,在测试阶段:对于一个输入 I ,给定一个初始形状S0。每一级神经网络输出的是根据输入图像得到的偏移估计 ΔSn1,那么每一级都会更准确的预测脸上 Landmark 的位置:

S~=S0+i=0NLdci(I,Si)

那么我们来看论文,论文作者还是比我想的要复杂的多。哈哈哈,毕竟能在目前达到 stage of art,我那样的构想还是太简单了。
Deep Alignment Network: A convolutional neural network for robust face alignment

每一个 connection layers,连接了本次 STAGE 和 下一个 STAGE,并根据本次 STAGE 的数据生成了三个东西:Landmark HeatMap H,特征 Image F , 和一个变换 T(用来把图像做仿射变换到标准的Pose)。

Deep Alignment Network

DAN思想来源于Cascade Shape Regression框架,于之前我自己实现的3000fps一样。他会给定一个初始估计S0。但与原始框架最大的不同在于,CSR 框架基本都基于一个局部的特征,或者由粗到精的级联。但 DAN 提取的特征都是全部 image 的特征。而作者就是通过提取额外的特征输入解决这个问题–Heatmap。

Deep Alignment Network: A convolutional neural network for robust face alignment

一个连接层由Transform Estimation layer、Image Transform layer、Landmark Transform layer、Heatmap Generation layer、Feature Generation layer 组成。

细化结构

论文出已经给出了非常详细的网络结构,在这里就不再赘述了。详细实现请参考我的github。
zjjMaiMai/Deep-Alignment-Network-A-convolutional-neural-network-for-robust-face-alignment

实现了paper所有内容,效率能够达到实时性。在错误率上,因为数据增强的原因,比原paper结果略低但基本无影响。

相关文章:

  • 2021-10-09
  • 2021-12-14
  • 2021-11-25
  • 2021-05-17
  • 2021-11-02
  • 2021-05-11
  • 2021-04-02
  • 2021-04-13
猜你喜欢
  • 2021-11-26
  • 2021-05-26
  • 2021-05-30
  • 2021-06-29
  • 2021-08-18
  • 2021-11-12
  • 2021-12-25
相关资源
相似解决方案