]> AND Private Git Repository - these_gilles.git/blob - THESE/codes/snake/basic_code/ExternalForceImage2D.m
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
modif finale lnivs + keywords
[these_gilles.git] / THESE / codes / snake / basic_code / ExternalForceImage2D.m
1 function Eextern = ExternalForceImage2D(I,Wline, Wedge, Wterm,Sigma)\r
2 % Eextern = ExternalForceImage2D(I,Wline, Wedge, Wterm,Sigma)\r
3\r
4 % inputs, \r
5 %  I : The image\r
6 %  Sigma : Sigma used to calculated image derivatives \r
7 %  Wline : Attraction to lines, if negative to black lines otherwise white\r
8 %          lines\r
9 %  Wedge : Attraction to edges\r
10 %  Wterm : Attraction to terminations of lines (end points) and corners\r
11 %\r
12 % outputs,\r
13 %  Eextern : The energy function described by the image\r
14 %\r
15 % Function is written by D.Kroon University of Twente (July 2010)\r
16 \r
17 Ix=ImageDerivatives2D(I,Sigma,'x');\r
18 Iy=ImageDerivatives2D(I,Sigma,'y');\r
19 Ixx=ImageDerivatives2D(I,Sigma,'xx');\r
20 Ixy=ImageDerivatives2D(I,Sigma,'xy');\r
21 Iyy=ImageDerivatives2D(I,Sigma,'yy');\r
22 \r
23 \r
24 Eline = imgaussian(I,Sigma);\r
25 Eterm = (Iyy.*Ix.^2 -2*Ixy.*Ix.*Iy + Ixx.*Iy.^2)./((1+Ix.^2 + Iy.^2).^(3/2));\r
26 Eedge = sqrt(Ix.^2 + Iy.^2); \r
27 \r
28 Eextern= (Wline*Eline - Wedge*Eedge -Wterm * Eterm); \r
29 \r