Cartographer is a system that provides real-time simultaneous localization and mapping (SLAM) in 2D and 3D across multiple platforms and sensor configurations.
with the intention to alter the trajectory manually by myself (i.e. rotate it) I would like to create my own pbstream writer in python. However I am having issues with writing the output stream. I narrowed the problem down to how the new stream is written and saved in python. In the code example below I am trying to simply read an input pbstream and write it to a new output pbstream, so no (de)compression or (de)serialization is happening for now.
The new pbstream is created with equal size to that of the input, however when I try to use it with Cartographer, I am getting the error message: 'protostream.cc:75 Check failed: in.good() Failed to open proto stream'. So I assume the problem lies somewhere in how the stream is written with python.
Does anyone know what exactly is triggering the good() check to fail and how to avoid it?
I could figure it out, if I leave out the seek() in both the writing and reading it now works. In particular if I use b'\xdb\x01\xf5[{\x1f\x1d{' as the header, Cartographer now accepts it
Hey everybody,
with the intention to alter the trajectory manually by myself (i.e. rotate it) I would like to create my own pbstream writer in python. However I am having issues with writing the output stream. I narrowed the problem down to how the new stream is written and saved in python. In the code example below I am trying to simply read an input pbstream and write it to a new output pbstream, so no (de)compression or (de)serialization is happening for now.
The new pbstream is created with equal size to that of the input, however when I try to use it with Cartographer, I am getting the error message: 'protostream.cc:75 Check failed: in.good() Failed to open proto stream'. So I assume the problem lies somewhere in how the stream is written with python.
Does anyone know what exactly is triggering the good() check to fail and how to avoid it?