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
Based on a discussion about #17 we decided that we should somehow define which plugins should render to which cameras.
Use case example:
Two cameras are defined: workspace_cam and demo_cam.
We have to plugins that implement the render callback: plugin_a and plugin_b.
plugin_a renders objects that should be captured by all cameras and should be processed. plugin_b renders a helpful visualization that should not be processed by a data pipeline and thus should only be rendered on the image of camera demo_cam.
The current Idea is to
define which level of information (e.g. 0=data_relevant, 10=visualization) is rendered by a plugin (should be defined either in the plugin config or in the render callback)
and include a flag in the camera definition to set which information levels should be rendered. The flag should default to render only data relevant information.
A higher level of information should always contain all lower levels.
The text was updated successfully, but these errors were encountered:
Hm. This introduction of information levels seems to be rather brittle. Why not explicitly specify for each camera, which plugins (by name) should get processed? I suggest defaulting to all, but allowing for exclusions as this seems to be more common?
Depends on where the lists of plugin names is configured.
The idea was not to cause too much overhead to enable/disable rendering plugin output and keep configurations as genericly applicable as possible. For instance, I wouldn't like specifying this explicitly in the model file, as it would tailor the model to a specific plugin setup.
But I'm also not a 100% convinced of the information level approach.
We could include this in the camera config on the parameter server, as it is a separate config that is also easily changeable e.g.:
cam_config:
gripper_cam: # Will display content rendered by plugins except for ExamplePlugin0 and ExamplePlugin3stream_type: 3# RGB and DEPTHfrequency: 15width: 1080height: 720allow_plugin_rendering: trueexclude_plugin_list:
- ExamplePlugin0
- ExamplePlugin3workspace_cam: # Will not display anything rendered by pluginsstream_type: 3# RGB and DEPTHfrequency: 15width: 1080height: 720demo_cam: # Will display everything rendered by pluginsstream_type: 3# RGB and DEPTHfrequency: 15width: 1080height: 720allow_plugin_rendering: true
However, I would disable plugin rendering by default, introduce a flag to enable it (e.g. allow_plugin_rendering above) and then use an exclude list.
Based on a discussion about #17 we decided that we should somehow define which plugins should render to which cameras.
Use case example:
Two cameras are defined: workspace_cam and demo_cam.
We have to plugins that implement the render callback: plugin_a and plugin_b.
plugin_a renders objects that should be captured by all cameras and should be processed. plugin_b renders a helpful visualization that should not be processed by a data pipeline and thus should only be rendered on the image of camera demo_cam.
The current Idea is to
The text was updated successfully, but these errors were encountered: