Maximising Pixels within Certain area of Matrix
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Harry Andrews
le 13 Juil 2018
Commenté : Harry Andrews
le 13 Juil 2018
Hi Everyone,
I'd like to loop through a matrix (128x128) and find the area (Lets say 5x5 Pixels) with the highest pixel values.
What is the best way to do this?
Thanks!
2 commentaires
Réponse acceptée
Guillaume
le 13 Juil 2018
Modifié(e) : Guillaume
le 13 Juil 2018
One whose sum of pixel values is the greatest
Convolve your matrix with an array of 1 the same size as the area. The location of the maximum of the convolution is the centre of the area with the highest sum:
areasum = conv2(yourmatrix, ones(5)), 'same');
[~, idx] = max(areasum);
[centrerow, centrecol] = ind2sub(size(yourmatrix), idx)
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!