資源描述:
《vc數(shù)字圖像bitmap處理編程講座》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應用文檔-天天文庫。
1、VC數(shù)字圖像BITMAP處理編程講座1VC數(shù)字圖像(BITMAP)處理編程講座(1)轉(zhuǎn)載:前言數(shù)字圖像處理技術(shù)與理論是計算機應用的一個重要領(lǐng)域,很多工程應用都涉及到圖像處理,一直有一個強烈的愿看,想系統(tǒng)的寫一個關(guān)于數(shù)字圖像處理的講座,由于工作學習很忙,時至本日才得以實現(xiàn)。"圖"是物體透射光或反射光的分布,"像"是人的視覺系統(tǒng)對圖的接收在大腦中形成的印象或熟悉。圖像是兩者的結(jié)合。人類獲取外界信息是靠聽覺、視覺、觸覺、嗅覺、味覺等,但盡大部分(約80%左右)來自視覺所接收的圖像信息。圖像處理就是對圖像信息進行
2、加工處理,以滿足人的視覺心理和實際應用的需要。簡單的說,依靠計算機對圖像進行各種目的的處理我們就稱之為數(shù)字圖像處理。早期的數(shù)字圖像處理的目的是以人為對象,為了滿足人的視覺效果而改善圖像的質(zhì)量,處理過程中輸進的是質(zhì)量差的圖像,輸出的是質(zhì)量好的圖像,常用的圖像處理方法有圖像增強、復原等。隨著計算機技術(shù)的發(fā)展,有一類圖像處理是以機器為對象,處理的目的是使機器能夠自動識別目標,這稱之為圖像的識別,由于這其中要牽涉到一些復雜的模式識別的理論,所以我們后續(xù)的講座只討論其中最基本的內(nèi)容。由于在很多實際應用的編程中往往都
3、要涉及到數(shù)字圖像處理,涉及到其中的一些算法,這也是很多編程愛好者感愛好的一個內(nèi)容,我們這個講座就是討論如何利用微軟的VisualC++開發(fā)工具來實現(xiàn)一些常用的數(shù)字圖像處理算法,論述了圖像處理的理論,同時給出了VC實現(xiàn)的源代碼。本講座主要的內(nèi)容分為基礎篇、中級篇和高級篇,具體包含的主要內(nèi)容有:1.圖像文件的格式;2.圖像編程的基礎-操縱調(diào)色板;3.圖像數(shù)據(jù)的讀取、存儲和顯示、如何獲取圖像的尺寸等;4.利用圖像來美化界面;5.圖像的基本操縱:圖像移動、圖像旋轉(zhuǎn)、圖像鏡像、圖像的縮放、圖像的剪切板操縱;6.圖像
4、顯示的各種特技效果;7.圖像的基本處理:圖像的二值化、圖像的亮度和對比度的調(diào)整、圖像的邊沿增強、如何得到圖像的直方圖、圖像直方圖的修正、圖像的平滑、圖像的銳化等、圖像的偽彩色、彩色圖像轉(zhuǎn)換為黑白圖像、物體邊沿的搜索等等;8.二值圖像的處理:腐蝕、膨脹、細化、間隔變換等;9.圖像分析:直線、圓、特定物體的識別;10.JEPG、GIF、PCX等格式文件相關(guān)操縱;11.圖像文件格式的轉(zhuǎn)換;12.圖像的常用變換:付利葉變換、DCT變換、沃爾什變換等;13.AVI視頻流的操縱;圖像處理技術(shù)博大精深,不僅需要有很強的
5、數(shù)學功底,還需要熟練把握一門計算機語言,在當前流行的語言中,我個人覺的VisualC++這個開發(fā)平臺是圖像開發(fā)職員的首選工具。本講座只是起到拋磚引玉的作用,??春蛷V大讀者共同交流。第一節(jié)圖像的文件格式要利用計算機對數(shù)字化圖像進行處理,首先要對圖像的文件格式要有清楚的熟悉,由于我們前面說過,自然界的圖像以模擬信號的形式存在,在用計算機進行處理以前,首先要數(shù)字化,比如攝像頭(CCD)攝取的信號在送往計算機處理前,一般情況下要經(jīng)過數(shù)模轉(zhuǎn)換,這個任務經(jīng)常由圖像采集卡完成,它的輸出一般為裸圖的形式;假如用戶想要天生
6、目標圖像文件,必須根據(jù)文件的格式做相應的處理。隨著科技的發(fā)展,數(shù)碼像機、數(shù)碼攝像機已經(jīng)進進平常百姓家,我們可以利用這些設備作為圖像處理系統(tǒng)的輸進設備來為后續(xù)的圖像處理提供信息源。無論是什么設備,它總是提供按一定的圖像文件格式來提供信息,比較常用的有BMP格式、JPEG格式、GIF格式等等,所以我們在進行圖像處理以前,首先要對圖像的格式要有清楚的熟悉,只有在此基礎上才可以進行進一步的開發(fā)處理。在講述圖像文件格式前,先對圖像作一個簡單的分類。除了最簡單的圖像外,所有的圖像都有顏色,而單色圖像則是帶有顏色的圖像
7、中比較簡單的格式,它一般由玄色區(qū)域和白色區(qū)域組成,可以用一個比特表示一個像素,"1"表示玄色,"0"表示白色,當然也可以倒過來表示,這種圖像稱之為二值圖像。我們也可以用8個比特(一個字節(jié))表示一個像素,相當于把黑和白等分為256個級別,"0"表示為黑,"255"表示為白,該字節(jié)的數(shù)值表示相應像素值的灰度值或亮度值,數(shù)值越接近"0",對應像素點越黑,相反,則對應像素點越白,此種圖像我們一般稱之為灰度圖像。單色圖像和灰度圖像又統(tǒng)稱為黑白圖像,與之對應存在著彩色圖像,這種圖像要復雜一些,表示圖像時,常用的圖像彩
8、色模式有RGB模式、CMYK模式和HIS模式,一般情況下我們只使用RGB模式,R對應紅色,G對應綠色,B對應藍色,它們統(tǒng)稱為三基色,這三中色彩的不同搭配,就可以搭配成各種現(xiàn)實中的色彩,此時彩色圖像的每一個像素都需要3個樣本組成的一組數(shù)據(jù)表示,其中每個樣本用于表示該像素的一個基本顏色。對于現(xiàn)存的所有的圖像文件格式,我們在這里主要先容BMP圖像文件格式,并且文件里的圖像數(shù)據(jù)是未壓縮的,由于圖像的數(shù)字化處理主要是對圖像中的各個像素進