简易版“美颜”来了!肝了一夜!用Python做一个高瘦脸神器!

特效:脸部变形分析 脸部变型特效主要包括了: - 瘦脸 - 削脸 - 小脸 - 下巴 - 额头 - 大眼 - 眼距 - 眼角 - 瘦鼻 - 长鼻 - 嘴型 以上的变形算法可以分为两类 1. 局部调整算法(比如:大眼)类似于ps中的液化 2. 全局点位变形(比如:瘦脸) 局部调整算法:基于1993年Andreas Gus... 阅读详情

“菜鸟学Python”,第“519”篇原创

如今的网络时代,许多直播的博主们,在进行 直播时,都喜欢利用美颜的方式来提升自己的颜值。其中必不可少的就是瘦脸。

瘦脸更能够显示出自己美丽的五官轮廓,有效的提升自己的颜值。最有名的瘦脸APP翻车事件,当属“乔碧萝”的事件啦。

如今的市面上也有很多的瘦脸APP,也受到了很多的小姐姐们的追捧。而强大的python也能够一键实现瘦脸的功能,大家跟随菜鸟哥一起来看看吧。

01.算法介绍

对于瘦脸功能的实现,借助的是名为“Interactive Image Warping”算法(以下简称I-I-W算法)。该算法利用局部的平移、缩放以及旋转的方式来不失真的进行图像纤瘦化处理。这篇算法早在1993年就被提出。值得一提的是,该算法是一名博士的毕业论文。看来经典的算法,永远都不会过时。

下图所示的内容是I-I-W算法的论文首页,论文的题目就叫“Interactive Image Warping”,作者名叫“Andreas Gustafsson”。在首页的下面,作者用芬兰语写下了有关论文的写作地点等内容,其中31.5.1993格外的醒目,这里指出的是作者的这篇论文发表于1993年,距今已经接近三十年的历史。

对于很多小伙伴来说,对于论文的阅读和理解是非常具有挑战性的,而且理解起来也比较晦涩难懂,菜鸟哥通过下面的内容,向大家直观的解释,如何利用该算法来进行瘦脸的操作。

02.程序讲解

首先,我们来看一下程序的整体的实现步骤:

回归到程序的本身而言,首先是读入包含人脸的图片,通过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行代码做了一个语音壁纸切换器天天看小姐姐!|

年度爆款文案

点阅读原文,领AI全套资料
人脸模型matlab代码-FaceDetectionWithTensorFlow:小脸检测 人脸模型matlab代码 人脸检测 转换预训练模型 从作者的厂库下载预训练模型 运行以下代码转为pickle文件 python matconvnet_hr101_to_pickle.py --matlab_model_path /path/to/pretrained_model --weight_file_path /path/to/pickle_file 预测 python tiny_face_eval.py --weight_file_path /path/to/pickle_file --data_dir /path/to/input_image_directory --output_dir /path/to/output_directory Result 本项目修改自 立即下载

相关推荐

MATLAB大作业_matlab大作业_

中南大学MATLAB大作业答案 中南大学期末大作业答案

瘦脸之液化算法

论文:Interactive Image Warping(1993年Andreas Gustafsson) 算法思路: 假设当前点为(x,y),手动指定变形区域的中心点为C(cx,cy),变形区域半径为r,手动调整变形终点(从中心点到某个位置M)为M(mx,my),变形程度为strength,当前点对应变形后的目标位置为U。变形规律如下, 圆内所有像素均沿着变形向量的方向发生偏移 距离圆心越近,变形程度越大 距离圆周越近,变形程度越小,当像素点位于圆周时,该像素不.

年轻即出发, 6466

图像滤镜艺术---人脸编辑(五官微调+瘦脸美型)-附件资源

图像滤镜艺术---人脸编辑(五官微调+瘦脸美型)-附件资源

opencv-python 小白笔记(21)

第二十节:美颜相关(一)亮度增强(二)磨皮美白(三)大眼(四)瘦脸()结语 好多天没有写博客了,这几天一直忙于炼丹,快被数据搞疯了。废话不多说,今天主要写美颜相关 (一)亮度增强 (二)磨皮美白 这主要用到cv2.bilateralFilter双边滤波函数 参数 解释 src 输入图像 d 过滤时周围每个像素领域的直径 sigmaColor 在color space中过滤sigma。参数越大,临近像素将会在越远的地方mix。 sigmaSpace 在coordinate spac

????爱好者的博客 4964

C++ bitset总结

数据结构bitset 术语:某1位置位是置1,某一位复位是某一位清零。 文章目录数据结构bitset一、3种初始化方式二、位访问三、位操作四、 位集操作总结实战练习 一、3种初始化方式 bitset<32> tmp; //默认构造函数,默认全0。 bitset<32> tmp(-1); //从整形数构造 bitset<32> tmp("101"); //从包含1和0的字符串构造 二、位访问 bitset<32> tmp(256)

qq_43807092的博客 721

KEIL5编译报错L6200E:__stdout重定义问题分析与解决

本文深入分析KEIL5编译报错L6200E中__stdout重定义问题的根源,指出因未完整定义__stderr导致与标准库stdio_streams.o冲突。提供完整重定义标准流、启用MicroLIB库等解决方案,帮助开发者彻底解决Symbol multiply defined错误,提升嵌入式开发效率。

uran的专栏 958

python实现面部特效_【AI美颜算法】300行Python实现基于人脸特征的美颜算法

先上效果图:AI美颜人类一直是一个看脸的物种,人人都希望可以变得更美是无可争议的,而美颜类应用的出现拯救了所有人,从此人类进入了美(照)颜(骗)时代。。。。。每次写技术blog都要写一堆废话引言,现在懒得写,大概就是美颜很重要,美女主播靠它活,没了它大部分妹子不敢发朋友圈blabla。美颜算法的基础是人脸识别技术,市面上的美颜应用普遍使用了CV科技类公司的人脸识别(特征点提取)接口:MeituKi...

weixin_39822423的博客 2243

如何用Python分析20年投资者情绪数据(附ISI和CICSI完整数据集)

本文提供了一份利用Python分析2003-2023年投资者情绪数据的实战指南。文章详细介绍了如何获取并清洗ISI和CICSI数据集,运用Pandas、Matplotlib等工具进行数据探索、可视化与深度分析,包括趋势分解、成分关联及情绪状态划分,旨在帮助读者掌握从数据到洞察的完整流程,为量化金融研究提供方法论支持。

gpu4optimizer的博客 470

终极指南:5步掌握AI证件照生成神器

你想快速制作专业证件照,又不想花大价钱去照相馆吗?HivisionIDPhotos正是你需要的AI证件照生成工具。这个开源项目利用先进的人工智能技术,能够智能识别拍照场景,自动完成抠图、背景替换、尺寸调整等复杂操作,让你在家就能制作出符合各种标准的证件照。 ## ✨ 项目亮点:为什么选择HivisionIDPhotos? HivisionIDPhotos凭借其独特优势,在众多证件照工具中脱颖而

gitblog_00930的博客 460

从平衡车到寻迹小车:IMU963RA九轴陀螺仪实战避坑与四元数融合指南

本文详细解析了IMU963RA九轴陀螺仪在机器人姿态控制中的应用,重点探讨了从六轴升级到九轴系统的技术路径及四元数融合算法。通过实战案例,揭示了如何利用地磁计补偿陀螺积分漂移,并提供硬件集成、传感器校准及算法实现的完整解决方案,有效将8小时漂移控制在2度以内。

weixin_27219587的博客 255

三臂杆大型液压机械臂集中式ADRC控制系统设计

本文设计了一种用于三臂杆液压机械臂的集中式自抗扰控制(ADRC)系统。该系统通过建立包含惯性矩阵、科氏力、重力及摩擦力的非线性动力学模型,并集成液压系统传递函数,构建了完整的系统模型。控制方案采用跟踪微分器安排过渡过程,扩张状态观测器实时估计系统状态和总扰动,以及非线性状态误差反馈生成控制量。MATLAB实现展示了集中式ADRC控制器的核心结构,包括参数定义、跟踪微分器、扩张状态观测器和非线性反馈模块的设计。该系统能有效处理多关节耦合效应,实现三输入三输出的MIMO控制,具有抗干扰能力强、响应速度快的特点。

huanghm88的专栏 272

你以为的人工智能是人工智能吗?-一起乐学AI

这里不是正文,这是目录,爱学习的小鹏与只不过是想通过拜读有意思的文章的形式,一步步接近AI,体验程序带来的快感与乐趣。 《让图片变,使用无门槛,这个软件比XXX杀伤力更大》 《刷新记录,算法开源!字节跳动获人体姿态估计竞赛双冠 CVPR 2019》 《RetinaFace,最强开源人脸检测算法》 《又一AI神器!3行代码5秒抠图,根本无需PS》 《史上最简单的人脸识别项目登上GitHub趋势榜》 《万圣节恐怖表演、内衣检测器......2019 年二十大有趣的机器学习项目盘...

爱学习的小鹏友 1052

