【发布时间】:2019-05-12 23:37:24
【问题描述】:
在我的 Python 简洁代码中,我使用 opencv 缩小环境的每一帧并将其转换为灰色。我想要存档的是 opencv 打开一个窗口,显示正在处理的帧/视频。
简而言之,我想查看整洁的算法学习和进化。
因为有 3 个环境并行运行,我希望 opencv 显示目前表现最佳的帧/视频。
我正在使用 Python 整洁库来完成一些机器学习任务。目前,我正在使用 sonic the Hedgehog 环境中的 3 个线程进行并行学习。我试图做简单的打开 CV 框架命令,但它只是打开一个黑色窗口。
net = neat.nn.FeedForwardNetwork.create(self.genome, self.config)
fitness = 0
xpos = 0
xpos_max = 0
counter = 0
imgarray = []
while not done:
# self.env.render()
ob = cv2.resize(ob, (inx, iny))
ob = cv2.cvtColor(ob, cv2.COLOR_BGR2GRAY)
ob = np.reshape(ob, (inx, iny))
imgarray = np.ndarray.flatten(ob)
actions = net.activate(imgarray)
ob, rew, done, info = self.env.step(actions)
xpos = info['x']
这是缩小帧并将其转换为灰度的代码部分。
如果它只能根据适应度值显示表现最好的框架/工作人员,则奖励。
在此处查看完整代码:https://gitlab.com/lucasrthompson/Sonic-Bot-In-OpenAI-and-NEAT/blob/master/neat-paralle-sonic.py 通过卢卡斯汤普森
我期望的输出是一个显示环境帧/视频的窗口。厉害了
构建它渲染
self.env.render() 弹出许多包含过去和现在环境版本的窗口。
谢谢
【问题讨论】:
标签: opencv machine-learning render openai-gym neat