我有一个包含地形数据的矩阵,让我们说几个山丘。我希望获得每个数据点与垂直线的角度信息。以下是两个例子:
为了计算这个,我想我必须连接所有地形数据,以便(至少)三个近像素形成三角形。之后我必须计算这个三角形的角度。
我可以使用现有的算法吗?
答案 0 :(得分:1)
如果您的高度图是矩阵A,那么您可以通过
近似每个内点的渐变分量(没有egdes) Xgrad = (A(2:end-1,3:end)-A(2:end-1,1:end-2))/2;
Ygrad = (A(3:end,2:end-1)-A(1:end-2,2:end-1))/2;
然后将是
deg = (pi/2 - atan(sqrt(Xgrad.^2 + Ygrad.^2),1))/pi*180;
根据您的高度图,以数字方式区分会产生“模糊”结果。也许你必须做一些模糊过滤才能产生更平滑的渐变。