MATLAB在數(shù)字圖像中的調(diào)用講課講稿_第1頁(yè)
MATLAB在數(shù)字圖像中的調(diào)用講課講稿_第2頁(yè)
MATLAB在數(shù)字圖像中的調(diào)用講課講稿_第3頁(yè)
MATLAB在數(shù)字圖像中的調(diào)用講課講稿_第4頁(yè)
MATLAB在數(shù)字圖像中的調(diào)用講課講稿_第5頁(yè)
已閱讀5頁(yè),還剩104頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、Good is good, but better carries it.精益求精,善益求善。MATLAB在數(shù)字圖像中的調(diào)用-圖形圖像處理第一章緒論圖形圖像處理起源于20世紀(jì)20年代,當(dāng)時(shí)通過(guò)海底電纜從英國(guó)倫敦到美國(guó)紐約采用數(shù)字壓縮技術(shù)傳輸了第一幅數(shù)字照片,用來(lái)改善圖像的質(zhì)量。此后由于遙感等領(lǐng)域的應(yīng)用,使得圖形圖像處理技術(shù)逐步得到發(fā)展。一直到20世紀(jì)50年代,隨著大型數(shù)字計(jì)算機(jī)和太空科學(xué)研究計(jì)劃的出現(xiàn),人們才注意到圖像處理的潛力。1964年在美國(guó)航空總署的噴氣推進(jìn)實(shí)驗(yàn)室開(kāi)始用計(jì)算機(jī)技術(shù)改善從太空探測(cè)器獲得的圖像。當(dāng)時(shí)利用計(jì)算機(jī)技術(shù)處理由太空船“徘徊者七號(hào)”(Ranger7)發(fā)回的月球照片,以校正

2、電視攝影機(jī)所存在的幾何失真或響應(yīng)失真。這標(biāo)志著第三代計(jì)算機(jī)問(wèn)世后數(shù)字圖像處理開(kāi)始得到普遍應(yīng)用。近年來(lái)隨著計(jì)算機(jī)與信息技術(shù)的高速發(fā)展,數(shù)字圖像處理技術(shù)也得到了快速的發(fā)展,目前已成為計(jì)算機(jī)科學(xué)、醫(yī)學(xué)、生物學(xué)、工程學(xué)、信息科學(xué)等領(lǐng)域各學(xué)科之間學(xué)習(xí)和研究的對(duì)象。1.1數(shù)字圖像圖像是用各種觀測(cè)系統(tǒng)以不同形式和手段觀測(cè)客觀世界而獲得的,可以直接或間接作用于人眼并進(jìn)而產(chǎn)生視知覺(jué)的實(shí)體。其最廣義的觀點(diǎn)是指視覺(jué)信息。例如照片、圖畫(huà)、電視畫(huà)面以及光學(xué)成像等。人類的大部分信息都是從圖像中獲得的。用計(jì)算機(jī)進(jìn)行圖像處理的前提是圖像必須以數(shù)字格式存儲(chǔ),人們把以數(shù)字格式存放的圖像稱之為數(shù)字圖像。而我們常見(jiàn)的照片、海報(bào)、廣告

3、招貼畫(huà)等都屬于模擬圖像。若要將模擬圖像數(shù)字化后生成數(shù)字圖像,需要使用諸如掃描儀之類的數(shù)字化設(shè)備。模擬圖像經(jīng)過(guò)掃描儀進(jìn)行數(shù)字化后,或者由數(shù)碼照相機(jī)拍攝的圖片,在計(jì)算機(jī)中均是以數(shù)字格式存儲(chǔ)的。為了把圖像數(shù)字化,必須進(jìn)行在空間點(diǎn)陣上的抽樣和灰度量化兩個(gè)方面的工作。被抽樣的點(diǎn)稱為像素,抽樣的精度隨圖像的種類而不同。這樣一來(lái),所謂數(shù)字圖像就是灰度值的二維數(shù)組。一個(gè)單色靜止圖像可以用一個(gè)二維的光強(qiáng)度函數(shù)f(x,y)來(lái)表示,其中x與y表示空間坐標(biāo),而在任意點(diǎn)(x,y)的f值與在該點(diǎn)圖像的亮度(或灰度)成正比。一個(gè)數(shù)字圖像是圖像f(x,y)在空間坐標(biāo)和亮度上都數(shù)字化后的圖像??蓪?shù)字圖像視作一個(gè)矩陣,矩陣行與

4、列的值決定一個(gè)點(diǎn),而對(duì)應(yīng)的矩陣元素值就是該點(diǎn)的灰度。這種矩陣的元素就是像素,所對(duì)應(yīng)的灰度就是像素值。表1.1是以數(shù)據(jù)結(jié)構(gòu)的觀點(diǎn)進(jìn)行分類的圖像種類。即在光譜方向、空間方向、時(shí)間軸方向上增加維數(shù)的圖像,可以用多個(gè)二維數(shù)組來(lái)表示。在這里,不管是一個(gè)數(shù)組還是其集合,總是要組成用計(jì)算機(jī)容易處理的形式。因此在傳送和復(fù)制時(shí),只要在計(jì)算機(jī)內(nèi)部進(jìn)行處理,就不會(huì)被破壞而能保持完好的再現(xiàn)性。這是數(shù)字處理的一大優(yōu)點(diǎn)。表1.1圖像的種類種類形式備注二值圖像f(x,y)0,1文字,曲線,指紋等灰度圖像0f(x,y)2n1通常的照片,n68是標(biāo)準(zhǔn)的彩色圖像fi(x,y),iR,G,B根據(jù)三基色的表示多光譜圖像fi(x,y)

5、,i1,m遙感圖像用,m多為48立體圖像fL,fR從左右視點(diǎn)得到的一對(duì)圖像,用于立體觀測(cè)運(yùn)動(dòng)圖像(時(shí)間序列圖像)ft(x,y),tt1,tn動(dòng)態(tài)分析,動(dòng)畫(huà)等早期在英文里一般用picture代表圖像,隨著數(shù)字技術(shù)的發(fā)展,現(xiàn)在用image代表離散化的數(shù)字圖像。圖像中每個(gè)基本單元叫做圖像元素,簡(jiǎn)稱像素(pictureelement)。對(duì)于2-D圖像,英文中常用pixel代表象素。對(duì)于3-D圖像,英文中常用voxel代表其基本單元,簡(jiǎn)稱體素(volumeelement)。1.2數(shù)字圖像處理1.2.1數(shù)字圖像處理的概念所謂數(shù)字圖像處理(digitalimageprocessing),就是利用計(jì)算機(jī)對(duì)圖像

6、進(jìn)行去除噪聲、增強(qiáng)、恢復(fù)、分割、提取特征等的理論、方法和技術(shù)。由于圖像處理是利用計(jì)算機(jī)和實(shí)時(shí)硬件實(shí)現(xiàn)的,因此也被稱為計(jì)算機(jī)圖像處理(computerimageprocessing)。在計(jì)算機(jī)處理出現(xiàn)之前,圖像處理都是光學(xué)、照相處理和視頻信號(hào)處理等模擬處理。例如,在利用透鏡或棱鏡的光學(xué)演算中使用各種濾光鏡,利用膠卷具有的特性曲線進(jìn)行的處理,在電子回路中的視頻信號(hào)的處理等,都屬于這一范疇。在人們的日常生活中,圖像處理已經(jīng)得到廣泛的應(yīng)用。例如,利用指紋、虹膜、面部特征等進(jìn)行身份識(shí)別;自動(dòng)售貨機(jī)鈔票的識(shí)別;電腦成像技術(shù)等。而在醫(yī)學(xué)領(lǐng)域,計(jì)算機(jī)圖像處理已經(jīng)成為疾病診斷的重要的手段,譬如顯微鏡照片、X射線

7、透視、X射線CT(ComputerTomograph,計(jì)算機(jī)斷層攝像)等。1.2.2數(shù)字圖像處理的目的數(shù)字圖像處理是利用計(jì)算機(jī)的計(jì)算,實(shí)現(xiàn)與光學(xué)系統(tǒng)模擬處理相同效果的過(guò)程。一般來(lái)說(shuō),數(shù)字圖像處理具有如下的目的:提高圖像的視覺(jué)質(zhì)量,以達(dá)到賞心悅目的目的。例如,去除稱之為噪聲等圖像質(zhì)量的退化因素;改變圖像的亮度、顏色;增強(qiáng)圖像中的某些成份、抑制某些成份;對(duì)圖像進(jìn)行幾何變換等,從而改善圖像的質(zhì)量,以達(dá)到各種想要的藝術(shù)效果。提取圖像中所包含的某些特征或特殊信息,以便于計(jì)算機(jī)分析。如用作模式識(shí)別,計(jì)算機(jī)視覺(jué)的預(yù)處理等等。這些特征包括很多方面,如頻域特性、紋理特性、灰度/顏色特性、邊界/區(qū)域特性、形狀/拓

8、撲特性以及關(guān)系結(jié)構(gòu)等。對(duì)圖像數(shù)據(jù)進(jìn)行變換、編碼和壓縮,以便于圖像的存儲(chǔ)和傳輸。1.2.3數(shù)字圖像處理的內(nèi)容要有效解決眾多的圖像處理應(yīng)用問(wèn)題,必須研究出專門(mén)的圖像處理方法,大致上可以將這些問(wèn)題及其數(shù)字圖像處理方式歸納為以下幾類。1.圖像獲取、表示和表現(xiàn)(ImageAcquisition,RepresentationandPresentation)該過(guò)程主要是把模擬圖像信號(hào)轉(zhuǎn)化為計(jì)算機(jī)所能接受的數(shù)字形式,以及把數(shù)字圖像顯示和表現(xiàn)出來(lái)。這一過(guò)程主要包括攝取圖像、光電轉(zhuǎn)換及數(shù)字化等幾個(gè)步驟。2.圖像增強(qiáng)(ImageEnhancement)圖像增強(qiáng)是用來(lái)強(qiáng)調(diào)圖像的某些特征,以便于作進(jìn)一步的分析或顯示。當(dāng)

9、無(wú)法得知圖像退化有關(guān)的定量信息時(shí),可以使用圖像增強(qiáng)技術(shù)較為主觀地改善圖像的質(zhì)量。所以,圖像增強(qiáng)技術(shù)是用于改善圖像視感質(zhì)量所采取的一種重要手段。它所完成的工作包括去除圖像噪聲,增強(qiáng)圖像對(duì)比度等。例如,對(duì)比度的增強(qiáng)是用來(lái)使對(duì)比度低的圖像更容易顯現(xiàn)其特征,而低對(duì)比度的可能原因包括光線不足、圖像感應(yīng)器的動(dòng)態(tài)范圍不夠以及在圖像攝取時(shí)光圈設(shè)定錯(cuò)誤等。圖像增強(qiáng)的過(guò)程本身并沒(méi)有增加原始資料所包含的信息,僅僅是把圖像某些部分的特征更加強(qiáng)調(diào)罷了。圖像增強(qiáng)的算法通常是交互式的,而且與所考慮的應(yīng)用有著密切的聯(lián)系。3.圖像恢復(fù)(ImageRestoration)圖像恢復(fù)是指在圖像退化(圖像品質(zhì)下降)的原因已知時(shí),對(duì)圖像

10、進(jìn)行校正,重新獲得原始圖像的過(guò)程。使圖像降質(zhì)的因素有很多,包括感應(yīng)器或拍攝環(huán)境的干擾,感應(yīng)器的非線性幾何失真,沒(méi)有對(duì)焦精確所造成的模糊,攝象機(jī)與物體之間相對(duì)運(yùn)動(dòng)所造成的模糊等。圖像恢復(fù)最關(guān)鍵的是對(duì)每一種退化都需要建立一個(gè)合理的模型。退化模型和特定數(shù)據(jù)一起描述了圖像的退化,因此恢復(fù)技術(shù)是基于模型和數(shù)據(jù)的圖像恢復(fù),其目的是試圖將受污染或降質(zhì)的圖像帶回到原本不受污染的狀況下所應(yīng)得的干凈圖像,產(chǎn)生一個(gè)等價(jià)于理想成像系統(tǒng)獲得的圖像。雖然圖像恢復(fù)與圖像增強(qiáng)都會(huì)造成視覺(jué)上較佳的感受,但后者更關(guān)心的是圖像特征增強(qiáng)或抽取,而不是去除退化或污染。4.圖像重建(ImageReconstruction)圖像重建的工作

11、是由幾個(gè)一維的圖像投影來(lái)重建出更高維的物體圖像。它與圖像增強(qiáng)、圖像恢復(fù)等不同。圖像增強(qiáng)和圖像恢復(fù)的輸入都是圖像,處理后輸出的結(jié)果也是圖像。而圖像重建則是指從數(shù)據(jù)到圖像的處理,即輸入的是某種數(shù)據(jù),經(jīng)過(guò)處理后得到的結(jié)果是圖像。一個(gè)圖像的取得是以平行的X光或者其他的放射穿透光束照射物體,并在物體的背面接收此投影,接著在同一平面上改變光束照射的角度以獲得不同的投影,再以某些重建算法將這些投影組合成物體的一個(gè)橫剖面圖像。這種技術(shù)主要用于醫(yī)學(xué)圖像、雷達(dá)圖像處理、天文學(xué)星象觀測(cè)、地質(zhì)研究及無(wú)損壓縮等。5.圖像壓縮(ImageCompression)圖像壓縮的目的是降低代表數(shù)字圖像所需要的數(shù)據(jù)量,這樣做的好處

12、是可以減少圖像傳輸時(shí)間以及存儲(chǔ)空間。編碼是實(shí)現(xiàn)圖像壓縮的重要手段。圖像壓縮編碼主要是利用圖像信號(hào)的統(tǒng)計(jì)特性以及人類視覺(jué)的生理學(xué)和心理學(xué)特性,對(duì)圖像信號(hào)進(jìn)行高效編碼,即研究數(shù)據(jù)壓縮技術(shù),其目的是在保證圖像質(zhì)量的前提下壓縮數(shù)據(jù),以解決圖像數(shù)據(jù)量大的矛盾。一般來(lái)說(shuō),圖像編碼的目的有三個(gè):減少數(shù)據(jù)存儲(chǔ)量。降低數(shù)據(jù)率以減少傳輸帶寬。壓縮數(shù)據(jù)量,便于特征提取,為后續(xù)識(shí)別作準(zhǔn)備。從編碼技術(shù)的發(fā)展來(lái)看,Kunt提出了第一代、第二代的編碼概念。第一代編碼是以去除冗余為基礎(chǔ)的編碼方法,如PCM、DPCM、M、DCT、DFT、W-H變換編碼以及以此為基礎(chǔ)的混合編碼法。第二代編碼法多為20世紀(jì)80年代以后提出的,如F

13、ractal編碼法、金字塔編碼法、小波變換編碼法、模型基編碼法、基于神經(jīng)網(wǎng)絡(luò)的編碼法等等。這些編碼方法有如下特點(diǎn):充分考慮人的視覺(jué)特性。恰當(dāng)?shù)乜紤]對(duì)圖像信號(hào)的分解與表述。采用圖像的合成與識(shí)別方案壓縮數(shù)據(jù)。6.圖像分割(ImageSegmentation)圖像分割就是把圖像分成區(qū)域的過(guò)程。這是從處理到分析的轉(zhuǎn)變關(guān)鍵,也是圖像自動(dòng)分析的第一步。圖像中通常包含多個(gè)對(duì)象,圖像處理為達(dá)到識(shí)別和理解的目的,幾乎都必須按照一定的規(guī)則將圖像分割成區(qū)域,每個(gè)區(qū)域代表被成像的一個(gè)部分。圖像自動(dòng)分割是圖像處理中最困難的問(wèn)題之一。人類視覺(jué)系統(tǒng)能將所觀察的復(fù)雜景物中的對(duì)象分開(kāi),并識(shí)別出每個(gè)物體,但對(duì)于計(jì)算機(jī)來(lái)說(shuō)卻是個(gè)難

14、題。目前,大部分圖像的自動(dòng)分割還需要人工提供必須的信息來(lái)幫助識(shí)別,只有一部分領(lǐng)域開(kāi)始使用。例如印刷字符自動(dòng)識(shí)別(OCR),指紋識(shí)別等。7.圖像分析(ImageAnalysis)圖像分析是試圖從圖像中分割、提取并描述某些特征,從而有利于計(jì)算機(jī)對(duì)圖像的識(shí)別和理解,以產(chǎn)生有用的信息。圖像處理應(yīng)用的目標(biāo)幾乎都涉及到圖像分析。要做圖像分析,必須使計(jì)算機(jī)具有某種程度的智能。這些智能的特征包括:能從含有許多不相干細(xì)節(jié)的背景中找到所需的信息。能從范例中學(xué)習(xí)并將所學(xué)知識(shí)應(yīng)用推廣到其他狀況中。能從不完整的資料中推斷出完整的信息。1.3圖像工程1.3.1圖像工程的內(nèi)涵圖像技術(shù)在廣義上來(lái)說(shuō)是各種與圖像有關(guān)的技術(shù)的總稱

15、。目前人們主要研究的是數(shù)字圖像,主要應(yīng)用的是計(jì)算機(jī)圖像技術(shù)。這包括利用計(jì)算機(jī)和其它電子設(shè)備進(jìn)行和完成的一系列工作,以及為完成各種功能而進(jìn)行的硬件設(shè)計(jì)及制作等方面的技術(shù)。計(jì)算機(jī)圖像技術(shù)的歷史可以追溯到1946年世界上第一臺(tái)電子計(jì)算機(jī)的誕生,但在20世紀(jì)50年代計(jì)算機(jī)主要還是用于數(shù)值計(jì)算。到20世紀(jì)60年代,第三代計(jì)算機(jī)的研制成功,以及快速傅立葉變換算法的發(fā)現(xiàn)和應(yīng)用,使得對(duì)圖像的某些計(jì)算得以實(shí)際實(shí)現(xiàn)。20世紀(jì)70年代,圖像技術(shù)有了長(zhǎng)足進(jìn)步,而且第一本重要的圖像處理專著(Rosenfeld1976)也得以出版。進(jìn)入20世紀(jì)80年代,各種硬件的發(fā)展使得人們開(kāi)始處理3-D圖像。由于圖像技術(shù)得到了極大的重

16、視和長(zhǎng)足的發(fā)展,人們需要對(duì)它們進(jìn)行綜合研究和集成應(yīng)用,由此出現(xiàn)了圖像工程。圖像工程的概念在1982年首先提出,當(dāng)時(shí)主要包括有關(guān)圖像的理論技術(shù),對(duì)圖像數(shù)據(jù)的分析管理以及各種應(yīng)用。圖像工程的內(nèi)容非常豐富,根據(jù)抽象程度和研究方法等的不同,可分為圖像處理、圖像分析和圖像理解三個(gè)層次。換句話說(shuō),圖像工程是既有聯(lián)系又有區(qū)別的圖像處理、圖像分析及圖像理解三者的有機(jī)結(jié)合,另外還包括它們的工程應(yīng)用。1.圖像處理圖像處理的重點(diǎn)是圖像之間進(jìn)行的變換。雖然人們常用圖像處理泛指各種圖像技術(shù),但比較狹義的圖像處理主要是對(duì)圖像進(jìn)行各種加工,以改善圖像的視覺(jué)效果并為自動(dòng)識(shí)別打基礎(chǔ),或?qū)D像進(jìn)行壓縮編碼以減少所需的存儲(chǔ)空間。2

17、.圖像分析圖像分析主要是對(duì)圖像中感興趣的目標(biāo)進(jìn)行檢測(cè)和測(cè)量,以獲得它們的客觀信息,從而建立對(duì)圖像的描述。如果說(shuō)圖像處理是一個(gè)從圖像到圖像的過(guò)程,則圖像分析則是一個(gè)從圖像到數(shù)據(jù)的過(guò)程。這里的數(shù)據(jù)可以是目標(biāo)特征的測(cè)量結(jié)果,或是基于測(cè)量的符號(hào)表示,它們描述了目標(biāo)的特點(diǎn)和性質(zhì)。3.圖像理解圖像理解的重點(diǎn)是在圖像分析的基礎(chǔ)上,進(jìn)一步研究圖像中各目標(biāo)的性質(zhì)和它們之間的相互關(guān)系,并得出對(duì)圖像內(nèi)容含義的理解以及對(duì)原來(lái)客觀場(chǎng)景的解釋,從而指導(dǎo)決策。如果說(shuō)圖像分析主要是以觀察者為中心來(lái)研究客觀世界,那么圖像理解在一定程度上就是以客觀世界為中心,借助知識(shí)、經(jīng)驗(yàn)等來(lái)把握整個(gè)客觀世界。綜上所述,圖像處理、圖像分析和圖像

18、理解是處在三個(gè)抽象程度和數(shù)據(jù)量各有特點(diǎn)的不同層次上。圖像處理是比較低層次的操作,它主要在圖像像素級(jí)上進(jìn)行處理,處理的數(shù)據(jù)量非常大。圖像分析則進(jìn)入了中層,分割和特征提取把原來(lái)以像素描述的圖像轉(zhuǎn)變成比較簡(jiǎn)潔的非圖像形式的描述。圖像理解主要是高層操作,基本上是對(duì)從描述抽象出來(lái)的符號(hào)進(jìn)行運(yùn)算,其處理過(guò)程和方法與人類的思維推理有許多相似之處。1.3.2相關(guān)學(xué)科和領(lǐng)域圖像工程是一門(mén)系統(tǒng)地研究各種圖像理論、技術(shù)和應(yīng)用的交叉學(xué)科。從它的研究方法來(lái)看,它可以與數(shù)字、物理學(xué)、生物學(xué)、心理學(xué)、電子學(xué)、計(jì)算機(jī)科學(xué)等許多學(xué)科相互借鑒。從它的研究范圍來(lái)看,它與模式識(shí)別、計(jì)算機(jī)視覺(jué)、計(jì)算機(jī)圖形學(xué)等多個(gè)專業(yè)相互交叉。圖像工程

19、的研究進(jìn)展還與人工智能、神經(jīng)網(wǎng)絡(luò)、遺傳算法、模糊邏輯等理論和技術(shù)有密切的聯(lián)系。它的發(fā)展應(yīng)用與醫(yī)學(xué)、遙感、通信、文檔處理和工業(yè)自動(dòng)化等許多領(lǐng)域也是密不可分的。圖像工程與計(jì)算機(jī)圖形學(xué)(ComputerGraphics)、計(jì)算機(jī)視覺(jué)(ComputerVision)、模式識(shí)別(PatternRecognition)等有著密切的關(guān)系。圖形學(xué)原本是指用圖形、圖表、繪圖等形式來(lái)表達(dá)數(shù)據(jù)信息的科學(xué)。而計(jì)算機(jī)圖形學(xué)研究的就是用計(jì)算機(jī)技術(shù)生成這些形式的理論、方法和技術(shù),即由非圖像形式的數(shù)據(jù)描述來(lái)生成逼真的圖像。它既可以生成現(xiàn)實(shí)世界中已經(jīng)存在的物體的圖形,也可以生成虛擬物體的圖形,它和圖像分析的對(duì)象和輸出結(jié)果正好對(duì)

20、調(diào)。從狹義上講,模式識(shí)別指的是把基于特征的多維模式空間分成不同類別的識(shí)別理論。特別是指不依賴于圖形和圖像,適用于其他一般的模式分類的理論。模式識(shí)別和圖形分析比較相似,只是前者試圖把圖像分解成可用符號(hào)較抽象地描述的類別。計(jì)算機(jī)視覺(jué)主要強(qiáng)調(diào)用計(jì)算機(jī)實(shí)現(xiàn)人的視覺(jué)功能,要用到圖像工程三個(gè)層次的許多技術(shù),目前的研究?jī)?nèi)容主要與圖像理解相結(jié)合。1.4數(shù)字圖像處理的應(yīng)用概括的說(shuō),數(shù)字圖像處理技術(shù)的主要應(yīng)用領(lǐng)域如下:通訊。包括圖像傳輸、電視電話、電視會(huì)議等,主要是進(jìn)行圖像壓縮甚至理解基礎(chǔ)上的壓縮。宇宙探測(cè)。由于太空技術(shù)的發(fā)展,需要用數(shù)字圖像處理技術(shù)處理大量的星體照片。遙感。航空遙感和衛(wèi)星遙感圖像需要用數(shù)字技術(shù)加

21、工處理,并提取有用的信息。主要用于地形地質(zhì)分析,礦藏探勘,森林、海洋、水利、農(nóng)業(yè)等資源調(diào)查,環(huán)境污染監(jiān)測(cè),自然災(zāi)害預(yù)測(cè)預(yù)報(bào),氣象衛(wèi)星云圖處理以及地面軍事目標(biāo)的識(shí)別等。由于數(shù)據(jù)量龐大,因此尋求處理及分析這些圖像的自動(dòng)方法,特別是圖像對(duì)比度增強(qiáng)、分割及圖像識(shí)別的技術(shù)顯得極為重要。生物醫(yī)學(xué)領(lǐng)域中的應(yīng)用。圖像處理在這一領(lǐng)域的應(yīng)用非常廣泛,無(wú)論是臨床診斷還是病理研究都大量采用圖像處理技術(shù)。它的直觀、無(wú)創(chuàng)傷、安全方便等優(yōu)點(diǎn)備受青睞。圖像處理首先應(yīng)用于細(xì)胞分類、染色體分類和放射圖像等。20世紀(jì)70年代數(shù)字圖像處理在醫(yī)學(xué)上的應(yīng)用有了重大突破。1972年,X射線斷層掃描CT得到實(shí)用;1977年,白血球自動(dòng)分類儀

22、問(wèn)世;1980年,人們實(shí)現(xiàn)了CT的立體重建。醫(yī)學(xué)圖像的種類包括X光圖像、同位素圖像、核磁共振圖像、超聲波圖像、紅外線圖像以及顯微圖像等。對(duì)這些圖像作對(duì)比度增強(qiáng)或偽彩色等的處理可幫助醫(yī)生診斷疫病。工業(yè)生產(chǎn)中的應(yīng)用。在生產(chǎn)線中對(duì)產(chǎn)品及其部件進(jìn)行無(wú)損檢測(cè)是圖像處理技術(shù)的一個(gè)重要應(yīng)用領(lǐng)域。這一領(lǐng)域的應(yīng)用從20世紀(jì)70年代起取得了迅猛的發(fā)展,主要有產(chǎn)品質(zhì)量檢測(cè);生產(chǎn)過(guò)程的自動(dòng)控制;CAD和CAM等。軍事、公安等方面的應(yīng)用。例如軍事目標(biāo)的偵察、制導(dǎo)和警戒系統(tǒng)、自動(dòng)滅火器的控制及反偽裝;公安部門(mén)的現(xiàn)場(chǎng)照片、指紋、手跡、人像等的處理和辨識(shí);歷史文字和圖片檔案的修復(fù)和管理等。機(jī)器人視覺(jué)。機(jī)器視覺(jué)作為智能機(jī)器人的

23、重要感覺(jué)器官,其主要任務(wù)是進(jìn)行三維景物理解和識(shí)別。機(jī)器視覺(jué)主要用于軍事偵察或處于危險(xiǎn)環(huán)境的自主機(jī)器人;郵政、醫(yī)院和家政服務(wù)的智能機(jī)器人;裝配線工件識(shí)別、定位;太空機(jī)器人的自動(dòng)操作等??茖W(xué)可視化。圖像處理和圖形學(xué)的緊密結(jié)合,形成了科學(xué)研究領(lǐng)域新型的研究工具。例如考古學(xué)可用圖像處理方法恢復(fù)模糊或其他降質(zhì)狀況的珍貴文物圖像。視頻和多媒體系統(tǒng)。電視制作系統(tǒng)中廣泛使用圖像處理、變換、合成;多媒體系統(tǒng)中靜止圖像和動(dòng)態(tài)圖像的采集、壓縮、處理、存儲(chǔ)和傳輸?shù)?。電子商?wù)。圖像處理技術(shù)在這一領(lǐng)域大有可為,如身份認(rèn)證、產(chǎn)品防偽、水印技術(shù)等。1.5數(shù)字圖像處理的發(fā)展方向目前圖像處理面臨的主要任務(wù)是研究新的處理方法,構(gòu)造

24、新的處理系統(tǒng),開(kāi)拓新的應(yīng)用領(lǐng)域。需要進(jìn)一步研究的問(wèn)題有如下幾個(gè)方面:在進(jìn)一步提高精度的同時(shí)著重解決處理速度問(wèn)題。加強(qiáng)軟件研究,開(kāi)發(fā)新的處理方法,特別是要注意移植和見(jiàn)解借鑒其他學(xué)科的技術(shù)和研究成果,創(chuàng)造出新的處理方法。加強(qiáng)邊緣學(xué)科的研究工作,促進(jìn)圖像處理技術(shù)的發(fā)展。加強(qiáng)理論研究,逐步形成圖像處理科學(xué)自身的理論體系。圖像處理領(lǐng)域的標(biāo)準(zhǔn)化。圖像處理技術(shù)未來(lái)發(fā)展方向大致可歸納為:圖像處理的發(fā)展將圍繞高清晰度電視的研制,開(kāi)展實(shí)時(shí)圖像處理的理論及技術(shù)研究,向著高速、高分辨率、立體化、多媒體化、智能化和標(biāo)準(zhǔn)化方向發(fā)展。圖像、圖形相結(jié)合,朝著三維成像或多維成像的方向發(fā)展。硬件芯片研究。把圖像處理的眾多功能固化

25、在芯片上,使之更便于應(yīng)用。新理論與新算法的研究。近年來(lái)隨著一些新理論的引入及新算法的研究,將會(huì)成為今后圖像處理理論與技術(shù)的研究熱點(diǎn)。例如小波分析(Wavelet)、人工神經(jīng)網(wǎng)絡(luò)(artificialneuralnetworks)、分形幾何(Fractal)、形態(tài)學(xué)(Morphology)、遺傳算法(GennticAlgorithms)等。隨著科學(xué)技術(shù)的進(jìn)步以及人類需求的不斷增加,圖像處理科學(xué)無(wú)論是在理論上還是實(shí)踐上,都會(huì)取得更大的發(fā)展。MATLAB圖像處理基礎(chǔ)2.2.1圖像文件格式及圖像類型1MATLAB支持的幾種圖像文件格式:JPEG(JointPhotogyaphicExpeytsGrou

26、p):一種稱為聯(lián)合圖像專家組的圖像壓縮格式。BMP(WindowsBitmap):有1位、4位、8位、24位非壓縮圖像,8位RLE(RunlengthEncoded)的圖像。文件內(nèi)容包括文件頭(一個(gè)BITMAPFILEHEADER數(shù)據(jù)結(jié)構(gòu))、位圖信息數(shù)據(jù)塊(位圖信息頭BITMAPINFOHEADER和一個(gè)顏色表)和圖像數(shù)據(jù)。PCX(WindowsPaintbrush):可處理1位、4位、8位、16位、24位等圖像數(shù)據(jù)。文件內(nèi)容包括文件頭、圖像數(shù)據(jù)和擴(kuò)展色圖數(shù)據(jù)。TIFF(TaggedIamgeFileFormat):處理1位、4位、8位、24位非壓縮圖像,1位、4位、8位、24位packbit

27、壓縮圖像,1位CCITT壓縮圖像等。文件內(nèi)容包括文件頭、參數(shù)指針表與參數(shù)域、參數(shù)數(shù)據(jù)表和圖像數(shù)據(jù)四部分。PNG(PortableNetworkGraphics):包括1位、2位、4位、8位和16位灰度圖像,8位和16位索引圖像,24位和48位真彩色圖像。GIF(GraphicsInterchangeFormat):任何1位到8位的可交換的圖像。HDF(HierarchialDataFormat):有8位、24位光柵圖像數(shù)據(jù)集。ICO(WindowsIconresource):有1位、4位、8位非壓縮圖像。CUR(WindowsCursorresource):有1位、4位、8位非壓縮圖像。XWD

28、(XWindowsDump):包括1位、8位Zpixmaps,XYBitmaps,XYPixmmmaps。RAS(SunRasterimage):有1位bitmap、8位索引、24位真彩色和帶有透明度的32位真彩色。PBM(PortableBitmap)。PGM(PortableGraymap)。PPM(PortablePixmap)。2MATLAB支持五種圖像類型,即二值圖像、索引圖像、灰度圖像、RGB圖像和多幀圖像陣列。有關(guān)它們的定義見(jiàn)下表2.1。表2.1圖像類型及其對(duì)應(yīng)的像素?cái)?shù)據(jù)類型圖像類型Double數(shù)據(jù)uint8和uint16數(shù)據(jù)二值圖像圖像為mn的整數(shù)矩陣,元素值范圍0,1圖像為m

29、n的整數(shù)矩陣,元素值范圍0,1索引圖像圖像為mn的整數(shù)矩陣,元素值范圍0,p圖像為mn的整數(shù)矩陣,元素值范圍0,p-1灰度圖像圖像為mn的浮點(diǎn)數(shù)矩陣,元素值范圍0,1圖像為mn的整數(shù)矩陣,元素值范圍0,255或0,65535RGB圖像圖像為mn3的浮點(diǎn)數(shù)矩陣,元素值范圍0,1圖像為mn3的整數(shù)矩陣,元素值范圍0,255或0,65535其中,多幀圖像陣列是由多幀圖像組成的,每一幀圖像可以為前四種圖像中的一種,但組成一個(gè)多幀圖像陣列的圖像必須為同一種。cat函數(shù)可以將具有相同尺寸的幾個(gè)獨(dú)立圖像存成多幀文件。對(duì)于多幀圖像也可以從中提取單幀。2.2.2圖像類型判斷及轉(zhuǎn)換1在MATLAB中如果要判斷一個(gè)

30、圖像文件的類型,可使用如下指令:lisbw:若圖像為二值圖像,則返回真。lisgray:若圖像為灰度圖像,則返回真。lisind:若圖像為索引圖像,則返回真。lisrgb:若圖像為RGB圖像,則返回真。2在MATLAB系統(tǒng)中,要將一個(gè)類型的圖像文件轉(zhuǎn)換成另一個(gè)類型的圖像文件,只需將前一個(gè)文件的圖像數(shù)據(jù)用imread讀出,再用imwrite以適當(dāng)?shù)母袷綄?xiě)到后一個(gè)圖像文件中去即可。另外,要將灰度圖像I轉(zhuǎn)換成RGB圖像,可運(yùn)用cat指令。cat函數(shù)可以把一些單一的圖像合并成圖像序列。在圖像序列中每個(gè)圖像需有相同的大小,如果是索引圖像,色圖也要一致。此外,MATLAB還提供了若干函數(shù),用于圖像類型的轉(zhuǎn)

31、換。這些函數(shù)有:ldither:用抖動(dòng)法(dithering)轉(zhuǎn)換圖像。該函數(shù)通過(guò)顏色抖動(dòng)(顏色抖動(dòng)即改變邊沿像素的顏色,使像素周?chē)念伾朴谠紙D像的顏色,從而以空間分辨率來(lái)?yè)Q取顏色分辨率)來(lái)增強(qiáng)輸出圖像的顏色分辨率。該函數(shù)可以把RGB圖像轉(zhuǎn)換成索引圖像或把灰度圖像轉(zhuǎn)換成二值圖像。lgray2ind:灰度圖像或二值圖像向索引圖像轉(zhuǎn)換。lgrayslice:設(shè)定閾值將灰度圖像轉(zhuǎn)換為索引圖像。lim2bw:設(shè)定閾值將灰度、索引、RGB圖像轉(zhuǎn)換為二值圖像。lim2double:將圖像數(shù)組轉(zhuǎn)換為double型。lim2uint8:將圖像數(shù)組轉(zhuǎn)換為uint8型。lim2uint16:將圖像數(shù)組轉(zhuǎn)換為

32、uint16型。該函數(shù)不支持二值圖像序列的轉(zhuǎn)換。lind2gray:索引圖像向灰度圖像轉(zhuǎn)換。lind2rgb:索引圖像向RGB圖像轉(zhuǎn)換。lmat2gray:將一個(gè)數(shù)據(jù)矩陣轉(zhuǎn)換為灰度圖像。lrgb2gray:RGB圖像向灰度圖像轉(zhuǎn)換或?qū)⒉噬珗D轉(zhuǎn)換成灰度色圖。lrgb2ind:RGB圖像向索引圖像轉(zhuǎn)換。包含三種不同方法:均衡量化、最小值量化、色圖映射。lim2java:一般圖像向Java圖像轉(zhuǎn)換。llabel2rgb:標(biāo)志圖像向RGB圖像轉(zhuǎn)換。2.2.3圖像的查詢及讀寫(xiě)在MATLAB中要查詢一個(gè)圖像文件的信息,只要用imfinfo指令加上文件及其完整路徑名即可。函數(shù)調(diào)用格式為:info=imfi

33、nfo(filename,fmt)info=imfinfo(filename)參數(shù)fmt對(duì)應(yīng)于所有圖像處理工具箱中所有支持的圖像文件格式。MATLAB提供了兩個(gè)重要的用于圖像文件的讀寫(xiě)的指令,分別是從圖像文件中讀取數(shù)據(jù)的imread,以及將數(shù)據(jù)寫(xiě)入到圖像文件中的imwrite。1imread的常見(jiàn)調(diào)用格式為:A=imread(filename,fmt)其作用是將文件名用字符串filename表示的,擴(kuò)展名用fmt表示的圖像文件中的數(shù)據(jù)讀到矩陣A中。如果filename所指的為灰度級(jí)圖像,則A為一個(gè)二維矩陣;如果filename所指的為RGB圖像,則A為一個(gè)mn3的三維矩陣。Filename表示

34、的文件名必須在MATLAB的搜索路徑范圍內(nèi),否則需指出其完整路徑。imread的其他幾種重要的調(diào)用格式為:X,map=imread(filename.fmt)=imread(filename)=imread(URL,)=imread(,idx)(CUR,ICOandTIFFonly)=imread(,frames,idx)(GIFonly)=imread(,ref)(HDFonly)=imread(,BackgroundColor,BG)(PNGonly)A,map,alpha=imread()(ICO,CURandPNGonly)上面一些參數(shù)的含義如下:idx是指讀取圖標(biāo)(cur、ico、t

35、iff)文件中第idx個(gè)圖像,默認(rèn)值為1。frame,idx是指讀取gif文件中的圖像幀,idx值可以是數(shù)量、向量或all。ref是指整數(shù)值。alpha是指透明度。2imwrite的常用調(diào)用格式為:imwrite(A,filename,fmt)imwrite(X,map,filename,fmt)imwrite(,filename)imwrite(,Param1,Val1,Param2,Val2)其中imwrite(,Param1,Val1,Param2,Val2)可以讓用戶控制HDF、JPEG、TIFF等一些圖像文件格式的輸出特性。在MATLAB中,默認(rèn)的保存類型是uint8。由于PNG和T

36、IFF格式支持16位的圖像,所以保存這類圖像時(shí),保存類型就是uint16。2.2.4圖像的顯示顯示圖像的最基本的手段是使用image函數(shù)。該函數(shù)還產(chǎn)生了圖像對(duì)象的句柄,并允許對(duì)對(duì)象的屬性進(jìn)行設(shè)置。此外,imagesc函數(shù)也具有image的功能,所不同的是imagesc函數(shù)還自動(dòng)將輸入數(shù)據(jù)比例化,以全色圖的方式顯示。imshow函數(shù)比image和imagesc更常用,它能自動(dòng)設(shè)置句柄圖像的各種屬性。imshow可用于顯示各類圖像。對(duì)于每類圖像,調(diào)用方法如下:limshowfilename:顯示圖像文件。limshow(BW):顯示二值圖像,BW為黑白二值圖像矩陣。limshow(X,map):顯

37、示索引圖像,X為索引圖像矩陣,map為色彩圖示。limshow(I):顯示灰度圖像,I為二值圖像矩陣。limshow(RGB):顯示RGB圖像,RGB為RGB圖像矩陣。limshow(I,lowhigh):將非圖像數(shù)據(jù)顯示為圖像,這需要考慮數(shù)據(jù)是否超出了所顯示類型的最大允許范圍,其中l(wèi)owhigh用于定義待顯示數(shù)據(jù)的范圍。有關(guān)圖像顯示的函數(shù)或其輔助函數(shù),除了上述的以外,MATLAB還提供了一些用于進(jìn)行圖像的特殊顯示的函數(shù)。lcolorbar:為圖像的顯示增加一個(gè)顏色條,這一用法對(duì)于了解被顯示圖像的灰度級(jí)別特別有用。lgetimage:獲取圖像數(shù)據(jù)。limmovie:將多幀索引圖像制作成連續(xù)圖像

38、格式。其調(diào)用格式為:mov=immovie(D,map)不過(guò)這種功能只對(duì)索引圖像有效,其中D為多幀索引圖像陣列,map為索引圖像的對(duì)應(yīng)色階。對(duì)于其他類型圖像,則需要首先將其轉(zhuǎn)換為索引圖像。lmontage:多幀圖像的一次顯示。它能將每一幀分別顯示在一幅圖像的不同區(qū)域,所有子區(qū)的圖像都用同一個(gè)色彩條。lmovie:播放多幀連續(xù)圖像。lsubimage:在一個(gè)圖形區(qū)域內(nèi)顯示多個(gè)圖像。ltruesize:調(diào)整圖像顯示的尺寸。lwarp:顯示圖像的紋理表面圖。前面提到的圖像顯示手段都只能在二維平面上顯示,MATLAB6.5的一個(gè)強(qiáng)大功能是能將平面圖像顯示在空間三維曲面上。這是由warp函數(shù)的紋理成圖功

39、能來(lái)實(shí)現(xiàn)的,該功能能通過(guò)雙線性插值將平面圖像投影到三維曲面上。lzoom:將圖像或二維圖形進(jìn)行放大或縮小顯示。zoom本身是是一個(gè)開(kāi)關(guān)鍵,zoomon用于打開(kāi)縮放模式,zoomoff用于關(guān)閉該模式,zoomin用于放大局部圖像,zoomout用于縮小圖像。至于多個(gè)圖像的顯示,則可分為兩個(gè)方面:在不同的圖形窗口顯示不同的圖像,可以用figure指令來(lái)實(shí)現(xiàn);在同一個(gè)圖形窗口顯示多圖,可以用subplot來(lái)實(shí)現(xiàn)。第三章圖像運(yùn)算3.1圖像的點(diǎn)運(yùn)算點(diǎn)運(yùn)算將輸入圖像映射為輸出圖像,輸出圖像每個(gè)像素點(diǎn)的灰度值僅由對(duì)應(yīng)的輸入像素點(diǎn)的值決定。它常用于改變圖像的灰度范圍及分布,是圖像數(shù)字化及圖像顯示的重要工具。點(diǎn)

40、運(yùn)算因其作用性質(zhì),也被稱為對(duì)比度增強(qiáng)、對(duì)比度拉伸或灰度變換。在真正進(jìn)行圖像處理之前,有時(shí)可以用點(diǎn)運(yùn)算來(lái)克服圖像數(shù)字化設(shè)備的局限性。點(diǎn)運(yùn)算實(shí)際上是灰度到灰度的映射過(guò)程。點(diǎn)運(yùn)算不會(huì)改變圖像內(nèi)像素點(diǎn)之間的空間關(guān)系。設(shè)輸入圖像為A(x,y),輸出圖像為B(x,y),則點(diǎn)運(yùn)算可表示為:B(x,y)=fA(x,y)(3-1)點(diǎn)運(yùn)算可完全由灰度變換(gray-scaletransformation)函數(shù)s=f(r)決定,后者描述了輸入灰度級(jí)與輸出灰度級(jí)之間的映射關(guān)系。圖像的點(diǎn)運(yùn)算分為線性點(diǎn)運(yùn)算和非線性點(diǎn)運(yùn)算兩種。3.1.1線性點(diǎn)運(yùn)算線性點(diǎn)運(yùn)算是指灰度變換函數(shù)f為線性函數(shù)時(shí)的運(yùn)算。如圖3.1,當(dāng)a1時(shí),輸出圖

41、像對(duì)比度增大;當(dāng)a1時(shí),輸出圖像對(duì)比度降低;當(dāng)a1,b0時(shí),輸出圖像就是輸入圖像的簡(jiǎn)單復(fù)制;當(dāng)a1,b0時(shí),僅使輸出圖像的灰度值上移或下移,其效果是使整個(gè)圖像更亮或更暗。如果a為負(fù)值,暗區(qū)域?qū)⒆兞?,亮區(qū)域?qū)⒆儼担c(diǎn)運(yùn)算完成了圖像求補(bǔ)。除了調(diào)節(jié)對(duì)比度以外,還有一種典型的線性點(diǎn)運(yùn)算的應(yīng)用就是灰度標(biāo)準(zhǔn)化。設(shè)灰度圖像為IWH,其中W表示圖像寬度,H表示圖像的高度,那么灰度圖像的平均灰度和方圖3.1線性函數(shù)差由如下計(jì)算公式得到:平均灰度:(3-2)方差:(3-3)可以將其變換為具有相同均值和方差的變換函數(shù)(線性映射),其形式如下:(3-4)其中0和u0為給定的變換參數(shù)。灰度標(biāo)準(zhǔn)化可以用來(lái)生成一些常用的平

42、均模型。3.1.2非線性點(diǎn)運(yùn)算非線性點(diǎn)運(yùn)算對(duì)應(yīng)于非線性映射函數(shù),典型的映射包括平方函數(shù)、對(duì)數(shù)函數(shù)、截取函數(shù)(窗口函數(shù))、域值函數(shù)、多值量化函數(shù)等。閾值化處理是最常用的一種非線性點(diǎn)運(yùn)算,它的功能是選擇一閾值,將圖像二值化,然后使用生成的二進(jìn)制圖像進(jìn)行圖像分割及邊緣跟蹤等處理。直方圖均衡化也是一種非常常用的非線性點(diǎn)運(yùn)算。它是指將一個(gè)已知灰度分布的圖像使用某種非線性灰度變換函數(shù)進(jìn)行計(jì)算,使運(yùn)算結(jié)果變成一幅具有均勻灰度分布的新圖像。經(jīng)過(guò)直方圖均衡化的點(diǎn)運(yùn)算處理后,實(shí)際的直方圖將呈現(xiàn)參差不齊的外形,這是由于灰度級(jí)的可能個(gè)數(shù)是限造成的。在一些灰度級(jí)處可能沒(méi)有像素,在另外一些灰度級(jí)處則像素很擁擠。點(diǎn)運(yùn)算的M

43、ATLAB實(shí)現(xiàn):I=imread(rice.png);rice=double(I);rice2=rice*0.5+50;J=uint8(rice2);subplot(1,2,1),imshow(I);subplot(1,2,2),imshow(J);MATLAB在數(shù)字圖像處理中的應(yīng)用21幾個(gè)基本術(shù)語(yǔ)在運(yùn)用MATLAB進(jìn)行數(shù)字圖像處理之前,我們必須明確幾個(gè)基本術(shù)語(yǔ):1)位圖:是根據(jù)圖像的尺寸和分辨率創(chuàng)建和保存的圖像,由掃描輸入。2)矢量圖:使用專用軟件繪制的,以數(shù)學(xué)方程式的方式保存的圖像,所以矢量圖的清晰度與分辨率無(wú)關(guān)。3)象素:是圖像在計(jì)算機(jī)顯示中的度量單位,可以變化,可大可小。4)分辨率:是

44、用于度量圖像在顯示器中清晰程度的一個(gè)參數(shù),分辨率越高,圖像越清晰。分辨率是與象素相關(guān)的,即單位長(zhǎng)度上的象素?cái)?shù)就是分辨率。由此可知,分辨率越高,象素的幾何尺寸就越小。5)圖像文件的大?。褐敢环鶊D像在計(jì)算機(jī)中保存時(shí)所占用的磁盤(pán)空間,其大小與所用的顏色模式有關(guān)?;叶葓D像中的每一個(gè)灰度象素只占用一個(gè)字節(jié)(8位),RGB圖像中紅、綠、藍(lán)各占用一個(gè)字節(jié)。另外,圖像文件的大小也直接與其分辨率有關(guān),原因是當(dāng)分辨率增加時(shí),一幅圖像所包含的象素量急劇增加。6)句柄:通俗地說(shuō)就是對(duì)象的代號(hào)或標(biāo)志,它能使計(jì)算機(jī)方便地從眾多對(duì)象中找到所需要的對(duì)象并對(duì)之加以相應(yīng)的操作。MATLAB中的句柄圖形對(duì)象包括軸、文本、菜單、控制

45、框、圖像等。2.2MATLAB圖像文件格式簡(jiǎn)介針對(duì)MATLAB的數(shù)字圖像處理功能,我們討論它可以處理的幾種圖像文件格式:A)PCX格式??商幚?、4、8、16、24位等圖像數(shù)據(jù)。文件內(nèi)容包括文件頭、圖像數(shù)據(jù)、擴(kuò)展調(diào)色板數(shù)據(jù)。B)BMP格式,即位圖文件,整幅圖可視為一個(gè)數(shù)字矩陣。它包括1、4、8、24位非壓縮圖像,8位RLE(行程編碼)圖像。文件內(nèi)容包含文件頭、位圖信息數(shù)據(jù)塊和圖像數(shù)據(jù)。選擇BMP格式保存一幅灰度模式圖像時(shí),可選擇以Windows格式保存。而且在選中4位或8位位圖時(shí),還可選壓縮(RLE)項(xiàng),在用RLE方式壓縮保存后圖像將毫無(wú)損失。這是用得最廣的圖像格式之一,在本文中都對(duì)這種格式的

46、圖像進(jìn)行操作。C)HDF格式。有8位,24位光柵圖像數(shù)據(jù)集。D)JPEG格式。是一種聯(lián)合圖像專家組的圖像壓縮格式,是目前所用對(duì)靜止灰度或彩色圖像的壓縮標(biāo)準(zhǔn)。它實(shí)際上定義了3種編碼系統(tǒng):a基于DCT的有損編碼基本系統(tǒng),可用于絕大多數(shù)壓縮場(chǎng)合;b用于高壓縮比、高精度或漸進(jìn)重建應(yīng)用的擴(kuò)展編碼系統(tǒng);c用于無(wú)失真應(yīng)用場(chǎng)合的無(wú)損系統(tǒng)。JPEG沒(méi)有規(guī)定文件格式、圖像分辨率或所用的彩色空間模型,這使它就有可能適用于MATLAB。D)TIFF格式。處理1、4、8、24位非壓縮圖像,1、4、8、24位packbit壓縮圖像,1位CCITT壓縮圖像等。文件內(nèi)容包括:文件頭、參數(shù)指針表與參數(shù)域、參數(shù)數(shù)據(jù)表和圖像數(shù)據(jù)四

47、部分。它是一種用途廣泛的文件格式,其特點(diǎn)是可移植性好,幾乎所有的掃描儀及在Windows、Macintosh平臺(tái)上常用的版面設(shè)計(jì)軟件都支持TIFF文件格式。以這種格式保存的圖像文件結(jié)構(gòu)比較復(fù)雜,在不壓縮存放時(shí)文件比較大。E)XWD格式。1、8位Zpixmaps,Xybitmaps,1位XYPixmaps。F)TGA格式。處理1、4、8、16、24位非壓縮圖像和行程編碼圖像。文件包由5個(gè)固定長(zhǎng)度字段和3個(gè)可變長(zhǎng)度字段組成。2.3MATLAB圖像文件類型根據(jù)數(shù)據(jù)矩陣和圖像象素點(diǎn)顏色的匹配關(guān)系,MATLAB中的圖像可分為三類:索引圖像、灰度圖像和RGB圖像。1)索引圖像:它的數(shù)據(jù)信息包括一個(gè)數(shù)據(jù)矩陣

48、和一個(gè)雙精度色圖矩陣,它的數(shù)據(jù)矩陣中的值直接指定該點(diǎn)的顏色為色圖矩陣中的某一種。色圖矩陣中,每一行表示一種顏色,每行有三個(gè)數(shù)據(jù),分別表示該種顏色中紅、綠、藍(lán)的比例情況,所有元素值都在0,1內(nèi)。2)灰度圖像:它的數(shù)據(jù)矩陣中的元素值一般都在0,1或0,255之間,灰度圖像根據(jù)這些數(shù)據(jù)利用線性插值來(lái)和色圖中的顏色種類匹配。3)RGB圖像:圖像中每個(gè)象素的顏色用三個(gè)數(shù)據(jù)來(lái)存儲(chǔ),分別指定紅、綠、藍(lán)三原色在象素顏色中的比例關(guān)系,組成一個(gè)三維數(shù)組。2.4MATLAB中圖像的存儲(chǔ)運(yùn)算和顯示方式在MATLAB中,數(shù)值一般都采用double型(64位)存儲(chǔ)和運(yùn)算,為了節(jié)省存儲(chǔ)空間,MATLAB為圖像提供了特殊的數(shù)

49、據(jù)類型uint8(8位無(wú)符號(hào)整數(shù)),以此方式存儲(chǔ)的圖像稱為8位型像。函數(shù)image能夠直接顯示8位圖像,但8位型數(shù)據(jù)和double型數(shù)據(jù)在image中意義不一樣,對(duì)于索引圖像,數(shù)據(jù)矩陣中的值指定該像素的顏色種類在色圖矩陣中的行數(shù)。當(dāng)數(shù)據(jù)矩陣中的值為0時(shí),表示用色圖矩陣中第一行表示的顏色繪制;當(dāng)數(shù)據(jù)矩陣中的值為1時(shí),表示用色圖矩陣中的第二行表示的顏色繪制該像素,數(shù)據(jù)與色圖矩陣中的行數(shù)總是相差1。所以,索引圖像double型和uint8型在顯示方法上沒(méi)有什么不同,只是8位數(shù)據(jù)矩陣的值和顏色種類之間有一個(gè)偏差1。調(diào)用格式均為image(x);colormap(map);對(duì)于灰度圖像,uint8表示范

50、圍0,255,double型表示范圍0,1??梢?jiàn),double型和uint8型灰度圖像不一樣,二者轉(zhuǎn)換格式為:I8=uint8(round(I64*255);I64=double(I8)/255;反之,imread根據(jù)文件中的圖像種類作不同的處理。當(dāng)文件中的圖像為灰度圖像時(shí),imread把圖像存入一個(gè)8位矩陣中,把色圖矩陣轉(zhuǎn)換為雙精度矩陣,矩陣中每個(gè)元素值在0,1內(nèi);當(dāng)為RGB圖像時(shí),imread把數(shù)據(jù)存入到一個(gè)8位RGB矩陣中。本軟件的處理統(tǒng)一針對(duì)BMP格式的灰度圖。在編程時(shí)圖像讀入與輸出均要求轉(zhuǎn)換為uint8型,中間運(yùn)算處理過(guò)程則要用double型。25從零開(kāi)始學(xué)用MATLABMATLAB

51、對(duì)于我來(lái)說(shuō)是一門(mén)全新的語(yǔ)言,一般在編輯框中編程存盤(pán)后在命令框內(nèi)運(yùn)行,在Figure框中顯示圖像。在用它作數(shù)字圖像處理的過(guò)程中,最常碰到的問(wèn)題有:圖像讀入imread(文件名.格式,格式),必須是上文提過(guò)的MATLAB支持的7種格式之一,而用Photoshop制作的PSD圖像保存了所有通道和圖層的信息,不能直接用MATLAB來(lái)處理。顯示圖像用imshow(h)語(yǔ)句,h為圖像句柄;在一幅圖片中顯示子圖用subplot規(guī)定子圖的位置和大小,用subimage(h)輸出子圖。輸出圖像若需要永久保存,則可用imwrite(h,map,filename.bmp,bmp),寫(xiě)入存儲(chǔ)器。注意在該語(yǔ)句前要設(shè)置調(diào)

52、色板,即map=(gray(256)。結(jié)構(gòu)化程序語(yǔ)句寫(xiě)法不同于C語(yǔ)言。比如if,for之后要用end表示這一塊結(jié)束。有關(guān)條件的語(yǔ)句都不用加括號(hào),而用冒號(hào)來(lái)表示遞增,如fori=1:3:10表示i從1以步長(zhǎng)3遞增到10,即做三次循環(huán)。要注意圖像格式的轉(zhuǎn)化。須知不同的圖像格式對(duì)應(yīng)不同的處理方式,如果處理與格式不符,將引起錯(cuò)誤。比如范例中的圖片lena256.bmp表現(xiàn)為灰度圖,但其實(shí)質(zhì)仍為RGB圖像。如果不用語(yǔ)句rgb2gray將其轉(zhuǎn)化為256級(jí)灰度圖,經(jīng)變換后圖像會(huì)變紅或變藍(lán)。數(shù)組的定義方式與C語(yǔ)言不同。由于C語(yǔ)言中含N個(gè)元素的一維數(shù)組A的下標(biāo)從0到N-1,數(shù)組定義為AN;同樣的數(shù)組,MATLA

53、B規(guī)定的下標(biāo)是從1到N,所以不能再用AN來(lái)表示數(shù)組,只能用它表示數(shù)組的第N個(gè)元素。賦值時(shí)用A代表數(shù)組。由于在本演示軟件中,涉及較多點(diǎn)運(yùn)算,所以運(yùn)行速度較慢。等待時(shí)未知其是否順利運(yùn)行。這時(shí)最好在最外層循環(huán)加上計(jì)數(shù)標(biāo)志,即變量名,這樣對(duì)程序運(yùn)行的影響不大,卻可以知道程序的運(yùn)行情況,有助于查錯(cuò)。但如果在內(nèi)層循環(huán)加標(biāo)志的話,將大大減慢運(yùn)行速度。盡管MATLAB允許未定義使用數(shù)組,但在實(shí)際應(yīng)用中這樣經(jīng)常出錯(cuò),特別是遇到在double和uint8型之間的轉(zhuǎn)換時(shí)。所以最好還是養(yǎng)成用前定義的習(xí)慣,避免出現(xiàn)不必要的錯(cuò)誤。在做完一定量的運(yùn)算后,一般要用Clear清除內(nèi)存變量,以防影響后面的程序運(yùn)行。matlab調(diào)

54、試工具在開(kāi)發(fā)函數(shù)M文件過(guò)程中,不可避免地出現(xiàn)錯(cuò)誤,即故障。MATLAB提供了很多函數(shù)和方法,幫助調(diào)試函數(shù)。在MATLAB表達(dá)式中,有兩類錯(cuò)誤:語(yǔ)法錯(cuò)誤和運(yùn)行錯(cuò)誤。當(dāng)MATLAB計(jì)算一個(gè)表達(dá)式的值或一個(gè)函數(shù)被編譯到內(nèi)存時(shí)會(huì)發(fā)現(xiàn)語(yǔ)法錯(cuò)誤。一旦發(fā)現(xiàn)語(yǔ)法錯(cuò)誤,MATLAB立即標(biāo)志這些錯(cuò)誤,并提供有關(guān)所遇到的錯(cuò)誤類型,以及發(fā)生錯(cuò)誤處M文件的行數(shù)。給定這些反饋信息,就很容易糾正這些錯(cuò)誤。而另一方面,即使MATLAB標(biāo)志了運(yùn)行錯(cuò)誤,但找出錯(cuò)誤一般比較困難。當(dāng)發(fā)現(xiàn)運(yùn)行錯(cuò)誤時(shí),MATLAB把控制權(quán)返回給命令窗口和MATLAB的工作空間。失去了對(duì)發(fā)生錯(cuò)誤的函數(shù)空間的訪問(wèn)權(quán),因此,用戶不能詢問(wèn)函數(shù)工作空間中的內(nèi)容排

55、除問(wèn)題。根據(jù)作者的經(jīng)驗(yàn),當(dāng)一些操作結(jié)果導(dǎo)致空矩陣或NaNs時(shí),最容易發(fā)生運(yùn)行錯(cuò)誤。所有有關(guān)NaNs的操作都返回NaNs值。因此,如果有可能出現(xiàn)NaNs結(jié)果,則當(dāng)出現(xiàn)NaNs時(shí),最好運(yùn)用邏輯函數(shù)isnan來(lái)執(zhí)行一些缺省操作。因?yàn)榭站仃嚍榱憔S,所以對(duì)空矩陣尋址常常導(dǎo)致錯(cuò)誤。函數(shù)find表示了可產(chǎn)生空矩陣結(jié)果的一般情況。如果函數(shù)find的空矩陣輸出用于索引其它數(shù)組,所返回的值也將是空的。這樣,空矩陣具有傳播性質(zhì)。例如:x=pi*(1:4)%exampledatai=find(x20)%usefindfunctiony=2*x(i)%propagatetheemptymatrix很清楚,當(dāng)希望y具有有

56、限維數(shù)和值時(shí),可能發(fā)生運(yùn)行錯(cuò)誤。當(dāng)執(zhí)行一個(gè)操作或使用可返回空結(jié)果的函數(shù)時(shí),邏輯函數(shù)isempty有利于為空矩陣定義一個(gè)缺省值,這樣避免運(yùn)行錯(cuò)誤。有幾種調(diào)試函數(shù)M文件的方法。對(duì)于簡(jiǎn)單的問(wèn)題,可直接使用下列的方法組合:1、去掉文件中所選擇的行的分號(hào),以便中間結(jié)果顯示在命令窗口中。2、在文件中加入顯示感興趣的變量的語(yǔ)句3、把keyboard命令放在文件中所選擇的地方,給鍵盤(pán)暫時(shí)控制權(quán)。這樣,可以查詢函數(shù)空間并按需要改變其值。4、在M文件開(kāi)始,在function語(yǔ)句前加上%,將函數(shù)M文件改變?yōu)槟_本M文件。當(dāng)MATLAB執(zhí)行該腳本M文件時(shí),該空間就是MATLAB工作空間。這樣,當(dāng)發(fā)生錯(cuò)誤時(shí)可以詢問(wèn)。當(dāng)M

57、文件大,遞歸調(diào)用或者多次嵌套(即調(diào)用其它M文件函數(shù),被調(diào)用M文件函數(shù)又調(diào)用其它M文件函數(shù),等等)時(shí),用MATLAB的調(diào)試函數(shù)會(huì)更方便。與上述所列方法相反,這些調(diào)試函數(shù)不要求將有問(wèn)題的M文件進(jìn)行編輯。表16.1所給出的這些函數(shù)類似于其它高級(jí)編程語(yǔ)言中所提供的函數(shù)。有關(guān)進(jìn)一步的信息,以及它們的使用實(shí)例,參閱MATLAB用戶指南。表16.1MATLAB調(diào)試函數(shù)dbclear:取消斷點(diǎn)dbcont:在斷點(diǎn)后恢復(fù)運(yùn)行dbdown:工作空間下移dbquit:退出調(diào)試模式dbstack:列出誰(shuí)調(diào)用誰(shuí)dbstatus:列出所用的斷點(diǎn)dbstep:執(zhí)行一行或多行dbstop:設(shè)置斷點(diǎn)dbtype:列出帶行號(hào)的M

58、文件dbup:工作空間上移圖像類型轉(zhuǎn)換函數(shù)HYPERLINK/zhizhu666/archive/2007/05/12/1606312.aspxMATLAB命令默認(rèn)情況下,matlab將圖象中的數(shù)據(jù)存儲(chǔ)為double型,即64位浮點(diǎn)數(shù);matlab還支持無(wú)符號(hào)整型(uint8和uint16);uint型的優(yōu)勢(shì)在于節(jié)省空間,涉及運(yùn)算時(shí)要轉(zhuǎn)換成double型。im2double():將圖象數(shù)組轉(zhuǎn)換成double精度類型im2uint8():將圖象數(shù)組轉(zhuǎn)換成unit8類型im2uint16():將圖象數(shù)組轉(zhuǎn)換成unit16類型圖像類型轉(zhuǎn)換函數(shù):dither()通過(guò)顏色抖動(dòng),把真彩圖像轉(zhuǎn)換成索引圖像或

59、灰度圖象轉(zhuǎn)換成二值圖像gray2ind()將灰度圖像(或二值圖像)轉(zhuǎn)換成索引圖像grayslice()通過(guò)設(shè)定的閾值將灰度圖象轉(zhuǎn)換成索引圖像im2bw()通過(guò)設(shè)定亮度閾值將灰度、真彩、索引圖象轉(zhuǎn)換成二值圖像ind2gray()將索引圖象轉(zhuǎn)換成灰度圖象ind2rgb()將索引圖象轉(zhuǎn)換成真彩色圖像mat2gray()將一個(gè)數(shù)據(jù)矩陣轉(zhuǎn)換成一幅灰度圖象rgb2gray()將真彩轉(zhuǎn)換成灰度圖象rgb2ind()將真彩轉(zhuǎn)換成索引圖象圖像類型與類型間的轉(zhuǎn)換1。索引圖像:包括一個(gè)數(shù)據(jù)矩陣X和一個(gè)色圖陣MAP。矩陣元素值指向MAP中的特定顏色向量。2?;叶葓D像:數(shù)據(jù)矩陣I,I中的數(shù)據(jù)代表了顏色灰度值。矩陣中的元

60、素可以是double類型、8位或16位無(wú)符號(hào)的整數(shù)類型。3。RGB圖像:即真彩圖像。矩陣中每個(gè)元素為一個(gè)數(shù)組,數(shù)組的元素定義了像素的紅、綠、藍(lán)顏色值。RGB數(shù)組可以是double類型、8位或16位無(wú)符號(hào)的整數(shù)類型。4。二值圖像:一個(gè)數(shù)據(jù)陣列,每個(gè)象素只能取0或1。矩陣的基本運(yùn)算行列式求值:det(A)矩陣加減:+、-矩陣相乘:*矩陣左除:A/B%相當(dāng)于inv(A)*B矩陣右除:AB%相當(dāng)于A*inv(B)矩陣的冪:矩陣轉(zhuǎn)置:矩陣求共軛(實(shí)部相同,虛部相反):conj(X)矩陣求逆:inv(X)級(jí)數(shù)的求和與收斂symsum(fun,var,a,b):其中fun是通項(xiàng)表達(dá)式,var為求和變量,a為

溫馨提示

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

評(píng)論

0/150

提交評(píng)論