稳定调用及效果更好的API,详见视觉开放智能平台:人脸检测与五官定位。
轻量级人脸检测模型TinyMog
本模型基于Nas搜索出来的backone + scrfd-0.5G的head module 和FPN结构。
本模型可以检测输入图片中人脸的位置。
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
tinymog_face_detection_func = pipeline(Tasks.face_detection, 'damo/cv_manual_face-detection_tinymog')
src_img_path = 'https://modelscope.oss-cn-beijing.aliyuncs.com/test/images/mog_face_detection.jpg'
raw_result = tinymog_face_detection_func(src_img_path)
print('face detection output: {}.'.format(raw_result))
# if you want to show the result, you can run
from modelscope.utils.cv.image_utils import draw_face_detection_no_lm_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_no_lm_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)
测试时主要的预处理如下:
模型在WiderFace的验证集上客观指标如下:
Method | Easy | Medium | Hard |
---|---|---|---|
TinyMog | - | - | - |
以下是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 |
本模型及代码来自达摩院自研技术
如果你觉得这个该模型对有所帮助,请考虑引用下面的相关的论文: