其中,輸出在ps,rs
中,tic
為tbc ,ric
為rbc
1、將本幀所有的 已知深度的點,利用它第一次出現的幀的位姿和當時三角化出的xyz,來計算出其世界系座標並存入pts3d
,相應的當前幀的歸一化平面座標存入pts2d
,步驟為: pim
u=rb
c∗pc
am+t
bc
p_ = r_ * p_ + t_
pimu=
rbc
∗pca
m+t
bcpb=
rwb∗
pimu
+twb
p_b = r_ * p_~ + t_
pb=rw
b∗p
imu
+twb
vector3d ptsinimu = ric[0] * (point * estimated_depth) + tic[0];//歸一化了, 乘逆深度才是真實座標
vector3d ptsinworld = rs[ ] * ptsincam + ps[ ];
由上一幀位姿(相對imu系)和外參,得到上一幀的cam位姿 :
rwc = rwb * rbc
pwc = rwb * pbc + twb
rcam = rs[framecnt - 1] * ric[0];//rwc,camera相對word位置
pcam = rs[framecnt - 1] * tic[0] + ps[framecnt - 1];
2、由3d點座標、本幀對應2d點座標,便可求解本幀位姿(imu積分得到的位姿 轉到世界系下的rcam、pcam作為優化初值)
solveposebypnp(rcam, pcam, pts2d, pts3d)//結果更新在cam和pcam
3、最後再將本本幀的rcam和pcam轉到imu系下,放入rs[framecnt], ps[framecnt]
利用本幀的位姿rs ps(相對imu系)和外參rbc計算左右相機位姿twc0twc1 (即[r, t])leftpose, rightpose
利用svd方法對雙目point0, point1
進行三角化,輸出point3d
為相對世界系的pw ,
triangulatepoint(leftpose, rightpose, point0, point1, point3d);
變為相對左相機座標系下的座標 rcw
t * pw + tcw,
最後把深度提取出來,用feature.estimated_depth = depth
放到featureperid
的逆深度屬性中
vins部落格的一部分6
輸入是本幀的特徵點 id cam id,xyz uv vxvy 包含了檢測關鍵幀,估計外部引數,初始化,狀態估計,劃窗等等 檢測關鍵幀,選擇margin幀 addfeaturecheckparallax if f manager.addfeaturecheckparallax frame count...
測試只是一部分
對於很多測試人員來說,測試相關的內容是工作的全部,這是我們的視角。但是換個角度也許就不是這樣。首先我們工作的地方大部分是商業組織,是某個公司,開發某類產品或者提供某類服務,也就是business。所以從組織的層級往上看,到了一定的級別,其實看到的是業務 產品等東西,當然他們也關心我們技術和競爭對手的...
Laravel 一部分總結
1.使用命令自動建立model層 進入所在目錄 php artisan make model test 2增刪改查 toarray 將資料變成陣列 public functionusertest 增 預設有兩個字段,可以在model層關閉,或者在表中新增 public timestamps fals...