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