自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SIGGRAPH'24 | 太逆天了!利用分層3D GS,實(shí)時(shí)渲染超大規(guī)模場景!

人工智能 智能汽車
我們提出了一個(gè)完整的解決方案,該方案能夠?qū)崟r(shí)渲染非常大的場景,并可以通過LOD方法適應(yīng)可用資源。我們展示了使用簡單且負(fù)擔(dān)得起的設(shè)備捕獲的場景的結(jié)果,這些場景包含多達(dá)數(shù)萬張圖像,涵蓋了長達(dá)數(shù)公里、持續(xù)時(shí)間長達(dá)一小時(shí)的軌跡。

本文經(jīng)自動(dòng)駕駛之心公眾號(hào)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)聯(lián)系出處。

近年來,新視角合成取得了重大進(jìn)展,3D Gaussian splatting提供了出色的視覺質(zhì)量、快速訓(xùn)練和實(shí)時(shí)渲染。然而,訓(xùn)練和渲染所需的資源不可避免地限制了可以以良好視覺質(zhì)量表示的場景大小。本文引入了一種3D高斯層次結(jié)構(gòu),該結(jié)構(gòu)在保留大場景視覺質(zhì)量的同時(shí),為有效渲染遠(yuǎn)處內(nèi)容提供了高效的細(xì)節(jié)級(jí)別(LOD)解決方案,實(shí)現(xiàn)了有效的級(jí)別選擇和級(jí)別之間的平滑過渡。方法采用了一種分而治之的方法,使我們能夠在大場景中獨(dú)立地訓(xùn)練多個(gè)block。將這些塊整合成一個(gè)層次結(jié)構(gòu),該層次結(jié)構(gòu)可以優(yōu)化以進(jìn)一步改善合并到中間節(jié)點(diǎn)的高斯函數(shù)的視覺質(zhì)量。非常大的捕獲通常具有稀疏的場景覆蓋,給原始的3D高斯平鋪訓(xùn)練方法帶來了許多挑戰(zhàn);我們調(diào)整和規(guī)范了訓(xùn)練以解決這些問題。我們提出了一個(gè)完整的解決方案,該方案能夠?qū)崟r(shí)渲染非常大的場景,并可以通過LOD方法適應(yīng)可用資源。我們展示了使用簡單且負(fù)擔(dān)得起的設(shè)備捕獲的場景的結(jié)果,這些場景包含多達(dá)數(shù)萬張圖像,涵蓋了長達(dá)數(shù)公里、持續(xù)時(shí)間長達(dá)一小時(shí)的軌跡。

針對(duì)3D高斯Splatting的分層細(xì)節(jié)級(jí)別

在處理大型場景時(shí),細(xì)節(jié)級(jí)別(LOD)解決方案至關(guān)重要,它們允許有效地渲染大量內(nèi)容;因此,我們的目標(biāo)是創(chuàng)建一個(gè)層次結(jié)構(gòu),以表示通過原始3DGS優(yōu)化生成的圖元。遵循圖形中的傳統(tǒng)LOD方法,我們需要:

1)找到候選的3DGS圖元并定義如何將它們合并到中間節(jié)點(diǎn)中;

2)提供一種有效的方式來確定層次結(jié)構(gòu)中的切割點(diǎn),以在質(zhì)量和速度之間取得良好的平衡;

3)在層次級(jí)別之間提供平滑的過渡策略。

1)層次生成

為每個(gè)block創(chuàng)建一個(gè)基于樹的層次結(jié)構(gòu),包括內(nèi)部節(jié)點(diǎn)和葉子節(jié)點(diǎn)。每個(gè)節(jié)點(diǎn)都與一個(gè)3D高斯分布相關(guān)聯(lián),這個(gè)3D高斯分布要么是來自原始優(yōu)化的葉子節(jié)點(diǎn),要么是合并的內(nèi)部節(jié)點(diǎn)。對(duì)中間節(jié)點(diǎn)的要求是:1) 保持與葉子節(jié)點(diǎn)相同的快速光柵化程序;2) 盡可能準(zhǔn)確地表示其子節(jié)點(diǎn)的外觀。因此需要定義中間節(jié)點(diǎn),這些節(jié)點(diǎn)是3D高斯分布,具有3DGS圖元的所有屬性,即均值??(位置)、協(xié)方差Σ、SH系數(shù)和不透明度。

2)層次切割選擇和級(jí)別切換

給定一個(gè)3DGS模型的層次樹結(jié)構(gòu)和視圖??,選擇一種通過樹的切割方式,以在保持視覺質(zhì)量的同時(shí)最大化渲染性能。首先定義給定層次節(jié)點(diǎn)??的粒度?? (??),這是給定視圖下在屏幕上的投影大?。ㄈ鐖D3(a)所示)。具體來說,使用包含在節(jié)點(diǎn)中的葉高斯的邊界框,然后取邊界框的最大維度,并據(jù)此計(jì)算投影大小。通過識(shí)別投影邊界框小于給定目標(biāo)粒度????(例如,1像素)的節(jié)點(diǎn)來找到切割點(diǎn)?;趯哟喂?jié)點(diǎn)的生成及其邊界,父節(jié)點(diǎn)的AABB(軸對(duì)齊邊界框)永遠(yuǎn)不會(huì)小于其任何子節(jié)點(diǎn)。這使得我們能夠在線性時(shí)間內(nèi)找到適當(dāng)?shù)那懈铧c(diǎn),或者在大規(guī)模并行設(shè)置中,每個(gè)節(jié)點(diǎn)在常數(shù)時(shí)間內(nèi)找到:如果節(jié)點(diǎn)??的邊界滿足粒度條件,但其父節(jié)點(diǎn)的邊界不滿足,則對(duì)于給定設(shè)置,選擇節(jié)點(diǎn)??并將其包含在切割中(如圖3(b)中的綠色曲線所示)。

優(yōu)化和壓縮層次結(jié)構(gòu)

層次結(jié)構(gòu)是通過聚合幾何圖元來構(gòu)建的;最終需要更明確地考慮外觀。由于層次結(jié)構(gòu)的每個(gè)中間節(jié)點(diǎn)本身都是一個(gè)3D高斯圖元,因此可以進(jìn)一步優(yōu)化以提高視覺質(zhì)量。為此,需要通過中間節(jié)點(diǎn)傳播梯度,引入一個(gè)具有可優(yōu)化中間節(jié)點(diǎn)的層次結(jié)構(gòu)。接下來將解釋如何實(shí)現(xiàn)這一點(diǎn),以及一個(gè)額外的步驟來壓縮層次結(jié)構(gòu)。

傳統(tǒng)上,圖形中的LOD(細(xì)節(jié)級(jí)別)方法用于在從遠(yuǎn)處查看場景時(shí)表示其簡化版本;這在圖6中有所說明。我們的目標(biāo)粒度通過考慮投影到屏幕上的面積來實(shí)現(xiàn)這一效果,該面積用先前定義的節(jié)點(diǎn)??的粒度?? (??) 來表示。

1)優(yōu)化分層

這里自上而下的層次結(jié)構(gòu)構(gòu)建產(chǎn)生了一個(gè)效果良好的數(shù)據(jù)結(jié)構(gòu)(見表2)。然而,一旦構(gòu)建完成,中間節(jié)點(diǎn)可以像葉子3DGS圖元一樣進(jìn)行渲染,因此也可以以同樣的方式進(jìn)行優(yōu)化??梢詢?yōu)化層次結(jié)構(gòu)的中間節(jié)點(diǎn),以提高它們可以表示的視覺質(zhì)量。這就引出了如何在不同尺度之間執(zhí)行這種優(yōu)化的問題。一種解決方案是通過隨機(jī)選擇一個(gè)輸入視圖和一個(gè)下采樣因子來優(yōu)化層次結(jié)構(gòu);較低的分辨率直接意味著不同的目標(biāo)粒度,以及相應(yīng)的層次結(jié)構(gòu)切割。然而,這種方法存在缺點(diǎn),在圖5和圖7中進(jìn)行了說明:當(dāng)降低分辨率時(shí),無法表示高頻細(xì)節(jié)。

圖片

在優(yōu)化過程中,我們始終在全分辨率下進(jìn)行渲染,并簡單地選擇隨機(jī)的目標(biāo)粒度。這種方法具有優(yōu)化許多不同切割節(jié)點(diǎn)的期望效果,同時(shí)保留了視覺細(xì)節(jié)。當(dāng)資源有限時(shí),這可以特別有用,因?yàn)榭梢圆捎酶みM(jìn)的LOD策略,同時(shí)保持更好的視覺質(zhì)量。

圖片

2)壓縮層次結(jié)構(gòu)

層次結(jié)構(gòu)在內(nèi)存方面增加了一些開銷。更重要的是,對(duì)于層次結(jié)構(gòu)本身的優(yōu)化,我們希望避免父節(jié)點(diǎn)大小僅比子節(jié)點(diǎn)稍大的父子設(shè)置。否則,這樣的節(jié)點(diǎn)在訓(xùn)練過程中可能很少被選擇,也得不到適當(dāng)?shù)膬?yōu)化。為了避免這種情況,我們稀疏化了生成的樹結(jié)構(gòu)。

首先將所有葉子節(jié)點(diǎn)(即3DGS優(yōu)化的輸出)標(biāo)記為相關(guān)節(jié)點(diǎn),即它們不應(yīng)該從樹中被移除。接下來,在所有訓(xùn)練視圖上找到樹中最小目標(biāo)粒度???????? = 3像素(由于低通濾波,原始3DGS圖元的最小范圍)的切割的并集。在這個(gè)并集中找到最底部的節(jié)點(diǎn),這再次產(chǎn)生了一個(gè)切割。這些節(jié)點(diǎn)被認(rèn)為是所選粒度下的最高細(xì)節(jié)的相關(guān)節(jié)點(diǎn)。它們與已標(biāo)記節(jié)點(diǎn)之間的所有節(jié)點(diǎn)都將從樹中移除。然后將目標(biāo)粒度提高2倍,并重復(fù)此過程,直到達(dá)到????????,即圖像分辨率的一半。

大場景訓(xùn)練

現(xiàn)在可以構(gòu)建高效的3D高斯層次結(jié)構(gòu);這對(duì)于處理非常大的場景是不可或缺的,因?yàn)閺倪h(yuǎn)處可見的場景部分可以在層次結(jié)構(gòu)的較粗級(jí)別上進(jìn)行渲染。為了訓(xùn)練大場景,本文方法建立在實(shí)時(shí)渲染大數(shù)據(jù)的常見計(jì)算機(jī)圖形學(xué)方法之上。特別是,引入了一種分而治之的方法,通過將大場景分割成塊(圖8)來進(jìn)行處理。

將塊大小定義為50×50米,適用于步行捕獲的場景,以及100×100米,適用于使用車輛捕獲的場景。雖然這些塊的大小有限,但它們?nèi)匀槐仍?DGS方法處理的塊大。此外,這種場景的捕獲方式必然比大多數(shù)輻射場解決方案所期望的要稀疏得多。因此,我們調(diào)整3D高斯的優(yōu)化以適應(yīng)這些差異。

目標(biāo)是允許對(duì)各個(gè)塊進(jìn)行并行處理,以便在給定足夠計(jì)算資源的情況下,在合理的掛鐘時(shí)間內(nèi)處理大場景。一旦各個(gè)塊被處理完畢,我們需要一個(gè)整合步驟來處理各個(gè)塊之間可能存在的不一致性。

具體實(shí)現(xiàn)和預(yù)處理

在C++和Python/PyTorch的原始3DGS實(shí)現(xiàn)基礎(chǔ)上實(shí)現(xiàn)了本文的方法,并修改了SIBR渲染器以實(shí)現(xiàn)快速渲染。在論文發(fā)表時(shí),將提供所有源代碼和數(shù)據(jù),包括數(shù)據(jù)集預(yù)處理的所有腳本(請(qǐng)參見項(xiàng)目頁面)。使用PyTorch中的自動(dòng)微分進(jìn)行層次結(jié)構(gòu)優(yōu)化。此外,在層次結(jié)構(gòu)優(yōu)化過程中,通過在層次結(jié)構(gòu)中對(duì)應(yīng)于葉子節(jié)點(diǎn)的所有高斯分布上使用停止梯度操作符來避免優(yōu)化葉子節(jié)點(diǎn),從而有效地凍結(jié)它們的屬性。

