Coder Social home page Coder Social logo

lucianzhong / src_with_lanelet2 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jk-h/src_with_lanelet2

0.0 0.0 0.0 4.06 MB

For structured road, plan and visualize the full coverage path in a Lanelet2 Map.

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

C++ 94.76% Python 2.26% HTML 0.54% CMake 2.27% Dockerfile 0.17%

src_with_lanelet2's Introduction

Full Coverage With Lanelet2

Overview

Plan and visualize the full coverage path in a Lanelet2 Map.

Based on

Installation

Manual installation

In case you want to build it in your own way (without the above Docker image) use these instructions.

Lanelet2 uses Catkin for building and is targeted towards Linux.

At least C++14 is required.

Dependencies

Besides Catkin, the dependencies are

  • Boost (from 1.58)
  • eigen3
  • mrt_cmake_modules, a CMake helper library
  • pugixml (for lanelet2_io)
  • boost-python, python2 or python3 (for lanelet2_python)
  • geographiclib (for lanelet2_projection)
  • rosbash (for lanelet2_examples)

For Ubuntu, the steps are the following:

  • Set up ROS, and install at least rospack, catkin and mrt_cmake_modules (e.g. ros-melodic-rospack, ros-melodic-catkin, ros-melodic-mrt-cmake-modules):
sudo apt-get install ros-melodic-rospack ros-melodic-catkin ros-melodic-mrt-cmake-modules ros-melodic-unique-id

FOR ROS-kinetic:
sudo apt-get install ros-kinetic-unique-id
  • Install the dependencies above:
sudo apt-get install libboost-dev libeigen3-dev libgeographic-dev libpugixml-dev libpython-dev libboost-python-dev python-catkin-tools

On 16.04 and below, mrt_cmake_modules is not available in ROS and you have to clone it into your workspace (git clone https://github.com/KIT-MRT/mrt_cmake_modules.git).

cd catkin_ws/src
git clone https://github.com/KIT-MRT/mrt_cmake_modules.git

Building

As usual with Catkin, after you have sourced the ros installation, you have to create a workspace and clone all required packages there. Then you can build.

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir catkin_ws && cd catkin_ws && mkdir src
catkin init
catkin config --cmake-args -DCMAKE_BUILD_TYPE=RelWithDebInfo # build in release mode (or whatever you prefer)
cd src
git clone https://gitlab.senseauto.com/huangjikai/full_coverage_with_lanelet2.git
cd ..
catkin build

Note: build error:

error: unable to find numeric literal operator ‘operator""Q’
BOOST_DEFINE_MATH_CONSTANT...

need to modify the CMakeLists.txt files in following path:

./map/lanelet2_extension
./planning/mission_planning/mission_planner
./map/util/lanelet2_map_preprocessor
#add_compile_options(-std=c++14)
add_compile_options(-std=c++11) 
#add_compile_options(-std=gnu++11)
add_compile_options(-fext-numeric-literals)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DBOOST_MATH_DISABLE_FLOAT128")

Running

cd your_ros_workspace
source devel/setup.bash
roslaunch src/ad_with_lanelet2/run_map_simulator.launch

In Rviz: Set start point by 2D Pose Estimate. Set goal point by 2D Nav Goal. The full_coverage_path is generated and displayed dynamically.

src_with_lanelet2's People

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.