0

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

  1. 应用 3 * 3 均值滤波器
  2. 应用 3 * 3 拉普拉斯滤波器
  3. 在水平方向应用 3 * 3 Sobel 滤波器测量梯度

以下是我的问题:

  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。但我混淆了乘法。那是矩阵的传统乘法吗?我不知道如何执行此步骤。
4

1 回答 1

1

所有这些都是具有给定过滤器的图像的卷积。您所有的问题都是关于在执行此卷积时对图像片段中边缘的处理。

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

于 2016-01-04T18:39:07.593 回答