InSAR对流层延迟相位线性改正方法

这是我的首篇博客,简单记录一下

首先我想说说为什么要写这个博客呢?原因有二

其一,为了分享在自己在学习中遇到的问题以及解决方法。我在学习的过程中深知这种学习无厘头的感觉。
其次,为了锻炼自己的表达能力(从遣词造句上面提升自己的表达能力)。我知道自己的表达真的真的太烂了,一点逻辑也没有。

正文开始:

1.保证所需要的包安装好。struct,numpy,pandas等
2.下述的代码中,第一个linear_correction就是主程序,传入相应的文件就可以实现InSAR大气改正(相应的文件读取代码为read_data)。
3.第二个read_data函数是读取InSAR数据的代码(也就是二进制文件),我这里使用的是sarscape生成的文件。
注:读取数据是需要注意行列号!!!如果图像显示不正确,试着交换行列号数值。
注:python显示的图像可能会存在一些问题(和matlab相比图像可能显示不完全,即有些地方看着像是没有值。其实,是有值的,可能是python成像方式不同吧)。
注:在主程序中,lat,lon就是经纬度数据文件,这里可以不传入这两个文件,我是为了后续的处理才在这里写了这两个数据的读取。
注:有任何的问题望指正!接受建议,无论是代码编写,或是语言表达的逻辑。
注:转载请标明出处,谢谢!!

import numpy as np
import pandas as pd
from read_data import xshow


def linear_correction(phase, height, height_data_without_nan):
    """
    :param phase:phase data ----> ndarray
    :param height: height data ----> ndarray
    :param height_data_without_nan:
    :return:
    """
    phase = phase
    height = height
    data = height_data_without_nan

    A = np.vstack([height, np.ones(len(height))]).T   # np.ones_like

    # 获得最小二乘系数
    a, b = np.linalg.lstsq(A, phase.T, rcond=None)[0
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值