計算機圖形學:原理及實踐
本書是計算機圖形學領域的著作,系統(tǒng)全面地介紹了計算機圖形學領域的關鍵概念、算法、技術和應用。本書先介紹了如何創(chuàng)建二維和三維圖像,接下來介紹了更為廣泛的話題,包括圖像表示和操縱、圖像和信號處理、圖像的縮放、紋理和紋理映射、交互技術、曲線分割、曲面分割、形狀的隱式表示、網(wǎng)格、光、材料和散射、顏色、光傳輸、概率和蒙特卡洛集成、動畫、空間數(shù)據(jù)結(jié)構、現(xiàn)代圖形學硬件等內(nèi)容。
本書面向?qū)W生、研究人員和從業(yè)人員,介紹計算機圖形學的許多重要概念和思想。其中一些概念讀者并不陌生,它們早已出現(xiàn)在廣為流行的學術出版物、技術報告、教科書和行業(yè)報刊中。在某個概念出現(xiàn)一段時間后再將其寫入教科書的好處是,人們可以更充分地理解它的長遠影響并將其置于一個更大的背景中予以領悟。本書將盡可能詳細地介紹這些概念(當然也略過了一些曾經(jīng)火熱但現(xiàn)在已不再重要的概念),并以一種清晰、流暢的風格將它們呈現(xiàn)給初學者。
本書屬于第二代圖形學教科書:我們并不將之前的所有工作全部認定為天然合理的,而是按今天的理解重新審視它們,進而更新其原有的陳述方式。
甚至一些最基本的問題也可能變得非常棘手。舉例來說,假如要設計一個適用于低光照環(huán)境(如電影院的暗環(huán)境)的程序。顯然,我們不能采用亮屏幕顯示器,這意味著在顯示程序中采用亮度對比來區(qū)分環(huán)境中的不同對象不再適宜。也許可以改用彩...
本書面向?qū)W生、研究人員和從業(yè)人員,介紹計算機圖形學的許多重要概念和思想。其中一些概念讀者并不陌生,它們早已出現(xiàn)在廣為流行的學術出版物、技術報告、教科書和行業(yè)報刊中。在某個概念出現(xiàn)一段時間后再將其寫入教科書的好處是,人們可以更充分地理解它的長遠影響并將其置于一個更大的背景中予以領悟。本書將盡可能詳細地介紹這些概念(當然也略過了一些曾經(jīng)火熱但現(xiàn)在已不再重要的概念),并以一種清晰、流暢的風格將它們呈現(xiàn)給初學者。
本書屬于第二代圖形學教科書:我們并不將之前的所有工作全部認定為天然合理的,而是按今天的理解重新審視它們,進而更新其原有的陳述方式。
甚至一些最基本的問題也可能變得非常棘手。舉例來說,假如要設計一個適用于低光照環(huán)境(如電影院的暗環(huán)境)的程序。顯然,我們不能采用亮屏幕顯示器,這意味著在顯示程序中采用亮度對比來區(qū)分環(huán)境中的不同對象不再適宜。也許可以改用彩色顯示,但遺憾的是,在低光照環(huán)境中人們對顏色的感知同樣有所降低,某些顏色的文字要比其他顏色更易讀。在這種情況下,光標是否仍容易被用戶看到呢?一種簡單的應對方式是利用人眼對運動的感知能力,讓光標持續(xù)抖動。于是,一個看似簡單的問題最后涉及交互界面設計、顏色理論以及人類感知等領域。
盡管上述例子很簡單,但仍隱含了某些假設:采用圖形方式輸出(而不是通過觸覺或封閉良好的耳機來輸出);顯示設備既非常規(guī)的影院屏幕,也不是頭盔顯示器。其中也包含了一些顯式的假設,例如采用光標(也有一些用戶界面不使用光標)。上述每一種假設都是對用戶界面的一種選擇。
遺憾的是,這種多方面內(nèi)容相互交織的關系使得我們不可能完全按照某種順序來講述各主題,而且還能很好地介紹它們的研究動因和背景,也就是說,這些主題無法以線性方式展開。也許,我們可以先介紹它們涉及的所有相關的數(shù)學、感知理論或其他內(nèi)容,總之,將較為抽象的內(nèi)容和主題放在前面介紹,然后再介紹圖形學應用。盡管這種內(nèi)容組織方式可能便于參考(讀者很容易找到講述一般化向量叉積的有關章節(jié)),但對一本教科書而言,其效果并不好,原因是那些涉及主題研究動因的應用都要等到書的最后才會介紹。另一種展開方式是采取案例研究的思路,分別介紹各種不同的任務(難度不斷增大),然后根據(jù)問題的需要講述相關內(nèi)容。在某些情況下,這確實是一種自然的內(nèi)容演繹方式,但難以對各主題做出整體性、結(jié)構化的呈現(xiàn)。本書是這兩種方式的折中:開始部分介紹了廣泛使用的數(shù)學知識和常規(guī)的符號標記方式,然后逐個主題展開內(nèi)容,根據(jù)需要補充介紹必要的數(shù)學工具。熟悉數(shù)學的讀者完全可以跳過開始部分而不致錯過任何圖形學知識。其他人則可從這些章節(jié)中獲益良多。教師授課時可根據(jù)需要對其進行取舍。基于主題的章節(jié)安排方式可能會導致內(nèi)容上的重復。例如,本書從不同的細節(jié)層次對圖形流水線進行了多次討論。與其讓讀者回頭參考之前的章節(jié),有時我們會再次陳述部分內(nèi)容,使對該問題的討論更為流暢。畢竟讓讀者返回500頁之前去查看一幅圖并非令人愜意的事。
對本教材的作者來說,另一個挑戰(zhàn)是選材的廣度。本書的第1版確實覆蓋了當時圖形學出版物中的大部分內(nèi)容,第2版至少也約略提到了其中大部分的研究工作。本版教材不再追求內(nèi)容的覆蓋度,理由很簡單:當本書第2版出版時,我們一只手就能拿起SIGGRAPH會議的全部論文集(這些論文幾乎包含了圖形學領域的代表性工作);如今,SIGGRAPH會議的全部論文集(僅僅是許多圖形學出版物中的一種)疊在一起高達數(shù)米。即使是電子版的教材也無法將全部內(nèi)容塞進1000頁中。本書這一版旨在為讀者指明在哪里可以找到和復制當今的大部分SIGGRAPH論文。下面是幾點說明:
●第一,計算機圖形學與計算機視覺的交叉面越來越大,但這并不能構成讓我們將本書寫成計算機視覺教材的理由,盡管一些有該領域豐富知識的人已經(jīng)這樣做了。
●第二,計算機圖形學涉及編程,盡管許多圖形學應用題目很大,但本書并沒有試圖講授編程和軟件工程。當然,在書中我們也會簡要討論一些專門針對圖形學的編程方法(尤其是排錯)。
●第三,許多圖形學應用都提供了用戶界面。在編寫本書時,大多數(shù)界面均基于Windows操作系統(tǒng),采用菜單和鼠標進行交互。不過基于觸覺的交互界面正變得越來越常見。交互界面的研究曾經(jīng)是圖形學的一部分,但如今已成為一個獨立的領域(盡管它仍和圖形學有很大的交叉)。我們假定讀者在編寫含用戶界面的程序方面已具備了一些經(jīng)驗,因此本書將不再對它們做深入討論(除了其實現(xiàn)過程與圖形學密切關聯(lián)的3D界面外)。
毋庸置疑,圖形學領域的研究論文區(qū)別很大:有些涉及很多的數(shù)學表述;有些介紹的是一個大規(guī)模的系統(tǒng),涉及各種復雜的工程因素的權衡;還有些涉及物理學、色彩理論、地形學、攝影學、化學、動物學等各個學科的知識。我們的目標是讓讀者領會這些論文中的圖形學貢獻,而其他的相關知識則需要讀者在課外自行學習。
歷史上的方法
