0

我有一个 1 波段 DEM geotiff,以及一个转换高度 -> RGB 和 RGB -> 高度的公式(如下所示:https ://docs.mapbox.com/help/troubleshooting/access-elevation-data )。

使用公式(和 GDAL/Python),我将我的 geotiff 转换为 3 个波段(R、G 和 B)geotiff,每个波段的值都在 0-255 范围内。

使用 mapnik / mod_tile,然后我将我的 geotiff 作为 PNG 瓷砖提供给 Web 客户端。如果我将 mod_tile 设置为 24 位或 32 位 PNG,一切都很好。但是,如果我将它们作为 8 位 PNG 提供(以减小它们的大小),那么解码的值就会有点偏离(在查看图像时我看不到差异,但 RGB 值并不完全相同,因此弄乱了我解码的高度)。

我是否期望能够使用 8 位 PNG 而不是 24/32 来做我想做的事情(检索确切的 RGB 值),或者我对 8 位 PNG 不了解(如果是这样,我将不得不深入 mod_tile 代码,我猜当我们询问 8 位时,它会生成 24 或 32 然后压缩)?

4

1 回答 1

0

不,您期望可以将任何 24 位值的集合无损地压缩为 8 位值是不对的。如果原始文件中有超过 256 个不同的 24 位值,那么其中一些不同的值必然会映射到相同的 8 位值。

于 2021-02-05T20:21:47.950 回答