Algunas de las investigaciones que realizo involucran hacer exactamente eso (agrupación de imágenes casi en tiempo real en teléfonos móviles). Dependiendo de la complejidad de la tubería y las suposiciones sobre los recursos disponibles, la transferencia puede ser bastante sencilla (capacitación en la nube y envío de parámetros del modelo al dispositivo incorporado) o puede implicar algo más complejo, como combinar versiones aproximadas de los algoritmos que está considerando (es decir, http://research.microsoft.com/pu…) y moverlos al dispositivo. A veces eso no es suficiente y tienes que jugar trucos para optimizar aún más: obtener ‘pistas’ de las mediciones / contexto o reducir la precisión numérica de tus cálculos.
Con respecto a los recursos, debe tener en cuenta la cantidad de datos que va a procesar (no mucho en un sistema integrado), qué procesamiento y memoria tiene disponible, si va a ejecutarlos en un solo procesador integrado o muchos, etc. Por lo tanto, el problema realmente depende de la carga de trabajo y el rendimiento que está buscando.
Con respecto a las mejores prácticas, comenzaría con la carga de trabajo, caracterizada por el tamaño de los datos y el régimen de rendimiento en el que desea estar. También buscaría oportunidades en su algoritmo para eliminar la carga y buscar diferentes optimizaciones / aproximaciones para ver dónde se encuentra su régimen de rendimiento. Pero, por supuesto, comience con un puerto directo y vaya desde allí.
- Recientemente instalé Ubuntu, ¿cómo debo comenzar a jugar con él?
- ¿Para qué se usaban las primeras computadoras?
- ¿Por qué necesitamos aprendizaje automático?
- ¿Puede una unidad USB transmitir y recibir información al mismo tiempo?
- ¿Cuál es el tema candente en las computadoras?