高斯平滑配方应用

cur*_*ity 4 .net c# image-manipulation image-processing gaussian

如何对阵列中的图形应用guassian平滑公式?

这些数组映射到一种颜色并绘制在图表上.我想要使​​用guassian平滑后的线性渐变颜色..

我也想知道确切的guassian平滑配方.

Cod*_*ray 9

我相信你所要求的通常在照片编辑应用程序中被称为"高斯模糊".它只是使用高斯函数模糊图像的结果,导致视觉噪声和细节的减少.您可以在专门讨论主题的优秀维基百科文章中阅读有关高斯模糊高斯函数的更多信息,包括公式的性质以及这些函数如何通常实现.使用的基本算法通常是相同的,但是有一些不同的方法来实现它,主要是尝试计算加速任务.

如果您正在寻找已经编写的应用高斯模糊的代码,请查看以下链接:

如果您正在寻找一种不需要您自己编写或阅读任何编码的插件解决方案,那么有几个很棒的开源框架可用:


至于如何将高斯模糊应用于数组中的图形,如果需要更具体的帮助(如发布代表相关图形对象的代码),则需要提供更多详细信息.

为了完整起见,我将假设您有一系列 Images,每个代表一个图表,存储在一个数组中.(虽然,如果您只是使用标准数组,您可以考虑转移到强类型集合,例如List<Image>.)要将效果应用于图形,您可以简单地遍历数组中的每个图像并应用必要的您要解决的具体实施的代码:

public void SmoothGraphs(List<Image> graphs)
{
    foreach (Image graph in graphs)
    {
        //Apply your Gaussian blur method to the image

        //(for example, with AForge.NET, you might use the following code:)
        GaussianBlur filter = new GaussianBlur(4, 11);
        filter.ApplyInPlace(graph);
    }
}
Run Code Online (Sandbox Code Playgroud)