論文捕獲了三個(gè)戶外場景:SmallCity、BigCity和Campus。在表1中列出了每個(gè)場景的統(tǒng)計(jì)數(shù)據(jù),以及Wayve提供的另一個(gè)場景的統(tǒng)計(jì)數(shù)據(jù)。

捕獲:在捕獲過程中,使用了一個(gè)自行車頭盔,上面安裝了6個(gè)相機(jī)(Campus數(shù)據(jù)集使用5個(gè))。使用了GoPro HERO6 Black相機(jī)(見圖9),設(shè)置為線性視野(Linear FoV)和1444×1080分辨率的延時(shí)模式,每0.5秒拍攝一次。騎著自行車以大約6-7公里/小時(shí)的速度拍攝了SmallCity和BigCity場景,而Campus場景則是戴著頭盔步行時(shí)拍攝的。

姿態(tài)估計(jì):姿態(tài)估計(jì)是處理的相機(jī)數(shù)量所帶來的一個(gè)主要挑戰(zhàn)。數(shù)據(jù)集包含5800到40000張照片。使用COLMAP,結(jié)合自定義參數(shù)設(shè)置、層次映射器和每個(gè)塊的附加捆綁調(diào)整,以實(shí)現(xiàn)合理的處理時(shí)間。在附錄B中提供了詳細(xì)信息。

數(shù)據(jù)集處理:以類似的方式對(duì)曝光進(jìn)行校正,就像其他人所做的那樣,通過優(yōu)化每幅圖像的曝光校正。最后,通過基于CNN的分割算法來檢測汽車、自行車等移動(dòng)物體,并確定它們是否有對(duì)應(yīng)的SfM點(diǎn),從而移除這些移動(dòng)物體。還移除了所有人和車牌。所有步驟的詳細(xì)信息都在附錄中進(jìn)行了介紹。

實(shí)驗(yàn)結(jié)果對(duì)比

圖片

責(zé)任編輯:張燕妮 來源: 自動(dòng)駕駛之心
相關(guān)推薦

2016-12-14 11:44:25

阿里Docker大數(shù)據(jù)

2020-07-23 14:03:09

數(shù)據(jù)中心數(shù)據(jù)網(wǎng)絡(luò)

2025-02-26 08:30:00

2022-12-30 14:14:51

數(shù)據(jù)中心服務(wù)器

2023-05-04 15:57:40

研究應(yīng)用

2020-12-11 19:52:06

數(shù)據(jù)中心超大規(guī)模數(shù)據(jù)中心

2023-02-14 11:24:36

2011-12-16 09:54:17

網(wǎng)絡(luò)架構(gòu)網(wǎng)絡(luò)架構(gòu)系統(tǒng)架構(gòu)系統(tǒng)

2020-09-25 09:52:48

機(jī)器學(xué)習(xí)人工智能計(jì)算機(jī)

2024-04-30 07:00:00

公共云云策略云計(jì)算

2023-01-11 21:11:37

RabbitMQRocketMQ消息中間件

2021-03-16 10:28:41

數(shù)據(jù)中心IT云計(jì)算

2020-10-30 11:09:30

Pandas數(shù)據(jù)代碼

2020-02-10 08:00:38

AI 數(shù)據(jù)人工智能

2019-06-20 13:37:20

存儲(chǔ)

2021-03-24 11:13:12

數(shù)據(jù)中心云計(jì)算物聯(lián)網(wǎng)

2022-02-09 12:44:38

數(shù)倉Hologres運(yùn)維

2024-10-21 17:40:22

2017-09-22 10:31:17

超大規(guī)模微型數(shù)據(jù)中心

2013-05-28 17:03:34

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)