[eigen] scaling in Umeyama |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: [eigen] scaling in Umeyama
- From: "Radu B. Rusu" <radu.b.rusu@xxxxxxxxx>
- Date: Mon, 24 Sep 2012 12:23:17 -0700
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:reply-to:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; bh=vstY/CC8uXEoOBntr5vfUcBu/KO9UrNMuaKNzq7qwzE=; b=LEFaakjbmoYR130gV6bZUuBVCz/64Mm1Rb1Ra9C/YhjG/YY5zPeu6WqGiWr3L5aNie Z5wZuIf8Z/DpwhGOHOWe62phFztRZA/ph86Sw7oSqE8tdnRCBZ/+xDEXazTB0pR1RAVu hBweW2AoOfk/JlZmyYRiqUEFBYxusDafBhQb+uECJZpn3Z+DM2WknUueJL3gM9iSUBpe zr2mbtSonqLjgbQPszHPPMP64UcrWxAg3sU07G/Y1mq2xMcQIW1NcXPmksz/pBXGFRu2 EkzSg79u9zgj+FN8OXCuRRn4lUXRAzC+7tKoiWXZwNxGIesAH2VbqSBz3uBBjM8qn/Ay 7jXg==
I noticed a small discrepancy between the documentation for Umeyama and the actual implementation, and I was wondering
if this is a bug.
http://eigen.tuxfamily.org/dox/group__Geometry__Module.html#gab3f5a82a24490b936f8694cf8fef8e60 states "with_scaling Sets
c=1 when false is passed." However, looking at http://eigen.tuxfamily.org/dox/Umeyama_8h_source.html, I see:
00157 const Scalar c = 1/src_var * svd.singularValues().dot(S);
which is then applied to the translation component. In our tests, this led to a bad translation while the rotation was
correct when with_scaling was set to false.
Thanks,
Radu.
--
http://openperception.org