GPS高度が地図と合わない理由
GPSは、なめらかな数学的モデルである楕円体からの高さを測ります。一方、地図の標高は平均海面(ジオイド)を基準にしていて、この2つの基準面は場所によって−100 mから+85 mまでずれます。さらにGPSは垂直方向の誤差がもともと大きいため、数値が食い違うのは不具合ではなく想定内です。
許可制 · プライベート · Chrome、Safari、Firefox、Edge で動作
ゼロの基準が2つある
「高さ」を測るには出発点となる面が必要で、ここでは2つの面が使われています。衛星には海面の位置がわからないため、GPSが出す生の高さはWGS-84楕円体——なめらかに理想化された扁球——を基準に測られます。一方、海面は重力に従い、重力は地球の不均一な質量分布に従うため、でこぼこした面ができます。これがジオイドで、地図や標識、そして私たちの感覚が使うゼロです。2つの面の差(ジオイド高)は、インド南方の約−100 mからニューギニア付近の+85 mまで幅があります。そのためGPSの生の高さは、完全に正しいまま数十メートル「ずれて」見えることがあります。別の問いに答えているだけなのです。
スマホはたいてい正しく、ブラウザはときどき違う
最近のスマホは高度を表示する前にジオイド補正をかけるため、登山アプリに出る数値はたいてい平均海面からの標高です。しかしブラウザの Geolocation API は、補正前の楕円体高をそのまま渡すこともあれば、高度をまったく返さないこともあります。ウェブのツールがアプリより奇妙な数値を出すのはこのためです。基準面の混乱に加えて、単純な測定誤差も乗ります。GPS衛星はすべて地平線より上にあるため、垂直方向の解は制約が弱く、その誤差は水平方向の誤差の1.5〜3倍になります。水平方向で5 mの精度が出ている測位でも、垂直方向では15 mずれていることが普通にあります。
気圧計と地形モデル——もう2つの答え
スマホや腕時計には気圧計も載っています。相対的な変化の検出は見事で(3 mの階段も感じ取ります)、絶対値は流れていきます。天気が基準を1時間単位で動かすからです。フィットネスアプリが気圧計をGPSや既知の地点で校正し直すのはそのためです。3つめの情報源は地形モデル(DEM)です。測量から作られた地面の標高の格子データで、標高ツールの裏側にあるCopernicusのデータもこれにあたります。答えるのは「この座標の地面は何メートルか」という問いで、丘の上なら揺るぎませんが、あなたが10階にいても地面の値を返します。
よくある混乱を解きほぐす
海辺なのに高度がマイナスになる。たいていは楕円体とジオイドの差で、ときには単純な垂直方向の誤差です。どちらも正常です。立ち止まっているのに高度が±10 m揺れる。垂直方向の測位が弱いだけなので、細かい上下ではなく傾向を見てください。飛行機の「高度」はさらに別の体系で、標準大気を基準にした気圧高度です。座席前のディスプレイに出る10,000 mを、ここまでの数値と比べてはいけないのはそのためです。用語も区別しておく価値があります。標高は地面の海抜、高度はあなた自身の海抜、高さは地面からあなたまでの距離です。
どの数値を信じるべき?
地面に立っていて地図と同じ答えがほしいなら、地形モデルです。標高ページが最初に表示するのはこの値で、比較用に端末のGPS高度も並べて出します。ドローンやパラグライダーで飛んでいるなら、地面の上にいないのでGPSと気圧計の融合値を。ランニングの登りを評価するなら、気圧計の相対変化を。情報源どうしで30 mずれていても、直すべき不具合ではありません。3つの計測器が3つの異なる問いに答えているだけで、どれがどの問いに答えているかは、もうわかったはずです。