人脸应用类-兔耳朵帽子特效
《AI未来星球》陪伴成长的人工智能社群,价值过万的各种内部资源及活动,限时特惠中,点击查看。
求职跳槽福利:为了便于大家求职、跳槽的准备,大白花了一年多时间准备了《人工智能算法岗江湖武林秘籍》,限时开放下载,点击查看下载。
本文目录
1 项目简介&应用场景
2 原理简述
3 项目实践
3.1 软件安装
3.2 conda安装
3.3 库文件安装
3.4 代码文件编写
3.5 代码运行测试
1 项目简介&应用场景
作者:江大白
项目简介:在我们现在使用的短视频APP中,人脸特效是非常常见的应用,但是对于其背后的原理,可能很多人并不清楚。
因此本项目,在Mask应用的基础上,学习如何在人头上添加兔子帽子。
此外,因为本项目涉及到一些人脸识别相关的知识点,人脸识别入门视频,可以参考平台上的《深入浅出人脸基础及项目应用》。
而关于人脸特效入门的视频,可以参考平台上的《深入浅出人脸特效之Mask实战应用》。
学习目的:学习如何对图像Mask处理?学习如何添加人脸特效?
可应用场景:直播行业、短视频人脸特效等
2 原理简述
兔耳朵帽子人脸特效:在人脸特效中,通常需要先对图片中的人脸进行检测。
再根据人脸的大小,调整帽子的大小,进而将帽子戴在人脸的特定区域即可。
在本项目中,人脸检测采用dlib目标检测的方式。当然,在本地应用时,我们也可以训练Yolo、Centernet等算法,构建人脸检测器。
注意:关于目标检测入门的视频,可以查看平台上《30天入门深度学习》课程中的第五章节,入门且详细易懂。
3 项目实践
很多同学刚开始进入计算机视觉领域,因此大白主要从三个方面教大家一步步入门。
大白主要从软件安装(用于编写代码)+conda安装(代码运行环境)+库文件安装(代码运行需要的函数),总共三个方面讲解。
注意:如软件、环境、库文件已经安装,可跳过第三章,直接进入第四章。
3.1 软件安装
(1)Pycharm的安装
计算机视觉算法入门,大白首推Python语言进行编程,超级简单方便。
而在编程中,为了便于管理代码,推荐大家使用Pycharm软件。
考虑到很多人刚入门时,通常使用Window环境。
关于Pycharm的安装,可以参考大白的文章,《Window系统安装Pycharm软件详细教程》。
3.2 conda安装
(1)Conda
在工作中,常常会遇到,不同项目所依赖环境不一样的情况。
比如有的项目需要用python2.7,有的项目需要用python3.8等等。
为了不同的项目互不干扰,非常推荐大家使用Conda环境。
这里关于Conda环境的安装,可以参考大白的文章,《Window系统安装Conda详细教程》。
3.3 库文件安装
注意:以下如果哪个库文件已经安装过,可以跳过,安装下一个库文件。
(1)Opencv库
Opencv是计算机视觉领域,非常常用的图像算法库。
安装方式:进入Conda终端环境。(如不知如何进入,可以查看文章《Window系统安装Conda详细教程》)
输入代码:pip install opencv-python
安装参考:(如果没有安装过numpy,同时也会顺带下载numpy库,用于数值转换)
(2)dlib库
dlib库,包含很多算法模型功能,比如目标检测、关键定位、特征提取等。
安装方式:进入Conda终端环境
输入代码:conda install dlib(注意:这里不是pip install dlib,这种方式大白在window系统下安装,也遇到了很多问题)
安装参考:
4 代码文件编写
(1)代码获取方式
① 关注微信公众号:江大白
② 回复关键词:兔耳朵帽子,即可收到代码。
(2)部分代码详情
(3)文件详情
main_image.py:读取图像,对图像中的人脸,添加兔耳朵帽子特效。
main_video.py:读取视频,对视频中的人脸,添加兔耳朵帽子特效。
image_draw文件夹:为了便于大家查看每一步的效果,大白将算法中核心代码,每一步的效果图片都保存下来,大家查看代码的输出名称,和image_draw文件夹中的相应文件名,对比查看,会更加直观。
目的:通过代码,学习使用dlib人脸检测,如何添加人脸特效。
5 代码运行测试
图像人脸检测:在Pycharm中,运行main_image.py文件即可,大家也可以在最下方的配置信息中,更换不同的图片,进行尝试。
视频人脸检测:在Pycharm中,运行main_video.py文件即可,也可以修改不同的视频路径,或者调节跳帧数,学习如何添加兔耳朵帽子特效。