Python 利用rasterio库进行坐标转换

news2024/9/23 7:33:44

这是一篇必应上找的手册上的文章,特此记录
参考链接:
原文
参考链接2
影像中的RPC信息

目录

    • 1、仿射变换矩阵转换
    • 2、使用控制点转换
    • 3、使用RPC进行坐标点转换

1、仿射变换矩阵转换

在这里插入图片描述
上面说的利用仿射转换矩阵进行转换,一些注意事项可以参考原文,复现代码

import rasterio
from rasterio import transform,Affine

def Demo1_Affine():
    trans = Affine(300.0379266750948, 0.0, 101985.0, 0.0,-300.041782729805, 2826915.0)#这个测数据不是很懂,为啥通过这些数据就能简历下面的仿射关系
    transformer = rasterio.transform.AffineTransformer(trans)
    GeoPoint = transformer.xy(0, 0)
    PixPoint = transformer.rowcol(102135.01896333754, 2826764.979108635)
    print("GeoPoint:",GeoPoint)
    print("PixPoint:",PixPoint)

Demo1_Affine()

2、使用控制点转换

import rasterio
from rasterio import transform,Affine
from rasterio.control import GroundControlPoint

def Demo2_GCP():
    gcps = [GroundControlPoint(row=11521.5, col=0.5, x=-123.6185142817931, y=48.99561141948625, z=89.13533782958984,
                               id='217', info=''),
            GroundControlPoint(row=11521.5, col=7448.5, x=-122.8802747777599, y=48.91210259315549, z=89.13533782958984,
                               id='234', info=''),
            GroundControlPoint(row=0.5, col=0.5, x=-123.4809665720148, y=49.52809729106944, z=89.13533782958984, id='1',
                               info=''),
            GroundControlPoint(row=0.5, col=7448.5, x=-122.7345733674704, y=49.44455878004666, z=89.13533782958984,
                               id='18', info='')]
    transformer = rasterio.transform.GCPTransformer(gcps)
    test= transformer.xy(0, 0)#输入像素位置,输出经纬度位置
    test2= transformer.rowcol(-123.478928146887, 49.52808986989645)#输入经纬度位置,输出像素位置
    print("test:",test)
    print("test2:",test2)

Demo2_GCP()

在这里插入图片描述

3、使用RPC进行坐标点转换

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

TQRFSOC开发板47DR LWIP自环测试

本例程基于RFSOC 47DR开发板实现LWIP自环通讯测试。使用开发板的网口与电脑或路由器等设备连接,使开发板与电脑在同一局域网内,使用telnet工具连接开发板,进行LWIP自环测试。 LWIP自环测试工程在Hello World项目上进行修改,首先打…

eclipse 配置 ABAP 连接操作手册

参考 GUI配置 按选择是否勾选single sign-on的方式,选择是否输入密码 点击NEXT 点击完成。

sqli-labs靶场通关攻略(46-50关)

