https://github.com/naokiueda/EllapsoidToElevation
対象となるCSVは
・カンマ区切り、タブ区切り、スペース区切りのいずれか
・1行目か2行目にヘッダがある
・ヘッダに(大文字小文字区別なしで)「latitude/longitude/altitude」または「lat/long(lon,lng)/alt」の文言が含まれたカラムがある
これを指定すると、altitudeのカラムの数値を取ってきて
標高 = 楕円体高 - ジオイド高
の演算をして、標高に置き換えます。
標高やジオイド高について、詳しくはこちらの国土地理院のサイトで解説されています。
ジオイド高のデータは国土地理院のダウンロードサイトで配布されています。ジオイドの計算も同サイトからダウンロードしたドキュメントに記述されている「ジオイド高内挿計算」の式を使っていて、同梱配布されているアプリと誤差1㎜未満で一致しています。
毎回ジオイドデータを読むのが遅かったので、初回にPythonの配列定義を書いて、次回以降それをインポートするようにしました。これで若干処理が早くなります。
MITライセンスです。自由にお使いください。
0 件のコメント:
コメントを投稿