基於深度學習的單目深度估計有什麼發展前景呢?

我了解的內容不是很多,但是我也知道有很多方式可以得到深度圖。比如雙目或者kinect,所以基於深度學習的單目深度估計有什麼優勢呢?具有什麼發展前景?有什麼實際應用呢?感謝(?°3°?)


總的來說,個人認為這個方向還是有意義的。

首先,深度圖的3D信息對於三維重建、HCI、AR、導航等應用都有比較大的幫助 [1];同時,深度圖在CV中能簡化很多任務的演算法,因為有了前後的關係更容易分辨出物體的邊界。比如,3D human pose在RGB-D上只需要簡單的閾值就可以分割出人體,在2011年演算法就已經比較成熟了,僅僅使用了隨機森林 [2],而基於RGB的3D human pose目前還是一個研究熱點 [3](2D的終於在這幾年做得差不多了)。又比如在SLAM中,RGB-D的SLAM無論在tracking還是在mapping上都比單目SLAM要穩健不少。

其次,不同於大部分其他答主的觀點,我認為單目估計深度也是有意義的。儘管有不少硬體能夠直接得到深度圖,但它們都有各自的缺陷。比如3D LIDAR設備非常昂貴;基於結構光的深度攝像頭比如Kinect等在室外無法使用,且得到的深度圖雜訊比較大;而雙目攝像頭需要利用立體匹配演算法,計算量比較大,而且對於低紋理場景效果不好。單目攝像頭相比來說成本最低,設備也較普及,所以從單目攝像頭估計出深度仍然是一個可選的方案,應用比其它方案更加廣泛。舉個SLAM的例子,對於單目SLAM來說,從單張圖(或者是靜止的圖序列)是無法在幾何上得到深度的。如果能通過演算法給出一個粗略的深度估計(相當於從數據集中獲得圖像的深度先驗),對於演算法的收斂性和魯棒性也是一個很大的提升 [4]。

最後提一點,單目深度估計不是只能收集帶ground truth數據集,然後利用CNN等模型直接去學習如何回歸深度。目前有一些無監督的方式直接從沒有深度ground truth的視頻中學習回歸深度,比如利用雙目 [5][6](其實也是一種變相的ground truth,只是更稀疏),或利用深度與pose之間的關係[7][8]。同時,也有一些論文在研究如何通過單目加上其他更簡單的感測器 [9]或更稀疏的深度圖中 [10]得到稠密的深度圖。個人不看好純收集數據集的方法,因為泛化性太差,很難學出一個對於大部分場景通用的模型。

歡迎討論。

參考文獻:

[1] Cruz L, Lucio D, Velho L. Kinect and rgbd images: Challenges and applications[C]//Graphics, Patterns and Images Tutorials (SIBGRAPI-T), 2012 25th SIBGRAPI Conference on. IEEE, 2012: 36-49.

[2] Girshick R, Shotton J, Kohli P, et al. Efficient regression of general-activity human poses from depth images[C]//Computer Vision (ICCV), 2011 IEEE International Conference on. IEEE, 2011: 415-422.

