Closed dennisushi closed 1 year ago
strict_check= False
ignores the error, but it's weird that it happens in the first place.
Hi @dennisushi ,
thanks for reporting.
This is the check that fails:
Default value for tolerance is 1e-6
.
The error message obviously makes no sense, since reflection would mean that the determinant is -1.
However, a warning about numerical precision seems to make sense in that case. You can avoid it by orthonormalization before calling the function (pytransform3d.rotations.norm_matrix
).
Could you tell me what your input is?
Fixed with #219. Detailed explanation in the PR.
Could you tell me what your input is?
The input was an optimal transform generated by SVD (accounted for reflection), in the end I solved it by converting to numpy before normalizing with the determinant instead of after. Thanks for the quick response.
Leads to:
So I added:
And this ended up even more ridiculous: