0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Opencv人脸识别的制作

454398 来源:wv 2019-10-13 17:04 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:您需要的东西

Opencv人脸识别的制作

1.RASPBERRY PI

2.ARDUINO UNO/NANO

3.16x2 LCD显示屏

4.RASPI-CAMERA/WEBcam(我更喜欢使用网络摄像头以获得更好的效果)

Step 2:Opencv简介和安装

OpenCV(开源计算机视觉库)是一个非常有用的库-它提供了许多有用的功能,例如文本识别,面部识别,对象检测,深度图的创建和机器学习

本文将向您展示如何在Raspberry Pi上安装Opencv和其他库,这将在进行对象检测和其他项目时派上用场。从那里,我们将学习如何通过执行对象识别和机器学习项目来执行图像和视频操作。具体来说,我们将编写一个简单的代码来检测图像中的人脸。

什么是OpenCV?

OpenCV是一种开放源代码的计算机视觉和机器学习软件库。 OpenCV是在BSD许可下发布的,可免费用于学术和商业用途。它具有C ++,PythonJava接口,并支持Windows,Linux,Mac OS,iOSAndroid。 OpenCV旨在提高计算效率并着重于实时应用。

如何在Raspberry Pi上安装OpenCV?

要安装OpenCV,我们需要安装Python。由于Raspberry Pis已预装Python,因此我们可以直接安装OpenCV。

键入以下命令,以确保您的Raspberry Pi是最新的,并将Raspberry Pi上已安装的软件包更新为最新版本。

sudo apt-get更新

sudo apt-get升级

在终端中键入以下命令以安装所需的软件包在树莓派上使用OpenCV。 》

键入以下命令以在Raspberry Pi上安装适用于Python 3的OpenCV 3,pip3告知我们将为Python 3安装OpenCV。/p》

sudo pip3安装opencv-contrib-python libwebp6

现在,OpenCV应该被安装。

(如果发生任何错误:您仍然可以通过以下链接进行操作

https://www.instructables.com/id/Raspberry-Pi-Hand 。..)

现在不要着急,我们需要检查它是否已正确安装

通过以下方法测试您的opencv:

1.go到终端并键入“ python”

2。然后键入“ import cv2”。

3。然后键入“ cv2 .__ version __”。

然后安装这些库

pip3安装python-numpy

pip3安装python-matplotlib

测试代码以检测图像中的人脸:

导入cv2

faceCascade = cv2.CascadeClassifier(“ haarcascade_frontalface_default.xml”);

image = cv2.imread(‘您的文件名’) #example-》 cv2.imread(‘home/pi/Desktop/filename.jpg’)

您将获得像正方形盒子一样的输出形成在照片中人的脸上e。

步骤3:在实时视频中检测和识别人脸

导入cv2

将numpy导入为np

导入操作系统

导入序列

ser = serial.Serial(‘/dev/ttyACM0’,9600,timeout = 1) #/dev/ttyACM0可能根据您的情况而定,取决于arduino

cascadePath =“ haarcascade_frontalface_default.xml”

faceCascade = cv2.CascadeClassifier(cascadePath)

识别= cv2.face.createLBPHFaceRecognizer()

结果

images = []

labels = []

im = cv2.imread(‘数据集/’+文件名,0)

images.append(im)

labels.append(int(filename.split(‘。’)[0] [0]))

#打印文件名

nam es_file =开放( ‘labels.txt’)

名= names_file.read()。分裂( ‘ n’)

recognizer.train(images,np.array(labels))

打印“培训完成”。 。 。 ‘

font = cv2.FONT _

HERSHEY_SIMPLEXcap = cv2.VideoCapture(1)#您的视频设备

lastRes =’‘count = 0

while(1):

_,frame = cap.read()

gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)

面孔= faceCascade.detectMultiScale(gray,1.3,5)

count + = 1

为(x,y,w, h):

cv2.rectangle(frame,(x,y),(x + w,y + h),(255,0,0),2 )

如果计数》 20:res = names [recognizer.predict(gray [y:y + h,x:x + w])-1]

如果res!= lastRes:

lastRes = res

打印lastRes

ser.write(lastRes)

计数= 0

打破

cv2 .imshow(’frame‘,frame)

k = 0xFF&cv2。 waitKey(10)

如果k == 27:

中断

的 cap.release()

ser.close()

cv2.destroyAllWindows()

步骤4:运行代码

1。下载上一步中随附的文件

2。将灰色照片(6张图像/样本。..。.)复制到数据集文件夹

1.Tom Cruise-》 1_1,1_2,1_3,1_4,1_5, 1_6 (用于更多打开的数据集文件夹的数据集图像编号)

2。布拉德·皮特(Brad Pitt)-》 2_1,2_2,2_3,2_4,2_5,2_6

3。利奥---》 3_1,3_2,3_3,3_4,3_5,3_6

4。铁人三项 - 》 4_1,4_2,4_3,4_4,4_5,4_6

结果

像上面一样,您可以为各个人添加标签

因此,如果pi检测到1_1中的人脸, 1_2,1_3,1_4,1_5,1_6,然后它被标记为汤姆·克鲁斯(Tom Cruise),所以在上传照片时请小心。

,然后将您的arduino连接到树莓派并在main.py代码中进行更改。ser= serial.Serial(’/dev/ttyACM0‘,9600,timeout = 1)3.put所有下载的文件(main.py,dataset文件夹,haarcascade_frontalface_default.xml在一个文件夹中。)

3。现在打开Raspi终端,通过“ sudo python main.py”运行您的代码

