تطبيق مرشحات Median و Wiener على الصور في C#

يستخدم تحرير الصور في العديد من التطبيقات لمعالجة الصور لمزيد من المعالجة. لقد كتبنا سلسلة من المدونات ، مثل اقتصاص ، تدوير ، تمويه ، وما إلى ذلك ، والتي تفيدك في تنفيذ ميزات تحرير الصور في تطبيقاتك. في هذه المقالة ، سوف نوضح لك كيفية تطبيق مرشحات الوسيطة و wiener ، والتي تُستخدم بشكل شائع لتقليل التشويش وتنعيم الصور. لذلك دعونا نرى كيفية تطبيق الوسيط ومرشحات wiener على صورة برمجيًا في C#.

C# API لتطبيق مرشحات الصور Median و Wiener - تنزيل مجاني

Aspose.Imaging for .NET هو واجهة برمجة تطبيقات مذهلة لتنفيذ ميزات تحرير الصور في تطبيقات .NET. سنستخدم واجهة برمجة التطبيقات هذه لتطبيق مرشحات الوسيط والواينر على الصور. يمكنك إما تنزيل API أو تثبيته من NuGet.

PM> Install-Package Aspose.Imaging

تطبيق مرشح متوسط على صورة في C#

المرشح الوسيط هو تقنية تصفية رقمية غير خطية ، تُستخدم لتقليل التشويش من الصور. فيما يلي خطوات تطبيق مرشح متوسط على صورة في C#.

يوضح نموذج التعليمات البرمجية التالي كيفية تطبيق عامل تصفية متوسط على صورة في C#.

// قم بتحميل الصورة المزعجة 
using (Image image = Image.Load("jack.jpg"))
{
    // الصق الصورة في RasterImage
    RasterImage rasterImage = image as RasterImage;
    if (rasterImage == null)
    {
        return;
    }

    // قم بإنشاء مثيل لفئة MedianFilterOptions وقم بتعيين الحجم
    MedianFilterOptions options = new MedianFilterOptions(4);
    
    // تطبيق مرشح وحفظ الصورة
    rasterImage.Filter(image.Bounds, options);
    image.Save("jack_median.jpg");
}

يوجد أدناه الصورة قبل وبعد تطبيق عامل التصفية المتوسط.

تطبيق مرشح متوسط على الصورة C#

تطبيق مرشح Gauss Wiener على صورة في C#

طريقة أخرى شائعة الاستخدام لتقليل التشويش الإضافي والتشويش في الصور هي gauss wiener. فيما يلي خطوات تطبيق مرشح gauss wiener على صورة في C#.

يوضح نموذج التعليمات البرمجية التالي كيفية تطبيق مرشح gauss wiener على صورة في C#.

// قم بتحميل الصورة المزعجة 
using (Image image = Image.Load("jack.jpg"))
{
    // الصق الصورة في RasterImage
    RasterImage rasterImage = image as RasterImage;
    if (rasterImage == null)
    {
        return;
    }

    // قم بإنشاء مثيل لفئة GaussWienerFilterOptions وقم بتعيين حجم نصف القطر والقيمة المتجانسة
    GaussWienerFilterOptions options = new GaussWienerFilterOptions(12, 3);
    options.Grayscale = true;

    // قم بتطبيق مرشح MedianFilterOptions على كائن RasterImage واحفظ الصورة الناتجة
    rasterImage.Filter(image.Bounds, options);
    image.Save("jack_guass.jpg");
}

يوجد أدناه الصورة قبل وبعد تطبيق مرشح gauss wiener مع خيار التدرج الرمادي.

تطبيق مرشح Gauss Weiner على التدرج الرمادي للصورة

ما يلي هو الصورة قبل وبعد تطبيق مرشح gauss wiener بدون التدرج الرمادي.

تطبيق مرشح الألوان Gauss Weiner على الصورة

تطبيق مرشح Motion Wiener على صورة في C#

يستخدم مرشح Wiener لإزالة ضبابية الصورة التي يتم إنتاجها بسبب الأجسام المتحركة. فيما يلي خطوات تطبيق مرشح wiener للحركة على صورة في C#.

يوضح نموذج التعليمات البرمجية التالي كيفية تطبيق مرشح wiener للحركة على صورة في C#.

// قم بتحميل الصورة المزعجة 
using (Image image = Image.Load("jack.jpg"))
{
    // الصق الصورة في RasterImage
    RasterImage rasterImage = image as RasterImage;
    if (rasterImage == null)
    {
        return;
    }

    // قم بإنشاء مثيل لفئة MotionWienerFilterOptions وقم بتعيين الطول والقيمة المتجانسة والزاوية
    MotionWienerFilterOptions options = new MotionWienerFilterOptions(50, 9, 90);
    options.Grayscale = true;

    // قم بتطبيق مرشح MedianFilterOptions على كائن RasterImage واحفظ الصورة الناتجة
    rasterImage.Filter(image.Bounds, options);
    image.Save("jack_MotionWiener.jpg");
}
تطبيق مرشح Motion Weiner على الصورة في C#

C# Median and Wiener Image Filtering API - احصل على ترخيص مجاني

يمكنك الحصول على ترخيص مؤقت مجاني وتطبيق مرشحات الوسيط والواينر على الصور دون قيود التقييم.

استنتاج

في هذه المقالة ، تعلمت كيفية تطبيق مرشحات median و wiener على الصور الموجودة في C#. علاوة على ذلك ، قمنا بتغطية كيفية تقليل ضوضاء الأجسام المتحركة في الصورة. يمكنك بسهولة استخدام هذه الميزات في تطبيق C# لدمج إمكانيات تحرير الصور.

اقرأ أكثر

يمكنك استكشاف المزيد حول .NET Image Processing API باستخدام التوثيق. يمكنك أيضًا مشاركة استفساراتك معنا عبر المنتدى.

أنظر أيضا