999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種改進(jìn)的多邊形區(qū)域填充算法

2016-03-22 22:04:41衛(wèi)洪春
電腦知識(shí)與技術(shù) 2016年2期

衛(wèi)洪春

摘要:多邊形區(qū)域填充是圖形學(xué)和數(shù)字圖像處理等領(lǐng)域的基本問題。種子填充算法雖然簡(jiǎn)單,但需要大量??臻g來存儲(chǔ)相鄰點(diǎn),容易發(fā)生工作棧溢出的情況,在實(shí)際填充過程中很難真正發(fā)揮作用。該文提出了一種改進(jìn)的種子填充算法,在堆中實(shí)現(xiàn)棧操作,突破了工作棧大小的限制,可處理任意大的填充區(qū)域。實(shí)驗(yàn)表明,該算法具有較高的運(yùn)算效率及實(shí)用價(jià)值,對(duì)實(shí)際應(yīng)用有較好的參考作用。

關(guān)鍵詞:遞歸;多邊形;種子填充;工作棧

中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)02-0210-03

1 概述

多邊形區(qū)域填充是圖形學(xué)和數(shù)字圖像處理等領(lǐng)域中計(jì)算機(jī)應(yīng)用的一個(gè)重要方面。填充算法的優(yōu)劣直接影響圖形顯示的速度和精確性。多邊形填充一直是計(jì)算機(jī)圖形學(xué)研究的熱點(diǎn),常用于CAD/CAM、界面設(shè)計(jì)、地理信息系統(tǒng)、廣告設(shè)計(jì)、機(jī)械制造、陰影、圖像處理等領(lǐng)域。

多邊形填充算法較多,主要有種子填充法和掃描線填充法。種子填充是從多邊形區(qū)域的一個(gè)內(nèi)點(diǎn)開始,由內(nèi)向外用給定顏色畫點(diǎn)直到邊界為止。若邊界指定了某種顏色,則種子填充算法可逐像素處理直到邊界色為止。該算法需給出圖像數(shù)據(jù)的區(qū)域及區(qū)域內(nèi)的一個(gè)點(diǎn),該算法較適合以人機(jī)交互方式進(jìn)行的圖像填充操作。種子填充算法的優(yōu)點(diǎn)是非常簡(jiǎn)單,缺點(diǎn)是需要大量??臻g來存儲(chǔ)相鄰點(diǎn),且當(dāng)待填充區(qū)域較大時(shí),容易造成棧溢出,從而中止區(qū)域填充。本文提出了一種改進(jìn)的種子填充算法,可以處理任意大的區(qū)域填充。

2 簡(jiǎn)單種子填充算法

簡(jiǎn)單種子填充算法的核心是遞歸算法。該方法理論上非常簡(jiǎn)單、準(zhǔn)確,但重復(fù)計(jì)算較多。種子填充算法有“4連通算法”和“8連通算法”,如圖1所示。

以四連通域的填充為例,四連通域從區(qū)域內(nèi)任意一點(diǎn)出發(fā),通過上、下、左、右四個(gè)方向到達(dá)區(qū)域內(nèi)的任意像素。四向連通填充算法如下:

a) 種子像素壓入棧;

b) 若棧為空,則轉(zhuǎn)e);否則轉(zhuǎn)c);

c) 彈出一個(gè)像素,并將該像素置成填充色;判斷該像素相鄰的四連通像素是否為邊界色或已經(jīng)置成多邊形的填充色,若不是,則將該像素壓入棧;

d) 轉(zhuǎn)b);

e) 結(jié)束。

3 改進(jìn)的種子填充算法

由于簡(jiǎn)單種子填充算法存在上述缺點(diǎn),在實(shí)際填充過程中很難真正發(fā)揮作用。因?yàn)樵诤瘮?shù)調(diào)用過程中,調(diào)用函數(shù)和被調(diào)用函數(shù)之間的鏈接和信息交換需要通過工作棧來完成,而棧是一種容納數(shù)據(jù)的容器,數(shù)據(jù)只能從棧的一端存入(壓入棧),同時(shí)只能從棧的同一端取出(彈出棧)。運(yùn)行棧是一段區(qū)域的內(nèi)存空間,運(yùn)行棧由很多棧幀構(gòu)成,每個(gè)棧幀對(duì)應(yīng)一次函數(shù)調(diào)用。棧幀的內(nèi)容包括:本次函數(shù)調(diào)用的形參值、控制信息、局部變量值及臨時(shí)數(shù)據(jù)。函數(shù)調(diào)用時(shí),將棧幀壓入運(yùn)行棧;返回時(shí)則彈出棧幀。由此可見,當(dāng)函數(shù)進(jìn)行遞歸調(diào)用時(shí),隨著遞歸深度的增加,被壓入的棧幀將越來越多,工作棧的可用空間越來越少,直至消耗殆盡。如圖3(a)及圖3(b)所示。

