Guía del Usuario de Imervue
Una estación de trabajo de imágenes con aceleración GPU que incluye cuatro pestañas de nivel superior. La mayor parte de esta guía está organizada en torno a esas cuatro secciones.
Pestaña |
Función |
|---|---|
Imervue |
Examinar, visualizar, organizar, buscar y procesar por lotes su biblioteca de imágenes. Consulte Pestaña Imervue — Visor y biblioteca de imágenes. |
Modify |
Pipeline de revelado no destructivo — controles deslizantes, curvas, LUTs, máscaras, retoque, multi-imagen. Consulte Pestaña Modify — Revelado no destructivo. |
Paint |
Estudio completo de pintura raster con pinceles, capas, animación, herramientas de manga e I/O de PSD. Consulte Pestaña Paint — Editor raster completo. |
Puppet |
Animador de marionetas 2D con rig construido desde cero — mallas, deformadores, parámetros, movimientos, físicas. Consulte Pestaña Puppet — Animación 2D con rig. |
Las secciones Primeros pasos, Referencia, Sistema de plugins y Servidor MCP que siguen son transversales y se aplican a las cuatro pestañas.
Primeros pasos
Cuando abra Imervue, verá tres áreas:
+------------+----------------------+----------+
| Árbol de | | Barra |
| carpetas | Visor de imágenes | EXIF |
| | | |
+------------+----------------------+----------+
Izquierda: Árbol de carpetas. Haga clic en una carpeta para examinar las imágenes que contiene.
Centro: Área de visualización. Muestra todas las imágenes como una cuadrícula de miniaturas.
Derecha: Barra lateral EXIF. Muestra la información de captura de la imagen seleccionada.
Abrir imágenes
Método |
Procedimiento |
|---|---|
Abrir carpeta |
|
Abrir una sola imagen |
|
Arrastrar y soltar |
Arrastre una imagen o carpeta directamente a la ventana |
Abrir desde el Explorador |
Clic derecho en una imagen > |
Archivos recientes |
|
Formatos compatibles
Estándar: PNG, JPEG, BMP, TIFF, WebP, GIF, APNG, SVG
RAW: CR2 (Canon), NEF (Nikon), ARW (Sony), DNG (Adobe), RAF (Fujifilm), ORF (Olympus)
Explorar imágenes
Modo cuadrícula de miniaturas
Tras abrir una carpeta, todas las imágenes se muestran como miniaturas.
Acción |
Método |
|---|---|
Desplazarse |
Rueda del ratón |
Encuadre (pan) |
Mantenga pulsado el botón central del ratón y arrastre |
Entrar en vista a tamaño completo |
Clic izquierdo en cualquier miniatura |
Cambiar el tamaño de las miniaturas |
Menú |
Densidad de miniaturas |
|
Vista previa al pasar el cursor |
Deje el cursor sobre una miniatura durante 500 ms para ver una vista previa ampliada |
Seleccionar varias imágenes |
Clic izquierdo y arrastrar para dibujar un rectángulo de selección |
Encuadrar con el teclado |
Teclas de flecha; mantenga |
Cada miniatura muestra distintivos de estado: una franja de color en el borde izquierdo (etiqueta de color), un corazón en la esquina superior izquierda (favorito), una estrella en la esquina superior derecha (marcador) y estrellas de valoración en la esquina inferior izquierda. Se dibuja un marcador giratorio para las miniaturas que aún se están cargando.
Modo lista (detalle)
Pulse Ctrl + L para alternar entre la cuadrícula de miniaturas y una vista de lista
ordenable con estas columnas: Vista previa · Etiqueta · Nombre · Resolución · Tamaño · Tipo
· Modificado. Haga doble clic en una fila (o pulse Enter) para entrar en Deep Zoom; pulse
Esc para volver a la lista. Las miniaturas y los metadatos se cargan de forma diferida en
un hilo de trabajo, de modo que las carpetas muy grandes mantienen la capacidad de respuesta.
Modo Deep Zoom
Haga clic en una miniatura para entrar en el modo Deep Zoom y ver imágenes individuales en alta calidad.
Acción |
Método |
|---|---|
Acercar/alejar |
Rueda del ratón o pellizco en el touchpad |
Encuadre |
Mantenga pulsado el botón central del ratón |
Imagen anterior |
|
Imagen siguiente |
|
Salto entre carpetas |
|
Historial atrás/adelante |
|
Saltar a imagen por número |
|
Imagen aleatoria |
|
Ajustar al ancho |
|
Ajustar al alto |
|
Restablecer zoom |
|
Volver a miniaturas |
|
Pantalla completa |
|
Modo cine |
|
Información OSD superpuesta |
|
Vista de píxeles |
|
Modos de color |
|
Vista dividida y lectura a doble página
Muestre dos imágenes una al lado de la otra directamente en la ventana principal sin abrir el diálogo Compare:
Acción |
Atajo |
|---|---|
Vista dividida (dos imágenes) |
|
Doble página (actual + siguiente) |
|
Doble página, derecha a izquierda (manga) |
|
Volver al modo anterior |
|
En el modo de doble página, las teclas de flecha avanzan dos imágenes a la vez. La variante RTL intercambia los dos paneles para que la página 1 aparezca a la derecha.
Ventana multi-monitor
Pulse Ctrl + Shift + M para abrir una segunda ventana sin marco en la pantalla
secundaria que refleja la imagen mostrada en el visor principal. La ventana principal
sigue navegando de forma independiente — útil para exposiciones, flujos de trabajo de
edición en doble pantalla o presentaciones a clientes. Pulse Ctrl + Shift + M de nuevo
para cerrar, o use Esc dentro de la segunda ventana.
Organizar imágenes
Valoración y favoritos
En el modo Deep Zoom puede valorar imágenes rápidamente:
Acción |
Tecla |
|---|---|
Alternar favorito |
|
Valorar 1 – 5 estrellas |
|
Etiquetas de color (F1 – F5)
Indicadores de color independientes basados en banderas, almacenados por separado de la valoración de 1 – 5 estrellas. Útiles para una categorización rápida (p. ej. rojo = candidatos a descartar, verde = seleccionados, azul = pendientes de retoque).
Acción |
Tecla |
|---|---|
Rojo / Amarillo / Verde / Azul / Púrpura |
|
Aplicar a la selección en lote |
Seleccione varias miniaturas y pulse la tecla F correspondiente |
Filtrar por color |
|
La barra de estado muestra un chip de color para la imagen actual. Las miniaturas muestran una franja de color en el borde izquierdo. La vista de lista tiene columnas dedicadas Label y Star Rating que se pueden ordenar — haga clic en cualquier celda de la columna de estrellas para establecer la valoración sin salir de la lista.
Marcadores
Guarde las imágenes usadas con frecuencia como marcadores para acceder rápidamente más tarde.
Acción |
Método |
|---|---|
Añadir / quitar marcador |
Pulse |
Gestionar marcadores |
|
Etiquetas y álbumes
Categorice sus imágenes con etiquetas y álbumes.
Acción |
Método |
|---|---|
Abrir el gestor |
Pulse |
Etiquetar una imagen |
Clic derecho en la imagen > |
Añadir a un álbum |
Clic derecho en la imagen > |
Filtrar por una sola etiqueta / álbum |
|
Filtro multi-etiqueta (AND / OR) |
|
Ordenación y filtrado
Función |
Ubicación en el menú |
|---|---|
Ordenar por nombre |
|
Ordenar por fecha de modificación |
|
Ordenar por tamaño de archivo |
|
Ordenar por resolución |
|
Ascendente / Descendente |
|
Filtrar por extensión |
|
Filtrar por valoración |
|
Filtrar por etiqueta de color |
|
Filtro avanzado |
|
Limpiar filtros |
|
Editar imágenes (Pestaña Modify)
Cambie a la pestaña Modify en la parte superior de la ventana para entrar en el modo
de edición. También puede pulsar E o clic derecho > Modify en el modo Deep Zoom.
+--------+----------------------+------------+
| Banda | | Propiedades|
| de | Lienzo (dibujar) | Pinceles |
| herr. | | Revelado |
+--------+----------------------+------------+
Herramientas de anotación (Panel izquierdo)
Herramienta |
Icono |
Descripción |
|---|---|---|
Seleccionar |
⬚ |
Selecciona anotaciones existentes; arrastrar para mover |
Rectángulo |
▢ |
Dibuja rectángulos |
Elipse |
◯ |
Dibuja elipses o círculos |
Línea |
╱ |
Dibuja líneas rectas |
Flecha |
→ |
Dibuja flechas |
Mano alzada |
✎ |
Dibujo de forma libre |
Texto |
T |
Añade texto a la imagen |
Mosaico |
▦ |
Pixelar una región seleccionada |
Desenfoque |
◌ |
Desenfoque gaussiano de una región seleccionada |
Tip
Pulse Left Arrow / Right Arrow mientras esté en la pestaña Modify para cambiar entre imágenes sin salir del editor.
Tipos de pincel (Panel derecho)
Pincel |
Efecto |
|---|---|
Pluma |
Línea fina estándar, el pincel más común |
Marcador |
Trazos más gruesos y semitransparentes |
Lápiz |
Línea fina, ligeramente difuminada |
Resaltador |
Ancho y muy transparente, como un resaltador real |
Aerosol |
Efecto de puntos dispersos |
Caligrafía |
El grosor del trazo varía según la dirección |
Acuarela |
Efecto suave de bordes húmedos y mezcla |
Carboncillo |
Trazo rugoso y texturizado |
Cera |
Textura cerosa, tipo crayón |
Propiedades de dibujo (Panel derecho)
Propiedad |
Descripción |
|---|---|
Color |
Haga clic en la muestra de color para elegir un color de dibujo |
Grosor del trazo |
Arrastre el deslizador para ajustar el grosor de la línea (1 – 40) |
Opacidad |
Ajuste la transparencia (0 % – 100 %) |
Fuente |
Elija la fuente para la herramienta de texto |
Tamaño de fuente |
Ajuste el tamaño del texto (6 – 200 px) |
Ajustes de imagen (Panel derecho, inferior)
Deslizador |
Función |
|---|---|
Exposición |
Ajusta el brillo general |
Brillo |
Afina las zonas claras y oscuras |
Contraste |
Ajusta la diferencia entre luces y sombras |
Saturación |
Ajusta la intensidad del color |
Balance de blancos — Temperatura |
Desplazamiento cálido/frío (azul → amarillo); útil para luces mixtas o tomas en interiores |
Balance de blancos — Tinte |
Desplazamiento magenta/verde; corrige dominantes fluorescentes |
Sombras |
Levanta o aplasta el detalle en zonas tonales oscuras |
Medios tonos |
Ajusta el rango tonal medio sin afectar a negros y blancos |
Luces |
Recupera luces quemadas o intensifica las zonas brillantes |
Intensidad |
Refuerzo consciente de la saturación — protege los tonos de piel y los colores ya saturados |
Estos ajustes son no destructivos. Cada deslizador escribe en una receta de edición
almacenada por imagen; pulse Reset en cualquier momento para restaurar el original, o
Ctrl + Z para retroceder por los cambios individuales. Las recetas sobreviven a los
reinicios y se pueden exportar / sincronizar mediante el flujo de archivos secundarios XMP
descrito en la sección Metadatos.
Guardar y deshacer
Botón |
Descripción |
|---|---|
Save |
Escribe las anotaciones y ajustes en el archivo original |
Undo |
Deshace la última operación |
Redo |
Rehace una operación deshecha |
Reset |
Borra todos los ajustes de la imagen |
Espacio de trabajo Paint (Pestaña Paint)
La tercera pestaña de nivel superior — Paint — es un espacio de trabajo de pintura
con todas las funciones, con documentos en múltiples pestañas, capas vectoriales y raster,
herramientas de manga, fotogramas de animación e importación/exportación de PSD. Cambie a
ella desde la barra de pestañas o pulse E desde el modo Deep Zoom para enviar la imagen
actual directamente a una nueva pestaña de Paint.
Aspectos destacados de la experiencia de usuario — el espacio de trabajo Paint incluye un cursor de tamaño de pincel con todas las funciones que se escala con el zoom, iconos de cursor distintos por herramienta, un patrón de cuadrícula de transparencia bajo el lienzo, una capa de resaltado para arrastrar y soltar, un asterisco de modificación por pestaña, confirmaciones toast de deshacer/rehacer, un segmento de estado de autoguardado en la barra de estado, y un aviso de recuperación de autoguardado al iniciar que recupera instantáneas de una sesión anterior caída.
Atajos para usuarios avanzados: Tab alterna todos los docks para pintar sin distracciones,
Ctrl+Tab recorre las pestañas, , / . recorren los tipos de pincel, 0–9 ajustan
la opacidad del pincel en pasos del 10 %, Alt+[ / Alt+] recorren la capa activa, y
hacer clic derecho en el lienzo abre un menú rápido de Deshacer / Rehacer / Seleccionar todo
/ Deseleccionar / Ajustar / 100 %.
El dock de color ahora expone una ranura “transparente / sin color” (BG por defecto = transparente), y tanto el relleno como la varita mágica respetan los límites alfa, de modo que los píxeles borrados dejan de filtrarse en un repintado.
+------+----------------------+----------------+
| Bar | | Color · Pincel |
| de | Lienzo (pintar) | Capa · Naveg. |
| herr.| | Material · … |
+------+----------------------+----------------+
Los docks del lado derecho (Color, Brush, Layer, Navigator, biblioteca de Material, History,
Swatch, Reference, Histogram, Animation) están organizados como pestañas en una sola columna,
de modo que el lienzo mantiene la altura visible completa. Arrastre el título de cualquier dock
para reorganizarlo o flotar un panel, después guarde el resultado mediante
Settings > Workspace Layouts….
Paleta de herramientas (Banda izquierda)
Herramienta |
Atajo |
Propósito |
|---|---|---|
Pincel |
|
Pintar con el tipo de pincel activo |
Borrador |
|
Borrado alfa de la capa activa |
Relleno (cubo) |
|
Relleno por inundación con tolerancia / contiguo / muestrear todas las capas |
Cuentagotas |
|
Toma el color de primer plano del lienzo |
Mover |
|
Traslada la capa o selección activa |
Rect / Lazo / Varita / Selección rápida |
|
Herramientas de selección con modos Replace / Add / Subtract / Intersect |
Texto |
|
Editor de texto en línea con fuente / tamaño / negrita / cursiva |
Degradado |
|
Relleno con degradado lineal / radial / angular / diamante |
Desenfoque / Difuminar |
|
Manipulación local de píxeles |
Pluma (Bezier) |
|
Ruta vectorial con edición de anclas / manejadores |
Sello de clonar |
|
Shift+clic establece la fuente, clic estampa con difuminado |
Bocadillo |
|
Bocadillo de cómic / manga con cola automática |
Rectángulo / Elipse / Línea / Polígono |
|
Primitivas de forma vectorial con trazo + relleno |
Recortar |
|
Recorte interactivo con presets de relación de aspecto |
Transformar |
|
Manejadores de transformación libre / escala / rotación / sesgo |
Mano |
|
Encuadre del lienzo arrastrando con el cursor |
Zoom |
|
Clic para acercar, Alt-clic para alejar |
Pinceles
Pincel |
Efecto |
|---|---|
Pluma |
Línea con suavizado nítido, el pincel del día a día |
Marcador / Resaltador |
Trazos anchos y semitransparentes que se acumulan |
Lápiz |
Línea fina de grafito ligeramente texturizada |
Aerosol |
Puntos dispersos controlados por densidad y flujo |
Caligrafía |
El ancho varía con la dirección del trazo |
Acuarela |
Sangrado de bordes húmedos y mezcla suave |
Carboncillo / Cera |
Trazos rugosos texturizados con inclinación por presión |
Cada pincel expone Size / Opacity / Hardness / Density / Blend-mode en el dock Brush y
en la barra Options superior. Use Settings > Pressure Curve… para remapear la
presión de la tableta al ancho o a la opacidad, y Edit > Capture Brush Tip… para
convertir una selección de marquesina en una punta de pincel personalizada.
Capas
El dock Layer ofrece miniaturas, alternancia de visibilidad, renombrado en línea,
arrastrar para reordenar, y el modo de fusión y opacidad de la capa activa. El menú
Layer añade:
New / Vector / Duplicate / Merge Down (
Ctrl + Shift + N/Ctrl + Shift + V/Ctrl + J/Ctrl + E)Máscaras — Add Mask / From Selection / Invert / Apply / Delete (
Ctrl + Shift + Mañade;Ctrl + Alt + Shift + Mañade desde selección)Máscara de recorte — recorta la capa de arriba al alfa actual (
Ctrl + Alt + G)Efectos de capa — Drop Shadow · Outer Glow · Stroke; limpiar efectos
Capa de referencia — fija una capa como fuente del cuentagotas
Capa de 1 bit — alterna la capa activa a una capa de line-art binaria
Dividir capa por color — divide una capa de color plano en una capa por color para facilitar el rellenado con el cubo
Mapa de degradado — submenú de presets (sepia / atardecer / cianotipia …)
Selecciones
Use las herramientas rect / lazo / varita / selección rápida, después el menú Edit >
Stroke Selection… para delinear la marquesina con el pincel actual. Q alterna el
Modo de máscara rápida — pinte con cualquier pincel para refinar el borde de la
selección en rojo, después pulse Q de nuevo para convertirla de vuelta en una marquesina.
Animación
El dock Animation convierte el documento en una tira de fotogramas:
Add Framecaptura el estado actual de las capas en un nuevo fotograma clave.Haga clic en la miniatura de un fotograma para saltar a él.
Onion Skin(menú View) superpone los fotogramas vecinos con baja opacidad.Exporte la tira mediante File > Export pages (CBZ para lectores de cómics, PDF para impresión) o Animation Export para MP4 / GIF.
Filtros
Filter abre un diálogo con vista previa en vivo para cada efecto:
Niveles — deslizadores de negro / gamma / blanco, por canal
Curvas — puntos arrastrables (RGB / R / G / B) con interpolación cúbica monótona
Posterizar — cuantiza el color en N pasos
Umbral — convierte a blanco / negro puros en un punto de corte
Auto Color Balance — neutraliza dominantes mediante grey-world / white-patch
Grano de película — ruido de luminancia con tamaño y cantidad ajustables
Convertir a semitonos — pantalla de puntos al estilo periódico
Ayudas de visualización
Cuadrícula de píxeles (
Ctrl + Shift + ') — superpone una cuadrícula de un píxel con alto zoomAjustar a píxel / bordes — posicionamiento sub-píxel forzado a coordenadas enteras
Onion Skin — superposición de fotogramas vecinos para animación
Guías de sangrado — guías de sangrado y zona segura para impresión
Rotar lienzo (
Ctrl + Shift + H) — rotación de vista sin rasterizar
Entrada/Salida de archivos
Open PSD… (
Ctrl + O) y Save as PSD… (Ctrl + S) — ida y vuelta a archivos Photoshop con capas, máscaras, modos de fusión y efectos de capaExport image… — aplana y guarda como PNG / JPEG / WebP / BMP / TIFF
Export pages → CBZ / → PDF — exportación de documentos multi-fotograma para cómics
Importar / Exportar presets de pincel, Importar paleta — compartir recursos entre instalaciones
Instantáneas de autoguardado — instantáneas periódicas en segundo plano con restauración de la última desde el menú File
Diseños de espacio de trabajo
Settings > Workspace Layouts… guarda la disposición de los docks, el estado de las
opciones de herramienta y los paneles activos bajo un nombre, después alterna entre ellos con
un solo clic — por ejemplo, un diseño “Dibujo” con los docks Brush + Color destacados y un
diseño “Composición” con los docks Layer + History expandidos.
Espacio de trabajo Puppet (Pestaña Puppet)
La cuarta pestaña de nivel superior — Puppet — es un sistema de animación 2D con rig de
marionetas construido desde cero. Hace lo que hace Live2D (rigs con deformación de malla,
parámetros, movimientos, físicas, expresiones, grupos de poses, lip-sync, seguimiento por
webcam) pero sin SDK propietario, sin `live2d-py`, y con un formato de archivo
.puppet totalmente abierto.
Note
El tutorial completo de principio a fin — desde una instalación nueva hasta una
retransmisión en directo por OBS o un MP4 renderizado — vive en puppet_guide.md en
la raíz del repositorio (con espejos puppet_guide.zh-TW.md y
puppet_guide.zh-CN.md). Esta sección es la referencia; la guía es el recorrido paso
a paso.
+-----------+----------------------+----------------+
| Barra de | | Dock de |
| herr. | Lienzo GL | parámetros |
| | | |
+-----------+----------------------+ |
| Dock de movimientos |
+---------------------------------------------------+
Flujo de trabajo de principio a fin
Importar un PNG — el botón
Import PNG…de la barra de herramientas ejecutapuppet.auto_mesh.puppet_from_png: cuadrícula triangulada limitada por alfa, un drawable, lista para renderizar.Añadir un deformador —
Add Rotation Deformer(ancla + ángulo) oAdd Warp Deformer(rejilla Bezier de filas × columnas; los vértices fuera de los límites pasan sin cambios).Añadir un parámetro —
Add Parameterañade un deslizador al dock derecho Parameters con id autonombrado (Param1,Param2, …).Establecer claves — arrastre el deslizador a un extremo, edite la forma del deformador en código o mediante edición de malla, pulse Set key. Repita en neutro y en el extremo opuesto. El runtime ahora interpola linealmente los campos del deformador entre claves adyacentes cada vez que se mueve el deslizador.
Guardar —
Save As…escribe el rig + texturas + movimientos + expresiones + físicas en un único zip.puppetque puede compartir o abrir más tarde medianteOpen Puppet….
Pruebe un ejemplo completo
El repositorio incluye una demo totalmente riggeada en
examples/puppet/march_7th.puppet — un rig Cubism Live2D de 307 drawables convertido
en el propio árbol del proyecto. Las texturas y morfos de vértices por parámetro están
horneados en el zip .puppet, de modo que la demo se abre con el requirements.txt
por defecto sin redistribuir el SDK de Cubism.
El rig lleva 203 parámetros estándar de Cubism (ParamAngleX/Y/Z,
ParamEyeLOpen/ROpen, ParamBreath, ParamMouthOpenY, …), por lo que todos los
drivers de entrada estándar (webcam, parpadeo, lip-sync, mirada al cursor) lo controlan
sin configuración por rig. Nueve movimientos en bucle se incluyen en el bundle —
bucles idle de Cubism convertidos por el autor más bucles de gestos de referencia en
los grupos Idle y TapHead.
Abra la pestaña Puppet, haga clic en Open Puppet…, apunte a
march_7th.puppet — la figura aparece centrada. Arrastre cualquier deslizador de
parámetro para controlar una articulación, o haga clic en uno de los movimientos del dock
Motions — un solo clic enlaza el movimiento e inicia la reproducción inmediatamente.
Ejecutar el ejemplo incluido, paso a paso:
Inicie Imervue. Desde el código fuente:
python -m Imervue. Desde la versión empaquetada: ejecute el ejecutable / bundle de aplicaciónImervue. El directorioexamples/se empaqueta tanto en el wheel como en el EXE de Nuitka, de modo que el rig está en disco dondequiera que lo haya instalado.Haga clic en la pestaña Puppet en la parte superior de la ventana.
Barra de herramientas → File > Examples > March 7Th (o el desplegable Examples ▾ de la barra de herramientas). El rig de 307 drawables se carga centrado y el dock de parámetros se llena con los 203 deslizadores estándar de Cubism.
En el dock Motions inferior, haga un solo clic en cualquier entrada de movimiento (
zhaiyan,zhaoxiang,idle_breath,tap_head…). La reproducción empieza inmediatamente; haga clic de nuevo para detener, o elija un movimiento distinto para hacer un cross-fade hacia él.Active los interruptores de entrada en vivo en la barra de herramientas para controlar el rig desde sus propias entradas — Drag-track head para la mirada al cursor, Auto-blink para el ciclo de cerrar/abrir ojos, Auto idle + Idle motions para respiración + clips Idle aleatorios, Mic lip-sync para apertura de boca a partir del RMS del micrófono, Webcam tracking para cabeza + ojos + boca completos desde MediaPipe FaceLandmarker.
Reset to rest en la barra de herramientas detiene todos los movimientos, desactiva todos los drivers en vivo, limpia las expresiones / overrides de pose, y devuelve cada parámetro a su valor por defecto — la acción canónica de “empezar de nuevo”.
Para abrir un rig diferente más tarde: File > Open Puppet… elige cualquier zip
.puppetdel disco; File > Examples ▾ sigue enlazado a la lista incluida.
Formato de archivo .puppet (v1)
Un archivo .puppet es un archivo zip:
my_character.puppet
├── puppet.json # required — manifest, drawables, deformers, parameters
├── textures/
│ ├── face.png # referenced by drawables[].texture
│ └── body.png
├── motions/ # optional
│ ├── idle.json
│ └── wave.json
├── expressions/ # optional
│ └── smile.json
└── physics.json # optional
Ejemplo de puppet.json de nivel superior:
{
"version": 1,
"size": [2048, 2048],
"drawables": [ ... ],
"deformers": [ ... ],
"parameters": [ ... ],
"motions": ["idle", "wave"],
"expressions": ["smile"],
"pose": {"groups": [ ... ]},
"physics": "physics.json"
}
El esquema completo (drawables, deformers, parameters, motions, expressions, pose, physics)
vive en Imervue/puppet/FORMAT.md en el repositorio. Sólo JSON + PNG — sin binario
propietario, totalmente diffable a través de git.
Referencia de la barra de herramientas
Acción |
Propósito |
|---|---|
Open Puppet… / Examples ▾ |
Cargar un |
Import PNG… / Import PSD… / Import Cubism… |
Auto-malla un PNG, divide en capas un PSD, o muestrea-y-reconstruye un rig
Cubism. El selector de Cubism acepta tanto |
Recent |
Reabrir rápidamente una marioneta abierta recientemente |
Save As… |
Escribir el rig actual como un zip |
Add Rotation Deformer / Add Warp Deformer / Add Parameter |
Crear el rig desde la barra de herramientas |
Drag-track head |
Offset del cursor → |
Auto-blink |
Ciclo coseno cerrar→abrir en |
Mic lip-sync |
RMS del micrófono → |
Webcam tracking |
MediaPipe Tasks API FaceLandmarker → yaw / pitch / roll de cabeza +
ojos + boca (requiere |
Auto idle / Idle motions |
Ciclo de respiración + deriva en parámetros estándar, más cicleador aleatorio opcional a través de movimientos del grupo Idle |
Edit mesh |
Arrastra-y-suelta vértices del lienzo para refinar la malla |
Record motion |
Captura los cambios de parámetros en un nuevo |
Capture frame… / Record… / Export all motions… |
Guarda un único PNG, alterna una grabación GIF / WebM / MP4, o renderiza por lotes cada movimiento del rig a su propio archivo (todo mediante la misma ruta de render off-screen sólo-personaje usada para streaming) |
Output > Virtual camera / NDI output |
Superficies de streaming en vivo — consulte Streaming en vivo a OBS más arriba |
Reset to rest |
Detiene en seco el reproductor de movimiento, desactiva cada driver en vivo, limpia expresiones / grupos de pose, restaura los valores por defecto de los parámetros |
Fit to Window |
Re-centra y re-escala la marioneta en el lienzo |
Grabar sus propios movimientos
Para capturar una toma personalizada en lugar de crear fotogramas clave a mano:
Active Record motion en la barra de herramientas — aparece un diálogo de nombre.
Mientras graba, arrastre deslizadores, active Webcam tracking, deje correr la física — cualquier cosa que escriba valores de parámetros.
Desactive Record motion — el grabador hornea el flujo capturado a 30 Hz en un
Motioncon una pista de segmento lineal por parámetro que realmente se movió (los parámetros que se mantuvieron planos se descartan). El nuevo movimiento aparece en el dock Motions inferior inmediatamente, listo para reproducir / hacer bucle / guardar.
Los movimientos personalizados guardados de esta forma hacen ida y vuelta a través del mismo
payload JSON motions/<name>.json que los creados a mano.
Streaming en vivo a OBS
Dos rutas de salida, ambas renderizando la marioneta sola (sin fondo de damero, sin chrome del editor) en un framebuffer off-screen antes de entregarlo a la superficie de streaming. El lado más largo de la salida está limitado a 1080 px para que los lienzos nativos de Cubism (March 7th es 3503×7777) no sean rechazados por los drivers de cámara virtual DirectShow.
A. Cámara virtual — aparece como una webcam en la lista de fuentes Video Capture
Device de OBS. pip install pyvirtualcam más el driver de la plataforma:
OBS Studio 26+ incluye el driver OBS Virtual Camera en Windows / macOS (haga clic una vez
en Start Virtual Camera en OBS para registrarlo); Linux usa v4l2loopback-dkms +
modprobe v4l2loopback exclusive_caps=1 card_label="Imervue".
La barra de herramientas Output > Virtual camera abre el flujo.
DirectShow / AVFoundation / v4l2loopback son sólo-RGB — sin canal alfa — por lo que Imervue rellena el área fuera del personaje con magenta `#FF00FF` como croma. Elimínelo en OBS mediante el filtro Color Key:
Clic derecho en la fuente Video Capture Device > Filters
Effect Filters > + > Color Key
Establezca Key Color Type =
Custom Color, Custom Color = HEXFF00FF, Similarity =80–300, Smoothness =30–50
El filtro se adhiere a la fuente, de modo que el croma se vuelve a aplicar automáticamente cada vez que la cámara virtual se reanuda.
B. Salida NDI — emisión LAN sub-50 ms que transporta RGBA, de modo que OBS / vMix
componen directamente sobre sus propias escenas sin pasada de croma. pip install ndi-python
+ el runtime de NDI Tools + el plugin
obs-ndi.
La barra de herramientas Output > NDI output emite la fuente (nombre por defecto
Imervue Puppet).
ndi-python se distribuye sólo como source distribution; pip lo construye desde C++ en
tiempo de instalación. Los usuarios de Windows necesitan Visual Studio Build Tools 2022
(con el workload de C++), CMake en PATH, y el NDI SDK de
<https://ndi.video/for-developers/ndi-sdk/> instalado en la ubicación por defecto con la
variable de entorno NDI_SDK_DIR apuntando a él.
Consulte puppet_guide.md § 1.2 para los pasos completos más la lista de solución de
problemas (la cámara muestra magenta, fallo de cmake en ndi-python, estiramiento de la
cámara virtual, etc.).
Dependencias opcionales
sounddevice— captura de micrófono para lip-syncopencv-python+mediapipe— seguimiento facial por webcamimageio-ffmpeg— grabación MP4 / WebM (ya incluido para Slideshow Video)pyvirtualcam— salida de cámara virtual (consulte Streaming en vivo)ndi-python— salida NDI (consulte Streaming en vivo)DLL Cubism Native SDK proporcionada por el usuario — conversión
.moc3 → .puppet(la Free Material License de Live2D prohíbe la redistribución; los usuarios colocan el SDK bajo<cwd>/sdk/o establecen la variable de entornoCUBISM_CORE_DLL)
El plugin se degrada con elegancia cuando alguna de estas falta — el conmutador correspondiente
en la barra de herramientas se desactiva y muestra una pista “install <package>”.
File > Install dependencies… instala por lotes todos los paquetes opcionales de Python
de una sola vez.
Espacio de trabajo Desktop Pet (Pestaña Desktop Pet)
La pestaña 5 — Desktop Pet — coloca cualquier personaje .puppet
en su escritorio como una superposición sin marco y transparente. La
pestaña en sí es un panel de control; el personaje real es una ventana
de nivel superior separada que comparte todo el runtime de Puppet
(movimientos, expresiones, físicas, drivers de reposo, entrada de
micrófono / cámara web). La mascota puede reaccionar a clics, ejecutar
animaciones disparadas por temporizador, seguir el cursor, ocultarse
mientras otra aplicación está en pantalla completa y decir frases
personalizadas que usted defina en un archivo JSON.
Este capítulo es una referencia completa de la pestaña. Está organizado así:
Inicio rápido — recorrido de cinco pasos desde “acabo de abrir Imervue” hasta “hay una marioneta en mi escritorio”.
Cargar un rig — selector de archivos, ejemplo incluido, restauración entre arranques.
La ventana de superposición — todos los comportamientos a nivel de ventana (arrastrar para mover, acople a borde, clic-pasante, bloqueo de ancla, siempre detrás, ocultar en pantalla completa, pausa al ocultar, opacidad, tamaño, restauración multimonitor).
Modelo de interacción — zonas de impacto para clic izquierdo, menú contextual completo del clic derecho, bandeja del sistema.
Drivers en vivo — seis drivers de entrada opcionales y sus dependencias opcionales.
Script de la mascota — el archivo JSON que le permite reemplazar la voz de la mascota con sus propias frases, programar recordatorios y enlazar respuestas por zona de impacto / por movimiento.
Persistencia — qué se recuerda entre arranques y el esquema exacto de configuración.
Crear una nueva mascota — puntero a la pestaña Puppet + el formato del archivo
.puppet.Solución de problemas — sorpresas comunes y qué hacer con ellas.
Inicio rápido
Cambie a la pestaña Desktop Pet.
Haga clic en Load bundled March 7th para usar el personaje incluido, o en Open Puppet… para elegir su propio archivo
.puppet.La superposición aparece en el escritorio y la casilla Show pet on desktop se marca automáticamente. (Si en algún momento desea ocultar la mascota sin cerrar Imervue, desmarque la casilla o use el icono de la bandeja del sistema.)
Arrastre el personaje al lugar donde lo quiera. Suelte cerca de un borde de la pantalla para acoplarlo a ras.
Elija los Live drivers que desee — respiración en reposo, parpadeo, seguimiento del cursor, lip-sync por micrófono, seguimiento por cámara web — desde la pestaña del espacio de trabajo o desde el menú contextual de la mascota.
Todo lo que configure se conserva en el siguiente arranque, así que el paso 5 es una decisión única por rig / persona.
Cargar un rig
La pestaña expone tres rutas de carga:
Open Puppet… — elija cualquier archivo
.puppetdel disco.Load bundled March 7th — abre el rig incluido en
examples/puppet/march_7th.puppet. El resolutor consulta primeroexamples_dir()(seguro para entornos congelados con compilaciones empaquetadas con Nuitka / instaladas con pip) y, como alternativa, busca una ruta relativa a la raíz del repositorio para que el botón funcione en ambos modos de ejecución.Último rig — el rig cargado previamente se restaura automáticamente al iniciar Imervue desde el campo de configuración
last_rig_path; la pestaña Desktop Pet vuelve a instanciar la superposición de forma invisible para que la mascota esté a un clic del mismo estado en el que la dejó.
Una carga exitosa marca automáticamente Show pet on desktop para que la mascota aparezca inmediatamente. La ruta de fallo deja la casilla intacta y escribe el error en la etiqueta de estado de la pestaña.
La ventana de superposición
El personaje vive en una ventana de nivel superior separada de la ventana principal de Imervue. La ventana no tiene marco, no aparece en la barra de tareas y (por defecto) permanece por encima de todas las demás ventanas.
Comportamiento |
Detalle |
|---|---|
Superposición sin marco |
Sin chrome de ventana, sin botones de minimizar / cerrar, sin entrada en la barra de tareas. El personaje es toda la superficie visible. |
Fondo transparente |
Todo lo que el personaje no cubra es totalmente transparente. El escritorio / aplicación detrás de la mascota se ve con precisión píxel a píxel. |
Arrastrar para mover |
Pulse el botón izquierdo en cualquier punto del cuerpo, arrastre y suelte. El gesto se reconoce como clic solo si el cursor se movió menos de seis píxeles — moverse más convierte el gesto en un movimiento y el manejador de clic no se dispara. |
Acople a borde |
Suelte cerca de un borde de la pantalla (por defecto: a menos de 24 px) y la mascota se “encaja” a ras contra ese borde. El umbral es configurable de 0 (desactivado) a 200 (muy pegajoso). El acople actúa de forma independiente en cada eje, así que arrastrar a una esquina la encaja contra ambos bordes a la vez. |
Limitación de desbordamiento |
Un arrastre que termina más allá del borde de la pantalla se reajusta al interior. No se puede dejar la mascota fuera de pantalla donde no podría volver a agarrarla. |
Modo clic-pasante |
Cuando está activo, todos los eventos de ratón pasan a través de la mascota a lo que haya detrás. El personaje sigue siendo visible pero no se puede arrastrar, hacer clic derecho ni usar para disparar movimientos. Actívelo cuando la mascota sea puramente decorativa. |
Bloquear posición |
Desactiva el arrastrar para mover sin afectar al clic-pasante. Útil cuando ha colocado la mascota exactamente donde la quiere y no desea que arrastres accidentales la muevan. |
Siempre debajo |
Cambia la mascota de siempre-encima a siempre-debajo. La mascota queda detrás del resto de ventanas como un widget de escritorio. También desactiva la marca de aceptar foco, así que hacer clic en la mascota no la trae al frente. |
Ocultar en pantalla completa |
Un sondeo en segundo plano a 1 Hz observa la ventana en primer
plano del monitor de la mascota. Cuando esa ventana cubre
≥ 99 % de la pantalla con una tolerancia por borde ≤ 4 px
(detectando tanto pantalla completa real como juegos en
ventana sin bordes), la mascota se oculta automáticamente.
Cuando la pantalla completa termina, la mascota reaparece en
su posición anterior. El detector usa la API Win32
|
Pausa al ocultar |
El tick de pintado a ~30 FPS y el tick de script a 1 Hz se
detienen en |
Presets de tamaño |
Pequeño (200 × 300), mediano (320 × 480), grande (480 × 720). La mascota se redimensiona alrededor de su centro actual, así que un cambio de tamaño no la reubica. El acople se reejecuta después del redimensionado. |
Deslizador de opacidad |
10 – 100 %. Actúa a nivel de ventana (mediante
|
Memoria de posición |
Se persiste el |
Modelo de interacción
La mascota responde a la entrada del ratón mediante tres canales independientes.
Clic izquierdo sobre el cuerpo
La posición del clic se mapea de vuelta a coordenadas del lienzo de
la marioneta (deshaciendo el desplazamiento / zoom del lienzo) y se
pasa por el pipeline existente de hit_test. El resultado dirige
el comportamiento de la siguiente forma:
Si un
HitAreacubre el drawable clicado Y esa zona tiene un movimiento asociado, se reproduce el movimiento.Independientemente de si se reprodujo un movimiento, la mascota puede mostrar un bocadillo de diálogo — véase la sección Script de la mascota para la prioridad de selección de frases.
Si ninguna zona de impacto cubre el clic, la mascota recurre a un saludo (de la lista
greetingsdel script o del fallback incorporado).
Un gesto de arrastrar para mover suprime el manejador de clic, así que mover la mascota no dispara un movimiento / habla.
Clic derecho en cualquier lugar del cuerpo
Abre un menú contextual con la siguiente estructura:
Hide pet — acción de nivel superior que cierra la superposición.
Submenú Live drivers — seis conmutadores marcables (Auto idle, Idle motions, Auto-blink, Drag-track head, Mic lip-sync, Webcam tracking). El estado de marcado refleja el estado del driver en vivo, así que el menú muestra lo que está corriendo actualmente.
Submenú Play motion — poblado a partir de la lista
document.motionsdel rig activo. Seleccionar una entrada reproduce ese movimiento (y puede disparar la voz de la mascota si el script enlaza una frase a él).Submenú Apply expression — poblado a partir de
document.expressionsdel rig. Seleccionar conmuta la superposición de parámetros de la expresión.Cinco conmutadores marcables de nivel superior: Lock position, Click-through, Always on bottom, Hide on fullscreen, Speech bubble — acceso rápido a los mismos conmutadores de la pestaña del espacio de trabajo.
Submenú Size — Pequeño / Mediano / Grande; el preset actual aparece marcado.
Los submenús de movimiento / expresión están desactivados cuando no hay ningún rig cargado.
Icono de la bandeja del sistema
Un icono de bandeja (instanciado solo en plataformas que reportan soporte de bandeja) ofrece una cuarta superficie para las acciones más comunes:
Clic izquierdo alterna la visibilidad de la mascota.
Clic derecho abre un menú con Show pet (marcable), Click-through, Open puppet…, Hide pet.
Los elementos marcables Show / Click-through reflejan el estado de marcado del espacio de trabajo mediante
sync_visibility/sync_click_through, así que permanecen sincronizados sin importar dónde el usuario active el conmutador correspondiente.
Drivers en vivo
Cada driver en vivo se crea de forma perezosa en la primera activación, así que una mascota inactiva no paga ningún coste de temporizador / hilo por los drivers que nunca encienda. El estado de cada driver se persiste; activar uno, cerrar Imervue y reiniciar reabre la mascota con los mismos drivers en marcha.
Driver |
Qué hace |
Dependencia opcional |
|---|---|---|
Auto idle |
Respiración + deriva sutil sobre parámetros estándar
( |
ninguna |
Idle motions |
Elige aleatoriamente un movimiento del grupo |
ninguna |
Auto-blink |
Cierra y reabre los ojos en una curva coseno suave cada ~4,5 s. El driver fuerza la escritura del parámetro para que otros drivers que toquen los valores de apertura de ojos no supriman el parpadeo. |
ninguna |
Drag-track head |
La cabeza + los ojos giran hacia la posición global del cursor
incluso cuando el cursor está fuera de la mascota. Mueve
|
ninguna |
Mic lip-sync |
La amplitud RMS del micrófono mueve |
|
Webcam tracking |
MediaPipe FaceLandmarker lee su cámara web a ~30 FPS y mueve los parámetros de pose de cabeza + apertura de ojos + apertura de boca. Abre una pequeña ventana de vista previa en vivo para que pueda verificar que la cámara ve su cara. |
|
Los dos drivers con dependencia opcional se degradan con elegancia: si el paquete requerido no está instalado, al marcar la casilla esta vuelve a desmarcarse y la etiqueta de estado del espacio de trabajo muestra una pista “install sounddevice” / “install opencv-python + mediapipe”.
Script de la mascota — voz personalizada y eventos programados
El bocadillo de diálogo de la mascota se nutre de un archivo JSON que usted puede escribir y cargar desde el grupo Pet script de la pestaña. El script gobierna cuatro cosas:
Saludos — frases de clic por defecto cuando no coincide nada más específico.
Respuestas por zona de impacto — depósitos de frases por
HitArea.id.Frases de movimiento — depósitos de frases por nombre de movimiento, disparados cuando la mascota inicia ese movimiento (ya sea desde una zona de impacto o desde el menú contextual).
Recordatorios programados — frases dirigidas por temporizador que se disparan cada
every_secondsde tiempo monotónico de reloj.
Esquema (versionado — los campos futuros son compatibles hacia adelante):
{
"version": 1,
"name": "March 7th — playful voice",
"greetings": [
"Hi!", "Hello hello!", "Need a break?"
],
"hit_responses": {
"HitAreaHead": ["Hey, my head!", "Stop poking!"],
"HitAreaBody": ["Hehe~", "Pat pat?"]
},
"motion_lines": {
"wave": ["Hi!", "Hello!"],
"curtsy": ["Cheers!"]
},
"scheduled": [
{"every_seconds": 1800, "messages": ["Stretch break!"]}
]
}
Reglas de carga:
Las listas se muestrean en orden cíclico por depósito para que el usuario no vea la misma frase dos veces seguidas.
Las claves de nivel superior desconocidas se ignoran (compatibilidad hacia adelante — un futuro archivo v2 sigue cargándose en un runtime v1).
Las entradas de lista basura (tipo incorrecto, entradas programadas malformadas,
every_secondscero / negativo) se omiten — una fila mala no hace fallar toda la carga. Solo el JSON completamente inanalizable lanza un error y muestra la ruta en la etiqueta de estado.La cascada de zona de impacto / movimiento / saludo es por capas: un clic izquierdo consulta primero
hit_responses[area.id], luegomotion_lines[area.motion], luegogreetingsy, como base, el conjunto de saludo por defecto incorporado.El seguimiento del tiempo usa
time.monotonic, así que suspender el portátil o saltar el reloj del sistema no puede disparar en ráfaga eventos en cola.
Reset to default descarta el script del usuario y vuelve al conjunto de saludo incorporado; la ruta del script persistida se borra para que el siguiente arranque no la recargue.
Un ejemplo funcional se encuentra en
examples/desktop_pet/march_7th.petscript.json — seis saludos, dos
depósitos por zona de impacto (cabeza / cuerpo), tres frases de
movimiento (wave / curtsy / cheer) y un recordatorio de estiramiento
de 30 minutos.
Persistencia
Todo el estado de Desktop Pet va y vuelve a través de
user_setting_dict["desktop_pet"] (una ranura en el archivo
estándar de configuración de usuario de Imervue). Cada campo tiene
un valor por defecto + limitación de rango al cargar, así que un
archivo de configuración corrupto no puede hacer fallar el arranque.
Campo |
Valor por defecto |
Notas |
|---|---|---|
|
|
Se restaura automáticamente al arrancar si el archivo todavía existe. |
|
|
Se restaura automáticamente al arrancar si el script aún se analiza; un script ilegible vuelve a los valores por defecto de forma silenciosa. |
|
|
Coordenada de pantalla |
|
|
Uno de |
|
|
Limitado a |
|
|
|
|
|
|
|
|
Mutuamente excluyente con siempre-encima. |
|
|
Establezca |
|
|
Limitado a |
|
todos |
Subdiccionario indexado por id de driver ( |
|
|
Muestra automáticamente la superposición cuando Imervue arranca. |
|
|
Cuando es falso, el bocadillo de diálogo nunca aparece. |
El comportamiento de fusión del diccionario de configuración es de un nivel de profundidad: los archivos de configuración antiguos a los que les faltan claves más nuevas siguen produciendo un diccionario de estado completo al cargar (los valores por defecto rellenan los huecos); las claves más nuevas que ya guardó sobreviven a una vuelta atrás a un runtime más antiguo que no las conoce.
Crear una nueva mascota
Cualquier archivo .puppet funciona como personaje de Desktop
Pet — la pestaña Desktop Pet es puramente un renderizador + capa de
interacción; la autoría de rigs ocurre en la pestaña Puppet (véase
Espacio de trabajo Puppet (Pestaña Puppet)).
Para crear su propio rig de mascota:
Cambie a la pestaña Puppet e importe un arte vía File > Import PNG… o File > Import PSD…, o traiga un modelo Cubism vía File > Import Cubism….
Cree deformadores de rotación / warp, parámetros, movimientos, expresiones y (opcionalmente) zonas de impacto ligadas a partes del cuerpo para que el manejador de clic izquierdo de Desktop Pet pueda disparar movimientos.
Guarde el rig vía File > Save As… en un zip
.puppet.Vuelva a la pestaña Desktop Pet y cargue el nuevo archivo vía Open Puppet….
Si su rig define entradas HitArea, puede escribir frases de
bocadillo por zona de impacto en un .petscript.json cuyas
claves hit_responses coincidan con los ids de las zonas.
Solución de problemas
La mascota aparece dentro de un rectángulo gris en lugar de ser
totalmente transparente. El atributo de fondo translúcido a nivel
del SO requiere una superficie GL consciente de alfa más atributos
coincidentes en el widget GL embebido. Asegúrese de que ninguna
herramienta de gestión de ventanas de terceros esté sobrescribiendo
el atributo WA_TranslucentBackground en la ventana de
superposición (algunos gestores de ventanas personalizados en Linux
hacen esto). En Windows / macOS debería “simplemente funcionar”.
“Load bundled March 7th” indica que el archivo no se encuentra.
El resolutor consulta primero examples_dir() (la ubicación segura
para entornos congelados utilizada por las compilaciones empaquetadas)
y recurre a una ruta relativa al CWD. Si ninguna contiene el rig, la
etiqueta de estado muestra la ruta esperada. Verifique el directorio
examples/ que se incluye con su instalación — para checkouts del
código fuente, lance Imervue desde la raíz del repositorio.
La mascota no habla al hacer clic. Tres comprobaciones:
Asegúrese de que el conmutador Speech bubble on click esté activo (en la pestaña o en el menú contextual).
Si cargó un script personalizado, verifique que el JSON se analiza — la etiqueta de estado de la pestaña muestra el error de carga.
Si un clic en una zona de impacto no hizo nada, probablemente la zona no tiene un movimiento coincidente Y el script no tiene una entrada
hit_responsespara ese id de zona. Bien enlace un movimiento a la zona en la pestaña Puppet, bien añada el id de la zona ahit_responsesdel script.
La casilla de seguimiento por cámara web se desmarca sola. El
seguimiento por cámara web necesita opencv-python y mediapipe
instalados en el mismo entorno Python en el que se está ejecutando
Imervue. Instálelos con pip install opencv-python mediapipe.
Después de la instalación, al marcar la casilla debería aparecer una
pequeña ventana de vista previa mostrando los puntos faciales
detectados.
La mascota no se oculta automáticamente durante aplicaciones en
pantalla completa. El detector de pantalla completa sondea la
ventana en primer plano a 1 Hz. En Windows usa la API Win32
GetWindowRect; en macOS / Linux no tiene un equivalente
multiplataforma fiable y es no-op (la mascota permanece visible).
Para Windows: asegúrese de que Hide when other app is fullscreen
esté marcado y verifique que la ventana en pantalla completa
realmente cubre ≥ 99 % del mismo monitor que la mascota.
La posición de la mascota se va fuera de la pantalla entre arranques. Esto pasa cuando la pantalla en la que estaba la mascota ya no está conectada en el siguiente arranque (dock del portátil, segundo monitor desconectado). La mascota recurre automáticamente a la esquina inferior derecha de la pantalla principal en este caso — arrástrela a donde la quiera y el siguiente guardado sobrescribirá la posición obsoleta.
Rotación y volteo
Acción |
Atajo |
Menú |
|---|---|---|
Rotar 90 ° en sentido horario |
|
Clic derecho > Modify > Rotate CW |
Rotar 90 ° en sentido antihorario |
|
Clic derecho > Modify > Rotate CCW |
Voltear horizontalmente |
– |
Clic derecho > Modify > Flip Horizontal |
Voltear verticalmente |
– |
Clic derecho > Modify > Flip Vertical |
Rotación sin pérdida (JPEG) |
– |
Clic derecho > Lossless Rotate |
Exportar imágenes
Exportación individual
Clic derecho en una imagen > Export / Save As.
Elija el formato: PNG, JPEG, WebP, BMP, TIFF
Ajuste la calidad (para formatos con pérdida)
Vista previa del tamaño estimado del archivo
Elija una ubicación de guardado
Presets de exportación
Para los destinos de entrega comunes que no quiere reajustar cada vez, use
File > Export with Preset. Un clic aplica el pipeline correcto de redimensionado,
formato y calidad:
Preset |
Pipeline |
|---|---|
Web 1600 |
Ajusta el lado largo a 1600 px, JPEG calidad 85, sRGB; para subidas a blogs / foros donde la calidad visual importa más que el recuento de píxeles. |
Print 300 dpi |
TIFF a resolución completa / JPEG de alta calidad con metadatos de 300 dpi, salida con gestión de color para laboratorios y imprentas. |
Instagram 1080 |
Recorte cuadrado (1080 × 1080) o vertical (1080 × 1350) con la relación de aspecto original preservada en el interior, JPEG calidad 90. |
Los presets se componen con la superposición de marca de agua (más abajo) — habilite la marca de agua una vez y todas las salidas con preset la incluirán.
Superposición de marca de agua
File > Watermark… abre un configurador de superposición no destructiva. Los ajustes
se aplican sólo en la exportación — los píxeles originales en el disco nunca se tocan.
Modo: texto o imagen. Las marcas de agua de imagen admiten PNG con alfa.
Posición: cuadrícula de 9 anclas (esquinas, bordes, centro).
Opacidad: 0 – 100 %.
Escala: porcentaje del lado largo exportado; la marca de agua se reescala automáticamente conforme cambia el tamaño para distintos presets.
Exportación por lotes
Seleccione varias imágenes, después clic derecho > Batch Export.
Conversión uniforme de formato
Establece el ancho / alto máximo (escalado de aspecto automático)
Control de calidad
Barra de progreso en tiempo real
Crear GIF / Vídeo
Seleccione varias imágenes, después clic derecho > Create GIF / Video.
Salida GIF y MP4
Arrastrar para reordenar fotogramas
Establecer fotogramas por segundo (FPS)
Dimensiones personalizadas
Opción de bucle
Reproducción de animaciones
Al abrir archivos GIF, APNG o WebP animado, la animación se reproduce automáticamente.
Tecla |
Acción |
|---|---|
|
Reproducir / Pausa |
|
Fotograma anterior |
|
Fotograma siguiente |
|
Acelerar |
|
Ralentizar |
Comparación de imágenes
En el modo miniaturas, seleccione 2 – 4 imágenes, después clic derecho > Compare Images.
El diálogo tiene cuatro pestañas:
Pestaña |
Propósito |
|---|---|
Side-by-side |
Muestra 2 o 4 imágenes simultáneamente; cada una se autoescala en su panel. |
Overlay |
Mezcla dos imágenes con un deslizador alfa (0 → sólo A, 100 → sólo B). Requiere exactamente 2 seleccionadas. |
Difference |
Visualización por píxel |
A | B Split |
Vista dividida antes/después con un divisor vertical arrastrable. Arrastre el manejador para barrer entre las dos imágenes; ideal para mostrar ajustes de receta de revelado o comparar exportaciones. Requiere exactamente 2 seleccionadas. |
Cuando las dos imágenes tienen tamaños diferentes, B se reescala a las dimensiones de
A con Lanczos. Las imágenes muy grandes se limitan internamente a 2048 px en el lado largo,
para que la superposición / diferencia se mantengan interactivas.
See also
Para una comparación en línea sin abrir un diálogo, use Split View (Shift + S) o
Dual-Page Reading (Shift + D / Ctrl + Shift + D) descritos en la sección
Examinar.
Presentación de diapositivas
Pulse S o clic derecho > Slideshow para iniciar una presentación automática.
Intervalo ajustable por imagen
Transición opcional con fundido entre imágenes
Búsqueda
Pulse Ctrl + F o / y escriba una palabra clave para buscar imágenes en la carpeta
actual por nombre de archivo.
La búsqueda usa emparejamiento difuso con un rango de tres niveles (prefijo > subcadena
> subsecuencia) y resaltado de subcadena en los resultados. Pulse Enter o haga doble
clic para saltar a una imagen.
Para saltar por índice de imagen en lugar de por nombre, pulse Ctrl + G para el
diálogo Go-to.
Copiar y pegar
Acción |
Método |
|---|---|
Copiar imagen al portapapeles |
|
Pegar imagen del portapapeles |
|
Monitorización automática del portapapeles |
|
Note
Cuando la monitorización automática está activada, cada vez que aparece una nueva imagen en el portapapeles (p. ej. desde una herramienta de captura de pantalla), el editor de anotaciones se abre automáticamente.
Eliminar imágenes
Acción |
Método |
|---|---|
Eliminar la imagen actual |
Pulse |
Eliminar las imágenes seleccionadas |
Seleccione varias, después |
Las imágenes se mueven a la Papelera de reciclaje / Papelera del sistema y se pueden recuperar desde allí.
Operaciones por lotes
En el modo miniaturas, seleccione varias imágenes después clic derecho:
Función |
Descripción |
|---|---|
Renombrado por lotes |
Renombrar usando plantillas: |
Mover / Copiar |
Mover o copiar imágenes a otra carpeta |
Rotar todas |
Rotar todas las imágenes seleccionadas a la vez |
Exportación por lotes |
Convertir formato y redimensionar en bloque |
Añadir a etiqueta |
Aplica la misma etiqueta a todas las imágenes seleccionadas |
Añadir a álbum |
Coloca todas las imágenes seleccionadas en un álbum |
Histograma RGB
Pulse H en el modo Deep Zoom para superponer un histograma RGB sobre la imagen. Pulse de
nuevo para ocultarlo.
Establecer como fondo de pantalla
Clic derecho en el modo Deep Zoom > Set as Wallpaper para establecer la imagen actual
como fondo de escritorio.
Compatible con Windows, macOS y Linux (GNOME).
Multi-ventana
File > New Window abre otra ventana independiente de Imervue. Cada ventana puede
explorar una carpeta diferente.
Presets de diseño de espacio de trabajo
File > Workspaces… captura la geometría actual de la ventana, la disposición de docks
/ barras de herramientas, los tamaños de los divisores y la carpeta raíz activa bajo un nombre
— después le permite alternar entre diseños guardados de la misma forma que otros gestores de
fotos compatibles con XMP cambian entre Library / Develop / Export, o Adobe Bridge cambia
entre Metadata / Filmstrip. El diálogo admite Save Current, Load, Rename y Delete. Los
espacios de trabajo persisten en user_settings.json (bajo la clave workspaces) y
sobreviven entre sesiones.
Tip
Construya un espacio de trabajo Browse con el árbol y la cuadrícula de miniaturas visibles, y un espacio de trabajo Develop separado con el panel de revelado maximizado y el árbol contraído. Un solo clic mueve toda su ventana a la forma adecuada para cada tarea.
Gestos del touchpad
Gesto |
Acción |
|---|---|
Pellizco |
Acercar / alejar en Deep Zoom (anclado en el centro del pellizco) |
Deslizar horizontalmente |
Imagen anterior / siguiente |
Asociación de archivos (Windows)
Registrar Imervue como visor de imágenes en el Explorador de Windows:
File>File Association>Register 'Open with Imervue'Se requieren privilegios de administrador.
Tras el registro, clic derecho en cualquier imagen en el Explorador para ver la opción
Open with Imervue.
Para eliminar: File > File Association > Remove file association.
Sistema de plugins
Imervue admite plugins para funcionalidad extendida.
Acción |
Ubicación en el menú |
|---|---|
Ver plugins instalados |
|
Descargar nuevos plugins |
|
Abrir la carpeta de plugins |
|
Recargar plugins |
|
Idioma
Cambie el idioma de la interfaz desde el menú Language:
Inglés
Chino tradicional (繁體中文)
Chino simplificado (简体中文)
Coreano (한국어)
Japonés (日本語)
Se requiere reiniciar tras el cambio.
Referencia de atajos de teclado
Edición
Tecla |
Acción |
|---|---|
|
Abrir la pestaña Modify |
|
Rotar en sentido horario |
|
Rotar en sentido antihorario |
|
Deshacer |
|
Rehacer |
|
Eliminar imagen |
Organización
Tecla |
Acción |
|---|---|
|
Alternar favorito |
|
Valorar (pulse de nuevo para borrar) |
|
Etiqueta de color: rojo / amarillo / verde / azul / púrpura (misma tecla para borrar) |
|
Cull: Pick (marcar para conservar) |
|
Cull: Reject |
|
Cull: Unflag |
|
Alternar marcador |
|
Gestor de etiquetas y álbumes |
Herramientas y superposiciones
Tecla |
Acción |
|---|---|
|
Búsqueda difusa con resaltado de subcadena |
|
Copiar imagen al portapapeles |
|
Pegar desde el portapapeles |
|
Histograma RGB |
|
Información OSD superpuesta / HUD de depuración (VRAM, caché, hilos) |
|
Vista de píxeles (≥ 400 % muestra cuadrícula de píxeles y valor RGB bajo el cursor) |
|
Recorrer los modos de color (Normal / Escala de grises / Invertir / Sepia) |
|
Presentación |
Animación
Tecla |
Acción |
|---|---|
|
Reproducir / Pausa |
|
Fotograma anterior |
|
Fotograma siguiente |
|
Ralentizar |
|
Acelerar |
Biblioteca y gestión de metadatos
Imervue mantiene un índice respaldado por SQLite en %LOCALAPPDATA%/Imervue/library.db
(Windows) o ~/.cache/imervue/library.db (POSIX) para búsqueda entre carpetas, etiquetas
jerárquicas, álbumes inteligentes, hashes perceptuales, notas y marcadores de descarte.
Todo lo siguiente vive bajo Extra Tools salvo que se indique. A partir de la última
versión, el menú está organizado en ocho submenús agrupados por función —
Batch, Library & Metadata, Views, Workflow, Export,
Develop (Non-Destructive), Retouch & Transform, y Multi-Image —
por lo que cada ruta a continuación se muestra como
Extra Tools > <submenú> > <herramienta>.
Búsqueda en la biblioteca
Extra Tools > Library & Metadata > Library Search le permite añadir una o más
carpetas raíz a un índice global que se rastrea en un hilo en segundo plano. Una vez que
una raíz está indexada puede consultarla por extensión, ancho/alto mínimo, rango de tamaño o
subcadena de nombre y soltar los resultados en el visor como un álbum virtual.
Álbumes inteligentes
Extra Tools > Library & Metadata > Smart Albums persiste reglas de filtro
(extensiones, dimensiones mínimas, etiquetas de color, valoración, favoritos, estado de
descarte, etiquetas jerárquicas, subcadena de nombre) bajo un nombre amigable. Reaplicar un
álbum filtra la carpeta activa por las reglas guardadas.
Búsqueda de imágenes similares
Extra Tools > Library & Metadata > Find Similar Images ejecuta un pHash DCT de 64
bits sobre la imagen actual en deep-zoom (o sobre el primer mosaico seleccionado) y lista las
coincidencias cercanas del índice ordenadas por distancia de Hamming. Ajuste el spin
Max distance para ampliar o restringir el ámbito.
Búsqueda semántica (CLIP)
Extra Tools > Semantic Search le permite escribir una frase en lenguaje natural (por
ejemplo “golden retriever en la nieve” o “calle de neón por la noche”) y devuelve imágenes
clasificadas de la biblioteca indexada. Cada imagen se incrusta con un encoder visual/lingüístico
CLIP y se almacena junto a su ruta; una consulta de texto se incrusta en el mismo espacio
vectorial y se compara por similitud coseno.
Las incrustaciones se almacenan en caché en %LOCALAPPDATA%/Imervue/clip_cache.npz (Windows)
o ~/.cache/imervue/clip_cache.npz (POSIX) como un único archivo .npz compacto, para
que el siguiente lanzamiento omita la re-codificación. Sólo las rutas que ha escaneado son
consultables — use Scan Folder… dentro del diálogo para extender el índice.
Note
Semantic Search requiere los paquetes opcionales open_clip_torch y torch. Si no
están instalados, la entrada del menú explica qué falta y otras funciones siguen
funcionando.
Auto-Tag
Extra Tools > Library & Metadata > Auto-Tag Images aplica etiquetas heurísticas
bajo auto/... (photo / document / screenshot / landscape / portrait).
Si onnxruntime y un modelo CLIP en models/clip_vit_b32.onnx están disponibles,
también añade etiquetas de contenido basadas en CLIP. Se ejecuta en un hilo de trabajo con
una barra de progreso en vivo.
Etiquetas jerárquicas
Extra Tools > Library & Metadata > Hierarchical Tags gestiona etiquetas con
estructura de árbol como animal/cat/british. Seleccione una etiqueta para ver todas las
imágenes bajo esa rama (descendientes incluidos). Etiquete o desetiquete la selección actual
con un clic. Las etiquetas jerárquicas viven en el índice de la biblioteca y son
complementarias al sistema de etiquetas planas del menú contextual.
Renombrado por lotes con tokens
Extra Tools > Batch > Token Batch Rename abre una tabla con vista previa en vivo
donde escribe una plantilla como {date:yyyymmdd}_{camera}_{counter:04}{ext} y ve
exactamente cómo se renombrará cada archivo. Los conflictos se resaltan para que nada se
sobrescriba. Tokens admitidos: {name} {ext} {counter[:NN]} {date[:fmt]} {width} {height}
{wxh} {size_kb} {camera} {year} {month} {day} {hour} {minute}.
Exportación de metadatos
Extra Tools > Library & Metadata > Export Metadata (CSV / JSON) escribe una fila
por imagen en la vista actual cubriendo EXIF, dimensiones, etiqueta de color, valoración,
favorito, etiquetas jerárquicas, estado de descarte y notas. Útil para alimentar decisiones
de descarte en una hoja de cálculo o en un flujo de trabajo externo.
Archivos secundarios XMP (interoperabilidad con otros gestores con soporte XMP)
Imervue puede leer y escribir archivos secundarios Adobe XMP (photo.jpg ↔ photo.xmp)
para que valoraciones, títulos, descripciones, palabras clave y etiquetas de color hagan ida
y vuelta limpiamente con otros gestores de fotos con soporte XMP, Bridge, y otras
herramientas con soporte XMP.
Import XMP for current image — extrae valoración / título / palabras clave / etiqueta de color del archivo secundario a la base de datos interna.
Export XMP for current image — escribe la valoración / título / palabras clave / etiqueta de color actuales en un archivo secundario junto a la imagen.
Importar / exportar por lotes — aplica la misma operación a la selección activa o a toda la carpeta.
El parseo XML usa defusedxml para que los archivos secundarios mal formados o maliciosos
no puedan disparar ataques XXE / billion-laughs. Si defusedxml no está instalado, las
entradas del menú XMP se ocultan y no se escriben archivos secundarios.
La barra lateral EXIF también expone una tira de valoración por estrellas clicable — la valoración que establece es la que escribirá la exportación XMP.
Descarte (Pick / Reject)
Marcador de descarte de tres estados basado en banderas. Pulse P para marcar la imagen
actual o cada mosaico seleccionado, Shift + X para rechazar, U para quitar la marca.
Filter > By Cull State muestra sólo picks, rejects o sin marcar. Extra Tools >
Culling aplica el filtro mediante un diálogo y también expone un botón Delete all
rejects que elimina permanentemente del disco los archivos marcados.
Bandeja de preparación
Extra Tools > Workflow > Staging Tray es una cesta entre carpetas. Añada cualquier
conjunto de mosaicos a la bandeja (la lista sobrevive a los reinicios), después mueva o copie
toda la bandeja a una carpeta de destino con un clic. Útil para reunir selecciones de varias
sesiones antes de exportar.
Gestor de archivos de doble panel
Extra Tools > Workflow > Dual-Pane File Manager abre una vista de doble panel con
dos árboles. Elija una carpeta en cada panel y mueva/copie la selección entre ellos sin salir
de Imervue.
Vista de línea de tiempo
Extra Tools > Views > Timeline View agrupa el conjunto de imágenes actual por día,
mes o año (agrupado por fecha). La fecha se toma de EXIF DateTimeOriginal cuando está
presente, en caso contrario de la fecha de modificación del archivo. Haga doble clic en
cualquier imagen para abrirla en Deep Zoom.
Arrastrar fuera a aplicaciones externas
Pulse y arrastre desde un mosaico seleccionado para soltar el archivo en el Explorador, Chrome, Discord o cualquier aplicación que acepte URLs de archivos. La vista previa del arrastre es la miniatura del mosaico.
Notas por imagen
La barra lateral EXIF incluye una caja Notes de texto libre. Al escribir se autoguarda en el índice de la biblioteca tras un breve debounce. Las notas viajan con la ruta de la imagen, de modo que sobreviven a los re-escaneos de carpetas.
Revelado y composición avanzados
Curva tonal
Extra Tools > Develop (Non-Destructive) > Tone Curve abre un editor de curvas con
puntos arrastrables y cuatro canales (RGB, R, G, B). Clic izquierdo en lienzo vacío para
añadir un punto; arrastre para mover; clic derecho para eliminar. Los puntos se interpolan
con un spline cúbico monótono y se almacenan en la receta de la imagen, de modo que la curva
se aplica no destructivamente en tiempo de render.
Aplicar LUT .cube
Extra Tools > Develop (Non-Destructive) > Apply .cube LUT le permite elegir
cualquier archivo Adobe .cube (1D o 3D, hasta 64³). La LUT se parsea con un lru_cache
clave por ruta + mtime, se evalúa con interpolación trilineal, y se mezcla contra el original
mediante un deslizador de intensidad. La ruta de la LUT y la intensidad viven en la receta.
Copias virtuales
Extra Tools > Workflow > Virtual Copies da a cada imagen instantáneas con nombre
de recetas. Capture la edición actual, siga experimentando, y vuelva a cualquier variante
anterior más tarde. Las variantes se sitúan junto a la receta maestra en el almacén de
recetas y sobreviven al restablecimiento de la maestra a la identidad.
Fusión HDR
Extra Tools > Multi-Image > HDR Merge combina dos o más exposiciones embracketadas
en una sola imagen mediante la fusión de exposiciones Mertens de OpenCV. La casilla opcional
“Align exposures” ejecuta primero cv2.AlignMTB para compensar el temblor de cámara en mano.
La salida se guarda en un archivo elegido por el usuario — no toca ninguna imagen de origen.
Costura de panorama
Extra Tools > Multi-Image > Panorama Stitch envuelve la API de alto nivel
Stitcher de OpenCV. Elija el modo Panorama para paisajes / urbanismos o el modo
Scans para documentos planos y obras de arte. Los bordes negros producidos por el warp
pueden recortarse automáticamente.
Apilado de foco
Extra Tools > Multi-Image > Focus Stacking fusiona varias tomas hechas a
distancias de enfoque diferentes. Por cada píxel, el algoritmo elige el fotograma de entrada
que tenga la mayor nitidez local (varianza Laplaciana), después suaviza la máscara de
selección con una mezcla gaussiana para evitar costuras. La alineación ECC está activada por
defecto para pequeños desplazamientos en mano.
Pincel corrector
Extra Tools > Retouch & Transform > Healing Brush muestra la imagen actual a un
lado largo de hasta 720 px. Clic izquierdo añade un punto circular; clic derecho sobre un
punto existente lo quita; el deslizador de radio establece el tamaño del nuevo punto. Al
aplicar, el inpainting de OpenCV (Telea por velocidad, Navier-Stokes por mezcla más suave)
rellena cada región enmascarada desde los píxeles circundantes y el resultado se guarda en
un archivo nuevo.
Corrección de lente
Extra Tools > Retouch & Transform > Lens Correction expone cuatro deslizadores
puros en numpy: distorsión radial k1 (barril / cojín), levantamiento de viñeteado, y
escala radial de aberración cromática por canal para rojo y azul. La imagen corregida se
guarda como un archivo nuevo — la corrección de lente no es parte de la receta porque la
forma de la salida puede cambiar.
Vista de mapa
Extra Tools > Views > Map View traza todas las imágenes con geotag de la
biblioteca actual en un mapa Leaflet + OpenStreetMap interactivo (requiere
PySide6.QtWebEngineWidgets). Sin WebEngine, el diálogo recurre a una lista simple de
entradas (path, lat, lon) para que la función siga siendo usable en instalaciones
mínimas.
Vista de calendario
Extra Tools > Views > Calendar View muestra un QCalendarWidget con los días
resaltados cuando se tomaron fotos ese día (EXIF DateTimeOriginal →
DateTimeDigitized → mtime del archivo). Seleccionar una fecha lista sus imágenes; doble
clic para abrir una en el visor principal.
Detección de rostros
Extra Tools > Retouch & Transform > Face Detection ejecuta el cascade Haar frontal
de rostros de OpenCV sobre la imagen actual y dibuja cada detección como un rectángulo. Haga
doble clic en una fila de la lista para escribir el nombre de una persona; al guardar, las
etiquetas se escriben en el blob extra['face_tags'] de la receta. La detección es una
técnica clásica — la precisión es adecuada para “muéstrame las caras” pero no es un
reemplazo del reconocimiento moderno basado en CNN.
Máscaras de ajuste local
Extra Tools > Develop (Non-Destructive) > Local Adjustment Masks superpone
máscaras de pincel, radiales o de degradado lineal sobre la imagen. Cada máscara lleva sus
propios deltas de exposición, brillo, contraste, saturación, temperatura y tinte más un
deslizador de difuminado. Las máscaras se guardan en recipe.extra['masks'] y se aplican
no destructivamente en tiempo de carga, de modo que el archivo subyacente nunca se toca.
Tono dividido
Extra Tools > Develop (Non-Destructive) > Split Toning aplica tonos distintos a
las sombras y las luces con saturación por región y un pivote de balance. Almacenado en
recipe.extra['split_toning'] y aplicado después de la curva tonal en el pipeline de
revelado.
Sello de clonar
Extra Tools > Retouch & Transform > Clone Stamp copia un parche fuente difuminado
sobre un destino — el complemento de borde duro al pincel corrector. Shift+clic establece la
fuente, un clic normal estampa, clic derecho deshace. El resultado se escribe en un archivo
nuevo, de modo que el original queda intacto.
Recortar / Enderezar
Extra Tools > Retouch & Transform > Crop / Straighten combina un rectángulo de
recorte normalizado (0..1) con un ángulo de enderezamiento arbitrario. La salida se
recorta automáticamente al rectángulo interior más grande, de modo que las fotos rotadas no
tienen esquinas negras.
Enderezamiento automático
Extra Tools > Retouch & Transform > Auto-Straighten detecta el horizonte dominante
o las líneas verticales mediante la detección de líneas de Hough y propone una rotación. Un
clic aplica el enderezamiento; puede ajustar el ángulo primero si la auto-detección elige la
referencia equivocada.
Reducción de ruido / Enfoque
Extra Tools > Retouch & Transform > Noise Reduction / Sharpening aplica un
denoise bilateral (con preservación de bordes) seguido de un enfoque de máscara de desenfoque.
“Luminance only” mantiene intacto el ruido de color pero aplana el grano sin emborronar los
bordes de croma.
Cielo / Fondo
Extra Tools > Retouch & Transform > Sky / Background reemplaza el cielo detectado
con un degradado o elimina el fondo a transparente / blanco. Cuando rembg (U²-Net) está
instalado, la máscara de primer plano viene de la red de segmentación; si no, se usa la regla
HSV heurística.
Soft Proof
Extra Tools > Develop (Non-Destructive) > Soft Proof carga un perfil ICC, convierte
la imagen a través de él y de vuelta, y resalta los píxeles que se recortaron durante el ida
y vuelta en magenta — una comprobación rápida de fuera de gamut antes de imprimir.
Geoetiqueta GPS
Extra Tools > Library & Metadata > GPS Geotag lee cualquier etiqueta GPS existente
de EXIF y le permite editar o establecer nuevas coordenadas en grados decimales. Requiere
piexif instalado; escribe en JPEG in situ.
Diseño de impresión
Extra Tools > Export > Print Layout compone varias imágenes en un PDF de varias
páginas con tamaño de página, orientación, cuadrícula, márgenes, canalón y marcas de recorte
configurables. Requiere reportlab.
Uso desde la línea de comandos
imervue # Launch normally
imervue /path/to/image # Open a specific image
imervue /path/to/folder # Open a specific folder
imervue --debug # Enable debug mode
imervue --software_opengl # Use software rendering (when GPU is unsupported)
Servidor MCP
Imervue incluye un servidor Model Context Protocol integrado que permite a los asistentes de IA (Claude Code, Claude Desktop, Cursor, Cline, …) llamar a los ayudantes de lógica pura del proyecto sin una GUI en ejecución. Inícielo con:
python -m Imervue.mcp_server
El servidor es independiente de Qt y sólo carga lo que cada herramienta necesita en el momento de la llamada.
Herramientas disponibles
Herramienta |
Propósito |
|---|---|
|
Lista los archivos de imagen de una carpeta (ruta, tamaño, mtime). Pase
|
|
Dimensiones, formato, etiquetas EXIF y campos del archivo secundario XMP para una imagen. Los datos que falten se reportan como el valor vacío apropiado en lugar de lanzar una excepción. |
|
Ruta rápida que sólo lee el archivo secundario XMP — valoración, etiqueta de color, palabras clave, título, descripción. |
|
Convierte una imagen a otro formato. El formato de destino se infiere del sufijo
de destino ( |
|
Construye un rig |
|
Abre un archivo |
Todas las herramientas devuelven payloads serializados como JSON en el sobre
content / text de MCP; los payloads estructurados pueden parsearse de vuelta desde
el campo text en el lado del cliente.
Claude Code (a nivel de proyecto)
El repositorio incluye un .mcp.json a nivel de proyecto en la raíz del repo:
{
"mcpServers": {
"imervue": {
"type": "stdio",
"command": "python",
"args": ["-m", "Imervue.mcp_server"]
}
}
}
Abrir cualquier subdirectorio del repositorio en Claude Code auto-descubre este servidor. Claude Code pregunta antes de activar los servidores de proyecto la primera vez — acepte el aviso para usarlo.
Claude Desktop
Añada la misma entrada a su configuración de Claude Desktop:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Use un directorio de trabajo absoluto o active un virtualenv en el que Imervue esté
instalado; la invocación python debe resolverse a un intérprete que pueda
import Imervue.
Superficie del protocolo
El servidor implementa el transporte stdio JSON-RPC 2.0 de MCP versión 2025-03-26:
initialize— handshake; anunciacapabilities.tools.tools/list— enumera las herramientas registradas con sus definiciones de entrada JSON-Schema.tools/call— invoca una herramienta con{"name", "arguments"}; los resultados vuelven dentro del arraycontent.notifications/*— aceptadas silenciosamente (sin respuesta).
La implementación vive en Imervue/mcp_server/:
server.py— bucle de protocolo + registro de herramientas.tools.py— funciones manejadoras y las definiciones de herramientas por defecto.__main__.py— punto de entradapython -m Imervue.mcp_server.
Se pueden registrar herramientas personalizadas construyendo MCPServer
manualmente, llamando a MCPServer.register(), y alimentando mensajes a través de
MCPServer.handle_message() (o conduciendo el bucle stdio con el ayudante run()
integrado).