autolidarperception / segmenters_lib Goto Github PK
View Code? Open in Web Editor NEWThe LiDAR segmenters library, for segmentation-based detection.
The LiDAR segmenters library, for segmentation-based detection.
hello, @Durant35
have you reproduced the paper Real-Time and Accurate Segmentation of 3-D Point Clouds Based on Gaussian Process Regression?
-- Configuring done
-- Generating done
-- Build files have been written to: /home/---/LidarPerception_ws/build
####
#### Running command: "make -j6 -l6" in "/home/---/LidarPerception_ws/build"
####
[ 0%] Built target std_msgs_generate_messages_cpp
[ 0%] Built target sensor_msgs_generate_messages_cpp
[ 0%] Built target std_msgs_generate_messages_py
[ 0%] Built target sensor_msgs_generate_messages_py
[ 0%] Built target _autosense_msgs_generate_messages_check_deps_TrackingObjectArray
[ 0%] Built target _autosense_msgs_generate_messages_check_deps_TrackingFixedTrajectoryArray
[ 0%] Built target _autosense_msgs_generate_messages_check_deps_PointCloud2Array
Geneate messages link into common include
[ 10%] Built target autosense_msgs_generate_messages_py
[ 18%] Built target autosense_msgs_generate_messages_cpp
[ 18%] Built target autosense_msgs_generate_messages
[ 24%] Built target common_lib
[ 29%] Built target roi_filters_lib
[ 40%] Built target feature_extractors_lib
[ 45%] Built target object_builders_lib
[ 48%] Building CXX object perception/libs/segmenters/CMakeFiles/segmenters_lib.dir/src/don_segmenter.cpp.o
[ 67%] Built target tracking_lib
In file included from /usr/include/c++/9/vector:67,
from /usr/include/eigen3/Eigen/StdVector:15,
from /usr/include/pcl-1.10/pcl/pcl_base.h:49,
from /usr/include/pcl-1.10/pcl/features/feature.h:48,
from /usr/include/pcl-1.10/pcl/features/don.h:41,
from /home/---/LidarPerception_ws/src/perception/libs/segmenters/include/segmenters/don_segmenter.hpp:8,
from /home/---/LidarPerception_ws/src/perception/libs/segmenters/src/don_segmenter.cpp:5:
/usr/include/c++/9/bits/stl_vector.h: In instantiation of ‘struct std::_Vector_base<int, pcl::PointXYZI>’:
/usr/include/c++/9/bits/stl_vector.h:386:11: required from ‘class std::vector<int, pcl::PointXYZI>’
/home/---/LidarPerception_ws/src/perception/libs/segmenters/src/don_segmenter.cpp:108:53: required from here
/usr/include/c++/9/bits/stl_vector.h:84:21: error: no type named ‘value_type’ in ‘struct pcl::PointXYZI’
84 | rebind<_Tp>::other _Tp_alloc_type;
| ^~~~~~~~~~~~~~
/usr/include/c++/9/bits/stl_vector.h:86:9: error: no type named ‘value_type’ in ‘struct pcl::PointXYZI’
86 | pointer;
| ^~~~~~~
/usr/include/c++/9/bits/stl_vector.h: In instantiation of ‘class std::vector<int, pcl::PointXYZI>’:
/home/---/LidarPerception_ws/src/perception/libs/segmenters/src/don_segmenter.cpp:108:53: required from here
/usr/include/c++/9/bits/stl_vector.h:387:5: error: no type named ‘value_type’ in ‘struct pcl::PointXYZI’
387 | {
| ^
/usr/include/c++/9/bits/stl_vector.h:471:20: error: no members matching ‘std::vector<int, pcl::PointXYZI>::_Base {aka std::_Vector_base<int, pcl::PointXYZI>}::_M_allocate’ in ‘std::vector<int, pcl::PointXYZI>::_Base’ {aka ‘struct std::_Vector_base<int, pcl::PointXYZI>’}
471 | using _Base::_M_allocate;
| ^~~~~~~~~~~
/usr/include/c++/9/bits/stl_vector.h:472:20: error: no members matching ‘std::vector<int, pcl::PointXYZI>::_Base {aka std::_Vector_base<int, pcl::PointXYZI>}::_M_deallocate’ in ‘std::vector<int, pcl::PointXYZI>::_Base’ {aka ‘struct std::_Vector_base<int, pcl::PointXYZI>’}
472 | using _Base::_M_deallocate;
| ^~~~~~~~~~~~~
/usr/include/c++/9/bits/stl_vector.h:474:20: error: no members matching ‘std::vector<int, pcl::PointXYZI>::_Base {aka std::_Vector_base<int, pcl::PointXYZI>}::_M_get_Tp_allocator’ in ‘std::vector<int, pcl::PointXYZI>::_Base’ {aka ‘struct std::_Vector_base<int, pcl::PointXYZI>’}
474 | using _Base::_M_get_Tp_allocator;
| ^~~~~~~~~~~~~~~~~~~
make[2]: *** [perception/libs/segmenters/CMakeFiles/segmenters_lib.dir/build.make:128: perception/libs/segmenters/CMakeFiles/segmenters_lib.dir/src/don_segmenter.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:3116: perception/libs/segmenters/CMakeFiles/segmenters_lib.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
Invoking "make -j6 -l6" failed
detection_node
as example using Ground Remover
and Non-ground Segmenter
demo.launch
, using demo.rviz
As discussed in #6
First of all, thank you for share your great work and sharing data.
This repo gives me a lot of inspiration and i have tried it with my rosbag log file.
Since our data is from VLP16, our LiDAR coverage is too short.(Points' sparsity)
So I have tried several clustering methods that this repo offering(REC, EC, RG and DoN)
In my opinion(I have just check through my eyes), Distance of Normals methods offer slightly better clustering for farther points.
What I'm asking is that are there any materials that I could refer to, since I have no knowledge about DoN methods.
Hope you could give me an advise. Thank you so much
Sincerly,
Hello, Thanks for the work. I am pretty impressed with your work. I want to know something from you. When I am running a rosbag (not kitti one), I can see it segments and remains in the (0, 0, 0) coordinate frame and publishing everything (ground/non-ground segmentation, bounding box etc.) . However, I need it to move along with the velodyne/base_link. I am publishing the dynamic frames in /tf and static frames in /tf_static and I can confirm that the topics are publishing data. My tf tree is (odom (static) --> base_link (moving) --> velodyne (moving)). I am publishing the static transform between base_link --> velodyne frame in /tf_static topic and publishing dynamic transform between odom -->base_link--> velodyne frame in /tf topic. Is there a way that it will subscribe to the /tf topic and publish the segmented regions w.r.t moving velodyne frame ??
Any help is appreciated. Thanks in advance.
File "/home/shuai/catkin_segment/src/kitti_ros/scripts/kitti_player.py", line 34, in
from evdev import InputDevice
ImportError: No module named evdev
How could I solve it?
Thanks!
您好,我问一下,运行您的demo对电脑的配置要求高吗?我运行demo没有错误,但是在rviz界面一直什么也没有,终端上只提示节点开始了,是我的电脑带不动吗?
git clone from AlphaBus and ./setup.sh
Errors << detection:make /home/sma96/AlphaBus_ws/logs/detection/build.make.004.log
/home/sma96/AlphaBus_ws/devel/.private/segmenters_lib/lib/libsegmenters_lib.so: undefined reference to `pcl::FieldComparison<pcl::PointNormal>::FieldComparison(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pcl::ComparisonOps::CompareOp, double)'
collect2: error: ld returned 1 exit status
make[2]: *** [/home/sma96/AlphaBus_ws/devel/.private/detection/lib/detection/detection_node] Error 1
make[1]: *** [CMakeFiles/detection_node.dir/all] Error 2
I set the parameter "rec_use_region_merge" true but still can't merge clusters between regions.Probably there is some bug between line 173 and 239 in region_euclidean_segmenter.cpp
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.