-
Notifications
You must be signed in to change notification settings - Fork 619
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
odometry is increasing continuously such as drift is not being corrected. #52
Comments
You probably need to adjust the imu detection threshold |
the imu detection threshold init_imu_thresh looks to determine when to start ,and I just ran a test setting to 5 which i will have to move a little harder. But this does not solve the issue. are the parameters of I would expect to see the print message "MSCKF update (0 feats) and SLAM update (0 feats )" higher than zero. any other ideas? how about the tracker/extractor properties? |
Your camera distortion looks huge.
They shouldn't be over 0.5 normally.
If your distortion is fisheye, then make sure you enable that.
…On Thu, Apr 16, 2020, 6:05 PM NicoNorena ***@***.***> wrote:
the imu detection threshold init_imu_thresh looks to determine when to
start ,and I just ran a test setting to 5 which i will have to move a
little harder. But this does not solve the issue.
are the parameters of up_msckf_sigma_px and up_slam_sigma_px in terms of
pixels? I used fraction assuming that it was normalized,but it did not
help. When I use integers like 12, I can see some MSCKF features being
updated.
[image: Screenshot from 2020-04-16 17-59-24]
<https://user-images.githubusercontent.com/37921997/79510863-2c55ba00-800c-11ea-844b-ee67bf885c8f.png>
[image: Screenshot from 2020-04-16 18-00-14]
<https://user-images.githubusercontent.com/37921997/79510877-31b30480-800c-11ea-968d-b661f3fbec97.png>
I would expect to see the print message "MSCKF update (0 feats) and SLAM
update (0 feats )" higher than zero.
any other ideas? how about the tracker/extractor properties?
fast_threshold or the min_px_dist
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#52 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAQ6TYSYHIV77777SOYZ3B3RM56MPANCNFSM4MKEWGHQ>
.
|
I increased the IMU parameters by x80 from the calculated I got from Kalibr_alla. Also, I've set the sigma_px parameters back to one. This helped alot. |
The imu noise in that image seems to be pretty large. I would try using the eth noise parameters which we have found normally works good on most sensors. The pixel error normally shouldn't go over one if you have good calibration (i.e. 1 pixel reprojection error on the raw image). You can always test and try to use the values that the system calibrates to if you have poor initial. Also not sure how "fisheye" the ZEDs images are, but if it has some pretty bad distortion I would recommend using equidistant / fisheye. I assume you are following this calibration guide? edit: The commented noises look on a good order based on my experience. Your random walks shouldn't normally be large at all. If you want to inflate something inflate the noise density terms. The gyroscope random walk seems high in both the commended and very very high in what you are using. |
I tested and the fisheye option did not help much. I looked at the documentation and the ZED stereo cameras does not use a fisheye len. I did noticed that the initial calibration i used was incorrect. It is working much better now. as you see in the picture movement side to side, but in reality I was moving the camera up and down. Do you have any idea of why would the estimation be coming out on a different axis? |
If you are able to upload a bag, launch file, and your kalibr calibration result.txt I can take a look at it. From what you posted, your transformation between imu and camera might be wrong. |
thanks, I didn't think to look whether the zed used a rolling shutter, effectively they do. Before moving away from using this stereo camera, I ran a quick experiment. as you mentioned, it behaved much stable as long as I increased the px noise to at least 10. I was seeing the behavior of the estimation moving up when moving side to side. The motion forward and back was consistent with a lot of resistant when moving back, I moved really slowed. would this behavior occur from not modeling the rolling shutter? I am convince that a combination of the rolling shutter behavior and increasing the px noise causes the weird behavior. |
Did you calibrate using Kalibr or tried to get the extrinsics using the ZED driver? |
yes I used Kalibr, I didn't used the extrinsic that the ZED wrapper publishes. I thought the same thing whether the TF was different, I looked in the code to see whether the follow a different order of the x, y, and z axis . I assumed that the vector was ordered as x,y,z . |
The transformations you are using are incorrect (if the screenshot is what you are using).
|
@NicoNorena Do you mind posting your launch file? I have the same ZED Mini camera and I am trying to run the same tests. |
I cant post the whole launch file but you want use all the data above to set the parameters. the calibration on every camera is different, so you will need to calibrate your zed camera offline. if you read slowly above the use can use the calibration file I attached to set your parameters. Since the Zed uses a rolling shutter you have to increase the pix noise as workout, not the best solution. |
added support to ready stereo feed, and IMU , I am using the Zed mini from stereoLabs.
I added the corresponding offline calibration parameters and noise parameter of IMU and tried modifying the "_sigma_px" parameters. But it seems not to help much
After it starts the launch file, the inertial frame moves towards infinity specially on the z axis.
Do you have any idea why this is happening?
I was wondering whether if there is something on the KTL that is causing this? also I ran it with the KTL set to false (discrete mode), and it broke with an exception.
any ideas?
The text was updated successfully, but these errors were encountered: