So berechnen Sie die Bildhelligkeit für die Verwendung mit einem LED-Panel

Ich verwende eine 64x64-RGB-LED-Matrix, für die ich einige Inhalte vorbereite. Die vorhandene Firmware liest RGB888-Videodateien.

Ich möchte diese Dateien vor dem Hochladen analysieren, um sicherzustellen, dass die Gesamthelligkeit einen Schwellenwert nicht überschreitet, um die Stromstärke in einem glücklichen Bereich zu halten.

Bisher denke ich darüber nach, die maximale Helligkeit basierend auf der durchschnittlichen Helligkeit jedes Videoframes zu erhalten.

Meine Frage bezieht sich auf die Berechnung der Helligkeit auf eine Weise, die in Bezug auf die Elektronik sinnvoll ist (womit ich nicht sehr erfahren bin).

Was ist die beste Methode, um die Helligkeit eines RGB888-Pixels in Bezug auf die von einer RGB-LED verwendete Stromstärke zu berechnen?

Es gibt mehrere Farbräume, die einen Luminanzkanal haben (YUV, YCrCb, XYZ, Luv, L*a*b*, HLS, HSV), aber ist jeder davon sinnvoll, wenn es darum geht, wie viel Strom eine LED ziehen wird ?

Wäre eine einfache Mittelung der R-, G-, B-Werte näher?

Antworten (1)

Die Frage, die Sie sich stellen sollten, lautet nicht „Wie hell werden die LEDs sein“, sondern „Wie hoch ist die Einschaltdauer der LEDs“, denn die Einschaltdauer bestimmt sowohl die Helligkeit als auch die Stromaufnahme. Helligkeit kann eine lustige Sache sein, da das, was Sie wahrnehmen, nicht mit dem verwendeten Strom übereinstimmt.

Sie können eine 1:1-Beziehung zwischen dem Arbeitszyklus des PWM-Signals einer LED und dem aufgenommenen Strom schätzen (0 % Einschaltdauer = aus = 0 % maximaler Strom, 50 % Einschaltdauer = halb an = 50 % maximaler Strom, 100 % Einschaltdauer = voll eingeschaltet = 100 % max. Strom).

Angenommen, Sie wissen, wie viel Strom jeder Kanal von R, G und B verbraucht, wenn er pro LED voll eingeschaltet ist, können Sie ausrechnen, wie hoch die Stromaufnahme für ein Vollbild wäre.

Es ist wichtig, die drei Kanäle getrennt zu halten, da der Strom für jeden Kanal sehr unterschiedlich sein kann - zum Beispiel wird Blau heller wahrgenommen als Rot und kann mit weniger Strom beleuchtet werden, um dies auszugleichen.

Für jedes Pixel im Bild nehmen Sie also jeweils R, G und B und berechnen die durchschnittliche Intensität dieses Kanals über das gesamte Bild. Angenommen, es ergibt 20 % Rot, 15 % Grün und 45 % Blau. Insgesamt hätten Sie also 20 % des gesamten roten Stroms, 15 % des gesamten grünen Stroms und 45 % des gesamten blauen Stroms.

Angenommen, jede rote und grüne LED benötigt 10 mA und jede blaue 5 mA (der Einfachheit und Argumentation halber), wenn sie vollständig eingeschaltet ist. Das wäre 10 M A × 64 2 jeweils für rot und grün, und 5 M A × 64 2 für blau.

Nachrechnen ergibt das einen Gesamtstrom von jeweils 40,96 A für Rot und Grün und 20,48 A für Blau.

Bei 20 % durchschnittlicher Helligkeit und damit 20 % durchschnittlicher Einschaltdauer wären das 20 % von 40,96 A, was 8,192 A für Rot entspricht. Bei Grün wären das bei 15 % 6,144 A und bei Blau bei 45 % 9,216 A. Addieren Sie sie zusammen und Sie erhalten 23,552A.

Natürlich ist das nur eine ungefähre ungefähre Zahl, und die Zahlen, die ich ausgewählt habe, um sie zu demonstrieren, sind wahrscheinlich völlig falsch.

Dies setzt auch voraus, dass jede LED eine separate Einheit ist und einzeln gesteuert wird.

Was Sie jedoch durchaus feststellen können, ist, dass das Display zeilen- oder spaltenweise oder willkürlich blockweise abgetastet wird und immer nur eine Zeile tatsächlich beleuchtet ist.

In dieser Situation ist die aktuelle Ziehung zu jeder Zeit die aktuelle Ziehung der gerade angezeigten Linie. Sie müssten also die hellste Linie oder was auch immer die MUX-Einheit ist, finden und den Strom nur für diesen Unterabschnitt berechnen, da dies der Spitzenwert für Ihren Rahmen wäre.

Angenommen, das Display scannt jeweils eine Zeile - das ist eine Zeile mit 64 Pixeln auf einmal. Sie möchten also die durchschnittliche Helligkeit und damit die durchschnittliche Stromaufnahme (maximaler Strom pro LED * 64 * durchschnittliche Einschaltdauer) ermitteln %) für jeden einzelnen Zeile Ihres Bildes. Sie berechnen dann, welche Leitung die maximale Gesamtstromaufnahme hat, und nehmen dies als Maximum für Ihren Rahmen.

Wow! Das ist eine sehr erschöpfende Antwort (+1). Ich verstehe das meiste. Mich interessiert wohl nicht die wahrgenommene Helligkeit, sondern ein Zusammenhang zwischen Farbe und Helligkeit eines Pixels im RGB88-Format und Stromaufnahme. Der Punkt, den Sie mit unterschiedlichem Strom pro Kanal gemacht haben, ist sinnvoll und es klingt so, als sollte ich nicht in einen anderen Farbraum konvertieren und die Helligkeit berechnen, sondern die r, g, b-Werte beibehalten und die r, g, b-Werte pro Frame berechnen in Trennung (da jeder Kanal unterschiedliche Leistung ziehen kann). Ich bin mir nicht 100% sicher, ob ich den letzten Teil über den Multiplexer und die durchschnittliche Helligkeit pro Zeile verstanden habe ...
...bedeutet das, dass ich mich nicht um die Werte aller Pixel kümmern sollte, sondern jeweils um eine Zeile?
Es hängt davon ab, wie Ihr Display funktioniert. Wenn es (was wahrscheinlich der Fall ist) jeweils nur eine kleine Gruppe von Pixeln beleuchtet, müssen Sie sich nur um das Bild als Abschnitte kümmern. Stellen Sie es sich wie einen alten Fernseher vor, der das Bild abtastet - nur ein Punkt wird tatsächlich beleuchtet, aber die Beharrlichkeit des Sehens lässt es so aussehen, als wäre das Ganze beleuchtet. Bei einem LED-Display kann es sich um eine ganze Zeile handeln, die gleichzeitig beleuchtet ist, oder um einen Teil einer Zeile oder einen Pixelblock - Sie müssen im Handbuch nachsehen, ob das Display dies weiß.