Coder Social home page Coder Social logo

xcloudplatform / colosseum Goto Github PK

View Code? Open in Web Editor NEW

This project forked from codexlabsllc/colosseum

0.0 0.0 0.0 358.41 MB

Open source simulator for autonomous robotics built on Unreal Engine with support for Unity

Home Page: https://codexlabsllc.github.io/Colosseum/

License: Other

Shell 0.37% C++ 73.63% Python 5.11% C 4.17% C# 15.58% PowerShell 0.03% Makefile 0.01% CMake 0.60% Batchfile 0.34% Dockerfile 0.02% ShaderLab 0.14%

colosseum's Introduction

Welcome to Colosseum, a successor of AirSim

Build Status

Ubuntu Build MacOS Build Windows Build

Looking for more performance?

The company managing this repo created the SWARM Developer System to help build, simulate and deploy single and multi-agent autonomous systems. Check it out here: SWARM Developer System

IMPORTANT ANNOUNCEMENT

Moving forward, we are now using Unreal Engine 5 version 5.03 or greater! If you want to use UE4.27, you can use the branch ue4.27.

Currently Supported Operating Systems

Below are the list of officially supported Operating Systems, with full Unreal Engine support:

Windows

  • Windows 10 (Latest)

Linux

  • Ubuntu 18.04
  • Ubuntu 20.04

NOTE Ubuntu 22.04 is not currently supported due to Vulkan support. If this changes, we will notify you here. If you want to use Colosseum on 22.04, we highly recommend that you use Docker.

MacOS (Non-M1 Macs only)

  • MacOS Monterey (12)
  • MacOS (11)

NOTE MacOS support is highly experimental and may be dropped in future releases. This is because Apple continually changes their build tools and doesn't like 3rd party developers in general. There are ongoing discussions to remove this support.

Sponsors

  1. Codex Laboratories LLC Website

Introduction

Colosseum is a simulator for robotic, autonomous systems, built on Unreal Engine (we now also have an experimental Unity release). It is open-source, cross platform, and supports software-in-the-loop simulation with popular flight controllers such as PX4 & ArduPilot and hardware-in-loop with PX4 for physically and visually realistic simulations. It is developed as an Unreal plugin that can simply be dropped into any Unreal environment. Similarly, we have an experimental release for a Unity plugin.

This is a fork of the AirSim repository, which Microsoft decided to shutdown in July of 2022. This fork serves as a waypoint to building a new and better simulation platform. The creater and maintainer of this fork is Codex Laboratories LLC (our website is here). Colosseum is one of the underlying simulation systems that we use in our product, the SWARM Simulation Platform. This platform exists to provide pre-built tools and low-code/no-code autonomy solutions. Please feel free to check this platform out and reach out if interested.

Join the Community

We have decided to create a Slack to better allow for community engagement. Join here: Colosseum Slack

Goals and Project Development

This section will contain a list of the current features that the community and Codex Labs are working on to support and build.

Click here to view our current development goals!

If you want to be apart of the official development team, attend meetings, etc., please utilize the Slack channel (link above) and let Tyler Fedrizzi know!

Check out the quick 1.5 minute demo

Quadrotor UAVs in Colosseum

Colosseum Drone Demo Video

Cars in Colosseum

Colosseum Car Demo Video

How to Get It

Windows

Build Status

Linux

Build Status

macOS

Build Status

For more details, see the use precompiled binaries document.

How to Use It

Documentation

View our detailed documentation on all aspects of Colosseum.

Manual drive

If you have remote control (RC) as shown below, you can manually control the drone in the simulator. For cars, you can use arrow keys to drive manually.

More details

record screenshot

record screenshot

Programmatic control

Colosseum exposes APIs so you can interact with the vehicle in the simulation programmatically. You can use these APIs to retrieve images, get state, control the vehicle and so on. The APIs are exposed through the RPC, and are accessible via a variety of languages, including C++, Python, C# and Java.

These APIs are also available as part of a separate, independent cross-platform library, so you can deploy them on a companion computer on your vehicle. This way you can write and test your code in the simulator, and later execute it on the real vehicles. Transfer learning and related research is one of our focus areas.

Note that you can use SimMode setting to specify the default vehicle or the new ComputerVision mode so you don't get prompted each time you start Colosseum.

More details

Gathering training data

There are two ways you can generate training data from Colosseum for deep learning. The easiest way is to simply press the record button in the lower right corner. This will start writing pose and images for each frame. The data logging code is pretty simple and you can modify it to your heart's content.

record screenshot

A better way to generate training data exactly the way you want is by accessing the APIs. This allows you to be in full control of how, what, where and when you want to log data.

Computer Vision mode

Yet another way to use Colosseum is the so-called "Computer Vision" mode. In this mode, you don't have vehicles or physics. You can use the keyboard to move around the scene, or use APIs to position available cameras in any arbitrary pose, and collect images such as depth, disparity, surface normals or object segmentation.

More details

Weather Effects

Press F10 to see various options available for weather effects. You can also control the weather using APIs. Press F1 to see other options available.

record screenshot

Tutorials

Participate

Paper

More technical details are available in Colosseum paper (FSR 2017 Conference). Please cite this as:

@inproceedings{airsim2017fsr,
  author = {Shital Shah and Debadeepta Dey and Chris Lovett and Ashish Kapoor},
  title = {AirSim: High-Fidelity Visual and Physical Simulation for Autonomous Vehicles},
  year = {2017},
  booktitle = {Field and Service Robotics},
  eprint = {arXiv:1705.05065},
  url = {https://arxiv.org/abs/1705.05065}
}

Contribute

Please take a look at open issues if you are looking for areas to contribute to.

Who is Using Colosseum?

We are maintaining a list of a few projects, people and groups that we are aware of. If you would like to be featured in this list please make a request here.

Contact

Join our GitHub Discussions group to stay up to date or ask any questions.

We also have an Colosseum group on Facebook.

What's New

For complete list of changes, view our Changelog

FAQ

If you run into problems, check the FAQ and feel free to post issues in the Colosseum repository.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

License

This project is released under the MIT License. Please review the License file for more details.

colosseum's People

Contributors

sytelus avatar lovettchris avatar zimmy87 avatar rajat2004 avatar alonfaraj avatar madratman avatar saihv avatar xxeod2242 avatar patrickelectric avatar ahmed-elsaharti avatar ashkapoor avatar clovett avatar aburgm avatar bkueng avatar jonymarino avatar ykeuter avatar bmalhigh avatar gimpelzhang avatar thias15 avatar euboon1601 avatar songxiaocheng avatar ppueyor avatar 8w9ag avatar billyfrcs avatar forresttrepte avatar kissslorinc avatar kemen209 avatar laurelkeys avatar msb336 avatar tzimasak 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.