Dividing a linear array into 16 or 32 equal parts is not working?

2 visualizaciones (últimos 30 días)
Zara Khan
Zara Khan el 3 de Mzo. de 2019
Comentada: Zara Khan el 4 de Mzo. de 2019
A{k,j}=profile;
ndivisions=32;
N{k,j} = length(A{k,j});
partnum = floor(1+(0:N{k,j}-1)/N{k,j}*ndivisions);
n1{k,j} = accumarray(partnum(:),A{k,j}(:)==1);
n2{k,j}=n1{k,j}.';
n= accumarray(partnum(:),1);
o=n.';
f{k,j}=n2{k,j}./o;
profile is a linear of consequtives 0 and 1's. When diving it to 16 or 32 equal parts then I am getting this error while stroing the f value to excel sheet. I am not getting all consistent matrices.
Error using cat
Dimensions of matrices being concatenated are not consistent.
Error in cell2mat (line 83)
m{n} = cat(1,c{:,n});
Error in a_a (line 77)
D=cell2mat(f);
  4 comentarios
Walter Roberson
Walter Roberson el 4 de Mzo. de 2019
Remember that length(x) is defined as:
if any(size(x)==0)
length is 0
else
length is max(size(x))
end
It is not rows and it is not columns: it is whichever dimension is largest.
Zara Khan
Zara Khan el 4 de Mzo. de 2019
How can I implement this code? here for each image I am getting 8 different profile which are varying in length and all are one dimensional array of consequtives o's and 1's. I am repeating thsi process over 1000 images. when diving each profile into 32 equal parts then I am not getting consistent matrices.

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Images en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by