高程格网改正,到底改了啥?
一个听起来很专业的名词,拆开看,其实是一张每个格子都不一样的"补丁网"。
有位客户来找我,说我们的软件高程格网改正一定是错的——他们测出来的高程,怎么都对不上。
我一开始也怀疑是不是改正的问题。直到我把整条数据处理链从头走了一遍,才发现:问题不在改正,而在改正之前。
这篇想把这个东西讲清楚:那个叫”高程格网改正”的东西,它到底在改什么。
先说结论:它是一张网
我们常用的 EGM2008 模型,听着很高级,其实拆开看,就是一张格网——把地球表面划成一个个格子,每个格子里存一个数值。
关键在于:这个数值,每个地方都不一样。
它不是一个全局统一的常数,而是一张起伏的、随位置变化的”补丁网”。你测出来的原始高程,加上它所在位置的那个格子里的数值,就得到了最终结果。
看起来高深的过程,底层就是这么一个”查表 + 相加”的动作。

那为什么要打这个补丁?
要理解这一点,得先接受一件事:高程不是一个数,它取决于你从哪个面往上量。
我们脚下其实同时存在好几个”基准面”,它们各自起伏、彼此并不平行:
- 地球椭球面——一个光滑的数学曲面。GNSS 直接给出的高度(大地高
H),是从它量起的。 - 大地水准面——大致是”平均海面”,但它并不平,跟着地球内部的质量分布起伏。
- 似大地水准面——又一个略有差别的面,工程上常用的正常高
Hγ是它量起的。
问题就出在这:仪器测出来的高度,和工程上真正需要的高度,是从不同的面量起的。 这两个面之间隔着一个起伏不定的差距。
下面这个演示,把这几个面的关系画成了一条剖面。左右拖动它,或者干脆把鼠标移过去——你会看到测点沿地形移动时,那几个面之间的缝隙一直在变宽、变窄:
注意看左边那几个读数——N 和 ξ 都不是常数,它们随位置在变。这就是”格网”存在的理由:因为每个地方的值都不一样,你没法用一个数字解决问题,只能把它做成一张随位置变化的网。
(顺便说一句:这张图的纵向比例是极度夸张的。真实世界里,这些面之间的差距只有几十米,而地球半径是 6371 公里——按真实比例画,它们会贴成一张纸,你什么都看不见。所以这张图”撒了谎”,但它撒的谎只是把垂直方向放大了。差距很小,但必须改正——因为工程上要的是厘米。)
EGM2008 干的,就是把这个差距在每个点上算出来、做成一格一格的网。所谓”改正”,本质就是拿这个差距,把高度从一个基准面,翻译到另一个基准面上。
这不是一个模型的事
讲到这里,就可以往外推一步了:
所有的高程格网改正,干的是同一件事——把数据从”仪器测出来的那个世界”,翻译到”工程能用的那个世界”。
不同的模型(EGM2008,或者别的),只是这张网算得更准或更糙而已。这个思路是可以通用的。
为什么它非做不可
不做这一步会怎样?
你的数据会对不上——和自己前一次的成果对不上,和别人的数据对不上,和图纸上标的标高对不上。这不是”精度差一点”的问题,是整个数据落在了一个错误的基准上,谁都没法用。
所以这一步不是锦上添花,它是让数据”能说话”的前提。
(注:EGM2008 严格来说是大地水准面模型,给出的是”大地水准面差距”;而国内常说的”高程异常”是配正常高的。两者在多数地区数值差别极小,工程上常常通用——这个细节值得单独讲,留待后文。)