【发布时间】:2016-04-02 14:49:29
【问题描述】:
例如,如果我有一个10×10 矩阵,并且我在该矩阵中有一个n 坐标列表,我想在每个坐标周围取一个3×3 区域,将其调整为长度@ 987654324@向量,然后将所有向量堆叠成一个9×n矩阵。我知道我可以编写一个 for 循环来执行此操作,但这似乎很糟糕,尽管我可能最终会这样做。
【问题讨论】:
-
第一个想法:您可以编写一个运行
n次的循环,而不是运行10*10次。坐标的数量肯定会少于10*10(或矩阵中的元素数量)。这将节省一些计算时间,因为您几乎可以对所有其他任务进行矢量化。在伪代码中类似于for i=1:n ; extract 3x3 region surrounding coordinate *i* ; concatenate matrix