LinHuican / stereo_dso_ros

GNU General Public License v3.0
56 stars 24 forks source link

"double free or corruption" error when using ETH dataset #1

Closed HainingLuo closed 6 years ago

HainingLuo commented 6 years ago

Hi,

I was running your ROS wrapper with Jetson TX1, the kitti dataset worked perfectly, but an error occurred when using ETH dataset as well as my own data.

So, everything went on smoothly at the beginning, however, after tracking few frames, I got this error screenshot from 2018-04-16 11-28-15

I altered your cmake and package files a little bit when building the project. CMakeLists.txt

Any idea what leads to this problem?

THANKS in advance.

LinHuican commented 6 years ago

Hi, Thank you for your attention. I have the similar problem, as I mentioned in the readme: "EuRoC dataset(To Do: Something wrong!)". As in the issue #https://github.com/HorizonAD/stereo_dso/issues/7, the author of STEREO DSO tested it on several euroc datasets, stereoDSO works on most of them but need to do lots of parameter tuning. For example: In "stereo_dso_ros.cpp": setting_kfGlobalWeight = 0.3f; setting_maxShiftWeightT= 0.04f (640 + 360); setting_maxShiftWeightR= 0.04f (640 + 360); setting_maxShiftWeightRT= 0.02f * (640 + 360); And the "calib": 458.654 457.296 367.215 248.375 -0.28340811 0.07395907 0.00019359 1.76187114e-05 752 480 crop 640 360 0.1100778421917135 Run: rosbag play --pause ~/Downloads/Dataset/ETH/V1_01_easy.bag -s 10

rosrun stereo_dso_ros stero_dso_ros calib=/home/huicanlin/catkin_ws/src/stereo_dso_ros/examples/camera_euroc.txt preset=0 mode=1

It worked well. Hope it will help you to solve the problem.

HainingLuo commented 6 years ago

Hi,

Thx for your response.

I changed my parameters as you suggested, but got the same error I mentioned above. I also tried several other different sets, and none of them worked.

The first project I build was using rosbuild like the way they did in ORB-SLAM, and now I have transformed it to be a catkin package(which is almost identical to your work). However, still cannot get rid of this error: *** Error in/home/nvidia/catkin_ws/devel/lib/stereo_dso_ros/stereo_dso_ros': double free or corruption (!prev): 0x00000000122465b0 *** bash: line 1: 5121 Aborted rosrun stereo_dso_ros stereo_dso_ros calib=/home/nvidia/catkin_ws/src/stereo_dso_ros/para/camera_euroc.txt preset=0 mode=1`

Is it might because that I'm running it on an ARM device? Any hint can be helpful.

Many thanks

LinHuican commented 6 years ago

Sorry for answering your question so late. My code just provides ROS interface for STEREO DSO and I will continue to study related issues. On your ARM device, the KITTI works well, I think the EuRoC also should work well. Please tell me how to solve it, if you find the answer. Best regards!

HainingLuo commented 6 years ago

Hi,

I think the reason of my previous issue is because of the poor computing power of my device(maybe it just cannot run in real time), and decided to use the stereo dso without ROS.

I'm closing the issue now and thx for helping anyway.