1、TFReords
文件
的读取代码
论文中对
训练
集合的图像进行了随机裁剪、亮度变化、以及对比度随机调整,同时也对数据进行了规范化处理,这样的预处理都增加了
模型
的鲁棒性,更加切合实际情况。
设备配置:显卡为GTX1050Ti,Anaconda3.5+
python
3.6.5+
Tensorflow
-gpu1.8.0
1.1、预处理图像的代码:
# 对
训练
/验证的图片进行处理——修剪、dtype...
本文用1000张身份证号命名的证件照作为
训练
数据,复现
tensorflow
官方教程中的图像二分类例子
官方教程地址:https://
tensorflow
.google.cn/tutorials/load_data/images?hl=zh_cn
import numpy as np
import os
import pandas as pd
import matplotlib.pyplot as plt
from PIL import Image
import tensorf
这里直接引用了吴伟硕士毕业论文传统的
人脸
检测
算法缺点现代
人脸
识别
流程由 5 个常见阶段组成:
检测
、对齐、标准化、表示和验证
人脸
检测
的本质是目标
检测
,由于
人脸
检测
的精度似乎已经满足了大部分日常使用的要求,目前项目的优化主要是在速度提升方面,项目由于性能的限制对计算速度要求较高,因此大多都是基于 平台的,如 ;这里发现一个满足全平台运行的库包 deepface在 中,进行
人脸
检测
有许多的
模型
可以使用,不同
模型
效果判断代码使用如下
图片保存在当前目录的
文件
夹下,进行可视化如下
这里由于 需要在 上运
本文主要是实现了根据
人脸
识别
性别
的卷积
神经网络
,并对卷积过程中的提取特征进行了可视化.
卷积
神经网络
卷积
神经网络
最早是为了解决图像
识别
的问题,现在也用在时间序列数据和文本数据处理当中,卷积
神经网络
对于数据特征的提取不用额外进行,在对网络的
训练
的过程当中,网络会自动提取主要的特征.
卷积
神经网络
直接用原始图像的全部像素作为输入,但是内部为非全连接结构.因为图像数据在空间上是有组织结构的,每一个像素在空间上和周围的像素是有关系的,和相距很远的像素基本上是没什么联系的,每个神经元只需要接受局部的像素作为输入,再将局部信息汇总就能得到全局信息. 权值共享和池化两个操作使网络
模型
的参数大幅的减少,提高了
模型
的
训练
效率.
卷积
神经网络
主要特点
权值共享: 在卷积层中可以有多个卷积核,每个卷积核与原始图像进行卷积运算后会映射出一个新的2D图像,新图像的每个像素都来自同一个卷积核.这就是权值共享.
池化: 降采样,对卷积(滤波)后,经过激活函数处理后的图像,保留像素块中灰度值最高的像素点(保留最主要的特征),比如进行 2X2的最大池化,把一个2x2的像素块降为1x1的像素块。
卷积网络的
训练
数据(112×92×3图形)
从data目录读取数据,famale存放女性图片,male存放男性图片
课题使用
tensorflow
训练
集通过
人脸
识别
年龄
源代码参考了博主的源码http://blog.csdn.net/u014365862/article/details/53869712#coding=utf-8
import os
import glob
import
tensorflow
as tf # 0.12
from
tensorflow
.contrib.layers import *
CSDN-Ada助手:
linux下如何安装mysql5.7(超详细)
CSDN-Ada助手: