A package that prepares images and pose data for 6D pose tracking.
/depth_data: original depth images (one image for each frame), joint positions and joint velocities from the rosbag, real depth from depth images and simulated depth by drake as txt files.
/rgb_data: original rgb images from the rosbag.
/mask_data: robot masks generated by urdf_filter.
/dilated_mask_data: dilated masks of the robot by increasing the margion of masks by 3 pixels.
/filtered_data: screen images and depth images without the robot generated by urdf_filter.
/cube_data: screen images and depth images of the cube generated by depth_filter.
/denoise_cube_data: final denoised depth images of the cube.
/tagslam_poses: 4 by 4 transformation matrix of the object retrieved from odom.bag and timestamps.txt for duration calculation.
- Generate depth data: In
rosbag_processor.py, runbag_to_depth_images()to extract depth images from rosbag and writeimages.txt - Generate rgb data and joint positions: In
rosbag_processor.py, runextract_poses_with_timestamps()to extract joint positions and rgb images at matched timestamps with depth topic from rosbag - In
file_utils.py, runwrite_real_depth_as_txt()to save real depth txt at once - Generate robot masks: In
urdf_filter.py, runmain()to get robot masks and filtered depth images - Generate dilated robot masks: In
urdf_filter.py, rundilate()to get dilated robot masks. - Generate depth and rgb data without robot: In
file_utils.py, runmain()to save filter depth and rgb images infiltered_data. - Generate cube depth images and screen images: In
depth_filter, runmain()to get cube screen images and depth images - Denoise cube depth images by running denoise() in
file_utils.py. - Calculate cube initial pose: In
rosbag_processor.py, runextract_cube_pose()with desired start_frame to get the initial cube pose in camera frame and save in BundleTrackannotated_posesdirectory.