-
大小: 33.96MB文件类型: .zip金币: 1下载: 0 次发布日期: 2023-07-28
- 语言: 其他
- 标签: olivettiface 人脸识别
资源简介
本文档是CNN卷积神经网络,用TensorFlow、Kreas两个框架对olivettifaces人脸数据集进行识别
代码片段和文件信息
# -*- coding:utf-8 -*-
# -*- author:zzZ_CMing CSDN address:https://blog.csdn.net/zzZ_CMing
# -*- 2018/06/05;11:41
# -*- python3.5
“““
olivetti Faces是纽约大学组建的一个比较小的人脸数据库。有40个人,每人10张图片,组成一张有400张人脸的大图片。
像素灰度范围在[0255]。整张图片大小是1190*942,20行320列,所以每张照片大小是(1190/20)*(942/20)= 57*47
程序需配置h5py:python -m pip install h5py
博客地址:https://blog.csdn.net/zzZ_CMing,更多机器学习源码
“““
import numpy as np
from PIL import Image
from keras.models import Sequential
from keras.layers import Dense Dropout Activation Flatten
from keras.layers import Conv2D MaxPooling2D
from keras.optimizers import SGD # 梯度下降的优化器
from keras.utils import np_utils
from keras import backend as K
# 读取整张图片的数据,并设置对应标签
def get_load_data(dataset_path):
img = Image.open(dataset_path)
# 数据归一化。asarray是使用原内存将数据转化为np.ndarray
img_ndarray = np.asarray(img dtype = ‘float64‘)/255
# 400 pictures size: 57*47 = 2679
faces_data = np.empty((400 2679))
for row in range(20):
for column in range(20):
# flatten可将多维数组降成一维
faces_data[row*20+column] = np.ndarray.flatten(img_ndarray[row*57:(row+1)*57 column*47:(column+1)*47])
# 设置图片标签
label = np.empty(400)
for i in range(40):
label[i*10:(i+1)*10] = i
label = label.astype(np.int)
# 分割数据集:每个人前8张图片做训练,第9张做验证,第10张做测试;所以train:320valid:40test:40
train_data = np.empty((320 2679))
train_label = np.empty(320)
valid_data = np.empty((40 2679))
valid_label = np.empty(40)
test_data = np.empty((40 2679))
test_label = np.empty(40)
for i in range(40):
train_data[i*8:i*8+8] = faces_data[i*10:i*10+8] # 训练集对应的数据
train_label[i*8:i*8+8] = label[i*10 : i*10+8] # 训练集对应的标签
valid_data[i] = faces_data[i*10+8] # 验证集对应的数据
valid_label[i] = label[i*10+8] # 验证集对应的标签
test_data[i] = faces_data[i*10+9] # 测试集对应的数据
test_label[i] = label[i*10+9] # 测试集对应的标签
train_data = train_data.astype(‘float32‘)
valid_data = valid_data.astype(‘float32‘)
test_data = test_data.astype(‘float32‘)
result = [(train_data train_label) (valid_data valid_label) (test_data test_label)]
return result
# CNN主体
def get_set_model(lr=0.005decay=1e-6momentum=0.9):
model = Sequential()
# 卷积1+池化1
if K.image_data_format() == ‘channels_first‘:
model.add(Conv2D(nb_filters1 kernel_size=(3 3) input_shape = (1 img_rows img_cols)))
else:
model.add(Conv2D(nb_filters1 kernel_size=(2 2) input_shape = (img_rows img_cols 1)))
model.add(Activation(‘tanh‘))
model.add(MaxPooling2D(pool_size=(2 2)))
# 卷积2+池化2
model.add(Conv2D(nb_filters2 kernel_size=(3 3)))
model.add(Activation(‘tanh‘))
model.add(MaxPooling2D(pool_size=(2 2)))
model.add(Dropout(0.25))
# 全连接层1+分类器层
model.add(Flatten())
model.add(Dense(1000)) #Full connection
model.add(Activation(‘tanh‘))
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-07-16 14:43 olivettifaces人脸数据库识别\CNN_Kreas_olivettifaces\
文件 6314 2018-07-16 14:43 olivettifaces人脸数据库识别\CNN_Kreas_olivettifaces\CNN+Kreas框架识别oli人脸数据库.py
文件 21019712 2018-07-04 09:30 olivettifaces人脸数据库识别\CNN_Kreas_olivettifaces\model_weights.h5
文件 1182905 2018-03-22 16:20 olivettifaces人脸数据库识别\CNN_Kreas_olivettifaces\olivettifaces.gif
目录 0 2018-07-09 14:17 olivettifaces人脸数据库识别\CNN_tf_olivettifaces\
文件 1182905 2018-03-22 16:20 olivettifaces人脸数据库识别\CNN_tf_olivettifaces\olivettifaces.gif
文件 14751774 2018-07-04 09:33 olivettifaces人脸数据库识别\CNN_tf_olivettifaces\params.pkl
文件 15755 2018-07-05 13:58 olivettifaces人脸数据库识别\CNN_tf_olivettifaces\train_CNN.py
文件 7331 2018-03-23 16:22 olivettifaces人脸数据库识别\CNN_tf_olivettifaces\use_CNN.py
- 上一篇:迈瑞各种仪器通讯协议说明
- 下一篇:软件工程订票系统测试分析报告
相关资源
- 基于pca+lda+粗糙集+模糊神经网络的人
- 人脸比对和人脸跟踪2.0版
- 人脸识别servlet版本,建库可用
- 人脸识别登录注册
- CNN卷积神经网络应用于人脸识别带详
- 百度Ai人脸识别登录
- STM32 人脸识别 战舰开发板 测试通过
- renlianshibie-keras.zip
- 基于SeetaFace+VS2017+Qt的人脸识别
- facenet亚洲人脸20190518-164145.pb.zip
- seetaface的人脸检测-人脸对齐-人脸识别
- OpenCV人脸识别样本数据集,包含正样
- BioID人脸检测/人脸识别正样本数据集
- kinect 人脸识别2d
- dlib人脸识别模型
- 人脸识别正负样本4000张大学生高清人
- flappybird强化学习
- 6种用于人脸识别的人脸数据库
- 模式识别——人脸识别
- cpp-基于MXNetC框架的CPU实时人脸识别
- AU人脸图像,对做人脸识别的同学们有
- 人脸识别 技术
- point-04 多姿态人脸库
- Dlib 编译好的Lib
- Dlib FaceLandmark Detector 1.2.8.rar
- Dlib FaceLandmark Detector 1.2.5
- 人脸识别系统 开源技术大作业
- 人脸识别含原理、论文和源代码
- 人脸负样本图片
- 人脸识别教程非常全面
评论
共有 条评论