有个5x5矩阵M如下:
M = [ A B C o o ;
D E F o o ;
G H I o o ;
o o o o o ;
o o o o o ;
]
A B C
D E F
如果我想针对 G H I 的3x3区域做运算,让E跟它邻近的值做计算后存回去
例如把(E*A)/2、(E*B)/2、(E*C)/2、...、(E*I)/2的值加总起来,接着把加总的值
除以这些邻居的数量,最后存回E中
最后的需求是矩阵中的每个位置都套用此方法run过一便,就像是matlab中的imfilter
不希望使用到循环的原因是,当矩阵过大时,耗时会很久
(1)这有点类似于imfilter的概念,请问该如何做会比较好?
(2)另外想到的问题,拿上面的例子来说,假设已经有一个3x3的R矩阵可以让目前的
位置跟它的邻居做计算。但如果我把这个R矩阵套用到A的位置时,要怎么得知A的
附近只有B、D、E这3个邻居呢? (p.s.这样做上面提到的运算时才知道要除以几)
希望各位先进能够给点建议或方法
谢谢