Azzera filtri
Azzera filtri

finding block with minimum mean in cell array?

1 visualizzazione (ultimi 30 giorni)
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 Commento
nadia
nadia il 16 Feb 2016
Modificato: nadia il 16 Feb 2016
the indices of these blocks are very important for me and I should find them.

Accedi per commentare.

Risposta accettata

Jos (10584)
Jos (10584) il 16 Feb 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 Commento
nadia
nadia il 16 Feb 2016
thank you. it was very good. I did it with for loop but this is much better.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by