-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Load trace.csv, navvis artifact. #58
Conversation
…ld information in intervals.
scantools/run_navvis_to_capture.py
Outdated
sensors['trace'] = create_sensor('trace', name='Mapping path') | ||
for trace in nv.get_trace(): | ||
timestamp_us = int(trace["nsecs"]) // 1_000 # convert from ns to us | ||
qvec = np.array([trace["ori_w"], trace["ori_x"], trace["ori_y"], trace["ori_z"]], dtype=np.float64) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are we sure about the convetion used for this file? (i.e., rig to world vs world to rig). Should the trace "sensor" be added to the rig?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah nevermind, just saw the documentation above (maybe worth adding that link to the parsing fo trace in the navvis class)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, I need to re-iterate on this PR, I will mark it as draft for the moment, apologies. Thanks for noticing this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The conversion in this file was actually imu to world! I fixed it in the commits now. It should be ready for review again
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should the trace "sensor" be added to the rig?
I was moving everything suck that the trace entry in the trajectory matches to the "navvis_rig" sensor (when we export as rig). So "trace" is the same as "navvis_rig" but I changed the name so we can filter it (the trace data are a lot of entries). I don't know if this is the best option, perhaps @MarioGini can comment here.
Maybe you are right in adding a new sensor to the rig. I can actually add all the cameras now since we read the sensor_frame.xml
so I could create the rig based on this file, rather than faking it from the first frame (the rig now is defined in the cam0, calculated in the first frame).
I fixed some issues with cam0 (upright problems and tile_id 0 is not actually identity, so I needed to apply this rotation only to the trace data, if I wanted to put in the same reference frame). |
This was merged without squash, I will revert and merged again to keep the git history short. |
Yes please! You could disable merge commits (I don't have permission to do so). |
The github button for reverting simply create a new PR reverting the changes, which won't remove the commits from history. I will have to probably do "hard reset" and then "force push" to remove from history from main. Any other alternative? |
You can squash the N commits introduced by the PR (with interactive rebase) and force push - you might need to temporarily disable the branch protection. |
Done. Steps:
|
From: https://knowledge.navvis.com/docs/mapping-path
For every dataset, the file trace.csv contains position, orientation, and magnetic field information in frequent intervals. Example: