Detección de objetos

Introducción

Robobo puede detectar caras mediante el procesado de la imagen de la cámara. 

Este módulo no está implementado en el simulador. 

Elementos de programación

1. Clase DetectedObject

Representa un objeto detectado por Robobo.

Atributos:

        • x (int): La coordenada X del centro del bounding box del objeto, medida en píxeles desde el lado izquierdo de la pantalla. Es un valor positivo.
        • y (int): La coordenada Y del centro del bounding box del objeto, medida en píxeles desde el lado superior de la pantall

2. Método startObjectRecognition()

startObjectRecognition()
Habilita el reconocimiento de objetos.

El reconocimiento de objetos está deshabilitado por defecto.

Este cambio es persistente.

3. Método stopObjectRecognition()

startObjectRecognition()
Habilita el reconocimiento de objetos.

El reconocimiento de objetos está deshabilitado por defecto.

Este cambio es persistente.

4. Método readDetectedObject()

readDetectedObject()
Lee el último objeto detectado por Robobo.

Devuelve:
• El objeto (DetectedObject). Ver Clase DetectedObject.

5. Método whenAnObjectIsDetected

whenAnObjectIsDetected(callback)
Establece la función callback que se llama cuando se detecta un objeto.

Parámetros:
callback (fun): La función callback que será llamada.

Ejemplo de Uso

El siguiente programa hace que Robobo active la detección de objetos haciendo uso del método startObjectRecognition y coloque el motor TILT en una posición adecuada para ver lo que hay en el entorno. Luego, hace que Robobo diga en voz alta de forma continuada la etiqueta del objeto detectado y su nivel de confianza. De este modo, informa qué objeto se ha detectado y con qué intervalo de confianza.

from robobopy.Robobo import Robobo

rob = Robobo('localhost')
rob.connect()
rob.startObjectRecognition()
rob.moveTiltTo(85, 30)

def say_object():
    obj = rob.readDetectedObject()
    if obj.label is not None:

        rob.sayText(f'Se ha detectado el objeto {obj.label} con una confianza del {obj.confidence:.2f}')

rob.whenAnObjectIsDetected(say_object)

# el programa se mantiene en ejecución continua
while True:
    rob.wait(0.1)
Robobo
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.