摘 要
三維圖形渲染一直以來是計算機圖形學領域的重點研究內容,在真實、準確又快速的圖形繪制問題上已經有了大量成熟的研究工作。近些年興起的深度神經網絡技術在計算機視覺領域也已經取得了顯著的成功?晌秩灸K在深度神經網絡中可以進行前向渲染,并可以對渲染參數的導數進行計算,這使得神經網絡可以對 3D 場景中的參數信息進行學習。
本文針對前向渲染速度慢、逆向渲染收斂速度慢、渲染效果的真實感與速度無法取得合適的平衡問題做了以下幾項工作:首先,本文在可微渲染中實現了基于微面元理論的基于物理的光照模型;谖锢淼墓庹漳P拖啾扔诨诮涷灥墓庹漳P透泳哂姓鎸嵏,相比于基于測量的方法更加快速。它在渲染速度和畫面質量上取得了合適的平衡,也使得神經網絡可以對渲染物體的粗糙度進行學習;其次,實現了對環境光遮蔽的支持,并也可以由此對環境光項進行求導。環境光遮蔽可以更好的表現物體局部間的光照遮擋關系,使畫面更加具有類似全局光照的真實感;最后,本文還提出了根據光照方向和法線方向進行優化的重要性邊采樣方法,加快了逆向渲染收斂速度,提高了穩定性。
在上述工作的基礎上,本文實現了一個簡單的基于邊采樣方法的可微物理渲染器 Kay.它支持對三角形片元組成的 3D 模型的加載、對相機和物體的參數進行設置、前向圖形繪制、反向傳播計算。它能以嵌入為重寫的 pytorch 自定義函數的方式在網絡中對輸入的渲染參數的導數進行計算。本文在圖形學領域經典的3D 模型上進行了實驗,驗證了該渲染器的能力。本文的算法模型對于三角形片元組成的幾何圖形平面可以進行有效的微分渲染,但對于體繪制和次表面散射模擬等復雜的光照效果無法有效地實現,對于不連續的紋理和程序生成材質參數也無法處理。
關鍵詞:可微渲染,基于物理渲染,邊采樣方法,環境光遮蔽
Abstract
Three-dimensional graphics rendering has always been a key research content in the field of computer graphics, and there has been a lot of mature research work on real, accurate and fast graphics rendering. The deep neural network technology that has emerged in recent years has also achieved remarkable success in the field of computer vision. The differentiable rendering module can perform forward rendering in the deep neural network, and can calculate the derivative of rendering parameters, which allows the neural network to learn parameter information in the 3D scene.
In this paper, the following work has been done to solve the problems of slow forward rendering, slow convergence speed of reverse rendering, and the inability to achieve a proper balance between the realism and speed of the rendering effect: First of all, this article adds support for the physically-based lighting model based on the microfacet theory in the differentiable renderer. The physics-based lighting model is more realistic than the experience-based lighting model, and is faster than the measurement-based method. It has achieved a proper balance between rendering speed and picture quality, and also allows the neural network to learn the roughness of the rendered object; Secondly, this article adds support for ambient light occlusion, and the ambient light term can also be derived from this. Ambient light occlusion can better express the light occlusion relationship between the parts of the object, making the picture more realistic like global illumination; finally, this paper also designs and implements the importance edge sampling method optimized according to the light direction and the normal direction , This method speeds up the convergence speed of reverse rendering and improves the stability.
Based on the above work, this paper implements a simple differentiable physical renderer Kay based on the edge sampling method. It supports loading of 3D models
composed of triangular fragments, setting of camera and object parameters, forward graphics drawing, and back propagation calculation. It can calculate the derivative of the input rendering parameters in the network by embedding it as a rewritten pytorch custom function. In addition, this article conducted experiments on classic 3D models in the field of graphics to verify the capabilities of the renderer. The algorithm model in this paper can perform effective differential rendering for the geometric figure plane composed of triangular fragments. It cannot effectively achieve complex lighting effects such as volume rendering and subsurface scattering simulation, and it cannot effectively achieve discontinuous textures and procedurally generated material parameters.
Key Words:Differentiable rendering, physically based rendering, edge sampling method, ambient light occlusion
目 錄
第1章 緒論
1.1 問題研究背景
隨著計算機科學與技術以及相關產業的不斷發展進步,目前很多領域都逐漸用到了計算機圖形學技術,如數字媒體藝術、醫療輔助、工業制造、虛擬現實教育、數據可視化、線上家裝、模擬軍事訓練和電子商務平臺等[1].而如今計算機圖形學的研究內容大體可以分為建模,渲染和動畫三部分。其中渲染和動畫技術在很大程度上來說分別屬于對現實世界的光照現象和物體運動現象進行合適尺度的數學建模和計算,因此有很多過去的相對較成熟的數學物理方法可以借鑒,并且隨著計算機硬件制造水平帶來的運算能力的提高,過去的一些對算力要求過高的方法也慢慢變得可以嘗試。然而在建模方面,雖然目前已經有很多計算機輔助建模技術,三維重建技術,基于圖像的三維模型生成技術等可以幫助研究人員和藝術家們進行三維模型創作的方法。但是,建模技術的發展仍然還沒有達到與渲染和動畫技術相匹配的發展水平,建模過程仍然需要大量的人工參與。
另一方面,近些年深度學習技術在計算機視覺,自然語言處理,醫學圖像處理等各個方面取得了顯著的成功[2].在面部重建[3]、三維重建[4]、位姿估計[5]等方面,深度學習技術也有著眾多應用。在這些方法中,可以通過在神經網絡中加入可微分渲染模塊,使建模和渲染模塊得到連接,整個網絡可以根據模型參數信息進行圖像渲染,然后根據圖像與目標圖像之間的誤差再對模型進行修正,從而實現從圖像進行建模。這類方法的成功得益于高效又準確的微分渲染方法,因此,微分渲染這一新興的研究領域十分具有研究價值。事實上,這一新興的研究方向也的確正在火熱發展。
微分渲染方法根本上來說仍屬于一種渲染算法。長期以來,基于物理的渲染算法是計算機圖形學領域備受關注的研究方向。相比于追求特定藝術表現形式的非真實感渲染算法,真實感渲染方法除了可以在藝術作品中帶來真實的視覺體驗,也給需要物理上準確的渲染應用領域提供了理論和工具基礎。然而,真實感的往往意味著需要更大的計算量,受限于當今的硬件設備的計算能力,較為復雜的繪制目標需要在真實感和繪制速度之間進行取舍[6].因此,平衡計算速度和繪圖質量的可微物理渲染方法研究也至關重要。
1.2 問題研究現狀
隨著深度學習的成功,可微渲染作為近幾年來計算機圖形學的渲染領域新興起的一個嶄新的研究方向,為傳統的圖形渲染領域帶來了新的活力。而傳統的圖形渲染領域大體可以分為實時渲染和離線渲染兩個子領域,其中前者對實時性要求較高,一般應用于游戲,交互領域。而后者則愿意犧牲時間以換取更高的畫面質量,基于物理的真實感離線渲染使用基于輻射度量學的光學原理進行光輻射量的精確計算,能夠極為真實的模擬現實世界的光照效果。而微分渲染則是在傳統的渲染方法對速度和質量要求的基礎上,又加上了可微這一條件。本節將按順序分別簡要的介紹傳統圖形渲染領域和可微渲染領域的一些重要的研究成果。
在渲染方面,基于光柵化的實時渲染方法和基于光線追蹤方法的離線渲染方法是兩大主流分支。光柵化方法的優勢在于可以充分地利用 GPU 設備的數據并行特性,和專門優化過的硬件處理單元來滿足實時繪制的需求,發展出了以渲染管線技術為核心的大量并行繪制方法[7; 8],這也是過去的計算機圖形學領域最主要和常見的教學內容,因此本文將不會再過多的論述光柵化的原理,僅將光柵化方法作為一種處理可見性方法。
在離線渲染方面,有基于光線追蹤、光子映射的方法等。其中,早在十九世紀七十年代,就有基于由 Arthur Appel 所提出的光線投射(Ray Casting)方法所創造的光線追蹤渲染方法[9],該方法根據光沿直線傳播的可逆原理,從觀察者的視角向著成像平面的像素點中心發出多條試探性的射線,沿著光線方向得到顏色。
1979 年,Turner Whitted 提出了遞歸光線追蹤算法(Recursive/Whitted-style RayTracing),該方法在得到射線與物體的相交點之后,還會進行光源可見性,反射和折射操作[10; 11],如此遞歸下去直到光線進入光源、或消失在場景外、或達到設定的最大遞歸深度。
1984 年,Robert L. Cook 在遞歸光線追蹤的基礎上提出了分布式光線追蹤算法(Distributed/Stochastic Ray Tracing),該方法增加了光線信息的時間信息和對光線的隨機采樣,實現了對半透明物體以及高光材質,運動模糊和景深,軟陰影等物理現象的渲染。值得注意的是,該方法將采樣維度從空間拓展到了時間,從而實現了運動模糊。下圖為遞歸式光線追蹤示意圖:
1986 年,James T. Kajiya 提出了具有重要意義的計算機圖形學的渲染方程[12].
該方程基于物理光學原理,描述了當一個場景中的光輻射能量達到穩定狀態之后的物體表面上各方向之間出射光,入射光的關系,該方程被譽為是計算機圖形渲染領域的里程碑式成果,它規范化的定義了渲染這一問題。從此之后,才有了無數的基于此的渲染算法的研究。隨后的諸多改進方法都是基于對該方程的簡化形式進行計算,從而實現具有真實感的三維場景光照效果,并有效地提高繪制速度。
在后續章節中,還會對這部分再作描述。
在 Rendering Equation 提出的同年,James T. Kajiya 提出了路徑追蹤算法(PathTracing),該方法開創了基于蒙特卡洛采樣的全局光照方法[13],該方法解渲染方程的方法是在光線分布的積分域內發射多條采樣射線以實現對渲染方程中球面積分值的估計,該方法基于蒙特卡洛積分,屬于無偏的計算方法,但是具有采樣數量與方差值互為倒數的特點,在采樣數量不足時,會出現明顯的噪點。如下頁圖 1.2 所示:
1997 年,在 Eric Veach 的博士畢業論文[14]中,提出了梅特波利斯光傳輸算法(Metropolis Light Transport)。該算法在對光照有突出貢獻的路徑的采樣點附近進行 Metropolis 采樣,生成新的采樣點并計算得出光照路徑。除此之外,還有優先對光源進行采樣的重要性采樣方法[15],以及基于分層采樣的提高采樣效率的方法[16],和針對復雜光線路徑的雙向路徑追蹤[17]等。
不同于以上基于蒙特卡洛方法的無偏算法,光子映射算法[18]屬于有偏的一致性算法,該方法分為光子追蹤和輻射量度估計兩部分,首先通過光線追蹤方法得到光子圖,然后在路徑的終點進行聚合操作。而近些年 NVIDIA 公司所主導流行的 RTX 實時光線追蹤技術則是結合了實時圖形渲染管線和深度學習中的圖像超分辨率技術來對低分辨率的渲染幀圖像進行降噪[19],因此,嚴格來說并不屬于傳統的圖形渲染計算方法。
另一方面,可微渲染(又名微分渲染、可逆渲染)是近幾年剛剛涌現的新領域,它常被用于在網絡中需要對輸入的渲染參數進行更新部分,以實現整個網絡從頭到尾的整體可微。
在微分渲染的研究方法中,從這些方法所處理的數據類型上可以分類為對網格、體素、點云、以及隱式表示四類[20],接下來本章將按順序主要介紹最為常見的,也是本文所屬的網格類方法,以及簡要介紹與微分渲染關系密切的神經渲染方法。其他三種方法不再過多介紹。
首先,網格(三角網格)是計算機圖形學中最廣泛使用的數據表示類型,3D形狀被表示為頂點信息和它們之間的連接信息,在繪制過程中,對于三角形內部的像素顏色求導可以通過自動微分技術實現,然而,對于邊界的不連續部分卻無從下手。為此,發展出了近似梯度方法和基于物理原理的非近似梯度的兩類處理邊界不可微問題的方法。
近似類方法最早由 Loper 和 Black 在 2014 年提出,并由此提出了 OPENDR框架[21],該框架可顯式地對模型參數和圖像觀測值之間的關系進行建模。該框架使表達正向圖形模型變得容易,然后可以自動獲取有關模型參數的導數并對其進行優化。
隨后,Kato 等人在 2018 年針對 OPENDR 存在的以下兩個問題提出了神經 3D網格渲染器[22](neural 3D mesh renderer NMR)。其一,由于 OpenDR 中差分濾波器的局部性,只有邊界像素上的漸變可以流向頂點,而其他像素上的漸變則無法被使用;诖说膬灮赡軐е螺^差的局部最小值。其二,是導數不能利用目標應用程序的損失梯度。為了克服這些問題,作者提出了非局部近似梯度,該梯度也使用了從損失函數反向傳播的像素梯度。作者后來也用類似于 OpenDR 的局部梯度替換了非局部梯度,以降低算法計算復雜度[23].
另一個思路是,為了能夠計算有用的梯度,其他一些方法沒有去近似反向渲染的過程,而是去考慮近似前向渲染的光柵化過程。 Rhodin 等[24]重新解釋了場景參數以確?晌⒎中。為了解決在物體邊界處的不連續性,該文的方法中每個物體都是由密度參數定義,該參數在對象中心具有最大不透明度,且對邊界是透 明的。使得渲染結果在邊緣變得模糊且平滑,同時從場景參數中刪除了尖角以確保了可區分性。Liu 等采用類似的方法,提出了一個名為"Soft Rasterizer"的渲染器[25].除了空間變得模糊之外,它還用概率方法代替了傳統的柵格化過程的基于z 緩沖區的三角形選擇,在概率方法中,投影到某個像素上的每個三角形都有一定的概率為該像素顏色做出貢獻。然后由一個聚合函數融合了每個像素的所有顏色概率,使得每個像素顏色被計算為對應于相關三角形的值的加權和,并且該運算是可微分的。
另一類用于處理網格數據的逆向渲染方法是基于物理的非近似的類型。2018年由李子懋(Li)等人所發表的 Edge Sampling 方法[26],是針對于攝像機,材質和幾何體等任意輸入參數計算基于物理渲染圖像的標量函數導數的第一項工作。
它使用基于蒙特卡洛光線追蹤的隨機采樣方法,可以估算像素區域積分的積分和的梯度。由于物體邊緣和物體之間相互遮擋的部分本質上是不連續的,因此該方法將積分計算分為平滑區域和不連續區域。對于被計算物體的平滑部分,采用具有自動微分的傳統區域采樣。對于不連續的部分,引入了一種新穎的邊緣采樣方法來捕獲邊界處的變化。他們的方法有一些基本的假設:網格之間沒有互穿,場景里沒有完美的點光源,也沒有完美的鏡面,并且場景是靜態的。由于這種方法也是本篇論文的理論基礎,所以具體的理論細節會在下一章詳細論述。
2019 年,Zhang 等提出了一種與 Li 相似的方法[27].與 Edge Sampling 方法不同,他們的方法除了支持三角網格外還支持對體積渲染[28]進行微分計算。這類方法的兩個主要缺點是渲染速度的緩慢和估計梯度的較大方差。這是因為找到所有對象邊的緣部分并對其進行采樣這一任務需要許多采樣。
2019 年,Loubet 等人不依賴于邊采樣方法,提出了重新參數化所有相關的積分,包括球形域上的像素積分的方法[29].盡管這種方法在計算上是有效的,它仍然不能支持完美鏡面的反射。2020 年,Zhang 等提出了一種估算路徑積分公式的導數的方法[30],Zhang 表示,路徑積分的微分可以分為內部項和邊界項,并提出了用于估計兩個分量的蒙特卡洛方法。這種方法是無偏的并且在計算上是有效的,因為它不需要顯式地找到對象輪廓邊緣。但是,由于單個渲染圖像的梯度計算需要幾秒鐘到幾十秒之間的時間,因此訓練神經網絡是不切實際的。
另一類使得渲染過程可微化的方法是從數據中學習渲染過程。這種方法通常稱為神經渲染[31].通常通過最小化圖像重建誤差來訓練輸出場景表示的場景生成網絡和圖形渲染網絡。得益于神經網絡的最新進展,如今神經渲染已能夠生成高質量圖像(例如各種基于 GAN 的圖像生成技術),并被用于許多應用,例如新穎的視圖合成,語義照片處理,面部和身體重建,以及創建逼真的頭像。通過從現實世界的數據中學習,神經渲染幾乎可以生成與真實世界無法區分的新穎圖像。
然而,另一方面,將其推廣到不同于訓練數據的場景,放置到由多個對象組成的場景以及進行人為修改的能力是有限的。另外,由于這種生成圖像的方式不同于傳統的圖像渲染模式,目前這一領域屬于計算機圖形學還是計算機視覺仍然存在爭議。
1.3 問題研究意義
在計算機圖形學領域,傳統的渲染領域一直以追求快速地繪制具有真實感的計算機圖像為目標,這類方法依賴于前人所發現的經典光學物理規律,在它的研究愛好者眼里無疑是精準而優雅的,也為充滿藝術創造的游戲,動畫,影視產業帶來了科技的活力。而在深度學習技術仍然被認為缺少可解釋性的今天,曾被認為不需要使用函數擬合近似方法的圖形渲染技術卻以可微渲染這一方式與神經網絡巧妙結合,發揮出了結合了自身的基于物理規則的真實感渲染能力與神經網絡強大的函數擬合能力的優勢,這一結合給很多應用領域帶來了新的方法和思路,某種程度上來說,它打通了 2D 與 3D 的橋梁。
另一方面,本文著眼于基于三角形片元的物理渲染方法而不是基于其他形式的數據表示或神經渲染方法則是因為,當今最流行的圖形數據仍然是網格,而GAN 這種從圖像到圖像的生成方法并沒有嚴格的光學數理原理作為理論保障,生成的圖像仍然不能說是物理真實的,因此在很多對于真實感比較敏感的領域,并不適用。而且,從本文上一小節所介紹的圖形渲染領域的發展脈絡來看,渲染方程的出現可以說是一道分水嶺,正是由于這個打通了輻射度量學和計算機圖形學的重要方程,圖形渲染技術才得以找到方向,在微分渲染領域也是一樣,只有先有了一個基于物理的精準嚴密的理論作為基礎,其他的或者是做簡化加速也好還是做特定風格的非真實感渲染也好,都會更加有發展潛力。因此,基于物理的可微渲染方法這一方向更加的具有研究意義。
最后,我國的動畫和影視產業相比于好萊塢,迪士尼等國際知名公司仍然技術十分落后。微分渲染這一技術在該行業目前具有實際的應用價值。并且,計算機圖形學這一領域雖然很多技術應用屬于娛樂產業,但是背后涉及到的數學物理方法,數值模擬技術等也說明了一個國家在文化產業輸出,意識形態塑造,工業軟件制造等其他方面的水平。
1.4 論文主要工作
本文通過對可微物理渲染方法進行分析,提出了改進的基于邊采樣方法的可微物理渲染方法,該方法在前人研究的基礎上,在對于材質模擬和提高采樣方法穩定性方面進行改進與融合,并在圖形學領域經典的模型上進行了實驗對比和分析,本文的主要貢獻如下:
。1)在可微渲染中,引入了基于微面元理論的光照模型,在對圖元進行光照計算和計算微分的過程中,增加了包括菲涅爾函數、幾何函數等在內的基于物理渲染技術的方法,以對材質進行更真實的刻畫,并使其可以對物體表面粗糙程度進行求導。
。2)增加了對環境光遮蔽效果的支持,可以更好的模擬全局光照的效果,并可以對環境光進行求導。
。3)針對物體在常見光照條件下的圖像光照分布特性,對于在相機空間中物體法線方向與視線接近垂直的三角形的邊以及相對于光源方向接近垂直的三角形的邊進行重要性采樣,減少迭代輪數,增加穩定性。
最后,以樣例場景測試作為本文方法的實驗,驗證本文提出的改進方案能否得到較快的繪制速度、較好的穩定性與渲染真實感,同時利用其他光照模型和采樣方法作為參照,進行了對比分析,以滿足微分渲染應用領域的需求。
1.5 論文組織架構
本文正文內容共有五個章節,每章節的組織形式與內容主題如下:
第一章,緒論部分,首先論述了計算機圖形學在當今社會生產生活中的重要作用,隨后說明了結合了傳統的圖形渲染技術和當今流行的深度學習技術的用于三維重建等領域的可微渲染技術的重要性,并分別簡要的介紹了傳統的渲染技術發展現狀和近幾年涌現的可微渲染技術的現狀。簡要說明了可微渲染領域主要的要解決的問題以及本文試圖解決的問題。最后簡要的介紹了論文所做的主要工作。
第二章介紹了現代圖形渲染和邊采樣可微渲染的理論基礎。首先,對基于輻射度量學的光學理論基礎進行了簡要的介紹,包括光傳播的物理規律、渲染方程、光線追蹤算法和將渲染問題視作積分問題的理論。然后,介紹了本文所基于的邊采樣可微渲染方法的理論知識,講解了將成像區域分為內部和邊界部分分別進行求導計算的對應方法和雷諾傳輸方程的理論。
第三章論述了基于邊采樣的可微物理渲染方法的具體理論和實現,以及主要工作。本文的工作主要包括三部分,其一,引入了基于微面元理論的物理光照模型來更加真實的表現物體的材質,同時也兼顧了繪制速度。其二,在可微渲染中增加了環境光遮蔽效果,更好的模擬全局光照效果。其三,提出了針對場景中光源和相機空間中法線方向所優化的重要性采樣方法,用于加速逆向渲染過程和提 高收斂穩定性。在這部分中首先介紹了重要性采樣的理論基礎,隨后解釋了本文改進方法對于輪廓和光照的邊界部分進行重要性采樣的理論優勢,并簡述了本文對應代碼實現的重要細節。
第四章詳細展示了本文的樣例場景和實驗過程,以及對實驗結果和相關數據的對比分析。首先,列出了進行本實驗所使用的機器硬件參數和軟件規格。然后展示了本次實驗的模型的來源和相關參數。隨后,將本次實驗的結果和過去的其他光照模型以及 Groud Truth 進行參照對比,以及與其他采樣方法對比證明了改進的采樣方法的優勢。
第五章對本文提出的方法所存在的優勢和局限性和實驗所表現出的真實表現進行了分析和總結,并提出了關于可微物理渲染、可微全局光照模型、可微編程和可微圖形學等未來研究方向的規劃論述,以及對進一步的研究工作大方向的簡要論述。
第 2 章 問題理論基礎
2.1 圖形渲染與光學原理
2.1.1 視覺成像原理
2.1.2 輻射度量學理論
2.1.3 渲染方程和蒙特卡洛積分法
2.1.4 路徑追蹤算法
2.2 邊采樣可微渲染方法
2.2.1 雷諾傳輸方程
2.2.2 可微渲染方程
2.3 本章小結
第 3 章 基于邊采樣的可微物理渲染方法
3.1 引入基于微面元理論的光照模型
3.2 環境光遮蔽支持
3.3 改進的邊采樣方法
3.3.1 重要性采樣理論
3.3.2 改進的重要性邊采樣方法
3.3.3 可微渲染算法流程和實現
3.4 本章小結
第 4 章 實驗對比分析
4.1 實驗環境介紹
4.1.1 硬件設備要求
4.1.2 軟件框架概述
4.1.3 實驗模型概述
4.2 實驗結果對比分析
4.3 本章小結
第 5 章 總結與展望
5.1 全文工作總結
本文實現了對常規的幾何圖形進行前向渲染,可以模擬漫反射、鏡面反射等常規光照現象。實現了可微渲染,使得渲染出來的圖像可以對輸入的參數進行求導。滿足了微分渲染的應用需求,主要的工作如下:
在微分渲染的著色過程中,引入了基于微面元理論的物理光照模型,使得渲染物體可以更好的模擬真實材質,并可以對粗糙度進行微分。引入了環境光遮蔽效果,該效果對于實現更加真實的環境光照具有重要作用。以及在逆向繪制部分增加了對于物體法線與視線、光照方向的重要性考慮,提出了改進的對于邊采樣的重要性采樣方法,從而加快了速度,提高了穩定性。
與此同時,本文的方法雖然一定程度上緩解了邊采樣微分渲染的速度問題,卻仍然具有微分渲染所共有的很多問題:對于一些場景參數變化較大的情況下,容易收斂到局部最小值;對于較為復雜的光照效果也無法很好的模擬;存在三角形片元之間互穿的病態情況等問題。
5.2 未來工作展望
隨著計算機圖形技術和深度學習技術的發展和融合,可微計算機圖形學和可微編程都取得了廣泛的關注,這兩個領域所擁有的不同特性結合出了特有的優勢。
可微渲染方法的出現給圖形渲染帶來了新的活力。進一步的優化微分渲染方法具有重要的研究和應用價值。除了可以將本文的 pytorch 實現自動微分全部整合進自行編寫的求導函數之外,正如上一小節最后所提出的不足之處所說,微分渲染方法還有很多問題可供研究。比如說:
在計算渲染參數導數的過程中,需要存儲大量的中間數據作為計算輔助,這對于內存的需求比較高,可以研究更加高效的計算流程使得整個算法對內存的需求減少。
研究如何將實時渲染中的經典算法移植到可微渲染中,從而實現更加快速的前向繪制和反向求導過程,擺脫來自于離線渲染思路中的全局光照算法的依賴。
參考文獻
[1] 黃楊昱;趯崟r全局光照的3D繪制引擎研究和開發[D].北京化工大學, 2015.
[2] Litjens G, Kooi T, Bejnordi B E, et al. A Survey onDeep Learning in Medical Image Analysis[J]. Medical ImageAnalysis, 2017, 42(9): 60-88.
[3] Genova K, Cole F, Maschinot A, et al. Unsupervisedtraining for 3d morphable model regression[C]. Proceedingsof the IEEE Conference on Computer Vision and PatternRecognition, 2018: 8377-8386.
[4] Tulsiani S, Zhou T, Efros A A, et al. Multi-viewsupervision for single-view reconstruction viadifferentiable ray consistency[C]. Proceedings of the IEEEconference on computer vision and pattern recognition, 2017:2626-2634.
[5] Liu Z, Zhu J, Bu J, et al. A survey of human poseestimation: the body parts parsing based methods[J].Journal of Visual Communication&Image Representation, 2015,32: 10-19.
[6] 扎西次仁。復雜場景中實時全局光照模型研究[D].北京郵電大學, 2015.
[7] 秦家水; HDR 的實時光照技術研究[D].西安科技大學,2010.
[8] 楊永奇;隗w像素全局光照算法模型的設計與實現[D].吉林大學, 2019.
[9] Wald I, Slusallek P, Benthin C, et al. Interactiverendering with coherent ray tracing[C]. Computer graphicsforum, 2001: 153-165.
[10] Whitted T. An improved illumination model for shadeddisplay[C].Proceedings of the 6th annual conference onComputer graphics and interactive techniques, 1979: 14.
[11] Macdonald J D, Booth K S. Heuristics for ray tracingusing space subpision[J]. The Visual Computer, 1990, 6(3):153-166.
[12] Kajiya J T. The rendering equation[C]. Proceedings ofthe 13th annual conference on Computer graphics andinteractive techniques, 1986: 143-150.
[13] Kay T L, Kajiya J T. Ray tracing complex scenes[J].ACM SIGGRAPH computer graphics, 1986, 20(4): 269-278.
[14] Veach E. Robust Monte Carlo methods for lighttransport simulation[M]. Stanford University, 1998.
[15] Lafortune E. Mathematical models and Monte Carloalgorithms for physically based rendering[J]. Departmentof Computer Science, Faculty of Engineering, KatholiekeUniversiteit Leuven, 1996, 20: 74-79.
[16] Girard P, Landrault C, Pravossoudovitch S. Delay-faultdiagnosis by critical-path tracing[J]. IEEE Design & Testof Computers, 1992, 9(4): 27-32.
[17] Lafortune E P, Willems Y D. Rendering participatingmedia with bidirectional path tracing[C]. EurographicsWorkshop on Rendering Techniques, 1996: 91-100.
[18] Krüger J H, Bürger K, Westermann R. InteractiveScreen-Space Accurate Photon Tracing on GPUs[J]. RenderingTechniques, 2006, 2006: 17th.
[19] Wang Z , Chen J , Hoi S . Deep Learning for ImageSuper-resolution: A Survey[J]. IEEE Transactions on PatternAnalysis and Machine Intelligence, 2020, PP(99):1-1.
[20] Kato H, Beker D, Morariu M, et al. Differentiablerendering: A survey[J]. arXiv preprint arXiv:.12057, 2020.
[21] Loper M M, Black M J. OpenDR: An approximatedifferentiable renderer[C]. European Conference onComputer Vision, 2014: 154-169.
[22] Kato H, Ushiku Y, Harada T. Neural 3d mesh renderer[C].Proceedings of the IEEE conference on computer vision andpattern recognition, 2018: 3907-3916.
[23] Kato H, Harada T. Learning view priors for singleview 3d reconstruction[C]. Proceedings of the IEEE/CVFConference on Computer Vision and Pattern Recognition, 2019:9778-9787.
[24] Rhodin H, Robertini N, Richardt C, et al. A versatilescene model with differentiable visibility applied togenerative pose estimation[C]. Proceedings of the IEEEInternational Conference on Computer Vision, 2015: 765-773.
[25] Liu S, Li T, Chen W, et al. Soft rasterizer: Adifferentiable renderer for image-based 3d reasoning[C].Proceedings of the IEEE/CVF International Conference onComputer Vision, 2019: 7708-7717.
[26] Li T-M, Aittala M, Durand F, et al. Differentiablemonte carlo ray tracing through edge sampling[J]. ACMTransactions on Graphics, 2018, 37(6): 1-11.
[27] Zhang C, Wu L, Zheng C, et al. A differential theoryof radiative transfer[J]. ACM Transactions on Graphics,2019, 38(6): 1-16.
[28] Chandrasekhar S. Radiative transfer[M]. CourierCorporation, 2013.
[29] Loubet G, Holzschuch N, Jakob W. Reparameterizingdiscontinuous integrands for differentiable rendering[J].ACM Transactions on Graphics, 2019, 38(6): 1-14.
[30] Zhang C, Miller B, Yan K, et al. Path-spacedifferentiable rendering[J]. ACM Trans. Graph., 2020, 39(6):143.
[31] Eslami S A, Rezende D J, Besse F, et al. Neural scenerepresentation and rendering[J]. Science, 2018, 360(6394):1204-1210.
[32] Zhao S, Jakob W, Li T-M: Physics-based differentiablerendering: from theory to implementation, ACM SIGGRAPH 2020Courses, 2020: 1-30.
[33] Mitchell D P, Netravali A N. Reconstruction filtersin computer-graphics[J]. ACM Siggraph Computer Graphics,1988, 22(4): 221-228.
[34] Flanders H. Differentiation under the integral sign[J].The American Mathematical Monthly, 1973, 80(6): 615-627.
[35] Walter B, Marschner S R, Li H, et al. Microfacet Modelsfor Refraction through Rough Surfaces[J]. Renderingtechniques, 2007, 2007: 18th.
[36] Hertzmann A. Introduction to 3d non-photorealisticrendering: Silhouettes and outlines[J]. Non-PhotorealisticRendering. SIGGRAPH, 1999, 99(1)。
[37] Paszke A, Gross S, Massa F, et al. Pytorch: Animperative style, high-performance deep learninglibrary[J]. arXiv preprint arXiv:.01703, 2019.
[38] Wald I, Woop S, Benthin C, et al. Embree: a kernelframework for efficient CPU ray tracing[J]. ACMTransactions on Graphics, 2014, 33(4): 1-8.
[39] Matusik W. A data-driven reflectance model[D].Massachusetts Institute of Technology, 2003.
[40] Blinn J F. Models of light reflection for computersynthesized pictures[C]. Proceedings of the 4th annualconference on Computer graphics and interactive techniques,1977: 192-198.
致 謝
一轉眼,我的學生生涯也要結束了;貞涍^往的經歷,讓我知道了自己是一個幸運而執著的人。忘不了小時候第一次玩游戲時的震撼和感動,讓我對計算機游戲產生興趣。大學興沖沖的報了計算機專業,被它的精美和神奇所征服。
接觸到計算機圖形學讓我知道世界上還有這么好玩的學科。追隨著興趣的指引,我摸索著向前學習,雖然在這個過程中屢次認識到自己的渺小和平庸,但也一次又一次地沉迷在接觸到新鮮有趣的知識的快樂中。隨著眼界的開闊,我也逐漸地打開了思想的寬度,樂意去接觸世間其他精美的智慧結晶。研究生這三年是自由幸福的三年,在這三年里我擁有充足的時間去接觸我感興趣的知識,也足夠幸運認識了很棒的老師和同學以及可愛的女朋友。
感謝我的導師盧奕南,盧老師既是老師又像是和藹可親的朋友,在我的學習之路上為我提供關心和幫助。還要感謝數學學院的伍鐵如老師,二位老師組織的和數學學院一起的討論班讓我開闊了眼界。感謝 A431 實驗室的同學們,他們是一群活潑又可愛的人。其中特別鳴謝媛兒姐以及她的小伙伴給我學習和發展上的建議,以及讓我可以蹭晚上的車回寢室。感謝我的另外三個也姓張的室友,大家各有各的特點,陪我度過了有趣味的寢室生活。大家都是很優秀的人,讓我感覺受益匪淺。
最后,特別感謝我的父母親朋,沒有你們的關心和愛護就沒有現在的我。
尤為感謝母親這么多年的付出,希望她可以活出退休之后屬于自己的人生精彩。
也要感謝我的妹妹對我平日里的關心。感謝我的女朋友,也是 Kay 渲染器的命名者,你的陪伴讓我的生活充滿陽光。
世界上有趣的事物真是太多了,能夠感受這么多奇妙的感受,體會到生活的美好,讓我感到十分幸運。
(如您需要查看本篇畢業設計全文,請您聯系客服索。