正经人6680 2022-11-26 17:35 采纳率: 100%
浏览 20
已结题

请问如何获得航天器的轨道高度,以及用matlab读取雷达dat数据的代码?

请问有人用过Mars Orbital Data Explorer下载火星遥感数据吗,我选择了SHARAD的雷达数据,但没找到航天器在我选择的轨道上的轨道高度,只在源文件中找到了航天器到火星质心距离的信息。请问这个距离要怎么获取呢?(数据来源:https://ode.rsl.wustl.edu/mars/indexproductpage.aspx?product_id=R_0790503_001_SS19_700_A&product_idGeo=12030408)

img

img

这是我导入雷达dat数据的代码,但根据网站上该轨道label文件中的描述,质心距离从第71,99位开始四个字节,单位千米,但它的貌似比实际的火星半径还小。我估计是我读错了,但不知道问题在哪,求解?

clc
clear

cd('C:\Users\rr\Desktop\Mars SHARAD+DEM');
fid = fopen('r_0790503_001_ss19_700_a.dat', 'r','l');
data = fread(fid);

img

img

我也尝试了用notepad++读取该文件,无论是直接读取,还使用EX-editor/View in HEX插件,都是乱码,目前还没找到原因。

请各位赐教,谢谢!

  • 写回答

2条回答 默认 最新

  • 一只胖橘 2022-11-27 00:03
    关注

    提供一个python写的思路:

    import struct
    import io
    file_dir = 'test1/r_0790503_001_ss19_700_a.dat'
    with open(file_dir, 'rb') as f:
        fbuff = io.BufferedReader(f)
        xxx=fbuff.read()
        N = len(xxx)
        print('字节长度: ', N)
        print(xxx[70:74])
        c=xxx[70:74]
        print(len(c))
        a=struct.unpack('f',c)
        print(a)
    
    

    python中好像没有real类型然后real类型是浮点类型,数据占用4个字节用float进行试验。

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月5日
  • 已采纳回答 11月27日
  • 创建了问题 11月26日

悬赏问题

  • ¥15 python+selenium,在新增时弹出了一个输入框
  • ¥15 苹果验机结果的api接口哪里有??单次调用1毛钱及以下。
  • ¥20 学生成绩管理系统设计
  • ¥15 来一个cc穿盾脚本开发者
  • ¥15 CST2023安装报错
  • ¥15 使用diffusionbert生成文字 结果是PAD和UNK怎么办
  • ¥15 有人懂怎么做大模型的客服系统吗?卡住了卡住了
  • ¥20 firefly-rk3399上启动卡住了
  • ¥15 如何删除这个虚拟音频
  • ¥50 hyper默认的default switch