MIDI-3D: herramienta de código abierto para generar rápidamente escenas 3D multiobjeto a partir de una sola imagen

Introducción general

MIDI-3D es un proyecto de código abierto desarrollado por el equipo VAST-AI-Research que genera rápidamente escenas 3D con múltiples objetos a partir de una sola imagen para desarrolladores, investigadores y creadores. La herramienta se basa en técnicas de modelado de difusión multiinstancia, que combinan la inteligencia artificial y el modelado 3D para generar simultáneamente múltiples objetos 3D de alta calidad y mantener sus relaciones espaciales.MIDI-3D se presentó en CVPR 2025, y el código, los pesos de los modelos y una demostración en línea son de código abierto. Admite tanto imágenes realistas como de dibujos animados, con tiempos de generación de hasta 40 segundos y archivos de salida de hasta 100 MB. .glb que puede editarse con otros programas. El proyecto pretende simplificar la creación de escenas 3D y facilitar a más gente la creación de activos digitales.

MIDI-3D:从单张图片快速生成多物体3D场景的开源工具

 

Lista de funciones

  • Genere escenas en 3D que contengan múltiples objetos a partir de una sola imagen, admitiendo tanto estilos realistas como de dibujos animados.
  • Proporciona una función de segmentación de imágenes para identificar y etiquetar automáticamente objetos en las fotografías.
  • Genere simultáneamente múltiples instancias 3D separables que se combinan automáticamente en escenas completas.
  • Admite tanto el funcionamiento a través de la línea de comandos como la presentación web interactiva.
  • Descarga automáticamente los pesos del modelo preentrenado en local para una rápida puesta en marcha.
  • exportaciones .glb Archivos de modelos 3D en un formato que puede utilizarse para su posterior edición o importarse a otro software.
  • El proceso de generación es eficaz y no requiere modelado objeto por objeto ni una larga optimización.

 

Utilizar la ayuda

El uso de MIDI-3D se divide en dos partes: instalación y funcionamiento. A continuación se detallan los pasos para ayudarle a empezar desde cero.

Proceso de instalación

  1. Preparación de entornos de hardware y software
    Necesitarás un ordenador compatible con CUDA, ya que MIDI-3D depende de la aceleración de la GPU. Se recomienda una GPU NVIDIA con al menos 6 GB de memoria de vídeo. Asegúrate de que Python 3.10 o superior está instalado.
  2. Crear un entorno virtual (opcional)
    Para evitar conflictos, puedes crear un nuevo entorno Conda:
conda create -n midi python=3.10
conda activate midi
  1. Instalación de PyTorch
    Instala PyTorch de acuerdo con la versión CUDA de tu GPU. Por ejemplo, con CUDA 11.8 el comando es:
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118

Si la versión es diferente, vaya a https://pytorch.org/get-started/locally/ para seleccionar el comando correspondiente.

  1. Descargar el código del proyecto
    Clona el repositorio MIDI-3D ejecutando el siguiente comando en un terminal:
git clone https://github.com/VAST-AI-Research/MIDI-3D.git
cd MIDI-3D
  1. Instalación de dependencias
    Ofertas de proyectos requirements.txt ejecute el siguiente comando para instalar todas las dependencias:
pip install -r requirements.txt
  1. Obtener las ponderaciones de los modelos
    Al ejecutar el script, MIDI-3D descarga automáticamente el modelo preentrenado de https://huggingface.co/VAST-AI/MIDI-3D, lo guarda en la carpeta pretrained_weights/MIDI-3D carpeta. Si la red es inestable, también puede descargar y extraer manualmente en esa ruta.

flujo de trabajo

MIDI-3D admite dos formas de uso: línea de comandos y demo interactiva. A continuación se indican los pasos específicos.

operación desde la línea de comandos

  1. Generar gráfico de división
    MIDI-3D requiere una imagen y su correspondiente mapa de segmentación (etiquetado de las áreas del objeto). El mapa de segmentación puede generarse con el script SAM incluido. Por ejemplo, tiene una imagen 04_rgb.pngCorre:
python -m scripts.grounding_sam --image assets/example_data/Cartoon-Style/04_rgb.png --labels "lamp sofa table dog" --output ./segmentation.png
  • --image Especifica la ruta de la imagen de entrada.
  • --labels Introduzca los nombres de los objetos de la imagen, separados por espacios.
  • --output Especifica la ruta donde se guarda el diagrama de segmentación.
    Cuando se ejecuta, genera un segmentation.png Documentación.
  1. Generar escenas 3D
    Para generar una escena 3D con imágenes y mapas divididos, ejecute el siguiente comando:
