Giter Site home page Giter Site logo

elevation_mapping's Introduction

Elevation map package

This package is an extension of the [elevation_mapping package] (https://github.com/ANYbotics/elevation_mapping) of Anybotics. It maps the environment to gridmap containing values for the height. In the addition to the already existing height layer there are two extra layers added to the grid map containing the roll and the pitch of the environment. This is published as the elevation map. gazebo_world

Plane detection

To add roll and pitch to the grid map the class PlaneDetection extracts the roll and pitch of the given pointcloud. This is done in three steps:

Extract biggest plane

To speed up the process the biggest plane will be determined using pcl::SACSegmentation. Paramaters for the algorithm can be tweaked in talos_robot.yaml. This algorithm gives the plane equation which easily converts to the planes normal vector.

Calculate normal vectors

The normal vectors of the rest of the cloud are calculated with pcl::NormalEstimation. Paramaters for the algorithm can be tweaked in talos_robot.yaml.

Region growing

With the previous algorithms the normal vector of each point in the pointcloud is calculated. With pcl::RegionGrowing different planes are extracted. Paramaters for the algorithm can be tweaked in talos_robot.yaml. The topic /Output/planeCloud shows the different planes in different colors. Points of the pointcloud that are not part of any plane according to the algorithm are displayed in red and get a pitch and roll value of pi/2. Plane cloud

Elevation map

The values for height, roll and pitch are added to the elevation map. Note that only the topic /elevation_mapping/elevation_map_raw contains the values for pitch and roll. The map fusion still needs to be fixed such that the topic /elevation_mapping/elevation_map_fused also contains the orientation. Elevation map

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.