[3] Pavlakos G, Zhou X, Derpanis K G, et al. Coarse-to-fine volumetric prediction for single-image 3D human pose[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE, 2017: 1263-1272.

[4] Tateno K, Tombari F, Laina I, et al. CNN-SLAM: Real-time dense monocular SLAM with learned depth prediction[J]. arXiv preprint arXiv:1704.03489, 2017.

[5] Garg R, Carneiro G, Reid I. Unsupervised CNN for single view depth estimation: Geometry to the rescue[C]//European Conference on Computer Vision. Springer International Publishing, 2016: 740-756.

[6] Godard C, Mac Aodha O, Brostow G J. Unsupervised monocular depth estimation with left-right consistency[J]. arXiv preprint arXiv:1609.03677, 2016.

[7] Zhou T, Brown M, Snavely N, et al. Unsupervised learning of depth and ego-motion from video[J]. arXiv preprint arXiv:1704.07813, 2017.

[8] Wang C, Buenaposada J M, Zhu R, et al. Learning Depth from Monocular Videos using Direct Methods[J]. arXiv preprint arXiv:1712.00175, 2017.

[9] Liao Y, Huang L, Wang Y, et al. Parse Geometry from a Line: Monocular Depth Estimation with Partial Laser Observation[J]. arXiv preprint arXiv:1611.02174, 2016.

[10] Ma F, Karaman S. Sparse-to-Dense: Depth Prediction from Sparse Depth Samples and a Single Image[J]. arXiv preprint arXiv:1709.07492, 2017.


這個是典型的缺乏基礎物理理論支持的工作,純粹靠大型CNN模型的擬合能力。
對於某種特定的場景,例如室內環境,卧室,客廳這種,feed大量訓練數據給CNN model,是可以學到一些clue,能對類似的場景進行推斷。
你換一個場景再試試訓練的模型,完全就是扯淡了!如果要問有用嗎?可能有一些limited application吧


謝邀。優勢就是發論文容易,我不太認為在slam領域使用深度學習是一個很好的策略,因為slam本身是可以分析的,公式都很清楚,但是如果用深度學習網路化後,會導致本來能夠分析的內容不可分析,甚至不可控制,我自己沒有嘗試過,並不能做過多評論,所謂沒有實踐就沒有發言權,不過題主如果能找到groundtruth,試試也挺好的


相比於單目的視覺SLAM:

優點是:演算法簡單;可以適用於動態場景;不需要相機運動產生視差;可以完成稠密建圖;有尺度信息 等等

缺點是:建出的地圖不夠准;在未知場景(和訓練數據相差較大)性能嚴重退化,比如在nyu訓練集上訓練,在nyu測試集上測試,誤差可以降到12%左右[1],在TUM數據集上測試可能誤差在50%以上;還有就是需要大量的訓練數據,當然最近也有完全無監督的方法,只需要一段video就可以直接訓練[2]。

我覺得看使用場景,如果對精度要求不高,但是對稠密度要求高的場景應該是可以的。

[1] I. Laina, C. Rupprecht, V. Belagiannis, F. Tombari, and N. Navab,「Deeper depth prediction with fully convolutional residual networks,」in 3D Vision (3DV), 2016 Fourth International Conference on. IEEE, 2016

[2] Tinghui Zhou, Matthew Brown, Noah Snavely, David Lowe, " Unsupervised Learning of Depth and Ego-Motion from Video" In CVPR 2017


之前在arxiv上看到一篇diffusercam, 3D重構的過程相當於在一定的先驗下對線性方程求逆, 類似SR, 可以用深度學習.


一沒優勢,二沒意義。單目深度圖能做成segmentation mask就已經謝天謝地了。


優勢發論文+1,了解過一點,有錯輕拍...現在dl做單目,貌似走的還是類似fcn分割那種套路,類似直接用l2 loss回歸ground truth,而且還限制了室內場景..相比成熟的雙目,基本沒任何優勢。。kitti上基於dl的雙目深度圖已經無論在精度和速度上都完爆了傳統方法。。唯一優勢或許是少個攝像頭??然而手機上集成雙攝都已經十分成熟了...


這塊是我的研究方向之一了,。總的來說尚需突破性的paper。現有的演算法只能在實驗室條件下自娛自樂,不具有實用價值。
如果為了學術研究,這個方向不錯,可以比較容易的寫個paper(自娛自樂)。如果為了應用,室外考慮雙目更靠譜,室內tof更好。三維重建單目也不錯(不是深度學習哈).


推薦閱讀:

Bundle Adjustment到底是什麼?
三維重建 3D reconstruction 有哪些實用演算法?
華中科技大學圖像所怎麼樣?
哪些人工智慧領域已經或者未來1-2年會實現盈利?
可以不用openCV,用C++寫一個簡單的人臉識別程序么?

TAG:計算機視覺 | 深度學習DeepLearning |