Given a center, sum adjacent pixels

Hi, suppose I have a matrix A and I have a center (for example (10.3,14.6)). Now I want to calculate the value of the center in this way
value = w1*A(10,14) + w2*A(10,15) + w3*A(11,14) + w4*A(11,15)
w1, w2, w3, w4 are the values of the weigths that are proportional to the distance of the pixel from the center.
What is the most correct way to evaluate w1, w2, w3, w4? I want that the weigth of the pixel that is closer to the center higher and the weigth of the pixel that is farther to the center lower and so on.
My hyphotesis is something like this:
w1=0.7 * 0.4 ; w2=0.7*0.6; w3=0.3*0.4; w4= 0.3*0.6
Thanks

6 Comments

Can you add more to your description with sample values you would like to see for w1, w2, w3, w4 as part of your example?
Hi, thanks for the answer I have added my hyphotesis and a description
Are you saying you want to solve for a set of weights that will produce the given value from the four or recompute a revised "center" by weight the four values?
MementoMori
MementoMori on 3 Oct 2022
Edited: MementoMori on 3 Oct 2022
Hi, thanks for the answer.
No, I want to calculate a sort of value of the center, making a weighted sum of the pixels around the center. The weights have to be proportional to the distance of the pixel from the center.
NB the weights above sum to 2 which will double the value...and "proportional" how (linear, quadratic, exponential, ...) and by what measure of "distance"?
the sum of the weights is 1. 0.7*0.4 + 0.7*0.6 + 0.3*0.4 + 0.3*0.6 =1
I think linear proportional and I don't know for distance, what is the most suitable?

Sign in to comment.

Answers (1)

Matt J
Matt J on 3 Oct 2022
Edited: Matt J on 3 Oct 2022
Use interp2:
value=interp2(A,14.3,10.6)

Categories

Find more on Linear Algebra in Help Center and File Exchange

Tags

Asked:

on 3 Oct 2022

Edited:

on 3 Oct 2022

Community Treasure Hunt

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

Start Hunting!