Hi,
My goal is to create a geolocated 3D point cloud using the stereo camera. The project information:
-
An RTK GNSS receiver, a Zed 2, and a Zed box.
-
I have all the GNSS positions and their estimated accuracy at 10-Hz through NMEA messages, i.e., NMEA-GGA message for the time, latitude, longitude and altitude, and NMEA-GST message for the time and position errors.
-
The time shift between GNSS messages and the camera recordings as SVO files is known, and I can give the position and the corresponding errors at each frame’s timestamp of the SVO.
-
The covariance matrix is defined using: covariance = [eph * eph, 0, 0, 0, eph * eph, 0, 0, 0, epv * epv], where eph is the horizontal error (typically below 0.05 m) and epv is the altitude error (typically below 0.1 m). One example of the matrix: [0.0034, 0.0, 0.0, 0.0, 0.0034, 0.0, 0.0, 0.0, 0.0292]. The matrix is not singular and is invertible (determinant ~ 1e-7).
-
I use the SDK 4.03 for the playback and fusion.
Now, my problem is that when I ingest the gnss_data to fusion module, it returns: “INVALID COVARIANCE”. I tried to change the covariance matrix to the default covariance = [1, 0.1, 0.1, 0.1, 1, 0.1, 0.1, 0.1, 1], then it returned “INVALID TIMESTAMP”.
Could you please help me understand what is the problem?
Is it possible to add an example recorded GNSS JSON + SVO files to your sample codes on: zed-sdk/geotracking/playback at master · stereolabs/zed-sdk · GitHub to understand how it works?
my_geotracking.py (9.8 KB)
gnss_tools.py (13.1 KB)
nmea_messages_definition.yaml (1.6 KB)