前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >二值人脸对齐--Binarized Convolutional Landmark Localizers for Human Pose Estimation and Face Alignment

二值人脸对齐--Binarized Convolutional Landmark Localizers for Human Pose Estimation and Face Alignment

作者头像
用户1148525
发布2018-01-03 16:00:46
9620
发布2018-01-03 16:00:46
举报

Binarized Convolutional Landmark Localizers for Human Pose Estimation and Face Alignment with Limited Resources ICCV2017 https://www.adrianbulat.com/binary-cnn-landmarks Torch7:https://github.com/1adrianb/binary-human-pose-estimation

对于人体姿态估计和人脸对齐问题,使用最新的CNN网络我们可以得到很好的效果,但是这些方法的计算量很大,需要GPU,参数量也很大。难以做到实时计算或部署到移动端。本文提出一个二值CNN网络,可以实现 highly accurate and robust yet efficient and light weight landmark localization

本文和其他二值CNN网络的不同之处主要在以下两点: 1)我们的二值网络应用场景不是图像分类而是特征点定位 human pose estimation and facial alignment,使用全卷积方式输出一个密集的 heatmaps 2)我们主要通过设计新的网络结构来提升二值网络性能,不是改善量化方法

3 Background ResNet 网络主要包括两个模块:basic and bottleneck,这里我们主要对后者感兴趣,它设计的初衷是用于减少参数量,控制网络模型的内存占用。这里我们使用文献【11】中的“pre-activation”版本。我们的网络主体结构是文献【22】的单个 Hour-Glass (HG) network

这里写图片描述
这里写图片描述

4 Method 这里主要描述我们的网络结构是怎么进化到我们的最终版本的 binary hierarchical, parallel and multi-scale block 下面的图示

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

4.1. Binarized HG 我们从 HG network 的 原始 bottleneck blocks 开始,根据文献【26】,除了第一层和最后一层,其他网络层我们二值化,这么做是为了产生一个 dense output (heatmaps),没有二值化的网络层占网络总体参数量不到0.01%。

直接二值的结果对应性能下降,如下表所示:

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

4.2. On the Width of Residual Blocks 图4a 中的原始 bottleneck block 由三个卷积层构成,滤波器尺寸分别是 1 × 1, 3 × 3 and 1×1。网络第一层主要用于控制网络第二次的宽度(通道数),所以模块的参数量很大的压缩。但是这么做是否适用于二值网络我们不清楚。因为二值网络的表示能量是有限的,所以极大的降低通道数量可能减少了网络层之间信息的传递,进而导致性能的下降。为了验证这个想法,我们增加了网络的通道数目。从128变到256,如图4b所示

这里写图片描述
这里写图片描述

实验发现这么做可以提升网络性能,但是也增加了网络的参数量

4.3. On Multi-Scale Filtering 使用 3×3 and/or 1×1 组合构建的卷积网络层被证明是 both effective and efficient。对于实数值的网络,可学习大量的卷积核,但是对于二值网络,能够学习的二值卷积核数量是有很大限制的。 为了解决二值网络中 3×3 滤波器有限的表示能力,我们参考文献【29】采用如图4c所示的多尺度结构 从Table 2 我们可以得出结论:对于二值网络,采用多尺度滤波器是有帮助的。

4.4. On 1 × 1 Convolutions 上一步我们为了保持网络参数量不变保留了 1 × 1 卷积网络层,这里我们分析一下这个 1 × 1 卷积网络层 对模块性能的影响 这里我们直接网络 图4c 中的所有 1 × 1 卷积网络层 去掉得到 图4d, 我们之所以将所有 1 × 1 卷积网络层 去掉是因为二值的1 × 1滤波器的表示能力是很有限的。它可能会影响有用信息的传递

这里写图片描述
这里写图片描述

从表2中可以看出 性能提升了 8%,得到的结论是 二值网络中的 1 × 1 convolutional filters 对网络性能的影响是决定性的,应该给去除。

4.5. On Hierarchical, Parallel & Multi-Scale 因为二值网络对梯度消失问题更敏感,我们发现和实数值网络相比较,我们二值网络的梯度减少了 10倍多。为了降低这个梯度消失问题,我们设计了一个 hierarchical, parallel multi-scale structure 得到我们最终的模块网络结构 图4e

7 Comparison with state-of-the-art

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

我们的算法在单核CPU上应该是可以实时的 to be expected allowing the system to run in real-time on a CPU using a single core

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年11月15日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
人脸识别
腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档