4 第4章 哺乳动物面部的检测与融合
"A cat may look at a king." -英文谚语
"人人平等" (连猫都可以看着国王,所以人人平等)
本章的内容牵涉到我最喜欢的两个主题:猫和增强实现(AR).我们将构造一个叫做ManyMasks的AR应用程序,该程序可以检测,高亮并融合人和猫的脸.本应用程序的用户将可以做到以下的事情:
- 在实时视频预览中观察到人脸和猫脸的边界,以及眼睛的中心和鼻尖.这种可视化效果取决于人脸检测算法的结果.
- 从相机中拍摄的视频的不同帧中选择两个检测到的面部.
- 对对齐和融合这两个选中的面部进行融合,观察混合的面部
- 保存和分享混合的脸部.
我们的人脸检测算法依赖于级联分类器(cascade classifiers),该分类器试图将图像的各个部分与预先训练的人脸、人眼或猫脸的通用模型相匹配。我们根据一组关于面部结构的几何假设来估计其他面部特征的位置。
我们的人脸合并算法依赖于一个几何变换,它可以旋转和扭曲一个脸,使其特征与另一个脸的特征对齐。然后,我们算术地混合这两张对齐图像的像素。
尽管我们设计ManyMasks用于猫和人类,他也可以检测和合并其他动物.下图展示了合并我分别和我的父亲Bob(左图),我的猫Sanibel(右上)以及一只红色的猫(右下)的混合效果图:
[要获得本书的完整的项目,你可以到我的GitHub仓库https://github.com/JoeHowse/iOSWithOpenCV或者登录Packt Publishing网站https://www.packtpub.com第四章的项目哺乳动物面部的检测与融合,在ManyMasks文件夹中.]
本章索引
4.1 理解层叠分类器的检测原理
4.1.1 Haar-like特征
4.1.2 局部二值模式特征
4.2 理解变换
4.3 人脸融合应用程序的设计
4.4 配置工程
4.5 定义人脸和人脸探测器
4.6 定义和布局view controllers
4.6.1 捕获和预览真实脸部
4.6.2 观察,保存和分享混合的脸部
4.6.3 视图控制器之间的跳转
4.7 检测脸部元素的层次结构