27.orbslam工作原理及其優缺點,如何改進
28.svo中的深度濾波器原理
深度濾波器認為畫素點的深度誤差滿足高斯分布。在每乙個關鍵幀上提取若干特徵點,這些特徵點的深度未收斂,稱為seed。根據當前幀與上一關鍵幀的座標變換,計算seed在當前幀上的極線,在極線上尋找與上一關鍵幀的匹配點,三角化配對點,得到新的深度估計。將當前的深度估計與以往的最優深度估計做融合,更新seed的深度估計。當該深度估計收斂時,將seed新增到地圖中。
29.推導重投影誤差偏導計算
30.後端邊緣化
由於ba的計算量隨優化變數的增多而增大,因此必須限制優化變數的數量,但是不能直接丟棄不需要優化的變數,這樣會破壞變數之間的約束關係,因此採用邊緣化來計算更新量。
31.魯棒核函式(降低誤匹配影響的方法)
如果出現誤匹配會導致某個誤差項是錯誤的,從而使某條邊的誤差特別大。當誤差較大時,由於誤差函式採用二範數的形式,導致誤差增長的特別快。因此需要把原先的誤差函式替換成乙個誤差增長的沒有那麼快的函式,同時需要保證函式的光滑性。
魯棒函式有多種,最常見的是huber核:
h(e)={1/2*e^2 , |e|32.單目slam和雙目slam的區別
單目slam和雙目slam的本質區別是尺度問題:
1)單目slam的尺度是不確定的,因此單目slam有初始化過程,並且運動恢復是2d-2d情形,需要根據對極幾何約束和三角化測量來實現;
2)雙目slam的尺度是確定的,不需要初始化,並且運動恢復是2d-3d或3d-3d情形,需要根據pnp、icp演算法實現。
33.路徑規劃演算法原理
1)dijkstra
對於圖中每個節點,賦值乙個很大的代價
建立乙個空列表
將起始節點的代價賦值為0,並新增到列表中
while(列表不為空)
將列表中代價最小的節點賦給當前節點,並將當前節點從列表中刪除
if(當前節點==目標節點)
返回成功
for(當前節點的所有近鄰節點)
if(近鄰節點的代價》當前節點代價+從當前節點到近鄰節點代價)
近鄰節點的代價=當前節點代價+從當前節點到近鄰節點代價
將近鄰節點的父節點設為當前節點
如果近鄰節點不在列表中,則將其加入列表
2)a*
對於圖中每乙個節點都有兩個屬性,乙個是從起始節點到當前節點的實際代價g,另乙個是從起始節點到目標節點的估計代價f,將每個節點的這兩個屬性均賦值乙個很大的代價
建立乙個空列表
起始節點的g賦值為0,f賦值為h(起始節點),h為從當前節點到目標節點最優代價,將起始節點新增到列表中
while(列表不為空)
將列表中f最小的值賦給當前節點,並將當前節點從列表中刪除
if(當前節點==目標節點)
返回成功
for(當前節點的所有近鄰接點)
if(近鄰節點的代價》當前節點的代價+從近鄰節點到當前節點的代價)
近鄰節點的g=當前節點的g+從近鄰節點到當前節點的代價
將近鄰節點的父節點設為當前節點
近鄰節點的f=近鄰節點的g+h(近鄰節點)
如果近鄰節點不在列表中,則將其加入列表中
3)rrt
將起始節點加入到樹中
for(n次)
生成乙個隨機的取樣點x
if(x不在障礙物區域內)
從樹中找到離x最近的點y
if(x和y的距離》指定的閾值)
在x和y組成的線段上找到一點z,使得點z與點y的距離等於給定的閾值
x=zif(x和y組成的線段與障礙物沒有干涉)
將點x的父節點設定為y,並將點x新增到樹中
slam技術面試問題(二)
14.特徵匹配 稀疏 和稠密匹配區別 1 稀疏匹配可以快速地求解相機的位姿 2 稠密匹配可以建立完整地圖,但是速度慢 效率低,並且畫素梯度不明顯的地方對運動估計沒有什麼貢獻。15.ekf與ba的區別 1 ekf只估計當前時刻的機械人位姿,無法糾正歷史的機械人位姿 然而ba更加傾向於使用所有的歷史資料...
技術面試問題總結
最近在找新工作,現在接受了兩輪 技術面試了。被問了很多問題,才開始覺得準備的再充分還是會猝不及防,後來想還是因為自己水平不夠。現在把面試的問題總結一下,時刻提醒自己半瓶子不滿,基礎知識太薄弱,先把這些問題解決了吧!英語自我介紹,面試官問我老家 的,有點口音啊。離職原因,對應聘崗位的理解,示波器測電源...
ORACLE 面試問題 技術篇
oracle 面試問題 技術篇 1.解釋冷備份和熱備份的不同點以及各自的優點 解答 熱備份針對歸檔模式的資料庫,在資料庫仍舊處於工作狀態時進行備份。而冷備份指在資料庫關閉後,進行備份,適用於所有模式的資料庫。熱備份的優點在於當備份時,資料庫仍舊可以被使用並且可以將資料庫恢復到任意乙個時間點。冷備份的...