【人工智能】利用GDAL批量读取tif,获取该tif的中心点坐标,并将tif名称,中心点坐标存成list输出。

以下是一个使用GDAL批量读取TIF文件,获取每个TIF文件的中心点坐标,并将TIF文件的名称和中心点坐标存储在一个列表中的Python代码示例:

import os
from osgeo import gdal

def get_tif_center_coordinates(tif_path):
    # 打开TIF文件
    dataset = gdal.Open(tif_path)
    if not dataset:
        return None

    # 获取影像的几何变换信息
    geotransform = dataset.GetGeoTransform()

    # 计算中心点的坐标
    x_origin = geotransform[0]
    y_origin = geotransform[3]
    pixel_width = geotransform[1]
    pixel_height = geotransform[5]

    cols = dataset.RasterXSize
    rows = dataset.RasterYSize

    center_x = x_origin + (cols / 2) * pixel_width
    center_y = y_origin + (rows / 2) * pixel_height

    return (center_x, center_y)

def batch_process_tifs(input_directory):
    tif_info_list = []

    for filename in os.listdir(input_directory):
        if filename.endswith(".tif") or filename.endswith(".tiff"):
            tif_path = os.path.join(input_directory, filename)
            center_coordinates = get_tif_center_coordinates(tif_path)
            if center_coordinates:
                tif_info_list.append((filename, center_coordinates))

    return tif_info_list

# 示例用法
input_directory = "path_to_your_tif_files_directory"
tif_info_list = batch_process_tifs(input_directory)

for tif_name, center_coords in tif_info_list:
    print(f"TIF名称: {tif_name}, 中心点坐标: {center_coords}")

代码说明:

  1. get_tif_center_coordinates(tif_path): 这个函数用来读取单个TIF文件并计算其中心点的地理坐标。
  2. batch_process_tifs(input_directory): 这个函数会遍历指定目录中的所有TIF文件,调用get_tif_center_coordinates函数获取每个TIF文件的中心点坐标,并将结果存储在一个列表中。
  3. 示例用法: 你需要将input_directory变量设置为包含TIF文件的目录路径,然后运行代码即可获取所有TIF文件的名称及其中心点坐标。

这个列表最终会以(TIF文件名, 中心点坐标)的形式输出。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿寻寻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值