Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

fix a center of gravity loop

1 vue (au cours des 30 derniers jours)
BA
BA le 27 Juil 2022
Clôturé : Image Analyst le 28 Juil 2022
imshow(matrix(:,:,1))
%identify axes
[x, y] = ginput(2);
% preallocate matrices
cog = zeros(size(matrix,3),1);
% the loop does not work and the error in the cog(i) line
% loop start
for i = 1:size(matrix,3)
I = matrix(:,:,i);
test = improfile(I,[x(1) x(2)],[y(1) y(2)]);
%the error comes from this line
cog(i) = sum((1:length(test)).*test)/sum(test);
% loop end
end
scog = (cog - min(cog)) / (max(cog) - min(cog));
  1 commentaire
Matt J
Matt J le 27 Juil 2022
You need to demonstrate the code and show us the error messages.

Réponse acceptée

David Hill
David Hill le 27 Juil 2022
cog(i) = sum((1:length(test)).*test')/sum(test); %need to transpose test' to match dimensions
  1 commentaire
BA
BA le 27 Juil 2022
Modifié(e) : BA le 27 Juil 2022
Fab. it works perfectly. I have another question: what is the equivalent of 'improfile' in octave? I mean to change the 'improfile' line to work in octave

Plus de réponses (0)

Cette question est clôturée.

Community Treasure Hunt

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

Start Hunting!

Translated by