Mac人脸检测-MTCNN

根据这篇文章复现学习的
mtcnn 原理
有些 jpg 能识别,但也有一些图片不能,显示那个画矩形框的 I 没定义。不知道为啥…

#一张图片内的人脸识别
from mtcnn.mtcnn import MTCNN
import cv2

#这里 mac 的路径得 copy absolute path
img = cv2.imread("/Users/sinkarsenic/PycharmProjects/masklearn/IMG_1386.JPG")
detector = MTCNN()
face = detector.detect_faces(img)
print(face)

#这里比原来加了个 for 循环,可以整多个人头了
l = len(face)
for i in range(l-1):
 face1 = face[i]
#画矩形框
 box = face1["box"]

 I = cv2.rectangle(img, (box[0],box[1]),(box[0]+box[2], box[1]+box[3]), (255, 0, 0), 2)

#画关键点
 left_eye = face1["keypoints"]["left_eye"]
 right_eye = face1["keypoints"]["right_eye"]
 nose = face1["keypoints"]["nose"]
 mouth_left = face1["keypoints"]["mouth_left"]
 mouth_right = face1["keypoints"]["mouth_right"]

 points_list = [(left_eye[0], left_eye[1]),
               (right_eye[0], right_eye[1]),
               (nose[0], nose[1]),
               (mouth_left[0], mouth_left[1]),
               (mouth_right[0], mouth_right[1])]
 for point in points_list:
  cv2.circle(I, point, 1, (255, 0, 0), 4)


#保存

cv2.imwrite('result1.jpg',I,[int(cv2.IMWRITE_JPEG_QUALITY),70])

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sink Arsenic

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值