《AI应用架构师:解锁AI智能体于经济学研究洞察经济趋势的关键密码》

当经济学家还在为“疫情后的消费复苏曲线”“ChatGPT对就业的长期影响”等非线性问题挠头时,AI应用架构师已经用AI智能体搭建了一个“数字经济沙盘”:里面有会砍价的消费者、会算成本的企业、会调政策的政府,每个智能体像真实角色一样思考决策,甚至能模拟出“政策出台3个月后失业率的微妙变化”。这篇文章将带你从架构师视角拆解:如何用AI智能体破解经济学研究的3大痛点(数据爆炸、非线性复杂、动态演化)?如何设计能“活起来”的经济智能体?如何用智能体模拟出能指导现实的经济趋势?

AI天才研究院 903

matlab瘦脸大眼的代码,OpenGL ES 实现瘦脸大眼效果

Hi 小姐姐,这是你要的大眼瘦脸效果?该原创文章首发于微信公众号:字节流动旧文中我们用 OpenGL 给小姐姐实现了瘦身和大长腿效果,结果小姐姐眯着眼睛、嘟着嘴说,我需要瘦身和大长腿效果吗?笔者若有所思地看着她的眼睛和脸庞,终于弄明白了她需要的是什么效果。言归正传,无论是实现瘦身大长腿效果,还是实现瘦脸大眼效果,其本质上都是对图像中某些区域的像素按照我们设定的规则进行移动,而 OpenGL 的片段...

weixin_31014025的博客 847

YOLO26 改进 | 基于特征蒸馏 | 知识蒸馏 (Response & Feature-based Distillation)

本文系统介绍了YOLO26中的知识蒸馏技术,包含五大核心方法:基于响应的蒸馏(学习分类概率)、基于特征的蒸馏(学习中间层表示)、基于关系的蒸馏(学习特征关联)、通道维度蒸馏(CWD)和前景背景分离蒸馏(FGD)。文章深入解析了每种方法的数学原理与实现细节,并提出动态训练策略,包括一致性匹配和蒸馏权重退火机制。通过教师模型向学生模型传递"暗知识",在保持模型轻量化的同时逼近大模型性能。配套代码支持模块化组合不同蒸馏方法,为YOLO26模型压缩提供了一套完整的解决方案。

weixin_51988935的博客 275

【sealos安装指南】基于 Sealos 安装 Kubernetes 1.33.6 高可用集群

本文介绍使用Sealos工具快速搭建Kubernetes集群的详细指南。Sealos简化了K8s部署流程,自动完成系统调优,适合新手学习使用。文章提供了服务器规划、环境准备、在线/离线两种安装方式的具体步骤,包括主机名设置、swap关闭、数据目录配置等。重点讲解了Sealos的安装命令参数说明,以及添加/删除节点等常用操作。推荐使用Calico网络组件确保稳定性,并附有安装成功后的验证截图。该指南能帮助用户快速搭建一个包含master和worker节点的K8s集群,底层基于containerd运行。

欢迎你们到来,希望能帮到大家 463

基于python+opencv+dlib实现人脸修正效果【附源码】

人脸算法及操作

ctu_sue的博客 2912

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

运用PIL库 用来美白,磨皮,瘦脸等操作!

1.安装pillow库: 在cmd下,输入简单的命令:pip install pillow 即可安装pillow库。 2.PIL库的简介:   1. PIL库主要有2个方面的功能:   (1)图像归档:对图像进行批处理、生产图像预览、图像格式转换等。   (2)图像处理:图像基本处理、像素处理、颜色处理等。   2. PIL拥有多个类,此处就其中的Image类、Ima...

518

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

人脸形变算法——液化变形

在PS中,我们可以利用液化工具对人像进行形变处理,例如瘦脸、瘦腿、放大眼睛等一系列的常规操作。今天我们来了解一下这些操作的算法原理,调研该算法我参考了一篇博士毕业论文《Interactive Image Warping》。该论文重点在4.4节介绍了局部平移、局部缩放、局部旋转的实现算法,在局部变化中,作者设置一个点C和rmax作为圆形变化区域的圆心和半径,通过鼠标拖拽C点致使图片变形,在形变过程中遵守在圆形区域内越靠近变形中心C点的点形变越明显,反之亦然。下面我们再详细看一下变形后的像素是怎么计算的。 L

tuntunmmd的博客 4610

贝叶斯统计 [韦来生编]

