圖形學復習知識點1(學校課程 很水)

圖形學的基本目標和任務

目標
視覺交流,通過圖形或者幾何的方式來表示或展示一些問題或信息。
基本任務
表示:將客觀世界用二維或三維的方式表示
繪制:如何將計算機中的對象用一種直觀形象的圖形圖像方式表現出來
交互:通過計算機輸入輸出設備,以有效的方式表示與繪制的技術


計算機圖形學相關學科

圖像處理:將客觀世界中原來存在的物體形象處理成新的數字化圖像的相關技術。
模式識別:用攝像機和計算機代替人眼對目標進行識別跟蹤和測量,用計算的方法模擬人類的視覺系統。
計算幾何:研究幾何模型和數據處理的學科,討論幾何形體的計算機表示,分析和綜合。。


計算機圖形學的應用領域

計算機輔助設計與制造
科學計算可視化
虛擬現實
計算機動畫
計算機游戲
CG插畫


圖形系統體系結構(圖形流水線)

應用程序階段(產生圖元):把數據以圖元的形式提供給圖形硬件,也提供用于表面紋理映射的圖像或者位圖。

幾何處理階段(產生二維屏幕坐標):以每個頂點為基礎對幾何圖元進行處理,并從三維坐標變換為二維屏幕坐標。


幾何處理階段.PNG

像素處理階段:屏幕對象被傳送到像素處理器進行光柵化,再對每個像素進行著色,然后再輸出到幀緩沖器,最后再輸出到顯示器。


直線生成算法(待補)


區域填充

  1. 邊界定義的區域,區域邊界上的像素顏色已確定,區域內部像素沒有設置制定的顏色。邊界上和區域內的目標顏色值可相同也可不同。
  2. 內定義區域。只劃分區域內外部分,區域外所有像素已有特定顏色,區域內顏色與區域外不同。

漫水法:四連通&&八連通


void FloodFill4 (int x, int y, int newcolor, int boundaryColor) {
 // 當處理內定義區域時,用if (getpixel(x, y)!=newcolor)判斷即可
    if (getpixel(x, y)!=newcolor && getpixel(x,y)!=boundaryColor)  {
    setpixel(x, y, newcolor, boundaryColor);
    FloodFill4(x-1, y, newcolor, boundaryColor);
    FloodFill4(x, y+1, newcolor, boundaryColor); 
    FloodFill4(x+1, y, newcolor, boundaryColor); 
    FloodFill4(x, y-1, newcolor, boundaryColor);  
        //如果是基于八連通,則要增加其它四個方向的類似代碼
   }
}

void FloodFill (int x, int y, int newcolor, int boundaryColor)
{
     Stack stack;
     stack.Push(Pixel(x, y));  //把種子像素(x,y)推入棧中
     while (! stack.Empty())    //當棧不空時循環執行以下代碼
     {
         pixel=stack.Pop();  //從棧頂彈出一個像素
    // 當處理內定義區域時,用if (pixel.Color !=newcolor)判斷即可
         if (pixel.Color != newcolor && pixel.Color != boundaryColor) {
             xx = pixel.x; yy = pixel.y;
             setpixel( xx,  yy,  newcolor, boundaryColor);
             stack.Push ( Pixel (xx-1, yy ));
             stack.Push ( Pixel( xx, yy+1)); 
             stack.Push ( Pixel (xx+1, yy )); 
             stack.Push ( Pixel(xx, yy-1));
         }
     }
}

種子掃描線填充算法
從給定的種子點開始,填充當前掃描線上種子點所在的區間,然后確定與這一區間相鄰上下兩條掃描線上需要填充的區間。在這個區間上取最左側或最右側的一個點作為新的種子點,不斷重復以上過程,直到所有區間都被處理完。

算法步驟:

  1. 從包含種子像素的堆棧中推出區段內的種子像素;
  2. 沿著掃描線,對種子像素的左右像素進行填充,直至遇到邊界像素為止;
  3. 區段內最左和最右像素記為xl和xr,在此區間內,檢查與當前掃描線相鄰的上下兩條掃描線是否全為邊界像素或已被填充過;
  4. 如果經測試,這些掃描線上的像素段需要填充,則在xl和xr區間范圍內,把每一像素段的最右像素作為種子像素,并壓入堆棧;
  5. 初始化時,向堆棧壓入種子像素,并在堆棧為空時結束。

反走樣技術

對圖形進行光柵化時,離散的像素表示連續直線和區域邊界時引起的失真現象稱為走樣。用于減小和消除走樣的技術稱為反走樣。

  1. 超采樣方法:通過軟件方式來提高分辨率。將圖形以高于物理光柵設備分辨率完成光柵化(偽光柵化),按每個子像素合并得到要顯示的像素灰度值。
  2. 線段反走樣技術:假定線段有寬度,把線段看成狹長矩形,線段通過每個像素時,求出兩者相交的面積,根據該面積值來確定像素的灰度值和顏色值。顏色值與面積呈線性關系。
  3. 多邊形反走樣算法:采用線段反走樣來改善多邊形邊界的顯示質量。求像素與邊界的相交面積。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,119評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,382評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,038評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,853評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,616評論 6 408
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,112評論 1 323
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,192評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,355評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,869評論 1 334
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,727評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,928評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,467評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,165評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,570評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,813評論 1 282
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,585評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,892評論 2 372

推薦閱讀更多精彩內容

  • 1 前言 一直想沿著圖像處理這條線建立一套完整的理論知識體系,同時積累實際應用經驗。因此有了從使用AVFounda...
    RichardJieChen閱讀 5,715評論 5 12
  • 本文將要介紹圖形渲染管線,它被認為是實時圖形學中的核心部分。圖形渲染管線的主要功能是在給定了的虛擬攝像機,三維的對...
    SwordMaster閱讀 15,150評論 0 19
  • 引言 填充,是繪圖軟件極為重要的一個功能。用戶通過點擊某空白區域內任一點,即可為該區域著色,系統能自動識別邊界線,...
    阿堃堃堃堃閱讀 3,593評論 0 1
  • 想做一只天上的鴻雁 想化一朵佛前的青蓮 想竹杖芒鞋走遍天下 想粗茶淡飯四海為家 豆蔻年華 她喚他冬郎哥哥 他喚她青...
    PhoebeNanmu閱讀 217評論 0 2
  • 001,別人只是你生活的一部分,只有先把自己的日子過好了,才會有其他精力去管理別人,不要去別人身上尋找自己,而把自...
    微微的微笑66閱讀 448評論 2 2