rpb/rpc文件说明与matlab读取

什么是rpb/rpc文件?

        rpb文件是用来存储用于遥感数据几何校正的RPC(Rational Polynomial Coefficients )模型的文件。类似的还有RPC文件,rpb与rpc文件只是格式不同,但包含的信息一致。其用于从图像坐标转换到地理坐标,L1级别的遥感数据是没有经过地理编码及几何校正的,因此可以通过数据包内的RPC文件进行数据几何校正(地理编码)。

        RPC参数是有理函多项式函数模型的参数,可以将遥感影像的图像坐标(Line,Sample)即(行号,列号)与其对应的大地坐标(Lat,Long, Height)即(纬度,经度,高程)用比值多项式一一对应起来。RPC的概念得到了很大的关注是因为RPC不仅可以将传感器成像的物理模型隐藏起来,同时可以通过RPC模型校正出几何精度更高的卫星数据。不同数据厂商使用不同的方法生成RPC文件,但目前大多数都采取的非线性最小二乘法(Non linear Least square)。在成像期间,要拟合的数据由物理传感器模型生成。        

        更详细的了解参考:

        卫星RPC有理多项式模型原理与正反算实现(python)-CSDN博客
        看懂卫星遥感数据RPC文件-CSDN博客

rpb/rpc文件格式

        rpb/rpc文件通常以文本文件或xml文件格式存储,对于国产高分数据多采用文本文件格式。

        rpb文件***.rpb格式示例:

satId = "XXX";
bandId = "XXX";
SpecId = "XXX";
BEGIN_GROUP = IMAGEerrBias =   1.0;errRand =    0.0;lineOffset = 	+8.787000000000000e+03sampOffset = 	+8.787000000000000e+03latOffset = 	+5.197788782488139e+01longOffset = 	+1.267276217581132e+02heightOffset = 	-3.665824527965528e+01lineScale = 	+8.787500000000000e+03sampScale = 	+8.787500000000000e+03latScale = 	+1.000000000000000e+01longScale = 	+1.000000000000000e+01heightScale = 	+5.036755360952578e+03lineNumCoef = (-2.489085287819830e-04,-1.114244712474867e+01,-6.168967195179680e+01,+7.117708104229436e-05,-1.395349820950307e-01,+8.696093392117951e-03,-9.575461257281814e-04,+7.734382012664702e-01,+2.574838134723002e-02,+5.070051498763076e-06,-5.809725628331042e-03,+5.140801824748853e-03,+4.289598645908305e-03,+2.294752920112858e-03,-9.015843957850683e-04,+1.035394535926532e-02,+1.232218463012144e-02,+3.230339260864579e-02,+1.047590959343009e-03,+2.012768440253724e-08);lineDenCoef = (+1.000000000000000e+00,+4.180010565216353e-04,+1.324655197657377e-02,-3.795304837771012e-05,+2.545365596961364e-01,-3.899350380745237e-04,+5.589868166444578e-05,+1.188681625956534e-03,+6.863241299655094e-01,-2.002690706130058e-04,-2.072288733039329e-04,+6.133069607160820e-03,-1.449422536681941e-03,-2.011485529779256e-06,+3.500482182174969e-03,+4.198143375537498e-04,-2.285845110305829e-06,-2.172369339810132e-04,-4.144345265331140e-04,-1.836223330071302e-09);sampNumCoef = (+3.116290493890969e-03,+3.762565560709448e+01,-1.780287250778219e+01,+4.667388215545534e-02,-1.418392610803636e+00,-4.579691619531623e-02,+3.030408501996984e-02,-5.911326661297898e-01,-2.781904253558995e+00,-9.782108549302553e-05,+1.239834648584903e-03,+1.999566996539736e-01,+6.939464036194087e-02,-4.737705433260331e-02,-2.858026398839704e-01,-9.898030356627813e-03,+2.240107912228240e-02,+2.526433759914681e-03,+4.945279318567586e-03,-5.870434133733310e-05);sampDenCoef = (+1.000000000000000e+00,+3.227373471194835e-01,+3.944306307994457e-02,-9.509654358749953e-03,+1.207778166635094e+01,-3.232572945854702e-02,+1.355313365456889e-02,-1.277420643579939e+01,-2.837944635154219e+00,-1.255397137925662e-03,+8.474582054034840e-02,+8.587278629665410e-03,+1.984850060313677e-02,-6.307604213724449e-04,+2.407506405453826e-02,-1.315252027876808e-02,+2.805758450086238e-05,-9.639541191512180e-02,-1.882857688509176e-02,+1.022672251679239e-05);
END_GROUP = IMAGE
END;

        rpc文件***.rpc格式示例:

LINE_OFF :+8.787000000000000e+03  pixels
SAMP_OFF : +8.787000000000000e+03  pixels
LAT_OFF : +5.197788782488139e+01   degrees
LONG_OFF:  +1.267276217581132e+02   degrees
HEIGHT_OFF: -3.665824527965528e+01   meters
LINE_SCALE: +8.787500000000000e+03  pixels
SAMP_SCALE:  +8.787500000000000e+03  pixels
LAT_SCALE: +1.000000000000000e+01   degrees
LONG_SCALE: +1.000000000000000e+01   degrees
HEIGHT_SCALE :+5.036755360952578e+03   meters
LINE_NUM_COEFF_1:-2.489085287819830e-04
LINE_NUM_COEFF_2:-1.114244712474867e+01
LINE_NUM_COEFF_3:-6.168967195179680e+01
LINE_NUM_COEFF_4:+7.117708104229436e-05
LINE_NUM_COEFF_5:-1.395349820950307e-01
LINE_NUM_COEFF_6:+8.696093392117951e-03
LINE_NUM_COEFF_7:-9.575461257281814e-04
LINE_NUM_COEFF_8:+7.734382012664702e-01
LINE_NUM_COEFF_9:+2.574838134723002e-02
LINE_NUM_COEFF_10:+5.070051498763076e-06
LINE_NUM_COEFF_11:-5.809725628331042e-03
LINE_NUM_COEFF_12:+5.140801824748853e-03
LINE_NUM_COEFF_13:+4.289598645908305e-03
LINE_NUM_COEFF_14:+2.294752920112858e-03
LINE_NUM_COEFF_15:-9.015843957850683e-04
LINE_NUM_COEFF_16:+1.035394535926532e-02
LINE_NUM_COEFF_17:+1.232218463012144e-02
LINE_NUM_COEFF_18:+3.230339260864579e-02
LINE_NUM_COEFF_19:+1.047590959343009e-03
LINE_NUM_COEFF_20:+2.012768440253724e-08
LINE_DEN_COEFF_1:+1.000000000000000e+00
LINE_DEN_COEFF_2:+4.180010565216353e-04
LINE_DEN_COEFF_3:+1.324655197657377e-02
LINE_DEN_COEFF_4:-3.795304837771012e-05
LINE_DEN_COEFF_5:+2.545365596961364e-01
LINE_DEN_COEFF_6:-3.899350380745237e-04
LINE_DEN_COEFF_7:+5.589868166444578e-05
LINE_DEN_COEFF_8:+1.188681625956534e-03
LINE_DEN_COEFF_9:+6.863241299655094e-01
LINE_DEN_COEFF_10:-2.002690706130058e-04
LINE_DEN_COEFF_11:-2.072288733039329e-04
LINE_DEN_COEFF_12:+6.133069607160820e-03
LINE_DEN_COEFF_13:-1.449422536681941e-03
LINE_DEN_COEFF_14:-2.011485529779256e-06
LINE_DEN_COEFF_15:+3.500482182174969e-03
LINE_DEN_COEFF_16:+4.198143375537498e-04
LINE_DEN_COEFF_17:-2.285845110305829e-06
LINE_DEN_COEFF_18:-2.172369339810132e-04
LINE_DEN_COEFF_19:-4.144345265331140e-04
LINE_DEN_COEFF_20:-1.836223330071302e-09
SAMP_NUM_COEFF_1:+3.116290493890969e-03
SAMP_NUM_COEFF_2:+3.762565560709448e+01
SAMP_NUM_COEFF_3:-1.780287250778219e+01
SAMP_NUM_COEFF_4:+4.667388215545534e-02
SAMP_NUM_COEFF_5:-1.418392610803636e+00
SAMP_NUM_COEFF_6:-4.579691619531623e-02
SAMP_NUM_COEFF_7:+3.030408501996984e-02
SAMP_NUM_COEFF_8:-5.911326661297898e-01
SAMP_NUM_COEFF_9:-2.781904253558995e+00
SAMP_NUM_COEFF_10:-9.782108549302553e-05
SAMP_NUM_COEFF_11:+1.239834648584903e-03
SAMP_NUM_COEFF_12:+1.999566996539736e-01
SAMP_NUM_COEFF_13:+6.939464036194087e-02
SAMP_NUM_COEFF_14:-4.737705433260331e-02
SAMP_NUM_COEFF_15:-2.858026398839704e-01
SAMP_NUM_COEFF_16:-9.898030356627813e-03
SAMP_NUM_COEFF_17:+2.240107912228240e-02
SAMP_NUM_COEFF_18:+2.526433759914681e-03
SAMP_NUM_COEFF_19:+4.945279318567586e-03
SAMP_NUM_COEFF_20:-5.870434133733310e-05
SAMP_DEN_COEFF_1:+1.000000000000000e+00
SAMP_DEN_COEFF_2:+3.227373471194835e-01
SAMP_DEN_COEFF_3:+3.944306307994457e-02
SAMP_DEN_COEFF_4:-9.509654358749953e-03
SAMP_DEN_COEFF_5:+1.207778166635094e+01
SAMP_DEN_COEFF_6:-3.232572945854702e-02
SAMP_DEN_COEFF_7:+1.355313365456889e-02
SAMP_DEN_COEFF_8:-1.277420643579939e+01
SAMP_DEN_COEFF_9:-2.837944635154219e+00
SAMP_DEN_COEFF_10:-1.255397137925662e-03
SAMP_DEN_COEFF_11:+8.474582054034840e-02
SAMP_DEN_COEFF_12:+8.587278629665410e-03
SAMP_DEN_COEFF_13:+1.984850060313677e-02
SAMP_DEN_COEFF_14:-6.307604213724449e-04
SAMP_DEN_COEFF_15:+2.407506405453826e-02
SAMP_DEN_COEFF_16:-1.315252027876808e-02
SAMP_DEN_COEFF_17:+2.805758450086238e-05
SAMP_DEN_COEFF_18:-9.639541191512180e-02
SAMP_DEN_COEFF_19:-1.882857688509176e-02
SAMP_DEN_COEFF_20:+1.022672251679239e-05

