TensorFlow也可以做圖形渲染了:當神經網路遇上計算機圖形學
曉查 發自 凹非寺
量子位 報道 | 公眾號 QbitAI
谷歌給TensorFlow加入了計算機圖形處理功能TensorFlow Graphics,讓神經網路可以更好地理解計算機世界裡的圖形操作。
計算機圖形(Computer Graphics)和計算機視覺(Computer Vision)是一對孿生兄弟,二者互為逆過程。
計算機圖形是預先知道3D物體的形狀、位置、材料構成,以及場景的燈光和相機,然後渲染出場景。
計算機視覺是已知拍到的圖像,從中推斷出有哪些物體,它們由什麼材料製成,以及它們的3D位置和方向。
圖像識別自然不必多說。在TensorFlow Graphics,圖像渲染包括對圖形進行旋轉、縮放、光影、3D網格等操作。
旋轉
旋轉在與一些機器人任務中非常重要,比如,用機械臂抓住物體需要精確估計這些物體相對於臂的位置。
縮放
縮放計算機視覺中起著重要作用,因為它會極大地影響投影到平面上的三維物體的外觀。
光影材質
材質模型定義光與對象的交互方式,展現這種材料獨特的外觀。在某些虛擬環境中,可以預測某些物體的真實外觀。
幾何形狀
從手機深度感測器到自動駕駛汽車激光雷達,近年來3D感測器越來越多。它們以網格或者點雲的方式輸出3D數據。
由於它們的不規則結構,與提供規則網格結構的圖像相比,這些表示上的卷積很難實現。TensorFlow Graphics有兩個3D卷積層和一個3D池化層,允許網路在網格上執行語義部分分類的訓練。
為何要推出TensorFlow Graphics
近幾年,在神經網路架構中插入可微圖形層的情況越來越多。尤其是空間變換網路,這是2015年DeepMind在NIPS上發表的論文《Spatial Transformer Networks》。
這篇文章提出神經網路應當具有所謂「空間不變性」,即無論平移、旋轉、縮放,都能夠正確地識別和處理圖像,但CNN在這方面的能力是欠缺的。
在神經網路中插入這些可微圖形層,可以來構建新的、更高效的網路架構。將幾何和約束建模到神經網路中,可以通過自我監督的方式進行穩健、高效的訓練。
另外,訓練3D視覺任務的機器學習系統通常需要大量數據,需要設計機器學習模型,在沒有太多監督的情況下進行訓練,給網路加入計算機圖形渲染的能力,能幫AI更好地理解3D世界。
安裝使用
TensorFlow Graphics要求使用TensorFlow 1.13.1或更高版本。谷歌提供了CPU和GPU兩個版本:
為了讓用戶能夠進行可視化調試,TensorFlow Graphics還附帶了一個TensorBoard插件,互動式地顯示3D網格和點雲。
更多的實際效果可以去項目頁提供的幾個Colab筆記本中體驗。比如前面提到的光影材質渲染:
傳送門
官方介紹:
https://medium.com/tensorflow/introducing-tensorflow-graphics-computer-graphics-meets-deep-learning-c8e3877b7668
項目頁:
https://github.com/tensorflow/graphics
—完—
小程序|get更多AI學習乾貨
加入社群
量子位AI社群開始招募啦,量子位社群分:AI討論群、AI 行業群、AI技術群;
歡迎對AI感興趣的同學,在量子位公眾號(QbitAI)對話界面回復關鍵字「微信群」,獲取入群方式。(技術群與AI 行業群需經過審核,審核較嚴,敬請諒解)
喜歡就點「在看」吧 !
※吳恩達斯坦福實驗室發布MRNet數據集,包含1千多張標註膝關節核磁共振成像
※2:0!Dota2世界冠軍OG被OpenAI碾壓,全程人類只推掉兩座外塔
TAG:量子位 |