ArcMap获取点要素所在栅格图像中的行数与列数

简介: 本文介绍在ArcMap软件中,求取点要素在栅格图像中所处行号、列号的方法~

  本文介绍在ArcMap软件中,求取点要素栅格图像中所处行号列号的方法。

  如下图所示,我们已知一张栅格图像以及其上的几个点要素;本文就以此数据为例,介绍获取点要素所处行列号的方法。

  其中,本文所用的栅格图层与点要素图层都不含有任何地理参考信息。如下图所示,其为栅格图像的属性面板,这里“Spatial Reference”显示的是<Undefined>,且“XY Coordinate System”显示的是Unknow(如下图红色区域部分);且图像的空间范围是用四个没有任何单位、没有任何意义的数据表示(如下图绿色区域部分)。

  如下图所示,其为点要素图层的属性面板;可以看到该图层同样不含任何地理参考信息,且图层的空间范围亦是用四个没有任何单位、没有任何意义的数据表示。

  这里需要注意,如果大家的数据(栅格图像与点要素图层)含有地理参考信息(比如同时含有地理坐标系同时含有投影坐标系),同样是可以求取点要素所处行列号的。但如果大家的数据是一个含有地理参考信息一个不含有(比如栅格图像含有地理参考信息,而点要素图层不含有),那么需要首先对不含有地理参考信息的图层添加坐标系,保持两个图层坐标系一致,才可以进行下面的操作;同样,如果是两个图层一个含有投影坐标系一个含有地理坐标系,那么也需要进行坐标系的统一才可以。简单来说,要么两个图层都没有任何坐标系,要么两个图层都有地理坐标系,要么两个图层都有投影坐标系,才可以进行后面的操作。

  首先,我们在点要素图层名称处右键,选择“Open Attribute Table”选项。

  接下来,在属性表左上方选择“Table Options”→“Add Field...”选项。

  在弹出的“Add Field”窗口中,配置字段名称。这个字段是我们后期用来存放点要素在图像中的X值,因此命名为X类似的名称即可;字段类型为“Float”或“Double”,下面的精度可以配置也可以不配置。

  再次执行同样的操作,建立第二个字段,后期存放点要素在图像中的Y值。

  配置完毕后,如下图所示。

  随后,在刚刚建立的第一个字段名称处右键,选择“Calculate Geometry...”。

  在弹出的“Calculate Geometry”窗口中,“Property”选择为“X Coordinate of Point”,不要选中最下方的“Calculate selected records only”勾选项(如果该项可选的话)。

  对另一个字段执行同样的操作,但是“Property”选择为“Y Coordinate of Point”即可。

  随后,可以看到这两个字段都已经有了具体的数值;这两个数值就表示每一个点在栅格图像中的位置。若要准确来说,这两个值其实是每一个点在ArcMap软件当前坐标下的XY值。

  接下来,我们即可开始计算。这里有两种方法,一种是在ArcMap软件的字段计算器中直接计算,还有一种是将属性表导出后到Excel等软件中计算。这里因为我要对多个图像中的点要素进行计算,因此就选择用第二种方法。

  首先,在属性表左上方选择“Table Options”→“Clear Selection”选项,确保我们导出数据时没有遗漏。

  随后,在ArcMap软件选择“Toolboxes”→“System Toolboxes”→“Conversion Tools.tbx”→“Excel”→“Table To Excel”。

  选择我们需要导出属性表的点要素,并配置输出路径与文件名称。

  接下来,我们需要在ArcMap软件左侧的图层列表中,右键选择栅格影像图层,并选择“Properties...”进行查看。首先,需要记录一下栅格影像的像素大小,如下图所示。

  随后,记录栅格影像的最顶处坐标值最左侧坐标值;如下图所示。

  随后,在Excel中分别用公式=INT(ABS((B$3-G3)/E$3)+1)=INT(ABS((C$3-H3)/E$3)+1)来计算点要素所处的行列号。如下图所示,其中,B$3表示我们刚刚记录的栅格图像最左侧坐标值(也就是-0.5),C$3表示栅格图像最顶处坐标值(也就是0.5);E$3表示栅格图像的像素大小(取一个边长即可,也就是1);G列与H列分别为刚刚我们为点要素图层新建的两个字段XYJ列与K列分别为两个公式计算得到的结果。大家对照着下图与上方两张图来看应该会更加清楚。

  随后,上述第一个公式计算得到的就是点要素在栅格图像中的列号,第二个公式得到的就是点要素的行号

相关文章
|
定位技术
ArcGIS地形起伏度+地形粗糙度+地表切割深度+高程变异系数提取
ArcGIS地形起伏度+地形粗糙度+地表切割深度+高程变异系数提取
6530 0
|
3月前
|
传感器 定位技术 C++
基于C++的GDAL用空白栅格填充长时间序列遥感影像中的缺失图像
然后,定义需要处理的遥感影像路径列表,和识别数据缺失的逻辑。这里我们简化处理,假设已经知道哪一幅图像是缺失的,因此直接跳过识别步骤。
59 1
|
3月前
|
编解码
ENVI无缝镶嵌、拼接栅格数据的方法
【8月更文挑战第10天】使用ENVI进行无缝镶嵌的方法包括:准备具有一致空间参考的栅格数据;通过“File”菜单逐个加载数据;启动“Seamless Mosaic”工具;添加待镶嵌图像;调整几何校正、颜色平衡及羽化参数以平滑过渡;设定输出路径与格式;最后执行镶嵌并检查结果质量,必要时微调参数直至满意。
264 1
|
6月前
|
存储 数据可视化 Cloud Native
用Ganos低代码实现免切片遥感影像浏览(二):动态栅格瓦片
本文介绍了Ganos全新发布了动态栅格瓦片能力,帮助用户将库内栅格数据或栅格分析结果快速可视化,无需依赖类似GeoServer等空间服务中间件,技术栈短平快,使用灵活高效。
ENVI:影像的规则裁剪和不规则裁剪
ENVI:影像的规则裁剪和不规则裁剪
372 0
|
6月前
ArcGIS中ArcMap求取点要素在栅格图像中的行列号的方法
ArcGIS中ArcMap求取点要素在栅格图像中的行列号的方法
|
6月前
|
定位技术 Python
Python中ArcPy栅格裁剪栅格:批量对齐栅格图像范围并统一行数与列数
Python中ArcPy栅格裁剪栅格:批量对齐栅格图像范围并统一行数与列数
144 1
|
6月前
|
定位技术
基于ENVI实现栅格遥感影像按图层行列号与像元数量划定矩形研究区域并裁剪
基于ENVI实现栅格遥感影像按图层行列号与像元数量划定矩形研究区域并裁剪
|
6月前
|
存储 定位技术 对象存储
C++语言GDAL批量裁剪多波段栅格图像:基于像元个数裁剪
C++语言GDAL批量裁剪多波段栅格图像:基于像元个数裁剪
155 2
|
6月前
|
编解码 定位技术
ENVI对不含地理参考信息的栅格图像添加地理或投影坐标系信息
ENVI对不含地理参考信息的栅格图像添加地理或投影坐标系信息