Skip to content

Recording Conveyor Models

Tarik Viehmann edited this page Feb 18, 2022 · 4 revisions

This page documents the Carologistics' conveyor detection system. As of 2019, it is comprised of the conveyor_plane and conveyor_pose plugins. Recording Models

In cfg/conf.d/conveyor_pose.yaml

set `record_model: true`
define record_path: `name_of_model.pcd`

Then start fawkes and conveyor_pose will now keep atomically overwriting record_path with the current trimmed scene. You may need to restart the ros-pcl plugin after conveyor pose is loaded.

In RVIZ switch fixed frame from map to base_link and Views to XYOrbits. Style from flat_squares to points and increase pixel size if needed.

  • move the gripper to (0,0,0) in the conveyor_calib frame (using ./skillet "gripper_commands{command='MOVEABS', x=0.0, y=0.0, z=0.0, target_frame='conveyor_calib'}")
  • open up rviz and display the following topics (you can use different colors by switching the color transformer:
    • TF gripper_fingers_record
    • TF cam_conveyor
    • PointCloud2 /fawkes_pcls/trimmed
    • PointCloud2 /fawkes_pcls/model

Move the robot/MPS to position the gripper_fingers_record frame where you want the origin of the model to be. The model that is being written is displayed twice, once at its "real" location (topic /fawkes_pcls/trimmed), and once with its origin transformed into the camera frame (topic /fawkes_pcls/model). Adjust the trim box to crop out anything you don't want in the model (crop boxes are defined in the conveyor_pose.yaml, the ones "with laser lines"). Make a few copies of the recorded model and pick out a "good" one. A good model should not be too spotty (i.e. no "holes" or gaps where there should be points) and it shouldn't be too noisy or distorted by artifacts (can be caused by shiny/reflective surfaces). Models can be edited with ​CloudCompare.

Clone this wiki locally