第46关 (ORDER BY数字型注入) 输入?sort1 修改参数为2试一下 看到按照字母顺序进行了排序,所以它便是一个使用了order by语句进行排序的查询的一种查询输出方式 1出现报错,那么我们使用报错注入 查库 ?sort1 and updatexml(1,…

go.uber.org/ratelimit 源码分析

go.uber.org/ratelimit 源码分析 go 提供了一用来接口限流的包。其中"go.uber.org/ratelimit" 包正是基于漏桶算法实现的。 使用方式: 通过 ratelimit.New 创建限流器对象,参数为每秒允许的请求数(RPS)。使用 Take()…

8.29T2 国际象棋(构造:棋盘拆分成小方阵)

http://cplusoj.com/d/senior/p/NODSX2303B 暴力显然,因为肯定是从奇点到偶点,所以二分图匹配一下就好 首先我们手模一下,比如(11,11),我们可以手模出一个情况,也就是DInic跑出来的情况&#…

培训第三十九天(了解docker-compose,docker-compose编排容器,配置harbor服务)

一、回顾 1、拉取私有仓库镜像 # 配置dockerdocker pull 10.0.0.10:5000/centosnginx:v0 2、容器网络类型 brideg(net) default# docker启动之后会生成新的虚拟网卡,网卡的名称docker0# 网段默认是172.17.0.1# 所有的容器都桥接docker0,通过桥接共享网…

对物料分别评估

业务示例 在公司中,某些物料是同时在内部进行生产和在外部进行采购的。由于必须根据值区分内部零件和外部零件,因此应为这些物料设置分别评估。 有关工厂内的评估,可使用分别评估根据特定标准区分物料的部分库存,并且可以不同方…

Python画笔案例-019 绘制阴影丫字

1、绘制阴影丫字 通过 python 的turtle 库绘制一个阴影丫字的图案,如下图: 2、实现代码 绘制一个阴影丫字图,以下为实现代码: """阴影丫字.py """ import turtleturtle.delay(0) turtle.speed(0)d…

Linux —— 驱动——platform平台总线

platform平台总线是Linux内核中一个重要的概念,主要用于管理那些不通过传统物理总线(如USB、I2C、SPI等)连接的设备,特别是SoC(System on Chip,片上系统)内部集成的外设。以下是对platform平台总…

mysql8.0查询等级排名可使用窗口函数,那5.7的版本呢?

1、需求:查询用户详情的同时查询用户的排名 2、首先看下数据库表设计 分为会员用户表member_user和会员等级表member_level,升级的条件是根据经验值升级,表结构如下: 用户表 member_user CREATE TABLE member_user (id bigint(…

C#操作ms office实现office转pdf

前提 安装office 2019 安装vs 2022 新建项目 引入4个com包 编写代码 代码结构 代码如下 using Microsoft.Office.Interop.Excel;namespace UseMsOffice {internal class Program{static void Main(string[] args){WordToPdf();ExcelToPdf();PPTToPdf();}static void W…

SpringBoot3与AOP完美结合:轻松追踪用户操作,实现精准日志记录

程序员必备宝典https://tmxkj.top/#/ 1.pom文件 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency><dependency><groupId>com.alibaba</groupId&g…

LlamaIndex 实现 Agent

RAG 是在数据层面为大模型提供更多、更新的外部知识&#xff0c;而 Agent &#xff08;智能体&#xff09;&#xff0c;为大模型扩展了推理业务的能力。数据是静态的&#xff0c;数据周期可能是天、小时甚至到秒&#xff0c;通过 RAG 实现时&#xff0c;需要调用对应系统的 API…

uni-app组件

一. 什么是组件,有什么好处? 在uni-app中&#xff0c;组件是构成应用的基本单位&#xff0c;它们是用来定义用户界面的一部分&#xff0c;并且通常包含了视图和逻辑。组件的设计使得开发者能够以声明式的方式构建应用界面&#xff0c;并且通过组件化的开发方式来提高代码的复…

vue-cli搭建项目过程

一.前言 传统的前端项目架构&#xff1a; 指的就是一个项目中有很多个HTML文件&#xff0c;每一个HTML文件都是相互独立的&#xff0c;如果需要在页面中导入一些外部依赖的css,js文件&#xff0c;就需要在每一个html文件中都导入就会显得特别麻烦&#xff0c;而且这些外部依赖…

详细git使用教程以及git base here命令行

0 下载 这个是官网下载特别慢 Git - Downloads (git-scm.com) 1 最基本操作与初始配置 1.1&#xff0c;linux的基本命令可用 下载安装后鼠标右键选git base here即可打开 1.2&#xff0c;git init /git clone初始化&#xff0c;创建本地仓库 出现.git隐藏文件 git clone “…

Big Model Weekly | 第34期

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 01 MiniCPM-V: A GPT-4V Level MLLM on Your Phone 近期多模态大型语言模型&#xff08;MLLMs&#xff09;的快速发展&#xff0c;从根本上改变了人工智能研究和产业的格局&#xff0c;为实现人工智能的下一个重…

Java去掉字符串中的特殊符号只保留中文数字和字母

今天在做一个导入功能发现用户导入的数据有特殊符号&#xff0c;于是想着给他去掉&#xff0c;搜了一下发现大多数方法都只保留了字母数字&#xff0c;连中文都去掉了&#xff0c;这很明显不符合我的需求 直接上代码 /*** author Sakura* date 2024/8/27 15:18*/ public clas…

Python(C++)自动微分导图

&#x1f3af;要点 反向传播矢量化计算方式前向传递和后向传递计算方式图节点拓扑排序一阶二阶前向和伴随模式计算二元分类中生成系数高斯噪声和特征二元二次方程有向无环计算图超平面搜索前向梯度下降算法快速傅里叶变换材料应力和切线算子GPU CUDA 神经网络算术微分 Pytho…

使用谷歌浏览器查看原型

需求人员给了一个原型文件包&#xff0c;用谷歌浏览器打开提示以下内容&#xff1a; 找到需求人员发的原型文件包 进入到resources-->chrome&#xff0c;找到axure-chrome-extension.crx&#xff0c;复制一份出来命名为axure-chrome-extension.tar&#xff0c;然后在该目录下…