如何使用 HLSL(适用于 Silverlight)创建简单的模糊滤镜?

发布于 2024-08-09 21:37:40 字数 137 浏览 10 评论 0原文

如何使用 HLSL(用于 Silverlight)创建简单的高斯模糊滤镜?
为什么 - 我想为 Silverlight 创建一些复杂的滤镜,并且不想单独应用模糊滤镜和我的滤镜。

我需要什么?

我需要 HLSL 过滤器源。

How to create simple Gaussian Blur filter with HLSL (for Silverlight)?
Why - I want to create some complex filter for Silverlight and I do not want to apply blur filter and mine separately.

What do I need?

I need HLSL filter source.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

深海夜未眠 2024-08-16 21:37:41

这可能对你有帮助。您可以在Silverlight中编译和使用。Windows Presentation Foundation Pixel Shader效果库

This might help you. You can compile and use in Silverlight.Windows Presentation Foundation Pixel Shader Effects Library

游魂 2024-08-16 21:37:41

WPF 像素着色器架构(以及一般的 HLSL 着色器)无法执行广义高斯模糊。问题是:HLSL 着色器中的滤波器内核的大小受到 HLSL 着色器中允许的操作数量的严格限制,并且高斯模糊滤波器需要任意大的滤波器内核。

无论如何,尚不清楚您是否愿意这样做。进行高斯模糊的正确方法是通过 2D 傅里叶变换进行卷积。 WPF 着色器不允许这样做。然而,那些非常勇敢的人可以尝试通过 WriteableBitmap 来做到这一点。

The WPF pixel shader architecture (and HLSL shaders in general) are not capable of doing generalized gaussian blur. The problem: the size of the filter kernel in an HLSL shader is strictly limited by the number of operations permitted in an HLSL shader, and a gaussian blur filter requires an arbitrarily large filter kernel.

It's not clear that you would want to do it this way anyway. The right way to do gaussian blur is with convolutions, via 2D Fourier transforms. WPF shaders don't permit this. However, those who are enormously brave could try doing it via a WriteableBitmap.

紫﹏色ふ单纯 2024-08-16 21:37:40

如果您向下滚动此处,您会发现一个示例 - 海报上写着这不适合害羞的人。 。

If you scroll down here you'll find a sample- poster says it's not for the shy...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文