Längen- und Breitengradkoordinaten ↔ UTM-Koordinatenkonvertierung mit Python

Die Umrechnungsformel von Breiten- / Längengradkoordinaten in UTM-Koordinaten (Universal Horizontal Mercator) ist etwas mühsam. Eine etwas komplizierte Berechnung ist erforderlich, um die meridionale Bogenlänge von der Äquatorlinie bei einem beliebigen Breitengrad zu erhalten. Mit Python können Sie Koordinaten mithilfe des pyproj-Moduls einfach konvertieren. Das Gegenteil ist ebenfalls möglich. Es kann nicht so verwendet werden, wie es ist, daher muss es ein wenig modifiziert werden.

EQA → UTM

eqa2utm.py


from pyproj import Proj

#An arbitral point in EQA coordinate
lon=139.767120  #[deg.]
lat=35.681079  #[deg.]

##Compute UTM zone
#"int": Extract only integer value
#31: Offset for UTM zone definition
#6: Angle in a UTM zone for the longitude direction
e2u_zone=int(divmod(lon, 6)[0])+31

#Define EQA2UTM converter
e2u_conv=Proj(proj='utm', zone=e2u_zone, ellps='WGS84')
#Apply the converter
utmx, utmy=e2u_conv(lon, lat)
#Add offset if the point in the southern hemisphere
if lat<0:
    utmy=utmy+10000000
    
print(" UTM zone is ", e2u_zone, " \n", \
      "UTM Easting is", utmx, "[m]\n",\
      "UTM Northing is ", utmy, "[m]")

#OUTPUT
 UTM zone is  54  
 UTM Easting is 388435.0160657919 [m]
 UTM Northing is  3949276.5698600397 [m]

Bestätigung test2.png Quelle: https://www.latlong.net/lat-long-utm.html

UTM → EQA Um von UTM-Koordinaten zu konvertieren, müssen die UTM-Zone und die Nord-Süd-Hemisphäre angegeben werden.

utm2eqa.py


from pyproj import Proj

#Define UTM zone
e2u_zone=54
#Define the northern('N')/southern('S') hemisphere
hemi='N'
utmx=388435.0160657919 #[m]
utmy=4060202.406410741 #[m]

#Add offset if the point in the southern hemisphere
if hemi=='S':
    utmy=utmy-10000000
    
#Define coordinate converter
e2u_conv=Proj(proj='utm', zone=e2u_zone, ellps='WGS84')
#Convert UTM2EQA
lon, lat=e2u_conv(utmx, utmy, inverse=True)
    
print("Longitude is ",lon," [deg.] \n",\
      "Latitude is ", lat, "[deg.]")
#OUTPUT
Longitude is  139.75135058449402 [deg.]
 Latitude is  36.68091466691 [deg.]

Mesh ganze Umwandlung

Es ist fast das gleiche.

EQA2UTM_mesh.py


from pyproj import Proj
import numpy as np
import matplotlib.pyplot as plt

#np.linspace(start, end, number_of_data)
lon_1d=np.linspace(130.3, 131.05, 2701)
lat_1d=np.linspace(31.18333, 31.9333, 2701)
lon, lat=np.meshgrid(lon_1d, lat_1d)

e2u_zone=int(divmod(lon[0,0], 6)[0])+31
e2u_conv=Proj(proj='utm', zone=e2u_zone, ellps='WGS84')
utmx, utmy=e2u_conv(lon, lat)
if lat[0,0]<0:
    utmy=utmy+10000000

#Option:
#Display the UTM Easting grid
plt.pcolormesh(utmx/1000, utmy/1000, utmx, cmap='jet')
plt.colorbar() 
plt.xlabel('UTM Easting [km]')
plt.ylabel('UTM Northing [km]')
plt.show 

Die Farbe ist UTM Easting [m] Raster image.png

Recommended Posts

Längen- und Breitengradkoordinaten ↔ UTM-Koordinatenkonvertierung mit Python
Versuchen Sie, Breiten- / Längen- und Weltkoordinaten mit Python ineinander umzuwandeln
MP3 → WAV-Konvertierung mit Python
Bilineare Interpolationsfunktion bei nichtlinearer Koordinatenkonvertierung mit Python und Numpy
Python-Skript zum Konvertieren von Breiten- und Längengrad in Mesh-Code
[Python3] Eine Geschichte, die bei der Zeitzonenkonvertierung steckt
Erhalten Sie mit QGIS Längen- und Breitengrade in Metern
Sammeln Sie Informationen zu Längen- und Breitengraden des Speichers mit Scrapy + Splash ②
Sammeln Sie Informationen zu Breiten- und Längengraden des Speichers mit Scrapy + Splash ①
FizzBuzz in Python3
Scraping mit Python
Statistik mit Python
Scraping mit Python
Python mit Go
Twilio mit Python
In Python integrieren
Spielen Sie mit 2016-Python
AES256 mit Python
Getestet mit Python
Python beginnt mit ()
mit Syntax (Python)
Bingo mit Python
Zundokokiyoshi mit Python
Erstellen Sie eine Liste mit Längen- und Breitengraden und konvertieren Sie die UTM-Koordinaten sofort → Dateiausgabe
Excel mit Python
Mikrocomputer mit Python
Mit Python besetzen
Probleme beim Erstellen eines CSV-JSON-Konvertierungstools mit Python
Holen Sie sich mit der Geoindex-Bibliothek von Python nahegelegene Längen- und Breitengrade
[Python] Konvertierung von WGS84 in ein ebenes orthogonales Koordinatensystem
YOLP: Extrahieren Sie Längen- und Breitengrade mit der Yahoo! Geocoder-API.
Ich habe versucht, das Bild mit Python + OpenCV "morphologisch zu konvertieren"
Konvertieren Sie Breite, Länge und GPS-Höhe in dreidimensionale orthogonale Koordinaten
Führen Sie mit Python eine Konvertierung in halber und voller Breite mit hoher Geschwindigkeit durch