I have followed the following tutorial:
http://pointclouds.org/documentation/tutorials/correspondence_grouping.php
In an effort to estimate the pose of an object in a scene. I have successfully got that tutorial working for both the sample point clouds as well as my own point clouds (after adjusting some parameters).
The person who wrote the tutorial had the following to say:
The recognize method returns a vector of Eigen::Matrix4f representing a transformation (rotation + translation) for each instance of the model found in the scene (obtained via Absolute Orientation)
I get this transformation matrix, but I do not understand what the values are in reference to.
For example, the same tutorial page has the following output:
| 0.969 -0.120 0.217 | R = | 0.117 0.993 0.026 | | -0.218 -0.000 0.976 | t = < -0.159, 0.212, -0.042 >
While I understand that these values represent the rotation and translation of each model found in the scene - what are these values using as a reference point and how can they be used?
For example, if I wanted to place another model on top of the identified model, is it possible to use those values to localize the identified model? Or if I had a robot that wanted to interact with the model, could these values be used by the robot to infer where the object is in the scene?
The correspondence grouping method requires two parameters - a scene and a model. My current assumption is that the algorithm says "I found this model in the scene, now what transformation do I need to apply to the model to make it align with the scene?". Since the model was extracted from the scene, after the algorithm found the model in the scene, it determines what transformation needs to be applied. But since the model was extracted directly from the scene, very little transformation needs to be applied.
Could anyone provide some insight into these values?