Dibujo

Los sistemas de visión normalmente necesitan proporcionar cierta retroalimentación a los usuarios. Es muy intuitivo mostrarla directamente en la imagen. Al igual que en el programa de inicio rápido de 10 minutos, cuando se encuentra un bloque de color, se marca esta área con un recuadro rectangular, lo cual resulta muy intuitivo.

Nota:

  • El color puede ser un valor de escala de grises (0-255) o una tupla de valores de color (r, g, b). El valor predeterminado es blanco.

  • La palabra clave color debe marcarse de forma explícita con color=. Por ejemplo:

image.draw_line((10,10,20,30), color=(255,0,0))
image.draw_rectangle(rect_tuple, color=(255,0,0))

Dibujar una línea

  • image.draw_line(line_tuple, color=White) Dibuja una línea recta en la imagen.
    • El formato de line_tuple es (x0, y0, x1, y1), que representa una línea recta desde (x0, y0) hasta (x1, y1).
    • El color puede ser un valor de escala de grises (0-255) o una tupla de valores de color (r, g, b). El valor predeterminado es blanco

Dibujar un recuadro

  • image.draw_rectangle(rect_tuple, color=White) Dibuja un recuadro rectangular en la imagen.
    • El formato de rect_tuple es (x, y, w, h).

Dibujar un círculo

  • image.draw_circle((x, y, radius), color=White) Dibuja un círculo en la imagen.
    • x,y son las coordenadas del centro del círculo
    • radius es el radio del círculo

Dibujar una cruz

  • image.draw_cross((x, y), size=5, color=White) Dibuja una cruz en la imagen
    • x,y son las coordenadas
    • size es el tamaño de los dos lados

Escribir texto

  • image.draw_string((x, y), text, color=White) Escribe texto en la imagen, de 8x10 píxeles
    • x,y son las coordenadas. Usar \n, \r y \r\n moverá el cursor a la siguiente línea.
    • text es la cadena que se va a escribir.

Ejemplo

# Ejemplo de Hello World
#
# ¡Bienvenido al IDE de OpenMV! Haz clic en el botón de flecha verde de abajo para ejecutar el script.

import csi, image, time
csi0 = csi.CSI()

csi0.reset() # Inicializa la cámara
csi0.pixformat(csi.RGB565) # Formato RGB565.
csi0.framesize(csi.QQVGA)
csi0.snapshot(frames=10) # Salta 10 fotogramas para que la nueva configuración surta efecto
while(True):
    img = csi0.snapshot()         # Toma una foto y devuelve la imagen.
    img.draw_line((20, 30, 40, 50))
    img.draw_line((80, 50, 100, 100), color=(255,0,0))
    img.draw_rectangle((20, 30, 41, 51), color=(255,0,0))
    img.draw_circle((50, 50, 30))
    img.draw_cross((90, 60),size=10)
    img.draw_string((10, 10), "hello world!")

results matching ""

    No results matching ""