Maison > Périphériques technologiques > IA > Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant l'analyse Wanzi

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant l'analyse Wanzi

WBOY
Libérer: 2023-04-11 20:28:36
avant
724 Les gens l'ont consulté

Dans la conduite autonome, la perception, le positionnement, la planification et la prise de décision, ainsi que le contrôle sont les quatre modules de base du système. Étant donné que l’algorithme actuel ne peut pas atteindre une intelligence absolue, une grande quantité de connaissances préalables est encore nécessaire pour améliorer les performances et la robustesse des modules afin d’obtenir une conduite autonome sûre. Parmi eux, les cartes de haute précision intègrent des connaissances préalables sur les routes et les environnements environnants. Le positionnement précis basé sur la carte constitue une base importante pour évaluer les conditions de conduite et fournit un soutien solide pour les décisions ultérieures en matière de perception et de planification.

Les principales sources de données utilisées pour le positionnement comprennent actuellement le GPS, le lidar, la vision et le radar à ondes millimétriques. Pour la vision, bien qu'il n'existe actuellement aucune solution de positionnement suffisamment fiable et reconnue dans l'industrie, l'exploration dans ce domaine ne s'est jamais arrêtée. Les principales raisons sont les suivantes :

La sécurité est l'indicateur le plus important des systèmes de conduite sans pilote, donc la mise en œuvre. L'une des principales fonctions est le couplage de données multi-sources et de différents résultats d'algorithmes. Aucune solution de capteur n'est parfaite. Par exemple, le GPS RTK, en tant que solution largement utilisée, est facilement affecté par les conditions des satellites, les conditions météorologiques et les conditions de transmission des liaisons de données, et ne peut pas être utilisé dans les tunnels, à l'intérieur et dans les zones densément peuplées avec des bâtiments de grande hauteur. . De plus, bien que le lidar présente l'avantage d'une faible charge de travail de calcul, fournit des informations sur la profondeur et n'est pas affecté par l'éclairage, les informations sont rares, le coût reste très élevé et il n'a pas encore la capacité d'assembler de grandes quantités de véhicules. En comparaison, bien que les informations visuelles fournies par les caméras soient affectées par l’éclairage et la météo, elles sont peu coûteuses et riches en contenu. Elles constituent la principale source de données pour les solutions de conduite assistée actuelles et présentent également un grand potentiel en matière de positionnement cartographique.

Étant donné que les idées fondamentales des algorithmes de positionnement visuel traditionnels sont les mêmes, cet article présente uniquement l'algorithme de positionnement global le plus couramment utilisé basé sur des points caractéristiques dans la pratique du point de vue d'une série de composants importants du cadre d'algorithme, c'est-à-dire dans le système de coordonnées de la carte À positionner. Cet article omet la dérivation de la formule d'optimisation et de contrainte géométrique impliquée, dans le but de donner aux étudiants une introduction macro à l'algorithme de positionnement. Pour des détails spécifiques, veuillez vous référer à la littérature et aux livres pertinents.

Basé sur l'algorithme de positionnement global des points caractéristiques

Le positionnement global visuel fait référence à la recherche de la pose (Pose) à 6 degrés de liberté (DoF) de la caméra dans le système de coordonnées de la carte en fonction de l'image actuelle, qui est les coordonnées (x, y, z) et les déviations angulaires (lacet, tangage, roulis) autour des trois axes de coordonnées. À l’heure actuelle, elles peuvent être principalement classées en méthodes basées sur la structure 3D, méthodes basées sur des images 2D, méthodes basées sur des images séquentielles et méthodes basées sur l’apprentissage profond. Parmi elles, les méthodes basées sur l'apprentissage en profondeur sont des méthodes de bout en bout, tandis que d'autres méthodes non de bout en bout à plusieurs étapes (multi-étapes) ont des processus différents, mais les idées de l'algorithme sont pour la plupart celles illustrées dans la figure 1. Représentation :

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 1 : Sur la base de l'image de requête, calculez la matrice de transformation 2D-3D et résolvez la pose de la caméra

Sur la base de la carte construite, faites correspondre le sous-ensemble de carte le plus similaire de l'histoire (image/nuage de points/point caractéristique), sur la base de la véritable valeur de pose historique et de la valeur réelle des coordonnées du point caractéristique fournies par le sous-ensemble de carte correspondant, calculez la matrice de transformation entre les paires de points et résolvez la pose actuelle de la caméra.

Ainsi, son noyau comprend quatre aspects : la description de l'image, la requête de cartographie, la correspondance des caractéristiques et le calcul de la pose. Il ne s'agit que d'une macro-classification au niveau technique. Le cadre algorithmique actuel n'est pas nécessairement exécuté dans cet ordre, et les chercheurs se concentrent principalement sur l'amélioration de ces technologies dans leurs recherches. Dans l’ensemble, la description d’image basée sur les points caractéristiques est fondamentalement mature et moins développée. Le calcul de pose étant un problème d’optimisation basé sur des contraintes géométriques, la méthode est relativement figée. En revanche, il existe de nombreuses techniques améliorées en matière de requêtes de mappage et de correspondance de fonctionnalités. Selon la source de données, la requête de mappage et la correspondance peuvent être 2D-2D, 2D-3D ou 3D-3D. Les images 2D sont obtenues par des caméras et des nuages ​​de points 3D peuvent être générés par des caméras binoculaires ou des caméras RVB-D qui fournissent de la profondeur.

Extraction de points caractéristiques

L'image 2D elle-même est une matrice composée de luminosité et de couleur. Elle est très sensible à l'angle de vue, à l'éclairage, aux changements de teinte, etc., et il est très difficile de l'utiliser directement. Par conséquent, des points représentatifs sont généralement utilisés pour les calculs pertinents. Les gens espèrent que de tels points présentent les avantages de la rotation, de la translation, de l'échelle, de l'invariance de l'éclairage, etc. Ces points sont appelés points caractéristiques de l'image, comprenant les points clés et les descripteurs. Les points clés expriment l'emplacement des points caractéristiques, tandis que les descripteurs décrivent les caractéristiques visuelles des points caractéristiques, principalement sous forme vectorielle. De manière générale, les descripteurs comptent principalement les changements d'échelle de gris/dégradé de couleur autour des points clés d'un certain motif. Pour un descripteur robuste, la distance (Distance) du descripteur du même point caractéristique doit être plus petite dans différentes situations d'images différentes.

