fmkf module

class fmkf.fmkf(model_path='')

基类:object

  • model_path: faceNet 模型文件路径

face mtcnn keras facenet 整合类 需要扩展

  • Keras 2.4.3,

  • matplotlib 3.3.1,

  • mtcnn 0.1.0,

  • numpy 1.18.5,

  • sklearn 0.0,

  • tensorflow 2.3.0,

  • opencv-python 3.4.3.18,

参考文章<https://www.infoq.cn/article/4wT4mNvKlVvEQZR-JXmp>

assessmentModel(embedding_path)
模型评估,必须含有测试数据,才能调用这个模型评估,如果文件中只有训练数据,无法正常运行
  • embedding_path:人脸嵌入数据集合文件路径

dataset2embedding(dataset_path, test=False)
人脸像素数据集转成人脸嵌入数据
  • dataset_path:数据集路径

  • test:数据集中如果含有测试数据集,请把test数据集也转成嵌入数据

extract_face(filename, required_size=160, 160)
通过MTCNN获取图片中人脸,提取人脸,并且重置大小
  • filename:图片路径

  • required_size:元组,调整后的人脸图片大小

get_embedding(face_pixels)
把人脸像素信息转成人脸嵌入向量信息
  • face_pixels:人脸像素集合

imgCheckFace(img_path, save=True, show=True, save_path='')
检测出图片中的人脸,框出人脸,保存框出人脸后的图片;
  • img_path:含有人脸的图片路径;

  • save:是否保存框出人脸后的图片;

  • show:使用通过matplotlib展示框出人脸后的图片;

  • save_path:处理后的图片保存路径,默认保存到image_path目录下;

load_dataset(directory)
加载数据集
  • directory:加载训练数据的目录

load_faces(directory)
获取路径中的人脸图片,并提取图片
  • directory:含有人脸的图片集合路径

recognition(face_img_path, embedding_path, show=True, recognition_low=65)
识别传入图片
  • face_img_path:待识别的图片

  • embedding_path:人脸嵌入数据

  • show:是否通过matplotlib.pyplot展示识别后的图片

  • recognition_low:最低识别百分比。低于这个值返回无法识别

showImageFace(folder)
提取路径中所有图片的人脸,并且通过matplotlib.pyplot 展示出来
  • folder:图片集合路径

testRecognition(dataset_path, embedding_path)
通过数据集对模型评估
  • dataset_path:数据集路径

  • embedding_path:人脸嵌入数据集路径

fmkf.showtime(func)

打印运行时间,作为装饰器使用