将高斯模糊应用于灰度图像

时间:2018-04-12 18:01:47

标签: c++ image-processing gaussianblur

我想要一种简单的方法将高斯模糊应用于灰度图像

我正在使用 bmp 库和 我正在尝试将高斯函数应用于像素

您可以在此处访问该图片 https://e.top4top.net/p_832qn9kv1.png

    image[i][j] = (exp(-(pow(image[i][j],2))/(11.5)))/(1/(sqrt(2*3.1415*5.7))) ;

问题是生成黑色图像。 我可以访问像素值和位置。

那么应用此过滤器的最简单方法是什么?

1 个答案:

答案 0 :(得分:-1)

如果您想手动执行内核,则需要执行以下操作:

计算内核(id也建议使用sigma,mean等,而不是硬编码值)

for i, j in .... 
kernel[i][j] = (exp(-(pow(image[i][j],2))/(11.5)))/(1/(sqrt(2*3.1415*5.7)))
sum += kernel[i][j]

现在我们必须实际规范化内核

for x, y in ....
kernel[x][y] /= sum

如果你不对内核进行规范化,我相信它会变暗。