圖形學(xué)復(fù)習(xí)知識(shí)點(diǎn)1(學(xué)校課程 很水)

圖形學(xué)的基本目標(biāo)和任務(wù)

目標(biāo)
視覺交流马僻,通過圖形或者幾何的方式來表示或展示一些問題或信息冰木。
基本任務(wù)
表示:將客觀世界用二維或三維的方式表示
繪制:如何將計(jì)算機(jī)中的對(duì)象用一種直觀形象的圖形圖像方式表現(xiàn)出來
交互:通過計(jì)算機(jī)輸入輸出設(shè)備,以有效的方式表示與繪制的技術(shù)


計(jì)算機(jī)圖形學(xué)相關(guān)學(xué)科

圖像處理:將客觀世界中原來存在的物體形象處理成新的數(shù)字化圖像的相關(guān)技術(shù)。
模式識(shí)別:用攝像機(jī)和計(jì)算機(jī)代替人眼對(duì)目標(biāo)進(jìn)行識(shí)別跟蹤和測(cè)量,用計(jì)算的方法模擬人類的視覺系統(tǒng)陌知。
計(jì)算幾何:研究幾何模型和數(shù)據(jù)處理的學(xué)科,討論幾何形體的計(jì)算機(jī)表示掖肋,分析和綜合仆葡。。


計(jì)算機(jī)圖形學(xué)的應(yīng)用領(lǐng)域

計(jì)算機(jī)輔助設(shè)計(jì)與制造
科學(xué)計(jì)算可視化
虛擬現(xiàn)實(shí)
計(jì)算機(jī)動(dòng)畫
計(jì)算機(jī)游戲
CG插畫


圖形系統(tǒng)體系結(jié)構(gòu)(圖形流水線)

應(yīng)用程序階段(產(chǎn)生圖元):把數(shù)據(jù)以圖元的形式提供給圖形硬件志笼,也提供用于表面紋理映射的圖像或者位圖沿盅。

幾何處理階段(產(chǎn)生二維屏幕坐標(biāo)):以每個(gè)頂點(diǎn)為基礎(chǔ)對(duì)幾何圖元進(jìn)行處理,并從三維坐標(biāo)變換為二維屏幕坐標(biāo)纫溃。


幾何處理階段.PNG

像素處理階段:屏幕對(duì)象被傳送到像素處理器進(jìn)行光柵化腰涧,再對(duì)每個(gè)像素進(jìn)行著色,然后再輸出到幀緩沖器紊浩,最后再輸出到顯示器窖铡。


直線生成算法(待補(bǔ))


區(qū)域填充

  1. 邊界定義的區(qū)域,區(qū)域邊界上的像素顏色已確定坊谁,區(qū)域內(nèi)部像素沒有設(shè)置制定的顏色费彼。邊界上和區(qū)域內(nèi)的目標(biāo)顏色值可相同也可不同。
  2. 內(nèi)定義區(qū)域呜袁。只劃分區(qū)域內(nèi)外部分敌买,區(qū)域外所有像素已有特定顏色,區(qū)域內(nèi)顏色與區(qū)域外不同阶界。

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


void FloodFill4 (int x, int y, int newcolor, int boundaryColor) {
 // 當(dāng)處理內(nèi)定義區(qū)域時(shí)虹钮,用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);  
        //如果是基于八連通聋庵,則要增加其它四個(gè)方向的類似代碼
   }
}

void FloodFill (int x, int y, int newcolor, int boundaryColor)
{
     Stack stack;
     stack.Push(Pixel(x, y));  //把種子像素(x,y)推入棧中
     while (! stack.Empty())    //當(dāng)棧不空時(shí)循環(huán)執(zhí)行以下代碼
     {
         pixel=stack.Pop();  //從棧頂彈出一個(gè)像素
    // 當(dāng)處理內(nèi)定義區(qū)域時(shí),用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));
         }
     }
}

種子掃描線填充算法
從給定的種子點(diǎn)開始芙粱,填充當(dāng)前掃描線上種子點(diǎn)所在的區(qū)間祭玉,然后確定與這一區(qū)間相鄰上下兩條掃描線上需要填充的區(qū)間。在這個(gè)區(qū)間上取最左側(cè)或最右側(cè)的一個(gè)點(diǎn)作為新的種子點(diǎn)春畔,不斷重復(fù)以上過程脱货,直到所有區(qū)間都被處理完。

算法步驟:

  1. 從包含種子像素的堆棧中推出區(qū)段內(nèi)的種子像素律姨;
  2. 沿著掃描線振峻,對(duì)種子像素的左右像素進(jìn)行填充,直至遇到邊界像素為止择份;
  3. 區(qū)段內(nèi)最左和最右像素記為xl和xr扣孟,在此區(qū)間內(nèi),檢查與當(dāng)前掃描線相鄰的上下兩條掃描線是否全為邊界像素或已被填充過荣赶;
  4. 如果經(jīng)測(cè)試凤价,這些掃描線上的像素段需要填充,則在xl和xr區(qū)間范圍內(nèi)拔创,把每一像素段的最右像素作為種子像素利诺,并壓入堆棧;
  5. 初始化時(shí)剩燥,向堆棧壓入種子像素慢逾,并在堆棧為空時(shí)結(jié)束。

反走樣技術(shù)

對(duì)圖形進(jìn)行光柵化時(shí)躏吊,離散的像素表示連續(xù)直線和區(qū)域邊界時(shí)引起的失真現(xiàn)象稱為走樣氛改。用于減小和消除走樣的技術(shù)稱為反走樣。

  1. 超采樣方法:通過軟件方式來提高分辨率比伏。將圖形以高于物理光柵設(shè)備分辨率完成光柵化(偽光柵化),按每個(gè)子像素合并得到要顯示的像素灰度值疆导。
  2. 線段反走樣技術(shù):假定線段有寬度赁项,把線段看成狹長矩形,線段通過每個(gè)像素時(shí)澈段,求出兩者相交的面積悠菜,根據(jù)該面積值來確定像素的灰度值和顏色值。顏色值與面積呈線性關(guān)系败富。
  3. 多邊形反走樣算法:采用線段反走樣來改善多邊形邊界的顯示質(zhì)量悔醋。求像素與邊界的相交面積。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末兽叮,一起剝皮案震驚了整個(gè)濱河市芬骄,隨后出現(xiàn)的幾起案子猾愿,更是在濱河造成了極大的恐慌,老刑警劉巖账阻,帶你破解...
    沈念sama閱讀 216,919評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蒂秘,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡淘太,警方通過查閱死者的電腦和手機(jī)姻僧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蒲牧,“玉大人撇贺,你說我怎么就攤上這事”溃” “怎么了松嘶?”我有些...
    開封第一講書人閱讀 163,316評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長晒屎。 經(jīng)常有香客問我喘蟆,道長,這世上最難降的妖魔是什么鼓鲁? 我笑而不...
    開封第一講書人閱讀 58,294評(píng)論 1 292
  • 正文 為了忘掉前任蕴轨,我火速辦了婚禮,結(jié)果婚禮上骇吭,老公的妹妹穿的比我還像新娘橙弱。我一直安慰自己,他們只是感情好燥狰,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,318評(píng)論 6 390
  • 文/花漫 我一把揭開白布棘脐。 她就那樣靜靜地躺著,像睡著了一般龙致。 火紅的嫁衣襯著肌膚如雪蛀缝。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,245評(píng)論 1 299
  • 那天目代,我揣著相機(jī)與錄音屈梁,去河邊找鬼。 笑死榛了,一個(gè)胖子當(dāng)著我的面吹牛在讶,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播霜大,決...
    沈念sama閱讀 40,120評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼构哺,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了战坤?” 一聲冷哼從身側(cè)響起曙强,我...
    開封第一講書人閱讀 38,964評(píng)論 0 275
  • 序言:老撾萬榮一對(duì)情侶失蹤残拐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后旗扑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蹦骑,經(jīng)...
    沈念sama閱讀 45,376評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,592評(píng)論 2 333
  • 正文 我和宋清朗相戀三年臀防,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了眠菇。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,764評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡袱衷,死狀恐怖捎废,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情致燥,我是刑警寧澤登疗,帶...
    沈念sama閱讀 35,460評(píng)論 5 344
  • 正文 年R本政府宣布,位于F島的核電站嫌蚤,受9級(jí)特大地震影響辐益,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜脱吱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,070評(píng)論 3 327
  • 文/蒙蒙 一智政、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧箱蝠,春花似錦续捂、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至间校,卻和暖如春矾克,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背憔足。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評(píng)論 1 269
  • 我被黑心中介騙來泰國打工聂渊, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人四瘫。 一個(gè)月前我還...
    沈念sama閱讀 47,819評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像欲逃,于是被迫代替她去往敵國和親找蜜。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,665評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 1 前言 一直想沿著圖像處理這條線建立一套完整的理論知識(shí)體系稳析,同時(shí)積累實(shí)際應(yīng)用經(jīng)驗(yàn)洗做。因此有了從使用AVFounda...
    RichardJieChen閱讀 5,664評(píng)論 5 12
  • 本文將要介紹圖形渲染管線弓叛,它被認(rèn)為是實(shí)時(shí)圖形學(xué)中的核心部分。圖形渲染管線的主要功能是在給定了的虛擬攝像機(jī)诚纸,三維的對(duì)...
    SwordMaster閱讀 15,118評(píng)論 0 19
  • 引言 填充撰筷,是繪圖軟件極為重要的一個(gè)功能。用戶通過點(diǎn)擊某空白區(qū)域內(nèi)任一點(diǎn)畦徘,即可為該區(qū)域著色毕籽,系統(tǒng)能自動(dòng)識(shí)別邊界線,...
    阿堃堃堃堃閱讀 3,571評(píng)論 0 1
  • 想做一只天上的鴻雁 想化一朵佛前的青蓮 想竹杖芒鞋走遍天下 想粗茶淡飯四海為家 豆蔻年華 她喚他冬郎哥哥 他喚她青...
    PhoebeNanmu閱讀 216評(píng)論 0 2
  • 001井辆,別人只是你生活的一部分关筒,只有先把自己的日子過好了,才會(huì)有其他精力去管理別人杯缺,不要去別人身上尋找自己蒸播,而把自...
    微微的微笑66閱讀 424評(píng)論 2 2