今天閆令琪老師主要介紹了圖形學的相關應用及本課涉及的內容概述。
一、計算機圖形學概述:
計算機圖形學(Computer graphics,CG)是研究計算機在硬件和軟件的幫助下創建計算機圖形的科學學科,是計算機科學的一個分支領域,主要關注數字合成與操作視覺的圖形內容。簡單的說它與計算機視覺(Computer vision,CV)的區別就是,CG是通過幾何圖形等構建物體,而CV則是讓計算機理解捕捉到的畫面,理解物體是什么,CV具有一定的推測性。
(一)相關應用
圖形學目前已經被廣泛應用到各行各業,常見的有電影特效制作、數據可視化、虛擬現實、模擬(Simulation,也可稱為仿真)等。下面將通過一些圖片舉例展示。(課件一直下載不下來。。。展示內容來源他處)
(二)基礎知識
1. 圖形與圖像
- 圖象純指就計算機內以位圖(Bitmap)形式存在的灰度信息
- 圖形含有幾何屬性,更強調場景的幾何表示,是由場景的幾何模型和景物的物理屬性共同組成
- 圖形主要分為兩類:
①基於線條信息表示
②明暗圖(Shading)
2. 三維幾何建模
要在計算機中表示一個三維物體,首先要有它的幾何模型表達。因此,三維模型的建模是計算機圖形學的基礎,是其他內容的前提。表達一個幾何物體可以是用數學上的樣條函數或隱式函數來表達;也可以是用光滑曲面上的采樣點及其連接關系所表達的三角網格來表達(即連續曲面的分片線性逼近),如下圖所示。
在對三維幾何模型的構建過程中,還會涉及到很多需要處理的幾何問題,比如數據去噪(denoising or smoothing)、補洞(repairing)、簡化(simplification)、層次細節(level of detail)、參數化(parameterization)、變形(deformation or editing)、分割(segmentation)、形狀分析及檢索(shape analysis and retrieval)等。這些問題構成“數字幾何處理”的主要研究內容。
3. 渲染
上個世紀80-90年代研究的比較多些,包含了大量的渲染模型,包括局部光照模型(Local Illumination Model)、光線跟蹤算法(Ray Tracing)、輻射度(Radiosity)等,以及到后面的更為復雜、真實、快速的渲染技術,比如全局光照模型(Global Illumination Model)、Photo mapping、BTF、BRDF、以及基於GPU的渲染技術等。
現在的渲染技術已經能夠將各種物體,包括皮膚、樹木、花草、水、煙霧、毛發等渲染得非常逼真。一些商業化軟件(比如Maya, Blender, Pov Ray等)也提供了強大的真實感渲染功能,在計算機圖形學研究論文中作圖中要經常用到這些工具來渲染漂亮的展示圖或結果圖。
然而,已知的渲染實現方法,仍無法實現復雜的視覺特效,離實時的高真實感渲染還有很大差距,比如完整地實現適於電影渲染(高真實感、高分辨率)制作的RenderMan標准,以及其他各類基於物理真實感的實時渲染算法等。因此,如何充分利用GPU的計算特性,結合分布式的集群技術,從而來構造低功耗的渲染服務是發展趨勢之一。
4. 動畫(Animation)
動畫是采用連續播放靜止圖像的方法產生物體運動的效果。計算機動畫借助於編程或動畫制作軟件生成一系列的景物畫面,是計算機圖形學的研究熱點之一。研究方向包括:人體動畫,關節動畫,運動動畫,腳本動畫,具有人的意識的虛擬角色的動畫系統等。另外,高度物理真實感的動態模擬,包括對各種形變、水、氣、雲、煙霧、燃燒、爆炸、撕裂、老化等物理現象的真實模擬,也是動畫領域的主要問題。這些技術是各類動態仿真應用的核心技術,可以極大地提高虛擬現實系統的沉浸感。計算機動畫的應用領域廣泛,比如動畫片制作,廣告、電影特技,訓練模擬,物理仿真,游戲等。
網上的一些3D動畫的視頻:
-
The Killer Bean: http://v.youku.com/v_show/id_XMjI5ODE2MTEy.html
-
房地產動畫廣告宣傳片: http://v.youku.com/v_show/id_XNTc1OTE4MDMy.html
二、課程內容概述:
本課程將全面而系統地介紹現代計算機圖形學的四大組成部分:(1)光柵化成像,(2)幾何表示,(3)光的傳播理論,以及(4)動畫與模擬。每個方面都會從基礎原理出發講解到實際應用,並介紹前沿的理論研究。通過本課程,你可以學習到計算機圖形學背后的數學和物理知識,並鍛煉實際的編程能力。
顧名思義,作為入門,本課程會盡可能的覆蓋圖形學的方方面面,把每一部分的基本概念都盡可能說清楚,讓大家對計算機圖形學有一個完整的、自上而下的全局把握。全局的理解很重要,學完本課程后,你會了解到圖形學不等於 OpenGL,不等於光線追蹤,而是一套生成整個虛擬世界的方法。從本課程的標題,大家還可以看到“現代”二字,也就是說,這門課所要給大家介紹的都是現代化的知識,也都是現代圖形學工業界需要的圖形學基礎。
本課程與其它圖形學教程還有一個重要的區別,那就是本課程不會講授 OpenGL,甚至不會提及這個概念。本課程所講授的內容是圖形學背后的原理,而不是如何使用一個特定的圖形學 API。在學習完這門課的時候,你一定有能力自己使用 OpenGL 寫實時渲染的程序。另外,本課程並不涉及計算機視覺、圖像視頻處理、深度學習,也不會介紹游戲引擎與三維建模軟件的使用。
參考書籍
虎書《Fundamentals of Computer Graphics》中文版目前可參考第三版,英文第三版、第四版均可。
課程大綱
參考博客:https://www.cnblogs.com/SeekHit/p/7597787.html
參考鏈接:http://staff.ustc.edu.cn/~lgliu/Resources/CG/What_is_CG.htm