• 大小: 0.01M
    文件类型: .py
    金币: 1
    下载: 0 次
    发布日期: 2021-03-27
  • 语言: 其他
  • 标签: 其他  

资源简介


利用深度学习的CNN进行人脸识别,对Olivettiface公开数据库中的人脸数据进行训练。

资源截图

代码片段和文件信息



import os
import sys
import time

import numpy
from PIL import Image

import theano
import theano.tensor as T
from theano.tensor.signal.pool import pool_2d
from theano.tensor.nnet import conv



def load_data(dataset_path):
    img = Image.open(dataset_path)
    img_ndarray = numpy.asarray(img dtype=‘float64‘) / 256
    faces = numpy.empty((400 2679))
    for row in range(20):
        for column in range(20):
            faces[row * 20 + column] = numpy.ndarray.flatten(
                img_ndarray[row * 57:(row + 1) * 57 column * 47:(column + 1) * 47])

    label = numpy.empty(400)
    for i in range(40):
        label[i * 10:i * 10 + 10] = i
    label = label.astype(numpy.int)


    train_data = numpy.empty((320 2679))
    train_label = numpy.empty(320)
    valid_data = numpy.empty((40 2679))
    valid_label = numpy.empty(40)
    test_data = numpy.empty((40 2679))
    test_label = numpy.empty(40)

    for i in range(40):
        train_data[i * 8:i * 8 + 8] = faces[i * 10:i * 1

评论

共有 条评论