Mausemulation zur Präsentationssteuerung an der Powerwall Verteidigung der Bachelorarbeit Verteidigung der Bachelorarbeit Nico Schertler Nico Schertler
Motivation Motivation
Detektion der Laserpointer Inhalt Inhalt Detektion der Laserpointer MaxDetector BlobDetector Ermitteln der Position auf dem Desktop Implementierung Anwendungsfälle Demo Ausblick Zugabe Detektion der Laserpointer MaxDetector BlobDetector Ermitteln der Position auf dem Desktop Implementierung Anwendungsfälle Demo Ausblick Zugabe
Detektion der Laserpointer
HSV Konvertierung HSV Konvertierung Hue, Saturation, Value 𝑉=max(𝑅, 𝐺, 𝐵) Hue, Saturation, Value 𝑉=max(𝑅, 𝐺, 𝐵)
Hintergrundfaltung Hintergrundfaltung Boxfilter + Szenenerkennung
- - Hintergrundsubtraktion Hintergrundsubtraktion MaxDetector BlobDetector
Schwellwert Schwellwert
Kantendetektion Kantendetektion Start: P(x,y)==1 && P(x-1,y)==0 -2 1 -2 1 2 1 -2 1 1 2 -2 1 1 2 2 1 1 -2 1 2 1 2 1 1 -2 1 1 -2 -2 1 Start: P(x,y)==1 && P(x-1,y)==0 Start: P(x,y)==1 && P(x-1,y)==0
Ermitteln der Position auf dem Desktop Kamera Kamera 𝑣 𝐾 𝐾 = 𝑇 𝐾 𝐾 ← 𝐾 𝑃 ∗ 𝑣 𝐾 𝑃 𝑣 𝐾 𝐾 = 𝑇 𝐾 𝐾 ← 𝐾 𝑃 ∗ 𝑣 𝐾 𝑃 Projektor Projektor 𝑇 𝐾 𝐾 ← 𝐾 𝑃 −1 ∗ 𝑣 𝐾 𝐾 = 𝑣 𝐾 𝑃 𝑇 𝐾 𝐾 ← 𝐾 𝑃 −1 ∗ 𝑣 𝐾 𝐾 = 𝑣 𝐾 𝑃
Verzerrung Verzerrung Hauptsächlich radiale und tangentiale Verzerrung Verursacht durch Ausrichtung der Linse zur Bildebene, Linsenfehler… Hauptsächlich radiale und tangentiale Verzerrung Verursacht durch Ausrichtung der Linse zur Bildebene, Linsenfehler…
Verzerrungsparameter Radiale Verzerrung: 𝑥 𝑘𝑜𝑟𝑟𝑖𝑔𝑖𝑒𝑟𝑡 =𝑥∗ 1+ 𝑘 1 𝑟 2 + 𝑘 2 𝑟 4 + 𝑘 3 𝑟 6 𝑦 𝑘𝑜𝑟𝑟𝑖𝑔𝑖𝑒𝑟𝑡 =𝑦∗(1+ 𝑘 1 𝑟 2 + 𝑘 2 𝑟 4 + 𝑘 3 𝑟 6 ) Tangentiale Verzerrung: 𝑥 𝑘𝑜𝑟𝑟𝑖𝑔𝑖𝑒𝑟𝑡 =𝑥+ 2 𝑝 1 𝑦+ 𝑝 2 𝑟 2 +2 𝑥 2 𝑦 𝑘𝑜𝑟𝑟𝑖𝑔𝑖𝑒𝑟𝑡 =𝑦+ 𝑝 1 𝑟 2 +2 𝑦 2 +2 𝑝 2 𝑥 Radiale Verzerrung: 𝑥 𝑘𝑜𝑟𝑟𝑖𝑔𝑖𝑒𝑟𝑡 =𝑥∗ 1+ 𝑘 1 𝑟 2 + 𝑘 2 𝑟 4 + 𝑘 3 𝑟 6 𝑦 𝑘𝑜𝑟𝑟𝑖𝑔𝑖𝑒𝑟𝑡 =𝑦∗(1+ 𝑘 1 𝑟 2 + 𝑘 2 𝑟 4 + 𝑘 3 𝑟 6 ) Tangentiale Verzerrung: 𝑥 𝑘𝑜𝑟𝑟𝑖𝑔𝑖𝑒𝑟𝑡 =𝑥+ 2 𝑝 1 𝑦+ 𝑝 2 𝑟 2 +2 𝑥 2 𝑦 𝑘𝑜𝑟𝑟𝑖𝑔𝑖𝑒𝑟𝑡 =𝑦+ 𝑝 1 𝑟 2 +2 𝑦 2 +2 𝑝 2 𝑥
Kamerakalibrierung Kamerakalibrierung Ermittlung der Parameter zur Entzerrung des Bilds Ermittlung der Parameter zur Entzerrung des Bilds
Kalibrierung der Ausrichtung
Implementierung Implementierung C#-Anwendung C#-Anwendung Oberfläche View View Synchronisationslogik Synchronisationslogik ViewModel ViewModel Geschäftslogik Geschäftslogik P/Invoke Model P/Invoke Model C++-Bibliothek C++-Bibliothek Model Model
Anwendungsfälle Anwendungsfälle
Implementierung weiterer Algorithmen Gestenerkennung Ausblick Ausblick Implementierung weiterer Algorithmen Gestenerkennung Umsetzung als Treiber Multitouch Implementierung weiterer Algorithmen Gestenerkennung Umsetzung als Treiber Multitouch
Zugabe Zugabe