3D Visualizer

Inspecciona nubes de puntos, mallas e imágenes de profundidad con vistas 3D interactivas, controles de cámara, mediciones, selecciones y exportación a través de MCP.

Documentación

3D Visualizer

Visualiza, compara e inspecciona nubes de puntos, mallas, splats gaussianos, mapas de profundidad e imágenes de disparidad en tu editor o navegador — con Rust y WebAssembly realizando la decodificación pesada, de modo que archivos con millones de puntos se abren en segundos.

Depth image converted to a point cloud

Destacados

  • Abre grandes nubes de puntos rápidamente, incluidos archivos con millones de puntos
  • Decodifica los formatos exigentes en Rust/WebAssembly — LAS, LAZ, E57 y TIFF — junto con núcleos geométricos en Rust para modelos de cámara y registro de escaneos
  • Compara múltiples nubes de puntos en una sola vista y actívalas o desactívalas de forma independiente
  • Convierte imágenes de profundidad y disparidad en nubes de puntos
  • Renderiza reconstrucciones de splats gaussianos como splats ordenados o nubes de puntos centrales
  • Inspecciona mallas como superficies, wireframes, puntos y normales
  • Usa Eye-Dome Lighting y corrección de brillo para una geometría sin color más clara
  • Mide distancias y ajusta cámara, centro de rotación y parámetros de vista
  • Usa el visor compartido en el sitio web
  • Prueba el paquete Python local y visor de línea de comandos para archivos 3D, arreglos NumPy/PyTorch y notebooks locales en línea (uv add 3d-visualizer)
  • Conecta agentes de IA a través del servidor MCP local para abrir escenas, controlar la cámara e inspeccionar capturas de pantalla renderizadas

Formatos compatibles

TipoFormatos
Nubes de puntosPLY, XYZ, XYZN, XYZRGB, PCD, PTS, NPY, LAS, LAZ, E57, KITTI BIN, Stonex X3A/X3R (experimental)
MallasPLY, OBJ, STL, OFF, GLTF, GLB, FBX, DAE (Collada), 3DS
Splats gaussianos3DGS PLY, SPZ, SPLAT, KSPLAT, SOG
Imágenes de profundidad/disparidadTIFF, PNG, PFM, NPY, NPZ
Poses corporales 3DDatos de pose JSON (experimental)
Perfiles de cámaraDatos de pose JSON (experimental)

Se admiten la reproducción de animaciones de modelos y la carga de URL remotas; consulta detalles de modelos y archivos remotos.

Debido a que .bin y .json son extensiones genéricas, ninguna se abre con el 3D Visualizer de forma predeterminada. Para KITTI BIN, usa Abrir con... o haz clic derecho y elige Abrir con 3D Visualizer. Para una pose JSON compatible, haz clic derecho y elige Cargar JSON como pose 3D.

Características

De Profundidad y Disparidad a Nube de Puntos

Convierte imágenes de profundidad o disparidad en nubes de puntos. La configuración de proyección incluye fx, fy, cx, cy, modelos de distorsión de cámara, escala y sesgo de profundidad mono, escala PNG int16 y desplazamiento de disparidad.

Eye-Dome Lighting

Usa Eye-Dome Lighting para mejorar la percepción de profundidad, especialmente en nubes de puntos sin color.

Eye-Dome Lighting

Múltiples Nubes de Puntos

Carga múltiples nubes de puntos en la misma vista, actívalas o desactívalas de forma independiente y cambia entre ellas con Shift-clic.

Multiple point clouds

Inspección de Mallas

Inspecciona archivos de malla con controles para superficie, wireframe, puntos y normales. Esto es útil al verificar geometría, topología o resultados de reconstrucción exportados sin salir del editor.

Splatting Gaussiano

Abre reconstrucciones de 3D Gaussian Splatting (3DGS PLY, SPZ, SPLAT, KSPLAT, SOG) y renderízalas como splats ordenados reales a través de Spark, o como una nube de puntos de los centros gaussianos con colores derivados de los coeficientes de armónicos esféricos. Cambia por archivo con el botón ✨ Splats en el panel de Archivos. La medición y la selección siguen funcionando sobre los centros gaussianos en modo splat. Los gaussianos de fondo sobredimensionados se pueden reducir con el control logarítmico Tamaño máximo de splat, mientras que colorear los puntos centrales por el campo escalar opacity en modo Puntos ayuda a detectar elementos flotantes.

Atributos de Nubes de Puntos

Los archivos de nubes de puntos pueden incluir posiciones, colores RGB, normales y campos escalares. El visor usa posiciones para la geometría, valores RGB originales cuando están disponibles, normales para inspección, y campos de intensidad/reflectividad para coloreado escalar opcional. Los nombres de propiedades reconocidos son x/y/z, red/green/blue, nx/ny/nz y intensity/reflectivity/reflectance/remission. Cualquier otra propiedad PLY numérica por vértice (por ejemplo, confidence, error, curvature) también aparece en el menú desplegable de Color para coloreado con mapa de colores Viridis o escala de grises. Los atributos LAS/LAZ como clasificación, retornos, ángulo de escaneo y tiempo GPS se exponen a través de los mismos controles de color de campo escalar. Los contenedores E57 cargan cada escaneo como una entrada separada e independientemente visible.

Herramientas de Medición de Distancia y Manipulación de Cámara

Construye múltiples rutas de medición con Shift-doble clic. Consulta la configuración de controles para opciones.

Grabación de Cámara

Crea rutas de cámara suaves a partir de fotogramas clave y expórtalas como grabaciones de video configurables.

Navegación

Doble clic en un punto para cambiar el centro de rotación. Esto permite una navegación fácil con un mouse o un trackpad. También puedes ingresar manualmente la posición de la cámara, el centro de rotación y el ángulo de vista.

Renderizado Consciente del Rendimiento

El visor muestra la tasa de fotogramas actual. Cuando la nube de puntos no se mueve, no se generan más fotogramas, lo que ayuda a reducir el consumo de energía.

Opciones de estructura de archivos NPY

  • Como imagen de profundidad: [X,Y]
  • Como nube de puntos: [...,3] con los tres valores X,Y,Z

Solicitudes de funciones y problemas

Si tienes un flujo de trabajo que se beneficiaría de nuevas funciones o formatos de archivo, abre un problema en el repositorio de GitHub. Los archivos de ejemplo son especialmente útiles al agregar soporte para nuevos formatos.

Hoja de ruta

  • Agregar soporte para más formatos de archivo
  • Mejorar el soporte de conjuntos de datos con imágenes de ejemplo de Middlebury stereo y ETH3D
  • Usar archivos de calibración junto a imágenes de profundidad automáticamente cuando estén disponibles (se necesitan archivos de ejemplo)
  • Aceptar archivos de poses corporales 3D (se necesitan archivos de ejemplo)

Enlaces