How to take the mean of each four adjacent position in a matrix?

2 vues (au cours des 30 derniers jours)
Ali Almakhmari le 12 Juin 2022
So I have this matrix variable that I attached here. Its 1536 by 2048, and I want to reduce it to 768 by 1024 by taking the mean of each four adjacent positions with the omitnan opition as well so I can take out the useless NaNs there. I hope someone can help. Thanks
0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

Réponse acceptée

Chuguang Pan le 12 Juin 2022
A=randi(10,1536,2048); % test Matrix
M=zeros(768,1024); % result Matrix
for row=1:768
for col=1:1024
M(row,col)=mean(A(2*row-1:2*row,2*col-1:2*col),'all','omitnan');
end
end
0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

Catégories

En savoir plus sur Resizing and Reshaping Matrices dans Help Center et File Exchange

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by