1. Schnellstart

OpenMV Cam

Willkommen – wir freuen uns, Ihnen die OpenMV Cam vorzustellen, eine kleine, programmierbare Kamera, die Python direkt auf dem Gerät ausführt. Schreiben Sie ein paar Zeilen Code, drücken Sie auf Ausführen, und die Kamera beginnt zu sehen: Gesichter erkennen, Farben verfolgen, Tags lesen, Linien folgen – ohne PC im Spiel und ohne aufwendiges Setup, durch das Sie sich zuerst kämpfen müssten.

Diese Schnellstartanleitung bringt Sie in wenigen Minuten zum Laufen: Sie installieren die IDE, schließen Ihre Kamera an und führen einen Live-Gesichtsdetektor als Ihr allererstes Skript aus.

1.1. OpenMV IDE installieren

OpenMV IDE ist die Desktop-Anwendung zum Schreiben von Skripten, zum Ausführen auf der Kamera und zum Beobachten der Ergebnisse in Echtzeit. Laden Sie sie für Windows, macOS oder Linux hier herunter und installieren Sie sie anschließend:

  • Windows – führen Sie den Installer aus. Er installiert die IDE zusammen mit den USB-Treibern der Kamera; folgen Sie den Standardabfragen.

  • macOS – öffnen Sie die .dmg und ziehen Sie OpenMV IDE in den Ordner Programme.

  • Linux – führen Sie chmod +x openmv-ide-*.run && ./openmv-ide-*.run aus und folgen Sie dann den Installer-Abfragen.

Bemerkung

Für automatisierte oder Headless-Setups lassen sich die Installer auch über die Kommandozeile mit Flags für die stille Installation ausführen. Die genauen plattformspezifischen Befehle finden Sie in der openmv-ide README.

1.2. Ihre Kamera anschließen

Schließen Sie die Kamera mit einem USB-Datenkabel an Ihren Computer an. Warten Sie, bis ihr Laufwerk eingebunden wird und die blaue LED zu blinken beginnt, und klicken Sie dann auf die Verbinden-Schaltfläche – das Stecker-Symbol am unteren Rand der Symbolleiste.

Beim ersten Verbinden vergleicht die IDE die Firmware der Kamera mit der Version, die sie mitbringt, und bietet an, sie zu aktualisieren. Bestätigen Sie die Abfrage, um die neueste Firmware zu flashen; das dauert ein paar Sekunden, und die IDE verbindet sich nach Abschluss von selbst wieder.

Falls die Kamera nicht erscheint oder Sie die Details dazu wissen möchten, was Verbinden und Aktualisieren bewirken, siehe Eine Kamera verbinden und Firmware-Updates und Wiederherstellung.

Bemerkung

Hängen Sie irgendwo fest? Schreiben Sie in den OpenMV-Foren – die Community und das OpenMV-Team helfen Ihnen gerne.

1.3. Ihr erstes Skript ausführen

Ihre OpenMV Cam wird mit Googles MediaPipe-BlazeFace-Gesichtsdetektor im Flash ausgeliefert. Fügen Sie dieses Skript in den Editor ein:

import csi
import time
import ml
from ml.postprocessing.mediapipe import BlazeFace

# Set up the camera sensor.
csi0 = csi.CSI()
csi0.reset()                # Initialize the sensor to a known state.
csi0.pixformat(csi.RGB565)  # Capture 16-bit colour.
csi0.framesize(csi.QVGA)    # Set a small, fast frame size.

# BlazeFace was trained on square images, so crop to a centred
# square the size of the sensor's height.
side = csi0.height()
csi0.window((side, side))

# Load the built-in face detector. The post-processor turns the
# network's raw output into a list of detections; threshold sets how
# confident a detection must be to count.
model = ml.Model("/rom/blazeface_front_128.tflite",
                 postprocess=BlazeFace(threshold=0.4))

clock = time.clock()        # For measuring the frame rate.
while True:
    clock.tick()
    img = csi0.snapshot()   # Capture one frame.

    # predict() runs the network and returns one
    # ((x, y, w, h), score, keypoints) tuple per detected face.
    for rect, score, keypoints in model.predict([img]):
        # Draw the box around the face...
        ml.utils.draw_predictions(img, [rect], ("face",),
                                  ((0, 0, 255),), format=None)
        # ...and mark the six landmarks: eyes, nose, mouth, ears.
        ml.utils.draw_keypoints(img, keypoints, color=(255, 0, 0))

    print(clock.fps(), "fps")

Drücken Sie die grüne Run-Schaltfläche und richten Sie die Kamera auf ein Gesicht. Der Framebuffer-Viewer zeichnet einen Rahmen um jedes Gesicht und markiert Augen, Nase, Mund und Ohren, während das serielle Terminal die Bildrate ausgibt.

Dieses Skript – und je eines für nahezu jede Funktion der Kamera – ist außerdem in der IDE unter File → Examples eingebaut, gefiltert nach Ihrem angeschlossenen Board. Öffnen Sie eines, drücken Sie auf Ausführen und beginnen Sie zu erkunden, was die Kamera kann.

1.4. Wie es weitergeht

Wo Sie einsteigen, hängt davon ab, was Sie bereits wissen. Das Tutorial hat drei Ausgangspunkte – neu in Python, neu in Hardware oder bereit für maschinelles Sehen – wählen Sie also den passenden. Die Referenzen und der IDE-Leitfaden stehen jederzeit bereit, wenn Sie sie brauchen.