1. 程式人生 > >圖形學(1)概論及一些基礎知識

圖形學(1)概論及一些基礎知識

想搞遊戲開發,看網課時發現需要一些計算機圖形學的基礎以便於進行影象、動畫的各種變換,因而開始了計算機圖形學的學習。本模組內容絕大部分是在慕課上看中國農業大學網客時的筆記,因此算作轉載,在此鳴謝趙明、李振波兩位老師,感謝他們錄製該門課程供大家學習!


概論

學習之前,我們首先要認識它是做什麼的,大致有什麼用處,然後要了解該學科的歷史。這樣做有助於加深對課程重要性的認識,幫助我們去學習它。

計算機圖形學是研究如何在計算機中表示圖形,進行圖形的計算、處理和顯示的相關原理和演算法。---wiki百科

計算機圖形學是藉助計算機產生影象的藝術或科學,是(不限於)真實世界的數字模擬(虛擬世界)

它在圖形視訊處理,計算機輔助設計製造、計算視覺化、生物資訊、遊戲製作等各行各業都有著及其重要的作用。由圖靈獎獲得者,清華大學姚期智教授主導的清華大學電腦科學實驗班把該課程列為必修的25門核心課程之一。

計算機表示圖形步驟:

1.造型技術

  給出表示該物體的幾何資料和拓撲關係

2.光照模型 

  自然光照由複雜的物理定律決定,我們想用一些簡單的數學模型近似代替它

3.渲染技術

  用適當的繪製演算法將場景畫(渲染)出來。
計算機螢幕由畫素構成,因此需要研究在哪些畫素上生成圖形,也就必須要有一套針對光柵顯示器生成圖形的演算法(如:光線跟蹤,輻射度演算法,文理對映,陰影等)


計算機圖形學發展歷史

(略),這部分內容可以很容易地在百度上找到,就...自行查詢吧嘻嘻


計算機圖形學應用領域

常見的大約10個:

1.人機互動和圖形使用者介面:

  在未來,開發者希望開發能聽能說能理解人類語言的計算機,而不限於現在的windows,icon,mouse,pointer介面(WIMP介面))

2.計算機模擬

  用計算機技術建立被模擬系統的模型,並在某些實驗條件下對模型進行動態實驗的一門綜合性技術//主要提供形象化的結果,因此二維三維是主要表現形式

3.計算機輔助設計與製造(CAD/CAM)

  各種設計

4.科學計算視覺化

  因為當今的海量資料加大了處理難度,用圖形表示資料的迫切性與日俱增,資料視覺化可以清晰有效傳達溝通資料資訊,“給資料拍照”。可用於氣象預報,醫學影象重建,計算流體力學,核爆模擬等

5.真實感圖形繪製與自然景物模擬:

  設計模擬自然界的景物,以假亂真

6.虛擬現實

  用計算機建立三維空間模擬現實場景,提供給使用者各種感官,使其身臨其境

7.計算機遊戲、電影、動漫

  綜合計算機和很多其他學科知識進行製作,加特技Duang~

8.地理資訊系統(GIS)

  建立在地理圖形上的關於各種資源的綜合資訊管理系統。如地下管道系統

9.農業領域應用

  儲存再現不同植物和不同生長時期的植物形態,模擬生長過程,從而合理選種播種田間管理收穫

10.計算機藝術

  科學與藝術相結合,生成各種流派、風格的藝術品








計算機圖形系統組成

圖形系統由圖形硬體和圖形軟體組成,當今的互動式的計算機圖形系統應具有計算,儲存,對話,輸入,輸出5方面功能

圖形軟體

構成:

圖形應用資料結構,對應一組圖形資料檔案儲存欲生成圖形的全部描述資訊。

圖形應用軟體,核心部分,是圖形技術在各種不同應用中的抽象,如ps,3Dmax

圖形支援軟體,需要規範介面,大多數圖形應用程式建立在一定圖形支撐軟體上

發展:

a)現有計算機語言寫的子程式包,如OpenGL

b)擴充某計算機語言,使其具有圖形生成處理能力,如現在的c,c++
c)專用圖形系統,執行速度更快,效率更高,但系統開發工作量大且移植性差

圖形的軟體標準:

國際標準化組織討論批准的裝置無關圖形包:GKS,PHIGS
但是,由於應用廣泛而被絕大多數人所接受,非官方圖形軟體標準成為事實上的標準:DirectX(MS),OpenGL(SGI),Adobe(Postscript)

圖形硬體

包括圖形計算機平臺,圖形裝置。要求比一般計算機主機效能更高,速度更快,儲存量更大,外設種類更齊全,以適應對複雜圖形的處理與顯示。

互動式圖形計算機處理系統

 圖形系統通常由:圖形處理器,圖形輸入(如滑鼠鍵盤)、輸出裝置 構成



相關概念

解析度的類別

螢幕解析度:螢幕上畫素個數
顯示解析度:計算機顯示控制器所能提供的顯示模式解析度。文字顯示方式為水平豎直方向所能顯示的字元總數的乘積;圖形顯示方式為水平豎直方向所能顯示的畫素點總數乘積。
顯示卡解析度:顯示卡輸出給顯示器並能在顯示器上描繪畫素點的數量。電腦提供的最高解析度取決於顯示卡和顯示器中較低的一個

顯示器的點距

相鄰畫素點之間的距離,越小越好。1600*1200解析度需要比如0.27mm或0.25mm的點距

顯示卡的作用與指標

顯示卡和顯示器構成計算機的顯示系統。除cpu和記憶體外,顯示卡對計算機顯示效能起到決定性作用

圖形影象的區別和其儲存格式

圖形和影象其實是有區別的。一種說法:圖形是由計算機繪製而成,影象是人為用外部裝置捕捉到的外部景象;另一種說法認為:圖形是向量圖,而影象是點陣圖

圖形影象的構成屬性

廣義上可以分為幾何屬性(刻畫物件的輪廓形狀,包括點線面體等)和非幾何屬性(視覺屬性,包括物件的顏色材質等,如明暗色彩紋理透明度線型線寬)

構成要素:

1.幾何屬性主導,基於線條資訊表示,如等高線圖

2.非幾何要素主導(明暗圖),即真實感圖

點陣圖和向量圖

區別與聯絡

  1. 點陣圖由畫素構成,每個點用二進位制資料描述其顏色與亮度等資訊。向量圖也稱面向物件的圖形或繪圖圖形,用數學方式描述曲線及其包圍的色塊製作的圖形,它的圖形元素成稱為物件,每個物件都是自成一體的實體,具有顏色形狀輪廓大小螢幕位置等屬性。
  2. 儲存方式:畫素點位置顏色灰度資訊<->數學方程數學形式描述的形狀引數屬性引數。因此點陣檔案要大。
  3. 縮放時點陣圖會失真
*兩者可相互轉換,向量->掃描->點陣;點陣->影象處理->向量

儲存格式

點陣圖:BMP(windows畫圖的儲存格式),TIFF,GIF,JPEG,PNG網際網路上常用JPEG格式
向量圖:DXF,SVG,EPS,WWF,EMF

另外的幾點說明

  1. 點陣圖比向量圖更容易模模擬實感圖形效果,但儲存空間比向量圖大。
  2. 由於向量圖縮放不失真,因此常用於各種設計圖
  3. 兩者沒有好壞之分,只有用途不同









































相關推薦

圖形1概論一些基礎知識

想搞遊戲開發,看網課時發現需要一些計算機圖形學的基礎以便於進行影象、動畫的各種變換,因而開始了計算機圖形學的學習。本模組內容絕大部分是在慕課上看中國農業大學網客時的筆記,因此算作轉載,在此鳴謝趙明、李振波兩位老師,感謝他們錄製該門課程供大家學習!概論 學習之前,我們首先要認

基於MFC的計算機圖形之基本圖形生成1

基於MFC的計算機圖形學之基本圖形生成(1) 1.DDA中點畫線 下面的程式碼是在doc.cpp中加的,在view裡面還要新增相應的選單響應函式和滑鼠移動函式 int x,x0,y0,x1,y1,flag; float m,y; DCPoint->SetROP2(R2_CO

Hibernate 一對多 多對一 例項 一些 問題1插入查詢

 Clazz.java /** * */ package com.wonders.task.sample.bo; import java.util.Set; import javax.persistence.CascadeType; import javax.p

計算機圖形 視頻顯示設備_1_CRT原理

http color size 安裝 ref p s 這一 計算機圖形學 指定 第 1 章 圖形系統概述 如今。計算機圖形學的作用與應用已經得到了廣泛承認。大量的圖形硬件和軟件系統已經應用 到了差點兒全部的領域。通用計算機甚至很多手持計算器也已經

MFC計算機圖形2

mct tid spc DdGzS cin html uem ubd dcs sdsdzi狗聘毫渤口毫http://huiyi.docin.com/hnbkw203d1e5gw濫良瘟侍探蝗http://weibo.com/p/10050563731520645atr4g回救

計算機圖形輸出圖元_3_畫線算法_2_DDA算法

通過 程序 之間 tro 取整 xen git 方程 class DDA算法? ? ? ? 數字微分分析儀(digital differential analyzer, DDA)方法是一種線段掃描轉換算法。基於使用等式(3

遞歸Recursion簡述一些註意事項

語言 c++ 如何 我們 隱式轉換 這不 else recursion 其中 《Data Structure and Algorithm Analysis in C++》筆記 大多數的數學函數可以被描述成簡單表達式。 例如:   華氏度和攝氏度轉換的表達式為     C

Django 專案總結1- 註冊登入

Django 專案結束,對專案進行簡單總結 程式碼 GitHub 地址 專案準備 美多商城是一種 B2C 的商業模式,即企業對個人,這種模式一般是網上購物,代表有京東、淘寶。 需求分析 使用者模組 商品模組

大資料離線---網站日誌流量分析系統1---簡介框架

本次介紹網站日誌流量分析系統,首先是簡介和架構。後面會對架構中需要的每個模組的進行逐個介紹。本篇主要分為兩個部分 網站日誌流量分析系統簡介 整體技術流程和架構 1. 網站日誌流量分析系統簡介 1.1點選流資料模型 點選流的概念 點選流( Cl

多執行緒程式設計學習1物件變數的併發訪問

程序:計算機中的程式關於某資料集合上的一次執行活動,是系統進行資源分配和排程的基本單位,是作業系統結構的基礎。 執行緒:在程序中獨立執行的子任務。 在java中以下3種方法可以終止正在執行的執行緒: 1) 使用退出標誌,使執行緒正常退出,也就是當run方法完成後執行緒終

ctf每日一練—— 實驗吧密碼1

1、The Flash-14 閃電俠第二季14集中的一個5X5敲擊碼,規則如下: A B C\K D E F G H I J L M N O P Q R S T U V W X Y Z 數字代表行列數,回到題目: 54

計算機圖形幾何變換_5_三維空間的幾何變換_1_三維平移

三維平移 在三維齊次座標表示中,任意點P = (x, y, z)通過將平移距離tx, ty,和tz加到P的座標上而平移到位置P’= (x', y', z'): 我們可以用下面等式中的矩陣形式來表達三維平移操作。 但現在座標位置P和P’用4元列向量的齊次座標表示,且變換操

計算機圖形_圖元的屬性_16_ 反走樣_6_直線亮度差的校正

直線亮度差的校正        為了減輕階梯狀效應,對直線進行反走樣也為如圖4.52所示的另一種光柵效果提供了校正。使用相同數目畫素所繪製的兩條線,對角線還是比水平線長√2倍。例如,當水平線的長度為10 cm時,對角線的長度超過14cm。這導致的視覺效果是對角線顯得比水平線

計算機圖形幾何變換_4_二維複合變換_5_其他二維變換_2_錯切

二維複合變換_5_其他二維變換_2_錯切          錯切(shear)是一種使物件形狀發生變化的變換,經過錯切的物件好像是由已經相互滑動的內部夾層組成。兩種常用的錯切變換是移動x座標值的錯切和移動Y座標值的錯切。相對於x軸的x方向錯切由下列變換矩陣1產生: 該矩陣將

計算機圖形——微表面模型

計算機圖形學中基於物理建模的渲染技術之所以能給人極佳的視覺體驗,是因為利用這些渲染技術能夠很真實的反映出每種物體獨有的“質感”。我們能通過人眼觀察來感受物體表面“質感”的原因,也是因為物體表面反射周圍環境的特性不同而造成的,因此對物體表面的物理建模對於其表面本身的質感表現至關重要。對物體表面的建模,最簡單的是

計算機圖形幾何變換_2_矩陣表示_2_二維矩陣

二維平移矩陣使用齊次座標方法,座標位置的二維平移可表示為下面的矩陣乘法。 該平移操作可簡寫為: 其中T(tx,ty)等式中3*3矩陣。在平移引數沒有混淆的情況下,可以使用T表示平移矩陣。二維旋轉矩陣類似地,繞座標系原點的二維旋轉變換方程可以表示為矩陣形式: 或      

cesium 學習筆記1安裝環境配置

 cesium.js 最基本的安裝及環境配置,不同於官方教程,進一步探索官方下載包結構,瞭解node.js、伺服器、Cesium基礎包的部分內容。 相關資源  貌似用國內的網路訪問這些資源速度有點不盡人意,有條件的同學可以科學訪問,或者慢慢等也是可以噠。 安

圖形7反走樣技術

本模組內容絕大部分是在慕課上看中國農業大學網客時的筆記,因此算作轉載,在此鳴謝趙明、李振波兩位老師,感謝他們錄製該門課程供大家學習! 其實,在之前繪製直線演算法中,畫出來的直線經放大會有明顯的“鋸齒”,這就是俗稱的走樣(Liasing)現象。下面介紹如何通過特定演算法降低這

SQL SERVER 經典語句大全必1——基礎

一、基礎 1、說明:建立資料庫CREATE DATABASE database-name2、說明:刪除資料庫drop database dbname3、說明:備份sql server--- 建立 備份資料的device USE master EXEC sp_addumpdevice

學習shader之前必須知道的東西之計算機圖形渲染...

shader到底是幹什麼用的?shader的工作原理是什麼?         其實當我們對這個問題還很懵懂的時候,就已經開始急不可耐的要四處搜尋有關shader的資料,恨不得立刻上手寫一個出來。但看了一些資料甚至看了不少cg的語法之後,我們還是很迷茫,UNITY_MATRIX_MVP到底是個什麼矩陣?它和v