You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Serializing and unserializing camera images can be quite expensive which is what the current pipeline setup is. Usually, to get the car started, we run
ros2 run perceptions zed_node (create the ZEDSDK for both cameras and publish images)
ros2 run perceptions yolov5_*_node (subscribe to images published by ZEDSDK)
However, when running at race time, this pipeline has some unnecessary overhead with serializing and de-serializing the camera images, so this PR is going to give us the option to simply allow the yolov5_*_nodes to own ZEDSDK classes by initializing them in the DataNode and updating the camera images on a timer.
NOTE: this will prevent camera images from being published, so we would need to perform publishing of the compressed images for DAQ Live inside of the DataNode if we are still planning on using that
Task Check-list:
Add optional parameter to DataNode to own left, right, or both cameras (or None for just using all subscribers)
When non-None parameter passed in, initialize ZED SDK for that specific camera inside of the DataNode, and use a timer to update the images at some defined update rate
Analyze the performance of this (do we have any issues when also running with the LiDAR pipeline?)
Task Description:
Serializing and unserializing camera images can be quite expensive which is what the current pipeline setup is. Usually, to get the car started, we run
ros2 run perceptions zed_node
(create the ZEDSDK for both cameras and publish images)ros2 run perceptions yolov5_*_node
(subscribe to images published by ZEDSDK)However, when running at race time, this pipeline has some unnecessary overhead with serializing and de-serializing the camera images, so this PR is going to give us the option to simply allow the yolov5_*_nodes to own ZEDSDK classes by initializing them in the
DataNode
and updating the camera images on a timer.NOTE: this will prevent camera images from being published, so we would need to perform publishing of the compressed images for DAQ Live inside of the DataNode if we are still planning on using that
Task Check-list:
DataNode
to own left, right, or both cameras (or None for just using all subscribers)Task Timeline:
Comment any questions and tag reviewers.
The text was updated successfully, but these errors were encountered: