Controlling Content of RequestData.Result from ensenso_camera_node

,

General Information

Model: B57-4-Color
SN: 1010836
OS: Ubuntu 20.04
ROS2 Jazzy
Ensenso SDK: 4.1.1033
ros_driver branch: master

Problem / Question

Hi, I use the goal below to retrieve color images from my B57 ROS2 node. I only request the rectified images. However the result message includes images in the depth_image and disparity_map fields. Is this normal?
Best regards,
Charles

RequestData.Goal(
            parameter_set=self._color_settings,
            request_depth_image = False,
            request_disparity_map = False,
            request_rectified_images = True,
            include_results_in_response = True,
            request_point_cloud = False,
            request_normals = False
        )

With self._color_settings having the following pameters:

Parameter(key=Parameter.AUTO_EXPOSURE, bool_value=True),
Parameter(key=Parameter.AUTO_GAIN, bool_value=True),
Parameter(key=Parameter.PROJECTOR, bool_value=False),
Parameter(key=Parameter.FRONT_LIGHT, bool_value=False),
Parameter(key=Parameter.FLEX_VIEW, float_value=0.)

Hi Charles,

if you only request rectified images then there should neither a disparity map nor a depth image be included in the result. At least the fields of the RequestData message, which are always there, should not contain valid data.

The logic handling the request_data action is in this function. You can always modify the code locally, add e.g. log messages for debugging if you want, and recompile the package.

Do you use our request_data script or your own script or node to send the action? I am asking because the code snippet you provided is not from our script. If you use your own, could you post the relevant parts here so that I can have a closer look at it?

Kind Regards
Benny