更新时间:11-10 上传会员:狂奔的小猪
分类:工业大学 论文字数:16630 需要金币:2000个
摘要:人脸检测与识别的相关研究在早些年就已经开始,它是通过采集对象的面部特征信息,再经过系统演算对比,判断是否和人脸库匹配,来达到核实身份的目的。近些年以来,随着信息化与智能化的发展,人脸识别技术得到了快速发展。尤其是智能门禁系统、计算机登录身份验证、移动通讯设备的解锁、刷脸支付以及视频监控中表现更为突出。
本论文设计了一个基于机器学习的人脸识别系统,软件上使用Python语言编程,可利用计算机摄像头完成人脸识别;硬件上是基于Jetson Nano嵌入式开发板完成的人脸识别系统设计。
在软件设计中,首先,使用计算机摄像头拍摄人脸图片并保存在人脸库。然后,在PyCharm的编译环境下,创建工程文件,采用Python编程语言,并利用OpenCV计算机视觉库和face_recognition人脸识别库来完成程序的编写。最后调用计算机摄像头完成图片以及视频中的人脸检测与识别并标注姓名功能。在硬件设计上,采用了基于Jetson Nano嵌入式开发板的人脸识别系统设计,首先,以嵌入式开发板为主体,辅以摄像头、显示器、键盘和鼠标等配件来完成实验平台的搭建。然后,配置Jetson Nano的环境以及相关资源下载。最后,调取外接摄像头完成人脸识别。
本设计从软硬件两方面,完成了对图片中的人脸识别,以及对视频中的人脸识别。同时,完成了对于单人和多人的人脸识别。最后,从角度、光线、眼镜、遮挡等因素,分析了它们对本设计人脸识别成功率的影响。
关键词:人脸识别,机器学习,OpenCV,嵌入式开发板
目录
摘要
Abstract
第1章 绪论-7
1.1 课题研究背景与意义-7
1.2 课题现状及发展趋势-7
1.2.1 国外发展现状-7
1.2.2 国内发展现状-8
1.3 课题研究内容-9
1.4 本章小结-9
第2章 基于机器学习的人脸识别系统原理-10
2.1 人脸识别系统设计原理-10
2.2 OpenCV 简介-10
2.2.1 OpenCV介绍与安装-10
2.2.2 OpenCV各个模块简析-11
2.3 face_recognition 简介-11
2.3.1 face_recognition 介绍与安装-11
2.3.2 face_recognition人脸识别原理-12
2.3.3 face_recognition各个函数简析-13
2.4 本章小结-14
第3章 基于机器学习的人脸识别仿真-15
3.1 人脸库图片显示-15
3.2 摄像头捕捉-15
3.3 人脸检测与标注-16
3.4 图片中的人脸识别-16
3.4.1 样例图片及编码-16
3.4.2 实验验证-17
3.5 视频中的人脸识别-18
3.5.1 准备人脸库-18
3.5.2 识别位置与编码-20
3.5.3 标记姓名与展示-21
3.5.4 实验数据验证-22
3.5.5 多人视频人脸识别-23
3.6 本章小结-25
第4章 基于Jetson Nano的人脸识别系统设计-26
4.1 Jetson Nano简介-26
4.1.1 Jetson Nano嵌入式开发板-26
4.1.2 Jetson Nano接口-26
4.1.3 Jetson Nano配件-27
4.2 基于Jetson Nano的人脸识别系统设计-29
4.2.1 基于Jetson Nano的人脸识别系统流程图-29
4.2.2 各模块功能概述-30
4.3 实验开展-31
4.3.1 实验平台搭建-31
4.3.2 Jetson Nano配置-32
4.3.3 采集人脸-33
4.3.4 创建工程文件-34
4.3.5 实验验证-34
4.4 实验结果分析-36
4.4.1 角度对人脸识别的干扰-36
4.4.2 光线对人脸识别的干扰-38
4.4.3 眼镜对人脸识别的干扰-39
4.4.4 遮挡对人脸识别的干扰-40
4.4.5 系统运行状况分析-42
4.5 本章小结-43
第5章 总结与展望-44
5.1 全文总结-44
5.2 课题展望-44
参考文献-46
致 谢-49
