一种简单的方法是将温度编码为一个字节或两个字节,具体取决于您需要的范围和精度,然后将第一个温度写入输出,然后是所有其余温度之间的温差。对于双字节温度,您可以将范围限制为一些,并根据与可变长度整数的差异写入一个或两个字节。例如。如果设置了第一个字节的高位,则下一个字节包含8个以上的差分位,允许15位的差异。大多数情况下,根据您的描述,它将是一个字节。
然后取出该流并将其送入标准无损压缩机,例如zlib的。
应在采样步骤中引入任何损耗,仅编码您需要编码所需范围和精度的位数。然后,该过程的其余部分应该是无损的,以避免解压缩值中的系统漂移。
减去连续值是最简单的预测器。在那种情况下,下一个值的预测是它之前的值。它也可能是最有效的,具体取决于数据的噪音。如果您的数据非常流畅,那么您可以尝试使用更高阶的预测器来查看是否获得了更好的性能。例如。使用最后两点预测下一个点是 2a-b ,哪里 一个 是前一点和 b 是之前的一点,或使用最后三点 3a - 3b + c ,哪里 C 是重点 b 。 (这些假设每个之间的时间步长相等。)