您的位置:首页 > 其它

论文解读|Super-realtime facial landmark detection and shape fitting by deep regression...

2019-02-18 22:42 706 查看

资料

论文全名:Super-realtime facial landmark detection and shape fitting by deep regression of shape model parameters

代码地址:

https://github.com/justusschock/shapenet

官方文档:

https://shapenet.readthedocs.io/en/latest/

论文地址:

https://arxiv.org/abs/1902.03459

开源地址:

https://github.com/justusschock/shapenet

首先吐槽下,深度学习框架好多,奶奶的。这个论文对我有很多启发

见稿于2019年2月9日,来自德国亚琛工业大学的研究人员开源了形状拟合库ShapeNet,其可以实现超实时的人脸特征点检测,也可以用在其他任何需要形状拟合的应用场景。说白了就是shapenet图像拟合的方法。这个后面我说说对我的启发。

ShapeNet库使用Python实现,是开源了预训练模型,而且很方便地使用其进行任何其他形状拟合任务的训练,只需要简单配置参数

下面说说论文。

形状拟合

上图展示了对人脸、红外人脸、猫脸、医学图像器官形状拟合的例子。是不是想起了ASM、AAM、CLM之类的算法?

相信大家对于人脸特征点检测并不陌生(dlib实现),人脸对齐(或者人脸配准),即定位人脸中特定位置的点,所有这些点组合在一起就描述了人脸的形状。任何特定目标形状的描述,都可以通过形状拟合算法完成。

说到这里,前段时间研究的样本扩张法,可以用这个实现,具体怎么做,后面更新论文。

这很显然是一个非常有用的研究方向,比如基于人脸特征点检测的视频特效已成为各大直播平台的标配,在医学图像领域,通过形状拟合确定器官的位置,可以在放化疗手术中对人体器官进行低剂量照射保护,在机器视觉中零部件形状拟合也可以帮助进行缺陷检测等。

目前在该领域,基于“特征提取”+“回归坐标”的方法是主流。

该文提出的ShapeNet算法也是深度学习回归的方法,其最大的优势是速度快,在上图中文字说明跑在GTX 2080 Ti上可以达到410fps,即2.4ms一帧。注意这是Python的实现,这样的速度,系统IO估计也比较占时间。

 

上图中显示的是预测的过程,CNN提取的特征进行回归得到PCA压缩系数和整体仿射变换系数,然后PCA压缩系数乘以PCA特征向量得到人脸形状,并进行包含平移、旋转、缩放的仿射变换即得到了最终的特征点位置坐标。

在训练的时候对形状进行PCA压缩和仿射变换归一化,记录下PCA的特征向量、每个形状的PCA系数和这些仿射变换的系数,后两者用于作为深度学习系统的回归的标签。

该算法使用了形状中特征点的位置坐标信息其实是高度冗余的特性,通过PCA压缩大大降低了需要预测的数据量。

特征提取网络各层

共9层:

实验结果

既然用到了PCA压缩,就不可避免涉及到压缩比例的问题,这直接决定了回归参数个数。

作者在人脸特征点检测数据集上研究了回归参数的数量对最终精度的影响,如下图:

 

随着参数个数的增加,精度有增加的趋势。但比较50个参数和75个参数的结果曲线,发现75个参数时精度却下降了,而50参数曲线在75曲线之上。这可能和标注数据本身有噪声有关系。PCA压缩丢弃这些信息反而使结果更好。如果选择可以尝试两个参数进行对比。

是作者在几个形状拟合数据库上的实验结果累积误差分布(Cumulative Error Distribution),包括人脸数据集(300W indoor 、300W outdoor)、红外人脸数据集Thermal、猫脸数据集Cats、医学图像数据集JSRT lungs、PROMISE2。

下图

 

作者并没有跟其他算法比精度,很多提升精度的tricks没加,作者更加强调该库的简单、通用、高效,GTX 2080Ti 上 410f法。

启发扩展

虚拟样本扩张,生成不同角度的脸,克服单样本检测问题。

借鉴PCA层尝试写图像指纹层

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