Filter löschen
Filter löschen

help me finding this error

1 Ansicht (letzte 30 Tage)
monisha silvia
monisha silvia am 17 Mär. 2018
Kommentiert: Rik am 18 Mär. 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 Kommentare
Rik
Rik am 17 Mär. 2018
The dimensions don't agree. You can't use an element-wise operation if the dimensions don't match.
Rik
Rik am 18 Mär. 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.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Rik
Rik am 18 Mär. 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 Kommentare
monisha silvia
monisha silvia am 18 Mär. 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 am 18 Mär. 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));

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

monisha silvia
monisha silvia am 18 Mär. 2018
new to matlab. finding difficult to solve

Kategorien

Mehr zu Biomedical Imaging finden Sie in Help Center und File Exchange

Tags

Noch keine Tags eingegeben.

Community Treasure Hunt

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

Start Hunting!

Translated by