You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用OpenLayers将单波段GeoTIFF以白黑渐变伪彩色可视化?

单波段GeoTIFF伪彩色可视化配置(OpenLayers)

针对你的需求,pseudoColor需要配置为WebGL样式对象,通过数值插值映射实现从白色到黑色的线性渐变,具体代码如下:

const pseudoColor = {
  color: [
    'interpolate', // 插值函数
    ['linear'], // 线性插值方式
    ['band', 1], // 读取GeoTIFF的第一波段数据(单波段场景下唯一波段)
    0, [1, 1, 1, 1], // 数值0对应白色(RGBA格式,值范围0-1)
    1200, [0, 0, 0, 1] // 数值1200对应黑色
  ]
};

关键参数说明:

  • ['band', 1]:指定读取目标波段,单波段GeoTIFF直接用1即可;如果是多波段需对应调整序号
  • interpolate + linear:采用线性插值逻辑,让颜色在0到1200的数值区间内平滑过渡
  • RGBA颜色数组:每个分量取值范围为0-1,[1,1,1,1]表示完全不透明白色,[0,0,0,1]表示完全不透明黑色

整合后的完整代码:

const source = new MultiGeoTIFF({
  sources: [
    {
      url:'image.tif',
    },
  ],
});

const pseudoColor = {
  color: [
    'interpolate',
    ['linear'],
    ['band', 1],
    0, [1, 1, 1, 1],
    1200, [0, 0, 0, 1]
  ]
};

const layer = new WebGLTile({
  source: source,
  style: pseudoColor,
});

内容的提问来源于stack exchange,提问作者piorkoo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 22:20:12