tensorflow1.1/variational autoencoder人脸识别

本文介绍了使用TensorFlow 1.1实现的变分自编码器(VAE)在人脸识别上的实验。利用olivettifaces数据集进行训练,该数据集包含40个人的400张灰度图像。通过小批量和低学习率,VAE在人脸识别上的表现优于传统自编码器,能有效分辨基本人脸特征。
摘要由CSDN通过智能技术生成

olivettifaces是纽约大学的一个比较小的人脸库,由40个人的400张图片构成,即每个人的人脸图片为10张。每张图片的灰度级为8位,每个像素的灰度大小位于0-255之间,每张图片大小为64×64。图片大小是1190*942,一共有20*20张人脸,故每张人脸大小是(1190/20)*(942/20)即57*47=2679本文所用的训练数据就是这张图片,400个样本,40个类别。

#coding:utf-8
"""
tensorflow 1.1
matplotlib 2.02
python3
"""
import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
import pickle

#读取数据集
with open('facedataset.pickle','rb') as f:
    (train_data,train_labels),(test_data,test_labels) = pickle.load(f)

#shuffle data
np.random.seed(100)
train_data = np.random.permutation(train_data)
np.random.seed(100)
train_labels = np.random.permutation(train_labels)
np.random.seed(200)
train_data = np.random.permutation(test_data)
np.random.seed(200)
train_labels = np.random.permutation(test_labels)


input_dim = 57*47
hidden_encoder_dim1 = 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值