【发布时间】:2017-02-17 15:43:21
【问题描述】:
我是 Matlab 新手。我真的才刚刚开始学习我专业的实际计算机科学课程。所以,请记住这一点。目标是不使用内置函数创建高斯滤波器并将其应用于此特定图像。到目前为止,我有这段代码可以创建内核。我们玩弄了不同的 sigma 值,然后生成了内核的可视化。
f = imread( 'input.png');
sig = 5;
hw = floor (2.5 * sig - .5);
w = zeros(hw*2+1, hw*2+1);
for r = 1:size(w,1)
for c = 1:size(w,2)
w(r,c) = exp(-1 * ((c - (hw+1))^2 + (r-hw)^2) / (2 * sig^2));
end
end
imagesc(w);
colormap jet;
我的问题是在实际应用它时出现的。我真的不知道该怎么做。他给了我们以下代码作为指导,但我仍然卡住了。
for r = 1:R
for c = 1:C
for r1 =
for c1 =
temp = temp + f() + w();
end
end
end
end
如果有人能指出我正确的方向,将不胜感激。谢谢。
【问题讨论】:
-
您认为什么是“内置”?技术上
floor、imread、zeros等都是内置的 -
对不起,我应该更具体。他只是说,“不要使用任何内置函数来构建高斯滤波器或执行卷积。”我们不能使用任何过滤函数,卷积函数等。因为我没有太多的Matlab知识,所以很难解释。我们只学习了基本功能,所以我们只能使用这些功能。
标签: matlab image-processing filter gaussian