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 个评论
Benjamin Thompson
2022-10-3
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?
MementoMori
2022-10-3
dpb
2022-10-3
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
2022-10-3
编辑:MementoMori
2022-10-3
dpb
2022-10-3
NB the weights above sum to 2 which will double the value...and "proportional" how (linear, quadratic, exponential, ...) and by what measure of "distance"?
MementoMori
2022-10-3
回答(1 个)
Use interp2:
value=interp2(A,14.3,10.6)
类别
在 帮助中心 和 File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!