help im getting this error
显示 更早的评论
zerocross(F, ukuran, sigma)
Unrecognized function or variable 'ukuran'.
i got that message here's my code
function [K] = zerocross(F,ukuran,sigma)
% ZEROCROSS Pemerolehan tepi objek pada citra F
% melalui operator Marr-Hildreth
% Hasil: citra K
H = cadarLoG(ukuran,sigma);
pembulatan = false;
potong = true;
G = deteksi(F, H, potong, pembulatan);
% Proses zero crossing
K = zeros(size(G));
[m, n] = size(K);
for y=2 : m-1
for x=2: n-1
jum = 0;
for p = x-1 : x
for q = y-1 : y
jum = jum + G(q,p);
end
end
rerata0 = jum / 4;
jum = 0;
for p = x-1 : x
for q = y : y+1
jum = jum + G(q,p);
end
end
rerata1 = jum / 4;
jum = 0;
for p = x : x+1
for q = y-1 : y
jum = jum + G(q,p);
end
end
rerata2 = jum / 4;
jum = 0;
for p = x : x+1
for q = y : y+1
jum = jum + G(q,p);
end
end
rerata3 = jum / 4;
terbesar = max([rerata0 rerata1 rerata2 rerata3]);
terkecil = min([rerata0 rerata1 rerata2 rerata3]);
if (terbesar > 0) && (terkecil < 0)
K(y,x) = 255;
end
end
end
return
5 个评论
DGM
2022-5-24
How are you calling the function?
al rezi
2022-5-24
al rezi
2022-5-24
If you were calling the function without any arguments, that's not the error you would be getting.
% these variables exist in a different scope
% they have nothing to do with the A,B,and C which are local to myfunct
A = 1;
B = 2;
C = 3;
myfunct % improperly calling the function without any inputs or outputs
function out = myfunct(A,B,C) % requires 3 input arguments
x = A; % error occurs when you try to use a missing argument
y = B;
z = C;
out = x + y + z;
end
回答(1 个)
Walter Roberson
2022-5-24
zerocross(F, ukuran, sigma)
at the time you invoked zerocross with that line, you had not defined ukuran. Possibly you had not defined sigma either, but you had defined F
类别
在 帮助中心 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!