Giter VIP home page Giter VIP logo

Comments (6)

ZacharyTaylor avatar ZacharyTaylor commented on May 29, 2024

Hi Martin,
This is an interesting issue.

One way to get some more voxels allocated near the surface of shallow returns is to simply increase the truncation distance of the TSDF from the default 2*voxel_size to something larger such as 5 or 10x. However, if no ray passes through the area your system is trying to plan in this won't solve your problem.

I would be hesitant to allow the ESDF to update unobserved voxels as this would allow for situations where the map is confident an area was obstacle free when in reality moving into this space could cause a collision. In our current work on planning in the voxblox ESDF for MAVs we overcome this problem by setting all unknown space in the TSDF to occupied before building an ESDF out of it. This ensures the system will never try to enter an area it has not explicitly observed to be safe and could also work in your application.

from voxblox.

Martin-Oehler avatar Martin-Oehler commented on May 29, 2024

Hi Zachary,

thanks for your help.

However, if no ray passes through the area your system is trying to plan in this won't solve your problem.

The sensor can actually look above the ramp, but since nothing is behind it, no rays are created that would mark the voxels as unoccupied.

setting all unknown space in the TSDF to occupied before building an ESDF out of it

Isn't that problematic in open spaces? For example if you don't have a ceiling, everything above the sensor height is unobserved and would then be occupied.

from voxblox.

ZacharyTaylor avatar ZacharyTaylor commented on May 29, 2024

It is a problem in open spaces. We get around this by making use of the freespace_pointcloud topic which is activated by setting use_freespace_pointcloud to true.

We then run our system with a modified stereo vision driver that outputs two separate pointclouds. The first pointcloud is the normal surface points. The second output is a pointcloud that gives an estimate of how far away a point in a certain direction can safely be assumed to be free see ethz-asl/image_undistort#18 for details. Also see #78

from voxblox.

Martin-Oehler avatar Martin-Oehler commented on May 29, 2024

Ok, that makes sense. The combination of free space pointclouds and setting unknown voxels to occupied should solve my problem.

How exactly do you set all unknown space in the TSDF to occupied? Do you have some kind of "work area" where you just allocate every voxel? Otherwise there is theoretically an unlimited amount of unknown voxels.

from voxblox.

ZacharyTaylor avatar ZacharyTaylor commented on May 29, 2024

Sorry for taking a while to get back to you. A quick way is to just set all the unknown voxels in allocated blocks to occupied, as this constrains it to the areas near observed space

from voxblox.

Martin-Oehler avatar Martin-Oehler commented on May 29, 2024

Ok, that should answer all my questions. Thanks for your thorough help.

from voxblox.

Related Issues (20)

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.