当前位置: 首页 > 知识库问答 >
问题:

适用于少量数据的良好无损压缩算法?

庾和昶
2023-03-14

我正在寻找一种好的无损压缩算法,它可以非常快速地压缩/解压缩少量数据,例如0到1之间的256个浮点。我知道RLE,但也许还有更好的。

背景是我正在使用CUDA处理体积数据(例如384³浮点),而不是显式存储体积,我希望将其划分为8x4大小的块并存储压缩块。CUDA内核(每个块由8x8x4个线程组成)解压缩相应的块,对其进行处理并再次压缩。

非常感谢您的建议!

共有2个答案

易雅畅
2023-03-14

您可能能够对数字进行排序,然后将其存储为位置和差值。你可以根据需要把它们打包成任意多的小块。差异可以编码为分数,其中只存储分母。

汤飞翮
2023-03-14

一个好的无损算法取决于你拥有的浮点数量的类型。对于0到1之间的浮点数,你可能有几乎相同的指数子值。你知道浮点数是一个符号、一个尾数和一个指数。如果它们都是

将指数打包在一起可能很好;这样,你只需要在尾数之后存储尾数。

 类似资料:
  • 我想知道我们可以在多大程度上进行无损数据压缩;我无法找到一个无损算法的在线模拟器来执行一些经验测试。我可以自己做一个,但不幸的是,我在这段时间没有足够的时间;我仍然对我的直觉感到好奇,我将解释一下。 让我们只看两种更流行的算法:

  • 本文向大家介绍有损压缩和无损压缩之间的区别,包括了有损压缩和无损压缩之间的区别的使用技巧和注意事项,需要的朋友参考一下 数据压缩是指将大文件缩小为较小大小的文件并可以再次将其解压缩为大文件的技术。有损压缩会将大文件恢复为原始格式,但会丢失一些数据,这是不明显的,而无损压缩会将大文件恢复为原始格式而不会丢失任何数据。 以下是有损压缩和无损压缩之间的一些重要区别。 序号 键 有损压缩 无损压缩 1 数

  • 问题内容: 我需要压缩部分应用程序网络流量以提高性能。我认为这意味着我需要远离一些较新的算法,例如bzip2,我认为我听说它的速度较慢。 问题答案: 您可以使用JDK中内置的Deflater / Inflater。也有GZIPInputStream和GZIPOutputStream,但这实际上取决于您的确切使用。 编辑: 阅读更多评论,看起来网络流量是HTTP。根据服务器的不同,它可能支持压缩(尤

  • 这些是我正在使用的当前论点: 根据:http://www.imagemagick.org/script/command-line-options.php#define 和http://www.w3.org/tr/png-filters.html null 问题: 这是无损压缩吗?如果没有,错在哪里? 知道如何实现更好的无损压缩吗?

  • 本文向大家介绍C#无损压缩图片,包括了C#无损压缩图片的使用技巧和注意事项,需要的朋友参考一下 话不多说,请看代码: 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持呐喊教程!

  • 我目前正试图为我正在从事的一个项目实现一种无损数据压缩算法。目标是压缩浮点值的固定大小列表。代码必须用C编写,不能使用动态内存分配。这让我很伤心,因为大多数无损算法(如果不是全部的话)都需要一些动态分配。 我一直在研究的两个主要算法是哈夫曼算法和算术算法。如果没有动态内存分配,这个任务可能吗?你们有什么方法或想法吗?如果您认为不可能,请告诉我原因:-) 任何帮助/建议都会有帮助!