Registro completo de la entrevista con Brandon Gilles, fundador de OpenCV AI Kit (OAK)

En este artículo, entrevistamos a Brandon Gilles, un leal lector de PyImageSearch y fundador de OpenCV AI Kit (OAK), quien trajo OAK para revolucionar la forma en que las personas usan la visión por computadora integrada y el aprendizaje profundo.

Para celebrar el vigésimo aniversario del establecimiento de la biblioteca OpenCV, Brandon cooperó oficialmente con OpenCV.org para crear el OpenCV AI Kit, una API de software de código abierto con licencia del MIT y una placa base / cámara integrada basada en Myriad X.

El ROBLE se divide en dos tipos:

  1. OAK-1: La placa OpenCV AI estándar puede realizar inferencias de redes neuronales, seguimiento de objetivos, reconocimiento de etiquetas de abril, detección de características y operaciones básicas de procesamiento de imágenes.
  2. OAK-D: Además de todas las funciones en OAK-1, también tiene una cámara de profundidad estéreo, posicionamiento de objetivos 3D y seguimiento de objetivos en el espacio 3D.

Después del acuerdo de Brandon y el equipo de OpenCV, se obtuvo por adelantado la información de primera mano del OpenCV AI Kit. Esperemos el tutorial de OAK en el blog PyImageSearch en el futuro.

El OpenCV AI Kit cambiará por completo la implementación de la visión por computadora integrada y el aprendizaje profundo. No puedo esperar para comenzar. Demos una calurosa bienvenida a Brandon Gilles para que comparta su historia.

El fundador de OpenCV AI Kit (OAK) Brandon Gilles Entrevista Registro completo
Inserte la descripción de la imagen aquí
Brandon Gilles: Arquitecto jefe de OpenCV AI Kit (OAK).

** Reportero: ** ¿Puedes presentarte a todos?

** Brandon: ** Soy ingeniero eléctrico y fundador y director ejecutivo de Luxonis. Siempre he querido comenzar mi propio negocio y espero que mi trabajo tenga un impacto positivo en el mundo. Pero es un poco ridículo que siempre quiera evitar riesgos. Así que pasé más de diez años soñando con comenzar mi propia empresa, pero nunca lo puse en práctica. Así que este es mi primer intento de lanzar un producto con todas mis fuerzas y crear mi propia empresa desde cero.

Periodista: ¿Tiene experiencia en visión artificial y aprendizaje profundo? ¿Cómo se interesó en este campo?

Brandon: Como la mayoría de los ingenieros eléctricos, tomé cursos de visión por computadora en la universidad (¡parece que fue hace 16 años!), Y aprendí sobre las funciones tradicionales de la computadora en sistemas lineales y otros cursos. Pero al principio, mi trayectoria de desarrollo profesional no tuvo ninguna intersección con la visión por computadora o el aprendizaje profundo, pero cuando mi mentor dejó la empresa donde trabajábamos juntos, todo cambió.

Me gustó el trabajo en ese momento, y también le gustó (era el diseñador de antenas de la empresa en ese momento), por lo que su partida fue aún más extraña.

Una vez le pregunté por qué dejó su trabajo y me dijo: "La inteligencia artificial y el aprendizaje profundo afectarán a todas las industrias. Esta puede ser la mayor oportunidad en mi carrera, ¡tengo que luchar contra eso una vez!"

En ese momento no sabía mucho sobre aprendizaje profundo. La última vez que mencioné el término "inteligencia artificial" fue en 2004. En ese momento, mi compañero de cuarto de la universidad probó la tecnología de inteligencia artificial en Lisp, pero el resultado no fue el ideal. Entonces, desde 2004 hasta mediados de 2016, siempre pensé que los modelos de inteligencia artificial eran "inútiles".

Más tarde, cuando este mentor a quien respeto mucho dejó el trabajo que todos amamos y se dedicó al trabajo de inteligencia artificial / aprendizaje automático / aprendizaje profundo, me sorprendió, así que abrí los ojos y volví a examinar el campo. .

Regresé a casa ese día y busqué en Google palabras clave como "aprendizaje profundo", "aprendizaje automático" e "inteligencia artificial". Luego, durante el año siguiente, estuve obsesionado con él. Pasé todo mi tiempo libre (incluso el tiempo para ir al baño) en PyImageSearch, aprendiendo los tutoriales en el sitio web y prestando mucha atención a TowardsDataScience, MIT Comentarios sobre tecnología.

Imagen: https://uploader.shimo.im/f/qP6h3OrdIIvbA9EQ.png
Kit AI OpenCV (ROBLE). OAK-D tiene una función de profundidad tridimensional (imagen de la izquierda), mientras que el OAK-1 más económico (imagen de la derecha) es relativamente pequeño, pero no tiene función de profundidad.

Reportero: Hablemos de esta actividad del kit de IA de OpenCV en Kickstarter. Recuerdo que la primera vez que me mencionaste este proyecto fue en 2018, pero todavía se llamaba "DepthAI" en ese momento. ¿Qué tipo de oportunidad aprovechaste para proponer DepthAI? ¿Cómo lo verificó y finalmente se convirtió en el OpenCV AI Kit?

Brandon: El proceso fue un poco tortuoso, cambió su nombre varias veces en el medio (también lo siento). En ese momento, mis amigos y familiares a mi alrededor se encontraron con algunas condiciones que me hicieron querer hacer algo para brindar ayuda dentro de mi capacidad.

En ese momento, originalmente quería usar nueva tecnología para hacer un juego de batalla con armas láser (mejorar jugadores, paredes, edificios, etc.). Entonces, en 2017, renuncié a la compañía original y comencé mi carrera de CV / ML a tiempo completo. Quería diseñar un sistema AR para múltiples jugadores que se pudiera adaptar a los equipos de batalla de armas láser existentes a través de avances tecnológicos.

Pero en ese momento, en una semana más o menos, hubo muchos accidentes de tráfico alrededor de mi familia y amigos (sus amigos, parientes o colegas). Aunque el accidente no le sucedió a la persona más cercana a mí, estas historias aún tuvieron un gran impacto en mí.

El mejor amigo de mi padre fue atropellado por un coche por detrás, provocándole múltiples fracturas en la espalda, fémur y glúteos. La lesión fue muy grave. Tuvo que permanecer acostado en cama durante 9 meses antes de que la hinchazón desapareciera antes de someterse a la cirugía; al mismo tiempo, el negocio de mi buen amigo Mi compañero también tuvo una experiencia similar; y mi compañero que esquiaba en la universidad también sufrió el mismo accidente, e incluso sufrió una lesión cerebral; mi compañero del fundador del hacker space también murió en un accidente de tráfico (luego de ser atrapado por un auto) La mirilla golpeó el cuello y murió en el acto).

De repente, sentí que el sistema láser de realidad aumentada que diseñé no parecía fuera de lugar. Dado que he pasado varios años investigando visión por computadora, aprendizaje automático, aprendizaje profundo y otras tecnologías emergentes, comencé a pensar en cómo construir un sistema integrado que pueda prevenir tales accidentes.

Si el automóvil puede conducir 12 pulgadas a la izquierda antes del accidente, se puede evitar la tragedia. Hace unos años vi el efecto del crowdfunding LOUD Bicycle de Jonathan Lansey en Kickstarter, ¡y eso era exactamente lo que quería! Quiero diseñar un sistema que pueda proporcionar advertencias a ciclistas y conductores de automóviles para evitar tragedias de tránsito.

En mi opinión, si la visión por computadora y el aprendizaje profundo pueden superar a los médicos en el análisis de imágenes de tomografía computarizada y superar al cerebro humano en clasificación de imágenes, detección de objetivos y percepción 3D, entonces debe haber una manera de crear una forma de proteger la vida de las personas. dispositivo de.

En mi opinión, este dispositivo es equivalente a un amigo que viaja detrás de ti. Cuando hay un automóvil detrás de ti que puede golpearte, se enciende una luz LED fuerte; cuando el vehículo está a punto de chocar, Comenzará a tocar la bocina temprano (pero el volumen real es muy bajo), dando tiempo para evitarlo. Después de eso, utilicé el conocimiento que aprendí de PyImageSearch y Katsuya Hyodo (PINTO0309) obtenido de Github para crear el primer prototipo que puede lograr los objetivos anteriores:

Imagen: https://uploader.shimo.im/f/4YHXezwmBf0eI4ra.png
Inspiración original de Brandon para el futuro kit de IA de OpenCV

Aunque este prototipo es enorme y no lo suficientemente hermoso, ¡puede lograr el propósito de diseño original! Aprendí algo muy importante durante el proceso de creación de prototipos y pruebas:

La detección de objetos en profundidad + moderada puede simplificar el proceso de resolución de problemas y funcionar sin problemas sobre la base de la reducción de código / carga de trabajo.

Ahora, la idea original se ha hecho realidad. Se pueden utilizar varios comentarios para proporcionar advertencias a los ciclistas, como luces LED parpadeantes e incluso bocinas muy fuertes. Esto me enseñó la segunda cosa importante:

Aunque hay componentes separados (cámara de profundidad, procesador de IA, CPU integrada, etc.), aún no se puede integrar en un producto integrado pequeño (debido a que es demasiado grande y voluminoso, no se puede colocar en un asiento de bicicleta Abajo, y el costo también es mayor).

