def __init__(self, output_path, frame_shape, frames_per_sec): self.proc = None self.output_path = output_path # Frame shape should be lines-first, so w and h are swapped h, w, pixfmt = frame_shape if pixfmt != 3 and pixfmt != 4: raise error.InvalidFrame( "Your frame has shape {}, but we require (w,h,3) or (w,h,4), i.e. RGB values for a w-by-h image, with an optional alpha channl." .format(frame_shape)) self.wh = (w, h) self.includes_alpha = (pixfmt == 4) self.frame_shape = frame_shape self.frames_per_sec = frames_per_sec if distutils.spawn.find_executable('avconv') is not None: self.backend = 'avconv' elif distutils.spawn.find_executable('ffmpeg') is not None: self.backend = 'ffmpeg' else: raise error.DependencyNotInstalled( """Found neither the ffmpeg nor avconv executables. On OS X, you can install ffmpeg via `brew install ffmpeg`. On most Ubuntu variants, `sudo apt-get install ffmpeg` should do it. On Ubuntu 14.04, however, you'll need to install avconv with `sudo apt-get install libav-tools`.""" ) self.start()
import os from gym_wmgds import error, spaces from gym_wmgds.utils import seeding import numpy as np from os import path import gym_wmgds import six try: import mujoco_py except ImportError as e: raise error.DependencyNotInstalled( "{}. (HINT: you need to install mujoco_py, and also perform the setup instructions here: https://github.com/openai/mujoco-py/.)" .format(e)) DEFAULT_SIZE = 500 class MujocoEnv(gym_wmgds.Env): """Superclass for all MuJoCo environments. """ def __init__(self, model_path, frame_skip): if model_path.startswith("/"): fullpath = model_path else: fullpath = os.path.join(os.path.dirname(__file__), "assets", model_path) if not path.exists(fullpath): raise IOError("File %s does not exist" % fullpath) self.frame_skip = frame_skip
import numpy as np import os import gym_wmgds from gym_wmgds import error, spaces from gym_wmgds import utils from gym_wmgds.utils import seeding try: import atari_py except ImportError as e: raise error.DependencyNotInstalled( "{}. (HINT: you can install Atari dependencies by running 'pip install gym_wmgds[atari]'.)" .format(e)) def to_ram(ale): ram_size = ale.getRAMSize() ram = np.zeros((ram_size), dtype=np.uint8) ale.getRAM(ram) return ram class AtariEnv(gym_wmgds.Env, utils.EzPickle): metadata = {'render.modes': ['human', 'rgb_array']} def __init__(self, game='pong', obs_type='ram', frameskip=(2, 5), repeat_action_probability=0., full_action_space=False):