Desfoque Gaussiano C# csharp

O desfoque gaussiano geralmente é usado para suavizar imagens ou reduzir ruídos. Esse filtro é frequentemente usado por aplicativos de processamento de imagem. Em certos casos, pode ser necessário trabalhar com um filtro de desfoque gaussiano em seus aplicativos. Assim, este artigo aborda como aplicar o filtro de desfoque gaussiano nas imagens programaticamente em C#.

Trabalhar com filtro de desfoque gaussiano – instalação da API C#

Você precisa configurar a API Aspose.PSD for .NET baixando seu arquivo DLL da página Downloads, ou com o comando de instalação NuGet abaixo:

PM> Install-Package Aspose.PSD

Aplicar filtro de desfoque gaussiano em uma imagem programaticamente em c

Você pode suavizar uma imagem reduzindo o ruído com o filtro gaussiano. Siga as etapas abaixo para aplicar um filtro de desfoque gaussiano às imagens.

  • Primeiramente, carregue o arquivo de entrada usando a classe Image.
  • Inicialize um objeto de classe GaussianBlurSmartFilter.
  • Defina diferentes características e aplique o filtro de desfoque.
  • Por fim, salve o arquivo de imagem de saída.

O exemplo de código abaixo explica como aplicar o filtro de desfoque gaussiano em uma imagem programaticamente em C#:

string sourceFile = "layers.psd";
string outputPsd = "out_test.psd";
string outputPng = "out_test.png";

using (var image = (PsdImage)Image.Load(sourceFile))
{
    SmartObjectLayer smartLayer = (SmartObjectLayer)image.Layers[1];
    Layer maskLayer = image.Layers[2];
    Layer regularLayer = image.Layers[3];

    // Aplicar filtro de desfoque gaussiano
    GaussianBlurSmartFilter gaussianBlur = new GaussianBlurSmartFilter();
    gaussianBlur.Radius = 10;
    gaussianBlur.Opacity = 50;

    // Aplicar filtro ao SmartObject
    gaussianBlur.Apply(smartLayer);
    smartLayer.SmartFilters.UpdateResourceValues();
    smartLayer.UpdateModifiedContent();

    // Aplicar filtro à máscara de camada
    gaussianBlur.ApplyToMask(maskLayer);

    // Aplicar filtro à camada
    gaussianBlur.Apply(regularLayer);

    // Salvar saída como imagem PSD e PNG
    image.Save(outputPsd);
    image.Save(outputPng, new ImageOptions.PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
}

Visualização de entrada de amostra

Filtro Gaussiano de Entrada C#

Visualização de saída de amostra

Saída Gaussian Blur C# .NET

Explorar os recursos da API

Existem muitos outros filtros inteligentes e operações suportadas para manipular os arquivos PSD. Você pode visitar o espaço documentação para mais informações.

Obtenha uma licença de avaliação gratuita

Você pode solicitar uma licença temporária gratuita para testar a API em sua capacidade total.

Conclusão

Neste artigo, você aprendeu como aplicar um filtro gaussiano em uma imagem programaticamente usando C#. Você também pode usar esse filtro para a detecção de bordas ou para produzir o efeito de sombra junto com muitos outros usos em aplicativos de processamento de imagem. Da mesma forma, existem muitas outras aplicações para o filtro gaussiano ao trabalhar com gráficos. Além disso, em caso de dúvidas, sinta-se à vontade para entrar em contato conosco no fórum.

Veja também

Crie uma imagem PSD em C#