将滤镜应用于图像片段

时间:2016-01-04 18:27:03

标签: matlab image-processing imagefilter sobel

有一个图像片段A = [7 8 4; 8 6 3; 8 5 1],显示应用不同过滤器的结果。

  1. 应用3 * 3均值过滤器
  2. 使用3 * 3拉普拉斯过滤器
  3. 应用3 * 3 Sobel滤波器测量水平方向的梯度
  4. 以下是我的问题:

    1. 9像素的总和是50,50 / 9 = 5,所以中心像素的结果应该是5.但是中心周围的像素呢?
    2. 根据该功能,很容易得到中心像素的值8 + 5 + 8 + 3 - 4 * 6 = 0,但中心周围的像素呢?我可以复制原始值,因为我认为它只是图像片段。
    3. 根据Sobel运营商Gx = [-1 0 1; -2 0 2; -1 0 1]计算我需要计算Gx * A的结果。但我混淆了乘法。这是矩阵的传统乘法吗?我不知道如何执行这一步。

1 个答案:

答案 0 :(得分:1)

所有这些都是具有给定滤波器的图像的卷积。您的所有问题都与处理此卷积时图像片段边缘的处理有关。

与MATLAB有关(如标签所示),如果使用内置的conv2()函数,MATLAB会将图像与滤镜不重叠的任何区域视为0。所以你的图像片段用0填充。