Helligkeit eines Bildes auslesen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
okliw994
User
Beiträge: 26
Registriert: Dienstag 11. Juni 2019, 09:49

Hallo zusammen,

ich beschäftige mich seit einigen Wochen mit Python 3. Im Rahmen meines Praktikums soll ich ein System entwerfen, welches bei einer Scannereingabe automatisch ein Foto aufnimmt. Dies geschieht mittels eines Raspberry Pi 3, eines USB-Scanners und einer USB-Webcam bereits sehr gut. Die Kamera nutze ich mittels opencv. Als nächstes möchte ich das zu fotografierende Objekt optimal beleuchten. Nun zu meiner Frage:

Ist es möglich über die Pixel der Kamera die Helligkeit des Fotobereichs auszulesen?

Anschließend möchte ich, anhand eines Wertes, eine "Schwelle" festlegen um eine Lampe automatische ein/aus zuschalten. Das Ganze soll permanent passieren, da die Fotos in unregelmäßigen Abständen geschossen werden.
In der Suche habe ich leider nichts passendes gefunden und auch Google konnte mir nicht weiterhelfen. Daher wäre ich über ein paar nützliche Tipps sehr dankbar.

Gruß, okliw994
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ein Weg damit umzugehen ist aus einem Graustufenbild ein Histogramm zu bilden, und darauf basierend eine Entscheidung zu treffen. Man kann zB sowas nehmen https://answers.opencv.org/question/755 ... orrection/ und wenn dort bestimmte Schwellwerte fuer alpha/beta ueberschritten sind, das Licht einschalten.
okliw994
User
Beiträge: 26
Registriert: Dienstag 11. Juni 2019, 09:49

Das ist leider kein Python und für mich schwer zu verstehen. Trotzdem ein guter Ansatz an dem ich erstmal festhalten werde und es weiter versuche. Danke für deinen Tipp!

Gruß, okliw994
Benutzeravatar
sparrow
User
Beiträge: 4538
Registriert: Freitag 17. April 2009, 10:28

Für openCV gibt es ein Python-Binding.
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Das weiß er. Er benutzt das ja.
Antworten