卫星成像模型rpcm库使用
- 1.介绍
-
- [1.1 卫星成像模型](#1.1 卫星成像模型)
- [1.2 rpcm库](#1.2 rpcm库)
- 2.安装
-
- [2.1 依赖库](#2.1 依赖库)
- [2.2 安装](#2.2 安装)
- 3.用法
-
- [3.1 投影](#3.1 投影)
- [3.2 定位](#3.2 定位)
- [3.3 影像裁剪crop](#3.3 影像裁剪crop)
-
- [3.3.1 使用说明](#3.3.1 使用说明)
- [3.3.2 具体使用](#3.3.2 具体使用)
- [3.4 footprint](#3.4 footprint)
- [3.5 angle影像的成像夹角](#3.5 angle影像的成像夹角)
- 4.参考
1.介绍
1.1 卫星成像模型
卫星遥感影像的成像模型是描述影像与地面之间的几何成像关系,成像模型分为严格传感器模型和通用传感器模型。
- 严格传感器模型描述了影像和地面之间严格的几何成像关系,参数具有可理解的物理意义,但其形式复杂且与传感器类型有关,出于技术保密其物理参数一般不被提供;
- 有理函数模型作为通用传感器模型,是用于近似描述影像和地面之间的几何成像关系,其物理参数不具有可理解的物理意义,与传感器类型无关,是一种通用的卫星影像成像模型,卫星厂商一般提供有理函数模型(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下用源码安装。
bash
requirements = ['numpy',
'pyproj',
'geojson',
'rasterio[s3]>=1.2',
]#'srtm4>=1.0.2'
2.2 安装
(1)PyPi库安装:pip install rpcm
(2)源码安装:注意windows下安装需要注释掉srtm4库的地方
bash
git clone https://github.com/centreborelli/rpcm.git
cd rpcm
pip install -e .
3.用法
两种使用方法:(1)导入到python脚本文件中使用;(2)在命令行界面操作。以下以命令行界面为例,演示rpcm的5个主要功能。
以命令行的rpcm使用说明:
bash
rpcm -h
3.1 投影
查看rpcm的projection在命令行界面的使用说明
bash
rpcm projection -h
3.2 定位
查看rpcm的localization在命令行界面的使用说明
bash
rpcm localization -h
3.3 影像裁剪crop
3.3.1 使用说明
查看rpcm的影像裁剪crop在命令行界面的使用说明
bash
rpcm crop -h
3.3.2 具体使用
3.4 footprint
查看rpcm的影像覆盖的经纬度范围footprint在命令行界面的使用说明
bash
rpcm footprint -h
3.5 angle影像的成像夹角
查看rpcm的影像之间的夹角angle在命令行界面的使用说明
bash
rpcm angle -h
4.参考
(1)此博文在windows下安装rpcm,本人没尝试过,回头试试rpcm安装
(2)rpcm的源码文件解析(TODO)
(3)rpcm的实验数据以及实验结果补充(TODO)
(4)rpc有理函数原理及相应的有理函数文件解析(xml,txt,rpb)TODO