數(shù)字圖像處理方法研究與實現(xiàn)——基于vc的圖像增強實現(xiàn)設(shè)計_第1頁
已閱讀1頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p>  畢 業(yè) 設(shè) 計 (論 文)</p><p>  專 業(yè) 電子信息工程 </p><p>  班 級 </p><p>  學(xué)生姓名 </p><p>  學(xué) 號 </p&g

2、t;<p>  課 題 數(shù)字圖像處理方法研究與實現(xiàn) </p><p>  ——基于VC++的圖像增強實現(xiàn) </p><p>  指導(dǎo)教師 </p><p><b>  摘 要</b></p><p>  圖像在傳送和轉(zhuǎn)換時會造成圖像的某些降質(zhì),所以有必要對降質(zhì)

3、的圖像進行改善處理。其中的一種方法是不考慮圖像質(zhì)量降低的原因,只將圖像中感興趣的特征有選擇的突出,從而衰減次要信息。這種方法能夠提高圖像的可讀性,改善后的圖像不一定逼近原始圖像,但能夠突出目標(biāo)的輪廓、衰減各種噪聲、將黑白圖像轉(zhuǎn)換成色彩圖形等。這類方法通常稱為圖像增強技術(shù)。</p><p>  圖像增強技術(shù)通常有兩種方法:空間域法和頻率域法。空間域法主要是在空間域中對圖像像素灰度值直接進行運算處理。本文圍繞空間域法

4、,對數(shù)字圖像的增強處理進行了研究,著重介紹其中的直方圖、直方圖均衡化及圖像平滑處理中的鄰域平均和中值濾波。并利用VC++實現(xiàn)上述方法對圖像的處理。</p><p>  關(guān)鍵詞:圖像增強;直方圖;圖像平滑;鄰域平均;中值濾波</p><p><b>  Abstract</b></p><p>  The image in the transmi

5、ssion and conversion cases will cause some blurred image, so,it is necessary for the image to have an improved treatment. One way is to not consider the reasons for degradation of image quality, the characteristics of th

6、e image selected outstanding, thereby attenuating less important information. This method can improve the readability of the image, the image after improvement is not necessarily approximate to the original image, such a

7、s highlighting the outline of the ta</p><p>  Image enhancement technology usually has two kinds of methods: spatial domain and frequency domain method. The spatial domain method is direct computation of pix

8、el gray values in the spatial domain. This paper focuses on the spatial domain method, enhancement of digital image processing are studied, emphatically introduces the histogram equalization and histogram of image smooth

9、ing, neighborhood averaging and median filtering. And VC++ is used to realize the method for image processing.</p><p>  Keywords:Image Enhancement; Histogram; Image smooth; Neighborhood averaging; Median fil

10、tering </p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p>  AbstractII</p><p><b>  1 緒論1</b></p><p><b>  1.1課題

11、背景1</b></p><p>  1.2 圖像增強的研究及發(fā)展現(xiàn)狀2</p><p>  1.3 論文組織結(jié)構(gòu)3</p><p>  2 圖像增強的基本理論4</p><p>  2.1 數(shù)字圖像的基本理論4</p><p>  2.1.1數(shù)字圖像的表示4</p><

12、p>  2.1.2圖像的灰度4</p><p>  2.1.3灰度直方圖4</p><p>  2.2 數(shù)字圖像增強概述4</p><p>  2.3 圖像增強概述6</p><p>  2.3.1圖像增強的定義6</p><p>  2.3.2常用的圖像增強方法6</p><p&

13、gt;  2.4 圖像增強流程圖8</p><p><b>  2.5本章小結(jié)8</b></p><p>  3 圖像增強方法與原理9</p><p>  3.1 直方圖變換9</p><p>  3.1.1直方圖修正基礎(chǔ)9</p><p>  3.1.2直方圖均衡化10</p

14、><p>  3.2 圖像平滑11</p><p>  3.2.1圖像平滑11</p><p>  3.2.2鄰域平均11</p><p>  3.2.3中值濾波12</p><p>  3.4本章小結(jié)12</p><p>  4 VC++6.0以及圖像增強的實現(xiàn)13</p>

15、<p>  4.1 VC++6.0簡介13</p><p>  4.1.1 VC++6.0 簡介13</p><p>  4.1.2開發(fā)環(huán)境13</p><p>  4.1.3 圖片應(yīng)用程序的創(chuàng)建14</p><p>  4.2圖像增強實現(xiàn)方法14</p><p>  4.2.1灰度修正的實現(xiàn)

16、14</p><p>  4.2.2鄰域平均的實現(xiàn)18</p><p>  4.2.3中值濾波的實現(xiàn)19</p><p>  4.3本章小結(jié)21</p><p><b>  5總結(jié)與展望22</b></p><p><b>  5.1總結(jié)22</b></p&g

17、t;<p><b>  5.2展望22</b></p><p><b>  參考文獻(xiàn)23</b></p><p><b>  致謝24</b></p><p><b>  附錄25</b></p><p><b>  部分程

18、序代碼25</b></p><p><b>  1.讀入圖片25</b></p><p>  2.繪制直方圖25</p><p>  3.灰度直方圖26</p><p>  4.直方圖均衡化27</p><p>  數(shù)字圖像處理方法研究與實現(xiàn)</p><p

19、>  ——基于VC++的圖像增強實現(xiàn)</p><p>  電子與信息工程學(xué)院 電子信息工程 10電子1班 胡水清 10205010107</p><p><b>  指導(dǎo)老師 宋楊</b></p><p><b>  1 緒論</b></p><p>  數(shù)字圖像處理是用計算機對圖像信

20、息進行處理的一門技術(shù),使利用計算機對圖像進行各種處理的技術(shù)和方法。利用數(shù)字圖像處理主要是為了修改圖形,改善圖像質(zhì)量,或是從圖像中提起有效信息,還有利用數(shù)字圖像處理可以對圖像進行體積壓縮,便于傳輸和保存。</p><p><b>  1.1課題背景</b></p><p>  數(shù)字圖像處理技術(shù)是20世紀(jì)60年代隨著計算機技術(shù)的發(fā)展而產(chǎn)生、發(fā)展和不斷成熟起來的一個新興技術(shù)

21、領(lǐng)域,它在理論上和實際應(yīng)用中都取得了巨大的成就。</p><p>  視覺是人類最重要的感知手段,圖像又是視覺的基礎(chǔ)。早期圖像處理的目的是改善圖像質(zhì)暈,它以人為對象,以改善人的視覺效果為目的。圖像處理中輸入的是質(zhì)量低的圖像,輸出的是改善質(zhì)量后的圖像。常用的圖像處理方法有圖像增強、復(fù)原、編碼、壓縮等。首次獲得成功應(yīng)用的是美國噴氣推進實驗室(JPL)。他們對航天探測器徘徊者7號在1964年發(fā)回的幾千張月球照片進行圖像

22、處理,如:幾何校正、灰度變換、去除噪聲,獲得了巨大的成功。隨后又對探測飛船發(fā)回的近十萬張照片進行更為復(fù)雜的圖像處理,獲得月球的地形圖、彩色圖及全景鑲嵌圖,為人類登月創(chuàng)舉奠定了堅實的基礎(chǔ),也推動了數(shù)字圖像處理這門學(xué)科的誕生。在以后的宇航空間技術(shù)探測研究中,數(shù)字圖像處理技術(shù)都發(fā)揮巨大的作用。</p><p>  數(shù)字圖像處理技術(shù)取得的另一個巨大成就是在醫(yī)學(xué)上。1972年英國EMI公司工程師發(fā)明了用于頭顱診斷的X射線計

23、算機斷層攝影裝置,也就是我們通常所說的CT(Computer Tomography)。1975年EMI公司又成功研制出全身用的CT裝置,獲得了人體各個部位鮮明清晰的斷層圖像。1979年,這項無損傷診斷技術(shù)被授予諾貝爾獎,以表彰它對人類做出的劃時代貢獻(xiàn)。</p><p>  從20世紀(jì)70年代中期開始,隨著計算機技術(shù)和人工智能、思維科學(xué)研究的迅速發(fā)展,數(shù)字圖像處理技術(shù)向更高、更深層次發(fā)展。人們已開始研究如何用計算機

24、系統(tǒng)解釋圖像,類似人類視覺系統(tǒng)理解外部世界,這被稱為圖像理解或計算機視覺。很多國家,特別是發(fā)達(dá)國家投入更多的人力、物力到這項研究,取得了不少的重要的研究成果。</p><p>  20世紀(jì)80年代末期,人們開始將其應(yīng)用于地理信息系統(tǒng),研究海圖的自動讀入、自動生成方法。數(shù)字圖像處理技術(shù)的應(yīng)用領(lǐng)域不斷拓展。</p><p>  數(shù)字圖像處理技術(shù)的大發(fā)展是從20世紀(jì)90年代初開始的。隨后數(shù)字圖像

25、處理技術(shù)迅猛發(fā)展,到目前為止,圖像處理在圖像通訊、辦公自動化系統(tǒng)、地理信息系統(tǒng)、醫(yī)療設(shè)備、衛(wèi)星照片傳輸及分析和工業(yè)自動化領(lǐng)域的應(yīng)用越來越多。</p><p>  進入21世紀(jì),隨著計算機技術(shù)的迅猛發(fā)展和相關(guān)理論的不斷完善,數(shù)字圖像處理技術(shù)在許多應(yīng)用領(lǐng)域受到廣泛重視并取得了重大的開拓性成就。屬于這些領(lǐng)域的有航空航天、生物醫(yī)學(xué)、機器人視覺、公安司法、軍事制導(dǎo)、文化藝術(shù)等。該技術(shù)成為一門引人注目、前景遠(yuǎn)大的新學(xué)科。&l

26、t;/p><p>  1.2 圖像增強的研究及發(fā)展現(xiàn)狀</p><p>  圖像增強是指根據(jù)特定的需要突出圖像中的重要信息,同時減弱或去除不需要的信息。從不同的途徑獲取的圖像,通過進行適當(dāng)?shù)脑鰪娞幚?,可以將原本模糊不清甚至根本無法分辨的原始圖像處理成清晰的富含大量有用信息的可使用圖像,有效地去除圖像中的噪聲、增強圖像中的邊緣或其他感興趣的區(qū)域,從而更加容易對圖像中感興趣的目標(biāo)進行檢測和測量。

27、處理后的圖像是否保持原狀已經(jīng)是無關(guān)緊要的了,不會因為考慮到圖像的一些理想形式而去有意識的努力重現(xiàn)圖像的真實度。圖像增強的目的是增強圖像的視覺效果,將原圖像轉(zhuǎn)換成一種更適合于人眼觀察和計算機分析處理的形式。它一般要借助人眼的視覺特性,以取得看起來較好地視覺效果,很少涉及客觀和統(tǒng)一的評價標(biāo)準(zhǔn)。增強的效果通常都與具體的圖像有關(guān)系,靠人的主觀感覺加以評價。</p><p>  圖像增強處理的應(yīng)用已經(jīng)滲透到醫(yī)學(xué)診斷、航空航

28、天、軍事偵察、指紋識別、無損探傷、衛(wèi)星圖片的處理等領(lǐng)域。如對x射線圖片、CT影像、內(nèi)窺鏡圖像進行增強,使醫(yī)生更容易從中確定病變區(qū)域,從圖像細(xì)節(jié)區(qū)域中發(fā)現(xiàn)問題;對不同時間拍攝的同一地區(qū)的遙感圖片進行增強處理,偵查是否有敵人軍事調(diào)動或軍事裝備及建筑出現(xiàn);在煤礦工業(yè)電視系統(tǒng)中采用增強處理來提高工業(yè)電視圖像的清晰度,克服因光線不足、灰塵等原因帶來的圖像模糊、偏差等現(xiàn)象,減少電視系統(tǒng)維護的工作量。圖像增強技術(shù)的快速發(fā)展同它的廣泛應(yīng)用是分不開的,發(fā)

29、展的動力來自穩(wěn)定涌現(xiàn)的新的應(yīng)用,我們可以預(yù)料,在未來社會中圖像增強技術(shù)將會發(fā)揮更為重要的作用。</p><p>  在圖像處理過程中,圖像增強是十分重要的一個環(huán)節(jié)。本文的主要內(nèi)容就是圍繞圖像增強部分的一些基本理論,并利用VC++實現(xiàn)圖像的增強處理而展開的。</p><p>  1.3 論文組織結(jié)構(gòu)</p><p>  數(shù)字圖像處理方法研究與實現(xiàn)。本文主要是對數(shù)字圖

30、像處理方法中的圖像增強的方法進行了研究,并利用VC++實現(xiàn)處理方法,其組織結(jié)構(gòu)如下:</p><p>  第一章:簡要介紹了論文的選題背景及其發(fā)展現(xiàn)狀,對圖像增強進行了簡要的介紹,最后對論文的研究內(nèi)容和組織結(jié)構(gòu)進行了說明。</p><p>  第二章:數(shù)字圖像增強概述,這一部分將會介紹圖像增強的定義及基本理論。</p><p>  第三章:圖像增強的方法的介紹,著重

