Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import tensorflow as tf
- import numpy as np
- import matplotlib.pyplot as plt
- try:
- from scipy import misc
- except ImportError:
- !pip install scipy
- from scipy import misc
- ############################################ train
- training_size = 300
- img_size = 20*20*3
- #class Struct:
- # "A structure that can have any fields defined."
- # def __init__(self, **entries): self.__dict__.update(entries)
- #training_images=[];
- #training_labels=[];
- #training_data= Struct(training_set=training_images, labels=training_labels)
- training_images = np.empty(shape=(training_size,20,20,3))
- import glob
- i = 0
- for filename in glob.glob('D:/Minutia/PrincipleWrinkleMinutia/*.jpg'):
- image = misc.imread(filename)
- training_images[i] = image
- i+=1
- print(training_images[0].shape)
- a= [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]
- training_labels = tf.one_hot(a,3)
- sess = tf.Session()
- sess.run(training_labels)
- #################################################### test
- test_size = 300
- img_size = 20*20*3
- #class Struct:
- #test_images=[];
- #test_labels=[];
- #test_data= Struct(training_set=test_images, labels=test_labels)
- test_images = np.empty(shape=(test_size,20,20,3))
- import glob
- i = 0
- for filename in glob.glob('D:/Minutia/PrincipleWrinkleMinutia/*.jpg'):
- image = misc.imread(filename)
- test_images[i] = image
- i+=1
- print(test_images[0].shape)
- a= [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
- 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]
- test_labels = tf.one_hot(a,3)
- sess = tf.Session()
- sess.run(test_labels)
- x = tf.placeholder(tf.float64, [None, img_size])
- W = tf.Variable(tf.zeros([img_size, 3], dtype=tf.float64))
- b = tf.Variable(tf.zeros([3], dtype=tf.float64))
- y = tf.nn.softmax(tf.matmul(x, W) + b)
- y_ = tf.placeholder(tf.float64, [None, 3])
- cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices=[1]))
- train_step = tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy)
- sess = tf.InteractiveSession()
- tf.global_variables_initializer().run()
- import numpy as np
- def next_batch(num, data, labels):
- '''
- Return a total of `num` random samples and labels.
- '''
- idx = np.arange(0 , len(data))
- np.random.shuffle(idx)
- idx = idx[:num]
- data_shuffle = [data[ i] for i in idx]
- labels_shuffle = [labels[ i] for i in idx]
- return np.asarray(data_shuffle), np.asarray(labels_shuffle)
- #Xtr, Ytr = np.arange(0, 10), np.arange(0, 100).reshape(10, 10)
- #print(Xtr)
- #print(Ytr)
- #Xtr, Ytr = next_batch(5, Xtr, Ytr)
- #print('\n5 random samples')
- #print(Xtr)
- #print(Ytr)
- for _ in range(1000):
- batch_xs, batch_ys = next_batch(100,training_images,training_labels)
- sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})
- correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_,1))
- correct_prediction = tf.equal(training_images, training_labels)
- accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float64))
- print(sess.run(accuracy, feed_dict={x: test_images, y_: test_labels}))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement