0
我正在嘗試使用tensorflow來實現生命遊戲,並使用matplotlib.animation來描繪動畫。儘管圖像被顯示,但由於某些原因,圖像不具有動畫效果。下面是我使用的代碼:Tensorflow + Matplotlib動畫
編號:http://learningtensorflow.com/lesson8/
IDE:Pycharm社區版
我傳遞塊傳輸=在FuncAnimation假,因爲它無法在Mac正與塊傳輸=真
shape = (50, 50)
initial_board = tf.random_uniform(shape, minval=0, maxval=2, dtype=tf.int32)
board = tf.placeholder(tf.int32, shape=shape, name='board')
def update_board(X):
# Check out the details at: https://jakevdp.github.io/blog/2013/08/07/conways-game-of-life/
# Compute number of neighbours,
N = convolve2d(X, np.ones((3, 3)), mode='same', boundary='wrap') - X
# Apply rules of the game
X = (N == 3) | (X & (N == 2))
return X
board_update = tf.py_func(update_board, [board], [tf.int32])
fig = plt.figure()
if __name__ == '__main__':
with tf.Session() as sess:
initial_board_values = sess.run(initial_board)
X = sess.run(board_update, feed_dict={board: initial_board_values})[0]
def game_of_life(*args):
A = sess.run(board_update, feed_dict={board: X})[0]
plot.set_array(A)
return plot,
ani = animation.FuncAnimation(fig, game_of_life, interval=100, blit=False)
plot = plt.imshow(X, cmap='Greys', interpolation='nearest')
plt.show()