摘要本文首先简要介绍了人脸识别技术的发展,随后详细讲述了特征脸方法,以及它的理论基础—PCA算法,接着又阐述了如何用特征脸方法实现人脸识别,并且使用JAVA语言实现了特征脸方法。最后用JAVA SWING设计了界面,完成了具有用户交互界面的人脸识别软件,并进行了功能测试。该人脸识别软件的主要功能有:(1)对训练图像集中的图像进行处理,显示出降文后的特征脸(2)使用者选择训练集以及测试图像,该软件将选出训练集中与测试图像最匹配的图像。25509
关键词 人脸识别 , Java , 特征脸算法 ,主成分分析 , swing,降文 毕业论文设计说明书外文摘要
Title Design and implementing a face recognition software using Java
Abstract
This paper briefly introduces the development of face recognition technology, followed by a detailed account of Eigenfaces, as well as its theoretical basis -PCA algorithm, then they explain how to use enginfaces recognition method implementation and use JAVA language characteristics face methods. Finally, complete with their user interface face recognition software, and functional testing. The main features of the face recognition software are: (1) set of training images for image processing, display the characteristic face dimensionality reduction (2) the user to select the training set and a test image, the software will select the training set and test image that best matches the image.
Keywords Face recognition , Java , Eigenfaces algorithm, Principal component analysis , Swing , Dimensionality reduction
目录
1 引言 1
1.1 人脸识别简介 1
1.1.1 人脸识别的类别 2
1.1.2 处理流程 2
1.1.3 人脸识别优尔大模块 3
1.2 本文的主要工作 4
1.3 本文内容安排 4
2 使用JAVA实现特征脸方法 5
2.1 特征脸方法 5
2.1.1 特征脸方法简介 5
2.1.2 特征脸算法的理论基础—主成分分析(PCA) 5
2.1.3 用特征脸实现人脸识别的步骤 6
2.1.4 特征脸算法 7
2.1.5 特征脸方法的局限性 8
2.2 JAVA实现特征脸算法以及与MATLAB的相互验证 9
2.2.1 java实现特征脸算法的程序设计 9
2.2.2 java实现特征脸算法的代码实现 10
2.2.3 与matlab的互相验证 18
3 系统总体设计和模块集成 21
3.1 软件需求分析 21
3.2 软件总体设计 21
3.3 系统用例图 21
3.4 系统界面设计 22
3.5 系统集成 24
4 程序运行结果和测试情况 26
4.1 主界面 26
4.2 选择文件以及目录测试 26
4.3 人脸识别测试 28
4.4 结果分析 30
结 论 31
致 谢 32
参 考 文 献 33
图2-1 最小二乘拟合线..5
图2-2 程序UML类图.9
图2-3 训练集.17
图2-4 使用java得到的特征脸.18
图2-5 测试图像..18
图2-6 使用matlab得到的特征脸..20
图 3-1 系统设计流程图.21
图3-2 系统用例图22
图3-3 软件界面类图.23