This repository contains the scripts to derivate the ENU and ECEF coordinates from the longitude, latitude, and altitude values encoded in the NAD83 coordinates.

Related tags

Geolocationata-datum
Overview

ata-datum

This repository contains the scripts to derivate the ENU and ECEF coordinates from the longitude, latitude, and altitude values encoded in the NAD83 coordinates. These coordinates can be verified with the ESRI satellite imagery in this website. The pre-computed coordinates are provided by the CSV file containing the ENU, ECEF, WGS84, and NAD83 values derived from the original NAD83 file coordinates. The previously used, and slightly wrong, legacy ENU coordinates are also present in the CSV file for completeness. Both ENU coordinates have antenna 2A as the reference point. Keep in mind that these values might change in the future. Therefore, it's a good practice not to hard-code the pre-computed coordinates values in your software.

The process starts with the latitude, longitude, and altitude in NAD83 (ellipsoid GRS80) coordinates of each antenna. These values are converted to the WGS84 coordinate system using the position vector approximation described here. This method visually appears to perform better than the coordinate frame approximation. The obtained WGS84 coordinates are then transformed into ECEF using PyProj. Finally, the ENU position of each antenna relative to the position of antenna 2A is obtained by converting the WGS84 values into meters using the optimal Universal Transverse Mercator grid for the area. The UTM value of the reference point (antenna 2A) is then subtracted from the UTM value of each antenna.

The columns present in the pre-computed CSV-file are the following:

  • antenna: Antenna designation. It starts with a number and ends with a letter. The map below illustrates the positions.
  • lat_wgs: Point latitude in WGS84.
  • lon_wgs: Point longitude in WGS84.
  • alt_wgs: Point altitude in WGS84.
  • lat_nad: Point latitude in NAD83 (ellipsoid GRS80).
  • lon_nad: Point longitude in NAD83 (ellipsoid GRS80).
  • alt_nad: Point altitude in NAD83 (ellipsoid GRS80).
  • x: The X-axis of the point in ECEF.
  • y: The Y-axis of the point in ECEF.
  • z: The Z-axis of the point in ECEF.
  • e: Point east coordinate in ENU in reference to antenna 2A.
  • n: Point north coordinate in ENU in reference to antenna 2A.
  • u: Point up coordinate in ENU in reference to antenna 2A.
  • e_legacy: Legacy point east coordinate in ENU in reference to antenna 2A (inaccurate).
  • n_legacy: Legacy point north coordinate in ENU in reference to antenna 2A (inaccurate).
  • u_legacy: Legacy points up coordinate in ENU in reference to antenna 2A (inaccurate).

Dependencies

Owner
Luigi Cruz
Computer Engineering Student. Radio Amateur (PU2SPY). I talk about SDRs, Raspberry Pi, ML, Parallel Computing, Satellites, Python, C++ and Golang.
Luigi Cruz
Extract GoPro highlights and GPMF data.

Python script that parses the gpmd stream for GOPRO moov track (MP4) and extract the GPS info into a GPX (and kml) file.

Chris Auron 2 May 13, 2022
python toolbox for visualizing geographical data and making maps

geoplotlib is a python toolbox for visualizing geographical data and making maps data = read_csv('data/bus.csv') geoplotlib.dot(data) geoplotlib.show(

Andrea Cuttone 976 Dec 11, 2022
Python script that can be used to generate latitude/longitude coordinates for GOES-16 full-disk extent.

goes-latlon Python script that can be used to generate latitude/longitude coordinates for GOES-16 full-disk extent. 🌎 🛰️ The grid files can be acces

Douglas Uba 3 Apr 06, 2022
Get-countries-info - A python code that fetches data of any country

Country-info A python code getting countries information including country's map

CODE 2 Feb 21, 2022
gjf: A tool for fixing invalid GeoJSON objects

gjf: A tool for fixing invalid GeoJSON objects The goal of this tool is to make it as easy as possible to fix invalid GeoJSON objects through Python o

Yazeed Almuqwishi 91 Dec 06, 2022
Open GeoJSON data on geojson.io

geojsonio.py Open GeoJSON data on geojson.io from Python. geojsonio.py also contains a command line utility that is a Python port of geojsonio-cli. Us

Jacob Wasserman 114 Dec 21, 2022
This is the antenna performance plotted from tinyGS reception data.

tinyGS-antenna-map This is the antenna performance plotted from tinyGS reception data. See their repository. The code produces a plot that provides Az

Martin J. Levy 14 Aug 21, 2022
Starlite-tile38 - Showcase using Tile38 via pyle38 in a Starlite application

Starlite-Tile38 Showcase using Tile38 via pyle38 in a Starlite application. Repo

Ben 8 Aug 07, 2022
Geodata extensions for Django REST Framework

Django-Spillway Django and Django REST Framework integration of raster and feature based geodata. Spillway builds on the immensely marvelous Django RE

Brian Galey 62 Jan 04, 2023
Client library for interfacing with USGS datasets

USGS API USGS is a python module for interfacing with the US Geological Survey's API. It provides submodules to interact with various endpoints, and c

Amit Kapadia 104 Dec 30, 2022
A multi-page streamlit app for the geospatial community.

A multi-page streamlit app for the geospatial community.

Qiusheng Wu 522 Dec 30, 2022
A Django application that provides country choices for use with forms, flag icons static files, and a country field for models.

Django Countries A Django application that provides country choices for use with forms, flag icons static files, and a country field for models. Insta

Chris Beaven 1.2k Jan 03, 2023
Program that shows all the details of the given IP address. Build with Python and ipinfo.io API

ip-details This is a program that shows all the details of the given IP address. Build with Python and ipinfo.io API Usage To use this program, run th

4 Mar 01, 2022
Python Data. Leaflet.js Maps.

folium Python Data, Leaflet.js Maps folium builds on the data wrangling strengths of the Python ecosystem and the mapping strengths of the Leaflet.js

6k Jan 02, 2023
Python bindings and utilities for GeoJSON

geojson This Python library contains: Functions for encoding and decoding GeoJSON formatted data Classes for all GeoJSON Objects An implementation of

Jazzband 765 Jan 06, 2023
Create Siege configuration files from Cloud Optimized GeoTIFF.

cogeo-siege Documentation: Source Code: https://github.com/developmentseed/cogeo-siege Description Create siege configuration files from Cloud Optimiz

Development Seed 3 Dec 01, 2022
Python library to visualize circular plasmid maps

Plasmidviewer Plasmidviewer is a Python library to visualize plasmid maps from GenBank. This library provides only the function to visualize circular

Mori Hideto 9 Dec 04, 2022
🌐 Local tile server for viewing geospatial raster files with ipyleaflet or folium

🌐 Local Tile Server for Geospatial Rasters Need to visualize a rather large (gigabytes) raster you have locally? This is for you. A Flask application

Bane Sullivan 192 Jan 04, 2023
Use Mapbox GL JS to visualize data in a Python Jupyter notebook

Location Data Visualization library for Jupyter Notebooks Library documentation at https://mapbox-mapboxgl-jupyter.readthedocs-hosted.com/en/latest/.

Mapbox 620 Dec 15, 2022
List of Land Cover datasets in the GEE Catalog

List of Land Cover datasets in the GEE Catalog A list of all the Land Cover (or discrete) datasets in Google Earth Engine. Values, Colors and Descript

David Montero Loaiza 5 Aug 24, 2022