[Bug 1471047] Re: [SRU] urdfdom-headers: critical numerical issues problem when converting angles
Julian Andres Klode
julian.klode at canonical.com
Thu Mar 5 09:22:35 UTC 2020
Trusty is eol, unsubscribing ubuntu-sponsors.
** Changed in: urdfdom-headers (Ubuntu Trusty)
Status: New => Won't Fix
--
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1471047
Title:
[SRU] urdfdom-headers: critical numerical issues problem when
converting angles
Status in urdfdom-headers package in Ubuntu:
Fix Released
Status in urdfdom-headers source package in Trusty:
Won't Fix
Bug description:
[Impact]
* When using the urdfdom headers versions 0.2.3 (on Trusty) and 0.3.0-1
(Utopic and Vivid) there is a problem in the maths which means that two
very similar quaternions can result in different and non-equivalent roll
pitch yaw angles. This is a severe bug for angles related to a severe bug
in the mathematical calculations.
* Upstream bug: https://github.com/ros/urdfdom/issues/49
* urdfdom-headers is a package extensively use by probably the most famous
open source robotics framework, ROS (Robot Operative System). So it
potentially affects a big part of the robotics open source community.
* The patch is already hosted in the debian-science repository (waiting for
mentor upload) and will land soon in Debian Sid and Ubuntu Wily after it:
http://anonscm.debian.org/cgit/debian-science/packages/urdfdom-headers.git/commit/?id=c92c198a30d34a74abcf1905eeb484bfc76b0f5e
[Test Case]
* apt-get install libboost-test1.54-dev liburdfdom-headers-dev
* Download the urdf_unit_test.cpp from:
https://raw.githubusercontent.com/ros/urdfdom/master/urdf_parser/test/urdf_unit_test.cpp
* g++ urdf_unit_test.cpp -lboost_unit_test_framework -o test
* ./test
* The expected result at the end of the test with the fixed version is:
...
*** No errors detected
The failing versions should report:
...
urdf_unit_test.cpp(56): error in "test_rotation_get_set_rpy_idempotent":
check quat_are_near(rot0, rot1) failed
…
*** 1 failure detected in test suite "URDF_UNIT_TEST"
[Regression Potential]
* urdfdom-headers is a header only package and we are not altering the
ABI/API in any sense, just changing the way of computing maths.
* The dangerous computations (mostly asin and atan2) present in the patch
were already present in the released code. That should minimize the
possible regressions introduced by the patch. The computation of angles is
already broken, so a possible bug in the new computation will not bring a
worse state than current one.
[Other Info]
* I'm attaching the debdiff related to Trusty release, but I'm
available to make any other needed, Vivid or Utopic.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/urdfdom-headers/+bug/1471047/+subscriptions
More information about the Ubuntu-sponsors
mailing list