# Ejecución

La ejecución (runtime) significa solo inferencia, es decir, que las herramientas pueden procesar imágenes, pero no ser modificadas ni reentrenadas. El procesamiento de las herramientas es la funcionalidad mínima requerida para poder ejecutar las herramientas de ViDi en un entorno de producción implementado.

Pros | Contras
--- | ---
Más fácil de integrar | Necesita una licencia de ViDi Suite ejecutándose para poder reentrenar las herramientas
Los parámetros están congelados, el operador de la aplicación no puede modificar las herramientas | Arquitectura más complicada

Las aplicaciones para la implementación de la ejecución son las siguientes:

- El operador de la aplicación no necesita reentrenar las herramientas.
- Aplicaciones en las que hay que asegurar un control estricto de las recetas (p. ej., aplicaciones médicas y farmacéuticas).
- Aplicaciones que requieren que el procesamiento de las herramientas se ejecute en plataformas embebidas o de bajo consumo, y que el entrenamiento se lleve a cabo en otras plataformas.
- Cuando múltiples líneas usan las mismas recetas de aplicación.
- Para hacer demostraciones, soluciones de comercialización rápida y aplicaciones de prueba de concepto.

Lenguaje de programación | Métodos
--- | ---
.Net | namespace Runtime
C | vidi_runtime_*

###### Ejemplos

Lenguaje de programación | Ejemplos
--- | ---
.Net | Example.Runtime.GUI
Example.Runtime.Console.MultiGPU
C | Example.Cpp.Runtime
Example.Cpp.Runtime.MultiGPU

La DLL de ViDi está embebida en la aplicación, posiblemente a través de una aplicación de terceros.

Su aplicación de visión se encarga de lo siguiente:

- Carga un espacio de trabajo remoto en la DLL de ViDi
- Adquiere imágenes
- Transmite las imágenes a la DLL de ViDi
- Interpreta los resultados y actuar en consecuencia
- Da feedback al usuario

La DLL de ViDi se encarga de lo siguiente:

- Maneja la GPU
- Recupera una imagen (a través de la memoria o del disco duro) y devolver una cadena XML

Un contenedor .NET proporciona un elemento de UI que puede usarse para mostrar los resultados.

Como la DLL de ViDi no tiene capacidades de entrenamiento integradas, habrá que usar la GUI de ViDi para entrenar una nueva receta. Esto se hace en estos tres pasos separados:

1. Adquiera imágenes.
2. Transmítalas a la GUI de ViDi, ya sea a través de la DLL, usando el método de agregar a la base de datos o arrastrándolas y soltándolas manualmente en la GUI de ViDi.
3. Exporte el espacio de trabajo de ejecución y cárguelo dentro de la DLL. Esto puede hacerse manualmente o utilizando el método de obtener espacio de trabajo del servidor en la DLL.

Su aplicación de visión se encarga de lo siguiente:

- Adquiera imágenes.
- Transmita las imágenes a la GUI de ViDi a través de la DLL usando el método de agregar a la base de datos o escribiéndolas en el disco.
- Cargue el nuevo espacio de trabajo de ejecución cuando termine el entrenamiento.

Para entrenar el sistema, haga lo siguiente:

- Recupere las imágenes del disco duro y póngalas en la GUI de ViDi.
- Entrene las herramientas.
- Exporte un espacio de trabajo de ejecución.