第一篇:數(shù)字圖像處理學(xué)習(xí)報(bào)告
數(shù)字圖像處理學(xué)習(xí)報(bào)告
在這一學(xué)期,我選修了《數(shù)字圖像處理基礎(chǔ)》這門(mén)課程,同時(shí),老師還講授了一些視頻處理的知識(shí)。在這里,梳理一下這學(xué)期學(xué)到的知識(shí),并提出一些我對(duì)這門(mén)課程的建議。
圖像處理是指對(duì)圖像信息進(jìn)行加工,從而滿足人類(lèi)的心理、視覺(jué)或者應(yīng)用的需求的一種行為。圖像處理方法一般有數(shù)字法和光學(xué)法兩種,其中數(shù)字法的優(yōu)勢(shì)很明顯,已經(jīng)被應(yīng)用到了很多領(lǐng)域中,相信隨著科學(xué)技術(shù)的發(fā)展,其應(yīng)用空間將會(huì)更加廣泛。數(shù)字圖像處理又稱為計(jì)算機(jī)圖像處理,它是指將圖像信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)并利用計(jì)算機(jī)對(duì)其進(jìn)行處理的過(guò)程.數(shù)字圖像處理是從20世紀(jì)60年代以來(lái)隨著計(jì)算機(jī)技術(shù)和VLSL的發(fā)展而產(chǎn)生、發(fā)展和不斷成熟起來(lái)的一個(gè)新興技術(shù)領(lǐng)域。數(shù)字圖像處理技術(shù)其實(shí)就是利用各種數(shù)字硬件與計(jì)算機(jī),對(duì)圖像信息通過(guò)轉(zhuǎn)換而得到的電信號(hào)進(jìn)行相應(yīng)的數(shù)學(xué)運(yùn)算,例如圖像去噪、圖像分割、提取特征、圖像增強(qiáng)、圖像復(fù)原等,以便提高圖像的實(shí)用性。其特點(diǎn)是處理精度比較高,并且能夠?qū)μ幚碥浖M(jìn)行改進(jìn)來(lái)優(yōu)化處理效果,操作比較方便,但是由于數(shù)字圖像需要處理的數(shù)據(jù)量一般很大,因此處理速度有待提高。目前,隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,計(jì)算機(jī)的運(yùn)算速度得到了很大程度的提高。在短短的歷史中,它卻廣泛應(yīng)用于幾乎所有與成像有關(guān)的領(lǐng)域,在理論上和實(shí)際應(yīng)用上都取得了巨大的成就。
1.數(shù)字圖像處理需用到的關(guān)鍵技術(shù)
由于數(shù)字圖像處理的方便性和靈活性,因此數(shù)字圖像處理技術(shù)已經(jīng)成為了圖像處理領(lǐng)域中的主流。數(shù)字圖像處理技術(shù)主要涉及到的關(guān)鍵技術(shù)有:圖像的采集與數(shù)字化、圖像的編碼、圖像的增強(qiáng)、圖像恢復(fù)、圖像分割、圖像分析等。
圖像的采集與數(shù)字化:就是通過(guò)量化和取樣將一個(gè)自然圖像轉(zhuǎn)換為計(jì)算機(jī)能夠處理的數(shù)字形式。
圖像編碼:圖像編碼的目的主要是來(lái)壓縮圖像的信息量,以便能夠滿足存儲(chǔ)和傳輸?shù)囊?/p>
求。
圖像的增強(qiáng):圖像的增強(qiáng)其主要目的是使圖像變得清晰或者將其變換為機(jī)器能夠很容易
分析的形式,圖像增強(qiáng)方法一般有:直方圖處理、灰度等級(jí)、偽彩色處理、邊緣銳化、干擾抵制。
圖像的恢復(fù):圖像恢復(fù)的目的是減少或除去在獲得圖像的過(guò)程中因?yàn)楦鞣N原因而產(chǎn)生的
退化,可能是由于光學(xué)系統(tǒng)的離焦或像差、被攝物與攝像系統(tǒng)兩者之間的相對(duì)運(yùn)動(dòng)、光學(xué)或電子系統(tǒng)的噪聲與介于被攝像物跟攝像系統(tǒng)之間的大氣湍流等等。
圖像的分割:圖像分割是將圖像劃分為一些互相不重疊的區(qū)域,其中每一個(gè)區(qū)域都是像素的一個(gè)連續(xù)集,通常采用區(qū)域法或者尋求區(qū)域邊界的境界法。
圖像分析:圖像分析是指從圖像中抽取某些有用的信息、數(shù)據(jù)或度量,其目的主要是想得到某種數(shù)值結(jié)果。圖像分析的內(nèi)容跟人工智能、模式識(shí)別的研究領(lǐng)域有一定的交叉。2.數(shù)字圖像處理的特點(diǎn)
數(shù)字圖像處理的特點(diǎn)主要表現(xiàn)在以下幾個(gè)方面:
1)數(shù)字圖像處理的信息大多是二維信息,處理信息量很大。因此對(duì)計(jì)算機(jī)的計(jì)算速度、存
儲(chǔ)容量等要求較高。2)數(shù)字圖像處理占用的頻帶較寬。與語(yǔ)言信息相比,占用的頻帶要大幾個(gè)數(shù)量級(jí)。所以在成像、傳輸、存儲(chǔ)、處理、顯示等各個(gè)環(huán)節(jié)的實(shí)現(xiàn)上技術(shù)難度較大,成本亦高。這就對(duì)頻
帶壓縮技術(shù)提出了更高的要求。
3)數(shù)字圖像中各個(gè)像素不是獨(dú)立的,其相關(guān)性大。在圖像畫(huà)面上,經(jīng)常有很多像素有相同
或接近的灰度。所以,圖像處理中信息壓縮的潛力很大。
4)數(shù)字圖像處理后的圖像受人的因素影響較大,因?yàn)閳D像一般是給人觀察和評(píng)價(jià)的。
3.數(shù)字圖像處理的優(yōu)點(diǎn)
數(shù)字圖像處理的優(yōu)點(diǎn)主要表現(xiàn)在4個(gè)方面。
1)再現(xiàn)性好。數(shù)字圖像處理與模擬圖像處理的根本不同在于它不會(huì)因圖像的存儲(chǔ)、傳輸或
復(fù)制等一系列變換操作而導(dǎo)致圖像質(zhì)量的退化。只要圖像在數(shù)字化時(shí)準(zhǔn)確地表現(xiàn)了原稿,那么數(shù)字圖像處理過(guò)程始終能保持圖像的再現(xiàn)。
2)處理精度高。將一幅模擬圖像數(shù)字化為任意大小的二維數(shù)組,主要取決于圖像數(shù)字化設(shè)
備的能力.3)適用面寬。圖像可以來(lái)自多種信息源,它們可以是可見(jiàn)光圖像,也可以是不可見(jiàn)的波譜圖像。只要針對(duì)不同的圖像信息源,采取相應(yīng)的圖像信息采集措施,圖像的數(shù)字處理方法 適用于任何一種圖像。
4)靈活性高。圖像處理大體上可分為圖像的像質(zhì)改善、圖像分析和圖像重建三大部分,每
一部分均包含豐富的內(nèi)容。
4.數(shù)字圖像處理的應(yīng)用領(lǐng)域
圖像是人類(lèi)獲取和交換信息的主要來(lái)源,因此,圖像處理的應(yīng)用領(lǐng)域必然涉及到人類(lèi)生
活和工作的方方面面,隨著人類(lèi)活動(dòng)范圍的不斷擴(kuò)大,圖像處理的應(yīng)用領(lǐng)域也將隨之不斷擴(kuò) 大。
航天和航空技術(shù):在飛機(jī)遙感和衛(wèi)星遙感技術(shù)中用配備有高級(jí)計(jì)算機(jī)的圖像處理系統(tǒng)來(lái)判讀分析,既節(jié)省人力又加快了速度,還可以從照片中提取人工所不能發(fā)現(xiàn)的大量有用情報(bào)。生物醫(yī)學(xué)工程:除了CT技術(shù)之外,還有對(duì)醫(yī)用顯微圖像的處理分析,如紅細(xì)胞、白細(xì)胞分類(lèi),染色體分析,癌細(xì)胞識(shí)別等。
通信工程:當(dāng)前通信的主要發(fā)展方向是聲音、文字、圖像和數(shù)據(jù)結(jié)合的多媒體通信。在一定意義上講,編碼壓縮是這些技術(shù)成敗的關(guān)鍵。除了已應(yīng)用較廣泛 的熵編碼、DPCM編碼、變換編碼外,目前國(guó)內(nèi)外正在大力開(kāi)發(fā)研究新的編碼方法,如分行編碼、自適應(yīng)網(wǎng)絡(luò)編碼、小波變換圖像壓縮編碼等。
工業(yè)和工程領(lǐng)域:圖像處理技術(shù)有著廣泛的應(yīng)用,如自動(dòng)裝配線中檢測(cè)零件的質(zhì)量并對(duì)零件進(jìn)行分類(lèi),印刷電路板疵病檢查,彈性力學(xué)照片的應(yīng)力分析,流體力學(xué)圖片的阻力和升力分析,郵政信件的自動(dòng)分揀,在一些有毒、放射性環(huán)境內(nèi)識(shí)別工件及物體的形狀和排列狀態(tài),先進(jìn)的設(shè)計(jì)和制造技術(shù)中采用工業(yè)視覺(jué)等等。
軍事方面:圖像處理和識(shí)別主要用于導(dǎo)彈的精確末制導(dǎo) 各種偵察照片的判讀,具有圖像傳輸、存儲(chǔ)和顯示的軍事自動(dòng)化指揮系統(tǒng),飛機(jī)、坦克和軍艦?zāi)M訓(xùn)練系統(tǒng)等;公安業(yè)務(wù)圖片的判讀分析,指紋識(shí)別,人臉鑒別,不完整圖片的復(fù)原,以及交通監(jiān)控、事故分析等。
文化藝術(shù):電視畫(huà)面的數(shù)字編輯、動(dòng)畫(huà)的制作、電子圖像游戲、紡織工藝品設(shè)計(jì)、服裝設(shè)計(jì)與制作、發(fā)型設(shè)計(jì)、文物資料照片的復(fù)制和修復(fù)、運(yùn)動(dòng)員動(dòng)作分析和評(píng)分等等。
視頻和多媒體系統(tǒng):電視制作系統(tǒng)廣泛使用的圖像處理、變換、合成,多媒體系統(tǒng)中靜止圖像和動(dòng)態(tài)圖像的采集、壓縮、處理、存貯和傳輸?shù)取?/p>
電子商務(wù):圖像處理技術(shù)在電子商務(wù)中也大有可為,如身份認(rèn)證、產(chǎn)品防偽、水印技術(shù)等。
在這門(mén)課程的最后,代課老師給我們講授了數(shù)字視頻處理,讓我們了解到數(shù)字視頻就是以數(shù)字形式記錄的視頻,和模擬視頻相對(duì)的。數(shù)字視頻有不同的產(chǎn)生方式,存儲(chǔ)方式和播出方式。比如通過(guò)數(shù)字?jǐn)z像機(jī)直接產(chǎn)生數(shù)字視頻信號(hào),存儲(chǔ)在數(shù)字帶,P2卡,藍(lán)光盤(pán)或者磁盤(pán)上,從而得到不同格式的數(shù)字視頻。然后通過(guò)PC,特定的播放器等播放出來(lái)。了解了數(shù)字視頻發(fā)展過(guò)程和視頻壓縮的概念和分類(lèi)等。
我們這門(mén)課程主要是上理論課,其中有很復(fù)雜的數(shù)學(xué)原理,專(zhuān)業(yè)術(shù)語(yǔ)多,基礎(chǔ)知識(shí)要求高,理解起來(lái)有些困難。當(dāng)初選擇這門(mén)課是希望能有一些具體軟件的教學(xué)。就我了解,視頻處理的軟件有MAYA、Premiere、繪聲繪影、windows自帶的MOVE MAKER;處理數(shù)字圖像的軟件主要有matlaB、photoshop、ImageJ(java圖像處理程序)。其中,matlaB和PS 很具有教學(xué)性,這兩個(gè)軟件也運(yùn)用的很廣。
MATLAB全稱是MatrixLaboratory(矩陣實(shí)驗(yàn)室),一開(kāi)始它是一種專(zhuān)門(mén)用于矩陣數(shù)值計(jì)算的軟件,從這一點(diǎn)上也可以看出,它在矩陣運(yùn)算上有自己獨(dú)特的特點(diǎn)。實(shí)際運(yùn)用MATLAB中的絕大多數(shù)的運(yùn)算都是通過(guò)矩陣這一形式進(jìn)行的,這一特點(diǎn)決定了MATLAB在處理數(shù)字圖像上的獨(dú)特優(yōu)勢(shì)。理論上講,圖像是一種二維的連續(xù)函數(shù),然而計(jì)算機(jī)對(duì)圖像進(jìn)行數(shù)字處理時(shí),首先必須對(duì)其在空間和亮度上進(jìn)行數(shù)字化,這就是圖像的采樣和量化的過(guò)程。
Photoshop是Adobe公司旗下最為出名的圖像處理軟件之一,集圖像掃描、編輯修改、圖像制作、廣告創(chuàng)意,圖像輸入與輸出于一體的圖形圖像處理軟件,深受廣大平面設(shè)計(jì)人員和電腦美術(shù)愛(ài)好者的喜愛(ài)。
如果能理論和實(shí)踐相結(jié)合,相信我們會(huì)把數(shù)字圖像處理理解的跟透徹,同時(shí)也鍛煉了大家的動(dòng)手能力。希望老師能多開(kāi)設(shè)實(shí)際動(dòng)手的課程。
第二篇:學(xué)習(xí)數(shù)字圖像處理心得范文
學(xué)習(xí)數(shù)字圖像處理心得
姓名:黃冬芬
學(xué)號(hào):070212051
班級(jí):12級(jí)通信工程1班
數(shù)字圖像是我們生活中接觸最多的圖像種類(lèi),他伴隨人們的生活、學(xué)習(xí)、工作,并在軍事、工業(yè)和醫(yī)學(xué)方面發(fā)揮著極大地作用,可謂隨處可見(jiàn),尤其在生活方面作為學(xué)生的我們,會(huì)在外出旅游,生活和工作中拆下許多數(shù)字照片,現(xiàn)在已進(jìn)入信息化時(shí)代,圖片作為信息的重要載體,在信息傳輸方面有著不可替代的作用,并且近年來(lái)圖像處理領(lǐng)域,數(shù)字圖像處理技術(shù)取得了飛速的發(fā)展,作為計(jì)算機(jī)類(lèi)專(zhuān)業(yè)的大學(xué)生更加有必要對(duì)數(shù)字圖像處理技術(shù)有一定的掌握,而大多數(shù)人對(duì)于數(shù)字圖像的知識(shí)也很模糊,比如各類(lèi)繁多的各種圖像格式之間的特點(diǎn),不同的情況該用何種圖像格式,還有關(guān)于圖像的一些基本術(shù)語(yǔ)也不甚了解。尤為重要的是一些由于拍攝問(wèn)題導(dǎo)致的令人不甚滿意的照片該如何處理,或者如何對(duì)一些照片進(jìn)行處理實(shí)現(xiàn)特殊的表現(xiàn)效果。所以對(duì)于數(shù)字圖像處理這門(mén)課大家有著極大地興趣。我們班有的同學(xué)學(xué)過(guò)Photoshop軟件,因此對(duì)于數(shù)字圖像處理有了一些基礎(chǔ),更加想利用這門(mén)課的學(xué)習(xí)加深自己數(shù)字圖像處理的理解并提高在數(shù)字圖像處理方面的能力。
通過(guò)這8周的學(xué)習(xí),我們雖然還沒(méi)有完全掌握數(shù)字圖像處理技術(shù),但是收獲不少,對(duì)于數(shù)字圖像方面的知識(shí)有了更深的了解。更加理解了數(shù)字圖像處理的本質(zhì),即是一些數(shù)字矩陣,但灰度圖像和彩色圖像的矩陣形式是不同的。對(duì)于一些耳熟能詳?shù)臄?shù)字圖像相關(guān)的術(shù)語(yǔ)有了明確的認(rèn)識(shí),比如,常見(jiàn)的像素(衡量圖像的大?。⒎直媛剩ê饬繄D像的清晰程度)、位圖(放大后會(huì)失真)、矢量圖(經(jīng)過(guò)放大不會(huì)失真)等大家都能叫上口但都很模糊的名詞。也了解圖像處理技術(shù)中一些常用處理技術(shù)的實(shí)質(zhì),比如銳化處理是使模糊的圖像變清晰,增強(qiáng)圖片的邊緣等細(xì)節(jié)。而平滑處理的目的是消除噪聲、模糊圖像,在提取大目標(biāo)之前去除小的細(xì)節(jié)或彌合目標(biāo)間的縫隙。對(duì)常見(jiàn)的RGB圖像和灰度圖像有了明確的理解,這對(duì)大家以后應(yīng)用Photoshop等圖像處理軟件對(duì)圖像進(jìn)行處理打下了堅(jiān)實(shí)的基礎(chǔ)。更重要的是學(xué)習(xí)到了數(shù)字圖像處理的思想。通過(guò)學(xué)習(xí)也是對(duì)C++編程應(yīng)用的很好的實(shí)踐和復(fù)習(xí)。
當(dāng)然通過(guò)8周的學(xué)習(xí)還遠(yuǎn)遠(yuǎn)不夠,也有許多同學(xué)收獲甚微,我總結(jié)了下大家后期學(xué)習(xí)的態(tài)度與前期學(xué)習(xí)的熱情相差很大的原因。剛開(kāi)始大家是有很高的熱情去學(xué)習(xí)這門(mén)課,可隨著這門(mén)課的更深入的學(xué)習(xí),大家漸漸發(fā)現(xiàn)課程講授內(nèi)容與自己起初想學(xué)的實(shí)用圖像處理技術(shù)是有很大的差別的,大家更著眼于如何利用軟件、技術(shù)去處理圖像而得到滿意的效果,或者進(jìn)行一些圖像的創(chuàng)意設(shè)計(jì),可是課程的內(nèi)容更偏向于如何通過(guò)編程實(shí)現(xiàn)如何多圖像進(jìn)行一些類(lèi)似銳化、邊緣提取、模糊、去除噪聲等基礎(chǔ)功能的實(shí)現(xiàn),這其中涉及很多算法、函數(shù),需要扎實(shí)的數(shù)學(xué)基礎(chǔ)和編程基礎(chǔ),并且需要利用大量時(shí)間在課下編寫(xiě)代碼,并用visual c++軟件實(shí)現(xiàn)并進(jìn)行調(diào)試,然而大部分人的C++實(shí)踐能力和編程能力還有待提高,尤其是對(duì)于矩陣進(jìn)行操作的編程尤為是個(gè)考驗(yàn)。
在老師授課方面的建議是可以再課上多進(jìn)行一些具體操作,這樣可以提起大家的學(xué)習(xí)興趣,也可以讓大家在課下積極準(zhǔn)備,然后在課上讓學(xué)生進(jìn)行演示,還可以加入一些圖像處理的經(jīng)典范例,加深同學(xué)們的學(xué)習(xí)熱情。
第三篇:《數(shù)字圖像處理》
實(shí)驗(yàn)五 圖像的幾何變換
一.實(shí)驗(yàn)?zāi)康募耙?/p>
掌握?qǐng)D像幾何變換的基本原理,熟練掌握數(shù)字圖像的縮放、旋轉(zhuǎn)、平移、鏡像和轉(zhuǎn)置的基本原理及其MATLAB編程實(shí)現(xiàn)方法。
二、實(shí)驗(yàn)內(nèi)容
(一)研究以下程序,分析程序功能;輸入執(zhí)行各命令行,認(rèn)真觀察命令執(zhí)行的結(jié)果。熟悉程序中所使用函數(shù)的調(diào)用方法,改變有關(guān)參數(shù),觀察試驗(yàn)結(jié)果。
1.圖像縮放 clear all, close all I = imread('cameraman.tif');Scale = 1.35;
% 將圖像放大1.35倍
J1 = imresize(I, Scale, 'nearest');
% using the nearest neighbor interpolation J2 = imresize(I, Scale, 'bilinear');
% using the bilinear interpolation imshow(I), title('Original Image');figure, imshow(J1), title('Resized Image--using the nearest neighbor interpolation ');figure, imshow(J2), title('Resized Image--using the bilinear interpolation ');help imresize
% 查看imresize使用幫助
1.95倍
I = imread('cameraman.tif');Scale = 1.96;
% 將圖像放大1.96倍
J1 = imresize(I, Scale, 'nearest');
% using the nearest neighbor interpolation J2 = imresize(I, Scale, 'bilinear');
% using the bilinear interpolation imshow(I), title('Original Image');figure, imshow(J1), title('Resized Image--using the nearest neighbor interpolation ');figure, imshow(J2), title('Resized Image--using the bilinear interpolation ');
說(shuō)明:
?注意觀察不同插值方法的圖像表現(xiàn); ?改變圖像縮放因子Scale,重做上述實(shí)驗(yàn)。2.圖像旋轉(zhuǎn)
clear all, close all I = imread('cameraman.tif');Theta = 45;
% 將圖像逆時(shí)針旋轉(zhuǎn)45?。
J1 = imrotate(I, Theta, 'nearest');
% using the nearest neighbor interpolation Theta =-45;
% 將圖像順時(shí)針旋轉(zhuǎn)45?。
J2 = imrotate(I, Theta, 'bilinear', 'crop');% using bilinear interpolation and crops the output image imshow(I), title('Original Image');figure, imshow(J1), title('Rotated Image--using the nearest neighbor interpolation ');figure, imshow(J2), title(' Rotated Image--using the bilinear interpolation ');% 查看imrotate使用幫助 help imrotate %-------
圖像旋轉(zhuǎn)30順時(shí)針逆時(shí)針
clear all, close all I = imread('cameraman.tif');Theta = 30;
% 將圖像逆時(shí)針旋轉(zhuǎn)30。
J1 = imrotate(I, Theta, 'nearest');
% using the nearest neighbor interpolation Theta =-30;
% 將圖像順時(shí)針旋轉(zhuǎn)30。
J2 = imrotate(I, Theta, 'bilinear', 'crop');% using bilinear interpolation and crops the output image imshow(I), title('Original Image');figure, imshow(J1), title('Rotated Image--using the nearest neighbor interpolation ');figure, imshow(J2), title(' Rotated Image--using the bilinear interpolation ');7 說(shuō)明:
?注意觀察不同插值方法和輸出圖像后處理方法的圖像表現(xiàn); ?改變旋轉(zhuǎn)角度大小和方向,重做上述實(shí)驗(yàn)。
3.圖像水平鏡象
clear all, close all I = imread('cameraman.tif');I1 = flipdim(I,2);
I2 = flipdim(I,1);figure(1), subplot(1,2,1), imshow(I);subplot(1,2,2), imshow(I1);figure(2), subplot(2,1,1), imshow(I);subplot(2,1,2), imshow(I2);%----
(二)用MATLAB編程實(shí)現(xiàn)以下圖像幾何變換(參考自編講義相關(guān)章節(jié))
1.圖像扭曲變換 2.球面變換
三、實(shí)驗(yàn)設(shè)備
1.PIII以上微機(jī); 2.MATLAB6.5;
四、預(yù)習(xí)與思考
1.預(yù)習(xí)實(shí)驗(yàn)內(nèi)容,閱讀教材熟悉實(shí)驗(yàn)原理;
2.查閱資料,熟悉實(shí)驗(yàn)中涉及的有關(guān)MATLAB函數(shù);
3.利用課余時(shí)間,采用MATLAB底層函數(shù)編程實(shí)現(xiàn)實(shí)驗(yàn)內(nèi)容
(二)中的圖像平移、圖像轉(zhuǎn)置等幾何變換。
五、實(shí)驗(yàn)報(bào)告要求
1.簡(jiǎn)述試驗(yàn)的目的和試驗(yàn)原理;
2.?dāng)⑹龈鞫纬绦蚬δ?,改變有關(guān)函數(shù)的參數(shù),分析比較實(shí)驗(yàn)結(jié)果; 3.打印出所編寫(xiě)的實(shí)驗(yàn)程序。4.寫(xiě)出本實(shí)驗(yàn)的心得體會(huì)及意見(jiàn)。
實(shí)驗(yàn)六
數(shù)字圖像處理應(yīng)用
一.實(shí)驗(yàn)?zāi)康募耙?/p>
1.利用MATLAB提供的圖像處理函數(shù)實(shí)現(xiàn)圖像中物體屬性的測(cè)量; 2.訓(xùn)練綜合運(yùn)用MATLAB圖像處理函數(shù)的能力; 3.了解數(shù)字圖像處理基本應(yīng)用。
二、實(shí)驗(yàn)內(nèi)容
以大米粒特性測(cè)量為例,綜合應(yīng)用課程中圖像分割、形態(tài)學(xué)濾波、圖像增強(qiáng)、圖像特征提取等圖像處理方法,實(shí)現(xiàn)大米粒特性自動(dòng)測(cè)量。實(shí)驗(yàn)過(guò)程簡(jiǎn)述:
1. 讀取和顯示圖像 2. 估計(jì)圖像背景 3. 獲取背景均勻的圖像 4. 圖像增強(qiáng) 5. 圖像二值化分割 6. 區(qū)域標(biāo)記及為彩色處理
7. 測(cè)量圖像中的區(qū)域特性(面積、質(zhì)心等)
8.統(tǒng)計(jì)大米粒的特性分布規(guī)律。
(一)研究以下程序,分析程序功能;輸入執(zhí)行各命令行,認(rèn)真觀察命令執(zhí)行的結(jié) 果。熟悉程序中所使用函數(shù)的調(diào)用方法,改變有關(guān)參數(shù),觀察試驗(yàn)結(jié)果。
% Read and Display an Image clear, close all,close all;I = imread('rice.png');
figure, imshow(I)
% Use Morphological Opening to Estimate the Background
background = imopen(I,strel('disk',15));
figure, imshow(background);
%Display the Background Approximation as a Surface
figure, surf(double(background(1:8:end,1:8:end))),zlim([0 255]);set(gca,'ydir','reverse');% Subtract the Background Image from the Original Image I2 = imsubtract(I,background);figure, imshow(I2)% Adjust the Image Contrast I3 = imadjust(I2, stretchlim(I2), [0 1]);figure, imshow(I3);% Apply Thresholding to the Image level = graythresh(I3);bw = im2bw(I3,level);figure, imshow(bw)% Determine the Number of Objects in the Image [labeled,numObjects] = bwlabel(bw,4);
% Label components.numObjects % Examine the Label Matrix RGB_label = label2rgb(labeled, @spring, 'c', 'shuffle');figure, imshow(RGB_label);% Measure Object Properties in the Image graindata = regionprops(labeled,'basic')allgrains = [graindata.Area];% Compute Statistical Properties of Objects in the Image max(allgrains);biggrain = find(allgrains==695)mean(allgrains);figure, hist(allgrains,20);12
(詳見(jiàn)MATLAB IPT的 幫助文檔demo中的Correcting Nonuniform Illumination)
(二)查看MATLAB IPT 幫助文檔,研究其它應(yīng)用演示
三、實(shí)驗(yàn)設(shè)備 1.PIII以上微機(jī); 2.MATLAB6.5;
四、預(yù)習(xí)與思考
1.預(yù)習(xí)實(shí)驗(yàn)內(nèi)容,閱讀教材熟悉實(shí)驗(yàn)原理; 2.查閱資料,熟悉實(shí)驗(yàn)中涉及的有關(guān)函數(shù)。
3.利用課余時(shí)間,采用MATLAB函數(shù)編程實(shí)現(xiàn)實(shí)驗(yàn)內(nèi)容
(二)。
五、實(shí)驗(yàn)報(bào)告要求
1.簡(jiǎn)述試驗(yàn)的目的和試驗(yàn)原理;
2.?dāng)⑹龈鞫纬绦蚬δ?,改變有關(guān)函數(shù)的參數(shù),分析比較實(shí)驗(yàn)結(jié)果; 3.打印出所編寫(xiě)的實(shí)驗(yàn)程序。4.寫(xiě)出本實(shí)驗(yàn)的心得體會(huì)及意見(jiàn)。
第四篇:數(shù)字圖像處理
中南大學(xué)
數(shù)字圖像處理實(shí)驗(yàn) 實(shí)驗(yàn)名稱:空間濾波和頻域?yàn)V波
班級(jí):電子信息0802班
姓名:李哲 學(xué)號(hào):0909080609 實(shí)驗(yàn)日期:2010年12月22日
目錄
一,實(shí)驗(yàn)?zāi)康???????????????????????3 二,給圖像添加噪聲????????????????????4 三,對(duì)被噪聲污染的圖像進(jìn)行中值濾波和均值濾波???????5 四,對(duì)圖像進(jìn)行空間域的銳化????????????????6 五,MATLAB以外函數(shù)空間濾波和圖像銳化??????????7 六,自帶函數(shù)傅立葉變換和反變換??????????????8 七,低通濾波器程序????????????????????9 八,心得體會(huì) ??????????????????????10 九,參考文獻(xiàn) ??????????????????????10
一、實(shí)驗(yàn)?zāi)康?1,空間濾波:
圖像平滑主要目的是減少噪聲。噪聲有很多種類(lèi),不同的噪聲有不同的抑制措施。本實(shí)驗(yàn)要求用平滑線性濾波和中值濾波2種最典型、最常用的處理算法進(jìn)行程序設(shè)計(jì),學(xué)習(xí)如何對(duì)已被噪聲污染的圖像進(jìn)行“凈化”。通過(guò)平滑處理,對(duì)結(jié)果圖像加以比較,得出自己的實(shí)驗(yàn)結(jié)論。學(xué)習(xí)如何用銳化處理技術(shù)來(lái)加強(qiáng)圖像的目標(biāo)邊界和圖像細(xì)節(jié),對(duì)圖像進(jìn)行梯度算子、拉普拉斯算子,使圖像的某些特征(如邊緣、輪廓等)得以進(jìn)一步的增強(qiáng)及突出。本實(shí)驗(yàn)銳化處理主要在空間域中進(jìn)行 2,頻域?yàn)V波:
掌握傅里葉變換的基本性質(zhì); 掌握傅里葉正變換和反變換; 通過(guò)實(shí)驗(yàn)了解二維頻譜的分布特點(diǎn); 掌握怎樣利用傅立葉變換進(jìn)行頻域?yàn)V波
利用MATLAB程序數(shù)字圖像的傅立葉變換并且進(jìn)行頻域?yàn)V波
二,給圖像添加椒鹽噪聲或者高斯噪聲: 原理:利用MATLAB自帶函數(shù)添加噪聲 程序代碼:A=imread('onion.png');I=rgb2gray(A);imshow(I);J = imnoise(I,'salt & pepper',0.05);figure,imshow(J),title('椒鹽噪聲');%添加椒鹽噪聲 K = imnoise(I,'gaussian',0,0.03);
figure,imshow(K),title('高斯噪聲');%添加高斯噪聲
三,對(duì)被噪聲污染的圖像進(jìn)行中值濾波和均值濾波: 原理:自帶函數(shù)進(jìn)行中值濾波和均值濾波 源程序:A=imread('onion.png');I=rgb2gray(A);J = imnoise(I,'salt & pepper',0.05);k2=medfilt2(J,[5 5]);k3=medfilt2(J,[7 7]);imshow(J),title('原圖');figure,imshow(k2),title('中值濾波5*5模板');figure,imshow(k3),title('中值濾波7*7模板');
四,對(duì)圖像進(jìn)行空間域的銳化: 原理:自帶函數(shù)進(jìn)行空間銳化。源程序:I=imread('coins.png');subplot(121),imshow(I),title('原圖像');H=fspecial('sobel');I2=filter2(H ,I);subplot(122),imshow(I2),title('sobel算子銳化圖像');
五,MATLAB以外函數(shù)空間濾波和圖像銳化:
源程序:I = imread('eight.tif');J = imnoise(I,'salt & pepper',0.02);K = medfilt2(J);imshow(J);title('噪聲干擾圖像')figure, imshow(K);title('medfilt2濾波圖像')X=J;a=2;b=2;k=floor(a*b/2)+1;[M,N]=size(X);uint8 Y=zeros(M,N);funBox=zeros(a,b);temp=zeros(a*b);
for i=1:M-a
for j=1:N-b
funBox=X(i:i+a,j:j+b);
temp=funBox(:);
tempSort=sort(temp);
Y(i,j)=tempSort(k);
end;end;figure, imshow(Y);title('濾波圖像')
六,利用Matlab的圖像處理工具箱中提供的函數(shù)實(shí)現(xiàn)圖像的傅立葉變換和反變換: 源程序:
A=imread('onion.png');f=rgb2gray(A);subplot(131),imshow(f),title('原圖');F=fft2(f);% 快速傅立葉變換
subplot(132),imshow(F),title('傅里葉變換')Fabs=abs(F);% 求幅頻絕對(duì)值 Fc=fftshift(Fabs);% 中心移位 SFc=log(1+Fc);% 對(duì)數(shù)變換
iFc1=ifftshift(Fc);% 中心移位的逆變換,絕對(duì)值 iF2=ifft2(iFc1);% 快速傅立葉變換的逆變換
subplot(133),imshow(iF2),title('快速傅立葉變換的逆變換')
七,低通濾波器程序:
I=imread('testpat1.png');subplot(221),imshow(I);title('原始圖像')J1=imnoise(I,'gaussian',0.02);% 疊加高斯白噪聲
subplot(222),imshow(J1);title('添加高斯白噪聲的圖像')f=double(J1);
% 數(shù)據(jù)類(lèi)型轉(zhuǎn)換 g=fft2(f);
% 傅立葉變換 g=fftshift(g);
[M,N]=size(g);nn=2;
% 二階巴特沃斯(Butterworth)低通濾波器 d0=50;
% 設(shè)置截止頻率 m=fix(M/2);n=fix(N/2);for i=1:M for j=1:N
d=sqrt((i-m)^2+(j-n)^2);
h=1/(1+0.414*(d/d0)^(2*nn));% 計(jì)算低通濾波器傳遞函數(shù)
result(i,j)=h*g(i,j);end end result=ifftshift(result);J2=ifft2(result);J3=uint8(real(J2));subplot(223),imshow(J3);title('低通濾波后圖像')
心得體會(huì)
1,進(jìn)一步熟悉了Matlab軟件、編程以及圖像處理工具箱 2,學(xué)會(huì)利用自帶函數(shù)對(duì)圖像做簡(jiǎn)單的處理,例如:均值化等。3,熟練了一些基本函數(shù)的運(yùn)用,例如fspecial,imfilter等。4,加深了對(duì)MATLAB編程的理解。
5,對(duì)于試驗(yàn)中的出現(xiàn)的一些問(wèn)題,懂得怎樣去處理。6,通過(guò)實(shí)際操作,增強(qiáng)了自己的動(dòng)手能力,把理論用于實(shí)踐。
參考文獻(xiàn):數(shù)字圖像處理第二版
MATLAB教程
第五篇:數(shù)字圖像處理上機(jī)報(bào)告
練習(xí)一 常用MATLAB圖像處理命令
一、練習(xí)目的
1、熟悉并掌握MATLAB工具的使用;
2、實(shí)現(xiàn)圖像的讀取、顯示、代數(shù)運(yùn)算和簡(jiǎn)單變換。
二、練習(xí)環(huán)境
Windows操作系統(tǒng)
Matlab 6.5或以上應(yīng)用軟件
三、練習(xí)內(nèi)容
1、圖像文件的讀寫(xiě)
(1)imread函數(shù)用來(lái)實(shí)現(xiàn)圖像文件的讀取。輸入以下程序:
A=imread('文件名.擴(kuò)展名');%用imread函數(shù)來(lái)讀入圖像 注:設(shè)置路徑 imshow(A);%用imshow函數(shù)來(lái)顯示圖像 得到的結(jié)果如圖:
(2)imfinfo函數(shù)用來(lái)查詢圖像文件信息。輸入以下程序:
info=imfinfo('文件名.擴(kuò)展名');% 用imfinfo函數(shù)查詢圖像文件信息 得到: info =
Filename: '文件名.擴(kuò)展名'
(4)imshow函數(shù)用來(lái)顯示圖像。
剛才介紹imread函數(shù)時(shí)已使用此函數(shù)。
(5)colorbar函數(shù)將顏色條添加到坐標(biāo)軸對(duì)象中。輸入以下程序:
RGB=imread('***');%圖像讀入
I=rgb2gray(RGB);%把RGB圖像轉(zhuǎn)換成灰度圖像
imshow(I),colorbar('vert')% 將顏色條添加到坐標(biāo)軸對(duì)象中
得到如圖:
2、圖像處理的基本操作
一、圖像代數(shù)運(yùn)算
(1)imadd函數(shù)實(shí)現(xiàn)兩幅圖像的相加或者給一幅圖像加上一個(gè)常數(shù)。給圖像每個(gè)像素都增加亮度的程序如下: I=imread('***');J=imadd(I,100);%給圖像增加亮度 subplot(1,2,1),imshow(I)%填充 subplot(1,2,2),imshow(J)結(jié)果如圖5。
(2)imsubtract函數(shù)實(shí)現(xiàn)從一幅圖像中減去一個(gè)常數(shù)。輸入以下程序?qū)崿F(xiàn)從一幅圖像中減去一個(gè)常數(shù):
(3)immultiply實(shí)現(xiàn)兩幅圖像的相乘或者一幅圖像的亮度縮放(圖像乘以小于1或大于1的參數(shù),比較效果)。輸入以下程序:
(4)imdivide函數(shù)實(shí)現(xiàn)兩幅圖像的除法或一幅圖像的亮度縮放。輸入以下程序:
二、圖像的空間域操作
(1)imrotate函數(shù)實(shí)現(xiàn)圖像的旋轉(zhuǎn)。輸入以下程序: I=imread('***');J=imrotate(I,45);%對(duì)圖像進(jìn)行旋轉(zhuǎn) subplot(1,2,1),imshow(I);subplot(1,2,2),imshow(J);得到圖:
練習(xí)二 數(shù)字圖像處理的基本操作
一、練習(xí)目的
1、練習(xí)使用MATLAB工具進(jìn)行數(shù)字圖像處理;
2、實(shí)現(xiàn)圖像的邊緣提取、濾波、直方圖修正等操作。
二、練習(xí)環(huán)境
Windows操作系統(tǒng)
Matlab 6.5或以上應(yīng)用軟件
三、練習(xí)內(nèi)容
(1)imresize函數(shù)實(shí)現(xiàn)圖像的縮放。輸入以下程序:
J=imread('文件名.擴(kuò)展名');X1=imresize(J,2);%對(duì)圖像進(jìn)行縮放 figure,imshow(J)結(jié)果如圖
(2)imcrop函數(shù)實(shí)現(xiàn)圖像的剪切。輸入以下程序: I=imread('***');I2=imcrop(I);%對(duì)圖像進(jìn)行剪切 subplot(填充),imshow(填充);subplot(填充),imshow(填充);如圖:
圖像變換
(1)fft2函數(shù)和ifft2函數(shù)分別是計(jì)算二維的FFT和反變換。輸入以下程序: f=zeros(100,100);f(20:70,40:60)=1;imshow(f);F=fft2(f);% 計(jì)算二維的FFT F2=log(abs(F));%對(duì)幅值取對(duì)數(shù) imshow(F2),colorbar
(2)dct2函數(shù)采用基于FFT的算法,用于實(shí)現(xiàn)較大輸入矩陣的離散余弦變換。與之對(duì)應(yīng),idct2函數(shù)實(shí)現(xiàn)圖像的二維逆離散余弦變換 輸入以下程序: RGB=imread('***');I=rgb2gray(RGB);J=dct2(I);% 對(duì)I進(jìn)行離散余弦變換 imshow(log(abs(J))),colorbar J(abs(J)<10)=0;K=idct2(J);% 圖像的二維逆離散余弦變換 figure,imshow(I);figure,imshow(K,[0,255])得到如圖:
(3)edge函數(shù)用于提取圖像的邊緣。輸入以下程序:
RGB=imread('drum.bmp');I=rgb2gray(RGB);BW=edge(I);% 提取圖像的邊緣 imshow(I),figure,imshow(BW);得到圖
圖像增強(qiáng)、分割和編碼
(1)imhist函數(shù)產(chǎn)生圖像的直方圖。A=imread('drum.bmp');%讀入圖像
B=rgb2gray(A);%把RGB圖像轉(zhuǎn)化成灰度圖像 imshow(B);%顯示灰度圖像
imhist(B)%顯示灰度圖像的直方圖 得到圖
(2)histeq函數(shù)用于對(duì)圖像的直方圖均衡化。接上面程序:
C=histeq(B);%對(duì)圖像B進(jìn)行均衡化 imshow(C);%顯示圖像
imhist(C);%得到均衡化后的灰度直方圖 得到如圖
filter2函數(shù)實(shí)現(xiàn)均值濾波。輸入以下程序:
a=imread('noise.drum.jpg');I=rgb2gray(a);imshow(I);K1=filter2(fspecial('average',3),I)/255;% 3?3的均值濾波 K2=補(bǔ)充;
% 5?5的均值濾波 K3=補(bǔ)充;
% 7?7的均值濾波 figure,imshow(K1);figure,imshow(K2);figure,imshow(K3);得到圖
(5)medfilt2函數(shù)實(shí)現(xiàn)中值濾波。輸入以下程序:
自查函數(shù)如何使用,并編程: 結(jié)果如圖:
練習(xí)三
圖像采樣及圖像類(lèi)型轉(zhuǎn)換
一、練習(xí)目的
1、熟悉并掌握MATLAB圖像處理工具箱的使用;
2、試對(duì)自選圖像分別進(jìn)行4和16倍剪采樣,查看其剪采樣效果
3、將所給圖,轉(zhuǎn)換成256級(jí)灰度圖像,8級(jí)灰度圖像和2值圖像
二、練習(xí)環(huán)境
MATLAB 6.5或以上版本、WIN XP或以上計(jì)算機(jī)
三、練習(xí)內(nèi)容
使用MATLAB,對(duì)圖像進(jìn)行減采樣。
a = imread('***.JPG');b = rgb2gray(a);[wid,hei]=size(b);%4倍減抽樣
quartimg = zeros(wid/2+1,hei/2+1);i1 = 1;j1 = 1;for i=1:2:wid
for j=1:2:hei
quartimg(i1,j1)= b(i,j);
j1 = j1 + 1;
end i1 = i1 + 1;j1 = 1;end figure
imshow(uint8(quartimg))練習(xí)結(jié)果如圖
%16倍減抽樣
編程并運(yùn)行顯示圖像結(jié)果:
圖像類(lèi)型
1、練習(xí)內(nèi)容
試將自選圖,轉(zhuǎn)換成256級(jí)灰度圖像,8級(jí)灰度圖像和2值圖像
2、練習(xí)方法及程序
使用MATLAB,進(jìn)行圖像類(lèi)型變換。
a = imread('***.jpg');b = rgb2gray(a);
figure imshow(b)[wid,hei]=size(b);img8 = zeros(wid,hei);img2 = zeros(wid,hei);for i=1:wid
for j=1:hei
img8(i,j)= floor(b(i,j)/32);%得到8級(jí)灰度圖像
end end figure
imshow(uint8(img8),[0,7])for i=1:wid
for j=1:hei
補(bǔ)充;end end figure
imshow(uint8(img8),[0,2])%得到2值圖像
練習(xí)結(jié)果如圖
練習(xí)四
數(shù)字圖像的空間域處理
一、練習(xí)目的
1、熟悉并掌握MATLAB圖像處理工具箱的使用;
2、熟悉圖像相加的方法及效果
3、熟悉圖像灰度擴(kuò)展的方法及效果
4、熟悉圖像縮放、旋轉(zhuǎn)的方法及效果
二、練習(xí)環(huán)境
MATLAB 6.5或以上版本、WIN XP或以上計(jì)算機(jī)
三、練習(xí)內(nèi)容 Part 1(1)選擇一幅圖像***.jpg,設(shè)置輸入輸出變換的灰度級(jí)范圍,a=0.3, b=0.6, c=0.1, d=0.9;
(2)設(shè)置非線性擴(kuò)展函數(shù)的參數(shù)c=2;
(3)采用灰度倒置變換函數(shù)s=255-r進(jìn)行圖像變換;
(4)設(shè)置二值化圖像的閾值,分別為level=0.4,level=0.7參考程序如下: I=imread('***.jpg');figure;subplot(1,3,1);imshow(I);title('原圖');J=imadjust(I,[0.3;0.6],[0.1;0.9]);%設(shè)置灰度變換的范圍 subplot(1,3,2);imshow(J);title('線性擴(kuò)展');I1=double(I);%將圖像轉(zhuǎn)換為double類(lèi)型 I2=I1/255;%歸一化此圖像 C=2;K=C*log(1+I2);%求圖像的對(duì)數(shù)變換 subplot(1,3,3);imshow(K);title('非線性擴(kuò)展');M=255-I;%將此圖像取反 figure;subplot(1,3,1);imshow(M);title('灰度倒置');N1=im2bw(I,0.4);%將此圖像二值化,閾值為0.4 N2=im2bw(I,0.7);%將此圖像二值化,閾值為0.7 subplot(1,3,2);imshow(N1);title('二值化閾值0.4');subplot(1,3,3);imshow(N2);title('二值化閾值0.7');練習(xí)結(jié)果與分析
(1)練習(xí)結(jié)果如圖3.7所示。
Part 2 讀取一幅圖片,如***.jpg,設(shè)置圖像旋轉(zhuǎn)的角度分別為450和900,采用圖形旋轉(zhuǎn)函數(shù)imrotate對(duì)圖像進(jìn)行旋轉(zhuǎn)。程序如下,結(jié)果如圖3.10。
I=imread('i_lena.jpg');J=imrotate(I,45);%圖像進(jìn)行逆時(shí)針旋轉(zhuǎn),默認(rèn)采用最近鄰法進(jìn)行插值處理 K=imrotate(I,90);%默認(rèn)旋轉(zhuǎn)出界的部分不被截出 subplot(1,3,1);imshow(I);subplot(1,3,2);imshow(J);subplot(1,3,3);imshow(K);練習(xí)結(jié)果與分析
(1)練習(xí)結(jié)果如圖3.10所示。
練習(xí)五 數(shù)字圖像的頻域處理
一、練習(xí)目的
1、熟悉并掌握MATLAB工具的使用;
2、實(shí)現(xiàn)圖像離散傅里葉變換并觀察效果
3、實(shí)現(xiàn)圖像離散余弦變換并觀察效果
二、練習(xí)環(huán)境
Windows操作系統(tǒng) Matlab 6.5或以上應(yīng)用軟件
三、練習(xí)內(nèi)容 Part 1 選取一幅圖像,進(jìn)行離散傅里葉變換,再對(duì)其分別進(jìn)行X軸與Y軸上的平移,得其離散傅里葉變換,觀察三幅結(jié)果圖。
I=imread('1.bmp');figure(1)imshow(real(I));I=I(:,:,3);fftI=fft2(I);sfftI=fftshift(fftI);%求離散傅里葉頻譜
%對(duì)原始圖像進(jìn)行二維傅里葉變換,并將其坐標(biāo)原點(diǎn)移到頻譜圖中央位置
RRfdp1=real(sfftI);IIfdp1=imag(sfftI);a=sqrt(RRfdp1.^2+IIfdp1.^2);a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225;
figure(2)imshow(real(a));練習(xí)結(jié)果與分析
Part 2 選取一幅圖像,進(jìn)行離散傅里葉變換,再對(duì)其進(jìn)行一定角度的旋轉(zhuǎn),進(jìn)行離散傅里葉變換。
%構(gòu)造原始圖像
I = zeros(256,256);
I(88:168,124:132)= 1;%圖像范圍是256*256,前一值是縱向比,后一值是橫向比 imshow(I)
%求原始圖像的傅里葉頻譜
J = fft2(I);F = abs(J);J1 = fftshift(F);figure imshow(J1,[5 50])
%對(duì)原始圖像進(jìn)行旋轉(zhuǎn)
J = imrotate(I,90,'bilinear','crop');figure imshow(J)%求旋轉(zhuǎn)后圖像的傅里葉頻譜
J1 = fft2(J);F = abs(J1);J2 = fftshift(F);figure imshow(J2,[5 50])練習(xí)結(jié)果與分析
1)練習(xí)結(jié)果如圖4.4所示.Part 3 選取一幅圖像,進(jìn)行離散余弦變換,并對(duì)其進(jìn)行離散余弦反變換,觀察其結(jié)果。
%對(duì)***.jpg文件計(jì)算二維DCT變換 RGB = imread('***.jpg ');figure(1)imshow(RGB)I = rgb2gray(RGB);%真彩色圖像轉(zhuǎn)換成灰度圖像 J = dct2(I);%計(jì)算二維DCT變換 figure(2)imshow(log(abs(J)),[])%圖像大部分能量集中在上左角處 figure(3);J(abs(J)< 10)= 0;%把變換矩陣中小于10的值置換為0,然后用idct2重構(gòu)圖像 K = idct2(J)/255;imshow(K)練習(xí)結(jié)果與分析