- Autor: Shubham Dilip Jain
- Versión actual: 0.2-alpha
- Compatibilidad con NVDA: de 2019.3 a 2020.1
- Descargar
- Ver código fuente en GitHub
Este complemento y su repositorio forman parte del proyecto GSOC2020 del autor.
Este complemento permite rotular elementos de imagen presentes en pantalla y obtener un título que describa la imagen en inglés. El resultado se puede anunciar al usuario, o presentarse en una ventana virtual donde puede recorrerse por letras, palabras, o incluso seleccionarlo entero y copiarlo. Este complemento sólo funciona bien con «imágenes naturales» de personas, animales y objetos típicos.
Modo de uso
- Tras la instalación, se debe configurar un gesto en la categoría Visión del diálogo Gestos de entrada.
- Si se pulsa el gesto una vez, se inicia el proceso de rotulado de la imagen. El título se anuncia tras unos segundos. Los títulos son más precisos cuanto más grande es la imagen y si esta no tiene relleno.
- Si se pulsa el gesto más de una vez, se inicia el proceso, pero el resultado se muestra en una ventana virtual en modo exploración. Se debe pulsar escape antes de repetir el proceso con otra imagen.
- Se puede evitar el rotulado de imágenes en elementos no gráficos marcando la casilla correspondiente en las opciones de NVDA, categoría Visión, grupo Complemento Rotulado de imágenes. Esto evita que los usuarios inicien el proceso accidentalmente en un elemento que no tiene imágenes, pero puede impedir el reconocimiento si el elemento contiene imágenes y no lo notifica adecuadamente al sistema.
Nota: en modo foco, el foco no puede llegar a las imágenes, por lo que la opción de filtrar elementos no gráficos procesa también los hijos del elemento actual. El reconocimiento funcionará si alguno de ellos es una imagen.
Notas para desarrolladores
El modelo utilizado para rotular imágenes en este complemento se ha creado a partir de un modelo pyTorch que se puede encontrar aquí. El modelo se convirtió al formato ONNX y, por tanto, necesita el tiempo de ejecución de ONNX 1.3.0 para funcionar. Este complemento también utiliza la biblioteca OpenCV 4.3.0 para procesar la imagen que se va a rotular. El modelo puede encontrarse en forma de archivo dll, llamado ImageCaptioning-DLL.dll, disponible en addon\globalPlugins\imageCaptioning\dlls junto con las bibliotecas de ONNX y OpenCV. El propio modelo y su vocabulario se pueden encontrar en addon\globalPlugins\imageCaptioning\data. Como pasa con la mayoría de modelos de procesamiento de imágenes de código abierto disponibles, los resultados producidos pueden ser incorrectos a veces. El modelo también puede producir resultados diferentes con la misma imagen si esta se encuentra en distintos tamaños o con relleno. En aquellas imágenes cuyos objetos no se pueden identificar fácilmente, el modelo tarda bastante tiempo en producir resultados. En algunos casos, puede ser muy lento la primera vez que se usa.