rpb文件读取(matlab)

        定义读取函数 rpb_reader.m:

function RPC=rpb_reader(f_in_name)%author  dou3516% 2024-1-13% 参考:https://blog.csdn.net/weixin_43955546/article/details/123702554% 读取遥感RPB文件,输入经纬度,获取经纬度值对象的像素坐标。%f_in_name: 输入RPB文件名称% 1 读取RPB文件内容fid1=fopen(f_in_name,'r');read_one_line = fgetl(fid1);read_one_line = fgetl(fid1);read_one_line = fgetl(fid1);read_one_line = fgetl(fid1);read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',});errBias=str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',});errRand=str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',});RPC.line_off =str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',});RPC.samp_off=str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',});RPC.lat_off =str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.lon_off=str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.height_off=str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.line_scale=str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.samp_scale=str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.lat_scale =str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.lon_scale =str2double(temp(2));read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.height_scale =str2double(temp(2));read_one_line = fgetl(fid1); for i=1:20read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.line_num_coeff(i)=str2double(temp(1));endread_one_line = fgetl(fid1); for i=1:20read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.line_den_coeff(i)=str2double(temp(1));endread_one_line = fgetl(fid1); for i=1:20read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.samp_num_coeff(i)=str2double(temp(1));endread_one_line = fgetl(fid1); for i=1:20read_one_line = fgetl(fid1);temp=strsplit(read_one_line,{';','=',')',','});RPC.samp_den_coeff(i)=str2double(temp(1));endfclose(fid1);

        示例读取代码:

fRPB = '***.rpb';
RPC = rpb_reader(fRPB);

        读取到的RPC信息示例(注意不同于上述rpb文件的实际信息,仅做示例)如下:

参考:

遥感 RPC, RPB文件相关信息-CSDN博客

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

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

相关文章

Lazada运费策略是什么?Lazada运费模板怎么设置?-站斧浏览器

Lazada运费策略是什么? Lazada平台鼓励商家采用合理、透明的运费策略。以下是一些建议的运费策略: 地区差异化:根据不同地区的物流成本和消费者习惯,为不同地区设置不同的运费或优惠政策。 重量/体积计费:采用合理的…

ChatGPT:人工智能与人类交流的桥梁

在人工智能的浪潮中,ChatGPT以其独特的交流能力成为了一个亮点。作为一个基于强大的GPT-4模型的聊天机器人,ChatGPT不仅仅是技术的展示,它更是人工智能与人类交流的桥梁。 人工智能的语言理解革命 ChatGPT的出现标志着人工智能在语言理解和…

蓝桥杯练习题(七)

📑前言 本文主要是【算法】——蓝桥杯练习题(七)的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与他 …

基于Java SSM框架实现医院管理系统项目【项目源码】

基于java的SSM框架实现医院管理系统演示 SSM框架 当今流行的“SSM组合框架”是Spring SpringMVC MyBatis的缩写,受到很多的追捧,“组合SSM框架”是强强联手、各司其职、协调互补的团队精神。web项目的框架,通常更简单的数据源。Spring属于…

什么是云服务器ECS - 云服务器 ECS - 阿里云

阿里云服务器ECS英文全程Elastic Compute Service,云服务器ECS是一种安全可靠、弹性可伸缩的云计算服务,阿里云提供多种云服务器ECS实例规格,如经济型e实例、通用算力型u1、ECS计算型c7、通用型g7、GPU实例等,阿里云百科aliyunbai…

从“精益思想“看机器人的开发与应用:一场科技与效率的完美融合

在科技飞速发展的今天,机器人已经深入到我们的生活和工作之中,成为了提高效率、提升质量的重要工具。然而,如何让机器人的开发和利用更有效率、更精细,这是摆在我们面前的一道难题。此时,"精益思想"的出现&a…

行为型设计模式——观察者模式

观察者模式 观察者模式也不难,这个模式用大白话将就是若干个观察者类都订阅一个发布类(被观察者类),当发布者需要发表消息的时候,观察者都能够收到消息。**定义:**又被称为发布-订阅(Publish/S…

ssm基于Javaweb的物流信息管理系统的设计与实现论文

摘 要 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统物流信息管理难度大,容错率低,管理…

TOP 10 屏幕录制软件工具,可帮您轻松录制视频!

随着越来越多的人远程工作和学习,对可靠、高效的屏幕录制工具的需求变得越来越重要。屏幕录制已成为电子学习、游戏和视频创作的重要组成部分。然而,有这么多可用的屏幕录制工具,选择合适的工具可能具有挑战性。为了帮助您节省搜索时间和精力…

安达发|APS智能排产系统之换产矩阵

在制造业中,生产计划和调度是至关重要的环节。为了提高生产效率、降低成本并满足客户需求,企业需要采用先进的生产管理系统。APS(高级计划与排产)智能排产系统正是为此而生的一种解决方案。它通过数学模型和算法,实现了…

软件测试|Docker exec命令详细使用指南

简介 Docker exec命令是Docker提供的一个强大工具,用于在正在运行的容器中执行命令。本文将详细介绍Docker exec命令的用法和示例,帮助大家更好地理解和使用这个命令。 Docker是一种流行的容器化平台,允许我们在容器中运行应用程序。有时候…

k8s-----存储卷(数据卷)

容器内的目录和宿主机的目录进行挂载。 容器的生命状态是短站的,delete删除,k8s用控制创建的pod,delete相当于重启,容器的状态也会回复到初始状态。 一旦回到初始状态,所有的后天编辑的文件都会消失。 容器和节点之间创…

vue的mvvm模式

1.mvvm优点: 低耦合:视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的View上,当View变化的时候Model可以不变,当Model变化的时候,View也可以不变。 可复用&…

ASP.NET Core中实现个人资料上传图片功能

当用户需要在ASP.NET Core中实现修改个人资料的功能时,其中一个常见的需求就是允许上传个人头像图片。下面将详细介绍如何在ASP.NET Core中实现修改个人资料上传图片的功能。 步骤一:控制器中添加一个HttpPost方法 首先,我们在控制器中添加…

Vue入门五(Vue-CLI项目搭建|vue项目目录介绍|vue项目开发规范|es6导入导出语法)

文章目录 一、Vue-CLI 项目搭建介绍node环境搭建1) 下载与安装2)测试是否安装成功 安装vue-cli安装vue脚手架 创建Vue项目1)使用命令创建项目2)使用图形化界面创建项目 二、vue项目目录介绍1.命令行运行vue项目2.Pycharm中运行项目3.目录结构…

2023年全国职业院校技能大赛软件测试赛题—单元测试卷④

任务二 单元测试 一、任务要求 题目1:根据下列流程图编写程序实现相应分析处理并显示结果。返回结果“ax:”(x为2、3或4);其中变量x、y均须为整型。编写程序代码,使用JUnit框架编写测试类对编写的程序代码…

系列十三、查询数据库中某个库、表、索引等所占空间的大小

一、information_schema数据库 1.1、概述 information_schema数据库是MySQL出厂默认带的一个数据库,不管我们是在Linux中安装MySQL还是在Windows中安装MySQL,安装好后都会有一个数据库information_schema,这个库中存放了其他库的所有信息。 …

JS加密/解密之js加密小工具

JS加密的原理和方法 什么是JS加密 JS加密是一种将js代码转换成不易被阅读和修改的形式的技术JS加密的目的是保护js代码的版权,防止被恶意篡改或盗用JS加密的难度和效果取决于加密算法的复杂性和安全性 JS加密的常见方法 压缩和混淆:将js代码的空格&a…

17_网络编程

文章目录 网络数据传输的基本原理UDP发送端步骤接收端步骤DatagramSocketDatagramPacket举例版本1:发送端发送消息,接收端接收并打印版本2:创建一个NetworkUtils工具类优化版本1版本3:发送端接收端相互发送版本4:使用多线程 TCP客…

搭建LNMP网站平台并部署Web应用

本章主要介绍: 安装Nginx安装MySQL安装PHP在LNMP平台中部署 Web 应用 构建LNMP网站平台就像构建LAMP平台一样,构建LNMP平台也需要Linux服务器,MySQL数据库,PHP解析环境,区别主要在Nginx 与 PHP的协作配置上&#xff0…