史蒂夫与MATLAB图像处理

图像处理的概念、算法和MATLAB

上坡地区——影响和依赖的地图

在我8月7日发布在上坡地区,我展示了如何构建和解决流矩阵来确定每个像素的上坡地区数字高程模型(DEM)。此外,可以使用流矩阵来计算的影响地图依赖关系图

影响地图显示那里的水从一个特定的像素将耗尽。地图显示的依赖性,艰难的通过一个特定的像素像素流失。让我们看看如何计算这些从流矩阵。

回忆流动方程的形式为特定像素:上坡的一个像素等于1 +加权分数上坡地区的邻国。

1项来自假设每个像素同等体积有助于整体流在整个地形。认为它是下雨同样在每个像素。计算影响地图,然后,我们必须修改我们的方程组,这样1项只出现像素或感兴趣的像素。幸运的是,这只会影响方程的右边,而不是流矩阵本身。所以解决影响地图看起来几乎像某个像素点解上坡区域所有像素。

这里有一个例子从米尔福德,马萨诸塞州民主党之前我使用:

s =负载(“milford_ma_dem”);E = s.Zc;imshow (E,[])限制= (160 220 215 270);轴(限制);持有情节(169、227、‘*’)举行标题(的像素胡椒山的顶部)

发现流方向和流矩阵使用dem_flow和flow_matrix从我上坡地区工具箱在MATLAB中心:

R = dem_flow (E);T = flow_matrix (E, R);

做一个向量的右边有一个1(227169)像素对应:

[M, N] =大小(E);rhs = 0(元素个数(E), 1);idx = (169 - 1) * M + 227;园艺学会(idx) = 1;

解决影响地图:

我= T \ rhs;我=重塑(我,M, N);imshow(我,[])轴(限制);标题(“影响地图”)

influence_map函数为您做所有这些事情。我还包括一个可视化函数(vis_map)描影响(或依赖)地图透明的,绿色的,原来的民主党。从像素叠加在蓝色。这样子的我们的例子:

vis_map (I, E、227、169);轴(限制);

计算依赖图,你不能使用流矩阵完全相同;你必须转置。否则,它非常类似于地图计算的影响。看到dependence_map中的代码的细节。

这里有一个例子,计算依赖整个地图的一组像素,不仅仅是单个像素。具体地说,它的依赖图北池:

高原= imerode (E, (3)) = = E;池塘= bwselect(高原、183、170);D = dependence_map (E、T、池塘);vis_map (D、E、池塘);xlim(240年[110])ylim (260 [80])

下次我打算谈论vectorizing像素流方向计算。




使用MATLAB®7.5发表

|
  • 打印
  • 发送电子邮件

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。