Public bug reported:

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 makes 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

[Impact]
* urdfdom-headers is a packages extensively use by probably the most famous 
open source robotics framework, ROS (Robot Operative System). So it potentially 
affects to a big part of the robotics open source community.
[Development version]
The patch is already hosted in the debian-science repository (waiting for 
mentor upload) and will land soon in Debian Sid and Ubuntu Willy after it: 
http://anonscm.debian.org/cgit/debian-science/packages/urdfdom-headers.git/commit/?id=c92c198a30d34a74abcf1905eeb484bfc76b0f5e

I’m also waiting a new upstream version to sync Debian Sid and Ubuntu
Willy.

[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 hedare 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.

** Affects: urdfdom-headers (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: trusty

** Patch added: "Debdiff for trusty attached"
   
https://bugs.launchpad.net/bugs/1471047/+attachment/4423707/+files/urdfdom-headers_0.2.3%2Bdfsg-1ubuntu1.debdiff

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1471047

Title:
  [SRU] urdfdom-headers: critical numerical issues problem when
  converting angles

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/urdfdom-headers/+bug/1471047/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to