Lecture 1: Overview of Computer Graphics
概述
本章節(jié)主要介紹計(jì)算機(jī)圖形的綜述。
What is Computer Graphics? 什么是計(jì)算機(jī)圖形學(xué)?Why study Computer Graphics? 為什么要學(xué)習(xí)計(jì)算機(jī)圖形學(xué)?Course Topics 計(jì)算機(jī)圖形學(xué)研究的主要課題聲明
Important Announcement 【聲明】and Disclaimer【免責(zé)】
This course is not supported by any funding agencies in the United States and China. By making this course free to the public, the instructor is not getting paid by either the US or China. Using Chinese for instruction is partly for the convenience of the instructor, and partly aimed at widening the diversity of audiences, including Chinese-speaking Americans. An English version of this course is being worked out actively by the instructor.
重要聲明及免責(zé)聲明
本課程不受美國和中國任何資助機(jī)構(gòu)的支持。通過向公眾免費(fèi)提供這門課程,教師既沒有得到美國的報(bào)酬,也沒有得到中國的報(bào)酬。使用中文教學(xué),一方面是為了方便教師,另一方面是為了擴(kuò)大受眾的多樣性,包括說中文的美國人。這門課程的英文版本正在由老師積極制定中。英文
課程的PPT主要是英文為主,這里對于普通人而言,可能已經(jīng)卡主一批人了。特別是80、90年代的農(nóng)村基礎(chǔ)教育,英語,特別是口語教育,是非常不敢恭維的。但是,活到老,學(xué)到老,還是爭取跨越這一關(guān)。
學(xué)習(xí)是有規(guī)律的,和打籃球是很相似的,甚至和很多事情都是一樣的。首先就是基礎(chǔ),在基礎(chǔ)沒有完全掌握之前,沒必要去嘗試花里胡哨的技術(shù),一定要做到基礎(chǔ)非常非常扎實(shí),然后,發(fā)現(xiàn)一切奇淫巧技,自然一氣呵成。
籃球的基礎(chǔ),就是拍球,運(yùn)球,身體。英語的基礎(chǔ),就是讀、聽。我們通常音標(biāo)這一關(guān),都過不去,所以,不管讀還是寫,都很別扭,別扭自然就不會(huì)有成就感,不會(huì)有興趣。剛好筆者最近也在重新學(xué)習(xí)英語,從基礎(chǔ)開始,把自己當(dāng)個(gè)嬰兒一樣開始自我教育。B站是個(gè)好東西,很多學(xué)習(xí)資源:
基礎(chǔ)
https://www.bilibili.com/video/BV1Y4411M7Ac?spm_id_from=333.337.search-card.all.click 發(fā)音
https://www.bilibili.com/video/BV1Dk4y1q781?spm_id_from=333.337.search-card.all.click 聽力
新概念:
新概念一冊 https://www.bilibili.com/video/BV1HJ411q7Vw?from=search&seid=4309106971382904256新概念二冊https://www.bilibili.com/video/BV1iJ411t77g?from=search&seid=4309106971382904256
實(shí)戰(zhàn):
什么是圖形學(xué)?

什么是計(jì)算機(jī)圖形學(xué)?計(jì)算機(jī)圖形學(xué)(Computer Graphics,簡稱CG)的內(nèi)容比較豐富,與很多學(xué)科都有交叉,因此筆者認(rèn)為是無法嚴(yán)格定義的。
在“Wiki百科”和“百度百科”上,對“計(jì)算機(jī)圖形學(xué)”的解釋為:計(jì)算機(jī)圖形學(xué)是一種使用數(shù)學(xué)算法將二維或三維圖形轉(zhuǎn)化為計(jì)算機(jī)顯示器的柵格形式的科學(xué)。簡單地說,計(jì)算機(jī)圖形學(xué)的主要研究內(nèi)容就是研究如何在計(jì)算機(jī)中表示圖形、以及利用計(jì)算機(jī)進(jìn)行圖形的計(jì)算、處理和顯示的相關(guān)原理與算法。雖然通常認(rèn)為CG是指三維圖形的處理,事實(shí)上也包括了二維圖形及圖像的處理。
狹義地理解,計(jì)算機(jī)圖形學(xué)是數(shù)字圖象處理或計(jì)算機(jī)視覺的逆過程:計(jì)算機(jī)圖形學(xué)是用計(jì)算機(jī)來畫圖像的學(xué)科,數(shù)字圖象處理是把外界獲得的圖象用計(jì)算機(jī)進(jìn)行處理的學(xué)科,計(jì)算機(jī)視覺是根據(jù)獲取的圖像來理解和識(shí)別其中的物體的三維信息及其他信息。
注意,這些都是不確切的定義,實(shí)際上,計(jì)算機(jī)圖形學(xué)、數(shù)字圖象處理和計(jì)算機(jī)視覺在很多地方的區(qū)別不是非常清晰,很多概念是相通的,而且隨著研究的深入,這些學(xué)科方向不斷的交叉融入,形成一個(gè)更大的學(xué)科方向,可稱之為“可視計(jì)算”(Visual Computing)。這是后話,此處不詳述。
計(jì)算機(jī)圖形學(xué)和計(jì)算機(jī)視覺的關(guān)系

計(jì)算機(jī)視覺,是給你一張Image,需要提取出Image中有哪些信息的過程。
實(shí)際工作中,以CAD圖紙識(shí)別,到CAD在WebGL中渲染為例。

目前主流解析CAD圖紙數(shù)據(jù),然后經(jīng)過服務(wù)器處理,輸出數(shù)據(jù)流給前端繪制的流程如下:

也可以參考之前寫過的文章:云設(shè)計(jì)系列
解析CAD的庫很多,比如ezdxf。因?yàn)镃AD中都是線段,總歸有些不正確,或者缺少信息的數(shù)據(jù),如何能正確識(shí)別出來?這就需要結(jié)合AI技術(shù)了,通過不停的訓(xùn)練,提升識(shí)別準(zhǔn)確率。比如如何識(shí)別一段線是門?
其實(shí)自動(dòng)識(shí)別,也是一種提升原始圖紙數(shù)據(jù)進(jìn)入業(yè)務(wù)系統(tǒng)的效率吧。
總之,一切都是為了提升生產(chǎn)效率。
為什么學(xué)習(xí)計(jì)算機(jī)圖形學(xué)
Video Games
電子游戲的發(fā)展史,完全就是圖形學(xué)技術(shù)的發(fā)展史啊,可以參考文章
筆者最愛玩的還是NBA2K,我猜測里面比較困難的是對球員動(dòng)作數(shù)據(jù)的訓(xùn)練吧。

Movies
阿凡達(dá)

Animation
Renderbus云渲染農(nóng)場-海量機(jī)器云渲染平臺(tái),高效3D云渲染服務(wù)
Design
家裝方向:酷家樂、躺平家裝設(shè)計(jì)
工裝方向:Indeco
Visualization
金融:AntV
圖表:eCharts
智慧城市:BIM、CIM、GIS、Mapbox等
工業(yè)可視化:最近也比較火熱,但是對數(shù)據(jù)比較欠缺,更多的停留在渲染特效層面。
醫(yī)療:
Virtual Reality、Augmented Reality
VR、AR最近就更火了,元宇宙的世界,豐富多彩。
Simulation
仿真,工業(yè)仿真,自動(dòng)駕駛仿真,智慧城市仿真。
英偉達(dá)的OMNIVERSE,對接和創(chuàng)建無限創(chuàng)意世界、團(tuán)隊(duì)和數(shù)字孿生。
GUI
可以了解操作系統(tǒng)的GUI發(fā)展史。
Typography
3D打印
總之:

四大組成部分
劉利剛的分類:建模(Modeling)、渲染(Rendering)、動(dòng)畫(Animation)和人機(jī)交互(Human–computer Interaction, HCI)。
本課程將全面而系統(tǒng)地介紹現(xiàn)代計(jì)算機(jī)圖形學(xué)的四大組成部分:(1)光柵化成像,(2)幾何表示,(3)光的傳播理論,以及(4)動(dòng)畫與模擬。
Modeling
側(cè)重于數(shù)據(jù),如何做出CAD、CAE、Revit軟件?國內(nèi)目前非?;馃?,因?yàn)樯婕暗劫Q(mào)易戰(zhàn)、科技戰(zhàn)。需要相關(guān)計(jì)算輔助幾何的知識(shí)。
鏈接:https://pan.baidu.com/s/175FPqUkCsc0aSsyw07-W8Q?pwd=r62n
提取碼:r62n
--來自百度網(wǎng)盤超級會(huì)員V6的分享

要在計(jì)算機(jī)中表示一個(gè)三維物體,首先要有它的幾何模型表達(dá)。因此,三維模型的建模是計(jì)算機(jī)圖形學(xué)的基礎(chǔ),是其他內(nèi)容的前提。表達(dá)一個(gè)幾何物體可以是用數(shù)學(xué)上的樣條函數(shù)或隱式函數(shù)來表達(dá);也可以是用光滑曲面上的采樣點(diǎn)及其連接關(guān)系所表達(dá)的三角網(wǎng)格來表達(dá)(即連續(xù)曲面的分片線性逼近),如下圖所示。
三維建模方法主要包含如下的一些方法:
計(jì)算機(jī)輔助設(shè)計(jì)(CAD)中的主流方法是采用NURBS(非均勻有理B-樣條、Bezier曲線曲面)方法(已成為CAD工業(yè)領(lǐng)域的標(biāo)準(zhǔn)),這也是計(jì)算機(jī)輔助幾何設(shè)計(jì)(CAGD)所研究的主要內(nèi)容。此類表達(dá)方法有一些難點(diǎn)問題仍未解決,比如非正規(guī)情況下的曲面光滑拼合,復(fù)雜曲面表達(dá)等。這部分涉及的數(shù)學(xué)比較多,國內(nèi)做這塊的學(xué)者比較多些。細(xì)分曲面(Subdivision surface)造型方法,作為一種離散迭代的曲面構(gòu)造方法,由于其構(gòu)造過程樸素簡單以及實(shí)現(xiàn)容易,是一個(gè)方興未艾的研究熱點(diǎn)。經(jīng)過十多年的研究發(fā)展,細(xì)分曲面造型取得了較大的進(jìn)展,包括奇異點(diǎn)處的連續(xù)性構(gòu)造方法以及與GPU圖形硬件相結(jié)合的曲面處理方法。利用軟件的直接手工建模。現(xiàn)在主流的商業(yè)化的三維建模軟件有Autodesk 3D Max和 Maya。其他還有面向特定領(lǐng)域的商業(yè)化軟件,比如面向建筑模型造型的Google Sketchup,面向CAD/CAM/CAE的CATIA和AutoCAD,面向機(jī)械設(shè)計(jì)的SolidWorks,面向造船行業(yè)的Rhino等。這些軟件需要建模人員有較強(qiáng)的專業(yè)知識(shí),而且需要一定時(shí)期的培訓(xùn)才能掌握,建模效率低而學(xué)習(xí)門檻高,不易于普及和讓非專業(yè)用戶使用?;诠P劃或草圖交互方式的三維建模方法。草圖交互方式由于其符合人類原有日常生活中的思考習(xí)慣,交互方式直觀簡單,是最近幾年研究的熱點(diǎn)建模方法。其難點(diǎn)是根據(jù)具體的應(yīng)用場合,如何正確地理解和識(shí)別用戶的交互所表達(dá)的語義,構(gòu)造出用戶所希望的模型?;谡Z法及規(guī)則的過程式建模方法。特別適合具有重復(fù)特征和結(jié)構(gòu)化的幾何物體與場景,比如建筑、樹木等。最近幾年有較多的論文及較大的發(fā)展。基于圖像或視頻的建模方法。這是傳統(tǒng)的計(jì)算機(jī)視覺所要解決的基本問題。在計(jì)算機(jī)圖形學(xué)領(lǐng)域,這方面的發(fā)展也很迅速。有一些商業(yè)化軟件或云服務(wù)(比如Autodesk的123D),已經(jīng)能從若干張照片重建出所拍攝物體的三維模型。該方法的問題是需要物體本身已經(jīng)存在,而且重建的三維模型的精度有限。基于掃描點(diǎn)云(深度圖像如Kinect、結(jié)構(gòu)光掃描、激光掃描、LiDAR掃描等)的建模(Reconstruction)方法。隨著深度相機(jī)的出現(xiàn)及掃描儀的價(jià)格迅速下降,人們采集三維數(shù)據(jù)變得容易,從采集到的三維點(diǎn)云來重建三維模型的工作在最近幾年的Siggraph(Asia)上能常見到。但是,單純的重建方式存在精度低、穩(wěn)定性差和運(yùn)算量大等不足,遠(yuǎn)未能滿足實(shí)際的需求。基于現(xiàn)有模型來合成建模的方法。隨著三維模型的逐漸增多,可以利用現(xiàn)有的三維模型通過簡單的操作,比如cut and paste,或者分析及變形等手段,來拼接或合成新的三維模型。這種通過“學(xué)習(xí)”模型數(shù)據(jù)庫的知識(shí)來進(jìn)行建模的手段在近3-5年里研究得非常熱門。從某方面來講,就是“大數(shù)據(jù)時(shí)代”背景下計(jì)算機(jī)圖形學(xué)領(lǐng)域中的一個(gè)具體的表現(xiàn)。除了上述的這些建模方法,還有其他的一些建模方法,在此不再一一列舉。
在對三維幾何模型的構(gòu)建過程中,還會(huì)涉及到很多需要處理的幾何問題,比如數(shù)據(jù)去噪(denoising or smoothing)、補(bǔ)洞(repairing)、簡化(simplification)、層次細(xì)節(jié)(level of detail)、參數(shù)化(parameterization)、變形(deformation or editing)、分割(segmentation)、形狀分析及檢索(shape analysis and retrieval)等。這些問題構(gòu)成“數(shù)字幾何處理”的主要研究內(nèi)容。筆者自2005年起開設(shè)了多年的《數(shù)字幾何處理》的研究生課程:
http://staff.ustc.edu.cn/~lgliu/Courses/DGP_2012_spring-summer/default.htm

Rendering
渲染的企業(yè)就非常多了,前幾年,大家都在整數(shù)據(jù),如何解析原始行業(yè)數(shù)據(jù),如何輕量化。如今,更多的開始追求更高的渲染效果了。
有了三維模型或場景,怎么把這些三維幾何模型畫出來,產(chǎn)生令人賞心悅目的真實(shí)感圖像?這就是傳統(tǒng)的計(jì)算機(jī)圖形學(xué)的核心任務(wù),在計(jì)算機(jī)輔助設(shè)計(jì),影視動(dòng)漫以及各類可視化應(yīng)用中都對圖形渲染結(jié)果的高真實(shí)感提出了很高的要求。
上個(gè)世紀(jì)80-90年代研究的比較多些,包含了大量的渲染模型,包括局部光照模型(Local Illumination Model)、光線跟蹤算法(Ray Tracing)、輻射度(Radiosity)等,以及到后面的更為復(fù)雜、真實(shí)、快速的渲染技術(shù),比如全局光照模型(Global Illumination Model)、Photo mapping、BTF、BRDF、以及基于GPU的渲染技術(shù)等。
現(xiàn)在的渲染技術(shù)已經(jīng)能夠?qū)⒏鞣N物體,包括皮膚、樹木、花草、水、煙霧、毛發(fā)等渲染得非常逼真。一些商業(yè)化軟件(比如Maya, Blender, Pov Ray等)也提供了強(qiáng)大的真實(shí)感渲染功能,在計(jì)算機(jī)圖形學(xué)研究論文中作圖中要經(jīng)常用到這些工具來渲染漂亮的展示圖或結(jié)果圖。
然而,已知的渲染實(shí)現(xiàn)方法,仍無法實(shí)現(xiàn)復(fù)雜的視覺特效,離實(shí)時(shí)的高真實(shí)感渲染還有很大差距,比如完整地實(shí)現(xiàn)適于電影渲染(高真實(shí)感、高分辨率)制作的RenderMan標(biāo)準(zhǔn),以及其他各類基于物理真實(shí)感的實(shí)時(shí)渲染算法等。因此,如何充分利用GPU的計(jì)算特性,結(jié)合分布式的集群技術(shù),從而來構(gòu)造低功耗的渲染服務(wù)是發(fā)展趨勢之一。

Animation
動(dòng)畫是采用連續(xù)播放靜止圖像的方法產(chǎn)生物體運(yùn)動(dòng)的效果。計(jì)算機(jī)動(dòng)畫借助于編程或動(dòng)畫制作軟件生成一系列的景物畫面,是計(jì)算機(jī)圖形學(xué)的研究熱點(diǎn)之一。研究方向包括:物理仿真(simulation),人體動(dòng)畫,關(guān)節(jié)動(dòng)畫,運(yùn)動(dòng)動(dòng)畫,腳本動(dòng)畫,具有人的意識(shí)的虛擬角色的動(dòng)畫系統(tǒng)等。另外,高度物理真實(shí)感的動(dòng)態(tài)模擬,包括對各種形變、水、氣、云、煙霧、燃燒、爆炸、撕裂、老化等物理現(xiàn)象的真實(shí)模擬,也是動(dòng)畫領(lǐng)域的主要問題。這些技術(shù)是各類動(dòng)態(tài)仿真應(yīng)用的核心技術(shù),可以極大地提高虛擬現(xiàn)實(shí)系統(tǒng)的沉浸感 (其中的本質(zhì)是數(shù)值求解各種偏微分方程)。計(jì)算機(jī)動(dòng)畫的應(yīng)用領(lǐng)域廣泛,比如動(dòng)畫片制作,廣告、 電影特技,訓(xùn)練模擬,游戲等。
網(wǎng)上的一些3D動(dòng)畫的視頻:
Larva蟲蟲: http://v.youku.com/v_show/id_XMzAzMzkxMTY0.html
The Killer Bean: http://v.youku.com/v_show/id_XMjI5ODE2MTEy.html
愛與孝: http://v.youku.com/v_show/id_XNTU0OTUxNjUy.html
房地產(chǎn)動(dòng)畫廣告宣傳片: http://v.youku.com/v_show/id_XNTc1OTE4MDMy.html
人機(jī)交互(Human–Computer Interaction, HCI)
人機(jī)交互(Human-Computer Interaction,簡寫HCI)是指人與計(jì)算機(jī)之間以一定的交互方式或交互界面,來完成確定任務(wù)的人與計(jì)算機(jī)之間的信息交換過程。簡單來講,就是人如何通過一定的交互方式告訴計(jì)算機(jī)來完成他所希望完成的任務(wù)。
以下是最近幾年(特別是今年)出現(xiàn)的一些值得關(guān)注的新興的人機(jī)交互設(shè)備:
Microsoft Kinect:http://v.youku.com/v_show/id_XNTc2ODY0MTA4.html Kinect由微軟于2010年推出的對XBOX360體感外設(shè),它不需要使用任何控制器,僅依靠相機(jī)捕捉三維空間中玩家的運(yùn)動(dòng),同時(shí)它導(dǎo)入了即時(shí)動(dòng)態(tài)捕捉、影像辨識(shí)、麥克風(fēng)輸入、語音辨識(shí)、社群互動(dòng)等功能。Kinect徹底顛覆了游戲的單一操作。使人機(jī)互動(dòng)的理念更加徹底的展現(xiàn)出來。之后,基于Kinect的各種應(yīng)用像雨后春筍般的冒出來,包括人機(jī)交互,手勢識(shí)別,幾何建模等。在2013年5月28日的Xbox One發(fā)布會(huì)上,微軟展示了新一代Kinect 2.0,新 Kinect能感知的語音、手勢和玩家感覺信息,將給玩家?guī)砬八从械幕?dòng)性體驗(yàn):http://v.youku.com/v_show/id_XNTIyODU0NDky.htmlLeap Motion:http://v.youku.com/v_show/id_XNTAwMzg0MTQw.html Leap Motion為放在鍵盤和顯示器之間的小小金屬棒,就能讓任何一位用戶通過簡單的手勢完成人機(jī)交互。Leap Motion 的響應(yīng)驚人的準(zhǔn)確,對各種自然而簡潔的手勢都能識(shí)別。不必站起來或者擺動(dòng)手臂,Leap Motion 是簡單而毫不費(fèi)力的交互方式。我們在4月份就預(yù)訂了一臺(tái),到現(xiàn)在還未到貨,估計(jì)要到下個(gè)月到貨。到貨后我們會(huì)對其進(jìn)行評測。MYO:http://v.youku.com/v_show/id_XNTYzNzg3MDA0.html MYO 是一款能在用戶揮動(dòng)并指向屏幕時(shí)測量各種肌肉產(chǎn)生的電活動(dòng)來完成交互的腕帶。MYO 超越 Leap Motion 的一點(diǎn)是,MYO 對用戶的位置沒有限制。盡管MYO只聽令于身體的一個(gè)部分(手臂),但是其應(yīng)用的場合還是很多的。期望未來會(huì)有更多的聽令于身體的其他部分的交互設(shè)備。Google Glass:http://v.youku.com/v_show/id_XNTYzNzk1NjIw.html Google Glass為Google公司在2012的I/O開發(fā)者大會(huì)上正式公布的,在看起來普普通通的眼鏡上配置強(qiáng)大的計(jì)算機(jī)和顯示器。這款設(shè)備小巧而不顯眼,可以在任何時(shí)間地點(diǎn)使用,即用戶想要專注于周圍環(huán)境時(shí)不會(huì)礙事。不過對其未來的發(fā)展各有說法,讓我們拭目以待。3D Printer:這個(gè)就不用筆者詳細(xì)說了,這兩年太火了。正如上面所提到的觀點(diǎn),筆者覺得3D打印的出現(xiàn)帶給了我們從事計(jì)算機(jī)圖形學(xué)研究的工作者許多的機(jī)會(huì)。挑戰(zhàn)和機(jī)會(huì)并存!我們應(yīng)該要抓住這次機(jī)會(huì)!3Doodler:http://v.youku.com/v_show/id_XNTE2MjM5NzUy.html 3Doodler是玩具和機(jī)器人公司W(wǎng)obble Works開發(fā)的全球首款“3D打印筆”,可以幫助人們在半空中創(chuàng)造出三維結(jié)構(gòu)的模型。今后人們可以在三維空間中來“畫圖”交流和表達(dá)想法了。Apple iWatch:http://v.youku.com/v_show/id_XNTIwODk0MzM2.html iWatch由蘋果公司推出的一款智能手表?,F(xiàn)在仍是概念產(chǎn)品,面世時(shí)間未定。其界面看看視頻就知道有多酷。參考
什么是計(jì)算機(jī)圖形學(xué)掃描二維碼推送至手機(jī)訪問。
版權(quán)聲明:本文由財(cái)神資訊-領(lǐng)先的體育資訊互動(dòng)媒體轉(zhuǎn)載發(fā)布,如需刪除請聯(lián)系。