Le Hough transforment

Le Hough de transforment ( ˈhʌf ) est une technique de l'extraction de dispositif utilisée dans l'analyse d'image , la vision d'ordinateur et le Digital à traitement d'images. Le but de la technique est de trouver des exemples imparfaits des objets dans une certaine classe des formes par un procédé de vote. Ce procédé de vote est suivi dans un espace de paramètre, à partir duquel des candidats d'objet sont obtenus en tant que maximum locaux dans un soi-disant espace d'accumulateur qui est explicitement construit par l'algorithme pour calculer le Hough transforment.

Le Hough classique transforment a été concerné par l'identification des lignes dans l'image, mais plus tard le Hough transforment a été prolongé à identifier des positions des formes arbitraires, le plus généralement cercles ou ellipses. Le Hough transforment pendant qu'il est universellement employé aujourd'hui était inventé par le Richard Duda et le cerf de Peter de dans le 1972 , qui l'a appelé un " ; transform" généralisé de Hough ; après le brevet relatif du 1962 du Hough de Paul de . La transformation a été popularisée dans la communauté de la vision d'ordinateur par le Dana H. Ballard par un " intitulé d'article de journal 1981 ; En généralisant le Hough transformer pour détecter le shapes" arbitraire ;.

Théorie

Dans l'analyse automatisée des images numériques, un sous-problème surgit souvent de détecter des formes simples, telles que les lignes droites, les cercles ou les ellipses. Dans beaucoup de cas un détecteur de bord de peut être employé comme étape de prétraitement pour obtenir les points d'image ou les Pixel d'image qui sont sur la courbe désirée dans l'espace d'image. En raison des imperfections dans les données d'image ou le détecteur de bord, cependant, il peut y avoir les points ou les Pixel absents sur les courbes désirées aussi bien que des déviations spatiales entre la ligne/cercle/ellipse idéale et les points bruyants de bord pendant qu'ils sont obtenus à partir du détecteur de bord. Pour ces raisons, il est souvent non trivial pour grouper les dispositifs extraits de bord à un ensemble approprié de lignes, de cercles ou d'ellipses. Le but du Hough transforment est d'aborder ce problème en permettant pour exécuter des groupements des points de bord dans des candidats d'objet en exécutant un procédé de vote explicite au-dessus d'un ensemble d'objets paramétrisés d'image.

La caisse la plus simple de Hough transforment est la linéaire transforment pour détecter les lignes droites. Dans l'espace d'image, la ligne droite peut être décrite en tant que y = MX + b et peut être graphiquement tracée pour chaque paire de points d'image (x, y). Dans le Hough transformer, une idée principale est de considérer les caractéristiques de la ligne droite pas comme points d'image X ou y, mais en termes de ses paramètres, ici paramètre m de pente et paramètre B. d'interception basé sur ce fait, la ligne droite y = MX + b peut être représentée comme point (b, m) dans l'espace de paramètre (b contre le graphique de m.)

Si on emploie la pente et les paramètres m et b d'interception, cependant, on fait face au problème que les lignes verticales provoquent des valeurs illimitées des paramètres m et B. Que les raisons informatiques, il vaut donc mieux paramétrisent les lignes dans le Hough transforment avec deux autres paramètres, généralement désignés sous le nom de r et de \ theta (thêta de ). Le paramètre r représente la distance entre la ligne et l'origine , alors que le \ theta est l'angle du vecteur de l'origine avec ce point le plus étroit (voir les coordonnées ). Using cette paramétrisation, l'équation de la ligne peut être écrite comme :

y = \ (- {\ \ péché \ thêta} \) x droit cos \ thêta \ au-dessus de laissé + \ laissé ({r \ plus de {\ péché \ thêta}} \ droit), à ce que peut être réarrangé r = x \ cdot \ cos \ theta+y \ cdot \ péché \ theta

< ! -- Image d'Unsourced supprimée (tout à fait unfortunate, je dirais…) : … -->

Il est donc possible de s'associer à chaque ligne de l'image, un couple ( r, θ ) qui est unique si \ thêta \ dans et r \ dans \ mathbf {R} , ou si \ thêta \ dans et r \ geq 0. ( r, θ ) l'avion désigné parfois sous le nom de l'espace de Hough de pour l'ensemble de lignes droites dans deux dimensions. Cette représentation fait le Hough transformer pour être conceptuellement très proche du radon bidimensionnel de transforment .

