Rozmycie gaussowskie C# csharp

Rozmycie gaussowskie jest zwykle używane do wygładzania obrazów lub redukcji szumów. Ten filtr jest często używany przez aplikacje do przetwarzania obrazu. W niektórych przypadkach może zaistnieć potrzeba pracy z filtrem rozmycia gaussowskiego w swoich aplikacjach. W związku z tym w tym artykule opisano, jak programowo zastosować filtr rozmycia gaussowskiego do obrazów w języku C#.

Praca z filtrem rozmycia gaussowskiego – instalacja C# API

Musisz skonfigurować interfejs API Aspose.PSD for .NET, pobierając jego plik DLL ze strony Downloads lub za pomocą poniższego polecenia instalacyjnego NuGet:

PM> Install-Package Aspose.PSD

Programowo zastosuj filtr rozmycia gaussowskiego na obrazie w języku C#

Możesz wygładzić obraz, redukując szum za pomocą filtra gaussowskiego. Wykonaj poniższe czynności, aby zastosować filtr rozmycia gaussowskiego do obrazów.

  • Najpierw załaduj plik wejściowy przy użyciu klasy Image.
  • Zainicjuj obiekt klasy GaussianBlurSmartFilter.
  • Ustaw różne cechy i zastosuj filtr rozmycia.
  • Na koniec zapisz plik obrazu wyjściowego.

Poniższy przykładowy kod wyjaśnia, jak programowo zastosować filtr rozmycia gaussowskiego do obrazu w języku 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];

    // Zastosuj filtr rozmycia gaussowskiego
    GaussianBlurSmartFilter gaussianBlur = new GaussianBlurSmartFilter();
    gaussianBlur.Radius = 10;
    gaussianBlur.Opacity = 50;

    // Zastosuj filtr do SmartObject
    gaussianBlur.Apply(smartLayer);
    smartLayer.SmartFilters.UpdateResourceValues();
    smartLayer.UpdateModifiedContent();

    // Zastosuj filtr do maski warstwy
    gaussianBlur.ApplyToMask(maskLayer);

    // Zastosuj filtr do warstwy
    gaussianBlur.Apply(regularLayer);

    // Zapisz dane wyjściowe jako obraz PSD i PNG
    image.Save(outputPsd);
    image.Save(outputPng, new ImageOptions.PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
}

Przykładowy podgląd danych wejściowych

Wprowadź filtr gaussowski C#

Przykładowy podgląd danych wyjściowych

Wyjściowe rozmycie gaussowskie C# .NET

Poznaj funkcje API

Istnieje wiele innych inteligentnych filtrów i operacji obsługiwanych do manipulowania plikami PSD. Możesz odwiedzić dokumentację, aby uzyskać więcej informacji.

Uzyskaj bezpłatną licencję ewaluacyjną

Możesz poprosić o bezpłatną licencję tymczasową, aby przetestować interfejs API w pełni.

Wniosek

W tym artykule nauczyłeś się, jak programowo zastosować filtr gaussowski do obrazu przy użyciu języka C#. Możesz także użyć tego filtra do wykrywania krawędzi lub do tworzenia efektu cienia wraz z wieloma innymi zastosowaniami w aplikacjach do przetwarzania obrazu. Podobnie istnieje wiele innych zastosowań filtra Gaussa podczas pracy z grafiką. Ponadto w przypadku jakichkolwiek pytań prosimy o kontakt z nami na forum.

Zobacz też

Utwórz obraz PSD w języku C#