Azzera filtri
Azzera filtri

help me finding this error

1 visualizzazione (ultimi 30 giorni)
monisha silvia
monisha silvia il 17 Mar 2018
Commentato: Rik il 18 Mar 2018
Error using .* Matrix dimensions must agree.
Error in main (line 175) p = ((1-rho).*p + rho.*delta_p_current.*v).*delta_p_current + p.*(abs(1-delta_p_current));
  2 Commenti
Rik
Rik il 17 Mar 2018
The dimensions don't agree. You can't use an element-wise operation if the dimensions don't match.
Rik
Rik il 18 Mar 2018
How do you expect me to read the code you e-mailed me? Did you manually removed all line ends? I will not have any look at your code unless and until it is in a readable format. You should either post it here (edit your question and use the {}Code button), or attach the m-file. (don't forget to attach any necessary other files as well in a zip)
If you use the debugger to stop execution at that line, you will be able to see the dimensions of each variable so you can check if any are a size you don't expect.
Also, you should try to convert this to a MWE. Remove a much code as you can that doesn't affect the error. Doing that already helps you find the error, and if you don't find it, we will have less code to debug.

Accedi per commentare.

Risposta accettata

Rik
Rik il 18 Mar 2018
The problem is that this line
temp = find(cumsum(ant_transit_prob)>=rand(1), 1);
sometimes returns an empty vector. I don't know what this algorithm is supposed to do, but you will have to change this line to make sure temp contains a valid value.
Also, the reading of the image should be changed to this:
% image loading
filename ='03';
img = rgb2gray(imread([filename '.jpg']));
[nrow, ncol] = size(img);
  2 Commenti
monisha silvia
monisha silvia il 18 Mar 2018
Error using .* Matrix dimensions must agree.
Error in main (line 175) p = ((1-rho).*p + rho.*delta_p_current.*v).*delta_p_current + p.*(abs(1-delta_p_current));
Rik
Rik il 18 Mar 2018
Just as with the previous function: imread returns a matrix with 3 dimension, while the rest of you code assumes a 2D matrix.
img=im2double(rgb2gray(im));

Accedi per commentare.

Più risposte (1)

monisha silvia
monisha silvia il 18 Mar 2018
new to matlab. finding difficult to solve

Categorie

Scopri di più su Biomedical Imaging in Help Center e File Exchange

Tag

Non è stata ancora inserito alcun tag.

Community Treasure Hunt

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

Start Hunting!

Translated by