Skip to content
CSV内の楕円体高の列を標高に差し替えて出力します
Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
EllapsoidToElevation.py
LICENSE
README.md
geoidData.py

README.md

EllapsoidToElevation

CSV内の楕円体高の列を標高に差し替えて出力します

緯度、経度、楕円体高を含むCSVファイルを読込んで、楕円体高を標高に差し替えて別名で出力するPythonプログラムです。

利用方法

EllapsoidToElevation.py [入力ファイル] [出力ファイル]

標高の計算は次の式を用います。

標高 = 楕円体高 - ジオイド高

ジオイド高のデータは、国土地理院が https://www.gsi.go.jp/buturisokuchi/grageo_geoidseika.html にて配布しているジオイドモデルGSIGEO2011 のデータを利用します。利用にあたっては、あらかじめ国土地理院のサイト https://fgd.gsi.go.jp/download/geoid.php から、ジオイドデータを各自ダウンロードしてご利用ください(要ログイン)。

ジオイド計算の部分は上記ジオイドデータとともに配布されている「asc取扱説明書.pdf」に掲載されている「ジオイド高内挿計算」の数式を利用し、Pythomで記述しています。

最初に実行したときは国土地理院のジオイドデータファイル「gsigeo2011_ver2_1.asc」を読込んで、データモジュールを作りますので、本Pythonファイルと同じディレクトリに「gsigeo2011_ver2_1.asc」を配置してください。次回以降はデータファイルを用いず、データモジュールから読込を行います。これにより若干処理速度が向上します。なお、このリポジトリには参考として、予め「gsigeo2011_ver2_1.asc」より作成したデータモジュール「geoidData.py」を置いています。

処理対象のCSVはAgisoftMetashapeのエクスポートファイルを想定しています。 ・1行目か2行目がヘッダ。"latitude","longitude","altitude" の3つの文言があればヘッダと認識します。 ・"lat","long"(または"lon"または"lng"),"alt" の3つの文言でも構いません。 ・へッダから区切り文字列を推測するようになっています。 ・ヘッダ文字列から緯度、経度、高度のカラムを特定するようになっています

本プログラムは日本国内でのみ利用できるので、メッセージ等は日本語にしています。

【注意】 国土地理院のデータから近傍のジオイド値が取れない場合は、無効値として999が返ります。 その場合、該当するデータの標高値を999999に置換し、エラーメッセージを表示します。

以上

You can’t perform that action at this time.