我正在尝试从光栅图像中读取较长的信息。
我用rasterio包打开图像:
cdl = rasterio.open('2018_30m_cdls/2018_30m_cdls.img')
cdl.xy(1, 1)
输出为:
(-2356050.0, 3172560.0)
我看了这张图片的crs:
CRS.from_wkt('PROJCS["Albers Conical Equal Area",
GEOGCS["NAD83",DATUM["North_American_Datum_1983",
SPHEROID["GRS1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],
TOWGS84[0,0,0,-0,-0,-0,0],AUTHORITY["EPSG","6269"]],
PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],
UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],
AUTHORITY["EPSG","4269"]],
PROJECTION["Albers_Conic_Equal_Area"],
PARAMETER["standard_parallel_1",29.5],
PARAMETER["standard_parallel_2",45.5],
PARAMETER["latitude_of_center",23],
PARAMETER["longitude_of_center",-96],
PARAMETER["false_easting",0],
PARAMETER["false_northing",0],
UNIT["meters",1]]')
我的投影是什么?我想在NAD83,epsg:4269下有个lat。看来我已经处于这个预测之下了?但是,为什么经久不显示-90,40之类的东西?
提前谢谢!
答案 0 :(得分:1)
'PROJCS["Albers Conical Equal Area"
指示CRS是投影坐标系,而不是未投影坐标系(NAD83也是如此)。
这就是为什么要获得以米为单位的X,Y坐标,而不是以度为单位的纬度,经度对的原因。图片CRS的最后一行解释:
UNIT["meters",1]]')
显然,系统为SR-ORG:8538 LNF FF斜率,具有以下PROJ4字符串定义:
+proj=aea +lat_1=29.5 +lat_2=45.5 +lat_0=23 +lon_0=-96 +x_0=0 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m +no_defs
...但是您可以检查通过执行以下操作定义的图像CRS:
cdl.crs
获取NAD83坐标的最简单方法是使用EPSG:4269
实用工具将图像重新投影到rio
:
rio edit-info --crs EPSG:4269 2018_30m_cdls.tif
请注意,您可能首先需要将img
格式转换为tif
。