Пример #1
0
            sess.run(tf.initialize_all_variables())
            summary_writer = tf.train.SummaryWriter(args.save_folder, sess.graph_def)
            if args.restore != "No":
                saver.restore(sess, args.save_folder+args.restore)


            #just display games
            sim.reset()
            previous_state = numpy.zeros((sim.image_size,sim.image_size,3))
            previous_state[:,:,0] = numpy.reshape(sim.screen,(sim.image_size,sim.image_size))
            screen = sim.screen
            for i in range(1000):
                cv2.imshow('Phong!',cv2.resize(screen,(0,0),fx=2,fy=2))
                key = cv2.waitKey(8)
                if key == UP_KEY:
                    screen,score,points_made,end = sim.do_action(1,side="left")
                elif key == DOWN_KEY:
                    screen,score,points_made,end = sim.do_action(2,side="left")
                else:
                    screen,score,points_made,end = sim.do_action(0,side="left")
                action = learner.return_action(previous_state)
                screen,score,points_made,end = sim.do_action(action)
                previous_state[:,:,1:] = numpy.copy(previous_state[:,:,:2])
                previous_state[:,:,0] = numpy.reshape(screen,(sim.image_size,sim.image_size))
                previous_state_image = numpy.copy(previous_state)
                previous_state_image -= previous_state_image.min()
                previous_state_image /= previous_state_image.max()
                previous_state_image *= 255
                cv2.imwrite('phong_state.png',previous_state_image)
                print(score)
            #just display games
            sim.reset()
            previous_state = numpy.zeros((sim.image_size, sim.image_size, 3))
            previous_state[:, :,
                           0] = numpy.reshape(sim.screen,
                                              (sim.image_size, sim.image_size))
            screen = sim.screen
            for i in range(1000):
                cv2.imshow('Phong!', cv2.resize(screen, (0, 0), fx=2, fy=2))
                key = cv2.waitKey(8)
                if key == UP_KEY:
                    screen, score, points_made, end = sim.do_action(
                        1, side="left")
                elif key == DOWN_KEY:
                    screen, score, points_made, end = sim.do_action(
                        2, side="left")
                else:
                    screen, score, points_made, end = sim.do_action(
                        0, side="left")
                action = learner.return_action(previous_state)
                screen, score, points_made, end = sim.do_action(action)
                previous_state[:, :, 1:] = numpy.copy(previous_state[:, :, :2])
                previous_state[:, :, 0] = numpy.reshape(
                    screen, (sim.image_size, sim.image_size))
                previous_state_image = numpy.copy(previous_state)
                previous_state_image -= previous_state_image.min()
                previous_state_image /= previous_state_image.max()
                previous_state_image *= 255
                cv2.imwrite('phong_state.png', previous_state_image)
                print(score)