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
A NASA MEaSUREs project to provide automated, low latency, global glacier flow and elevation change datasets

Notebooks A NASA MEaSUREs project to provide automated, low latency, global glacier flow and elevation change datasets This repository provides tools

NASA Jet Propulsion Laboratory 27 Oct 25, 2022
When traveling in the backcountry during winter time, updating yourself on current and recent weather data is important to understand likely avalanche danger.

Weather Data When traveling in the backcountry during winter time, updating yourself on current and recent weather data is important to understand lik

Trevor Allen 0 Jan 02, 2022
Tool to suck data from ArcGIS Server and spit it into PostgreSQL

chupaESRI About ChupaESRI is a Python module/command line tool to extract features from ArcGIS Server map services. Name? Think "chupacabra" or "Chupa

John Reiser 34 Dec 04, 2022
Read and write rasters in parallel using Rasterio and Dask

dask-rasterio dask-rasterio provides some methods for reading and writing rasters in parallel using Rasterio and Dask arrays. Usage Read a multiband r

Dymaxion Labs 85 Aug 30, 2022
WIP: extracting Geometry utilities from datacube-core

odc.geo This is still work in progress. This repository contains geometry related code extracted from Open Datacube. For details and motivation see OD

Open Data Cube 34 Jan 09, 2023
Fiona reads and writes geographic data files

Fiona Fiona reads and writes geographic data files and thereby helps Python programmers integrate geographic information systems with other computer s

987 Jan 04, 2023
A simple python script that, given a location and a date, uses the Nasa Earth API to show a photo taken by the Landsat 8 satellite. The script must be executed on the command-line.

What does it do? Given a location and a date, it uses the Nasa Earth API to show a photo taken by the Landsat 8 satellite. The script must be executed

Caio 42 Nov 26, 2022
Record railway train route profile with GNSS tools

Train route profile recording with GNSS technology based on ARDUINO platform Project target Develop GNSS recording tools based on the ARDUINO platform

tomcom 1 Jan 01, 2022
Read images to numpy arrays

mahotas-imread: Read Image Files IO with images and numpy arrays. Mahotas-imread is a simple module with a small number of functions: imread Reads an

Luis Pedro Coelho 67 Jan 07, 2023
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
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
A Python framework for building geospatial web-applications

Hey there, this is Greppo... A Python framework for building geospatial web-applications. Greppo is an open-source Python framework that makes it easy

Greppo 304 Dec 27, 2022
A part of HyRiver software stack for handling geospatial data manipulations

Package Description Status PyNHD Navigate and subset NHDPlus (MR and HR) using web services Py3DEP Access topographic data through National Map's 3DEP

Taher Chegini 5 Dec 14, 2022
Geographic add-ons for Django REST Framework. Maintained by the OpenWISP Project.

Geographic add-ons for Django REST Framework. Maintained by the OpenWISP Project.

OpenWISP 982 Jan 06, 2023
Spectral decomposition for characterizing long-range interaction profiles in Hi-C maps

Inspectral Spectral decomposition for characterizing long-range interaction prof

Nezar Abdennur 6 Dec 13, 2022
Geographic add-ons for Django REST Framework. Maintained by the OpenWISP Project.

django-rest-framework-gis Geographic add-ons for Django Rest Framework - Mailing List. Install last stable version from pypi pip install djangorestfra

OpenWISP 981 Jan 03, 2023
A public data repository for datasets created from TransLink GTFS data.

TransLink Spatial Data What: TransLink is the statutory public transit authority for the Metro Vancouver region. This GitHub repository is a collectio

Henry Tang 3 Jan 14, 2022
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
Ingest and query genomic intervals from multiple BED files

Ingest and query genomic intervals from multiple BED files.

4 May 29, 2021
geobeam - adds GIS capabilities to your Apache Beam and Dataflow pipelines.

geobeam adds GIS capabilities to your Apache Beam pipelines. What does geobeam do? geobeam enables you to ingest and analyze massive amounts of geospa

Google Cloud Platform 61 Nov 08, 2022