Noob problem: Defining a fumction and passing values issues an error "Subscript indices must either be real positive integers or logicals."
10 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Veselin Ivanov
el 21 de Sept. de 2015
Comentada: Veselin Ivanov
el 21 de Sept. de 2015
I have the following function:
function [ result ] = SSD( i1, i2 )
if size(i1) == size(i2)
[r, c] = size(i1)
result = -(sum(sum((double(i1) - double(i2)).^2)) / (r*c));
else
result = 'invalid';
end
I would like to pass it to images that contain gray values only and the error:
Subscript indices must either be real positive integers or logicals.
Popes up. For debugging purpuse I tried calling the function in this way:
SSD(zeros(3), ones(3));
The error is still there. But if I call the function in this way:
SSD(ones(3), ones(3));
No error. What is happening? Why doesn't the function like zero values?
0 comentarios
Respuesta aceptada
Jon
el 21 de Sept. de 2015
Runs fine on my machine-no errors. 2015a. Do you have a variable named SSD or zeros?
2 comentarios
Kirby Fears
el 21 de Sept. de 2015
Try clearing your workspace before calling SSD.
clear;
SSD(zeros(3), ones(3));
If this works, you probably had a variable named zeros in your workspace.
Más respuestas (0)
Ver también
Categorías
Más información sobre Entering Commands 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!