MATLAB图像处理常用函数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.MATLAB基础

1.Linspace

功能:

创建从初值开始到终值结束,有n个元素的行向量x。

语法:

X=linspace(初值,终值,n)

2.Logspace

功能:

创建从初值开始到终值结束,有n个元素对数分隔量x。

语法:

X=logspace(初值,终值,n)

3.Ones

功能:

创建元素全为1的数组。

语法:

A=ones(n) (n*n的1数组)

A=ones(r,c) (r*c的1数组)

4.zeros

功能:

创建元素全为0的数组。

语法:

A=zeros(n) (n*n的0数组)

A=zeros(r,c) (r*c的0数组)

5.Eye

功能:

创建单位矩陈。

语法:

A=eye(n)

6.rand

功能:

创建随机矩阵。

语法:

A=rand (m,n)

7.randn

功能:创建正态分布的随机矩阵。

语法:

A=randn(m,n)

8.Find

功能:

寻找非零元素下标。

语法:

I = find(X)

[I,J] = find(X)

[I,J,V] = find(X)

9.Size

功能:

返回矩阵大小。

语法:

D = size(X)

[M,N] = size(X)

10.Length

功能:

获得已知数组的规模。

语法:

N=length(A)

11.Reshape

功能:

改变数组维数、大小。

语法:

X=reshape(A,m,n)

12.Repmat

功能:

铺放模块维数

语法:

X = repmat(A,m,n)

13.Diag

功能:

提取矩阵的对角元素,并返回给列向量。语法:

diag(V,K)

14.Flipud

功能:

将矩阵上下翻转。

语法:

X=flipud(A)

15.Fliplr

功能:

将矩阵左右翻转。

语法:

X=fliplr(A)

16.All

功能:

所有元素非零为真。

语法:

X=all(A)

17.Any

功能:

所有元素非全零为真。

语法;

X=any(A)

二.转换图像类型:

1.Dither

功能:

通过抖动增加外观颜色分辨率,转换图像。语法:

X = dither(RGB,map)

BW = dither(I)

相关命令:

rgb2ind

2.im2bw

功能:

转换图像为二进制图像。

语法:

BW = im2bw(I,level)

BW = im2bw(X,map,level)

BW = im2bw(RGB,level)

举例

load trees BW = im2bw(X,map,0.4); imshow(X,map)

figure, imshow(BW)

相关命令:

ind2gray, rgb2gray

3.ind2gray

功能:

把检索图像转化为灰度图像。

语法:

I = ind2gray(X,map)

举例

load trees

I = ind2gray(X,map);

imshow(X,map)

figure,imshow(I)

相关命令:

gray2ind, imshow, rgb2ntsc

4.ind2rgb

功能:

转化索引图像为RGB 真彩图像。语法:

RGB = ind2rgb(X,map)

相关命令:

ind2gray, rgb2ind

5.mat2gray

功能:

转化矩阵为灰度图像。

语法:

I = mat2gray(A,[amin amax])

I = mat2gray(A)

举例

I = imread('rice.tif');

J = filter2(fspecial('sobel'),I);

K = mat2gray(J);

imshow(I)

figure, imshow(K)

相关命令:

gray2ind

6.gray2ind

功能:

转换灰度图像为索引图像。

语法:

[X,map] = gray2ind(I,n)

相关命令:

ind2gray

7.grayslice

功能:

从灰度图像创建索引图像。

语法:

X = grayslice(I,n)

X = grayslice(I,v)

举例

I = imread('ngc4024m.tif');

X = grayslice(I,16);

imshow(I)

figure, imshow(X,jet(16))

相关命令:

gray2ind

8.rgb2gray

功能:

转换RGB 图像或颜色映像表为灰度图像。语法:

I = rgb2gray(RGB)

newmap = rgb2gray(map)

相关命令:

ind2gray, ntsc2rgb, rgb2ind, rgb2ntsc

9.rgb2ind

功能:

转化RGB 图像为索引图像。

语法:

[X,map] = rgb2ind(RGB,tol)

[X,map] = rgb2ind(RGB,n)

X = rgb2ind(RGB,map)

[...] = rgb2ind(...,dither_option)

举例

RGB = imread('flowers.tif');

[X,map] = rgb2ind(RGB,128);

imshow(X,map)

相关命令:cmunique, dither, imapprox, ind2rgb, rgb2gray

三.读写和显示图像:

1.imread

功能:

从图形文件中读取图像。

语法:

A = imread(filename,fmt)

[X,map] = imread(filename,fmt)

[...] = imread(filename)

[...] = imread(...,idx) (TIFF only)

[...] = imread(...,ref) (HDF only)

[...] = imread(...,’BackgroundColor’,BG) (PNG only)

[A,map,alpha] = imread(...) (PNG only)

举例

[X,map] = imread('flowers.tif',6);

info = imfinfo('skull.hdf');

[X,map] =

imread('skull.hdf',info(4).Reference);

bg = [255 0 0];

A =

imread('image.png','BackgroundColor',bg); [A,map,alpha] = imread('image.png');

相关命令:

imfinfo, imwrite,fread,double,uint8,uint16

2.imwrite

功能:

把图像写入图形文件中。

语法:

imwrite(A,filename,fmt)

imwrite(X,map,filename,fmt)

imwrite(...,filename)

imwrite(...,Param1,Val1,Param2,Val2...)

举例

imwrite(X,map,'flowers.hdf','Compression','no ne',...

'WriteMode','append')

相关命令:

imfinfo, imread

3. imfinfo

相关文档
最新文档