1. Rychlý start

OpenMV Cam

Vítejte – s nadšením vám představujeme OpenMV Cam, malou programovatelnou kameru, která spouští Python přímo na zařízení. Napište pár řádků kódu, stiskněte spustit a kamera začne vidět: detekuje obličeje, sleduje barvy, čte značky, jede po čarách – bez PC ve smyčce a bez náročného nastavování, kterým by se bylo třeba nejprve probojovat.

Tento průvodce rychlým startem vás během několika minut uvede do provozu: nainstalujete IDE, připojíte kameru a jako svůj úplně první skript spustíte živý detektor obličejů.

1.1. Nainstalujte OpenMV IDE

OpenMV IDE je desktopová aplikace pro psaní skriptů, jejich spouštění na kameře a živé sledování výsledků. Stáhněte si je pro Windows, macOS nebo Linux zde a poté je nainstalujte:

  • Windows – spusťte instalátor. Nainstaluje IDE spolu s USB ovladači kamery; řiďte se výchozími pokyny.

  • macOS – otevřete .dmg a přetáhněte OpenMV IDE do složky Aplikace.

  • Linux – spusťte chmod +x openmv-ide-*.run && ./openmv-ide-*.run a poté se řiďte pokyny instalátoru.

Poznámka

Pro automatizované nebo bezhlavé (headless) instalace lze instalátory spustit i z příkazové řádky s příznaky pro tichou instalaci. Přesné příkazy pro jednotlivé platformy najdete v openmv-ide README.

1.2. Připojte kameru

Připojte kameru k počítači pomocí USB datového kabelu. Počkejte, až se připojí její disk a modrá LED začne blikat, a poté klikněte na tlačítko připojení – ikonu zástrčky na spodním okraji panelu nástrojů.

Při prvním připojení IDE porovná firmware kamery s verzí, se kterou je dodáváno, a nabídne jeho aktualizaci. Přijměte výzvu k zapsání nejnovějšího firmwaru; trvá to několik sekund a IDE se po dokončení samo znovu připojí.

Pokud se kamera neobjeví nebo chcete podrobnosti o tom, co připojení a aktualizace dělají, viz Připojení kamery a Aktualizace a obnova firmwaru.

Poznámka

Zaseklí na něčem? Napište na fóra OpenMV – komunita i tým OpenMV vám rádi pomohou.

1.3. Spusťte svůj první skript

Vaše OpenMV Cam je dodávána s detektorem obličejů BlazeFace od společnosti Google (MediaPipe) ve flash paměti. Vložte tento skript do editoru:

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")

Stiskněte zelené tlačítko Run a namiřte kameru na obličej. Prohlížeč snímkového bufferu (frame buffer) kreslí kolem každého obličeje rámeček a označuje oči, nos, ústa a uši, zatímco sériový terminál vypisuje snímkovou frekvenci.

Tento skript – a jeden pro téměř každou funkci, kterou kamera má – je rovněž zabudován v IDE pod File → Examples, filtrovaný podle vaší připojené desky. Otevřete některý z nich, stiskněte spustit a začněte zkoumat, co kamera dokáže.

1.4. Kam dál

Kam se zapojíte, závisí na tom, co už znáte. Tutoriál má tři výchozí body – nováček v Pythonu, nováček v hardwaru nebo připraven na strojové vidění – takže si vyberte ten, který vám vyhovuje. Reference a průvodce IDE jsou tu kdykoli je budete potřebovat.