【卫星影像三维重建】有理函数模型库-rpcm

news2024/11/20 8:48:17

卫星成像模型rpcm库使用

  • 1.介绍
    • 1.1 卫星成像模型
    • 1.2 rpcm库
  • 2.安装
    • 2.1 依赖库
    • 2.2 安装
  • 3.用法
    • 3.1 投影
    • 3.2 定位
    • 3.3 影像裁剪crop
      • 3.3.1 使用说明
      • 3.3.2 具体使用
    • 3.4 footprint
    • 3.5 angle影像的成像夹角
  • 4.参考

1.介绍

1.1 卫星成像模型

卫星遥感影像的成像模型是描述影像与地面之间的几何成像关系,成像模型分为严格传感器模型和通用传感器模型。

  1. 严格传感器模型描述了影像和地面之间严格的几何成像关系,参数具有可理解的物理意义,但其形式复杂且与传感器类型有关,出于技术保密其物理参数一般不被提供;
  2. 有理函数模型作为通用传感器模型,是用于近似描述影像和地面之间的几何成像关系,其物理参数不具有可理解的物理意义,与传感器类型无关,是一种通用的卫星影像成像模型,卫星厂商一般提供有理函数模型(RFM)。

1.2 rpcm库

rpcm库是一个用于表示有理函数模型成像有关的库,主要具有如下功能

名称说明
projection(投影)将空间点(lon,lat,z)投影到图像上,得到图像的像素坐标(x,y)
localization(定位)已知图像上的点(x,y)以及高程点z,定位得到空间点的经纬度坐标
crop(裁剪)指定裁剪的经纬度坐标点集 ,裁剪影像对应区域
footprint以geojson格式输出图像的经度、纬度范围
angle输出两个影像的成像夹角

2.安装

2.1 依赖库

(1)依赖库原本有5个,numpy用于影像数组计算,pyproj表示投影的库,geojson表示经纬度存放格式库,rasterio表示卫星影像读取显示的库(gdal库的某些功能的高度封装),srtm4库主要获取指定区域的90m的数字高程;
(2)srtm4依赖太多,需要在linux安装,这里去掉以及在源码中涉及srtm4库的都替换掉,这样是可以在windows下用源码安装。

requirements = ['numpy',
                'pyproj',
                'geojson',
                'rasterio[s3]>=1.2',
                ]#'srtm4>=1.0.2'

2.2 安装

(1)PyPi库安装:pip install rpcm
(2)源码安装:注意windows下安装需要注释掉srtm4库的地方

git clone https://github.com/centreborelli/rpcm.git
cd rpcm
pip install -e .

3.用法

两种使用方法:(1)导入到python脚本文件中使用;(2)在命令行界面操作。以下以命令行界面为例,演示rpcm的5个主要功能。
以命令行的rpcm使用说明:

rpcm -h

在这里插入图片描述

3.1 投影

查看rpcm的projection在命令行界面的使用说明

rpcm projection -h

在这里插入图片描述

3.2 定位

查看rpcm的localization在命令行界面的使用说明

rpcm localization -h

在这里插入图片描述

3.3 影像裁剪crop

3.3.1 使用说明

查看rpcm的影像裁剪crop在命令行界面的使用说明

rpcm crop -h

在这里插入图片描述

3.3.2 具体使用

3.4 footprint

查看rpcm的影像覆盖的经纬度范围footprint在命令行界面的使用说明

rpcm footprint -h

在这里插入图片描述

3.5 angle影像的成像夹角

查看rpcm的影像之间的夹角angle在命令行界面的使用说明

rpcm angle -h

在这里插入图片描述

4.参考

(1)此博文在windows下安装rpcm,本人没尝试过,回头试试rpcm安装
(2)rpcm的源码文件解析(TODO)
(3)rpcm的实验数据以及实验结果补充(TODO)
(4)rpc有理函数原理及相应的有理函数文件解析(xml,txt,rpb)TODO

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

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

相关文章

从零开始搭建游戏服务器 第七节 创建GameServer

目录 前言正文创建GameServer模块修改配置创建NettyClient连接到登录服登录服修改创建协议游戏服注册到登录服 总结 前言 上一节我们使用自定义注解反射简化了协议解包和逻辑处理分发流程。 那么到了这里登录服登录服的架构已经搭建的差不多了,一些比较简单的、并发…

pyhive入门介绍和实例分析(探索票价与景点评分之间是否存在相关性)

介绍 PyHive 是一组 Python DB-API 和 SQLAlchemy 接口,可用于 Presto 和 Hive。它为 Python 提供了一个与 Presto 和 Hive 进行交互的平台,使得数据分析师和工程师可以更方便地进行数据处理和分析。 以下是使用 PyHive 进行数据分析时需要注意的几点&…

HWOD:名字的漂亮度

一、题目 描述 给出一个字符串,该字符串仅由小写字母组成,定义这个字符串的漂亮度是其所有字母漂亮度的总和 每个字母都有一个漂亮度,范围在1到26之间。没有任何两个不同字母拥有相同的漂亮度。字母忽略大小写。 给出多个字符串&#xff…

面试篇:HashMap

1.问:了解过红黑树吗?它有什么性质? 答:红黑树是一种自平衡的二叉搜索树,他的查找,添加和删除的时间复杂度都为O(logN)。 他有以下五种性质: 1.红黑树的节点只有红色或者黑色两种颜色 2.红黑树的…

