稳定调用及效果更好的API,详见视觉开放智能平台:人脸属性识别、表情识别。
人脸关键点置信度模型FLCM
FLCM为达摩院自研的关键点置信度算法,基于关键点的好坏来判断输入图片的质量,可以作为人脸识别系统中的拒识模块, 该方法的主要贡献是在目前的人脸关键点模型上引入了额外的Face Quality Estimator: 可以根据关键点的质量来生成对应的得分。
本模型可以检测输入图片中人脸的5点关键点和对应的人脸质量质量分
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
facial_landmark_confidence_func = pipeline(Tasks.face_2d_keypoints, 'damo/cv_manual_facial-landmark-confidence_flcm')
src_img_path = 'https://modelscope.oss-cn-beijing.aliyuncs.com/test/images/face_recognition_1.png'
raw_result = facial_landmark_confidence_func(src_img_path)
print('facial landmark confidence output: {}.'.format(raw_result))
# if you want to show the result, you can run
from modelscope.utils.cv.image_utils import draw_face_detection_result
from modelscope.preprocessors.image import LoadImage
import cv2
import numpy as np
# load image from url as rgb order
src_img = LoadImage.convert_to_ndarray(src_img_path)
# save src image as bgr order to local
src_img = cv2.cvtColor(np.asarray(src_img), cv2.COLOR_RGB2BGR)
cv2.imwrite('src_img.jpg', src_img)
# draw dst image from local src image as bgr order
dst_img = draw_face_detection_result('src_img.jpg', raw_result)
# save dst image as bgr order to local
cv2.imwrite('dst_img.jpg', dst_img)
# show dst image by rgb order
import matplotlib.pyplot as plt
dst_img = cv2.cvtColor(np.asarray(dst_img), cv2.COLOR_BGR2RGB)
plt.imshow(dst_img)
测试时主要的预处理如下:
以下是ModelScope上人脸相关模型:
序号 | 模型名称 |
---|---|
1 | RetinaFace人脸检测模型 |
2 | MogFace人脸检测模型-large |
3 | TinyMog人脸检测器-tiny |
4 | ULFD人脸检测模型-tiny |
5 | Mtcnn人脸检测关键点模型 |
6 | ULFD人脸检测模型-tiny |
序号 | 模型名称 |
---|---|
1 | 口罩人脸识别模型FaceMask |
2 | 口罩人脸识别模型FRFM-large |
3 | IR人脸识别模型FRIR |
4 | ArcFace人脸识别模型 |
5 | IR人脸识别模型FRIR |
序号 | 模型名称 |
---|---|
1 | 人脸活体检测模型-IR |
2 | 人脸活体检测模型-RGB |
3 | 静默人脸活体检测模型-炫彩 |
序号 | 模型名称 |
---|---|
1 | FLCM人脸关键点置信度模型 |
序号 | 模型名称 |
---|---|
1 | 人脸表情识别模型FER |
2 | 人脸属性识别模型FairFace |
本模型及代码来自达摩院自研技术。