贝叶斯(Bayes)统计是近几十年来迅速发展起来的数理统计的一个重要分支。贝叶斯方法与经典统计方法的主要不同之处是进行统计推断时除了利用样本信息外,还要利用参数的先验信息,因此可以提高统计推断或统计决策的效果。它在经济、金融、生物、医学、自然科学和社会科学等许多领域具有广泛的应用。贝叶斯方法的研究已渗透到了统计学的几乎所有领域。作者在给中国科学技术大学概率论与数理统计专业本科生开设的“数理统计”课程中有一章专门讲授“贝叶斯方法和统计决策理论”,近十年来也给中国科学技术大学概率统计专业研究生开设过几次“贝叶斯分析”课。本书是在对过去讲稿的内容作了适当的增减和调整的基础上完成的。  本书共分六章。第1章是绪论,介绍了贝叶斯统计的若干基本概念,同时对必要的数理统计的基础知识有重点地作了回顾。第二章介绍了确定先验分布的若干可供选择的方法。第三章介绍了几类常见统计模型参数的后验分布的主要结果和计算方法。第四章和第五章分别介绍了“贝叶斯统计推断”和“贝叶斯统计决策”的内容。第六章介绍了贝叶斯统计计算的若干方法,包括蒙特卡洛方法和马尔可夫链蒙特卡洛(MCMC)方法以及相关统计软件的简介。本书的每一章附右大量的例题和习题,书末附有常用的几个表格和部分习题解答供读者查用。  大约可在54学时内讲授本书的第1章至第六章的主要内容,教师可根据学时需要选讲本书第1章至第六章的部分内容。书中标“*”号的章节可略去不讲,留给读者作为阅读材料。第六章例题中的R代码和部分例题的数据文件等可从作者个人主页下载。  作者在编写本书的过程中参考了J.O.Berger教授的《统计决策论及贝叶斯分析》和茆诗松教授编写的《贝叶斯统计》等书中的一些内容,以及《贝叶斯分析》一书中由张伟平博士编写的有关贝叶斯统计计算的一些内容。在此表示衷心感谢。  本书编写准备过程中,中国科学技术大学统计与金融系的几个研究生帮助完成了本书部分中文的录入和排版,作者对他们的辛勤工作表示真诚的感谢。高等教育出版社为本书的出版给予了大力支持。在此一并致谢。

数字图像处理-美图秀秀:瘦脸算法

本项目是以matlab为主语言并设计GUI界面的一款简易美图秀秀,包含基础的图像处理和一些常见美颜算法对于一些matlab较难实现的算法采用C++或python来实现⭐️ github地址:https://github.com/mibbp/MeituShow里面有我完整的代码,你想直接运行记得看readme配置一下环境,本博客更多的是讲解原理。

Mibbp的博客 5103

大眼之膨胀算法

论文:Interactive Image Warping(1993年Andreas Gustafsson) 算法思路: 以眼睛中心为中心点,对眼睛区域向外放大,就实现了大眼的效果。大眼的基本公式如下, 假设眼睛中心点为O(x,y),大眼区域半径为Radius,当前点位为A(x1,y1),对其进行改进,加入大眼程度控制变量Intensity,其中Intensity的取值范围为0~100。 其中,dis表示AO的欧式距离,k表示缩放比例因子,k0表示大眼程度,xd,yd表示A点经过大..

年轻即出发, 5722

python+opencv实现人脸微整形

表情捕捉驱动另一张脸或者3D人脸是原宇宙一项比较热门的技术,目前已有好多相关的产品出现,应用于如虚拟主播等场景。本人对这项技术进行了思考后,想到photoshop有一项图像自由变形的功能,那么是不是可以基于这样一个功能结合人脸特征点的识别,来实现摄像头捕捉人脸并驱动另一张avatar脸呢?答案应该是可行的。

JAMES费的空间 5801

瘦脸实现【Python】

对实现人脸瘦脸简单功能的一个记录,大概流程如下: 1.使用dlib检测出人脸关键点 2.使用Interactive Image Warping 局部平移算法实现瘦脸 瘦脸的原理可以参照这篇博客https://blog.youkuaiyun.com/grafx/article/details/70232797?locationNum=11&amp;fps=1 下载地址:https://download....

u011941438的博客 1万+

期末大作业之Matlab美图秀秀【GUI界面】

期末大作业之Matlab美图秀秀,带GUI界面。在这里给大家分享其中动漫滤镜、特征点定位、大眼、口红、眉毛、腮红、瘦脸、贴纸功能模块。

qq_52894587的博客 4301
上一篇: 10年老司机,写好 Python 代码的几条重要技巧!
下一篇: 一文让你吃透!图解 pandas 透视表、交叉表!
菜鸟学Python
博客等级 码龄9年 8089粉丝 571原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值