Dans une classe particulière de détecteurs, nos données se présentent sous la forme de paires de points en deux dimensions, et nous voulons enchaîner ces points en lignes.
Les données sont bruyantes et regroupées dans un sens mais pas dans l'autre. Nous ne pouvons pas garantir un coup dans chaque bac, même lorsque chaque élément détecteur fonctionne, il peut donc y avoir des sauts.
Notre chaîne d'analyse actuelle ressemble à
- Ajustez les résultats pour l'étalonnage des éléments détecteurs individuels
- Rechercher des clusters
- Lignes d'ajustement grossières aux grappes
- Connectez des clusters en structures de type ligne plus longues
- ...
Cette question concerne l'étape (3).
Nous avons utilisé une transformation de Hough pour cette étape et cela fonctionne bien, mais lorsque nous essayons de passer du banc d'essai à la simulation d'un projet à grande échelle, cela devient trop lent.
Je cherche un moyen plus rapide.
Pour ceux qui pourraient s'intéresser au cas d'utilisation réel, voici une chambre de projection temporelle à l'argon liquide
la source
Réponses:
Il existe une version probabiliste de la transformation de Hough (PHT) qui est plus rapide. Comme décrit par Bradski & Kaehler dans leur livre OpenCV:
La bibliothèque OpenCV présente une implémentation pour le PHT.
Il existe d'autres alternatives. Il n'est pas difficile de créer une version distribuée de la transformation Hough. Il suffit de diviser votre ensemble de points en petits morceaux et d'utiliser le cadre MapReduce pour résumer tous les accumulateurs. Une autre idée consiste à effectuer une version grossière de la transformation de Hough en utilisant un espace de paramètres à faible résolution. Choisissez vos meilleurs candidats et exécutez une itération plus fine en utilisant un espace de paramètres présentant une résolution plus élevée. C'est peut - être l'idée derrière le FHT du Gandalf.
la source
Mon collègue a trouvé la Fast Hough Transform dans la bibliothèque de Gandalf , qui semble très prometteuse mais qui demande beaucoup de travail à intégrer, donc je cherche d'autres approches.
L'implémentation de Gandalf est intéressante: ils évaluent l'espace accumulateur de manière récursive comme s'il traversait un arbre quad ou oct. Les régions sans grande densité sont rejetées au fur et à mesure.
la source