|
Publicité ' | ||||||||||||||||||||||||
|
|
#21 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
bonjour, j'ai testé le code HarrisFast, j'ai pas compris, au debut il affiche
56 potential corners found corner found at: 42,2 (407) corner found at: 33,7 (408) corner found at: 18,15 (394) corner found at: 43,16 (344) ........ puis il affiche 14 corners found. j'ai bien bien compris la difference. |
|
|
00
|
|
|
#22 |
![]() ![]() Xavier PhilippeauArchitecte système Inscription : décembre 2006 Messages : 9 815 ![]() |
La détection se déroule en 3 étapes:
1. Calcul de la mesure de Harris pour chaque pixel de l'image. 2. Extraction des points qui ont une mesure supérieure au seuil ET qui sont des maximums locaux. 3. Suppression des point qui sont trop proches les uns des autres: on garde le point qui a la plus grande mesure de Harris. Le message "xx potential corners found" est le nombre de points à la fin de l'étape 2. Le message "xx corners found" est le nombre de points à la fin de l'étape 3.
__________________
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple. |
|
00
|
|
|
#23 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
bonjour pseudocode, j'ai lu le document filtre usuels en traitement d'image, maintenant j'éssaie de comprendre votre algorithme HARRIS-FAST étape par étape, j'ai pas bien compris la partie :
/** * Gaussian function */ private double gaussian(double x, double y, double sigma2) { double t = (x*x+y*y)/(2*sigma2); double u = 1.0/(2*Math.PI*sigma2); double e = u*Math.exp( -t ); return e; pourquoi vous avez utilisé double u = 1.0/(2*Math.PI*sigma2); et pourquoi vous l'avez multiplié par Math.exp(-t); Parceque dans le tut il n'existe pas cette formule . merci. |
|
|
00
|
|
|
#24 | |
![]() ![]() Xavier PhilippeauArchitecte système Inscription : décembre 2006 Messages : 9 815 ![]() |
Citation:
![]() Dans le cas 2D, on à P(x,y) = P(x)*P(y). Si tu fais le calcul tu devrais trouver la formule que j'utilise dans le code.
__________________
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple. |
|
|
00
|
|
|
#25 |
|
Candidat au titre de Membre du Club
![]() |
Bonjour,
mon but c'est de détecter les points saillants et les pixels coin, ce qui veut dire que je vais avoir besoin du détecteur Harris. serait-il possible de m'envoyer le code en Matlab Merci d'avance |
|
|
00
|
|
|
#26 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
dans votre cours sur les filtres vous avez dit dans la page 30 (detecteur de HARRIS)
Ix et Iy représentent les dérivées de l'intensité suivant x et suivant y. On peut calculer ces valeurs en utilisant,par exemple, les filtres de Sobel horizontaux (pour Ix) et verticaux (pour Iy) sur chaque pixel du voisinage..... Pourquoi vous avez utilisé la fonction guassienne dans votre algorithme HARRIS-FAST, quelle est son rôle, je n'ai trouvé aucune information dans votre tut (filtre usuels) et comment vous justifier . Quelle est la difference entre la fonction gaussienne f=exp( -t ) avec t = (x*x+y*y)/(2*sigma2) et le flou gaussien f=1.0/(2*PI*sigma2)*exp( -t ) avec t = (x*x+y*y)/(2*sigma2) |
|
|
00
|
|
|
#27 | ||||||
![]() ![]() Xavier PhilippeauArchitecte système Inscription : décembre 2006 Messages : 9 815 ![]() |
Citation:
Citation:
Cette moyenne peut être une simple moyenne arithmétique: Code :
Code :
et dx,dy = les offsets entre le pixel "k" du voisinage et le pixel considéré (= le centre du voisinage)
__________________
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple. |
||||||
|
00
|
|
|
#28 | ||
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
bonjour bipame , essaie ce code :
Code matlab :
http://www.developpez.net/forums/pri...newpm&u=204074 |
||
|
|
00
|
|
|
#29 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
bonsoir pseudocode, j'ai cherché à comprendre exactement c'est quoi le mot maxima local ( pourquoi ils disent toujour le mot local ), j'ai pas trouvé la réponse dans google ,... , un grand merci .
|
|
|
00
|
|
|
#30 | ||
![]() ![]() Xavier PhilippeauArchitecte système Inscription : décembre 2006 Messages : 9 815 ![]() |
Citation:
Citation:
__________________
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple. |
||
|
00
|
|
|
#31 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
ééééé oui
|
|
|
00
|
|
|
#32 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
Je veux comprendre une chose dans le filtre de gauss .
Si J'ai une image f et je vais appliquer le filtre de gauss G[i][j], donc on va utiliser la formule : G[i][j] = (1/(2Pi* σ^2)) * exp(-(i^2 +j^2)/(2*(σ^2)) ou bien : G[i][j] = exp(-(i^2 +j^2)/(2*(σ^2)) Aussi , je veux savoir pour une matrice 3*3 : les i et les j appartiennent 'ils à {-1,0,+1} ou de {0,1,2} ???? |
|
|
00
|
|
|
#33 | ||
![]() ![]() Xavier PhilippeauArchitecte système Inscription : décembre 2006 Messages : 9 815 ![]() |
Citation:
Hors les 2 formules précédentes sont les mêmes a une constante multiplicative près. Donc au final, on obtiendra la même matrice du filtre. Tout ce qui changera c'est la valeur de la "constante de normalisation" qui sera utilisée. Citation:
__________________
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple. |
||
|
00
|
|
|
#34 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
bonjour pseudocode, je suis entrain d'analyser votre algorithme ( bloc par bloc ) mais j'ai pas trouvé une correspondance avec votre document ( filtres usuels en traitement d'image)
j'ai compris la partie : Gaussian function Sobel gradient 3x3 mais la patie : Convolve gradient with gaussian filter: j'ai pas bien compris Si vous avez détaillé votre algorithme quelque part, svp donnez moi un lien ou un doc plus détaillé, j'ai bien cherché, mais j'ai pas trouvé grande chose http://www.developpez.net/forums/d32...e-convolution/ merci . |
|
|
00
|
|
|
#35 | |||
![]() ![]() Xavier PhilippeauArchitecte système Inscription : décembre 2006 Messages : 9 815 ![]() |
Citation:
![]() Citation:
Citation:
Comme c'est dit dans l'article sur les filtres, cela revient à multiplier terme à terme les éléments de chaque matrice, puis faire leur somme. C'est ce que fait le code Java.
__________________
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple. |
|||
|
00
|
|
|
#36 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
vous avez écrit :
// Convolve gradient with gaussian filter: // // Ix2 = (F) * (Gx^2) // ......... donc Lx2[0][0]=f*grad[0][0][0]*grad[0][0][0]; mais pouquoi vous avez écrit : Lx2[x][y]+=f*grad[xk][yk][0]*grad[xk][yk][0]; c'est à dire une somme |
|
|
00
|
|
|
#37 | |
![]() ![]() Xavier PhilippeauArchitecte système Inscription : décembre 2006 Messages : 9 815 ![]() |
Citation:
__________________
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple. |
|
|
00
|
|
|
#38 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
merci pseudo j'ai compris.
|
|
|
00
|
|
|
#39 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2008 Messages : 127 ![]() |
un nouveau probleme :
// compute the harris measure double h = harrisMeasure(x,y); if (h<=0) continue; // log scale pourquoi vous avez testé si h<=0, est ce qu'on peut avoir une valeur négative? pourquoi vous avez utilisé la formule suivante : h = 255 * Math.log(1+h) / Math.log(1+255); |
|
|
00
|
|
|
#40 | ||
![]() ![]() Xavier PhilippeauArchitecte système Inscription : décembre 2006 Messages : 9 815 ![]() |
Citation:
Citation:
__________________
ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple. |
||
|
00
|
Copyright © 2000-2013 - www.developpez.com