Skip to content
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

Question about relSweepTime and _imuPositionShift #162

Open
sus71 opened this issue Jul 10, 2021 · 1 comment
Open

Question about relSweepTime and _imuPositionShift #162

sus71 opened this issue Jul 10, 2021 · 1 comment

Comments

@sus71
Copy link

sus71 commented Jul 10, 2021

Dear all,

A question about these two variables. Please correct me if I am wrong. The relSweepTime, from my understanding, is the current time relative to the sweep start time, as calculated by toSec(_scanTime - _sweepStart) + relTime; relTime is the point time stamp relative to the scan start time. However, when calculating the _ImuPositionShift, the _imuPositionShift = _imuCur.position - _imuStart.position - _imuStart.velocity * relSweepTime indicates that the _imuStart(which is the IMU state at scan start time) is multiplied by the relSweepTime. It results in: velocity from a scan start * time duration from a sweep start to current. Why is it not _imuStart.velocity * relTime? It is a velocity from a scan start * time duration from a scan start to current.

And idea on this? Thanks!

@sterngerlach
Copy link

In BasicScanRegistration::reset(const Time&), both _scanTime (timestamp of the scan) and _sweepStart (timestamp of the sweep) are set to scanTime, which means that toSec(_scanTime - _sweepTime) is actually 0 in setIMUTransformFor(), and _imuPositionShift becomes _imuCur.position - (_imuStart.position + _imuStart.velocity * relTime).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants