窝牛号

使用深度学习opencv 进行人脸年龄的实时检测

往期的文章我们分享了人脸的识别以及如何进行人脸年龄的检测,本期文章我们结合人脸识别的

模型进行人脸年龄的实时检测

人脸年龄的检测步骤

0、打开摄像头,获取图片数据

1、对图片进行人脸的检测

2、把检测到的人脸数据给年龄检测模型去检测

3、把检测结果实时呈现到图片上

import numpy as np import cv2 import os AGE_LIST = [&34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;] prototxtFacePath = &34; weightsFacePath = &34; faceNet = cv2.dnn.readNet(prototxtFacePath, weightsFacePath) prototxtAgePath = &34; weightsAgePath = &34; ageNet = cv2.dnn.readNet(prototxtAgePath, weightsAgePath)

初始化模型年龄段,由于模型是按照年龄段来进行训练的,当然你也可以使用大量的数据,进行更准确的年龄模型训练

然后cv2.dnn.readNet加载人脸识别的模型,可参考往期文章

顺便在这里介绍一下由人工智能研究所出品的专栏,人工智能目标检测与目标追踪

有兴趣的小伙伴们可以一起探讨学习

最后cv2.dnn.readNet加载人脸年龄的模型

与图片识别不一样的是,若需要实时识别,需要打开摄像头,进行图片的实时显示与识别

capture = cv2.VideoCapture() time.sleep(2.0)

capture = cv2.VideoCapture() 这行代码便打开电脑配置的默认摄像头,当打开后,稍微延时,等待摄像头的打开,摄像头打开后,便可以获取视频帧的图片

while True: ret, frame = capture.read() frame = cv2.resize(frame, (400*600)) results = predict_age(frame, faceNet, ageNet) 34;{}: {:.2f}%&34;age&34;age&34;loc&34;Frame&34;q&获取图片尺寸 blob = cv2.dnn.blobFromImage(frame, 1.0, (300, 300),(104.0, 177.0, 123.0))人脸检测 detections = faceNet.forward() for i in range(0, detections.shape[2]):判断大于0.5置信度的人脸 box = detections[0, 0, i, 3:7] * np.array([w, h, w, h]) (startX, startY, endX, endY) = box.astype(&34;) face = frame[startY:endY, startX:endX]小的人脸忽略 faceBlob = cv2.dnn.blobFromImage(face, 1.0, (227, 227),(78.4263377603, 87.7689143744, 114.895847746),swapRB=False) ageNet.setInput(faceBlob) preds = ageNet.forward()34;loc&34;age&获取人脸的坐标数据,以及人脸的年龄数据 return results

文章中提供的模型,年龄检测是一个阶段的检测,若想得到更精确的年龄检测,需要大量的数据进行计算训练,当然,小伙伴们也可以使用人工智能研究所出品的:

小程序:AI人工智能工具

来进行人脸更多属性的检测

法格/fagor半导体MINI空调扇

1、TEC半导体制冷技术,即开即凉,出风口温度控制在±25°C,降温可达7-±9°C,复合净化室内空气;

2、人性化设置,25°C是人体、思维同时处于舒适状态;

3、纳米级微雾加湿,冰凉不干燥,

4、三种风感,风量张弛有度;

5、噪音低至≤60dB,安睡自如;

6、重量仅1.2kg,任意搬动,租房党非常适合~

7、空气滤芯,吸附空气中的杂质;

8、三档模式:制冷、加湿、干燥;

9、低功耗,省电,夏天制冷不心疼

人脸检测

关于人脸性别的检测,我们下期分享!

本站所发布的文字与图片素材为非商业目的改编或整理,版权归原作者所有,如侵权或涉及违法,请联系我们删除

窝牛号 wwww.93ysy.com   沪ICP备2021036305号-1