geotif 添加坐标_python – 如何获取geotif中单元格的坐标?

使用仿射变换矩阵,将像素坐标映射到世界坐标.例如,使用

affine包. (还有其他方法可以使用简单的数学方法.)

from affine import Affine

fname = '/path/to/raster.tif'

以下是获得仿射变换矩阵T0的两种方法.例如,使用GDAL / Python:

from osgeo import gdal

ds = gdal.Open(path, gdal.GA_ReadOnly)

T0 = Affine.from_gdal(*ds.GetGeoTransform())

ds = None # close

import rasterio

with rasterio.open(fname, 'r') as r:

T0 = r.affine

GDAL(T0)使用的变换数组的约定是引用像素角.您可能希望改为引用像素中心,因此需要将其翻译50%:

T1 = T0 * Affine.translation(0.5, 0.5)

现在要从像素坐标转换为世界坐标,将坐标与矩阵相乘,这可以通过一个简单的函数来完成:

rc2xy = lambda r, c: (c, r) * T1

现在,获取第一行,第二列(index [0,1])中栅格的坐标:

print(rc2xy(0, 1))

另外,请注意,如果需要从世界坐标获取像素坐标,可以使用反转仿射变换矩阵~T0.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/291948.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

年纪都这么大了,还在倒班工作......

