Skip to main content

Render gym environments to a web browser.

Project description

Render Gym Environments to a Web Browser.

While working on a head-less server, it can be a little tricky to render and see your environment simulation. This script allows you to render your environment onto a browser by just adding one line to your code.

Installation

xvfb-run -s "-screen 0 1400x900x24" bash # Run this if you're using a head-less server.
pip3 install render_browser

Or you can install from the source by cloning this repo and running pip3 install ..

Usage

Put your code in a function and replace your normal env.render() with yield env.render(mode='rgb_array'). Encapsulate this function with the render_browser decorator.

import gym
from render_browser import render_browser

@render_browser
def test_policy(policy):
    # Your function/code here.
    env = gym.make('Breakout-v0')
    obs = env.reset()

    while True:
        yield env.render(mode='rgb_array')
        # ... run policy ...
        obs, rew, _, _ = env.step(action)

test_policy(policy)    

When you visit your_ip:5000 on your browser, test_policy() will be called and you'll be able to see the rendered environment on your browser window.

TODO

  • Stop flask server once the rendering stops - so that render_browser can be called more than once in a single run.
  • Allow I/P from keyboard on the browser, useful for teleoperation in robotic environments.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

render_browser-0.5.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

render_browser-0.5-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

Details for the file render_browser-0.5.tar.gz.

File metadata

  • Download URL: render_browser-0.5.tar.gz
  • Upload date:
  • Size: 3.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.6.10

File hashes

Hashes for render_browser-0.5.tar.gz
Algorithm Hash digest
SHA256 5228c3a1b6245d2f3f9eb773de0324a3a487bb4b7efd4a8b8f983e16e9b7da26
MD5 5e72c6b9ceece9af9ddf0a9bf0dc4090
BLAKE2b-256 f5eea1272020869817f3a21fd0456d2c0501277af57d27461a213533b0ad98d6

See more details on using hashes here.

File details

Details for the file render_browser-0.5-py3-none-any.whl.

File metadata

  • Download URL: render_browser-0.5-py3-none-any.whl
  • Upload date:
  • Size: 5.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.6.10

File hashes

Hashes for render_browser-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 8dbcdb8631dd3fd15c389d72dc7f83ac9323c9eef1eb8c8c202ccf83c5b3561d
MD5 05b97d31a37fd779be9818afaee93278
BLAKE2b-256 be58c14a3abde59a06e37a0e64077fbcd39afc65f433c41dda37f6671eccb214

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page