Effacer les filtres
Effacer les filtres

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)

Community Treasure Hunt

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

Start Hunting!

Translated by