Les descripteurs sont généralement des fonctionnalités créées à la main. Les descriptions classiques incluent HOG (Histogramme de gradients orientés) [1], SIFT (Transformation de caractéristiques invariantes à l'échelle) [2], SURF (Fonctionnalités robustes accélérées) [3], AKAZE (KAZE accéléré) [4], etc.

Afin de répondre aux exigences du temps réel, certains descripteurs de modèles binaires avec une vitesse de calcul plus rapide ont été conçus, tels que LBP (Local Binary Patterns) [5], BRIEF (Binary Robust Independent Elementary Features), ORB (Oriented FAST et rotation BRIEF)[6], BRISK(Binary robuste invariant scalable key-point)[7], FREAK(Fast retina key-point)[8], etc.

Avant que l'apprentissage profond ne devienne populaire, ces fonctionnalités conçues à la main étaient à la pointe de l'ensemble du secteur de la vision informatique. À ce jour, ces fonctionnalités sont encore largement utilisées dans des scénarios manquant de données étiquetées et comportant de nombreuses contraintes. Ce qui suit est une brève introduction à deux descripteurs couramment utilisés.

SIFT

Le descripteur SIFT peut être considéré comme l'une des technologies les plus influentes dans le monde du CV. Au niveau de la détection des points clés, la méthode Différence de Gauss (DoG) est principalement utilisée pour détecter des points extrêmes sur un espace multi-échelle en tant que points clés. Babaud et al. [9] ont prouvé que le lissage gaussien est le seul noyau de filtre de lissage spatial multi-échelle pouvant être utilisé, fournissant un support théorique suffisant pour les méthodes associées.

Alors pourquoi une telle méthode peut-elle trouver les points clés des caractéristiques ?

Parce que le noyau gaussien peut redimensionner l'image à différents espaces d'échelle grâce au flou et aux valeurs des zones lisses avec de petits changements de dégradé dans différents espaces d'échelle. L'écart est plus petit. Au contraire, les différences sont plus importantes dans des zones telles que les bords, les points, les coins et les textures. De cette façon, en faisant des différences entre des images d'échelles adjacentes, les points extrêmes de l'espace multi-échelle peuvent enfin être calculés. Cependant, les différents détails de l’image se situent intrinsèquement à des échelles différentes. Par exemple, dans un portrait, le visage peut être lissé en un seul morceau après un léger flou, tandis que les coins du cadre peuvent nécessiter un lissage à plus grande échelle pour refléter les « valeurs extrêmes » locales.

Par conséquent, comme le montre la figure 2, les images sont d'abord regroupées (Octave) à l'aide de la pyramide d'images, et des noyaux gaussiens de différentes échelles sont utilisés dans chaque groupe pour former une série de couches. Cette méthode est meilleure que la simple utilisation de plus d'échelles de noyaux gaussiens et peut détecter plus de points caractéristiques. Il convient de noter que bien que SIFT utilise DoG pour la détection des points clés, d'autres méthodes de détection sont également réalisables et n'affectent pas l'établissement des descripteurs SIFT.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 2 : Méthode de différence gaussienne

Le descripteur de point caractéristique SIFT peut être compris comme une simple version statistique de HOG. Comme le montre la figure 3, avec le point clé détecté comme centre, une zone environnante de 16 × 16 est sélectionnée et la zone est réorganisée en quatre patchs 4 × 4. Pour chaque bloc, un histogramme à 8 cases est utilisé pour compter les dégradés. La direction du dégradé détermine dans quelle case il tombe et le module du dégradé détermine la taille de la valeur. Afin de garantir la cohérence de l’échelle, la taille du dégradé doit être normalisée. Afin de garantir l'invariance de la rotation, une direction principale est calculée sur la base de tous les gradients dans la zone 16 × 16, et tous les gradients sont pivotés selon la direction principale. Le résultat est un vecteur de 128 dimensions 4 × 4 × 8.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 3 : Descripteur SIFT basé sur les statistiques de blocage de gradient

Descripteur binaire

Bien qu'après la proposition de SIFT, certains algorithmes améliorés tels que SURF, AKAZE, etc. aient été produits, mais même aujourd'hui en 2019, il est encore difficile de garantir les exigences en temps réel de l'algorithme dans certains scénarios. Par exemple, les appareils portables ont généralement une puissance de calcul limitée. En conduite autonome, les ressources CPU et GPU doivent être planifiées simultanément par plusieurs modules gourmands en calcul. L’efficacité est donc un indicateur important pour examiner la praticité d’un algorithme.

Afin d'améliorer l'efficacité, certains descripteurs binaires ont été proposés par des chercheurs. Généralement, ces méthodes effectuent un échantillonnage de points autour des points clés des caractéristiques. Ensuite, la taille en niveaux de gris d'une paire de points est comparée et le résultat est exprimé sous la forme 0/1, formant un vecteur de description binaire à N dimensions, formant un motif binaire de points caractéristiques. La plus grande différence entre les différents descripteurs binaires réside principalement dans les différents modes d'échantillonnage de caractéristiques et les différentes méthodes de sélection de paires de points.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 4 : Mode de sous-échantillonnage du descripteur LBP

Comme le montre la figure 4, le descripteur LBP adopte un échantillonnage circulaire autour du point clé et le compare avec l'échelle de gris du point clé central Options comparatives . Les résultats de la comparaison en niveaux de gris sont affichés sur l'anneau, les points noirs étant 0 et les points blancs étant 1. LBP est la forme la plus simple de descripteur binaire, tandis que ORB améliore la fonctionnalité BRIEF et est actuellement un descripteur binaire couramment utilisé. Comme le montre la figure 5, lors de la sélection de paires de points, ORB utilise une méthode aléatoire pour décrire les détails locaux de manière plus complète, contrairement à la simple utilisation du point central. Cependant, la corrélation entre les paires de points sera relativement importante, réduisant ainsi le caractère discriminatif du descripteur. ORB utilise directement des méthodes gourmandes et exhaustives pour résoudre ce problème et trouver des paires de points aléatoires avec une faible corrélation.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 5 : Mode de sélection des paires de points du descripteur ORB

La méthode d'échantillonnage et la méthode de sélection des paires de points des descripteurs binaires ci-dessus sont conformes à l'intuition générale des gens, tandis que des descripteurs tels que BRISK et FREAK fournir une méthode de construction de modèles binaires plus régulière avec des informations d'échelle intégrées. Par exemple, le descripteur FREAK imite le modèle d’échantillonnage visuel de l’œil humain. Comme le montre la figure 6, la valeur de chaque point d'échantillonnage est la valeur de gris moyenne dans le cercle rouge et la ligne bleue représente le plan de sélection des paires de points.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 6 : Échantillonnage de descripteurs FREAK, modèle de sélection de paires de points

La haute efficacité des descripteurs binaires se reflète principalement dans trois aspects.

(1) Les descripteurs binaires utilisent des vecteurs binaires comme descriptions de caractéristiques et n'ont besoin que de comparer la taille des paires de points sans calculer de gradients spécifiques.

(2) La comparaison entre deux descripteurs peut utiliser la distance de Hamming (Hamming distance), qui est plus rapide à calculer et plus facile à optimiser.

(3) Puisque chaque vecteur binaire correspond à un nombre décimal, il représente lui-même également un motif, sans qu'il soit nécessaire d'utiliser un histogramme pour le représenter comme SIFT.

Les descripteurs binaires ne sont généralement pas aussi discriminants que les descripteurs de la famille SIFT, mais dans certains scénarios, combinés à une programmation parallèle, l'efficacité peut être des dizaines voire des centaines de fois supérieure tout en garantissant des capacités discriminantes similaires.

Création et requête de base de données

La base de données peut être comprise comme l'intégration de carte + index. Les cartes peuvent être composées d'images 2D pures, de cartes de nuages ​​de points 3D ou d'une combinaison d'images 2D et de nuages ​​de points 3D. La génération de cartes de nuages ​​de points 3D utilise principalement la méthode de reconstruction tridimensionnelle SfM (Structure from motion) pour déduire des informations 3D à partir d'images 2D de séries chronologiques. Si une caméra binoculaire RVB-D fournit de la profondeur, des informations de points 3D plus précises peuvent être obtenues. Il comprend également certaines stratégies de sélection telles que les images clés. Les méthodes spécifiques dépassent le cadre de cet article. Les étudiants intéressés peuvent vérifier les informations pertinentes par eux-mêmes. Le rôle de la base de données est :

Pour une image d'observation d'entrée, interrogez l'historique de cartographie (image/nuage de points/points caractéristiques) via la base de données pour obtenir le sous-ensemble de carte (image/nuage de points) qui est le plus susceptible d'être observé dans l'image actuelle/les points caractéristiques), faites correspondre la carte avec les informations d'observation, calculez la matrice de transformation et obtenez la pose de la caméra d'observation.

Index est la clé pour accélérer ce processus. Les bases de données elles-mêmes ont tendance à être énormes. Prenons l'exemple de l'essai du robot de poche de Meituan au deuxième étage de Joy City à Chaoyang, Pékin. Trois caméras de profondeur ont été installées. Même après la projection, près de 80 000 images de 900 × 600 ont été utilisées. Compte tenu de la nature du positionnement en temps réel, il est impossible de comparer la requête avec 80 000 images une par une à chaque fois. La technologie d'indexation doit donc être utilisée pour accélérer l'ensemble de l'algorithme. Cette technologie recoupe fortement les tests de bouclage en SLAM, la récupération d'images et la reconnaissance de localisation en vision. Seules les méthodes générales sont présentées ci-dessous.

Il y a plusieurs points caractéristiques dans une image. Les points caractéristiques doivent d'abord être codés, comme l'encodage VLAD (Vecteur de descripteurs localement agrégés), et les descripteurs locaux sont utilisés pour former une description globale de l'image. Utilisez ensuite des index, tels que kd-tree, pour effectuer des requêtes au niveau de l'image. Bien entendu, l'encodage et l'indexation peuvent également être effectués en même temps, comme par exemple le modèle hiérarchique du sac de mots (Bag-of-words, BoW) + méthode d'index avant + d'index inverse.

Codage VLAD

VLAD (Vecteur de descripteurs localement agrégés) [10], comme le montre la Fig. 7, est un livre de codes (Codebook) formé en agrégeant des descripteurs locaux et en calculant la description par accumulation La distance entre le sous-mot et le mot de code (Word) est une méthode simple de codage global. Un Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi descripteur dimensionnel Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi est codé via le livre de codes de Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi mots de code pour former un Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi vecteur de description dimensionnelle. La valeur dans le vecteur est le descripteur et le Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanziième mot de code. Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzième dimension. Ensuite, une normalisation Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi est effectuée pour former le vecteur VLAD final.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 7 : VLAD est codé par la distance entre le descripteur et le mot de code

DenseVLAD[11] et NetVLAD[12] sont spécialement présentés ici. Torii et al., ont prouvé que DenseSIFT surpasse le SIFT standard dans les deux requêtes et correspondances. DenseVLAD extrait les points SIFT à quatre échelles selon un modèle d'échantillonnage en forme de grille d'intervalles de 2 pixels. Échantillonnez aléatoirement 25 millions de descripteurs dans le monde et utilisez l'algorithme k-means pour générer un livre de codes de 128 mots de code. Le vecteur VLAD est réduit dimensionnellement à l'aide de l'ACP (analyse en composantes principales) après normalisation pour former le vecteur DenseVLAD final à 4 096 dimensions. Comme le montre la figure 8, le nombre de points intérieurs (verts) après correspondance à l'aide de DenseSIFT est plus grand.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 8 : Points caractéristiques DenseSIFT et SIFT standard, comparaison des points intérieurs (verts) après correspondance

NetVLAD ajoute des informations de supervision à VLAD pour améliorer la discriminabilité du codage VLAD. Comme le montre la figure 9, supposons que les deux descripteurs rouge et vert proviennent de deux images qui ne doivent pas correspondre. Puisqu'ils se trouvent tous deux dans un rayon plus grand et à une distance similaire du centre du VLAD (×), après normalisation L2, leurs valeurs codées seront très similaires. Après avoir ajouté les informations de supervision selon lesquelles les images correspondant aux descripteurs rouge et vert ne correspondent pas, le point central (★) généré par NetVLAD peut mieux distinguer les deux descripteurs et augmenter leur différence de distance codée (rayon).

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 9 : Comparaison du centre de clustering NetVLAD (×) et du centre de clustering VLAD (★) Encodage BoW + index Basé sur les caractéristiques du modèle de sac de mots BoW [ 13, 14] Le codage et ses idées de conception jouent un rôle décisif dans le développement de la vision par ordinateur et ne seront pas présentés ici. Cet article prend comme exemple une base de données d'images 2D correspondant à des images de requête 2D pour présenter un modèle intégré d'encodage et d'indexation BoW commun. Comme le montre la figure 10, le dictionnaire (vocabulaire) est généré à l'aide d'une méthode hiérarchique. Pour tous les descripteurs de l'ensemble de données, l'espace est divisé selon une structure arborescente et chaque couche est calculée par regroupement de k-moyennes. Les nœuds feuilles finaux sont équivalents à des mots de code (il y a 9 mots de code sur la figure 10).

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 10 : Modèle BoW hiérarchique avec index direct et index inversé

Le processus de construction de l'arbre est en fait le processus d'encodage de l'image originale. Cependant, l'encodage lui-même n'accélère pas le processus de recherche. Comme pour VLAD, il doit encore être comparé une par une avec les images de la base de données. Par conséquent, un index inverse (Inverse index) est conçu ici, qui ne nécessite pas de comparaison des vecteurs codés. Le principe est illustré sur la figure 11. Pour une image de requête (image de requête), le descripteur extrait est saisi dans BoW et tombera finalement dans le nœud feuille du mot de code (mot visuel) k. Chaque mot de code correspond à un indice, enregistrant le poids du mot de code Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi à la Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzième image de la base de données Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi (Fig.10). Ici, le poids est calculé à l'aide de TF-IDF (Fréquence du terme – fréquence du document inverse). Autrement dit, si un mot Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi apparaît fréquemment dans une certaine image Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi et a une faible fréquence dans d'autres images, alors ce mot a une meilleure discriminabilité d'image et une valeur de poids plus élevée Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi. Enfin, l'image correspondante est sélectionnée via le mécanisme de vote. Il convient également de noter que l'index inversé n'est pas nécessairement construit sur le BoW arborescent, il fournit simplement une méthode de requête rapide.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 11 : Interroger directement les images via l'index inversé + le mécanisme de vote

La fonction principale de l'index direct est d'enregistrer les nœuds dans lesquels se trouvent les points caractéristiques de l'image de la base de données lors de la construction du BoW. De cette façon, lorsque l'image est interrogée, il n'est pas nécessaire de calculer les points caractéristiques, et vous. peut utiliser directement l'index Extraire les points caractéristiques.

Requête de nuage de points 3D

Dans la requête d'image 2D, l'image est d'abord interrogée à partir du niveau sémantique, de sorte que la plage spatiale des points caractéristiques peut être contrainte à travers l'image. La requête de nuage de points 3D n'a pas de telles contraintes, elle présente donc de nombreuses difficultés. Si vous devez considérer la continuité spatiale, si tous les points interrogés se trouvent dans la plage observable, etc. Nous présentons ici uniquement la méthode [15] publiée par Sattler au TPAMI 2016. Après des années de peaufinage, ce cadre de méthode est relativement simple et complet. Étant donné que les étapes de recherche de codage par dictionnaire chevauchent le contenu de la section précédente, seuls les deux mécanismes de recherche active et de filtrage de visibilité sont présentés ici.

La recherche active consiste principalement à rendre les points 3D correspondants aussi proches que possible dans l'espace et à avoir une signification géométrique. Comme le montre la figure 12, le point rouge est mis en correspondance avec un point du nuage de points via une série de processus de codage et de raffinement (ligne rouge). Selon le cadre de priorisation proposé, un point 3D avec la probabilité la plus élevée est trouvé à partir du nuage de points et correspond à l'inverse (ligne bleue) à un point 2D correspondant dans l'image de requête.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

figure 12 : Recherche Active Afin de rendre les points correspondants les plus observables possible par la caméra (le positionnement n'est pas supervisé, et il n'est pas possible de savoir si le point correspondant est correct). La méthode adoptée ici consiste à créer un graphique de visibilité bipartite lors de l'utilisation de SfM pour créer une carte de nuage de points 3D. Comme le montre la figure 13 (à gauche), lorsqu'un point peut être observé par deux caméras en même temps, une relation topologique est établie. Sur la figure 13 (au milieu), les points bleus correspondent à des points et ils entrent en conflit du point de vue de l'observation. En effectuant un regroupement de graphiques sur la topologie existante, les caméras sont regroupées en deux groupes, comme le montre la figure 13 (à droite). De cette manière, de nouvelles relations topologiques entre graphes peuvent être générées. Ensuite, en évaluant le chevauchement entre chaque sous-graphique, nous filtrons les points les plus susceptibles d'être invisibles.

Il convient de noter que bien que les caméras binoculaires et les caméras RVB-D puissent obtenir de la profondeur, et que l'interrogation d'images 2D puisse également obtenir des coordonnées de points caractéristiques 3D dans une plage limitée, en raison des limitations techniques actuelles, les matériaux intérieurs sont complexes et extérieurs de grande taille. Dans les scènes à l'échelle, la profondeur n'est pas fiable. Par conséquent, la mise en correspondance de points d’image 2D et de cartes de nuages ​​de points 3D reste une méthode importante. Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Correspondance des points caractéristiquesLe processus de correspondance des points caractéristiques peut être complété de manière adaptative dans les requêtes de base de données, ce qui est plus courant dans les requêtes basées sur des structures 3D. La correspondance peut également être effectuée séparément après la requête, ce qui est plus courant dans les requêtes basées sur des images 2D. Le but de la mise en correspondance de caractéristiques est de fournir des paires de points correspondantes pour les calculs ultérieurs de matrice de transformation afin de réaliser le calcul de pose. L'algorithme de consensus d'échantillon aléatoire (RANSAC) [16] est un algorithme classique de filtrage de données et d'ajustement de paramètres. Il suppose que la distribution des données (inliers) est conforme à un certain modèle mathématique et, grâce à des calculs itératifs, il supprime les valeurs aberrantes et les points de bruit, tout en obtenant les meilleurs paramètres du modèle en termes de probabilité. En positionnement global, les points intérieurs font référence à des correspondances correctes, les points extérieurs font référence à des correspondances incorrectes et le modèle paramétrique fait référence à la matrice de transformation spatiale des paires de points correspondants. Comme le montre la figure 14, après optimisation par l'algorithme RANSAC, la correspondance est plus raisonnable. Le sous-ensemble correspondant que RANSAC s'attend à trouver doit répondre à deux indicateurs : l'erreur de reprojection des points intérieurs est aussi petite que possible ; Le processus de base est donc le suivant :

① Échantillonnage du sous-ensemble initial.

② Calculez la matrice de transformation.

③ Calculez l'erreur de reprojection du point correspondant en fonction de la matrice de transformation.

④ Supprimez les points avec de grosses erreurs

⑤ Boucle ①-④ pour conserver la solution correspondante qui répond le mieux à l'index.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 14 : (En haut) Correspondance des caractéristiques originales ; (En bas) Correspondance optimisée par l'algorithme RANSAC

Parmi eux, la correspondance initiale des candidats est générée en fonction de la distance entre les descripteurs, mais reprojetée L'erreur est uniquement lié à la position spatiale des points clés et n'a rien à voir avec le descripteur lui-même. Veuillez vous référer à « 2.4 Calcul de pose » pour la méthode spécifique de matrice de projection. Il convient de souligner que l'algorithme RANSAC est affecté par l'erreur de correspondance d'origine et la sélection des paramètres. Il ne peut garantir que l'algorithme a une probabilité suffisamment élevée pour être raisonnable, mais n'obtient pas nécessairement le résultat optimal. Les paramètres de l'algorithme incluent principalement le seuil et le nombre d'itérations. La probabilité que RANSAC obtienne un modèle crédible est directement proportionnelle au nombre d'itérations, et le nombre de correspondances obtenues est inversement proportionnel au seuil. Par conséquent, en utilisation réelle, il peut être nécessaire d'essayer à plusieurs reprises différents réglages de paramètres pour obtenir de meilleurs résultats.

Les chercheurs ont apporté de nombreuses améliorations à l'algorithme RANSAC classique. Comme le montre la figure 15, le diagramme de structure du RANSAC global (Universal-RANSAC) [17] est proposé, formant une architecture RANSAC universelle qui couvre presque toutes les améliorations de RANSAC. , tels que le préfiltrage, l'échantillonnage de sous-ensembles minimum, la génération de modèles fiables à partir de sous-ensembles minimaux, la vérification des paramètres et l'affinement du modèle.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 15: Cadre d'algorithme général universel-ransac

Ransac différenciable. apprendre à remplacer certaines parties du cadre algorithmique, plutôt que d'utiliser directement un modèle d'estimation de pose de bout en bout pour remplacer complètement les méthodes traditionnelles. Le RANSAC différentiable (Differentiable RANSAC, DSAC) [18] vise à remplacer la sélection d'hypothèses déterministes par la sélection d'hypothèses probabilistes, afin que le processus RANSAC puisse être dérivé. Le processus est illustré à la figure 16, dans laquelle l'étape de « notation » utilise toujours la reprojection. erreur En tant qu'indicateur, la différence est que l'erreur est basée sur l'image entière plutôt que sur les points caractéristiques, et le processus original de filtrage de la correspondance des points caractéristiques est remplacé par un processus de filtrage direct de l'hypothèse de pose de la caméra h avec probabilité. Bien que la méthode actuelle présente des limites relativement importantes, la DSAC fournit une idée réalisable sur la manière d’ajouter des connaissances préalables au cadre actuel de l’algorithme de positionnement non supervisé.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 16 : Cadre de l'algorithme différentiel RANSAC Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant l'analyse Wanzi

Calcul de la pose

Pour la paire de points de correspondance correcte qui a été obtenue, la matrice de transformation correspondante doit être calculée à l'aide de contraintes géométriques ( Matrice de transformation) . Puisque les coordonnées du point dans la base de données et la pose de la caméra au moment de l'échantillonnage sont connues, la pose actuelle de la caméra peut être obtenue en faisant correspondre la matrice de transformation du point au point de la carte. Certains symboles de base sont définis ici. Les paramètres internes de la caméra sont

, et la forme homogène du moment de transformation

est : Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse WanziTechnologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Parmi eux,

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

est la matrice de rotation, et

est la matrice de translation . Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

2.4.1 Calcul de matrice de transformation 2D-2D

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 17 : Géométrie épipolaire dans le calcul de matrice de transformation 2D-2D

Pour les points caractéristiques correspondants dans deux images bidimensionnelles Pour ( Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi), leurs coordonnées sur le plan normalisé sont (Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi), et la matrice de transformation correspondante doit être calculée via des contraintes épipolaires. Comme le montre la figure 17, sa signification géométrique est que Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi sont trois coplanaires. Cette surface est également appelée le plan polaire, Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi est appelée la ligne de base et Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi est appelée la ligne polaire. La contrainte épipolaire inclut à la fois la translation et la rotation, qui sont définies comme :

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

où, Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi est la coordonnée de Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi sur le plan normalisé, et ∧ est l'opérateur du produit externe. Comptez la partie médiane de la formule comme la matrice de base Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi et la matrice essentielle Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi, nous avons alors :

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Étant donné que la matrice essentielle Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi n'a pas d'informations d'échelle, la contrainte épipolaire est toujours valable après que E soit multiplié par toute constante non nulle. Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi peut être résolu par l'algorithme classique en 8 points (algorithme à huit points), puis décomposé pour obtenir Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi, Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi. Par conséquent, on peut voir que la méthode de solution matricielle de transformation 2D-2D présente deux inconvénients. Premièrement, la vision monoculaire présente une incertitude d'échelle et les informations d'échelle doivent être fournies par Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi lors de l'initialisation. En conséquence, l'initialisation monoculaire ne peut pas seulement être une pure rotation, mais doit avoir un degré de translation suffisant, sinon cela fera que Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi sera nul.

2.4.2 Calcul de la matrice de transformation 2D-3D

La correspondance 2D-3D est une méthode importante dans l'estimation de pose. Généralement, la méthode PnP est utilisée, c'est-à-dire que les points de correspondance 2D-3D sont connus et que la matrice de transformation est résolue pour obtenir la pose de la caméra. Nous projetons le point 3D P(X, Y, Z) sur le plan d'imagerie de la caméra (Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi) : Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse WanziTechnologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

est l'échelle, Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi . La solution de cette équation peut être réduite à un problème d'équation linéaire, et chaque caractéristique peut fournir deux contraintes linéaires : Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse WanziDe cette façon, au moins 6 paires de points correspondants peuvent être résolues, et lorsque le nombre de correspond est supérieur à 6, il peut être utilisé. Des méthodes telles que SVD sont résolues en construisant les moindres carrés. La méthode P3P peut être considérée comme une solution spéciale de la méthode PnP. Comme le montre la figure 18, elle utilise les propriétés de similarité des triangles pour ajouter plus de contraintes et n'a besoin que de 3 paires de points pour résoudre le problème. D'autres méthodes de solution incluent la transformation linéaire directe (DLT), la méthode EPnP (Efficient PnP) et UPnP (Uncalibrated PnP), etc. Par rapport aux méthodes d'optimisation linéaire ci-dessus, les méthodes d'optimisation non linéaires telles que l'ajustement de faisceau (BA) sont également largement utilisées. La méthode BA est une sorte de « taille unique » dans le SLAM visuel. Elle peut optimiser plusieurs variables en même temps, ce qui peut atténuer dans une certaine mesure l'instabilité du système causée par les erreurs locales. informations pertinentes pour une compréhension plus approfondie.

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

Figure 18 : Méthode P3P dans le calcul de matrice de transformation 2D-3D

Calcul de matrice de transformation 3D-3D

La matrice de transformation entre les points 3D peut être résolue à l'aide de l'algorithme itératif du point le plus proche (ICP). En supposant que le résultat de la correspondance des paires de points (Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi) est correct, la matrice de transformation obtenue devrait minimiser l'erreur de reprojection Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi. Vous pouvez utiliser SVD pour résoudre le problème des moindres carrés :

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

ou utiliser la méthode d'optimisation non linéaire Bundle Adjustment basée sur l'algèbre de Lie pour résoudre

Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi

où, Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi représente la pose de la caméra. L'objectif d'optimisation ici est similaire à celui de l'ajustement du bundle dans la correspondance 2D-3D, mais il n'est pas nécessaire de prendre en compte les paramètres internes de la caméra Technologie de positionnement global basée sur les points caractéristiques de la conduite autonome utilisant lanalyse Wanzi car les points 2D sur l'image originale ont été déplacés du plan d'imagerie de la caméra à travers les jumelles. caméra ou caméra de profondeur RVB-D Projetée dans un monde 3D.

Il a été prouvé que le problème ICP a une solution unique et des solutions infinies. Par conséquent, lorsqu'il existe une solution unique, la fonction d'optimisation est équivalente à une fonction convexe et la valeur minimale est la solution optimale globale. Quel que soit le type d'initialisation adopté, cette solution unique peut être obtenue. C’est l’un des grands avantages de la méthode ICP.

Cet article présente l'algorithme d'estimation de pose basé sur des points caractéristiques sous quatre aspects : description de l'image, requête de mappage, correspondance de caractéristiques et calcul de pose. Bien que la méthode traditionnelle de positionnement visuel global reste le premier choix dans les applications pratiques, la méthode traditionnelle repose sur le principe selon lequel les points caractéristiques sont correctement définis, correctement extraits, correctement mis en correspondance et correctement observés. Ce principe est très important pour la vision. en soi. C'est un énorme défi. Deuxièmement, étant donné que la méthode traditionnelle est un cadre en plusieurs étapes plutôt que de bout en bout, chaque lien et l'interaction entre les liens nécessitent de nombreux ajustements de paramètres, et la technologie de chaque lien peut être utilisée comme une direction de recherche distincte. Dans l'application réelle, un grand nombre d'astuces correspondant à des scénarios spécifiques doivent être ajoutées, ce qui rend l'ingénierie plus complexe.

Et les attentes des gens pour la méthode de bout en bout ont donné naissance à des réseaux tels que PoseNet, VLocNet, HourglassNet, etc., qui ont obtenu de bons résultats sur les benchmarks. L'auteur estime qu'il existe encore de nombreux problèmes dans la méthode de bout en bout actuelle. Les principaux sont que la fonction de perte manque de contraintes géométriques, que l'espace de pose à 6 degrés de liberté lors de la construction de la carte n'est pas continu, et il est difficile de former une bonne cartographie avec l'espace d'entrée, et il y a un manque de régression de posture correspondante, de mécanisme de raffinement, etc. On ne peut nier qu’en tant qu’outil de modélisation le plus puissant pour l’espace non linéaire, l’apprentissage profond apparaîtra davantage dans le domaine du positionnement à l’avenir.

Retour au positionnement visuel lui-même, car les avantages les plus importants de la vision sont son faible coût, sa sémantique riche et le peu de restrictions sur les scénarios d'utilisation. Par conséquent, le positionnement de solutions de fusion axées sur la vision et complétées par d’autres capteurs à faible coût constituera également un sujet important à l’avenir.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:51cto.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal