Caractéristique de ligne SLAM

élément de ligne

Caractéristiques de la ligne : l'avantage est qu'il a un éclairage naturel et une invariance d'angle de vue, et des fonctionnalités plus avancées améliorent également la robustesse et la précision du suivi. Surtout dans des scènes artificielles spécifiques (intérieurs, couloirs) et d'autres scènes, il peut surmonter les interférences causées par l'absence de texture ou une texture peu fiable.

Et son inconvénient est également évident, c'est-à-dire que la détection et la mise en correspondance des segments de ligne prennent plus de temps que les points caractéristiques. Dans le même temps, il n'y a pas de module d'optimisation et de bouclage SLAM standard et commun à l'extrémité arrière. L'appariement des entités linéaires est également relativement difficile, car les segments de ligne sont faciles à casser, n'ont pas de fortes contraintes géométriques (telles que des contraintes géométriques épipolaires) et n'ont pas une forte reconnaissance des textures manquantes.

Le représentant typique des caractéristiques de ligne est PL-SLAM.Le lien de cet article est le suivant : PL - SLAM : SLAM visuel monoculaire en temps
réel avec points et lignes Le cadre de l'ensemble du système est illustré dans la figure ci-dessous :


Le cadre du système est essentiellement hérité du cadre d'orb-SLAM

**

Résumé

** - Il est bien connu que les scènes à faible texture sont l'un des principaux talons d'Achille des algorithmes de vision géométrique par ordinateur qui reposent sur des correspondances ponctuelles, en particulier pour le SLAM visuel. Cependant, dans de nombreux environnements, les primitives géométriques basées sur des lignes peuvent être estimées de manière fiable malgré une faible texture, par exemple dans les scènes urbaines et intérieures, ou dans les soi-disant « mondes de Manhattan » où les bords structurés dominent. Dans cet article, nous proposons une solution pour gérer ces situations. Plus précisément, nous nous appuyons sur ORB-SLAM, vraisemblablement la solution de pointe actuelle, à la fois en termes de précision et d'efficacité, et étendons sa formulation pour gérer à la fois les correspondances ponctuelles et linéaires.
Nous proposons une solution qui fonctionne même si la plupart des points disparaissent de l'image d'entrée, et de manière intéressante, peut être initialisée en détectant uniquement les correspondances de ligne dans trois trames consécutives. Nous évaluons minutieusement notre méthode et la nouvelle stratégie d'initialisation sur le benchmark TUM RGB-D, et démontrons que l'utilisation de lignes améliore non seulement les performances de la solution ORB-SLAM originale dans des cadres mal texturés, mais les améliore également systématiquement dans des cadres séquentiels combinant des points et des lignes sans compromettre l'efficacité.

**

contenu

**

1. SLAM basé sur la ligne

Pour la description des lignes, la méthode des extrémités est adoptée.Après tout, en réalité, il est presque impossible de rencontrer des lignes droites s'étendant à l'infini, qui sont presque toutes des segments de ligne.Par conséquent, il est plus raisonnable d'utiliser la méthode des extrémités pour décrire des lignes droites. On suppose P , Q ∈ R 3 P, Q \in R^3P ,QR3 sont les deux extrémités de la droite spatiale,pd , qd ∈ R 2 p_d, q_d \in R^2p,qR2 est ses coordonnées de projection dans l'image, en plus, rappelez-vouspdh , qdh ∈ R 3 p_d^h, q_d^h \in R^3pdh,qdhR3 est la coordonnée homogène correspondante. On obtient alors les paramètres de la droite :
I = pdh × qdh ∣ pdh × qdh ∣ I=\frac{p_d^h \times q_d^h}{\left|p_d^h \times q_d^h\right|}je=pdh× qdhpdh× qdh

