前言
有关极限学习机基础知识请参考
极限学习机详解
目标
基于YALE人脸库,15组人脸(每组照片代表一个人),进行人脸分类识别。(下载地址:YALE人脸库)
将每类人脸前10张照片用于学习,第11张照片用于测试。测试第11张照片属于哪个组(人)。
思路
可以直接将ELM看做一个黑盒算法,将人脸图片转化为NUMPY数组加入到ELM中即可。
效果
代码
import hpelm
import numpy as np
import cv2
import os,re
imglist=[] #训练数据列表
step=10 #每种照片样本数
type_num=15 #种类数
file_dir='D:\IOFile\YALE' #照片路径
#读取照片
for tp_num in range(1,type_num+1):
for st_num in range(1,step+1):
add_pre=lambda x:'0'+str(x) if len(str(x))==1 else str(x) #加前缀
file_path = os.path.join(file_dir, 'subject{}_{}.bmp'.format(add_pre(tp_num),st_num))