Closed TaozheLi closed 10 months ago
Process seems legit... Could you check that the camera topic in our bag and in the parameter file match and are in same namespace :
rosbag info kitti_data_odometry_color_sequence_00.bag
cat specifically_yaml_file | grep topic
Another point, when replaying bag it is usually recommended to use simulated time.
you should run rosparam set /use_sim_time true
before starting ov2slam.
and start rosbag with simulated clock:
rosbag play --clock kitti_data_odometry_color_sequence_00.bag
Thank you for your reply. I figured out topic thing this morning actually. But right now new problems came out.It is
Starting the measurements reader thread!
terminate called after throwing an instance of 'cv::Exception'
what(): OpenCV(4.2.0) ../modules/core/src/matrix.cpp:406: error: (-215:Assertion failed) m.dims >= 2 in function 'Mat'
Stack trace (most recent call last) in thread 525310:
#17 Object "[0xffffffffffffffff]", at 0xffffffffffffffff, in
#16 Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x7f6f32df5132, in clone
#15 Object "/lib/x86_64-linux-gnu/libpthread.so.0", at 0x7f6f332e7608, in
#14 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", at 0x7f6f32fb9df3, in
#13 Object "/home/rushmian/catkin_ws/devel/lib/libov2slam.so", at 0x7f6f3383dda0, in SlamManager::run()
#12 Object "/home/rushmian/catkin_ws/devel/lib/libov2slam.so", at 0x7f6f33859088, in VisualFrontEnd::visualTracking(cv::Mat&, double)
#11 Object "/home/rushmian/catkin_ws/devel/lib/libov2slam.so", at 0x7f6f33889775, in MapManager::createKeyframe(cv::Mat const&, cv::Mat const&)
#10 Object "/home/rushmian/catkin_ws/devel/lib/libov2slam.so", at 0x7f6f338892d4, in MapManager::extractKeypoints(cv::Mat const&, cv::Mat const&)
#9 Object "/home/rushmian/catkin_ws/devel/lib/libov2slam.so", at 0x7f6f338792fc, in FeatureExtractor::describeBRIEF(cv::Mat const&, std::vector<cv::Point_<float>, std::allocator<cv::Point_<float> > > const&) const
#8 Object "/usr/lib/x86_64-linux-gnu/libopencv_core.so.4.2", at 0x7f6f33474f53, in cv::Mat::Mat(cv::Mat const&, cv::Range const&, cv::Range const&)
#7 Object "/usr/lib/x86_64-linux-gnu/libopencv_core.so.4.2", at 0x7f6f33553dd3, in cv::error(int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, char const*, int)
#6 Object "/usr/lib/x86_64-linux-gnu/libopencv_core.so.4.2", at 0x7f6f33360c1f, in
#5 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", at 0x7f6f32f8d698, in __cxa_throw
#4 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", at 0x7f6f32f8d3e6, in std::terminate()
#3 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", at 0x7f6f32f8d37b, in
#2 Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", at 0x7f6f32f818d0, in
#1 Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x7f6f32cf8858, in abort
#0 Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x7f6f32d1900b, in gsignal
Aborted (Signal sent by tkill() 525293 1000)
Aborted (core dumped)
Problems happened in
file feature_extractor.cpp
function FeatureExtractor::describeBRIEF(const cv::Mat &im, const std::vector<cv::Point2f> &vpts)
line 258
pbrief_->compute(im, vkps, descs);
It can't compute descriptors, I try to printf descs
, it's []
. However, detected feature which saved in vkps
is not null, evidence is that I plotted key-points which saved in vkps
on input_image.
Hum. Could you clarify the following points:
Most of the opencv error comes from the opencv version in ros that did not match the opencv version used to build ov2slam.
It's very strange to have keypoint but be unable to extract at least one descriptor, is the image im
is correct in the call ? if you build with OPENCV_CONTRIB you can try to deactive it.
Thanks. I've been busy last few days. I followed your advice and reinstall opencv 3.4 version, it works
How to run it ? I run this ov2slam as following sequences after compiled: