數(shù)字圖像處理Matlab圖像處理工具箱.ppt
《數(shù)字圖像處理Matlab圖像處理工具箱.ppt》由會員分享,可在線閱讀,更多相關《數(shù)字圖像處理Matlab圖像處理工具箱.ppt(36頁珍藏版)》請在裝配圖網(wǎng)上搜索。
,實驗一: Matlab圖像處理工具箱,,,針對不同的領域需要不同的圖像處理算法, 因此掌握一門高級語言來編寫自己的圖像處理 程序,MATLAB無疑是一個不錯的選擇。,,2.1 Matlab簡介,Matlab (Matrix Laboratory) 是當今很流行的 科學計算軟件。信息技術、計算機技術發(fā)展到今 天,科學計算在各個領域得到了廣泛的應用,在 諸如控制論、時間序列分析、系統(tǒng)仿真、圖像信 號處理等方面產(chǎn)生了大量的矩陣及其他計算問 題。Matlab軟件適時推出,為人們提供了一個 方便的數(shù)值計算和動態(tài)仿真平臺。,,Matlab簡介-特點,1 高效、簡單的程序環(huán)境 2 強大的數(shù)值運算功能 3 豐富的工具箱,Matlab是一個交互式的系統(tǒng),其開發(fā)環(huán)境是MATLAB語言的基礎和核心部分,全部功能都能在開發(fā)環(huán)境中實現(xiàn)。,提供大量的矩陣及其它運算函數(shù),方便地進行一些很復雜的計算,而且運算效率極高。Matlab命令和數(shù)學中的符號、公式非常接近,可讀性強,容易掌握。,根據(jù)各專門領域中的特殊需要提供了許多可選的工具箱,已有涉及數(shù)學、控制、通信、信號處理、圖像處理、經(jīng) 濟、地理等多種學科的20多種Matlab工具箱投入應用。,,可以在提示符后鍵入各種命令,變量管理中心,可以顯示變量的名稱、尺寸、字節(jié)和類別等信息。,提供當前路徑下文件的操作。,顯示已執(zhí)行過的命令及相應時間。,系統(tǒng)中全部程序和幫助文件的管理和啟動功能。,Matlab簡介-開發(fā)環(huán)境,,Matlab簡介-M文件,Matlab通常使用命令驅(qū)動方式,當單行命令輸 入時,Matlab立即處理并顯示結果,同時將運行 說明和命令存入歷史命令窗口。Matlab語句的磁 盤文件稱作M文件,因為這些文件名的末尾是.M 形式。 M文件有兩種類型:命令(Script)文件 函數(shù)(function)文件,,2.1 MATLAB基礎語法,2.1.1 變量名的命名規(guī)則 1.必須以字母開頭,后可跟字母,數(shù)字和下劃線 2.區(qū)分大小寫 3.不超過31個字符,,Matlab常用命令,,clear 工作空間中清除所有變量,clc 清除命令窗口中顯示內(nèi)容,help 獲得在線幫助,命令 功能,clf 清除圖形窗口內(nèi)容,who 列出當前工作空間中的變量,whos 列出當前工作空間中的變量及信息,,2.2 Matlab常用的基本命令,(1) 全0矩陣 A=zeros(n): 生成nn的全0矩陣; A=zeros(m,n): 生成mn的全0矩陣; A=zeros(a1,a2,a3,…): 生成a1a2a3…的全0 矩 A=zeros(size(B)): 生成與矩陣B大小相同的全0矩陣。,1. 常用矩陣的生成,,(2) 全1矩陣 A=ones(n): 生成nn的全1矩陣; A=ones(m,n): 生成mn的全1矩陣; A=ones([m,n]): 生成mn的全1矩陣; A=ones(a1,a2,a3,…): 生成a1a2a3…的全1矩陣; A=onse(size(B)): 生成與矩陣B大小相同的全1矩陣。,,(3) 單位矩陣 A=eye(n): 生成nn的單位矩陣; A=eye(m,n): 生成mn的單位矩陣; A=eye([m,n]): 生成mn的單位矩陣; A=eye(size(B)): 生成與矩陣B大小相同的單位矩陣。,,(4) 均勻分布的隨機矩陣 A=rand(n): 生成nn的隨機矩陣; A=rand(m,n): 生成mn的隨機矩陣; A=rand([m,n]): 生成mn的隨機矩陣; A=rand(a1,a2,a3,…): 生成a1a2a3…的隨機矩陣; A=rand(size(B)): 生成與矩陣B大小相同的隨機矩陣。,,* x=[1 2 3 4 5] %產(chǎn)生15的數(shù)組 * b=x(3) %尋訪數(shù)組x的第3個元素 * b=x([1 2 5]) %尋訪x的第1、2、5元素 * b=x(1:3) %尋訪前三個元素 * b=x(3:end) %尋訪第三個元素到最后一個 * b=x(find(x3)) %由大于3的元素構成數(shù)組 * b=x(3:-1:1) %由前3個數(shù)倒排成數(shù)組 * b=x([1 2 3 4 4 3 2 1]) %對元素的重復訪問,2. 尋訪矩陣中的數(shù)據(jù),,* x=[1,2,3;4,5,6;7,8,9] %產(chǎn)生33的矩陣 * b=x(find(x4)) %大于4的元素構成數(shù)組 * x(2,2)=10 %第2行第2列值改為10 * x(3,:)=20 %第3行的值改為20 * x=ones(5) %產(chǎn)生55全為1的矩陣 * x(2:4,2:4)=0 %第2、3、4行的第2、3、4列元素改0,3. 修改數(shù)據(jù),,A=[3:6;1:4] %產(chǎn)生24的矩陣 s=size(A) %返回s為[行數(shù) 列數(shù)] [r,c]=size(A) %返回r為行數(shù),c為列數(shù) r=size(A,1) %只返回行數(shù) c=size(A,2) %只返回列數(shù) n=length(A) %返回行數(shù)、列數(shù)最大者,5. 矩陣的規(guī)模,,2.3 圖像處理工具箱簡介,Matlab是一種基于向量(數(shù)組)而不是標量的高級程序語言,因而Matlab從本質(zhì)上就提供了對圖像的支持。數(shù)字圖像實際上是一組有序離散的數(shù)據(jù),使用Matlab可以對這些離散數(shù)據(jù)形成的矩陣進行一次性的處理。,,Matlab對圖像的處理功能主要集中在它的圖像處理工具箱(Image Processing Toolbox)中。,圖像處理工具箱是由一系列支持圖像處理操作的函數(shù)組成,可以進行諸如幾何操作、線性濾波和濾波器設計、圖像變換、圖像分析與圖像增強、數(shù)學形態(tài)學處理等圖像處理操作。,,圖像處理工具箱主要有:,* Image Acquisition Toolbox * Image Processing Toolbox * Signal Processing Toolbox * Wavelet Toolbox * Statistics Toolbox * Bioinformatics Toolbox * Matlab Compiler * Matlab COM builder,,2.4 Matlab中的圖像類型及類型轉(zhuǎn)換,Matlab中的數(shù)字圖像是由一個或多個矩陣表示的,Matlab強大的矩陣運算功能完全可以應用于圖像,那些適用于矩陣運算的語法對Matlab中的數(shù)字圖像同樣適用。,2.4.1 圖像和圖像數(shù)據(jù),缺?。篸ouble (64位浮點數(shù)) uint8(無符號8位整型),,2.4.2 圖像處理工具箱所支持的圖像類型,圖像處理工具箱支持4種圖像類型,它們是: 真彩色圖像(RGB images) 索引色圖像(index images) 灰度圖像(intensity images) 二值圖像(binary images) 此外,Matlab還支持由多幀圖像組成的圖像序列。,,2.4.4 圖像文件的顯示,Matlab 7.0圖像處理工具箱提供了一個高級的圖像顯 示函數(shù)imshow。其語法格式如下, 灰度圖像 imshow(I) imshow(I, n) imshow(I, [low high]) ,其中n為灰度級數(shù)目,缺省值為256。[low high]為圖像數(shù)據(jù)的值域。,,2. 灰度圖像及其顯示,一幅灰度圖像是一個數(shù)據(jù)矩陣 I,其中數(shù)據(jù)均代表了 在一定范圍內(nèi)的顏色灰度值。Matlab 把灰度圖像用數(shù) 據(jù)矩陣的形式進行存儲,每個元素則表示了圖像中的每 個像素。矩陣元素可以是doudle、uint8整數(shù)類型。 多數(shù)情況下,灰度圖像很少和顏色映像表一起保存, 但在顯示灰度圖像時,Matlab 仍然在后臺使用系統(tǒng)預 定義的缺省灰度顏色映像表。,,(1) 灰度圖像顯示最基本的調(diào)用格式 imshow(I) Matlab 中 imshow函數(shù)使用一個灰度級系統(tǒng)調(diào)色板 (R=G=B)來顯示灰度圖像。如果I是double型,若 像素值為0.0,則顯示為黑色,1.0則顯示為白色,0.0 和1.0之間的像素值將顯示為灰影。,imshow函數(shù)顯示灰度圖像,,imshow(I, n) 例如:以下語句將顯示一幅32個灰度級的圖像I。 imshow(I, 32),(2) 使用明確指定的灰度級數(shù)目,(3) 某些情況下,可能將一些超出數(shù)據(jù)慣例范圍的數(shù) 據(jù)顯示為一幅灰度圖像, 對于double型數(shù)組為[0,1],對于uint8型數(shù)組為 [0,255],,為了將超過數(shù)據(jù)范圍的數(shù)據(jù)顯示為圖像,用戶可以直 接定義數(shù)據(jù)范圍,其調(diào)用格式如下, imshow(I,[low high]) 其中l(wèi)ow、high分別為數(shù)據(jù)的最小和最大值。 如果用戶使用一個空矩陣[ ]指定數(shù)據(jù)范圍, imshow將 自動進行數(shù)據(jù)標度。,,補充:多幅圖像文件的顯示,figure,imshow 功能:新建一個圖像窗口,用于顯示新圖像(從而 不讓新的圖像覆蓋原來圖像)。,1.創(chuàng)建新的圖像窗口,每個圖像顯示在一個窗口中,調(diào)用imshow函數(shù)顯示圖像,如下頁圖所示。 I=imread(′rice.png′); J=filter2([1 2;-1 -2],I) ; %用模板[1 2;-1 -2]對 圖像濾波 imshow(I) figure,imshow(J,[ ]),思考:如果沒有figure的話,將產(chǎn)生什么結果?,,用imshow顯示濾波前后的圖像,,subplot(m,n,k),imshow %繪制并顯示m行n 列第k個子圖 例: X1=imread(rice.png); X2=imread(coins.png); X3=imread(bag.png); subplot(1,3,1),imshow(X1) subplot(1,3,2),imshow(X2) subplot(1,3,3),imshow(X3),2. 用子圖、多個圖像顯示在一個圖像窗口中,,子圖顯示效果,,圖像的運算,imadd(X,Y); Y可以是另一幅圖像,也可以是一個常數(shù)。 例1: I=imread(rice.png); J=imread(cameraman.tif); K=imadd(I,J); subplot(1,3,1),imshow(I); subplot(1,3,2) ,imshow(J); subplot(1,3,3),imshow(K),△ 圖像的加法,,,例2:實現(xiàn)亮度的增加 RGB=imread(greens.jpg); RGB1=imadd(RGB,50); subplot(1,2,1);imshow(RGB); subplot(1,2,2);imshow(RGB1);,,△ 圖像的減法,Z=imsubtract(X,Y); 計算X與Y的像素之差,負數(shù)將被截取為0。 Z=imabsdiff(X,Y); 計算X與Y的像素之差的絕對值,結果為非負的。,,圖像的空間變換,將輸入圖像的像素映射到輸出圖像的新位置,如調(diào)整 圖像大小、旋轉(zhuǎn)、剪切等。,△ 調(diào)整圖像的大小-imresize,Y=imresize(X,M); 其中M>1表示放大,0<M<1表示縮小。 Y=imresize(X,[M N]); 產(chǎn)生一個指定的MN大小的圖像Y。,,△ 圖像的旋轉(zhuǎn)-imrotate,Y=imrotate(X, angle, method); Y=imrotate(X, angle, method, ’crop’); 其中angle為逆時針旋轉(zhuǎn)的角度,method為插值方法,指定‘crop’參數(shù)對旋轉(zhuǎn)后的圖像進行剪切。,例: I=imread(lena.bmp); J1=imrotate(I,45); J2=imrotate(I,45,crop); subplot(1,3,1),imshow(I); subplot(1,3,2),imshow(J1); subplot(1,3,3),imshow(J2);,,- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 數(shù)字圖像 處理 Matlab 圖像 工具箱
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權,請勿作他用。
鏈接地址:http://www.hcyjhs8.com/p-2836464.html