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

基于MFC的手繪圖形實時去噪研究與應用

2017-03-31 18:56:55隋雪潔高林楊偉萬國超劉貴彬
軟件導刊 2016年8期

隋雪潔+高林+楊偉+萬國超+劉貴彬

摘 要:分析了離散點數據的一般處理方法,針對慢速手繪圖形產生的邊緣噪點問題,提出一種適用于實時生成圖形的預處理算法,對采集的數據點進行實時篩選插值,以保證數據準確可靠。在MFC中進行實現,并將其應用于軟件開發,測試表明該算法繪圖效果改善極大,慢速手繪圖形平滑且不失真。

關鍵詞關鍵詞:離散點;MFC;GDI;插值;邊緣噪點

DOIDOI:10.11907/rjdk.161468

中圖分類號:TP317.4

文獻標識碼:A 文章編號:1672-7800(2016)008-0183-03

0 引言

無論是科學研究還是實際生產中,人們通過采集、測量或者實驗會獲得很多數據,通常情況下,這些數據都是離散的,很難直接從一大堆離散數據中找到它們的內在聯系。隨著計算機圖形學的發展,離散數據的重建與可視化得到越來越廣泛的研究與應用,主要是對數據進行插值、擬合形成曲線或曲面,用圖形圖像的方式表現出來。本文結合實際需求,針對手繪圖形實時輸出產生的噪點問題,提出一種新的研究方法,對干擾點進行處理,并在MFC中實現。實驗證明,該方法能夠很好地應用于手繪圖形生成中。

1 問題闡述

激光筆打在手繪板上進行繪圖,采樣畫筆的采樣頻率固定不變,快速書寫時點與點之間的間隔大,采集的樣點相對精確,所繪出的圖像圓滑,可以被視覺所接受。但在實際操作中,手繪迅速程度無法保證,當筆觸放慢時,點與點的間隔很小,相同時間段內,采集點的數量增多,若不對采集點進行處理,則導致繪出的圖像產生邊緣噪點。

2 離散點處理技術

離散點是一些孤立的點集,每個元素之間都有一定的間距,在二維或者三維空間上無規律分布,復雜程度不一[1]。

目前,國內外學者主要用3種技術對離散點進行處理,選擇何種方法取決于數據的準確性,用逼近的方法處理帶有一定誤差的數據;用插值的方法處理非常準確的數據;若部分數據有誤差,部分數據準確,則選用擬合的方法。

上述過程將數據分為兩部分,在閾值范圍以內的不做處理,若將不合閾值的點全部刪除,曲線會更加平滑,但直接刪除的后果是數據的誤差導致圖像失真,因此,該部分暫留點進行分析后再加以精確,保證數據的可靠性。

考慮到筆畫的趨勢問題,將點按照方位進行處理,以本次保留點為原點,下一保留點為終點,兩點連線作為參考向量,計算其余點向量與之夾角,夾角越小,與用戶繪制圖形相關性越大,反之,夾角太大,則極有可能為干擾點。

定義相鄰保留點的中點坐標為(x,y),干擾點坐標為(xj,yj),w1=0.5,與參照線直線夾角余弦值為w2,若w2>w1將本部分點再次刪減,以距離加權的方式計算其余采集點的估計值remain,插入相應保留點位置。

當前對已有離散點做好預處理,運用GDI的DrawCurve算法,通過一定的張力,將最終保留點連接為基數樣條曲線,保證繪制的曲線平滑地經過每一個點,陡度上沒有突然的變化和尖角,確保繪制的滑順性。

4 實現

4.1 平臺

采用VS/MFC開發環境,MFC是VC++ 的核心,徹底封裝Windows應用程序開發包的功能和結構,提供一個應用程序框架,并繼承C++繪圖方面的優點,結合圖形設備接口GDI,處理所有Windows程序的圖形輸出。MFC提供了兩種重要的類以支持GDI繪圖,一是用于設置繪圖屬性和繪制圖形的設備環境DC類,二是各種GDI繪圖對象的繪圖對象類[2]。

4.2 雙緩沖機制

Windows需要重畫窗口時,會向窗口發出一個消息函數,應用程序將在消息響應函數中重繪,導致屏幕不停閃爍,繪圖效率低,CPU占用率高,還有可能導致程序崩潰[3]。因此對于本次復雜繪圖,采用后緩沖區的方式,將窗口內容拷貝到dc中,要顯示的函數先繪制在內存虛擬dc上。為方便調用,dc作為一個全局的變量存在,當所有操作完成后,再將內容復制到屏幕,實質上只是在OnPaint里貼圖,解決屏幕閃爍問題。

主要實現代碼如下:

CPaintDC dc(this);CRect rect;GetClientRect(&rect); //獲取對話框長寬CDC dcBmp; //定義并創建一個內存設備環境 CBitmap MemBitmap; //定義一個位圖對象dcBmp.CreateCompatibleDC(&dc);//創建兼容性DC MemBitmap.CreateCompatibleBitmap(&dc,rect.Width(),rect.Height());//建立一個與屏幕顯示兼容的位圖,將位圖選入臨時內存設備環境

4.3 數據

采集的離散點數據保存在bin文件中,每個點分別由X坐標、Y坐標、筆畫計數組成,其中筆畫用來判斷兩點是否相連,采集數據部分點的存儲信息如圖1所示。

定義點的結構體:

typedef struct Po_s{ unsigned int x; 橫坐標值 unsigned int y; 縱坐標值 unsigned int down; 筆尖抬起與否的標志}Po

4.4 其它參數說明

其它參數說明如表1所示。

4.5 繪圖過程

繪制過程分為畫筆連續和畫筆抬起兩種情況,分別做不同處理。畫筆抬起時,調用DrawCurve算法繪圖,連接靜態數組point中已存點,將掃描點存入靜態數組point[0],同時將計數器n重置為1,間隔k置為1,最后清空靜態數組point。畫筆連續時,過程相對復雜,處理如下:

(1)掃描點間距小于閾值。①將該點刪除,暫時加入動態數組pt,間隔k加1;②若該掃描點為最后一點,調用DrawCurve算法繪圖,連接靜態數組point中已存點,將計數器n重置為0;否則,退出。

(2)掃描點間距大于等于閾值。①若刪除點數量num超過或等于12個(經反復試驗的最優臨界值):將動態數組pt中的點取出,按算法求取估計點,加入靜態數組point; 將計數器n加1,num置為0,間隔k置為1。若計數器n等于5,繪圖,并將均值點存入point[0],將計數器n置為1,否則退出;若刪除點數量num小于7個,直接退出;②將掃描點存入靜態數組point,計數器n加1,間隔k置為1,動態數組pt清空;③若計數器n等于5,繪圖,將掃描點存入point[0],計數器置為1,間隔k置為1,動態數組pt清空;否則(計數器n<5),若該掃描點為最后一點,調用DrawCurve算法繪圖,連接靜態數組point中已存點,將計數器n重置為0;④否則,進行下一次點的循環掃描。

5 測試

將實現的算法應用于慢速繪圖,用幾種不同筆觸走向的圖形進行測試,與未處理圖像比較,邊緣噪點去除效果顯著且不失真。曲線、直線、漢字的測試結果對比分別如圖2~圖4所示,可見優化后的圖像比優化前更加平滑。

6 結語

本文將一般離散點處理方式與實際問題相結合,針對實時生成的圖形,研究一種新型離散點的預處理方法,拓寬了直接曲線擬合方式的適用空間。在MFC中加以實現,并運用到軟件開發中,對不同類型的筆畫進行反復測試,達到了理想效果,筆畫連接更加正確、順暢。

參考文獻:

[1]蔡德福,石東源,李高望,等.基于輸入隨機變量離散數據的概率潮流計算方法[J].電網技術,2013(9):2475-2479.

[2]黃琛.基于MFC的繪圖軟件設計與實現[J].電腦知識與技術,2013(10):2345-2348.

[3]江建國,溫少營,張瑞楠.基于雙緩沖技術的GDI+無閃爍繪圖[J].計算機應用,2012(12):137-139.

[4]蘇江寬,基于B樣條的圖像插值算法研究[D].廣州:廣東工業大學,2014(6):12-16.

[5]顧天奇,張雷,冀世軍,等.封閉離散點的曲線擬合方法[J].吉林大學學報,2015(3):438-441.

[6]謝裕敏,舒輝,陳建敏,等.MFC消息響應函數的逆向定位[J].計算機應用,2009(5):1394-1396.

[7]蔡山,張浩,陳洪輝,等.基于最小二乘法的分段三次曲線擬合方法研究[J].科學技術與工程,2007(2):353-355.

[8]MU GUOWANG,DAI SHIJIE.Reconstruction of B-spline surface by interpolating boundary curves and approximating inner points[J].Computer Aided Drafting,Design and Manufacturing,2012(3):32-34.

(責任編輯:孫 娟)

主站蜘蛛池模板: 亚洲香蕉在线| 蜜桃视频一区二区| 国产精品jizz在线观看软件| 国产色偷丝袜婷婷无码麻豆制服| 欧美亚洲第一页| 亚洲AV无码乱码在线观看裸奔| 成年A级毛片| 少妇精品网站| 夜夜操国产| 国产成人精品一区二区不卡| 午夜视频日本| 欧美成人精品一级在线观看| 国产美女精品人人做人人爽| 国产精品视频系列专区| 91精品国产一区自在线拍| 亚洲经典在线中文字幕| 欧美国产综合视频| 久久综合色播五月男人的天堂| jijzzizz老师出水喷水喷出| 日韩精品一区二区深田咏美| 91精品啪在线观看国产| 一区二区在线视频免费观看| 欧美国产菊爆免费观看| 奇米影视狠狠精品7777| 人妻精品久久无码区| 亚洲中文字幕无码mv| 成年av福利永久免费观看| 久久久久久久蜜桃| 中字无码精油按摩中出视频| 国产最新无码专区在线| 谁有在线观看日韩亚洲最新视频| 中文字幕av无码不卡免费| 日韩东京热无码人妻| 香蕉久久国产超碰青草| 人妻无码中文字幕第一区| 99久久国产综合精品2020| AV老司机AV天堂| 性欧美久久| 久久精品人妻中文视频| 日韩一二三区视频精品| 国产欧美亚洲精品第3页在线| 亚洲日韩高清在线亚洲专区| 大香伊人久久| 欧美精品v| 国产精品流白浆在线观看| 无码视频国产精品一区二区 | 97视频在线精品国自产拍| 国产精品第一区| 精品成人一区二区| 19国产精品麻豆免费观看| 天堂va亚洲va欧美va国产| 在线观看国产一区二区三区99| 欧美国产精品拍自| 国产91av在线| 91成人在线观看| 人禽伦免费交视频网页播放| 波多野结衣久久高清免费| 人妻无码中文字幕第一区| 久久国产成人精品国产成人亚洲 | 国产精品男人的天堂| 久热99这里只有精品视频6| 亚洲av综合网| 午夜在线不卡| 国产97区一区二区三区无码| 亚洲狠狠婷婷综合久久久久| 波多野结衣AV无码久久一区| 亚洲小视频网站| 国产一区二区三区在线精品专区| 91在线播放国产| 午夜福利在线观看入口| 福利视频久久| 亚洲天堂久久久| 欧美日韩亚洲国产主播第一区| 色综合综合网| 色一情一乱一伦一区二区三区小说| 国产精品开放后亚洲| 国产成人无码久久久久毛片| 一本综合久久| 欧美在线导航| 麻豆AV网站免费进入| 亚洲第七页| 无码一区二区三区视频在线播放|