Casualmente, Myriad X se lanzó en ese momento. Su función CV / AI solo puede resolver los problemas anteriores, pero debe tener una unidad flash USB o una tarjeta PCIE, pero ninguno de ellos puede integrarse y usarse, ni es adecuado para motores profundos y Otras funciones de aceleración de CV (estimación de movimiento, detección de bordes, seguimiento de objetivos, seguimiento de características, codificación de video, etc.). Por lo tanto, el disco U / PCIE no se puede utilizar en aplicaciones distintas al razonamiento integrado o neuronal.

Ante este problema, el equipo detrás de mí y yo decidimos rendirnos por completo o tomar la iniciativa para construir una nueva plataforma. Elegimos construir una nueva plataforma llamada DepthAI en ese momento. Después de un período de ventas iniciales (también publicó un tweet sobre nuestra plataforma en ese momento), el Dr. Mallick de OpenCV se acercó a nosotros y quiso hacerse cargo de esta plataforma y usarla como una solución OpenCV para este tipo de problema de CV&AI integrado. parte central.

** Reportero: ** Hablemos sobre el hardware detrás del OpenCV AI Kit. ¿Qué motivó la producción de este dispositivo integrado? Como profesionales del aprendizaje profundo / visión por computadora, ¿por qué deberíamos entender OpenCV AI?

Brandon: La razón por la que elegimos Myriad X es que satisface todas las funciones que necesitamos en un chip de bajo consumo.
1. Inferencia neuronal en tiempo real (que cubre casi todas las redes)
2. Profundidad estéreo
3. Seguimiento de características, incluida la estimación del movimiento y la estimación del movimiento de la plataforma
4. Seguimiento de objetos
5. Codificación H.265 / H.264 (utilizada para registrar eventos, o Simplemente grabando)
6. Codificación JPEG
7. Procesador vectorial de alta eficiencia 16x, que se utiliza para combinar todas las funciones y ejecutar funciones CV aceleradas (se puede considerar que vincula una GPU de visión específica integrada).

Como ingeniero eléctrico, dije: "¡Eso es genial, solo necesito un chip y un SDK!" Descubrí que el único SDK para este chip es para el razonamiento neuronal ... otros productos en el mercado (dispositivos informáticos) , Tarjeta PCIE, etc.) no puede utilizar otras funciones, solo razonamiento.

La combinación de todas estas funciones la convierte en nuestra mejor opción. La aplicación en U disk o PCIE en realidad solo jugó 1/7 de sus funciones (si agrego otras funciones que olvidé, solo reproducirá 1/10).

En este punto, tenemos el chip y obtuvimos las funciones requeridas. En resumen, hemos descubierto el verdadero potencial de Myriad X: combina todas las funciones juntas para resolver los problemas de Spatial AI.

La IA espacial es la función de obtener coordenadas físicas con la ayuda de inteligencia artificial, determinando la posición del objetivo (en metros). Esto es exactamente lo que necesitamos para monitorear y rastrear en tiempo real las trayectorias 3D de los vehículos.

Reportero : De esta manera, OpenCV AI Kit no es solo una placa de inteligencia artificial integrada. Sigue siendo una API, ¿verdad? ¿Cómo interactúa el usuario con la API? ¿Es compatible con Python y OpenCV?

Brandon: Buena pregunta. La mayor confusión que tiene la gente sobre esta plataforma es "es simplemente otra placa base". Aunque el hardware es importante (porque puede brindar el soporte requerido para Myriad X), lo más importante es la API y la nueva forma en que configuramos los bloques de hardware de Myriad X: brindando todas las funciones de una manera sencilla. Pasamos mucho tiempo optimizando la memoria caché, el sistema de comunicación interna del chip y la comunicación DDR, y reescribimos mucho, y finalmente permitimos que Myriad X lograra las funciones anteriores.

Dimos a conocer esta noticia a través de una API simple: compatibilidad con Python y OpenCV. En realidad, está escrito en C ++ con la ayuda de pybind11 (también de código abierto, por lo que se puede compilar en cualquier plataforma que pueda compilar OpenCV) y proporciona funciones API en Python. En resumen, también se puede realizar la interfaz C ++ y la programación directa.

Kickstarter se centra en la versión de interfaz USB de OAK, pero estamos trabajando en el fondo de la versión de interfaz SPI ... De esta manera, se puede conectar a otros sistemas, como microcontroladores sin sistemas operativos. El proyecto puede ser de código abierto al final de la campaña de Kickstarter.

Periodista: Tiene una gran experiencia en el diseño y fabricación de sistemas integrados y placas base. ¿Cuál es el mayor problema encontrado en el proceso de fabricación del OpenCV AI Kit? ¿Cómo se soluciona?

