يستخدم تحرير الصور في العديد من التطبيقات لمعالجة الصور لمزيد من المعالجة. لقد كتبنا سلسلة من المدونات ، مثل اقتصاص ، تدوير ، تمويه ، وما إلى ذلك ، والتي تفيدك في تنفيذ ميزات تحرير الصور في تطبيقاتك. في هذه المقالة ، سوف نوضح لك كيفية تطبيق مرشحات الوسيطة و wiener ، والتي تُستخدم بشكل شائع لتقليل التشويش وتنعيم الصور. لذلك دعونا نرى كيفية تطبيق الوسيط ومرشحات wiener على صورة برمجيًا في C#.
- C# API لتطبيق مرشحات الصور Median و Wiener
- تطبيق مرشح متوسط على صورة في C#
- تطبيق مرشح Gauss Wiener على صورة
- تصفية الحركة وينر لصورة
C# API لتطبيق مرشحات الصور Median و Wiener - تنزيل مجاني
Aspose.Imaging for .NET هو واجهة برمجة تطبيقات مذهلة لتنفيذ ميزات تحرير الصور في تطبيقات .NET. سنستخدم واجهة برمجة التطبيقات هذه لتطبيق مرشحات الوسيط والواينر على الصور. يمكنك إما تنزيل API أو تثبيته من NuGet.
PM> Install-Package Aspose.Imaging
تطبيق مرشح متوسط على صورة في C#
المرشح الوسيط هو تقنية تصفية رقمية غير خطية ، تُستخدم لتقليل التشويش من الصور. فيما يلي خطوات تطبيق مرشح متوسط على صورة في C#.
- أولاً ، قم بتحميل الصورة باستخدام طريقة Image.Load().
- بعد ذلك ، أرسل الصورة إلى نوع RasterImage.
- قم بإنشاء مثيل لفئة MedianFilterOptions وقم بتهيئته بحجم المستطيل.
- قم بتطبيق المرشح المتوسط باستخدام طريقة RasterImage.Filter (Rectangle، MedianFilterOptions).
- أخيرًا ، احفظ الصورة الناتجة باستخدام طريقة RasterImage.Save().
يوضح نموذج التعليمات البرمجية التالي كيفية تطبيق عامل تصفية متوسط على صورة في 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");
}
يوجد أدناه الصورة قبل وبعد تطبيق عامل التصفية المتوسط.
تطبيق مرشح Gauss Wiener على صورة في C#
طريقة أخرى شائعة الاستخدام لتقليل التشويش الإضافي والتشويش في الصور هي gauss wiener. فيما يلي خطوات تطبيق مرشح gauss wiener على صورة في C#.
- أولاً ، قم بتحميل الصورة باستخدام طريقة Image.Load().
- بعد ذلك ، أرسل الصورة إلى نوع RasterImage.
- قم بإنشاء مثيل لفئة GaussWienerFilterOptions وقم بتهيئتها بحجم نصف قطر وقيمة سلسة.
- (اختياري) للحصول على صورة ذات تدرج رمادي ، اضبط خاصية GaussWienerFilterOptions.Grayscale على true.
- تطبيق مرشح gauss wiener باستخدام طريقة RasterImage.Filter (Rectangle، GaussWienerFilterOptions).
- أخيرًا ، احفظ الصورة الناتجة باستخدام طريقة RasterImage.Save().
يوضح نموذج التعليمات البرمجية التالي كيفية تطبيق مرشح 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 wiener بدون التدرج الرمادي.
تطبيق مرشح Motion Wiener على صورة في C#
يستخدم مرشح Wiener لإزالة ضبابية الصورة التي يتم إنتاجها بسبب الأجسام المتحركة. فيما يلي خطوات تطبيق مرشح wiener للحركة على صورة في C#.
- أولاً ، قم بتحميل الصورة باستخدام طريقة Image.Load().
- بعد ذلك ، أرسل الصورة إلى نوع RasterImage.
- قم بإنشاء مثيل لفئة MotionWienerFilterOptions وقم بتهيئته بالطول والقيمة المتجانسة والزاوية.
- تطبيق مرشح wiener للحركة باستخدام طريقة RasterImage.Filter (Rectangle، MotionWienerFilterOptions).
- أخيرًا ، احفظ الصورة الناتجة باستخدام طريقة RasterImage.Save().
يوضح نموذج التعليمات البرمجية التالي كيفية تطبيق مرشح 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");
}
C# Median and Wiener Image Filtering API - احصل على ترخيص مجاني
يمكنك الحصول على ترخيص مؤقت مجاني وتطبيق مرشحات الوسيط والواينر على الصور دون قيود التقييم.
استنتاج
في هذه المقالة ، تعلمت كيفية تطبيق مرشحات median و wiener على الصور الموجودة في C#. علاوة على ذلك ، قمنا بتغطية كيفية تقليل ضوضاء الأجسام المتحركة في الصورة. يمكنك بسهولة استخدام هذه الميزات في تطبيق C# لدمج إمكانيات تحرير الصور.
اقرأ أكثر
يمكنك استكشاف المزيد حول .NET Image Processing API باستخدام التوثيق. يمكنك أيضًا مشاركة استفساراتك معنا عبر المنتدى.