Reconocimiento de iris en FPGA

-1

Quiero implementar un algoritmo de reconocimiento de iris en FPGA. antes de comenzar quiero asegurarme de que fpga es la opción correcta para el procesamiento de imágenes.

Usaré una cámara ov7725 para conectarme a un FPGA. FPGA recibirá los 30 cuadros / segundo y seleccionará la mejor imagen según el algoritmo de calidad de imagen. Luego, FPGA detecta un círculo de iris en la imagen seleccionada y luego realiza la compresión jpeg2000 en ella. La imagen comprimida debe transferirse a la máquina host a través de USB. Una vez que se realiza el algoritmo, quiero hacer un hardware específico y luego comercializar el producto.

¿Quiero saber si FPGA es la opción correcta para ello? Si no, por favor sugiéreme una mejor opción. l BR Abdu

    
pregunta Abdul_lateef

1 respuesta

1

Bueno, actualmente soy responsable de un proyecto que realiza el reconocimiento de seguimiento de manos usando un SoC (FPGA + ARM Processor). Todavía no hemos comenzado a desarrollar la solución en el PCB, pero creo que algunas consideraciones que hemos tomado al principio pueden ayudarlo.

Sí, los FPGA son muy interesantes para realizar este tipo de algoritmos de reconocimiento porque permiten paralelizar muchos cálculos. Por ejemplo, en el seguimiento manual, puede generar varias conjeturas donde se encuentra cada articulación y verificarlas todas al mismo tiempo. Es una gran ventaja sobre las CPUs

Por supuesto, tendría que analizar su algoritmo para saber con seguridad si funcionaría bien en una ejecución paralela. Y si es el caso, puede implementarlo utilizando un FPGA.

Altera, por ejemplo, ha estado desarrollando soluciones para sintetizar descripciones de lenguaje OpenCL directamente a FPGA. Esto puede ayudarlo, porque un lenguaje de nivel superior como ese puede acelerar mucho su trabajo.

Sin embargo, tengo una pequeña preocupación. Para mi proyecto, el seguimiento de manos y dedos totalmente funcional y confiable es muy difícil de realizar en tiempo real. Incluso algunas personas que utilizan GPU para paralelizar los cálculos no han logrado 30 cuadros por segundo. ¿Está seguro de que un microcontrolador no haría su trabajo? En este caso, utilizar un FPGA y todo el trabajo para desarrollar la descripción del hardware sería una exageración.

Hay otro lado de los FPGA que pueden aumentar su presupuesto. Probablemente tendrás que comprar una licencia para un simulador. No estoy seguro de que esté familiarizado con las aplicaciones FPGA. Tiene la descripción del hardware, la prueba con un par de bancos de prueba que se ejecutan en un simulador, y cuando está seguro de que el diseño funciona, lo sintetiza y va al FPGA.

Si no tienes un simulador, tu trabajo será muy lento. Síntesis de un gran diseño puede tardar un par de horas. Los FPGAs son complicados de depurar. Con Altera, por ejemplo, debe reservar una memoria en el FPGA para almacenar muestras de señales para luego recibir la forma de onda. Es mucho más duro que los microcontroladores.

    
respondido por el gstorto

Lea otras preguntas en las etiquetas