@Gapnik
Студент - МГТУ им. Н. Э. Баумана

Как избавится от царапин на изображении?

Добрый ден!
Возникла необходимость обработать полученную давно фотографию(на фотографии результат дифракции лазерного пучка). Но вся фотография в "царапинах" и результат обработки искажен.
Подскажите как можно программно (или руками в редакторах) избавится от царапин.
В тегах указан python, так как я использую в основном этот язык и в его рамках уже пытался, с помощью пакета FFT (Фурье преобразования) обработать.
но такой подход ничего хорошего не дал.

saveimg.ru/show-image.php?id=10653485e8a88b4c6a76e...
  • Вопрос задан
  • 594 просмотра
Пригласить эксперта
Ответы на вопрос 1
Mrrl
@Mrrl
Заводчик кардиганов
Если времени не жалко, то можно попробовать так:
- берём все пары точек, находящихся на разных сторонах квадрата
- каждую такую пару соединяем отрезком, и считаем среднюю яркость на нём (это примерно то же, что и преобразование Хафа, только более специализировано для задачи. И гораздо дольше)
- получается функция от двух переменных. Ищем её максимум - это самая яркая царапина.
- просматриваем параллельные прямые в окрестности, ищем ширину пика (ширина царапины)
- заменяем точки на найденной царапине линейной интерполяцией ближайших точек, лежащих за её пределами. Или просто помечаем точки полосы как некорректные, и идём дальше.
- убираем этот пик на двумерной функции, переходим к следующему максимуму.
- после того, как удалили 10 (или 50, или 100) царапин, показываем картинку, и спрашиваем, продолжать ли.
- если продолжать - пересчитываем функцию заново.
Основным вопросом будет "как считать ширину пика". Я не знаю, надо смотреть конкретные графики.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы