搜档网
当前位置:搜档网 › matlab图像处理函数汇总(排版后)

matlab图像处理函数汇总(排版后)

matlab图像处理函数汇总(排版后)
matlab图像处理函数汇总(排版后)

matlab图像处理函数汇总

1.applylut

功能: 在二进制图像中利用lookup表进行边沿操作.

语法:

A = applylut(BW,lut)

举例

lut = makelut('sum(x(:)) == 4',2); BW1 = imread('text.tif');

BW2 = applylut(BW1,lut);

imshow(BW1)

figure, imshow(BW2)

相关命令:

makelut

2.bestblk

功能:确定进行块操作的块大小.

语法:

siz = bestblk([m n],k)

[mb,nb] = bestblk([m n],k)

举例

siz = bestblk([640 800],72)

siz =

64 50

相关命令:

blkproc

3.blkproc

MATLAB高级应用——图形及影像处理 320 功能:实现图像的显式块操作.

语法:

B = blkproc(A,[m n],fun)

B = blkproc(A,[m n],fun,P1,P2,...)

B = blkproc(A,[m n],[mborder nborder],fun,...)

B = blkproc(A,'indexed',...)

举例

I = imread('alumgrns.tif');

I2 = blkproc(I,[8

8],'std2(x)*ones(size(x))'); imshow(I)

figure, imshow(I2,[]);

相关命令: colfilt, nlfilter,inline

4.brighten

功能: 增加或降低颜色映像表的亮度. 语法:

brighten(beta)

newmap = brighten(beta)

newmap = brighten(map,beta) brighten(fig,beta)

相关命令:

imadjust, rgbplot

5.bwarea

功能: 计算二进制图像对象的面积. 语法:

total = bwarea(BW)

举例

BW = imread('circles.tif'); imshow(BW);

附录 MATLAB图像处理命令 321 bwarea(BW)

ans =

15799

相关命令:

bweuler, bwperim

6.bweuler.

功能: 计算二进制图像的欧拉数.

语法:

eul = bweuler(BW,n)

举例

BW = imread('circles.tif'); imshow(BW);

bweuler(BW)

ans =

-2

相关命令:

bwmorph, bwperim

7.bwfill

功能: 填充二进制图像的背景色.

语法:

BW2 = bwfill(BW1,c,r,n)

BW2 = bwfill(BW1,n)

[BW2,idx] = bwfill(...)

BW2 = bwfill(x,y,BW1,xi,yi,n)

[x,y,BW2,idx,xi,yi] = bwfill(...) BW2 = bwfill(BW1,'holes',n)

[BW2,idx] = bwfill(BW1,'holes',n)

举例

MATLAB高级应用——图形及影像处理 322 BW1 =[1 0 0 0 0 0 0 0

1 1 1 1 1 0 0 0

1 0 0 0 1 0 1 0

1 0 0 0 1 1 1 0

1 1 1 1 0 1 1 1

1 0 0 1 1 0 1 0

1 0 0 0 1 0 1 0

1 0 0 0 1 1 1 0]

BW2 = bwfill(BW1,3,3,8)

BW2 =

1 0 0 0 0 0 0 0

1 1 1 1 1 0 0 0

1 1 1 1 1 0 1 0

1 1 1 1 1 1 1 0

1 1 1 1 0 1 1 1

1 0 0 1 1 0 1 0

1 0 0 0 1 0 1 0

1 0 0 0 1 1 1 0

I = imread('blood1.tif');

BW3 = ~im2bw(I);

BW4 = bwfill(BW3,'holes');

imshow(BW3)

figure, imshow(BW4)

相关命令:

bwselect, roifill

8.bwlabel

功能:标注二进制图像中已连接的部分. 语法:

附录 MATLAB图像处理命令 323

L = bwlabel(BW,n)

[L,num] = bwlabel(BW,n)

举例

BW = [1 1 1 0 0 0 0 0

1 1 1 0 1 1 0 0

1 1 1 0 1 1 0 0

1 1 1 0 0 0 1 0

1 1 1 0 0 0 1 0

1 1 1 0 0 0 1 0

1 1 1 0 0 1 1 0

1 1 1 0 0 0 0 0] L = bwlabel(BW,4)

L =

1 1 1 0 0 0 0 0

1 1 1 0

2 2 0 0

1 1 1 0

2 2 0 0

1 1 1 0 0 0 3 0

1 1 1 0 0 0 3 0

1 1 1 0 0 0 3 0

1 1 1 0 0 3 3 0

1 1 1 0 0 0 0 0

[r,c] = find(L==2);

rc = [r c]

rc =

2 5

3 5

2 6

3 6

相关命令:

bweuler, bwselect

9.bwmorph

功能:提取二进制图像的轮廓.

语法:

BW2 = bwmorph(BW1,operation)

BW2 = bwmorph(BW1,operation,n)

举例

BW1 = imread('circles.tif'); MATLAB高级应用——图形及影像处理 324 imshow(BW1);

BW2 = bwmorph(BW1,'remove');

BW3 = bwmorph(BW1,'skel',Inf); imshow(BW2)

figure, imshow(BW3)

相关命令:

bweuler, bwperim, dilate, erode 10.bwperim

功能:计算二进制图像中对象的周长.

语法:

BW2 = bwperim(BW1,n)

举例

BW1 = imread('circbw.tif');

BW2 = bwperim(BW1,8);

imshow(BW1)

figure, imshow(BW2)

附录 MATLAB图像处理命令 325

相关命令:

bwarea, bweuler, bwfill

11.bwselect

功能:在二进制图像中选择对象.

语法:

BW2 = bwselect(BW1,c,r,n)

BW2 = bwselect(BW1,n)

[BW2,idx] = bwselect(...)

举例

BW1 = imread('text.tif');

c = [16 90 144];

r = [85 197 247];

BW2 = bwselect(BW1,c,r,4);

imshow(BW1)

figure, imshow(BW2)

相关命令:

bwfill, bwlabel, impixel, roipoly,

roifill

12.cmpermute

MATLAB高级应用——图形及影像处理 326

功能:调整颜色映像表中的颜色.

语法:

[Y,newmap] = cmpermute(X,map)

[Y,newmap] = cmpermute(X,map,index)

举例

To order a colormap by luminance, use: ntsc = rgb2ntsc(map);

[dum,index] = sort(ntsc(:,1));

[Y,newmap] = cmpermute(X,map,index); 相关命令:

randperm

13.cmunique

功能:查找颜色映像表中特定的颜色及相应

的图像.

语法:

[Y,newmap] = cmunique(X,map)

[Y,newmap] = cmunique(RGB)

[Y,newmap] = cmunique(I)

相关命令:

gray2ind, rgb2ind

14.col2im

功能:将矩阵的列重新组织到块中. 语法:

A = col2im(B,[m n],[mm nn],block_type) A = col2im(B,[m n],[mm nn])

相关命令:

blkproc, colfilt, im2col, nlfilter

15.colfilt

功能:利用列相关函数进行边沿操作.

语法:

B = colfilt(A,[m n],block_type,fun)

B = colfilt(A,[m

n],block_type,fun,P1,P2,...)

B = colfilt(A,[m n],[mblock

nblock],block_type,fun,...)

B = colfilt(A,'indexed',...)

附录 MATLAB图像处理命令 327

相关命令:

blkproc, col2im, im2col, nlfilter

16.colorbar

功能:显示颜色条.

语法:

colorbar('vert')

colorbar('horiz')

colorbar(h)

colorbar

h = colorbar(...)

举例

I = imread('blood1.tif');

h = fspecial('log');

I2 = filter2(h,I);

imshow(I2,[]), colormap(jet(64)), colorbar

17.conv2

功能:进行二维卷积操作.

语法:

C = conv2(A,B)

C = conv2(hcol,hrow,A)

C = conv2(...,shape)

举例

A = magic(5)

A =

17 24 1 8 15

23 5 7 14 16

4 6 13 20 22

MATLAB高级应用——图形及影像处理 328

10 12 19 21 3

11 18 25 2 9

B = [1 2 1;0 2 0;3 1 3]

B =

1 2 1

0 2 0

3 1 3

C = conv2(A,B)

C =

17 58 66 34 32 38 15

23 85 88 35 67 76 16

55 149 117 163 159 135 67

79 78 160 161 187 129 51

23 82 153 199 205 108 75

30 68 135 168 91 84 9

33 65 126 85 104 15 27

相关命令:

filter2

18.convmtx2

功能:计算二维卷积矩阵.

语法:

T = convmtx2(H,m,n)

T = convmtx2(H,[m n])

相关命令:

conv2

19.convn

功能: 计算n维卷积.

语法:

C = convn(A,B)

C = convn(A,B,shape)

相关命令:

conv2

20.corr2

功能:计算两个矩阵的二维相关系数.

附录 MATLAB图像处理命令 329

语法:

r = corr2(A,B)

相关命令:

std2

21.dct2

功能:进行二维离散余弦变换. 语法:

B = dct2(A)

B = dct2(A,m,n)

B = dct2(A,[m n])

举例

RGB = imread('autumn.tif');

I = rgb2gray(RGB);

J = dct2(I);

imshow(log(abs(J)),[]),

colormap(jet(64)), colorbar

J(abs(J) < 10) = 0;

K = idct2(J)/255;

imshow(K)

相关命令:

fft2, idct2, ifft2

22.dctmtx

功能:MATLAB高级应用——图形及影像处理330计算离散余弦变换矩阵.

语法:

D = dctmtx(n)

相关命令:

dct2

23.dilate

功能:放大二进制图像.

语法:

BW2 = dilate(BW1,SE)

BW2 = dilate(BW1,SE,alg)

BW2 = dilate(BW1,SE,...,n)

举例

BW1 = imread('text.tif');

SE = ones(6,2);

BW2 = dilate(BW1,SE);

imshow(BW1)

figure, imshow(BW2)

相关命令:

bwmorph, erode

24.dither

功能:通过抖动增加外观颜色分辨率,转换图像.

语法:

X = dither(RGB,map)

BW = dither(I)

相关命令:

rgb2ind

25.double

附录 MATLAB图像处理命令 331

功能:转换数据为双精度型.

语法:

B = double(A)

举例

A = imread('saturn.tif');

B = sqrt(double(A));

相关命令:

im2double, im2uint, uint8

26.edge

功能:识别强度图像中的边界.

语法:

BW = edge(I,'sobel')

BW = edge(I,'sobel',thresh)

BW = edge(I,'sobel',thresh,direction) [BW,thresh] = edge(I,'sobel',...)

BW = edge(I,'prewitt')

BW = edge(I,'prewitt',thresh)

BW = edge(I,'prewitt',thresh,direction) [BW,thresh] = edge(I,'prewitt',...) BW = edge(I,'roberts')

BW = edge(I,'roberts',thresh)

[BW,thresh] = edge(I,'roberts',...) BW = edge(I,'log')

BW = edge(I,'log',thresh)

BW = edge(I,'log',thresh,sigma) [BW,threshold] = edge(I,'log',...)

BW = edge(I,'zerocross',thresh,h) [BW,thresh] = edge(I,'zerocross',...) BW = edge(I,'canny')

BW = edge(I,'canny',thresh)

BW = edge(I,'canny',thresh,sigma) MATLAB高级应用——图形及影像处理 332 [BW,threshold] = edge(I,'canny',...)

举例

I = imread('rice.tif');

BW1 = edge(I,'prewitt');

BW2 = edge(I,'canny');

imshow(BW1);

figure, imshow(BW2)

27.erode 功能:弱化二进制图像的边界.

语法:

BW2 = erode(BW1,SE)

BW2 = erode(BW1,SE,alg)

BW2 = erode(BW1,SE,...,n)

举例

BW1 = imread('text.tif');

SE = ones(3,1);

BW2 = erode(BW1,SE);

imshow(BW1)

figure, imshow(BW2)

相关命令:

bwmorph, dilate

附录 MATLAB图像处理命令 333

28.fft2

功能:进行二维快速傅里叶变换.

语法:

B = fft2(A)

B = fft2(A,m,n)

举例

load imdemos saturn2

imshow(saturn2)

B = fftshift(fft2(saturn2));

imshow(log(abs(B)),[]),

colormap(jet(64)), colorbar

相关命令:

dct2, fftshift, idct2, ifft2

29.fftn

功能: 进行n维快速傅里叶变换.

语法:

B = fftn(A)

B = fftn(A,siz)

相关命令:

fft2, ifftn

30.fftshif t

MATLAB高级应用——图形及影像处理 334 功能:把快速傅里叶变换的DC组件移到光谱中心.

语法:

B = fftshift(A)

举例

B = fftn(A);

C = fftshift(B);

相关命令:

fft2, fftn, ifftshift

31.filter2

功能:进行二维线性过滤操作.

语法:

B = filter2(h,A)

B = filter2(h,A,shape)

举例

A = magic(6)

A =

35 1 6 26 19 24

3 32 7 21 23 25

31 9 2 22 27 20

8 28 33 17 10 15

30 5 34 12 14 16

4 36 29 13 18 11

h = fspecial('sobel')

h =

1 2 1

0 0 0

-1 -2 -1

B = filter2(h,A,'valid')

B =

-8 4 4 -8

-23 -44 -5 40

-23 -50 1 40

-8 4 4 -8

相关命令:

conv2, roifilt2

32.freqspace

附录 MATLAB图像处理命令 335

功能:确定二维频率响应的频率空间.

语法:

[f1,f2] = freqspace(n)

[f1,f2] = freqspace([m n])

[x1,y1] = freqspace(...,'meshgrid') f = freqspace(N)

f = freqspace(N,'whole')

相关命令:

fsamp2, fwind1, fwind2

33.freqz2

功能:计算二维频率响应.

语法: [H,f1,f2] = freqz2(h,n1,n2)

[H,f1,f2] = freqz2(h,[n2 n1])

[H,f1,f2] = freqz2(h,f1,f2)

[H,f1,f2] = freqz2(h)

[...] = freqz2(h,...,[dx dy]) [...] = freqz2(h,...,dx)

freqz2(...)

举例

Hd = zeros(16,16);

Hd(5:12,5:12) = 1;

Hd(7:10,7:10) = 0;

h = fwind1(Hd,bartlett(16));

colormap(jet(64))

freqz2(h,[32 32]); axis ([-1 1 -1 1 0 1])

34.fsamp2

MATLAB高级应用——图形及影像处理 336

功能:用频率采样法设计二维FIR过滤器.

语法:

h = fsamp2(Hd)

h = fsamp2(f1,f2,Hd,[m n])

举例

[f1,f2] = freqspace(21,'meshgrid');

Hd = ones(21);

r = sqrt(f1.^2 + f2.^2);

Hd((r0.5)) = 0;

colormap(jet(64))

mesh(f1,f2,Hd)

相关命令:

conv2, filter2, freqspace, ftrans2, fwind1, fwind2

35.fspecial

功能:创建预定义过滤器.

语法:

h = fspecial(type)

h = fspecial(type,parameters)

举例

I = imread('saturn.tif');

h = fspecial('unsharp',0.5);

I2 = filter2(h,I)/255;

imshow(I)

figure, imshow(I2)

相关命令:

conv2, edge, filter2, fsamp2, fwind1, fwind2

36.ftrans2

功能:通过频率转换设计二维FIR过滤器. 语法:

附录 MATLAB图像处理命令 337

h = ftrans2(b,t)

h = ftrans2(b)

举例

colormap(jet(64))

b = remez(10,[0 0.05 0.15 0.55 0.65 1],[0

0 1 1 0 0]);

[H,w] = freqz(b,1,128,'whole');

plot(w/pi-1,fftshift(abs(H)))

相关命令:

conv2, filter2, fsamp2, fwind1, fwind2

37.fwind1

功能:用一维窗口方法设计二维FIR过滤器. 语法:

h = fwind1(Hd,win)

h = fwind1(Hd,win1,win2)

h = fwind1(f1,f2,Hd,...)

举例

[f1,f2] = freqspace(21,'meshgrid'); Hd = ones(21);

r = sqrt(f1.^2 + f2.^2);

Hd((r0.5)) = 0;

colormap(jet(64))

mesh(f1,f2,Hd)

相关命令:

conv2, filter2, fsamp2, freqspace, ftrans2, fwind2

38.fwind2

功能:用二维窗口方法设计二维FIR过滤器. 语法:

h = fwind2(Hd,win)

h = fwind2(f1,f2,Hd,win)

举例

[f1,f2] = freqspace(21,'meshgrid'); Hd = ones(21);

r = sqrt(f1.^2 + f2.^2);

Hd((r0.5)) = 0;

colormap(jet(64))

mesh(f1,f2,Hd)

MATLAB高级应用——图形及影像处理 338 相关命令:

conv2, filter2, fsamp2, freqspace, ftrans2, fwind1

39.getimage

功能:从坐标轴取得图像数据.

语法:

A = getimage(h)

[x,y,A] = getimage(h)

[...,A,flag] = getimage(h) [...] = getimage

举例

imshow rice.tif

I = getimage;

40.gray2ind

功能:转换灰度图像为索引图像.

语法:

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

相关命令:

ind2gray

41.grayslice

功能:从灰度图像创建索引图像.

语法:

X = grayslice(I,n)

X = grayslice(I,v)

举例

I = imread('ngc4024m.tif');

X = grayslice(I,16);

imshow(I)

figure, imshow(X,jet(16))

附录 MATLAB图像处理命令 339

相关命令:

gray2ind

42.histeq

功能:用柱状图均等化增强对比.

语法:

J = histeq(I,hgram)

J = histeq(I,n)

[J,T] = histeq(I,...)

举例

I = imread('tire.tif');

J = histeq(I);

imshow(I)

figure, imshow(J)

imhist(I,64)

figure; imhist(J,64)

相关命令:

brighten, imadjust, imhist

43.hsv2rgb

功能: 转换HSV值为RGB颜色空间.

语法:

rgbmap = hsv2rgb(hsvmap)

RGB = hsv2rgb(HSV)

相关命令:

MATLAB高级应用——图形及影像处理 340 rgb2hsv, rgbplot

44.idct2

功能:计算二维离散反余弦变换.

语法:

B = idct2(A)

B = idct2(A,m,n)

B = idct2(A,[m n])

相关命令:

dct2, dctmtx, fft2, ifft2

45.ifft2

功能:计算二维快速傅里叶反变换.

语法:

B = ifft2(A)

B = ifft2(A,m,n)

相关命令:

fft2, fftshift, idct2

46.ifftn

功能: 计算n维快速傅里叶反变换.

语法:

B = ifftn(A)

B = ifftn(A,siz)

相关命令:

fft2, fftn, ifft2

47.sim2bw

功能:转换图像为二进制图像.

语法:

BW = im2bw(I,level)

BW = im2bw(X,map,level)

BW = im2bw(RGB,level) 举例

load trees

BW = im2bw(X,map,0.4);

imshow(X,map)

附录 MATLAB图像处理命令 341

figure, imshow(BW)

相关命令:

ind2gray, rgb2gray

48.im2col

功能:重调图像块为列.

语法:

B = im2col(A,[m n],block_type)

B = im2col(A,[m n])

B = im2col(A,'indexed',...)

相关命令:

blkproc, col2im, colfilt, nlfilter

49.im2double

功能:转换图像矩阵为双精度型.

语法:

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 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(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',b g);

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','Compressi on','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 =

1

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(Incur)

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(Incur);

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(Incur)

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(Incur);

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

(完整版)MATLAB常用函数大全

一、MATLAB常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数z的相角(Phase angle) sqrt(x):开平方 real(z):复数z的实部 imag(z):复数z的虚部 conj(z):复数z的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数ceil(x):天花板函数,即加入正小数至最近整数rat(x):将实数x化为分数表示 rats(x):将实数x化为多项分数展开 sign(x):符号函数(Signum function)。 当x<0时,sign(x)=-1; 当x=0时,sign(x)=0; 当x>0时,sign(x)=1。 rem(x,y):求x除以y的馀数 gcd(x,y):整数x和y的最大公因数 lcm(x,y):整数x和y的最小公倍数 exp(x):自然指数 pow2(x):2的指数 log(x):以e为底的对数,即自然对数或 log2(x):以2为底的对数 log10(x):以10为底的对数 二、MATLAB常用的三角函数 sin(x):正弦函数 cos(x):余弦函数

tan(x):正切函数 asin(x):反正弦函数 acos(x):反馀弦函数 atan(x):反正切函数 atan2(x,y):四象限的反正切函数 sinh(x):超越正弦函数 cosh(x):超越馀弦函数 tanh(x):超越正切函数 asinh(x):反超越正弦函数 acosh(x):反超越馀弦函数 atanh(x):反超越正切函数 三、适用於向量的常用函数有: min(x): 向量x的元素的最小值 max(x): 向量x的元素的最大值 mean(x): 向量x的元素的平均值 median(x): 向量x的元素的中位数 std(x): 向量x的元素的标准差 diff(x): 向量x的相邻元素的差 sort(x): 对向量x的元素进行排序(Sorting)length(x): 向量x的元素个数 norm(x): 向量x的欧氏(Euclidean)长度sum(x): 向量x的元素总和 prod(x): 向量x的元素总乘积 cumsum(x): 向量x的累计元素总和cumprod(x): 向量x的累计元素总乘积 dot(x, y): 向量x和y的内积 cross(x, y): 向量x和y的外积 四、MATLAB的永久常数

基于Matlab基本图像处理程序

图像读入 ●从图形文件中读入图像 imread Syntax: A = imread(filename, fmt) filename:指定的灰度或彩色图像文件的完整路径和文件名。 fmt:指定图形文件的格式所对应的标准扩展名。如果imread没有找到filename所制定的文件,会尝试查找一个名为filename.fmt的文件。 A:包含图像矩阵的矩阵。对于灰度图像,它是一个M行N列的矩阵。如果文件包含 RGB真彩图像,则是m*n*3的矩阵。 ●对于索引图像,格式[X, map] = imread(filename, fmt) X:图像数据矩阵。 MAP:颜色索引表 图像的显示 ●imshow函数:显示工作区或图像文件中的图像 ●Syntax: imshow(I) %I是要现实的灰度图像矩阵 imshow(I,[low high],param1, val1, param2, val2,...) %I是要现实的灰度图像矩阵,指定要显示的灰度范围,后面的参数指定显示图像的特定参数 imshow(RGB) imshow(BW) imshow(X,map) %map颜色索引表 imshow(filename) himage = imshow(...) ●操作:读取并显示图像 I=imread('C:\Users\fanjinfei\Desktop\baby.bmp');%读取图像数据 imshow(I);%显示原图像 图像增强 一.图像的全局描述 直方图(Histogram):是一种对数据分布情况的图形表示,是一种二维统计图表,它的两个坐标分别是统计样本和该样本对应的某个属性的度量。 图像直方图(Image Histogram):是表示数字图像中亮度分布的直方图,用来描述图象灰度值,标绘了图像中每个亮度值的像素数。 灰度直方图:是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图 像中某种灰度出现的频率。描述了一幅图像的灰度级统计信息。是一个二维图,横坐标为图像中各个像素点的灰度级别,纵坐标表示具有各个灰度级别的像素在图像中出现的次数或概率。 归一化直方图:直接反应不同灰度级出现的比率。纵坐标表示具有各个灰度级别的像

基于MATLAB的图像处理的基本运算

课程设计任务书 学生姓名:专业班级: 指导教师:工作单位: 题目: 基于MATLAB的图像处理的基本运算 初始条件: 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) (1)能够对图像亮度和对比度变化调整,并比较结果 (2)编写程序通过最近邻插值和双线性插值等算法将用户所选取的图像区域进行放大和缩小整数倍的和旋转操作,并保存,比较几 种插值的效果 (3)图像直方图统计和直方图均衡,要求显示直方图统计,比较直方图均衡后的效果。 (4)对图像加入各种噪声,比较效果。 时间安排: 指导教师签名:年月日 系主任(或责任教师)签名:年月日 目录 摘要.......................................................................................................................... 错误!未定义书签。 1 MATLAB简介 ........................................................................................................ 错误!未定义书签。2图像选择及变换................................................................................................... 错误!未定义书签。 2.1 原始图像选择读取....................................................................................... 错误!未定义书签。 2.1.1 原理图的读入与基本变换 .................................................................... 错误!未定义书签。

matlab 常用函数汇总

matlab 常用函数汇总 编程2008-07-10 21:45:20 阅读46 评论0 字号:大中小订阅matlab常用函数 图形注释 Title 图形标题 Xlabel X轴标记 Ylabel Y轴标记 Text 文本注释 Gtext 用鼠标放置文本 Grid 网格线 MATLAB编程语言 Function 增加新的函数 Eval 执行由MA TLAB表达式构成的字串 Feval 执行由字串指定的函数 Global 定义全局变量 程序控制流 If 条件执行语句 Else 与if命令配合使用 Elseif 与if命令配合使用 End For,while和if语句的结束 For 重复执行指定次数(循环) While 重复执行不定次数(循环) Break 终止循环的执行 Return 返回引用的函数 Error 显示信息并终止函数的执行 交互输入 Input 提示用户输入 Keyboard 像底稿文件一样使用键盘输入 Menu 产生由用户输入选择的菜单 Pause 等待用户响应 Uimenu 建立用户界面菜单 Uicontrol 建立用户界面控制 一般字符串函数 Strings MATLAB中有关字符串函数的说明 Abs 变字符串为数值 Setstr 变数值为字符串 Isstr 当变量为字符串时其值为真 Blanks 空串 Deblank 删除尾部的空串 Str2mat 从各个字符串中形成文本矩阵 Eval 执行由MA TLAB表达式组成的串 字符串比较 Strcmp , , , 比较字符串 Findstr 在一字符串中查找另一个子串

Upper 变字符串为大写 Lower 变字符串为小写 Isletter 当变量为字母时,其值为真 Isspace 当变量为空白字符时,其值为真 字符串与数值之间变换 Num2str 变数值为字符串 Int2str 变整数为字符串 Str2num 变字符串为数值 Sprintf 变数值为格式控制下的字符串 Sscanf 变字符串为格式控制下的数值 十进制与十六进制数之间变换 Hex2num 变十六进制为IEEE标准下的浮点数Hex2dec 变十六制数为十进制数 Dec2hex 变十进制数为十六进制数 建模 Append 追加系统动态特性 Augstate 变量状态作为输出 Blkbuild 从方框图中构造状态空间系统Cloop 系统的闭环 Connect 方框图建模 Conv 两个多项式的卷积 Destim 从增益矩阵中形成离散状态估计器Dreg 从增益矩阵中形成离散控制器和估计器Drmodel 产生随机离散模型 Estim 从增益矩阵中形成连续状态估计器Feedback 反馈系统连接 Ord2 产生二阶系统的A、B、C、D Pade 时延的Pade近似 Parallel 并行系统连接 Reg 从增益矩阵中形成连续控制器和估计器Rmodel 产生随机连续模型 Series 串行系统连接 Ssdelete 从模型中删除输入、输出或状态ssselect 从大系统中选择子系统 模型变换 C2d 变连续系统为离散系统 C2dm 利用指定方法变连续为离散系统 C2dt 带一延时变连续为离散系统 D2c 变离散为连续系统 D2cm 利用指定方法变离散为连续系统 Poly 变根值表示为多项式表示 Residue 部分分式展开 Ss2tf 变状态空间表示为传递函数表示 Ss2zp 变状态空间表示为零极点表示

基于MATLAB图像处理报告

基于M A T L A B图像处理报告一、设计题目 图片叠加。 二、设计要求 将一幅礼花图片和一幅夜景图片做叠加运算,使达到烟花夜景的美图效果。 三、设计方案 、设计思路 利用matlab强大的图像处理功能,通过编写程序,实现对两幅图片的像素进行线性运算,利用灰度变换的算法使图片达到预期的效果。 、软件介绍 MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB 也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户直接进行下载就可以用。

(完整版)数字图像处理MATLAB程序【完整版】

第一部分数字图像处理

实验一图像的点运算 实验1.1 直方图 一.实验目的 1.熟悉matlab图像处理工具箱及直方图函数的使用; 2.理解和掌握直方图原理和方法; 二.实验设备 1.PC机一台; 2.软件matlab。 三.程序设计 在matlab环境中,程序首先读取图像,然后调用直方图函数,设置相关参数,再输出处理后的图像。 I=imread('cameraman.tif');%读取图像 subplot(1,2,1),imshow(I) %输出图像 title('原始图像') %在原始图像中加标题 subplot(1,2,2),imhist(I) %输出原图直方图 title('原始图像直方图') %在原图直方图上加标题 四.实验步骤 1. 启动matlab 双击桌面matlab图标启动matlab环境; 2. 在matlab命令窗口中输入相应程序。书写程序时,首先读取图像,一般调用matlab自带的图像, 如:cameraman图像;再调用相应的直方图函数,设置参数;最后输出处理后的图像; 3.浏览源程序并理解含义; 4.运行,观察显示结果; 5.结束运行,退出; 五.实验结果 观察图像matlab环境下的直方图分布。 (a)原始图像 (b)原始图像直方图 六.实验报告要求 1、给出实验原理过程及实现代码; 2、输入一幅灰度图像,给出其灰度直方图结果,并进行灰度直方图分布原理分析。

实验1.2 灰度均衡 一.实验目的 1.熟悉matlab图像处理工具箱中灰度均衡函数的使用; 2.理解和掌握灰度均衡原理和实现方法; 二.实验设备 1.PC机一台; 2.软件matlab; 三.程序设计 在matlab环境中,程序首先读取图像,然后调用灰度均衡函数,设置相关参数,再输出处理后的图像。 I=imread('cameraman.tif');%读取图像 subplot(2,2,1),imshow(I) %输出图像 title('原始图像') %在原始图像中加标题 subplot(2,2,3),imhist(I) %输出原图直方图 title('原始图像直方图') %在原图直方图上加标题 a=histeq(I,256); %直方图均衡化,灰度级为256 subplot(2,2,2),imshow(a) %输出均衡化后图像 title('均衡化后图像') %在均衡化后图像中加标题 subplot(2,2,4),imhist(a) %输出均衡化后直方图 title('均衡化后图像直方图') %在均衡化后直方图上加标题 四.实验步骤 1. 启动matlab 双击桌面matlab图标启动matlab环境; 2. 在matlab命令窗口中输入相应程序。书写程序时,首先读取图像,一般调用matlab自带的图像, 如:cameraman图像;再调用相应的灰度均衡函数,设置参数;最后输出处理后的图像; 3.浏览源程序并理解含义; 4.运行,观察显示结果; 5.结束运行,退出; 五.实验结果 观察matlab环境下图像灰度均衡结果及直方图分布。 (a)原始图像 (b)均衡化后图像

matlab 常用函数(1)

A axis() axis([xmin xmax ymin ymax]) sets the limits for the x- and y-axis of the current axes. axis([xmin xmax ymin ymax zmin zmax cmin cmax]) sets the x-, y-, and z-axis limits and the color scaling limits (see caxis) of the current axes. axis equal sets the aspect ratio so that the data units are the same in every direction. The aspect ratio of the x-, y-, and z-axis is adjusted automatically according to the range of data units in the x, y, and z directions C clf Clear current figure window G grid off/on The grid function turns the current axes' grid lines on and off. H hold on/off ●The hold function determines whether new graphics objects are added to the graph or replace objects in the graph. ●hold on retains the current plot and certain axes properties so that subsequent graphing commands add to the existing graph. ●hold off resets axes properties to their defaults before drawing new plots. hold off is the default

matlab函数名称总结

一、常用对象操作:除了一般windows窗口的常用功能键外。 1、!dir 可以查看当前工作目录的文件。!dir& 可以在dos状态下查看。 2、who 可以查看当前工作空间变量名, whos 可以查看变量名细节。 3、功能键: 功能键快捷键说明 方向上键Ctrl+P 返回前一行输入 方向下键Ctrl+N 返回下一行输入 方向左键Ctrl+B 光标向后移一个字符 方向右键Ctrl+F 光标向前移一个字符 Ctrl+方向右键 Ctrl+R 光标向右移一个字符 Ctrl+方向左键 Ctrl+L 光标向左移一个字符 home Ctrl+A 光标移到行首 End Ctrl+E 光标移到行尾 Esc Ctrl+U 清除一行 Del Ctrl+D 清除光标所在的字符 Backspace Ctrl+H 删除光标前一个字符 Ctrl+K 删除到行尾 Ctrl+C 中断正在执行的命令 4、clc可以命令窗口显示的内容,但并不清除工作空间。 二、函数及运算 1、运算符: +:加,-:减, *:乘, /:除,\:左除 ^:幂,':复数的共轭转置,():制定运算顺序。 2、常用函数表: sin( ) 正弦(变量为弧度) Cot( ) 余切(变量为弧度) sind( ) 正弦(变量为度数) Cotd( ) 余切(变量为度数) asin( ) 反正弦(返回弧度) acot( ) 反余切(返回弧度) Asind( ) 反正弦(返回度数) acotd( ) 反余切(返回度数) cos( ) 余弦(变量为弧度) exp( ) 指数 cosd( ) 余弦(变量为度数) log( ) 对数 acos( ) 余正弦(返回弧度) log10( ) 以10为底对数 acosd( ) 余正弦(返回度数) sqrt( ) 开方 tan( ) 正切(变量为弧度) realsqrt( ) 返回非负根 tand( ) 正切(变量为度数) abs( ) 取绝对值 atan( ) 反正切(返回弧度) angle( ) 返回复数的相位角

图像处理matlab程序实例

程序实例 1旋转: x=imread('d:\MATLAB7\work\flower.jpg'); y=imrotate(x,200,'bilinear','crop'); subplot(1,2,1); imshow(x); subplot(1,2,2); imshow(y) 2.图像的rgb clear [x,map]=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shh1.jpg');y=x(90:95,90:95);imshow(y)R=x(90:95,90:95,1);G=x(90:95,90:95,2);B=x(90:95,90:95,3);R,G,B 3.加法运算clear I=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shh3.jpg');J=imnoise(I,'gaussian',0,0.02);%向图片加入高斯噪声subplot(1,2,1),imshow(I);%显示图片subplot(1,2,2),imshow(J);K=zeros(242,308);%产生全零的矩阵,大小与图片的大小一样for i=1:100%循环100加入噪声J=imnoise(I,'gaussian',0,0.02);J1=im2double(J);K=K+J1;end K=K/100; figure,imshow(K);save

4.减法 clear I=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shao.jpg'); J=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shao1.jpg'); K=imsubtract(I,J);%实现两幅图相减 K1=255-K;%将图片求反显示 figure;imshow(I); title('有噪声的图'); figure;imshow(J); title('原图'); figure;imshow(K1); title('提取的噪声'); save 5.图像的乘法 H=imread('D:\Program Files\MATLAB\R2012a\bin\shaohaihe\shao.jpg'); I=immultiply(H,1.2);将此图片乘以1.2 J=immultiply(H,2); subplot(1,3,1),imshow(H); title('原图'); subplot(1,3,2),imshow(I); title('·放大1.2'); subplot(1,3,3),imshow(J); title('放大2倍'); 6除法运算 moon=imread('moon.tif'); I=double(moon); J=I*0.43+90; K=I*0.1+90; L=I*0.01+90; moon2=uint8(J); moon3=uint8(K); moon4=uint8(L); J=imdivide(moon,moon2); K=imdivide(moon,moon3); L=imdivide(moon,moon4); subplot(2,2,1),imshow(moon); subplot(2,2,2),imshow(J,[]); subplot(2,2,3),imshow(K,[]); subplot(2,2,4),imshow(L,[]);

基于MATLAB的运动模糊图像处理

基于MATLAB的运动模糊图像处理 提醒: 我参考了文献里的书目和网上的一些代码而完成的,所以误差会比较大,目前对于从网上下载的模糊图片的处理效果很不好,这是我第一次上传自己完成的实验的文档,希望能帮到一些人吧。 研究目的 在交通系统、刑事取证中图像的关键信息至关重要,但是在交通、公安、银行、医学、工业监视、军事侦察和日常生活中常常由于摄像设备的光学系统的失真、调焦不准或相对运动等造成图像的模糊,使得信息的提取变得困难。但是相对于散焦模糊,运动模糊图像的复原在日常生活中更为普遍,比如高速运动的违规车辆的车牌辨识,快速运动的人群中识别出嫌疑人、公安刑事影像资料中提取证明或进行技术鉴定等等,这些日常生活中的重要应用都需要通过运动模糊图像复原技术来尽可能地去除失真,恢复图像的原来面目。因此对于运动模糊图像的复原技术研究更具有重要的现实意义。 图像复原原理 本文探讨了在无噪声的情况下任意方向的匀速直线运动模糊图像的复原问题,并在此基础上讨论了复原过程中对点扩散函数(PSF)的参数估计从而依据自动鉴别出的模糊方向和长度构造出最为近似的点扩散函数,构造相应的复原模型,实现运动模糊图像的复原;在模糊图像自动复原的基础上,根据恢复效果图的纹理特征和自动鉴别出的模糊长度和角度,人工调整模糊方向和长度参数,使得复原效果达到最佳。 实验过程 模糊方向的估计: 对图1(a)所示的原始图像‘车牌’图像做方向θ=30?,长度L=20像素的匀速直线运动模糊,得到退化图像如图1(b)

1(a) 1(b) j=imread('车牌1.jpg'); figure(1),imshow(j); title('原图像'); len=20; theta=30; psf=fspecial('motion',len,theta); j1=imfilter(j,psf,'circular','conv'); figure,imshow(j1); title('PSF 模糊图像'); 图1(c)和1(d)分别为原图像和模糊图像的二次傅里叶变化

图像运算的MATLAB实现

rice=imread(‘rice.png’); % 读入图像 I=double(rice); % 数据类型转换 J=I*0.43+60; % 像素点算术运算 rice2=uint8(J) % 数据类型转换subplot(1,2,1),imshow(rice); % 原图绘制subplot(1,2,2),imshow(rice2); % 计算后图像绘制

X = uint8([ 255 10 75; 44 225 100]); Y = uint8([ 50 20 50; 50 50 50 ]); Z = imdivide(X,Y)

I = imread('rice.png'); % 读入图像background = imopen(I,strel('disk',15)); % 图像开运算Ip = imdivide(I,background); % 图像除法运算imshow(Ip,[]) % 显示运算后的图像

I = imread('rice.png'); % 读入图像 J = imdivide(I,2); % 图像除以一个常数subplot(1,2,1), imshow(I) % 显示原始图像subplot(1,2,2), imshow(J) % 显示运算后的图像

I = imread('cameraman.tif'); % 读入图像J = imlincomb(2,I); % 灰度值放大imshow(J) % 显示运算后的图像

I = imread('cameraman.tif'); % 读入图像 J = uint8(filter2(fspecial('gaussian'), I)); % 图像滤波 K = imlincomb(1,I,-1,J,128); % K(r,c) = I(r,c) - J(r,c) + 128 % 图像相减后加上一个常数figure, imshow(K) % 显示运算后的图像

基于matlab数字图像处理与识别系统含程序

目录 第一章绪论 (2) 1.1 研究背景 (2) 1.2 人脸图像识别的应用前景 (3) 1.3 本文研究的问题 (4) 1.4 识别系统构成 (4) 1.5 论文的内容及组织 (5) 第二章图像处理的Matlab实现 (6) 2.1 Matlab简介 (6) 2.2 数字图像处理及过程 (6) 2.2.1图像处理的基本操作 (6) 2.2.2图像类型的转换 (7) 2.2.3图像增强 (7) 2.2.4边缘检测 (8) 2.3图像处理功能的Matlab实现实例 (8) 2.4 本章小结 (11) 第三章人脸图像识别计算机系统 (11) 3.1 引言 (11) 3.2系统基本机构 (12) 3.3 人脸检测定位算法 (13) 3.4 人脸图像的预处理 (18) 3.4.1 仿真系统中实现的人脸图像预处理方法 (19) 第四章基于直方图的人脸识别实现 (21) 4.1识别理论 (21) 4.2 人脸识别的matlab实现 (21) 4.3 本章小结 (22) 第五章总结 (22) 致谢 (23) 参考文献 (24) 附录 (25)

第一章绪论 本章提出了本文的研究背景及应用前景。首先阐述了人脸图像识别意义;然后介绍了人脸图像识别研究中存在的问题;接着介绍了自动人脸识别系统的一般框架构成;最后简要地介绍了本文的主要工作和章节结构。 1.1 研究背景 自70年代以来.随着人工智能技术的兴起.以及人类视觉研究的进展.人们逐渐对人脸图像的机器识别投入很大的热情,并形成了一个人脸图像识别研究领域,.这一领域除了它的重大理论价值外,也极具实用价值。 在进行人工智能的研究中,人们一直想做的事情就是让机器具有像人类一样的思考能力,以及识别事物、处理事物的能力,因此从解剖学、心理学、行为感知学等各个角度来探求人类的思维机制、以及感知事物、处理事物的机制,并努力将这些机制用于实践,如各种智能机器人的研制。人脸图像的机器识别研究就是在这种背景下兴起的,因为人们发现许多对于人类而言可以轻易做到的事情,而让机器来实现却很难,如人脸图像的识别,语音识别,自然语言理解等。如果能够开发出具有像人类一样的机器识别机制,就能够逐步地了解人类是如何存储信息,并进行处理的,从而最终了解人类的思维机制。 同时,进行人脸图像识别研究也具有很大的使用价依。如同人的指纹一样,人脸也具有唯一性,也可用来鉴别一个人的身份。现在己有实用的计算机自动指纹识别系统面世,并在安检等部门得到应用,但还没有通用成熟的人脸自动识别系统出现。人脸图像的自动识别系统较之指纹识别系统、DNA鉴定等更具方便性,因为它取样方便,可以不接触目标就进行识别,从而开发研究的实际意义更大。并且与指纹图像不同的是,人脸图像受很多因素的干扰:人脸表情的多样性;以及外在的成像过程中的光照,图像尺寸,旋转,姿势变化等。使得同一个人,

基本数字(精选)图像处理算法的matlab实现

基本数字图像处理算法的matlab实现 1.数字图像处理的简单介绍 所谓数字图像就是把传统图像的画面分割成为像素的小的离散点,各像素的灰度值也是用离散值来表示的。 数字图像处理是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。 2.图像的显示与运算 2.1图像的显示 Matlab显示语句 imshow(I,[lowhigh])%图像正常显示 I为要显示的图像矩阵。,[lowhigh]为指定显示灰度图像的灰度范围。高于high的像素被显示成白色;低于low的像素被显示成黑色;介于high和low之间的像素被按比例拉伸后显示为各种等级的灰色。 subplot(m,n,p) 打开一个有m行n列图像位置的窗口,并将焦点位于第p个位置上。 2.2图像的运算 灰度化将彩色图像转化成为灰度图像的过程成为图像的灰度化处理。彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255中值可取,这样一个像素点可以有1600多万(255*255*255)的颜色的变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其一个像素点的变化范围为255种,所以在数字图像处理种一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。图像的灰度化处理可用两种方法来实现。

第一种方法使求出每个像素点的R、G、B三个分量的平均值,然后将这个平均值赋予给这个像素的三个分量。 第二种方法是根据YUV的颜色空间中,Y的分量的物理意义是点的亮度,由该值反映亮度等级,根据RGB和YUV颜色空间的变化关系可建立亮度Y与R、G、B三个颜色分量的对应:Y=0.3R+0.59G+0.11B,以这个亮度值表达图像的灰度值。 灰度是灰度级的函数,它表示图象中具有每种灰度级的象素的个数,反映图象中每种灰度出现的频率。 图像增强的目标是改进图片的质量,例如增加对比度,去掉模糊和噪声,修正几何畸变等;图像复原是在假定已知模糊或噪声的模型时,试图估计原图像的一种技术。 Matlab图像格式转换语句 rgb2gray(I) %从RGB图创建灰度图 imhist(I) %画灰度直方图 图像的线性变换 D B=f(D A)=f A*D A+f B Matlab源代码: I1=imread('F:\图片2.jpg'); subplot(2,2,1);imshow(I1);title('原图'); I2=rgb2gray(I1); %灰度化图像 subplot(2,2,2);imshow(I2);title('灰度化后图'); [M,N]=size(I2); subplot(2,2,3) [counts,x]=imhist(I2,60); %画灰度直方图 counts=counts/M/N; stem(x,counts);title('灰度直方图'); g=zeros(M,N);%图像增强

MATLAB常用函数

数字信号处理与MATLAB 实现 1. n1=[ns:nf]; x1=[zeros(1,n0-ns),1,zeros (1,nf-n0)]; %单位抽样序列的产生 2. subplot(2,2,4) 画2行2列的第4个图 3. stem(n,x) %输出离散序列,(plot 连续) 4. 编写子程序可调用 4.1 单位抽样序列)(0n n -δ生成函数impseq.m [x,m]=impseq(n0,ns,nf); %序列的起点为ns ,终点为nf ,在n=n0点处生成一个单位脉冲 n=[-5:5];x1=3*impseq(2,-5,5)-impseq(-4,-5,5) x1 = 0 -1 0 0 0 0 0 3 0 0 0 n=[-5:5];x1=3*impseq(2,-4,5)-impseq(-4,-5,4) %起点到终点长度要一致 x1 = 0 -1 0 0 0 0 3 0 0 0 4.2 单位阶跃序列)(0n n u -生成函数stepseq.m [x,n]=stepseq(no,ns,nf) %序列的起点为ns ,终点为nf ,在n=n0点处生成一个单位阶跃 4.3 两个信号相加的生成函数sigadd.m [y,n]=sigadd(x1,n1,x2,n2) 4.4 两个信号相乘的生成函数sigmult.m [y,n]=sigmult(x1,n1,x2,n2) 4.5 序列移位y(n)=x(n-n0)的生成函数sigshift.m [y,n]=sigshift(x,m,n0) 4.6 序列翻褶y(n)=x(-n)的生成函数sigfold.m [y,n]=sigfold(x,n) 4.7 evenodd.m 函数可以将任一给定的序列x(n)分解为xe(n)和xo(n)两部分 [xe,xo,m]=evenodd(x,n) 4.8 序列从负值开始的卷积conv_m, conv 默认从0开始 function [y,ny]=conv_m(x,nx,h,nh) 有{x(n):nx1≤n ≤nx2},{h(n):nh1≤n ≤nh2}, 卷积结果序列为 {y(n):nx1+nh1≤n ≤nx2+nh2} 例. 设1132)(-++=z z z X ,1225342)(-+++=z z z z X ,求)()()(21z X z X z Y += 程序: x1=[1,2,3];n1=-1:1; x2=[2,4,3,5];n2=-2:1; [y,n]=conv_m(x1,n1,x2,n2)

基于Matlab的遥感图像处理

基于Matlab的遥感图像处理 测绘工程1161641014 鲍家顺 摘要文章运用Matlab软件对遥感影像的不足之处进行处理改善,详细介绍了处理方法和处理的原理,对处理结果进行了比对分析,并进行了边缘检测与特征提取,论证了处理方法的可行性。 关键词图像处理;matlab ;均衡化;规定化;色彩平衡;边缘检测;特征提取 在获取遥感图像过程中,由于多种因素的影响,会导致图像质量的退化,为了改善图像质量,突出遥感图像中的某些信息,提高图像的视觉效果,需要对图像进行各方面的处理,如分段线形拉伸,对数变换,直方图规定化、正态化,图像滤波,纹理分析及目标检测等。通过图像处理可以去除图像中的噪声,增强感兴趣的目标和周围背景图像间的反差,有选择地突出便于人或电脑分析的信息,抑制一些无用的信息,强调出图像的边缘,增强图像的识别方便性,从而进行边缘检测和特征提取。图像写出函数,显示图像函数有image ( ) 、inshow ( ) 等。[2 ]Matlab 图像处理工具箱处理工具提供了imhist () 函数来计算和显示图像的直方图, 提供了直方图均衡化的函数histeq() 、边缘检测函数edge ( ) 、腐蚀函数imerode () 、膨胀函数imdilate () 及二值图像转换函数im2bw () 等。文中实验数据采用的是桂林市区灰度遥感图像,宽度为1024 像素,高度为713 像素。 文件读入: 讲workspace切入到图片所在图层: Cd d:\ 读入图片: [x,cmap]=imread('m.PNG'); %将图片读入转换为矩阵 clf;imshow(x); %显示图片 原始图片

图像处理的matlab实现

成绩: 数字图像处理实验报告实验二:图像处理的matlab的实现 学号:0967118225 姓名:洪旭浩 同组人: 电脑编号: 实验时间:2010年6月4日星期一

数字图像处理实验报告 一、实验名称 图像处理的matlab 的实现 二、实验目的 1、了解Matlab 及其工具箱的基本使用方法 2、掌握使用Matlab 打开各种图像文件的方法 3、掌握使用Matlab 进行简单图像处理的方法 三、实验平台 Windows XP,Matlab 7.8.0(R2009a) 四、实验内容 一、直方图均衡化 直方图均衡化处理可将图像的灰度范围拉开,让灰度直方图在较大的动态范围内趋于一致。用图像),(y x f 的直方图代替灰度的分布密度函数)(f p f ,则直方图均衡化后的图像g 为: ?==f f du u p f T g 0)(][对于数字图像,设原图像的像素总数为N,灰度级的个数为L,第k 个灰度级出现的频数为k n 。若原图像),(y x f 在像素点),(y x 处的灰度为k r ,则直方图均衡化后的图像),(y x g 在),(y x 处的灰度k s 为: ∑===k l l k k N n r T s 0][MATLAB 图像处理工具箱提供了用于直方图均衡化的函数histep。histep 函数的语法格式为: J=histep(I,hgram) J=histep(I,n) [J,T]=histep(I,…) newmap=histep(X,map,hgram) newmap=histep(X,map) [newmap,T]=histep(X,…) 其中J=histep(I,hgram)将原始图像I 的直方图变成用户指定的向量hgram,hgram 中的各元素值域为[0,1]。 J=histep(I,n)指定直方图均衡化后的灰度级数n,默认值为64。 [J,T]=histep(I,…)返回能将图像I 的灰度直方图变换成图像J 的直方图的变换T。 newmap=histep(X ,map ,hgram)、newmap=histep(X ,map)和[newmap ,T]=histep(X,…)是针对索引色图像调色板的直方图均衡化。 1、使用以上语句,实现选定图像的直方图均衡化; 2、修改部分参数,观察不同参数下直方图均衡化的变化规律;

MatLab常用函数大全

1、求组合数 C,则输入: 求k n nchoosek(n,k) 例:nchoosek(4,2) = 6. 2、求阶乘 求n!.则输入: Factorial(n). 例:factorial(5) = 120. 3、求全排列 perms(x). 例:求x = [1,2,3]; Perms(x),输出结果为: ans = 3 2 1 3 1 2 2 3 1 2 1 3 1 2 3 1 3 2 4、求指数 求a^b:Power(a,b) ; 例:求2^3 ; Ans = pow(2,3) ; 5、求行列式 求矩阵A的行列式:det(A); 例:A=[1 2;3 4] ; 则det(A) = -2 ; 6、求矩阵的转置 求矩阵A的转置矩阵:A’ 转置符号为单引号. 7、求向量的指数 求向量p=[1 2 3 4]'的三次方:p.^3 例: p=[1 2 3 4]' A=[p,p.^2,p.^3,p.^4] 结果为:

注意:在p 与符号”^”之间的”.”不可少. 8、求自然对数 求ln(x):Log(x) 例:log(2) = 0.6931 9、求矩阵的逆矩阵 求矩阵A 的逆矩阵:inv(A) 例:a= [1 2;3 4]; 则 10、多项式的乘法运算 函数conv(p1,p2)用于求多项式p1和p2的乘积。这里,p1、p2是两个多项式系数向量。 例2-2 求多项式43810x x +-和223x x -+的乘积。 命令如下: p1=[1,8,0,0,-10]; p2=[2,-1,3]; c=conv(p1,p2) 11、多项式除法 函数[q ,r]=deconv(p1,p2)用于多项式p1和p2作除法运算,其中q 返回多项式p1除以p2的商式,r 返回p1除以p2的余式。这里,q 和r 仍是多项式系数向量。 例2-3 求多项式43810x x +-除以多项式223x x -+的结果。 命令如下: p1=[1,8,0,0,-10]; p2=[2,-1,3]; [q,r]=deconv(p1,p2) 12、求一个向量的最大值 求一个向量x 的最大值的函数有两种调用格式,分别是:

基于MATLAB的图像处理的基本运算

基于MATLAB的图像处理的基本运算

————————————————————————————————作者:————————————————————————————————日期:

课程设计任务书 学生姓名:专业班级: 指导教师:工作单位: 题目: 基于MATLAB的图像处理的基本运算 初始条件: 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) (1)能够对图像亮度和对比度变化调整,并比较结果 (2)编写程序通过最近邻插值和双线性插值等算法将用户所选取的图像区域进行放大和缩小整数倍的和旋转操作,并保存, 比较几种插值的效果 (3)图像直方图统计和直方图均衡,要求显示直方图统计,比较直方图均衡后的效果。 (4)对图像加入各种噪声,比较效果。 时间安排: 指导教师签名:年月日 系主任(或责任教师)签名:年月日

目录 摘要..................................................................................................................................................... - 2 -1 MATLAB简介 ................................................................................................................................... - 2 -2图像选择及变换.............................................................................................................................. - 3 -2.1 原始图像选择读取.................................................................................................................. - 3 - 2.1.1 原理图的读入与基本变换 ............................................................................................... - 3 - 2.1.2 程序源代码及调试结果 ................................................................................................... - 4 - 2.2 转换图像为灰阶图像.............................................................................................................. - 5 - 3 图像处理及代码程序 ..................................................................................................................... - 6 -3.1 图像亮度对比度调整.............................................................................................................. - 6 - 3.1.1 函数说明及参数选择....................................................................................................... - 6 - 3.1.2 源程序及运行结果........................................................................................................... - 6 -3.2 图像放大和缩小...................................................................................................................... - 7 - 3.2.1 函数说明及参数选择....................................................................................................... - 7 - 3.2.2 源程序及运行结果........................................................................................................... - 7 -3.3 图像任意角度的旋转.............................................................................................................. - 8 - 3.3.1 函数说明及参数旋转....................................................................................................... - 8 - 3.3.2 源程序及运行结果........................................................................................................... - 9 -3.4图像直方图统计和均衡........................................................................................................... - 9 - 3.4.1 函数说明及参数选择....................................................................................................... - 9 - 3.4.2 源程序及运行结果......................................................................................................... - 10 -3.5 图像加入噪声........................................................................................................................ - 11 - 3.5.1 函数说明及参数选择..................................................................................................... - 11 - 3.5.2 源程序及运行结果......................................................................................................... - 12 - 4 图像处理结果比较分析 ............................................................................................................... - 14 -4.1 调整对比度和亮度后图像比较 ............................................................................................ - 14 -4.2 图像放大缩小及旋转后比较 ................................................................................................ - 14 -4.3 进行直方图均衡后图像比较 ................................................................................................ - 1 5 -4.4加入各种噪声后图像比较 ..................................................................................................... - 1 6 -5感悟体会小结................................................................................................................................ - 16 -参考文献........................................................................................................................................... - 1 7 -

相关主题