GithubHelp home page GithubHelp logo

psiturk-habitat-sim's Introduction

Psiturk Habitat Sim

This repository is the implmentation of data collection application for project Learning Embodied Visual Exploration from Humans.

Psiturk Habitat Sim is a web-based application to collect human demonstrations for embodied tasks at scale by connecting Habitat simulator to Amazon Mechanical Turk users. Here's the deck of slides explaining the system design of the application.

Setup

This project is developed with Python 3.6. If you are using miniconda or anaconda, you can create an environment:

conda create -n venv python3.6
conda activate venv
conda install --file requirements.txt

Data

Like Habitat-Lab, we expect a data folder (or symlink) with a particular structure in the top-level directory of this project.

Pick and Place task

In the pick-and-place task, an agent must execute an instruction of the form Place the <object> on the <receptacle>. The agent must explore and navigate to the object, pick it up, explore and navigate to the receptacle, and place the object on it. The assets needed to run data collection for Pick and Place task can be downloaded here. Extract the contents of data.zip to psiturk-habitat-sim/data.

Nginx

  1. Update the paths in nginx.conf to your psiturk-habitat-sim copy (lines 18, 24, and 30).
  2. Copy/move the nginx.conf file to /etc/nginx/sites-available/some-unique-config-name
  3. Run
    ln -s /etc/nginx/sites-available/name-of-your-config /etc/nginx/sites-enabled/
    service nginx reload
    
    to enable the new nginx server conf

Usage

  1. Configure psiturk server port in config.txt (default: 8080), point to the same port in nginx.conf
  2. To start the psiturk server run:
    cd /path/to/psiturk-habitat-sim
    psiturk -e "server on"
    
  3. Open http://localhost:8000/ or http://localhost:YOUR_ENDPOINT_PORT/ in your browser to access psiturk interface. Note that you must use localhost instead of 127.0.0.1 as the compiled habitat-sim application will attempt to load scene data from S3 otherwise.

Experiment config can be modified by making changes to config.txt. You can find the documentation of psiturk configuration files here.

Data Collection and Monitoring

Launching HITs

  1. To launch and manage HITs refer to psiturk documentation.

Monitoring HITs

  1. To collected data for successful HITs refer to psiturk documentation.

  2. Collected data can also be downloaded using the sample script from scripts/data/download_hit_data.py. Run the following command to download collected data:

    python scripts/data/download_hit_data.py --db_path <db_name> --dump_path /path/to/dump/data/ --mode <psiturk_server_mode>
    

    --mode - Psiturk server mode. Refer the documentation

psiturk-habitat-sim's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.