我应该在MATLAB中对图像矩阵做一个非常简单的模糊算法。函数的目的是取一个m矩阵,并取每个元素及其相邻元素的平均值,形成一个“模糊”的m-2xn-2。
我的当前代码如下:
function [out] = blurring(anImage)
tic;
[ny nx] = size(anImage);
out = zeros(ny-2, nx-2);
yv = 1:ny-2;
xv = 1:nx-2;
for iy=0:2;
for ix = 0:2;
out = out + anImage(yv + iy, xv + ix);
end
end
out = out/9;
toc
end目标是通过消除代码的迭代部分,完全将向量化我的解决方案。我不介意,如果这只会让程序慢一点的话。
发布于 2015-02-28 01:17:42
您实现的是一种特殊的卷积情况:
conv2(anImage,ones(3,3)./9,'valid')https://stackoverflow.com/questions/28776367
复制相似问题