python -m scripts.inference_midi --rgb assets/example_data/Cartoon-Style/00_rgb.png --seg assets/example_data/Cartoon-Style/00_seg.png --output-dir "./output"
  • --rgb es la ruta original del mapa.
  • --seg es la ruta del gráfico dividido.
  • --output-dir es la ruta de la carpeta de salida.
    La escena 3D generada se guarda como output.glb que suele tardar entre 40 segundos y 1 minuto. Si el objeto está cerca del borde de la imagen, se recomienda añadir el parámetro --do-image-paddingComo:
python -m scripts.inference_midi --rgb 00_rgb.png --seg 00_seg.png --output-dir "./output" --do-image-padding

Presentación interactiva

  1. Demostración
    Ejecute el siguiente comando para iniciar la interfaz de Gradio:
python gradio_demo.py

El sistema abrirá automáticamente el navegador y mostrará la página de operaciones. También puede visitar la demostración en línea en https://huggingface.co/spaces/VAST-AI/MIDI-3D.

  1. Cargar imagen y dividir
    Haga clic en "Imagen de entrada" en la interfaz para cargar una imagen. A continuación, utilice el ratón para seleccionar el área del objeto, el sistema generará automáticamente un mapa de segmentación, que se mostrará en el "Resultado de la segmentación".
  2. Generar escenas 3D
    Haga clic en "Ejecutar segmentación" para confirmar el mapa de segmentación, ajuste los parámetros (como las semillas aleatorias) y, a continuación, haga clic en el botón Generar. Después de unos segundos, la interfaz mostrará el modelo 3D, haga clic para descargarlo. .glb Documentación.

Funciones

  • segmentación de imágenes
    Grounded SAM es una herramienta de preprocesamiento para MIDI-3D que reconoce automáticamente los objetos de una imagen y genera un mapa de segmentación. Puede introducir el nombre del objeto (por ejemplo, "sofá lámpara") o seleccionarlo manualmente en la interfaz interactiva. Admite escenas multiobjeto con gran precisión de segmentación.
  • Generación 3D multiobjeto
    MIDI-3D utiliza el modelado de difusión multiinstancia para generar varios objetos 3D al mismo tiempo y mantener sus relaciones espaciales. Por ejemplo, una imagen de un salón puede generar un modelo 3D de un sofá, una mesa y una lámpara, componiendo directamente la escena completa. Es más rápido que el método tradicional de generación objeto por objeto.
  • resultados del modelo
    generado .glb Los archivos son compatibles con Blender, Unity y otros programas. Puede importar archivos, ajustar materiales, luces o añadir animaciones para satisfacer diferentes necesidades.

Recursos complementarios

  • Vídeos didácticos
    Se proporciona un vídeo explicativo oficial (que se puede ver en https://github.com/VAST-AI-Research/MIDI-3D), en el que se muestra en detalle el proceso, desde la carga de una imagen hasta la generación de una escena 3D.
  • bibliografía
    Para más detalles técnicos, puede leer el documento: https://arxiv.org/abs/2412.03558.

Preguntas frecuentes

  • Si la generación falla, compruebe si la GPU lo soporta, o asegúrese de que el mapa de segmentación es correcto.
  • Si faltan detalles del objeto, pruebe a utilizar una imagen de mayor resolución.

 

escenario de aplicación

  1. desarrollo de juegos
    Los desarrolladores pueden utilizar MIDI-3D para generar escenas 3D a partir de bocetos. Por ejemplo, una imagen de un bosque puede convertirse rápidamente en un modelo 3D de los árboles y el terreno para importarlo a Unity.
  2. investigación académica
    Los investigadores pueden utilizarlo para comprobar la eficacia de los modelos de difusión multiinstancia. Aunque el modelo se entrena solo con datos sintéticos, también se adapta bien a imágenes reales y de dibujos animados.
  3. arte digital
    Los artistas pueden generar escenas animadas en 3D a partir de dibujos animados para producir rápidamente obras creativas y ahorrar tiempo de modelado.

 

CONTROL DE CALIDAD

  1. ¿Qué tipos de imágenes admite MIDI-3D?
    adyuvante .png responder cantando .jpg Formato. Se recomienda utilizar imágenes claras para obtener mejores resultados.
  2. ¿Qué configuración de hardware se necesita?
    Requiere una GPU NVIDIA con al menos 6 GB de memoria de vídeo para ejecutarse en un entorno CUDA; la CPU no es suficiente.
  3. ¿Está disponible comercialmente el modelo generado?
    Sí, el proyecto utiliza la licencia MIT, que genera el archivo .glb Los documentos pueden utilizarse libremente con fines comerciales, siempre que se cumplan los requisitos de licencia.
© declaración de copyright

Artículos relacionados

Sin comentarios

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