Explication : (Pour un vecteur (x, y, 1), il peut être compris au sens géométrique comme un vecteur à deux dimensions sur un plan où la troisième dimension est une constante. Cette méthode d'expression d'un vecteur à [deux] dimensions avec un vecteur à [trois] dimensions, ou d'une manière générale, l'utilisation d'un vecteur à n + 1 dimensions pour représenter un vecteur à n dimensions est appelée représentation homogène en coordonnées.] ) .

De cette façon, nous pouvons obtenir les paramètres requis par l'entité linéaire. Ensuite, il y a l'erreur de reprojection de ligne définissant la ligne - la somme des distances point à ligne entre les extrémités du segment de ligne projeté et la ligne détectée dans l'image : E ligne ( P , Q , I , θ , k ) = E pl 2 ( P , I , θ , k ) + E pl 2 ( Q , I , θ , k )
. E_{\text {ligne }}(P, Q, I, \theta, k)=E_{pl}^2(P, I, \theta, k)+E_{pl}^2(Q, I, \theta, k) .Eligne ( P ,Q ,je ,je ,k )=EPL2( P ,je ,je ,k )+EPL2( Q ,je ,je ,k ) Soit E pl = IT π ( P , θ , K ) E_{pl}=I^T \pi(P, \theta, K)Esvp=jeT π(P,je ,K ) SoitE pl = IT π ( P , θ , K ) E_{pl}=I^T \pi(P, \theta, K
)Esvp=jeT π(P,je ,K )

Parmi eux, III est le paramètre de droite mentionné ci-dessus,π ( P , θ , K ) \pi(P, \theta, K)π ( P ,je ,K ) est les coordonnées de la projection du point spatial sur le plan image, et où sont respectivement les paramètres extrinsèques et internes de la caméra. Idéalement, le point de projection du point spatial est sur une ligne droite, donc la distance point à ligneE pl = 0 E_{pl}=0Esvp=0 , ou plutôt, le point est sur la droite.

Grâce à ce calcul, l'erreur de reprojection entre les deux lignes peut être obtenue.

Cependant, dans des situations réelles, il y aura toujours des situations telles que l'occlusion et la fausse détection entre les lignes, donc les points finaux que nous avons détectés dans l'image pd , qd p_d, q_dp,qEventuellement avec les extrémités des lignes spatiales P , QP , QP ,Le point de projection de Q dans l'image ne correspond pas, donc ici est également définie une "erreur de reprojection de ligne détectée" (erreur de reprojection de ligne détectée) :

E ligne , ré ( pd , qd , je ) = E pl , ré 2 ( pd , je ) + E pl , ré 2 ( qd , je ) E_{\text {ligne}, d}\left(p_d, q_d, I\right)=E_{pl, d}^2\left(p_d, I\right)+E_{pl, d}^2\left(q_d, I\right)Eligne  ,( p,q,je )=Epl , d2( p,je )+Epl , d2( q,I )
E pl , d = IT pd E_{pl, d}=I^T p_dEpl ,=jeT p

insérez la description de l'image ici
Proposition : P , Q ∈ R 3 \mathbf{P}, \mathbf{Q} \in \mathbb{R}^3P ,QR3 représente deux points 3D sur l'entité linéaire 3D,p ~ , q ~ ∈ R 2 \widetilde{\mathbf{p}}, \widetilde{\mathbf{q}} \in \mathbb{R}^2p ,q R2 est leur point de projection sur le plan image image,l ~ \tilde{l}je~ est le coefficient de la ligne projetée.

pd , qd ∈ R 2 \mathbf{p}_{\mathrm{d}}, \mathbf{q}_{\mathrm{d}} \in \mathbb{R}^2p,qR2 est les deux extrémités de l'entité linéaire extraite (segment de ligne), ce que nous appelons les mesures,P d , Q d ∈ R 3 \mathbf{P}_{\mathrm{d}}, \mathbf{Q}_{\mathrm{d}} \in \mathbb{R}^3P,QR3 est la rétroprojection de ces deux extrémités vers le point 3D correspondant dans l'espace 3D, et I est le coefficient de la ligne détectée.
La ligne rouge est un modèle de projection d'entités ponctuelles,X ∈ R 3 \mathbf{X} \in \mathbb{R}^3XR3 est un point 3D, correspondant àx ~ ∈ R 2 \widetilde{\mathbf{x}} \in \mathbb{R}^2X R2

2. BA basé sur des lignes et des points

On définit X j ∈ R 3 X_j \in R^3XjeR3 est le jjèmesur la cartej points. pouriii images clés,X j X_jXjeLe point de projection dans le plan image est :
x ~ i , j = π ( X j , θ i , K ) \tilde{x}_{i, j}=\pi\left(X_j, \theta_i, K\right)X~je , je=Pi( Xje,jeje,K )

Parmi eux, θ i \theta_ijejepour la secondeParamètres extrinsèques des i images clés. Pour un point d'observation donnéxi , j x_{i, j}Xje , je, on peut définir l'erreur 3D suivante : ei , j = xi , j − x ~ i , j e_{i, j}=x_{i, j}-\tilde{x}_{i, j}eje , je=Xje , jeX~je , je
De même, nous pouvons définir les extrémités P j , Q j P_j, Q_j des segments de ligne dans la jème cartePje,Qje. Ses coordonnées de projection (sous forme de coordonnées homogènes) dans la ième image clé sont enregistrées comme :
p ~ i , jh = π ( P j , θ i , K ) \tilde{p}_{i, j}^h=\pi\left(P_j, \theta_i, K\right)p~je , jh=Pi( Pje,jeje,K )
q ~ je , jh = π ( Q j , θ je , K ) \tilde{q}_{i, j}^h=\pi\left(Q_j, \theta_i, K\right)q~je , jh=Pi( Qje,jeje,K )

Alors, pour un jjth observé donnéj extrémités de la ligne droitepi , j , qi , j p_{i, j}, q_{i, j}pje , je,qje , je, puis calculez les paramètres de ligne observés I ~ i , j \tilde{I}_{i, j}je~je , je, alors le vecteur d'erreur peut être défini comme :
ei , j ′ = ( I ~ i , j ) T ( K − 1 pi , jh ) e_{i, j}^{\prime}=\left(\tilde{I}_{i, j}\right)^T\left(K^{-1} p_{i, j}^h\right)eje , j=(je~je , je)J( K1p _je , jh)
ei , j ′ ′ = ( je ~ je , j ) T ( K − 1 qi , jh ) e_{i, j}^{\prime \prime}=\left(\tilde{I}_{i, j}\right)^T\left(K^{-1} q_{i, j}^h\right)eje , j=(je~je , je)J( K1 qje , jh)

(PS : ceci ei , j ′ , ei , j ′ ′ e_{i, j}^{\prime}, e_{i, j}^{\prime \prime}eje , j,eje , jLa définition de je pense personnellement que c'est faux, parce que pi , jh p_{i, j}^hpje , jhPuisqu'il s'agit d'une coordonnée d'image, multipliez-la par K − 1 K^{-1}KLe résultat de − 1 est les coordonnées dans le plan normalisé du système de coordonnées de la caméra, pas dans le plan de l'image, donc c'est la même chose que le paramètre de ligne I ~ i , j \tilde{I}_{i, j}dans le plan de l'imageje~je , jeLa signification physique du produit est fausse, donc, je pense personnellement qu'il ne devrait pas y avoir un tel K − 1 K^{-1}K1 )

Ce point sera également reflété dans le processus de résolution du jacobien plus tard.

于是,我们最终的误差目标函数就可以写成:
C = ∑ i , j ρ ( e i , j ⊤ Ω i , j − 1 e i , j + e i , j ′ ⊤ Ω i , j ′ − 1 e i , j ′ + e i , j ′ ′ Ω i , j ′ ′ − 1 e i , j ′ ′ ) C=\sum_{i, j} \rho\left(\mathbf{e}_{i, j}^{\top} \Omega_{i, j}^{-1} \mathbf{e}_{i, j}+\mathbf{e}_{i, j}^{\prime}{ }^{\top} \Omega_{i, j}^{\prime}{ }^{-1} \mathbf{e}_{i, j}^{\prime}+\mathbf{e}_{i, j}^{\prime \prime} \Omega_{i, j}^{\prime \prime}{ }^{-1} \mathbf{e}_{i, j}^{\prime \prime}\right) C=je , jer( eje , jOhje , j 1eje , je+eje , j⊤Ω _je , j1 eje , j+eje , jOhje , j1 eje , j)

ρ ( ⋅ ) \rho(\cdot)ρ ( ) est une fonction de coût robuste, et Huber est utilisé dans cet article. Ω je , j , Ω je , j ′ , Ω je , j ′ ′ \Omega_{i, j}, \Omega_{i, j}^{\prime}, \Omega_{i, j}^{\prime \prime}Ohje , je,Ohje , j,Ohje , jest la matrice de covariance des points clés et des extrémités des segments de ligne à différentes échelles.

insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/weixin_42001184/article/details/128475651
conseillé
Classement