def get_object_image(self, req, compress=False):
"""Handles GetObjectImage service requests.
Args:
req: GetObjectImageRequest/GetObjectCompressedImageRequest message.
compress: Whether to return a compressed image or not.
Returns:
GetObjectImageResponse or GetObjectCompressedImageResponse.
"""
if compress:
response = interop.srv.GetObjectCompressedImageResponse()
else:
response = interop.srv.GetObjectImageResponse()
try:
png = self.objects_dir.get_object_image(req.id)
except (KeyError, IOError) as e:
rospy.logerr("Could not get object image: {}".format(e))
response.success = False
except Exception as e:
rospy.logfatal(e)
response.success = False
else:
try:
response.image = serializers.ObjectImageSerializer.from_raw(
png, compress)
except CvBridgeError as e:
rospy.logerr(e)
response.success = False
else:
response.success = True
return response
评论列表
文章目录