Inicio Artículos Explorando la unidad de motor de captura de Renesas: un periférico de...

Explorando la unidad de motor de captura de Renesas: un periférico de visión para una visión integrada avanzada

renesas imagen

Hasta hace poco, los sistemas de visión integrada se han enfrentado a muchos obstáculos debido a cuellos de botella en el rendimiento como la falta de disponibilidad de periféricos capaces de manejar resoluciones/velocidad de fotogramas más altas y tamaños de memoria limitados en el chip. Sin embargo, la creciente demanda de sistemas integrados de visión en una variedad de industrias, como el escaneo biométrico de huellas dactilares, los lectores de códigos de barras en quioscos inteligentes y el reconocimiento facial en las industrias de consumo, ha empujado a los proveedores de silicio a introducir microcontroladores cruzados (MCU) que pueden eliminar estos cuellos de botella en MCU tradicionales manteniendo capacidades en tiempo real.

En ese sentido, este artículo profundizará en la incorporación de un periférico de captura de imágenes de clase microprocesador (MPU) conocido como Capture Engine Unit (CEU) dentro de la familia de microcontroladores de 32 bits Renesas Advanced (RA), concretamente los dispositivos RA8M1 y RA8D1. Estas MCU cruzadas están diseñadas para ofrecer capacidades mejoradas en el procesamiento de imágenes a nivel del sistema, abordando la creciente demanda de las aplicaciones modernas.

La CEU es un módulo de hardware dedicado cuya tarea es capturar de manera eficiente datos de imágenes de diversas fuentes. Ofrece múltiples capacidades de obtención de datos de imágenes desde módulos externos, una variedad de sensores de imagen CMOS, cámaras y técnicas heredadas de captura de video entrelazado. Este periférico optimiza los recursos del sistema, permitiendo que la CPU y DMA se concentren en otras tareas críticas como interfaces de comunicación o procesamiento de datos. Además, la CEU ofrece flexibilidad y capacidad de configuración, y admite varios formatos de imagen, resoluciones y velocidades de fotogramas. Esto proporciona a los ingenieros la capacidad de adaptar la configuración de captura de imágenes a los requisitos específicos de la aplicación, mejorando el rendimiento general del sistema.

A lo largo de este artículo, brindaremos una explicación detallada de las características y beneficios de las CEU, presentando proyectos de ejemplo que van desde casos de uso simples hasta los más complejos de la vida real. Además, compararemos el CEU con un periférico alternativo, la captura de datos paralelos (PDC) en el dispositivo RA6M3, para brindar a los ingenieros información sobre cómo seleccionar el dispositivo RA más adecuado para su aplicación.

Funciones de captura de unidades de motor

La unidad de motor de captura, como se muestra en la figura 1, es un periférico vital para aplicaciones de visión en las MCU RA8 y facilita la captura y el procesamiento eficiente de datos de imágenes.

Figura 1. Diagrama de bloques CEU

La CEU, cuando está conectada al sistema y funcionando como un bus maestro, proporciona una variedad de funcionalidades diseñadas para cumplir con una variedad de requisitos. Las características clave incluyen:

  1. Entrada de datos de imagen:

La CEU captura datos de imágenes de fuentes externas, lo que permite una transferencia perfecta a la memoria a través de un módulo puente de bus. Es capaz de recuperar datos de imágenes desde sub-QCIF (128×96) hasta 5 megapíxeles (2560×1920) y admite una variedad de técnicas de captura de imágenes tales como:

Captura de datos YCbCr: captura la salida de imágenes de módulos externos, como cámaras, y separa los datos YCbCr antes de escribirlos en la memoria. Con la captura de datos controlada 1:1 al ciclo del reloj de píxeles. Este tipo de captura de datos se utiliza ampliamente ya que separar la información de luminancia de la información de crominancia tiende a dar como resultado capacidades de compresión más efectivas.

Varios formatos de imagen: recupera datos de imágenes en formatos como JPEG, RGB565 y otros, desde módulos externos, lo que permite la escritura secuencial en la memoria. Imagine adquirir datos de otro sistema y transferirlos a la serie RA8 para su posterior procesamiento.

Captura de imagen de origen entrelazada: recupera imágenes de origen entrelazadas en unidades de campo o de un solo campo y las guarda como imágenes de fotograma en la memoria. Estas técnicas se emplean a menudo en cámaras heredadas.

  1. Procesamiento de filtros:

La CEU incorpora filtros internos para realizar tareas esenciales de procesamiento de imágenes, que tienden a faltar en los periféricos tradicionales de captura paralela, como:

Reducción de escala: esta función cambia el tamaño de las imágenes para permitir una visualización eficiente. Al reducir el tamaño de la imagen, se reduce significativamente el espacio de almacenamiento necesario para las imágenes capturadas, como se ilustra en la Figura 1. La escala puede variar desde SubQCIF a VGA y está controlada por cuatro registros, lo que permite flexibilidad en las opciones de escala. Puede encontrar información detallada sobre cómo utilizar los registros en el manual del hardware.

Figura 2. Reducción de imágenes utilizando CEU.

Recorte: Además, la CEU ofrece una función de recorte, que se muestra en la Figura 2. Esta función es muy ventajosa en escenarios donde la atención debe centrarse en regiones específicas de interés o cuando la imagen debe ajustarse a ciertas limitaciones. El recorte sirve como otro método para disminuir el tamaño de la imagen, conservando así memoria en dispositivos con recursos limitados.

Figura 3. Proceso de recorte utilizando la CEU.

Filtro de paso bajo: El CEU incorpora un filtro de paso bajo diseñado para eliminar componentes de alta frecuencia, sólo en dirección horizontal. Este filtro ayuda a reducir el ruido causado por interferencias del sensor o artefactos de transmisión. Además, desempeña un papel en el suavizado y la preservación de la integridad de los bordes, mejorando así la claridad y nitidez de los bordes y contornos dentro de la imagen capturada.

  1. Conversión de formato:

La CEU también admite la conversión de YCbCr422 a YCbCr420 mediante la utilización de un algoritmo de adelgazamiento simple. Esta conversión garantiza la compatibilidad con diversas configuraciones de memoria y requisitos de procesamiento.

Comparación con la captura de datos en paralelo (PDC)

PDC es otro periférico de captura de imágenes disponible dentro de la familia RA, específicamente en el microcontrolador RA6M3. Si bien el periférico es apropiado para MCU de nivel medio a bajo, la CEU agrega una variedad de características descritas anteriormente que lo convirtieron en una opción ideal para MCU de gama alta. En la tabla 1 se muestra una breve comparación de los dos, identificando claramente una variedad de características agregadas al CEU.

Features Parallel Data Capture Capture Engine Unit
Pixel size Vertical: 1 line to 4095 lines

Horizontal: 4 bytes to 4095 bytes

Sub-QCIF (128 x 96) to 5MP (2560 x 1920)
Operation Frequency 30 MHz 120 MHz
Transfer to memory Via DMA/DTC Via Bus-bridge interface
Camera data input 8 bits 8/16 bits
Special features None Low pass filter, clipping, scale-down filter

Tabla 1. Comparación entre PDC vs CEU

Figura 4. Diagrama funcional de PDC vs CEU

Cómo utilizar la unidad del motor de captura

Explorar un nuevo periférico tiende a ser abrumador, especialmente para quienes no están familiarizados con las herramientas y procesos proporcionados por los proveedores de silicio. Sin embargo, con el compromiso de Renesas de lograr una integración fácil de usar, navegar a través de las complejidades de los manuales de hardware se vuelve más accesible. El CEU, como cualquier otro periférico de la familia RA, cuenta con el respaldo perfecto del paquete de software flexible (FSP). Al abstraer información de registro compleja en una interfaz gráfica de usuario (GUI) intuitiva, FSP agiliza el proceso, garantizando una integración fluida y una creación rápida de prototipos.

