hku-mars / d-map Goto Github PK
View Code? Open in Web Editor NEWD-Map provides an efficient occupancy mapping approach for high-resolution LiDAR sensors.
License: GNU General Public License v2.0
D-Map provides an efficient occupancy mapping approach for high-resolution LiDAR sensors.
License: GNU General Public License v2.0
@Ecstasy-EC Great work!
I'd like to generate rotating demo videos for point cloud maps, similar to the attached image. Could you provide guidance or resources on how to achieve this effect?
Hi, I cannot find how to start the mapping assist tool from the real life experiment, I can get the octomaps in red, but they don't dissapear and the axes guide doesn't appear, maybe that part wasn't released?
I'm using a livox-360 in this case, but also I can test with Avia, but I don't think will make any difference. I don't know the horizontal resolution of mid-360 to be honest, could find beam deviation and angular precision, but no angular resolution in any case.
please find my config file, my fast-lio world frame appears as camera init, so I used it instead of world, with world would not appear the red octomaps in rviz.
`FOV_shape: 0 # 0: normal FoV Shape (e.g., spinning lidars), 1: Corn Shape (Non-repetitive Scan)
FOV_theta_range: [-7,52] # Unit: deg
FOV_phi_range: [-180,180] # Unit: deg
FOV_depth: 40.0 # Unit: meter
sensor_res_hor: [0.1] # Unit: deg
sensor_res_vert: [0.2] # Unit: deg
environment: [-25.0,-15.0,0.0,17.0,25.0,8.0] # Unit: meter
point_frame: "body" #
lidar_topic: "/cloud_registered_body"#
odom_topic: "/Odometry"#
odom_topic_type: "odometry"#
fixed_frame: "camera_init"#`
Thanks by share this application for others learning,
with catkin build
`ws/devel/.private/dmap/lib/libdmap_lib.so: undefined reference to `typeinfo for fmt::v9::format_error'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/example.dir/build.make:490: /home/ibox/dmap_ws/devel/.private/dmap/lib/dmap/example] Error 1
make[1]: *** [CMakeFiles/Makefile2:1256: CMakeFiles/example.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
With catkin_make
`[ 85%] Building CXX object D-Map/CMakeFiles/example.dir/src/DMap_example.cpp.o
[100%] Linking CXX executable /home/ibox/dmap_ws/devel/lib/dmap/example
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `fmt::v9::detail::throw_format_error(char const*)'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `vtable for fmt::v9::format_error'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `fmt::v9::detail::assert_fail(char const*, int, char const*)'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `fmt::v9::detail::thousands_sep_result<char> fmt::v9::detail::thousands_sep_impl<char>(fmt::v9::detail::locale_ref)'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `fmt::v9::format_error::~format_error()'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `fmt::v9::detail::dragonbox::decimal_fp<float> fmt::v9::detail::dragonbox::to_decimal<float>(float)'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `fmt::v9::detail::is_printable(unsigned int)'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `fmt::v9::detail::print(_IO_FILE*, fmt::v9::basic_string_view<char>)'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `char fmt::v9::detail::decimal_point_impl<char>(fmt::v9::detail::locale_ref)'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `fmt::v9::detail::dragonbox::decimal_fp<double> fmt::v9::detail::dragonbox::to_decimal<double>(double)'
/usr/bin/ld: /home/ibox/dmap_ws/devel/lib/libdmap_lib.so: undefined reference to `typeinfo for fmt::v9::format_error'
collect2: error: ld returned 1 exit status
make[2]: *** [D-Map/CMakeFiles/example.dir/build.make:490: /home/ibox/dmap_ws/devel/lib/dmap/example] Error 1
make[1]: *** [CMakeFiles/Makefile2:1897: D-Map/CMakeFiles/example.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
`
it happens with amd64 cpu, 20.04, and with fmtros package installed from source or without it, libmmt dev is installed in the system. used -j2 or -j4 with same error.
I have it installed in jetson orin nx, I dont remember if I had this error and fixed it or it is new. I think I had a error with jetson and fixed it , will check the bash.rc history, but I live the issue just in case.
Dmap is absolutely a marvellous work, I tried it on my own dataset, and fount that it could construct a map with high resolution and very low disk usage. However, I found there`s a few questions about it and wish you could consider it.
Firstly, I tried to comment Octree updating code in D-map.cpp (octree.UpdateTree(&segtree, init_FoV, &cur_depthmap);) . I observed that the grid map remained unaffected, and the map quality stayed the same. It appears that the construction of the grid map does not depend on the octree map to represent known cells. This is contrary to my expectation: the occupied map should only update cells marked as known by the octree map.
(left is UpdateTree commented, while the right is not commented)
Secondly, since Dmap assumes the scene to be static, dynamic objects persist in the map and form ghost, which can be seen in picture above. As far as I know, works like Removert or Erasor can be used to remove them from the map, or M-detector can filter dynamic objects before mapping. However, is there a way to modify DMap to make it suitable for dynamic scenes, similar to those maps with occupancy probabilities?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.