java Web线上网游商品交易平台用eclipse定制开发mysql数据库BS模式java编程jdbc

一、源码特点 jsp线上网游商品交易平台是一套完善的web设计系统,对理解JSP java SERLVET mvc编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,eclipse开发,数据库为Mysql5.0…

Charles for Mac 强大的网络调试工具

Charles for Mac是一款功能强大的网络调试工具,可以帮助开发人员和测试人员更轻松地进行网络通信测试和调试。以下是一些Charles for Mac的主要特点: 软件下载:Charles for Mac 4.6.6注册激活版 流量截获:Charles可以截获和分析通…

QT+Opencv+yolov5实现监测

功能说明:使用QTOpencvyolov5实现监测 仓库链接:https://gitee.com/wangyoujie11/qt_yolov5.git git本仓库到本地 一、环境配置 1.opencv配置 将OpenCV-MinGW-Build-OpenCV-4.5.2-x64文件夹放在自己的一个目录下,如我的路径: …

OriginBot智能机器人开源套件

详情可参见:OriginBot智能机器人开源套件——支持ROS2/TogetherROS,算力强劲,配套古月居定制课程 (guyuehome.com) OriginBot智能机器人开源套件 最新消息:OriginBot V2.1.0版本正式发布,新增车牌识别,点击…

Spring Cloud 八:微服务架构中的数据管理

Spring Cloud 一:Spring Cloud 简介 Spring Cloud 二:核心组件解析 Spring Cloud 三:API网关深入探索与实战应用 Spring Cloud 四:微服务治理与安全 Spring Cloud 五:Spring Cloud与持续集成/持续部署(CI/C…

政安晨:【Keras机器学习实践要点】(五)—— 通过子类化创建新层和模型

政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 收录专栏: TensorFlow与Keras实战演绎机器学习 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正! 介绍 本文将涵盖构建自己的子类化层和模型所…

使用Spark单机版环境

在Spark单机版环境中,可通过多种方式进行实战操作。首先,可使用特定算法或数学软件计算圆周率π,并通过SparkPi工具验证结果。其次,在交互式Scala版或Python版Spark Shell中,可以进行简单的计算、打印九九表等操作&…

ABAP - 上传文件模板到SMW0,并从SMW0上下载模板

upload file template to SMW0 and download the template from it 首先上传文件到tcode SMW0 选择新建后,输入文件名和描述,再选择想要上传的文件 上传完成后: 在表WWWPARAMS, WWWDATA里就会有信息存进去 然后就可以程序里写代码了: 屏幕上的效果:

jupyter notebook导出含中文的pdf(LaTex安装和Pandoc、MiKTex安装)

用jupyter notebook导出pdf时,因为报错信息,需要用到Tex nbconvert failed: xelatex not found on PATH, if you have not installed xelatex you may need to do so. Find further instructions at https://nbconvert.readthedocs.io/en/latest/install…

【数据分享】1929-2023年全球站点的逐年平均露点(Shp\Excel\免费获取)

气象数据是在各项研究中都经常使用的数据,气象指标包括气温、风速、降水、能见度等指标,说到气象数据,最详细的气象数据是具体到气象监测站点的数据! 有关气象指标的监测站点数据,之前我们分享过1929-2023年全球气象站…

界面控件DevExpress WinForms/WPF v23.2 - 电子表格支持表单控件

DevExpress WinForm拥有180组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForm能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任…

IDEA编辑国际化.properties文件没有Resource Bundle怎么办?

问题描述 最近在做SpringBoot国际化,IDEA添加了messages.properties、messages_en_US.properties、messages_zh_CN.properties国际化文件后,在编辑页面底部没有Resource Bundle,这使得我在写keyvalue的时候在每个properties文件都要拷贝一次…

【Spring源码】Bean采用什么数据结构进行存储

一、前瞻 经过上篇源码阅读博客的实践,发现按模块阅读也能获得不少收获,而且能更加系统地阅读源码。 今天的阅读方式还是按模块阅读的方式,以下是Spring各个模块的组成。 那今天就挑Beans这个模块来阅读,先思考下本次阅读的阅读…

中间件学习--InfluxDB部署(docker)及springboot代码集成实例

一、需要了解的概念 1、时序数据 时序数据是以时间为维度的一组数据。如温度随着时间变化趋势图,CPU随着时间的使用占比图等等。通常使用曲线图、柱状图等形式去展现时序数据,也就是我们常常听到的“数据可视化”。 2、时序数据库 非关系型数据库&#…

gin语言基础学习--会话控制(下)

练习 模拟实现权限验证中间件 有2个路由,/cookie和/home/cookie用于设置cookiehome是访问查看信息的请求在请求home之前,先跑中间件代码,检验是否存在cookie 访问home,会显示错误,因为权限校验未通过 package mainim…

阿里云安全产品简介,Web应用防火墙与云防火墙产品各自作用介绍

在阿里云的安全类云产品中,Web应用防火墙与云防火墙是用户比较关注的安全类云产品,二则在作用上并不是完全一样的,Web应用防火墙是一款网站Web应用安全的防护产品,云防火墙是一款公共云环境下的SaaS化防火墙,本文为大家…