Why function gradmag isn´t working for me?
Mostrar comentarios más antiguos
Dear all,
I have this code:
%addpath('/Applications/MATLAB_R2015b.app/toolbox/dip/common/dipimage')
% dip_initialise
%dipsetpref('imagefilepath','/Applications/MATLAB_R2015b.app/toolbox/dip/images')
%addpath /Applications/MATLAB_R2015b.app/toolbox/dip/common/dipimage/demos
img1 = imread('2_ct_bw150.png');
img = rgb2gray(img1);
x = 350+350*cos(0:0.1:2*pi)';
y = 350+350*sin(0:0.1:2*pi)';
imshow(img1);
hold on
plot([x;x(1)],[y;y(1)],'g')
alpha = 0.001;
beta = 0.9;
gamma = 100;
iterations = 50;
N = length(x);
a = gamma*(2*alpha+6*beta)+1;
b = gamma*(-alpha-4*beta);
c = gamma*beta;
P = diag(repmat(a,1,N));
P = P + diag(repmat(b,1,N-1), 1) + diag( b, -N+1);
P = P + diag(repmat(b,1,N-1),-1) + diag( b, N-1);
P = P + diag(repmat(c,1,N-2), 2) + diag([c,c],-N+2);
P = P + diag(repmat(c,1,N-2),-2) + diag([c,c], N-2);
P = inv(P);
f = gradient(gradmag(img,30));
for ii = 1:iterations
% Calculate external force
coords = [x,y];
fex = get_subpixel(f{1},coords,'linear');
fey = get_subpixel(f{2},coords,'linear');
% Move control points
x = P*(x+gamma*fex);
y = P*(y+gamma*fey);
if mod(ii,5)==0
plot([x;x(1)],[y;y(1)],'b')
end
end
plot([x;x(1)],[y;y(1)],'r')
hold off
for segmentation, but this error appears:
Undefined function or variable 'gradmag'.
Error in ct_snakes (line 32)
f = gradient(gradmag(img,30));
Can you advise me, where is mistake? Thank you for your answers.
Respuestas (2)
Richard Zappulla
el 30 de Mzo. de 2017
0 votos
gradmag is not standard MATLAB function. If downloaded it from the file exchange or GITHUB, make sure the folder in which it resides is on your path. Chances are, this is the issue causing the error you listed.
Cris Luengo
el 20 de Jul. de 2018
0 votos
This code, which you have copied from my blog, requires DIPimage to run. Get it here: http://www.diplib.org/. Make sure you read the installation instructions.
Categorías
Más información sobre Introduction to Installation and Licensing en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!