Thera: увеличение изображений любого размера, сглаживание, инструменты с открытым исходным кодом

Общее введение

Thera - это инструмент сверхразрешения изображений с открытым исходным кодом, разработанный командой из ETH Zurich и Цюрихского университета. Он позволяет увеличивать изображения низкого разрешения до произвольных масштабов, таких как 2x, 3,14x или даже нецелых кратных, без зазубрин и размытия. В основе Thera лежит использование нейронных тепловых полей и встроенной физической модели наблюдения, которая имитирует реальный процесс получения изображений, что позволяет добиться натуралистичной детализации изображений. Инструмент находится в свободном доступе на GitHub, и любой желающий может скачать код или использовать предварительно обученную модель.

Thera:任意尺寸图像放大、去锯齿的开源工具

Адрес для демонстрации: https://huggingface.co/spaces/prs-eth/thera

 

Список функций

  • Поддержка произвольного увеличения шкалы: вы можете свободно устанавливать увеличение, не ограничиваясь целыми числами.
  • Эффект отсутствия зазубрин: устраняет зазубрины и искажения при усилении благодаря технологии Neural Thermal Field.
  • Встроенная модель физического наблюдения: имитирует реальный процесс съемки для повышения естественности изображения.
  • Поддержка открытого исходного кода: пользователи могут изменять код или адаптировать его под свои нужды.
  • Предоставляет предварительно обученные модели: включает несколько вариантов магистральных сетей EDSR и RDN.
  • Кроссплатформенная работа: на базе Python 3.10, поддерживает Linux-системы и графические процессоры NVIDIA.
  • Поддержка локальных демонстраций: загружайте изображения и обрабатывайте их в режиме реального времени через интерфейс Gradio.

 

Использование помощи

Использование Thera состоит из двух частей: установка и эксплуатация. Ниже подробно описаны шаги, которые помогут вам быстро приступить к работе.

Процесс установки

Для работы Thera требуется Linux, Python 3.10 и графический процессор NVIDIA. Установка выполняется следующим образом:

  1. Создание среды
    Создайте среду Python 3.10 с помощью Conda и активируйте ее:
conda create -n thera python=3.10
conda activate thera
  1. Код загрузки
    Клонируйте проект Thera с GitHub:
git clone https://github.com/prs-eth/thera.git
cd thera
  1. Установка зависимостей
    Установите необходимые библиотеки с помощью pip:
pip install --upgrade pip
pip install -r requirements.txt
  1. Загрузите предварительно обученную модель
    Thera предлагает множество предварительно обученных моделей, таких как thera-rdn-pro.pklВы можете загрузить его с сайта Hugging Face или Google Drive. Вы можете загрузить его с Hugging Face или Google Drive. Ссылка находится ниже:

После завершения установки Thera готова к работе. Если у вас возникнут проблемы, вы можете использовать python run_eval.py -h Просмотр Справка.

рабочий процесс

Основная функция Thera - увеличение изображения. Вот точные шаги:

  1. Подготовка входного изображения
    Поместите изображение, которое нужно увеличить, в папку, например data/test_imagesОн поддерживает PNG, JPEG и другие форматы.
  2. Запуск суперразрешения
    Обработайте изображение, вводя команды в терминале:
./super_resolve.py input.png output.png --scale 3.14 --checkpoint thera-rdn-pro.pkl
  • input.png входное изображение.
  • output.png выходное изображение.
  • --scale Установите увеличение, например 3,14.
  • --checkpoint Указывает путь к предварительно обученной модели.
  1. пакетный файл
    Если вам нужно обработать несколько изображений, вы можете использовать run_eval.py::
python run_eval.py --checkpoint thera-rdn-pro.pkl --data-dir data --eval-sets test_images

Вывод сохраняется в файле outputs папка.

Функциональное управление

Изюминкой Thera являются произвольные масштабы и несглаженные эффекты. Вот подробное описание:

  • Увеличение в любом масштабе
    Вы можете установить любое увеличение, например --scale 2.5 возможно --scale 3.14Это более гибкий инструмент, чем традиционные инструменты, позволяющие выбирать только фиксированное количество раз. Это более гибкий инструмент, чем традиционные инструменты, которые позволяют выбрать только фиксированное увеличение. Например, при увеличении до 3,14x команда выглядит следующим образом:
./super_resolve.py input.png output.png --scale 3.14 --checkpoint thera-rdn-pro.pkl
  • эффект отсутствия зазубрин
    Thera обрабатывает края изображения с помощью технологии нейронного теплового поля. Никаких дополнительных настроек не требуется, а увеличение изображения автоматически сохраняет детали и позволяет избежать зазубрин. Например, при увеличении изображения текста края остаются четкими.
  • Модель физического наблюдения
    Эта функция встроена в модель и имитирует реальный процесс получения изображения. Вам не придется настраивать параметры, Thera автоматически оптимизирует выходной сигнал, чтобы сделать изображение более реалистичным.

Локальная демо-версия

Чтобы получить более интуитивный опыт работы с Thera, запустите демо-версию Gradio:

  1. Клонирование демонстрационного кода
git clone https://huggingface.co/spaces/prs-eth/thera thera-demo
cd thera-demo
  1. Установка зависимостей
pip install -r requirements.txt
  1. Демонстрация стартапа
python app.py

Откройте браузер и посетите http://localhost:7860. Вы можете загрузить изображение на веб-страницу, настроить увеличение и увидеть эффект в режиме реального времени.

Рекомендации по отладке

Эти параметры XLA можно использовать при возникновении проблем с производительностью:

  • Отключите предварительное распределение видеопамяти:XLA_PYTHON_CLIENT_PREALLOCATE=false
  • Отключите JIT-отладку:JAX_DISABLE_JIT=1

Выполнив эти действия, вы сможете обработать любое изображение с помощью Thera. Она проста в использовании и дает отличные результаты.

 

сценарий применения

  1. Обработка изображений дистанционного зондирования
    Thera может увеличивать изображения, сделанные спутниками или беспилотниками. Исследователи могут использовать его для анализа деталей местности, например, для отслеживания изменений в лесном покрове.
  2. Улучшение медицинских изображений
    Thera улучшает разрешение рентгеновских или магнитно-резонансных снимков. С его помощью врачи могут увидеть более тонкие поражения и повысить эффективность диагностики.
  3. Реставрация цифрового искусства
    Художники могут использовать Thera для увеличения работ с низким разрешением или старых фотографий. Например, при увеличении масштаба размытого наброска можно получить больше деталей.

 

QA

  1. Поддерживает ли Thera операционную систему Windows?
    В настоящее время поддерживается только Linux, так как он зависит от графических процессоров NVIDIA и специфического окружения. Пользователи Windows могут запускать его на виртуальной машине.
  2. Есть ли предел увеличения?
    Фиксированного верхнего предела не существует. Однако при слишком большом увеличении (например, 10x или более) эффект может быть ухудшен из-за недостатка информации в исходном изображении.
  3. Когда будут выпущены коды для обучения?
    Официально код обучения будет выпущен в ближайшее время, время будет определено. Вы можете следить за обновлениями на странице GitHub.
© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...