claydergc / loam_velodyne_kitti Goto Github PK
View Code? Open in Web Editor NEWloam velodyne tested with the KITTI dataset
loam velodyne tested with the KITTI dataset
I've transplanted your project into vc2015, only one place need to be modified:
nanoflann_pcl.h
the definition of setInputCloud() need to be moved into declaration
however the output trajectory is deformed
I'm new to LOAM, hoping these may be useful to you:
Using LeGO-LOAM on KITTI
LOAM on KITTI 08
/home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp: In member function ‘void loam::MultiScanRegistration::process(const pcl::PointCloudpcl::PointXYZ&, const float&)’:
/home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:133:76: error: parameter declared ‘auto’
std::for_each(_laserCloudScans.begin(), _laserCloudScans.end(), {v.clear(); });
^
/home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp: In lambda function:
/home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:133:80: error: ‘v’ was not declared in this scope
std::for_each(laserCloudScans.begin(), laserCloudScans.end(), {v.clear(); });
^
/home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:133:80: note: suggested alternative:
In file included from /usr/include/boost/preprocessor/tuple/elem.hpp:22:0,
from /usr/include/boost/preprocessor/arithmetic/add.hpp:21,
from /usr/include/boost/mpl/aux/preprocessor/def_params_tail.hpp:66,
from /usr/include/boost/mpl/aux/na_spec.hpp:28,
from /usr/include/boost/mpl/not.hpp:20,
from /usr/include/boost/mpl/assert.hpp:17,
from /usr/include/pcl-1.7/pcl/point_traits.h:51,
from /usr/include/pcl-1.7/pcl/register_point_struct.h:55,
from /usr/include/pcl-1.7/pcl/point_types.h:44,
from /home/xiangdd/loam_velodyne_kitti/include/loam_velodyne/common.h:36,
from /home/xiangdd/loam_velodyne_kitti/include/loam_velodyne/ScanRegistration.h:37,
from /home/xiangdd/loam_velodyne_kitti/include/loam_velodyne/MultiScanRegistration.h:36,
from /home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:33:
/usr/include/pcl-1.7/pcl/point_types.h:369:1: note: ‘pcl::fields::v’
POINT_CLOUD_REGISTER_POINT_STRUCT (pcl::_PointXYZHSV,
^
In file included from /usr/include/c++/4.8/algorithm:62:0,
from /usr/include/boost/smart_ptr/shared_ptr.hpp:42,
from /usr/include/boost/shared_ptr.hpp:17,
from /usr/include/pcl-1.7/pcl/PCLPointField.h:11,
from /usr/include/pcl-1.7/pcl/point_traits.h:48,
from /usr/include/pcl-1.7/pcl/register_point_struct.h:55,
from /usr/include/pcl-1.7/pcl/point_types.h:44,
from /home/xiangdd/loam_velodyne_kitti/include/loam_velodyne/common.h:36,
from /home/xiangdd/loam_velodyne_kitti/include/loam_velodyne/ScanRegistration.h:37,
from /home/xiangdd/loam_velodyne_kitti/include/loam_velodyne/MultiScanRegistration.h:36,
from /home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:33:
/usr/include/c++/4.8/bits/stl_algo.h: In instantiation of ‘_Funct std::for_each(_IIter, _IIter, _Funct) [with _IIter = __gnu_cxx::__normal_iterator<pcl::PointCloudpcl::PointXYZI, std::vector<pcl::PointCloudpcl::PointXYZI > >; _Funct = loam::MultiScanRegistration::process(const pcl::PointCloudpcl::PointXYZ&, const float&)::__lambda0]’:
/home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:133:92: required from here
/usr/include/c++/4.8/bits/stl_algo.h:4417:14: error: no match for call to ‘(loam::MultiScanRegistration::process(const pcl::PointCloudpcl::PointXYZ&, const float&)::__lambda0) (pcl::PointCloudpcl::PointXYZI&)’
__f(__first);
^
/home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:133:68: note: candidates are:
std::for_each(_laserCloudScans.begin(), _laserCloudScans.end(), {v.clear(); });
^
In file included from /usr/include/c++/4.8/algorithm:62:0,
from /usr/include/boost/smart_ptr/shared_ptr.hpp:42,
from /usr/include/boost/shared_ptr.hpp:17,
from /usr/include/pcl-1.7/pcl/PCLPointField.h:11,
from /usr/include/pcl-1.7/pcl/point_traits.h:48,
from /usr/include/pcl-1.7/pcl/register_point_struct.h:55,
from /usr/include/pcl-1.7/pcl/point_types.h:44,
from /home/xiangdd/loam_velodyne_kitti/include/loam_velodyne/common.h:36,
from /home/xiangdd/loam_velodyne_kitti/include/loam_velodyne/ScanRegistration.h:37,
from /home/xiangdd/loam_velodyne_kitti/include/loam_velodyne/MultiScanRegistration.h:36,
from /home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:33:
/usr/include/c++/4.8/bits/stl_algo.h:4417:14: note: void ()()
__f(__first);
^
/usr/include/c++/4.8/bits/stl_algo.h:4417:14: note: candidate expects 1 argument, 2 provided
/home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:133:77: note: loam::MultiScanRegistration::process(const pcl::PointCloudpcl::PointXYZ&, const float&)::__lambda0
std::for_each(_laserCloudScans.begin(), _laserCloudScans.end(), {v.clear(); });
^
/home/xiangdd/loam_velodyne_kitti/src/lib/MultiScanRegistration.cpp:133:77: note: candidate expects 0 arguments, 1 provided
make[2]: *** [src/lib/CMakeFiles/loam.dir/MultiScanRegistration.cpp.o] 错误 1
make[1]: *** [src/lib/CMakeFiles/loam.dir/all] 错误 2
make: *** [all] 错误 2
Hey,
I'm Yoshua, robotics engineer working in Zürich, Switzerland but originally from Venezuela. Nice to meet you!
I'm interested in the work you're doing. I've been doing research on LiDAR SLAM and loop closure detection, with the purpose of further increasing the accuracy of LOAM, obtaining both globally consistent and locally accurate maps. As you, I have observed that loam_velodyne from laboshinl doesn't give highly accurate results as the ones claimed by Zhang et al in their papers.
I wanted to ask you, first of all, what kind of changes you did to the LOAM code, and if you took any of the existing LOAM forks as a starting point (for example: laboshinl's fork, lego-loam, the original version from zhang, martin-velas, etc). I would be interested in collaborating to make the open source version of LOAM as accurate as possible.
Thank you.
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.