基于OPENCV的相机捕捉视频进行人脸检测--米尔NXP i.MX93开发板

发布者:EE小广播最新更新时间:2024-11-07 来源: EEWORLD关键字:米尔电子  OPENCV  相机  人脸检测  米尔  NXP  开发板 手机看文章 扫描二维码
随时随地手机看文章

本文将介绍基于米尔电子MYD-LMX93开发板(米尔基于NXP i.MX93开发板)的基于OpenCV的人脸检测方案测试。


OpenCV提供了一个非常简单的接口,用于相机捕捉一个视频(我用的电脑内置摄像头)


1、安装python3-opencv


apt install python3-opencv


2、查看摄像头支持的格式与分辨率


root@debian:~# v4l2-ctl --device=/dev/video0 --list-formats-ext

image.png?imageView2/2/w/550


经测试,只能支持640*480

为此建立opencv_test.py

import cv2

video = cv2.VideoCapture(0)

设置相机参数

video .set(cv2.CAP_PROP_FRAME_WIDTH, 1280)

video .set(cv2.CAP_PROP_FRAME_HEIGHT, 720)

while True:

ret, frame = video.read()

cv2.imshow('A video', frame)

c = cv2.waitKey(1)

if c == 27:

    breakvideo.release()cv2.destroyAllWindows()


保存后执行”python3 opencv_test.py


image.png?imageView2/2/w/550


OpenCV装好后,可以为后面的人脸检测提供可行性。


要实现人脸识别功能,首先要进行人脸检测,判断出图片中人脸的位置,才能进行下一步的操作。


OpenCV人脸检测方法


在OpenCV中主要使用了两种特征(即两种方法)进行人脸检测,Haar特征和LBP特征。用得最多的是Haar特征人脸检测,此外OpenCV中还集成了深度学习方法来实现人脸检测。


【参考资料】


使用OpenCV工具包成功实现人脸检测与人脸识别,包括传统视觉和深度学习方法(附完整代码,模型下载......)_opencv人脸识别-CSDN博客


【Haar级联检测器预训练模型下载】


opencv/opencv: Open Source Computer Vision Library (github.com)

下载好的,在opencv-4.xdatahaarcascades文件夹下有模型,把他上传到开发板。


【获取检测人脸的图片】


我在百度上找到了**的图片,并把它也上传到开发板。


【编写检测代码】


import numpy as np

import cv2 as cv


if __name__ == '__main__':

# (6) 使用 Haar 级联分类器 预训练模型 检测人脸

# 读取待检测的图片

img = cv.imread('yanmi.jpg?imageView2/2/w/550')

print(img.shape)


    # 加载 Haar 级联分类器 预训练模型

model_path = 'haarcascade_frontalface_alt2.xml'

face_detector = cv.CascadeClassifier(model_path)  #

# 使用级联分类器检测人脸

faces = face_detector.detectMultiScale(img, scaleFactor=1.1, minNeighbors=1,

                minSize=(30, 30), maxSize=(300, 300))

print(faces.shape)  # (17, 4)

print(faces[0])  # (x, y, width, height)


# 绘制人脸检测框

for x, y, width, height in faces:

cv.rectangle(img, (x, y), (x + width, y + height), (0, 0, 255), 2, cv.LINE_8, 0)

# 显示图片

cv.imshow('faces', img)

cv.waitKey(0)

cv.destroyAllWindows()


【实验效果】


运行程序后,可以正确地识别,效果如下:


image.png?imageView2/2/w/550


作者:与非网:eefocus 3914144


关键字:米尔电子  OPENCV  相机  人脸检测  米尔  NXP  开发板 引用地址:基于OPENCV的相机捕捉视频进行人脸检测--米尔NXP i.MX93开发板

上一篇:英飞凌SECORA™ Pay Bio增强非接触式生物识别支付的便利性和可信度
下一篇:FacenetPytorch人脸识别方案--基于米尔全志T527开发板

小广播
最新物联网文章
厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved