Open CelestialBoon opened 6 years ago
Hmm, I guess it is possible that the system is simply dropping data. FYI, I haven't maintained Open Chisel since about 2015, I am not sure who (if anyone) is still maintaining the library at the Personal Robotics Lab.
Yep, just as I suspected. ChiselServer
simply overwrites old data with new data whenever it gets a new frame:
https://github.com/personalrobotics/OpenChisel/blob/master/chisel_ros/src/ChiselServer.cpp#L256
So if Chisel is lagging behind the framerate of the camera (very very possible), frames are going to get dropped non-deterministically. I think this is a decision I made early on because I was more concerned with the latest data getting into the map than all of the data at the time.
The server should be rewritten to queue up data and process it a frame at a time. Again, since I'm no longer a maintainer I don't know if or when I would be able to do this.
You may be interested in trying the spiritual successor to OpenChisel, VoxBlox from ETH zurich.
That's very interesting! My thanks for making me aware of it.
I've tested OpenChisel repeatedly with the sample launch file that uses the freiburg dataset and I'm noticing that the resulting meshes tend to vary, missing some piece or other, and ending up with a different number of vertexes each time.
Is this behaviour expected? It does the same with other datasets as well, like when interacting with rtabmap, and it gives the impression that it is only using a small portion of the data to fill in the TSDF (that is, only a fraction of the frames/point clouds it receives).
An example of the different meshes I obtain: freiburg_meshes.zip