Visión computarizada#
La visión computarizada es el proceso de utilizar ordenadores para comprender imágenes digitales, como fotografías y vídeos. La visión computarizada ofrece la detección de objetos que suele ser necesaria en FTC ®.
Actualmente, existen 3 formas de visión computarizada comúnmente utilizadas: TensorFlow Lite, AprilTags, y OpenCV (vía VisionPortal/EasyOpenCV).
Soluciones con respaldo oficial#
TensorFlow#
TensorFlow es la tecnología de aprendizaje automático de Google, que puede entrenarse para detectar objetos. El SDK de FTC utiliza TensorFlow Lite, que es una versión ligera de TensorFlow de Google diseñada para ejecutarse en dispositivos móviles. Junto con la compatibilidad con Android Studio y OnBot, TensorFlow es compatible con bloques, lo que lo convierte en una buena opción para la mayoría de los equipos.
Ejemplos de OpModes para TensorFlow que se utilizan para la detección de píxeles (CENTERSTAGE) se pueden encontrar aquí (Bloques), y un ejemplo Java se puede encontrar aquí.
FIRST ® ha lanzado una herramienta llamada FTC-ML para entrenar tu propio modelo TensorFlow Lite para detectar objetos personalizados. Los detalles sobre FTC-ML se pueden encontrar en FTC Docs.
VisionPortal#
Introducida con FTC SDK v8.2, la API VisionPortal integra el proyecto EasyOpenCV en FTC SDK. Con VisionPortal, puede adjuntar varios VisionProcessors a una sola cámara. Los VisionProcessors son una forma sencilla de crear pipelines OpenCV, que permiten aplicar manipulaciones y procesamientos personalizados a cada fotograma entrante. VisionPortal es la forma más potente de visión por computadora, pero también es la más difícil de usar. Por lo tanto, sólo podemos recomendarlo a los equipos más avanzados.
Recursos adicionales sobre la visión#
Simulador EasyOpenCV#
EasyOpenCV Simulator es una forma sencilla de probar tus pipelines directamente en tu ordenador. Es compatible con Windows, macOS y Linux, y simula una parte de la estructura del SDK de FTC, incluida la API VisionPortal, lo que le permite copiar y pegar pipelines.
Puede encontrar EasyOpenCV Simulator aquí.
FTC® Dashboard#
FTC Dashboard ejecuta una página web en el Control Hub que, entre otras cosas, transmite una vista previa en directo de una cámara conectada. Se trata de una herramienta muy útil para probar y depurar aplicaciones de visión.
Advertencia
FTC Dashboard no es legal para ejecutar durante los partidos, asegúrese de que está desactivado durante una competencia. Puedes encontrar más información aquí.
Puede encontrar el FTC Dashboard aquí.
Scrcpy#
Scrcpy es una forma sencilla de visualizar y controlar dispositivos Android conectados a través de USB. Es compatible con Linux, Windows y macOS, ofrece baja latencia, requiere pocos recursos y tiene un gran rendimiento. Es extremadamente útil para depurar código de visión en un Control Hub, ya que te permitirá ver la salida de la cámara casi en tiempo real. También se puede utilizar con un teléfono controlador de robot, sin embargo, la salida de la cámara se puede ver en la pantalla del teléfono.
Puedes encontrar scrcpy aquí.