Python3实现颜值预测
本文转载至知乎ID:Charles(白露未晞)知乎个人专栏
下载W3Cschool手机App,0基础随时随地学编程>>戳此了解
导语
利用Python对照片中人脸进行颜值预测!!!
至于结果的可靠性.......
本人概不负责!!!
对结果不满意或者因为结果分数过低而想不开者,请自行联系xxxPh.D.。也就是此颜值预测算法的提出者!!!本人只是部分复现了他的算法!!!
以上和以下内容纯属玩笑,如有雷同,不甚荣幸。
相关文件
网盘下载链接: https://pan.baidu.com/s/1E_fc7PNaBHfMXNz3xLb12A
密码: 7nhm
所需工具
Python版本:3.5.4(64bit)
相关模块:
opencv_python模块、sklearn模块、numpy模块、dlib模块以及一些Python自带的模块。
环境搭建
(1)安装相应版本的Python并添加到环境变量中;
(2)pip安装相关模块中提到的模块。
例如:
若pip安装报错,请自行到:
http://www.lfd.uci.edu/~gohlke/pythonlibs/
下载pip安装报错模块的whl文件,并使用:
pip install whl文件路径+whl文件名安装。
例如:
(本人已在相关文件中提供了编译好的用于dlib库安装的whl文件——>因为这个库最不好装)
参考文献链接
【1】xxxPh.D.的博客
http://www.learnopencv.com/computer-vision-for-predicting-facial-attractiveness/
【2】华南理工大学某实验室
http://www.hcii-lab.net/data/SCUT-FBP/EN/introduce.html
主要思路
(1)模型训练
用了PCA算法对特征进行了压缩降维;
然后用随机森林训练模型。
数据源于网络,据说数据“发源地”就是华南理工大学某实验室,因此我在参考文献上才加上了这个实验室的链接。
(2)提取人脸关键点
主要使用了dlib库。
使用官方提供的模型构建特征提取器。
(3)特征生成
完全参考了xxxPh.D.的博客。
(4)颜值预测
利用之前的数据和模型进行颜值预测。
使用方式
有特殊疾病者请慎重尝试预测自己的颜值,本人不对颜值预测的结果和带来的所有负面影响负责!!!
言归正传。
环境搭建完成后,解压相关文件中的Face_Value.rar文件,cmd窗口切换到解压后的*.py文件所在目录。
例如:
打开test_img文件夹,将需要预测颜值的照片放入并重命名为test.jpg。
例如:
若嫌麻烦或者有其他需求,请自行修改:
getLandmarks.py文件中第13行。
最后依次运行:
train_model.py(想直接用我模型的请忽略此步)
getLandmarks.py
getFeatures.py
Predict.py
使用演示
更多建议: