Matlab圖像處理常用基本函數

之前用Matlab做圖像處理工作時,用到什麼函數就查什麼函數,從沒做過系統的總結,再做的時候又要去查,所以總結還是有必要的~

爲了方便,在此只列出函數名和基本用法,如不特別指出,不詳細說明參數,輔助helpdoc

爭取持續更新~

********************************正文分割線*************************************

圖像讀入

需求

函數

說明

從某一路徑讀入圖片

f = imread(FILENAME)

默認爲當前搜索路徑包括當前路徑,不在搜索路徑內的文件需特別指出

打開對話框選擇圖片文件並讀入

[FileName,PathName,FilterIndex] = uigetfile({'*.jpg;*.tif;*.png;*.gif','All Image Files';'*.*','All Files' },'DialogTitle','.\'); f = imread([PathName, FileName]); 或者f = imread(fullfile(PathName,FileName));

參看左側即可理解,並參看doc。注意,使用路徑和文件名的拼接;以及判斷是否選擇了文件,如if isequal(FileName,0)

查看圖像信息

需求

函數

說明

圖片尺寸

ans = size(f)

ans爲向量

圖片尺寸、大小、數據類型

whos f

顯示更多信息

iminfo('bird.jpg')

圖像顯示

需求

函數

說明

最常用的圖像顯示

顯示圖像:imshow(f)灰度級數爲G:imshow(f,G)指定灰度級範圍:imshow(f,[low,high])自動調整:imshow(f,[])

imshow(f,[])將double型壓縮到[0,1],將uint8

直方圖

imhist(f,bins)

figure顯示

figure, subplot(m,n,p), imshow(f)

m*n塊區域,第p個位置顯示

顏色地圖

colormap

詳情參看help

顏色條

colorbar

詳情參看help

其他的顯示(不常用)

imscrimage

詳情參看help

圖像存儲

將圖像保存爲文件

imwrite(f,'filename')imwrite(f,'filename','ext')imwrite(f,'filename','quality',q)

q爲圖像質量,從0到100,q越小表示壓縮程度越大

將figure保存成圖像

saveas(figure_handle,filename,fileformat)print(figure_handle,filename,fileformat)

fileformat爲存儲格式

常用函數

歸一化等

g = mat2gray(f)g = im2uint8(mat2gray(f))

mat2gray將f映射到[0,1],double型

reshape

g = reshape(f,m,n)

不改變矩陣中元素的數目,以列優先的方式改變尺寸

生成座標

[C,R] = meshgrid(c,r)

生成矩陣座標陣列

複製並拼接矩陣

B = repmat(A, sz1,sz2,...szN)

Apply function to each cell in cell array

[A1,...,Am] = cellfun(func, c1,...,cn, name, value)

簡直最愛啊!!參看doc

生成隨機數

隨機數生成控制 rng均勻分佈r = rand(size)均勻分佈(整數)r = randi(100,1,5)正態分佈r = randn(size)隨機數random

參看doc

待解決

完成特定圖像處理任務的功能函數;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章