我试图了解 Matlab 中的 2D 和 3D 绘图功能,关于图像处理过滤器,如箱线图、高斯、墨西哥帽等......
我只得到了过滤器的内核,例如一个 5x5 矩阵,其中包含每个单元的系数。ezsurfc 不起作用,我不明白。surf 代替了工作,但我不知道网格以及如何使其更细化和平滑?
我对 surf 的理解是,我需要每个参数都具有相同的尺寸,那么我应该如何在不使内核变为 20x20 甚至更大的情况下做到这一点?这个想法是,我得到一个像例子一样的输出,我已经发布了。我提到了过滤器的 20x20 网格掩码,因为看起来平滑度和扁平化需要更多的系数,而不仅仅是 5x5……我是对的还是完全错的?
我已经尝试了以下 matlab 代码,例如拉普拉斯滤波器:
[x,y] = meshgrid(1:1:5); %create a 5x5 matrix for x and y (meshes)
z = [0 1 2 1 0; 1 3 5 3 1;2 5 9 5 2; 1 3 5 3 1;0 1 2 1 0]; % kernel 5x5
surf(x,y,z);
这给了我输出:
那么如何从 5x5 内核信息中生成精细的 2D 和 3D 图呢?提前非常感谢!
PS:希望我的代码缩进没有搞砸......否则请随意编辑 - 这是我在 StackOverflow 上的第一篇文章。:-)
我想要得到的,就像这两个例子: