Silverlight WriteableBitmap 上的高斯模糊
本文关键字:高斯 模糊 WriteableBitmap Silverlight | 更新日期: 2023-09-27 17:56:11
我在Silverlight中使用WriteableBitmap作为临时存储的工具,并最终绘制我的算法的结果,以绘制一个看似平坦的二维均匀分布的宇宙,其中包含有限数量的物质。
要了解"宇宙"的定义(图3): http://alienryderflex.com/homogeneity/
我正在使用位图大小调整来接近算法,并获得线性质量损失的二次加速。
问题是我需要对图像进行高斯模糊,以减少缩小和放大后的像素化,如果没有,则会增加算法的错误率。
您可以在此处查看我的测试实现。
如果您按生成然后绘制,并等待 20 秒,您将看到即使在输出像素化上也可以看到。
但是我需要该输出位图作为算法第二阶段的"物质密度图"。
那么如何在这些可写位图上进行高斯模糊呢?我真的很想找到一个合适的实现,而不是编写我自己的实现,这在整数数组上会非常耗时 ->圣洁的基督在图像数据上没有字节指针??
谢谢!
编辑:
澄清一下:我需要高斯模糊数据来操作它:不仅仅是图像上的视觉模糊。
在 silveright 中执行此操作的最佳方法是编写自定义图形效果。在 silverlight 3 中,您可以将它们编写为 DirectX .fx 文件。这些将是硬件隔离的,并将避免在不同图像表示之间来回复制缓慢。
下面是一个介绍。可能有更好的,但它会让你开始。像素着色器的酷之处在于它们非常快,您无需担心优化。