-
Notifications
You must be signed in to change notification settings - Fork 5.8k
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
RGBD_Odometry_FastICP.algorithmic fails on ARM64 #2817
Comments
Hi @savuor , @asmorkalov
On
but on Arm64, it triggers neither of them, and arrives to CPU version.
What hurts the process is that depth image is full of The normal implementation part is OK
but the intrinsic optimized part is mixing the
I confirmed that the test passes when I disable the intrinsic part and use only the general version.
So we should just treat the
which means, I need to fix from the Please let me know if there is any alternative way to fix this test failure. |
@tomoaki0705 You're right, looks like ARM64 implements min and max with NaNs so that the result is also NaN. This is the reason why #2818 happened. |
Perhaps, we could work in parallel ? |
@tomoaki0705 Yes, sounds feasible |
It is useful to reinterpret in mind
For x86-specific just swap arguments to get "broken" result while handling NaNs:
details: https://stackoverflow.com/a/40199125 P.S. Passing NaN values to OpenCV functions is "undefined behavior" until it is clearly stated in the documentation. |
@alalek Thank you for the explanation. The function call are cascaded,
Fixing from 3 was my PR, but that was too much. It's out of choice. Fixing from The alternative choice I can imagine is to restrict Where should this fix happen ? |
System information (version)
Hardware:
Detailed description
Steps to reproduce
Issue submission checklist
answers.opencv.org, Stack Overflow, etc and have not found solution
The text was updated successfully, but these errors were encountered: