You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现像素位置值到图像坐标的转换方法问询

像素位置到图像坐标的转换方案

核心逻辑

图像的常规坐标系以左上角为原点(0,0),x轴向右递增,y轴向下递增。你提供的左下角/右上角像素位置,应该是基于「左下角为原点、y轴向上」的坐标系,转换只需完成y轴方向的翻转即可。

方法一:手动计算(无需额外库)

假设图像尺寸为(width, height)(width是横向像素数,height是纵向像素数),转换公式如下:

  • 原坐标系下的点(x, y) → 图像坐标系下的点(x_img, y_img):
    x_img = x  # x轴方向一致,无需调整
    y_img = height - y  # y轴方向反转,用图像高度偏移
    
  • 对应你给出的示例点:
    原左下角(204.55, 196.33) → 图像坐标(204.55, height - 196.33)
    原右上角(314.56, 294.77) → 图像坐标(314.56, height - 294.77)

方法二:用Pillow库辅助实现

Pillow是Python常用的图像处理库,可快速获取图像尺寸并完成转换:

  1. 安装库:
    pip install pillow
    
  2. 示例代码:
    from PIL import Image
    
    # 加载图像并获取尺寸
    img = Image.open("你的图像文件路径")
    img_width, img_height = img.size
    
    # 原坐标点
    orig_left_bottom = (204.55, 196.33)
    orig_right_top = (314.56, 294.77)
    
    # 转换为图像坐标系
    img_left_bottom = (orig_left_bottom[0], img_height - orig_left_bottom[1])
    img_right_top = (orig_right_top[0], img_height - orig_right_top[1])
    
    print(f"图像坐标系左下角点: {img_left_bottom}")
    print(f"图像坐标系右上角点: {img_right_top}")
    

扩展说明

如果你的像素位置是其他自定义坐标系,只需明确两个坐标系的原点位置和轴方向,通过简单的平移、翻转等线性变换就能完成转换,完全不需要GDAL/Rasterio这类GIS库。

内容的提问来源于stack exchange,提问作者mdl518

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 00:21:07