4.arduino LCD将显示检测到的面部名称

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人脸识别
    +关注

    关注

    77

    文章

    4118

    浏览量

    87805
  • OpenCV
    +关注

    关注

    33

    文章

    651

    浏览量

    44441
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于AIK-RA8D1的人脸识别的应用演示

    与Aizip人脸识别技术结合,实现高效且低功耗的人脸识别应用。人脸识别的优势传统的密码验证方式存
    的头像 发表于 12-02 14:29 4027次阅读
    基于AIK-RA8D1的<b class='flag-5'>人脸</b><b class='flag-5'>识别的</b>应用演示

    使用瑞萨RA8D1开发板实现人脸识别的应用演示

    随着科技的进步,人脸识别技术已逐渐成为一种主流的安全验证手段。它不依赖传统的密码,而是通过面部特征识别来验证身份,从而提升了安全性并带来了更大的便利性。本文将介绍如何通过瑞萨RA8D1微控制器与Aizip
    的头像 发表于 10-14 10:58 3667次阅读
    使用瑞萨RA8D1开发板实现<b class='flag-5'>人脸</b><b class='flag-5'>识别的</b>应用演示

    人脸识别身份核验终端的应用场景和硬件要求有哪些?

    公楼、小区、学校等场所,人脸识别身份核验终端用于门禁控制,只有通过识别的授权人员才能进入,有效防止未经授权的人员进入,提高场所的安全性。监控与追踪:在公共场所如机场、车站
    的头像 发表于 08-27 11:22 471次阅读
    <b class='flag-5'>人脸</b><b class='flag-5'>识别</b>身份核验终端的应用场景和硬件要求有哪些?

    如何挑选人脸识别终端?人脸识别一体机品牌排行榜

    挑选人脸识别终端时需要注意稳定性、人脸识别算法可靠性、兼容性、安全性、软件管理、维护与安装以及产品外观与价格等多个因素。另外,在挑选人脸
    的头像 发表于 08-18 10:44 1604次阅读
    如何挑选<b class='flag-5'>人脸</b><b class='flag-5'>识别</b>终端?<b class='flag-5'>人脸</b><b class='flag-5'>识别</b>一体机品牌排行榜

    零成本钢铁侠手套!树莓派+OpenCV 秒变手势遥控器!

    使用树莓派和OpenCV实时扫描并存储二维码使用树莓派和OpenCV实现物体与动物识别使用树莓派、摄像头和OpenCV进行速度检测用树莓派+Open
    的头像 发表于 08-16 16:16 897次阅读
    零成本钢铁侠手套!树莓派+<b class='flag-5'>OpenCV</b> 秒变手势遥控器!

    如何使用树莓派与OpenCV实现面部和运动追踪的云台系统?

    使用树莓派和OpenCV实时扫描并存储二维码使用树莓派和OpenCV实现物体与动物识别使用树莓派、摄像头和OpenCV进行速度检测用树莓派+Open
    的头像 发表于 08-14 17:45 988次阅读
    如何使用树莓派与<b class='flag-5'>OpenCV</b>实现面部和运动追踪的云台系统?

    用树莓派 + OpenCV 打造人脸识别技术!

    在本指南中,我们将教您如何使用OpenCV和面部识别库(两个出色的开源项目)设置树莓派来检测和识别面部。在这个设置中,所有的数据和处理都将在Pi上本地执行,这意味着您的所有面部和数据都不会离开Pi
    的头像 发表于 07-29 17:27 1043次阅读
    用树莓派 + <b class='flag-5'>OpenCV</b> 打造<b class='flag-5'>人脸</b><b class='flag-5'>识别</b>技术!

    人脸方向识别算法

    人脸识别
    深蕾半导体
    发布于 :2025年07月22日 09:58:29

    【Milk-V Duo S 开发板免费体验】SDK编译、人脸检测、OpenCV测试

    【Milk-V Duo S 开发板免费体验】SDK编译、人脸检测、OpenCV测试 本文介绍了 Milk-V Duo S 开发板实现 Buildroot SDK 镜像编译、基于 TDL 模型的人脸
    发表于 07-11 13:48

    基于LockAI视觉识别模块:C++人脸识别

    基本知识讲解 1.1 人脸识别简介 人脸识别是一种利用人的脸部特征进行身份识别的生物识别技术。
    发表于 07-01 12:01

    基于LockAI视觉识别模块:C++人脸识别

    本文基于RV1106做成的LockAI视觉识别模块,采用LZ-Picodet模型训练的人脸检测模型LZ-Face,以及ArcFace人脸识别模型,实现
    的头像 发表于 07-01 10:09 540次阅读
    基于LockAI视觉<b class='flag-5'>识别</b>模块:C++<b class='flag-5'>人脸</b><b class='flag-5'>识别</b>

    有些人脸识别身份核验终端为什么晚上用不了?

    无论是身份证人脸识别身份核验终端、刷脸核验一体机还是人脸识别门禁考勤一体机,它都涉及到人脸识别
    的头像 发表于 05-10 09:42 1034次阅读
    有些<b class='flag-5'>人脸</b><b class='flag-5'>识别</b>身份核验终端为什么晚上用不了?

    【幸狐Omni3576边缘计算套件试用体验】人脸识别

    【幸狐Omni3576边缘计算套件试用体验】人脸识别 本文介绍了幸狐 Omni3576 边缘计算套件结合 Retinaface 算法实现人脸特征识别的项目设计和部署方案。 算法介绍
    发表于 04-01 21:46

    使用OpenVINO™模型的OpenCV进行人脸检测,检测到多张人脸时,伺服电机和步入器电机都发生移动是为什么?

    使用OpenVINO™模型的 OpenCV* 进行人脸检测。 使用 cv2.矩形 函数,能够获取检测到的面部的坐标。 检测到多张人脸时,多个坐标被捕获到,伺服电机和步入器电机都发生移动。
    发表于 03-07 06:35