GithubHelp home page GithubHelp logo

sichitong / autoware Goto Github PK

View Code? Open in Web Editor NEW

This project forked from autowarefoundation/autoware

0.0 1.0 0.0 260.28 MB

Open-Source To Self-Driving.

Home Page: https://www.autoware.ai/

License: BSD 3-Clause "New" or "Revised" License

Shell 0.24% Python 6.81% CMake 2.42% C++ 72.02% C 7.06% Cuda 2.80% QMake 0.13% GDB 0.01% Makefile 0.20% Prolog 0.02% MATLAB 0.18% Java 5.42% JavaScript 2.10% CSS 0.19% HTML 0.42%

autoware's Introduction

Autoware

Open-source software for urban autonomous driving, maintained by Tier IV. The following functions are supported:

  • 3D Localization
  • 3D Mapping
  • Path Planning
  • Path Following
  • Accel/Brake/Steering Control
  • Data Logging
  • Car/Pedestrian/Object Detection
  • Traffic Signal Detection
  • Traffic Light Recognition
  • Lane Detection
  • Object Tracking
  • Sensor Calibration
  • Sensor Fusion
  • Cloud-oriented Maps
  • Connected Automation
  • Smartphone Navigation
  • Software Simulation
  • Virtual Reality

Autoware is protected by the BSD License. Please use it on at your own discretion. For safe use, we provide a ROSBAG-based simulation method for those who do not own real autonomous vehicles. In case you use Autoware with real autonomous vehicles, please formulate safety measures and assessment of risk before field testing.

Manuals and Documents

Free manuals can be found at https://github.com/CPFL/Autoware-Manuals. You are encouraged to join maintenance of those manuals. Thanks for your cooperation!

See also branching_model for the tips of Autoware development, including the coding style and branching model.

License

  • New BSD License
    • See LICENSE

Spec Recommendation

  • Number of CPU cores: 8
  • RAM size: 32GB
  • Storage size: 30GB

Requirements

  • ROS indigo (Ubuntu 14.04) or ROS jade (Ubuntu 15.04) or ROS kinetic (Ubuntu 16.04)
  • OpenCV 2.4.10 or higher
  • Qt 5.2.1 or higher
  • CUDA(Optional)
  • FlyCapture2 (Optional)
  • Armadillo (Optional)

Please use checkout revision before 2015/OCT/21 if you use Autoware on ROS hydro or Ubuntu 13.04, 13.10.

Install dependencies for Ubuntu 14.04 indigo

% sudo apt-get install ros-indigo-desktop-full ros-indigo-nmea-msgs ros-indigo-nmea-navsat-driver ros-indigo-sound-play ros-indigo-jsk-visualization ros-indigo-grid-map ros-indigo-gps-common
% sudo apt-get install ros-indigo-controller-manager ros-indigo-ros-control ros-indigo-ros-controllers ros-indigo-gazebo-ros-control ros-indigo-sicktoolbox ros-indigo-sicktoolbox-wrapper ros-indigo-joystick-drivers ros-indigo-novatel-span-driver
% sudo apt-get install libnlopt-dev freeglut3-dev qtbase5-dev libqt5opengl5-dev libssh2-1-dev libarmadillo-dev libpcap-dev gksu libgl1-mesa-dev libglew-dev software-properties-common libyaml-cpp-dev python-flask python-requests
% sudo add-apt-repository ppa:mosquitto-dev/mosquitto-ppa
% sudo apt-get install libmosquitto-dev

NOTE: Please do not install ros-indigo-velodyne-pointcloud package. Please uninstall it if you already installed.

Install dependencies for Ubuntu 16.04 kinetic

% sudo apt-get install ros-kinetic-desktop-full ros-kinetic-nmea-msgs ros-kinetic-nmea-navsat-driver ros-kinetic-sound-play ros-kinetic-jsk-visualization ros-kinetic-grid-map ros-kinetic-gps-common
% sudo apt-get install ros-kinetic-controller-manager ros-kinetic-ros-control ros-kinetic-ros-controllers ros-kinetic-gazebo-ros-control ros-kinetic-joystick-drivers
% sudo apt-get install libnlopt-dev freeglut3-dev qtbase5-dev libqt5opengl5-dev libssh2-1-dev libarmadillo-dev libpcap-dev gksu libgl1-mesa-dev libglew-dev python-wxgtk3.0 software-properties-common libmosquitto-dev libyaml-cpp-dev python-flask python-requests

