「緯度経度から○○算出API」シリーズ第二弾(?)ということで、
次は『標高』を算出するAPIを公開してみました。
LatLng2Height:::緯度経度から標高算出API
標高の算出には、NASAが無料で公開している
SRTMを利用しています。
スペースシャトル「エンデバー」のミッション(2000年2月)で得られたデータから
作られたものだそうです。
スペースシャトルって打ち上げのシーンが注目されがちですが、
宇宙でも色々とやってるんですね・・・
このSRTM、そのデータ粒度にいくつかバリエーションがあるんですが、
本APIでは、その中の「SRTM3」というのを使用。
これには、陸地部分の緯度経度3秒毎の標高データが格納されていて、
地球全域をカバーしています。
3秒ということは、だいたい90メートル間隔くらい。
残念ながら今回は、レンタルサーバのストレージ容量制限のため、
対象領域を日本だけとしました。
(そのうち、日本以外はもう少し粒度の粗いデータを使うことで、
対象領域を地球全域にしようとも思ってます。)
こんなリッチなデータが自由に使えるのは非常に喜ばしいんですが、
とても重大な問題が・・・
それは、このデータで得られる標高の値が、
日本で正式な測量成果として用いられている標高の値と、
だいぶずれてしまっているということ。
これには、センサ自体の誤差などの原因もあるとは思いますが、
もっとも大きな原因(と思われるの)は、
参照している
ジオイドモデル(標高を0とする面)が違うということ。
(SRTMではWGS84/EGM96、日本の標高ではJGEOID2000。)
どうやら、最大で50mほどずれてしまうようです。
この辺はどうぞご容赦を・・・
そもそも、日本国内の標高を得るために、
わざわざNASAのデータを使う破目に陥ってるのは何故か?
それは、
国土地理院のデータ(
ジオイドも含めて)を使うためには、
面倒な手続きが必要だったり、制限が色々とあるためです。
もっと自由に使えるようにしてくれればいいのになぁ・・・
ぜひ、規制緩和して欲しいです。
http://42.195km.net/jogsim/
こういうの無いかなぁと探していたら、まさにビンゴのAPI。これからもよろしくお願いいたします。