計算機圖形學是不是計算機專業方向中對數學要求最高的?


是不是對數學要求最高還不敢說,但計算機圖形學肯定是需要很多數理知識以及綜合能力的一個方向。

計算機圖形學可以說是一門用計算機生成圖形圖像的學科,傳統圖形學致力於生成可被傳統顯示器顯示的二維圖像,也就是三維世界的二維投影。那麼要做到這一點,首先需要構建三維世界的表示方法(representation)以及其相關操作,這需要基礎的立體幾何投影幾何知識。

有了三維世界的representation,接下來就可以構建物體了,於是就有了傳統計算機圖形學的三大研究方向:幾何(Geometry)渲染(Rendering)動畫(Animation)

物體是什麼形狀?如何既省空間又精確地表示這個形狀?如何從零起步為我心中所想的一個形狀建模?如何編輯現有的形狀讓他符合我的要求與目的?這是幾何(主要包括Geometry Processing, Geometric Modeling)要解決的問題。於是你需要Computational Geometry來解決基本的幾何問題,比如找一個點集的convex hull、如何判斷兩個幾何體有沒有相交等。你還需要Differential Geometry(所以也就還包括Vector Calculus)來描述幾何體的微分性質。有了對幾何體基本屬性的描述和運算工具,接下來你就能把一些編輯處理操作formulate成一個Optimization(所以也就還包括Numerical Linear AlgebraGraph Theory,甚至Calculus of Variation)問題來解決了。但有時候幾何體可能過於複雜,傳統的演算法有可能出現不work的情況,這時候可能就得動用Topology的知識了。

物體的形狀確定好後,它身上的每一點又應該是什麼顏色呢?這就是渲染要解決的問題。真實世界中物體的顏色是由其材質和光照決定的,所以幾何光學是必不可少的。由於最終你是想確定圖像上每一個像素點的顏色,那麼這其實也可以看成是一個採樣的過程,所以信號處理以及概率統計知識也是需要的。

形狀和顏色都確定好後,一幅優美的CG圖就能生成了。接下來就是讓它們能夠運動起來了。這裡我們可以把物體大致分為三類:固體(rigid、deformable)角色(articulated and deformable)流體(無固定形態)。為了讓動畫看起來真實,你需要用力學運動學知識去描述、規範他們的運動。對於角色,控制理論(所以也就還包括隨機過程)、Biomechanics也是需要的。流體的話,那就是Fluid Mechanics了(所以也就還包括Differential EquationsNumerical Analysis)。

最近的計算機圖形學研究方向有所向外擴張。例如圖像的拍攝和顯示技術,也就是計算成像(Computational Imaging and Display),這又需要物理光學的知識。再比如3D列印,不再局限於生成圖像,也能生成實體,這又需要一些材料學的知識。以及最近炒得火熱的增強現實,要想增強現實,首先理解現實!所以需要計算機視覺,致力於高層次處理照片的Computational Photography也是如此。另外,雖說目前很火的機器學習是解決inverse problem的有利工具,不過其在圖形學這個主要以數學建模驅動來解決正向問題的領域中也偶爾會被用到。比較多的是以example based或者說data-driven approaches的形式來方便藝術家們的創作,以及用來通過precomputed database做演算法的在線加速。其實圖形學中也有inverse problem,那就是近來Geometry方向的研究熱點之一:Shape Analysis。有關用機器學習方法來做圖形學研究的實例可參考計算機圖形學與機器學習(深度學習)怎麼結合起來? - 李旻辰的回答

當然,沒有人精通上述所有的領域和知識,也沒這個必要。研究人員通常只是精通和擅長某個子方向甚至某一類問題或一類解決問題的框架;工程師也類似,不過在深度要求上會輕鬆很多,在編程及其他計算機技術上更為紮實;藝術家的話,抱歉你可能白看了這麼久了,這些基本都不太需要,你只需熟練掌握工具軟體,偶爾反饋些用戶體驗給工程師或者提出一些難題給研究人員,然後盡情發揮你們的創造力讓這一切變得有意義吧!

註:圖片均來自網路,不作任何商業用途。


なに,搞密碼最難的數論竟然被忽略了嗎?圖形學用的只是分析和線性代數,而且這貨就跟薛定諤的方程一樣,很多東西都沒法算,還是要靠真實世界做試驗來收集數據(譬如說次表面散射)。圖形學用到的數學比起別的那要簡單多了。


顯然不是,對數學的要求高不是擺幾個數學裡面的學術名詞和公式。

計算機裡面有一個分支叫做理論計算機科學,Theoretical Computer Science(TCS)。CS的人應該都知道這個才是對數學要求最高的方向。


這把NP問題放到哪裡去了?

隨便說幾個要求高的,密碼學(需要大量的數論,組合,代數甚至幾何知識),資訊理論(統計,控制,優化背景,物理背景),機器學習理論(統計,優化,其他不太了解,翻過JMLR的論文很多都是數學系或者統計系的人發的),形式化(貌似用到需要大量的邏輯,範疇論,代數知識)


目前圖形學裡面用到的都是經典物理,經典物理用到的都是幾百年前的數學知識了


這個話題太惹口水了,其實很多數學領域在計算機里涉及到了,都沒有好的解決方法,都一樣困難。你說的那些只是圖形學設計的物理表達而已。

圖形學,計算機視覺,還有機器學習等等方向,都涉及大量optimization的問題,都在追求一個global optimum,可以說成千上萬的人都在追求,可是無果。

補充幾個接觸到的,其他方面很困難的問題,比如與AI相關的mathematic logic, 還有complexity一直在追求的P=NP問題。這麼多複雜的問題,也是研究的魅力所在。


計算機圖形學難道不是數學專業方向中對計算機要求最高的?(滑稽)


計算機系裡數學要求最高的應該是theoretical computer science, 密碼學。

圖形學數學要求可能比較廣比較雜,但是內容都屬於understandable。上面兩個方向的數學,並不是凡人用努力就能挑戰的。

恕我直言,(國內)大多數學計算機的數分、微積分、線代甚至高代都沒有搞EE的人好,還不如拉幾個搞EE的人來圖形學。


搞演算法的吧,學過一點感覺很抽象。圖形學是實際的那種數學,演算法偏理論


初中物理+初中數學+初中幾何, 這三樣應該可以應付90%的計算機圖形學。剩下的10%可能需要研究生水平的數學。


你說 是先有計算機這個體系難,還是有了計算機再用它畫圖難?

我愚以為是這和 先有宇宙,再有萬物演變 一樣。

量子計算機近幾年正在發展,從0出發建立一套完整的體系,需要的是整個世界的進步與發展帶來的支持。

至於有了量子計算機再拿來研究圖形學,想來是簡單一點,至於發展很長一段時間後的情況....

才疏學淺不敢猜......


對於計算機科研來說,當然不能算數學要求高的。

但是對於編程來說,圖形學程序員要求會矩陣乘法,就已經超過很多方向了(逃


確實應該是輪子哥說的,計算機密碼學的數學要求最高。。圖形學算好的了,神經網路那一塊複雜點的也要求數學涵養很高。


密碼學


圖形學的數學都是一遍遍試出來的,大部分人數學很差,連坐標正負號都搞不清楚。


肯定密碼學… 代數數論 代數幾何 表示輪各種亂入…


你讓搞純理論的情何以堪…


不是


不是,最難的是沒有成熟模型算的東西,比如研究個穩賺的股票基金投資的模型看看,而圖形學基本上都有成熟的數學模型,能算的東西那都不是事兒。


難道不是計算理論么…

而且還有RSA這種搞信息安全的公司…

感覺數據工程師也都是數學帝,還是學統計的…

當你的項目遇到性能瓶頸不依靠演算法無法突破的時候,大概不管是什麼分支,數學都是繞不開的吧。


恕我直言,搞圖像的都比搞圖形的數學要好點。


推薦閱讀:

鍵盤上的Shift、Alt是什麼意思?
攢機這樣可以嗎有沒有給點建議的?
普通本科生應該堅持ACM嗎?
如何評價機械師筆記本電腦?
無計算機背景本科想申美國人機交互的研究生,有沒有推薦的學校?

TAG:計算機 | 計算機圖形學 |