Thera: herramientas de código abierto para la ampliación y el suavizado de imágenes de cualquier tamaño

Introducción general

Thera es una herramienta de código abierto para la superresolución de imágenes desarrollada por un equipo de la ETH de Zúrich y la Universidad de Zúrich. Puede ampliar imágenes de baja resolución a escalas arbitrarias, como 2x, 3,14x o incluso múltiplos no enteros, sin dentelladas ni desenfoques. El núcleo de Thera es el uso de campos de calor neuronales y un modelo de observación física incorporado que imita el proceso real de obtención de imágenes, lo que permite obtener un detalle de imagen naturalista. La herramienta está disponible gratuitamente en GitHub, y cualquiera puede descargar el código o utilizar el modelo preentrenado.

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

Dirección de demostración: https://huggingface.co/spaces/prs-eth/thera

 

Lista de funciones

  • Admite aumentos de escala arbitrarios: puede establecer libremente los aumentos, sin limitarse a números enteros.
  • Efecto sin dentelladas: elimina las dentelladas y la distorsión durante la amplificación gracias a la tecnología Neural Thermal Field.
  • Modelo de observación física incorporado: simula el proceso de imagen real para mejorar la naturalidad de la imagen.
  • Soporte de código abierto: los usuarios pueden modificar el código o adaptarlo a sus necesidades.
  • Proporciona modelos preentrenados: incluye múltiples variantes de redes troncales EDSR y RDN.
  • Funcionamiento multiplataforma: basado en Python 3.10, es compatible con sistemas Linux y GPU NVIDIA.
  • Soporte de demostración local: carga imágenes y procésalas en tiempo real a través de la interfaz de Gradio.

 

Utilizar la ayuda

El uso de Thera se divide en dos partes: instalación y funcionamiento. A continuación se detallan los pasos necesarios para que pueda empezar a utilizarlo rápidamente.

Proceso de instalación

Thera requiere Linux, Python 3.10 y una GPU NVIDIA. Los pasos de instalación son los siguientes:

  1. Creación del entorno
    Crea un entorno Python 3.10 con Conda y actívalo:
conda create -n thera python=3.10
conda activate thera
  1. Descargar código
    Clona el proyecto Thera de GitHub:
git clone https://github.com/prs-eth/thera.git
cd thera
  1. Instalación de dependencias
    Instale las bibliotecas necesarias con pip:
pip install --upgrade pip
pip install -r requirements.txt
  1. Descargar modelo preentrenado
    Thera ofrece una variedad de modelos preentrenados como thera-rdn-pro.pklPuedes descargarlo de Hugging Face o Google Drive. Puedes descargarlo desde Hugging Face o Google Drive. El enlace está más abajo:

Una vez completada la instalación, Thera está listo para funcionar. Si tiene problemas, puede utilizar la función python run_eval.py -h Viendo Ayuda.

flujo de trabajo

La función principal de Thera es ampliar imágenes. He aquí los pasos exactos:

  1. Preparación de la imagen de entrada
    Coloque la imagen que desea ampliar en una carpeta como data/test_imagesAdmite PNG, JPEG y otros formatos.
  2. Ejecutar Superresolución
    Procesa la imagen introduciendo comandos en el terminal:
./super_resolve.py input.png output.png --scale 3.14 --checkpoint thera-rdn-pro.pkl
  • input.png es la imagen de entrada.
  • output.png es la imagen de salida.
  • --scale Ajuste el aumento, por ejemplo, 3,14.
  • --checkpoint Especifica la ruta del modelo preentrenado.
  1. archivo por lotes
    Si desea procesar varias imágenes, puede utilizar la función run_eval.py::
python run_eval.py --checkpoint thera-rdn-pro.pkl --data-dir data --eval-sets test_images

La salida se guarda en el archivo outputs carpeta.

Función destacada Operación

Lo más destacado de Thera son las escalas arbitrarias y los efectos no suavizados. He aquí una descripción detallada:

  • Zoom a cualquier escala
    Puede establecer cualquier aumento como --scale 2.5 tal vez --scale 3.14Esto es más flexible que las herramientas tradicionales que sólo permiten seleccionar un número fijo de aumentos. Esto es más flexible que la herramienta tradicional que sólo permite seleccionar un aumento fijo. Por ejemplo, al ampliar a 3,14x, el comando es:
./super_resolve.py input.png output.png --scale 3.14 --checkpoint thera-rdn-pro.pkl
  • efecto no dentado
    Thera procesa los bordes de la imagen con tecnología de campo térmico neural. No requiere ajustes adicionales, y al ampliar la imagen se conservan automáticamente los detalles y se evitan los dentellados. Por ejemplo, al ampliar una imagen de texto, los bordes se mantienen nítidos.
  • Modelo de observación física
    Esta función está integrada en el modelo y simula el proceso real de obtención de imágenes. No tiene que ajustar los parámetros, Thera optimizará automáticamente la salida para que la imagen sea más realista.

Versión de demostración local

Para una experiencia más intuitiva con Thera, ejecute la demo de Gradio:

  1. Clonación del código de demostración
git clone https://huggingface.co/spaces/prs-eth/thera thera-demo
cd thera-demo
  1. Instalación de dependencias
pip install -r requirements.txt
  1. Demostración
python app.py

Abra su navegador y visite http://localhost:7860. Puede cargar una imagen en la página web, ajustar la ampliación y ver el efecto en tiempo real.

Recomendaciones de depuración

Estos parámetros XLA pueden utilizarse en caso de problemas de rendimiento:

  • Desactiva la preasignación de memoria de vídeo:XLA_PYTHON_CLIENT_PREALLOCATE=false
  • Desactive la depuración JIT:JAX_DISABLE_JIT=1

Con estos pasos, puede procesar cualquier imagen con Thera. Es fácil de usar y ofrece resultados excelentes.

 

escenario de aplicación

  1. Tratamiento de imágenes de teledetección
    Thera puede ampliar imágenes tomadas por satélites o drones. Los investigadores pueden utilizarlo para analizar detalles del terreno, por ejemplo para controlar los cambios en la cubierta forestal.
  2. Mejora de imágenes médicas
    Thera mejora la resolución de las imágenes de rayos X o RM. Los médicos pueden utilizarlo para ver lesiones más sutiles y mejorar la eficacia diagnóstica.
  3. Restauración de arte digital
    Los artistas pueden utilizar Thera para ampliar obras de baja resolución o fotografías antiguas. Al ampliar un boceto borroso, por ejemplo, se obtienen más detalles.

 

CONTROL DE CALIDAD

  1. ¿Es Thera compatible con Windows?
    Actualmente sólo es compatible con Linux, ya que depende de las GPU NVIDIA y de entornos específicos.Los usuarios de Windows pueden ejecutarlo en una máquina virtual.
  2. ¿Existe un límite de aumento?
    No existe un límite superior fijo. Sin embargo, si la ampliación es demasiado alta (por ejemplo, 10x o más), el efecto puede degradarse debido a la insuficiente información de la imagen original.
  3. ¿Cuándo se publicarán los códigos de formación?
    Oficialmente, el código de formación se publicará en breve, en un momento aún por determinar. Puedes seguir la página de GitHub para estar al día.
© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...