Además, los ingenieros también pueden esperar que se reduzcan las barreras de entrada con estos nuevos periféricos mediante la utilización de proyectos de ejemplo de inicio rápido (QSEP), proporcionados por Renesas para cada MCU. Diseñados para ejecutarse sin esfuerzo en el kit de evaluación RA8D1, estos proyectos sirven como un repositorio completo de demostraciones simples pero reveladoras. El kit de evaluación RA8D1 que se muestra en la figura 5, que incluye un módulo de cámara Arducam CMOS OV3640 disponible en el mercado capaz de capturar 15 fotogramas por segundo en resolución QXGA (2048×1536), junto con una pantalla táctil capacitiva retroiluminada WVGA TFT de 4,5 pulgadas, ofrece una plataforma ideal para la exploración y la experimentación.

Figura 5. Contenido del kit de evaluación RA8D1

El QSEP para RA8D1, disponible para descargar desde la página web de Renesas RA8D1, proporciona un sólido punto de partida. Al ofrecer un código de muestra CEU sencillo para la captura de imágenes en resoluciones VGA y SXGA, junto con el código fuente esencial para la cámara OV3640, permite a los usuarios sumergirse rápidamente en el desarrollo de aplicaciones prácticas. A través de estos recursos, el usuario puede obtener información valiosa sobre la implementación de la API de CEU dentro de FSP y enriquece aún más la experiencia de aprendizaje.

Explorando aplicaciones prácticas: casos de uso de la vida real

Como se mencionó anteriormente, con la incorporación de CEU en la serie RA8, los usuarios pueden esperar enfocarse en casos de uso de visión, desde la simple captura de imágenes y visualización en una pantalla LCD, hasta casos de uso de Vision AI más avanzados.

De hecho, la placa EK-RA8D1 viene preinstalada con una variedad de aplicaciones interesantes, como se muestra en la figura 6, dos de las cuales son casos de uso de IA de visión, detección de rostros y clasificación de imágenes.

Figura 6. Aplicaciones pre-flasheadas en el EK-RA8D1

La demostración de clasificación de imágenes que se muestra en la figura 7 utiliza un modelo MobileNetV1 entrenado en el conjunto de datos de ImageNet y muestra una latencia de inferencia impresionante de ~ 74 milisegundos.

Figura 7. Demostración de clasificación de imágenes ejecutándose en el EK-RA8D1

La demostración de detección de rostros que se muestra en la figura 8 utiliza el modelo más rápido “Solo Miras Una Vez” (YOLO) para detectar y dibujar cuadros delimitadores en el rostro con una latencia de inferencia de ~134 milisegundos.

Figura 8. Demostración de clasificación de imágenes ejecutándose en el EK-RA8D1

En cualquiera de las demostraciones, la imagen adquirida de la cámara tiene una resolución VGA (640×480) y la CEU la reduce a 320×240 para procesarla aún más antes de usarla como entrada en el modelo de IA. La captura de la cámara, la reducción y el traslado a la memoria se realizaron independientemente del DMA y la CPU, lo que permite utilizarlos para otras tareas, como representar la imagen anterior en la pantalla LCD o ejecutar protocolos de comunicaciones.

Conclusión

Para terminar, la integración del CEU en los microcontroladores Renesas Advanced (RA) representa un salto hacia el dominio de la visión integrada. Como se destaca a lo largo de este artículo, la CEU ofrece una variedad de características para permitir que se ejecuten casos de uso de visión más sofisticados en microcontroladores. La disponibilidad de herramientas intuitivas y fáciles de usar proporcionadas por Renesas a través de FSP junto con QSEP agiliza el proceso de desarrollo y permite a los ingenieros aprovechar el potencial de la CEU de manera efectiva, reduciendo considerablemente el tiempo de desarrollo. Con aplicaciones del mundo real que demuestran su capacidad en IA de visión y otros casos de uso de visión, la serie RA8 impulsará la innovación dentro del dominio integrado en varias industrias. Para obtener más información sobre la serie RA8 y el periférico CEU, visite el sitio web de Renesas para obtener más información.