freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于vc的圖像邊緣檢測(cè)算法的研究與比較畢業(yè)論文-wenkub

2023-07-08 18:43:33 本頁面
 

【正文】 堪稱是Windows應(yīng)用,同時(shí)它本身就是通過使用Visual C++工具及類庫編寫而成的,可以對(duì)自身的資源進(jìn)行編輯。實(shí)現(xiàn)OLE的接口更加簡(jiǎn)單、方便。支持滾動(dòng)窗口和切分窗口(Splitter Window)。 VC++的特點(diǎn)本文介紹的Visual C++是數(shù)字圖像處理運(yùn)動(dòng)檢測(cè)系統(tǒng)的開發(fā)工具,本運(yùn)動(dòng)檢測(cè)系統(tǒng)是以VC++為軟件平臺(tái)建立起來的。C++代碼被編譯成匯編語言,可以直接在處理器上運(yùn)行,效率很高。第三章 Visual C++圖像編程 Visual C++概述 VC++是微軟公司開發(fā)的一個(gè)IDE(集成開發(fā)環(huán)境),換句話說,就是使用C++的一個(gè)開發(fā)平臺(tái)。 (3—9) Prewitt邊緣檢測(cè)算子理論基礎(chǔ)以下兩個(gè)卷積核形成了Prewitt邊緣檢測(cè)算子。邊緣檢測(cè)算子的中心與中心像素相對(duì)應(yīng),進(jìn)行卷積運(yùn)算。當(dāng)在圖像上逐個(gè)移動(dòng)卷積核時(shí),只要卷積核移動(dòng)到了圖像邊界,即卷積核懸掛在圖像邊界上時(shí),就會(huì)出現(xiàn)計(jì)算上的問題。比如,對(duì)于一個(gè)33的區(qū)域p與卷積核k卷積后,區(qū)域p的中心像素p5表示如下: (3—4)其中 (3—5)卷積核中各元素叫做卷積系數(shù)。是具有整數(shù)像素坐標(biāo)的輸入圖像,平方根運(yùn)算使該處理類似于在人類視覺系統(tǒng)中發(fā)生的是過程?;A(chǔ)邊緣檢測(cè)算子Roberts微分算子Sobel微分算子Prewitt微分算子Laplace微分算子Wallis算子Kirsch算子Log算子Dog算子二階導(dǎo)數(shù)過零點(diǎn)Canny算子 數(shù)字圖像邊緣檢測(cè)算子分類 Roberts邊緣檢測(cè)算子理論基礎(chǔ)[3]Roberts邊緣算子采用的是對(duì)角方向相鄰的兩個(gè)像素之差。檢測(cè)出的邊緣并不等于實(shí)際目標(biāo)的真實(shí)邊緣。在大部分情況下,都是把圖像的邊緣全部看作是階梯形邊緣, 然后求得檢測(cè)這種邊緣的各種最優(yōu)濾波器,用于實(shí)踐中。(3)檢測(cè) 在圖像中有許多點(diǎn)的梯度幅值比較大,而這些點(diǎn)在特定的應(yīng)用領(lǐng)域中并不都是邊緣,所以應(yīng)該用某種方法來確定哪些點(diǎn)是邊緣點(diǎn)。邊緣檢測(cè)算法包含有以下四個(gè)步驟:(1)濾波 邊緣檢測(cè)算法主要是基于圖像強(qiáng)度的一階和二階導(dǎo)數(shù),但導(dǎo)數(shù)的計(jì)算對(duì)噪聲很敏感,因此必須使用濾波器來改善與噪聲有關(guān)的邊緣檢測(cè)器的性能。邊緣檢測(cè)可借助微分算子在空間域通過模板卷積來實(shí)現(xiàn)。灰度斜面一階導(dǎo)數(shù)二階導(dǎo)數(shù)(a) 斜坡型(b) 線狀型(c) 屋頂型 典型邊緣的一階導(dǎo)數(shù)和二階導(dǎo)數(shù)由上述分析可以得出以下結(jié)論:一階導(dǎo)數(shù)的幅度值可以用來檢測(cè)邊緣的存在;通過檢測(cè)二階導(dǎo)數(shù)的過零點(diǎn)可以確定邊緣的中心位置;利用二階導(dǎo)數(shù)在過零點(diǎn)附近的符號(hào)可以確定邊緣像素位于邊緣的暗區(qū)還是亮區(qū)。對(duì)于斜坡型邊緣,在灰度斜坡的起點(diǎn)和終點(diǎn),其一階導(dǎo)數(shù)均有一個(gè)階躍,在斜坡處為常數(shù),其它地方為零;其二階導(dǎo)數(shù)在斜坡起點(diǎn)產(chǎn)生一個(gè)向上的脈沖,在終點(diǎn)產(chǎn)生一個(gè)向下的脈沖,其它地方為零,在兩個(gè)脈沖之間有一個(gè)過零點(diǎn),可以確定邊緣的中心位置。階躍型邊緣是一種理想的邊緣,由于采樣等緣故,邊緣處總有一些模糊,因而邊緣處會(huì)有灰度斜坡,形成了斜坡邊緣。第二章 圖像邊緣檢測(cè)圖像的邊緣是圖像最基本的特征,它是灰度不連續(xù)的結(jié)果。圖像屬性中的顯著變化通常反映了屬性的重要事件和變化。邊緣是指周圍像素灰度有階躍變化或屋頂變化的那些像素的集合,灰度或結(jié)構(gòu)等信息的突變處成為邊緣。特別是處理結(jié)果與中心像素鄰域有關(guān)的處理過程花費(fèi)時(shí)間更多。如此龐大的數(shù)據(jù)量給存儲(chǔ)、傳輸和處理都帶來巨大的困難。由于圖像處理是通過運(yùn)行程序進(jìn)行的,因此,設(shè)計(jì)不同的圖像處理程序,可以實(shí)現(xiàn)各種不同的處理目的。(2)易于控制處理效果。數(shù)字圖像處理(Digital Image Processing)是利用計(jì)算機(jī)的計(jì)算功能,實(shí)現(xiàn)與光學(xué)系統(tǒng)模擬處理相同效果的過程。數(shù)字化后的圖像、圖形稱為數(shù)字圖像、數(shù)字圖形,一般也簡(jiǎn)稱為圖像、圖形。圖像分析和理解的第一步是邊緣檢測(cè),因此邊緣檢測(cè)在圖像處理中有著重要的作用。圖像邊緣檢測(cè)大幅度地減少了數(shù)據(jù)量,并且剔除了可以認(rèn)為不相關(guān)的信息,保留了圖像重要的結(jié)構(gòu)屬性。數(shù)字圖像可以看成一個(gè)矩陣,或一個(gè)二維數(shù)組,這是在計(jì)算機(jī)上表示的方式。數(shù)字圖像處理具有如下特點(diǎn):(1)處理精度高,再現(xiàn)性好。在圖像處理程序中,可以任意設(shè)定或變動(dòng)各種參數(shù),能有效控制處理過程,達(dá)到預(yù)期處理效果。(4)圖像數(shù)據(jù)量龐大。如果精度及分辨率再提高,所需處理時(shí)間將大幅度增加。(6)圖像處理技術(shù)綜合性強(qiáng)。邊緣或許對(duì)應(yīng)著圖像中物體(的邊界)或許并沒有對(duì)應(yīng)著圖像中物體(的邊界),但是邊緣具有十分令人滿意的性質(zhì),它能大大地減少所要處理的信息但是又保留了圖像中物體的形狀信息,邊緣是圖像的最基本特征。這些包括(i)深度上的不連續(xù)、表面方向不連續(xù)、物質(zhì)屬性變化和場(chǎng)景照明變化。通過計(jì)算一階導(dǎo)數(shù)或者二階導(dǎo)數(shù)可以方便檢測(cè)出圖像中每個(gè)像素在其領(lǐng)域內(nèi)的灰度變化,從而檢測(cè)出邊緣。斜坡邊緣的坡度與被模糊的程度成反比,模糊程度高的邊緣往往表現(xiàn)為厚邊緣。對(duì)應(yīng)線狀型邊緣,在邊緣的起點(diǎn)和終點(diǎn)處,其一階導(dǎo)數(shù)都有一個(gè)階躍,分別對(duì)應(yīng)極大值和極小值;在邊緣的起點(diǎn)與終點(diǎn)處,其二階導(dǎo)數(shù)都對(duì)應(yīng)一個(gè)向上的脈沖,在邊緣中心對(duì)應(yīng)一個(gè)向下的脈沖,在邊緣中心兩側(cè)存在兩個(gè)過零點(diǎn)。另外,一階導(dǎo)數(shù)和二階導(dǎo)數(shù)對(duì)噪聲非常敏感,尤其是二階導(dǎo)數(shù)。邊緣檢測(cè)的基本思想是首先利用邊緣增強(qiáng)算子,突出圖像中的局部邊緣,然后定義像素的“邊緣強(qiáng)度”,通過設(shè)置閾值的方法提取邊緣點(diǎn)集 。需要指出 ,大多數(shù)濾波器在降低噪聲的同時(shí)也導(dǎo)致了邊緣強(qiáng)度的損失。最簡(jiǎn)單的邊緣檢測(cè)判據(jù)是梯度幅值閾值判據(jù)。邊緣檢測(cè)主要是(圖像的)灰度變化的度量、檢測(cè)和定位。由于圖像數(shù)據(jù)是二維的,而實(shí)際物體是三維的,從三維到二維的投影必然會(huì)造成信息的丟失,再加上成像過程中的光照不均和噪聲等原因的影響,使得有邊緣的地方不一定能被檢測(cè)出來,而檢測(cè)出來的邊緣也不一定代表實(shí)際邊緣。從圖像處理的實(shí)際效果來看,邊緣定位準(zhǔn),對(duì)噪聲敏感。 該算法的算子如下: (3—3) Sobel邊緣檢測(cè)算子理論基礎(chǔ):(1)卷積卷積可以簡(jiǎn)單的看成加權(quán)求和的過程。卷積核中卷積系數(shù)的大小、方向及排列次序決定了卷積的圖像處理效果。這時(shí)在原圖像上就不能完整的找到與卷積核中系數(shù)相對(duì)應(yīng)的9個(gè)圖像像素。兩個(gè)卷積核的最大值作為該點(diǎn)的輸出位。同使用的Sobel算子的方法一樣,圖像中的每個(gè)點(diǎn)都用這兩個(gè)核進(jìn)行卷積,取最大值作為輸出。嚴(yán)格的來說VC++不是門語言,雖然它和C++之間有密切的關(guān)系,如果形象點(diǎn)比喻的話,可以把C++看作為一種“工業(yè)標(biāo)準(zhǔn)”,而VC++則是某種操作系統(tǒng)平臺(tái)下的“廠商標(biāo)準(zhǔn)”,而“廠商標(biāo)準(zhǔn)”是在遵循“工業(yè)標(biāo)準(zhǔn)”的前提下擴(kuò)展而來的。對(duì)龐大的圖像數(shù)據(jù)進(jìn)行處理需要使用大量的內(nèi)存,而計(jì)算機(jī)的物理內(nèi)存往往是有限的,因此需要有效地控制內(nèi)存的操作。Visual C++是Microsoft公司推出的開發(fā)Win32環(huán)境程序,面向?qū)ο蟮目梢暬删幊滔到y(tǒng)。支持工具條(Toolbar)和狀態(tài)條(Status bar).能夠處理Microsoft Visual Basic控制。因此,它現(xiàn)在已經(jīng)成為開發(fā)Win32程序,包括圖像處理程序的主要開發(fā)工具。(3)C/C++編譯器:Visual C++的編譯器可以處理C和C++源代碼,它通過源代碼文件后綴來識(shí)別代碼本身所使用的語言。(7)AppWizard:它會(huì)按照用戶通過對(duì)話框指定的特性、類名及源代碼文件名來產(chǎn)生Windows應(yīng)用的工作構(gòu)架。(11)Windows診斷工具:用于對(duì)手工編制的make文件進(jìn)行處理的NMAKE程序。VC本來就是一個(gè)功能很強(qiáng)大的軟件,可以完成幾乎所有的事情。第四章 邊緣檢測(cè)算子的編程實(shí)現(xiàn)通過VC來實(shí)現(xiàn)邊緣檢測(cè)算子的功能,先對(duì)Roberts算子、Sobel算子、Prewitt算子進(jìn)行函數(shù)定義,然后再進(jìn)行函數(shù)調(diào)用,從而達(dá)到邊緣檢測(cè)的不同效果。 //原圖數(shù)據(jù)區(qū)指針 int wide ,height。wide=thisGetWidth()。jheight1。pixel[1]=p_data[j*wide+i+1]。//刪除緩沖區(qū)Delete temp;}調(diào)用程序:void CDynSplitView2::OnRobert() { clearmem()。 //循環(huán)變量 BYTE*temp=new BYTE[wide*height]。jheighttempH+tempMY+1。for(k=0。l++)f
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1