introlab / find-object

Find-Object project
http://introlab.github.io/find-object/
BSD 3-Clause "New" or "Revised" License
444 stars 188 forks source link

Please help me about 3d launch using phoxi camera #98

Open ghost opened 5 years ago

ghost commented 5 years ago

Hello, I want to know why can not i use this 3d launch file? Im using the Phoxi camera L model. when i first use find_object_2d.launch. it worked very well. why cant i see images when using 3d.launch ? The connection is clear but why can not i use 3d pose this app Screenshot from 2019-09-17 23-36-55

i try to use find_object_3d.launch and find_object_3d_kinect.launch. these have same problem. plz solve this problem. and sorry it is my first use github^^;

matlabbe commented 5 years ago

Hi,

Can you record/share a small rosbag with the topics below and an object to detect in the field of view?

$ rosbag record phoxi_camera/rgb_texture phoxi_camera/depth_map camera_info tf tf_static

cheers, Mathieu

ghost commented 5 years ago

Thank you for answer,

Is it right? do you want to know? image

I want to know what is camera_info in 3d.launch param. Phoxi_camera does not publish information like camera info.

This is phoxi param and topics list.

image

Thank you

ghost commented 4 years ago

Hi,

I solved the problem that mentioned earlier.

However, I have a new problem.

Do you know? What error is this?

image

matlabbe commented 4 years ago

The camera_info contains camera calibration required to transform a 2D point (u,v) with known depth (d) in 3D (X, Y, Z).

Can you show the published objects topic when this happens?

ghost commented 4 years ago

This is objects topic echo. image

It is an error text

image

Sorry, I want to solve myself but I don`t understand 3d pose estimator exactly.

Thank you.

matlabbe commented 4 years ago

It feels that the tf object_102 is not published, maybe because find_object cannot compute the 3D pose (depth image is wrong or calibration is wrong). You can also launch rqt_console to see better where the warning is coming from. You can also show what contains your camera_info message? if focal distances are valid... What also is the format of the depth map? (16UC1 in mm, 32FC1 in meters?)

ghost commented 4 years ago

The format is 32FC1 in meters. and I think that depth image(depth values) is not problem. I wonder that Camera_info message. Actually It is not published original package. So I made this topic. This is camera_info message that I made it. I only use header. Does it provoke any problem ? image

This is rqt_graph and rviz commander error image

matlabbe commented 4 years ago

At least K[4] (called fx) should be set in camera_info msg: https://github.com/introlab/find-object/blob/5489d5f4c4fad66df6e111dcefe274f8986bceb4/src/ros/CameraROS.cpp#L167 Setting to zero will create a NAN not handled by the code. It is maybe why resulting TF contains nan values.

You can find the camera matrix K by doing calibration of the RGB camera, see http://wiki.ros.org/camera_calibration/Tutorials/MonocularCalibration