Azzera filtri
Azzera filtri

Index exceeds the number of array elements (10)

2 visualizzazioni (ultimi 30 giorni)
var=cell(CC.NumObjects,1)
for j=1:1:n
% clear var
var(j,1)= var(double(image(CC.PixelIdxList{1,j})))
end
%
my code is like this. CC.NumObjects=10 and for example its consists of CC.PixelIdxList{1,1} = 369x1 array. Others consist of arrays like this. "CC.Pixel dxList{1,1}" values in this are pixel indices. I'm trying to measure the variance of the values corresponding to these indices in the image matrix. but it gives this error.
  6 Commenti
Dyuman Joshi
Dyuman Joshi il 30 Set 2023
Modificato: Dyuman Joshi il 30 Set 2023
Attach the data you are working with. Use the paperclip button to do so.
Once again, why are you trying to use an empty cell array as a variable as and then over-writing it?
var{j,1} = var(double(image(CC.PixelIdxList{1,j})));
Edit - I seemed to have forgotten that var is a built-in MATLAB function :')

Accedi per commentare.

Risposta accettata

Voss
Voss il 30 Set 2023
Avoid naming your variable var, since that is the name of a function you are trying to use. Also, a cell array doesn't appear to be required; you can use a numeric vector to store the results.
var_result = zeros(n,1);
for j = 1:n
var_result(j,1) = var(double(GPR(CC.PixelIdxList{1,j})));
end
  2 Commenti
besaret koçak
besaret koçak il 30 Set 2023
Thank you, the error has been resolved. I changed the variable name from "var" to "var_result" and it did not give an error.

Accedi per commentare.

Più risposte (0)

Prodotti


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by