【人脸朝向识别与分类预测】基于GRNN神经网络

**课题名称:**基于GRNN神经网络的人脸朝向识别分类

**版本日期:**2024-02-20

**运行方式:**直接运行GRNN0503.m文件

**代码获取方式:**私信博主或 企鹅号:491052175

模型描述

采集到一组人脸朝向不同角度时的图像,图像来自不同的10个人,每个人5幅图像,人脸的朝向分别是左方,左前方,前方,右前方,右方。通过观察不难法线,当人脸面朝不同方向时,眼睛在图像中的位置差别比较大.因此可以考虑将图片中描述眼睛位置的特征喜喜提取出来作为LVQ神经网络的输入,5个朝向分别用1,2,3,4,5表示,作为LVQ神经网络的输出。通过对训练集的图像进行训练,得到具有预测功能的网络,便可以对任意给出的人脸图像进行朝向判断和识别分类

算法流程:

1.人脸特征向量提取:如设计思路中所述,当人脸朝向不同时,眼睛在图像中的位置会有明显的差别。因此,只需要将描述人眼位置信息的特征向量提取出来即可。方法是将整幅图像划分成6行8列, 人眼的位置信息可以用第2行的8个子矩阵来描述(注意:针对不同大小的图像,划分的网格需稍作修改)边缘检测后8个子短阵中的值为"1"的像萦点个数与人脸朝向有直接关系, 只要分别统计出第2行的8个子短阵中的值为"1"的像素点个数即可。

2.训练集和测试集的产生:为了保证训练集数据的随机性,随机选取图像库中的30隔入脸图像提取出的特征向量作为训练集数据,剩余的20幅人脸图像提取出来的特征向盘作为测试集数据。

3.GRNN神经网络创建:利用函数newgrnn和径向基的传递值创建神经网络

4.GRNN网络训练:GRNN没有网络训练步骤,直接创建后进行预测

5.人脸识别测试:网络训练收敛后,便可以对测试集数据进行预测,即对测试集的图像进行人脸朝向识别.对于任意给出的图像,只需要将其特征向量提取出来,便可对其进行识别。

GRNN神经网络调用格式:

% net=newgrnn(P,T,SPREAD),其中, P为Q 组输入向量组成的R*Q维矩阵; T为Q组目标分类向量组成的S*Q维矩阵;SPREAD为径向基函数的扩展速度,默认值为1

**改进方向:**无

待改进方向:

  1. 因为训练数据比较少,为了提高预测精度,通过交叉验证并不断迭代寻找最佳的SPREAD值,最后应用于PNN神经网络里。相比于固定的SPREAD值而言,自适应求解SPREAD值的方式可以更好地提高预测精度

特殊说明:

  1. 经过测试,对训练和测试数据进行归一化,反而降低了预测精度

  2. GRNN神经网络不同于BP神经网络需要训练,GRNN神经网络直接用训练数据构建网络,其预测精度取决于训练数据的质量和径向基函数的拓展速度,默认值为1

  3. 神经网络每一次的预测结果都不相同,为了得到更好的结果,建议多次运行取最佳值

Matlab仿真结果:

基于GRNN神经网络的人脸朝向识别精确率:

基于GRNN神经网络的人脸朝向识别分类结果:

基于GRNN神经网络的人脸朝向识别分类预测误差:

相关推荐
AAD555888999 小时前
YOLO11-EfficientRepBiPAN载重汽车轮胎热成像检测与分类_3
人工智能·分类·数据挖掘
Dev7z12 小时前
基于 MATLAB 的铣削切削力建模与仿真
开发语言·matlab
fengfuyao98514 小时前
基于MATLAB的表面织构油润滑轴承故障频率提取(改进VMD算法)
人工智能·算法·matlab
机器学习之心14 小时前
基于随机森林模型的轴承剩余寿命预测MATLAB实现!
算法·随机森林·matlab
rit843249916 小时前
基于MATLAB的环境障碍模型构建与蚁群算法路径规划实现
开发语言·算法·matlab
hoiii18716 小时前
MATLAB SGM(半全局匹配)算法实现
前端·算法·matlab
小徐xxx17 小时前
Softmax回归(分类问题)学习记录
深度学习·分类·回归·softmax·学习记录
yong999017 小时前
MATLAB面波频散曲线反演程序
开发语言·算法·matlab
AAD5558889917 小时前
YOLOv8-MAN-Faster电容器缺陷检测:七类组件识别与分类系统
yolo·分类·数据挖掘
JicasdC123asd17 小时前
【工业检测】基于YOLO13-C3k2-EIEM的铸造缺陷检测与分类系统_1
人工智能·算法·分类