Die OpenMV Cam ist eine kleine, energieeffiziente Mikrocontroller-Platine, die es ermöglicht, Anwendungen mit maschinellem Sehen in der realen Welt einfach umzusetzen. Sie programmieren die OpenMV Cam in hochwertigen Python-Skripten (dank des MicroPython-Betriebssystems) anstelle von C/C++. Dies erleichtert den Umgang mit den komplexen Ausgaben von Maschinensehen-Algorithmen und das Arbeiten mit hochwertigen Datenstrukturen. Dennoch behalten Sie die vollständige Kontrolle über Ihre OpenMV Cam und deren I/O-Pins in Python. Sie können problemlos das Aufnehmen von Bildern und Videos durch externe Ereignisse auslösen oder Maschinensehen-Algorithmen ausführen, um zu bestimmen, wie Ihre I/O-Pins gesteuert werden sollen.
Die OpenMV-Kamera bietet folgende Merkmale:
- STM32H743IIARM Cortex M7 Prozessor mit 480 MHz, 32 MB SDRAM + 1 MB SRAM und 32 MB externem Flash + 2 MB internem Flash. Alle I/O-Pins geben 3,3 V aus und sind 5 V tolerant. Der Prozessor verfügt über folgende I/O-Schnittstellen:
- Eine vollständige USB-Schnittstelle (12 Mbit/s) zu Ihrem Computer. Ihre OpenMV-Kamera erscheint als virtueller COM-Port und als USB-Speicherstick, wenn sie angeschlossen wird.
- Ein μSD-Kartensteckplatz mit Lese-/Schreibgeschwindigkeiten von 100 Mbit/s, der es Ihrer OpenMV-Kamera ermöglicht, Bilder aufzunehmen und maschinelle Bildverarbeitungsdaten mühelos von der μSD-Karte zu laden.
- Ein SPI-Bus, der mit bis zu 80 Mbit/s betrieben werden kann, ermöglicht es Ihnen, Bilddaten problemlos vom System zum LCD-Shield, zum WiFi-Shield oder zu einem anderen Mikrocontroller zu streamen.
- Ein I2C-Bus (bis zu 1 Mb/s), ein CAN-Bus (bis zu 1 Mb/s) und ein asynchroner serieller Bus (TX/RX, bis zu 7,5 Mb/s) zur Verbindung mit anderen Mikrocontrollern und Sensoren.
- Ein 12-Bit-ADC und ein 12-Bit-DAC.
- Zwei I/O-Pins für Servosteuerung.
- Unterbrechungen und PWM auf allen I/O-Pins (das Board verfügt über 10 I/O-Pins).
- Und eine RGB-LED sowie zwei Hochleistungs-850-nm-IR-LEDs.
- 32 MB externer 32-Bit-SDRAM mit 100 MHz Taktung für eine Bandbreite von 400 MB/s.
- 32 MB externer Quad-SPI-Flash-Speicher mit 100 MHz Taktung im 4-Bit-DDR-Modus für eine Bandbreite von 100 MB/s (Lesegeschwindigkeit).
- Ein abnehmbares Kameramodulsystem mit Unterstützung für 8-Bit-Parallelschnittstelle, das es der OpenMV Cam H7 ermöglicht, mit verschiedenen Sensoren zu kommunizieren:
- Die OpenMV Cam H7 Plus ist mit einemOV5640Der Bildsensor ist in der Lage, 2592x1944 (5MP) Bilder aufzunehmen. Die meisten einfachen Algorithmen laufen mit 25-50 FPS bei QVGA-Auflösungen (320x240) und darunter. Ihr Bildsensor ist mit einem 2,8-mm-Objektiv auf einem standardmässigen M12-Objektivgewinde ausgestattet. Wenn Sie speziellere Objektive mit Ihrem Bildsensor verwenden möchten, können Sie diese problemlos selbst kaufen und anbringen. Für den Einsatz speziellerer Objektive können Sie diese einfach installieren.
- Für professionelle Machine-Vision-Anwendungen können Sie unserGlobal Shutter Kamera-Modul MT9V034SingTown.
- Für Infrarot-Thermografie-Anwendungen im Bereich der maschinellen Bildverarbeitung können Sie unserFLIR Lepton Wärmebildmodul.
- 3.7-V-Lithium-Ionen-Batterieanschluss, Sie können unseren SingTown erwerben3.7V-1000MAH Lithium-Ionen-Akku
Dokumentation:https://singtown.com/openmv/
Anwendungen
Derzeit kann die OpenMV-Kamera Folgendes leisten (weitere Funktionen folgen):
- Neuronales Netzwerk Objekterkennung
- Mit OpenMV können Sie neuronale Netze für die Objekterkennung trainieren, um beliebige Ziele zu detektieren. Beispielsweise können verschiedene Zahlen, Früchte, Markierungen, Bauteile oder spezifische unregelmässige Objekte trainiert werden, um die Anzahl, Koordinaten und Objekttypbezeichnung spezifischer Ziele zu identifizieren.
- Sie können Verkehrsschilder auf unseren tatsächlichen Strassen anhand unserer Videoanleitungen erkennen, wie beispielsweise Hupverbot, Parkverbot, Geschwindigkeitsbegrenzung 80 usw./learn/50918
- Neuronales Netzwerk Klassifizierung
- Mit OpenMV können Sie neuronale Netze für die Objekterkennung trainieren, um beliebige Ziele zu detektieren. Beispielsweise können verschiedene Zahlen, Früchte, Markierungen, Bauteile oder spezifische unregelmässige Objekte trainiert werden, um die Anzahl, Koordinaten und Objekttypbezeichnung spezifischer Ziele zu identifizieren.
- Es kann anhand unseres Video-Tutorials klassifizieren, ob eine Person eine Maske trägt./learn/50872
- TensorFlow Lite für Mikrocontroller
- TensorFlow Lite-Unterstützung ermöglicht es Ihnen, benutzerdefinierte Bildklassifizierungs- und Segmentierungsmodelle auf der OpenMV Cam auszuführen. Mit TensorFlow Lite können Sie komplexe Bereiche im Bild mühelos klassifizieren und die 1/0-Pins basierend auf dem, was Sie sehen, steuern.

- Frame Differencing
- Sie können den Frame-Differencing-Algorithmus auf Ihrer OpenMV-Kamera verwenden, um Bewegungen in einer Szene zu erkennen. Frame-Differencing ermöglicht es Ihrer OpenMV, in Sicherheitsanwendungen eingesetzt zu werden.
- Farbverfolgung
- Mit OpenMV können Sie bis zu 16 Farben gleichzeitig in einem Bild erkennen (obwohl Sie nie mehr als 4 Farben finden möchten), und jede Farbe kann eine beliebige Anzahl verschiedener Blobs aufweisen. OpenMV informiert Sie über die Position, Größe, den Mittelpunkt und die Ausrichtung jedes Blobs. Durch Farbverfolgung kann Ihre OpenMV Kamera so programmiert werden, dass sie die Sonne verfolgt, Linien folgt, Ziele nachverfolgt und mehr. Videodemo:/learn/49993

- Marker Tracking
- Sie können Ihre OpenMV-Kamera verwenden, um Farbgruppen anstelle einzelner Farben zu erkennen. Dies ermöglicht es Ihnen, Farbmarkierungen (2 oder mehr Farbetiketten) an Objekten anzubringen, und OpenMV erfasst den Inhalt der markierten Objekte.
- Gesichtserkennung
- Sie können Ihre OpenMV-Kamera zur Gesichtserkennung (oder zur Erkennung beliebiger Objekte) einsetzen. Ihre OpenMV-Kamera kann Haar-Vorlagen zur allgemeinen Objekterkennung verarbeiten und verfügt über integrierte Frontalgesichts- und Augen-Haar-Vorlagen zur Erkennung von Gesichtern und Augen./learn/50013
- Eye Tracking
- Mit Eye Tracking können Sie die Blickrichtung einer Person erfassen. Dies lässt sich zur Steuerung von Robotern nutzen. Eye Tracking erfasst die Pupillenposition und erkennt gleichzeitig, ob Augen im Bild vorhanden sind.
- Personenerkennung
- Sie können den integrierten Personendetektor (TensorFlow Lite-Modell) verwenden, um festzustellen, ob sich Personen im Sichtfeld befinden.
- Optical Flow
- Sie können optischen Fluss verwenden, um Bewegungen vor Ihrer OpenMV-Kamera zu erfassen. Beispielsweise lässt sich optischer Fluss bei einem Quadrocopter zur Stabilisierung in der Luft einsetzen.
- QR-Code-Erkennung/-Decodierung
- Mit Ihrer OpenMV-Kamera können Sie QR-Codes in ihrem Sichtfeld lesen. Durch die QR-Code-Erkennung/-Entschlüsselung ermöglichen Sie intelligenten Robotern, Etiketten in ihrer Umgebung zu lesen.
- Data Matrix Erkennung/Dekodierung
- OpenMV Cam kann auch Data-Matrix-Codes (2D-Barcodes) erkennen und dekodieren. Das Video dazu können Sie hier einsehen.
- Lineare Strichcode-Entschlüsselung
- Die OpenMV Cam kann auch 1D-Barcodes verarbeiten. Sie kann EAN2, EAN5, EAN8, UPCE, ISBN10, UPCA, EAN13, ISBN13, I25, DATABAR, DARABAR_EXP, CODABAR, CODE39, CODE93 und CODE128 decodieren. Sehen Sie sich hier unser Video an:/learn/50017
- AprilTag-Verfolgung
- Noch besser als die oben genannten QR-Codes kann die OpenMV-Kamera auch AprilTags verfolgen. AprilTags sind hochmoderne Referenzmarkierungen, die rotationsinvariant, skalierungsinvariant, scherungsinvariant und beleuchtungsinvariant sind. Sehen Sie sich hier unser Video an:/learn/49590
- Linien-Erkennung
- OpenMV Cam kann unendliche Linien in nahezu voller Bildrate schnell erkennen. Zudem findet es auch nicht-unendliche Liniensegmente. Das Video dazu finden Sie hier:/learn/50009
- Kreiserkennung
- Mit OpenMV können Sie problemlos Kreise in Bildern erkennen.
- Rechteckerkennung
- OpenMV kann ebenfalls Rechtecke erkennen, indem es den Quadrat-Erkennungscode aus der AprilTag-Bibliothek verwendet.
- Template Matching
- Sie können OpenMV-Vorlagenabgleich verwenden, um zu erkennen, ob sich vorlagenähnliche Bilder im Sichtfeld befinden. Beispielsweise kann Vorlagenabgleich eingesetzt werden, um Markierungen auf Leiterplatten zu finden oder bekannte Zahlen auf Displays zu lesen.
- Bildaufnahme
- Mit OpenMV können Sie RGB565/Graustufen-BMP/JPG/PPM/PGM-Bilder erfassen. Sie können direkt in Python-Skripten steuern, wie Bilder aufgenommen werden. Am wichtigsten ist, mit Maschinenseh-Algorithmen Linien zu zeichnen, Zeichen darzustellen und dann zu speichern.
- Video-Aufzeichnung
- Mit der OpenMV-Kamera können Sie RGB565/Graustufen-MJPEG-Videos oder GIF-Bilder (oder RAW-Videos) aufnehmen. Sie können in Python-Skripten direkt steuern, wie jedes Videobild aufgezeichnet wird, und haben volle Kontrolle darüber, wann die Videoaufnahme beginnt und endet. Zudem können Sie, ähnlich wie beim Fotografieren, Maschinensichtalgorithmen verwenden, um Linien zu zeichnen, Zeichen darzustellen und diese dann zu speichern.
Schliesslich können alle oben genannten Funktionen mit der IO-Pin-Steuerung kombiniert werden, um mit Ihren eigenen benutzerdefinierten Anwendungen zu arbeiten und mit der realen Welt zu interagieren.