按方位提取高程数据的方法

本文讲解了如何根据Lambert变换地图设置方位,提取特定方位的高程数据,并在考虑地球曲率后进行坐标变换。涉及ECEF坐标系、ENU坐标系转换,以及SRTM3数据的使用。关键步骤包括方位采样、坐标获取、大地坐标到站址坐标的转换,以及高程变化曲线的修正。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 问题的描述

根据经过Lambert变换后显示的地图设置方位,以正北方向为零度,顺时针旋转的角度为相应的方位角。以站址为中心,沿相应的方位提取高程数据,形成某指定方位的随距离变化的高程数据。所获得的高程数据尚未考虑地球曲率的影响,为引入地球曲率的影响,则需要数据进行相应的坐标变换,以获得按站址坐标系描述的高程信息。

2. 沿方位的采样点坐标的选取

假设屏幕显示区域的像素数为(N_X,N_Y),所对应的距离范围为(R_X, R_Y) km,站址位于显示区域的中心。考虑方位\theta方向上的采样点的提取。

由上述参数可见,x方向上的每个像素代表的距离为r_X = R_X/N_X km/pixel,y方向上的每个像素代表的距离为r_Y = R_Y/N_Y km/pixel。根据参数r_Xr_Y\theta确定步进长度

l_s = \left\{\begin{matrix} \left | r_Y \right |, & \theta = 0^{\circ}, 180^{\circ}\\ \left | r_X \right |, & \theta = 90^{\circ}, 270^{\circ}\\ \min\left\{\left | r_X/\sin\theta \right |, \left | r_Y/\cos\theta \right |\right\}, & \mbox{otherwise} \end{matrix}\right.

所以,沿方位的第n(n=0,1,2,\cdots,\min\{N_X/2, N_Y/2 \})个点的坐标(x_n, y_n)

\left\{\begin{matrix} x_n = n\times l_s \times \sin\theta\\ y_n = n\times l_s \times \cos\theta \end{matrix}\right.

根据获得的坐标(x_n, y_n)经过逆Lambert变换可获得该点的经纬度(\lambda_n, \phi_n),再利用其经纬度(\lambda_n, \phi_n)获取SRTM3中的高程值h_n,这样就获得了坐标(x_n, y_n)所对应的大地坐标(\lambda_n, \phi_n, h_n)

3. 大地坐标到站址坐标的变换

 大地坐标到站址坐标的变换需要借助地心地固坐标系(Earth-Centered, Earth-Fixed,ECEF)的中介。ECEF坐标系是一种以地心为原点的地固坐标系,是一种笛卡儿坐标系。原点 O (0,0,0)为地球质心,z轴与地轴平行指向北极点,x轴指向本初子午线与赤道的交点,y轴垂直于xOz平面(即东经90度与赤道的交点)构成右手坐标系。

大地坐标(\lambda_n, \phi_n, h_n)到ECEF坐标系(X_n, Y_n, Z_n)的变换关系

\left\{\begin{matrix} X_n = (R+h_n)\cos\phi\cos\lambda /1000\\ Y_n = (R+h_n)\cos\phi\sin\lambda /1000\\ Z_n = [R(1-e^2)+h_n]\sin\phi /1000\end{matrix}\right.

式中,e=\sqrt{a^2 - b^2}/a=0.0818191910428为地球第一偏心率;a=6378137 m为地球长半轴;b=6356752.31414 m为地球短半轴;R = a/\sqrt{1-e^2\sin^2\phi}为卯酉圈半径。ECEF坐标系中的单位为 km。

ECEF坐标系(X_n, Y_n, Z_n)转换为站址(ENU,东北天)坐标系(E_n, N_n, H_n)。假设站址的大地坐标为(\lambda_0, \phi_0, h_0),对应的ECEF坐标(X_0, Y_0, Z_0),则变换关系为

\begin{bmatrix} N_n\\ E_n\\ U_n \end{bmatrix} = \begin{bmatrix} -\sin\phi_0\cos\lambda_0 & -\sin\lambda_0 & \cos\phi_0\cos\lambda_0 \\ -\sin\phi_0\sin\lambda_0 & \cos\lambda_0 & \cos\phi_0\sin\lambda_0 \\ \cos\phi_0 & 0 & \sin\phi_0 \end{bmatrix} \cdot \begin{bmatrix} X_n-X_0\\ Y_n - Y_0\\ Z_n - Z_0 \end{bmatrix}

ENU坐标系中的单位为 km。通常会将U_n的单位变换为 m。

4. 特定方位的高程变化曲线

  • 不考虑地球曲率的影响:横轴距离为n\times l_s,单位为km,纵轴为高程,单位m,应该是大地坐标(\lambda_n, \phi_n, h_n)中的h_n,单位为m。
  • 考虑地球曲率的影响:横轴距离为\sqrt{N_n^2 + E_n^2},单位为km,纵轴为高程,应该是ENU坐标系中(E_n, N_n, H_n)中的1000\times H_n,单位为m。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

带着地球去浪一浪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值