- Sensor de Imagen de Visión Robótica Pixy 2.1 de Charmed Labs
- Más pequeño y más rápido (60 fotogramas por segundo) que el anterior Pixy1
- Nuevo modo de "seguimiento de línea" con algoritmos personalizados para detectar y rastrear líneas
- Software PixyMon mejorado (aplicación PC/Mac/Linux)
El Sensor de Imagen de Visión Robótica Pixy 2.1 de Charmed Labs presenta un tamaño más pequeño, más rápido y más capaz que el Pixy original.
Pixy 2 puede aprender a detectar objetos que le enseñe, simplemente presionando un botón. Además, tiene nuevos algoritmos que detectan y rastrean líneas para usar con robots de seguimiento de línea. Los nuevos algoritmos también pueden detectar intersecciones y "señales de tráfico". Las señales de tráfico pueden decirle a su robot qué hacer, como girar a la izquierda, girar a la derecha, reducir la velocidad, etc.
Y Pixy2 hace todo esto a 60 fotogramas por segundo, por lo que su robot también puede ser rápido. Pixy2 viene con un cable especial para conectar directamente a un Arduino y un cable USB para conectar a una Raspberry Pi, para que pueda comenzar rápidamente. ¿Sin Arduino o Raspberry Pi? ¡No hay problema! Pixy2 tiene varias interfaces (SPI, I2C, UART y USB) y comunicaciones simples, por lo que puede hacer que su controlador elegido se comunique con Pixy2 en poco tiempo.
Campo de visión más amplio
La nueva versión 2.1 tiene un campo de visión de 80 grados y ofrece un campo de visión más amplio. Hay algo de distorsión esférica con la nueva lente, que viene con un campo de visión más amplio.
Lente reemplazable y enfoque ajustable
La montura de lente M12 le permite sustituir una lente diferente y tiene un enfoque ajustable que permite enfocar objetos a prácticamente cualquier distancia, incluso tan cerca como 0,25 pulgadas.
Menos distorsión cromática y menos ruido de píxeles
La nueva lente prácticamente no tiene distorsión cromática en los bordes, mientras que la versión anterior de Pixy tenía una distorsión cromática medible.
Además, la nueva lente tiene un F-stop de 2,0 frente a la lente anterior que tenía un F-stop de más de 3,0. Esto significa una mejor capacidad de captación de luz, más señal y menos ruido para una determinada cantidad de luz ambiental. Menos ruido significa una mejor precisión de detección para esta nueva versión de Pixy.
Si desea que su robot realice una tarea como recoger un objeto, perseguir una pelota, ubicar una estación de carga, etc., y desea un solo sensor para ayudar a realizar todas estas tareas, entonces la visión es su sensor. Los sensores de visión (imagen) son útiles porque son muy flexibles. Con el algoritmo correcto, un sensor de imagen puede sentir o detectar prácticamente cualquier cosa.
Pero hay dos inconvenientes con los sensores de imagen: 1) generan una gran cantidad de datos, decenas de megabytes por segundo, y 2) el procesamiento de esta cantidad de datos puede abrumar a muchos procesadores. Y si el procesador puede seguir el ritmo de los datos, gran parte de su potencia de procesamiento no estará disponible para otras tareas.
Pixy2 soluciona estos problemas combinando un potente procesador dedicado con el sensor de imagen. Pixy2 procesa imágenes del sensor de imagen y solo envía la información útil (p. ej., dinosaurio morado detectado en x=54, y=103) a su microcontrolador. Y lo hace a la velocidad de fotogramas (60 Hz). La información está disponible a través de una de varias interfaces: serial UART, SPI, I2C, USB o salida digital/analógica. Por lo tanto, su Arduino u otros microcontroladores pueden hablar fácilmente con Pixy2 y aún tener suficiente CPU disponible para otras tareas.
60 fotogramas por segundo
¿Qué significa "60 fotogramas por segundo"? En resumen, significa que Pixy2 es rápido. Pixy2 procesa un cuadro de imagen completo cada 1/60 de segundo (16,7 milisegundos). Esto significa que obtiene una actualización completa de las posiciones de todos los objetos detectados cada 16,7 ms.
A este ritmo, es posible seguir la trayectoria de la pelota que cae/rebota. (Una pelota que viaja a 40 mph se mueve menos de un pie en 16,7 ms). Si su robot realiza un seguimiento de línea, su robot normalmente se moverá una pequeña fracción de pulgada entre marcos.
Dinosaurios morados (y otras cosas)
Pixy2 utiliza un algoritmo de filtrado basado en el color para detectar objetos denominado algoritmo de componentes conectados por color (CCC). Los métodos de filtrado basados en colores son populares porque son rápidos, eficientes y relativamente robustos. La mayoría de nosotros estamos familiarizados con RGB (rojo, verde y azul) para representar colores. Pixy2 calcula el color (matiz) y la saturación de cada píxel RGB del sensor de imagen y los utiliza como parámetros de filtrado principales.
El tono de un objeto permanece prácticamente sin cambios con los cambios en la iluminación y la exposición. Los cambios en la iluminación y la exposición pueden tener un efecto frustrante en los algoritmos de filtrado de color, lo que hace que se rompan. El algoritmo de filtrado de Pixy2 es sólido cuando se trata de cambios de iluminación y exposición.
Firmas de siete colores
El algoritmo CCC de Pixy2 recuerda hasta 7 firmas de color diferentes, lo que significa que si tiene 7 objetos diferentes con colores únicos, el algoritmo de filtrado de color de Pixy2 no tendrá problemas para identificarlos. Si necesita más de siete, puede usar códigos de color.
Enséñele los objetos que le interesan
Pixy2 es único porque puede enseñarle físicamente lo que le interesa detectar. ¿Dinosaurio morado? Coloque el dinosaurio frente a Pixy2 y presione el botón. ¿Pelota naranja? Coloque la pelota frente a Pixy2 y presione el botón. Es fácil y rápido.
Más específicamente, enseñe Pixy2 sosteniendo el objeto frente a su lente mientras mantiene presionado el botón ubicado en la parte superior. Mientras hace esto, el LED RGB debajo de la lente proporciona información sobre qué objeto está mirando directamente. Por ejemplo, el LED se vuelve naranja cuando se coloca una bola naranja directamente frente a Pixy2. Suelte el botón y Pixy2 genera un modelo estadístico de los colores contenidos en el objeto y los almacena en flash. Luego utilizará este modelo estadístico para encontrar objetos con firmas de color similares en su cuadro a partir de ese momento.
Pixy2 puede aprender siete firmas de color, numeradas del 1 al 7. La firma de color 1 es la firma predeterminada. Para enseñar a Pixy2 las otras firmas (2-7) se requiere una secuencia simple de presionar un botón.
PixyMon le permite ver lo que ve Pixy
PixyMon es una aplicación que se ejecuta en Windows, macOS y Linux. Le permite ver lo que ve Pixy, ya sea como video sin procesar o procesado. También le permite configurar su Pixy, establecer el puerto de salida y administrar las firmas de color. PixyMon se comunica con Pixy a través de un cable mini USB estándar. PixyMon es excelente para depurar su aplicación.
Compatibilidad con el controlador
Pixy puede conectarse fácilmente a muchos controladores diferentes porque admite varias opciones de interfaz (serial UART, SPI, I2C, USB o salida digital/analógica), pero Pixy comenzó su vida hablando con Arduinos. Se ha agregado soporte para Arduino Due, Raspberry Pi y BeagleBone Black.