“菜鸟学Python”,第“519”篇原创
如今的网络时代,许多直播的博主们,在进行 直播时,都喜欢利用美颜的方式来提升自己的颜值。其中必不可少的就是瘦脸。
瘦脸更能够显示出自己美丽的五官轮廓,有效的提升自己的颜值。最有名的瘦脸APP翻车事件,当属“乔碧萝”的事件啦。
如今的市面上也有很多的瘦脸APP,也受到了很多的小姐姐们的追捧。而强大的python也能够一键实现瘦脸的功能,大家跟随菜鸟哥一起来看看吧。
对于瘦脸功能的实现,借助的是名为“Interactive Image Warping”算法(以下简称I-I-W算法)。该算法利用局部的平移、缩放以及旋转的方式来不失真的进行图像纤瘦化处理。这篇算法早在1993年就被提出。值得一提的是,该算法是一名博士的毕业论文。看来经典的算法,永远都不会过时。
下图所示的内容是I-I-W算法的论文首页,论文的题目就叫“Interactive Image Warping”,作者名叫“Andreas Gustafsson”。在首页的下面,作者用芬兰语写下了有关论文的写作地点等内容,其中31.5.1993格外的醒目,这里指出的是作者的这篇论文发表于1993年,距今已经接近三十年的历史。
对于很多小伙伴来说,对于论文的阅读和理解是非常具有挑战性的,而且理解起来也比较晦涩难懂,菜鸟哥通过下面的内容,向大家直观的解释,如何利用该算法来进行瘦脸的操作。
首先,我们来看一下程序的整体的实现步骤:
回归到程序的本身而言,首先是读入包含人脸的图片,通过dlib库,来匹配人脸的68个特征点,程序如下图所示。
程序首先通过opencv库读入图片文件后,利用lib库中的检测器来检测人脸中的特征点,并将所有的特征点添加到land_marks列表中。而匹配的68个关键点的人脸图片,如下图所示。
可以看到,通过dlib库的检测,可以匹配得到人脸的68个特征点,包括脸部的轮廓,以及五官的轮廓位置。
匹配得到的人脸特征点后,接下来就是就可以调用I-I-W算法来将人脸的脸部轮廓进行纤瘦化的处理,具体是如何实现的呢?
首先,程序需要计算人脸关键点中,左右半边脸中名字为3,5和13,15之间的直线距离,如上图所示,程序需要分别计算3和5之间的直线距离,以及13和15之间的直线距离,分别记作R_left以及R_right。程序如下图所示。
为什么要计算这一个距离呢?这是因为I-I-W算法会将这一个距离作为判定的一项依据,I-I-W算法会根据人脸的中心点距离像素点的直线距离是否大于R_left以及R_right,来判定人脸的位置需不需要进行调整,如果距离小于R_left以及R_right的话,那么就进行像素点的平移操作,从直观上来看就是瘦脸的操作。下图程序中展示的是I-I-W算法的核心内容。
程序分别针对于左半脸和右半脸,利用I-I-W算法进行瘦脸的操作,得到最终的瘦脸结果图,程序如下图所示。而经过I-I-W算法得到的最终的瘦脸结果如下图所示。
可以看到,经过I-I-W算法处理后的人脸,在两侧面颊部分有着明显的消瘦效果,达到了瘦脸的目的。
03.界面展示
为了更方便大家利用该神器,规避了对于代码的理解。菜鸟哥为大家制作了GUI的交互界面,如下图所示。
最后,菜鸟哥通过视频展示的方式,来给大家展示界面的使用方式。
左手Python,右手Java,升职就业不愁啦!
对上面的这个趣味小软件有兴趣的,可以在公众号后台输入:瘦脸
推荐阅读:
入门: 最全的零基础学Python的问题 | 零基础学了8个月的Python | 实战项目 |学Python就是这条捷径
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 | 从万众期待到口碑扑街!唐探3令人失望 | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影
趣味:弹球游戏 | 九宫格 | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影
小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!| 再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|
年度爆款文案
1).卧槽!Pdf转Word用Python轻松搞定!
2).学Python真香!我用100行代码做了个网站,帮人PS旅行图片,赚个鸡腿吃
3).首播过亿,火爆全网,我分析了《乘风破浪的姐姐》,发现了这些秘密
4).80行代码!用Python做一个哆来A梦分身
5).你必须掌握的20个python代码,短小精悍,用处无穷
6).30个Python奇淫技巧集
7).我总结的80页《菜鸟学Python精选干货.pdf》,都是干货
8).再见Python!我要学Go了!2500字深度分析!
9).发现一个舔狗福利!这个Python爬虫神器太爽了,自动下载妹子图片
点阅读原文,领AI全套资料