Pull to refresh

Comments 19

Свободные нейросетевые инструменты GFPGAN и Real-ESRGAN радикально решают проблему восстановления резкости изображения, как минимум в «художественной» области.

Это вообще не повод делать из себя "дурачка", который ничего не знает и не умеет. Или повод?

Я не вижу сферы применения описанного в этой статье метода повышения резкости изображения. Если для восстановления фотографии, то нейросетевые инструменты дадут результат, сравнимый с оригиналом, ну, может, ещё чуть приукрасят. Если для использования в какой-нибудь автоматизированной системе обработки изображений, то, раз уж упомянут «специальный математический аппарат», хотелось бы увидеть формулы, по которым выполняются преобразования.

То есть повод. Ну каждому своё. Я вот не стремлюсь быть "дурачком". Почему? Упомянутые нейросети не с неба упали, их написали не "дурачки". А начинали они с простых и очень понятных вещей, типа этой. Формулы же можете вывести из описания итерации сами, по сути это решение нелинейного уравнения методом Ньютона для изображений.

Предобработка перед обработкой нейросетями для лучшего результата

Как раз ищу какие-то инструменты, чтобы улучшить старые отсканированные фото, побробовал Real-ESRGAN - он просто не работает, то есть он увеличивает размер фото но это всё что он делает, фото получается с замыленными частями, экспозицию увеличивает так, что детали пропадают местами, короче пользы от него 0. А с увеличением размера фотошоп справляется на порядок лучше.

По поводу фотошопа: Недавно наткнулся на исследовательскую работу, оформленную кодом: https://github.com/ImageProcessing-ElectronicPublications/imgavir . Имеется и "инструмент" (CLI). Хотелось бы иметь сравнение таки с фотошопом, но последнего никогда не имел, да и не планирую (ось "слегка" не та). Как бы провести сравнение?

Нейронка неизбежно добавит то, чего не было в оригинале

А если Filters > Enhance > Sharpen (Unsharp Mask) filter? Так хуже результат?

Вы получите первую итерацию из списка. Первая итерация менее плоха, чем пятая?

Интересненько. Выводы для себя сделал такие: blur разрушает мелкие детали (меньше радиуса размытия), и восстановить их уже не получиться. Предлженный метод хорош (восстановил без паразитных артефактов), но чуда не происходит. Спасибо за эксперимент.

Но! Всё "слегка" хуже, ежели неизвестен размер фильтра размытия (не удалось угадать), или размытие вовсе не Гауссово, а смаз, например.

UFO landed and left these words here

???

Не понял, к чему "это".

А если бы была бесконечная разрядность цвета, можно восставновить полностью оригинал?

Да кто же его знает. Теоретически это решение нелинейного уравнения методом Ньютона для изображений вида:

B = blur(I, r)

где B - имеющееся изображение, r - предполагаемый радиус размытия, blur - предполагаемый метод размытия, а I - искомое изображение.

Сразу видим два "ньюанса": r и blur - предполагаемые, а не известные.

А так по Ньютону в большинстве случаев решение сходится, но не всегда. Но дробные значения яркостей (как минимум float) потребуют прилично так памяти. И надо же не одно изображение в таком виде хранить: размытое (Bk), "серую разность" (Gk), предыдущую итерацию (Ik-1) и текущую итерацию (Ik).

Лет 15 назад мы на форуме обсуждали тему со свёрткой изображения с некоей матрицей для восстановления исходного изображения. Тогда родилась идея - н-р идентифицировать какой-то точечный объект на снимке, который превратился в пятно от нерезкости либо полоску от шевелёнки, и уже по нему составить мвтрицу для свёртки. Шевелёнка была особенно актуальна во времена плёнки и плохом освещении, т.е. фонари в кадре, звёзды...

Sign up to leave a comment.

Articles