久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

基于MATLAB數字圖像處理平臺設計

時間:2019-05-12 01:56:53下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《基于MATLAB數字圖像處理平臺設計》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《基于MATLAB數字圖像處理平臺設計》。

第一篇:基于MATLAB數字圖像處理平臺設計

基于MATLAB 數字圖像處理平臺設計

摘要

數字圖像處理技術在各個行業(yè)得到廣泛的應用,其交互式的圖形界面是操作者方便使用這些技術的途徑。本文主要介紹了基于MATLAB的圖形用戶界面(GUI)來設計一個簡單實用的圖像處理軟件平臺,其中具備圖像處理的常用功能,以滿足用戶的使用。文章詳細闡述了一下圖像處理軟件平臺的設計過程。本文的GUI設計所制作的圖像處理軟件平臺可以實現的功能有五個模塊:圖像變換、圖像增強、圖像分割、圖像變形以及其它常用處理。其中也講述了GUI的基本常用操作及文件的打開、保存及退出。文章基本介紹了以上的內容,關于軟件還有許多未能實現的功能有待于日后的逐步開發(fā)和學習。關鍵詞:GUI;圖像變換;圖像增強;圖像分割;圖像變形;圖像處理

ABSTRACT Digital image processing technology has been widely used in various industries, their interactive graphical interface is the way of the operator ease of use of these technologies.This article mainly introduced the graphical user interface(GUI)based on MATLAB to design a simple and practical platform for the image processing software, Which have commonly used image processing function, in order to meet the user's use.The article expounds the design process of the image processing software platform.This paper made the GUI design of image processing software platform can realize the function of five modules: image transformation, image enhancement, image segmentation, image distortion and other commonly used processing.The basic common operations of which also tells the story of GUI and file open, save, and exit.The content of the article introduces the above basic, about software and many fail to realize the function of the subject to the gradual development and learning in the future.Key words: GUI;Image transformation;Image enhancement;Image segmentation;Image deformation;The image processing

目錄 緒論................................................................................................................................................................1 1.1設計要求及目的....................................................................................................................................1 1.2 課題分析...............................................................................................................................................1 1.3 總體設計...............................................................................................................................................2 2 具體設計.......................................................................................................................................................2 2.1 菜單設計...............................................................................................................................................2 2.2 圖像的打開、保存及退出...................................................................................................................3 2.2.1 圖像打開....................................................................................................................................3 2.2.2 圖像保存....................................................................................................................................4 2.2.3程序退出.....................................................................................................................................4 2.3 圖像變換...............................................................................................................................................4 2.3.1 傅里葉變換................................................................................................................................4 2.3.3 離散余弦變換............................................................................................................................5 2.4 圖像增強...............................................................................................................................................5 2.4.1 空間域增強................................................................................................................................5 2.4.2 頻率域增強................................................................................................................................6 2.5 圖像分割...............................................................................................................................................7 2.5.1 閾值分割....................................................................................................................................8 2.5.2 梯度分割....................................................................................................................................8 2.6 圖像變形...............................................................................................................................................9 2.6.1 翻轉............................................................................................................................................9 2.6.2 旋轉..........................................................................................................................................10 2.7 其它常用處理.....................................................................................................................................10 2.7.1 亮度..........................................................................................................................................10 2.7.2 對比度.......................................................................................................................................11 2.7.3 截圖...........................................................................................................................................11 2.7.4 底片效果..................................................................................................................................12 2.7.5 二值處理..................................................................................................................................12 3 結果分析.....................................................................................................................................................13 4 心得體會.....................................................................................................................................................13 附錄...................................................................................................................................................................14 基于MATLAB數字圖像處理平臺設計

MATLAB是近幾年來國內外使用最為廣泛的優(yōu)秀科技軟件之一。其語法結構簡單,具有極強的數值計算、數據分析、圖形繪制及圖像處理等功能。具有高質量的圖形可視化效果和強大的界面設計能力。因而在數字圖像處理中有著其他語言所無法比擬的優(yōu)勢。圖形用戶界面(GUI)是提供人機交互的工具和方法。利用GUI制作圖像處理軟件能夠實現圖像處理的各個內容,主要有:圖像空間變換:鄰域和塊操作;二值圖像操作;線性濾波和濾波器設計;變換域處理;圖像分析和增強;圖像恢復;圖像壓縮;形態(tài)學運算等。緒論

1.1設計要求及目的

設計要求:以MATLAB作為工具,開發(fā)一個圖像處理軟件。主要進行圖像處理的常用算法。由以下模塊組成:圖像變換;圖像增強;圖像分割。按各個模塊進行功能擴充,也可加入其它常用的圖像處理功能。

設計目的:MATLAB 軟件為數字圖像處理提供了功能豐富的工具,應用MATLAB友好的界面和實用高效的指令及模塊,可以使人較快地認識、理解圖像處理的相關概念,逐步掌握圖像處理的基本方法。此課題的設計目的是綜合運用MATLAB工具箱實現圖像處理的GUI程序設計,學會和掌握GUI的圖像處理平臺設計。

1.2 課題分析

此課題利用MATLAB的GUI程序設計一個簡單實用的圖像處理程序。該程序具備

數字圖像處理平臺設計功能圖 像 變 換圖 像 增 強圖 像 分 割圖 像 變 形其它常用處理空間域增強頻率域增強閾 值分 割梯 度分 割旋 轉翻 轉傅里葉變換離散余弦變換灰度變換直方圖均衡化低通濾波器高通濾波器roberts算子canny算子sobel算子上下翻轉左右翻轉亮度對比度底截圖片效果二值圖1.1 整體功能框圖 圖像處理的常用功能,以滿足用戶的使用。程序實現的圖像處理功能分為五個模塊:圖像變換、圖像增強、圖像分割、圖像變形以及其它常用處理。如圖1.1所示。

除以上的數字圖像處理的功能外,該程序還要實現圖像的讀取顯示、圖像的保存及退出等基本功能。從而實現完整的數字圖像平臺設計,具有更好的交互性。

1.3 總體設計

軟件的總體設計界面主要分為兩個部分:顯示區(qū)域與操作區(qū)域。具體界面布局如圖1.2所示。

圖1.2 界面布局

顯示區(qū)域:定義兩個圖形區(qū)域,左面為待處理圖片來顯示載入的原圖像,右面為通過處理后的圖像。

操作區(qū)域:通過菜單欄的編輯實現對圖像的各種處理,分為文件和編輯兩大部分。通過文件中的打開操作顯示出處理前的圖像,在編輯中選擇某個圖像處理功能后,將在已處理圖片下就會顯示出處理后的圖片。具體設計

2.1 菜單設計

通過Menu Editor創(chuàng)建菜單欄如圖2.1所示。菜單的設計主要分為兩大部分:文件和編輯。文件包含圖像的打開、保存和退出;編輯包含圖像處理功能的五個模塊:圖像變換、圖像增強、圖像分割、圖像變形及其它常用處理,還有各個模塊的分支。通過此菜單來控制顯示或隱藏功能鍵。

以圖2.1的傅里葉變換為例,當添加上某一菜單后,修改名稱為傅里葉變換,句柄為FFT,從而會在M文件中自動生成傅里葉變換的功能函數function FFT_Callback(hObject, eventdata, handles),在此函數下編寫能夠實現傅里葉變換的程序便能實現對圖像的傅里葉 變換。

圖2.1 菜單欄

2.2 圖像的打開、保存及退出

2.2.1 圖像打開

圖像的打開主要是通過以下程序來實現的:

“[filename,pathname]=uigetfile({'*.jpg';'*.bmp';'*.tif';'*.*'},'載入圖像');” 選擇相應路徑打開圖像;

“file=[pathname,filename];x=imread(file);”讀取選中的圖像; “imshow(x);”在顯示區(qū)域上顯示圖像。

具體操作如圖2.2所示,選擇“文件”菜單中的“打開”后,出現“載入圖像”,選中想要處圖2.2 圖像的打開

理的圖片后點擊“打開”,即可在顯示區(qū)域中顯示出處理前的圖片。

2.2.2 圖像保存

圖像的保存主要是通過以下程序來實現的:

“[sfilename,sfilepath]=uiputfile({'*.jpg';'*.bmp';'*.tif';'*.*'},'保存圖像文件','untitled.jpg');” 選擇圖像文件保存的路徑與格式;

“sfilefullname=[sfilepath ,sfilename];imwrite(handles.img,sfilefullname);”實現對圖像的保存。

具體操作如圖2.3所示,選擇“文件”菜單中的“保存”后,出現“保存圖像文件”,修改文件名后點擊“保存”,即可將處理后的圖像保存到keshe的文件夾下。

圖2.3 圖像的保存

2.2.3程序退出

程序的退出是通過“clc;”,“close all;”,“close(gcf);”,“clear;”這些指令來清除指令窗,窗口,內存變量及函數。

具體操為選擇“文件”菜單中的“退出”后,便關閉了執(zhí)行界面的窗口并清除了指令窗的所有指令。

2.3 圖像變換

2.3.1 傅里葉變換

傅里葉變換(FFT)實際上是將信號f(t)與一組不同頻率的復正弦作內積,這一組復正弦是變換的基向量,傅里葉系數或傅里葉變換是f(t)在這一組基向量上的投影。在圖像處理技術的發(fā)展過程中,FFT起著十分重要的作用。它是線性系統(tǒng)分析的一個有力工具,它能夠定量地分析諸如數字圖像之類的數字化系統(tǒng)。FFT主要分為連續(xù)傅里葉變換和離散傅里葉變換,在數字圖像處理中經常用到的是二維離散傅里葉變換。

程序中主要是通過二維離散傅里葉變換函數fft2(),變換后四個角部分對應于低頻成分,中央部分對應于高頻成分。若想使低頻成分出現在中央位置,則通過函數fftshift()將圖像頻譜中心從矩陣的原點移到矩陣中心。從而實現圖像的二維傅里葉變換。具體程序見 附錄。原圖像及傅里葉變換后的圖像如圖2.4所示。

圖2.4 傅里葉變換

2.3.3 離散余弦變換

離散余弦變換(DFT)在圖像處理中占有重要的位置,它實際上是傅里葉變換的實數部分,但是它比傅里葉變換有更強的信息集中能力。對于大多數自然圖像,DCT能將大多數的信息放到較少的系數上去,因此就更能提高編碼的效率。

程序中主要是通過灰度變換函數rgb2gray()及二維離散余弦變換函數dct2()來實現對圖像的二維離散余弦變換,具體程序見附錄。其變換后的圖像低頻能量都集中在左上角區(qū)域,而向著右下角方向,頻率越來越高。原圖像及離散余弦變換后的圖像如圖2.5所示。

圖2.5 離散余弦變換

2.4 圖像增強

圖像增強是圖像處理中的一類基本技術,其主要的目的改善圖像的視覺效果,提高圖像的清晰度。圖像增強能夠擴展對比度,增強圖像中對象的邊緣,消除或抑制噪聲或保留圖像中感興趣的某些特性而抑制另一些特性等。圖像增強方法按其處理所進行的空間不同,可分為空間域法和頻率域法。2.4.1 空間域增強

空間域法是在空間域內直接對像素灰度值進行運算處理,常用的空間域法有圖像的直接灰度變換和直方圖均衡化,下面分別介紹兩種空域上的圖像增強方法。(1)灰度變換

通過灰度變換可使圖像動態(tài)范圍加大,圖像對比度擴展,圖像清晰,特征明顯,大大改善人眼的視覺效果。

程序中主要通過灰度處理函數rgb2gray()對圖像進行灰度變換,將彩色圖像轉換成灰度圖像。原圖像及灰度圖像如圖2.6所示。

圖2.6 灰度變換

(2)直方圖均衡化

直方圖均衡化是對原始圖像中的像素灰度作某種映射變換,使變換后的圖像灰度的概率密度是均勻分布的,即變換后圖像是一幅灰度級均勻分布圖像,這意味著圖像灰度的動態(tài)范圍得到了增加,從而可提高圖像的對比度。

程序中主要通過灰度處理函數rgb2gray()先對圖像進行灰度變換,然后通過直方圖均衡化處理函數histeq()對灰度圖像進行直方圖均衡化處理。原圖像及直方圖均衡化后的圖像如圖2.7所示。

圖2.7 直方圖均衡化

2.4.2 頻率域增強

頻率域法就是在圖像的某種變換域內,對圖像的變換值進行運算,然后通過逆變換獲得圖像增強效果。這是一種間接處理方法,一般采用二維數字濾波方法來進行頻率域的圖像增強。(1)低通濾波

圖像的邊緣以及噪聲干擾在圖像的頻域上對應于圖像傅里葉變換中的高頻部分,而圖像的背景區(qū)則對應于低頻部分,因此可以用頻域低通濾波法去除圖像的高頻成分,以去掉噪聲,使圖像平滑。

程序中采用二階巴特沃斯低通濾波器,先用函數fft2()對圖像進行二維離散傅里葉變換,然后通過低通濾波器進行濾波后,再對濾波后的圖像數據通過ifft2()進行傅里葉反變換,從而得到低通濾波后的圖像。如圖2.8所示。

圖2.8 低通濾波器

(2)高通濾波

圖像中的邊緣或線條與圖像頻譜中的高頻分量相對應,因此采用高通濾波器讓高頻分量順利通過,可以使圖像的邊緣或線條變得更清楚,可實現圖像的銳化。

程序中采用二階巴特沃斯高通濾波器,與低通濾波過程相同,先進行傅里葉變換,然后通過高通濾波器,再進行傅里葉反變換,從而得到高通濾波后的圖像,具體程序見附錄。原圖像及濾波后的圖像如圖2.9所示。

圖2.9 高通濾波器

2.5 圖像分割

圖像分割是一種重要的圖像分析技術。為了識別和分析圖像中的目標,需要將它們從圖像中分離提取出來,在此基礎上才有可能進一步對目標進行測量和對圖像進行利用。圖像分割就是指把圖像分成各具特性的區(qū)域并提取出感興趣目標的技術和過程。2.5.1 閾值分割

灰度閾值法是把圖像的灰度分成不同的等級,然后用設置灰度閾值的方法確定有意義的區(qū)域或欲分割物的邊界,該方法中最簡單的就是二值化的閾值分割。

程序中先通過函數graythresh()即用Otsu方法計算出全局圖像閾值,再通過函數im2bw(,)基于一定閾值將圖像轉換成二值圖像。原圖像及閾值分割后的圖像如圖2.10所示。

圖2.10 閾值分割

2.5.2 梯度分割

梯度分割即對圖像進行邊緣檢測,圖像邊緣對圖像識別和計算機分析十分有用。邊緣能勾劃出目標物體,使觀察者一目了然。邊緣蘊含了豐富的內在信息,是圖像識別中抽取圖像特征的重要屬性。

(1)Roberts算子

程序中先通過函數rgb2gray()對圖像進行灰度變換,再通過函數edge(,'roberts')即用Roberts算子識別灰度圖像的輪廓,從而實現對圖像的邊緣檢測。如圖2.11所示。

圖2.11 Roberts算子

(2)Canny算子

程序中先通過函數rgb2gray()對圖像進行灰度變換,再通過函數edge(,'canny')即用Canny算子識別灰度圖像的輪廓,如圖2.12所示。(3)Sobel算子

程序中先通過函數rgb2gray()進行灰度變換,再通過函數edge(,'sobel')即用Sobel算 子識別灰度圖像的輪廓,從而實現對圖像的邊緣檢測。如圖2.13所示。

圖2.12 Canny算子

圖2.13 Sobel算子

2.6 圖像變形

2.6.1 翻轉

上下翻轉:程序中通過函數flipud()對圖像數據矩陣進行上下翻轉,由于彩色圖像不能直接進行矩陣翻轉,因此需要先將彩色圖像通過灰度變換處理后再進行翻轉,原圖及翻轉后的圖像如圖2.14所示。

圖2.14 上下翻轉 左右翻轉:與上下翻轉相同,先將圖像進行灰度變換后,通過函數fliplr()將圖像數據矩陣進行左右翻轉,原圖及翻轉后的圖像如圖2.15所示。

圖2.15 左右翻轉

2.6.2 旋轉

打開圖片后,選擇“編輯”菜單“圖像變形”中的“旋轉”后,執(zhí)行界面會出現調整角度的輸入對話框,在對話框中輸入任意角度,則原圖像將會旋轉任意角度,輸入正數逆時針旋

。轉,輸入負數順時針旋轉。以90為例,在對話框中輸入90,則圖像逆時針旋轉90,如圖2.16所示。

在程序中由prompt={'調整角度'};來顯示輸入對話框,函數inputdlg()創(chuàng)建對話框和輸入框,輸入角度后通過函數imrotate()進行相應的旋轉。

圖2.16 圖像旋轉

2.7 其它常用處理

2.7.1 亮度

當在“編輯”菜單中選擇“亮度”后,會出現調整倍數的輸入對話框,默認值為1,在對話框中輸入數值后圖像便會相應變換亮度。輸入數值小于1時,圖像變亮,輸入數值大于1時,圖像變暗。程序中通過函數imadjust()來實現,即將原圖像的亮度值以輸入數值描述的曲線關系映射到新的數值中,從而實現亮度的變化。以輸入值0.5為例,變換后的圖像如圖2.17所示。

圖2.17 亮度調整

2.7.2 對比度

對比度增強:選擇菜單中“對比度增強”后,彈出輸入參數的對話框,以輸入參數2為例,對比度增強后的圖像如圖2.18所示。程序中通過乘法函數immultiply()將原圖像數據與輸入數值相乘,從而增強圖像的對比度。

圖2.18 對比度增強

對比度減弱:選擇菜單中“對比度減弱”后,彈出輸入參數的對話框,同樣以輸入參數2為例,對比度減弱后的圖像如圖2.19所示。程序中通過除法函數imdivide()將原圖像數據與輸入數值相除,從而減弱圖像的對比度。

圖2.19 對比度減弱

2.7.3 截圖 當選擇完菜單中的“截圖”后,鼠標箭頭會變成一個十字,能夠選擇想要截取的圖像部分,選中后就會直接顯示出截取后的圖像,如圖2.20所示。程序中通過函數imcrop()來實

圖2.20 截圖

現的,即返回圖像的一個裁剪區(qū)域,允許用戶以交互方式使用鼠標選定要剪切的區(qū)域。2.7.4 底片效果

程序中通過函數imcomplement()對圖像數據矩陣進行取反運算,即可實現底片效果,原圖像及底片效果的圖像如圖2.21所示。

圖2.21 底片效果

2.7.5 二值處理

二值化即將彩色圖像轉換成只有0和1兩個數值的圖像,程序中通過二值轉換函數im2bw()將彩色圖像轉換為二值圖像。原圖像及轉換后的二值圖像如圖2.22所示。

圖2.22 二值處理 3 結果分析

經過我們小組的不斷調試,軟件已經得到了完善,達到了課設的基本要求,基于MATLAB數字圖像處理平臺設計能實現的全部功能如下:(1)設計圖形用戶界面,實現了圖像的打開、保存及退出

(2)實現了對圖像的傅里葉變換及離散余弦變換,其中離散余弦變換只能對灰度圖像處理。(3)實現了圖像空間域增強包括灰度變換和直方圖均衡化,還有圖像頻率域增強包括低通濾波器和高通濾波器。其中直方圖均衡化,低通濾波和高通濾波均只支持對灰度圖像處理。

(4)實現了圖像分割:閾值分割和梯度分割,梯度分割有Roberts算子、Canny算子、Sobel算子。其中梯度分割需要對圖像先進行灰度變換。(5)實現了圖像的翻轉和旋轉。圖像的翻轉只支持灰度圖像。

(6)實現了圖像的亮度,對比度的調整,能夠對圖像截圖、做出底片效果及二值化處理。

實驗程序雖然基本實現了以上這些功能,但遺憾的是有些功能只支持對灰度的圖像處理,還不能直接對彩色圖像進行處理。心得體會

通過兩周的MATLAB課程設計實踐,使我對MATLAB的使用有了進一步的了解和熟悉。還記得當初我們小組抽到這個題目的時候,每個人看到這個題目都無所適從。雖然曾經學過關于數字圖像處理的課程,但對于MATLAB的數字圖像處理的實際運用并不是很熟悉,特別是對此次GUI設計更是沒有絲毫接觸過的。

雖然對課題感到很懵懂,但在指導老師的提示與指導后,我們開始找到了解決問題的路徑。我們到圖書館借了幾本相關的書,又從網上收集了大量的資料,為這次課設做了較為充分的準備,在參考了相關材料及程序后,我對自己要做的課設內容有了進一步的了解,并對MATLAB的使用有了更深的體會。

當然,在課設的進行過程中,我們還是遇到了不少問題。例如,起初由于我對句柄使用以及一些函數使用的不恰當,使得在對圖像文件的保存上就遇到了問題,不過在我們小組的討論研究下輕松的就解決了。隨著課設的進行,對matlab的的熟悉度逐步加深。在基本功能已經完成的基礎上,我們開始進行一些擴張功能的嘗試,比如圖像的旋轉、翻轉,圖像亮度、對比度的調整,截圖等功能,也實現了較為理想的結果。

雖然這課題最終的功能還不是很完善,但是我還是較為滿意的。本次的課程設計,不但鞭策著我去鞏固MATLAB的理論知識,還提高了我對MATLAB的實際操作運用,使得理論與實踐相結合,為進一步學MATLAB打下了堅實的基礎。附錄

function varargout = keshe(varargin)gui_Singleton = 1;gui_State = struct('gui_Name',mfilename,...'gui_Singleton', gui_Singleton,...'gui_OpeningFcn', @keshe_OpeningFcn,...'gui_OutputFcn', @keshe_OutputFcn,...'gui_LayoutFcn', [] ,...'gui_Callback',[]);if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1});end if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});else

gui_mainfcn(gui_State, varargin{:});end %----------function keshe_OpeningFcn(hObject, eventdata, handles, varargin)handles.output = hObject;guidata(hObject, handles);%--------function varargout = keshe_OutputFcn(hObject, eventdata, handles)varargout{1} = handles.output;%--------function open_Callback(hObject, eventdata, handles)% hObject

handle to open(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)[sfilename ,sfilepath]=uiputfile({'*.jpg';'*.bmp';'*.tif';'*.*'},'保存圖像文件','untitled.jpg');

%返回要保存的圖像文件

if ~isequal([sfilename,sfilepath],[0,0])

%如果不是取消保存

sfilefullname=[sfilepath ,sfilename];

%將文件名和目錄名組合成一個完整的路徑

imwrite(handles.img,sfilefullname);

%保存圖像

else

msgbox('取消保存?','保存圖像文件');%彈出一個名為保存圖像文件的對話框,內

容為“取消保存?”

end %--------function exit_Callback(hObject, eventdata, handles)% hObject

handle to exit(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);i1=handles.img;

%獲取圖像

i2=im2double(i1);

%圖像矩陣轉換成雙精度浮點類型 f1=fft2(i2);

%對圖像進行二維離散傅里葉變換

fc1=fftshift(f1);

%將變換后的圖象頻譜中心從矩陣的原點移到矩陣的中心 i=log(1+abs(fc1));

%對變換后的圖像矩陣數據求絕對值后取自然對數 imshow(i);

xlabel('傅里葉變換圖像');handles.img=i;guidata(hObject,handles);

%把handles句柄更新

%--------function DCT_Callback(hObject, eventdata, handles)% hObject

handle to DCT(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)global T

%定義全局變量

axes(handles.axes2);

%定義圖形區(qū)域axes2 T=getimage;

%從坐標軸獲取圖像數據

x=rgb2gray(handles.img);%利用 rgb2gray函數對源圖像進行灰度處理

imshow(x);

%顯示圖像

xlabel('灰度圖像');

% x軸名為“灰度圖像” handles.img=x;

%把圖像發(fā)給handles.img guidata(hObject,handles);

%把handles句柄更新

%--------function zhifangtu_Callback(hObject, eventdata, handles)% hObject

handle to zhifangtu(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);y1=handles.img;

%獲取圖像 x=rgb2gray(handles.img);

%灰度變換

f=double(x);

%數據類型轉換為雙精度數值 g=fft2(f);

%二維離散傅里葉變換

g=fftshift(g);

%將變換后的圖象頻譜中心從矩陣的原點移到矩陣的中心 [M,N]=size(g);

%返回矩陣g的大小,即M為行數,N為列數 nn=2;

%二階巴特沃斯低通濾波器 d0=50;

%截止頻率50Hz m=fix(M/2);n=fix(N/2);

%取矩陣g的行數和列數一半的整數 for i=1:M

for j=1:N

% 循環(huán)

d=sqrt((i-m)^2+(j-n)^2);

h=1/(1+0.414*(d/d0)^(2*nn));

%計算低通濾波器傳遞函數

result(i,j)=h*g(i,j);

%結果返回到result

end end result=ifftshift(result);

%將圖象頻譜中心從矩陣的中心移到矩陣的原點 y2=ifft2(result);

%二維離散傅里葉反變換

y3=uint8(real(y2));

%把矩陣y2實部轉換成8位無符號數據 imshow(y3);

%顯示低通濾波后的圖像 xlabel('低通濾波圖像');handles.img=y3;guidata(hObject,handles);

%把handles句柄更新

%--------function high_Callback(hObject, eventdata, handles)% hObject

handle to high(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%從坐標軸獲取圖像數據

level=graythresh(T);

%用Otsu方法計算全局圖像閾值

BW=im2bw(T,level);

%基于一定閾值把圖像轉換為二值圖像 imshow(BW);

%顯示閾值分割后的圖像 xlabel('閾值分割圖像');handles.img=BW;guidata(hObject,handles);

%把handles句柄更新

%--------function tidu_Callback(hObject, eventdata, handles)function kongyu_Callback(hObject, eventdata, handles)function pinyu_Callback(hObject, eventdata, handles)function bianxing_Callback(hObject, eventdata, handles)function qita_Callback(hObject, eventdata, handles)function duibidu_Callback(hObject, eventdata, handles)%--------function roberts_Callback(hObject, eventdata, handles)% hObject

handle to roberts(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%從坐標軸獲取圖像數據 C1=rgb2gray(T);

%灰度變換

C2=edge(C1,'canny');

%用canny算子識別灰度圖像的輪廓 imshow(C2);xlabel('Canny算子圖像');handles.img=C2;guidata(hObject,handles);

%把handles句柄更新

%--------function sobel_Callback(hObject, eventdata, handles)% hObject

handle to sobel(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%從坐標軸獲取圖像數據

prompt={'調整角度'};

%用于顯示可提示用戶進行輸入角度的對話框 defans={'0'};

%對話框內顯示默認數值為0 p=inputdlg(prompt,'input',1,defans);

%創(chuàng)建并打開標題為input的輸入對話框,包含

“調整角度”,輸入框為1行,對話框中默認顯示數值為0 p1=str2num(p{1});

%將字符串轉換為數值

f=imrotate(handles.img,p1,'bilinear','crop');%將圖像handles.img饒圖像的中心點旋轉p1

度,p1為正數逆時針旋轉,為負數順時針旋轉,bilinear為使用雙線性插值法,crop為旋19

轉后輸出圖像尺寸與原圖像尺寸一樣

imshow(f);

%顯示旋轉后圖像 xlabel('旋轉后的圖像');handles.img=f;guidata(hObject,handles);

%把handles句柄更新

%--------function shangxia_Callback(hObject, eventdata, handles)% hObject

handle to shangxia(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)

axes(handles.axes2);

T= getimage;

%從坐標軸獲取圖像數據

f=fliplr(handles.img);

%將圖像矩陣左右翻轉

imshow(f);

%顯示翻轉后的圖像

xlabel('左右翻轉后的圖像');

handles.img=f;

guidata(hObject,handles);

%把handles句柄更新

%--------function liangdu_Callback(hObject, eventdata, handles)% hObject

handle to liangdu(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%從坐標軸獲取圖像數據

prompt={'輸入參數'};

%用于顯示可提示用戶進行輸入參數的對話框

defans={'1'};

%對話框內顯示默認數值為1 p=inputdlg(prompt,'input',1,defans);%創(chuàng)建并打開標題為input的輸入對話框,包含“輸入

參數”,輸入框為1行,對話框中默認顯示數值為1 p1=str2num(p{1});

%將字符串轉換為數值

f=immultiply(handles.img,p1);

%將原圖像數據與輸入數值相乘,從而增強對比度

imshow(f);

%顯示對比度增強后的圖像 xlabel('對比度增強的圖像');handles.img=f;guidata(hObject,handles);

%把handles句柄更新

%--------function jianruo_Callback(hObject, eventdata, handles)% hObject

handle to jianruo(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%從坐標軸獲取圖像數據 x=imcrop(handles.img);

% 返回圖像的一個裁剪區(qū)域,允許用戶以交互方式使用

鼠標選定要剪切的區(qū)域

imshow(x);

%顯示裁剪后的圖像 xlabel('裁剪后的圖像');handles.img=x;guidata(hObject,handles);

%把handles句柄更新

%--------function dipian_Callback(hObject, eventdata, handles)% hObject

handle to dipian(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%從坐標軸獲取圖像數據 BW=im2bw(handles.img);

%將圖像轉換為二值圖像 imshow(BW);

%顯示二值圖像 xlabel('二值圖像');handles.img=BW;guidata(hObject,handles);

%把handles句柄更新

第二篇:基于MATLAB的數字圖像處理

目 錄 引言.................................................................................................................1 2 設計使用軟件....................................................................................................2 2.1MATLAB簡介.........................................................................................2 2.2matlab基本操作.......................................................................................2 3 圖像幾何變換設計原理....................................................................................4 3.1圖像幾何變換設計說明..........................................................................4 3.2 圖像平移理論基礎.................................................................................4 3.3圖像縮放的理論基礎..............................................................................5 3.4雙線性插值法..........................................................................................5 3.5最鄰近差值法..........................................................................................6 4圖像變換總體設計.............................................................................................7 4.1基于MATLAB的GUI設計..................................................................7 4.2插入圖像..................................................................................................8 4.3圖像的平移變換......................................................................................9 4.3.1圖像右下方平移...........................................................................9 4.3.3圖像左上方平移.........................................................................10 4.4圖像的縮放變換....................................................................................12 4.4.1基于雙線性插值法的圖像縮放.................................................12 4.4.2鄰近插值法的圖像縮放.............................................................13 5心得體會...........................................................................................................14 參考文獻..............................................................................................................15 附錄一..................................................................................................................16

課程設計說明書 引言

數字圖像處理技術是20世界60年代發(fā)展起來的一門新興學科,隨著圖像處理理論和方法的進一步完善,使得數字圖像處理技術在各個領域得到了廣泛應用,并顯示出廣闊的應用前景。MATLAB既是一種直觀、高效的計算機語言,同時又是一個科學計算平臺。它為數據分析和數據可視化、算法和應用程序開發(fā)提供了最核心的數學和高級圖形工具。根據它提供的500多個數學和工程函數,工程技術人員和科學工作者可以在它的集成環(huán)境中交互或變成以完成各自的計算。MATLAB中集成了功能強大的圖像處理工具箱。由于MATLAB語言的語法特征與C語言極為相似,而且更加簡單,更加符合科技人員對數學表達式的書寫格式,而且這種語言可移植性好、可擴展性強,再加上其中有豐富的圖像處理函數,所以MATLAB在圖像處理的應用中具有很大的優(yōu)勢。

MATLAB是一種以矩陣運算為基礎的交互式程序語言,能夠滿足科學、工程計算和繪圖的要求,與其它計算機語言相比,其特點是簡潔和智能化,適應科技專業(yè)人員的思維方式和書寫習慣,使得編程和調試效率大大提高。我們學習掌握MATLAB,也可以說是在科學工具上與國際接軌。

課程設計說明書 設計使用軟件

2.1MATLAB簡介

MATLAB是由美國mathworks公司發(fā)布的主要面對科學計算、可視化以及交互式程序設計的高科技計算環(huán)境。它將數值分析、矩陣計算、科學數據可視化以及非線性動態(tài)系統(tǒng)的建模和仿真等諸多強大功能集成在一個易于使用的視窗環(huán)境中,為科學研究、工程設計以及必須進行有效數值計算的眾多科學領域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設計語言(如C、Fortran)的編輯模式,代表了當今國際科學計算軟件的先進水平。

MATLAB和Mathematica、Maple并稱為四大數學軟件。它在數學類科技應用軟件中在數值計算方面首屈一指。MATLAB可以進行矩陣運算、繪制函數和數據、實現算法、創(chuàng)建用戶界面、連

接其他編程語言的程序等,主要應用于工程計算、控制設計、信號處理與通訊、圖像處理、信號檢測、金融建模設計與分析等領域。

MATLAB的基本數據單位是矩陣,它的指令表達式與數學、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,FORTRAN等語言完成相同的事情簡捷得多,并且MATLAB也吸收了像Maple等軟件的優(yōu)點,使MATLAB成為一個強大的數學軟件。在新的版本中也加入了對C,FORTRAN,C++,JAVA的支持。可以直接調用,用戶也可以將自己編寫的實用程序導入到MATLAB函數庫中方便自己以后調用,此外許多的MATLAB愛好者都編寫了一些經典的程序,用戶可以直接進行下載就可以用。

2.2matlab基本操作

Matlab中基本變量都是以矩陣的形式保存的。一幅圖像即是一個二維的矩陣。變量名區(qū)分大小寫,如a和A表示兩個不同的變量。圖像I中第i行第j列的像素用I(i,j)表示,其中行號和列號都從1開始計數。要了解更多關于Matlab的基本知識,可看Matlab help下的Matlab目錄。

本實驗可能用到的matlab函數有:zeros,imwrite,imread,imshow,FFT2,abs,log,min,max,查詢具體的函數用法可以在Matlab help中查找,或在Matlab command window中打(空格)函數名。

課程設計說明書

在Matlab command window中的命令在打回車后直接執(zhí)行。也可以在m-file editor中編寫程序,存盤為.m文件后,按Debug菜單下的Run,自動逐條執(zhí)行命令。Debug菜單下還提供了設置斷點逐行執(zhí)行等調試命令。做本實驗時可先在command window中熟悉Matlab命令與函數,最后所有命令應保存在一個m文件中,便于檢查和調試。

每次畫圖前可用figure命令新開一個圖像窗口,否則前一次顯示的圖像會被新的圖像覆蓋。也可用figure(n)命令規(guī)定當前圖像窗口序號。

課程設計說明書

圖像幾何變換設計原理

3.1圖像幾何變換設計說明

數字圖像幾何變換是一種用途廣泛的圖像處理技術,在圖像校正、圖像匹配、圖像變形等方面有廣泛用途。圖像的幾何變換需要兩個過程:空間變換和灰度插值,需要對離散數據組成的象素位置和間距進行重新采樣,以構成幾何變換后的新圖像,即根據離散的數字圖像重建二維連續(xù)函數,再按新的像素位置和間距進行采樣。

要求編程實現圖像的平移、縮放兩種幾何變換,插值分別采用最近鄰插值和雙線性插值。

在圖像的幾何變換中,通常包括圖像的平移、圖像的轉置、圖像的鏡像變換、圖像的縮放和圖像的旋轉等。

幾種圖像幾何變換中都是1:1的變換,而圖像的縮放操作會改變圖像的大小,產生的圖像中的像素可能在原圖中找不到相應的像素點,這樣就必須進行近似處理。一般的方法是直接賦值為和它最相近的像素值,但也可以通過一些插值算法來計算。下面的代碼直接采用了前一種做法。

3.2 圖像平移理論基礎

圖像平移就是將圖像中所有的點都按照指定的平移量水平、垂直移動。設(x0,y0)為原圖像上的一點,圖像水平平移量為tx,垂直平移量為ty,則平移后點(x0,y0)坐標將變?yōu)椋▁1,y1)。

顯然(x0,y0)和(x1,y1)的關系如下:

?x1???y1?x0?txy0?ty

用矩陣表示如下:

?x1??10tx??x0??y1???01ty??y0??????? ??1????001????1??

對該矩陣求逆,可以得到逆變換:

課程設計說明書

?x0??10?tx??x1??y0???01?ty??y1?

即?x0?????????y0???????10011??????x1?txy1?ty

這樣,平移后的圖像上的每一點都可以在原圖像中找到對應的點。例如,對于新圖中的(0,0)像素,代入上面的方程組,可以求出對應原圖中的像素(-tx,-ty)。如果tx或ty大于0,則(-tx,-ty)不在原圖中。對于不在原圖中的點,可以直接將它的像素值統(tǒng)一設置為0或則255(對于灰度圖就是黑色或白色)。同樣,若有點不在原圖中,也就說明原圖中有點被移出顯示區(qū)域。如果不想丟失被移出的部分圖像,可以將新生成的圖像寬度擴大|tx |,高度擴大| ty |。

3.3圖像縮放的理論基礎

假設圖像x軸方向縮放比率為fx,y軸方向縮放比率為fy,那么原始圖中點(x0,y0)對應與新圖中的點(x1,y1)的轉換矩陣為:

?x1??fx?y1???0?????1????00??x0??y0? fy0????01????1??0

其逆運算如下:

00??x1??x0??1/fx?y0???0??y1?

即?x0?1/fy0???????y0????????01??1??1??0x1/fxy1/fy

例,當fx=fy=0.5時,圖像被縮一半大小,此時縮小后圖像中的(0,0)像素對應于原圖中的(0,0)像素;(0,1)像素對應于原圖中的(0,2)像素;(1,0)像素對應于原圖中的(2,0)像素,以此類推。在原圖基礎上,每行隔一個像素進行取點,每隔一行進行操作。其實是將原圖每行中的像素取值重復一遍,然后每行重復一次。

3.4雙線性插值法

雙線性插值[是利用了需要處理的原始圖像像素點周圍的四個像素點的相關陛,通過雙線眭算法計算得出的。對于一個目的坐標,通過向后映射法得到其在原始圖像的對應的浮點坐標(i+u,j+v),其中i,j均為非負整數,u,v為[0,l]區(qū)間的浮點數,則這個像素的值f(i+u,j+v)可由原圖像中坐標為(i,j)、(i+l,j)、課程設計說明書

(i,j+1)、(i+1,j+1)所對應的周圍四個像素的值決定,即:

f(i+u,j+v)=(1-u)×(1-v)×f(i,j)+(1-u)×V× f(i,j+1)+u×(1-v)×f(i+l,j)+u×v×f(i+l,j+1),其中f(i,j)表示源圖像(i,j)處的的像素值,這就是雙線性內插值法。

如圖3.1所示,已知(0,0)、(0,1)、(1,0)、(1,1)四點的的灰度,可以由相鄰像素的灰度值f(0,0)和f(1,0)在X方向線性插值求出(x,0)的灰度f(x,0),由另外兩個相鄰像素f(0,1)和f(1,1)在X方向上線性插值可求出(x,1)的灰度f(x,1),最后由f(x,0),f(x,1)在Y方向上進行線性插值就可以得到(x,y)的灰度f(x,y)。

在同一行內根據待插值像素點與其前后的原圖像像素點的位置距離進行加權線性插值,即離原圖像像素點越近的待插值像素點,原圖像像素的加權系數就越大;行間根據待插值行與其上下的原圖像行間的距離進行加權線性插值,即離原圖像行越近的待插值行,原圖像行的加權系數就越大。

圖3.1 雙線性插值原理

3.5最鄰近差值法

最簡單的插值算法是最鄰近插值,也稱為零階插值。它輸出的像素灰度值就等于距離它映射到的位置最近的輸入像素的灰度值,最鄰近插值算法簡單,在許多情況下都能得到令人滿意的結果,但是當圖像中包含像素之間灰度級有變化的細微結構時,最鄰近算法會在圖像中產生人為加工的痕跡。雙線性插值算法計算

課程設計說明書

量比零階插值大,但縮放后圖像質量高,不會出現像素值不連續(xù)的的情況,這樣就可以獲得一個令人滿意的結果[2,6]。

最鄰近點插值[6]取插值點的4個鄰點中距離最近的鄰點灰度值作為該點的灰度值。設插值點(i,j)到周邊4個鄰點fk(i,j)(k = 1,2,3,4)的距離為dk(k = 1,2,3,4),則:g(i,j)=fk(i,j),dl = min{d1,d2,d3,d4},l= 1,2,3,4。

4圖像變換總體設計

4.1基于MATLAB的GUI設計

圖形用戶界面(GUI)是用戶與計算機程序之間的交互方式,是用戶與計算機進行信息交流的方式。計算機在屏幕顯示圖形和文本,若有揚聲器還可產生 聲音。用戶通過輸入設備,如:鍵盤、鼠標、跟蹤球、繪制板或麥克風,與計算機

課程設計說明書

通訊。用戶界面設定了如何觀看和如何感知計算機、操作系統(tǒng)或應用程序。通常,多是根據悅目的結構和用戶界面功能的有效性來選擇計算機或程序。圖形用戶界面或GUI是包含圖形對象,如:窗口、圖標、菜單和文本的用戶界面。以某種方式 選擇或激活這些對象,通常引起動作或發(fā)生變化。最常見的激活方法是用鼠標或其它點擊設備去控制屏幕上的鼠標指針的運動。

圖4.1GUI界面設計

通過MATLAB里面GUI功能自己設計出的關于本次課程設計的GUI界面,在這個界面中有預覽圖像,圖像平移,圖像縮放三個選項以及四個數據填充空格,來填寫關于圖像平移的長度與寬度,以及縮放的比例。

4.2插入圖像

單擊GUI界面的預覽圖像按鈕,就可以選擇將自己想要進行平移或縮放的圖片插入到這個程序里面去,并顯示出來。在這次課程設計當中將“l(fā)ena.bmp”這張圖片插入到所做的程序當中,如圖所示。

圖4.2預覽的圖片

課程設計說明書

插入的“l(fā)ena.bmp”圖片在MTALAB中所做的GUI圖形用戶界面中顯示了出來。

4.3圖像的平移變換

在所設計的GUI界面當中,首先設定所要平移的像素長度以及寬度,并且在設計當中用正負符號來表示圖像的方向,設置完成之后,單擊圖片平移按鈕,就會彈出窗口當中顯示出兩張圖片。通過左右兩張的圖片對比可以清楚的看到右邊圖片是經過平移處理之后的。

4.3.1圖像右下方平移

圖4.3圖像右下方向移動

如圖所示,在GUI界面中將參數設置成平移長度為100,平移寬度為100之后,單擊圖像平移按鈕,在彈出來的窗口之中,明顯可以看到右邊的圖片向右下方向移動了各100個像素點,空出來的部分通過用黑像素點替換,以便能夠進行清晰的對比結果。

4.3.2圖像左下方平移

課程設計說明書

圖 4.4圖像的左下方向移動

如圖所示,在GUI界面中將參數設置成平移長度為-100,平移寬度為100之后,單擊圖像平移按鈕,在彈出來的窗口之中,明顯可以看到右邊的圖片向左下方向移動了各100個像素點,空出來的部分通過用黑像素點替換,以便能夠進行清晰的結果對比。

4.3.3圖像左上方平移

圖4.5圖像向左上方向移動

課程設計說明書

如圖所示,在GUI界面中將參數設置成平移長度為-100,平移寬度為-100之后,單擊圖像平移按鈕,在彈出來的窗口之中,明顯可以看到右邊的圖片向左上方向移動了各100個像素點,空出來的部分通過用黑像素點替換,以便能夠進行清晰的結果對比。

4.3.4圖像右上平移

圖4.6圖像向右上方向移動

如圖所示,在GUI界面中將參數設置成平移長度為100,平移寬度為-100之后,單擊圖像平移按鈕,在彈出來的窗口之中,明顯可以看到右邊的圖片向右上方向移動了各100個像素點,空出來的部分通過用黑像素點替換,以便能夠進行清晰的結果對比

課程設計說明書

4.4圖像的縮放變換

在所設計的GUI界面當中,首先設定所要縮放的像素長度以及寬度比例系數,設置完成之后,單擊雙線性差值法縮放按鈕,就會彈出窗口,在當中顯示出兩張圖片。通過左右兩張的圖片對比可以清楚的看到右邊圖片是經過縮放處理之后的,在長度寬度的比例上有所變化

4.4.1基于雙線性插值法的圖像縮放

課程設計說明書

圖4.6雙線性差值法的圖像縮放

如圖所示,在所設計的GUI界面中將參數設置成長度縮放比例系數為2,寬度縮放比例系數為3之后,單擊雙線性插值法按鈕,在彈出來的窗口之中,明顯可以看到右邊的圖片相比較左邊的圖片,在長度上是要比寬度上要放大了所設置的比例系數的,由于對應的系數為2倍3倍,所以可以清楚明了的看到縮放效果。所以當設置為長寬系數形同時,縮放效果是不明顯的。

4.4.2鄰近插值法的圖像縮放

課程設計說明書

圖4.7鄰近插值法的圖像縮放

如圖所示,在所設計的GUI界面中將參數設置成長度縮放比例系數為2,寬度縮放比例系數為3之后,單擊鄰近插值法按鈕,在彈出來的窗口之中,明顯可以看到右邊的圖片相比較左邊的圖片,在長度上是要比寬度上要放大了所設置的比例系數的,由于對應的系數為2倍3倍,所以可以清楚明了的看到縮放效果。

5心得體會

通過這次課程設計,使得我更加的掌握了在數字圖像處理方面的知識,以及

課程設計說明書

加強了我對數字圖像處理這一門學科的興趣與愛好。此外還掌握了相關MATLAB的一些基本操作與應用,能夠在以后的學習生活之中進行一些簡單的設計。雖然在這次設計實踐過程之中,遇到了重重困難,但是在經過一次次的更正,一次次的修改之后,以及經過網絡上多方面材料的查找與老師的悉心指導,終于能夠最終的完成這次課程設計的題目要求。

兩周的時間不算很長,但是在這兩周的時間里面,我們卻學習到了很多之前多不能學習到的東西。在這次課程設計中不僅培養(yǎng)了獨立思考、動手操作的能力,在各種其它能力上也都有了提高。更重要的是,我們學會了很多學習的方法。而這是日后最實用的,真的是受益匪淺。要面對社會的挑戰(zhàn),只有不斷的學習、實踐,再學習、再實踐。這對于我們的將來也有很大的幫助。

實驗過程中,此次設計也讓我明白了有什么不懂不明白的地方要及時請教或上網查詢,只要認真鉆研,動腦思考,動手實踐,就沒有弄不懂的知識,收獲頗豐。也對團隊精神的進行了考察,讓我們在合作起來更加默契,在成功后一起體會喜悅的心情。

參考文獻

[1]章毓晉.《圖像處理和分析教程》,人們郵電出版社,2009。

課程設計說明書

[2]龔聲蓉.《數字圖像處理與分析》,清華大學出版社,2006 [3]余成波.《數字圖像處理及MATLAB實現》,重慶大學出版社,2003 [4]姚敏.《數字圖像處理》,機械工業(yè)出版社,2006 [5]李顯宏.《MATLAB7.x界面設計與編程技巧》電子工業(yè)出版社,2006 [6]Kenneth R.Castleman著,朱志剛等譯,《數字圖像處理》,電子工業(yè)出版社,2006

1.MATLAB圖像平移程序

附錄

課程設計說明書

N1 = get(handles.cc,'String');N2 = get(handles.kk,'String');Tx = str2double(N1);Ty = str2double(N2);[m, n] = size(I);H = uint8(zeros(m+abs(Ty), n+abs(Tx)));if(Tx>0&&Ty>0)

H(1+Ty:m+Ty,1+Tx:n+Tx)= I;else if(Tx<0&&Ty<0)

H(1:m,1:n)= I;

else if(Tx<0&&Ty>0)

H(1+Ty:m+Ty,1:n)= I;

else

H(1:m,1+Tx:n+Tx)= I;

end

end end figure,subplot(1,2,1);imshow(I);title('原圖像');subplot(1,2,2);imshow(H);title('輸出圖像');2.MATLAB圖像雙線性插值法圖像縮放 I=imread('lena.bmp');[rows,cols]=size(I);N1=get(handles.chang,'String');N2=get(handles.kuan,'String');K1=str2double(N1);K2=str2double(N2);width = K1 * rows;

課程設計說明書

height = K2 * cols;Out = uint8(zeros(width,height));widthScale = rows/width;heightScale = cols/height;for x = 2:width2

oldX = x * widthScale;

oldY = y * heightScale;

if(oldX/double(uint16(oldX))== 1.0)&(oldY/double(uint16(oldY))== 1.0)

Out(x,y)= I(int16(oldX),int16(oldY));

else

a = double(uint16(oldX));

b = double(uint16(oldY));

x11 = double(I(a,b));

x12 = double(I(a,b+1));

x21 = double(I(a+1,b));

x22 = double(I(a+1,b+1));

Out(x,y)= uint8((b+1-oldY)*((oldX-a)*x21 +(a+1-oldX)*x11)+(oldY-b)*((oldX-a)*x22 +(a+1-oldX)* x12));

end

end end figure,subplot(1,2,1);imshow(I);title('原圖像')subplot(1,2,2);imshow(Out);title('輸出圖像');2.MATLAB圖像最鄰近差值法圖像縮放 I=imread('lena.bmp');[rows,cols]=size(I);

課程設計說明書

N1 = get(handles.chang,'String');N2 = get(handles.kuan,'String');K1 = str2double(N1);K2 = str2double(N2);width = K1 * rows;

height = K2 * cols;im2 = uint8(zeros(width,height));widthScale = rows/width;heightScale = cols/height;for x = 2:width2

oldX = x * widthScale;

oldY = y * heightScale;

if(oldX/double(uint16(oldX))== 1.0)&(oldY/double(uint16(oldY))== 1.0)

im2(x,y)= I(int16(oldX),int16(oldY));

else

a = double(round(oldX));

b = double(round(oldY));

im2(x,y)= I(a,b);

end

end end figure,subplot(1,2,1);imshow(I);title('原圖像')subplot(1,2,2);imshow(im2);title('輸出圖像')

第三篇:matlab數字圖像處理 膨脹和腐蝕

基于Matlab的腐蝕和膨脹的邊緣檢測

一、實驗目的: 掌握運用Matlab軟件對灰度與二值圖像的膨脹與腐蝕的處理方法。

二、實驗環(huán)境(軟件條件):

Windws2000/XP

MATLAB 7.x

三、實驗內容:

1、圖像膨脹的Matlab實現 ① 實驗原理:

膨脹:給圖像中的對象邊界添加像素。

在操作中,輸出圖像中所有給定像素的狀態(tài)都是通過對輸入圖像的相應像素及鄰域使用一定的規(guī)則進行確定。在膨脹操作時,輸出像素值是輸入圖像相應像素鄰域內所有像素的最大值。在二進制圖像中,如果任何像素值為1,那么對應的輸出像素值為1。

可以使用imdilate函數進行圖像膨脹,imdilate函數需要兩個基本輸入參數,即待處理的輸入圖像和結構元素對象。結構元素對象可以是strel函數返回的對象,也可以是一個自己定義的表示結構元素鄰域的二進制矩陣。此外,imdilate還可以接受兩個可選參數:PADOPT(padopt)——影響輸出圖片的大小、PACKOPT(packopt).——說明輸入圖像是否為打包的二值圖像(二進制圖像)。② 實驗步驟:

A、首先創(chuàng)建一個包含矩形對象的二值圖像矩陣。R=zeros(9,10);R(4:6,4:7)=1 R = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 B、使用一個3×3的正方形結構元素對象對創(chuàng)建的圖像進行膨脹。

C=strel('square',3)C = Flat STREL object containing 9 neighbors.Neighborhood: 1 1 1 1 1 1 1 1 1 C、將圖像R和結構元素C傳遞給imdilate函數。R1=imdilate(R,C)R1 = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 D、顯示結果: imshow(R,'notruesize')imshow(R1,'notruesize')③ 實驗結果: 膨脹前后效果圖:

2、圖像腐蝕的Matlab實現 ① 實驗原理:

腐蝕:刪除對象邊界某些像素。

在操作中,輸出圖像中所有給定像素的狀態(tài)都是通過對輸入圖像的相應像素及鄰域使用一定的規(guī)則進行確定。在腐蝕操作中,輸出像素值是輸入圖像相應像素鄰域內所有像素的最小值。在二進制圖像中,如果任何一個像素值為0,那么對應的輸出像素值為0。

可以使用imerode函數進行圖像腐蝕。imerode函數需要兩個基本輸入參數:待處理的輸入圖像以及結構元素對象。此外,imerode函數還可以接受3個可選參數:PADOPT(padopt)——影響輸出圖片的大小、PACKOPT(packopt).——說明輸入圖像是否為打包的二值圖像(二進制圖像)。M——指定原始圖像的行數。② 實驗內容及步驟:

A、讀取圖像cameraman.tif(該圖像是Matlab當前目錄下自帶的圖片)R=imread('cameraman.tif');B、創(chuàng)建一個任意形狀的結構元素對象 C=strel('arbitrary',eye(5));C、以圖像R和結構元素C為參數調用imerode函數進行腐蝕操作。R1=imerode(R,C);D、顯示操作結果 imshow(R); figure,imshow(C); ③ 實驗結果:

圖像cameraman.tif 腐蝕前后的效果對比:

3、膨脹和腐蝕聯(lián)合操作 ① 實驗內容及步驟: A、創(chuàng)建結構元素: clear;close all C= strel('rectangle',[40 30]);

%結構元素必須具有適當的大小,既可以刪電流線又可以刪除矩形.B、使用結構元素腐蝕圖像:

%將會刪除所有直線,但也會縮減矩形 R=imread('circbw.tif');R1=imerode(R,C);imshow(R1);figure,imshow(R);C、恢復矩形為原有大小,使用相同的結構元素對腐蝕過的圖像進行膨脹.R2=imdilate(R1,C);figure,imshow(R2);② 實驗結果: 最終效果如下圖: 原始圖像 腐蝕后的圖像 膨脹后的圖像

4、邊緣檢測 ① 實驗原理:

對于一副灰度二進制圖像,如果圖像像素值為1,則該像素的狀態(tài)為ON,如果其像素值為0,則該像素的狀態(tài)為OFF。在一副圖像中,如果圖像某個像素滿足以下兩個條件:

1.該像素狀態(tài)為ON; 2.該像素鄰域中有一個或多個像素狀態(tài)為OFF。則認為該像素為邊緣像素。

Matlab中提供了專門的函數bwperim,可以用于判斷一副二進制圖像中的哪些像素為邊緣像素。② 實驗內容及步驟:

以下程序代碼示例就是利用bwperim函數,對圖像circbw.tif進行邊緣檢測,其邊緣像素檢測效果如尾圖。clear;close all R=imread('circbw.tif');R1=bwperim(R);

imshow(R); figure,imshow(R1); ② 實驗結果:

心得體會:

本次實驗利用形態(tài)學運算—腐蝕和膨脹對圖像進行了處理。數學形態(tài)學的基本思想是:用具有一定形態(tài)的結構元素去量度和提取圖像中的對應形狀,以達到圖像分析和識別的目的。它的優(yōu)點有:有效濾除噪聲、保留圖像中原有信息、算法易于用并行處理方法有效實現等等。

總的來說,在此次實驗中遇到了較多問題,經過對相關知識的復習以及對相關資料的查詢,才逐個地解決了。在今后的實驗課中要有充分的準備與預習,不懂的問題要提前查資料,這樣在實驗中才會胸有成竹,才不會手忙腳亂。

第四篇:《數字圖像處理》綜合設計

《數字圖像處理》綜合設計

學習委員以班級為單位刻錄成光盤,每個人建立一個目錄,目錄名為(學號+姓名)如:0804631001趙書紅

個人目錄中要上交的文件:程序源文件+設計報告 只交電子版,不需打印。以上工作務必于14周前完成。

1,設計目的

提高分析問題,解決問題的能力,進一步鞏固數字圖像處理系統(tǒng)中的基本原理與方法.熟悉掌握一門計算機語言,可以進行數字圖像的應用處理的開發(fā)設計.2,設計選題

2.1 【選題一】簡單圖像處理系統(tǒng)

整個系統(tǒng)要完成的基本功能大致如下: 1能對圖像文件(bmp, jpg, tiff, gif等)進行打開,保存,另存,退出等功能操作;2數字圖像的統(tǒng)計信息功能:包括直方圖的統(tǒng)計及繪制等;3數字圖像的增強處理功能:(1)空域中的運算,各種空間域平滑算法(如局部平滑濾波法,中值濾波等),銳化算法(如梯度銳化法,高通濾波等)4,圖像分割:(1)點,線(hough變換檢測直線),及邊緣檢測(梯度算子,拉普拉斯算子等);(2)區(qū)域分割包括閾值分割,區(qū)域生長,分裂合并等;5,數字圖像的變換:普通傅立葉變換(ft)與逆變換(ift),快速傅立葉變換(fft)與逆變換(ifft),離散余弦變換(DCT),小波變換等.6,二值圖像處理:膨脹,腐蝕,開運算與比運算.在實現整個系統(tǒng)的時候,必須有1,2,3中的這些基本內容,可以根據個人興趣增加其他的內容.2.2【課程設計選題二】汽車車牌中的數字識別 整個系統(tǒng)要完成的基本功能大致如下: 1,能對圖像文件(bmp, jpg, tiff, gif等)進行打開,保存,另存,打印,退出等功能操作;2,圖像預處理功能:(1)直方圖的統(tǒng)計及繪制,根據此找到圖像的閾值點;(2)可將圖像的各種幾何矯正變換;(3)彩色圖像的灰度化變換等,一般灰度圖像的二值化處理等;(4)數字圖像的增強處理功能:空域中的點運算,直方圖的均衡化,各種空間域平滑算法(如局部平滑濾波法,中值濾波等),銳化算法(如梯度銳化法,高通濾波等);色彩增強:偽彩色增強,真彩色增強等;3, 車牌的定位 4,字符識別(1)模板匹配;(2)神經網絡;此系統(tǒng)主要是對含有汽車車牌的圖像進行處理,并對車牌中的數字字符進行識別.3, 課程設計方案制定

1,程序運行環(huán)境是Windows平臺.2,開發(fā)工具選用VC++等都可以.3,以組件化的思想構建整個軟件系統(tǒng).具體的功能模塊根據選定的不同題目做合理的劃分.4,課程設計的一般步驟

選題與搜集資料:選擇課題,進行系統(tǒng)調查,搜集資料.分析與設計:根據搜集的資料,進行功能分析,并對系統(tǒng)功能與模塊劃分等設計.程序設計:運用掌握的語言,編寫程序,實現所設計的功能.調試與測試:自行調試程序,同學之間交叉測試程序,并記錄測試情況.驗收與評分:指導教師對每個成員開發(fā)的程序進行綜合驗收,結合設計報告,根據課程設計成績的評定方法,評出成績.5,要求

5.1總體要求

1,要充分認識課程設計對培養(yǎng)自己的重要性,認真做好設計前的各項準備工作.尤其是對編程軟件的使用有基本的認識.2,獨立按時完成規(guī)定的工作任務,不得弄虛作假,不準抄襲他人內容,否則成績以不及格計.5.2實施要求

1,理解各種圖像處理方法確切意義.2,獨立進行方案的制定,系統(tǒng)結構設計要合理.3,在寫課設報告時,必須要將主要函數的功能和參數做詳細的說明.4,通過多幅不同形式的圖像來檢測該系統(tǒng)的穩(wěn)定性和正確性.5.3 課程設計報告的內容及要求 學生應在規(guī)定的時間內完成課程設計報告一份(字數不限),報告的內容和要求如下

5.3.1 報告的格式內容如下: 1.目的與要求

這部分主要說明本課程設計的目的,任務和要求;2.設計的內容

介紹系統(tǒng)中所設計的主要功能和原理方法;3.總體方案設計

根據課程設計的具體情況,描述系統(tǒng)的具體構架,包括:功能模塊的劃分,系統(tǒng)運行的環(huán)境,選用的工具及主要實現功能的原理.4.各個功能模塊的主要實現程序

主要的功能實現和函數要進行詳細的說明,包括其用法,使用范圍,及參數等.5.測試和調試

按課程設計要求,選用多幅圖像對程序進行測試,并提供系統(tǒng)的主要功能實現的效果圖.并在調試中發(fā)現的問題做說明.6.課程設計總結與體會

主要說明設計中學到的東西和取得的經驗總結,心得體會.7.參考文獻

寫出具體的主要參考文獻,標明其作者,出處,年代,若是期刊文章,還需要給出期刊名.網絡的文章要給出網址.5.3.2 報告要求

1,必須按照以上格式書寫報告.2,必須對課程設計總體方案進行說明.3,說明各個功能模塊的具體實現,對用到的主要函數及參數要做具體的說明,.4,不要在報告中粘貼程序代碼

6,課程設計的質量標準與成績評定

本課程的考核方式為:對學生單獨進行驗收和答辯,學生必須演示程序,并回答教師提出的問題.根據驗收答辯的情況和課程設計報告的質量綜合給出成績.課程設計成績考核采用:優(yōu),良,中,及格,不及格五級評分制,評分標準如: 優(yōu)秀:格式完整;課設總體方案正確,詳細,系統(tǒng)中完成了所要求的所有功能;有實現功能的必要流程圖.設計說明書層次清楚,條理分明,理論分析正確,書寫工整.回答問題快速準確.對善于獨立思考設計中有所創(chuàng)新的學生優(yōu)先考慮.良好:格式完整;設計方案合理,制作規(guī)范,系統(tǒng)基本滿足要求;有實現功能的必要流程圖.設計說明書層次比較清楚;回答問題準確;書寫工整.中:格式正確,設計方案基本正確,完成功能基本符合要求,設計說明書僅存在少量的問題(如:方案分析有少量錯誤,條理不十分清晰,流程圖,書寫不大規(guī)范等).能夠正確回答問題.及格:設計方案基本正確,實現了主要的功能,有小部分功能尚未實現,設計說明書存在一些問題.回答問題基本正確.不及格:極不認真,或者根本不交課程設計程序和報告的.另外,對于請人代做,完全照抄他人課題.請人代寫抄襲他人說明書,嚴重違反紀律者以不及格論處.

第五篇:《數字圖像處理》

實驗五 圖像的幾何變換

一.實驗目的及要求

掌握圖像幾何變換的基本原理,熟練掌握數字圖像的縮放、旋轉、平移、鏡像和轉置的基本原理及其MATLAB編程實現方法。

二、實驗內容

(一)研究以下程序,分析程序功能;輸入執(zhí)行各命令行,認真觀察命令執(zhí)行的結果。熟悉程序中所使用函數的調用方法,改變有關參數,觀察試驗結果。

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 ');

說明:

?注意觀察不同插值方法的圖像表現; ?改變圖像縮放因子Scale,重做上述實驗。2.圖像旋轉

clear all, close all I = imread('cameraman.tif');Theta = 45;

% 將圖像逆時針旋轉45?。

J1 = imrotate(I, Theta, 'nearest');

% using the nearest neighbor interpolation Theta =-45;

% 將圖像順時針旋轉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 %-------

圖像旋轉30順時針逆時針

clear all, close all I = imread('cameraman.tif');Theta = 30;

% 將圖像逆時針旋轉30。

J1 = imrotate(I, Theta, 'nearest');

% using the nearest neighbor interpolation Theta =-30;

% 將圖像順時針旋轉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 說明:

?注意觀察不同插值方法和輸出圖像后處理方法的圖像表現; ?改變旋轉角度大小和方向,重做上述實驗。

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編程實現以下圖像幾何變換(參考自編講義相關章節(jié))

1.圖像扭曲變換 2.球面變換

三、實驗設備

1.PIII以上微機; 2.MATLAB6.5;

四、預習與思考

1.預習實驗內容,閱讀教材熟悉實驗原理;

2.查閱資料,熟悉實驗中涉及的有關MATLAB函數;

3.利用課余時間,采用MATLAB底層函數編程實現實驗內容

(二)中的圖像平移、圖像轉置等幾何變換。

五、實驗報告要求

1.簡述試驗的目的和試驗原理;

2.敘述各段程序功能,改變有關函數的參數,分析比較實驗結果; 3.打印出所編寫的實驗程序。4.寫出本實驗的心得體會及意見。

實驗六

數字圖像處理應用

一.實驗目的及要求

1.利用MATLAB提供的圖像處理函數實現圖像中物體屬性的測量; 2.訓練綜合運用MATLAB圖像處理函數的能力; 3.了解數字圖像處理基本應用。

二、實驗內容

以大米粒特性測量為例,綜合應用課程中圖像分割、形態(tài)學濾波、圖像增強、圖像特征提取等圖像處理方法,實現大米粒特性自動測量。實驗過程簡述:

1. 讀取和顯示圖像 2. 估計圖像背景 3. 獲取背景均勻的圖像 4. 圖像增強 5. 圖像二值化分割 6. 區(qū)域標記及為彩色處理

7. 測量圖像中的區(qū)域特性(面積、質心等)

8.統(tǒng)計大米粒的特性分布規(guī)律。

(一)研究以下程序,分析程序功能;輸入執(zhí)行各命令行,認真觀察命令執(zhí)行的結 果。熟悉程序中所使用函數的調用方法,改變有關參數,觀察試驗結果。

% 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

(詳見MATLAB IPT的 幫助文檔demo中的Correcting Nonuniform Illumination)

(二)查看MATLAB IPT 幫助文檔,研究其它應用演示

三、實驗設備 1.PIII以上微機; 2.MATLAB6.5;

四、預習與思考

1.預習實驗內容,閱讀教材熟悉實驗原理; 2.查閱資料,熟悉實驗中涉及的有關函數。

3.利用課余時間,采用MATLAB函數編程實現實驗內容

(二)。

五、實驗報告要求

1.簡述試驗的目的和試驗原理;

2.敘述各段程序功能,改變有關函數的參數,分析比較實驗結果; 3.打印出所編寫的實驗程序。4.寫出本實驗的心得體會及意見。

下載基于MATLAB數字圖像處理平臺設計word格式文檔
下載基于MATLAB數字圖像處理平臺設計.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯(lián)網用戶自發(fā)貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發(fā)現有涉嫌版權的內容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯(lián)系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    數字圖像處理

    中南大學 數字圖像處理實驗 實驗名稱:空間濾波和頻域濾波 班級:電子信息0802班 姓名:李哲 學號:0909080609 實驗日期:2010年12月22日 目錄 一,實驗目的?????????????......

    數字圖像matlab結課作業(yè)[模版]

    clear all; close all; I=imread('e:5.tif'); imshow(I); I_gray=rgb2gray(I); figure,imshow(I_gray); I_gray_hist=imhist(I_gray); figure,imshow(I_gray_hist); Ibw=im......

    數字圖像處理_邊緣檢測算子與銳化算子(含MATLAB代碼)

    數字圖像處理實驗五 15生醫(yī) 一、實驗內容 對某一灰度圖像,進行如下處理: (1)分別用Roberts、Prewitt和Sobel邊緣檢測算子進行邊緣檢測; (2)將Roberts、Prewitt和Sobel邊緣檢測算子......

    數字圖像處理讀書筆記

    數字圖像處理讀書筆記 本學期的數字圖像處理課程已經進行了3周了,通過這3周的學習讓我對數字圖像處理有了一定的認知和理解。數字圖像處理又稱為計算機圖像處理,它是指將圖像......

    數字圖像處理實驗報告

    實 驗 報 告 書 系部學生專業(yè)班實驗 名稱姓名名稱 級時間:: : : : 實驗一 直方圖均衡 一、實驗目的 在學習圖像直方圖的概念、計算方法、性質和相關應用基礎上,生成、繪制圖像......

    數字圖像處理實驗報告

    數字圖像處理 實驗報告 目錄 1. 數字圖像處理簡介2. 實驗目的3. 實驗內容4. 實驗結果及代碼展示5. 算法綜述6. Matlab優(yōu)勢7. 總結8. 存在問題 一、 數字圖像處理簡介......

    數字圖像處理實驗報告

    數字圖像處理 實驗報告 班級:通信103 學號:201027201 姓名:計富威 指導教師:孫潔 實驗一 MATLAB數字圖像處理初步 一、實驗目的與要求 1.熟悉及掌握在MATLAB中能夠處理哪些格......

    數字圖像處理實驗報告

    實驗一 數字圖像的獲取 一、實驗目的 1、了解圖像的實際獲取過程。 2、鞏固圖像空間分辨率和灰度級分辨率、鄰域等重要概念。 3、熟練掌握圖像讀、寫、顯示、類型轉換等 mat......

主站蜘蛛池模板: 欧美人与禽zozzo性伦交| 亚洲一区二区三区无码影院| 日本在线一区二区三区欧美| 亚洲国产成人影院播放| 亚洲欧美日韩国产精品一区| 国产美女遭强高潮网站| 亚洲综合无码一区二区三区| 国产精品人妻久久ai换脸| 久久视频在线| 成人免费无码婬片在线观看免费| 男人一边吃奶一边做爰免费视频| 日本丰满大乳人妻无码苍井空| 精品卡一卡二卡3卡高清乱码| 久久精品成人免费观看三| 狠狠色欧美亚洲狠狠色www| 一本无码中文字幕在线观| 日本不卡一区二区三区| 无码人妻久久一区二区三区| 男人边吃奶边做好爽免费视频| 少妇愉情理伦片丰满丰满午夜| 少妇性荡欲视频| 国产日韩综合一区在线观看| 免费看一区无码无a片www| 亚洲欧美日韩一区在线观看| 亚洲无码人妻| 亚洲中文无码线在线观看| 亚洲国精产品一二二线| 中文字幕av无码不卡免费| 亚洲中文色欧另类欧美| 色综合久久久久综合99| 无码精品久久久天天影视| 精品国产色情一区二区三区| 日本一卡2卡3卡4卡5卡精品视频| 夜夜揉揉日日人人| 精品国精品国产自在久国产应用| 中文字幕久久熟女人妻av免费| 免费毛儿一区二区十八岁| 精品乱子伦一区二区三区| 美女无遮挡免费视频网站| 呦系列视频一区二区三区| 白天躁晚上躁麻豆视频|