问题标签 [gaussianblur]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
78307 浏览

c - 如何在不使用任何内置高斯函数的情况下对图像进行高斯模糊?

我想使用原生高斯模糊公式模糊我的图像。我阅读了 Wikipedia 文章,但我不确定如何实现这一点。

如何使用公式确定权重?

我不想使用任何像 MATLAB 那样的内置函数

0 投票
1 回答
888 浏览

c++ - 高斯模糊的 SSE 优化

我正在做一个学校项目,我必须优化 SSE 中的部分代码,但我现在被困在一个部分上几天了。

我没有看到在这段代码(它是高斯模糊算法的一部分)中使用向量 SSE 指令(内联汇编器/ instric f)的任何智能方式。如果有人能给我一个小提示,我会很高兴

0 投票
1 回答
2823 浏览

image-processing - 通过 FFT 正确实现高斯模糊

我已经阅读了很多关于高斯模糊和 FFT 的关于 SO 的问题,但没有回答如何实现它的步骤(但有诸如“这是你的作业”之类的评论)。我想知道,如何正确填充内核并在内核和图像上使用 FFT 和 IFFT。您能否提供一些伪代码或任何语言(如 Java、Python 等)的实现,或者至少提供一些如何理解它的好教程:

从高斯模糊和 FFT复制的步骤

0 投票
1 回答
795 浏览

python - 具有两个像素半径的高斯模糊

我一直在尝试对视频输出进行高斯模糊。在许多站点中,我看到 5x5 的内核大小给出了适当的结果。我想执行模糊半径为 2 的模糊。如何确认半径为 5x5 的内核的半径是多少?或者有什么方法可以形成一个输出模糊半径为 2 的内核?

0 投票
3 回答
7484 浏览

perl - ImageMagick:寻找一种快速模糊图像的方法

我正在寻找一种比使用GaussianBlur更快的方法来模糊图像。我正在寻找 的解决方案可以是命令行解决方案,但我更喜欢 perl 表示法的代码。

实际上,我们使用 Perl image magick API 来模糊图像:

这很好用,但随着关卡高度的增加,它所消耗的时间似乎呈指数增长。

问题:如何提高模糊操作所用的时间?还有另一种更快的方法来模糊图像吗?

0 投票
1 回答
4406 浏览

scipy - 如何获得一个高斯核数组来过滤我的图像

对于实验,我需要在整个窗口上使用高斯滤波器,例如显示中间部分。由于我使用的是 PsychoPy,基本上,我需要一个 N x M 数组(N 和 M 是窗口的像素大小),中间是一个(底层刺激可见到边缘的 -1)。然后我可以在 GratingStim 中使用这个数组作为掩码。到目前为止,我一直在尝试 ndimage.filters.gaussian_filter(filter_input, sigma = 7)

但是我在使用这个功能时遇到了一些麻烦。如果 filter_input 是一个包含 1 或 0 的 NxM 矩阵,则 ndimage 函数使它们保持不变。如果 filter_input 是一个带有随机数的矩阵,它可以改变它们。但我仍然没有得到我希望的结果。我知道 PsychoPy 掩码只允许介于 -1 和 1 之间的值,但现在在下面的代码中,我应该看不到任何东西,因为掩码是 -1。

所以,更具体地说:为什么 ndimage.filters.gaussian_filter(filter_input, sigma = 7) 表现得像这样?我怎样才能让它为 NxM 矩阵中的每个点分配一个值,使得分配的值具有高斯二维分布?稍后我可以去掉高于 1 和低于 -1 的值。

如果我的问题是微不足道的,我很抱歉,我一直在 PsychoPy 中进行一些编程,但我是 numpy 和 scipy 的新手......

谢谢你的帮助!

这是一些示例代码:

0 投票
1 回答
1856 浏览

android - Android - 高斯模糊效果 - OpenGL

在没有指定的地方,这个问题只是建立在 github 上CameraCaptureActivitygrafika项目之上。

它具有利用 3x3 内核的内置模糊效果

然而这种模糊效果还不够强,我正在寻找类似高斯效应在 iOS 上可以做什么的UIVisualEffectView东西,它看起来像这样:

一个很好的平滑重度模糊效果,但到目前为止,我管理的最好的是:

正如你所看到的,它几乎没有那么平滑而且有点方正。

我通过转换为使用这个方便的工具生成的 5x5 内核来实现这一点,该工具的 sigma 为 30,内核大小为 5。它产生以下结果:

为了在项目中工作,我Grafika必须在课堂上进行修改KERNEL_SIZEmTexOffsetTexture2dProgram

KERNEL_SIZE现在25mTextOffset现在计算如下:

有没有人对我可以修改什么以实现类似模糊的 iOS 有建议(我认为 iOS 也在减轻像素)?我认为我真正出错的地方是 setTextSize() 计算,特别是50.0f值,我刚刚从空气中提取了这个并观察了它的效果

0 投票
4 回答
11362 浏览

python - 为什么cv2和skimage之间的高斯滤波器不同?

我有一张图像,我将高斯模糊应用到同时使用cv2.GaussianBlurskimage.gaussian_filter库,但我得到了明显不同的结果。我很好奇为什么,以及可以做些什么来使skimage看起来更像cv2。我知道skimage.gaussian_filter是一个包装scipy.scipy.ndimage.filters.gaussian_filter。为了清楚地说明问题,为什么这两个功能不同,可以做些什么来使它们更相似?

这是我的测试图像:

原始图像

这是cv2版本(看起来更模糊):

cv2 图像

这是skimage/scipy版本(看起来更清晰):

skimage版本

细节:

skimage_response = skimage.filters.gaussian_filter(im, 2, multichannel=True, mode='reflect')

cv2_response = cv2.GaussianBlur(im, (33, 33), 2)

所以 sigma=2 并且过滤器的大小足够大,它不应该有所作为。Imagemagickcovnert -gaussian-blur 0x2在视觉上与cv2.

版本:cv2=2.4.10、skimage=0.11.3、scipy=0.13.3

0 投票
2 回答
719 浏览

image - 在 JAVA 中使用 Opencv 模糊图像

我正在研究图像模糊功能。为了实现这一点,我将 opencv 与 JAVA 结合使用。但是图片的模糊率是根据上传图片的质量而定的,也就是说如果我上传的是低质量的图片,那么它会像预期的那样模糊图像,但是如果我上传的是高质量的图片,那么它会以非常小的比例模糊图像. 如何将参数设置为该行,以便所有图像的模糊效果相同(意味着它与上传的图像质量无关) Imgproc.GaussianBlur(source, destination,new Size(39,39),0);

0 投票
1 回答
8514 浏览

python - 如何使用 Python Pillow 定义模糊半径?

我试图用Pillow模糊图像,使用ImageFilter如下:

这很好用,只是它的半径对我来说太小了。我想模糊图像,以至于几乎无法识别它。在文档中,我看到默认情况下半径设置为 2,但我真的不明白如何将其设置为更大的值?

有人知道如何用 Pillow 增加模糊半径吗?欢迎所有提示!