-
Notifications
You must be signed in to change notification settings - Fork 152
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
Hard coded timeouts in camera driver decrease maximum FPS #29
Comments
Hello, you are right, we plan to do it configurable. It is a trade off between CPU performance and publishing speed which is really depending on the computer you are using. Therefore it is tricky to change it in embedded / low performance systems. I see two possibilities to address this issue:
Please if you want to collaborate you are very welcome! I think it is important to have this service for setting the timeouts, what do you think? Thanks! |
Hi @pablo-quilez thanks for reaching out :-) I brainstormed with colleagues and we believe that a normal node-level ROS param, appearing also in this YAML configuration file, is the preferred solution. |
You are welcome @claudiofantacci ! It is a pleasure. I am planning to address all of these FPS related topics starting on the next week but maybe you can help me to define exactly which next steps should we do. I suggest:
Do you think this will be enough? Am I missing something? |
Hey @pablo-quilez I think these 3 points are well taken.
I'll brainstorm with other people next week and be back to you with some other comments if any 😄 Thanks again! |
Hi! We have added the grabbing and timeout parameters both as parameters and as services. After internal tests we have merged into the main devel branch. Hopefully we can see this issue as closed! @claudiofantacci please let me know if we are missing something. I can reopen the issue if necessary. Thanks! |
The following trigger- and grab-related timeouts are hard coded
pylon-ros-camera/pylon_camera/include/pylon_camera/internal/impl/pylon_camera_base.hpp
Lines 354 to 355 in 9f38321
pylon-ros-camera/pylon_camera/include/pylon_camera/internal/impl/pylon_camera_base.hpp
Line 463 in 9f38321
that results in the following code
pylon-ros-camera/pylon_camera/include/pylon_camera/internal/impl/pylon_camera_base.hpp
Lines 461 to 480 in 9f38321
to hang too much and, as a consequence, decrease the FPS of the camera.
Notice that this behavior, in conjunction with #28, provides a slow and delayed/unsynched stream of images, which is very undesirable when high frame-rate/real-time is desirable.
After some tests, setting
grab_timeout_ = <framerate>
andtimeout = 2 * grab_timeout_
resulted in very stable performance with few image drops.The text was updated successfully, but these errors were encountered: