Масштабирование фрактального изображения с помощью Python

Я нахожусь в ситуации, когда предоставляются изображения с относительно низким разрешением (через API изображения с более высоким разрешением недоступны), а необходимо создавать изображения с высоким разрешением.

Я просмотрел PIL, и он отлично подходит практически для всего... Кроме масштабирование изображений.

Он имеет общие алгоритмы изменения размера:

  • Ближайший сосед
  • Билинейный
  • Бикубический
  • сглаживание

Я хотел бы использовать Fractal Resizing (согласно сообщению Джеффа об ужасах кодирования), но, увы, PIL не поддерживает такое изменение размера.

Дальнейшие поиски в Google также не дали альтернативных библиотек для изменения размера фрактального изображения.

Существует ли такая вещь или мне действительно нужно пристегнуться и написать свой собственный алгоритм изменения размера фрактала?

Я не эксперт, но с моей нынешней точки зрения это выглядит как довольно крутая кривая обучения :(

Если такой библиотеки не существует, может быть, у вас есть совет, где узнать об алгоритмах фрактального сжатия?


person Jiaaro    schedule 17.11.2009    source источник


Ответы (3)



Масштабирование изображения на основе фракталов по-прежнему весьма необычно и еще не устоялось на одном признанном наилучшем алгоритме. Боюсь, вы пока не найдете его в стандартных библиотеках обработки изображений.

Это также не всегда предпочтительнее бикубического. Он может иметь артефакты, которые нежелательны для некоторых видов изображений. Для меня пример изображения Джеффа выглядит немного странно и неестественно вокруг острых краев, таких как правая сторона носа. Лучше для некоторых значений «лучше», конечно, но я бы не стал применять это ко всем своим изображениям.

(Это относится и к другим «продвинутым» методам масштабирования, включая более известный и широко применяемый метод Ланцоша/Синка.)

person bobince    schedule 17.11.2009

Ознакомьтесь с этим решением с использованием Residual Dense Networks: https://github.com/idealo/image-super-resolution

Хорошая документация и довольно простая в реализации. У них даже есть сборки докеров и блокноты для совместной работы с Google. См. документацию.

person Createdd    schedule 21.01.2021