def showPicture(test_length, path): if not os.path.exists(path): os.makedirs(path) data_gen.init_data(task, test_length, 1, n_input) while len(data_gen.train_set[task][test_length])==0: test_length += 1 data_gen.init_data(task, test_length, 1, n_input) data_gen.resetCounters() with tf.Graph().as_default(),tf.device('/cpu:0'): tester = DNGPU(n_hidden, [test_length], n_input, [1], n_output, dropout_keep_prob) tester.createTestGraph(test_length) saver = tf.train.Saver(tf.trainable_variables()) with tf.Session() as sess: sess.run(tf.initialize_all_variables()) saver.restore(sess, model_file) if not os.path.exists(path): os.makedirs(path) batch_xs, batch_ys = genTestData(test_length, 1) print batch_xs, batch_ys mem = tester.getAllMem(sess, batch_xs, batch_ys) mem = np.squeeze(mem, 1) width = mem.shape[1] height = mem.shape[0] for unit in range(n_hidden): img=np.zeros((height,width),dtype=np.float32) for x in range(width): for y in range(height): img[y,x]=mem[y, x,unit] mpimg.imsave(path+"/frame"+str(unit)+".png",img, cmap='gray')
# n_output = 6 # n_hidden = 48 # number of maps model_file = "/tmp/varWeights.ckpt" image_path = "/tmp/images" countList = [batchSize for x in data_gen.bins] np.set_printoptions(linewidth=2000) # seed = 125459 # tf.set_random_seed(seed) # random.seed(seed) # np.random.seed(seed) #prepare training and test data max_length = data_gen.bins[-1] for l in range(1, max_length + 1): data_gen.init_data(task, l, data_size, n_input) data_gen.collectBins() data_gen.init_data(task, data_gen.forward_max, test_data_size, n_input) # generates training data def genTrainingData(forTraining): x = [] y = [] for i in range(len(data_gen.bins)): seq_len = data_gen.bins[i] seq_count = countList[i] data, labels = data_gen.get_batch(seq_len, seq_count, forTraining, task) x += [data] y += [labels]