salut
je veux bien le code source pour afficher une image contour c-a-d faire séparer les régions de contour et la région s'affichera par le bland et le contour par le noir.
merci.
salut
je veux bien le code source pour afficher une image contour c-a-d faire séparer les régions de contour et la région s'affichera par le bland et le contour par le noir.
merci.
"filtres gaussiens"
Ca te sortira peut être pas le code mais ça te donnera une idée de la technique....perso j'ai pas de code comme ça sous la main (un gars à fait une conférence à mon école sur le traitement d'image et il parlait de ça pour détecter les contours d'une image).
Et on est pas là pour faire ton projet à ta place![]()
Salut !
Si on suppose un bitmap Source chargé avec une image modifiée en niveaux
de gris et un tableau :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Graphics::TBitmap *Source; Byte Seuillage[..][..];
Ensuite... il faut "squelétiser"... et si on s'y met tous on devrait y arriver !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 int seuil = 200; // à tester Byte *M; Byte *B; Byte *P; Byte *S; int m1; int p1; double d; int r; int somx; int somy; for(int y = 1; y < (Source->Height - 1); y++) { M = (Byte*)Source->ScanLine[y - 1]; B = (Byte*)Source->ScanLine[y]; P = (Byte*)Source->ScanLine[y + 1]; S = &Seuillage[y][0]; for(int x = 1; x < (Source->Width - 2); x++) { m1 = x - 1; p1 = x + 1; somx = (M[m1] * -1) + //(M[x] * 0) (M[p1] * 1) + (B[m1] * -2) + //(B[x] * 0) (B[p1] * 2) + (P[m1] * -1) + //(P[x] * 0) (P[p1] * 1); somy = (M[m1] * 1) + (M[x] * 2)+ (M[p1] * 1)+ //(B[m1] * 0) //(B[x] * 0) //(B[p1] * 0) (P[m1] * -1) + (P[x] * -2) + (P[p1] * -1); d = (somx * somx) + (somy * somy); r = sqrt(d); S[x] = (r > seuil); //fond noir contours blanc //S[x] = (r <= seuil) //fond blanc contours noirs } }
Et s'il y a mieux... ça m'intéresse également !
A plus !
Partager