import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_data
from PIL import Image
import numpy as np
from PIL import *
import os
mnist = input_data.read_data_sets("MNIST_data",one_hot=True)
# 每个批次的大小
batch_size = 100
# 计算一共有多少个批次
n_batch = mnist.train.num_examples // batch_size
# 初始化权值
def weight_variable(shape):
# 生成一个截断的正态分布
initial = tf.truncated_normal(shape, stddev=0.1)
return tf.Variable(initial)
# 初始化偏置
def bias_variable(shape):
initial = tf.constant(0.1, shape=shape)
return tf.Variable(initial)
# 卷积层
def conv2d(x,W):
# x input tensor of shape [batch, in_height, in_width, in_channels]
# W filter / kernel tensor of shape [filter_height, filter_width, in_channels, out_channels]
# in_channels代表输入通道数,out_channels代表输出方向数
# strides[0] = strides[1] = 0
# strides[1]代表x方向步长, strides[2]代表y方向步长
# Padding: "SAME'和"VALID'
# 'SAME'在外面补零
return tf.nn.conv2d(x, W, strides=[1,1,1,
CNN手写数字识别(改进了保存模型以及预测自己的图片)
最新推荐文章于 2023-03-16 15:20:19 发布