Застосування медіанних та Вінерівських фільтрів до зображень у C#

Редагування зображень відіграє важливу роль у покращенні та маніпуляції зображеннями для різних застосувань. У наших попередніх публікаціях ми обговорювали теми, такі як обрізка зображень, повертання зображень та розмиття зображень. Сьогодні ми розглянемо, як застосувати медіанні та Вінерівські фільтри — дві основні техніки для зменшення шуму та згладжування зображень. Давайте зануримось у те, як програмно реалізувати ці фільтри в C#.

C# API для застосування медіанних та Вінерівських фільтрів до зображень - Безкоштовне завантаження

Aspose.Imaging для .NET API є потужним рішенням для реалізації технік фільтрації зображень у .NET-додатках. Ця бібліотека дозволяє ефективно застосовувати як медіанні, так і Вінерівські фільтри, що робить її незамінним інструментом для обробки зображень у C#. Ви можете легко завантажити API або встановити його безпосередньо з NuGet, використовуючи наступну команду:

PM> Install-Package Aspose.Imaging

Застосування медіанного фільтра до зображення в C#

Медіанний фільтр є нелінійною технікою цифрової фільтрації, яка ефективно зменшує шум у зображеннях, що робить його цінним інструментом у фільтрації зображень у C#. Ось покрокова інструкція, як застосувати медіанний фільтр до зображення в C#:

  1. Завантажте зображення за допомогою методу Image.Load().
  2. Приведіть зображення до типу RasterImage.
  3. Створіть екземпляр класу MedianFilterOptions та ініціалізуйте його з бажаним розміром прямокутника.
  4. Застосуйте медіанний фільтр за допомогою методу RasterImage.Filter(Rectangle, MedianFilterOptions).
  5. Збережіть отримане зображення за допомогою методу RasterImage.Save().

Ось приклад коду, що демонструє, як застосувати медіанний фільтр до зображення в C#:

Порівняння до та після

Нижче наведено порівняння зображення до та після застосування медіанного фільтра:

Застосування медіанного фільтра до зображення C#

Застосування фільтра Гауса Вінера до зображення в C#

Фільтр Гауса Вінера є ще одним ефективним підходом для мінімізації адитивного шуму та розмиття в зображеннях. Дотримуйтесь цих кроків, щоб застосувати фільтр Гауса Вінера в C#:

  1. Завантажте зображення за допомогою методу Image.Load().
  2. Приведіть зображення до типу RasterImage.
  3. Створіть екземпляр класу GaussWienerFilterOptions та ініціалізуйте його з бажаним розміром радіусу та значенням згладжування.
  4. (Необов’язково) Для чорно-білого зображення встановіть властивість GaussWienerFilterOptions.Grayscale в true.
  5. Застосуйте фільтр Гауса Вінера за допомогою методу RasterImage.Filter(Rectangle, GaussWienerFilterOptions).
  6. Збережіть отримане зображення за допомогою методу RasterImage.Save().

Ось приклад коду для застосування фільтра Гауса Вінера до зображення в C#:

Порівняння до та після

Нижче ви можете побачити зображення до та після застосування фільтра Гауса Вінера з параметром чорно-білого:

Застосування фільтра Гауса Вінера до зображення з чорно-білим

А ось зображення до та після застосування фільтра Гауса Вінера без чорно-білого:

Застосування кольорового фільтра Гауса Вінера до зображення

Застосування рухового фільтра Вінера до зображення в C#

Руховий фільтр Вінера спеціально розроблений для усунення розмиття, спричиненого рухомими об’єктами. Ось як застосувати руховий фільтр Вінера в C#:

  1. Завантажте зображення за допомогою методу Image.Load().
  2. Приведіть зображення до типу RasterImage.
  3. Створіть екземпляр класу MotionWienerFilterOptions та ініціалізуйте його з довжиною, значенням згладжування та кутом.
  4. Застосуйте руховий фільтр Вінера за допомогою методу RasterImage.Filter(Rectangle, MotionWienerFilterOptions).
  5. Збережіть отримане зображення за допомогою методу RasterImage.Save().

Ось приклад коду, що демонструє, як застосувати руховий фільтр Вінера до зображення в C#:

Порівняння до та після

Застосування рухового фільтра Вінера до зображення в C#

API для медіанної та Вінерівської фільтрації зображень C# - Отримайте безкоштовну ліцензію

Ви можете отримати безкоштовну тимчасову ліцензію для застосування медіанних та Вінерівських фільтрів до зображень без будь-яких обмежень на оцінку.

Висновок

У цій статті ми розглянули процес застосування медіанних та Вінерівських фільтрів до зображень у C#. Ми також вивчили методи зменшення шуму від рухомих об’єктів у зображеннях. Ви можете безперешкодно інтегрувати ці функції у свої C# додатки, щоб покращити можливості редагування зображень. Чи ви шукаєте уроки обробки зображень у C# для початківців, чи вдосконалені техніки, плагін Aspose пропонує комплексне рішення для всіх ваших потреб у обробці зображень.

Читайте далі

Щоб дізнатися більше про API обробки зображень .NET, перегляньте документацію. Якщо у вас є питання, не соромтеся звертатися через наш форум.

Дивіться також