1. Snelstartgids¶
Welkom – we stellen je graag voor aan de OpenMV Cam, een kleine, programmeerbare camera die Python rechtstreeks op het apparaat draait. Schrijf een paar regels code, druk op uitvoeren, en de camera begint te zien: gezichten detecteren, kleuren volgen, tags lezen, lijnen volgen – zonder pc in de lus en zonder zware setup om eerst doorheen te ploeteren.
Met deze snelstartgids ben je binnen enkele minuten aan de slag: je installeert de IDE, sluit je camera aan en draait een live gezichtsdetector als je allereerste script.
1.1. Installeer OpenMV IDE¶
OpenMV IDE is de desktopapplicatie voor het schrijven van scripts, het uitvoeren ervan op de camera en het live bekijken van de resultaten. Download het voor Windows, macOS of Linux hier en installeer het vervolgens:
Windows – voer het installatieprogramma uit. Het installeert de IDE samen met de USB-stuurprogramma’s van de camera; volg de standaardprompts.
macOS – open het
.dmg-bestand en sleep OpenMV IDE naar de map Programma’s.Linux – voer
chmod +x openmv-ide-*.run && ./openmv-ide-*.runuit en volg vervolgens de prompts van het installatieprogramma.
Notitie
Voor geautomatiseerde of headless setups draaien de installatieprogramma’s ook vanaf de opdrachtregel met vlaggen voor stille installatie. Zie de openmv-ide README voor de exacte commando’s per platform.
1.2. Sluit je camera aan¶
Sluit de camera met een USB-datakabel aan op je computer. Wacht tot het station ervan is gekoppeld en de blauwe LED begint te knipperen, en klik dan op de verbindingsknop – het stekkerpictogram onderaan de werkbalk.
De eerste keer dat je verbinding maakt, vergelijkt de IDE de firmware van de camera met de versie waarmee deze wordt geleverd en biedt aan om die bij te werken. Accepteer de prompt om de nieuwste firmware te flashen; dat duurt enkele seconden, en de IDE maakt vanzelf opnieuw verbinding wanneer het klaar is.
Als de camera niet verschijnt, of als je de details wilt van wat verbinden en bijwerken doen, zie Een camera verbinden en Firmware-updates en -herstel.
Notitie
Loop je ergens vast? Plaats een bericht op het OpenMV-forum – de community en het OpenMV-team helpen je graag.
1.3. Voer je eerste script uit¶
Je OpenMV Cam wordt geleverd met Googles MediaPipe BlazeFace gezichtsdetector op het flashgeheugen. Plak dit script in de editor:
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")
Druk op de groene knop Run en richt de camera op een gezicht. De framebuffer-viewer tekent een vak rond elk gezicht en markeert de ogen, neus, mond en oren, terwijl de seriële terminal de framesnelheid afdrukt.
Dit script – en een voor vrijwel elke functie die de camera heeft – is ook ingebouwd in de IDE onder File → Examples, gefilterd op je aangesloten board. Open er een, druk op uitvoeren en begin te verkennen wat de camera kan.
1.4. Waar nu verder te gaan¶
Waar je instapt hangt af van wat je al weet. De tutorial heeft drie startpunten – nieuw met Python, nieuw met hardware, of klaar voor machine vision – dus kies degene die bij je past. De naslagwerken en de IDE-gids staan hier klaar wanneer je ze nodig hebt.