How to substitute p(x/a+x1,y/a+x2) to p(x,y),where p(x,y) is original image, x1 and x2 are the centroid of p(x,y),x1=m10/m00,x2=m01/m00,a=sqrt(β/m00),β is a predetermined value. In fact, this is doing scale and translation normalization
1 view (last 30 days)
Show older comments
How to substitute p(x/a+x1,y/a+x2) to p(x,y),where p(x,y) is original image, x1 and x2 are the centroid of p(x,y),x1=m10/m00,x2=m01/m00,a=sqrt(β/m00),β is a predetermined value. In fact, this is doing scale and translation normalization
4 Comments
Rik
on 15 Feb 2021
Sounds like you want interpolation. The easiest way to do that is to generate a coordinate grid (e.g. with meshgrid or ndgrid).
Again, what have you tried? That might make it a bit more clear what you actually mean and what your specific problem is. What step is giving you trouble?
Answers (1)
Bjorn Gustavsson
on 15 Feb 2021
You solve that with interp2:
xi = xC + [-dx:dx]*xScale;
yi = yC + [-dy:dy]*yScale;
[xi,yi] = meshgrid(xi,yi);
p_prime = interp2(1:size(p,2),1:size(p,1),p,xi,yi);
You have to check for xi and yi falling outside of the image-coordinates, and handle that afterwards. By default you'll get nan-values. Check the help and documentation for interp2 for details. You'll also easily translate your coordinate-transformation to the one above.
HTH
7 Comments
Bjorn Gustavsson
on 15 Feb 2021
If you have an image you only have information about the image intensities between the first and last pixels of the image, if you try to extrapolate intensities outside the image support [1 - sy , 1 - sx] you are only guessing. Matlab will allow you to do that type of guess-work, check the help and documentation for extrapolation-methods. Don't expect anything that is all that much worth by extrapolating, there is allways place for Occams pink elephant just outside the field-of-view.
See Also
Categories
Find more on Continuous Waveforms in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!