谷歌AI良心開源:一部手機就能完成3D目標檢測,還是實時的那種

每日疫情動態

谷歌AI良心開源:一部手機就能完成3D目標檢測,還是實時的那種

在2D圖像中做3D目標檢測很難?

現在,拿著一部手機就能做到,還是實時的那種。

這就是谷歌AI今天發佈的MediaPipe Objectron,一個可以實時3D目標檢測的pipeline。

分開來看:

MediaPipe是一個開源的跨平臺框架,用於構建pipeline來處理不同模式的感知數據。

Objectron在移動設備上實時計算面向對象的3D邊界框。

日常生活中的物體,它都可以檢測,來看下效果。

谷歌AI良心開源:一部手機就能完成3D目標檢測,還是實時的那種

它可以在移動端設備上,實時地確定物體的位置、方向和大小。

谷歌AI良心開源:一部手機就能完成3D目標檢測,還是實時的那種

這個pipeline檢測2D圖像中的物體,然後通過機器學習模型,來估計它的姿態和大小。

那麼,它具體是怎麼做到的呢?

獲取真實世界中的3D數據

我們知道,3D數據集相對於2D來說,非常有限。

為了解決這個問題,谷歌AI的研究人員使用移動增強現實(AR)會話數據(session data),開發了新的數據pipeline。

目前來說,大部分智能手機現在都具備了增強現實的功能,在這個過程中捕捉額外的信息,包括相機姿態、稀疏的3D點雲、估計的光照和平面。

為了標記groud truth數據,研究人員構建了一個新的註釋工具,並將它和AR會話數據拿來一起使用,能讓註釋器快速地標記對象的3D邊界框。

這個工具使用分屏視圖來顯示2D視頻幀,例如下圖所示。

左邊是覆蓋的3D邊界框,右邊顯示的是3D點雲、攝像機位置和檢測平面的視圖。

谷歌AI良心開源:一部手機就能完成3D目標檢測,還是實時的那種

註釋器在3D視圖中繪製3D邊界框,並通過查看2D視頻幀中的投影來驗證其位置。

對於靜態對象,只需要在單幀中註釋一個對象,並使用來自AR會話數據的ground truth攝像機位姿信息,將它的位置傳播到所有幀。

這就讓該過程變得非常高效。

AR合成數據生成

為了提高預測的準確性,現在比較流行的一種方法,就是通過合成的3D數據,來“填充”真實世界的數據。

但這樣往往就會產生很不真實的數據,甚至還需要大量的計算工作。

谷歌AI就提出了一種新的方法——AR合成數據生成 (AR Synthetic Data Generation)。

這就允許研究人員可以利用相機的姿勢、檢測到的平面、估計的照明,來生成物理上可能的位置以及具有與場景匹配的照明位置 。

這種方法產生了高質量的合成數據,與真實數據一起使用,能夠將準確率提高約10%。

谷歌AI良心開源:一部手機就能完成3D目標檢測,還是實時的那種

用於3D目標檢測的機器學習pipeline

為了達到這個目的,研究人員建立了一個單階段的模型,從一個RGB圖像預測一個物體的姿態和物理大小。

模型主幹部分有一個基於MobileNetv2的編碼器-解碼器架構。

谷歌AI良心開源:一部手機就能完成3D目標檢測,還是實時的那種

還採用一種多任務學習方法,通過檢測和迴歸來共同預測物體的形狀。

對於形狀任務,根據可用的ground truth註釋(如分割)來預測對象的形狀信號;對於檢測任務,使用帶註釋的邊界框,並將高斯分佈擬合到框中,以框形質心為中心,並與框的大小成比例的標準差。

檢測的目標是預測這個分佈,它的峰值代表了目標的中心位置。

迴歸任務估計邊界框8個頂點的2D投影。為了獲得邊界框的最終3D座標,還利用了一個成熟的姿態估計算法(EPnP),可以在不知道物體尺寸的前提下恢復物體的3D邊界框。

有了3D邊界框,就可以很容易地計算出物體的姿態和大小。

谷歌AI良心開源:一部手機就能完成3D目標檢測,還是實時的那種

這個模型也是非常的輕量級,可以在移動設備上實時運行。

在MediaPipe中進行檢測和跟蹤

在移動端設備使用這個模型的時候,由於每一幀中3D邊界框的模糊性,模型可能會發生“抖動”。

為了緩解這種情況,研究人員採用了最近在“2D界”發佈的檢測+跟蹤框架。

這個框架減少了在每一幀上運行網絡的需要,允許使用更大、更精確的模型,還能保持在pipeline上的實時性。

為了進一步提高移動pipeline的效率,每隔幾幀只讓運行一次模型推斷。

谷歌AI良心開源:一部手機就能完成3D目標檢測,還是實時的那種

最後,這麼好的項目,當然已經開源了!

戳下方傳送門鏈接,快去試試吧~

傳送門

GitHub項目地址:
https://github.com/google/mediapipe/blob/master/mediapipe/docs/objectron_mobile_gpu.md

谷歌AI博客:
https://ai.googleblog.com/2020/03/real-time-3d-object-detection-on-mobile.html

— END —


分享到:


相關文章: