Plataformas de lanzamiento de la serie TIVA C para programadores arduino

Compré un Launchpad TM4C1294NCPDT de la serie Tiva C de TI y deseo hacer un proyecto sobre reconocimiento facial. Pronto obtendré un DSP EVM de TI, pero todavía estoy confundido sobre cuál elegir (PUEDE ser el que tiene un arco de 32 bits).

En realidad, tengo bastante buena experiencia usando placas arduino (y programándolas en lenguaje C y ensamblador). pero cambiar de arduino a TIVA C y DSP es realmente difícil, por favor ayúdenme Y GUIENME.

Zeek aclaró:

Ok, siendo específico, estos son mis problemas ...

  • No obtengo el diseño del LaunchPad.
  • Quiero hacer el reconocimiento facial, ¿el procesador y el DSP me darán suficiente poder de cómputo?
  • Necesito conectar una cámara (una cámara de 5MP a DSP) y quiero controlarla usando la MCU (serie TIVA-C) ¿cómo debo hacerlo?
"No obtengo el diseño del LaunchPad". ¿El problema es tener los pines hembra en la parte inferior en lugar de en la parte superior? ¿O la 'multipersonalidad' de los pines (cada pin podría hacer muchos trabajos)? ¿O algo mas?

Respuestas (1)

Parece haber varias dimensiones diferentes en los obstáculos.

P2: Le preocupa tener suficiente potencia informática. Este es un problema 'asesino'. Puede ser realmente inviable resolverlo en el equipo que ha identificado.

Algunas cámaras digitales usan procesadores que son comparables a los TIVA, y hacen un buen procesamiento de imágenes fijas. Sin embargo, creo que deben tener mucha memoria (RAM). Cualquier forma de procesamiento de imágenes complejas se volverá inaceptablemente lenta o prácticamente imposible sin suficiente memoria.

La página de wikipedia de TIVA-C Launchpad dice "32 Kbyte RAM". Eso es aproximadamente el 0,2% de una imagen de 5 megapíxeles. A menos que tenga un algoritmo muy, muy inteligente, asumiría que es prácticamente imposible.

El módulo de evaluación TMS320C5515 DSP utiliza el TMS320C5515 DSP . Tiene 320K, 10 veces más RAM que la TIVA C. Eso sigue siendo solo el 2% de una imagen de una cámara de 5 megapíxeles.

Esperaría tener al menos 2 veces más memoria de la que requiere una sola imagen, además de un poco más de espacio para que el programa funcione. Menos sería muy probablemente demasiado difícil.

¿Ha creado un prototipo de su proyecto de reconocimiento facial en un sistema informático con mucha potencia informática y lo ha hecho funcionar? ¿O tiene pruebas muy sólidas de que es factible?

Por ejemplo, es el proyecto en un Intel multinúcleo, AMD o ARM de gama alta, que ejecuta un sistema operativo con el que está familiarizado. Una vez que tenga un sistema en funcionamiento, debería poder obtener una medida razonable de cuánta potencia de computadora se requiere.

Sugiero esto porque hay mucha evidencia de que tratar de desarrollar una aplicación para una computadora con apenas suficiente potencia requiere casi exponencialmente más tiempo y esfuerzo que comenzar con una computadora con 'vergonzosamente demasiada potencia'. No caiga en la tentación de complicar demasiado su enfoque de hardware. Apéguese a las soluciones MCU o SoC de un solo chip.

Una vez que sepa que el proyecto es factible, aborde la siguiente parte. Actualice su pregunta con más información sobre su experiencia. Mi opinión actual es que Funkyguy estaba ofreciendo buenos consejos sobre cómo hacer la transición a un sistema más complejo como TIVA de Arduino. Esencialmente, el consejo fue: hacer la transición en más de un paso. Acérquese al hardware. Gana confianza con las nuevas herramientas. Viaja por un camino que tenga un buen soporte en el foro.

Editar:
¿Cómo elegiría entre TIVA y DSP?

Al principio, no me molestaría. En su lugar, intentaría que el proyecto funcionara en un sistema con 'vergonzosamente demasiado poder'. Potencialmente, eso podría enseñarme más sobre el proyecto y cómo hacerlo que cualquier otra cosa que pudiera hacer.

No creo que haya mucho donde elegir entre TIVA-C y DSP EVM. El DSP parece tener más poder de computadora que el TIVA y mucha más memoria. Es probable que la memoria sea "asesina" y no creo que tenga suficiente para facilitar el reconocimiento facial.

Podría usar una Raspberry-Pi (R-Pi) o BeagleBone Black (BB). Ambos tienen 0,5 GB de RAM. Podría usar 200 MB en su aplicación y almacenar muchas imágenes en la memoria mientras ejecuta su algoritmo. Creo que ambos tienen placas secundarias de cámara, aunque creo que la cámara R-Pi es mejor. Ambos tienen tarjetas de memoria SD, por lo que podría tener GB de almacenamiento con imágenes. En cuyo caso, es posible que inicialmente no necesite una cámara, y tener muchas imágenes almacenadas facilitaría las pruebas.

@Zeek - ¡Gracias! Las generaciones futuras pueden aprender porque hiciste el esfuerzo de hacer y mejorar tu pregunta, y toda buena pregunta también me ayuda. Toda la suerte. PD: es costumbre 'marcar' una respuesta para mostrar que está satisfecho y listo, por lo que no necesita más información para ahorrarle a la gente el esfuerzo de escribir más (alguien podría agregar respuestas de todos modos si cree que se necesita más u ofrecer una mejor respuesta), o para explicar qué parte de su pregunta aún necesita respuesta.
gracias gbulmer Realmente ayudó. En realidad, he hecho un poco de reconocimiento facial en matlab (nunca me metí en eso) y tengo un teléfono inteligente que funciona con un procesador de cuatro núcleos y aproximadamente 1 GB de RAM, y reconoce rostros mientras toma fotografías (cámara - 5 MP). Como es que ? Si el reconocimiento facial es tan difícil como lo hace mi móvil? (Mi razonamiento puede parecer un poco ilógico, pero en realidad, esta es la forma en que aprendo)
@Zeek: como escribí en mis respuestas, algunos problemas pueden volverse relativamente sencillos cuando hay 'vergonzosamente demasiado poder'. Tu móvil es un ejemplo de ello. Es mucho más potente, probablemente con mucha más memoria (RAM), que un R-Pi o BB. También es probable que los algoritmos relativamente simples hagan un buen trabajo la mayor parte del tiempo. Por ejemplo, un algoritmo antiguo que me dijeron que funciona bien en algunas partes del mundo es buscar 'manchas' conectadas que son 'color de piel', luego buscar una o dos 'marcas' que podrían ser ojos en la mitad superior. de las manchas 'color piel'.