def set_object_image(self, req, compress=False):
"""Handles SetObjectImage service requests.
Args:
req: SetObjectImageRequest/SetObjectCompressedImageRequest message.
compress: Whether to return a compressed image or not.
Returns:
SetObjectImageResponse or SetObjectCompressedImageResponse.
"""
if compress:
response = interop.srv.SetObjectCompressedImageResponse()
else:
response = interop.srv.SetObjectImageResponse()
try:
png_image = serializers.ObjectImageSerializer.from_msg(req.image)
except CvBridgeError as e:
rospy.logerr(e)
response.success = False
except Exception as e:
rospy.logfatal(e)
response.success = False
else:
try:
self.objects_dir.set_object_image(req.id, png_image)
except (KeyError, IOError) as e:
rospy.logerr("Could not set object image: {}".format(e))
response.success = False
else:
response.success = True
return response
评论列表
文章目录