雖然開發(fā)平臺(tái)可調(diào)整運(yùn)行工作棧的大小,例如,在VC環(huán)境下,可通過打開工程,依次操作命令Project->Setting->Link,在Link選項(xiàng)卡的Category 項(xiàng)選擇Output,然后在Reserve中設(shè)定棧的值。reserve默認(rèn)值為1MB,最小值為4Byte若將棧空間設(shè)為4MB,則將reserve改為0x400000。通過以上操作即可完成工作棧大小的調(diào)整。但是調(diào)整了工作棧大小后會(huì)引來一些其他的問題,如響應(yīng)時(shí)間等。因此這不能解決根本問題?;谏鲜鲈?,本文提出了一種將簡(jiǎn)單種子填充遞歸算法改進(jìn)為通過堆棧操作的非遞歸算法。通過在堆中動(dòng)態(tài)開辟一段空間作為棧空間,則這樣的??臻g可以相當(dāng)大,從而突破了運(yùn)行工作棧大小的限制,滿足了種子填充算法正確運(yùn)行的要求。在MFC中的測(cè)試代碼如下:

4 結(jié)語(yǔ)

簡(jiǎn)單種子填充算法需要大量棧空間來存儲(chǔ)相鄰點(diǎn),容易造成工作棧的溢出,其實(shí)用價(jià)值不高。由于堆是很大的自由空間,從而可在堆中動(dòng)態(tài)分配所需空間來實(shí)現(xiàn)棧的操作,本文提出的改進(jìn)的種子填充算法,突破了工作棧大小的限制,可處理任意大的填充區(qū)域。實(shí)驗(yàn)表明,該算法具有較好的實(shí)用價(jià)值及較高的運(yùn)算效率,對(duì)實(shí)際應(yīng)用有較好的參考作用。

參考文獻(xiàn):

[1] 王汝傳,黃海平,林巧民.計(jì)算機(jī)圖形學(xué)教程[M]. 2版.北京:人民郵電出版社,2009.

[2] 和青芳. 計(jì)算機(jī)圖形學(xué)原理及算法教程[M].北京:清華大學(xué)出版社,2008.

[3] 孫劍,王玉亭. C++中一種高性能動(dòng)態(tài)數(shù)組的實(shí)現(xiàn)方法[J].現(xiàn)代計(jì)算機(jī),2007,(4):102-104,112.

[4] 蘇小紅,李東,唐好選,等.計(jì)算機(jī)圖形學(xué)實(shí)用教程(第3版)[M]. 北京:人民郵電出版社,2014.

[5] 嚴(yán)蔚敏,吳偉民. 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)[M]. 北京:清華大學(xué)出版社,2015.

[6]張雪彬,劉培國(guó),曹兵.基于C++語(yǔ)言的多維動(dòng)態(tài)數(shù)組的實(shí)現(xiàn)[J]. 現(xiàn)代電子技術(shù),2006,29(24):68-69.

主站蜘蛛池模板: 自拍偷拍欧美| 亚洲无码视频一区二区三区| 国产福利在线免费| 日韩美女福利视频| 青草视频网站在线观看| 亚洲欧美综合另类图片小说区| 欧美19综合中文字幕| 欧美在线视频不卡| 亚洲精品欧美日本中文字幕| 玖玖精品视频在线观看| 国产精品久久久久久影院| 亚洲综合亚洲国产尤物| 亚洲免费黄色网| 国产va在线观看免费| 亚洲中文字幕久久精品无码一区 | 亚洲第一中文字幕| 国产真实二区一区在线亚洲| 国产主播一区二区三区| 99久久精品免费看国产电影| 天堂成人av| 88av在线| 2020最新国产精品视频| 亚洲欧洲日产无码AV| 亚洲无码免费黄色网址| 国产成人精品视频一区视频二区| 国语少妇高潮| 青青操国产| 午夜综合网| 国产一区亚洲一区| 国产亚洲精品精品精品| 久久永久免费人妻精品| 99精品免费欧美成人小视频| 免费va国产在线观看| 国产69精品久久| 国产av无码日韩av无码网站| 午夜啪啪网| 国产欧美日韩91| 一本二本三本不卡无码| 久久精品国产国语对白| 国产乱子伦手机在线| 一本大道香蕉高清久久| 婷婷综合色| 国产精女同一区二区三区久| 真实国产乱子伦高清| 欧美伊人色综合久久天天| 97精品国产高清久久久久蜜芽| 依依成人精品无v国产| 国产精品理论片| 国内精品91| 国产一区二区网站| 成年人福利视频| 国产在线高清一级毛片| 亚洲中文字幕久久无码精品A| 在线欧美日韩国产| 亚洲福利视频一区二区| 午夜一区二区三区| 国产全黄a一级毛片| AV色爱天堂网| 91视频首页| 亚洲伊人天堂| 青青久视频| 午夜少妇精品视频小电影| 国产一区二区三区精品久久呦| 欧美成人一级| 综合色婷婷| 无码人妻免费| 国产乱子伦精品视频| 亚洲美女高潮久久久久久久| 亚洲视频免费播放| 91丨九色丨首页在线播放| 国产黑丝视频在线观看| 99精品国产电影| 澳门av无码| 国产毛片片精品天天看视频| 一本色道久久88亚洲综合| 中文字幕在线播放不卡| 韩日免费小视频| 国产精品入口麻豆| 米奇精品一区二区三区| 欧美精品亚洲精品日韩专区| 粉嫩国产白浆在线观看| 蜜桃臀无码内射一区二区三区 |