当前位置:网站首页>Suivi des cibles de manoeuvre - - mise en oeuvre du modèle statistique actuel (modèle CS) filtre Kalman étendu / filtre Kalman sans trace par MATLAB
Suivi des cibles de manoeuvre - - mise en oeuvre du modèle statistique actuel (modèle CS) filtre Kalman étendu / filtre Kalman sans trace par MATLAB
2022-07-01 08:23:00 【Crustacé cérébral II】
Manoeuvre de suivi des cibles——Modèle statistique actuel(CSModèle)Filtre Kalman étendu/Filtre Kalman sans trace matlabRéalisation
L'originalité n'est pas facile,Les gars qui passent, s'il vous plaît
Discussion sur le suivi des cibles de manoeuvre、Support technique bienvenue contact,Ou un message privé
WX: ZB823618313
Manoeuvre de suivi des cibles——Modèle statistique actuel(CSModèle)
- Manoeuvre de suivi des cibles——Modèle statistique actuel(CSModèle)Filtre Kalman étendu/Filtre Kalman sans trace matlabRéalisation
- 1. Compréhension du suivi des cibles de manoeuvre
- 2. "En cours"StatistiquesCSModèle
- 3. "En cours"StatistiquesCSModèle
- 4. "En cours"StatistiquesCSModèle(2D)
- 5. Modèle statistique actuelmatlabSimulation
- 6. Statistiques actuellesCSModèle 3D suivi des cibles
- 7. Autres modèles
- 8. Code complet: Début du contact WX
Fig.:Réglage, Je suis si fatigué d'étudier.
1. Compréhension du suivi des cibles de manoeuvre
1.1. Compréhension du suivi des cibles de manoeuvre
Le suivi mobile des cibles est toujours un problème difficile et important dans le domaine du suivi des cibles. . L'établissement d'un modèle de mouvement de la cible et d'un algorithme de filtrage sont deux facteurs importants pour le suivi de la cible. . En raison de l'imprévisibilité de la manœuvre de la cible , Il est difficile de modéliser avec précision le mouvement de la cible . Comment construire un modèle efficace pour refléter la trajectoire réelle de la cible est un problème urgent pour le système de suivi des cibles à haute manoeuvre . Après près de 30 ans de recherche , De nombreux résultats importants ont été obtenus dans ce domaine. .
Compréhension personnelle: Le suivi des cibles de manoeuvre comporte trois éléments: :
Modélisation des cibles suivies ( Ce blog se concentre sur :Modèle statistique actuel)
Mesure du capteur( Une autre présentation de blog )
Conception du filtre( Voir la colonne de suivi des cibles )
Au niveau de l'algorithme, Dans le système de suivi des cibles , L'algorithme de filtrage commun est un algorithme d'estimation basé sur le filtre Kalman . Le filtre Kalman est une sorte de linéarité 、Non biaisé、 Algorithme d'estimation optimal basé sur la variance moyenne minimale de l'erreur , Il a une forme mathématique précise et une excellente efficacité d'utilisation . La méthode de filtrage Kalman est essentiellement une méthode de traitement des données , Il utilise un filtre récursif , Une nouvelle estimation de l'état est dérivée Récursivement de l'équation récursive à partir des données de mesure obtenues. . En raison de la petite quantité de calcul et de stockage , Il est facile de répondre aux exigences du calcul en temps réel , Largement utilisé dans la pratique de l'ingénierie .
En plus de ça,, Le filtrage non linéaire est également largement utilisé dans le suivi des cibles de manoeuvre ,Par exemple,:
Filtre Kalman étenduEKF
Filtre Kalman sans traceUKF
Filtre Kalman volumétriqueCKF
Filtre Kalman QuadratureQKF
Filtre Kalman différentiel centralCDKF
Divided difference filter DDF
Filtre de mélange gaussienGSF
Filtre de suivi fortSTF
Filtre à particulesPF
… …
1.2. Aperçu du modèle cible
Le modèle de cible mobile décrit le processus par lequel l'état de la cible change avec le temps . Un bon modèle vaut beaucoup de données. . À l'heure actuelle, presque tous les algorithmes de suivi des cibles sont basés sur des modèles pour estimer l'état. . Après l'introduction du filtre Kalman dans le domaine du suivi des cibles , La modélisation des cibles de manoeuvre basée sur l'espace d'état est devenue l'un des principaux objets de recherche .
Les modèles de mouvement des cibles couramment utilisés comprennent: :
Modèle de mouvement uniforme,CV
Modèle de mouvement accéléré uniforme ,CA
Modèle de virage à vitesse constante ,CT
Singer Modèle
“En cours”Modèle statistique
Jerk Modèle
Le Mouvement spatial de la cible est basé sur différents trajectoires de mouvement et systèmes de coordonnées
Mouvement unidimensionnel
Mouvement bidimensionnel
Mouvement 3DSelon que le mouvement dans différentes directions est corrélé ou non
Modèle de découplage entre coordonnées
Modèle de couplage entre coordonnées
2. "En cours"StatistiquesCSModèle
“En cours” Le modèle statistique a été proposé par Zhou Hongren en .Essentiellement, Le modèle algorithmique est un modèle d'accélération avec une moyenne non nulle . L'algorithme suppose que lorsque la cible se déplace à une certaine accélération , L'accélération du moment suivant est limitée ,Et seulement dans“En cours” Dans le voisinage de l'accélération . Dont l'accélération de la manœuvre “En cours” .La densité de probabilité statistique est décrite à l'aide d'une distribution de Rayleigh modifiée ,La moyenne est“En cours” Valeur prévue de l'accélération .
Singer La manoeuvre des cibles décrites dans le modèle repose sur deux hypothèses , C'est - à - dire que l'accélération est une moyenne nulle
Et la fonction de densité de probabilité de l'accélération suit une distribution uniforme .
“En cours”Modèle statistique(Current Statistical Model)Oui. Singer Le modèle modifié proposé par ces deux hypothèses , Pour le rendre plus réaliste , C'est - à - dire que la cible est censée manoeuvrer à une certaine accélération à l'heure actuelle , En utilisant les caractéristiques statistiques actuelles de la manœuvre, nous pouvons savoir que la valeur de l'accélération au moment suivant n'est pas aléatoire. , Mais dans une certaine mesure, “En cours” Dans le voisinage de l'accélération .
De cette façon, le modèle construit deux nouvelles hypothèses sous , C'est - à - dire que l'accélération n'est pas une moyenne nulle et que sa densité de probabilité suit une distribution de Rayleigh modifiée. , La valeur moyenne de l'accélération est remplacée par l'accélération prédite de l'estimation de l'état au moment actuel dans le filtrage réel. .
Son accélération correspond à un processus de Markov dépendant du temps de premier ordre avec une moyenne non nulle ,C'est - à - dire:
x ¨ ( t ) = a ˉ ( t ) + a ( t ) a ˙ ( t ) = − α a ( t ) + w ( t ) (1) \ddot{x}(t)=\bar{a}(t) + a(t)\\ \dot{a}(t)=-\alpha a(t) + w(t) \tag{1} x¨(t)=aˉ(t)+a(t)a˙(t)=−αa(t)+w(t)(1)
Parmi eux a ˉ ( t ) \bar{a}(t) aˉ(t) Est la valeur moyenne de l'accélération , a ( t ) a(t) a(t) Bruit coloré à moyenne nulle , w ( t ) w(t) w(t) Oui, la moyenne est 0,La variance est 2 α σ 2 2\alpha\sigma^2 2ασ2Le bruit blanc gaussien de.
Fig.:Réglage, Je suis si fatigué d'étudier.
3. "En cours"StatistiquesCSModèle
3.1. "En cours"StatistiquesCSModèle(Continu)
Parce que“En cours”Modèle statistique(Current Statistical Model)Oui. Singer Le modèle modifié proposé par ces deux hypothèses ,
Donc, “En cours” L'équation d'état du modèle statistique et Singer Modèle similaire,Peut être exprimé comme suit::
Faire le vecteur d'état
X = [ x , x ˙ , x ¨ ] T {X}=[x, \dot{x},\ddot{x}]^T X=[x,x˙,x¨]T
Alors l'accélération est
a ( t ) = x ¨ ( t ) a(t)=\ddot{x}(t) a(t)=x¨(t)
Temps continuSingerLe modèle est
X ˙ ( t ) = [ 0 1 0 0 0 1 0 0 − α ] X ( t ) + [ 0 0 α ] a ˉ ( t ) + [ 0 0 1 ] w ( t ) \dot{X}(t)=\begin{bmatrix}0&1&0\\0&0&1\\0&0&-\alpha\end{bmatrix}X(t) + \begin{bmatrix}0\\0\\\alpha\end{bmatrix}\bar{a}(t) + \begin{bmatrix}0\\0\\1\end{bmatrix}w(t) X˙(t)=⎣⎡00010001−α⎦⎤X(t)+⎣⎡00α⎦⎤aˉ(t)+⎣⎡001⎦⎤w(t)
Singer Le modèle peut également être exprimé comme suit:
X ˙ ( t ) = A X ( t ) + B u a ˉ ( t ) + B w ( t ) \dot{X}(t)=AX(t) + B_u\bar{a}(t) + Bw(t) X˙(t)=AX(t)+Buaˉ(t)+Bw(t)
Parmi eux
A = [ 0 1 0 0 0 1 0 0 − α ] , B u = [ 0 0 α ] , B = [ 0 0 1 ] A=\begin{bmatrix}0&1&0\\0&0&1\\0&0&-\alpha\end{bmatrix}, B_u=\begin{bmatrix}0\\0\\\alpha\end{bmatrix}, B= \begin{bmatrix}0\\0\\1\end{bmatrix} A=⎣⎡00010001−α⎦⎤,Bu=⎣⎡00α⎦⎤,B=⎣⎡001⎦⎤
3.2. "En cours"StatistiquesCSModèle(Discrete)
CycleT Après la discrétisation de l'échantillon , Convertir l'équation d'état en temps discret en :
X k + 1 = F k X k + G k a ˉ k + W k (2) X_{k+1}=F_kX_{k} +G_k\bar{a}_k + W_k \tag{2} Xk+1=FkXk+Gkaˉk+Wk(2)
Parmi eux
F k = [ 1 T ( α T − 1 + e − α T ) / α 2 0 1 ( 1 − e − α T ) / α 0 0 − e − α T ] F_k=\begin{bmatrix}1&T&(\alpha T-1+e^{-\alpha T})/\alpha^2\\0&1&(1-e^{-\alpha T})/\alpha\\0&0&-e^{-\alpha T}\end{bmatrix} Fk=⎣⎡100T10(αT−1+e−αT)/α2(1−e−αT)/α−e−αT⎦⎤
G k = [ ( − T + α T 2 2 + 1 − e − α T α ) / α T − ( 1 − e − α T ) / α 1 − e − α T ] G_k=\begin{bmatrix}(-T+\frac{\alpha T^2}{2} + \frac{1-e^{-\alpha T}}{\alpha})/\alpha\\ T - (1-e^{-\alpha T})/\alpha\\ 1-e^{-\alpha T}\end{bmatrix} Gk=⎣⎡(−T+2αT2+α1−e−αT)/αT−(1−e−αT)/α1−e−αT⎦⎤
a ˉ k \bar{a}_k aˉk Il peut être remplacé par l'accélération prévue dans l'estimation de l'état au moment actuel :
a ˉ k = x ¨ ^ k ∣ k − 1 \bar{a}_k=\hat{\ddot{x}}_{k|k-1} aˉk=x¨^k∣k−1
Bruit W k W_k WkLa variance de
Q = 2 α σ 2 [ q 11 q 12 q 13 q 21 q 22 q 23 q 31 q 32 q 33 ] Q=2\alpha \sigma^2 \begin{bmatrix}q_{11}&q_{12}&q_{13}\\q_{21}&q_{22}&q_{23}\\q_{31}&q_{32}&q_{33}\end{bmatrix} Q=2ασ2⎣⎡q11q21q31q12q22q32q13q23q33⎦⎤
Q Q QPour une matrice symétrique
Parmi eux, mais σ 2 \sigma^2 σ2Pour:
σ 2 = { 4 − π π [ a m a x − a ˉ k ] 2 , a ˉ k ≥ 0 4 − π π [ a m a x + a ˉ k ] 2 , a ˉ k < 0 (3) \sigma^2= \begin{cases}\frac{4-\pi}{\pi} [a_{max}-\bar{a}_k]^2, \bar{a}_k\geq0 \\ \frac{4-\pi}{\pi} [a_{max}+\bar{a}_k]^2, \bar{a}_k<0\end{cases}\tag{3} σ2={ π4−π[amax−aˉk]2,aˉk≥0π4−π[amax+aˉk]2,aˉk<0(3)
Pour"En cours"Modèle statistiqueCS,Où matrice F k F_k FkAvecSingerLe même modèle.
Pour"En cours"Modèle statistiqueCS, Où variance du bruit W k W_k WkEtSingerLe même modèle.,Sauf que σ 2 \sigma^2 σ2 C'est différent.
3.3. "En cours"StatistiquesCSAnalyse du modèle
“En cours” Le modèle statistique utilise la valeur prédictive de l'accélération pour ajuster les paramètres du processus de façon adaptative en temps réel σ 2 \sigma^2 σ2 , Avec une grande adaptabilité .Donc,,“En cours” Modèle statistique comparé à Singer Le modèle peut refléter des changements plus réalistes dans l'accélération de la manœuvre de la cible .En même temps,“En cours” Le modèle statistique modifie l'accélération du modèle à chaque moment du filtrage , Il est possible de suivre très bien les cibles qui se déplacent à des vitesses soudaines . Et en termes d'algorithmes, ,“En cours” Modèles statistiques et Singer Le modèle est presque identique , La seule différence est que l'équation de l'état du Mouvement est modifiée par la valeur prédite de l'accélération actuelle obtenue au cours du filtrage. .
“En cours” Accélération en cas de forte manœuvre de la cible ,A un rapport Singer Une meilleure description de la mobilité du modèle , C'est - à - dire que les filtres correspondants basés sur ce modèle ont une meilleure précision d'estimation .
Il présente les deux caractéristiques suivantes: :
Lorsque la cible n'a pas de manoeuvre , C'est - à - dire que l'accélération théorique tend à 0Heure, Estimation de l'accélération correspondante a ^ k − 1 \hat{a}_{k-1} a^k−1, Devrait avoir tendance à 0, Pour le moment (3)Calculé σ 2 \sigma^2 σ2Tendance ( 4 − π ) a m a x 2 π \frac{(4-\pi)a_{max}^2}{\pi} π(4−π)amax2. Cette variance est la valeur maximale de toutes les variances possibles , Indique que lorsque la cible n'a pas de manoeuvre , L'accélération a la plus grande probabilité de changement . Il en résulte une grande variance des estimations de l'état basées sur le modèle lorsqu'elles sont inorganiques. .
Lorsque la manœuvre de la cible est maximale ou minimale , C'est - à - dire que l'accélération théorique est ± a m a x ±a_{max} ±amaxHeure, Estimation de l'accélération correspondante a ^ k − 1 \hat{a}_{k-1} a^k−1 Devrait également tendre vers ± a m a x ±a_{max} ±amax,En ce moment σ 2 \sigma^2 σ2 La valeur calculée de 0. Cette variance est la valeur minimale de toutes les variances possibles , Indique que lorsque la cible effectue le mouvement de manoeuvre le plus fort , Possibilité minimale de changement d'accélération . Cela ne correspond pas au fait que l'accélération peut changer à tout moment. , Par conséquent, l'estimation correspondante a une grande erreur d'estimation lorsque la valeur absolue de l'accélération de manoeuvre est grande et qu'un changement soudain se produit. .
Fig.:Réglage, Je suis si fatigué d'étudier.
4. "En cours"StatistiquesCSModèle(2D)
Le modèle statistique actuel en 2D est similaire à celui en 1D , Il suffit d'empiler la matrice en diagonale
Similaire, Le modèle statistique actuel en 3D est similaire .
4.1. "En cours"StatistiquesCSModèle(Continu)
Faire le vecteur d'état
X = [ x , x ˙ , x ¨ , y , y ˙ , y ¨ ] T {X}=[x, \dot{x},\ddot{x},y, \dot{y},\ddot{y}]^T X=[x,x˙,x¨,y,y˙,y¨]T
Alors l'accélération est
a ( t ) = [ x ¨ ( t ) , y ¨ ( t ) ] T a(t)=[\ddot{x}(t), \ddot{y}(t)]^T a(t)=[x¨(t),y¨(t)]T
La valeur moyenne de l'accélération est :
a ˉ ( t ) = [ a ˉ x ( t ) , a ˉ y ( t ) ] T \bar{a}(t) =[\bar{a}_x(t) , \bar{a}_y(t) ]^T aˉ(t)=[aˉx(t),aˉy(t)]T
Temps continuSingerLe modèle est
X ˙ ( t ) = [ 0 1 0 0 0 0 0 0 1 0 0 0 0 0 − α 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 − α ] X ( t ) + [ 0 0 0 0 α 0 0 0 0 0 0 α ] a ˉ ( t ) + [ 0 0 0 0 1 0 0 0 0 0 0 1 ] w ( t ) \dot{X}(t)=\begin{bmatrix}0&1&0&0&0&0\\0&0&1&0&0&0\\0&0&-\alpha&0&0&0 \\0&0&0&0 &1&0\\0&0&0&0 &0&1 \\0&0&0&0 &0&-\alpha \end{bmatrix} X(t) + \begin{bmatrix}0 &0\\0&0\\\alpha&0 \\ 0&0\\0&0\\0&\alpha\end{bmatrix}\bar{a}(t) +\begin{bmatrix}0&0\\0&0\\1&0\\ 0&0\\0&0\\0&1\end{bmatrix}w(t) X˙(t)=⎣⎢⎢⎢⎢⎢⎢⎡00000010000001−α00000000000010000001−α⎦⎥⎥⎥⎥⎥⎥⎤X(t)+⎣⎢⎢⎢⎢⎢⎢⎡00α00000000α⎦⎥⎥⎥⎥⎥⎥⎤aˉ(t)+⎣⎢⎢⎢⎢⎢⎢⎡001000000001⎦⎥⎥⎥⎥⎥⎥⎤w(t)
Pour plus de commodité,Définition
A = [ 0 1 0 0 0 1 0 0 − α ] , B u = [ 0 0 α ] , B = [ 0 0 1 ] A=\begin{bmatrix}0&1&0\\0&0&1\\0&0&-\alpha\end{bmatrix}, B_u=\begin{bmatrix}0\\0\\\alpha\end{bmatrix}, B= \begin{bmatrix}0\\0\\1\end{bmatrix} A=⎣⎡00010001−α⎦⎤,Bu=⎣⎡00α⎦⎤,B=⎣⎡001⎦⎤
Alors la formule ci - dessus devient
X ˙ ( t ) = [ A 0 0 A ] X ( t ) + [ B u 0 0 B u ] a ˉ ( t ) + [ B 0 0 B ] w ( t ) \dot{X}(t)=\begin{bmatrix}A&0\\0&A \end{bmatrix}X(t) + \begin{bmatrix}B_u&0\\0&B_u\end{bmatrix}\bar{a}(t) + \begin{bmatrix}B&0\\0&B\end{bmatrix}w(t) X˙(t)=[A00A]X(t)+[Bu00Bu]aˉ(t)+[B00B]w(t)
4.2. "En cours"StatistiquesCSModèle(Discrete)
CycleT Après la discrétisation de l'échantillon , Convertir l'équation d'état en temps discret en :
X k + 1 = F k X k + G k a ˉ k + W k X_{k+1}=F_kX_{k} +G_k\bar{a}_k + W_k Xk+1=FkXk+Gkaˉk+Wk
Parmi eux
F k = [ F 0 0 F ] F_k=\begin{bmatrix}F&0\\0&F \end{bmatrix} Fk=[F00F]
F = [ 1 T ( α T − 1 + e − α T ) / α 2 0 1 ( 1 − e − α T ) / α 0 0 − e − α T ] F=\begin{bmatrix}1&T&(\alpha T-1+e^{-\alpha T})/\alpha^2\\0&1&(1-e^{-\alpha T})/\alpha\\0&0&-e^{-\alpha T}\end{bmatrix} F=⎣⎡100T10(αT−1+e−αT)/α2(1−e−αT)/α−e−αT⎦⎤
Parmi eux
G k = [ G 0 0 G ] G_k=\begin{bmatrix}G&0\\0&G \end{bmatrix} Gk=[G00G]
G = [ ( − T + α T 2 2 + 1 − e − α T α ) / α T − ( 1 − e − α T ) / α 1 − e − α T ] G_=\begin{bmatrix}(-T+\frac{\alpha T^2}{2} + \frac{1-e^{-\alpha T}}{\alpha})/\alpha\\ T - (1-e^{-\alpha T})/\alpha\\ 1-e^{-\alpha T}\end{bmatrix} G=⎣⎡(−T+2αT2+α1−e−αT)/αT−(1−e−αT)/α1−e−αT⎦⎤
Bruit W k W_k WkLa variance de
Q k = [ Q 0 0 Q ] Q_k=\begin{bmatrix}Q&0\\0&Q \end{bmatrix} Qk=[Q00Q]
Q = 2 α σ 2 [ q 11 q 12 q 13 q 21 q 22 q 23 q 31 q 32 q 33 ] Q=2\alpha \sigma^2 \begin{bmatrix}q_{11}&q_{12}&q_{13}\\q_{21}&q_{22}&q_{23}\\q_{31}&q_{32}&q_{33}\end{bmatrix} Q=2ασ2⎣⎡q11q21q31q12q22q32q13q23q33⎦⎤
Q Q QPour une matrice symétrique,Et
Parmi eux, mais σ 2 \sigma^2 σ2Pour:
σ 2 = { 4 − π π [ a m a x − a ˉ k ] 2 , a ˉ k ≥ 0 4 − π π [ a m a x + a ˉ k ] 2 , a ˉ k < 0 (3) \sigma^2= \begin{cases}\frac{4-\pi}{\pi} [a_{max}-\bar{a}_k]^2, \bar{a}_k\geq0 \\ \frac{4-\pi}{\pi} [a_{max}+\bar{a}_k]^2, \bar{a}_k<0\end{cases}\tag{3} σ2={ π4−π[amax−aˉk]2,aˉk≥0π4−π[amax+aˉk]2,aˉk<0(3)
Six Et y La variance du bruit des dimensions est différente ,Calculer séparémentQ,Autres similaires, C'est un calcul d'égalité.
5. Modèle statistique actuelmatlabSimulation
Trajectoire de position: Fig.1
Trajectoire de vitesse: Fig.2
Trajectoire d'accélération : Fig.3
Trajectoire du taux de changement d'accélération : Fig.4
6. Statistiques actuellesCSModèle 3D suivi des cibles
Algorithmes:Filtre Kalman
Filtre Kalman volumétrique
Filtre Kalman sans trace
Mesure:Radar
La piste est la suivante: :
7. Autres modèles
7.1 Tourner à vitesse constante CTModèle
Tourner à vitesse constante CT Modèle de mouvement voir un autre blog :Y compris 2D、3D
7.2. Accélération uniforme du MouvementCAModèle
Accélération uniforme du MouvementCA Modèle voir un autre blog
7.3. “En cours”Modèle statistique
Voir un autre blog pour le modèle statistique actuel
7.4. SingerModèle
Singer Modèle voir un autre blog
8. Code complet: Début du contact WX
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%% Tracez la piste
figure
plot3(sV(1,:,1,1),sV(4,:,1,1),sV(7,:,1,1),'.-k',eV(1,:,1,1),eV(4,:,1,1),eV(7,:,1,1),'--r',eV(1,:,1,2),eV(4,:,1,2),eV(7,:,1,2),'-.b','LineWidth',1)
xlabel('X(m)');ylabel('Y(m)');zlabel('Z(m)');
grid minor;
box on;
legend('Trajectoire réelle','Filtre Kalman sans trace ','Filtre Kalman volumétrique ')
title('Modèle statistique actuel3DManoeuvre de suivi des cibles')
%%%%%%%%%%Dimensions individuelles(X Y Z) Tracez la piste
ii=1:N; % 1 3 5Se réfère à la position,2 4 5 C'est la vitesse.
%%%%%%%% X Tracez la piste
figure
plot(ii,sV(1,ii,1,1),'.-k',ii,meaV(1,ii,1),'-g',ii,eV(1,ii,1,1),'--r',ii,eV(1,ii,1,2),'-.b','LineWidth',1)
xlabel('Temps(s)');
ylabel('m');
legend('Trajectoire réelle',' Mesures radar ','Filtre Kalman sans trace ','Filtre Kalman volumétrique ')
title(' Tracez la piste :X Vi')
%%%%%%%% Y Tracez la piste
figure
ii=1:N;
plot(ii,sV(4,ii,1,1),'.-K',ii,meaV(2,ii,1),'-g',ii,eV(4,ii,1,1),'--r',ii,eV(4,ii,1,2),'-.b','LineWidth',1)
%plot3(sV(1,:,1,1),sV(3,:,1,1),sV(5,:,1,1),'g',xV(1,:,1,1),xV(3,:,1,1),xV(5,:,1,1),'b')
xlabel('Temps(s)');
ylabel('m');
legend('Trajectoire réelle',' Mesures radar ','Filtre Kalman sans trace ','Filtre Kalman volumétrique ')
title(' Tracez la piste :Z Vi')
%%%%%%%% Z Tracez la piste
figure
ii=1:N;
plot(ii,sV(7,ii,1,1),'.-K',ii,meaV(3,ii,1),'-g',ii,eV(7,ii,1,1),'--r',ii,eV(7,ii,1,2),'-.b','LineWidth',1)
%plot3(sV(1,:,1,1),sV(3,:,1,1),sV(5,:,1,1),'g',xV(1,:,1,1),xV(3,:,1,1),xV(5,:,1,1),'b')
xlabel('Temps(s)');
ylabel('m');
legend('Trajectoire réelle',' Mesures radar ','Filtre Kalman sans trace ','Filtre Kalman volumétrique ')
title(' Tracez la piste :Z Vi')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%La peintureRMSE
for i=1:MC
sprintf('rate of process:%3.1f%%',(3*MC+i)/(4*MC)*100)
for k=1:N
for c=1:chan
error(:,c)=sV(:,k,i,1)-eV(:,k,i,c);
% RMSE
error2(:,c)=error(:,c).^2;
error2_dis(c)=error2(1,c)+error2(4,c)+error2(7,c);
error2_vel(c)=error2(2,c)+error2(5,c)+error2(8,c);
position(k,i,c)=error2_dis(c);
velocity(k,i,c)=error2_vel(c);
end
end
end
%% RMSE
for c=1:chan
rms_position(:,c)=sqrt(sum(position(:,:,c),2)./MC);
rms_velocity(:,c)=sqrt(sum(velocity(:,:,c),2)./MC);
end
ii=1:N;
figure;%position
plot(ii,rms_position(ii,1),'-*r',ii,rms_position(ii,2),'-cs','LineWidth',1);
% legend('EKF','UF')
legend('Filtre Kalman sans trace ','Filtre Kalman volumétrique ')
xlabel('t/s');ylabel('Position RMSE');
figure;%Vitesse
plot(ii,rms_velocity(ii,1),'-*r',ii,rms_velocity(ii,2),'-cs','LineWidth',1);
legend('Filtre Kalman sans trace ','Filtre Kalman volumétrique ')
xlabel('t/s');ylabel('Velocity RMSE');
==L'originalité n'est pas facile,Les gars qui passent, s'il vous plaît=
边栏推荐
- Why are some Wills made by husband and wife invalid
- The Windows C disk is full
- leetcode T31:下一排列
- SQL number injection and character injection
- [staff] key number (key number identification position | key number marking list | a major key identification principle | F, C, G position marking ascending | F major key identification principle | B
- Leetcode T40: 组合总和II
- postgresql源码学习(26)—— Windows vscode远程调试Linux上的postgresql
- Insufficient executors to build thread pool
- PostgreSQL source code learning (26) -- windows vscode remote debugging PostgreSQL on Linux
- Connect timed out of database connection
猜你喜欢
Embedded-c language-10-enumeration / (function) pointer (function) / multi-level pointer /malloc dynamic allocation / file operation
Latex formula code
Keithley 2100 software 𞓜 Keithley2400 test software ns SourceMeter
Comprehensive experiment Li
Set up file server Minio for quick use
【入门】输入n个整数,输出其中最小的k个
[introduction] approximate value
【无标题】
Koltin35, headline Android interview algorithm
Thread safety analysis of [concurrent programming JUC] variables
随机推荐
Keithley 2100 software 𞓜 Keithley2400 test software ns SourceMeter
CPU設計實戰-第四章實踐任務一簡單CPU參考設計調試
SQL number injection and character injection
程序员养生宝典
Gdip - hatchBrush图案表
軟鍵盤高度報錯
[redis] it takes you through redis installation and connection at one go
Hijacking a user's browser with beef
[getting started] enter the integer array and sorting ID, and sort its elements in ascending or descending order
[getting started] input n integers and output the smallest K of them
Php laraver Wechat payment
EDA开源仿真工具verilator入门6:调试实例
Use threejs simple Web3D effect
Leetcode T39: 组合总和
On several key issues of digital transformation
Provincial election + noi Part VI skills and ideas
Thread safety analysis of [concurrent programming JUC] variables
[staff] key number (key number identification position | key number marking list | a major key identification principle | F, C, G position marking ascending | F major key identification principle | B
使用beef劫持用戶瀏覽器
OJ input and output exercise