前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >人脸检测

人脸检测

作者头像
裴来凡
发布2022-05-29 09:39:33
2.3K0
发布2022-05-29 09:39:33
举报
文章被收录于专栏:图像处理与模式识别研究所
代码语言:javascript
复制
from mtcnn.mtcnn import MTCNN
import cv2
img=cv2.imread("C:/Users/xpp/Desktop/Lena.png")#读取图像
detector=MTCNN()
face_list=detector.detect_faces(img)#人脸检测与对齐
for face in face_list:
    box=face["box"]
    confidence=face["confidence"]
    keypoints=face["keypoints"]  
    #边界框
    x,y,w,h=box
    cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),2)    
    #置信度
    cv2.putText(img,str(round(confidence,4)),(x,y-10),0,0.5,(255,0,0))    
    #关键点
    cv2.circle(img,keypoints["left_eye"],1,(0,0,255),2)
    cv2.circle(img,keypoints["right_eye"],1,(0,0,255),2)
    cv2.circle(img,keypoints["nose"],1,(0,0,255),2)
    cv2.circle(img,keypoints["mouth_left"],1,(0,0,255),2)
    cv2.circle(img,keypoints["mouth_right"],1,(0,0,255),2)
cv2.imwrite("C:/Users/xpp/Desktop/result.png",img)

算法:人脸检测是将人脸区域检测与人脸关键点检测放在了一起,它的主题框架类似于cascade。总体可分为P-Net、R-Net、和O-Net三层网络结构。

  • P-Net:Proposal Net,实现人脸候选框提取
  • R-Net:Refine Net,在P-Net输出结果的基础上进一步去除错误的候选框
  • O-Net:Output Net,与R-Net类似,最终输出人脸bounding box以及landmark

文献:Zhang, K. , Zhang, Z. , Li, Z. , & Qiao, Y. . (2016). Joint face detection and alignment using multitask cascaded convolutional networks. IEEE Signal Processing Letters, 23(10), 1499-1503.

链接:https://pypi.org/project/mtcnn/

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 图像处理与模式识别研究所 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
人脸识别
腾讯云神图·人脸识别(Face Recognition)基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、比对、搜索、验证、五官定位、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。 可应用于在线娱乐、在线身份认证等多种应用场景,充分满足各行业客户的人脸属性识别及用户身份确认等需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档