31、介紹了其中的直方圖均衡化、鄰域平均和中值濾波三種方法。</p><p>  第四章:在本節(jié)介紹了此次研究所使用的軟件VC++ 6.0,并詳細(xì)描述基于該軟件的圖像增強的實現(xiàn)的操作流程,并對直方圖均衡化、鄰域平均、中值濾波三種方法處理過后的圖像進行對比。</p><p>  第五章:總結(jié)與展望,總結(jié)自己針對本課題所做的工作,并對課題的未來發(fā)展進行了展望。</p><p>

32、;  2 圖像增強的基本理論</p><p>  2.1 數(shù)字圖像的基本理論</p><p>  2.1.1數(shù)字圖像的表示</p><p>  圖像并不能直接用計算機來處理,處理前必須先轉(zhuǎn)化成數(shù)字圖像。早期一般用picture代表圖像,隨著數(shù)字技術(shù)的發(fā)展,現(xiàn)在都用image代表離散化了的數(shù)字圖像。</p><p>  由于從外界得到的圖像多

33、是二維(2-D)的,一幅圖像可以用一個2-D數(shù)組表示。這里x和y表示二維空間X、Y中一個坐標(biāo)點的位置,而f則代表圖像在點的某種性質(zhì)數(shù)值。為了能夠用計算機對圖像進行處理,需要坐標(biāo)空間和性質(zhì)空間都離散化。這種離散化了的圖像都是數(shù)字圖像,即都在整數(shù)集合中取值。圖像中的每個基本單元稱為圖像的元素,簡稱像素。 </p><p>  2.1.2圖像的灰度</p><p>  常用的圖像一般是灰度圖,這

34、時f表示灰度值,反映了圖像上對應(yīng)點的亮度。亮度是觀察者對所看到的物體表面反射光強的量度。作為圖像灰度的量度函數(shù)應(yīng)大于零。人們?nèi)粘?吹降膱D像一般是從目標(biāo)上反射出來的光組成的,所以可看成由兩部分構(gòu)成:入射到可見場景上光的量;場景中目標(biāo)對反射光反射的比率。確切地說它們分別稱為照度成分和反射成分。與和都成正比,可表示成=×。</p><p>  將二維坐標(biāo)位置函數(shù)稱為灰度。入射光照射到物體表面的能量是有限的,并

35、且它永遠(yuǎn)為正,即0<<;反射系數(shù)為0時,表示光全部被物體吸收,反射系數(shù)為1時,表示光全部被物體反射,反射系數(shù)在全吸收和全反射之間,即0<<1。因此圖像的灰度值也是非負(fù)有界的。</p><p>  2.1.3灰度直方圖</p><p>  灰度直方圖是數(shù)字圖像處理中一個最簡單、最有用的工具,它反映了數(shù)字圖像中每一灰度級與其出現(xiàn)頻率之間的統(tǒng)計關(guān)系??梢杂嗅槍π缘赝ㄟ^改變

36、直方圖的灰度分布狀況,使灰度均勻地或按預(yù)期目標(biāo)分布于整個灰度范圍空間,從而達(dá)到圖像增強的效果。</p><p>  2.2 數(shù)字圖像增強概述</p><p>  隨著數(shù)字技術(shù)的不斷發(fā)展和應(yīng)用,現(xiàn)實生活中的許多信息都可以用數(shù)字形式的數(shù)據(jù)進行處理和存儲,數(shù)字圖像就是這種以數(shù)字形式進行存儲和處理的圖像。利用計算機可以對它進行?,F(xiàn)圖像處理技術(shù)所不能實現(xiàn)的加工處理,還可以將它在網(wǎng)上傳輸,可以多次拷貝

37、而不失真。數(shù)字圖像處理亦稱為計算機圖像處理,指將圖像信號轉(zhuǎn)換成數(shù)字格式并利用計算機對其進行處理的過程。</p><p>  數(shù)字圖像處理系統(tǒng)主要由圖像采集系統(tǒng)、數(shù)字計算機及輸出設(shè)備組成。</p><p><b>  如圖2.1所示。</b></p><p>  模擬圖像 圖像采集系統(tǒng) 計算機 圖像輸出設(shè)

38、備</p><p>  圖2.1 圖像處理系統(tǒng)組成圖</p><p>  圖2.1僅僅是圖像處理的硬件設(shè)備構(gòu)成,圖中并沒有顯示出軟件系統(tǒng),在圖像處理系統(tǒng)中軟件系統(tǒng)同樣是非常重要的。在圖像獲取的過程中,由于設(shè)備的不完善及光照等條件的影響,不可避免地會產(chǎn)生圖像降質(zhì)現(xiàn)象。影響圖像質(zhì)量的幾個主要因素是:</p><p>  (1)隨機噪聲,主要是高斯噪聲和椒鹽噪聲,可以是由

39、于相機或數(shù)字化設(shè)備產(chǎn)生,也可以是在圖像傳輸過程中造成的;</p><p>  (2)系統(tǒng)噪聲,由系統(tǒng)產(chǎn)生,具有可預(yù)測性質(zhì);</p><p>  (3)畸變,主要是由于相機與物體相對位置、光學(xué)透鏡曲率等原因造成的,可以看作是真實圖像的幾何變換。</p><p>  數(shù)字圖像處理流程如圖2.2所示,從一幅或是一批圖像的最簡單的處理,如特征增強、去噪、平滑等基本的圖像處理

40、技術(shù),到圖像的特征分析和提取,進而產(chǎn)生對圖像的正確理解或者遙感圖像的解譯,最后的步驟可以是通過專家的視覺解譯,也可以是在圖像處理系統(tǒng)中通過一些知識庫而產(chǎn)生的對圖像的理解。</p><p>  原始圖像 預(yù)處理 特征分析 圖像理解</p><p>  圖2.2 圖像處理流程圖</p><p>  2.3 圖像增強概述&

41、lt;/p><p>  2.3.1圖像增強的定義</p><p>  圖像增強是指按特定的需要突出一幅圖像中的某些信息,同時削弱或去除某些不需要的信息的處理方法,也是提高圖像質(zhì)量的過程。圖像增強的目的是使圖像的某些特性方面更加鮮明、突出,使處理后的圖像更適合人眼視覺特性或機器分析,以便于實現(xiàn)對圖像的更高級的處理和分析。圖像增強的過程往往也是一個矛盾的過程:圖像增強希望既能去除噪聲又增強邊緣。但

42、是,增強邊緣的同時會同時增強噪聲,而濾去噪聲又會使邊緣在一定程度上模糊,因此,在圖像增強的時候,往往是將這兩部分進行折中,找到一個好的代價函數(shù)達(dá)到需要的增強目的。傳統(tǒng)的圖像增強算法在確定轉(zhuǎn)換函數(shù)時常是基于整個圖像的統(tǒng)計量,如:ST轉(zhuǎn)換,直方圖均衡,中值濾波,微分銳化,高通濾波等等。這樣對應(yīng)于某些局部區(qū)域的細(xì)節(jié)在計算整幅圖的變換時其影響因為其值較小而常常被忽略掉,從而局部區(qū)域的增強效果常常不夠理想,噪聲濾波和邊緣增強這兩者的矛盾較難得到解

43、決。</p><p>  2.3.2常用的圖像增強方法</p><p>  圖像增強可分成兩大類:頻率域法和空間域法。前者把圖像看成一種二維信號,對其進行基于二維傅里葉變換的信號增強。采用低通濾波(即只讓低頻信號通過)法,可去掉圖中的噪聲;采用高通濾波法,則可增強邊緣等高頻信號,使模糊的圖片變得清晰。具有代表性的空間域算法有局部求平均值法和中值濾波(取局部鄰域中的中間像素值)法等,它們可用

44、于去除或減弱噪聲。 </p><p>  圖像增強的方法是通過一定手段對原圖像附加一些信息或變換數(shù)據(jù),有選擇地突出圖像中感興趣的特征或者抑制(掩蓋)圖像中某些不需要的特征,使圖像與視覺響應(yīng)特性相匹配。在圖像增強過程中,不分析圖像降質(zhì)的原因,處理后的圖像不一定逼近原始圖像。圖像增強技術(shù)根據(jù)增強處理過程所在的空間不同,可分為基于空間域的算法和基于頻率域的算法兩大類?;诳臻g域的算法處理時直接對圖像灰度級做運算;基于頻

45、率域的算法是在圖像的某種變換域內(nèi)對圖像的變換系數(shù)值進行某種修正,是一種間接增強的算法。 </p><p>  基于空間域的算法分為點運算算法和鄰域去噪算法。點運算算法即灰度級校正、灰度變換和直方圖修正等,目的或使圖像成像均勻,或擴大圖像動態(tài)范圍,擴展對比度。鄰域增強算法分為圖像平滑和銳化兩種。平滑一般用于消除圖像噪聲,但是也容易引起邊緣的模糊。常用算法有均值濾波、中值濾波。銳化的目的在于突出物體的邊緣輪廓,便于目

46、標(biāo)識別。常用算法有梯度法、算子、高通濾波、掩模匹配法、統(tǒng)計差值法等。</p><p><b>  (1)直方圖均衡化</b></p><p>  有些圖像在低值灰度區(qū)間上頻率較大,使得圖像中較暗區(qū)域中的細(xì)節(jié)看不清楚。這時可以通過直方圖均衡化將圖像的灰度范圍分開,并且讓灰度頻率較小的灰度級變大,通過調(diào)整圖像灰度值的動態(tài)范圍,自動地增加整個圖像的對比度,使圖像具有較大的反

47、差,細(xì)節(jié)清晰。</p><p><b>  (2)對比度增強法</b></p><p>  有些圖像的對比度比較低,從而使整個圖像模糊不清。這時可以按一定的規(guī)則修改原來圖像的每一個像素的灰度,從而改變圖像灰度的動態(tài)范圍。</p><p><b>  (3)平滑噪聲</b></p><p>  有些圖

48、像是通過掃描儀掃描輸入或傳輸通道傳輸過來的。圖像中往往包含有各種各樣的噪聲。這些噪聲一般是隨機產(chǎn)生的,因此具有分布和大小不規(guī)則性的特點。這些噪聲的存在直接影響著后續(xù)的處理過程,使圖像失真。圖像平滑就是針對圖像噪聲的操作,其主要作用是為了消除噪聲,圖像平滑的常用方法是采用均值濾波或中值濾波,均值濾波是一種線性空間濾波,它用一個有奇數(shù)點的掩模在圖像上滑動,將掩模中心對應(yīng)像素點的灰度值用掩模內(nèi)所有像素點灰度的平均值代替,如果規(guī)定了在取均值過程

49、中掩模內(nèi)各像素點所占的權(quán)重,即各像素點所乘系數(shù),這時就稱為加權(quán)均值濾波;中值濾波是一種非線性空間濾波,其與均值濾波的區(qū)別是掩模中心對應(yīng)像素點的灰度值用掩模內(nèi)所有像素點灰度值的中間值代替。</p><p>  2.4 圖像增強流程圖</p><p><b>  開始</b></p><p><b>  輸入圖像</b>&l

50、t;/p><p><b>  預(yù)處理</b></p><p><b>  增強算法處理</b></p><p>  得到預(yù)期結(jié)果 </p><p><b>  Y</b></p><p><b>  保存退出</b&g

51、t;</p><p><b>  結(jié)束</b></p><p>  圖2-3 圖像增強流程圖</p><p><b>  2.5本章小結(jié)</b></p><p>  本章主要是介紹關(guān)于圖像增強的基本理論,對圖像增強的中的一些概念就行了闡述,介紹了一些常用的圖像增強的方法,同時,對圖像增強的流程做了大

52、體上的介紹。</p><p>  3 圖像增強方法與原理</p><p><b>  3.1 直方圖變換</b></p><p>  3.1.1直方圖修正基礎(chǔ)</p><p>  圖像的灰度直方圖是反映一幅圖像的灰度級與出現(xiàn)這種灰度級的概率之間的關(guān)系的圖形。</p><p>  灰度級為[0,L-

53、1]范圍的數(shù)字圖像的直方圖是離散函數(shù)h()=,這里是第k級灰度,是圖像中灰度級為的像素個數(shù)。通常以圖像中像素數(shù)目的總和n去除他的每一個值,以得到歸一化的直方圖,公示如下:</p><p>  k=0,1,2,…,L-1</p><p><b>  且</b></p><p>  因此給出了灰度級為發(fā)生的概率估計值。歸納起來,直方圖主要有一下幾點

54、性質(zhì):</p><p> ?。?)直方圖中不包含位置信息。直方圖只是反應(yīng)了圖像灰度分布的特性,和灰度所在的位置沒有關(guān)系,不同的圖像可能具有相近或者完全相同的直方圖分布。</p><p> ?。?)直方圖反應(yīng)了圖像的整體灰度。直方圖反應(yīng)了圖像的整體灰度分布情況,對于暗色圖像,直方圖的組成集中在灰度級低(暗)的一側(cè),相反,明亮圖像的直方圖則傾向于灰度級高的一側(cè)。直觀上講,可以得出這樣的結(jié)論,若

55、一幅圖像其像素占有全部可能的灰度級并且分布均勻,這樣的圖像有高對比度和多變的灰度色調(diào)。</p><p> ?。?)直方圖的可疊加性。一幅圖像的直方圖等于它各個部分直方圖的和。</p><p> ?。?)直方圖具有統(tǒng)計特性。從直方圖的定義可知,連續(xù)圖像的直方圖是一位連續(xù)函數(shù),它具有統(tǒng)計特征,例如矩、絕對矩、中心矩、絕對中心矩、熵。</p><p> ?。?)直方圖的動

56、態(tài)范圍。直方圖的動態(tài)范圍是由計算機圖像處理系統(tǒng)的模數(shù)轉(zhuǎn)換器的灰度級決定。由于圖像的視覺效果不好或者特殊需要,常常要對圖像的灰度進行修正,以達(dá)到理想的效果,即對原始圖像的直方圖進行轉(zhuǎn)換(修正):</p><p>  一幅給定的圖像的灰度級分布在0≤r≤1范圍內(nèi)??梢詫0,1]區(qū)間內(nèi)的任何一個r進行如下的變換:</p><p><b>  s=T(r)</b></

57、p><p>  變換函數(shù)T應(yīng)滿足以下條件:</p><p>  a.在0≤r≤1區(qū)間內(nèi),單值單調(diào)增加;</p><p>  b.對于0≤r≤1,有0≤≤1。</p><p>  這里的第一個條件保證了圖像的灰度級從白到黑的次序不變。第二個條件則保證了映射變換后的像素灰度值在允許的范圍內(nèi)。滿足這兩個條件,就保證了轉(zhuǎn)換函數(shù)的可逆。</p>

58、<p>  3.1.2直方圖均衡化</p><p>  直方圖均衡化方法是圖像增強中最常用、最重要的方法之一。直方圖均衡化是把原圖像的直方圖通過灰度變換函數(shù)修正為灰度均勻分布的直方圖,然后按均衡直方圖修正原圖像。它以概率論為基礎(chǔ),運用灰度點運算來實現(xiàn),從而達(dá)到增強的目的。它的變換函數(shù)取決于圖像灰度直方圖的累積分布函數(shù)。概括的說,就是把一已知灰度概率分布的圖像,經(jīng)過一種變換,使之演變成一幅具有均勻概率

59、分布的新圖像。有些圖像在低值灰度區(qū)間上頻率較大,使得圖像中較暗區(qū)域中的細(xì)節(jié)看不清楚。這時可以將圖像的灰度范圍分開,并且讓灰度頻率較小的灰度級變大。當(dāng)圖像的直方圖為一均勻分布時,圖像的信息熵最大,此時圖像包含的信息量最大,圖像看起來就顯得清晰。</p><p>  直方圖均衡化變換函數(shù)如圖3.2所示,設(shè)r,s分別表示原圖像和增強后圖像的灰度。為了簡單,假定所有像素的灰度已被歸一化。當(dāng)r=s=0時,表示黑色;當(dāng)r=s

60、=1時,表示白色;當(dāng)r,s在[0,1]之間時,表示像素灰度在黑白之間變化?;叶茸儞Q函數(shù)為:s=T(r)。</p><p><b>  s</b></p><p><b>  1 </b></p><p><b>  S=T(r)</b></p><p><b>

61、;  Sr</b></p><p>  0 rk 1 r</p><p>  圖3.2 直方圖均衡化變換函數(shù)</p><p>  實際上,由于直方圖是近似的概率密度函數(shù),用離散灰度級作變換時很少能夠得到完全平坦的結(jié)果,而且,變換后往往會出現(xiàn)灰度級減少的現(xiàn)象,這種現(xiàn)象被稱為“簡

62、并”現(xiàn)象。這是像素灰度有限的必然結(jié)果。由于上述原因,數(shù)字圖像的直方圖均衡只能是近似的。直方圖均衡化處理可大大改善圖像灰度的動態(tài)范圍。減少簡并現(xiàn)象通??刹捎脙煞N方法:一種簡單的方法是增加像素的比特數(shù)。</p><p>  比如,通常用8比特來代表一個像素,而現(xiàn)在用12比特來表示一個像素,這樣就可以減少簡并現(xiàn)象發(fā)生的機會,從而減少灰度層次的損失。另外,采用灰度間隔放大理論的直方圖修正方法也可以減少簡并現(xiàn)象。這種灰度間

63、隔放大可以按照眼睛的對比度靈敏特性和成像系統(tǒng)的動態(tài)范圍進行放大。一般實現(xiàn)方法采用如下幾步:</p><p> ?。?)統(tǒng)計原始圖像的直方圖;</p><p> ?。?)根據(jù)給定的成像系統(tǒng)的最大動態(tài)范圍和原始圖像的灰度級來確定處理后的灰度級間隔;</p><p> ?。?)根據(jù)求得的步長來求變換后的新灰度;</p><p> ?。?)用處理后的

64、新灰度代替處理前的灰度。</p><p><b>  3.2 圖像平滑</b></p><p><b>  3.2.1圖像平滑</b></p><p>  獲得的圖像可能會因為各種原因而被污染,產(chǎn)生噪聲。常見的圖像噪聲主要有加性噪聲、乘性噪聲和量化噪聲等。噪聲并不僅限于人眼所見的失真,有些噪聲只針對某些具體的圖像處理過程產(chǎn)

65、生影響。圖像中的噪聲往往和正常信號交織在一起,尤其是乘性噪聲,如果處理不當(dāng),就會破壞圖像本身的細(xì)節(jié),如會使線條、邊界等變得模糊不清。有些圖像是通過掃描儀掃描輸入或傳輸通道傳輸過來的。圖像中往往包含有各種各樣的噪聲。這些噪聲一般是隨機產(chǎn)生的,因此具有分布和大小不規(guī)則性的特點。圖像平滑就是針對圖像噪聲的操作,其主要作用是為了消除噪聲。如何既平滑掉噪聲又盡量保持圖像細(xì)節(jié),是圖像平滑的主要研究任務(wù)。這些噪聲的存在直接影響著后續(xù)的處理過程,使圖像

66、失真。這時可以采用線性濾波和中值濾波的方法。</p><p><b>  3.2.2鄰域平均</b></p><p>  領(lǐng)域平均法是對于給定的圖像f(x,y)中的每一個點(m,n),取其領(lǐng)域s。設(shè)s含有M個像素,取其平均值作為處理后所得圖像像素點(m,n)處的灰度。設(shè)S是3*3的正方形鄰域,點(m,n)位于S中心,則:</p><p>  也

67、就是說某個像素點的結(jié)果不僅和本像素灰度有關(guān),而且和其鄰域點的只有關(guān)。</p><p><b>  3.2.3中值濾波</b></p><p>  中值濾波就是輸出圖像的某點象素等于該象素鄰域中各象素灰度的中間值。給定的圖像f(x,y)中的每一個點(m,n),取其領(lǐng)域s。設(shè)s含有M個像素{a1,a2,?,aM},將其按大小排序,若M是奇數(shù)時,則位于中間的那個象素值就是修

68、改后圖像g(x,y)在點f(m,n)處的像素值;若M是偶數(shù)則取中間兩個象素的平均值作為修改后圖像g(x,y)在點(m,n)處的像素值。</p><p>  在二維情況下。中值濾波的窗口形狀和尺寸對濾波器效果影響很大。不同圖像內(nèi)容和不同應(yīng)用要求往往選用不同的窗口和純。通常的二維中指濾波窗口形狀有線狀、方形、圓形、十字形等。</p><p><b>  3.4本章小結(jié)</b&g

69、t;</p><p>  本章的主要內(nèi)容是介紹本課題中主要使用到的圖像增強的方法:直方圖均衡化、鄰域平均、中值濾波,對著三種方法工作原理和算法進行了比較細(xì)致的介紹。</p><p>  4 VC++6.0以及圖像增強的實現(xiàn)</p><p>  4.1 VC++6.0簡介</p><p>  4.1.1 VC++6.0 簡介</p>

70、<p>  Visual C++6.0由Microsoft開發(fā), 它不僅是一個C++編譯器,而且是一個基于Windows操作系統(tǒng)的可視化集成開發(fā)環(huán)境(integrated development environment,IDE)。Visual C++6.0由許多組件組成,包括編輯器、調(diào)試器以及程序向?qū)ppWizard、類向?qū)lass Wizard等開發(fā)工具。 這些組件通過一個名為Developer Studio的組件集

71、成為和諧的開發(fā)環(huán)境。Microsoft的主力軟件產(chǎn)品。Visual C++是一個功能強大的可視化軟件開發(fā)工具。自1993年Microsoft公司推出Visual C++1.0后,隨著其新版本的不斷問世,Visual C++已成為專業(yè)程序員進行軟件開發(fā)的首選工具。雖然微軟公司推出了Visual C++.NET(Visual C++7.0),但它的應(yīng)用有很大的局限性,只適用于Windows 2000,Windows XP和Windows N

72、T4.0。所以實際中,更多的是以Visual C++6.0為平臺。</p><p>  Visual C++6.0以擁有“語法高亮”,自動編譯功能以及高級除錯功能而著稱。比如,它允許用戶進行遠(yuǎn)程調(diào)試,單步執(zhí)行等。還有允許用戶在調(diào)試期間重新編譯被修改的代碼,而不必重新啟動正在調(diào)試的程序。其編譯及創(chuàng)建預(yù)編譯頭文件(stdafx.h)、最小重建功能及累加連結(jié)(link)著稱。這些特征明顯縮短程序編輯、編譯及連結(jié)的時間花

73、費,在大型軟件計劃上尤其顯著。</p><p><b>  4.1.2開發(fā)環(huán)境</b></p><p>  Visual Studio 是微軟公司推出的開發(fā)環(huán)境,Visual Studio 可以用來創(chuàng)建 Windows 平臺下的 Windows應(yīng)用程序和網(wǎng)絡(luò)應(yīng)用程序,也可以用來創(chuàng)建網(wǎng)絡(luò)服務(wù)、智能設(shè)備應(yīng)用程序和Office插件。Visual Studio是目前最流行的W

74、indows平臺應(yīng)用程序開發(fā)環(huán)境。</p><p>  開發(fā)人員能夠利用這些豐富的客戶端和服務(wù)器端框架輕松構(gòu)建以客戶為中心的 Web應(yīng)用程序,這些應(yīng)用程序可以集成任何后端數(shù)據(jù)提供程序、在任何當(dāng)前瀏覽器內(nèi)運行并完全訪問 ASP NET應(yīng)用程序服務(wù)和 Microsoft 平臺。</p><p>  4.1.3 圖片應(yīng)用程序的創(chuàng)建</p><p>  在進入VC++集成開

75、發(fā)環(huán)境后,選擇“文件|新建”菜單,探春“新建”對話框,單擊“工程”標(biāo)簽,打開其選項卡,在其右邊的列表框中選擇MFC APP Wizard(exe)工程類型,在“工程名稱”文本框中輸入工程名Image,在“位置”文本框輸入工程路徑。如圖4.1所示</p><p>  圖4.1 新建工程對話框</p><p>  點擊確定后,系統(tǒng)顯示“MFC應(yīng)用程序向?qū)А睂υ捒?,選擇“多文檔”選項,單擊完成后

76、,就完成了程序大體框架的自動生成。如圖4.2所示</p><p>  圖4.2MFC向?qū)Ъ皯?yīng)用程序編輯界面</p><p>  4.2圖像增強實現(xiàn)方法 </p><p>  4.2.1灰度修正的實現(xiàn)</p><p> ?。?)新對話框的建立 </p><p>  在ResourceView中右鍵選擇Dialog,單

77、擊InsertDialog,即可插入一個新的對話框,如圖4.3所示</p><p>  圖 4.3 插入新的對話框</p><p>  然后對新的對話框的屬性進行編輯,在對話框中加入新的控件,并對控件的屬性進行編輯,即可達(dá)成圖4.4所示效果</p><p>  圖4.4新Dialog的編輯</p><p>  右鍵點擊對話框,選擇Class

78、Wizard..建立該對話框的類,并進入MFC Class Wizard 對話框,點擊自己所需要的方法,并選擇COMMAND選項,點擊</p><p>  Add Fuction即可添加所選方法,之后點擊Edit Code按鈕,就可進入代碼編輯界面。</p><p><b> ?。?)菜單編輯 </b></p><p>  在Resource

79、View中,選擇Menu,雙擊其下的IDR_IMAGETYPE,進入菜單編輯界面,如圖4.5所示</p><p>  4.5 菜單編輯界面</p><p>  選擇右邊菜單欄的空欄,并單擊右鍵,點擊Properties,對彈出的對話框中輸入一級菜單內(nèi)容“灰度修正”,單擊“灰度修正”菜單的子菜單空欄出再單擊右鍵,選擇Properties,設(shè)置其子菜單屬性。即可以達(dá)到圖4.5所示效果。<

80、/p><p>  圖4.6 子菜單編輯</p><p>  編輯界面處點擊右鍵,選擇ClassWizard 就可建立對應(yīng)菜單的類,AdFunction可以添加方法,點擊Edit Code 則可以進入代碼編輯界面。如圖4.7所示</p><p>  圖4.7直方圖編輯界面</p><p>  最后可以實現(xiàn)二值化、直方圖、直方圖均衡化三個功能,其最

81、后的成果如圖4.8、4.9、4.10所示</p><p>  圖4.8 原圖像及其灰度直方圖</p><p>  圖 4.9 二值化 及其灰度直方圖</p><p>  圖4.10直方圖均衡化 及其直方圖</p><p>  (3)總結(jié):從直方圖統(tǒng)計可以看出,圖像明暗分明,對比度很大,圖像比較清晰明亮,很好的改善了原始圖的視覺效果。<

82、;/p><p>  4.2.2鄰域平均的實現(xiàn)</p><p> ?。?)在菜單中添加一個“圖像增強”菜單,然后在“圖像增強”菜單中添加一個“鄰域平均”子菜單。如圖4.11所示</p><p>  圖4.11 領(lǐng)域平均菜單</p><p>  右鍵點擊鄰域平均菜單,選擇建立向?qū)ь悾纯蛇M行代碼編輯</p><p>  (2)

83、在Dialog中插入一個新的Dialog,并對新插入的對話框進行控件設(shè)置,達(dá)到如圖4.12所示效果</p><p>  圖4.12 鄰域平均對話框設(shè)置</p><p>  (3)右鍵點擊對話框與,選擇建立向?qū)ь?,即可新建一個鄰域平均的類,并進入如圖4.13所示界面,點擊自己所需要的方法,并選擇COMMAND選項,點擊Add Function即可添加所選方法,之后點擊Edit Code按鈕,

84、就可進入代碼編輯界面。</p><p>  圖4.13 鄰域平均類編輯界面</p><p>  代碼編輯后,編譯、調(diào)試無誤后,運行程序,即可實現(xiàn)對圖像的鄰域平均預(yù)算,達(dá)到圖4.14所示成果。</p><p>  原圖像 3*3模板</p><p>  5*5模板

85、 加權(quán)5*5模板</p><p>  圖4.1.4 鄰域平均處理成果</p><p> ?。?)總結(jié):鄰域平均法的思想是通過一點和鄰域內(nèi)像素點求平均來去除突變的像素點,從而濾掉一定噪聲,其優(yōu)點是算法簡單,計算速度快,其代價會造成圖像在一定程度上的模糊。</p><p>  4.2.3中值濾波的實現(xiàn)</p>

86、;<p>  (1)在菜單中添加一個“圖像增強”菜單,然后在“圖像增強”菜單中添加一個“鄰域平均”子菜單。如圖4.15所示</p><p>  圖4.15 中值濾波菜單</p><p>  右鍵點擊中值濾波菜單,選擇建立向?qū)ь?,即可進行代碼編輯</p><p>  (2)在Dialog中插入一個新的Dialog,并對新插入的對話框進行控件設(shè)置,達(dá)到如圖

87、4.16所示效果。</p><p>  圖4.16 中值濾波模板設(shè)置</p><p> ?。?)右鍵點擊對話框與,選擇建立向?qū)ь悾纯尚陆ㄒ粋€鄰域平均的類,并進入如圖4.17所示界面,點擊自己所需要的方法,并選擇COMMAND選項,點擊Add Function即可添加所選方法,之后點擊Edit Code按鈕,就可進入代碼編輯界面。</p><p>  圖4.17 中

88、值濾波類編輯界面</p><p>  代碼編輯后,編譯、調(diào)試無誤后,運行程序,即可實現(xiàn)對圖像的鄰域平均預(yù)算,達(dá)到圖4.18所示成果。</p><p>  原圖像 3*3模板 </p><p>  

89、5*5模板 7*7模板</p><p>  圖 4.18 中值濾波處理效果</p><p>  (4)總結(jié):中值濾波可以很好的過濾掉椒鹽噪聲,但是也會造成圖片的模糊,且易造成圖像的不連續(xù)性。</p><p><b>  4.3本章小結(jié)</b></p><

90、;p>  本章的核心內(nèi)容就是圖像增強方法的實現(xiàn),介紹了本課題使用的軟件VC++6.0,并對如何操作VC++6.0來實現(xiàn)直方圖均衡化、鄰域平均、中值濾波這三種方法的流程進行了十分詳細(xì)的介紹。同時,還對這三種方法處理過后的圖像進行了對比,以研究這三種方法的優(yōu)缺點。</p><p><b>  5總結(jié)與展望</b></p><p><b>  5.1總結(jié)&l

91、t;/b></p><p>  主要討論了圖像增強中較為常見的三種方法:直方圖均衡化、鄰域平均和中值濾波,其中鄰域平均與中值濾波都采用了數(shù)字圖像處理中常用到的一種計算方式:模板操作。但是,并沒有涉及到圖像增強中的另外兩種常見方法:銳化和偽色彩編碼。</p><p>  闡述了圖像增強技術(shù)的歷史及發(fā)展現(xiàn)狀,學(xué)習(xí)、研究了直方圖均衡化、鄰域平均和中值濾波算法原理,介紹了VC++編程開發(fā)軟件

92、,簡要的介紹了它的發(fā)展、開發(fā)環(huán)境等基本情況,并詳細(xì)介紹了如何利用VC++實現(xiàn)對圖像的增強。主要的研究內(nèi)容與成果如下:</p><p>  (1)VC++實現(xiàn)圖像增強步驟:新MFC工程的創(chuàng)建,實現(xiàn)直方圖均衡化、鄰域平均和中值濾波三種處理方法的詳細(xì)的操作步驟。</p><p> ?。?)直方圖均衡化、鄰域平均和中值濾波三種方法的的原理與實現(xiàn)算法,同時對經(jīng)過這三種方法處理過后的圖片進行了對比,用

93、以研究三種算法的優(yōu)缺點。</p><p><b>  5.2展望</b></p><p>  圖像增強處理的應(yīng)用已經(jīng)滲透到醫(yī)學(xué)診斷、航空航天、軍事偵察、指紋識別、無損探傷、衛(wèi)星圖片的處理等領(lǐng)域。</p><p>  圖像增強技術(shù)的快速發(fā)展同它的廣泛應(yīng)用是分不開的,發(fā)展的動力來自穩(wěn)定涌現(xiàn)的新的應(yīng)用。但是,圖像增強也有它的缺點:如本文所研究的鄰域平

94、均算法會造成圖像的模糊,中值濾波雖然對處理椒鹽噪聲有很好的作用,可它也會造成圖像的不連續(xù),所以必須對這些經(jīng)典算法進行改進。我們可以預(yù)想,當(dāng)改進型算法很好的解決上述缺點的時候, 我們可以預(yù)料,在未來社會中圖像增強技術(shù)將會發(fā)揮更為重要的作用。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 王耀南. 計算機圖像處理與識別技術(shù)[M]. 北京: 高等

95、教育出版社, 2001.</p><p>  [2] 呂風(fēng)軍. 數(shù)字圖像處理編程入門[M]. 北京:清華大學(xué)出版社, 1999.</p><p>  [3] 夏德深,傅德勝.計算機圖像處理及應(yīng)用[M]. 南京:東南大學(xué)出版社, 2004.</p><p>  [4] 沈晶,劉海波,周長建,等. Visual C++數(shù)字圖像處理典型案例詳解[M]. 北京:機械工業(yè)出版

96、社, 2012.</p><p>  [5]張娜. 像增強技術(shù)的研究[D]. 計算機仿真, 2007, 24(1): 02-04.</p><p>  [6]王慧琴. 數(shù)字圖像處理[M]. 北京:北京郵電出版社, 2006.</p><p>  [7]李朝暉, 張弘. 數(shù)字圖像處理及應(yīng)用[M]. 北京:機械工業(yè)出版社, 2004.</p><p&

97、gt;  [8]孫蕾, 李丙春. 圖像增強算法與評價方法研究[J]. 計算機工程, 2007,33(08): 21-23</p><p>  [9]秋琦. 數(shù)字圖像處理學(xué)[M]. 北京:電子工業(yè)出版社, 2001</p><p>  [10]何東健. 數(shù)字圖像處理[M]. 西安:西安電子科技大學(xué)出版社, 2003</p><p>  [11]何斌等. Visual

98、C++數(shù)字圖像處理[M].北京:人民郵電出版社,2002.12</p><p>  [12]陳玲,周書民. 數(shù)字圖像處理方法及程序設(shè)計[M]. 哈爾濱:哈爾濱工程大學(xué)出版社,2011.12</p><p><b>  [14]</b></p><p><b>  致謝</b></p><p>  時

99、光匆匆如流水,轉(zhuǎn)眼便是大學(xué)畢業(yè)時節(jié),春夢秋云,聚散真容易。離校日期已日趨臨近,畢業(yè)論文的完成也隨之進入了尾聲。從開始選課題到論文的順利完成,一直都離不開老師、同學(xué)、朋友給我熱情的幫助,在這里請接受我誠摯的謝意!  </p><p>  在此我想對我的母校,我的父母、親人們,我的老師和同學(xué)們表達(dá)我由衷的謝意。感謝我的家人對我大學(xué)四年學(xué)習(xí)的默默支持;感謝我的母校安徽建筑大學(xué)給了我在大學(xué)四年深造的機會,讓我能繼續(xù)學(xué)習(xí)和

100、提高;能夠給我做畢業(yè)設(shè)計這個平臺去展示自己。感謝安徽建筑大學(xué)的老師和同學(xué)們四年來的關(guān)心和鼓勵。老師們課堂上的激情洋溢,課堂下的諄諄教誨;同學(xué)們在學(xué)習(xí)中的認(rèn)真熱情,生活上的熱心主動,所有這些都讓我的四年充滿了感動。這次畢業(yè)論文設(shè)計我得到了很多老師和同學(xué)的幫助,其中我的論文導(dǎo)師宋楊老師對我的關(guān)心和支持尤為重要。每次遇到難題,我最先做的就是向宋老師尋求幫助,而宋老師每次不管忙或閑,總會抽空來幫我解決問題,找到一種最好的解決方法。宋老師平日里工

101、作繁多,但我做畢業(yè)設(shè)計的每個階段,從選題到查閱資料,論文提綱的確定,中期論文的修改,后期論文格式調(diào)整等各個環(huán)節(jié)中都給予了我悉心的指導(dǎo)。這幾個月以來,感謝宋老師對我的幫助,在此謹(jǐn)向宋老師致以誠摯的謝意和崇高的敬意。    </p><p><b>  附錄</b></p><p><b>  部分程序代碼</b><

102、;/p><p><b>  1.讀入圖片</b></p><p>  BOOL CImageDoc::OnOpenDocument(LPCTSTR lpszPathName) </p><p><b>  {</b></p><p>  if (m_dib->Read(lpszPathName)

103、== TRUE)</p><p><b>  {</b></p><p>  SetModifiedFlag(FALSE);</p><p>  return TRUE;</p><p><b>  }</b></p><p><b>  else</b>

104、;</p><p><b>  return 0;</b></p><p><b>  }</b></p><p><b>  2.繪制直方圖</b></p><p>  void HistogramDrawDlg::OnPaint() </p><p>

105、;<b>  {</b></p><p>  CPaintDC dc(this); // device context for painting</p><p>  // TODO: Add your message handler code here</p><p>  //彩色和灰度圖像有效</p><p>  if

106、(m_nBitCountOut!= 8 && m_nBitCountOut!= 24) </p><p><b>  return ;</b></p><p>  //獲取直方圖繪制靜態(tài)框的矩形區(qū)域</p><p>  CRect clientRect; </p><p>  GetDlgItem(ID

107、C_STATIC_Hist)->GetWindowRect(&clientRect);</p><p>  ScreenToClient(&clientRect);</p><p>  BeginWaitCursor(); // Draw Back Ground</p><p><b>  //畫背景</b><

108、;/p><p>  dc.SelectStockObject(NULL_BRUSH);</p><p>  dc.Rectangle(clientRect.left, clientRect.top-5,</p><p>  clientRect.right, clientRect.bottom+1);</p><p>  //畫直方圖灰度頻率與直

109、方圖繪制矩形區(qū)域比例關(guān)系,畫直方圖</p><p>  unsigned int max=0;;</p><p>  for(int i=0;i<256;i++){</p><p>  if(m_histArray[i]>max)</p><p>  max=m_histArray[i];</p><p>

110、<b>  }</b></p><p>  DWORD bufTemp[256];</p><p>  double x=clientRect.Height();</p><p>  for(i=0;i<256;i++){</p><p>  bufTemp[i]=(unsigned long)((float)m_

111、histArray[i]*x/max);</p><p><b>  }</b></p><p>  for(i=clientRect.left;i<=clientRect.right;i++){</p><p>  dc.MoveTo(i,clientRect.bottom);</p><p>  dc.Line

112、To(i,clientRect.bottom-bufTemp[i-clientRect.left]);</p><p><b>  } </b></p><p>  CString str;</p><p>  SetBkMode(dc,1); //字體背景設(shè)為透明</p><p>  str.Format

113、("0");</p><p>  dc.TextOut(clientRect.left,clientRect.bottom+1,str);</p><p>  str.Format("50");</p><p>  dc.TextOut(clientRect.left+50,clientRect.bottom+1,str);&

114、lt;/p><p>  str.Format("100");</p><p>  dc.TextOut(clientRect.left+100,clientRect.bottom+1,str);</p><p>  str.Format("150");</p><p>  dc.TextOut(client

115、Rect.left+150,clientRect.bottom+1,str);</p><p>  str.Format("200");</p><p>  dc.TextOut(clientRect.left+200,clientRect.bottom+1,str);</p><p>  str.Format("255");

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論