ALOS PALSAR卫星轨道参数读取

文件记录了卫星的包含28个空间位置的信息轨道矢量信息,包括时间、时间间隔、瞬时位置及速度。
本次采用两种方式进行读取,一种是用字符串分割函数进行,过程比较繁琐,因为字符串不一致,而且数据的排布也不一致,第二种直接是按照字符的格式进行读取。
%% 字符串分割的方式进行读取(第一种方式)
delimiterIn = ’ ‘; % 字符分隔符
headerlinesIn=59; %总行数
LED_1_orbit_import=importdata(‘I:\专业课程\MATLAB\实验二-三-卫星参数文件读取及基线计算\LED-ALPSRP063392880-P1.1__D.orbit.txt’, delimiterIn, headerlinesIn);
num=LED_1_orbit_import(1,:);
split_num = regexp(num, ‘:’, ‘split’); %对元胞数组按分隔符进行分割
time=LED_1_orbit_import(1,:);
split_time = regexp(time, ‘:’, ‘split’);
state=LED_1_orbit_import(1,:);
split_state = regexp(state, ‘:’, ‘split’);
data_mat=zeros(56,3);
% 因为空格字符数目不同,所以分开分割
for i=4:2:59
orbit_i=LED_1_orbit_import(i,:);
split_orbit = regexp(orbit_i, ’ ‘, ‘split’);
temp=cell2mat(split_orbit{1,1}(1,4));
data_mat(i-3,1)=str2double(temp);
temp=cell2mat(split_orbit{1,1}(1,7));
data_mat(i-3,2)=str2double(temp);
temp=cell2mat(split_orbit{1,1}(1,10));
data_mat(i-3,3)=str2double(temp);
end
for i=5:2:59
orbit_i=LED_1_orbit_import(i,:);
split_orbit = regexp(orbit_i, ’ ‘, ‘split’);
temp=cell2mat(split_orbit{1,1}(1,7));
data_mat(i-3,1)=str2double(temp);
temp=cell2mat(split_orbit{1,1}(1,10));
data_mat(i-3,2)=str2double(temp);
temp=cell2mat(split_orbit{1,1}(1,13));
data_mat(i-3,3)=str2double(temp);
end
%% 用字符格式方式读取数据(第二种方式)
FID=fopen(‘I:\专业课程\MATLAB\实验二-三-卫星参数文件读取及基线计算\LED-ALPSRP063392880-P1.1__D.orbit.txt’);
FID_num=textscan(FID,’%s%d’,1);
FID_head=textscan(FID,’%s%d%s’,2);
FID_data=textscan(FID,’%s%f%f%f%s%s%s’,56);
temp_1=FID_data{1,2};
temp_2=FID_data{1,3};
temp_3=FID_data{1,4};
orbit_data=[temp_1 temp_2 temp_3];

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值