Thanks to your project, M-LOAM.
I am really interested in your paper and code, so I studied your code narrowly.
Firstly, I have a question about calTimestamp function in feature_extract.cpp which calculates rel_time.
When I tested your code with SR2 sequence, it shows various values whose sign are minus and plus.
Also, it does not show continuous rel_time.
For example, SR2 sequence's start_ori and end_ori are pi and 3pi(-pi+2pi+2pi).
Because atan2 is utilized to measure the angle, ori gets value from -pi to pi.
1) When the value is between pi and pi/2, rel_time has a minus value because there is no change in the value of ori.
2) For values between pi/2 and 0, ori is smaller than start_ori by pi/2, 2pi is added, and half_passed is passed. This translates to a range between 5pi/2 and 2pi to calculate rel_time.
3) When it has a value between 0 and -pi/2, 2pi is added and converted to a value between 2pi and 3/2pi to calculate rel_time.
4) Values between -pi/2 and -pi are converted to values between 3/2pi and pi by adding 2pi. Also, since it is more than 3/2pi less than end_ori, it converts to a value between 7/2pi and 3pi. At this time, rel_time is calculated.
The calculated rel_time is discontinuous, producing values greater than SCAN_PERIOD or negative values.
Q1) Can you explain exactly the criteria for calculating rel_time?
Second, After the calculation of rel_time, it is injected to intensity filed.
However, this intensity filed is utilized to save row_index by merging in image_segment function.
Thanks to your project, M-LOAM. I am really interested in your paper and code, so I studied your code narrowly.
Firstly, I have a question about calTimestamp function in feature_extract.cpp which calculates rel_time.
When I tested your code with SR2 sequence, it shows various values whose sign are minus and plus. Also, it does not show continuous rel_time. For example, SR2 sequence's start_ori and end_ori are pi and 3pi(-pi+2pi+2pi). Because atan2 is utilized to measure the angle, ori gets value from -pi to pi.
1) When the value is between pi and pi/2, rel_time has a minus value because there is no change in the value of ori. 2) For values between pi/2 and 0, ori is smaller than start_ori by pi/2, 2pi is added, and half_passed is passed. This translates to a range between 5pi/2 and 2pi to calculate rel_time. 3) When it has a value between 0 and -pi/2, 2pi is added and converted to a value between 2pi and 3/2pi to calculate rel_time. 4) Values between -pi/2 and -pi are converted to values between 3/2pi and pi by adding 2pi. Also, since it is more than 3/2pi less than end_ori, it converts to a value between 7/2pi and 3pi. At this time, rel_time is calculated.
The calculated rel_time is discontinuous, producing values greater than SCAN_PERIOD or negative values.
Q1) Can you explain exactly the criteria for calculating rel_time?
Second, After the calculation of rel_time, it is injected to intensity filed. However, this intensity filed is utilized to save row_index by merging in image_segment function.
Q2) Is row_index is related with rel_time?
I'm looking forward to receiving your answer.
Thank you.