原创
Matlab中图像函数大全
2010-12-5 23:06
4713
8
8
分类:
处理器与DSP
功能:
剪切图像.
语法:
I2 = imcrop(I)
X2 = imcrop(X,map)
RGB2 = imcrop(RGB)
I2 = imcrop(I,rect)
X2 = imcrop(X,map,rect)
RGB2 = imcrop(RGB,rect)
MATLAB高级应用——图形及影像处理 344
[...] = imcrop(x,y,...)
[A,rect] = imcrop(...)
[x,y,A,rect] = imcrop(...)
举例
I = imread('ic.tif');
I2 = imcrop(I,[60 40 100 90]);
imshow(I)
figure, imshow(I2)
相关命令:
zoom
56.imfeature
功能:
计算图像区域的特征尺寸.
语法:
stats = imfeature(L,measurements)
stats = imfeature(L,measurements,n)
举例
BW = imread('text.tif');
L = bwlabel(BW);
stats = imfeature(L,'all');
stats(23)
ans =
Area: 89
Centroid: [95.6742 192.9775]
BoundingBox: [87.5000 184.5000 16 15]
MajorAxisLength: 19.9127
MinorAxisLength: 14.2953
Eccentricity: 0.6961
Orientation: 9.0845
ConvexHull: [28x2 double]
附录 MATLAB图像处理命令 345
ConvexImage: [15x16 uint8 ]
ConvexArea: 205
Image: [15x16 uint8 ]
FilledImage: [15x16 uint8 ]
FilledArea: 122
EulerNumber: 0
Extrema: [ 8x2 double]
EquivDiameter: 10.6451
Solidity: 0.4341
Extent: 0.3708
PixelList: [89x2 double]
相关命令:
bwlabel
57.imfinfo
功能:
返回图形文件信息.
语法:
info = imfinfo(filename,fmt)
info = imfinfo(filename)
举例
info = imfinfo('canoe.tif')
info =
Filename:'canoe.tif'
FileModDate: '25-Oct-1996 22:10:39'
FileSize: 69708
Format: 'tif'
FormatVersion: []
Width: 346
Height: 207
BitDepth: 8
ColorType: 'indexed'
FormatSignature: [73 73 42 0]
ByteOrder: 'little-endian'
NewSubfileType: 0
BitsPerSample: 8
Compression: 'PackBits'
PhotometricInterpretation: 'RGB Palette'
MATLAB高级应用——图形及影像处理 346
StripOffsets: [ 9x1 double]
SamplesPerPixel: 1
RowsPerStrip: 23
StripByteCounts: [ 9x1 double]
XResolution: 72
YResolution: 72
ResolutionUnit: 'Inch'
Colormap: [256x3 double]
PlanarConfiguration: 'Chunky'
TileWidth: []
TileLength: []
TileOffsets: []
TileByteCounts: []
Orientation: 1
FillOrder: 1
GrayResponseUnit: 0.0100
MaxSampleValue: 255
MinSampleValue: 0
Thresholding: 1
相关命令:
imread, imwrite
58.imhist
功能:
显示图像数据的柱状图.
语法:
imhist(I,n)
imhist(X,map)
[counts,x] = imhist(...)
举例
I = imread('pout.tif');
imhist(I)
附录 MATLAB图像处理命令 347
相关命令:
histeq
59.immovie
功能:
创建多帧索引图的电影动画.
语法:
mov = immovie(X,map)
举例
load mri
mov = immovie(D,map);
相关命令:
montage
60.imnoise
功能:
增加图像的渲染效果.
语法:
J = imnoise(I,type)
J = imnoise(I,type,parameters)
举例
I = imread('eight.tif');
J = imnoise(I,'salt & pepper',0.02);
imshow(I)
figure, imshow(J)
相关命令:
rand
61.impixel
功能:
确定像素颜色值.
语法:
MATLAB高级应用——图形及影像处理 348
P = impixel(I)
P = impixel(X,map)
P = impixel(RGB)
P = impixel(I,c,r)
P = impixel(X,map,c,r)
P = impixel(RGB,c,r)
[c,r,P] = impixel(...)
P = impixel(x,y,I,xi,yi)
P = impixel(x,y,X,map,xi,yi)
P = impixel(x,y,RGB,xi,yi)
[xi,yi,P] = impixel(x,y,...)
举例
RGB = imread('flowers.tif');
c = [12 146 410];
r = [104 156 129];
pixels = impixel(RGB,c,r)
pixels =
61 59 101
253 240 0
237 37 44
相关命令:
improfile, pixval
62.improfile
功能:
沿线段计算剖面图的像素值.
语法:
c = improfile
c = improfile(n)
c = improfile(I,xi,yi)
c = improfile(I,xi,yi,n)
[cx,cy,c] = improfile(...)
[cx,cy,c,xi,yi] = improfile(...)
[...] = improfile(x,y,I,xi,yi)
[...] = improfile(x,y,I,xi,yi,n)
附录 MATLAB图像处理命令 349
[...] = improfile(...,method)
举例
I = imread('alumgrns.tif');
x = [35 338 346 103];
y = [253 250 17 148];
improfile(I,x,y), grid on
相关命令:
impixel, pixval
63.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);
MATLAB高级应用——图形及影像处理 350
[A,map,alpha] = imread('image.png');
相关命令:
imfinfo, imwrite,fread,double,uint8,uint16
64.imresize
功能:
改变图像大小.
语法:
B = imresize(A,m,method)
B = imresize(A,[mrows ncols],method)
B = imresize(...,method,n)
B = imresize(...,method,h)
65.imrotate
功能:
旋转图像.
语法:
B = imrotate(A,angle,method)
B = imrotate(A,angle,method,'crop')
举例
I = imread('ic.tif');
J = imrotate(I,-4,'bilinear','crop');
imshow(I)
figure, imshow(J)
相关命令:
imcrop, imresize
66.imshow
功能:
显示图像.
语法:
附录 MATLAB图像处理命令 351
imshow(I,n)
imshow(I,[low high])
imshow(BW)
imshow(X,map)
imshow(RGB)
imshow(...,display_option)
imshow(x,y,A,...)
imshow filename
h = imshow(...)
相关命令:
getimage, imread, iptgetpref, iptsetpref, subimage, truesize, warp
67.imwrite
功能:
把图像写入图形文件中.
语法:
imwrite(A,filename,fmt)
imwrite(X,map,filename,fmt)
imwrite(...,filename)
imwrite(...,Param1,Val1,Param2,Val2...)
举例
imwrite(X,map,'flowers.hdf','Compression','none',...
'WriteMode','append')
相关命令:
imfinfo, imread
68.ind2gray
功能:
把检索图像转化为灰度图像.
语法:
I = ind2gray(X,map)
举例
load trees
I = ind2gray(X,map);
imshow(X,map)
figure,imshow(I)
MATLAB高级应用——图形及影像处理 352
相关命令:
gray2ind, imshow, rgb2ntsc
69.ind2rgb
功能:
转化索引图像为RGB真彩图像.
语法:
RGB = ind2rgb(X,map)
相关命令:
ind2gray, rgb2ind
70.iptgetpref
功能:
获取图像处理工具箱参数设置.
语法:
value = iptgetpref(prefname)
举例
value = iptgetpref('ImshowAxesVisible')
value =
off
相关命令:
imshow, iptsetpref
71.iptsetpref
功能:
设置图像处理工具箱参数.
语法:
iptsetpref(prefname,value)
举例
iptsetpref('ImshowBorder','tight')
相关命令:
imshow, iptgetpref, truesize
72.iradon
附录 MATLAB图像处理命令 353
功能:
进行反Radon变换.
语法:
I = iradon(P,theta)
I = iradon(P,theta,interp,filter,d,n)
[I,h] = iradon(...)
举例
P = phantom(128);
R = radon(P,0:179);
I = iradon(R,0:179,'nearest','Hann');
imshow(P)
figure, imshow(I)
相关命令:
radon, phantom
73.isbw
功能:
判断是否为二进制图像.
语法:
flag = isbw(A)
相关命令:
isind, isgray, isrgb
74.isgray
功能:
判断是否为灰度图像.
语法:
flag = isgray(A)
相关命令:
isbw, isind, isrgb
75.isind
MATLAB高级应用——图形及影像处理 354
功能:
判断是否为索引图像.
语法:
flag = isind(A)
相关命令:
isbw, isgray, isrgb
76.isrgb
功能:
判读是否为RGB真彩图像.
语法:
flag = isrgb(A)
相关命令:
isbw, isgray, isind
77.makelut
功能:
创建一个用于applylut函数的lookup表.
语法:
lut = makelut(fun,n)
lut = makelut(fun,n,P1,P2,...)
举例
f = inline('sum(x() >= 2');
lut = makelut(f,2)
lut =
0
0
0
1
0
1
1
1
0
1
1
1
1
1
附录 MATLAB图像处理命令 355
1
1
相关命令:
applylut
78.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
79.mean2
功能:
计算矩阵元素的平均值.
语法:
b = mean2(A)
相关命令:
std2, mean, std
80.medfilt2
功能:
进行二维中值过滤.
语法:
MATLAB高级应用——图形及影像处理 356
B = medfilt2(A,[m n])
B = medfilt2(A)
B = medfilt2(A,'indexed',...)
举例
I = imread('eight.tif');
J = imnoise(I,'salt & pepper',0.02);
K = medfilt2(J);
imshow(J)
figure, imshow(K)
相关命令:
filter2, ordfilt2, wiener2
81.montage
功能:
在矩形框中同时显示多幅图像.
语法:
montage(I)
montage(BW)
montage(X,map)
montage(RGB)
h = montage(...)
举例
load mri
montage(D,map)
附录 MATLAB图像处理命令 357
相关命令:
immovie
82.nlfilter
功能:
进行边沿操作.
语法:
B = nlfilter(A,[m n],fun)
B = nlfilter(A,[m n],fun,P1,P2,...)
B = nlfilter(A,'indexed',...)
举例
B = nlfilter(A,[3 3],'median(x()');
相关命令:
blkproc, colfilt
83.ntsc2rgb
功能: 转换NTSC的值为RGB颜色空间.
语法:
rgbmap = ntsc2rgb(yiqmap)
RGB = ntsc2rgb(YIQ)
相关命令:
rgb2ntsc, rgb2ind, ind2rgb, ind2gray
84.ordfilt2
功能:
进行二维统计顺序过滤.
语法:
B = ordfilt2(A,order,domain)
B = ordfilt2(A,order,domain,S)
MATLAB高级应用——图形及影像处理 358
B = ordfilt2(...,padopt)
相关命令:
medfilt2
85.phantom
功能:
产生一个头部幻影图像.
语法:
P = phantom(def,n)
P = phantom(E,n)
[P,E] = phantom(...)
举例
P = phantom('Modified Shepp-Logan',200);
imshow(P)
相关命令:
radon, iradon
86.pixval
功能:
显示图像像素信息.
语法:
pixval on
pixval off
pixval
pixval(fig,option)
相关命令:
impixel, improfile
87.qtdecomp
功能:
进行四叉树分解.
附录 MATLAB图像处理命令 359
语法:
S = qtdecomp(I)
S = qtdecomp(I,threshold)
S = qtdecomp(I,threshold,mindim)
S = qtdecomp(I,threshold,[mindim maxdim])
S = qtdecomp(I,fun)
S = qtdecomp(I,fun,P1,P2,...)
举例
I = [1 1 1 1 2 3 6 6
1 1 2 1 4 5 6 8
1 1 1 1 10 15 7 7
1 1 1 1 20 25 7 7
20 22 20 22 1 2 3 4
20 22 22 20 5 6 7 8
20 22 20 20 9 10 11 12
22 22 20 20 13 14 15 16];
S = qtdecomp(I,5);
full(S)
ans =
4 0 0 0 2 0 2 0
0 0 0 0 0 0 0 0
0 0 0 0 1 1 2 0
0 0 0 0 1 1 0 0
4 0 0 0 2 0 2 0
0 0 0 0 0 0 0 0
0 0 0 0 2 0 2 0
0 0 0 0 0 0 0 0
相关命令:
qtgetblk, qtsetblk
88.qtgetblk
功能:
获取四叉树分解中的块值.
语法:
[vals,r,c] = qtgetblk(I,S,dim)
MATLAB高级应用——图形及影像处理 360
[vals,idx] = qtgetblk(I,S,dim)
举例
[vals,r,c] = qtgetblk(I,S,4)
vals(:,:,1) =
1 1 1 1
1 1 2 1
1 1 1 1
1 1 1 1
vals(:,:,2) =
20 22 20 22
20 22 22 20
20 22 20 20
22 22 20 20
r =
1
5
c =
1
1
相关命令:
qtdecomp, qtsetblk
89.qtsetblk
功能:
设置四叉树分解中的块值.
语法:
J = qtsetblk(I,S,dim,vals)
举例
newvals = cat(3,zeros(4),ones(4));
J = qtsetblk(I,S,4,newvals)
J =
0 0 0 0 2 3 6 6
0 0 0 0 4 5 6 8
0 0 0 0 10 15 7 7
附录 MATLAB图像处理命令 361
0 0 0 0 20 25 7 7
1 1 1 1 1 2 3 4
1 1 1 1 5 6 7 8
1 1 1 1 9 10 11 12
1 1 1 1 13 14 15 16
相关命令:
qtdecomp, qtgetblk
90.radon
功能: 计算Radon变换.
语法:
R = radon(I,theta)
R = radon(I,theta,n)
[R,xp] = radon(...)
举例
iptsetpref('ImshowAxesVisible','on')
I = zeros(100,100);
I(25:75,25:75) = 1;
theta = 0:180;
[R,xp] = radon(I,theta);
imshow(theta,xp,R,[]), colormap(hot), colorbar
相关命令:
iradon, phantom
91.rgb2gray
功能: 转换RGB图像或颜色映像表为灰度图像.
语法:
I = rgb2gray(RGB)
newmap = rgb2gray(map)
相关命令:
MATLAB高级应用——图形及影像处理 362
ind2gray, ntsc2rgb, rgb2ind, rgb2ntsc
92.rgb2hsv
功能: 转化RGB值为HSV颜色空间.
语法:
hsvmap = rgb2hsv(rgbmap)
HSV = rgb2hsv(RGB)
相关命令:
hsv2rgb, rgbplot
93.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
94.rgb2ntsc
功能: 转化RGB的值为NTSC颜色空间.
语法:
yiqmap = rgb2ntsc(rgbmap)
YIQ = rgb2ntsc(RGB)
附录 MATLAB图像处理命令 363
相关命令:
ntsc2rgb, rgb2ind, ind2rgb, ind2gray
95.rgb2ycbcr
功能: 转化RGB的值为YcbCr颜色空间.
语法:
ycbcrmap = rgb2ycbcr(rgbmap)
YCBCR = rgb2ycbcr(RGB)
相关命令:
ntsc2rgb, rgb2ntsc, ycbcr2rgb
96.rgbplot
功能:
划分颜色映像表.
语法:
rgbplot(map)
举例
rgbplot(jet)
相关命令:
colormap
97.roicolor
功能:
选择感兴趣的颜色区.
语法:
BW = roicolor(A,low,high)
BW = roicolor(A,v)
举例
I = imread('rice.tif');
BW = roicolor(I,128,255);
imshow(I);
MATLAB高级应用——图形及影像处理 364
figure, imshow(BW)
相关命令:
roifilt2, roipoly
98.roifill
功能:
在图像的任意区域中进行平滑插补.
语法:
J = roifill(I,c,r)
J = roifill(I)
J = roifill(I,BW)
[J,BW] = roifill(...)
J = roifill(x,y,I,xi,yi)
[x,y,J,BW,xi,yi] = roifill(...)
举例
I = imread('eight.tif');
c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];
J = roifill(I,c,r);
imshow(I)
figure, imshow(J)
附录 MATLAB图像处理命令 365
相关命令:
roifilt2, roipoly
99.roifilt2
功能:
过滤敏感区域.
语法:
J = roifilt2(h,I,BW)
J = roifilt2(I,BW,fun)
J = roifilt2(I,BW,fun,P1,P2,...)
举例
h = fspecial('unsharp');
J = roifilt2(h,I,BW);
imshow(J)
相关命令:
filter2, roipoly
100.roipoly
功能:
选择一个敏感的多边形区域.
语法:
BW = roipoly(I,c,r)
BW = roipoly(I)
BW = roipoly(x,y,I,xi,yi)
[BW,xi,yi] = roipoly(...)
[x,y,BW,xi,yi] = roipoly(...)
举例
I = imread('eight.tif');
c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];
BW = roipoly(I,c,r);
imshow(I)
MATLAB高级应用——图形及影像处理 366
figure, imshow(BW)
相关命令:
roifilt2, roicolor, roifill
101.std2
功能:
计算矩阵元素的标准偏移.
语法:
b = std2(A)
相关命令:
corr2, mean2
102.subimage
功能:
在一幅图中显示多个图像.
语法:
subimage(X,map)
subimage(I)
subimage(BW)
subimage(RGB)
subimage(x,y,...)
h = subimage(...)
举例
load trees
[X2,map2] = imread('forest.tif');
subplot(1,2,1), subimage(X,map)
subplot(1,2,2), subimage(X2,map2)
相关命令:
附录 MATLAB图像处理命令 367
103.truesize
功能:
调整图像显示尺寸.
语法:
truesize(fig,[mrows mcols])
truesize(fig)
相关命令:
imshow, iptsetpref, iptgetpref
104.uint8
功能:
转换数据为8位无符号整型.
语法:
B = uint8(A)
举例
a = [1 3 5];
b = uint8(a);
whos
Name Size Bytes Class
a 1x3 24 doublearray
b 1x3 3 uint8 array
相关命令:
double, im2double, im2uint8
105.uint16
功能:
转换数据为16位无符号整型.
语法:
I = uint16(X)
MATLAB高级应用——图形及影像处理 368
举例
a = [1 3 5];
b = uint16(a);
whos
Name Size Bytes Class
a 1x3 24 double array
b 1x3 6 uint16 array
相关命令:
double, datatypes, uint8, uint32, int8, int16, int32.
106.warp
功能:
将图像显示到纹理映射表面.
语法:
warp(X,map)
warp(I,n)
warp(BW)
warp(RGB)
warp(z,...)
warp(x,y,z,...)
h = warp(...)
举例
[x,y,z] = cylinder;
I = imread('testpat1.tif');
warp(x,y,z,I);
相关命令:
imshow
附录 MATLAB图像处理命令 369
107.wiener2
功能:
进行二维适应性去噪过滤处理.
语法:
J = wiener2(I,[m n],noise)
[J,noise] = wiener2(I,[m n])
举例
I = imread('saturn.tif');
J = imnoise(I,'gaussian',0,0.005);
K = wiener2(J,[5 5]);
imshow(J)
figure, imshow(K)
相关命令:
filter2, medfilt2
108.ycbcr2rgb
功能: 转化YcbCr值为RGB颜色空间.
语法:
rgbmap = ycbcr2rgb(ycbcrmap)
RGB = ycbcr2rgb(YCBCR)
相关命令:
ntsc2rgb, rgb2ntsc, rgb2ycbcr
109.zoom
功能:
缩放图像.
语法:
zoom on
zoom off
zoom out
MATLAB高级应用——图形及影像处理 370
zoom reset
zoom
zoom xon
zoom yon
zoom(factor)
zoom(fig,option)
相关命令:
imcrop
关闭
站长推荐
/3
文章评论(0条评论)
登录后参与讨论