reart
reart copied to clipboard
How to repose or get the kinematic tree of the robot?
Hi! Thank you for your fantastic work! However, I am wondering how to get a kinematics tree that I can input some new joint configuration to reactuate/repose the robot?
Hi,
Thanks for your interest in our work. We provide both FK and IK to retarget / repose the robot in here. For FK, given the trained robot, you could change theta_list (revolute joint) or distance_list (prismatic joint). for robot, only theta_list is needed. For IK, the logic is given some sparse points in the space, we could run inverse kinematic to retarget the robot to those points. Please let me know if it is clear.
Hi Steve, Thank you so much for your reply! I am currently working on some real-world scanning point cloud data. Is there any possibility of actuating the trained real model? Or any guidance for preparing our own data for robot model training?
Thank you so much for your time and patience!
Hi,
Our method only requires few point clouds recording different states of the articulated object (no need to be aligned). You could refer to run_real.py, the input is from real-scanned point cloud. Once you build the KinematicModel, you only need to change the theta_list and distance_list to actuate the model.
Hi! Thank you so much for your patient reply!
Now I add this code:
kwargs["theta_list"] = torch.tensor(0.5) * torch.ones(pc_list.shape[0], len(checkpoint["edge_index"])).to(device)
Before the following line: https://github.com/stevenlsw/reart/blob/62174a207e602bc09b30317e836d41bd32f9a447/run_real.py#L169
And the output point cloud from running --evaluate mode is successfully actuated.
Do you know if my method is correct? Please correct me if there is something wrong :)
Thank you so much for your time!
Yes, this should be able to rearticulate the robot by calling the fk of the moodel, in practice, you could do ik to get those theta_list values if you know where the joint should be at.
Thank you so much for your time! Hope you have a nice day!