Cheng-Yi, Chuang (莊成毅), b99 Media IC & System Lab Face Recognition: A Distributed Approach IoT / Video Sensor/ CV / Distributed System Cheng-Yi, Chuang (莊成毅), b99
Outline About the topic Face recognition Future Object
CV/Networking/Comm./Control Media IC & System Lab Image/Video/IC IoT Sensor networking Camera (video sensor) CV/Networking/Comm./Control CV Anomaly Detection/Face Recognition Big data Limited bandwidth Limited computation Limited power Face Recognition A distributed computational approach
two meanings of “distributed” Centralized vs. distributed Distributed computation
Distributed system framework Gateway Filtering Filtering Gateway Filtering Filtering Gateway Filtering Filtering
Face Recognition Block Diagram How to cut? ; Gender, age, people….. Recognize what? http://www.uurmi.com/property/frs.html
Principle Component Analysis (PCA) (1/3) For what? - Dimensionality reduction - Compute Eigenface (Sirovich and Kirby, 1987) How? - Minimize the square projection error Procedure (n-D -> k-D) - Preprocessing before doing PCA (feature scaling & mean normalization) - Compute covariance matrix - Compute eigenvectors of matrix Σ Face dataset Eigenface Σ= 1 𝑚 𝑋 𝑇 𝑋 PCA [U, S, V] = svd(Sigma);
PCA (2/3) How to choose k? Projection onto Eigenfaces Reconstruction / Classification / Recognition / (Whatever…) 𝑖=1 𝑘 𝑆 𝑖𝑖 𝑖=1 𝑚 𝑆𝑖𝑖 ≥99% 99% 𝑜𝑓 𝑣𝑎𝑟𝑖𝑎𝑛𝑐𝑒 𝑟𝑒𝑡𝑎𝑖𝑛𝑒𝑑 Ureduce = U(:, 1:k); Z = Ureduce’ * X; X = Ureduce * Z
PCA (3/3) 32x32 in grayscale = 1024 dimensions 100 principle components = 100 dimensions (display first 36) PCA Original faces Principle components Recovered faces Stanford ML class by Andrew Ng
Related Techniques Face Detection Face Recognition Haar Features . . . Principle Component Analysis (PCA) Linear Discriminant Analysis (LDA) Local Binary Pattern (LBP) Gabor features . . .
Future Object Get familiar with OpenCV/MATLAB Study related techniques & papers Implement the algorithm Modify it into distributed manner Hardware? Of course, keep thinking, thinking, and thinking……
Thanks you!