Real-Time Nonlinear Parameter Estimation Using the Levenberg–Marquardt Algorithm on Field Programmable Gate Arrays

The Levenberg-Marquardt (LM) algorithm is a nonlinear parameter learning algorithm that converges accurately and quickly. This paper demonstrates for the first time to our knowledge, a real-time implementation of the LM algorithm on field programmable gate arrays (FPGAs). It was used to train neural networks to solve the eXclusive Or function (XOR), and for 3D-to-2D camera calibration parameter estimation. A Xilinx Virtex-5 ML506 was used to implement the LMA as a hardware-in-the-loop system. The XOR function was approximated in only 13 iterations from zero initial conditions, usually the same function is approximated in thousands of iterations using the error backpropagation algorithm. Also, this type of training not only reduced the number of iterations but also achieved a speed up in excess of 3 ×106 when compared to the software implementation. A real-time camera calibration and parameter estimation was performed successfully on FPGAs. Compared to the software implementation the FPGA implementation led to an increase in the mean squared error and standard deviation by only 17.94% and 8.04% respectively. The FPGA increased the calibration speed by a factor of 1.41 × 106. There are a wide range of systems problems solved via nonlinear parameter optimization, this study demonstrated that a hardware solution for systems such as automated optical inspection systems or systems dealing with projective geometry estimation and motion compensation systems in robotic vision systems is possible in real time.

[1]  Seth Hutchinson,et al.  Image fusion and subpixel parameter estimation for automated optical inspection of electronic components , 1996, IEEE Trans. Ind. Electron..

[2]  D. Marquardt An Algorithm for Least-Squares Estimation of Nonlinear Parameters , 1963 .

[3]  Emilio Soria-Olivas,et al.  FPGA Implementation of an Adaptive Filter Robust to Impulsive Noise: Two Approaches , 2011, IEEE Transactions on Industrial Electronics.

[4]  Tejas M. Bhatt,et al.  Matlab as a development environment for FPGA design , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[5]  Zhengyou Zhang,et al.  A Flexible New Technique for Camera Calibration , 2000, IEEE Trans. Pattern Anal. Mach. Intell..

[6]  Syuan-Yi Chen,et al.  FPGA-Based Computed Force Control System Using Elman Neural Network for Linear Ultrasonic Motor , 2009, IEEE Transactions on Industrial Electronics.

[7]  Yasar Becerikli,et al.  Neural Network Implementation in Hardware Using FPGAs , 2006, ICONIP.

[8]  Viktor K. Prasanna,et al.  MATLAB/Simulink based hardware/software co-simulation for designing using FPGA configured soft processors , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[9]  Zheng Li,et al.  Switching Control of Image-Based Visual Servoing With Laser Pointer in Robotic Manufacturing Systems , 2009, IEEE Transactions on Industrial Electronics.

[10]  Sinisa Segvic,et al.  Determining the absolute orientation in a corridor using projective geometry and active vision , 2001, IEEE Trans. Ind. Electron..

[11]  Kenneth R. Muske,et al.  Sliding-Mode Tracking Control of Surface Vessels , 2008, IEEE Transactions on Industrial Electronics.

[12]  Jae Wook Jeon,et al.  An FPGA-Based Multiple-Axis Motion Control Chip , 2009, IEEE Trans. Ind. Electron..

[13]  Farhat Fnaiech,et al.  An Efficient DSP-FPGA-Based Real-Time Implementation Method of SVM Algorithms for an Indirect Matrix Converter , 2011, IEEE Transactions on Industrial Electronics.

[14]  Abdullah Bal,et al.  Improved Multiple Target Tracking via Global Motion Compensation and Optoelectronic Correlation , 2007, IEEE Transactions on Industrial Electronics.

[15]  Lin Qiang,et al.  FPGA-based Optical Distortion Correction for Imaging Systems , 2006, 2006 8th international Conference on Signal Processing.

[16]  X. Vilasis-Cardona,et al.  Real time vision by FPGA implemented CNNs , 2005, Proceedings of the 2005 European Conference on Circuit Theory and Design, 2005..

[17]  Tomoharu Nagao,et al.  Onboard Evolutionary Risk Recognition System for Automobiles—Toward the Risk Map System , 2007, IEEE Transactions on Industrial Electronics.

[18]  Okyay Kaynak,et al.  Computing Gradient Vector and Jacobian Matrix in Arbitrarily Connected Neural Networks , 2008, IEEE Transactions on Industrial Electronics.

[19]  Jean-Yves Bouguet,et al.  Camera calibration toolbox for matlab , 2001 .

[20]  Yuichi Motai,et al.  Hand–Eye Calibration Applied to Viewpoint Selection for Robotic Vision , 2008, IEEE Transactions on Industrial Electronics.

[21]  Tommy W. S. Chow,et al.  Shape and surface measurement technology by an improved shape-from-shading neural algorithm , 2000, IEEE Trans. Ind. Electron..

[22]  Selviah,et al.  Invited Author: Artificial Higher Order Neural Network Training on Limited Precision Processors , 2010 .

[23]  Jihan Zhu,et al.  FPGA Implementations of Neural Networks - A Survey of a Decade of Progress , 2003, FPL.

[24]  James E. Gentle,et al.  Matrix Algebra: Theory, Computations, and Applications in Statistics , 2007 .

[25]  Chen Yan,et al.  A single layer architecture to FPGA implementation of BP artificial neural network , 2010, 2010 2nd International Asia Conference on Informatics in Control, Automation and Robotics (CAR 2010).