insightface提取embedding

最近在复现一篇文章(Mate Portrait)的训练模型,需要自己提取人脸的特征向量,按照作者给的参考,用insightface提取。

1. 安装

安装MXNex:insightface时基于MXNet框架开发的

pip install mxnet-cu101 # 如果有GPU
pip install mxnet # 如果没有GPU

安装opencv

pip install opencv-contrib-python

安装onnxruntime

pip install onnxruntime-gpu

安装insightface

pip install insightface

2. 提取embedding

一个坑:cv2不能读png,所以不要用png图片

如果图片是256*256,那么embedding是长度为512的向量。

import insightface
import cv2

model = insightface.app.FaceAnalysis()
model.prepare(ctx_id=0, det_thresh=0.45)
face_img = cv2.imread('/home/wyw/tes_imgs/src_0.jpg')
res = model.get(face_img)
print('embedding: ', res[0].embedding) 
print('embedding size: ', res[0].embedding.size) 

你可能感兴趣的:(embedding,python,人工智能,人脸识别)