前面一篇文章讲了Dlib的人脸关键点提取: https://www.jianshu.com/p/5a49c157fd88
提取的关键点可以用于各种任务。
此外Dlib 提供了一个face embedding功能,简单来说就是将人脸编码为128维向量,这个向量可以用来分类,聚类,相似度计算等等。Python 包
数据集介绍
image.png
数据准备
Dlib人脸特征提取
先安装python face_recognition 模块:
pip3 install face_recognition
使用方法,调用face_recognition 的 face_encodings 模块:
face_embedding = fr.face_encodings(img)
face_embedding里面包含了img中人脸的编码,如果检测到多个人脸的话会包含多个人脸编码特征。
Dlib 的这个模型是在LFW数据集上训练的,也可以用来进行人脸识别等,人脸比对等。
有了特征还需要对应的分类,list_attr_celeba.csv 中包含了celeba数据集中的各个属性的label,这里我们只使用Male和Smiling两个属性。
一个可以参考的数据准备脚本:
import os
import timeit
import cv2
from skimage import io as io