语法:
I2 = im2double(I1)
RGB2 = im2double(RGB1)
BW2 = im2double(BW1)
X2 = im2double(X1,'indexed')
相关命令:
double, im2uint8, uint8
50.im2uint8
功能:转换图像阵列为8位无符号整型.
语法:
I2 = im2uint8(I1)
RGB2 = im2uint8(RGB1)
BW2 = im2uint8(BW1)
X2 = im2uint8(X1,'indexed')
MATLAB高级应用——图形及影像处理 342
相关命令:
im2uint16, double, im2double, uint8, imapprox, uint16
51.im2uint16
功能:转换图像阵列为16位无符号整型.
语法:
I2 = im2uint16(I1)
RGB2 = im2uint16(RGB1)
X2 = im2uint16(X1,'indexed')
相关命令:
im2uint8, double, im2double, uint8, uint16, imapprox
52.imadjust
功能:调整图像灰度值或颜色映像表.
语法:
J = imadjust(I,[low high],[bottom top],gamma)
newmap = imadjust(map,[low high],[bottom top],gamma)
RGB2 = imadjust(RGB1,...)
举例
I = imread('pout.tif');
J = imadjust(I,[0.3 0.7],[]);
imshow(I)
figure, imshow(J)
相关命令:
brighten, histeq
53.imapprox
功能:对索引图像进行近似处理.
语法:
[Y,newmap] = imapprox(X,map,n)
附录 MATLAB图像处理命令 343
[Y,newmap] = imapprox(X,map,tol)
Y = imapprox(X,map,newmap)
[...] = imapprox(...,dither_option)
相关命令:
cmunique, dither, rgb2ind
54.imcontour
功能:创建图像数据的轮廓图.
语法:
imcontour(I,n)
imcontour(I,v)
imcontour(x,y,...)
imcontour(...,LineSpec)
[C,h] = imcontour(...)
举例
I = imread('ic.tif');
imcontour(I,3)
相关命令:
clabel, contour, LineSpec
55.imcrop
功能:剪切图像.
语法:
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
MaxSamplue: 255
MinSamplue: 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(Incur)
P = impixel(X,map,c,r)
P = impixel(RGB,c,r)
[carp] = 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
功能:把图像写入图形文件中.