Перейти к основному содержанию
EDU-MMCS
Вы используете гостевой доступ (Вход)

Компьютерное зрение

  1. В начало
  2. Курсы
  3. Осенний семестр
  4. Магистратура
  5. КЗ
  6. Добор баллов
  7. Задание 2. Реализация медианного фильтра для подав...

Задание 2. Реализация медианного фильтра для подавления шума.

Открыто с: среда, 14 января 2026, 00:00
Срок сдачи: суббота, 17 января 2026, 23:00
Требуемые условия завершения

Шаги выполнения:

1. Загрузка и подготовка изображения

   - Загрузите зашумленное изображение (например, с добавленным "соль-перец" шумом) через `cv2.imread` и преобразуйте его в оттенки серого (можно использовать готовое преобразование или свое из предыдущего задания).  


2. Реализация медианного фильтра

   - Создайте функцию для применения медианного фильтра с окном 3x3.  

   - Для каждого пикселя изображения:  

     - Соберите значения яркости в окрестности 3x3.  

     - Отсортируйте значения и выберите медиану.  

     - Замените центральный пиксель медианным значением.  

   - Обработайте границы изображения (например, игнорируйте пиксели за пределами или продублируйте края).  


3. Визуализация результатов

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

   - Убедитесь, что шум "соль-перец" значительно уменьшился.  

Для наложения шума на изображение можно использовать следующую функцию:

```

import numpy as np
import os
import cv2

def noisy(image, noise_typ="s&p"):
   if noise_typ == "gauss":
      row,col,ch= image.shape
      mean = 0
      var = 0.1
      sigma = var**0.5
      gauss = np.random.normal(mean,sigma,(row,col,ch))
      gauss = gauss.reshape(row,col,ch)
      noisy = image + gauss
      return noisy
   elif noise_typ == "s&p":
      row,col,ch = image.shape
      s_vs_p = 0.5
      amount = 0.004
      out = np.copy(image)
      # Salt mode
      num_salt = np.ceil(amount * image.size * s_vs_p)
      coords = [np.random.randint(0, i - 1, int(num_salt))
              for i in image.shape]
      out[coords] = 1

      # Pepper mode
      num_pepper = np.ceil(amount* image.size * (1. - s_vs_p))
      coords = [np.random.randint(0, i - 1, int(num_pepper))
              for i in image.shape]
      out[coords] = 0
      return out
  elif noise_typ == "poisson":
      vals = len(np.unique(image))
      vals = 2 ** np.ceil(np.log2(vals))
      noisy = np.random.poisson(image * vals) / float(vals)
      return noisy
  elif noise_typ =="speckle":
      row,col,ch = image.shape
      gauss = np.random.randn(row,col,ch)
      gauss = gauss.reshape(row,col,ch)        
      noisy = image + image * gauss
      return noisy

``` 
Также можно попробовать применить реализованный метод медианной фильтрации и для других типов шума.

- Для медианного фильтра запрещено применять `cv2.medianBlur`.

◄ Задание 1. Реализация оператора градиента.
Задание 3. Цветокоррекция изображения в пространстве HSV ►

Блоки

Пропустить Навигация

Навигация

  • В начало

    • Страницы сайта

      • Мои курсы

      • Теги

    • Мои курсы

    • Курсы

      • Осенний семестр

        • Прикладная математика и информатика

        • Фундаментальная информатика и ИТ

        • Математика, механика

        • Педагогическое образование

        • Магистратура

          • Разработка мобильных приложений и компьютерных игр

          • MDA

          • DS & ИАД 2025

          • ТОИ маг

          • Modern computer technology

          • ТОИ магистры

          • Математика и её приложения в науке и инженерии

          • MUDP

          • ОНС-Н

          • RL

          • ИИ_НС

          • КрПр

          • КЗ

            • Общее

            • 6 сентября - 12 сентября

            • 13 сентября - 19 сентября

            • 20 сентября - 26 сентября

            • 27 сентября - 3 октября

            • 4 октября - 10 октября

            • 11 октября - 17 октября

            • 18 октября - 24 октября

            • 25 октября - 31 октября

            • 1 ноября - 7 ноября

            • 8 ноября - 14 ноября

            • 15 ноября - 21 ноября

            • 22 ноября - 28 ноября

            • 29 ноября - 5 декабря

            • 6 декабря - 12 декабря

            • 13 декабря - 19 декабря

            • 20 декабря - 26 декабря

            • Архив

            • Добор баллов

              • ЗаданиеЗадание 1. Реализация оператора градиента.

              • ЗаданиеЗадание 2. Реализация медианного фильтра для подав...

              • ЗаданиеЗадание 3. Цветокоррекция изображения в пространст...

        • Аспирантура

        • Вечернее отделение

        • Другое

        • МСиТВ_АБМ_2026

        • Python Eng

        • Экзамен ИКТ

        • ТестИИ

        • Информатика-Осень-ПМИ-2

        • Информатика-осень-ПМИ-1

        • ИММвс

      • Весенний семестр

        • Прикладная математика и информатика

        • Фундаментальная информатика и ИТ

        • Математика, механика

        • Педагогическое образование

        • Магистратура

          • Разработка мобильных приложений и компьютерных игр

        • Аспирантура

        • Вечернее отделение

        • Другое

      • Воскресная компьютерная школа

        • Пользователь компьютера плюс

        • Пользователь прикладных программ

        • Программирование I ступень

        • Программирование II ступень

        • Программирование III ступень

        • Архив

      • Воскресная математическая школа

        • Открытое тестирование РНОМЦ и мехмата ЮФУ

          • Открытое тестирование РНОМЦ и мехмата ЮФУ - 2026

          • Открытое тестирование РНОМЦ и мехмата ЮФУ - 2025

        • Олимпиадная математическая школа

        • Повышение квалификации

        • Доступная математика

        • Лаборатория математического онлайн-образования мех...

        • Осенняя универсиада

        • Научно-практическая конференция

        • ВМШ

          • ВМШ -2025

        • Летняя олимпиадная математическая школа РНОМЦ и ме...

      • Государственная итоговая аттестация

      • Дополнительное образование

      • Олимпиады

      • Видеолекции

      • Разное

      • Архив курсов

      • Заочная школа мехмата ЮФУ

Дополнительные блоки

Вы используете гостевой доступ (Вход)
КЗ
Сводка хранения данных
Скачать мобильное приложение
Яндекс.Метрика