-
1 # 老孔
-
2 # 劉俊斌7
有自信學msckf 沒自信學okvis,視覺加imu是最容易融合的vslam,或者視覺再融合rgbd 或laser。總之單目沒深度,沒特徵也會掛,看你imu能不能用好了。沒事學學so3se3ceres,bundle adjustment,總之水很深。博士一定要挑一個方面深挖千萬別指望什麼都有建樹,你要發iros icra 視覺好的話可以發 cvpr iccv eccv 機器學習好的話nips icml。沒有這些畢業了也很水。書要看multiple view geometry in computer vison hartley寫的。找大牛就翻會議proceeding然後找到組在看組裡面的其他人在看這些人的文章信用次數等等。世界上也沒幾個牛的組沒幾天你就全找到了。
-
3 # MVL李戰斌
一言以蔽之,視覺SLAM技術是一種空間幾何再描述的工程技術。目前來說,受到業界肯定的比較成熟的開源演算法主要是:
1、西班牙Universidad de Zaragoza的ORB_SLAM2:raulmur/ORB_SLAM2
2、港科大的VIO:HKUST-Aerial-Robotics/VINS-Mobile
3、Google的SLAM:googlecartographer/cartographer
一般涉及1特徵點跟蹤,2重定位,3區域性與全域性最佳化,4迴環檢測等四個模組。其中,特徵點跟蹤是幀間影象特徵匹配關係,重定位是幀與關鍵幀的匹配關係,區域性與全域性最佳化是最優估計技術,迴環檢測是重定位與全域性最佳化技術的工程應用。這裡面容易出成果的就是重定位模組,其次是跟蹤模組,都容易與深度學習技術結合提高現有演算法精度,功夫在於準和快,這兩者本身屬於對影象的處理分析技術;其次是相機姿態的最佳化技術,這種技術屬於更為數學範疇中的數值分析部分的最佳化估計策略,對圖最佳化及最優估計等數學理論及應用上需要有突破;迴環檢測本身屬於上述兩者的結合,更多的是一種軟體工程技術。
對比此種工程性比較強的應用研究,最好的學習和研究方法就是測試並研究目前業界開源演算法,並綜合各種優缺點的同時,必須結合應用領域進行針對性的最佳化改進。也就是說,先看程式碼,問題無法解決時多看論文,再將論文方法編碼為軟體能力進步測試。從實踐中來,到實踐中去。
上述內容對於碩士研究生可以作為應用研究方向,但對於博士研究方向顯得單薄了,但基於SLAM點雲的場景語義分析才剛剛開始,屬於更接近高層影象內容理解部分,這裡面涉及的語義理解內容的深度和廣度就非常大!
首先,目前理解的語義的定義先明確下:
1)影象的標註,即特定目標的識別定位與三維重建,並將定位資訊與識別標籤與SLAM的位置資訊結合,實現基於SLAM的三維空間的場景物體打標與模型構建,即影象的內容結構化;2)標註影象與場景其他物體之間的關係,即所說的場景理解,將整個場景的影象內容以故事描述的方式串聯起來,構成完成的影象場景資訊,及影象內容的語義化。
第二部分基本屬於純粹的語法語義理解的範疇,脫離影象資訊的研究內容,目前工作涉及不多,暫就第一部分及語義理解內容涉及的結合點簡單講述下: 1)SLAM對應的是3維點雲資訊; 2)影象語義資訊的低層級資訊,即為特定物件的目標識別定位; 3)特定物件的分割、識別定位資訊與3DSLAM點雲資訊的結合,實現3D模型跟蹤與重建; 4)將3D目標物件插入到SLAM得到的空間位置序列中。
這裡有一個泡泡機器人中釋出的文章可以參考入門:
【泡泡機器人翻譯專欄】 單目語義SLAM(上)
【泡泡機器人翻譯專欄】 單目語義SLAM(下)
回覆列表
基本上你的老師說的對。現在機器視覺領域,基本上是機器學習,或者說是深度學習的天下,現在的學術研究也是有“風口”。
這個領域中,三個學術大牛,都還活在世上,
超級大牛:Geoff Hinton,Yoshua Bengio,Yann LeCun
還有一些小牛人:Jürgen Schmidhuber ,Ruslan Salakhutdinov,Andrew Ng,Honglak Lee,Brendan Frey,Yee Whye Teh,Simon Osindero,Nando de Freitas,Marc"Aurelio Ranzato,Ilya Sutskever。Radford Neal,Richard Zemel,Hugo Larochelle,Surya Ganguli等等
而機器視覺與深度學習,還不是同一件事,而且SLAM,與機器視覺又不是同一回事情。我覺得你應該去梳理一下,比如在SLAM中,很多沒有人工智慧,尤其是當下說的深度學習這件事情,很多的是“高通量計算”,比如三維高精密地圖的生成等等,與深度學習啊,神經網路,都關係不大,我自己把他看成是嵌入式的高通量計算。
SLAM技術涵蓋的範圍非常廣,按照不同的感測器、應用場景、核心演算法,SLAM有很多種分類方法。按照感測器的不同,可以分為基於鐳射雷達的 2D/3D SLAM、基於深度相機的RGBD SLAM、基於視覺感測器的visual SLAM(以下簡稱vSLAM)、基於視覺感測器和慣性單元的visual inertial odometry(以下簡稱VIO)。基於鐳射雷達的2D SLAM相對成熟,早在2005年,Sebastian Thrun等人的經典著作《機率機器人學》將2D SLAM研究和總結得非常透徹,基本確定了鐳射雷達SLAM的框架。目前常用的Grid Mapping方法也已經有10餘年的歷史。2016年,Google開源了鐳射雷達SLAM程式Cartographer,可以融合IMU資訊,統一處理2D與3D SLAM 。目前2D SLAM已經成功地應用於掃地機器人中。基於深度相機的RGBD SLAM過去幾年也發展迅速。自微軟的Kinect推出以來,掀起了一波RGBD SLAM的研究熱潮,短短几年時間內相繼出現了幾種重要演算法,例如KinectFusion、Kintinuous、Voxel Hashing、DynamicFusion等。微軟的Hololens應該集成了RGBD SLAM,在深度感測器可以工作的場合,它可以達到非常好的效果。而與視覺相關的是Vslam
視覺感測器包括單目相機、雙目相機、魚眼相機等。由於視覺感測器價格便宜,在室內室外均可以使用,因此vSLAM是研究的一大熱點。早期的vSLAM如monoSLAM更多的是延續機器人領域的濾波方法。現在使用更多的是計算機視覺領域的最佳化方法,具體來說,是運動恢復結構(structure-from-motion)中的光束法平差(bundle adjustment)。在vSLAM中,按照視覺特徵的提取方式,又可以分為特徵法、直接法。當前vSLAM的代表演算法有ORB-SLAM、SVO、DSO等。希望對你有用