Visión#
Inicializando la clase Visión#
Un sensor de visión se crea utilizando el siguiente constructor:
Visión(puerto, brillo, señales)
Este constructor utiliza tres parámetros:
Parámetro |
Descripción |
---|---|
|
Un Puerto inteligente válido al que está conectado el sensor de visión de IA. |
|
Opcional. El valor de brillo del sensor de visión, de 1 a 100. |
|
Opcional. El nombre de uno o más objetos Firma. |
# Create a new Signature "dark_blue" with the Colordesc class.
dark_blue = Signature(1, -3911, -3435, -3673,10879, 11421, 11150,2.5, 0)
# Create a new Vision Sensor "vision_1" with the Vision
# class, with the "dark_blue" Signature.
vision_1 = Vision(Ports.PORT1, 100, dark_blue)
Este objeto vision_1
de AiVision y el objeto dark_blue
Signature se utilizarán en todos los ejemplos posteriores en esta documentación de API cuando se haga referencia a los métodos de la clase Vision.
Métodos de clase#
tomar_instantánea()#
El método take_snapshot(index, count)
toma la instantánea actual visible para el sensor de visión y detecta los objetos de una Firma o Código determinada.
Antes de tomar una instantánea, debes configurar las firmas que el sensor de visión debe buscar.
Parámetros |
Descripción |
---|---|
índice |
|
contar |
Opcional. El número máximo de objetos a obtener. El valor predeterminado es 8. |
Devuelve: Una tupla de objetos detectados o una tupla vacía si no hay nada disponible.
while True:
# Create a tuple named "darkblue_objects" of detected objects
# matching the "dark_blue" Signature.
darkblue_objects = vision_1.take_snapshot(dark_blue)
# Clear the screen/reset so that we can display
# new information.
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
# Print the amount of objects detected that matched
# the "dark_blue" Signature using the len command.
brain.screen.print("object count:", len(vision_objects))
# Wait 0.5 seconds before repeating the loop and
# taking a new snapshot.
wait(0.5, SECONDS)
objeto_más_grande()#
El método largest_object()
recupera el objeto más grande detectado por el sensor de visión en la última instantánea.
Propiedades del objeto de visión |
Descripción |
---|---|
|
El identificador único del objeto. |
|
La posición x superior izquierda del objeto. |
|
La posición y superior izquierda del objeto. |
|
La posición central x del objeto. |
|
La posición central y del objeto. |
|
El ancho del objeto. |
|
La altura del objeto. |
|
El ángulo del objeto. |
|
Si la cámara Vision detecta el objeto. |
Devuelve: Un objeto Vision o Ninguno si no existe.
while True:
# Create a tuple named "darkblue_objects" of detected objects
# matching the "dark_blue" Signature.
darkblue_objects = vision_1.take_snapshot(dark_blue)
# Clear the screen/reset so that we can display
# new information.
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
# Print the largest detected object's CenterX
# coordinate to the Brain's screen.
brain.screen.print("Center X: ", vision_1.largest_object.centerX)
# Wait 0.5 seconds before repeating the loop and
# taking a new snapshot.
wait(0.5, SECONDS)
instalado()#
El método installed()
verifica si el sensor de visión está conectado.
Devuelve: «Verdadero» si el sensor de visión está conectado. «Falso» si no lo está.
marca de tiempo()#
El método timestamp()
devuelve la marca de tiempo del último paquete de estado recibido del sensor de visión.
Devuelve: La marca de tiempo del último paquete de estado recibido en milisegundos.