Comparative Evaluation of Symmetric SVD Algorithms for Real-Time Face and Eye Tracking

  • Tapan Pradhan
  • Aurobinda Routray
  • Bibek Kabi


Computation of singular value decomposition (SVD) has been a topic of concern by many numerical linear algebra researchers. Fast SVD has been a very effective tool in computer vision in a number of aspects, such as: face recognition, eye tracking etc. At the present state of the art fast and fixed-point power efficient SVD algorithm needs to be developed for real-time embedded computing. The work in this paper is the genesis of an attempt to build an on-board real-time face and eye tracking system for human drivers to detect loss of attention due to drowsiness or fatigue. A major function of this on-board system is quick customization. This is carried out when a new driver comes in. The face and eye images are recorded while instructing the driver for making specific poses. The eigen faces and eigen eyes are generated at several resolution levels and stored in the on-board computer. The discriminating eigen space of face and eyes are determined and stored in the on-board flash memory for detection and tracking of face and eyes and classification of eyes (open or closed) as well. Therefore, fast SVD of image covariance matrix at various levels of resolution needs to be carried out to generate the eigen database. As a preliminary step, we review the existing symmetric SVD algorithms and evaluate their feasibility for such an application. In this article, we compare the performance of (1) Jacobi’s, (2) Hestenes’, (3) Golub-Kahan, (4) Tridiagonalization and Symmetric QR iteration and (5) Tridiagonalization and Divide and Conquer algorithms. A case study has been demonstrated as an example.


