finding block with minimum mean in cell array?

조회 수: 2 (최근 30일)
nadia
nadia 2016년 2월 16일
댓글: nadia 2016년 2월 16일
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
nadia
nadia 2016년 2월 16일
편집: nadia 2016년 2월 16일
the indices of these blocks are very important for me and I should find them.

댓글을 달려면 로그인하십시오.

채택된 답변

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

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

Community Treasure Hunt

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

Start Hunting!

Translated by