Schattenspiele

October 2, 2012 Lukas Drexler

Schattenspiele

 

Betreuer: Julian Rubisch, Jakob Doppler

Inhalt:

Das Ziel unseres Projektes war, durch tracking von Schatten, Audiosignale zu steuern.

Durch eine Webcam wurden RBG-Signale aufgezeichnet die anschließen durch denn Befehl rbg2luma in ein schwarz-weiß Signal umgewandelt werden. Zusätzlich haben wir denn Befehl jit.matrix, pak srcdimstart und pak srcdimend eingebaut, der denn teilweise schlecht beleuchteten Rand abschneidet und das ganze auf ein Format von 320×240 ausgibt. Dieses Signal läuft weiter in cv.jit.threshold was die ungleichmäßig ausgeläuchteten Flächen, durch eine Toleranz ausgleicht. Hier ist es möglich über die Variablen Radius und Threshold die Toleranz an denn Video-Input anzupassen. Danach kommt der Befehl cv.jit.label der die erkannten Blobs miteinander vergleicht und zu kleine Blobs raus filter. cv.jit.blobs.centroids sucht danach denn Mittelpunkt der gefunden Masse. Dieser Befehl läuft in zwei weiter Funktionen. Einerseits cv.jit.blobs.centroids.draw welches das Signal in einem Video anzeigt und zum anderen jit.unpack 4 der die Matrizen auf die X- Koordinate, Y-Koordinate und denn Flächenwert aufteilt. Die X-Koordiante steuert die Frquenz des Sinus. Der Befehl if $i1==0 then 15000 else $i1 gibt an, das wenn X 0 ist eine Frequenz von 15000Hertz abgespielt wird. Wenn der Wert anders ausfällt, wird dieser Wert als Frequenz verwendet. Die Y-Koordiante is für die Lautstärke verantwortlich. Der Y-Wert wird durch 240 und mal 157 gerechnet, um von der Matrix auf den Gain-Regler zu kommen. Danach wird das Ergebnis mit 100 addiert, um die Lautstärke zu erhöhen. Durch denn Befehl if$i1==0 then 150 else $i1wird festgelegt, da bei einem Y-Wert von 0 der Ton nicht mehr hörbar ist, das die Lautstärke auf einen Wert von 150 aufgezogen wird. Der Wert der Fläche steuert die Frequenz des Sägezahns. Sprich je mehr schattige Flächen sich im Bild befinden, desto höher ist auch die Frequenz.

 

 

, audio, interactive, video