Fast SVD Eigen space Face and Eye detection 


  1. 1.
    Anderson E., Bai Z., Bischof C., Blackford S., Demmel J., Dongarra J., Du Croz J., Greenbaum A., Hammarling S., McKenney A., Sorensen D.: LAPACK Users’ Guide, 3rd edn. Society for Industrial and Applied Mathematics (SIAM), Philadelphia, 22 Aug (1999)Google Scholar
  2. 2.
    Brent, R., Luk, F.: The solution of singular value and symmetric eigenvalue problems on multiprocessor arrays. SIAM J. Sci. Stat. Comput. 6, 69–84 (1985)MathSciNetMATHCrossRefGoogle Scholar
  3. 3.
    Bunch, J.R., Nielsen, C.P., Sorensen, D.C.: Rank-one modification of the symmetric eigenproblem. Numer. Math. 31, 31–48 (1978)MathSciNetMATHCrossRefGoogle Scholar
  4. 4.
    Cilio, A.G.M., Corporaal, H.: Floating point to fixed point conversion of C code. Proceedings of CC 99, the 8th International Conference on Compiler Construction, Amsterdam, March 1999. Lecture Notes in Computer Science 1575, pp. 229–243. Springer, Berlin (1999).Google Scholar
  5. 5.
    Cuppen, J.J.M.: A divide and conquer method for the symmetric tridiagonal eigenproblem. Numer. Math. 36, 177–195 (1981)MathSciNetMATHCrossRefGoogle Scholar
  6. 6.
    Datta, B.N.: Numerical Linear Algebra and Applications. Brooks/Cole Publishing Company, Pacific Grove (1995)MATHGoogle Scholar
  7. 7.
    Demmel, J.W.: Applied Numerical Linear Algebra. SIAM, Philadelphia (1997)MATHCrossRefGoogle Scholar
  8. 8.
    Demmel, J., Kahan, W.: Accurate singular values of bidiagonal matrices. SIAM J. Sci. Stat. Comput. 11(5), 873–912 (1990)MathSciNetMATHCrossRefGoogle Scholar
  9. 9.
    Dinges, D.F., Maislin, G., Brewster, R.M., Krueger, G.P., Carroll, R.J.: Pilot Test of Fatigue Management Technologies: Final Report. Federal Motor Carrier Safety Administration, Washington (2004)Google Scholar
  10. 10.
    Dinges, D.F., Mallis, M., Maislin, G., Powell, J.W.: Final Report: Evaluation of Techniques for Ocular Measurement as an Index of Fatigue and as the Basis for Alertness Management (Report No. DOT HS 808 762). National Highway Traffic Safety Administration, Washington, DC (1998)Google Scholar
  11. 11.
    Golub, G., Kahan, W.: Calculating the singular values and pseudo-inverse of a matrix. J. SIAM Numer. Anal., Ser. B 2(2), 205–224 (1965)Google Scholar
  12. 12.
    Golub, G.H., Van Loan, C.F.: Matrix Computations, 3rd edn. The Jhons Hopkins University Press, Baltimore and London (1996)Google Scholar
  13. 13.
    Gu, M., Eisenstat, S.C.: A divide-and-conquer algorithm for the symmetric tridiagonal eigen problem. Research Report YALEU/DCS/RR-932, 27 Nov 1992Google Scholar
  14. 14.
    Hestenes, M.R.: Inversion of matrices by biorthogonalization and related results. SIAM 6(1), 51–90 (1958)Google Scholar
  15. 15.
    Hjelms, E., Low, B.K.: Face detection: a survey. Comput. Vis. Image Underst. 83, 236–274 (2001)CrossRefGoogle Scholar
  16. 16.
    Keding, H., Willems, M., Coors, M., Meyr, H.: FRIDGE: A fixed-point design and simulation environment. In: Proceeding of the Design Automation and Test in Europe, 1998. pp. 429–435Google Scholar
  17. 17.
    Kim, S., Kum, K., Sung, W.: Fixed-point optimization utility for C and C++ based digital signal processing programs. IEEE Trans. Circuits Syst. II Analog Digit. Signal Process. 45(11), 1455–1464 (1998)Google Scholar
  18. 18.
    Li, R.C.: Solving secular equations stably and efficiently. Computer Science Division Technical Report UCB//CSD-94-851, University of California, Berkeley, 94720, Dec 1994Google Scholar
  19. 19.
    Melman, A.: A numerical comparison of methods for solving secular equations. J. Comput. Appl. Math. 86, 237–249 (1997)MathSciNetMATHCrossRefGoogle Scholar
  20. 20.
    Nikolić, Z., Nguyen, H.T., Frantz, G.: Design and implementation of numerical linear algebra algorithms on fixed point DSPs. EURASIP J. Adv. Signal Process. 2007 Article ID 87046 (2007) doi: 10.1155/2007/87046
  21. 21.
    Parlett, B.N.: The Symmetric Eigenvalue Problem. SIAM, Philadelphia (1998)MATHCrossRefGoogle Scholar
  22. 22.
    Rutter, J.: A serial implementation of Cuppen’s divide and Conquer algorithm for the Symmetric Eigenvalue problem.
  23. 23.
    Sirovich, L., Kirby, M.: Low-dimensional procedure for the characterization of human faces. J. Opt. Soc. Am. A 4, 519 (1987)Google Scholar
  24. 24.
    Stewart, G.W.: Perturbation theory for the singular value decomposition. UMIACS-TR-90-124 CS-TR 2539, Sept 1990Google Scholar
  25. 25.
    Svensson, G.: A Block-Hestenes Method for the SVD, Technical Report. LiTH-MAT-R -1989-28, Department of Mathematics, Linköping University, Sept 1989. Scholar
  26. 26.
    Szecówka, P.M., Malinowski, P.: CORDIC and SVD implementation in digital hardware. 17th International Conference Mixed Design of Integrated Circuits and Systems MIXDES 2010, 24–26 June 2010Google Scholar
  27. 27.
    Turk, M., Pentland, A.: Eigenfaces for recognition. J. Cogn. Neurosci. 3(1), 71–86 (1991)Google Scholar
  28. 28.
    Wang, H., Leray, P., Palicot, J.: A CORDIC-based dynamically reconfigurable FPGA architecture for signal processing algorithms, URSI 08. The XXIX General Assembly of the International Union of Radio Science, Chicago (2008)Google Scholar
  29. 29.
    Yang, M-H., Kriegman, D.J., Ahuja, N.: Detecting faces in images: a survey. IEEE Trans. Pattern Anal. Mach. Intell. 24(1), 34–58 (2001)Google Scholar
  30. 30.
    Zhou, B.B., Brent, R.P.: On parallel implementation of the one-sided Jacobi algorithm for singular value decompositions.

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  1. 1.Department of Electrical EngineeringIIT KharagpurKharagpurIndia

Personalised recommendations