NOTE: Following packages are not supported in ROS Kinetic.

  • gazebo
  • orb slam
  • dpm ocv

How to Build

$ cd $HOME
$ git clone https://github.com/CPFL/Autoware.git
$ cd ~/Autoware/ros/src
$ catkin_init_workspace
$ cd ../
$ ./catkin_make_release

###Caffe based object detectors CV based detectors RCNN and SSD nodes are not automatically built.

To build these nodes please follow the respective node's README SSD RCNN Yolo2

How to Start

$ cd $HOME/Autoware/ros
$ ./run

For Developers

Be careful when changing files under ros/src/sensing/drivers/lidar/packages/velodyne. There is subtree. The original repository is here. If you change those files from this repository, you must use git subtree push. (Please never change and push code if you don't understand git subtree well).

GitFlow, the git branching model, is used in the Autoware repository.

  • When you adding new features, you can branch off your feature branch from develop.
    you can use the following command.
    $ git checkout -b feature/[your_branch_name] develop
  • When you find bugs in master, you can branch off your hotfix branch from master.
    you can use the following command.
    $ git checkout -b hotfix/[your_branch_name] master

See docs/en/branching_model.md

More details here

Main Packages

Localization

  • ndt_localizer
  • icp_localizer

Detection

  • lidar_tracker
  • cv_tracker
  • road_wizard

Mission (Global) Planning

  • lane_planner
  • way_planner
  • freespace_planner

Motion (Local) Planning

  • astar_planner
  • lattice_planner
  • dp_planner

Vehicle Control

  • waypoint_follower
  • waypoint_maker

Research Papers for Citation

  1. S. Kato, S. Tokunaga, Y. Maruyama, S. Maeda, M. Hirabayashi, Y. Kitsukawa, A. Monrroy, T. Ando, Y. Fujii, and T. Azumi,``Autoware on Board: Enabling Autonomous Vehicles with Embedded Systems,'' In Proceedings of the 9th ACM/IEEE International Conference on Cyber-Physical Systems (ICCPS2018), Porto (aka Oporto), Portugal, Apr. 2018.

  2. S. Kato, E. Takeuchi, Y. Ishiguro, Y. Ninomiya, K. Takeda, and T. Hamada. "An Open Approach to Autonomous Vehicles", IEEE Micro, Vol. 35, No. 6, pp. 60-69, 2015. Link

Demo Videos

Public Road Demonstration

Public Road Demonstration

Test Field Demonstration

Test Field Demonstration

Instruction Videos

Quick Start

Quick Start

Loading Map Data

Loading Map Data

Localization with GNSS

Localization with GNSS

Localization without GNSS

Localization without GNSS

Mapping

Mapping

Detection with SSD

SSD

Detection with Yolo2

Yolo2

Detection with DPM

DPM

Detection with Euclidean Clustering

Clustering

Traffic Light Recognition

Traffic Light Recognition

Planning with ROSBAG

Planning with ROSBAG

Planning with wf_simulator

Planning with wf_simulator

Planning with Hybrid State A*

Planning with wf_simulator

Calibration Toolkit

Calibration Toolkit

See https://github.com/CPFL/Autoware/wiki/Calibration(EN)

Data Processor for Bag File

Data Processor

Ftrace

Ftrace

Sample Data

3D maps of Moriyama in Nagoya

ROSBAG data for Moriyama demo

Script of generating launch files for Moriyama demo

ROSBAG data for calibration test

ROSBAG data for IROS 2016

ROSBAG STORE

You can download many ROSBAG files for research and development of self-driving technology using Autoware. https://rosbag.tier4.jp

Contact

Autoware Developers ([email protected])

Autoware Developers Slack Team (https://autoware.herokuapp.com/)

To subscribe to the Autoware Developers mailing list,

autoware's People

Contributors

amc-nu avatar andoh104 avatar anhnv-3991 avatar aohsato avatar asimay avatar chenxitu avatar christopherho-apexai avatar colinsung avatar daifuku07 avatar dejanpan avatar hatem-darweesh avatar hiro-ya-iv avatar kenyn avatar kondoh2 avatar kuriking avatar manato avatar masatotange avatar messi49 avatar n-patiphon avatar niwasaki avatar ompugao avatar pdsljp avatar shinpei0208 avatar sujiwo avatar syohex avatar syouji avatar tomohitoando avatar yamatoando avatar yk-fujii avatar yukitsuji avatar

Watchers

 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.