1 这么大年纪都在倒班工作(素材来源网络,侵删)▼2 原来,这就是命啊(素材来源网络,侵删)▼3 天啊,都是什么狗血剧情?(素材来源网络,侵删&#xf…

VB中使用GDI+进行图像缩放的实例

VISUAL BASIC(VB)对图形图像的处理一直以来是弱项,并受到很多人的垢病。关于图形图像的放大缩小,一般使用PICTUREBOX的PAINTPICTURE方法来处理。但这个处理方法最大的问题就是图像的失真。比方说图像中原来有网格线的,…

javascript的关于刷新页面给出提示框的代码

// 页面刷新事件 ,或者关闭事件的3中方法!测试都可以!参考官方文档: https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers.onbeforeunloadhttps://developer.mozilla.org/en-US/docs/Web/API 方法1:window.onb…

JavaScript格式化数字显示格式

为什么80%的码农都做不了架构师?>>> JavaScript格式化数字显示格式 /** * 格式化数字显示方式 * 用法 * formatNumber(12345.999,#,##0.00); * formatNumber(12345.999,#,##0.##); * formatNumber(123,000000); * param num * param pattern */ func…

linux c之使用#define定义多行函数总结

1、用 define的特点 函数:会带来额外的开销,开辟一片栈空间,记录返回地址,将形参压栈,从函数返回还要释放堆栈,这种开销大,函数的参数必须被声明为一种特定的类型。 宏定义:代…

tensorflow去掉某一维度_在Python中解压缩(取消堆栈)一个输入(占位符),在tensorflow中有一个None维度...

我正在尝试使用具有不同时间步长(不同帧数)的输入的LSTM. rnn.static_rnn的输入应该是tf(不是tf!)的序列.所以,我应该将输入转换为序列.我试图使用tf.unstack和tf.split,但是他们都需要知道输入的确切大小,而我的输入的一个维度(时间步长)正在通过不同的输入改变.以…

js点击图片查看大图,并可以拖动,且滚动滑轮放大缩小

方法一:此方法在页面没有滚动条时无法缩放 JQuery function hideMax(){$(".MAX_div").remove();$("#Cover_Div").hide();}function showMax(url){$("#Cover_Div").show();var Imagefunction(){return document.createElement("i…

太努力工作的年轻人,都有病吧!?

全世界只有3.14 % 的人关注了爆炸吧知识前段时间,有人这样问超模君:为什么年轻人明明没有老一辈辛苦,病却反而更多了?在这个物质丰富的年代,如果你退出这场无限内卷的社畜游戏,选择躺平就会活得很轻松&…

lsattr/chattr

lsattr/chattr主要用于特殊权限可以用lsattr直接查看当前目录下所有文件和目录的特殊属性 默认只有一个e (ext4 /ext3)chattr a 111.txtlsattr 111.txt就会发现多了一个a 那么这个a权限有什么意义呢?我们来编辑一下111.txt 随便输入一些&…

linux之学习之路

很多同学接触Linux不多,对Linux平台的开发更是一无所知。 而现在的趋势越来越表明,作为一个优秀的软件开发人员,或计算机IT行业从业人员, 掌握Linux是一种很重要的谋生资源与手段。 下来我将会结合自己的几年的个人开发经验&…

xshell中重启指令_Xshell命令大全

(1)命令ls-----列出文件ls -la给出当前目录下所有文件的一个长列表,包括以句点开头的“隐藏”文件ls a*列出当前目录下以字母a开头的所有文件la -l *.doc 给出当前目录下以.doc结尾的所有文件(2)命令cp——复制文件cp afile afile.bak 把文件复制为新文件afile.bakc…

在线自动下载最新版本jquery

<script src"http://code.jquery.com/jquery-latest.js"> 转载于:https://www.cnblogs.com/IcanFixIt/p/4253279.html

高考成绩接近满分,却被清华北大拒绝,被称“中国最帅科学家”

全世界只有3.14 % 的人关注了爆炸吧知识有一段时间&#xff0c;超模君刷微博的时候&#xff0c;发现微博热搜第一是“我国又发现10亿吨级大油田”这个话题&#xff0c;不愧是硬核礼物——“真我为祖国献石油”&#xff01;微博热搜第一话题作为一名热爱祖国的十八线网红&#x…

自古以来,JSON序列化就是兵家必争之地

上文讲到使用ioutil.ReadAll读取大的Response Body&#xff0c;出现读取Body超时的问题。01前人引路Stackoverflow[1]的morganbaz的看法是&#xff1a;使用iotil.ReadAll去读取go语言里大的Response Body&#xff0c;是非常低效的; 另外如果Response Body足够大&#xff0c;还有…

实验三《实时系统的移植》 20145222黄亚奇 20145213祁玮

北京电子科技学院&#xff08;BESTI&#xff09; 实 验 报 告 封 面 课程&#xff1a;信息安全系统设计基础 班级&#xff1a;1452 姓名&#xff1a; 黄亚奇 祁玮 学号&#xff1a; 20145222 20145213 成绩&#xff1a; 指导教师&#xff1a;娄嘉鹏 实验日期&#xff1a;2016.1…

linux c之通过popen和pclose函数创建管道执行shell 运行命令使用总结

1、函数介绍 popen 和 pclose 函数 操作是创建一个管道链接到另一个进程,然后读其输出或向其输入端发送数据。标准 I/O 库提供了两个函数 popen 和 pclose 函数,这两个函数实现的操作是:创建一个管道,调用 fork 创建一个子进程,关闭管道的不使用端,执行一个 shell 以运行…

python内置函数 pdf_关于Python巧妙而强大的内置函数

python内置了一些非常巧妙而且强大的内置函数&#xff0c;对初学者来说&#xff0c;一般不怎么用到&#xff0c;我也是用了一段时间python之后才发现&#xff0c;哇还有这么好的函数&#xff0c;这个函数都是经典的而且经过严格测试的,可以一下子省了你原来很多事情&#xff0c…

nginx获得response自定义的header

Response header send by upstream is $upstream_http_x_uuid http://wiki.nginx.org/HttpUpstreamModule#.24upstream_http_.24HEADER $upstream_http_$HEADER Arbitrary HTTP protocol headers, for example: $upstream_http_host$http_x_* is header sent by client. 转载于…

欢迎来到元宇宙的虚拟世界

众所周知&#xff0c;由于这次疫情&#xff0c;给我们的生活造成了很多不便。现在&#xff0c;让我们进入未来科技世界, 我想很多人都听说过 元宇宙 这个词&#xff0c;大家可能对这个新的概念有很多疑问, 什么是元宇宙? 这是什么新技术? 在即将到来的未来会带来怎样的变化&a…

checking size of char… configure: error: cannot compute sizeof (char) 解决方法

今天在编译freeswitch时 报了这个错误&#xff0c;看config.log 发现最后在测试一些lib的时候出错了。 先按configure的--with选项处理无效。config.log依然同样的错误 最后export LD_LIBRARY_PATH/lib/:/usr/lib/:/usr/local/lib 再configure就可以了。 参考http://www.recoye…