neufieldrobotics / MultiCamSLAM

MIT License
136 stars 26 forks source link

Performance not match with the results given in paper #11

Open MiyuruThathsara opened 4 weeks ago

MiyuruThathsara commented 4 weeks ago

I highly appreciate your work. Btw, I have reproduced your code and run it using both ROS and non-ROS approaches. However, evaluations have shown that the frame rate is very slow compared to the value mentioned in the paper which is 11.45 fps.

ISEC_Lab1 Dataset

  1. Five overlapping camera scenario - 3.5 fps (Non-ROS) - Robust performance
  2. Five overlapping camera scenario - around 3.5 fps (ROS) - Not Robust performance (very often loses track)
  3. Four overlapping camera scenario - 4.5 fps (Non-ROS) - Robust performance
  4. Less than four overlapping scenarios the system has not been able to initialize

Tested for EuRoC MH_01_easy dataset in Stereo configuration too. Performance is very poor. Very often loses track and it does not eventually initialize.

My PC has the following specs

Can you please elaborate on this? Why am I not getting the exact performance results mentioned in the paper?

gfr-misha commented 4 weeks ago

Not the answer you expected, but our team is also working on using this package for multicam slam on the drone. The README of this package is not super clear and we were unable to run successfully even the example dataset provided. Do you mind sharing your launch commands and things you had to change in configs etc to launch these two scenarios from your post?

Five overlapping camera scenario - 3.5 fps (Non-ROS) - Robust performance
Five overlapping camera scenario - around 3.5 fps (ROS) - Not Robust performance (very often loses track)

Maybe we can help each other here :)

MiyuruThathsara commented 3 weeks ago

I'm sorry for the late reply. I would like to recommend you use the non-ROS-based approach as it is quite robust and the ROS-based approach rarely tracks the camera trajectory.

Further, by properly updating the configuration files you can make the system run. However, if you encounter any segmentation fault please remove code lines that are there to accommodate for camera distortion (I'm quite not sure whether this is the perfect way, I was unable to understand why segmentation fault happens from respective opencv function, removing those lines solved the issue for me. Btw there was no track lost).

Aaron1356 commented 3 weeks ago

I am not fully understanding what you mean by non-ROS. Since the CMake files all have the ROS dependency how are you building and running the code without ros.

MiyuruThathsara commented 3 weeks ago

Apologies if my previous explanation was unclear. To clarify, when I refer to a "Non-ROS-based implementation," I mean setting ros=0, while a "ROS-based implementation" involves enabling ROS (i.e., ros=1).

I can confirm that I've built the repository with the necessary ROS dependencies. Could you please advise further based on this setup?

leec525 commented 2 weeks ago

Hello, I am running the code according to the steps provided by the author and I am not able to run the ISEC_Lab1 dataset successfully. I ran it using ROS and reported the error as shown. Can you provide the code configuration file and some processing details of your successful run? Can you send your successful code project file to my email xiamin_1997@163.com, really thank you very much, can not successfully run the code troubled me for a long time, really very hope to get your help! error

Aaron1356 commented 2 weeks ago

I can not, I am having a similar issue where I am not able to get the example dataset running. I can get the GUI to appear when ros =1 but I only get a seg fault when ros =0 so working on that now.