如何强制 ROS compressed_image_transport 使用 libturbojpeg 进行 jpeg 压缩?

How to force ROS compressed_image_transport to use libturbojpeg for jpeg compression?

在我的 Jetson Xavier 中,可以使用 'libjpegturbo' 库。我怎样才能使 compressed_image_transport 插件使用 'turbojpeg' 库以获得良好的压缩级别。

下面是ldconfig的快照..

GitHub 检查 compressed_publisher.cpp 的实现显示压缩是使用 OpenCV 的 imencode 完成的:

cv::imencode(".jpg", cv_ptr->image, compressed.data, params)

OpenCV 能够使用 libjpegturbo 仅通过从源代码构建 OpenCV 将 libjpeg-turbo 合并到 OpenCV。 this tutorial.

中对此进行了描述

另一种选择(可能更简单)是实现您自己的图像传输插件。因此,您可以以现有的为导向。