13.1.7. Die Bereichsansichten#

Der Bereich unter dem Framebuffer-Viewer zeigt mehr als das Histogramm. Ein Auswahlschalter links in seiner Titelleiste schaltet ihn zwischen fünf Ansichten um, jede ein anderes Instrument, das auf die verbundene Kamera gerichtet ist:

  • Histogramm – die Pixelstatistik des aktuellen Frames, beschrieben auf einer eigenen Seite.

  • Board-Info – was die verbundene Kamera ist.

  • Speicher – wie viel seines RAM das Skript gerade verwendet, live.

  • Kanäle – die Werte und Steuerelemente, die das Skript veröffentlicht, beschrieben auf einer eigenen Seite.

  • Statistiken – was die Verbindung zwischen IDE und Kamera gerade tut.

Die Auswahl wird über Sitzungen hinweg gemerkt. Nur die angezeigte Ansicht verrichtet Arbeit: Wechseln Sie vom Histogramm weg, stoppt seine Berechnung, bis Sie zurückwechseln, sodass es die Vorschau nichts kostet, den Bereich auf Speicher oder Kanäle zu lassen. Jede Ansicht erklärt sich selbst, wenn sie nichts anzeigen kann – keine Kamera verbunden oder eine Kamera, deren Firmware die Daten nicht meldet –, und die Ansichten Board-Info, Speicher und Statistiken benötigen eine Kamera mit dem v2-Debug-Protokoll (Firmware 5.0.0 oder neuer).

13.1.7.1. Board-Info#

Board-Info ist der Ausweis der Kamera: Board-Typ und angeschlossener Sensor, der serielle Port, die Firmware-, Protokoll- und Bootloader-Versionen, die CPU- und Geräte-IDs, die USB-Hersteller- und -Produkt-IDs, die Größen von Stream-Puffer, Framebuffer, Flash und RAM sowie eine Reihe von Ja/Nein-Fähigkeiten – GPU, NPU, ISP, Video-Encoder, JPEG-Codec, DRAM, CRC, Performance-Counter, Profiler-Unterstützung, WLAN, Bluetooth, SD-Karte, Ethernet, High-Speed-USB und mehrere Kerne. Es ist die erste Anlaufstelle, wenn eine Support-Frage mit „welches Board ist das genau“ beginnt, und der Text ist auswählbar, sodass Sie alles in einen Fehlerbericht kopieren können.

The Board Info view listing an OpenMV N6 with a Lepton sensor: board, sensor, port, firmware, protocol and bootloader versions, CPU and device ids, USB id, buffer sizes, and the yes / no capability rows

Board-Info für eine OpenMV N6 mit Wärmebildsensor.#

13.1.7.2. Speicher#

Speicher zeichnet die Speichernutzung der Kamera, während ein Skript läuft: ein Diagramm für den MicroPython-Heap mit Garbage Collection und eines für jeden Speicherpool der Firmware, jeweils mit den Werten belegt / gesamt, frei und Spitze darunter sowie einer Linie, die die höchste seit dem Verbinden gesehene Belegung markiert. Die Diagramme laufen mit der Zeit mit, sodass das normale Sägezahnmuster des Heaps – Allokationen steigen, bis der Garbage Collector läuft – auf einen Blick erkennbar ist, ein langsames Leck sich als Treppe zeigt und eine Frame-große Allokation als Spitze in jedem Schleifendurchlauf. Die Pools melden außerdem Persistent, den von langlebigen Allokationen wie Framebuffern gehaltenen Speicher, im Unterschied zu dem, was das Skript laufend umschlägt.

The Memory view with the GC heap graph showing a sawtooth of allocations and collections, and a memory pool graph below, each with used / total, free, persist, and peak figures

Die Speicher-Ansicht: der Sägezahn des Heaps und ein Speicherpool, mit ihren Werten.#

13.1.7.3. Statistiken#

Statistiken ist das Dashboard für das Debug-Protokoll selbst. Die Abschnitte Gerät und Host zählen die auf jeder Seite gesendeten und empfangenen Pakete, Prüfsummen- und Sequenzfehler, Neuübertragungen und Transportfehler, und die Tabelle Kanäle dazwischen listet jeden Kanal, den die Kamera registriert hat, mit seiner Ereignisanzahl und Ereignisrate. Es ist die Diagnoseansicht für eine Verbindung, die sich falsch verhält: ein Stream, der stockt, eine Kamera, die über ein langes Kabel Frames verliert, oder ein Skript, das so schnell veröffentlicht, dass die Verbindung nicht mithalten kann – die Zähler zeigen, welche Seite verliert und wie schlimm.

The Statistics view with the device counters, the per-channel event table, and the host counters stacked in the pane

Die Statistiken-Ansicht: Protokollzähler für jede Seite und Ereignisraten pro Kanal.#