Chcę przechowywać plik GeoTIFF piksel po pikselu w bazie danych. Muszę przechowywać wartości pikseli wraz z lat / lon tego piksela na obrazie GeoTIFF. czy jest to możliwe do zrobienia?
geotiff-tiff
postgis-2.0
nehaarora
źródło
źródło
Odpowiedzi:
W ogólnym sensie użyj parametrów transformacji afinicznej , które powinny być dostępne w dowolnym formacie pliku rastrowego. W przypadku GDAL jest to dostępne z funkcją GetGeoTransform () lub funkcją ST_GeoReference () PostGIS . Po znalezieniu tych sześciu parametrów wystarczy ustalić, które z nich są, a następnie można wykonać funkcję transformacji w przestrzeni liniowej.
Np. Z Pythonem:
Na przykład, jeśli piksel ma kolumnę = 10, wiersz = 22, wówczas rzeczywiste współrzędne do centrum pikseli to:
Coś podobnego można przygotować dla PostGIS za pomocą ST_Affine () .
źródło
Może to być nieco archaiczne: przekonwertuj piksele na punkty, dodaj pola lat i long oraz zapełnij wartości lat i long.
źródło
Plik świata (.tfw), który towarzyszy GeoTIFF, zawiera:
źródło