Commit Graph

28 Commits

Author SHA1 Message Date
Alexey Rogachevskiy
998796045c aruco_pose nodelet cleanup (#239)
* aruco_pose: Unhardcode contour refinement

Besides, this was basically a no-op anyway, since dynamic parameters
overwrote that anyway.

* aruco_pose: Late-construct objects that use ROS

* aruco_map: Don't create/store node handle

* aruco_pose: Don't assume dist_coeffs size

* aruco_pose: more const == more better

* aruco_pose: Be more obvious about changing variables

* aruco_pose: Fix building for Kinetic

* aruco_pose: Remove global add_definitions
2020-05-30 01:59:51 +03:00
Oleg Kalachev
a480ebe80a Continue renaming to Clover 2020-04-30 03:41:14 +03:00
Alexey Rogachevskiy
50739a3ea8 clever.launch: change log formatting (#175)
* clever.launch: Add node name to output format

* selfcheck: Use new log format

* aruco_pose, clever: Remove node names from messages

* aruco_pose, clever: Use nodelet-aware rosconsole macros

* clever.launch: Use logger name instead of node name

* clever.launch: change rosconsole format a little
2019-09-06 17:47:31 +03:00
Oleg Kalachev
4b0605fcbb aruco_map: add markers topic 2019-09-04 12:22:34 +03:00
Oleg Kalachev
60fd4f9c0f aruco_map: add image_axis parameter for drawing axis on ~image topic 2019-08-01 04:06:18 +03:00
Oleg Kalachev
96cc0c7ad9 Forgotten lines 2019-07-03 05:38:10 +03:00
Oleg Kalachev
997484cd1f aruco_map: fix includes order 2019-07-03 05:23:44 +03:00
Oleg Kalachev
48b24a5fef aruco_map: possibility to publish static transforms for map's markers 2019-07-03 05:18:44 +03:00
sfalexrog
8019712d8c Revert "aruco_map: Use two-pass solvePnP"
This reverts commit 91f6f6dd32. Additional testing revealed this "fix" to provide incorrect results.
2019-05-28 20:54:49 +03:00
sfalexrog
91f6f6dd32 aruco_map: Use two-pass solvePnP
There are cases when iterative solvePnP method converges on a "wrong" camera position due to projectPoints not treating negative Z values properly.
Other methods don't seem to be affected by that, but their results differ from the iterative method slightly. By combining these two methods we
"nudge" the iterative method towards the correct camera position and get satisfactory results most of the time.

Sometimes, though, even with the "nudge" the iterative method diverges catastrophically, and this is not caught by the solver. We work around that
by assuming our camera position cannot be too far from the markers.
2019-05-20 12:29:42 +03:00
sfalexrog
53c2cf6998 aruco_map: map parser improvements (#118)
* aruco_map: Improve parser

* aruco_map: Use marker id for map visualization

* aruco_pose: Add parser pass test

* aruco_map: Code style

* aruco_pose: Add more test cases

* aruco_map: Better message handling

* aruco_map: Be more informative about bad lines

* aruco_map: Add failure mode tests

* aruco_map: Be less strict about map contents

* aruco_pose: Restructure tests

* aruco_map: Don't use marker id in visualization

* aruco_map: Check for marker uniqueness

* aruco_pose: Use board data to reject duplicate markers

* aruco_pose/test: Spelling fixes
2019-05-13 17:43:20 +03:00
Oleg Kalachev
e601080a95 aruco_pose: add param auto_flip 2019-03-21 20:55:35 +03:00
sfalexrog
acec09192b aruco_map: Try to fix frame drawing bug
`cv::aruco::drawAxis` would attempt to draw detected frame origin even when it's behind the camera. This resulted in an invalid, flipped frame displayed in `/aruco_map/debug`.

This commit prevents drawing frame axis if the frame origin (projected to the screen space) is behind the screen plane.
2019-03-20 16:14:29 +03:00
Oleg Kalachev
e6266e52f8 aruco_pose: remove irrelevant comment 2019-03-09 21:44:08 +03:00
Oleg Kalachev
2b82516a97 aruco_map: fix drawing map image 2019-03-02 23:59:26 +03:00
Oleg Kalachev
d3885135e9 aruco_map: remove unused parameter 2019-03-01 17:39:32 +03:00
Oleg Kalachev
9a8202422e aruco_pose: draw detected markers in aruco_map/debug topic 2019-03-01 12:38:07 +03:00
Oleg Kalachev
db9d3cb398 aruco_map: align marker map by z axis 2019-02-28 23:33:05 +03:00
Oleg Kalachev
b2a53e5872 Add aruco_map/debug topic 2019-02-28 23:05:00 +03:00
Oleg Kalachev
d8964b1b99 aruco_pose: style fix 2019-02-28 19:55:18 +03:00
Oleg Kalachev
1bfc190654 aruco_pose: fix generating gridboard 2019-02-26 19:36:01 +03:00
Oleg Kalachev
615194fc2a aruco_pose: rename known_orientation to known_tilt 2019-02-26 09:10:36 +03:00
Oleg Kalachev
022eaed76c aruco_pose: rename snap_orientation to known_orientation 2019-02-22 16:44:01 +03:00
Oleg Kalachev
e72b520f30 aruco_map: parametrize output image width, height and margin 2019-02-16 22:47:21 +03:00
Oleg Kalachev
82f9b9d6c1 aruco_map: enable rotating (yaw, pitch, roll) each marker in the map 2019-02-14 05:46:00 +03:00
Oleg Kalachev
cb4468e719 Fix 2019-02-12 09:36:51 +03:00
Oleg Kalachev
c4448315aa aruco_map: publish visualization markers 2019-02-12 03:16:44 +03:00
Oleg Kalachev
adc485c75a Refactor aruco_pose, split up to aruco_detect and aruco_map notelets 2019-02-10 00:33:31 +03:00