栅格区域人口分布数据获取及坐标系转换

3 篇文章 0 订阅
3 篇文章 1 订阅
前言

需要获取的是目标栅格区域内的人口分布(密度)数据。本文从数据获取,到处理方式上一步步详细进行阐述,借助工具有:arcgis10.7,python3.7,matlabR2018b。

一、人口分布数据下载和格式转换

资源环境科学与数据中心,网址: https://www.resdc.cn/Default.aspx
依次选择左侧的数据集(库)目录----->>社会经济数据----->>中国人口空间分布公里网格数据集,如下图:
在这里插入图片描述
下载数据需要注册和登录,拉到网页最下端,有如下下载列表,选择2019年数据进行下载。
在这里插入图片描述
下载下来的数据是.adf格式数据,需要转tif,shp,或netcdf格式数据的同学,请参照https://blog.csdn.net/rqjabc/article/details/124771567
该数据为栅格数据类型,每个栅格代表该网格范围(1平方公里)内的人口数,单位为人/平方公里,数据格式为gird,数据以Krassovsky椭球为基准,投影方式为Albers投影。

二、坐标系统转换

所需要的是基于经纬度的地理坐标系,然而,现在拿到的数据是投影坐标系,具体是krasovsky_1940_Albers到GCS_WGS_1984 关于地理坐标系统和投影坐标系统想了解的可以查看https://blog.csdn.net/weixin_43465015/article/details/110875759,说白了,投影坐标系=地理坐标系+投影方法,两种坐标系统的转换使用arcgis工具来实现。

  • 首先,需要定义投影(如果投影坐标系和要转换的地理坐标系是同一个地理坐标系,则直接调至下一步),打开arcgis,系统工具箱------->>数据管理工具------->>投影和变换------->>创建自定义地理(坐标)变换。如下图:
    在这里插入图片描述
    地理(坐标)变换名称自己起,方便识别就行,输入地理坐标系和输出地理坐标系在右侧的小手图标打开,可通过搜索选择。

  • 其次,栅格投影,系统工具箱------->>数据管理工具------->>投影和变换------->>栅格------->>投影栅格,如下图:
    在这里插入图片描述
    输入栅格为需要转换的数据,输出数据集我这里选择的默认地址,输出坐标系和上面一样,此时地理坐标变换会自动识别出上面我们定义的投影,确定后即可完成转换。

三、数据解析和插值

我这里转换为tif格式数据,以下为该格式数据解析的python代码,需要gdal包的加持。

from osgeo import gdal
import numpy as np

def read_data(data_path):
    dataset = gdal.Open(data_path)  # 打开tif
    projection = dataset.GetProjection()  # 地理/投影坐标系

    im_geotrans = dataset.GetGeoTransform()  # 获取仿射矩阵,含有 6 个元素的元组
    # [左上角的x坐标, 像素宽度, 行旋转(通常为零), 左上角的y坐标, 列旋转(通常为零), 像素高度(北半球上图像为负值)]。

    im_width = dataset.RasterXSize  # 获取宽度,数组第二维,左右方向元素长度,代表经度范围
    im_height = dataset.RasterYSize  # 获取高度,数组第一维,上下方向元素长度,代表纬度范围
    band = dataset.RasterCount  # 波段数
    im_data = dataset.GetRasterBand(1).ReadAsArray(xoff=0, yoff=0, win_xsize=im_width, win_ysize=im_height)  # 数据

    im_lon = [im_geotrans[0] + i * im_geotrans[1] for i in range(im_width)]  # 经度列表
    im_lat = [im_geotrans[3] + i * im_geotrans[5] for i in range(im_height)]  # 纬度列表

    return np.array(im_lon), np.array(im_lat), im_data

由于想要更精细的数据,因此需要对数据进行插值处理,这里应用的是matlab中的interp2函数进行二维插值,matlab代码如下:

[lon_data1, lat_data1] = meshgrid(lon_data, lat_data);
[lon_u1, lat_u1] = meshgrid(lon_u, lat_u);
inter_data= interp2(lon_data1, lat_data1, double(origin_data), lon_u1, lat_u1, 'spline'); %三次样条插值
% 'linear' :双线性插值算法(缺省算法);
% 'nearest' :最临近插值;
% 'spline' :三次样条插值;
% 'cubic' :双三次插值。
save('C:\Users\ADMIN\PycharmProjects\pythonProject\inter_data.mat', 'inter_data');
END
参考资料
  • 3
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: ADF(Arc/Info Binary Grid Format)是由ESRI开发的一种栅格数据格式,常用于存储地理空间数据。而DEM(Digital Elevation Model)是数字高程模型,用于表示地表的海拔高度信息。 要将ADF格式的数据转换成DEM格式,可以通过以下步骤进行: 1. 首先,确保你已经安装了与ESRI相关的软件,如ArcGIS等。 2. 打开ArcMap软件,点击"文件"菜单,选择"添加数据",找到你想要转换的ADF格式文件,并点击"添加"。 3. 在ArcMap中,双击ADF格式数据图层来查看其属性。 4. 在属性表中,找到一个代表海拔高度的字段,可以是地表高程、等值线等信息。如果没有合适的字段,可以使用空间分析工具创建一个DEM。 5. 使用空间分析工具(如"等高线到栅格"或"栅格栅格"工具)对ADF格式数据进行转换。在工具中选择ADF格式的图层作为输入,选择一个输出路径和文件名,并选择DEM格式作为输出的数据类型。根据需要设置其他参数,并确认转换。 6. 等待转换的过程完成。转换的时间长度取决于数据的大小和计算机性能。 7. 转换完成后,你将得到一个DEM格式的文件,该文件将包含海拔高度信息。 通过上述步骤,你可以将ADF格式的数据成功转换成DEM格式,以便进行地表高度分析等工作。请确保你在转换过程中参考了相关软件的使用手册或官方文档,以获得更详细的指导。 ### 回答2: 要将ADF格式的数据转换为DEM格式,您可以按照以下步骤操作: 第一步,需要确定您需要转换的ADF文件的文件路径和名称。确保您已经准备好要使用的软件和工具,如GIS软件或DEM转换工具。 第二步,将ADF文件导入到GIS软件或DEM转换工具中。如果使用的是GIS软件,您可以通过导入功能将ADF文件加载到软件中。如果使用的是专门的DEM转换工具,您需要按照该工具提供的指示将ADF文件导入到工具中。 第三步,进行DEM转换设置。在导入ADF文件后,您可能需要进行一些设置,例如选择DEM的输出路径和名称。您还可以根据需要设置DEM的分辨率、边界范围和其他参数。 第四步,执行ADF到DEM的转换。一旦设置好转换参数,您可以运行转换程序或工具,开始将ADF文件转换为DEM格式。该过程可能需要一些时间,具体取决于文件的大小和您计算机的性能。 第五步,检查和验证转换结果。一旦转换完成,您可以加载新生成的DEM文件,并对其进行检查和验证。您可以使用GIS软件的分析工具或DEM查看器来查看DEM数据,并确保转换结果准确无误。 请注意,具体的转换步骤和工具可能会因您所使用的软件和数据类型而有所不同。因此,在进行转换之前,您可能需要仔细查阅所使用软件或工具的相关文档,以确保正确完成转换过程。 ### 回答3: ADF格式是一种常用的栅格数据格式,它包含了高程数据的信息。DEM(Digital Elevation Model)是一种地理信息系统中常见的栅格数据模型,用于表示地表高程。 要将ADF格式转换为DEM格式,可以使用地理信息系统软件或专门的数据处理工具进行操作。以下是一种常见的转换方法: 1. 打开地理信息系统软件,如ArcGIS或QGIS。 2. 在软件中创建一个新的工作空间或项目。 3. 导入ADF格式文件。在软件中,选择"导入"或"添加数据"选项,并选择ADF文件。 4. 确认导入数据坐标系。ADF格式通常包含了空间参考信息,软件会自动识别并选择相应的坐标系。 5. 在软件中选择"转换"或"导出"选项。根据软件的操作界面,选择将数据输出为DEM格式的选项。 6. 设置DEM输出的相关参数。通常可以选择输出的分辨率、投影坐标系等。 7. 执行转换操作。根据软件的指导,点击相应按钮或确认转换操作。 8. 等待转换完成。根据数据的大小和电脑性能,转换过程可能需要一些时间。 9. 检查转换结果。打开输出的DEM文件,确认数据的格式和内容是否符合预期。 通过以上步骤,可以将ADF格式的数据成功转换为DEM格式。需要注意的是,不同的地理信息系统软件在操作界面和具体步骤上可能会有所不同,但基本的原理和要点是相似的。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值