600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 再见李佳奇 菜鸟哥用Python也能帮小姐姐选择口红啦 快来看看!!

再见李佳奇 菜鸟哥用Python也能帮小姐姐选择口红啦 快来看看!!

时间:2019-04-21 22:53:31

相关推荐

再见李佳奇 菜鸟哥用Python也能帮小姐姐选择口红啦 快来看看!!

对于 李佳琦 ,想必知道他的女生要远远多于男生,李佳琦最早由于直播向广大的网友们推荐口红,逐渐走红网络,被大家称作“口红一哥”。不可否认的是,李佳琦的直播能力确实很强,他能够抓住绝大多数人的心理,让大家喜欢看他的直播,看他直播推荐的口红适不适合自己,色号适合什么样子的妆容。

为了提升效率,让自己的家人或者女友能够快速的挑选出合适自己妆容的口红色号,今天,小编带领大家利用Python来实现,如何快速挑选合适的口红色号。

1

程序设计思路

这个程序的思路主要是利用人脸关键部位识别,然后识别出嘴唇的部位,然后进行图片替换。

第一步:首先利用tkinter来选择自己的照片,并选择口红的色号,我们获得了选择照片的存储路径和选择的口红色号之后,程序将我们选择的色号由16进制转化为RGB形式;

第二步:利用face_recognition来读取选择的图片,face_recognition是最简单的人脸识别的库,它可以检测人脸的关键点,包括眼睛、鼻子、上下嘴唇的位置等等信息。我们利用face_recognition识别图片中上下嘴唇的位置;

第三步:利用PIL库,将嘴唇的位置涂抹上我们选择的口红色号,然后将处理完的图片显示在界面上,就完成了我们整个程序的执行流程。

2

动手撸代码

先来看一下设计的程序的界面,我用的是tk设计的,如果想用前端做的话也是可以的,换个壳子而已。首先,我们来看一下运行后的程序界面:

我们运行主程序,会弹出上面的界面,第一步是选择口红的色号,小伙伴们,可能会问,我不清楚口红的色号怎么办,别着急,小编给大家早就准备好了,小编为大家精心准备了 迪奥 、美宝莲、香奈儿、纪梵希等大牌厂家的不同系列的口红色号表格,如下图所示,大家只需要自己尽情选择就好。

我们选择完口红的色号之后,就是点击“打开图片”选择我们本地的照片,并显示在“图片1”的显示框内。

接着就是最重要的“选择口红”按钮,它会帮助我们识别图片中嘴唇的位置,然后涂抹上对应色号的照片,并将处理好的照片显示在“口红效果”的展示框中。

3

关键源码解析

我们来看一下这一部分对应的源码吧

上述的程序中,主要完成了3个动作:

分别对应了GUI界面中“打开图片”、“选择口红”和“退出软件”三个按钮的对应函数;其中choosePic函数用来上传并显示我们的本地图片;而showlioStickPic用来给我们的图片涂口红,并在界面上显示处理之后的照片;quit就是处理tk界面的退出按钮

PutLipsticks函数完成了最为关键的操作,下面我们会一步讲解是如何处理的

上述的程序中,首先程序需要将我们输入的16进制的色号转变为RGB的三通道格式,因为后续的函数中,不支持16进制的颜色表示方式。然后我们调用face_recognition来检测人脸的关键点,将我们的上下嘴唇涂上我们选择的口红颜色,并保存处理好的图片,返回保存的文件路径。如果大家对Python感兴趣的话,可以加一下我的微信哦:abb436574,免费领取一套学习资料和视频课程哟~

以上就是我们的程序讲解,我们来看一下程序的执行效果到底如何吧,如下图所示:

可以看到,我们利用不同的色号,为同一张图片进行了口红的试色,当然,大家可以按照自己的喜好,去更换口红的颜色。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。