2011-05-07 23 views
6

Mis compañeros y yo estamos decidiendo elegir un microcontrolador simple para hacer un procesamiento de imagen muy básico. Básicamente estamos tratando de implementar la coincidencia de plantillas para encontrar un conjunto de objetos en partes específicas de la imagen. Nos gustaría utilizar una cámara web conectada al microcontrolador para hacer el trabajo de tomar las imágenes y buscar los objetos. También requerimos comunicación inalámbrica básica (por ejemplo, bluetooth o wifi).Especificaciones relevantes del microcontrolador para procesamiento de imagen (muy) simple

No creo que tengamos el lujo de usar un microcontrolador de última generación, pero algo ha estado presente por un tiempo (debido al presupuesto y demás). ¿Podría alguien aconsejarnos qué especificaciones del microcontrolador serían las más relevantes para la tarea anterior (por ejemplo, CPU, MIPS, etc.)?

¡Muchas gracias!

+0

¿Cuál es su presupuesto? ¿Has mirado el BeagleBoard? –

+0

Esto podría ser más adecuado para electronics.stackexchange.com – finnw

+0

Parece que [AVRcam] (http://www.jrobot.net/Projects/AVRcam.html) puede hacer el trabajo por usted. – avra

Respuesta

3

Para este tipo de tarea, yo diría que la cantidad de RAM es la especificación más relevante.

  • Un microcontrolador con una interfaz de memoria externa le permite ampliar el espacio de datos con SRAM adicional para almacenar sus datos de imagen.

  • También tenga en cuenta que esa memoria es necesaria para cualquier pila de protocolos que necesite implementar (Bluetooth, TCP/IP incluso más).

  • Es probable que desee tener una memoria RAM total en decenas de kilobytes, preferiblemente más de 100 kB.

También es bueno tener suficiente memoria de programa disponible para aprender y experimentar.
Más adelante puede tratar de optimizar y exprimir su código en un dispositivo más confinado.

En cuanto a la arquitectura, elija algo para lo que pueda encontrar fácilmente herramientas de desarrollo y ejemplos.
ARM, AVR y PIC son buenos candidatos entre otros.

también averiguar qué interfaces que necesita utilizar para

  • control de la cámara (por ejemplo, I2C o SPI)
  • datos de lectura de píxeles (por ejemplo, en paralelo o analógica)

Conexión directa a la interfaz USB de una cámara web no sería una tarea sencilla, ya que el microcontrolador necesitaría actuar como un host USB.

¡Buena suerte con su proyecto!

2

Es posible que necesite un microcontrolador con las características siguientes:

  1. controlador USB 2.0 Host
  2. 1.2 MB de memoria de búfer 640*480*2(bytes per pixel)*2(double buffer) (puede usar una resolución más baja si no hay suficiente memoria)
  3. controlador Wifi
  4. poder
  5. CPU fuerte suficiente para su tarea
  6. Listo código fuente abierto

Parece que los controladores de broadcom pueden ser útiles aquí. Además, puede hacerlo desde un enrutador Wifi sin carcasa con puerto usb y usarlo para su proyecto (es decir, Linksys E3000)

Cuestiones relacionadas