我正在寻找位图压缩算法,它可以让我通过设置随机位来生成位图,我担心位图在 RAM 中占用的空间量,例如
存储 1073741824 位(大约 10 亿位)的未压缩位图需要大约 128 MB 的空间,而我根本没有那么多空间。我想在尽可能少的空间(RAM)中做到这一点。
我在其他人那里查看了 WAH、EWAH 等(还没有仔细阅读论文),但看起来它们是流压缩,并且在位图的压缩格式中随机设置位(在创建它时)是不可能的(非常昂贵的操作),例如,如果想设置第 100、第 200、第 300 是可行的,但如果要求设置第 100、第 200、第 105、第 3000、第 1999,那么这是不可能的。
在我的情况下,对于所有位,只能随机获取设置了哪些位和未设置的信息,例如,如果我正在执行一些操作 1073741824 次,我需要根据操作结果设置任何位,它们不会以递增的顺序。
这是正确的吗?还有其他选择吗?
摘要:在随机设置位时创建压缩位图的算法。没有可用的熵/模式信息。分发可以是任何东西。
目标:节省内存的最佳算法。通过设置随机位来减少位图在创建时占用的内存。