Dealing with robot as obstacle in octomap
My goal is to be able to point a camera (eye-on-base style) to the pick&place scene and extract the table, and regions where placing is happening (to avoid coding the scene statically via moveit::CollisionObject
s). Those seem to be feasible via PointCloud Library.
I'm however having issues with the robot being seen in the octomap as an obstacle to itself: either the calibration isn't perfect (I used easy_handeye while waiting for the moveit assistant integrated one) or the camera isn't too precise. I tried enhancing the octomap resolution thinking maybe the extra voxels would become small enought to be included in the robot arm: it's either not helping (the octomap still contains some extra voxels which impede arm movement) or blocking the system completely (too much load on the cpu).
I'm thinking I'd like to:
- map the pick&place station with the robot in motion, and, after a set amount of time, keep only the obstacles which never moved; this would leave me with a fixed occupancy map to load, and I could leave the eye-on-base camera to just detect people passing by and trying to get hurt via e.g. a CNN;
- mount an eye-on-hand camera and do something similar to the very first part of this video;
- extract the robot from the poincloud (seems the most unfeasible option);
I cannot find other ways to deal with this. In the meanwhile I'm investigating rtabmap regarding the first bullet point (even though it seems more suited for mobile robots, I think it could work) and waiting on a component manufacturing process in regards to the second bullet point.
Is there someone from the community that has a lead on how it's been previously done?
For rtabmap, you could only use rtabmap node by setting
odom_frame_id
parameter to "base_link" (base frame of your robot) withRGBD/AngularUpdate
andRGBD/LinearUpdate
parameters set to 0 to make it add new data even if the robot doesn't move. You can also setKp/MaxFeatures
to -1 to disable loop closure detection. Make sure TF between the camera and the base is correctly updated.Hi, @aPonza I am also interested in this. What did you end up using/doing? Thanks
I've had other (business mandated) priorities in the meanwhile and still haven't touched on this, not planning to for at least 3+ more months.