Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Need of camera_info topic #13

Open
gilduz opened this issue Mar 27, 2023 · 13 comments
Open

Need of camera_info topic #13

gilduz opened this issue Mar 27, 2023 · 13 comments

Comments

@gilduz
Copy link

gilduz commented Mar 27, 2023

Hi everyone,

would be really convinient to expose a sensor_msgs/CameraInfo topic related to each camera.

This would make the integration with standard ros2 nodes easier.
Would you expect to include this feature in the feature? Any timeline available?

Thanks

@lola-masson
Copy link
Member

Hi @gilduz,

You are right, this feature is missing. We are working on it currently. We should have the first pre-release in the next few weeks.

@gilduz
Copy link
Author

gilduz commented Mar 27, 2023

This sound great, we were considering to implement this by ourself, however since the activity is in progress, we'll wait for it.

@gilduz
Copy link
Author

gilduz commented Apr 27, 2023

Hi all, any update about this topic?

@lola-masson
Copy link
Member

Hi @gilduz,
We are almost there, we should have a pre-release ready this coming week or next that include the camera into topic, and an official release a couple weeks later so that we have time to test.

@sam-tj
Copy link
Contributor

sam-tj commented Jul 18, 2023

Hi Team,
Any updates on this?
For RGB stream, no camera info is available only for 3D stream it is there.

@lola-masson
Copy link
Member

Hi @sam-tj,

There is a new release that fixes the RGB issue: https://github.com/ifm/ifm3d-ros2/releases/tag/v1.1.0. You will need to update the OVP firmware to 1.0.14 (available on ifm.com) and ifm3d to version >= 1.2.6. This releases fixed the RGB stream and adds the camera info (for more details gave a look at the changelog).

@sam-tj
Copy link
Contributor

sam-tj commented Jul 19, 2023

Got everything updated, but still camera_info is not available.
Screenshot from 2023-07-19 19-02-18

Additionally the refresh rate RGB is 20 hz and depth is 10 hz. But in dump, framerate is set to 10. Am I missing something here?

@lola-masson
Copy link
Member

The /camera_info topic is only published if the INTRINSIC_CALIB buffer is in the request buffers list (see doc here). The INTRINSIC_CALIB is only available for the 3D streams, which means the camera_info will not be published for the 2D image. I think this is a miss on our end and I will create a defect to follow up on this.

In the meantime, the topics TOF_INFO and RGB_INFO provide all the distortion parameters for the 3D and 2D streams -- maybe you can use those until we publish a fix for the camera_info.

Regarding the framerate, can you provide a copy of the current configuration of your device? If the framerate setting of the respective port shows 10, you should effectively see 10 Hz on the ROS side for the corresponding topics.

@sam-tj
Copy link
Contributor

sam-tj commented Jul 21, 2023

Thanks for that.
I found a way around to get camera_info and the topic RGB_Info also helped.

I can surely send you the details. Would it be ok if I share it with you via email?

@lola-masson
Copy link
Member

Sure! You can email [email protected] with details, thanks.

@sam-tj
Copy link
Contributor

sam-tj commented Aug 13, 2023

Hi again,
Sorry for an extended question.

I have a quick question about model id.

In the image below, following windows are shown:

  • Left Side -: transforms.py (from python Registration2d3d example)
  • Right Side Top -: Topic echo for 3D camera_info
  • Right Side Bottom -: Topic echo for 3D Intrinsic_calib

So, on the Right Side Bottom window, it shows model id = 2 and from Left Side window, it must be is for fish eye type i.e., "equidistant".
But on the Right Side Top window which is camera_info for 3D cam, it is "plumb_bob".

1Screenshot from 2023-08-13 19-21-33

The question is what should be the value now for RGB camera? Should I use the model as plumb_bob or equidistant and then their respective values.

Thanks for all the help and support.

@sam-tj
Copy link
Contributor

sam-tj commented Sep 9, 2023

Hi Team,

Would it be possible to provide factory settings for the Matrices available on this page? http://docs.ros.org/en/melodic/api/sensor_msgs/html/msg/CameraInfo.html

Thanks in advance :)

@lola-masson
Copy link
Member

Hi @sam-tj,

Sorry for the delay.

Factory settings will depend on the individual camera, since they are all individually calibrated in production. If you want to check out the values directly without ROS, you could use python and get the TOF_INFO buffer. You can then deserialize it with https://api.ifm3d.com/stable/_autosummary/ifm3dpy.deserialize.TOFInfoV4.html#ifm3dpy.deserialize.TOFInfoV4 and get all the values from there.

I believe that currently for the ROS2 camera info we are using the plump bob model for everything, which is wrong because we should actually adapt the model depending on the type of camera used (fish eye or not). It is on our list to adapt the code to fix this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants