CDCPD is an implementation of Occlusion-robust Deformable Object Tracking without Physics Simulation by Cheng Chi and Dmitry Berenson.
CDCPD2 is an implementation of Tracking Partially-Occluded Deformable Objects while Enforcing Geometric Constraints by Yixuan Wang, Dale McConachie and Dmitry Berenson.
You could try out virtual machine linked here. Password is 123456. You could run demos under ~/catkin_ws/src/cdcpd/cdcpd_ros/scripts. Note that not all data is downloaded. Now only rope_edge_cover_2.bag is downloaded under ~/catkin_ws/src/cdcpd/cdcpd_ros/dataset. If you would like to see more demoes, please download here.
- Environment:
- Ubuntu 18 or 20
- ROS Melodic or Noetic
- apt dependencies
- other dependencies
- Gurobi
- faiss-1.6.3
- kuka_iiwa_interface
- robotiq (needed by kuka_iiwa_interface)
- arc_utilities
Run sudo -u USER_NAME install_scripts/install_ros_melodic.sh if you use Ubuntu 18.04, or sudo -u USER_NAME install_scripts/install_ros_noetic.sh if you use Ubuntu 20.04
Modify USR_NAME in install_scripts/install_dep.sh and run sudo -u USER_NAME ./install_dep.sh under install_scripts. It will install all dependency listed above in ~/.local.
NOTE: source ~/.bashrc inside install_dep.sh might not run successfully according to the platform. If you encounter the problem like catkinonfig.cmake not found, please run source ~/.bashrc and run ./install_pybind11_catkin.sh.
We assume you have created a catkin workspace. Now clone this repo to that worksace. See install_scripts/create_ws_ROS_Version.sh or the ROS wiki on how to setup a catkin workspace.
Gurobi is a proprietary optimization package that we use. Please obtain a free academic license.
# in the src directory
git clone https://github.com/UM-ARM-Lab/cdcpd.git
Once you've cloned, it might be a good idea to rosdep install -r --from-paths cdcpd -y to get any ROS packages you might be depending on.
To run the demo, you will need to download some dataset. Then run the corresponding scripts under cdcpd/scripts. You need to specify .bag file path in the shell script.
My own running result is here, which includes MP4 files.
Q: It runs without error but doesn't seem to be processing images, help!
A: We use a time synchronizer with "exact" time policy (the deafult). Therefore if your depth, color, and camera_info messages do not have exactly the same time stamps, the synchronizer will ignore it and nothing will happen.