Il est bien connu qu'un nombre de lignes infini puisse passer par un unique de l'avion. Si ce point a le de coordonnées (x_0, y_0) dans l'avion d'image, toutes les lignes qui passent par lui obéissent l'équation suivante :

r (\ thêta) = x_ {0} \ cdot \ cos \ theta+y_ {0} \ cdot \ péché \ theta

Ceci correspond à une courbe sinusoïdale du dans ( r, θ ) l'avion, qui est unique à ce point. Si les courbes correspondant à deux points sont superposées, l'endroit (dans l'espace de Hough de ) où elles croisent correspondent aux lignes (dans l'espace d'image original) ce passage par les deux points. Plus généralement, un ensemble de points qui forment une ligne droite produira les sinusoids qui croisent aux paramètres pour cette ligne. Ainsi, le problème de détecter les points colinéaires peut être converti en problème de trouver les courbes concourantes.

Exécution

Le Hough transforment des utilisations de l'algorithme une rangée, appelée l'accumulateur, de détecter l'existence d'une ligne y = MX + B. La dimension de l'accumulateur est égale au nombre de paramètres inconnus du Hough transforment le problème. Par exemple, le Hough linéaire transforment le problème a deux paramètres inconnus : m et B. La dimension deux de la rangée d'accumulateur correspondrait aux valeurs à quantification pour m et B. Pour chaque Pixel et son voisinage, le Hough transforment l'algorithme détermine s'il y a assez d'évidence d'un bord à ce Pixel. Si oui, il calculera les paramètres de cette ligne, et puis recherche le casier de l'accumulateur que les paramètres tombent dans, et augmentent la valeur de ce casier. En trouvant les casiers avec les valeurs les plus élevées, typiquement en recherchant des maximum locaux dans l'espace d'accumulateur, les lignes le plus susceptibles peuvent être extraites, et leurs définitions géométriques (approximatives) être lues au loin. La manière la plus simple de trouver ces crêtes de est en appliquant une certaine forme de seuil, mais les différentes techniques peuvent donner de meilleurs résultats dans différentes circonstances - déterminant quelles lignes sont trouvées comme combien. Puisque les lignes retournées ne contiennent aucune information de longueur, il est souvent prochain nécessaire de trouver quelles parties de l'image s'assortissent vers le haut avec quelles lignes. D'ailleurs, en raison des erreurs d'imperfection dans l'étape de détection de bord, il y aura habituellement des erreurs dans l'espace d'accumulateur, qui peut le rendre non trivial pour trouver les crêtes appropriées, et ainsi les lignes appropriées.

Exemple

Considérer trois points de repères, montrés ici en tant que points noirs.


pour chaque point de repères, un certain nombre de lignes sont passer tracé par lui, tout à différents angles. Ceux-ci sont montrés ici comme lignes continues.
Pour chacun en trait plein on trace une ligne qui est le perpendiculaire à lui et qui intersecte l'origine . Ceux-ci sont montrés comme lignes tirées.
La longueur et l'angle de chacun à ligne pleine est mesurée. Dans le diagramme ci-dessus, les résultats sont donnés sous forme de tableaux.
Ceci est répété pour chaque point de repères.
Un graphique de longueur contre l'angle, connu sous le nom de graphique de l'espace de Hough, est alors créé.

Le point où les lignes intersectent donne une distance et un angle. Ces distance et angle indiquent la ligne qui bissecte les points étant examinés. Dans le graphique montré les lignes intersecter au point pourpre ; ceci correspond à la ligne des pourpres pleine dans les diagrammes ci-dessus, qui bissecte les trois points.

Ce qui suit est un exemple différent montrant que les résultats d'un Hough transforment sur une image de trame contenant deux lignes épaisses.

Les résultats de ceci transforment ont été stockés dans une matrice. La valeur de cellules représente le nombre de courbes par n'importe quel point. Des valeurs plus élevées de cellules sont rendues plus lumineuses. Les deux distinctement taches lumineuses sont les intersections des courbes des deux lignes. Des positions de ces taches, l'angle et la distance du centre d'image des deux lignes dans l'image d'entrée peuvent être déterminés.

Variations et prolongements

Using la direction de gradient pour réduire le nombre de voix

Une amélioration suggérée par O'Gorman et Clowes peut être employée pour détecter des lignes si on tient compte que le gradient local de l'intensité d'image sera nécessairement orthogonal au bord. Puisque la détection de bord implique généralement de calculer la grandeur du gradient d'intensité, la direction de gradient est souvent trouvée comme effet secondaire. Si un point indiqué des coordonnées ( X, y ) s'avère justement être en effet sur une ligne, alors la direction locale du gradient donne le paramètre du θ de correspondant à ladite ligne, et le paramètre du r alors est immédiatement obtenu. En fait, la vraie direction de gradient est seulement estimée avec une quantité donnée d'exactitude (approximativement ±20°), ainsi il signifie que le sinusoid doit être tracé autour de l'angle prévu, ±20°. Ceci cependant réduit le temps de calcul et a l'effet intéressant de réduire le nombre de voix inutiles, de ce fait augmentant la visibilité des transitoires correspondant à de vraies lignes dans l'image.

Le Hough transforment des courbes, et le Hough généralisé transforment

Bien que la version de la transformation décrite ci-dessus s'applique seulement à trouver les lignes droites, un semblable transforme peut être employé pour trouver n'importe quelle forme qui peut être représentée par un ensemble de paramètres. Un cercle, par exemple, peut être transformé en jeu de trois paramètres, représentant son centre et rayon, de sorte que l'espace de Hough devienne tridimensionnel. Des ellipses arbitraires et les courbes peuvent également être trouvées de cette façon, de même que peut n'importe quelle forme facilement exprimée comme un ensemble de paramètres. Pour des formes plus compliquées, le Hough généralisé transforment est employé, qui permet à un dispositif de voter pour une position, une orientation et/ou une graduation particulières de la forme using une table de consultation prédéfinie.

Using les dispositifs pesés

Un détail commun de variation. C'est-à-dire, la conclusion des casiers avec la plus grande quantité dans une étape peut être employée pour contraindre la gamme des valeurs recherchées dans le prochain.

Limitations

Le Hough transforment est seulement efficace si un nombre élevé de voix tombent dans le casier droit, de sorte que le casier puisse être facilement détecté parmi le bruit de fond. Ceci signifie que le casier ne doit pas être trop petit, ou bien quelques voix tomberont dans les casiers voisins, de ce fait réduisant la visibilité du casier principal.

En outre, quand le nombre de paramètres est grand (c'est-à-dire, quand nous employons le Hough transformer avec en général plus de trois paramètres), le nombre moyen de voix émises dans un casier simple est très bas, et ces casiers correspondant en effet à une figure dans l'image pas nécessairement pour sembler avoir un nombre beaucoup plus élevé de voix que les voisins. Ainsi, le Hough transforment doit être employé avec grand soin pour détecter n'importe quoi autre que des lignes ou des cercles.

En conclusion, une grande partie de l'efficacité du Hough transforment dépend de la qualité des données d'entrée : les bords doivent être bien détectés pour le Hough transforment pour être efficaces. L'utilisation du Hough transforment sur des images bruyantes est une affaire délicate très et généralement, une étape denoising doit être employée avant. Dans le cas où l'image est corrompue par la tache, de même que le cas dans des images de radar, le radon de transforment est parfois preferred pour détecter des lignes, puisqu'il a l'effet gentil d'atténuer le bruit par l'addition.

Histoire

Il a été au commencement inventé pour l'analyse de machine des photographies de la chambre à bulles .

Le Hough transforment a été breveté comme dans le 1962 avec le " nommé ; Méthode et moyens d'identifier Patterns" complexe ;. Ce brevet emploie pente-arrêtent la paramétrisation pour les lignes droites, qui mène maladroitement à un illimité transforme l'espace puisque la pente peut aller à l'infini.

La paramétrisation de rho-thêta universellement utilisée aujourd'hui a été la première fois décrite dedans cerf de

Duda, de R. de , " ; Utilisation de la transformation de Hough de détecter des lignes et des courbes dans les images, " ; COMM. 11&ndash ; 15 (janvier, 1972).

bien que naturellement ait été déjà standard pour le radon transformer depuis au moins les années 30.

La variation d'O'Gorman et de Clowes est décrite dedans

Frank O'Gorman, mb Clowes de : Conclusion des bords d'image par Collinearity des points de dispositif. Ordinateurs 25 d'IEEE trans. (4) : 449-456 (1976)

.

Random links:Rue Livre d'evangile d'écorchure | Moindre point fixe | CKNR-FM | Ambikapur | El_corvejón_transforma