Hinweis für die mündliche Prüfung
Erklärungen direkt anhand der Arduino IDE
Was sind die grundsätzlichen Aufgabenbereiche dieser Anwendung?
Die OpenMV dient zum Erstellen und Testen von Python-Skripts für eine OpenMV Cam.
- Code-Editor zum Schreiben der Skripts
- Video-Voransicht für das LIVE-Bild der Kamera und grafische Objekte
- Serielles Terminal zum Anzeigen Werten des Python-Skripts
- Schnittstelle zum Übertragen des Skripts auf eine OpenMV Cam
Wie sieht der vollständige Workflow beim Erstellen eines Skripts für die OpenMV Cam mit der OpenMV IDE aus?
- Erstellen eines neuen Skripts
- Schreiben des Python-Codes
- Testen und Anpassen des Python-Codes mit Hilfe der Video-Vorschau
- Übertragen des Skripts auf die OpenMV Cam
Welche beiden Möglichkeiten gibt es ein Skript laufen zu lassen?
1. Ausführen des Skripts in der OpenMV IDE
Während der Entwicklung von Skripts wird man diese meist in der OpenMV IDE laufen lassen und testen. In der Entwickungsumgebung bekommt man dann eine Ansicht des LIVE-Bilds der aktuellen Videodaten angezeigt.
2. Ausführen des Skripts auf der OpenMV Cam
Soll ein Skript auf einer OpenMV Cam im stand alone - Modus ausgeführt werden, so muss dieses zuerst auf die OpenMV Cam übertragen werden. Dazu wird diese über ein USB-Kabel an den Entwicklungscomputer angeschlossen und mit der OpenMV IDE verbunden.
Wie erfolgt die Übertragung des Skripts auf die OpenMV Cam?
Zunächst muss eine OpenMV Cam mit der OpenMV IDE verbunden werden. Beim Verbinden erkennt die Entwicklungsumgebung automatisch, um welche Kamera es sich handelt.
Ist ein Skript fertig und wurde dieses in der IDE getestet, so wird dieses über Extras > Speichern Sie das geöffnete Skript in OpenMV Cam (als main.py) auf das Kameraboard übertragen. Nun kann die Verbindung über das USB-Kabel getrennt werden und die Software läuft auf dem Kameraboard, sobald dieses mit Strom versorgt wird.
Was ist der Serial Monitor und wozu kann dieser verwendet werden?
Zum Testen von Skripts kann man ergänzend zum LIVE-Bild auch Werte von Variablen über das Serial Terminal anzeigen lassen. Somit kann man z. B. Werte, die später auf einen Roboter übertragen werden, bereits während der Entwicklungszeit testen und diese bei sich ändernden Bilddaten mitverfolgen.
Was ist der Threschold Editor und wie verwendet man diesen?
Zum Finden von Objekten in Bildern müssen Farbdefinitionen im LAB-Farbraum angegeben werden. Eine solche setzt sich aus drei Werten zusammen: L (Lichtstärke), A (Grün-Rot-Achse) und B (Blau-Gelb-Achse). Zum Ermitteln dieser Werte für ein bestimmtes Objekt stellt die OpenMV IDE den Threschold Editor (Schwellenwert-Editor) zur Verfügung, mit dem es sehr einfach ist, die sechs Werte für ein gewünschtes Objekt zu finden.
Eine OpenMV Cam wird mit der OpenMV IDE verbunden, der LIVE-Stream gestartet und das gewünschte Objekt wird in Bildmitte platziert. Das Tool zum Finden der Schwellenwerte wird aus dem Hauptmenü mit Extras > Machine Vision > Schwellenwert-Editor gestartet.
Nun können mit den Schiebereglern die optimalen Wertebereiche für L, A und B gesucht werden:
Die besten Werte wurden gefunden, wenn das gewünschte Objekt in der rechten Ansicht weiß dargestellt wird und der gesamte Rest des Bildes schwarz ist. Am unteren Rand werden die 6 threshold-Werte angezeigt, die nun für das Findes dieses Objekts in einem Bild in den Python-Code aufgenommen werden können. Hier die Werte (10, 90, -80, -30, 20, 50) die bereits im vorigen Code-Beispiel zum Finden eines grünen Balls verwendet wurden.