FPGA Based Hardware Design of PCA for Face Recognition

该文探讨了PCA(主成分分析)在硬件上的实现,用于人脸图像的降维和识别。通过Vivado HLS在FPGA上实现PCA算法,减少人脸识别数据库的维度并存储特征脸。实验中保留95%的方差,使用15个主成分。硬件利用率和性能分析表明,PCA硬件实现有望应用于实时人脸识别系统,如犯罪者识别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

摘要

  本文主要研究了目前最流行的线性无监督降维算法——主成分分析法(PCA)所需模块的硬件实现。利用主成分分析算法对数据库进行降维,其中存储了多幅人脸图像,用于人脸识别。此外,它还被用于查找应该用于在数据集中保留一定数量方差的特征面孔的总数。这些特征脸后来被用来确定一个新的输入的脸图像是否可以被识别。使用xcvu11p-flga2577-1-e装置,在Vivado HLS中完成了高级合成。这项工作的目的是使PCA技术成为一种便携式的人脸识别设备,用于实时应用,如识别罪犯。

1 引言

  用最简单的术语来说,机器学习可以被定义为一种研究领域,它使计算机能够在没有明确编程的情况下进行学习[1]。在涉及机器学习应用的分类任务问题中,往往存在大量的因素,最终的分类任务是在这些因素的基础上完成的。这些因素也被称为特征。有时候,我们需要处理的特征的数量可能会非常大,这使得我们很难将训练集可视化然后处理它[2]。此外,根据情况,这些特征中的一些可能在它们之间表现出高度的相关性[3]。在我们最终的分类任务中考虑所有这些特征可能没有好处,因为它们传达了冗余的信息。这就是降维发挥作用的地方。减少我们必须处理的数据集的维数也将减少系统[4]的内存需求。降维的一个直观例子可以用一个简单的机器学习问题来讨论——我们想用一个包含n个特征的训练集来预测土地的价格。假设其中两个特征,恰好是地块的长度和宽度。现在,如果地块碰巧是矩形的,那么我们可以使用单一的特征——地块的面积,而不是使用这两个特征。
  图1为一组具有一定长度和宽度的地块的二维空间点。PCA的降维算法就是找到一个新的一维空间这些点可以沿着这个空间进行投影以保持数据集中最大的方差。基本上,在这个问题中,它试图最小化这些点的投影误差。虚线表示新的一维空间,红色标记表示二维空间中特定点在这个新的一维空间上的投影。
在这里插入图片描述
  对所有点进行类似的处理,结果在一维空间上的投影如图2所示。
在这里插入图片描述
图2.点表示在新的一维空间上的投影

2 方法论

A.人脸图像表示

  为了应用PCA算法降维,首先取M幅图像的训练集,每幅图像的大小为p×pp×pp×p个像素,然后用大小为p2×1p^2×1p2×1的向量表示每幅图像。用□i□_ii 表示第i个图像向量。例如:设每幅图像的大小为3×3像素(p = 3),那么该假设图像的像素矩阵如图3所示。
在这里插入图片描述
图3.像素矩阵的假设图像大小为3x3像素
  现在将矩阵扁平化为一个向量,对所有的图像进行类似的处理。
在这里插入图片描述
图4.每个图像的扁平化向量

B.平均和平均中心人脸

  通过下面的程序计算平均的人脸图像
在这里插入图片描述
在这里插入图片描述
图5.平均人脸图像的计算
  每个人脸和平均脸的差ひI=Γi−μひ_I=Γ_i-μI=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值