问题标签 [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 投票
1 回答
2590 浏览

image - 在没有加性噪声的matlab中使用高斯滤波器进行图像去模糊

我必须使用反向过滤器来消除此图像的模糊

图像模糊.

不幸的是,我必须弄清楚H用于获得这些更清晰图像的成像系统的传递函数,它应该是高斯的。因此,我应该通过在逆滤波器中尝试不同的高斯宽度并判断哪些结果图像看起来“最好”来确定高斯的近似宽度。

最好的结果将是最佳的锐利——即边缘看起来很锐利,但不会有明显的振铃。

我尝试使用 3 种方法:

  1. 我通过创建一个维度网格,然后将高斯函数应用于该网格,创建了一个具有N维度(奇数,为简单起见)的传递函数。N之后,我们向这个传递函数添加零,以获得与原始图像相同的大小。但是,在将滤镜应用于原始图像后,我只看到了噪点(伪影太多)。
  2. 通过创建与原始图像相同大小的网格,我创建了大小与原始图像一样高的传递函数。如果sigma太小,则PSF FFT幅度很大。否则会变薄。如果sigma很小,那么图像会更加模糊,但是如果我们设置一个非常高的sigma值,那么我们会得到相同的图像(一点也不好)。
  3. 我使用了这个fspecial函数,玩弄 和 的sigma大小h。但我仍然没有得到比原始模糊图像更清晰的东西。

有任何想法吗?

以下是用于在方法 1 中创建传递函数的代码:

这是每种方法的代码:

0 投票
1 回答
1614 浏览

ios - 如何在 iOS 中创建“模糊文本”图像效果?

我想为图像创建文本形状的模糊效果,如下所示: 在此处输入图像描述

另一个例子:

在此处输入图像描述

我找到了一个关于模糊 UILabel 答案的答案:如何模糊 UILabel 文本。但效果不正确。

在此处输入图像描述

那么,如何在 Swift 中创建可以作为水印渲染为图像的模糊文本图像效果?

来人帮帮我!非常感谢!

顺便说一句,关于 UIVisualEffectView 的答案是不正确的。使用 UIVisualEffectView 的效果是这样的:

在此处输入图像描述

此外,我还想将这种模糊效果应用到照片的水印中。

那么,有什么帮助吗?

0 投票
1 回答
134 浏览

fft - DM Script,gaussian-kenel的傅里叶变换为什么需要取模

最近我学习了用于 TEM 图像处理的 DM_Script,我需要高斯模糊处理,我在http://www.dmscripting.com/recent_updates.html找到了一个名为“Gaussian Blur”的程序

该代码通过将源图像的快速傅里叶变换(FFT)乘以高斯核图像的FFT,最后对其进行傅里叶逆变换来实现高斯模糊算法。

这是代码的一部分,

我想问的是这个 compleximage FFTProduct:=FFTSource*fftkernelimg.modulus().sqrt()

为什么高斯核的 FFT 需要 '.modulus().sqrt()' 进行卷积?

这与一个高斯函数的傅里叶变换变成另一个高斯函数有关吗?或者它与离散傅立叶变换的一种限制有关?

请回答我 谢谢

0 投票
1 回答
90 浏览

c++ - 并行化高斯模糊链

我有这个代码(这个的重新访问版本

在哪里:

因此,如您所见,每个都blurs[i+1]依赖于blurs[i],因此不能并行化。我的问题是:是否有等效的方法来获得相同的结果,但使用firstLevel而不是blurs[i]?所以它应该看起来像:

可能吗?

这个答案让我认为这是可能的,但我无法理解如何实现这一点:

卷积过滤器如果您在同一张图像上连续应用多个过滤器,例如高斯模糊,然后是 Gabor 过滤器,您可以将它们组合在一起。使所有过滤器大小相同并对其进行卷积。然后将结果应用到图像上。数学说效果将与之前的组合相同

0 投票
1 回答
561 浏览

opencv - OpenCV 中的边缘检测

我们在 OpenCV java 中编写了用于边缘检测的代码,其中图像的背景将是纯白色以提高准确性。我们为边缘检测部分添加了以下功能:

但是,边缘检测存在一些问题,因为即使背景中的其他点也会出现影响代码的边缘。有人可以告诉我一些改进,以便获得更准确的输出,请记住图像将从智能手机相机拍摄,因为这是我项目的前提。

0 投票
1 回答
726 浏览

java - In-built method/flag for applying gaussian blur to objects drawn by Graphics2D?

Are there any in-built methods, or flags I can set, with a Java Graphics2D object such that I can draw polygons or other shapes with gaussian blur automatically applied?

Or if anyone knows of a computationally efficient shortcut/hack, that would be greatly appreciated.

0 投票
0 回答
520 浏览

html - IE 中的 SVG feGaussianBlur stdDeviation 值问题

我的 HTML 中有这个 SVG 代码,它呈现了一个三角形,下面有一个阴影:

该代码在 Chrome 和 Firefox 上运行良好,但是当它在 Internet Explorer 11 上呈现时会发生这种情况,高斯模糊 stdDeviation 值变为:

而且阴影明显没有显示出来

关于为什么会发生这种情况的任何想法?

谢谢

0 投票
2 回答
364 浏览

c++ - 用一个模糊替换一系列图像模糊

这个问题中,我询问了如何一步实现一系列模糊。

然后我从维基百科的高斯模糊页面中发现:

对图像应用多个连续的高斯模糊与应用单个更大的高斯模糊具有相同的效果,其半径是实际应用的模糊半径平方和的平方根。例如,应用半径为 6 和 8 的连续高斯模糊与应用半径为 10 的单个高斯模糊的结果相同,因为 sqrt {6^{2}+8^{2}}=10。

所以我认为blur并且singleBlur在以下代码中是相同的:

但这assert失败了(实际上,例如,第一行与第一行blur不同singleBlur)。

为什么?

更新:

在要求更多信息的不同评论之后,我会更新答案。

我想要做的是并行化这段代码。特别是,我现在专注于提前计算所有级别的所有模糊。序列号(正常工作)如下:

在哪里:

对于上面可怕的索引,我很抱歉,但我试图尊重原始代码系统(这太可怕了,比如从 开始计数1而不是0)。上面的代码有scaleCycles=5levels=6,所以总共生成了 30 个模糊。

这是“单一模糊”版本,首先我计算每个必须计算的模糊的 sigma(遵循 Wikipedia 的公式),然后应用模糊(请注意,这仍然是串行的且不可并行化):

当然,上面的代码也使用与前一版本相同的参数生成 30 个模糊。

signgleBlurs然后这是查看每个和之间区别的代码blurs

现在,我看到的是那个blurDiffs_1.jpgblurDiffs_2.jpg是黑色的,但是突然之间blurDiffs_3.jpg直到blurDiffs_29.jpg变得越来越白。由于某种原因,blurDiffs_30.jpg几乎完全是黑色的。

第一个(正确的)版本生成 1761 个描述符。第二个(不正确的)版本生成 >2.3k 描述符。

我不能发布blurDiffs矩阵,因为(尤其是第一个)非常大并且帖子的空间有限。我会发布一些样本。我不会发帖blurDiffs_1.jpgblurDiffs_2.jpg因为他们完全是黑人。请注意,由于halfImage图像变得越来越小(如预期的那样)。

blurDiffs_3.jpg:

在此处输入图像描述

blurDiffs_6.jpg:

在此处输入图像描述

blurDiffs_15.jpg:

在此处输入图像描述

blurDiffs_29.jpg:

在此处输入图像描述

如何读取图像:

这里有人建议除以diff255 来查看真正的区别,但我不明白为什么我正确理解了他。

如果您需要更多详细信息,请告诉我

0 投票
0 回答
941 浏览

python - 使用 filter2D 制作旋转的 DoG 过滤器

我有一个计算机视觉课程的作业,但我遇到了问题。我需要使用旋转的 DoG 过滤器过滤掉下图中的黄线。

我们将使用的图像

作为第一步,我想制作一个自定义的 2D 高斯内核(有 2 个不同的 sigma,因为他们在作业中要求它,我还不明白它的原因)。基本上我认为某些方向的模糊量会有所不同。

现在我使用 sobel 滤波器来创建高斯微分 (DoG) 滤波器;

现在我创建一个旋转矩阵,这样黄线在图像中是垂直的;

如果我必须在没有老师指示的情况下解决这个问题,我会先旋转图像,使黄线处于垂直位置,然后应用 DoG 滤镜。从维基百科看,DoG 是一种带通滤波器,它会丢弃除少数原始灰度图像中存在的空间频率之外的所有空间频率。所以我只想保留现在垂直的黄线。

我做错了什么,为什么,你将如何解决这个问题?对于新手 CV 爱好者,我们将不胜感激。

0 投票
1 回答
2026 浏览

objective-c - iOS 9.3 UIGraphicsImageRenderer 显示没有任何其他选项?

我想在裁剪时对图像应用羽毛效果,但希望我使用 UIGraphicsImageRenderer 渲染图像,渲染为 nil(iOS 9.3)是否还有其他选项可以在 iOS 9.3 中渲染图像

这是我的代码:

//这里的渲染器在 iOS 9.3 中是 nil