finding block with minimum mean in cell array?

1 vue (au cours des 30 derniers jours)
nadia
nadia le 16 Fév 2016
Commenté : nadia le 16 Fév 2016
Hi, I have a problem with finding blocks with minimum mean in cell array. I have a cell array like
salientMask_B128x128=mat2cell(salientMask,128 * ones(1, size(salientMask,1) / 128), 128 * ones(1, size(salientMask,2) / 128));
that divide a 512x512 image to blocks with size 128x128. now I want to find 4 first blocks which have minimum mean. how can I do it?
  1 commentaire
nadia
nadia le 16 Fév 2016
Modifié(e) : nadia le 16 Fév 2016
the indices of these blocks are very important for me and I should find them.

Connectez-vous pour commenter.

Réponse acceptée

Jos (10584)
Jos (10584) le 16 Fév 2016
Get the mean for each block using cellfun, and apply a sort to get the indices in order.
M = cellfun (@(x) mean(x(:)), salientMask_B128x12) ;
[Msorted, idx] = sort(M(:)) ;
RequiredIndices = idx(1:4)
  1 commentaire
nadia
nadia le 16 Fév 2016
thank you. it was very good. I did it with for loop but this is much better.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Images 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!

Translated by