intel / ros_object_analytics

Apache License 2.0
182 stars 57 forks source link

How to get the pose of the 3D tracked object #33

Closed fiorano10 closed 5 years ago

fiorano10 commented 6 years ago

I need to track the objects, select one, get the pose of that object. Is it possible to achieve this? If yes, then how?

Peter9606 commented 6 years ago

Sorry, current it’s not possible to get the pose.

fiorano10 commented 6 years ago

Then what does it publish in object localization in 3D camera coordination system? What about using the ros_moving_object to get the pose?

Peter9606 commented 6 years ago

Then what does it publish in object localization in 3D camera coordination system?

Yes, you are right.

What about using the ros_moving_object to get the pose?

You cannot get what you want from ros_moving_object either. It provides some extra information but no pose. If you do need pose, you have to get it from object_analytics_nodelet/segmenter, and currently this sub-module only get the 3d bounding box which parallel the XYZ axis.

fiorano10 commented 6 years ago

Okay, are you aware of any package which would allow to get the pose of the tracked object using a RealSense D400 series?

Peter9606 commented 6 years ago

Sorry, I don't know about that. If not emergent, I can create a branch for your needs personally, but it will take time.

fiorano10 commented 6 years ago

That sounds awesome! How much time though?

Peter9606 commented 6 years ago

Couple of weeks maybe. The effort itself is not a big of deal, but the schedule.

fiorano10 commented 6 years ago

Could you tell me how you'd approach it to get the pose, so I'm able to work on it as well, and keep you updated of the progress.

Peter9606 commented 6 years ago

The solution coming out of my head is to leverage PCL's pose estimation feature (i.e. the one described here ). The extra information that object analytics needs to provide is to compute "feature" for each object. It's the client's (your program) responsibility to call PCL's estimation API to compute the pose. What do you think?

fiorano10 commented 6 years ago

I was hoping I could use the x-y-z data to find the centroid, and then the pose, does that make sense?

Peter9606 commented 6 years ago

I'm afraid I don't get you. Do you mean that you need all the points ?

fiorano10 commented 6 years ago

Can I use this data, and tf to get the pose? sensor_msgs/RegionOfInterest roi # region of interest geometry_msgs/Point32 min
geometry_msgs/Point32 max #min and max locate the diagonal of a bounding-box of the detected object whose x, y and z axis parellel to the axises correspondingly in camera coordinates

Peter9606 commented 6 years ago

According to my limited knowledge, I don't think so. You may also provide your patch if you have any idea.

fiorano10 commented 6 years ago

Working on the patch, will keep you updated.

Peter9606 commented 6 years ago

Great!