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

Posted

技术标签:

【中文标题】如何强制 ROScompressed_image_transport 使用 libturbojpeg 进行 jpeg 压缩?【英文标题】:How to force ROS compressed_image_transport to use libturbojpeg for jpeg compression? 【发布时间】:2020-07-08 12:58:30 【问题描述】:

在我的 Jetson Xavier 中,可以使用 see 'libjpegturbo' 库。如何制作压缩图像传输插件以使用“turbojpeg”库以获得良好的压缩级别。

下面是ldconfig..

【问题讨论】:

【参考方案1】:

在GitHub 检查 compressed_publisher.cpp 的实现表明压缩是使用 OpenCV 的 imencode 完成的:

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

OpenCV 只能通过从源代码构建 OpenCV 以将 libjpeg-turbo 合并到 OpenCV 来使用 libjpegturbo。这在this tutorial 中有描述。

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

【讨论】:

以上是关于如何强制 ROScompressed_image_transport 使用 libturbojpeg 进行 jpeg 压缩?的主要内容,如果未能解决你的问题,请参考以下文章

如何强制 OpenCL 不重新对齐结构?

如何强制 Spark/Hive 创建具有自定义权限的 task_* 目录

我们如何强制 getattribute() 为魔术方法(特殊方法)调用?

如何在 Celery 任务执行期间强制执行记录器格式?

如何将类型_ComObject转换为本机类型,如Long或其他(获得强制转换错误)?

NetBeans 自动完成和 PHP;强制 __get() 类型