Brandon : Lo más desafiante es en realidad la adquisición de piezas, especialmente la adquisición de cámaras. En las últimas décadas, hemos sido testigos de la tendencia de la transparencia de la información y la conveniencia de la compra de componentes en varios campos, pero esta ola aún no ha ingresado al mercado de módulos de cámara, que aún es muy opaco y sólido. En mi opinión, el mercado está al borde del colapso.

En este caso, necesitamos dedicar mucho tiempo a comunicarnos con los proveedores, realizar pedidos y negociar. Además, el proceso de fabricación y la cadena de suministro se han desarrollado sin problemas. Antes del crowdfunding de Kickstarter, logramos un rendimiento del 99,7% en la ejecución de prueba, y este resultado sigue siendo muy emocionante.

Imagen: https://uploader.shimo.im/f/eE3IIOjnPKT2yBD6.png
Figura 4: Si desea aprender a entrenar un modelo de aprendizaje profundo en su propio conjunto de datos, puede echar un vistazo a "Aprendizaje profundo para visión por computadora con Python"

Reportero : Como leal lector y usuario de PyImageSearch, también ha leído dos libros, "Raspberry Pi para visión por computadora" y "Aprendizaje profundo para visión por computadora con Python". Entonces, ¿cómo utiliza estos libros para ayudar a desarrollar OpenCV AI Kit?

Brandon : De hecho, nuestro equipo comprará cada uno de sus libros juntos (la mayoría de ellos fueron comprados antes de que cooperamos).

PyImageSearch puede ayudarnos a acortar el tiempo necesario para construir un prototipo. Con sus tutoriales y libros, solo necesitamos 20 segundos para resolver un problema que podría haber tardado 10 horas en resolver. Porque el libro describe en detalle los métodos de operación de varias bibliotecas de código y tecnologías de aprendizaje automático.

Por lo tanto, PyImageSearch puede ayudarnos a construir prototipos rápidamente y comprender la viabilidad de usar la visión por computadora para resolver tales problemas. Debido a esto, descubrimos que no todos pueden usar las funciones de Myriad X. PyImageSearch nos ayuda a comprender nuestras propias tareas y ayuda a que las tareas se ejecuten sin problemas, evitando problemas innecesarios.

** Reportero: ** ¿Recomendaría "Raspberry Pi para visión por computadora" y "Aprendizaje profundo para visión por computadora con Python" a otros desarrolladores, estudiantes e investigadores que quieran aprender visión por computadora y aprendizaje profundo?

** Brandon: ** ¡Por supuesto que lo hará! No tenía idea de si mi idea era técnicamente factible antes, pero PyImageSearch me mostró su viabilidad y me ayudó a lograr el buen funcionamiento del sistema.

Si está interesado en esta industria, estos dos libros definitivamente lo ayudarán a profundizar su comprensión y dominar los métodos para resolver problemas prácticos.

** Reportero: ** Para aquellos que quieran seguir sus pasos, aprender visión por computadora y aprendizaje profundo, y luego lanzar productos en el campo de CV / DL, ¿tiene alguna sugerencia?

Brandon: Puede comenzar con el tutorial de PyImageSearch. Pasé mucho tiempo leyendo el conocimiento teórico y la información más reciente sobre el progreso tecnológico, pero luego descubrí que todo realmente comenzó solo cuando comencé a ejecutar el código PyImageSearch y modificar el código para resolver los problemas reales.

** Reportero: ** Si hay lectores de PyImageSearch que quieran chatear contigo, ¿hay alguna forma de contactarlo?

** Brandon: ** Siempre he creído que la ingeniería es una profesión que requiere comunicación directa con los demás, por eso hemos abierto varios canales de comunicación: Primero, puedes ir a nuestro canal comunitario (https://luxonis-community.slack.com /)Encuentrame. Mientras estoy despierto, a menudo aparezco allí. Además, también puede comunicarse conmigo a través de nuestro foro en línea (https://discuss.luxonis.com/). También puede enviarme un correo electrónico en cualquier momento, la dirección de correo electrónico es: [email protected].
para resumir

Lo anterior es el registro completo de nuestra entrevista con Brandon Gilles, quien es un emprendedor, lector y usuario de PyImageSearch y creador de OpenCV AI Kit.

Este artículo se reimprimió desde: https: //www.pyimagesearch.com/2020/07/20/an-interview-with-brandon-gilles-creator-of-the-opencv-ai-kit-oak/
Autor: Adrian Rosebrock

Supongo que te gusta

Origin blog.csdn.net/csdnnews/article/details/108513978
Recomendado
Clasificación