]> AND Private Git Repository - these_gilles.git/blob - THESE/codes/graphe/Ncut_9/computeEdges.m
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
final
[these_gilles.git] / THESE / codes / graphe / Ncut_9 / computeEdges.m
1 function edgemap = computeEdges(imageX,parametres,threshold)\r
2 % edgemap = computeEdges(imageX,parametres,threshold)\r
3 %\r
4 % computes the edge in imageX with parameters parametres and threshold\r
5 % Timothee Cour, Stella Yu, Jianbo Shi, 2004.\r
6 \r
7 [ex,ey,egx,egy,eg_par,eg_th,emag,ephase , g ] = quadedgep(imageX,parametres,threshold);\r
8 % example : [ex,ey,egx,egy,eg_par,eg_th,emag,ephase] = quadedgep(imageX,[4,3,30,3],0.05);\r
9 \r
10 % [emagTrie,eindex] = sort(emag);\r
11 \r
12 %edges3 = sparse(floor(ex),floor(ey),(egx.^2+egy.^2).^(1/2),size(imageX,2),size(imageX,1))';\r
13 \r
14 try\r
15     edges2 = emag .* edge(imageX,'canny') ;\r
16     %edges2 = emag .* edge(imageX,'sobel') ;\r
17 catch\r
18     edges2 = 0 * emag;\r
19 end\r
20 \r
21 edges2 = edges2 .* (edges2 > threshold);\r
22 egx1 = g(:,:,1);\r
23 egy1 = g(:,:,2);\r
24 eindex = find(edges2);\r
25 [ey,ex,values] = find(edges2);\r
26 \r
27 egx = egx1(eindex);\r
28 egy = egy1(eindex);\r
29 \r
30 edgemap.eindex = eindex;\r
31 edgemap.values = values;\r
32 edgemap.x = ex;\r
33 edgemap.y = ey;\r
34 edgemap.gx = egx;\r
35 edgemap.gy = egy;\r
36 edgemap.emag = emag;\r
37 edgemap.ephase = ephase;\r
38 edgemap.imageEdges = edges2;\r