Zernike FittingI have a customer asking about Zernike Fitting in the JMP Non-Linear Model Library. I am not familiar with method of polynomial fit. Anyone familiar with this method and/or the ability to do this kind of analysis (or a workaround) in JMP? Thanks.
Re: Zernike FittingJudging by what I've read on the Web, the math behind it would be tough to implement in Nonlinear. For 2D or 3D fitting, I'd look at the Gaussian Process platform. It uses Gaussian random functions to interpolate between data points and will do a decent job fitting bumpy surfaces. It can be considered similar to kriging. The drawback to GP is that it doesn't scale well for very large problems (a fast GASP method was added a few versions ago, so it has gotten much better) Ultimately, it depends on what they want to do.
Re: Zernike FittingI'll second @DonMcCormack on the Gaussian Process approach, but also suggest Neural Nets. They are very flexible and you can use the different activation functions (Pro) to help build a better predictive model.
Re: Zernike FittingFrom the apst I heard that only in optics or eye health situations, used to better fit wavefronts. There are some custom implementations in MATLAB I know:
https://de.mathworks.com/matlabcentral/answers/408242-toolbox-for-zernike-polynomial-surface_fitting
there you also see how they have been implemented. To capture all possible Zernike polynomials this is a lot of different settings, calculations and cases to be handled. Then I'm not sure if JSL would be very fast to handly all the matrix operations.
Not sure if gaussian and nn are good alternatives as usually you use zernike polynoms because you are dealing with curved surfaces, not planar ones where you could have a nice grid on it. There are some using convolutionary nn and try to generalize them to keep up the orthogonality required.