Me llevó 4 años desarrollar un sistema de visión por computadora desde cero, 6 meses para desarrollar esta aplicación.
Las razones son simples, decidí construir un nuevo sistema de visión por computadora desde cero con enfoque en:
- Eficiencia : en términos de uso de recursos para que el sistema pueda ejecutarse en dispositivos de gama baja o dispositivos móviles. La eficiencia también es importante para las aplicaciones robóticas.
- Fiabilidad : la precisión es importante, el sistema necesitaba funcionar la mayoría de las veces.
- Escalabilidad : los modelos más grandes generalmente funcionan mejor que los más pequeños, por lo que la escalabilidad es muy importante en la IA.
La biblioteca que construí es de aplicación limitada principalmente a problemas de reconocimiento de imágenes. Escribí el código C ++ con Microsoft Visual Studio portó el código a Android a través de Native Developer Kit (NDK) y Cygwin para compilar las bibliotecas de objetos compartidos para su uso en una aplicación de Android.
- Cómo sensibilizar a las personas sobre el próximo apocalipsis de IA sin revelar mi código de IA
- ¿Podemos crear autoconciencia artificial?
- ¿Cuál es el alcance de la inteligencia artificial?
- Cómo extender mi conocimiento a la inteligencia artificial cuando tengo un buen conocimiento del aprendizaje automático, pero cero conocimiento en IA
- La IA es probablemente mayor que yo, pero hay muchas afirmaciones recientes sobre su toma de puestos de trabajo. ¿Hay alguna tecnología nueva, o es solo una exageración?
Escribí la interfaz de usuario de la aplicación de Android usando el Eclipse y las versiones más nuevas que usan Android studio. Esta fase es como cualquier otra aplicación, nada especial, si ha trabajado con métodos nativos en Java, entonces este es un paseo por el parque.
La aplicación simplemente parece simple, pero detrás de ella hay un sistema de visión muy potente que procesará imágenes y determinará si forman o no un panorama. También calcula los parámetros intrínsecos y extrínsecos de la cámara conjunta antes de alinear las imágenes. La parte de IA es solo reconocimiento de imagen, por lo tanto, esta es una IA débil o estrecha, no una IA fuerte como en otros casos, pero en mi propia experiencia, la visión es normalmente una de las cosas más difíciles de hacer por las máquinas.
Las bibliotecas que escribí pretenden ser aplicadas a robots de la vida real porque estoy construyendo una lentamente comenzando con la visión para fines de navegación, reconocimiento de objetos e interacciones ambientales. La parte de aprendizaje automático será un trabajo obvio para ayudar al robot a adaptarse a su entorno sobre la marcha.
No es necesario que tome 4 años para construir sus propias bibliotecas desde cero, puede usar las bibliotecas existentes e integrarlas en su base de código como la biblioteca TensorFlow de Google para cosas como el aprendizaje profundo. El resto del trabajo es como desarrollar cualquier otra aplicación, nada especial.
Espero que esto ayude.