Buena placa de desarrollo FPGA / Microcontrolador para procesamiento de imágenes en tiempo real [cerrado]

4

He estado trabajando con OpenCV en el entorno de escritorio durante el último año y ahora quiero cambiar a hardware dedicado para Mis aplicaciones de procesamiento de imágenes en tiempo real. Tengo las siguientes preguntas:

  1. ¿Qué placas de desarrollo (FPGA / Microcontroller) son buenas para implementar algoritmos de procesamiento de imágenes? El dispositivo de captura de imágenes será una cámara web.
  2. ¿Podré codificar en C / C ++ y convertir el código en nivel de ensamblaje y volcarlo en esa placa de desarrollo?
  3. ¿Podré usar bibliotecas como OpenCV en esos algoritmos de procesamiento de imágenes?

Como se usarán las cámaras web, la resolución / interfaz de la imagen es:

  1. Interfaz USB 2.0
  2. Resolución máx. 640 x 480
  3. Velocidad de fotogramas 25 - 30 fps
  4. Profundidad 8 x 3 para imagen en color 8 x 1 para gris
  5. Aplicación: umbral, reconocimiento de gestos, detección de objetos, seguimiento, flujo óptico
pregunta rotating_image

3 respuestas

3
  1. En cuanto a los FPGA, estaría más preocupado por el DSP de alto rendimiento en el chip, por lo que recomendaría un Xilinx Spartan-6 FPGA o un Altera comparable. Digilent fabrica algunas placas de desarrollo de bajo precio que tienen USB y VGA que podrían ajustarse a la factura.

  2. Deberá programar el FPGA con Verilog o VHDL. Al programar los FPGA, está describiendo el hardware real y, por lo tanto, es completamente diferente de la codificación en C / C ++.

  3. A menos que alguien haya portado OpenCV a VHDL o Verilog lo dudo.

respondido por el Michael Choi
2

Esta es una pregunta muy amplia, y sin saber a qué tipo de aplicaciones te diriges, la resolución y la velocidad de fotogramas de tus imágenes, etc. es muy difícil de responder.

La programación FPGA para video en tiempo real es un animal muy diferente de la programación de software que utiliza bibliotecas como OpenCV. Parece que un buen primer paso para ti sería cambiar a una computadora de una sola placa que ofrece muchas de las características del entorno de escritorio al que estás acostumbrado. Hay muchos tableros económicos basados en ARM por ahí; Quizás uno de los más conocidos en este momento es el Raspberry Pi .

    
respondido por el Dave Tweed
1

Creo que puedes tener éxito con Avnet ZedBoard con el nuevo Xilinx Zynq XC7Z7020. Funciona con Linux integrado, tiene las interfaces que necesita y, como el sistema de procesamiento dual ARM Cortex-A9 está estrechamente integrado con el tejido FPGA, admite la integración de alto ancho de banda de software y aceleradores de hardware asignados en memoria.

Debería ser sencillo construir y ejecutar OpenCV en este tablero. Sin embargo, es una curva de aprendizaje mucho más pronunciada para dominar el entorno de compilación, construir sus aceleradores para que hablen la interfaz de bus AXI4, etc.

A $ 300- $ 400 es ~ 10 veces más caro que RaspPi pero incluye el FPGA.

enlace

¡Feliz piratería!

    
respondido por el Jan Gray

Lea otras preguntas en las etiquetas