Is there any inbuilt function available for surface fitting to the intensity values of a grayscale image that minimize the entropy of an Image?

1 view (last 30 days)
I am trying to fit the surface to the intensity values of a grayscale image. For that purpose, I have decided to use the entropy of an image as a criterion function.I was wondering if there is any way I can use fit - an inbuilt function that fits the surface or optimizes the polynomial coefficients at the same time minimizing the entropy of the image.
Thanks

Accepted Answer

John D'Errico
John D'Errico on 18 Oct 2016
Edited: John D'Errico on 18 Oct 2016
No. Just use a general optimization tool (from the optimization toolbox), writing the objective function yourself.
The curve fitting toolbox functions will assume a minimum sum of squares of residuals criterion.
  3 Comments
John D'Errico
John D'Errico on 18 Oct 2016
Sorry. Polyfitn uses linear algebra (linear least squares) to solve for the coefficients of the polynomial, although the polynomial itself need not be linear. The problem is linear in the unknown coefficients in terms of the estimation.
In order to change the objective to something else, the code would need to call a general optimizer. That in itself would not be the end of the world, but since the code also computes a variety of measures of fit, they would be invalidated. Essentially, a large fraction of polyfitn would need to be re-written.
Jay
Jay on 13 Nov 2016
Edited: Jay on 13 Nov 2016
I have one question @John. Is your polyfitn toolbox which uses QR decomposition using the brightest spot mean as a control point and try to fit the surface or it just tries to fit the data values to the surface as I am trying to correct the illumination in the digital image and after the illumination correction the color tonality of the image is similar to the brightest spot colors in a particular image?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!