Open swhart115 opened 4 years ago
What do the surface normals look like for this point cloud?
What do the surface normals look like for this point cloud?
Ok, its been a while since i looked at this, but i was able to dig up some debug images i had. Attached are three images. The first is the original STL in meshlab with normals displayed. We convert this to the point cloud, and the second image shows the normals from PCL. Finally, the third shows the normal from GPD.
So clearly there is a disconnect here. but it seems, at first glance, to be between the PCL and GPD step.
It might not be possible to get "full coverage" with GPD without writing some custom code. While the ROS node supports multiple viewpoints, the config files and executable programs coming with GPD were written for point clouds with a single camera viewpoint.
If you use the ROS node, you can send a CloudSamples or CloudIndexed message, both support multiple camera viewpoints. That should give the correct surface normals.
Without ROS, you could modify the input to have multiple viewpoints (here) and create a util::Cloud
that takes viewpoints and camera sources (e.g., see this one). You would also need to provide the camera_source
matrix. This basically imitates what happens when a CloudSamples/CloudIndexed message is send in the gpd_ros node.
Hi, I've been trying to generate grasps off of some pcd models using the detect_grasps node, and can't seem to figure out how to get full coverage beyond just "hemispherical" results such as:.
(note i hacked the code to add some coloring :) ).
I assumed this was a camera issue, but no matter how i seem to set the camera_position in the cfg file it doesnt seem to make a difference. even, if i publish the pcd oriented differently, i still get grasps in the same positions relative to the actual part, so i no longer am convinced it is a camera issue. I also checked pcd normals, and everything seems to be in order....
I feel like i might be missing something and was wondering if you had any guidance here.
For completeness, my config file is: