首页 / OpenLayers / 使用示例
`r`n 区域生长
区域生长从一个种子出发,把数值相近的相邻像素并进来,直到边界明显变化为止。
`r`n
源码与运行效果
说明
示例在固定经纬度范围内生成 220×180 的数值网格,底部按值着色。点击地图先把坐标转成格网索引,再做四邻域广度优先搜索,只有与种子值差不超过容差的格子才入队。命中的格子用红色叠加,source.changed() 触发重绘。官方示例对多光谱影像做同样算法,本页用页面内的数值场复现。
| 操作 | 结果 |
|---|---|
| 点击影像任意位置 | 以该点为种子生长,红色区域为结果 |
| 调大容差 | 区域扩张,格数增加 |
| 调小容差 | 区域收缩,只保留数值最接近的部分 |
要点
- 容差以种子值为基准,而不是逐格与邻格比较,边界更稳定。
- 用
seen数组避免重复入队。
容差对结果影响很大,先根据数值分布范围估一个初值再调。