美文网首页
Tensorflow2.0 人脸识别

Tensorflow2.0 人脸识别

作者: LoveToday2020 | 来源:发表于2020-02-01 22:49 被阅读0次

Tensorflow2.0使用sklearn内置的数据集进行人脸识别

首先准备数据集的下载,由于数据集是从国外的网站上下载,可能会报错

此时可以用此方法解决

import ssl

ssl._create_default_https_context = ssl._create_unverified_context

from sklearn import datasets

import tensorflow as tf

import matplotlib.pyplot as plt

from sklearn.model_selection import train_test_split

获取数据

faces = datasets.fetch_olivetti_faces()

测试获取的数据

plt.figure(figsize=(20, 25))

for index, img in enumerate(faces.images):

    plt.subplot(20, 20, index + 1)

    plt.imshow(img, cmap='gray')

#    关闭x轴

    plt.xticks([])

#    关闭y轴

    plt.yticks([])

    plt.xlabel(faces.target[index])

plt.show()

获取训练数据以及测试数据

X = faces.images

y = faces.target

X = X.reshape(400, 64, 64, 1)

抽取训练、测试数据

train_x, test_x, train_y, test_y = train_test_split(X, y, test_size=0.2)

建模

model = tf.keras.Sequential()

model.add(tf.keras.layers.Conv2D(128, kernel_size=3, activation='relu', input_shape=X.shape[1:]))

model.add(tf.keras.layers.Conv2D(64, kernel_size=3, activation='relu'))

model.add(tf.keras.layers.Flatten())

model.add(tf.keras.layers.Dense(40, activation='softmax'))

编译

model.compile(optimizer='adam',

              loss='sparse_categorical_crossentropy',

              metrics=['accuracy'])

开始训练

model.fit(train_x, train_y, epochs=8, validation_data=(test_x, test_y))

320/320 [==============================] - 7s 21ms/sample - loss: 5.0002 - accuracy: 0.0250 - val_loss: 3.6919 - val_accuracy: 0.0125

Epoch 2/9

320/320 [==============================] - 6s 19ms/sample - loss: 3.6688 - accuracy: 0.0656 - val_loss: 3.6290 - val_accuracy: 0.1250

Epoch 3/9

320/320 [==============================] - 6s 20ms/sample - loss: 3.4579 - accuracy: 0.1813 - val_loss: 3.5491 - val_accuracy: 0.0750

Epoch 4/9

320/320 [==============================] - 6s 20ms/sample - loss: 2.8424 - accuracy: 0.4563 - val_loss: 2.4117 - val_accuracy: 0.6000

Epoch 5/9

320/320 [==============================] - 7s 21ms/sample - loss: 1.5031 - accuracy: 0.7969 - val_loss: 1.5258 - val_accuracy: 0.7000

Epoch 6/9

320/320 [==============================] - 7s 22ms/sample - loss: 0.5492 - accuracy: 0.9187 - val_loss: 0.6792 - val_accuracy: 0.8500

Epoch 7/9

320/320 [==============================] - 7s 22ms/sample - loss: 0.1736 - accuracy: 0.9781 - val_loss: 0.7218 - val_accuracy: 0.7625

Epoch 8/9

320/320 [==============================] - 7s 21ms/sample - loss: 0.0640 - accuracy: 0.9969 - val_loss: 0.6178 - val_accuracy: 0.7875

当在第9个时候回过拟合

相关文章

  • Tensorflow2.0 人脸识别

    Tensorflow2.0使用sklearn内置的数据集进行人脸识别 首先准备数据集的下载,由于数据集是从国外的网...

  • 人脸识别技术 通识

    人脸识别技术 通识 1 人脸识别概要 2 人脸识别工作原理 3 人脸识别技术分类 4 人脸识别技术优缺点 5 人脸...

  • 都在说人脸识别有Bug,是真的吗?

    “人脸识别破解”“反人脸识别技术”“人脸识别漏洞”“人脸识别失误”“尽量不要用人脸识别”….网上N多这样的信息铺天...

  • 2020-06-09

    云卡通人脸识别系统含盖:动态人脸识别门禁管理系统、动态人脸识别消费系统、动态人脸识别考勤系统。其中动态人脸识别消费...

  • 人脸识别闸机安装知识

    随着人脸识别技术的成熟,人脸识别闸机越来越受欢迎,在选型上也丰富多样。人脸识别闸机包含人脸识别摆闸、人脸识别翼闸、...

  • 2020-07-28

    一、人脸识别系统具有广泛的应用:包括人脸识别出入管理系统、人脸识别门禁考勤系统、人面识别消费管理系统、人脸识别通道...

  • 人脸识别 -- 活体检测(张嘴摇头识别)

    一:简介 最近项目在做了身份证银行卡识别之后,开始实现人脸识别和活体识别,其中人脸识别包括人脸入库、人脸查找、人脸...

  • facexx解析:人脸识别技术市场在哪些领域?

    人脸识别技术经历了可见光图像人脸识别、三维图像人脸识别/热成像人脸识别、基于主动近红外图像的多光源人脸识别三层进化...

  • Android实现人脸识别(人脸检测)初识

    title: Android实现人脸识别(人脸检测)初识categories: Androidtags: 人脸识别...

  • h

    # 多人脸识别系统 [^]: by CathyZhang ## 背景 > 多人脸识别,又称为M:N人脸识别,主要用...

网友评论

      本文标题:Tensorflow2.0 人脸识别

      本文链接:https://www.haomeiwen.com/subject/rpxfxhtx.html