ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO Έλεγχος Μουσικών Παραμέτρων μέσω Video Διπλωματική Εργασία: Κάπρος Ευάγγελος icsd01028 Ράπτης Κωνσταντίνος icsd02067
Μουσική Τεχνολογία - Ιστορική Αναδρομή > Πρώτες προσπάθειες ηλεκτρονικής οργανοποιίας (1900-1948), τηλεαρμόνιο, Theremin, Hammond > Εποχή των studios (1948-1960) 1. Συγκεκριμένη μουσική (RTF) 2. Ηλεκτρονική μουσική (WDR) > Εποχή των synthesizers (1961-1983) 1. Αναλογικοί synthesizer (MiniMoog, 60s) 2. Ψηφιακοί synthesizers (Synclavier 70s, Yamaha DX7 80s ) > Εποχή της υπολογιστικής μουσικής (1984 - σήμερα) Soft synths (Reaktor, Arturia MiniMoog)
Απομακρυσμένος Έλεγχος Μουσικών Οργάνων > Theremin (Lev Termen, ΕΣΣΔ, 1917) > Theremin 201 (Bob Moog, ΗΠΑ, 1954) > Etherwave Theremin, Ethervox (midi support) (Bob Moog, 1997)
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO Εισαγωγή Στη Ψηφιακή Σύνθεση Ήχου > Σύνθεση καθορισμένης κυματομορφής (fixed-waveform synthesis) Γραφική αναπαράσταση της σύνθεσης με διάβασμα από πίνακα
Εισαγωγή Στη Ψηφιακή Σύνθεση Ήχου > Interpolating oscillator Μεταξύ των τιμών των θέσεων 27 και 28 ενός κυματοπίνακα, υπολογίζεται η τιμή που αντιστοιχεί στη θέση 27,5
Εισαγωγή Στη Ψηφιακή Σύνθεση Ήχου > Σύνθεση Χρονικά Μεταβαλλόμενης Κυματομορφής Aπλή περιβάλλουσα πλάτους ADSR. Μεταβολή πλάτους στη διάρκεια μιας νότας
Υλοποίηση Ψηφιακής Σύνθεσης Ήχου > Γραφικοί επεξεργαστές οργάνων (graphical instrument editors) Όργανα σύνθεσης (patches) με γραφικό τρόπο - Reaktor. > Γλώσσες σύνθεσης (synthesis languages) Προγράμματα σε ειδική γλώσσα προγραμματισμού - Csound.
Αφαιρετική Σύνθεση > Χρήση φίλτρων (filters) - διαμόρφωση φάσματος πηγής ήχου. > Το φίλτρο ενισχύει ή εξασθενεί επιλεγμένες περιοχές του φάσματος συχνοτήτων. > Είδη φίλτρων: καμπύλη απόκρισης πλάτους ως προς τη συχνότητα (amplitude-versus-frequency response curve).
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO Αφαιρετική Σύνθεση > Ιδιότητες των Φίλτρων cutoff frequency transition band degree of resonance gain
Υλοποίηση Ψηφιακών Φίλτρων > Καθυστερημένο σήμα εισόδου με το νέο σήμα εισόδου πεπερασμένης παλμικής απόκρισης (finite impulse response, FIR). > Καθυστερώντας αντίγραφο του σήματος εξόδου και συνδυάζοντάς το με το σήμα εισόδου μη-πεπερασμένης παλμικής απόκρισης (infinite impulse response, ΙIR)
Reaktor - synthesizer screenshot
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO Reaktor - synthesizer interface screenshot
Java sound API > Δεν προϋποθέτει κάποια συγκεκριμένη audio ή midi hardware διάταξη > Μείξη πολλαπλών audio stream > buffered fashion (streaming), ή με unbuffered fashion (in memory) > Κλάση AudioSystem: getaudiofileformat public static AudioFileFormat getaudiofileformat(inputstream stream) public static AudioFileFormat getaudiofileformat(url url) public static AudioFileFormat getaudiofileformat(file file)
Αλληλεπίδραση Ανθρώπου - Υπολογιστή > Νεότητα κλάδου - behaviourism > Αλληλεπίδραση Σχέση παραστάσεων μεταξύ ν-οστής και ν-1 επικοινωνίας > Άνθρωπος Νοηματοδοσία παραστάσεων (ψυχική) Ανάδυση πληροφορίας > Υπολογιστής Επεξεργασία δεδομένων > Το βάρος πέφτει στον Άνθρωπο!
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO Αλληλεπιδραστικότητα > Πριν τους υπολογιστές > Τηλέγραφος > Εικονική Διεπαφή - Εικονικό Περιβάλλον > Πρώτοι Υπολογιστές > 60s - Batch Processing, 70s - Command Line > 80s - Γραφική Διεπαφή (Apple Lisa, Macintosh) > Online κοινότητες, φορητές συσκευές > Υπολογιστής των 100 δολαρίων > Αισθητήρες (ανακλαστικοί, γυροσκοπικοί) > Κινηματογράφος, Ιατρική (Motion Capture)
Video Tracking > Αισθητήρες Καλή ποιότητα, αναλογική είσοδος. Σε πραγματικές συνθήκες; > Κάμερες Σύνολο αισθητήρων - εστίαση Ανίχνευση χρώματος RGB - machine vision Ταχύτητα επεξεργασίας (pixel by pixel, όχι frame by frame) > Αναγνώριση Αντικειμένων Περιορισμοί στο background (λειτουργικότητα vs ρεαλισμός) Φωτισμός! Υψηλό contrast Θόρυβος (φωτισμού, αναλογικός PAL κλπ) - Software blur
Ψηφιακή Επεξεργασία & Ανάλυση Εικόνας Απεικόνιση Αλγεβρικών Επιφανειών > Λείες επιφάνειες: F(x, y, z) = 0 > Κβαντομηχανική συνάρτηση πυκνότητας ηλεκτρονίων: D(x, y, z) = exp(-ar) όπου r = ( (x- x l ) 2 + (y-y 1 ) 2 + (z - z l ) 2 ) > Συνεισφορά στο πεδίο πυκνότητας: D(x, y, z) = Σ( b i exp(-a i r i ) ) > Επιφάνεια: F(x, y, z) = D(x, y, z) - T. Όλα τα σημεία στο εσωτερικό της επιφάνειας έχουν πυκνότητα μεγαλύτερη του Τ.
Ψηφιακή Επεξεργασία & Ανάλυση Εικόνας > Μetaball: ισοεπιφάνεια πεδίων πυκνότητας - 2D και 3D Διαδικασία απεικόνισης metaballs: 1. Έλεγχος του τρέχοντος pixel σχετικά με το εύρος του πεδίου πυκνότητας της metaball. 2. Αν το τρέχον pixel βρίσκεται εντός του εύρους, υπολόγισε την συνολική τιμή πυκνότητας στο pixel. 3. Έλεγχος κατωφλίου: Αν η συνολική τιμή πυκνότητας ικανοποιεί το επίπεδο κατωφλίου, απεικόνισε το τρέχον pixel ως μέρος της metaball.
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO
Ψηφιακή Επεξεργασία & Ανάλυση Εικόνας Ανίχνευση Ακμών > Ανυπαρξία καθολικού ορισμού > Σύνορο μεταξύ δύο ομογενών περιοχών εικόνας με διαφορετικές εντάσεις φωτεινότητας > Τοπικές τεχνικές vs Καθολικές τεχνικές > Ισοδυναμία σε εικόνα και video: Ποσότητα λεπτομέρειας Real Time εφαρμογές > Εικόνες: Η κλίση (Gradient): f(x,y) = ( f(x,y) / x ) û x + ( f(x,y) / y ) û y όπου û x, û y τα μοναδιαία διανύσματα στην κατεύθυνση του x και του y αντίστοιχα
Ψηφιακή Επεξεργασία & Ανάλυση Εικόνας Ανίχνευση Ακμών > Ψηφιακές Εικόνες: Μερικές Διαφορές: G R (n,m)<->[f(n+1,m+1) - f(n-1,m+1)] + 2 [f(n+1,m) - f(n-1,m)] + [f(n+1,m-1) - f(n-1,m-1)] x 4 x 3 x 2 x 5 x 0 x 1 x 6 x 7 x 8 G R (n,m) = [1/(k+2)] [ (x 2 + k x 1 + x 8 ) - (x 4 + k x 5 + x 6 )] > Διάφορες τιμές και μεγέθη γειτονιάς: Roberts, Prewitt, Sobel, V3ga, Canny. > Μάσκες για ακμές με διαφορετικές γωνίες (Kirsch), 2 f(x,y) (Marr και Hildreth).
Ψηφιακή Επεξεργασία & Ανάλυση Εικόνας Ανίχνευση Ακμών > Υπολογισμός Υποπεριοχών - Ανίχνευση Ανάλογα με την εφαρμογή (π.χ. παλαιά έγγραφα, real time video) > Αλγόριθμος V3ga: Υπολογισμός metaballs > Τ (blobs) Ανίχνευση Ακμών μόνο στα blobs
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO Η πασίγνωστη, πλέον, Lena (256*256) Adobe Photoshop Find Edges Αλγόριθμος V3ga (T=0.38)
QuickTime for Java - Processing > QuickTime for Java Sequence Grabber Platform free > Processing QuickTime for Java API Media εισαγμένα στον κώδικα Γρήγορη εκτέλεση Processing Video Library (USB Cameras, IEEE 1394 Cameras, Video Cards με composite ή S-video. QuickTime σε τοπικό δίσκο, ή στο Internet)
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO Το περιβάλλον του Processing
Processing > Capture Class import processing.video.*; Capture mycapture; void setup() { size(200, 200); //To get a list of the capture devices, uncomment the following: // println(capture.list()); String s = Logitech QuickCam Messenger-WDM ; mycapture = new Capture(this, s, width, height, 30); } void captureevent(capture mycapture) { mycapture.read(); } void draw() { image(mycapture, 0, 0); }
Συμπεράσματα > Σημαντικότερο το Τ από τον φωτισμό > Σωματική διεπαφή - Καλύτερη έκφραση ψυχικών παραστάσεων > Μουσική Προπαιδεία - Εκπαιδευτική χρήση Μελλοντική Εργασία > Αναγνώριση χρώματος > Μεγαλύτερη ευκρίνεια > Βάρος Java Virtual Machine
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO Συνθήκες μέρας Τ = 0.2 Συνθήκες νύχτας Τ = 0.6
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO
ΕΛΕΓΧΟΣ ΜΟΥΣΙΚΩΝ ΠΑΡΑΜΕΤΡΩΝ ΜΕΣΩ VIDEO