Ambilight bauen

Python auf Einplatinencomputer wie Raspberry Pi, Banana Pi / Python für Micro-Controller
Antworten
Tabea
User
Beiträge: 8
Registriert: Donnerstag 23. August 2018, 19:29

Liebe Python Profis,

wir sind zwei Studentinnen der Medientechnik und kommen mit unserem Programmieren Projekt einfach nicht weiter!
Wir sollen ein Ambilight bauen.
Wir haben bereits Open CV installiert und wollen nun ein Programm in Python schreiben, welches mithilfe von OpenCV
den Rand unseres Videos Bildes ausließt, unterteilt und in eine Farbe umwandelt die dann über den LED Streifen ausgestrahlt wird.
Wir versuchen schon seit 2 Monaten etwas hinzubekommen, aber nicht klappt. Jetzt wird die Zeit langsam knapp, in 3 Wochen müssen wir abgeben.
Unser Professor ist im Urlaub und wir würden das Projekt so gerne fertig bekommen.
Kann uns bitte bitte jemand helfen?

Liebe Grüße
Tabea & Marielena
Benutzeravatar
__blackjack__
User
Beiträge: 13004
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Wo liegt denn das konkrete Problem? Und euch ist klar das ihr nicht die ersten seid, die so etwas machen?
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
Tabea
User
Beiträge: 8
Registriert: Donnerstag 23. August 2018, 19:29

__blackjack__ hat geschrieben: Donnerstag 23. August 2018, 20:07 Wo liegt denn das konkrete Problem? Und euch ist klar das ihr nicht die ersten seid, die so etwas machen?
Wir haben schon viel gegoogelt, aber es gibt leider keine Hilfestellungen zu in Python geschriebenen Programmen.
Alle Ambilights bei Google werden mit Hilfe von Hyperium gesteuert, das könnten wir auch, allerdings ist die Vorgabe das ganze in Python zu programmieren.

Die Frage ist - wie schaffen wir es ein Bild mit Open CV auszulesen und den Rand in "Pixel" zu unterteilen und da jeweils eine bestimmte Farbe rauszulesen.
Den LED Steifen ansteuern und sagen welche Farbe Leuchten soll, das bekommen wir hin.
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

Ich frage mich, wofür man da OpenCV braucht? Angenommen ihr habt einen LED-Streifen mit 50 Pixeln, dann lädt man das Bild, am einfachsten mit Pillow (ach ja, ihr habt ja schon OpenCV, dann kann man das wohl auch dafür mißbrauchen, bei einem Rapsi würde man wohl die Camera dafür verwenden), resamplet es auf 16x9 Pixel und hat schon die Farbe für 50 Pixel am Rand.
__deets__
User
Beiträge: 14493
Registriert: Mittwoch 14. Oktober 2015, 14:29

Wie erfasst ihr denn das Videobild? Habt ihr einen HDMI Framegrabber oder wie genau soll das funktionieren? Habt ihr damit schon Frames bekommen?
Tabea
User
Beiträge: 8
Registriert: Donnerstag 23. August 2018, 19:29

__deets__ hat geschrieben: Donnerstag 23. August 2018, 22:35 Wie erfasst ihr denn das Videobild? Habt ihr einen HDMI Framegrabber oder wie genau soll das funktionieren? Habt ihr damit schon Frames bekommen?
Wir gehen vom Fernseher/Bildschirm mit HDMI in einen Videograbber und dann in den Raspberry Pi.
Wir bekommen leider nichtmal ein einfaches Bild geöffnet mit Python.
Wir haben letztens versucht mit folgendem Code einfach mal ein Bild in OpenCV/Python zu Importieren um dann
die Farbwerte auszulesen und danach sollte sich das Bild in einem extra Fenster öffnen - das hat leider nicht funktioniert.
Die Webcam von unserem Raspberry funktioniert scheinbar auch nicht, zumindest haben wir diese auch noch nicht geöffnet bekommen.

import cv2

image = cv2.imread("test.png")

y = 100
x = 50
(b, g, r) = image[y, x]

print(b,g,r)

cv2.imshow("Bild", image)
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

„hat leider nicht funktioniert" ist eine schlechte Fehlerbeschreibung. Was passiert genau?
Tabea
User
Beiträge: 8
Registriert: Donnerstag 23. August 2018, 19:29

Sirius3 hat geschrieben: Freitag 24. August 2018, 11:02 „hat leider nicht funktioniert" ist eine schlechte Fehlerbeschreibung. Was passiert genau?
Da steht halt immer "Error- Befehl nicht gefunden".
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

Wo steht `Error- Befehl nicht gefunden`?
Tabea
User
Beiträge: 8
Registriert: Donnerstag 23. August 2018, 19:29

Sirius3 hat geschrieben: Freitag 24. August 2018, 11:08 Wo steht `Error- Befehl nicht gefunden`?
In Python unter dem eingegebenen Befehl.
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

Wo in Python? Unter welchem eingegebenen Befehl?
__deets__
User
Beiträge: 14493
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ihr müsst wirklich die genaue Fehlermeldung hier posten.
Tabea
User
Beiträge: 8
Registriert: Donnerstag 23. August 2018, 19:29

__deets__ hat geschrieben: Freitag 24. August 2018, 11:21 Ihr müsst wirklich die genaue Fehlermeldung hier posten.
Würde ich gerne machen. Ich bin aber noch bis Sonntag im Urlaub und habe den Raspberry nicht mit. Danach kann ich es gerne posten.
Ich dachte vielleicht hat jemand schonmal ein Ambilight Programm in Python geschrieben und kann uns genauer weiterhelfen.
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

Wie schon __blackjack__ geschrieben hat, können wir bei konkreten Problemen helfen.
Das eigentliche Programm besteht aus 10 Zeilen, wenn man die passenden Bibliotheken benutzt. Die Hauptaufgabe besteht also darin, herauszufinden, wie man die Hardware anspricht. Die kennen wir ja nicht.
Antworten