Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Seguimiento de Raspberry Pi Ball

(Nota:este es un tutorial avanzado, no está destinado a un principiante de Linux).

En este tutorial, demostraré cómo rastrear pelotas de tenis de mesa usando OpenCV en Raspberry Pi. Se puede utilizar para rastrear cualquier objeto circular siempre que se pueda detectar bien desde su fondo. Esto puede ser útil en robots de seguimiento de bolas y proyectos similares.

Cosas que necesita:

1. Raspberry Pi (con la última Raspbian instalada, puede obtenerla desde aquí:https://www.raspberrypi.org/downloads/ Siga las instrucciones de instalación en el mismo sitio)

2. Cámara web USB (prueba una que sea compatible con Rasppi)

3. Un host Linux (preferiblemente Linux Mint / Ububtu) que he probado con Linux Mint 17.

4. Experiencia con sistemas Debian

Paso 1:Configuración inicial

Instrucciones:

1.Realice conexiones Rpi:teclado, mouse, cámara web, dongle ethernet o wifi, pantalla a través de HDMI, alimentación

2. Encienda su Rpi

3. Arranque en la GUI de raspbian en su Rpi (arranque de Raspbian en la GUI)

4. Abra el terminal e instale OpenCV (siga la excelente guía de Trevor Appleton para verificar que OpenCV esté instalado correctamente Instale OpenCV en Rpi)

5. Copie el archivo "bdtct.py" a la carpeta de inicio en su rpi, ya sea usando scp o usando una unidad flash.

Paso 2:Ejecute el código (también conocido como la parte divertida)

En la terminal de su rpi, navegue a la carpeta donde copió bdtct.py

2. Ejecute el siguiente comando:

sudo python bdctc.py

Eso debería abrir 5 ventanas como en la imagen de arriba

3. Traiga una pelota de tenis de mesa (use una amarilla si es posible) frente a su cámara web.

5. La pelota debe ser rastreada en la ventana "rastreo". De lo contrario, ajuste los controles deslizantes en las ventanas “HueComp”, “SatComp”, “ValComp” respectivamente de modo que solo la región de la pelota de tenis de mesa aparezca blanca en la ventana de “cierre” (consulte la imagen de arriba como referencia). Es posible que deba experimentar un poco para que esto funcione. Anote los valores de los controles deslizantes para los que funciona para usted, luego puede editarlos en bdtct.py.

Paso 3:comprensión del algoritmo

Abra el archivo bdtct.py en el editor de texto.

El código bdtct.py hace lo siguiente:

1. Tomando la entrada de "cap =cv2.VideoCapture (-1)"

2. Cambiar el tamaño del fotograma de video a un tamaño más pequeño de 320 × 240, de modo que nuestro rpi pueda producir más fotogramas por segundo.

3. Creación de elementos visuales como ventanas "HueComp", "SatComp", "ValComp" con los respectivos controles deslizantes mínimo y máximo.

4. Conversión de la entrada del sistema BGR a HSV "hsv =cv2.cvtColor (frame, cv2.COLOR_BGR2HSV)"

5. División de los componentes de tono, saturación y valor.

6. Umbral de cada componente de acuerdo con el rango de umbral definido por los respectivos deslizadores mínimo y máximo para obtener una imagen binaria de umbral (ver imagen de arriba)

7. Lógicamente Y los componentes de tono, saturación y valor umbral juntos para obtener una imagen binaria aproximada en la que solo los píxeles de la pelota de tenis de mesa son blancos, el resto es negro. (vea la imagen de arriba)

8. Suavizado de la imagen con AND "cerrando =cv2.GaussianBlur (cerrando, (5,5), 0)"

9. Uso de HoughCircles para detectar círculos en la imagen

10. Dibujar círculos detectados en el marco de entrada original.

Para más detalles:Raspberry Pi Ball tracking


Proceso de manufactura

  1. Estación meteorológica basada en Raspberry Pi
  2. Monitoreo de temperatura en Raspberry Pi
  3. Estación meteorológica Raspberry Pi 2
  4. Supervisión de la temperatura con Raspberry Pi
  5. Letrero de Makerspace abierto / cerrado de Neon A Shop en Raspberry Pi 2 (El Paso, TX)
  6. Sensor de seguimiento de línea con RPi
  7. Mando a distancia universal Raspberry Pi
  8. Un trozo de Raspberry Pi
  9. Cycle Chaser
  10. Rastreo de rostro con movimiento horizontal / vertical con raspberry pi
  11. Detector de ladrones Raspberry Pi